XILINX 63234 END FPGA ဖြန့်ဖြူးသူ

အရေးကြီးမှတ်ချက်- အဖြေမှတ်တမ်းတစ်ခု၏ ဒေါင်းလုဒ်လုပ်နိုင်သော PDF ကို ၎င်း၏အသုံးပြုနိုင်စွမ်းနှင့် ဖတ်ရှုနိုင်မှုကို မြှင့်တင်ပေးထားသည်။ အဖြေမှတ်တမ်းများဖြစ်ကြောင်း သတိပြုရန် အရေးကြီးပါသည်။ Webသတင်းအချက်အလက်အသစ်များရရှိနိုင်သည်နှင့်အမျှမကြာခဏမွမ်းမံထားသောအခြေခံအကြောင်းအရာ။ Xilinx နည်းပညာပံ့ပိုးကူညီမှုသို့ သွားရောက်ကြည့်ရှုရန် သင့်အား သတိပေးထားသည်။ Website နှင့် review ဤအဖြေ၏နောက်ဆုံးထွက်ဗားရှင်းအတွက် (Xilinx အဖြေ 63234)။
နိဒါန်း
DDR2 နှင့် DDR3 အမှတ်တရများကို တည်ဆောက်ပုံနှင့် MIG 7 စီးရီး ထိန်းချုပ်ကိရိယာကို ဒီဇိုင်းထုတ်ထားသောကြောင့် စွမ်းဆောင်ရည်မှာ ရိုးရှင်းသည်မဟုတ်ပါ။ ၎င်းသည် Jedec Timing parameters များနှင့် controller Architecture အမျိုးမျိုးကို နားလည်ရန် လိုအပ်ပြီး ခန့်မှန်းချက်များကို ရယူရန်အတွက် simulations များကို သင်လုပ်ဆောင်ရန် လိုအပ်ပါသည်။ စွမ်းဆောင်ရည်ကို အဆုံးအဖြတ်ပေးခြင်းအတွက် ယေဘူယျနိယာမသည် အတူတူပင်ဖြစ်သော်လည်း ဤစာတမ်းသည် MIG ex ကို အသုံးပြု၍ ထိရောက်မှုရရှိရန် လွယ်ကူသောနည်းလမ်းကို ပေးပါသည်။ample ဒီဇိုင်းကို စမ်းသပ်ခုံတန်းလျားနှင့် လှုံ့ဆော်မှု၏အကူအညီဖြင့် files ကို ဒီမှာ တွဲထားတယ်။
ထိရောက်သော Bandwidth
DRAM ဒေတာဘတ်စ်သည် အထွတ်အထိပ် ဘန်ဝဒ်အနီးတွင်သာ ဖတ်ရှုပြီး စာရေးခြင်း အထွတ်အထိပ်တွင် ရရှိပြီး ၎င်း၏အပေါ်မှ ထိရောက်သော ဒေတာနှုန်းကို လျှော့ချပေးသည်။

ရည်းစားဟောင်း အနည်းငယ်amples of overhead တွေဖြစ်ပါတယ်။
- တူညီသောဘဏ်တွင် အတန်းများဝင်ရောက်ရန် အချိန်ကြိုတင်ငွေဖြည့်သွင်းချိန် (ဝင်ခွင့်လိပ်စာသည် တူညီသောအတန်း-စာမျက်နှာထိရှိခြင်းမရှိပါ)
- write recovery time ကို write မှ read access သို့ ပြောင်းရန်
- ဘတ်စကားမှ စာရေးခွင့်သို့ ပြောင်းရန် အချိန်ပြောင်းရန် အချိန်
ဒေတာလွှဲပြောင်းသည့် နာရီစက်ဝန်းများ
- စွမ်းဆောင်ရည် (%) = ——————————————-
စုစုပေါင်းနာရီစက်ဝန်း
Effective Bandwidth = Peak Bandwidth * Efficiency
MIG ဒီဇိုင်းမျိုးဆက်
- MIG IP နှင့် ex တွင် အဆင့်ဆင့်အသေးစိတ်အချက်အလက်များအတွက် UG586 အခန်း 1 ကို ကိုးကားပါ။ampဒီဇိုင်းမျိုးဆက်။
- MIG 7 Series စွမ်းဆောင်ရည် စီစဥ်ခြင်းကို မလုပ်ဆောင်မီ၊ သင်၏ simulation ပတ်ဝန်းကျင် ကောင်းမွန်ကြောင်း သေချာစေရန် အောက်ပါတို့ကို လုပ်ဆောင်ပါ။
- MIG ex ကိုဖွင့်ပါ။ampသင့်လျော်သော စာကြည့်တိုက်များကို ဒီဇိုင်းဆွဲပြီး မြေပုံဆွဲကာ သရုပ်ဖော်ပုံကို လုပ်ဆောင်ပြီး စာသားမှတ်တမ်းတွင် “စမ်းသပ်ပြီးသည်” ဟူသော မက်ဆေ့ချ်ကို သင်မြင်ရကြောင်း သေချာပါစေ။
- စီးဆင်းမှုကို သရုပ်ပြရန်၊ ကျွန်ုပ်သည် xc7vx690tffg1761-2 အတွက် MIG IP ကို ထုတ်ပေးပြီး ဟောင်းကို ခေါ်ဆိုခဲ့သည်။ample ဒီဇိုင်း။
- မှတ်သားထားသင့်သည့်အချက်နှစ်ချက်မှာ memory address bits နှင့် memory address mapping selection တို့ဖြစ်သည်။
- ဟောင်းအတွက်ampပေါ့၊ ကျွန်ုပ်သည် MT41J128M8XX-125 ကို memory အပိုင်း drop-down ရွေးစရာများအောက်တွင် ရွေးချယ်ထားပါသည်။

