UG0644 DDR AXI Arbiter

ထုတ်ကုန်အချက်အလက်

DDR AXI Arbiter သည် ဟာ့ဒ်ဝဲအစိတ်အပိုင်းတစ်ခုဖြစ်သည်။
DDR-SDRAM on-chip controllers များသို့ 64-bit AXI master interface
buffering နှင့် video applications များတွင် အသုံးများသည်။
ဗီဒီယို pixel ဒေတာကို လုပ်ဆောင်ခြင်း။ ထုတ်ကုန်အသုံးပြုသူလက်စွဲတွင် ပေးထားသည်။
ဟာ့ဒ်ဝဲ အကောင်အထည်ဖော်မှုဆိုင်ရာ အသေးစိတ်အချက်အလက်များနှင့် ညွှန်ကြားချက်များ၊
သရုပ်သကန်နှင့် အရင်းအမြစ် အသုံးချမှု။

Hardware အကောင်အထည်ဖော်ခြင်း။

DDR AXI Arbiter သည် DDR-SDRAM နှင့် ဆက်သွယ်ရန် ဒီဇိုင်းထုတ်ထားသည်။
on-chip ထိန်းချုပ်ကိရိယာများ။ ၎င်းသည် 64-bit AXI မာစတာအင်တာဖေ့စ်ကိုထောက်ပံ့ပေးသည်။
၎င်းသည် ဗီဒီယို pixel ဒေတာကို မြန်ဆန်စွာ လုပ်ဆောင်နိုင်စေပါသည်။ ထုတ်ကုန်အသုံးပြုသူ
manual သည် DDR AXI ၏ အသေးစိတ်ဒီဇိုင်းဖော်ပြချက်ကို ပေးသည်။
Arbiter နှင့် ၎င်း၏ ဟာ့ဒ်ဝဲ အကောင်အထည်ဖော်မှု။

သရုပ်သကန်

ထုတ်ကုန်အသုံးပြုသူလက်စွဲတွင် အတုယူရန် ညွှန်ကြားချက်များ ပေးထားသည်။
MSS SmartDesign နှင့် Testbench ကိရိယာများကို အသုံးပြု၍ DDR AXI Arbiter ဒါတွေ
ကိရိယာများသည် အသုံးပြုသူအား ဒီဇိုင်း၏ မှန်ကန်မှုနှင့် မှန်ကန်ကြောင်း အတည်ပြုနိုင်စေပါသည်။
ဟာ့ဒ်ဝဲ အစိတ်အပိုင်း၏ ကောင်းမွန်သော လုပ်ဆောင်မှုကို သေချာပါစေ။

အရင်းအမြစ်အသုံးချမှု

DDR AXI Arbiter သည် logic ကဲ့သို့သော စနစ်အရင်းအမြစ်များကို အသုံးပြုသည်။
ဆဲလ်များ၊ မှတ်ဉာဏ်ပိတ်ဆို့မှုများ၊ နှင့် လမ်းပြခြင်းအရင်းအမြစ်များ။ ထုတ်ကုန်အသုံးပြုသူ
manual သည် အသေးစိတ် အရင်းအမြစ် အသုံးချမှု အစီရင်ခံစာကို ပေးဆောင်သည်။
DDR AXI Arbiter ၏ အရင်းအမြစ်လိုအပ်ချက်များကို အကြမ်းဖျင်းဖော်ပြသည်။ ဒီ
ဟာ့ဒ်ဝဲ အစိတ်အပိုင်း လုပ်နိုင်ကြောင်း သေချာစေရန် အချက်အလက်ကို အသုံးပြုနိုင်သည်။
ရရှိနိုင်သော စနစ်အရင်းအမြစ်များအတွင်း အကောင်အထည်ဖော်ဆောင်ရွက်ပါ။

ထုတ်ကုန်အသုံးပြုမှု ညွှန်ကြားချက်များ

အောက်ဖော်ပြပါ ညွှန်ကြားချက်များသည် ၎င်းကိုအသုံးပြုနည်းကို လမ်းညွှန်ပေးပါသည်။
DDR AXI Arbiter-

အဆင့် 1- ဟာ့ဒ်ဝဲ အကောင်အထည်ဖော်ခြင်း။

အင်တာဖေ့စ်အတွက် DDR AXI Arbiter ဟာ့ဒ်ဝဲအစိတ်အပိုင်းကို အကောင်အထည်ဖော်ပါ။
DDR-SDRAM on-chip ထိန်းချုပ်ကိရိယာများနှင့်။ ဒီဇိုင်းကိုလိုက်နာပါ။
သင့်လျော်သေချာစေရန် ထုတ်ကုန်အသုံးပြုသူလက်စွဲတွင် ပေးထားသည့်ဖော်ပြချက်
hardware အစိတ်အပိုင်းကိုအကောင်အထည်ဖော်ခြင်း။

အဆင့် 2- သရုပ်သကန်

MSS SmartDesign နှင့် DDR AXI Arbiter ဒီဇိုင်းကို အတုယူပါ။
Testbench ကိရိယာများ။ ထုတ်ကုန်တွင်ဖော်ပြထားသော ညွှန်ကြားချက်များကို လိုက်နာပါ။
ဒီဇိုင်း၏မှန်ကန်မှုကိုအတည်ပြုရန်နှင့်သေချာစေရန်အသုံးပြုသူလက်စွဲ
ဟာ့ဒ်ဝဲအစိတ်အပိုင်း၏ သင့်လျော်သော လုပ်ဆောင်မှု။

အဆင့် 3- အရင်းအမြစ်အသုံးချမှု

Review ထုတ်ကုန်တွင် ပေးထားသော အရင်းအမြစ် အသုံးချမှု အစီရင်ခံစာ
DDR AXI ၏အရင်းအမြစ်လိုအပ်ချက်များကိုဆုံးဖြတ်ရန်အသုံးပြုသူလက်စွဲ
အနုသမား။ ဟာ့ဒ်ဝဲအစိတ်အပိုင်းကို အကောင်အထည်ဖော်နိုင်ကြောင်း သေချာပါစေ။
ရရှိနိုင်သောစနစ်အရင်းအမြစ်များအတွင်း။

ဤညွှန်ကြားချက်များကို လိုက်နာခြင်းဖြင့် သင်သည် DDR ကို ထိထိရောက်ရောက် အသုံးပြုနိုင်ပါသည်။
ဗီဒီယို pixel data buffering အတွက် AXI Arbiter ဟာ့ဒ်ဝဲ အစိတ်အပိုင်း
ဗီဒီယိုအပလီကေးရှင်းများတွင် လုပ်ဆောင်ခြင်း။

UG0644 အသုံးပြုသူလမ်းညွှန်
DDR AXI Arbiter
ဖေဖော်ဝါရီ 2018

DDR AXI Arbiter
မာတိကာ
1 Revision History …………………………………………………………………………………………………………….. ၁
1.1 ပြန်လည်ပြင်ဆင်ခြင်း 5.0 ……………………………………………………………………………………………………………………………………။ 1 1.2 Revision 4.0 ……………………………………………………………………………………………………………………………………။ 1 1.3 Revision 3.0 ……………………………………………………………………………………………………………………………………။ 1 1.4 ပြန်လည်ပြင်ဆင်ခြင်း 2.0 ……………………………………………………………………………………………………………………………………။ 1 1.5 Revision 1.0 ……………………………………………………………………………………………………………………………………။ ၁
2 နိဒါန်း ……………………………………………………………………………………………………………………….. 2 3 ဟာ့ဒ်ဝဲ အကောင်အထည်ဖော်ခြင်း ………………………………………………………………………………………………………… ၃
3.1 ဒီဇိုင်းဖော်ပြချက် ……………………………………………………………………………………………………………………… 3 3.2 သွင်းအားစုများနှင့် အထွက်များ …………………………………………………………………………………………………………….. 5 3.3 ပြင်ဆင်သတ်မှတ်မှု ကန့်သတ်ချက်များ ……… ………………………………………………………………………………………………. 13 3.4 Timing Diagrams ………………………………………………………………………………………………………………………. 14 3.5 Testbench ……………………………………………………………………………………………………………………….. ၁၆
3.5.1 MSS SmartDesign ကို ပုံဖော်ခြင်း …………………………………………………………………………………………………………။ 25 3.5.2 Simulating Testbench ……………………………………………………………………………………………………………. 30 3.6 အရင်းအမြစ်အသုံးချမှု ………………………………………………………………………………………………………….. 31
UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

DDR AXI Arbiter

1

ပြန်လည်ပြင်ဆင်မှုမှတ်တမ်း

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

1.1

ပြင်ဆင်ချက် 5.0

ဤစာတမ်း၏ ပြန်လည်ပြင်ဆင်မှု 5.0 တွင်၊ အရင်းအမြစ်အသုံးချမှုအပိုင်းနှင့် အရင်းအမြစ်အသုံးချမှုအစီရင်ခံစာ

မွမ်းမံခဲ့ကြသည်။ ပိုမိုသိရှိလိုပါက၊ အရင်းအမြစ်အသုံးချမှုကို ကြည့်ပါ (စာမျက်နှာ ၃၁ ကိုကြည့်ပါ)။

1.2

ပြင်ဆင်ချက် 4.0

အောက်ဖော်ပြပါသည် ဤစာတမ်း၏ ပြန်လည်ပြင်ဆင်မှု 4.0 တွင် ပြောင်းလဲမှုများ၏ အကျဉ်းချုပ်ဖြစ်သည်။

ဇယားတွင် testbench ဖွဲ့စည်းမှုဘောင်ဘောင်များကို ထည့်ထားသည်။ ပိုမိုသိရှိလိုပါက၊ Configuration Parameters (စာမျက်နှာ 16 ကိုကြည့်ပါ) ကိုကြည့်ပါ ။ ။ testbench ကိုအသုံးပြု၍ core ကိုအတုယူရန် ထပ်လောင်းအချက်အလက်များကိုထည့်သွင်းပါ။ နောက်ထပ်အချက်အလက်များအတွက် Testbench ကိုကြည့်ပါ (စာမျက်နှာ 16 ကိုကြည့်ပါ)။ ဇယားရှိ DDR AXI Arbiter တန်ဖိုးများအတွက် အရင်းအမြစ်အသုံးချမှုကို အပ်ဒိတ်လုပ်ထားသည်။ ပိုမိုသိရှိလိုပါက၊ အရင်းအမြစ်အသုံးချမှုကို ကြည့်ပါ (စာမျက်နှာ ၃၁ ကိုကြည့်ပါ)။

1.3

ပြင်ဆင်ချက် 3.0

အောက်ဖော်ပြပါသည် ဤစာတမ်း၏ ပြန်လည်ပြင်ဆင်မှု 3.0 တွင် ပြောင်းလဲမှုများ၏ အကျဉ်းချုပ်ဖြစ်သည်။

ရေးရန်ချန်နယ် 8 နှင့် 1 အတွက် 2-bit အချက်အလက်ကို ပေါင်းထည့်ထားသည်။ ပိုမိုသိရှိလိုပါက၊ ဒီဇိုင်းဖော်ပြချက်ကို ကြည့်ပါ (စာမျက်နှာ 3 ကိုကြည့်ပါ)။ Testbench အပိုင်းကို အပ်ဒိတ်လုပ်ထားသည်။ နောက်ထပ်အချက်အလက်များအတွက် Testbench ကိုကြည့်ပါ (စာမျက်နှာ 16 ကိုကြည့်ပါ)။

1.4

ပြင်ဆင်ချက် 2.0

ဤစာရွက်စာတမ်း၏ ပြန်လည်ပြင်ဆင်မှု 2.0 တွင်၊ ကိန်းဂဏန်းများနှင့် ဇယားများကို Testbench ကဏ္ဍတွင် မွမ်းမံခဲ့သည်။

