XILINX 63234 END FPGA ورهائيندڙ
اهم نوٽ: جوابي رڪارڊ جي هي ڊائون لوڊ ڪرڻ جي قابل PDF مهيا ڪئي وئي آهي ان جي استعمال ۽ پڙهڻ جي قابليت کي وڌائڻ لاءِ. اهو نوٽ ڪرڻ ضروري آهي ته جواب رڪارڊ آهن Web-بنياد تي مواد جيڪو بار بار اپڊيٽ ڪيو ويندو آهي جيئن نئين معلومات دستياب ٿيندي آهي. توهان کي Xilinx ٽيڪنيڪل سپورٽ جو دورو ڪرڻ جي ياد ڏياري ويندي آهي. Webسائيٽ ۽ ٻيهرview (Xilinx Answer 63234) هن جواب جي تازي ورزن لاءِ.
تعارف
ڇاڪاڻ ته DDR2 ۽ DDR3 ياداشتن کي آرڪيٽيڪٽ ڪرڻ جو طريقو ۽ MIG 7 سيريز ڪنٽرولر کي ڊزائين ڪيو ويو آهي، ڪارڪردگي سڌي ناهي. ان کي مختلف Jedec ٽائمنگ پيرا ميٽرز ۽ ڪنٽرولر آرڪيٽيڪچر جي سمجھ جي ضرورت آهي، ۽ توهان کي تخمينو حاصل ڪرڻ لاءِ سموليشن هلائڻ جي ضرورت پوندي. ڪارڪردگي کي طئي ڪرڻ لاءِ عام اصول ساڳيو آهي، پر هي دستاويز MIG ex استعمال ڪندي ڪارڪردگي حاصل ڪرڻ جو هڪ آسان طريقو فراهم ڪري ٿو.ampٽيسٽ بينچ ۽ محرڪ جي مدد سان ڊيزائن ڪريو fileهتي ڳنڍيل آهي.
مؤثر بينڊوڊٿ
DRAM ڊيٽا بس صرف پڙهڻ ۽ لکڻ جي برسٽ دوران چوٽي بينڊوڊٿ جي ويجهو پهچي ٿي، ۽ ان جو اوور هيڊ اثرائتي ڊيٽا جي شرح کي گهٽائي ٿو.
ڪجھ اڳampمٿي جي گھٽ قيمت آهي
- ساڳئي بئنڪ ۾ قطارن تائين رسائي جو وقت اڳي چارج (پهچ ائڊريس ساڳئي قطار واري صفحي ۾ نه آهي)
- لکڻ جي وصولي وقت لکڻ کان پڙهڻ جي رسائي کي تبديل ڪرڻ لاء
- بس ٽرن اراؤنڊ وقت پڙهڻ کان لکڻ تائين رسائي ۾ تبديل ٿيڻ جو امڪان
ڊيٽا منتقل ڪرڻ جا ڪلاڪ چڪر
- ڪارڪردگي (٪) = ——————————————-
ڪُل ڪلاڪ سائيڪلون
مؤثر بينڊوڊٿ = چوٽي بينڊوڊٿ * ڪارڪردگي
MIG ڊيزائن جي نسل
- جي حوالي ڪريو UG586 باب 1 قدم قدم تفصيل لاءِ MIG IP ۽ اڳampلي ڊيزائن نسل.
- MIG 7 سيريز جي ڪارڪردگي سموليشن هلائڻ کان اڳ، هيٺ ڏنل ڪم ڪريو ته جيئن پڪ ڪري سگهجي ته توهان جو سموليشن ماحول ٺيڪ آهي.
- MIG ex کوليوampمناسب لائبريرين کي ڊزائين ۽ نقشو ٺاھيو، تخليق کي ھلايو، ۽ پڪ ڪريو ته توھان ٽرانسڪرپٽ ۾ "ٽيسٽ پاس ٿيل" پيغام ڏسي سگھو ٿا.
- وهڪري کي ڏيکارڻ لاءِ، مون xc7vx690tffg1761-2 لاءِ هڪ MIG IP پيدا ڪيو آهي ۽ اڳوڻي کي استعمال ڪيو آهيampلي ڊيزائن.
- ٻه شيون جيڪي نوٽ ڪرڻ گهرجن ميموري ايڊريس بٽ ۽ ميموري ايڊريس ميپنگ چونڊ.
- مثال طورampها، مون ميموري پارٽ ڊراپ ڊائون آپشنز جي تحت MT41J128M8XX-125 چونڊيو آهي.
تصوير-1 مان چونڊيل ياداشت واري حصي لاءِ، قطار = 14، ڪالمن = 10 ۽ بئنڪ = 3، پوءِ app_addr_width = قطار + ڪالمن + بئنڪ + درجو = 28
توهان BANK_ROW_COLUMN يا ROW BANK_COLUMN چونڊي سگهو ٿا.
مون ROW BANK ڪالم ڇڏي ڏنو آهي، جيڪو ڊفالٽ ايڊريس ميپنگ آهي.
Exampلي ڊيزائن سموليشن سان گڏ ٺهيل ٽيسٽ بينچ
- سموليشن سيٽنگز جي تحت، ڪوسٽا سم/ماڊل سم سموليٽر چونڊيو ۽ مرتب ڪيل لائبريري جي جڳھ تي براؤز ڪريو.
- ٽئين پارٽي ٽولز انسٽال ڪرڻ جي رستي ڏانهن اشارو ڪرڻ، ٽارگيٽ سموليٽر چونڊڻ، ۽ لائبريرين کي مرتب ڪرڻ ۽ نقشي سازي ڪرڻ بابت تفصيلن لاءِ، توهان (UG900) Vivado Design Suite User Guide Logic Simulation جو حوالو ڏئي سگهو ٿا.
GUI کي نقل ڪريو (پروجيڪٽ مئنيجر ۾ رن سموليشن ٽيب تي ڪلڪ ڪريو) ۽ پڪ ڪريو ته توهان ٽرانسڪرپٽ ۾ "ٽيسٽ پاس" پيغام ڏسو.
ڪارڪردگي سموليشن RTL تبديليون
- ذريعن جي ٽيب تي ساڄي ڪلڪ ڪريو، "سموليشن ذريعن کي شامل ڪريو يا ٺاهيو" چونڊيو، mig7_perfsim_traffic_generator.sv ڏانهن براؤز ڪريو. file ۽ ان کي شامل ڪرڻ لاءِ ختم تي ڪلڪ ڪريو.
- ذريعن جي ٽيب تي ساڄي ڪلڪ ڪريو، "سموليشن ذريعن کي شامل ڪريو يا ٺاهيو" چونڊيو، perfsim_stimulus.txt ڏانهن براؤز ڪريو، ۽ ان کي شامل ڪرڻ ختم ڪريو تي ڪلڪ ڪريو.
- اڳيون تبصروample_top instantiation in the sim_tb_top.v file.
- ھيٺيون RTL لائينون شامل ڪريو sim_tb_top،v
- پنھنجي ياداشت جي حصي جي چونڊ مطابق APP_ADDR_WIDTH، APP_DATA_WIDTH، RANK_WIDTH، H، ۽ BANK_WIDTH کي تبديل ڪريو. قدر _mig.v مان حاصل ڪري سگھجن ٿا. file.
- پيلي نمايان ٿيل انسٽنٽيشن نالو mig_7series_0_mig IP ٺاھڻ دوران توھان جي جزو جي نالي جي بنياد تي مختلف ٿي سگھي ٿو. 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 تخليقي ذريعن جي تحت.
- نقشو درست ڪرڻ لاء file، mig_7series_0_mig.v تي ساڄي ڪلڪ ڪريو، "ذريعات شامل ڪريو" چونڊيو، براؤز ڪريو /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 کي ڪلاڪنگ، ڪنٽرولر، ip_top، phy، ۽ UI فولڊرن ۾ رکيو ويو آهي.
- هڪ دفعو RTL تبديليون ڪيون وينديون آهن ۽ سڀ گهربل fileجڏهن توهان جي سموليشن ذريعن ۾ s شامل ڪيا وڃن، ته هيئرارڪي شڪل 5 سان ملندڙ جلندڙ هجڻ گهرجي.
- جي fileڳاڙهي رنگ ۾ نمايان ٿيل شيون نوان شامل ڪيون ويون آهن، ۽ ECC سان لاڳاپيل ماڊلز تي "?" جي توقع ڪئي ويندي آهي ڇاڪاڻ ته چونڊيل ميموري ترتيب ۾ ECC آپشن غير فعال آهي.
محرڪ File وصف
هر محرڪ جو نمونو 48 بِٽ آهي، ۽ فارميٽ شڪل 6-1 کان 6-4 تائين بيان ڪيو ويو آهي.
ايڊريس انڪوڊنگ (ايڊريس [35:0])
پتو محرڪ ۾ شڪل 7-1 کان شڪل 7-6 تائين انڪوڊ ٿيل آهي. سڀني پتي جي خانن کي هيڪساڊيسيمل فارميٽ ۾ داخل ڪرڻ جي ضرورت آهي.
سڀئي ايڊريس فيلڊ هڪ ويڪر آهن جيڪا هيڪساڊيسيمل فارميٽ ۾ داخل ٿيڻ لاءِ چار سان ورهائي سگهجي ٿي. ٽيسٽ بينچ صرف ايڊريس فيلڊ جي گهربل بٽس کي ميموري ڪنٽرولر ڏانهن موڪلي ٿو. مثال طورampلي، اٺ بينڪ جي ترتيب ۾، صرف بينڪ بٽس [2:0] ميموري ڪنٽرولر ڏانهن موڪليا ويندا آهن، ۽ باقي بٽس کي نظرانداز ڪيو ويندو آهي. ايڊريس فيلڊ لاءِ اضافي بٽس توهان کي هيڪساڊيسيمل فارميٽ ۾ ايڊريس داخل ڪرڻ لاءِ مهيا ڪيا ويندا آهن. توهان کي تصديق ڪرڻ گهرجي ته داخل ڪيل قدر ڏنل ترتيب جي ويڪر سان مطابقت رکي ٿي.
- ڪالمن ايڊريس (ڪالمن [11:0]) - محرڪ ۾ ڪالمن ايڊريس وڌ ۾ وڌ 12 بِٽس تائين مهيا ڪيو ويو آهي، پر توهان کي پنهنجي ڊيزائن ۾ سيٽ ڪيل ڪالمن ويڪر پيرا ميٽر جي بنياد تي ان کي ايڊريس ڪرڻ جي ضرورت آهي.
- قطار جو پتو (قطار [15:0]) - محرڪ ۾ قطار جو پتو وڌ ۾ وڌ 16 بِٽس تائين مهيا ڪيو ويو آهي، پر توهان کي پتو ڏيڻ جي ضرورت آهي
- هي توهان جي ڊيزائن ۾ مقرر ڪيل قطار جي ويڪر جي پيرا ميٽر تي ٻڌل آهي.
- بينڪ ايڊريس (بينڪ[3:0]) - محرڪ ۾ بينڪ ايڊريس وڌ ۾ وڌ چار بٽس تائين مهيا ڪيو ويو آهي، پر توهان کي پنهنجي ڊيزائن ۾ مقرر ڪيل بينڪ ويڪر پيرا ميٽر جي بنياد تي ان کي خطاب ڪرڻ جي ضرورت آهي.
- رينڪ ايڊريس (رينڪ [3:0]) - محرڪ ۾ رينڪ ايڊريس وڌ ۾ وڌ چار بٽس تائين مهيا ڪيو ويو آهي، پر توهان کي پنهنجي ڊيزائن ۾ سيٽ ڪيل رينڪ ويڪر پيرا ميٽر جي بنياد تي ان کي ايڊريس ڪرڻ جي ضرورت آهي.
- پتو مٿين سطح جي MEM_ADDR_ORDER پيرا ميٽر جي بنياد تي گڏ ڪيو ويندو آهي ۽ يوزر انٽرفيس ڏانهن موڪليو ويندو آهي.
حڪم ورجائي (ڪمان ورجائي) [7:0])
- ڪمانڊ ورجائڻ جو تعداد يوزر انٽرفيس تي لاڳاپيل ڪمانڊ کي ورجائڻ جو تعداد آهي. هر ورجائڻ لاءِ پتو 8 سان وڌايو ويندو آهي. وڌ ۾ وڌ ورجائڻ جو تعداد 128 آهي.
- ٽيسٽ بينچ ڪالمن جي حد جي جانچ نه ڪندو آهي، ۽ اهو انڪريٽ ڪندو آهي ته جيڪڏهن واڌ دوران وڌ ۾ وڌ ڪالمن جي حد تائين پهچي وڃي.
- 128 ڪمانڊ صفحي کي ڀريندا آهن. 0 کان سواءِ ڪنهن به ڪالم ايڊريس لاءِ، 128 جي ورجائي ڳڻپ ڪراسنگ تي ختم ٿيندي آهي.
- ڪالمن جي حد ڪالمن جي پتي جي شروعات تائين ويڙهيل آهي.
بس استعمال
بس جي استعمال جو حساب يوزر انٽرفيس تي ڪيو ويندو آهي، پڙهڻ ۽ لکڻ جي ڪل تعداد کي غور ۾ رکندي، ۽ هيٺ ڏنل مساوات استعمال ڪئي ويندي آهي:
- BL8 چار ميموري ڪلاڪ چڪر وٺندو آهي
- محرڪ جو اختتام اهو وقت آهي جڏهن سڀئي حڪم مڪمل ٿي ويندا آهن.
- calib_done اهو وقت آهي جڏهن حساب ڪتاب ڪيو ويندو آهي.
Exampلي پیٹرنز
اهي سابقamples BANK_ROW_COLUMN تي سيٽ ڪيل MEM_ADDR_ORDER تي ٻڌل آهن.
اڪيلو پڙهڻ وارو نمونو
00_0_2_000F_00A_1 - هي نمونو 10هين ڪالمن، 15هين قطار، ۽ سيڪنڊ بئنڪ مان هڪ واحد پڙهيل آهي.
اڪيلو لکڻ جو نمونو
00_0_1_0040_010_0 - هي نمونو 32 هين ڪالمن، 128 هين قطار، ۽ پهرين بئنڪ ڏانهن هڪ واحد لکت آهي.
هڪ ئي ايڊريس تي اڪيلو لکو ۽ پڙهو
- 00_0_2_000F_00A_0 - هي نمونو 10 هين ڪالم، 15 هين قطار، ۽ ٻئي ڪناري تي هڪ ڀيرو لکڻ آهي.
- 00_0_2_000F_00A_1 - هي نمونو 10 هين ڪالم، 15 هين قطار، ۽ ٻئي ڪناري مان هڪ ڀيرو پڙهڻ لاءِ آهي.
هڪ ئي ايڊريس سان گھڻا لکندا ۽ پڙھندا
- 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 - هي 10 لکڻين سان ملندو آهي جنهن ۾ ڪالمن جو پتو هڪ لکڻ کان پوءِ صفحي جي شروعات ۾ ويڙهيل هوندو آهي.
ڪارڪردگي ٽرئفڪ جنريٽر کي ترتيب ڏيڻ
هن موقعي تي، توهان MIG ex سان مڪمل ڪيو آهي.ampلي ڊيزائن سموليشن. ان جو مطلب آهي ته توهان جو سموليشن سيٽ اپ تيار آهي، توهان ڪارڪردگي سموليشن RTL تبديليون ڪيون آهن، نئين سموليشن جي درجي بندي صحيح آهي، ۽ توهان محرڪ نمونن کي سمجهي ورتو آهي. perfsim_stimulus.txt ۾ 16 لکڻ ۽ پڙهڻ سان هڪ ڀيرو ٻيهر سموليشن هلايو.
- سڀني کي هلايو، انتظار ڪريو جيستائين init_calib_complete سگنل ظاهر نه ٿئي، ۽ توهان لکڻ ۽ پڙهڻ جي تجويز ڪيل تعداد ڏسي سگهندا. پوءِ سموليشن بند ٿي ويندي.
- جڏهن توهان کي سميوليشن ڇڏڻ لاءِ چيو وڃي، ته نه چونڊيو ۽ ٽرانسڪرپٽ ونڊو ڏانهن وڃو، جتي توهان ڪارڪردگي جا انگ اکر ڏسي سگهندا.
- جيڪڏهن توهان "quit simulation" چونڊيو ٿا، ته ڪارڪردگي جا انگ اکر هڪ ڏانهن لکيا ويندا file sim_1/behave فولڊر ۾ واقع mig_band_width_output.txt نالي.
- Exampڊاريڪٽري جو رستو:- /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 لکڻ ۽ پڙهڻ جي برسٽ جي ڊگهي تسلسل لاءِ بهتر بس استعمال پيش ڪري ٿو.
ڪارڪردگي بهتر ڪرڻ جا عام طريقا
ڪارڪردگيءَ تي اثرانداز ٿيندڙ عنصرن کي ٻن حصن ۾ ورهائي سگھجي ٿو:
- ياداشت جي مخصوص
- ڪنٽرولر مخصوص
شڪل 9 توهان کي هڪ اوور ڏئي ٿوview ياداشت لاءِ مخصوص اصطلاحن مان.
SRAMs ۽ بلاڪ ياداشتن جي برعڪس، DDR2 يا DDR3 ڪارڪردگي صرف وڌ ۾ وڌ ڊيٽا جي شرح ناهي.
اهو ڪيترن ئي وقت جي عنصر تي منحصر آهي، جنهن ۾ شامل آهن:
- tRCD: قطار ڪمانڊ ڊيلي (يا راس کان ڪيس ڊيلي).
- tCAS(CL): ڪالمن ايڊريس اسٽروب ليٽنسي.
- ٽي آر پي: قطار پري چارج دير.
- tRAS: قطار فعال وقت (پري چينج لاءِ چالو ڪريو).
- tRC: قطار جي چڪر جو وقت. tRC = tRAS + tRP
- trAC: بي ترتيب رسائي ۾ دير. trAC = tRCD + tCAS
- tCWLCAS لکڻ جي دير.
- tZQ: ZQ ڪيليبريشن وقت.
- tRFC: قطار ريفريش سائيڪل جو وقت
- tWTR: پڙهڻ لاءِ لکڻ ۾ دير. پڙهڻ لاءِ آخري لکڻ واري ٽرانزيڪشن جو حڪم وقت.
- tWR: لکڻ جي وصولي جو وقت. آخري لکڻ جي ٽرانزيڪشن کي پري چارج وقت تائين
- سڀني درج ٿيل پيرا ميٽرز جو وقت استعمال ٿيل ميموري جي قسم ۽ ميموري حصي جي اسپيڊ گريڊ تي منحصر آهي.
- وصفن ۽ وقت جي وضاحتن بابت وڌيڪ تفصيل DDR2 ۽ DDR3 JEDEC معيارن يا ڪنهن به ميموري ڊوائيس ڊيٽا شيٽ ۾ ملي سگهن ٿا.
ڪارڪردگي بنيادي طور تي منحصر آهي ته ڪيئن ميموري تائين رسائي آهي. مختلف پتي جا نمونا مختلف ڪارڪردگي جا نتيجا ڏين ٿا.
ميموري ٽائيمنگ اوور هيڊز
- نئين بينڪن/قطارن ۾ تبديل ٿيڻ يا ساڳئي بينڪ اندر قطارون تبديل ڪرڻ وقت چالو ٿيڻ جو وقت ۽ پري چارج جو وقت. - تنهن ڪري، توهان قطار جي تبديلي کي گهٽايو ٿا، جيڪو tRCD ۽ tRP کي ختم ڪري سگهي ٿو.
- مسلسل لکڻ يا پڙهو حڪم موڪليو - ٽي سي ڊي جي وقت کي برقرار رکڻ.
- لکڻ کان پڙهڻ ۽ پڙهڻ کان لکڻ جي حڪم جي تبديلي کي گھٽ ۾ گھٽ ڪريو - پڙهڻ جي رسائي کي تبديل ڪرڻ لاءِ لکڻ جي وصولي جو وقت، ۽ پڙهڻ کان لکڻ ۾ تبديل ڪرڻ لاءِ بس ٽرن اراؤنڊ وقت.
- هڪ مناسب ريفريش وقفو مقرر ڪريو.
- a. DDR3 SDRAM کي tREFI جي سراسري وقفي تي ريفريش سائيڪلن جي ضرورت آهي.
- ب. وڌ ۾ وڌ 8 اضافي ريفريش ڪمانڊ اڳواٽ جاري ڪري سگھجن ٿا ("اندر ڪڍيا ويا"). اهو ريفريش جو تعداد گهٽ نٿو ڪري، پر ٻن ڀرپاسي وارن ريفريش ڪمانڊ جي وچ ۾ وڌ ۾ وڌ وقفو 9 × tREFI تائين محدود آهي.
- سڀني بينڪن کي استعمال ڪريو - هڪ مناسب ايڊريسنگ ميڪانيزم بهتر آهي.
- الف. قطار-بينڪ-ڪالمن: هڪ ترتيب وار ايڊريس اسپيس تي ٿيندڙ ٽرانزيڪشن لاءِ، ڪور خودڪار طريقي سان DRAM ڊوائيس جي ايندڙ بينڪ ۾ ساڳئي قطار کي کوليندو آهي ته جيئن موجوده قطار جي آخر تائين پهچڻ تي ٽرانزيڪشن جاري رکي سگهجي. اهو انهن ايپليڪيشنن لاءِ مناسب آهي جن کي ترتيب وار ايڊريس جي جڳهن تي وڏي ڊيٽا پيڪٽ کي دفن ڪرڻ جي ضرورت آهي.
- ب. بينڪ-قطار-ڪالم: جڏهن هڪ قطار جي حد پار ڪندي، موجوده قطار بند ٿي ويندي، ۽ ساڳئي بينڪ اندر ٻي قطار کولي ويندي. ايم ايس بي هڪ بينڪ ايڊريس آهي جيڪو مختلف بينڪن کان سوئچ ڪرڻ لاءِ استعمال ڪري سگهجي ٿو. اهو ڪجهه وقت لاءِ ميموري جي هڪ بلاڪ ڏانهن مختصر، وڌيڪ بي ترتيب ٽرانزيڪشن لاءِ مناسب آهي، ۽ پوءِ ٻئي بلاڪ (بينڪ) ڏانهن ٽپو ڏيڻ.
- برسٽ ڊگھائي
- الف. 8 سيريز تي DDR3 لاءِ BL 7 سپورٽ ٿيل آهي. BC4 جي ڪارڪردگي تمام گهٽ آهي، جيڪا 50٪ کان گهٽ آهي. اهو ئي سبب آهي جو BC4 جو عمل درآمد وقت BL8 جي برابر آهي. ڊيٽا صرف جزو اندر لڪيل آهي.
- ب. انهن حالتن ۾ جتي توهان مڪمل برسٽ لکڻ نٿا چاهيو، ڊيٽا ماسڪ يا پڙهڻ کان پوءِ لکڻ تي غور ڪري سگهجي ٿو.
- هڪ مناسب ZQ وقفو مقرر ڪريو (صرف DDR3)
ڪنٽرولر موڪلي ٿو ZQ مختصر (ZQCS) ۽ ZQ لانگ (ZQCL) Calibration حڪم.- الف. DDR3 JEDEC معيار تي عمل ڪريو.
- ب. ZQ ڪيليبريشن JEDEC Spec JESD5.5-79 DDR3 SDRAM معيار جي سيڪشن 3 ۾ بحث ڪيو ويو آهي.
- ج. ZQ ڪيليبريشن VT ۾ تبديلين کي حساب ۾ رکڻ لاءِ باقاعده وقفن تي آن-ڊائي ٽرمينيشن (ODT) کي ڪيليبريٽر ڪري ٿو.
- د. منطق bank_common.v/vhd ۾ شامل آهي.
- e. پيرا ميٽر Tzqcs اهو طئي ڪري ٿو ته ZQ ڪيليبريشن ڪمانڊ ميموري ڏانهن ڪيئن موڪليو ويندو آهي.
- f. ڪائونٽر کي غير فعال ڪرڻ ۽ دستي طور تي app_zq_req استعمال ڪندي موڪلڻ ممڪن آهي، اهو دستي طور تي ريفريش موڪلڻ وانگر آهي. تفصيل لاءِ (Xilinx Answer 47924) جو حوالو ڏيو.
ڪنٽرولر مٿي
- وقفي وقفي سان پڙهڻ - تفصيل لاءِ (Xilinx جواب 43344) ڏسو.
- الف. پڙهڻ جي مدت کي تبديل نه ڪريو.
- ب. لکڻ دوران وقفي وقفي سان پڙهڻ کي ڇڏي ڏيو ۽ صحيح پڙهڻ کان اڳ مس ٿيل پڙهڻ جو تعداد جاري ڪريو.
- ٻيهر ترتيب ڏيڻ - تفصيل لاءِ (Xilinx جواب 34392) جو حوالو ڏيو. يوزر ۽ AXI انٽرفيس ڊيزائن لاءِ، اهو بهتر آهي ته هن کي فعال ڪيو وڃي.
- الف. ٻيهر ترتيب ڏيڻ اهو منطق آهي جيڪو ڪيترن ئي حڪمن کي ڏسي ٿو ۽ استعمال ڪندڙ حڪم جي ترتيب کي تبديل ڪري ٿو ته جيئن غير ياداشتي حڪم صحيح بينڊوڊٿ تي قبضو نه ڪن. ڪارڪردگي پڻ اصل ٽرئفڪ نموني سان لاڳاپيل آهي.
- ب. ايڊريس پيٽرن جي بنياد تي، ٻيهر ترتيب ڏيڻ پري چارج کي ڇڏڻ ۽ ڪمانڊ کي چالو ڪرڻ ۾ مدد ڪري ٿو ۽ tRCD ۽ tRP کي ڊيٽا بينڊوڊٿ تي قبضو ڪرڻ کان روڪي ٿو.
- بئنڪ مشينن جو تعداد وڌائڻ جي ڪوشش ڪريو.
- الف. ڪنٽرولر جي گهڻي ڀاڱي منطق بينڪ مشينن ۾ هوندي آهي، ۽ اهي DRAM بينڪن سان لاڳاپيل هونديون آهن.
- ب. هڪ ڏنل بينڪ مشين ڪنهن به وقت هڪ واحد DRAM بينڪ جو انتظام ڪري ٿي.
- ج. بينڪ مشين جي تفويض متحرڪ آهي، تنهنڪري هر جسماني بينڪ لاءِ بينڪ مشين هجڻ ضروري ناهي.
- د. بينڪ مشينن کي ترتيب ڏئي سگهجي ٿو، پر اهو علائقي ۽ ڪارڪردگي جي وچ ۾ هڪ واپار آهي.
- e. بينڪ مشينن جو قابل اجازت تعداد 2-8 تائين آهي.
- f. ڊفالٽ طور، 4 بينڪ مشينون RTL پيرا ميٽرز ذريعي ترتيب ڏنل آهن.
- g. بينڪ مشينن کي تبديل ڪرڻ لاءِ، memc_ui_top ۾ موجود nBANK_MACHS = 8 پيرا ميٽر تي غور ڪريو.
Example 8 بئنڪ مشينن لاءِ - nBANK_MACHS = 8
هاڻي توهان ڪارڪردگي تي اثر انداز ٿيندڙ عنصرن کان واقف آهيو. هڪ اپ اسٽريم ايپليڪيشن تي غور ڪريو جيڪا توهان کي هر پيڪٽ تي 512 ڊيٽا بائيٽ ڏئي ٿي، ۽ توهان کي انهن کي مختلف ميموري جڳهن تي محفوظ ڪرڻ جي ضرورت آهي. جيئن ته 512 ڊيٽا بائيٽ 64 DDR3 ڊيٽا برسٽ جي برابر آهي، اڳوڻي کي ٻيهر هلايو.ampهڪ محرک سان ڊيزائن file جنهن ۾ 512 لکڻيون، 512 پڙهڻيون، ۽ هر 64 لکڻين يا پڙهڻين لاءِ قطار سوئچنگ شامل آهي:
سميوليشن جي آخر ۾، توهان ڏسندا ته بس جو استعمال 77 سيڪڙو تي آهي.
شڪل 11: 512 لکندڙن ۽ 512 ريڊز لاءِ ڪارڪردگي جا انگ اکر – 64 لکندڙن يا پڙهڻ لاءِ قطار ۾ ڦيرڦار.
هاڻي توهان ڪارڪردگي کي بهتر بڻائڻ لاءِ پوئين حصي ۾ حاصل ڪيل ڄاڻ کي لاڳو ڪري سگهو ٿا. قطار کي تبديل ڪرڻ بدران سڀني بينڪن کي استعمال ڪرڻ لاءِ، هيٺ ڏيکاريل بينڪ کي تبديل ڪرڻ لاءِ ايڊريس پيٽرن کي تبديل ڪريو. هي MIG GUI ۾ ميموري ايڊريس ميپنگ سيٽنگ ۾ ROW_BANK_Column سيٽ ڪرڻ جي برابر آهي.
سميوليشن جي آخر ۾، توهان ڏسندا ته اڳ ۾ 77 سيڪڙو بس استعمال هاڻي 87 آهي!
جيڪڏهن توهان اڃا تائين اعلي ڪارڪردگي جي ضرورت آهي، توهان 1024 يا 2048 بائيٽ جي وڏي پيٽ جي سائز لاء وڃو، يا دستي ريفريش تي غور ڪريو.
نوٽ: Xilinx ڪنٽرولر ريفريش کي نظرانداز ڪرڻ جي حوصلا افزائي نٿو ڪري، ڇاڪاڻ ته اسان کي پڪ ناهي ته توهان JEDEC آٽو ريفريش ٽائيمنگ کي پورو ڪري سگهندا، جيڪو ڊيٽا جي اعتبار کي متاثر ڪري ٿو. ڪنٽرولر مان توهان ڪارڪردگي جي بهتري ڏسڻ لاءِ NBANNBANk_MACH تبديل ڪري سگهو ٿا. جڏهن ته، اهو توهان جي ڊيزائن ٽائيمنگ کي متاثر ڪري سگهي ٿو، مهرباني ڪري nBANk_MACH تي تفصيل لاءِ (Xilinx جواب 36505) جو حوالو ڏيو.
core_name_mig_sim.v کوليو file ۽ پيرا ميٽرز nBANK_MACHS کي 4 کان 8 ۾ تبديل ڪريو ۽ سموليشن کي ٻيهر هلايو.
هارڊويئر ۾ پيرا ميٽر ويليو کي اثر انداز ٿيڻ لاءِ، توهان کي core_name_mig.v کي اپڊيٽ ڪرڻ جي ضرورت آهي. file. مون ساڳيو نمونو استعمال ڪيو جتي اسان کي 87٪ بس استعمال مليو (شڪل 2). nBANK_MACHS کي 8 تي سيٽ ڪرڻ سان، ڪارڪردگي هاڻي 90٪ آهي.
انهي سان گڏ، اهو نوٽ ڪريو ته ½ ۽ ¼ ڪنٽرولر پنهنجي دير جي ڪري ڪارڪردگي تي منفي اثر وجهندا آهن. مثال طورampليڪن، جيئن ته اسان هر 4 CK چڪرن ۾ صرف حڪم موڪلي سگهون ٿا، ڪڏهن ڪڏهن گهٽ ۾ گهٽ DRAM ٽائمنگ جي وضاحتن تي عمل ڪرڻ وقت اضافي پيڊنگ هوندي آهي، جيڪا نظرياتي کان ڪارڪردگي گهٽائي سگهي ٿي. مختلف ڪنٽرولرز کي آزمايو ته جيئن هڪ ڳولي سگهجي جيڪو توهان جي ڪارڪردگي جي ضرورت مطابق هجي. حوالا.
- Zynq-7000 AP SoC ۽ 7 سيريز FPGAs MIS v2.3 [UG586]
- Xilinx MIG حل سينٽر http://www.xilinx.com/support/answers/34243.html
نظرثاني جي تاريخ
13/03/2015 – شروعاتي رليز..
دستاويز / وسيلا
![]() |
XILINX 63234 END FPGA ورهائيندڙ [pdf] استعمال ڪندڙ ھدايت 63234 END FPGA ورهائيندڙ، 63234، END FPGA ورهائيندڙ، FPGA ورهائيندڙ |