ပုံ-၁၊ အတန်း = ၁၄၊ ကော်လံ = ၁၀ နှင့် ဘဏ် = ၃၊ ထို့ကြောင့် app_addr_width = အတန်း + ကော်လံ + ဘဏ် + အဆင့် = ၂၈၊

BANK_ROW_COLUMN သို့မဟုတ် ROW BANK_COLUMN တစ်ခုခုကို သင်ရွေးချယ်နိုင်ပါသည်။
မူရင်းလိပ်စာပုံဖော်ခြင်းဖြစ်သည့် ROW BANK ကော်လံကို ကျွန်ုပ်ချန်ထားခဲ့သည်။
Exampပေါင်းစပ်နိုင်သော စမ်းသပ်ခုံတန်းလျားများဖြင့် ဒီဇိုင်းဆွဲခြင်း။
- သရုပ်သကန်ဆက်တင်များအောက်တွင်၊ QuestaSim/ModelSim Simulator ကိုရွေးချယ်ပြီး စုစည်းထားသော စာကြည့်တိုက်များတည်နေရာသို့ ဝင်ရောက်ကြည့်ရှုပါ။
- Third-party tools များ တပ်ဆင်သည့်လမ်းကြောင်းကို ညွှန်ပြခြင်း၊ ပစ်မှတ် Simulator ကိုရွေးချယ်ခြင်း၊ စုစည်းခြင်းနှင့် မြေပုံထုတ်ခြင်း စာကြည့်တိုက်များကို သင် (UG900) Vivado Design Suite User Guide Logic Simulation ကို ကိုးကားနိုင်ပါသည်။

GUI ကို အတုယူပါ (ပရောဂျက်မန်နေဂျာရှိ Run Simulation Tab ကို နှိပ်ပါ) နှင့် စာသားမှတ်တမ်းတွင် "စမ်းသပ်ပြီးသွားပြီ" မက်ဆေ့ချ်ကို သင်တွေ့ကြောင်း သေချာပါစေ။
စွမ်းဆောင်ရည်သရုပ်သကန် RTL ပြုပြင်မွမ်းမံမှုများ
- ရင်းမြစ်တဘ်ကို ညာကလစ်နှိပ်ပါ၊ “ထည့်ပါ သို့မဟုတ် ဖန်တီးခြင်း သရုပ်ဖော်ရင်းမြစ်များ” ကိုရွေးချယ်ပါ၊ mig7_perfsim_traffic_generator.sv သို့ ဝင်ရောက်ကြည့်ရှုပါ။ file ၎င်းကိုထည့်ရန် အပြီးသတ်ကိုနှိပ်ပါ။
- ရင်းမြစ်တဘ်ကို ညာကလစ်နှိပ်ပါ၊ “ထည့်ပါ သို့မဟုတ် ဖန်တီးခြင်း သရုပ်ဖော်ရင်းမြစ်များ” ကိုရွေးချယ်ပါ၊ perfsim_stimulus.txt သို့ ဝင်ရောက်ကြည့်ရှုပြီး ၎င်းကို ထည့်သွင်းခြင်း အပြီးသတ်ရန် နှိပ်ပါ။
- ရည်းစားဟောင်းကို မှတ်ချက်ပေးပါ။ampsim_tb_top.v ရှိ le_top instantiation file.
- အောက်ဖော်ပြပါ RTL လိုင်းများကို sim_tb_top၊v သို့ထည့်ပါ။





- သင်၏မှတ်ဉာဏ်အပိုင်းရွေးချယ်မှုအရ APP_ADDR_WIDTH၊ APP_DATA_WIDTH၊ RANK_WIDTH၊ H နှင့် BANK_WIDTH ကို မွမ်းမံပါ။ တန်ဖိုးများကို _mig.v မှ ရယူနိုင်ပါသည်။ file.
- အဝါရောင်မီးမောင်းထိုးပြထားသော instantiation အမည် mig_7series_0_mig သည် IP creation.n ကာလအတွင်း သင်၏ အစိတ်အပိုင်းအမည်ပေါ်မူတည်၍ ကွဲပြားနိုင်သည်၊ အခြားအမည်တစ်ခုကို သင်ရွေးချယ်ပြီး လိုက်လျောညီထွေပြောင်းလဲခြင်းရှိမရှိ စစ်ဆေးပါ။

- IP ကိုထုတ်ပေးပြီးသည်နှင့် _mig.v ကိုဖွင့်ပါ။ file နှင့် LHS အချက်ပြအမည်များတွင် ကွဲလွဲမှုများကို ဖြတ်ကျော်စစ်ဆေးပြီး ၎င်းတို့ကို ပြုပြင်ပါ။
- app_sr_req၊ app_ref_req နှင့် app_zq_req ကို 0 သို့ အစပျိုးသင့်သည်။
- ဟောင်းအဖြစ်ample_top.v သည် မှတ်ချက်ပေးထားပြီး အသစ်ဖြစ်သည်။ files ကို ပေါင်းထည့်လိုက်တာနဲ့ "?" mig_7series_0_mig.v အနား file simulation အရင်းအမြစ်များအောက်တွင်။
- မြေပုံမှန်ရန် filemig_7series_0_mig.v ကို right-click နှိပ်ပြီး “Add Sources” ကို ရွေးပါ၊ /mig_7series_0_example.srcs/sources_1/ip/mig_7series_0/mig_7series_0/user_design/rtl နှင့် mig_7series_0_mig_sim.v ကိုထည့်ပါ။ file.
- "မြင်ရင်?" အရင်းခံအတွက် files RTL အားလုံးကို ထည့်ပါ။ files ကို clocking၊ controller၊ ip_top၊phy နှင့် UI ဖိုင်တွဲများတွင်