နောက်ထပ်အချက်အလက်များအတွက် Testbench ကိုကြည့်ပါ (စာမျက်နှာ 16 ကိုကြည့်ပါ)။

1.5

ပြင်ဆင်ချက် 1.0

Revision 1.0 သည် ဤစာတမ်း၏ ပထမဆုံးထုတ်ဝေမှုဖြစ်သည်။

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

1

DDR AXI Arbiter

2

နိဒါန်း

Memories သည် ပုံမှန်ဗီဒီယိုနှင့် ဂရပ်ဖစ်အက်ပ်လီကေးရှင်းများ၏ အဓိကအစိတ်အပိုင်းတစ်ခုဖြစ်သည်။ ၎င်းတို့ကို ဗီဒီယို pixel ဒေတာ အရှိန်မြှင့်ရန်အတွက် အသုံးပြုသည်။ သာမန် buffering example သည် frame တစ်ခုအတွက် video pixel data အပြည့်အစုံကို memory တွင် buffered ဖြစ်သည့် display frame buffers ဖြစ်သည်။

Dual data rate (DDR)-synchronous DRAM (SDRAM) သည် buffering အတွက် ဗီဒီယို အပလီကေးရှင်းများတွင် အသုံးများသော မှတ်ဉာဏ်များထဲမှ တစ်ခုဖြစ်သည်။ ဗီဒီယိုစနစ်များတွင် လျင်မြန်စွာ စီမံဆောင်ရွက်ပေးရန် လိုအပ်သည့် ၎င်း၏အမြန်နှုန်းကြောင့် SDRAM ကို အသုံးပြုထားသည်။

အောက်ပါပုံသည်ရည်းစားဟောင်းကိုပြသည်ampဗီဒီယို အပလီကေးရှင်းနှင့် ချိတ်ဆက်ခြင်း DDR-SDRAM မမ်မိုရီ၏ စနစ်အဆင့် ပုံကြမ်း။

ပုံ 1 · DDR-SDRAM Memory Interfacing

Microsemi SmartFusion®2 System-on-Chip (SoC) တွင်၊ 64-bit အဆင့်မြင့် extensible interface (AXI) နှင့် 32-bit advanced high-performance bus (AHB) slave interface ပါရှိသော on-chip DDR controllers နှစ်ခုရှိသည်။ တံခါးခင်းကျင်း (FPGA) ထည်။ on-chip DDR controllers များနှင့်ချိတ်ဆက်ထားသော DDR-SDRAM မမ်မိုရီကိုဖတ်ရန်နှင့်ရေးရန် AXI သို့မဟုတ် AHB မာစတာအင်တာဖေ့စ်တစ်ခုလိုအပ်သည်။

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

2

DDR AXI Arbiter

3

Hardware အကောင်အထည်ဖော်ခြင်း။

3.1

ဒီဇိုင်းဖော်ပြချက်

DDR AXI Arbiter သည် DDR-SDRAM on-chip controllers များသို့ 64-bit AXI master interface ကို ထောက်ပံ့ပေးသည်။

SmartFusion2 စက်များ။ DDR AXI Arbiter တွင် read channels လေးခုနှင့် write channels နှစ်ခုရှိသည်။

အသုံးပြုသူ ယုတ္တိဗေဒ။ ပိတ်ဆို့ခြင်းသည် AXI ဖတ်ရှုခြင်းသို့ ဝင်ရောက်ခွင့်ကို ပေးစွမ်းရန် ဖတ်သည့် ချန်နယ် လေးခုကြားတွင် အဆုံးအဖြတ်ပေးသည်။

လှည့်ပတ်သည့်ပုံစံဖြင့် ချန်နယ်။ read channel 1 master ၏ read request မြင့်မားနေသမျှကာလပတ်လုံး AXI

read channel ကို ခွဲဝေပေးလိုက်ပါ။ Read ချန်နယ် 1 တွင် ပုံသေအထွက်ဒေတာအကျယ် 24-bit ရှိသည်။ ချန်နယ် ၂၊ ၃၊

နှင့် 4 ကို 8-bit၊ 24-bit သို့မဟုတ် 32-bit data output width အဖြစ် configure လုပ်နိုင်ပါသည်။ ဒါကို ကမ္ဘာလုံးဆိုင်ရာက ရွေးချယ်ထားပါတယ်။

configuration ကန့်သတ်ချက်။

ဘလောက်သည် AXI စာရေးချန်နယ်သို့ လှည့်ပတ်လည်ပတ်သည့်ပုံစံဖြင့် ဝင်ရောက်ခွင့်ပေးရန် စာရေးလမ်းကြောင်းနှစ်ခုကြားတွင်လည်း စီရင်ဆုံးဖြတ်သည်။ ရေးလမ်းကြောင်းနှစ်ခုလုံးသည် တန်းတူဦးစားပေးထားသည်။ ချန်နယ် 1 နှင့် 2 ကို 8-ဘစ်၊ 24-ဘစ် သို့မဟုတ် 32-ဘစ် ထည့်သွင်းမှုဒေတာအကျယ်အဖြစ် သတ်မှတ်နိုင်ပါသည်။

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

3

DDR AXI Arbiter
အောက်ပါပုံသည် DDR AXI Arbiter ၏ ထိပ်တန်းအဆင့် pin-out diagram ကိုပြသထားသည်။ ပုံ 2 · DDR AXI Arbiter Block ၏ ထိပ်တန်းအဆင့် ပိတ်ဆို့ရေးပြမှု

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

4

DDR AXI Arbiter
အောက်ဖော်ပြပါပုံသည် SmartFusion2 စက်ပစ္စည်းသို့ ပေးပို့ထားသော DDR AXI Arbiter ပိတ်ဆို့သည့်စနစ်၏ ထိပ်တန်းအဆင့်ဘလောက်ပုံကြမ်းကို ပြသထားသည်။ ပုံ 3 · SmartFusion2 စက်ပစ္စည်းရှိ DDR AXI Arbiter ၏ စနစ်အဆင့် ပိတ်ဆို့ခြင်း ဇယား

3.2

သွင်းအားစုများနှင့် အထွက်များ
အောက်ပါဇယားသည် DDR AXI Arbiter ၏ အဝင်နှင့် အထွက်ပေါက်များကို စာရင်းပြုစုထားသည်။

ဇယား 1 · DDR AXI Arbiter ၏ အဝင်နှင့်အထွက် ပေါက်များ

အချက်ပြအမည် RESET_N_I

ဦးတည်ချက်ထည့်သွင်းခြင်း။

အကျယ်

SYS_CLOCK_I BUFF_READ_CLOCK_I

Input Input

rd_req_1_i rd_ack_o

input ကို output ကို

rd_done_1_o start_read_addr_1_i

အထွက် Input

bytes_to_read_1_i

ထည့်သွင်းခြင်း။

ဗီဒီယို_rdata_1_o

အထွက်

[(g_AXI_AWIDTH-1):0] [(g_RD_CHANNEL1_AXI_BUFF_ AWIDTH + 3) – 1 : 0] [(g_RD_CHANNEL1_VIDEO_DATA_WIDTH1):0]

ဖော်ပြချက်
ဒီဇိုင်းပုံစံသို့ တက်ကြွစွာ နိမ့်ကျသော အပြိုင်အဆိုင် ပြန်လည်သတ်မှတ်မှု အချက်ပြမှု
စနစ်နာရီ
ချန်နယ်၏အတွင်းပိုင်းကြားခံဖတ်နာရီကိုရေးပါ၊ SYS_CLOCK_I ကြိမ်နှုန်းနှစ်ဆဖြစ်ရမည်
ဆရာကြီးထံမှ တောင်းဆိုချက် ၁
Master 1 ထံမှတောင်းဆိုချက်ကိုဖတ်ရှုရန် Arbiter အသိအမှတ်ပြုမှု
Master 1 ကို ပြီးအောင်ဖတ်ပါ။
read channel 1 အတွက် read စတင်ရမည့်နေရာမှ DDR လိပ်စာ
read channel 1 မှ ဖတ်ရန် ဘိုက်များ
Read channel 1 မှ ဗီဒီယိုဒေတာ အထွက်

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

5

DDR AXI Arbiter

အချက်ပြအမည် rdata_valid_1_o rd_req_2_i rd_ack_2_o
rd_done_2_o start_read_addr_2_i
bytes_to_read_2_i
ဗီဒီယို_rdata_2_o
rdata_valid_2_o rd_req_3_i rd_ack_3_o
rd_done_3_o start_read_addr_3_i
bytes_to_read_3_i
ဗီဒီယို_rdata_3_o
rdata_valid_3_o rd_req_4_i rd_ack_4_o
rd_done_4_o start_read_addr_4_i
bytes_to_read_4_i
ဗီဒီယို_rdata_4_o
rdata_valid_4_o wr_req_1_i wr_ack_1_o
wr_done_1_o start_write_addr_1_i
bytes_to_write_1_i
video_wdata_1_i
wdata_valid_1_i wr_req_2_i

Direction Output Input Output
အထွက် Input
ထည့်သွင်းခြင်း။
အထွက်
Output Input အထွက်
အထွက် Input
ထည့်သွင်းခြင်း။
အထွက်
Output Input အထွက်
အထွက် Input
ထည့်သွင်းခြင်း။
အထွက်
Output Input အထွက်
အထွက် Input
ထည့်သွင်းခြင်း။
ထည့်သွင်းခြင်း။
Input Input

အကျယ်
[(g_AXI_AWIDTH-1):0] [(g_RD_CHANNEL2_AXI_BUFF_AWIDTH + 3) – 1 : 0] [(g_RD_CHANNEL2_VIDEO_DATA_WIDTH1):0] [(g_AXI_AWIDTH-1):0] [(g_RD_CHANNEL3_AXI_BUFF_AW) – CHANNEL_3ID DATA_WIDTH1 ):0] [(g_AXI_AWIDTH-3):1] [(g_RD_CHANNEL0_AXI_BUFF_AWIDTH + 1) – 0 : 4] [(g_RD_CHANNEL3_VIDEO_DATA_WIDTH1):0] [(g_AXI_AWIDTH-4):1] [(g_WR_BUFF_AWIDTH-0_AWID_AXI) ] [(g_WR_CHANNEL1_VIDEO_DATA_WIDTH0):1]

