Leabhar-iùil Tomhais Coileanaidh Xilinx DDR2 MIG 7
Nota Cudromach: Tha am PDF seo a ghabhas luchdachadh a-nuas de Chlàr Freagairt air a thoirt seachad gus a dhèanamh nas fhasa a chleachdadh agus a leughadh. Tha e cudromach cuimhneachadh gu bheil Clàran Freagairtean Web- susbaint stèidhichte a thèid ùrachadh gu tric mar a bhios fiosrachadh ùr ri fhaighinn. Thathas a’ cur nad chuimhne tadhal air Taic Teicnigeach Xilinx Weblàrach agus athview (Xilinx Answer 63234) airson an tionndadh as ùire den Fhreagra seo.
Ro-ràdh
Air sgàth an dòigh anns a bheil cuimhneachain DDR2 agus DDR3 air an dealbhadh agus rianadair sreath MIG 7 air a dhealbhadh, chan eil coileanadh dìreach air adhart.
Feumaidh e tuigse air diofar pharaimearan Jedec Timing agus Ailtireachd rianadair, agus feumaidh tu samhlaidhean a ruith gus na tuairmsean fhaighinn.
Tha am prionnsapal coitcheann airson coileanadh a dhearbhadh mar an ceudna ach tha an sgrìobhainn seo a’ toirt seachad dòigh furasta air èifeachdas fhaighinn a’ cleachdadh an MIG example dealbhadh le cuideachadh bho bheing deuchainn agus brosnachadh files ceangailte an seo.
Bandwidth èifeachdach
Bidh am bus dàta DRAM a’ coileanadh leud-bann faisg air an ìre as àirde a-mhàin aig amannan leughaidh is sgrìobhaidh agus tha a chosgais a’ lughdachadh na h-ìre dàta èifeachdach.
Tha beagan exampis e nas lugha de chòrr:
- ùine ro-phàighidh a’ faighinn cothrom air sreathan anns an aon bhanca (Seòladh ruigsinneachd nach eil san aon bhuail duilleag loidhne)
- sgrìobh ùine ath-bheothachaidh gus atharrachadh bho sgrìobhadh gu ruigsinneachd leughaidh
- àm tionndaidh a’ bhus airson atharrachadh bho leughadh gu sgrìobhadh
Bandwidth èifeachdach = Bandwidth as àirde * Èifeachdas
Ginealach Dealbhaidh MIG
Thoir sùil air UG586 Caibideil 1 airson mion-fhiosrachadh ceum air cheum air MIG IP agus feadhainn eileample ginealach dealbhaidh.
Mus ruith thu atharrais dèanadais Sreath MIG 7, dèan na leanas gus dèanamh cinnteach gu bheil an àrainneachd atharrais agad ceart gu leòr. Fosgail an MIG example dealbhadh agus mapadh na leabharlannan iomchaidh, ruith an atharrais, agus dèan cinnteach gum faic thu an teachdaireachd “deuchainn seachad” san tar-sgrìobhadh.
Gus an sruth a nochdadh tha mi air MIG IP a chruthachadh airson xc7vx690tffg1761-2 agus thug mi a-steach an t-seannampdealbhadh.
Is e dà rud a bu chòir a thoirt fa-near pìosan seòlaidh cuimhne agus taghadh mapadh seòladh cuimhne.
Airson example, tha mi air MT41J128M8XX-125 a thaghadh fon phàirt cuimhne roghainnean tuiteam sìos.
Airson a’ phàirt cuimhne taghte bho Figear-1, sreath = 14, colbh = 10 agus banca = 3, mar sin app_addr_width = sreath + colbh + banca + rang = 28
Faodaidh tu an dàrna cuid BANK_ROW_COLUMN no ROW BANK Column a thaghadh.
Tha mi air Colbh ROW BANK fhàgail a tha mar am mapa seòladh bunaiteach.
Example dealbhadh Simulation le being deuchainn synthesizable
Fo roghainnean Simulation, tagh QuestaSim / ModelSim Simulator agus brobhsadh gu àite nan leabharlannan cruinnichte.
Airson mion-fhiosrachadh mu bhith a’ comharrachadh slighe stàlaidh innealan treas-phàrtaidh, a’ taghadh an simuladair targaid, agus a’ cur ri chèile agus a’ mapadh leabharlannan, faodaidh tu iomradh a thoirt air (UG900) Vivado Design Suite User Guide Logic Simulation
Ruith an atharrais tron GUI (Cliog air an Run Simulation Tab ann am manaidsear pròiseict) agus dèan cinnteach gum faic thu an teachdaireachd “deuchainn seachad” san tar-sgrìobhadh.
Mion-atharrachaidhean RTL Simulation Coileanaidh
- Dèan briogadh deas air taba nan stòran, tagh “cuir ris no cruthaich stòran atharrais”, agus brobhsadh chun mig7_perfsim_traffic_generator.sv file agus cliog air crìoch gus a chuir ris.
- Dèan briogadh deas air taba nan stòran, tagh “cuir ris no cruthaich stòran atharrais”, brobhsadh gu perfsim_stimulus.txt, agus cliog air crìoch gus a chuir ris.
- Thoir beachd air an t-seannample_top instantiation anns an sim_tb_top.v file.
- Cuir na loidhnichean RTL gu h-ìosal gu sim_tb_top, v
- localparam APP_ADDR_WIDTH = 28;
- localparam APP_DATA_WIDTH = 64;
- localparam APP_MASK_WIDTH = APP_DATA_WIDTH/8;
- localparam MEM_ADDR_ORDER = “BANK_ROW_COLUMN”;
- localparam BANK_WIDTH = 3;
- localparam RANK_WIDTH = 1;
- uèir [APP_ADDR_WIDTH-1:0] c0_ddr3_app_addr;
- uèir [2:0] c0_ddr3_app_cmd;
- uèir c0_ddr3_app_en;
- uèir [APP_DATA_WIDTH-1:0] c0_ddr3_app_wdf_data;
- uèir c0_ddr3_app_wdf_end;
- uèir [APP_MASK_WIDTH-1:0] c0_ddr3_app_wdf_mask;
- uèir c0_ddr3_app_wdf_wren;
- uèir [APP_DATA_WIDTH-1:0] c0_ddr3_app_rd_data;
- uèir c0_ddr3_app_rd_data_end;
- uèir c0_ddr3_app_rd_data_valid;
- uèir c0_ddr3_app_rdy;
- uèir c0_ddr3_app_wdf_rdy;
- uèir c0_data_compare_error;
- uèir ui_clk;
- uèir ui_clk_sync_rst;
- uèir app_sr_req = 0;
- uèir app_ref_req = 0;
- uèir app_zq_req = 0;
- uèir c0_app_wdf_mask = 0;
Sa bhad rianadair cuimhne FPGA
mig_7series_0_mig u_mig_7series_0_mig (
// Puirt eadar-aghaidh cuimhne
- .ddr3_addr (ddr3_addr_fpga),
- .ddr3_ba (ddr3_ba_fpga),
- .ddr3_cas_n (ddr3_cas_n_fpga),
- .ddr3_ck_n (ddr3_ck_n_fpga),
- .ddr3_ck_p (ddr3_ck_p_fpga),
- .ddr3_cke (ddr3_cke_fpga),
- .ddr3_ras_n (ddr3_ras_n_fpga),
- .ddr3_reset_n (ddr3_reset_n),
- .ddr3_we_n (ddr3_we_n_fpga),
- .ddr3_dq (ddr3_dq_fpga),
- .ddr3_dqs_n (ddr3_dqs_n_fpga),
- .ddr3_dqs_p (ddr3_dqs_p_fpga),
- .init_calib_complete (init_calib_complete),
- .ddr3_cs_n (ddr3_cs_n_fpga),
- .ddr3_dm (ddr3_dm_fpga),
- .ddr3_odt (ddr3_odt_fpga),
// Puirt eadar-aghaidh tagraidh
- .app_addr (c0_ddr3_app_addr),
- .app_cmd (c0_ddr3_app_cmd),
- .app_ga (c0_ddr3_app_en),
- .app_wdf_data (c0_ddr3_app_wdf_data),
- .app_wdf_end (c0_ddr3_app_wdf_end),
- .app_wdf_wren (c0_ddr3_app_wdf_wren),
- .app_rd_data (c0_ddr3_app_rd_data),
- .app_rd_data_end (app_rd_data_end),
- .app_rd_data_valid (c0_ddr3_app_rd_data_valid),
- .app_rdy (c0_ddr3_app_rdy),
- .app_wdf_rdy (c0_ddr3_app_wdf_rdy),
- .app_sr_req (app_sr_req),
- .app_ref_req (app_ref_req),
- .app_zq_req (app_zq_req),
- .app_sr_active (app_sr_active),
- .app_ref_ack (app_ref_ack),
- .app_zq_ack (app_zq_ack),
- .ui_clk (ui_clk),
- .ui_clk_sync_rst (ui_clk_sync_rst),
- .app_wdf_mask (c0_ddr3_app_wdf_mask),
// System Cloc puirt
- .sys_clk_i (sys_clk_i),
// Puirt Cloc Iomraidh
- .clk_ref_i (clk_ref_i),
- .sys_rst (sys_rst)
- );
Gluasad gineadair trafaic coileanaidh
mig7_perfsim_trafaic_generator#
(
.APP_DATA_WIDTH (APP_DATA_WIDTH),
.COL_WIDTH (COL_WIDTH),
.ROW_WIDTH (ROW_WIDTH),
.RANK_WIDTH (RANK_WIDTH),
.BANK_WIDTH (BANK_WIDTH),
.MEM_ADDR_ORDER (MEM_ADDR_ORDER),
.tCK (tCK),
.ADDR_WIDTH (APP_ADDR_WIDTH)
)
u_trafaic_gen
(
.clk (ui_clk ),
.rst (ui_clk_sync_rst ),
.init_calib_complete (init_calib_complete),
.cmp_error (c0_data_compare_error),
.app_wdf_rdy (c0_ddr3_app_wdf_rdy ),
.app_rd_data_valid (c0_ddr3_app_rd_data_valid),
.app_rd_data (c0_ddr3_app_rd_data ),
.app_rdy (c0_ddr3_app_rdy),
.app_cmd (c0_ddr3_app_cmd ),
.app_addr (c0_ddr3_app_addr ),
.app_ga (c0_ddr3_app_en ),
.app_wdf_mask (c0_ddr3_app_wdf_mask),
.app_wdf_data (c0_ddr3_app_wdf_data),
.app_wdf_end (c0_ddr3_app_wdf_end ),
.app_wdf_wren (c0_ddr3_app_wdf_wren)
);
- 5. Atharraich APP_ADDR_WIDTH, APP_DATA_WIDTH, RANK_WIDTH agus BANK_WIDTH a rèir do roghainn pàirt cuimhne.
Faodar luachan fhaighinn bho na _mig.v file. - Faodaidh an t-ainm sa bhad buidhe comharraichte mig_7series_0_mig atharrachadh a rèir ainm a’ cho-phàirt agad rè cruthachadh IP, dearbhaich a bheil thu air ainm eile a thaghadh agus atharraich a rèir sin.
- Aon uair ‘s gu bheil an IP air a chruthachadh fosgail am faidhle _mig.v file agus tar-sgrùdadh airson caochlaidhean sam bith ann an ainmean chomharran LHS agus ceartaich iad.
- bu chòir app_sr_req, app_ref_req agus app_zq_req a thòiseachadh gu 0.
- Mar example_top.v air a ràdh a-mach agus ùr files air an cur ris, is dòcha gum faic thu “?” ri taobh an
mig_7series_0_mig.v file fo stòran atharrais.
Gus am mapa ceart file, cliog deas mig_7series_0_mig.v, tagh “Cuir Stòran ris”, Dèan brobhsadh gu
/mig_7series_0_example.srcs/sources_1/ip/mig_7series_0/mig_7series_0/user_design/rtl
agus cuir ris an mig_7series_0_mig_sim.v file. - Ma chì thu “?” airson a 'bhunait files, cuir ris a h-uile RTL files anns na pasganan gleocaidh, rianadair, ip_top, phy agus UI.
- Aon uair ‘s gu bheil na h-atharrachaidhean RTL air an dèanamh agus a h-uile càil a tha a dhìth files air an cur ris na Stòran Samhlachaidh agad, bu chòir rangachd a bhith coltach ri Figear 5.
Tha an files air an comharrachadh ann an dearg air an cur ris às ùr, agus “?” thathar an dùil air modalan co-cheangailte ri ECC leis gu bheil an roghainn ECC ciorramach air an rèiteachadh cuimhne taghte.
Spreagadh File Tuairisgeul
Tha gach pàtran brosnachaidh 48 pìosan agus tha an cruth air a mhìneachadh ann am Figearan 6-1 tro 6-4.
Còdachadh Seòladh (Seòladh [35:0])
Tha an seòladh air a chòdachadh anns an spreagadh a rèir Figear 7-1 gu Figear 7-6. Feumaidh a h-uile raon seòlaidh a chuir a-steach ann an cruth hexadecimal. Tha leud anns a h-uile raon seòlaidh a tha air a sgaradh le ceithir airson a chuir a-steach ann an cruth hexadecimal. Cha bhith a’ bheing deuchainn ach a’ cur na pìosan riatanach de raon seòlaidh chun Rianadair Cuimhne.
Airson example, ann an rèiteachadh ochd banca, chan eil ach Bits banca [2:0] air an cur chun Rianadair Cuimhne agus thèid na pìosan a tha air fhàgail a leigeil seachad. Tha na pìosan a bharrachd airson raon seòlaidh air an toirt seachad gus an cuir thu a-steach an seòladh ann an cruth hexadecimal.
Feumaidh tu dearbhadh gu bheil an luach a chuir thu a-steach a rèir leud rèiteachaidh sònraichte.
- Seòladh Colbh (Colbh[11:0]) - Tha seòladh colbh sa bhrosnachaidh air a thoirt seachad gu 12 pìosan aig a’ char as àirde, ach feumaidh tu dèiligeadh ris an seo stèidhichte air paramadair leud a’ cholbh a chaidh a shuidheachadh nad dhealbhadh.
- Seòladh sreath (sreath[15:0]) - Tha seòladh loidhne sa bhrosnachaidh air a thoirt seachad gu 16 pìosan aig a’ char as àirde, ach feumaidh tu dèiligeadh ris an seo stèidhichte air paramadair leud na loidhne a chaidh a shuidheachadh nad dhealbhadh.
- Seòladh Banca (Banca[3:0]) - Tha seòladh banca anns an inneal brosnachaidh air a thoirt seachad gu ceithir pìosan aig a’ char as àirde, ach feumaidh tu dèiligeadh ris an seo stèidhichte air paramadair leud a’ bhanca a chaidh a shuidheachadh nad dhealbhadh.
- Seòladh Rang (Rang[3:0]) - Tha seòladh rangachaidh sa bhrosnachaidh air a thoirt seachad gu ceithir pìosan aig a’ char as àirde, ach feumaidh tu dèiligeadh ris an seo stèidhichte air am paramadair leud rang a chaidh a shuidheachadh nad dhealbhadh.
Tha an seòladh air a chruinneachadh stèidhichte air a' pharameter MEM_ADDR_ORDER aig an ìre as àirde agus air a chur chun eadar-aghaidh cleachdaiche
Ath-aithris Òrdugh (Ath-thòisich an àithne [7:0])
Is e an àireamh ath-aithris àithne an àireamh ùine a thèid an àithne fa leth ath-aithris aig an eadar-aghaidh cleachdaiche. Tha an seòladh airson gach ath-aithris air àrdachadh le 8. 'S e 128 an àireamh ath-aithris as àirde.
Cha bhith a’ bheing deuchainn a ’sgrùdadh airson crìoch a’ cholbh agus bidh e a ’cuairteachadh ma ruigear a’ chrìoch colbh as àirde rè na h-àrdachaidhean.
Bidh na 128 àitheantan a’ lìonadh na duilleige. Airson seòladh colbh sam bith a bharrachd air 0, bidh an àireamh ath-aithris de 128 a’ tighinn gu crìch a’ dol thairis air crìoch a’ cholbh agus a’ cuairteachadh gu toiseach seòladh a’ cholbh.
Cleachdadh Busaichean
Tha cleachdadh bhusaichean air a thomhas aig an Eadar-aghaidh Cleachdaiche a’ toirt aire don àireamh iomlan de Leughadh is Sgrìobhadh agus thathas a’ cleachdadh an co-aontar a leanas:
- Bidh BL8 a’ toirt ceithir cearcallan gleoc cuimhne
- Is e end_of_stimulus an t-àm anns a bheil na h-òrdughan uile air an dèanamh.
- Is e calib_done an t-àm nuair a thèid an calibration a dhèanamh.
Example Patterns
Tha na seanamptha nas lugha stèidhichte air an t-suidheachadh MEM_ADDR_ORDER gu BANK_ROW_COLUMN.
Pàtran Leughaidh Singilte
00_0_2_000F_00A_1 - Tha am pàtran seo mar aon leughadh bhon 10mh colbh, 15mh sreath, agus an dàrna banca.Pàtran Sgrìobhaidh Singilte
00_0_1_0040_010_0 - Tha am pàtran seo mar aon sgrìobhadh chun 32mh colbh, 128mh sreath, agus a’ chiad bhanca.Sgrìobh Singilte agus Leugh chun Aon Seòladh
00_0_2_000F_00A_0 – Tha am pàtran seo na aon sgrìobhadh chun 10mh colbh, 15mh sreath, agus an dàrna banca.
00_0_2_000F_00A_1 – Tha am pàtran seo na aon leughadh bhon 10mh colbh, 15mh sreath, agus an dàrna banca
Iomadh sgrìobhadh agus leughadh leis an aon sheòladh
0A_0_0_0010_000_0 – Tha seo a’ freagairt ri 10 sgrìobhadh le seòladh a’ tòiseachadh bho 0 gu 80 a chithear sa cholbh.
0A_0_0_0010_000_1 – Tha seo a’ freagairt ri 10 leughaidhean le seòladh a’ tòiseachadh bho 0 gu 80 a chithear sa cholbh.
Còmhdaich na duilleige ri linn Sgrìobhaidhean
0A_0_2_000F_3F8_0 – Tha seo a’ freagairt ri 10 sgrìobhadh le seòladh colbh ceangailte ri toiseach na duilleige às deidh aon sgrìobhadh.
A 'samhlachadh an Gineadair Trafaic Coileanaidh
Aig an ìre seo tha thu deiseil le MIG example dealbhadh atharrais. Tha seo a’ ciallachadh gu bheil an suidheachadh atharrais agad deiseil, tha thu air atharrachaidhean RTL atharrais dèanadais a dhèanamh, tha an rangachd atharrais ùr ceart agus tha thu air na pàtranan brosnachaidh a thuigsinn. Ruith an atharrais a-rithist le 16 sgrìobhadh agus leughadh ann an perfsim_stimulus.txt.
Dèan ruith gu h-iomlan, fuirich gus an tèid an comharra init_calib_complete a dhearbhadh, agus chì thu an àireamh de sgrìobhaidhean is leughaidhean a tha san amharc. An uairsin stadaidh an atharrais.
Nuair a thèid iarraidh ort stad a chuir air atharrais, tagh Chan eil agus rach chun uinneig tar-sgrìobhaidh far am faic thu na staitistig coileanaidh.
Ma roghnaicheas tu "Sguir dheth atharrais" thèid staitistig dèanadais a sgrìobhadh gu a file ainmeachadh mig_band_width_output.txt suidhichte anns an sim_1/behave pasgan.
Exampslighe an eòlaire :-
/mig_7series_0_example_perf_sim\mig_7series_0_example.sim/sim_1/behav
Is dòcha gu bheil thu a’ faighneachd carson a tha an percentagis e cleachdadh bus ony 29. Ath-ruith an atharrais leis na h-aon shuidheachaidhean IP ach dìreach atharraich an spreagadh file gu 256 a’ sgrìobhadh agus 256 a’ leughadh
ff_0_0_0000_000_0
ff_0_0_0000_000_1
Chì thu a-nis an ceudadtage mar 85, a tha a’ ciallachadh gu bheil DDR3 a’ tabhann cleachdadh bus nas fheàrr airson sreath fhada de sgrìobhadh agus spreadhaidhean leughaidh.
Dòighean coitcheann airson Coileanadh a leasachadh
Faodar na factaran a bheir buaidh air èifeachdas a roinn ann an dà roinn:
- Cuimhne sònraichte
- Rianadair sònraichte
Bheir Figear 9 seachad dhutview de na teirmean a tha sònraichte airson cuimhne.
Eu-coltach ri SRAMs agus Block Memories chan e coileanadh DDR2 no DDR3 dìreach an ìre dàta as àirde.
Tha e an urra ri mòran fhactaran ùine, nam measg:
- tRCD: Dàil Command Row (no ras gu dàil cas).
- tCAS(CL): Colbh seòladh latency strobe.
- tRP: Dàil ro-phàighidh sreath.
- tRAS: Sreath Ùine Gnìomhach (cuir an gnìomh gu prechange).
- tRC: Uair cearcall sreath. tRC = tRAS + tRP
- tRAC: Dàil ruigsinneachd radom. tRAC = tRCD + tCAS
- tCWL: Cas sgrìobhadh latency.
- tZQ: Uair ceart ann an raon ùine ZQ calibration.
- tRFC: Sreath ùrachadh ùine rothaireachd
- tWTR: Sgrìobh gu Leugh dàil. An gnothach sgrìobhaidh mu dheireadh gu àm àithne Leugh.
- tWR: Sgrìobh ùine Ath-bheothachaidh. An gnothach sgrìobhaidh mu dheireadh gu àm Precharge
Tha àm nam paramadairean clàraichte gu lèir an urra ris an t-seòrsa cuimhne a thathar a’ cleachdadh agus ìre astar pàirt cuimhne.
Gheibhear tuilleadh fiosrachaidh mu na mìneachaidhean agus mion-chomharrachadh tìm ann an DDR2 DDR3 JEDEC no ann an duilleag-dàta inneal cuimhne sam bith.
Tha èifeachdas gu mòr an urra ri mar a gheibhear cothrom air cuimhne. Bheir diofar phàtranan seòlaidhean toraidhean èifeachdais eadar-dhealaichte.
Tha àm cuimhne os cionn cinn
- Ùine gnìomhachaidh agus ùine Precharge nuair a dh’ atharraicheas tu gu bancaichean / sreathan ùra no nuair a dh’ atharraicheas tu sreathan leis an aon bhanca.- Mar sin ma lùghdaicheas tu atharrachadh sreath, faodaidh seo tRCD agus tRP a thoirt air falbh.
- Cuir òrdughan sgrìobhte no leughaidh leantainneach - A’ cumail ùine tCCD.
- Lùghdaich sgrìobhadh airson leughadh agus leughadh gus atharrachadh àithne a sgrìobhadh - Sgrìobh ùine ath-bheothachaidh airson atharrachadh gu ruigsinneachd leughaidh, ùine tionndaidh bus airson atharrachadh bho leughadh gu sgrìobhadh
- Suidhich eadar-ama ùrachaidh ceart.
- Feumaidh DDR3 SDRAM cearcallan Ùrachaidh aig àm cuibheasach bho àm gu àm de tREFI.
- Faodar suas ri 8 òrdughan Ùrachaidh a bharrachd a chuir a-mach ro-làimh (“air a tharraing a-steach”). Cha lughdaich seo an àireamh de dh’ ùrachadh, ach tha an ùine as motha eadar dà àithne Ath-nuadhachaidh mun cuairt air a chuingealachadh ri 9 × tREFI
- Cleachd na bancaichean gu lèir - Is fheàrr dòigh seòlaidh iomchaidh.
- Colbh-banca-Roimhe: Airson malairt a tha a’ tachairt thairis air àite seòlaidh sreath, bidh an cridhe gu fèin-obrachail a’ fosgladh an aon sreath anns an ath bhanca den inneal DRAM gus leantainn air adhart leis a’ ghnothach nuair a ruigear deireadh sreath a th’ ann mar-thà. Tha e gu math freagarrach airson tagraidhean a dh’ fheumas pacaidean dàta mòra a spreadhadh gu àiteachan seòlaidhean sreath.
- Colbh-sreath Banca: Nuair a thèid thu tarsainn air crìoch sreath, thèid an sreath gnàthach a dhùnadh agus thèid sreath eile fhosgladh taobh a-staigh an aon bhruaich. Is e seòladh banca a th’ ann am MSB, a dh’ fhaodar a chleachdadh gus gluasad bho dhiofar bhancaichean. Tha e freagarrach airson gnothaichean nas giorra, nas air thuaiream gu aon bhloca cuimhne airson ùine agus an uairsin leum gu bloc eile (banca)
- Fad burst
- Tha BL 8 a’ faighinn taic airson DDR3 air sreath 7. Tha èifeachdas glè ìosal aig BC4 a tha nas lugha na 50%. Tha seo air sgàth gu bheil an ùine cur gu bàs BC4 co-ionann ri BL8. Tha an dàta dìreach falaichte taobh a-staigh a’ cho-phàirt.
- Ann an cùisean far nach eil thu airson làn spreadhadh a sgrìobhadh, faodar beachdachadh air masg dàta no sgrìobhadh às deidh leughadh.
- Suidhich eadar-ama ZQ ceart (DDR3 a-mhàin)
Bidh an rianadair a’ cur an dà chuid òrdughan Calibration ZQ Short (ZQCS) agus ZQ Long (ZQCL).- Cum ris an DDR3 Jedec Standard
- Tha ZQ Calibration air a dheasbad ann an earrann 5.5 de Inbhe JEDEC Spec JESD79-3 DDR3 SDRAM
- Bidh ZQ Calibration a’ calibrate On Die Termination (ODT) aig amannan cunbhalach gus cunntas a thoirt air atharrachaidhean thar VT
- Tha loidsig ann am bank_common.v/vhd
- Bidh Parameter Tzqcs a’ dearbhadh an ìre aig a bheil àithne ZQ Calibration air a chuir chun chuimhne
- Tha e comasach an cuntair a chuir dheth agus a chuir le làimh a’ cleachdadh app_zq_req, tha e coltach ri bhith a’ cur Ùrachadh le làimh.
Faic (Freagair Xilinx 47924) airson mion-fhiosrachadh.
Goireasan Riaghladair
- Leughaidhean ràitheil - Thoir sùil air (Freagair Xilinx 43344) airson mion-fhiosrachadh.
- Na atharraich ùine an leughaidh
- Leum leughaidhean bho àm gu àm nuair a bhios tu a’ sgrìobhadh agus cuir a-mach an àireamh de leughaidhean a chaidh a chall mus leugh iad fìor
- Ath-òrdachadh - Thoir iomradh (Freagair Xilinx 34392) airson mion-fhiosrachadh.
Airson dealbhadh eadar-aghaidh cleachdaiche is AXI tha e nas fheàrr seo a bhith air a chomasachadh.- Is e ath-òrdachadh an loidsig a tha a’ coimhead air adhart grunn òrdughan agus ag atharrachadh òrdugh òrduigh neach-cleachdaidh gus nach bi òrdughan neo-chuimhne a’ gabhail leud-bann dligheach. Bha an coileanadh cuideachd co-cheangailte ri fìor phàtran trafaic.
- Stèidhichte air a’ phàtran seòlaidh, bidh ath-òrdachadh a’ cuideachadh le bhith a’ sgioblachadh ro-phàighidh agus a’ cur an gnìomh òrdughan agus a’ toirt air tRCD agus tRP gun a bhith a’ gabhail thairis leud bann dàta.
- Feuch ris an àireamh de Innealan Banca àrdachadh.
- Tha a’ mhòr-chuid de loidsig an rianadair a’ fuireach anns na h-innealan banca agus tha iad a’ freagairt ri bancaichean DRAM
- Bidh inneal banca sònraichte a’ riaghladh aon bhanca DRAM aig àm sònraichte sam bith.
- Tha sònrachadh inneal banca fiùghantach agus mar sin chan fheumar inneal banca a bhith agad airson gach banca corporra.
- Faodar innealan banca a rèiteachadh, ach tha e na mhalairt eadar raon agus coileanadh.
- Tha an àireamh ceadaichte de dh’ innealan banca eadar 2-8.
- Gu gnàthach, tha 4 Innealan Banca air an rèiteachadh tro pharaimearan RTL.
- Gus Innealan Banca atharrachadh, smaoinich air a’ pharamadair nBANK_MACHS = 8 ann am memc_ui_top Example airson 8 Innealan Banca - nBANK_MACHS = 8
Tha thu a-nis mothachail air na feartan a bheir buaidh air coileanadh.
Beachdaich air tagradh shuas an abhainn a bheir dhut 512 byte dàta gach pacaid agus feumaidh tu an sàbhaladh gu diofar àiteachan cuimhne. Leis gu bheil 512 bytes dàta co-ionann ri 64 spreadhadh dàta DDR3, ath-ruith an example dealbhadh le brosnachadh file anns a bheil 512 sgrìobhadh, 512 a’ leughadh agus atharrachadh sreath airson gach 64 a’ sgrìobhadh no a’ leughadh:
- 3f_0_0_0000_000_0
- 3f_0_0_0001_000_0
- 3f_0_0_0002_000_0
- 3f_0_0_0003_000_0
- 3f_0_0_0004_000_0
- 3f_0_0_0005_000_0
- 3f_0_0_0006_000_0
- 3f_0_0_0007_000_0
- 3f_0_0_0000_000_1
- 3f_0_0_0001_000_1
- 3f_0_0_0002_000_1
- 3f_0_0_0003_000_1
- 3f_0_0_0004_000_1
- 3f_0_0_0005_000_1
- 3f_0_0_0006_000_1
- 3f_0_0_0007_000_1
Aig deireadh an atharrais chì thu gu bheil cleachdadh bhusaichean aig 77 sa cheud.
Figear 11: Staitistigean Coileanaidh airson 512 a’ sgrìobhadh agus 512 a’ leughadh – Atharrachadh sreath airson 64 a’ sgrìobhadh no a’ leughadh.
Faodaidh tu a-nis an t-eòlas a chaidh ionnsachadh san earrann roimhe seo a chuir an gnìomh gus èifeachdas a leasachadh. Le a view gus na bancaichean gu lèir a chleachdadh an àite an loidhne atharrachadh, atharraich am pàtran seòlaidh gus am banca atharrachadh mar a chithear gu h-ìosal.
Tha seo co-ionann ri suidheachadh ROW_BANK_Column ann an suidheachadh mapadh seòladh cuimhne san MIG GUI.
- 3f_0_0_0000_000_0
- 3f_0_1_0000_000_0
- 3f_0_2_0000_000_0
- 3f_0_3_0000_000_0
- 3f_0_4_0000_000_0
- 3f_0_5_0000_000_0
- 3f_0_6_0000_000_0
- 3f_0_7_0000_000_0
- 3f_0_0_0000_000_1
- 3f_0_1_0000_000_1
- 3f_0_2_0000_000_1
- 3f_0_3_0000_000_1
- 3f_0_4_0000_000_1
- 3f_0_5_0000_000_1
- 3f_0_6_0000_000_1
- 3f_0_7_0000_000_1
Aig deireadh an atharrais chì thu gu bheil an 77 sa cheud cleachdadh bhusaichean nas tràithe a-nis aig 87!
Ma tha feum agad air èifeachdas nas àirde fhathast, faodaidh tu a dhol airson meudan pacaidean mòra de 1024 no 2048 bytes, no beachdachadh air ùrachadh làimhe.
Thoir an aire: Chan eil Xilinx a’ brosnachadh a bhith a’ dol seachad air ùrachadh rianadair oir chan eil sinn cinnteach an urrainn dhut coinneachadh ri àm ùrachaidh fèin-ghluasadach Jedec a bheir buaidh air earbsachd dàta.
Bho thaobh an rianadair faodaidh tu nBANk_MACH atharrachadh agus an leasachadh ann an coileanadh fhaicinn.
Ach, dh’ fhaodadh seo buaidh a thoirt air an ùine dealbhaidh agad, thoir sùil air (Freagair Xilinx 36505) airson mion-fhiosrachadh air nBANk_MACH
Fosgail an core_name_mig_sim.v file agus atharraich na crìochan nBANK_MACHS bho 4 gu 8 agus ath-ruith an atharrais. Gus am bi an luach paramadair a’ tighinn gu buil ann am bathar-cruaidh, feumaidh tu am faidhle core_name_mig.v file.
Chleachd mi an aon phàtran far an d’ fhuair sinn 87% cleachdadh bhusaichean (figear -12).
Le nBANK_MACHS air a shuidheachadh gu 8, tha an èifeachdas a-nis 90%.
Thoir an aire cuideachd gu bheil luchd-riaghlaidh ½ agus ¼ a’ toirt droch bhuaidh air èifeachdas air sgàth cho fada ‘s a tha iad.
Airson example, leis nach urrainn dhuinn ach òrdughan a chuir a-steach a h-uile cearcall 4 CK uaireannan bidh pleadhag a bharrachd ann nuair a chumas sinn ris na sònrachaidhean ùine DRAM as ìsle, a dh’ fhaodadh èifeachdas a lughdachadh bhon teòiridheach.
Feuch diofar luchd-riaghlaidh gus am fear a lorg a fhreagras air an riatanas èifeachdais agad.
Iomraidhean
- Zynq-7000 AP SoC agus 7 Sreath FPGAn MIS v2.3 [UG586]
- Ionad Fuasglaidh Xilinx MIG http://www.xilinx.com/support/answers/34243.html
Eachdraidh Ath-sgrùdaidh
13/03/2015 - A’ chiad fhoillseachadh
Luchdaich sìos PDF: Leabhar-iùil Tomhais Coileanaidh Xilinx DDR2 MIG 7