- RTL အပြောင်းအလဲများ ပြီးသည်နှင့် လိုအပ်သည်များ အားလုံးကို လုပ်ဆောင်ပါ။ files ကို သင်၏ Simulation Sources တွင် ပေါင်းထည့်လိုက်သည်၊၊ Hierarchy သည် ပုံ 5 နှင့် ဆင်တူသည်။
- ဟိ fileအနီရောင်ဖြင့် မီးမောင်းထိုးပြထားသော အသစ်များကို ထည့်သွင်းထားပြီး "?" ရွေးချယ်ထားသော မမ်မိုရီဖွဲ့စည်းပုံဖွဲ့စည်းပုံတွင် ECC ရွေးချယ်မှုကို ပိတ်ထားသောကြောင့် ECC ဆိုင်ရာ မော်ဂျူးများတွင် မျှော်လင့်ထားသည်။
နှိုးဆော်သည်။ File ဖော်ပြချက်
လှုံ့ဆော်မှုပုံစံတစ်ခုစီသည် 48 ဘစ်ဖြစ်ပြီး ဖော်မတ်ကို ပုံ 6-1 မှ 6-4 တွင်ဖော်ပြထားသည်။

လိပ်စာ ကုဒ်နံပါတ် (လိပ်စာ [35:0])
လိပ်စာအား ပုံ 7-1 မှ ပုံ 7-6 တွင် လှုံ့ဆော်မှုတွင် ကုဒ်လုပ်ထားသည်။ လိပ်စာအကွက်အားလုံးကို ဆဋ္ဌမကိန်းဂဏန်းဖော်မတ်ဖြင့် ထည့်သွင်းရန် လိုအပ်သည်။
လိပ်စာအကွက်အားလုံးသည် ဆဋ္ဌမကိန်းဂဏန်းဖော်မတ်ဖြင့် ရိုက်ထည့်ရန် လေးခုဖြင့် ခွဲနိုင်သော အကျယ်ဖြစ်သည်။ စမ်းသပ်ခုံတန်းသည် လိုအပ်သော လိပ်စာအကွက်တစ်ကွက်ကို Memory Controller သို့သာ ပေးပို့သည်။ ဟောင်းအတွက်ample၊ ဘဏ်ရှစ်ခုဖွဲ့စည်းပုံတစ်ခုတွင်၊ ဘဏ်ဘစ်များ [2:0] ကိုသာ Memory Controller သို့ပို့ပြီး ကျန်ဘစ်များကို လျစ်လျူရှုထားသည်။ လိပ်စာအကွက်တစ်ခုအတွက် အပိုဘစ်များကို ဆဋ္ဌမဂဏန်းဖော်မတ်ဖြင့် လိပ်စာထည့်ရန် သင့်အား ပေးထားသည်။ သူထည့်သွင်းထားသောတန်ဖိုးသည် ပေးထားသောဖွဲ့စည်းပုံ၏အကျယ်နှင့် ကိုက်ညီကြောင်း အတည်ပြုရပါမည်။

- ကော်လံလိပ်စာ (ကော်လံ[11:0]) – လှုံ့ဆော်မှုရှိ ကော်လံလိပ်စာကို အများဆုံး 12 ဘစ်အထိ ပံ့ပိုးပေးသည်၊ သို့သော် သင့်ဒီဇိုင်းတွင် သတ်မှတ်ထားသည့် ကော်လံအကျယ် ကန့်သတ်ဘောင်အပေါ် အခြေခံ၍ ၎င်းကို ဖြေရှင်းရန် လိုအပ်သည်။
- အတန်းလိပ်စာ (Row[15:0]) – လှုံ့ဆော်မှုတွင် အတန်းလိပ်စာကို အများဆုံး 16 ဘစ်အထိ ပံ့ပိုးပေးသော်လည်း သင်သည် လိပ်စာပေးရန် လိုအပ်ပါသည်။
- ၎င်းသည် သင့်ဒီဇိုင်းတွင် သတ်မှတ်ထားသော အတန်းအကျယ် ဘောင်ပေါ်တွင် အခြေခံထားသည်။
- ဘဏ်လိပ်စာ (Bank[3:0]) – လှုံ့ဆော်မှုတွင် ပါရှိသည့် ဘဏ်လိပ်စာကို အများဆုံး လေးဘစ်အထိ ပံ့ပိုးပေးထားပြီး၊ သို့သော် သင့်ဒီဇိုင်းတွင် သတ်မှတ်ထားသည့် ဘဏ် width ကန့်သတ်ချက်အပေါ် အခြေခံ၍ ၎င်းကို ဖြေရှင်းရန် လိုအပ်သည်။
- အဆင့်လိပ်စာ (Rank[3:0]) – လှုံ့ဆော်မှုတွင် အဆင့်လိပ်စာကို အများဆုံး လေးဘစ်အထိ ပံ့ပိုးပေးသည်၊ သို့သော် သင့်ဒီဇိုင်းတွင် သတ်မှတ်ထားသည့် အဆင့်အကျယ် ကန့်သတ်ချက်အပေါ် အခြေခံ၍ ၎င်းကို ဖြေရှင်းရန် လိုအပ်သည်။
- လိပ်စာသည် ထိပ်တန်းအဆင့် MEM_ADDR_ORDER ကန့်သတ်ချက်အပေါ် အခြေခံ၍ စုစည်းပြီး သုံးစွဲသူမျက်နှာပြင်သို့ ပေးပို့သည်။
Command Repeat (Command Repeat [7:0])
- command repetition count သည် User Interface တွင် သက်ဆိုင်ရာ command ကို ထပ်ခါတလဲလဲ ပြုလုပ်သည့် အကြိမ်အရေအတွက် ဖြစ်သည်။ ထပ်ခါတလဲလဲတစ်ခုစီအတွက် လိပ်စာကို 8 ဖြင့် တိုးထားသည်။ အများဆုံးအကြိမ်ရေသည် 128 ဖြစ်သည်။
- စမ်းသပ်ခုံတန်းလျားသည် ကော်လံနယ်နိမိတ်ကို မစစ်ဆေးဘဲ တိုးမြင့်လာစဉ်အတွင်း အများဆုံးကော်လံကန့်သတ်ချက်သို့ ရောက်ရှိသွားပါက ၎င်းသည် ဝိုင်းရံထားသည်။
- 128 Commands သည် စာမျက်နှာကို ဖြည့်ပေးသည်။ 0 မှလွဲ၍ မည်သည့်ကော်လံလိပ်စာအတွက်မဆို ထပ်ခါတလဲလဲ အရေအတွက် 128 သည် ဖြတ်ကျော်ခြင်းတွင် အဆုံးသတ်ပါသည်။
- ကော်လံနယ်နိမိတ်သည် ကော်လံလိပ်စာ၏အစတွင် ပတ်ပတ်လည် ပတ်ထားသည်။
ဘတ်စ်ကားအသုံးပြုမှု
ဘတ်စ်ကားအသုံးပြုမှုကို User Interface တွင် တွက်ချက်ပြီး Reads and writes စုစုပေါင်းအရေအတွက်ကို ထည့်သွင်းစဉ်းစားကာ အောက်ပါညီမျှခြင်းကို အသုံးပြုသည်-