ဖော်ပြချက် Read ချန်နယ်မှ အချက်အလက်မှန်ကန်ကြောင်း ဖတ်ရန် 1 Master 2 Arbiter မှ တောင်းဆိုချက်ကို ဖတ်ရန် တောင်းဆိုချက်ကို ဖတ်ပါ Master 2 မှ တောင်းဆိုချက်ကို ဖတ်ရန် ပြီးစီးအောင်ဖတ်ရန် Master 2 DDR လိပ်စာသို့ ဖတ်ရှုရန် စတင်ရမည့်နေရာမှ read channel 2 Bytes ဖတ်ရှုရန် ချန်နယ် 2 ဗီဒီယိုဒေတာကို ဖတ်ရန် ဖတ်ရှုခြင်းချန်နယ်မှထွက်ရှိမှုကို 2 ဖတ်ပြီးသောချန်နယ်မှ မှန်ကန်သောဒေတာကိုဖတ်ပါ 2 Master 3 Arbiter ထံမှတောင်းဆိုချက်ကိုဖတ်ရန် တောင်းဆိုချက်ကိုဖတ်ပါ Master 3 မှဖတ်ရန်တောင်းဆိုမှုအား ပြီးဆုံးအောင်ဖတ်ရန် Master 3 DDR လိပ်စာသို့ ဖတ်ရှုရန်စတင်ရမည့်နေရာမှ ဖတ်ရှုရန်ချန်နယ် 3 Bytes ကိုဖတ်ရန်အတွက် စတင်ရမည်ဖြစ်ပြီး ချန်နယ် 3 ဖတ်ရှုခြင်းချန်နယ် 3 ဖတ်ရှုခြင်းချန်နယ် 3 ဖတ်ရှုခြင်းချန်နယ် 4 မှမှန်ကန်သောဒေတာကိုဖတ်ပါ 4 Master 4 Arbiter ထံမှတောင်းဆိုချက်ကိုဖတ်ရှုရန် တောင်းဆိုချက်ကိုဖတ်ပါ Master 4 Arbiter ထံမှတောင်းဆိုချက်ကိုဖတ်ပါ ပြီးစီးအောင်ဖတ်ရန် Master 4 DDR လိပ်စာသို့ ဖတ်ရှုရမည့်နေရာမှ ချန်နယ် 4 Bytes ဖတ်ရန်စတင်ရမည့်နေရာ ဖတ်ရှုခြင်းချန်နယ် 4 ဖတ်ရှုခြင်းချန်နယ်မှ ဗီဒီယိုဒေတာထွက်ရှိမှု 1 ဖတ်ရှုချန်နယ်မှ တရားဝင်ဒေတာကိုဖတ်ပါ 1 Master 1 Arbiter မှ တောင်းဆိုချက်ကို ရေးသားရန် Master 1 Arbiter မှ တောင်းဆိုချက်ကို ရေးရန် တောင်းဆိုချက် ပြီးဆုံးမှုအား Master 1 DDR လိပ်စာသို့ ရေးရန် စာရေးရန် ချန်နယ် 1 မှ ဖြစ်ပေါ်လာမည့် စာရေးရန် ရေးရန်ချန်နယ် XNUMX မှ ရေးသားရမည့် ဘိုက်များ ရေးရန် ချန်နယ် XNUMX ဗီဒီယိုဒေတာ ထည့်သွင်းခြင်း။
ချန်နယ် 1 ရေးရန် အချက်အလက်များ မှန်ကန်ကြောင်း ရေးသားရန် Master 1 ထံမှ တောင်းဆိုချက်ကို ရေးပါ။

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

6

DDR AXI Arbiter

အချက်ပြအမည် wr_ack_2_o

ဦးတည်ချက် Output

wr_done_2_o start_write_addr_2_i

အထွက် Input

bytes_to_write_2_i

ထည့်သွင်းခြင်း။

video_wdata_2_i

ထည့်သွင်းခြင်း။

wdata_valid_2_i AXI I/F အချက်ပြမှုများ လိပ်စာချန်နယ် m_arid_o ကိုဖတ်ပါ။

input ကို output ကို

m_araddr_o

အထွက်

m_arlen_o

အထွက်

m_arsize_o m_arburst_o

Output အထွက်

m_arlock_o

အထွက်

m_arcache_o

အထွက်

m_arprot_o

အထွက်

အကျယ်
[(g_AXI_AWIDTH-1):0] [(g_WR_CHANNEL2_AXI_BUFF_AWIDTH + 3) – 1 : 0] [(g_WR_CHANNEL2_VIDEO_DATA_WIDTH1):0]

ဖော်ပြချက် Master 2 ထံမှ တောင်းဆိုချက်ကို ရေးရန် Arbiter မှ အသိအမှတ်ပြုမှု စာရေးပါ Master 2 DDR လိပ်စာသို့ စာရေးရန် လိုအပ်သည့် စာရေးချန်နယ် 2 Bytes မှ ရေးရန် ချန်နယ် 2 ရေးရန် ဗီဒီယိုဒေတာ ထည့်သွင်းရန် ချန်နယ် 2
ရေးရန် အချက်အလက် တရားဝင်ရေးရန် ချန်နယ် ၂

[3:0] [(g_AXI_AWIDTH-1):0] [3:0] [2:0] [1:0] [1:0] [3:0] [2:0]

လိပ်စာ ID ကိုဖတ်ပါ။ သက်သေခံခြင်း။ tag signals များ၏ read address အုပ်စုအတွက်။
လိပ်စာဖတ်ပါ။ ဆက်တိုက်ဖတ်ပြီး အရောင်းအဝယ်၏ ကနဦးလိပ်စာကို ပေးသည်။ ပေါက်ကွဲမှု၏ အစလိပ်စာကိုသာ ပေးထားသည်။
အလျား။ ဆက်တိုက် လွှဲပြောင်းမှုအရေအတွက် အတိအကျကို ပေးသည်။ ဤအချက်အလက်သည် လိပ်စာနှင့်ဆက်စပ်နေသော ဒေတာလွှဲပြောင်းမှုအရေအတွက်ကို ဆုံးဖြတ်ပေးသည်။
ပေါက်ကွဲအရွယ်အစား။ ပေါက်ကွဲမှုတစ်ခုချင်းစီ၏အရွယ်အစား
Burst အမျိုးအစား။ အရွယ်အစား အချက်အလက်နှင့် တွဲလျက်၊ ဆက်တိုက်အတွင်း လွှဲပြောင်းမှုတစ်ခုစီအတွက် လိပ်စာကို မည်ကဲ့သို့ တွက်ချက်ကြောင်း အသေးစိတ်ဖော်ပြသည်။
2'b01 à Incremental address burst သို့ ပြင်ဆင်သည်။
လော့ခ်အမျိုးအစား။ လွှဲပြောင်းခြင်း၏ အက်တမ်ဝိသေသလက္ခဏာများအကြောင်း နောက်ထပ်အချက်အလက်များကို ပေးပါသည်။
2'b00 à Normal Access သို့ ပုံသေ
Cache အမျိုးအစား။ လွှဲပြောင်းခြင်း၏ ကက်ရှ်နိုင်သော လက္ခဏာများအကြောင်း အပိုအချက်အလက်များကို ပေးသည်။
4'b0000 à Non-cacheable နှင့် non-bufferable
ကာကွယ်မှုအမျိုးအစား။ ငွေပေးငွေယူအတွက် အကာအကွယ်ယူနစ် အချက်အလက်ကို ပေးသည်။
3'b000 à ပုံမှန်၊ လုံခြုံသောဒေတာဝင်ရောက်ခွင့်ကို ပုံသေသတ်မှတ်ထားသည်။

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

7

DDR AXI Arbiter
အချက်ပြအမည် m_arvalid_o

ဦးတည်ချက် Output

အကျယ်

m_arready_i

ထည့်သွင်းခြင်း။

Data Channel ကိုဖတ်ပါ။

m_rid_i

ထည့်သွင်းခြင်း။

[3:0]

m_rdata_i m_rresp_i
m_rlast_i m_rvalid_i

Input Input

[(g_AXI_DWIDTH-1):0] [1:0]

Input Input

m_rready_o

အထွက်

လိပ်စာ Channel ရေးပါ။

m_awid_o

အထွက်

m_awaddr_o

အထွက်

[3:0] [(g_AXI_AWIDTH-1):0]

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

ဖော်ပြချက် လိပ်စာ မှန်ကန်ကြောင်း ဖတ်ရှုပါ။
HIGH သောအခါတွင်၊ ဖတ်ပြီးသောလိပ်စာနှင့် ထိန်းချုပ်မှုအချက်အလက်သည် တရားဝင်ပြီး m_arready၊ လိပ်စာအသိအမှတ်ပြုအချက်ပြသည့်အထိ မြင့်မားနေမည်ဖြစ်သည်။
`1′ = လိပ်စာနှင့် ထိန်းချုပ်မှု အချက်အလက် မှန်ကန်သည်။
`0′ = လိပ်စာနှင့် ထိန်းချုပ်မှု အချက်အလက် မမှန်ပါ။ လိပ်စာအဆင်သင့်ဖတ်ပါ။ ကျွန်သည် လိပ်စာတစ်ခုနှင့် ဆက်စပ်ထိန်းချုပ်မှု အချက်ပြမှုများကို လက်ခံရန် အသင့်ဖြစ်နေပါပြီ-
1 = ကျွန်အဆင်သင့်
0 = ကျွန် မဖြစ်သေးဘူး။
ID ကိုဖတ်ပါ။ tag. အမှတ်သညာ tag အချက်ပြမှု ဒေတာအုပ်စုကို ဖတ်ပါ။ m_rid တန်ဖိုးကို Slave မှထုတ်ပေးပြီး ၎င်းသည် တုံ့ပြန်သည့် read transaction ၏ m_arid တန်ဖိုးနှင့် ကိုက်ညီရပါမည်။ အချက်အလက်ဖတ်ပါ။ တုံ့ပြန်ချက်ကိုဖတ်ပါ။
လွှဲပြောင်းဖတ်ရှုမှုအခြေအနေ။ ခွင့်ပြုနိုင်သော တုံ့ပြန်မှုများမှာ OKAY၊ EXOKAY၊ SLVERR နှင့် DECERR တို့ဖြစ်သည်။ နောက်ဆုံးဖတ်ပါ။
ဆက်တိုက်ဖတ်ပြီး နောက်ဆုံး လွှဲပြောင်းမှု။ ခိုင်လုံစွာဖတ်ပါ။ လိုအပ်သော ဖတ်ရှုမှုဒေတာကို ရနိုင်သည်နှင့် ဖတ်ရှုခြင်းလွှဲပြောင်းခြင်း ပြီးမြောက်နိုင်သည်-
1 = ဒေတာကို ဖတ်ရှုနိုင်ပါသည်။
0 = ဒေတာကို ဖတ်၍မရပါ။ အဆင်သင့်ဖတ်ပါ။ မာစတာသည် ဖတ်ရှုဒေတာနှင့် တုံ့ပြန်မှုအချက်အလက်များကို လက်ခံနိုင်သည်-
1= ဆရာကြီး အဆင်သင့်
0 = သခင် မဖြစ်သေးဘူး။
လိပ်စာ ID ရေးပါ။ သက်သေခံခြင်း။ tag ရေးမှတ်ထားသော လိပ်စာအုပ်စုအတွက် အချက်ပြမှုများ။ လိပ်စာရေးပါ။ ဆက်တိုက် ငွေလွှဲမှုတွင် ပထမဆုံး ငွေလွှဲခြင်း၏ လိပ်စာကို ပေးသည်။ ဆက်နွယ်နေသော ထိန်းချုပ်အချက်ပြမှုများကို ဆက်တိုက်အတွင်း ကျန်ရှိသော လွှဲပြောင်းမှုများ၏ လိပ်စာများကို ဆုံးဖြတ်ရန် အသုံးပြုပါသည်။
8

DDR AXI Arbiter
အချက်ပြအမည် m_awlen_o

ဦးတည်ချက် Output

အကျယ် [3:0]

m_awsize_o

အထွက်

[2:0]

m_awburst_o

အထွက်

[1:0]

m_awlock_o

အထွက်

[1:0]

m_awcache_o

အထွက်

[3:0]

m_awprot_o

အထွက်

[2:0]

m_awvalid_o

အထွက်

