现在MIG 的example design 通过sim.do我已经仿真出来了
(1)我想问一下在sim的top.v里面 parameter DATA0_MAP = 96'h009_000_003_001_007_006_005_002;
parameter DATA1_MAP = 96'h014_018_010_011_017_016_012_013;
parameter DATA2_MAP = 96'h021_022_025_020_027_023_026_028;
parameter DATA3_MAP = 96'h033_039_031_035_032_038_034_037;
parameter DATA4_MAP = 96'h231_238_237_236_233_232_234_239;
parameter DATA5_MAP = 96'h226_227_225_229_221_222_224_228;
parameter DATA6_MAP = 96'h214_215_210_218_217_213_219_212;
parameter DATA7_MAP = 96'h207_203_204_206_202_201_205_209;
parameter DATA8_MAP = 96'h000_000_000_000_000_000_000_000;
parameter DATA9_MAP = 96'h000_000_000_000_000_000_000_000;
parameter DATA10_MAP = 96'h000_000_000_000_000_000_000_000;
parameter DATA11_MAP = 96'h000_000_000_000_000_000_000_000;
parameter DATA12_MAP = 96'h000_000_000_000_000_000_000_000;
parameter DATA13_MAP = 96'h000_000_000_000_000_000_000_000;
parameter DATA14_MAP = 96'h000_000_000_000_000_000_000_000;
parameter DATA15_MAP = 96'h000_000_000_000_000_000_000_000;
parameter DATA16_MAP = 96'h000_000_000_000_000_000_000_000;
parameter DATA17_MAP = 96'h000_000_000_000_000_000_000_000;
parameter MASK0_MAP = 108'h000_200_211_223_235_036_024_015_004;
parameter MASK1_MAP = 108'h000_000_000_000_000_000_000_000_000;
这些map是什么意思,我有点看不懂,
(2)还有这一段:
/ Memory Models instantiations
//**************************************************************************//
genvar r,i;
generate
for (r = 0; r < CS_WIDTH; r = r + 1) begin: mem_rnk
for (i = 0; i < NUM_COMP; i = i + 1) begin: gen_mem
ddr3_model u_comp_ddr3
(
.rst_n (ddr3_reset_n),
.ck (ddr3_ck_p_sdram[(i*MEMORY_WIDTH)/72]),
.ck_n (ddr3_ck_n_sdram[(i*MEMORY_WIDTH)/72]),
.cke (ddr3_cke_sdram[((i*MEMORY_WIDTH)/72)+(nCS_PER_RANK*r)]),
.cs_n (ddr3_cs_n_sdram[((i*MEMORY_WIDTH)/72)+(nCS_PER_RANK*r)]),
.ras_n (ddr3_ras_n_sdram),
.cas_n (ddr3_cas_n_sdram),
.we_n (ddr3_we_n_sdram),
.dm_tdqs (ddr3_dm_sdram[i]),
.ba (ddr3_ba_sdram[r]),
.addr (ddr3_addr_sdram[r]),
.dq (ddr3_dq_sdram[MEMORY_WIDTH*(i+1)-1:MEMORY_WIDTH*(i)]),
.dqs (ddr3_dqs_p_sdram[i]),
.dqs_n (ddr3_dqs_n_sdram[i]),
.tdqs_n (),
.odt (ddr3_odt_sdram[((i*MEMORY_WIDTH)/72)+(nCS_PER_RANK*r)])
);
end
end
endgenerate貌似主要是通过这一段来调用控制器程序的,但是我还是看不懂,希望大家帮一下忙
(3)还有,如果我想让DDR3控制器传输我自己写的数据应该从哪里入手呢?
|