- BL8 သည် Memory Clock လေးပတ်ကြာသည်။
- End_of_stimulus သည် အမိန့်များအားလုံးကို ပြီးမြောက်သည့်အချိန်ဖြစ်သည်။
- calib_done သည် ချိန်ညှိခြင်း ပြီးသော အချိန်ဖြစ်သည်။
Example Patterns များ
ဒါတွေက examples များသည် BANK_ROW_COLUMN ဟု သတ်မှတ်ထားသော MEM_ADDR_ORDER ပေါ်တွင် အခြေခံထားသည်။
Single Read Pattern
00_0_2_000F_00A_1 – ဤပုံစံသည် 10 ကော်လံ၊ 15th အတန်းနှင့် ဒုတိယဘဏ်တို့မှ ဖတ်သည့်တစ်ခုတည်းဖြစ်သည်။

Single Write Pattern
00_0_1_0040_010_0 – ဤပုံစံသည် 32 ကော်လံ၊ 128 အတန်းနှင့် ပထမဘဏ်သို့ တစ်ခုတည်းသော စာရေးခြင်းဖြစ်ပါသည်။

လိပ်စာတစ်ခုတည်း ရေးပြီး လိပ်စာတစ်ခုတည်းသို့ ဖတ်ရှုပါ။
- 00_0_2_000F_00A_0 – ဤပုံစံသည် 10 ကော်လံ၊ 15th အတန်းနှင့် ဒုတိယဘဏ်သို့ ရေးရန်တစ်ခုတည်းဖြစ်သည်။
- 00_0_2_000F_00A_1 – ဤပုံစံသည် 10 ကော်လံ၊ 15th အတန်းနှင့် ဒုတိယဘဏ်တို့မှ ဖတ်သည့်တစ်ခုတည်းဖြစ်သည်

လိပ်စာတစ်ခုတည်းဖြင့် ရေးသားခြင်းနှင့် ဖတ်ခြင်းများစွာ
- 0A_0_0_0010_000_0 – ၎င်းသည် ကော်လံတွင်တွေ့နိုင်သည့် 10 မှ 0 မှစတင်သော လိပ်စာများဖြင့် ရေးထားသော 80 နှင့် ကိုက်ညီသည်။

- 0A_0_0_0010_000_1 – ၎င်းသည် 10 မှ 0 မှ စတင်သည့် လိပ်စာဖြင့် 8,0 စောင်ကို ကော်လံတွင်တွေ့မြင်နိုင်သည် ။

ရေးနေစဉ်အတွင်း စာမျက်နှာကို ချုပ်ပါ။
0A_0_2_000F_3F8_0 – ၎င်းသည် တစ်ကြိမ်ရေးပြီးနောက် စာမျက်နှာ၏အစတွင် ပတ်ထားသော ကော်လံလိပ်စာဖြင့် ရေးထားသော စာ ၁၀ ခုနှင့် သက်ဆိုင်သည်။

စွမ်းဆောင်ရည် Traffic Generator ကို အတုယူခြင်း။
ဒီအချိန်မှာ MIG ex နဲ့ ပြီးသွားပါပြီ။ampဒီဇိုင်းခြင်း simulation။ ယင်းက သင်၏ simulation စနစ်ထည့်သွင်းမှု အဆင်သင့်ဖြစ်ပြီဟု ဆိုလိုသည်၊ သင်သည် စွမ်းဆောင်ရည်တူခြင်း RTL ပြုပြင်မွမ်းမံမှုများ ပြုလုပ်ပြီးပြီ၊ အသစ်သော simulation အထက်အောက် မှန်ကန်ပြီး လှုံ့ဆော်မှုပုံစံများကို သင်နားလည်ပြီဖြစ်သည်။ perfsim_stimulus.txt တွင် 16 ကြိမ်ရေးသားပြီး ဖတ်ခြင်းဖြင့် သရုပ်ပြမှုကို ထပ်မံလုပ်ဆောင်ပါ။

- အားလုံးကို run ပါ၊ init_calib_complete အချက်ပြမှုအား အတည်ပြုသည်အထိ စောင့်ပါ၊ နှင့် အဆိုပြုထားသော ရေးခြင်းနှင့်ဖတ်ခြင်းအရေအတွက်ကို သင်မြင်နိုင်မည်ဖြစ်သည်။ ထို့နောက် သရုပ်ဖော်မှု ရပ်တန့်သွားပါမည်။