ဖော်ပြချက်
အလျား။ ဆက်တိုက် လွှဲပြောင်းမှုအရေအတွက် အတိအကျကို ပေးသည်။ ဤအချက်အလက်သည် လိပ်စာနှင့်ဆက်စပ်နေသော ဒေတာလွှဲပြောင်းမှုအရေအတွက်ကို ဆုံးဖြတ်ပေးသည်။
ပေါက်ကွဲအရွယ်အစား။ ပေါက်ကွဲမှုတစ်ခုချင်းစီ၏အရွယ်အစား။ Byte လမ်းကြော strobes များသည် မည်သည့် byte လမ်းကြောများကို အပ်ဒိတ်လုပ်ရန် အတိအကျ ဖော်ပြသည်။
ဒေတာလွှဲပြောင်းမှုတစ်ခုလျှင် 3'b011 à 8 bytes သို့မဟုတ် 64-bit လွှဲပြောင်းမှုသို့ ပုံသေသတ်မှတ်ထားသည်။
Burst အမျိုးအစား။ အရွယ်အစား အချက်အလက်နှင့် တွဲလျက်၊ ဆက်တိုက်အတွင်း လွှဲပြောင်းမှုတစ်ခုစီအတွက် လိပ်စာကို မည်ကဲ့သို့ တွက်ချက်ကြောင်း အသေးစိတ်ဖော်ပြသည်။
2'b01 à Incremental address burst သို့ ပြင်ဆင်သည်။
လော့ခ်အမျိုးအစား။ လွှဲပြောင်းခြင်း၏ အက်တမ်ဝိသေသလက္ခဏာများအကြောင်း နောက်ထပ်အချက်အလက်များကို ပေးပါသည်။
2'b00 à Normal Access သို့ ပုံသေ
Cache အမျိုးအစား။ bufferable၊ cacheable၊ write-through၊ write-back, and allocate attribute များကို ညွှန်ပြသည်။
4'b0000 à Non-cacheable နှင့် non-bufferable
ကာကွယ်မှုအမျိုးအစား။ ငွေပေးငွေယူ၏ပုံမှန်၊ အခွင့်ထူးခံ သို့မဟုတ် လုံခြုံသောကာကွယ်မှုအဆင့်နှင့် ငွေပေးငွေယူသည် ဒေတာဝင်ရောက်ခွင့် သို့မဟုတ် ညွှန်ကြားချက်ဝင်ရောက်ခြင်းရှိမရှိကို ဖော်ပြသည်။
3'b000 à ပုံမှန်၊ လုံခြုံသောဒေတာဝင်ရောက်ခွင့်ကို ပုံသေသတ်မှတ်ထားသည်။
လိပ်စာမှန်ကန်ကြောင်းရေးပါ။ မှန်ကန်သော လိပ်စာနှင့် ထိန်းချုပ်မှုကို ညွှန်ပြသည်။
အချက်အလက်ရရှိနိုင်ပါသည်-
1 = လိပ်စာနှင့် ထိန်းချုပ်မှုဆိုင်ရာ အချက်အလက်များကို ရရှိနိုင်သည်။
0 = လိပ်စာနှင့် ထိန်းချုပ်မှု အချက်အလက် မရရှိနိုင်ပါ။ m_awready သည် လိပ်စာ အသိအမှတ်ပြု အချက်ပြသည့်တိုင်အောင် လိပ်စာနှင့် ထိန်းချုပ်မှု အချက်အလက်သည် တည်ငြိမ်နေပါသည်။

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

9

DDR AXI Arbiter

အချက်ပြအမည် m_awready_i

ဦးတည်ချက်ထည့်သွင်းခြင်း။

အကျယ်

Data Channel ရေးပါ။

m_wid_o

အထွက်

[3:0]

m_wdata_o m_wstrb_o

Output အထွက်

[(g_AXI_DWIDTH-1):0]AXI_DWDITH ဘောင်
[7:0]

m_wlast_o m_wvalid_o

Output အထွက်

m_wready_i

ထည့်သွင်းခြင်း။

တုံ့ပြန်မှုချန်နယ် အချက်ပြမှုများကို ရေးပါ။

m_bid_i

ထည့်သွင်းခြင်း။

[3:0]

m_bresp_i m_bvalid_i

ထည့်သွင်းခြင်း။

[1:0]

ထည့်သွင်းခြင်း။

m_bready_o

အထွက်

ဖော်ပြချက်လိပ်စာ အဆင်သင့်ရေးပါ။ ကျွန်သည် လိပ်စာတစ်ခုနှင့် ဆက်စပ်ထိန်းချုပ်မှု အချက်ပြမှုများကို လက်ခံရန် အဆင်သင့်ဖြစ်ကြောင်း ညွှန်ပြသည်-
1 = ကျွန်အဆင်သင့်
0 = ကျွန် မဖြစ်သေးဘူး။
ID ရေးပါ။ tag. အမှတ်သညာ tag write data transfer ၏ ။ m_wid တန်ဖိုးသည် ရေးထားသော အရောင်းအဝယ်၏ m_awid တန်ဖိုးနှင့် ကိုက်ညီရပါမည်။ အချက်အလက်ရေးပါ။
ဓားရေးထိုးပါ။ ဤအချက်ပြမှုသည် မန်မိုရီတွင် အပ်ဒိတ်လုပ်ရမည့် ဘိုက်လမ်းကြောင်းများကို ညွှန်ပြသည်။ write data bus ရှစ်ခုစီအတွက် write strobe တစ်ခုစီ ပါရှိပါသည်။ နောက်ဆုံး လွှဲပြောင်းရေးသည် ဆက်တိုက်။ တရားဝင်အောင်ရေးပါ။ မှန်ကန်သော စာရေးဒေတာနှင့် strobes များကို ရနိုင်သည်-
1 = ဒေတာနှင့် strobes ရေးရန်
0 = data နှင့် strobes ရေး၍မရပါ။ အဆင်သင့်ရေးပါ။ Slave သည် write data ကိုလက်ခံနိုင်သည်- 1 = slave အဆင်သင့်ဖြစ်နေပါပြီ။
0 = ကျွန် မဖြစ်သေးဘူး။
တုံ့ပြန်မှု ID သက်သေခံခြင်း။ tag ရေးသားတုံ့ပြန်မှု၏ m_bid တန်ဖိုးသည် slave တုံ့ပြန်သည့် write transaction ၏ m_awid တန်ဖိုးနှင့် တူညီရပါမည်။ တုံ့ပြန်ရေးသားပါ။ အရောင်းအဝယ်အခြေအနေ။ ခွင့်ပြုနိုင်သော တုံ့ပြန်မှုများမှာ OKAY၊ EXOKAY၊ SLVERR နှင့် DECERR တို့ဖြစ်သည်။ တုံ့ပြန်ချက်ကို မှန်ကန်ကြောင်း ရေးပါ။ မှန်ကန်သော စာဖြင့် တုံ့ပြန်မှုကို ရနိုင်သည်-
1 = ရေးရန် တုံ့ပြန်မှု ရနိုင်သည်။
0 = ရေးရန် တုံ့ပြန်မှု မရရှိနိုင်ပါ။ တုံ့ပြန်မှု အဆင်သင့်ဖြစ်နေပါပြီ။ မာစတာက တုံ့ပြန်မှုကို လက်ခံနိုင်တယ်။
၁ = သခင် မဖြစ်သေးဘူး။
0 = သခင် မဖြစ်သေးဘူး။

အောက်ဖော်ပြပါပုံသည် DDR AXI arbiter ၏အတွင်းပိုင်းဘလောက်ပုံစံကိုပြသသည်။

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

10

DDR AXI Arbiter
အောက်ဖော်ပြပါပုံသည် DDR AXI arbiter ၏အတွင်းပိုင်းဘလောက်ပုံစံကိုပြသသည်။ ပုံ 4 · DDR AXI Arbiter ၏ အတွင်းပိုင်း Block Diagram

read_req_(x)_i input တွင် မြင့်မားသော input signal ကိုရရှိသောအခါ read channel တစ်ခုစီသည် အစပျိုးသည်။ ပြီးတော့ အဲဒါ

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

11

