Xilinx-logo

Xilinx DDR2 MIG 7 Gwida għall-Istima tal-Prestazzjoni

Xilinx_DDR2_MIG_7_Stima-Prestazzjoni-prodott

Nota Importanti: Dan il-PDF li jista' jitniżżel ta' Rekord ta' Tweġibiet huwa pprovdut biex itejjeb l-użabilità u l-leġibbiltà tiegħu. Huwa importanti li wieħed jinnota li Answer Records huma Webkontenut ibbażat fuq li huma aġġornati spiss hekk kif informazzjoni ġdida ssir disponibbli. Inti mfakkra biex iżżur l-Appoġġ Tekniku Xilinx Websit u riview (Tweġiba Xilinx 63234) għall-aħħar verżjoni ta’ din it-Tweġiba.

Introduzzjoni

Minħabba l-mod kif il-memorji DDR2 u DDR3 huma arkitetti u l-kontrollur tas-serje MIG 7 huwa ddisinjat, il-prestazzjoni mhix sempliċi.
Jeħtieġ għarfien ta 'diversi parametri Jedec Timing u Arkitettura tal-kontrollur, u ser ikollok bżonn tmexxi simulazzjonijiet biex tikseb l-istimi.
Il-prinċipju ġenerali għad-determinazzjoni tal-prestazzjoni huwa l-istess iżda dan id-dokument jipprovdi mod faċli biex tinkiseb effiċjenza bl-użu tal-MIG example disinn bl-għajnuna tal-bank tat-test u stimolu files mehmuża hawn.

Bandwidth effettiv

Il-bus tad-data DRAM jikseb bandwidth kważi quċċata biss waqt il-fqigħ tal-qari u l-kitba u l-overhead tiegħu jbaxxi r-rata tad-data effettiva.
Ftit exampil-lezzjonijiet tal-overhead huma:

  • Ħin ta' ħlas minn qabel għall-aċċess għal ringieli fl-istess bank (Indirizz ta' aċċess mhux fl-istess hit fil-paġna ta' ringiela)
  • tikteb ħin ta 'rkupru biex tinbidel minn tikteb għal aċċess għall-qari
  • il-ħin tat-tibdil tal-karozzi tal-linja biex jinbidel minn aċċess għall-qari għall-kitba

Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-28
Bandwidth effettiv = Peak Bandwidth * Effiċjenza 

Ġenerazzjoni tad-Disinn MIG

Irreferi għal UG586 Kapitolu 1 għal dettalji pass pass dwar MIG IP u example ġenerazzjoni tad-disinn.
Qabel ma tħaddem is-simulazzjoni tal-prestazzjoni tas-Serje MIG 7, agħmel dan li ġej biex tiżgura li l-ambjent tas-simulazzjoni tiegħek ikun tajjeb. Iftaħ il-MIG example iddisinja u mappa l-libreriji xierqa, mexxi s-simulazzjoni, u tiżgura li tista 'tara l-messaġġ "test għadda" fit-traskrizzjoni.
Biex nuri l-fluss iġġenerajt IP MIG għal xc7vx690tffg1761-2 u invokajt l-exampdisinn.
Żewġ affarijiet li għandhom jiġu nnotati huma l-bits tal-indirizz tal-memorja u l-għażla tal-mapping tal-indirizz tal-memorja.
Per example, I għażilt MT41J128M8XX-125 taħt il-parti tal-memorja drop down għażliet.Xilinx DDR2 MIG-7-Stima-Prestazzjoni-fig-1

Għall-parti tal-memorja magħżula minn Figura-1, ringiela = 14, kolonna = 10 u bank = 3, għalhekk app_addr_width = ringiela + kolonna + bank + rank = 28 Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-2

Tista' tagħżel jew Kolonna BANK_ROW_COLUMN jew ROW BANK.
Ħallejt il-Kolonna ROW BANK li hija l-immappjar tal-indirizz default.

Example disinn Simulazzjoni b'bank tat-test sintetizzat

Taħt l-issettjar tas-Simulazzjoni, agħżel QuestaSim/ModelSim Simulator u fittex il-post tal-libreriji kkompilati.
Għal dettalji dwar kif tipponta lejn mogħdija ta’ installazzjoni ta’ għodod ta’ parti terza, tagħżel is-simulatur fil-mira, u tikkumpila u timmarka libreriji, tista’ tirreferi għal (UG900) Gwida għall-Utent ta’ Vivado Design Suite Simulazzjoni LoġikaXilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-3