- သရုပ်ဖော်ခြင်းမှထွက်ရန် သင့်အားသတိပေးခံရသောအခါ၊ No ကိုရွေးချယ်ပြီး စွမ်းဆောင်ရည်စာရင်းဇယားများကို သင်မြင်နိုင်မည်ဖြစ်သော စာသားမှတ်တမ်းဝင်းဒိုးသို့သွားပါ။

- အကယ်၍ သင်သည် “quit simulation” ကို ရွေးချယ်ပါက၊ စွမ်းဆောင်ရည် ကိန်းဂဏန်းများကို a သို့ ရေးပေးလိမ့်မည်။ file sim_1/behave ဖိုင်တွဲတွင်ရှိသော mig_band_width_output.txt ဟု အမည်ပေးထားသည်။
- Example လမ်းညွှန်လမ်းကြောင်း:- /mig_7series_0_example_perf_sim\mig_7series_0_example.sim/sim_1/behav

ရာခိုင်နှုန်းက ဘာကြောင့်ဖြစ်လဲလို့ သိချင်နေလိမ့်မယ်။tagဘတ်စ်ကားအသုံးပြုမှု၏ e သည် 29 သာရှိသည်။ တူညီသော IP ဆက်တင်များဖြင့် သရုပ်ဖော်မှုကို ပြန်လည်လုပ်ဆောင်သော်လည်း လှုံ့ဆော်မှုကို ပြောင်းလဲလိုက်ရုံသာဖြစ်သည်။ file 256 မှ 256 ရေးသည်။
- ff_0_0_0000_000_0
- ff_0_0_0000_000_1
အခု ရာခိုင်နှုန်းကို သင်တွေ့လိမ့်မယ်။tage 85 အဖြစ်၊ DDR3 သည် စာရေးခြင်းနှင့် ဆက်တိုက်ဖတ်ခြင်း၏ ရှည်လျားသော အတွဲလိုက်အတွက် ပိုမိုကောင်းမွန်သော ဘတ်စ်ကားအသုံးပြုမှုကို ပံ့ပိုးပေးသည်ဟု ဆိုလိုသည်။

စွမ်းဆောင်ရည်မြှင့်တင်ရန် အထွေထွေနည်းလမ်းများ
ထိရောက်မှုကို လွှမ်းမိုးနိုင်သော အကြောင်းအရင်းများကို အပိုင်းနှစ်ပိုင်း ခွဲခြားနိုင်သည်။
- Memory Specific

- Controller Specific
ပုံ 9 မှာ ရေးပေးထားပါတယ်view Memory-Specific ဝေါဟာရများ။
SRAMs နှင့် Block Memories တို့နှင့်မတူဘဲ၊ DDR2 သို့မဟုတ် DDR3 စွမ်းဆောင်ရည်သည် အမြင့်ဆုံးဒေတာနှုန်းထားမျှသာမဟုတ်ပါ။
၎င်းသည် အချိန်ကိုက်အချက်များစွာပေါ်တွင် မူတည်သည်:
- tRCD- Row Command Delay (သို့မဟုတ် cas delay ဆီသို့ ras)။
- tCAS(CL)- ကော်လံလိပ်စာ strobe latency။
- tRP- အတန်းကြိုတင်အားသွင်းချိန် နှောင့်နှေးခြင်း။
- tRAS- အတန်းဖွင့်ချိန် (ကြိုတင်ပြင်ဆင်ရန် စဖွင့်သည်)။
- tRC- အတန်းစက်ဝန်းအချိန်။ tRC = tRAS + tRP
- tRAC- ကျပန်းဝင်ရောက်မှုနှောင့်နှေးခြင်း။ tRAC = tRCD + tCAS
- tCWLCASas သည် latency ရေးသည်။
- tZQ- ZQ ချိန်ညှိချိန်။
- tRFC- အတန်းအား ပြန်လည်စတင်ရန် စက်ဝန်းအချိန်
- tWTR- နှောင့်နှေးဖတ်ရန် စာရေးပါ။ Read command time ကို နောက်ဆုံးရေးရန်
- tWR- Recovery time ကိုရေးပါ။ Precharge time တွင် ငွေလွှဲခြင်းကို နောက်ဆုံးရေးပါ။
- စာရင်းသွင်းထားသော ကန့်သတ်ဘောင်များအားလုံး၏ အချိန်သည် အသုံးပြုသည့် မမ်မိုရီအမျိုးအစားနှင့် မန်မိုရီအပိုင်း၏ အမြန်နှုန်းအဆင့်ပေါ်မူတည်သည်။
- အဓိပ္ပါယ်ဖွင့်ဆိုချက်များနှင့် အချိန်သတ်မှတ်ချက်များဆိုင်ရာ အသေးစိတ်အချက်အလက်များကို DDR2 နှင့် DDR3 JEDEC စံနှုန်းများ သို့မဟုတ် မည်သည့်မှတ်ဉာဏ်ကိရိယာဒေတာစာရွက်တွင်မဆို တွေ့ရှိနိုင်ပါသည်။
ထိရောက်မှုသည် အဓိကအားဖြင့် မှတ်ဉာဏ်ကို မည်သို့ဝင်ရောက်သည်အပေါ် မူတည်ပါသည်။ မတူညီသော လိပ်စာပုံစံများသည် မတူညီသော ထိရောက်မှုရလဒ်များကို ပေးသည်။
Memory Timing ပေါ်ကနေပေါ့။
- ဘဏ်/အတန်းအသစ်သို့ပြောင်းသည့်အခါ သို့မဟုတ် ဘဏ်တစ်ခုတည်းအတွင်း အတန်းများပြောင်းသည့်အခါတွင် စတင်အသုံးပြုချိန်နှင့် ကြိုတင်အားသွင်းချိန်။- ထို့ကြောင့် tRCD နှင့် tRP ကိုဖယ်ရှားနိုင်သည့် အတန်းအပြောင်းအလဲကို သင်လျှော့ချပါ။
- စဉ်ဆက်မပြတ်ရေးရန် သို့မဟုတ် ဖတ်ရန် အမိန့်များပေးပို့ခြင်း - tCCD အချိန်ကို ထိန်းသိမ်းခြင်း။
- ရေးရန်-ဖတ်ရန် နှင့် ဖတ်ရန်-ရေးရန် အမိန့်ပေးချက်ကို လျှော့ချပါ- ဖတ်ရှုခွင့်များကို ပြောင်းလဲရန် ပြန်လည်ရယူချိန်ကို ရေးပါ၊ နှင့် ဖတ်ရန်မှ ရေးရန် ပြောင်းရန် ဘတ်စ်ကားအလှည့်အပြောင်းအချိန်။
- သင့်လျော်သော ပြန်လည်စတင်သည့်ကာလကို သတ်မှတ်ပါ။
- a DDR3 SDRAM သည် tREFI ၏ ပျမ်းမျှအချိန်ပိုင်းကာလတစ်ခုတွင် ပြန်လည်စတင်ရန် လည်ပတ်မှုများ လိုအပ်သည်။
- ခ အများဆုံး နောက်ထပ် Refresh command 8 ခုကို ကြိုတင်ထုတ်ထားနိုင်သည် (“ဆွဲသွင်း”)။ ၎င်းသည် ပြန်လည်စတင်ခြင်းအရေအတွက်ကို လျှော့ချမည်မဟုတ်သော်လည်း ပတ်ဝန်းကျင်ရှိ Refresh ညွှန်ကြားချက်နှစ်ခုကြား အမြင့်ဆုံးကြားကာလကို 9 × tREFI တွင် ကန့်သတ်ထားသည်။