DDR AXI Arbiter
read_req_(x)_i input တွင် မြင့်မားသော input signal ကိုရရှိသောအခါ read channel တစ်ခုစီသည် အစပျိုးသည်။ ၎ampပြင်ပမာစတာမှ ထည့်သွင်းသည့် input များကို ဖတ်ရန် စတင်သည့် AXI လိပ်စာနှင့် ဘိုက်များ။ ချန်နယ်သည် read_ack_(x)_o ကို ခလုတ်နှိပ်ခြင်းဖြင့် ပြင်ပမာစတာကို အသိအမှတ်ပြုသည်။ ချန်နယ်သည် DDR-SDRAM မှဒေတာကိုဖတ်ရန် လိုအပ်သော AXI ငွေပေးငွေယူများကို ထုတ်ပေးပါသည်။ 64-bit AXI ဖော်မတ်ဖြင့် ဖတ်သောဒေတာကို အတွင်းပိုင်းကြားခံတွင် သိမ်းဆည်းထားသည်။ လိုအပ်သောဒေတာကို အတွင်းပိုင်းကြားခံတွင် သိမ်းဆည်းပြီးနောက်၊ un-packer module ကိုဖွင့်ထားသည်။ un-packer module သည် ex အတွက် လိုအပ်သော 64-bit စကားလုံးတစ်လုံးစီကို output data bit length သို့ ထုပ်ပိုးပေးပါသည်။ample ချန်နယ်ကို 32-bit output data width အဖြစ် သတ်မှတ်ပြီးပါက၊ 64-bit စကားလုံးတစ်လုံးစီကို 32-bit output data စကားလုံးနှစ်လုံးအဖြစ် ပေးပို့ပါသည်။ 1-bit ချန်နယ်ဖြစ်သည့် ချန်နယ် 24 အတွက်၊ un-packer သည် 64-bit စကားလုံးတစ်လုံးစီကို 24-bit output data အဖြစ်သို့ ပြန်ဖွင့်သည်။ 64 သည် 24 ၏ အကြိမ်အရေအတွက်မဟုတ်သောကြောင့်၊ read channel 1 အတွက် un-packer သည် 64-bit စကားလုံးသုံးလုံးအုပ်စုတစ်စုကို ပေါင်းစပ်ပြီး 24-bit data စကားလုံးရှစ်လုံးကိုထုတ်လုပ်ရန်။ ၎င်းသည် ပြင်ပမာစတာမှ တောင်းဆိုထားသော ဒေတာဘိုက်များကို 1 ဖြင့် ပိုင်းခြားနိုင်စေမည့် read channel 8 တွင် ကန့်သတ်ချက်တစ်ခုရှိသည်။ Read channels 2၊ 3 နှင့် 4 ကို 8-bit၊ 24-bit နှင့် 32-bit data width အဖြစ် သတ်မှတ်နိုင်သည်၊ g_RD_CHANNEL(X) _VIDEO_DATA_WIDTH ကမ္ဘာလုံးဆိုင်ရာ ဖွဲ့စည်းမှု ကန့်သတ်ချက်ဖြင့် သတ်မှတ်သည်။ ၎င်းတို့ကို 24-bit အဖြစ် configure လုပ်ပါက၊ အထက်ဖော်ပြပါ ကန့်သတ်ချက်များသည် ၎င်းတို့တစ်ခုစီနှင့်လည်း သက်ဆိုင်မည်ဖြစ်သည်။ သို့သော် ၎င်းတို့ကို 8-bit သို့မဟုတ် 32-bit အဖြစ် ပြင်ဆင်သတ်မှတ်ပါက၊ 64 သည် 32 နှင့် 8 ၏ မြှောက်စားခြင်းဖြစ်သောကြောင့် ကန့်သတ်ချက်မရှိပါ။ ဤကိစ္စများတွင် 64-bit စကားလုံးတစ်လုံးစီကို 32-bit data စကားလုံးနှစ်လုံး သို့မဟုတ် 8 XNUMX လုံးအဖြစ် ထုပ်ပိုးထားသည်။ -bit data စကားလုံးများ။
Read Channel 1 သည် DDR-SDRAM မှဖတ်သော 64-bit ဒေတာစကားလုံးများကို 24-48-bit စကားလုံးအတွဲများအတွင်း အစီအစဥ်ဖြင့် DDR-SDRAM မှဖတ်ထားသော 64-bit ဒေတာစကားလုံးများကို ထုပ်ပိုးပြီး ၎င်းသည် read channel 48 ၏ အတွင်းဘက်ကြားခံတွင် 64 လုံးရှိသည့်အခါတိုင်း၊ un-packer သည် 1-bit output data ကိုပေးရန် ၎င်းတို့ကို စတင်ထုပ်ပိုးသည်။ ဖတ်ရန်တောင်းဆိုထားသောဒေတာဘိုက်များသည် 24 48-bit စကားလုံးများထက်နည်းပါက DDR-SDRAM မှဒေတာအပြည့်အစုံကိုဖတ်ပြီးမှသာ un-packer ကိုဖွင့်ထားသည်။ ကျန်ရှိသော လမ်းကြောင်းသုံးခုတွင်၊ Un-packer သည် DDR-SDRAM မှ တောင်းဆိုထားသော ဘိုက်အရေအတွက် အပြည့်အစုံကို ဖတ်ပြီးမှသာ ဖတ်ရှုဒေတာကို စတင်ပေးပို့ပါသည်။
24-bit output width အတွက် ပြင်ဆင်ထားသော read channel တစ်ခုသည် စတင်ဖတ်သည့်လိပ်စာကို 24-bytes ဘောင်သို့ ချိန်ညှိရပါမည်။ un-packer သည် 64-bit output စကားလုံး ရှစ်လုံးထုတ်လုပ်ရန် 24-bit စကားလုံးသုံးလုံးအုပ်စုကို ထုပ်ပိုးထားသည့် ကန့်သတ်ချက်ကို ကျေနပ်စေရန် ၎င်းကို လိုအပ်သည်။
တောင်းဆိုထားသော ဘိုက်များကို ပြင်ပမာစတာထံ ပေးပို့ပြီးနောက် ဖတ်ပြီးသော ချန်နယ်အားလုံးသည် ပြင်ပမာစတာထံ ထုတ်ပေးသည်။
ရေးရန်ချန်နယ်များတွင်၊ ပြင်ပမာစတာသည် သီးခြားချန်နယ်သို့ လိုအပ်သောဒေတာကို ထည့်သွင်းရပါမည်။ write channel သည် input data ကို 64-bit စကားလုံးများအဖြစ်ထုပ်ပိုးပြီး internal storage တွင်သိမ်းဆည်းထားသည်။ လိုအပ်သောဒေတာကို သိမ်းဆည်းပြီးနောက်၊ ပြင်ပမာစတာသည် ရေးရန်စတင်သည့်လိပ်စာနှင့် ဘိုက်များနှင့်အတူ ရေးရန်တောင်းဆိုမှုကို ပေးဆောင်ရမည်ဖြစ်သည်။ ၎ampဤထည့်သွင်းမှုများကြောင့်၊ ရေးချန်နယ်သည် ပြင်ပမာစတာကို အသိအမှတ်ပြုသည်။ ၎င်းနောက်၊ ချန်နယ်သည် သိမ်းဆည်းထားသောဒေတာကို DDR-SDRAM တွင်ရေးရန် AXI ရေးငွေလွှဲမှုများကို ထုတ်ပေးသည်။ တောင်းဆိုထားသော ဘိုက်များကို DDR-SDRAM တွင်ရေးပြီးသည်နှင့် စာရေးလမ်းကြောင်းများအားလုံးသည် ပြင်ပမာစတာထံသို့ ရေးသွင်းပြီးသော အထွက်ကို ထုတ်ပေးသည်။ ရေးရန်တောင်းဆိုချက်တစ်ခုအား မည်သည့်စာရေးချန်နယ်သို့မဆို ပေးဆောင်ပြီးနောက်၊ wr_done_(x)_o ၏ အခိုင်အမာပြောဆိုချက်ဖြင့် လက်ရှိငွေပေးငွေယူပြီးစီးမှုကို ညွှန်ပြသည့်အချိန်အထိ ဒေတာအသစ်များကို ရေးချန်နယ်သို့ မရေးရပါ။
ချန်နယ် 1 နှင့် 2 ကို g_WR_CHANNEL(X)_VIDEO_DATA_WIDTH ကမ္ဘာလုံးဆိုင်ရာဖွဲ့စည်းမှုကန့်သတ်ဘောင်မှဆုံးဖြတ်သော 8-bit၊ 24-bit နှင့် 32-bit ဒေတာအကျယ်အဖြစ် ရေးရန် စီစဉ်နိုင်ပါသည်။ ၎င်းတို့ကို 24-bit အဖြစ် ပြင်ဆင်သတ်မှတ်ထားပါက၊ အတွင်းထုပ်ပိုးမှုတွင် 24-bit ဒေတာစကားလုံးသုံးလုံးကို ထုတ်လုပ်ရန်အတွက် အတွင်းထုပ်ပိုးမှုတွင် 64-bit ဒေတာစကားလုံးရှစ်လုံးကို ထုပ်ပိုးထားသောကြောင့် ရေးသားမည့် bytes သည် ရှစ်ခု၏ မြှောက်ကိန်းဖြစ်ရပါမည်။ သို့သော် ၎င်းတို့ကို 8-bit သို့မဟုတ် 32-bit အဖြစ် configure လုပ်ပါက၊ ထိုကဲ့သို့ ကန့်သတ်ချက်မရှိပါ။
32-bit ချန်နယ်တစ်ခုအတွက် အနည်းဆုံး 32-bit စကားလုံးနှစ်လုံးကို ဖတ်ရပါမည်။ 8-bit ချန်နယ်တစ်ခုအတွက်၊ arbiter module မှ ပံ့ပိုးပေးသော padding မရှိသောကြောင့် အနည်းဆုံး 8-bit စကားလုံးများကို ဖတ်ရန် လိုအပ်ပါသည်။ ဖတ်ရှုရေး ချန်နယ်များအားလုံးတွင်၊ အတွင်းပိုင်းကြားခံများ၏ အတိမ်အနက်သည် မျက်နှာပြင်အလျားလိုက် အကျယ်၏ များပြားသည်။ အတွင်းပိုင်းကြားခံအတိမ်အနက်ကို အောက်ပါအတိုင်း တွက်ချက်ပါသည်။
g_RD_CHANNEL(X)_HORIZONTAL_RESOLUTION* g_RD_CHANNEL(X)_VIDEO_DATA_WIDTH * g_RD_CHANNEL(X)_BUFFER_LINE_STORAGE) / g_AXI_DWIDTH
X = ချန်နယ်နံပါတ်

အတွင်းပိုင်းကြားခံ အကျယ်ကို AXI ဒေတာဘတ်စ် အကျယ်အားဖြင့် ဆုံးဖြတ်သည် ဆိုသည်မှာ၊ ဖွဲ့စည်းမှုဘောင် ကန့်သတ်ချက်ဖြစ်သည်။

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

12

DDR AXI Arbiter

အတွင်းပိုင်းကြားခံ အကျယ်ကို AXI ဒေတာဘတ်စ် အကျယ်အားဖြင့် ဆုံးဖြတ်သည် ၊ ဖွဲ့စည်းမှုဘောင် ဘောင် g_AXI_DWIDTH ဖြစ်သည်။
AXI သည် ARM AMBA AXI သတ်မှတ်ချက်များနှင့်အညီ အရောင်းအ၀ယ်ပြုလုပ်သည် ဒေတာလွှဲပြောင်းမှုတစ်ခုစီအတွက် ငွေပေးငွေယူအရွယ်အစားကို 64-bit သို့ ပုံသေသတ်မှတ်ထားသည်။ အဆိုပါပိတ်ဆို့သည် AXI အရောင်းအ ၀ ယ်များကိုထုတ်ပေးသည် 16 ကြိမ်၏ပုံသေပေါက်ကွဲသံအရှည်။ ပိတ်ဆို့ခြင်းသည် 4 KByte ၏ AXI လိပ်စာနယ်နိမိတ်ကို ဖြတ်သွားခြင်းရှိမရှိကိုလည်း စစ်ဆေးပါသည်။ ပေါက်ကွဲခြင်းတစ်ခုသည် 4 KByte နယ်နိမိတ်ကို ဖြတ်သွားပါက၊ ပေါက်ကွဲခြင်းကို 2 KByte နယ်နိမိတ်တွင် ၂ ပိုင်း ကွဲသွားပါသည်။

3.3

Configuration Parameters
အောက်ပါဇယားသည် DDR AXI Arbiter ၏ ဟာ့ဒ်ဝဲအကောင်အထည်ဖော်မှုတွင် အသုံးပြုသည့် ဖွဲ့စည်းမှုဘောင်များကို စာရင်းပြုစုထားသည်။ ၎င်းတို့သည် ယေဘုယျဘောင်များဖြစ်ပြီး လျှောက်လွှာလိုအပ်ချက်များအပေါ်အခြေခံ၍ ကွဲပြားနိုင်သည်။

ဇယား 2 · ဖွဲ့စည်းမှု ကန့်သတ်ချက်များ
အမည် g_AXI_AWIDTH g_AXI_DWIDTH g_RD_CHANNEL1_AXI_BUFF_AWIDTH
g_RD_CHANNEL2_AXI_BUFF_AWIDTH
g_RD_CHANNEL3_AXI_BUFF_AWIDTH
g_RD_CHANNEL4_AXI_BUFF_AWIDTH
g_WR_CHANNEL1_AXI_BUFF_AWIDTH
g_WR_CHANNEL2_AXI_BUFF_AWIDTH
g_RD_CHANNEL1_HORIZONTAL_RESOLUTION g_RD_CHANNEL2_HORIZONTAL_RESOLUTION g_RD_CHANNEL3_HORIZONTAL_RESOLUTION g_RD_CHANNEL4_HORIZONTAL_RESOLUTION g_WR_CHANNEL1_HORIZONTAL_RESOLUTION ဗီဒီယို g_HORIZONTAL_2CHANNEL WIDTH g_RD_CHANNEL1_VIDEO_DATA_WIDTH g_RD_CHANNEL2_VIDEO_DATA_WIDTH g_RD_CHANNEL3_VIDEO_DATA_WIDTH g_WR_CHANNEL4_VIDEO_DATA_WIDTH g_WR_CHANNEL1_VIDEO_DATA_WIDTH g_RD_CHANNEL2_BUFFER_LINE_STORAGE