Mexxi s-simulazzjoni permezz tal-GUI (Ikklikkja t-Tab Simulazzjoni Run fil-maniġer tal-proġett) u kun żgur li tara l-messaġġ "test għadda" fit-traskrizzjoni.

Modifiki RTL ta' Simulazzjoni tal-Prestazzjoni

  1. Ikklikkja bil-lemin it-tab tas-sorsi, agħżel "żid jew toħloq sorsi ta' simulazzjoni", u bbrawżja għall-mig7_perfsim_traffic_generator.sv file u ikklikkja finitura biex iżżidha.
  2. Ikklikkja bil-lemin it-tab tas-sorsi, agħżel "żid jew toħloq sorsi ta' simulazzjoni", ibbrawżja għal perfsim_stimulus.txt, u kklikkja finitura biex iżżidha.
  3. Ikkummenta l-exampinstanzjazzjoni le_top fil-sim_tb_top.v file.
  4. Żid il-linji RTL hawn taħt għal 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;
  • wajer [APP_ADDR_WIDTH-1:0] c0_ddr3_app_addr;
  • wajer [2:0] c0_ddr3_app_cmd;
  • wajer c0_ddr3_app_en;
  • wajer [APP_DATA_WIDTH-1:0] c0_ddr3_app_wdf_data;
  • wajer c0_ddr3_app_wdf_end;
  • wajer [APP_MASK_WIDTH-1:0] c0_ddr3_app_wdf_mask;
  • wajer c0_ddr3_app_wdf_wren;
  • wajer [APP_DATA_WIDTH-1:0] c0_ddr3_app_rd_data;
  • wajer c0_ddr3_app_rd_data_end;
  • wajer c0_ddr3_app_rd_data_valid;
  • wajer c0_ddr3_app_rdy;
  • wajer c0_ddr3_app_wdf_rdy;
  • wajer c0_data_compare_error;
  • wajer ui_clk;
  • wajer ui_clk_sync_rst;
  • wajer app_sr_req = 0;
  • wajer app_ref_req = 0;
  • wajer app_zq_req =0;
  • wajer c0_app_wdf_mask =0;

Istanza tal-Kontrollur tal-Memorja FPGA

mig_7series_0_mig u_mig_7series_0_mig (
// Portijiet tal-interface tal-memorja

  • .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),

// Portijiet tal-interface tal-applikazzjoni

  • .app_addr (c0_ddr3_app_addr),
  • .app_cmd (c0_ddr3_app_cmd),
  • .app_en (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),

// Portijiet tal-Arloġġ tas-Sistema

  • .sys_clk_i (sys_clk_i),

// Portijiet ta' l-Arloġġ ta' Referenza

  • .clk_ref_i (clk_ref_i),
  • .sys_rst (sys_rst)
  • );

Instanzjazzjoni tal-ġeneratur tat-traffiku tal-prestazzjoni