- ဘဏ်အားလုံးကို အသုံးချပါ - သင့်လျော်သော လိပ်စာပေးသည့် ယန္တရားသည် ပိုကောင်းပါတယ်။
- a Row-Bank-Column- ဆက်တိုက်လိပ်စာနေရာတစ်ခုအပေါ်တွင် ဖြစ်ပေါ်နေသည့် ငွေပေးငွေယူတစ်ခုအတွက်၊ ရှိပြီးသားအတန်းတစ်ခု၏အဆုံးသို့ရောက်ရှိသောအခါ ငွေပေးငွေယူကိုဆက်လက်ဆောင်ရွက်ရန် DRAM စက်၏နောက်ဘဏ်တွင် တူညီသောအတန်းကို core မှ အလိုအလျောက်ဖွင့်ပေးပါသည်။ ၎င်းသည် နံပါတ်စဉ်လိပ်စာတည်နေရာများသို့ ကြီးမားသောဒေတာပက်ကေ့ချ်များကို ခွဲထုတ်ရန် လိုအပ်သော application များနှင့် သင့်လျော်ပါသည်။
- ခ ဘဏ်-အတန်း-ကော်လံ- အတန်းနယ်နိမိတ်ကို ဖြတ်ကျော်သည့်အခါ လက်ရှိအတန်းကို ပိတ်မည်ဖြစ်ပြီး တူညီသောဘဏ်အတွင်း အခြားအတန်းကို ဖွင့်ပါမည်။ MSB သည် မတူညီသောဘဏ်များမှပြောင်းရန် အသုံးပြုနိုင်သော ဘဏ်လိပ်စာတစ်ခုဖြစ်သည်။ အချိန်အတိုင်းအတာတစ်ခုအထိ မှတ်ဉာဏ်ဘလောက်တစ်ခုသို့ တိုတောင်းကာ ကျပန်းငွေပေးငွေယူများအတွက် သင့်လျော်ပြီး အခြားဘလောက် (ဘဏ်) သို့ ခုန်တက်ခြင်း
- Burst Length
- a BL 8 ကို 3 စီးရီးတွင် DDR7 အတွက် ပံ့ပိုးထားသည်။ BC4 သည် အလွန်နိမ့်ကျသော ထိရောက်မှုရှိပြီး 50% အောက်သာရှိသည်။ BC4 ၏ လုပ်ဆောင်ချိန်သည် BL8 နှင့် တူညီသောကြောင့်ဖြစ်သည်။ ဒေတာသည် အစိတ်အပိုင်းအတွင်း၌သာ ဖုံးအုပ်ထားသည်။
- ခ အပြည့်အစုံမရေးချင်သည့်ကိစ္စများတွင်၊ data mask သို့မဟုတ် write-after-read လုပ်ရန် စဉ်းစားနိုင်သည်။
- သင့်လျော်သော ZQ ကြားကာလကို သတ်မှတ်ပါ (DDR3 သာ)
ထိန်းချုပ်သူသည် ZQ Short (ZQCS) နှင့် ZQ Long (ZQCL) Calibration command နှစ်ခုလုံးကို ပေးပို့သည်။- a DDR3 JEDEC စံနှုန်းကို လိုက်နာပါ။
- ခ ZQ Calibration ကို JEDEC Spec JESD5.5-79 DDR3 SDRAM Standard ၏ အပိုင်း 3 တွင် ဆွေးနွေးထားသည်။
- ဂ။ ZQ Calibration သည် VT တစ်လျှောက် ကွဲပြားမှုများကို တွက်ချက်ရန်အတွက် On-Die Termination (ODT) ကို ပုံမှန်အချိန်ပိုင်းများတွင် ချိန်ညှိပေးသည်
- ဃ။ လော့ဂျစ်ကို bank_common.v/vhd တွင်ပါရှိသည်။
- င Parameter Tzqcs သည် ZQ Calibration command ကို memory သို့ပေးပို့သည့်နှုန်းကို ဆုံးဖြတ်သည်။
- f ကောင်တာပိတ်ပြီး app_zq_req ကိုအသုံးပြု၍ ကိုယ်တိုင်ပေးပို့နိုင်သည်၊ ၎င်းသည် Refresh ကို ကိုယ်တိုင်ပေးပို့ခြင်းနှင့် ဆင်တူသည်။ အသေးစိတ်အတွက် (Xilinx Answer 47924) ကို ကိုးကားပါ။