ဖော်ပြချက်
AXI လိပ်စာ ဘတ်စ်ကား အကျယ်
AXI ဒေတာ ဘတ်စ်ကား အကျယ်
AXI ဖတ်သည့်ဒေတာကို သိမ်းဆည်းပေးသည့် Read Channel 1 အတွင်းပိုင်းကြားခံအတွက် လိပ်စာဘတ်စ်အကျယ်။
AXI ဖတ်သည့်ဒေတာကို သိမ်းဆည်းပေးသည့် Read Channel 2 အတွင်းပိုင်းကြားခံအတွက် လိပ်စာဘတ်စ်အကျယ်။
AXI ဖတ်သည့်ဒေတာကို သိမ်းဆည်းပေးသည့် Read Channel 3 အတွင်းပိုင်းကြားခံအတွက် လိပ်စာဘတ်စ်အကျယ်။
AXI ဖတ်သည့်ဒေတာကို သိမ်းဆည်းပေးသည့် Read Channel 4 အတွင်းပိုင်းကြားခံအတွက် လိပ်စာဘတ်စ်အကျယ်။
AXI ရေးသားသည့်ဒေတာကို သိမ်းဆည်းပေးသည့် write Channel 1 အတွင်းပိုင်းကြားခံအတွက် လိပ်စာဘတ်စ်အကျယ်။
AXI ရေးသားသည့်ဒေတာကို သိမ်းဆည်းပေးသည့် write Channel 2 အတွင်းပိုင်းကြားခံအတွက် လိပ်စာဘတ်စ်အကျယ်။
ချန်နယ် 1 ကိုဖတ်ရန်အတွက် အလျားလိုက် ကြည်လင်ပြတ်သားမှုရှိသော ဗီဒီယိုကို ပြသခြင်း။
ချန်နယ် 2 ကိုဖတ်ရန်အတွက် အလျားလိုက် ကြည်လင်ပြတ်သားမှုရှိသော ဗီဒီယိုကို ပြသခြင်း။
ချန်နယ် 3 ကိုဖတ်ရန်အတွက် အလျားလိုက် ကြည်လင်ပြတ်သားမှုရှိသော ဗီဒီယိုကို ပြသခြင်း။
ချန်နယ် 4 ကိုဖတ်ရန်အတွက် အလျားလိုက် ကြည်လင်ပြတ်သားမှုရှိသော ဗီဒီယိုကို ပြသခြင်း။
ချန်နယ် 1 ရေးရန် အလျားလိုက် ကြည်လင်ပြတ်သားသော ဗီဒီယိုပြသမှု
ချန်နယ် 2 ရေးရန် အလျားလိုက် ကြည်လင်ပြတ်သားသော ဗီဒီယိုပြသမှု
Channel 1 ဗီဒီယို အထွက်ဘစ်အကျယ်ကို ဖတ်ပါ။
Channel 2 ဗီဒီယို အထွက်ဘစ်အကျယ်ကို ဖတ်ပါ။
Channel 3 ဗီဒီယို အထွက်ဘစ်အကျယ်ကို ဖတ်ပါ။
Channel 4 ဗီဒီယို အထွက်ဘစ်အကျယ်ကို ဖတ်ပါ။
ချန်နယ် 1 ဗီဒီယို ထည့်သွင်းမှု ဘစ်အကျယ်ကို ရေးပါ။
ချန်နယ် 2 ဗီဒီယို ထည့်သွင်းမှု ဘစ်အကျယ်ကို ရေးပါ။
အလျားလိုက် လိုင်းများ အရေအတွက် သတ်မှတ်ချက်အရ Channel 1 ကို ဖတ်ရန် အတွင်းပိုင်းကြားခံ၏ အတိမ်အနက်။ ကြားခံ၏အတိမ်အနက်မှာ g_RD_CHANNEL1_HORIZONTAL_RESOLUTION * g_RD_CHANNEL1_VIDEO_DATA_WIDTH * g_RD_CHANNEL1_BUFFER_LINE_STORAGE) / g_AXI_DWIDTH

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

13

DDR AXI Arbiter

3.4

အမည် g_RD_CHANNEL2_BUFFER_LINE_STORAGE g_RD_CHANNEL3_BUFFER_LINE_STORAGE g_RD_CHANNEL4_BUFFER_LINE_STORAGE g_WR_CHANNEL1_BUFFER_LINE_STORAGE g_WR_CHANNEL2_BUFFER_LINE_STORAGE

ဖော်ပြချက်
အလျားလိုက် လိုင်းများ အရေအတွက် သတ်မှတ်ချက်အရ Channel 2 ကို ဖတ်ရန် အတွင်းပိုင်းကြားခံ၏ အတိမ်အနက်။ ကြားခံ၏အတိမ်အနက်မှာ g_RD_CHANNEL2_HORIZONTAL_RESOLUTION * g_RD_CHANNEL2_VIDEO_DATA_WIDTH * g_RD_CHANNEL2_BUFFER_LINE_STORAGE) / g_AXI_DWIDTH
အလျားလိုက် လိုင်းများ အရေအတွက် သတ်မှတ်ချက်အရ Channel 3 ကို ဖတ်ရန် အတွင်းပိုင်းကြားခံ၏ အတိမ်အနက်။ ကြားခံ၏အတိမ်အနက်မှာ g_RD_CHANNEL3_HORIZONTAL_RESOLUTION * g_RD_CHANNEL3_VIDEO_DATA_WIDTH * g_RD_CHANNEL3_BUFFER_LINE_STORAGE) / g_AXI_DWIDTH
အလျားလိုက် လိုင်းများ အရေအတွက် သတ်မှတ်ချက်အရ Channel 4 ကို ဖတ်ရန် အတွင်းပိုင်းကြားခံ၏ အတိမ်အနက်။ ကြားခံ၏အတိမ်အနက်မှာ g_RD_CHANNEL4_HORIZONTAL_RESOLUTION * g_RD_CHANNEL4_VIDEO_DATA_WIDTH * g_RD_CHANNEL4_BUFFER_LINE_STORAGE) / g_AXI_DWIDTH
အလျားလိုက်မျဉ်းကြောင်းများအလိုက် Channel 1 ကိုရေးရန် အတွင်းပိုင်းကြားခံ၏ အတိမ်အနက်။ ကြားခံ၏အတိမ်အနက်မှာ g_WR_CHANNEL1_HORIZONTAL_RESOLUTION * g_WR_CHANNEL1_VIDEO_DATA_WIDTH * g_WR_CHANNEL1_BUFFER_LINE_STORAGE) / g_AXI_DWIDTH
အလျားလိုက်မျဉ်းကြောင်းများအလိုက် Channel 2 ကိုရေးရန် အတွင်းပိုင်းကြားခံ၏ အတိမ်အနက်။ ကြားခံ၏အတိမ်အနက်မှာ g_WR_CHANNEL2_HORIZONTAL_RESOLUTION * g_WR_CHANNEL2_VIDEO_DATA_WIDTH * g_WR_CHANNEL2_BUFFER_LINE_STORAGE) / g_AXI_DWIDTH

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

ပုံ 5 · AXI အင်တာဖေ့စ်မှတဆင့် ရေးသားခြင်း/ဖတ်ခြင်းတွင် အသုံးပြုသည့် အချက်ပြများအတွက် အချိန်ကိုက်ဇယား

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

14

DDR AXI Arbiter
အောက်ဖော်ပြပါပုံသည် ပြင်ပမာစတာမှ ရေးသွင်းသည့်ဒေတာထည့်သွင်းမှုအကြား ချိတ်ဆက်မှုကို ရေးလမ်းကြောင်းနှစ်ခုလုံးအတွက် ဒေတာထည့်သွင်းမှုနှင့်အတူ ချိတ်ဆက်မှုကို ပြသသည်။ ပုံ 6 · Internal Storage တွင် ရေးသားခြင်းအတွက် Timing Diagram
အောက်ဖော်ပြပါပုံသည် ဖတ်ရှုထားသည့် ဒေတာအထွက်အား ပြင်ပမာစတာသို့ ဖတ်ရှုထားသည့် ချန်နယ် 2၊ 3၊ နှင့် 4 အားလုံးအတွက် အကျုံးဝင်သည့် ဒေတာအထွက်နှင့်အတူ ချိတ်ဆက်မှုကို ပြသထားသည်။ ပုံ 7 · DDR AXI Arbiter for Read Channels 2၊ 3 မှရရှိသောဒေတာအတွက် အချိန်ကိုက်ဇယား နှင့် ၄
g_RD_CHANNEL 1_HORIZONTAL_RESOLUTION သည် 1 ထက် ကြီးနေသောအခါတွင် ဖတ်ရှုရန် ဒေတာထွက်ရှိမှုကြားရှိ ချိတ်ဆက်မှုကို ဖော်ပြသည့်ပုံသည် အောက်ပါပုံဖြစ်သည်။ ပုံ 128 · DDR AXI Arbiter Read Channel 256 (8 bytes ထက်များသော) မှတဆင့် လက်ခံရရှိသောဒေတာအတွက် အချိန်ကိုက်ဇယား

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

15

DDR AXI Arbiter
g_RD_CHANNEL 1_HORIZONTAL_RESOLUTION သည် 1 နှင့် ညီမျှသည် (ဤကိစ္စတွင် = 128) ထက်နည်းသောအခါတွင် ဖတ်ရှုရန် ဒေတာအထွက်အား အောက်ပါပုံတွင် ပြထားသည်။ ပုံ 64 · DDR AXI Arbiter Read Channel 9 (1 bytes ထက်နည်းသော သို့မဟုတ် ညီမျှ)

3.5

ခုံတန်းရှည်
DDR Arbiter core ၏လုပ်ဆောင်နိုင်စွမ်းကိုစစ်ဆေးရန် testbench ကိုပေးထားသည်။ အောက်ဖော်ပြပါဇယားသည် အပလီကေးရှင်းအရ ပြင်ဆင်သတ်မှတ်နိုင်သော ကန့်သတ်ချက်များကို ဖော်ပြသည်။

ဇယား 3 · Testbench ဖွဲ့စည်းမှုဆိုင်ရာ ကန့်သတ်ချက်များ

အမည် IMAGE_1_FILE_NAME IMAGE_2_FILE_NAME g_DATA_WIDTH အကျယ် HEIGHT

ဖော်ပြချက် ထည့်သွင်းခြင်း။ file ချန်နယ် 1 ထည့်သွင်းရေးဖြင့် ရေးသားရမည့် ပုံအမည် file ရေးရန် ချန်နယ် 2 ဗီဒီယို ဒေတာ အကျယ် ရေးရန် စာရေး ချန်နယ် အလျားလိုက် ပုံရိပ်၏ အလျားလိုက် ကြည်လင်ပြတ်သားမှု ရေးရမည့် လိုင်းဖြင့် ရေးပြီး ဖတ်ရှုရမည့် ပုံ၏ ဒေါင်လိုက် ကြည်လင်ပြတ်သားမှု စာဖြင့် ရေးသားရမည့် ပုံ၏ အလျားလိုက် ပြတ်သားမှု ချန်နယ်များ

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

16

DDR AXI Arbiter
အောက်ဖော်ပြပါအဆင့်များသည် Libero SoC မှတဆင့် core ကိုအတုယူရန် testbench ကိုအသုံးပြုပုံကို ဖော်ပြသည်။ 1. Design Flow ဝင်းဒိုးတွင်၊ SmartDesign ဖန်တီးရန် ညာဖက်ကလစ်နှိပ်ပြီး SmartDesign ဖန်တီးရန် Run ကိုနှိပ်ပါ။
ပုံ 10 · SmartDesign ဖန်တီးပါ။

2. Create New SmartDesign dialog box တွင် video_dma အဖြစ် ဒီဇိုင်းအသစ်၏ အမည်ကို ရိုက်ထည့်ပြီး OK ကိုနှိပ်ပါ။ SmartDesign တစ်ခုကို ဖန်တီးထားပြီး Design Flow အကန့်၏ညာဘက်တွင် ကင်းဗတ်တစ်ခုကို ပြသထားသည်။
ပုံ 11 · SmartDesign အမည်ပေးခြင်း

3. Catalog window တွင်၊ Solutions-Video ကိုချဲ့ပြီး SmartDesign ကင်းဗတ်တွင် SF2 DDR Memory Arbiter ကို ဆွဲယူ၍ချပါ။

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

17

DDR AXI Arbiter
ပုံ 12 · Libero SoC Catalog ရှိ DDR Memory Arbiter

DDR Memory Arbiter Core ကိုအောက်ပါပုံတွင်ပြထားသည့်အတိုင်းပြသထားသည်။ လိုအပ်ပါက arbiter ကို configure လုပ်ရန် core ကို နှစ်ချက်နှိပ်ပါ။

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

18

DDR AXI Arbiter
ပုံ 13 · SmartDesign Canvas ရှိ DDR Memory Arbiter Core