mig7_perfsim_traffic_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_traffic_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_en (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. Immodifika APP_ADDR_WIDTH, APP_DATA_WIDTH, RANK_WIDTH u BANK_WIDTH skont l-għażla tal-parti tal-memorja tiegħek.
    Il-valuri jistgħu jinkisbu mill- _mig.v file.
  • L-isem tal-istanzjazzjoni isfar enfasizzat mig_7series_0_mig jista’ jvarja skont l-isem tal-komponent tiegħek waqt il-ħolqien tal-IP, ivverifika jekk għażiltx isem differenti u biddel dan kif xieraq.Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-4
  • Ladarba l-IP jiġi ġġenerat tiftaħ il- _mig.v file u kontroċċekkja għal kwalunkwe varjazzjonijiet fl-ismijiet tas-sinjali LHS u kkoreġihom.
  • app_sr_req, app_ref_req u app_zq_req għandhom jiġu inizjalizzati għal 0.
  • Kif example_top.v huwa kkummentat u ġdid files huma miżjuda, inti probabilment se tara "?" ħdejn il-
    mig_7series_0_mig.v file taħt sorsi ta' simulazzjoni.
    Biex mappa t-tajba file, ikklikkja dritt mig_7series_0_mig.v, agħżel "Żid Sorsi", Ibbrawżja għal
    /mig_7series_0_example.srcs/sources_1/ip/mig_7series_0/mig_7series_0/user_design/rtl
    u żid il-mig_7series_0_mig_sim.v file.
  • Jekk tara “?” għall-sottostanti files, żid RTL kollha files fil-fowlders tal-arloġġ, kontrollur, ip_top, phy u UI.
  • Ladarba jsiru l-bidliet RTL u dak kollu meħtieġ files huma miżjuda mas-Sorsi ta' Simulazzjoni tiegħek, Ġerarkija għandha tkun simili għal Figura 5.
    Il- files enfasizzati bl-aħmar huma miżjuda ġodda, u "?" huwa mistenni fuq moduli relatati mal-ECC peress li l-konfigurazzjoni tal-memorja magħżula għandha l-għażla ECC diżattivata.Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-5

Stimolu File Deskrizzjoni
Kull mudell ta' stimolu huwa ta' 48 bit u l-format huwa deskritt f'Figuri 6-1 sa 6-4.Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-6

Kodifikazzjoni tal-Indirizz (Indirizz [35:0])

L-indirizz huwa kodifikat fl-istimulu kif kull Figura 7-1 sa Figura 7-6. L-oqsma tal-indirizzi kollha jridu jiddaħħlu fil-format eżadeċimali. L-oqsma kollha ta 'l-indirizz huma wisa' li hija diviżibbli b'erbgħa biex tidħol fil-format eżadeċimali. Il-bank tat-test jibgħat biss il-bits meħtieġa ta 'kamp ta' indirizz lill-Kontrollur tal-Memorja.
Per example, f'konfigurazzjoni ta 'tmien bank, Bank Bits [2:0] biss jintbagħtu lill-Kontrollur tal-Memorja u l-bits li jifdal huma injorati. Il-bits żejda għal qasam ta' indirizz huma pprovduti għalik biex iddaħħal l-indirizz f'format eżadeċimali.
Trid tikkonferma li l-valur imdaħħal jikkorrispondi mal-wisa' ta' konfigurazzjoni partikolari.Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-7

  • Indirizz tal-Kolonna (Kolonna[11:0]) – L-indirizz tal-kolonna fl-istimulu huwa pprovdut sa massimu ta '12-il bit, iżda għandek bżonn tindirizza dan ibbażat fuq il-parametru tal-wisa' tal-kolonna stabbilit fid-disinn tiegħek.
  • Indirizz tar-ringiela (Ringiela[15:0]) – L-indirizz tar-ringiela fl-istimulu huwa pprovdut sa massimu ta '16-il bit, iżda għandek bżonn tindirizza dan ibbażat fuq il-parametru tal-wisa' tar-ringiela stabbilit fid-disinn tiegħek.
  • Indirizz tal-Bank (Bank[3:0]) – L-indirizz tal-bank fl-istimulu huwa pprovdut sa massimu ta 'erba' bits, iżda għandek bżonn tindirizza dan ibbażat fuq il-parametru tal-wisa 'tal-bank stabbilit fid-disinn tiegħek.
  • Indirizz tal-Klassifikazzjoni (Klass[3:0]) – L-indirizz tar-rank fl-istimulu huwa pprovdut sa massimu ta 'erba' bits, iżda għandek bżonn tindirizza dan ibbażat fuq il-parametru tal-wisa 'tal-rank stabbilit fid-disinn tiegħek.
    L-indirizz huwa mmuntat abbażi tal-parametru MEM_ADDR_ORDER tal-ogħla livell u mibgħut lill-interface tal-utent

Irrepeti tal-Kmand (Ripeti tal-Kmand [7:0])
L-għadd ta' ripetizzjoni tal-kmand huwa n-numru ta' ħin li l-kmand rispettiv jiġi ripetut fl-Interface tal-Utent. L-indirizz għal kull ripetizzjoni huwa inkrementat bi 8. L-għadd massimu ta 'repetizzjonijiet huwa 128.
Il-bank tat-test ma jiċċekkjax il-konfini tal-kolonna u jdawwru jekk il-limitu massimu tal-kolonna jintlaħaq matul iż-żidiet.
Il-128 Kmandi jimlew il-paġna. Għal kwalunkwe indirizz tal-kolonna għajr 0, l-għadd ta 'repetizzjonijiet ta' 128 jispiċċa jaqsam il-konfini tal-kolonna u jdawwal mal-bidu tal-indirizz tal-kolonna.

Użu tax-Xarabank
L-utilizzazzjoni tax-xarabank hija kkalkulata fl-Interface tal-Utent filwaqt li jitqies in-numru totali ta’ Qari u Kitbiet u tintuża l-ekwazzjoni li ġejja:

Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-8

  • BL8 jieħu erba 'ċikli ta' arloġġ tal-memorja
  • end_of_stimulus huwa l-ħin meta jsiru l-kmandi kollha.
  • calib_done huwa l-ħin meta ssir il-kalibrazzjoni.

Example Mudelli
Dawn examples huma bbażati fuq il-MEM_ADDR_ORDER issettjat għal BANK_ROW_COLUMN.

Mudell ta' Qari Uniku
00_0_2_000F_00A_1 – Dan il-mudell huwa qari wieħed mill-10 kolonna, il-15-il ringiela, u t-tieni bank.Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-9Mudell ta' Kitba Uniku
00_0_1_0040_010_0 – Dan il-mudell huwa kitba waħda mat-32 kolonna, il-128 ringiela, u l-ewwel bank.Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-10Kitba Waħda u Aqra għall-Istess Indirizz
00_0_2_000F_00A_0 – Dan il-mudell huwa kitba waħda għall-10 kolonna, il-15-il ringiela, u t-tieni bank.
00_0_2_000F_00A_1 – Dan il-mudell huwa qari wieħed mill-10 kolonna, il-15-il ringiela, u t-tieni bankXilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-11

Kitbiet u Qari multipli bl-istess indirizz
0A_0_0_0010_000_0 – Dan jikkorrispondi għal 10 kitbiet b'indirizz li jibda minn 0 sa 80 li jistgħu jidhru fil-kolonna.Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-12

0A_0_0_0010_000_1 – Dan jikkorrispondi għal 10 qari b'indirizz li jibda minn 0 sa 80 li jista' jidher fil-kolonna.Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-13

Wrap Paġna Waqt il-Kitbiet
0A_0_2_000F_3F8_0 – Dan jikkorrispondi għal 10 kitbiet bl-indirizz tal-kolonna imgeżwer mal-bidu tal-paġna wara kitba waħda.Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-14

Simulazzjoni tal-Ġeneratur tat-Traffiku tal-Prestazzjoni

F'dan il-punt inti lest ma MIG exampsimulazzjoni tad-disinn le. Dan jimplika li t-twaqqif tas-simulazzjoni tiegħek huwa lest, għamilt modifiki RTL tas-simulazzjoni tal-prestazzjoni, il-ġerarkija l-ġdida ta 'simulazzjoni hija korretta u fhimt ix-xejriet ta' stimolu. Mexxi s-simulazzjoni għal darb'oħra b'16-il kitba u jaqra f'perfsim_stimulus.txt.Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-15

Do run-all, stenna sakemm is-sinjal init_calib_complete jiġi affermat, u tkun tista 'tara n-numru propost ta' kitbiet u qari. Is-simulazzjoni mbagħad tieqaf. Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-16

Meta tintalab tieqaf is-simulazzjoni, agħżel Le u mur fit-tieqa tat-traskrizzjoni fejn tkun tista' tara l-istatistika tal-prestazzjoni. Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-17

Jekk tagħżel "nieqaf is-simulazzjoni" l-istatistika tal-prestazzjoni se tinkiteb lil a file jismu mig_band_width_output.txt li jinsab fis-sim_1/behave folder.

Exampmogħdija tad-direttorju tal-le:-
/mig_7series_0_example_perf_sim\mig_7series_0_example.sim/sim_1/behavXilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-18

Inti tista 'tistaqsi għaliex il-perċentwalitagL-utilizzazzjoni tax-xarabank hija biss 29. Erġa' agħmel is-simulazzjoni bl-istess settings tal-IP iżda sempliċement tibdel l-istimolu file sa 256 jikteb u 256 jaqra

ff_0_0_0000_000_0
ff_0_0_0000_000_1

Issa se tara l-perċentwaltage bħala 85, li jimplika li DDR3 joffri użu aħjar tax-xarabank għal sekwenza twila ta 'kitba u jinfaqa' qari. Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-19

Modi ġenerali biex Titjieb il-Prestazzjoni

Il-fatturi li jinfluwenzaw l-effiċjenza jistgħu jinqasmu f'żewġ taqsimiet:

  1. Memorja Speċifika
  2. Speċifiku tal-KontrollurXilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-20

Figura 9 tagħtik overview tat-termini li huma speċifiċi għall-memorja.
B'differenza mill-SRAMs u l-Blokk Memorji, il-prestazzjoni DDR2 jew DDR3 mhix biss ir-rata massima tad-dejta.

Jiddependi fuq ħafna fatturi ta 'żmien, inklużi:

  • tRCD: Dewmien tal-Kmand tar-Ringiela (jew dewmien ras għal cas).
  • tCAS(CL): L-indirizz tal-kolonna latency strobe.
  • tRP: Dewmien ta' precharge ringiela.
  • tRAS: Row Active Time (attiva biex tibdel minn qabel).
  • tRC: Ħin taċ-ċiklu tar-ringiela. tRC = tRAS + tRP
  • tRAC: Dewmien għall-aċċess Radom. tRAC = tRCD + tCAS
  • tCWL: Cas tikteb latency.
  • tZQ: Ħin ta 'kalibrazzjoni ZQ.
  • tRFC: Ħin taċ-Ċiklu tal-Aġġorna tar-Ringiela
  • tWTR: Ikteb biex Aqra dewmien. L-aħħar transazzjoni tal-kitba għall-ħin tal-kmand Aqra.
  • tWR: Ikteb Ħin ta 'rkupru. L-aħħar transazzjoni tal-kitba sal-ħin Precharge

Iż-żmien tal-parametri kollha elenkati jiddependi fuq it-tip ta 'memorja użata u l-grad tal-veloċità tal-parti tal-memorja.
Aktar dettalji dwar id-definizzjonijiet u l-ispeċifikazzjonijiet tal-ħin jistgħu jinstabu f'DDR2 DDR3 JEDEC jew fi kwalunkwe datasheet tal-apparat tal-memorja.

L-effiċjenza tiddependi prinċipalment fuq kif tiġi aċċessata l-memorja. Mudelli ta' indirizzi differenti jagħtu riżultati ta' effiċjenza differenti.

Overheads tal-ħin tal-memorja

  1. Ħin ta 'attivazzjoni u ħin ta' Precharge meta tbiddel għal banek / ringieli ġodda jew tbiddel ringieli ma 'fl-istess bank.- Mela jekk tnaqqas il-bidla fir-ringiela, dan jista' jneħħi tRCD u tRP.
  2. Ibgħat kmandi kontinwi ta' kitba jew taqra - Iż-żamma tal-ħin tCCD.
  3. Imminimizza l-bidla tal-kmand tal-kitba biex taqra u taqra biex tikteb – Ikteb il-ħin ta’ rkupru biex tibdel għall-aċċessi tal-qari, il-ħin tat-tibdil tal-karozzi tal-linja biex tbiddel minn qari għall-kitba
  4. Issettja intervall ta 'aġġornament xieraq.
    • DDR3 SDRAM teħtieġ ċikli Aġġorna f'intervall perjodiku medju ta 'tREFI.
    • Massimu ta' 8 kmandijiet ta' Aġġornament addizzjonali jistgħu jinħarġu minn qabel (“miġbud ġewwa”). Dan ma jnaqqasx in-numru ta 'aġġornamenti, iżda l-intervall massimu bejn żewġ kmandi ta' Aġġorna tal-madwar huwa limitat għal 9 × tREFIXilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-21
  • Uża l-banek kollha - Mekkaniżmu ta' indirizzar xieraq huwa preferibbli.
    • Ringiela-Bank-Kolonna: Għal tranżazzjoni li sseħħ fuq spazju ta 'indirizz sekwenzjali, il-qalba awtomatikament tiftaħ l-istess ringiela fil-bank li jmiss tal-apparat DRAM biex tkompli t-tranżazzjoni meta jintlaħaq it-tmiem ta' ringiela eżistenti. Huwa adattat tajjeb għal applikazzjonijiet li jeħtieġu tfaqqiegħ ta 'pakketti ta' data kbar għal postijiet ta 'indirizz sekwenzjali.
    • Bank-Ringiela-Kolonna: Meta taqsam fruntiera ta 'ringiela, ir-ringiela attwali tingħalaq u tinfetaħ ringiela oħra fl-istess bank. MSB huwa indirizz tal-bank, li jista' jintuża biex jaqleb minn banek differenti. Huwa adattat għal tranżazzjonijiet iqsar u aktar każwali għal blokka waħda ta 'memorja għal perjodu ta' żmien u mbagħad qabża għal blokka oħra (bank)
  • Tul tat-tifqigħ
    • BL 8 huwa appoġġjat għal DDR3 fuq serje 7. BC4 għandu effiċjenza baxxa ħafna li hija inqas minn 50%. Dan għaliex il-ħin ta 'eżekuzzjoni ta' BC4 huwa l-istess bħal BL8. Id-dejta hija biss moħbija ġewwa l-komponent.
    • F'każijiet fejn inti ma tixtieqx tikteb full burst, jew data maskra jew write-after-read jistgħu jiġu kkunsidrati.
  • Issettja intervall ZQ xieraq (DDR3 biss)
    Il-kontrollur jibgħat kemm ZQ Short (ZQCS) kif ukoll ZQ Long (ZQCL) kmandi tal-kalibrazzjoni.
    • Aderixxi mal-Istandard DDR3 Jedec
    • Il-kalibrazzjoni ZQ hija diskussa fit-taqsima 5.5 tal-Istandard JEDEC Spec JESD79-3 DDR3 SDRAM
    • Il-kalibrazzjoni ZQ tikkalibra On Die Termination (ODT) f'intervalli regolari biex tqis il-varjazzjonijiet fil-VT
    • Il-loġika tinsab f'bank_common.v/vhd
    • Il-parametru Tzqcs jiddetermina r-rata li biha kmand ta' Kalibrazzjoni ZQ jintbagħat lill-memorja
    • Huwa possibbli li l-counter jiġi ddiżattivat u manwalment jibgħat bl-użu app_zq_req, huwa Simili għal manwalment jibgħat Aġġorna.
      Irreferi għal (Xilinx Answer 47924) għad-dettalji.Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-22

Overheads tal-Kontrollur

  1. Qari Perjodiċi - Irreferi għal (Tweġiba Xilinx 43344) għad-dettalji.
    • Tbiddilx il-perjodu tal-qari
    • Aqbeż qari perjodiċi waqt il-kitba u ħarġet in-numru ta' qari mitlufa qabel qari veru
  2. Ordnar mill-ġdid – Irreferi (Tweġiba Xilinx 34392) għad-dettalji.
    Għal disinji tal-Utent u tal-Interface AXI huwa preferibbli li din tkun attivata.
    • L-ordni mill-ġdid hija l-loġika li tħares 'il quddiem diversi kmandi u tibdel l-ordni tal-kmand tal-utent biex il-kmandi mhux tal-memorja ma jokkupawx bandwidth validu. Il-prestazzjoni kienet ukoll relatata mal-mudell attwali tat-traffiku.
    • Ibbażat fuq il-mudell tal-indirizz, l-ordni mill-ġdid jgħin biex taqbeż il-precharge u jattiva l-kmandi u jagħmel tRCD u tRP ma jokkupawx wisa 'ta' medda tad-dejta.Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-23
  3. Ipprova żżid in-numru ta 'Magni tal-Bank.
    • Ħafna mill-loġika tal-kontrollur tirrisjedi fil-magni tal-bank u jikkorrispondu għal banek DRAM
    • Magna bankarja partikolari tamministra bank DRAM wieħed fi kwalunkwe ħin partikolari.
    • L-assenjazzjoni tal-magni tal-bank hija dinamika u għalhekk mhux meħtieġ li jkun hemm magna tal-bank għal kull bank fiżiku.
    • Il-magni tal-bank jistgħu jiġu kkonfigurati, iżda huwa kompromess bejn iż-żona u l-prestazzjoni.
    • In-numru permissibbli ta 'magni bankarji jvarja minn 2-8.
    • B'mod awtomatiku, 4 Magni tal-Bank huma kkonfigurati permezz ta 'parametri RTL.
    • Biex tbiddel il-Magni tal-Bank, ikkunsidra l-parametru nBANK_MACHS = 8 li jinsab f'memc_ui_top Example għal 8 Bank Machines – nBANK_MACHS = 8

Issa int konxju tal-fatturi li jinfluwenzaw il-prestazzjoni.
Ikkunsidra applikazzjoni upstream li tagħtik 512-il bytes tad-dejta għal kull pakkett u trid issalvahom f'postijiet differenti tal-memorja. Peress li 512-il bytes tad-dejta huma ugwali għal 64 fqigħ tad-dejta DDR3, erġa' ħaddem l-example disinn bi stimolu file li fih 512-il kitba, 512-il qari u qlib ta' ringiela għal kull 64 kitba jew qari:

  • 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

Fl-aħħar tas-simulazzjoni se tara li l-utilizzazzjoni tal-karozzi tal-linja hija 77 fil-mija. Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-24

Figura 11: Statistika tal-Prestazzjoni għal 512-il kitba u 512-il qari – Qlib tar-ringiela għal 64 kitba jew qari. 

Issa tista' tapplika l-għarfien li tgħallimt fit-taqsima ta' qabel biex ittejjeb l-effiċjenza. Bil a view biex tuża l-banek kollha minflok tbiddel ir-ringiela, immodifika l-mudell tal-indirizz biex tbiddel il-bank kif muri hawn taħt.
Dan huwa ekwivalenti għall-issettjar ta 'ROW_BANK_Column fl-issettjar tal-immappjar tal-indirizz tal-memorja fil-GUI MIG.

  • 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

Fl-aħħar tas-simulazzjoni se tara li s-77 Perċentwali tal-Użu tax-Xarabank ta' qabel issa huwa 87! Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-25

Jekk xorta teħtieġ effiċjenza ogħla, tista 'tmur għal daqsijiet ta' pakketti kbar ta '1024 jew 2048 bytes, jew tikkunsidra aġġornament manwali.

Nota: Xilinx ma jinkoraġġixxix li jinjora l-aġġornament tal-kontrollur peress li m'aħniex ċerti jekk tkunx tista' tissodisfa l-ħin tal-aġġornament awtomatiku Jedec li jaffettwa l-affidabbiltà tad-dejta.
Min-naħa tal-kontrollur tista 'tbiddel nBANk_MACH u tara t-titjib fil-prestazzjoni.
Madankollu, dan jista 'jaffettwa l-ħin tad-disinn tiegħek, jekk jogħġbok irreferi għal (Tweġiba Xilinx 36505) għad-dettalji fuq nBANk_MACHXilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-26

Iftaħ il-core_name_mig_sim.v file u biddel il-parametri nBANK_MACHS minn 4 għal 8 u erġa' ħaddem is-simulazzjoni. Biex il-valur tal-parametru jidħol fis-seħħ fil-hardware, trid taġġorna l-core_name_mig.v file.
Jien użajt l-istess mudell fejn sirna 87% utilizzazzjoni tax-xarabank (figura -12).
B'nBANK_MACHS issettjat għal 8, l-effiċjenza issa hija 90%. Xilinx DDR2 MIG 7 Stima tal-Prestazzjoni-fig-27

Agħmel nota wkoll li l-kontrolluri ½ u ¼ jaffettwaw b'mod negattiv l-effiċjenza minħabba l-latenzi tagħhom.
Per example, peress li nistgħu biss nibagħtu kmandi kull 4 ċikli CK kultant ikun hemm ikkuttunar żejjed meta nżommu ma 'specs minimi ta' ħin tad-DRAM, li jistgħu jnaqqsu l-effiċjenza mill-teoretiku.
Ipprova kontrolluri differenti biex issib dik li taqbel mal-ħtieġa ta 'effiċjenza tiegħek.

Referenzi

  1. Zynq-7000 AP SoC u 7 Series FPGAs MIS v2.3 [UG586]
  2. Xilinx MIG Solution Center http://www.xilinx.com/support/answers/34243.html

Storja tar-Reviżjoni
13/03/2015 – Rilaxx inizjali

Niżżel il-PDF: Xilinx DDR2 MIG 7 Gwida għall-Istima tal-Prestazzjoni

Referenzi

Ħalli kumment

L-indirizz elettroniku tiegħek mhux se jiġi ppubblikat. L-oqsma meħtieġa huma mmarkati *