Controller Overheads
- Periodic Reads – အသေးစိတ်အတွက် (Xilinx Answer 43344) ကို ကိုးကားပါ။
- a စာဖတ်ချိန်ကို မပြောင်းပါနဲ့။
- ခ ရေးနေစဉ်အတွင်း အချိန်အပိုင်းအခြားအလိုက်ဖတ်ခြင်းကို ကျော်ပြီး အမှန်မဖတ်မီ လွတ်သွားသောဖတ်အရေအတွက်ကို ထုတ်ပြန်ပါ။
- ပြန်လည်မှာယူခြင်း – အသေးစိတ်အတွက် (Xilinx Answer 34392) ကို ကိုးကားပါ။ အသုံးပြုသူနှင့် AXI Interface ဒီဇိုင်းများအတွက်၊ ၎င်းကို ဖွင့်ထားရန် ပိုကောင်းသည်။
- a Reorder သည် မှန်ကန်သော bandwidth ကို မသိမ်းပိုက်နိုင်စေရန် အသုံးပြုသူ၏ အမိန့်ပေးမှုကို ပြောင်းလဲပြီး မန်မိုရီမဟုတ်သော command များကို မှန်ကန်သော bandwidth ကို မသိမ်းပိုက်နိုင်စေရန်အတွက် Reorder အများအပြားကို ရှေ့သို့ကြည့်ရှုသည့် ယုတ္တိဗေဒဖြစ်သည်။ စွမ်းဆောင်ရည်သည် အမှန်တကယ် လမ်းကြောင်းပုံစံနှင့်လည်း သက်ဆိုင်ပါသည်။
- ခ လိပ်စာပုံစံကို အခြေခံ၍ ပြန်လည်မှာယူခြင်းသည် ကြိုတင်ငွေဖြည့်သွင်းခြင်းကို ကျော်ပြီး အမိန့်များကို အသက်သွင်းရန် ကူညီပေးပြီး tRCD နှင့် tRP တို့သည် ဒေတာ bandwidth ကို သိမ်းပိုက်နိုင်စေပါသည်။

- Bank Machines အရေအတွက်ကို တိုးမြှင့်ဖို့ ကြိုးစားပါ။
- a Controller ၏ logic အများစုသည် ဘဏ်စက်များတွင် တည်ရှိပြီး ၎င်းတို့သည် DRAM ဘဏ်များနှင့် သက်ဆိုင်ပါသည်။
- ခ ပေးထားသောဘဏ်စက်သည် သတ်မှတ်ထားသောအချိန်တွင်မဆို DRAM ဘဏ်တစ်ခုတည်းကို စီမံခန့်ခွဲသည်။
- ဂ။ ဘဏ်စက် assignment သည် dynamic ဖြစ်သည့်အတွက် ဘဏ်တစ်ခုစီအတွက် ဘဏ်စက်ရှိရန် မလိုအပ်ပါ။
- ဃ။ ဘဏ်စက်များကို configure ပြုလုပ်နိုင်သော်လည်း ၎င်းသည် ဧရိယာနှင့် စွမ်းဆောင်ရည်ကြားတွင် အပေးအယူတစ်ခုဖြစ်သည်။
- င ခွင့်ပြုသောဘဏ်စက်အရေအတွက်သည် ၂ မှ ၈ အထိရှိသည်။
- f ပုံမှန်အားဖြင့်၊ ဘဏ်စက် 4 ခုကို RTL ကန့်သတ်ချက်များမှတစ်ဆင့် ပြင်ဆင်သတ်မှတ်ထားသည်။
- ဆ ဘဏ်စက်များကိုပြောင်းရန် memc_ui_top တွင်ပါရှိသော nBANK_MACHS = 8 ဘောင်ကို စဉ်းစားပါ။
Exampဘဏ်စက် ၈ ခုအတွက် le – nBANK_MACHS = ၈
စွမ်းဆောင်ရည်ကို လွှမ်းမိုးသည့်အချက်များကို ယခု သင်သဘောပေါက်ပါပြီ။ ပက်ကတ်တစ်ခုလျှင် 512 ဒေတာဘိုက်များပေးသည့် အထက်စီးအက်ပလီကေးရှင်းကို သုံးသပ်ကြည့်ပါက ၎င်းတို့ကို မတူညီသော မမ်မိုရီတည်နေရာများတွင် သိမ်းဆည်းရန် လိုအပ်သည်။ 512 data bytes သည် 64 DDR3 data bursts နှင့် ညီသောကြောင့်၊ ex ကို ပြန် runampနှိုးဆွမှုနှင့်အတူဒီဇိုင်း file 512 ရေးသားခြင်း သို့မဟုတ် ဖတ်တိုင်းအတွက် 512 ကြိမ်၊ 64 ကြိမ်နှင့် အတန်းပြောင်းခြင်း ပါ၀င်သည်-

သရုပ်ပြမှုအဆုံးတွင် ဘတ်စ်ကားအသုံးပြုမှုသည် 77 ရာခိုင်နှုန်းဖြစ်ကြောင်း သင်တွေ့ရပါမည်။