4. core ၏ ports အားလုံးကို ရွေးပြီး right-click နှိပ်ပြီး Promote to Top Level ကို နှိပ်ပါ၊

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

19

DDR AXI Arbiter
4. အောက်ဖော်ပြပါပုံတွင်ပြထားသည့်အတိုင်း core ၏ ports အားလုံးကို right-click နှိပ်ပြီး Promote to Top Level ကိုနှိပ်ပါ။ ပုံ 14 · ထိပ်တန်းအဆင့် ရွေးချယ်မှုသို့ မြှင့်တင်ပါ။

ကိရိယာဘားရှိ အစိတ်အပိုင်း အိုင်ကွန်ကို မနှိပ်မီ ဆိပ်ကမ်းများအားလုံးကို ထိပ်တန်းအဆင့်သို့ မြှင့်တင်ရန် သေချာပါစေ။

5. အောက်ပါပုံတွင်ပြထားသည့်အတိုင်း SmartDesign toolbar ရှိ Generate Component icon ကို နှိပ်ပါ။

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

20

DDR AXI Arbiter
5. အောက်ပါပုံတွင်ပြထားသည့်အတိုင်း SmartDesign toolbar ရှိ Generate Component icon ကို နှိပ်ပါ။ SmartDesign အစိတ်အပိုင်းကို ထုတ်ပေးသည်။ ပုံ 15 · အစိတ်အပိုင်းကို ဖန်တီးပါ။
6. သို့သွားပါ။ View > Windows > File၎။ ဟိ Files dialog box ကိုပြသထားသည်။ 7. simulation folder ကို right-click နှိပ်ပြီး Import ကိုနှိပ်ပါ။ Files ကိုအောက်ပါပုံတွင်ပြထားသည့်အတိုင်း။
ပုံ 16 · တင်သွင်းခြင်း။ File

8. ရုပ်ပုံအား တင်သွင်းရန် fileအောက်ပါတို့ထဲမှ တစ်ခုကို လမ်းညွှန်ပြီး တင်သွင်းပါ။ files နှင့် Open ကိုနှိပ်ပါ။

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

21

DDR AXI Arbiter
8. ရုပ်ပုံအား တင်သွင်းရန် fileအောက်ပါတို့ထဲမှ တစ်ခုကို လမ်းညွှန်ပြီး တင်သွင်းပါ။ files နှင့် Open ကိုနှိပ်ပါ။ a ၎ample RGB_in.txt file အောက်ဖော်ပြပါလမ်းကြောင်းတွင် testbench နှင့်အတူထောက်ပံ့ပေးသည်-
..Project_namecomponentMicrosemiSolutionCore ddr_memory_arbiter 2.0.0 လှုံ့ဆော်မှု
s ကိုတင်သွင်းရန်ample test bench input image, s ကိုရှာပါ။ample testbench ထည့်သွင်းပုံ fileအောက်ပါပုံတွင်ပြထားသည့်အတိုင်း Open ကိုနှိပ်ပါ။ ပုံ 17 · ထည့်သွင်းပုံ File ရွေးချယ်မှု
ခ မတူညီသောပုံတစ်ပုံကို တင်သွင်းရန် လိုချင်သောပုံပါရှိသော ဖိုင်တွဲသို့ ဝင်ရောက်ကြည့်ရှုပါ။ fileပြီးလျှင် Open ကိုနှိပ်ပါ။ တင်သွင်းတဲ့ ပုံရိပ်ကို နှိုးဆွတယ်။ file အောက်ပါပုံတွင်ပြထားသည့်အတိုင်း Simulation directory အောက်တွင်ဖော်ပြထားပါသည်။ ပုံ 18 · ထည့်သွင်းပုံ File Simulation Directory တွင်

9. ddr BFM ကို တင်သွင်းပါ။ file၎။ နှစ်ယောက် files နှင့်ညီမျှသည်။
UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

နှင့်
22

DDR AXI Arbiter
9. ddr BFM ကို တင်သွင်းပါ။ file၎။ နှစ်ယောက် fileDDR BFM — ddr3.v နှင့် ddr3_parameters.v နှင့် ညီမျှသော s ကို အောက်ဖော်ပြပါ လမ်းကြောင်းတွင် testbench ဖြင့် ပံ့ပိုးပေးသည်- ..Project_namecomponentMicrosemiSolutionCoreddr_memory_arbiter 2.0.0 Stimulus။ လှုံ့ဆော်မှုဖိုဒါကို ညာကလစ်နှိပ်ပြီး သွင်းကုန်ကို ရွေးချယ်ပါ။ Files ရွေးချယ်မှု ပြီးနောက် အထက်ဖော်ပြပါ BFM ကို ရွေးပါ။ file၎။ တင်သွင်းထားသော DDR BFM files ကိုအောက်ပါပုံတွင်ပြထားသည့်အတိုင်းလှုံ့ဆော်မှုအောက်တွင်ဖော်ပြထားသည်။ ပုံ 19 · တင်သွင်းထားသည်။ File
10. သို့သွားပါ။ File > သွင်းကုန် > အခြား။ သွင်းကုန် Files dialog box ကိုပြသထားသည်။ ပုံ 20 · Testbench ကို တင်သွင်းပါ။ File

11. testbench နှင့် MSS အစိတ်အပိုင်းကို တင်သွင်းပါ။ files (top_tb.cxf၊ mss_top_sb_MSS.cxf၊ mss_top.cxf နှင့် mss
..Project_namecomponentMicrosemiSolutionCoreddr_memory_arbiter 2.0.0 လှုံ့ဆော်မှု

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

23

၂၁။
DDR AXI Arbiter
ပုံ 21 · Testbench နှင့် MSS Component ကို တင်သွင်းပါ။ Files
ပုံ 22 · top_tb ဖန်တီးထားသည်။

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

24

DDR AXI Arbiter

3.5.1

MSS SmartDesign အတုလုပ်ခြင်း။
အောက်ဖော်ပြပါ ညွှန်ကြားချက်များသည် MSS SmartDesign ကို မည်ကဲ့သို့ အတုယူရမည်ကို ဖော်ပြသည် ။
1. Design Hierarchy တက်ဘ်ကို နှိပ်ပြီး ပြထားသော drop-down စာရင်းမှ အစိတ်အပိုင်းကို ရွေးချယ်ပါ။ တင်သွင်းလာသော MSS SmartDesign ကို ပြသထားသည်။
2. Work အောက်ရှိ mss_top ကို right-click နှိပ်ပြီး အောက်ပါပုံတွင်ပြထားသည့်အတိုင်း Open Component ကိုနှိပ်ပါ။ mss_top_sb_0 အစိတ်အပိုင်းကို ပြသထားသည်။
ပုံ 23 · အစိတ်အပိုင်းကို ဖွင့်ပါ။

3. mss_top_sb_0 အစိတ်အပိုင်းကို ညာကလစ်နှိပ်ပြီး အောက်ပါပုံတွင်ပြထားသည့်အတိုင်း Configure ကိုနှိပ်ပါ။

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

25

DDR AXI Arbiter
3. mss_top_sb_0 အစိတ်အပိုင်းကို ညာကလစ်နှိပ်ပြီး အောက်ပါပုံတွင်ပြထားသည့်အတိုင်း Configure ကိုနှိပ်ပါ။ ပုံ 24 · အစိတ်အပိုင်းကို စီစဉ်သတ်မှတ်ပါ။
အောက်ပါပုံတွင်ပြထားသည့်အတိုင်း MSS Configuration window ကိုပြသထားသည်။ ပုံ 25 · MSS Configuration Window

4. အောက်ပါပုံတွင်ပြထားသည့်အတိုင်း configuration tabs အားလုံးမှတဆင့် Next ကိုနှိပ်ပါ။

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

26

DDR AXI Arbiter
4. အောက်ပါပုံတွင်ပြထားသည့်အတိုင်း configuration tabs အားလုံးမှတဆင့် Next ကိုနှိပ်ပါ။ ပုံ 26 · ဖွဲ့စည်းမှု တဘ်များ
Interrupts တဘ်ကို စီစဉ်သတ်မှတ်ပြီးနောက် MSS ကို စီစဉ်သတ်မှတ်ထားသည်။ အောက်ပါပုံသည် MSS Configuration ၏တိုးတက်မှုကိုပြသသည်။ ပုံ 27 · MSS Configuration Window ဖွဲ့စည်းမှုပြီးနောက်

5. ပြင်ဆင်သတ်မှတ်မှုပြီးပါက Next ကိုနှိပ်ပါ။ အောက်ဖော်ပြပါပုံတွင်ပြထားသည့်အတိုင်း Memory Map ဝင်းဒိုးကို ပြသထားသည်။
ပုံ 28 · Memory Map

6. Finish ကိုနှိပ်ပါ။

7. တွင်ပြထားသည့်အတိုင်း MSS ကိုထုတ်လုပ်ရန် SmartDesign toolbar မှ အစိတ်အပိုင်းကို Generate ကိုနှိပ်ပါ။

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

27

DDR AXI Arbiter
7. အောက်ဖော်ပြပါပုံတွင်ပြထားသည့်အတိုင်း MSS ကိုထုတ်လုပ်ရန်အတွက် SmartDesign toolbar မှ အစိတ်အပိုင်းတစ်ခုကို Generate ကိုနှိပ်ပါ။ ပုံ 29 · အစိတ်အပိုင်းကို ဖန်တီးပါ။
8. Design Hierarchy window တွင်၊ Work အောက်ရှိ mss_top ကို right-click နှိပ်ပြီး အောက်ပါပုံတွင် ပြထားသည့်အတိုင်း Set As Root ကို နှိပ်ပါ။ ပုံ 30 · MSS ကို Root အဖြစ် သတ်မှတ်ပါ။

9. Design Flow ဝင်းဒိုးတွင်၊ ဒီဇိုင်းဖန်တီးမှုအောက်ရှိ အကြိုပေါင်းစပ်ထားသော ဒီဇိုင်းကို အတည်ပြုရန် ချဲ့ထွင်ပြီး ဒီဇိုင်းကို ညာကလစ်နှိပ်ပါ။

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

28

DDR AXI Arbiter
9. Design Flow window တွင်၊ Create Design အောက်ရှိ Verify Pre-synthesized Design ကိုချဲ့ထွင်ပြီး ညာဖက်ကလစ်နှိပ်ပြီး Simulate လုပ်ပြီး Open Interactively ကိုနှိပ်ပါ။ ၎င်းသည် MSS ကိုအတုယူသည်။ ပုံ 31 · Pre-synthesized Design ကို အတုယူပါ။
10. Testbench လှုံ့ဆော်မှုကို MSS နှင့် ချိတ်ဆက်ရန် သတိပေးချက် မက်ဆေ့ချ်ကို ပြသပါက No ကို နှိပ်ပါ။ 11. Simulation ပြီးပါက Modelsim window ကို ပိတ်ပါ။
ပုံ 32 · သရုပ်သကန်ပြတင်းပေါက်

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

29

DDR AXI Arbiter

3.5.2

Testbench ကို ပုံဖော်ခြင်း။
အောက်ဖော်ပြပါ လမ်းညွှန်ချက်များသည် testbench ကို မည်သို့ပုံတူလုပ်ရမည်ကို ဖော်ပြသည်-
1. အောက်ပါပုံတွင်ပြထားသည့်အတိုင်း testbench ကိုထုတ်လုပ်ရန်အတွက် top_tb SmartDesign Testbench ကိုရွေးချယ်ပြီး Generate Component ကို SmartDesign toolbar မှ ကလစ်နှိပ်ပါ။
ပုံ 33 · အစိတ်အပိုင်းတစ်ခု ဖန်တီးခြင်း။

2. Stimulus Hierarchy ဝင်းဒိုးတွင်၊ ညာဘက်ကလစ်နှိပ်ပါ top_tb (top_tb.v) testbench file ပြီးပါက တက်ကြွသောလှုံ့ဆော်မှုအဖြစ် သတ်မှတ်မည်ကို နှိပ်ပါ။ top_tb testbench အတွက် လှုံ့ဆော်မှုအား အသက်သွင်းထားသည်။ file.

3. Stimulus Hierarchy window တွင်၊ right-click top_tb (
UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

) စမ်းသပ်ခုံ file Open ကိုနှိပ်ပါ။
30

DDR AXI Arbiter
3. Stimulus Hierarchy ဝင်းဒိုးတွင်၊ ညာဘက်ကလစ်နှိပ်ပါ top_tb (top_tb.v) testbench file Simulate Pre-Synth Design မှ Interactively ကိုဖွင့်ပါ။ ၎င်းသည် ဖရိန်တစ်ခုအတွက် core ကို တုပသည်။ ပုံ 34 · Pre-Synthesis Design ကို ပုံဖော်ခြင်း။

4. DO တွင် runtime ကန့်သတ်ချက်ကြောင့် simulation သည်ပြတ်တောက်နေပါက၊ fileSimulation ကို အပြီးသတ်ရန် run -all command ကိုသုံးပါ။ Simulation ပြီးသွားပြီးနောက်၊ သို့သွားပါ။ View > Files > simulation to view test bench output ပုံ file simulation folder ထဲမှာ။
ပုံတစ်ပုံ၏ဘောင်တစ်ခုနှင့်ညီမျှသော စာသားကို သရုပ်ဖော်ခြင်း၏အထွက်ကို Read_out_rd_ch(x).txt စာသားတွင် သိမ်းဆည်းထားသည်။ file အသုံးပြုထားတဲ့ read channel ပေါ်မူတည်ပါတယ်။ ၎င်းကို ရုပ်ပုံအဖြစ် ပြောင်းလဲနိုင်ပြီး မူရင်းပုံနှင့် နှိုင်းယှဉ်နိုင်သည်။

3.6

အရင်းအမြစ်အသုံးချမှု

DDR Arbiter block ကို M2S150T SmartFusion®2 System-on-Chip (SoC) FPGA တွင် အကောင်အထည်ဖော်သည်

FC1152 ပက်ကေ့ဂျ်) နှင့် PolarFire FPGA (MPF300TS_ES – 1FCG1152E ပက်ကေ့ဂျ်)။

ဇယား 4 · DDR AXI Arbiter အတွက် အရင်းအမြစ်အသုံးချမှု

အရင်းအမြစ် DFFs 4-input LUTs MACC RAM1Kx18

အသုံးပြုမှု 2992 4493 0 20

(ဘို့:

g_RD_CHANNEL(X)_HORIZONTAL_RESOLUTION = 1280

g_RD_CHANNEL(X)_BUFFER_LINE_STORAGE = ၁

g_WR_CHANNEL(X)_BUFFER_LINE_STORAGE = ၁

g_AXI_DWIDTH = ၆၄

g_RD_CHANNEL(X)_VIDEO_DATA_WIDTH = ၂၄

RAM64x18

g_WR_CHANNEL(X)_VIDEO_DATA_WIDTH = 32) 0

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

31

DDR AXI Arbiter

Microsemi Corporate Headquarters One Enterprise, Aliso Viejo, CA 92656 USA သည် USA အတွင်း၌ - +1 ၇၃၆-၇၈၄-၆၀၉၄ အမေရိကန်ပြင်ပ- +1 ၇၃၆-၇၈၄-၆၀၉၄ Fax- +1 ၇၃၆-၇၈၄-၆၀၉၄ အီးမေးလ်- sales.support@microsemi.com www.microsemi.com
© 2018 Microsemi ကော်ပိုရေးရှင်း။ မူပိုင်ခွင့်ကိုလက်ဝယ်ထားသည်။ Microsemi နှင့် Microsemi လိုဂိုများသည် Microsemi Corporation ၏ ကုန်အမှတ်တံဆိပ်များဖြစ်သည်။ အခြားကုန်အမှတ်တံဆိပ်များနှင့် ဝန်ဆောင်မှုအမှတ်အသားများအားလုံးသည် သက်ဆိုင်ရာပိုင်ရှင်များ၏ ပိုင်ဆိုင်မှုဖြစ်သည်။

Microsemi သည် ဤနေရာတွင်ပါရှိသော အချက်အလက် သို့မဟုတ် ၎င်း၏ ထုတ်ကုန်နှင့် ဝန်ဆောင်မှုများ၏ သင့်လျော်မှုနှင့်ပတ်သက်၍ အာမခံခြင်း၊ ကိုယ်စားပြုခြင်း သို့မဟုတ် အာမခံပေးခြင်းတို့ကို မလုပ်ဆောင်ဘဲ၊ Microsemi သည် အက်ပ်လီကေးရှင်း သို့မဟုတ် ထုတ်ကုန် သို့မဟုတ် ဆားကစ်အသုံးပြုမှုမှ ဖြစ်ပေါ်လာသည့် မည်သည့်တာဝန်ယူမှုကိုမျှ မယူပါ။ ဤနေရာတွင်ရောင်းချသောထုတ်ကုန်များနှင့် Microsemi မှရောင်းချသောအခြားထုတ်ကုန်များသည် အကန့်အသတ်ဖြင့်စမ်းသပ်ခြင်းခံရပြီး mission-critical equipment သို့မဟုတ် applications များနှင့်တွဲ၍အသုံးမပြုသင့်ပါ။ မည်သည့် စွမ်းဆောင်ရည် သတ်မှတ်ချက်များကိုမဆို ယုံကြည်စိတ်ချရသည်ဟု ယူဆသော်လည်း အတည်မပြုနိုင်သေးဘဲ၊ ဝယ်သူသည် ထုတ်ကုန်များ၏ စွမ်းဆောင်ရည်နှင့် အခြားစမ်းသပ်မှုအားလုံးကို တစ်ခုတည်းနှင့် သို့မဟုတ် အဆုံးစွန်ထုတ်ကုန်များတွင် ထည့်သွင်းပြီး ပြီးမြောက်ရပါမည်။ ဝယ်သူသည် Microsemi မှပေးသော မည်သည့်ဒေတာနှင့် စွမ်းဆောင်ရည်သတ်မှတ်ချက်များ သို့မဟုတ် ကန့်သတ်ချက်များအပေါ် အားကိုးမည်မဟုတ်ပါ။ မည်သည့်ထုတ်ကုန်များ၏ သင့်လျော်မှုကို လွတ်လပ်စွာဆုံးဖြတ်ရန်နှင့် အလားတူစမ်းသပ်စစ်ဆေးရန်မှာ ဝယ်သူ၏တာဝန်ဖြစ်သည်။ ဤနေရာတွင် Microsemi မှ ပံ့ပိုးပေးသော အချက်အလက်သည် "ရှိနေသည့်အတိုင်း၊ မည်သည့်နေရာတွင် ရှိနေသည်" နှင့် ချို့ယွင်းချက်အားလုံးဖြင့် ပေးဆောင်ထားပြီး ထိုအချက်အလက်များနှင့် ဆက်စပ်နေသော အန္တရာယ် တစ်ခုလုံးသည် ဝယ်သူနှင့် လုံးလုံးလျားလျား ရှိနေပါသည်။ Microsemi သည် အဆိုပါအချက်အလက်ကိုယ်တိုင် သို့မဟုတ် ယင်းအချက်အလက်များနှင့်ပတ်သက်၍ ဖော်ပြထားသည့် မည်သည့် မူပိုင်ခွင့်အခွင့်အရေးများ၊ လိုင်စင်များ သို့မဟုတ် အခြား IP အခွင့်အရေးများကို မည်သည့်ပါတီအားမဆို၊ အတိအလင်း သို့မဟုတ် သွယ်ဝိုက်စွာ ပေးအပ်ခြင်းမပြုပါ။ ဤစာရွက်စာတမ်းတွင် ပံ့ပိုးပေးထားသော အချက်အလက်များသည် Microsemi ၏ မူပိုင်ဖြစ်ပြီး၊ Microsemi သည် ဤစာရွက်စာတမ်းပါ အချက်အလက် သို့မဟုတ် ထုတ်ကုန်နှင့် ဝန်ဆောင်မှုများကို အချိန်မရွေး အပြောင်းအလဲပြုလုပ်ရန် အခွင့်အရေးကို လက်ဝယ်ရှိပါသည်။
Microsemi ကော်ပိုရေးရှင်း (Nasdaq: MSCC) သည် အာကာသနှင့် ကာကွယ်ရေး၊ ဆက်သွယ်ရေး၊ ဒေတာစင်တာနှင့် စက်မှုစျေးကွက်များအတွက် ဆီမီးကွန်ဒတ်တာနှင့် စနစ်ဆိုင်ရာ ဖြေရှင်းချက်များအတွက် ပြည့်စုံသောအစုစုကို ပေးပါသည်။ ထုတ်ကုန်များတွင် စွမ်းဆောင်ရည်မြင့်မားပြီး ဓာတ်ရောင်ခြည်-မာကျောသော analog ရောနှော-အချက်ပြပေါင်းစပ်ထားသော ဆားကစ်များ၊ FPGAs၊ SoCs နှင့် ASICs များ ပါဝင်သည်။ စွမ်းအင်စီမံခန့်ခွဲမှုထုတ်ကုန်များ; အချိန်နှင့် ထပ်တူပြုခြင်း ကိရိယာများနှင့် တိကျသော အချိန်ဖြေရှင်းချက်များ၊ အချိန်အတွက် ကမ္ဘာ့စံနှုန်းကို သတ်မှတ်ခြင်း၊ အသံလုပ်ဆောင်ခြင်းကိရိယာများ; RF ဖြေရှင်းချက်များ; သီးခြားအစိတ်အပိုင်းများ; လုပ်ငန်းသိုလှောင်မှုနှင့် ဆက်သွယ်ရေးဖြေရှင်းချက်၊ လုံခြုံရေးနည်းပညာများနှင့် အရွယ်မှာ ဆန့်ကျင်သည့် tamper ထုတ်ကုန်များ; အီသာနက်ဖြေရှင်းချက်များ; Power-over-Ethernet IC နှင့် midspans; အပြင် စိတ်ကြိုက် ဒီဇိုင်း စွမ်းဆောင်ရည် နှင့် ဝန်ဆောင်မှုများ။ Microsemi သည် ကယ်လီဖိုးနီးယား၊ Aliso Viejo တွင် ရုံးချုပ်ရှိပြီး တစ်ကမ္ဘာလုံးတွင် ဝန်ထမ်းပေါင်း 4,800 ခန့်ရှိသည်။ www.microsemi.com တွင် ပိုမိုလေ့လာပါ။
50200644

UG0644 အသုံးပြုသူလမ်းညွှန် တည်းဖြတ်မှု ၅.၀

32

စာရွက်စာတမ်းများ / အရင်းအမြစ်များ

Microchip UG0644 DDR AXI Arbiter [pdf] အသုံးပြုသူလမ်းညွှန်
UG0644 DDR AXI Arbiter၊ UG0644၊ DDR AXI Arbiter၊ AXI Arbiter

ကိုးကား

မှတ်ချက်တစ်ခုချန်ထားပါ။

သင့်အီးမေးလ်လိပ်စာကို ထုတ်ပြန်မည်မဟုတ်ပါ။ လိုအပ်သောအကွက်များကို အမှတ်အသားပြုထားသည်။ *