ပုံ 11- 512 ရေးပြီး 512 reads အတွက် Performance Statistics - 64 writes or reads အတွက် အတန်းပြောင်းခြင်း။
ထိရောက်မှု မြှင့်တင်ရန် အစောပိုင်းက သင်ယူခဲ့သော အသိပညာကို ယခုသင် အသုံးချနိုင်ပြီဖြစ်သည်။ အတန်းကိုပြောင်းမည့်အစား ဘဏ်အားလုံးကို အသုံးပြုရန်၊ အောက်တွင်ဖော်ပြထားသည့်အတိုင်း ဘဏ်ကိုပြောင်းရန် လိပ်စာပုံစံကို မွမ်းမံပြင်ဆင်ပါ။ ၎င်းသည် MIG GUI ရှိ မမ်မိုရီလိပ်စာမြေပုံဆွဲခြင်းဆက်တင်တွင် ROW_BANK_ကော်လံကို သတ်မှတ်ခြင်းနှင့် ညီမျှသည်။

သရုပ်ဖော်မှု၏အဆုံးတွင်၊ အစောပိုင်း 77 ရာခိုင်နှုန်းဘတ်စ်ကားအသုံးပြုမှုသည် ယခုအခါ 87 ဖြစ်သည်ကို သင်တွေ့ရပါမည်။

ပိုမိုထိရောက်မှု လိုအပ်သေးပါက၊ သင်သည် 1024 သို့မဟုတ် 2048 bytes အကြီးစား packet များကို ရှာဖွေနိုင်သည်၊ သို့မဟုတ် manual refresh လုပ်ရန် စဉ်းစားနိုင်သည်။
မှတ်ချက် - Xilinx သည် ဒေတာယုံကြည်စိတ်ချရမှုကို ထိခိုက်စေသည့် JEDEC အလိုအလျောက် ပြန်လည်စတင်သည့်အချိန်ကို ဖြည့်ဆည်းပေးနိုင်ခြင်းရှိမရှိ မသေချာသည့်အတွက်ကြောင့် ကွန်ထရိုးကို ကျော်ဖြတ်ကာ ပြန်လည်ဆန်းသစ်ခြင်းကို အားပေးမည်မဟုတ်ပါ။ စွမ်းဆောင်ရည် တိုးတက်မှုကို ကြည့်ရှုရန် ထိန်းချုပ်ကိရိယာ၏ NBANNBANk_MACH ကို သင် ပြောင်းလဲနိုင်သည်။ သို့သော်၊ ၎င်းသည် သင်၏ဒီဇိုင်းအချိန်ကို အကျိုးသက်ရောက်နိုင်သည်၊ nBANk_MACH တွင်အသေးစိတ်အချက်အလက်များအတွက် (Xilinx Answer 36505) ကို ကိုးကားပါ။

core_name_mig_sim.v ကိုဖွင့်ပါ။ file ကန့်သတ်ဘောင်များကို nBANK_MACHS မှ 4 မှ 8 သို့ပြောင်းပြီး simulation ကို ပြန်လည်လုပ်ဆောင်ပါ။
ဟာ့ဒ်ဝဲတွင် ပါရာမီတာတန်ဖိုးသက်ရောက်မှုရှိစေရန်၊ သင်သည် core_name_mig.v ကို အပ်ဒိတ်လုပ်ရန် လိုအပ်သည်။ file. ဘတ်စ်ကားအသုံးပြုမှု 87% (ပုံ 2) ရရှိသည့် တူညီသောပုံစံကို ကျွန်ုပ်အသုံးပြုခဲ့သည်။ nBANK_MACHS ကို 8 အဖြစ်သတ်မှတ်ထားသဖြင့်၊ ထိရောက်မှုမှာ ယခုအခါ 90% ဖြစ်သည်။

ထို့အပြင် ½ နှင့် ¼ ထိန်းချုပ်ကိရိယာများသည် ၎င်းတို့၏ latency ကြောင့် ထိရောက်မှုကို ထိခိုက်စေကြောင်း သတိပြုပါ။ ဟောင်းအတွက်ample၊ ကျွန်ုပ်တို့သည် 4 CK လည်ပတ်မှုတိုင်းတွင် command များကိုသာ ပေးပို့နိုင်သောကြောင့်၊ သီအိုရီအရ ထိရောက်မှုကို လျော့နည်းသွားစေနိုင်သည့် အနည်းဆုံး DRAM အချိန်ချိန်ကိုက်သတ်မှတ်ချက်များကို လိုက်နာသည့်အခါ တစ်ခါတစ်ရံတွင် အပိုအကွက်များရှိသည်။ သင်၏ ထိရောက်မှု လိုအပ်ချက်နှင့် ကိုက်ညီသော တစ်ခုကို ရှာဖွေရန် မတူညီသော ထိန်းချုပ်ကိရိယာများကို စမ်းကြည့်ပါ။ ကိုးကား
- Zynq-7000 AP SoC နှင့် 7 စီးရီး FPGAs MIS v2.3 [UG586]
- Xilinx MIG ဖြေရှင်းချက်စင်တာ http://www.xilinx.com/support/answers/34243.html
ပြန်လည်ပြင်ဆင်မှုမှတ်တမ်း
13 - ကနဦးထွက်ရှိ..
စာရွက်စာတမ်းများ / အရင်းအမြစ်များ
![]() |
XILINX 63234 END FPGA ဖြန့်ဖြူးသူ [pdf] အသုံးပြုသူလမ်းညွှန် 63234 END FPGA ဖြန့်ဖြူးသူ၊ 63234၊ END FPGA ဖြန့်ဖြူးသူ၊ FPGA ဖြန့်ဖြူးသူ |

