Intel® FPGA P-Tile Avalon ®
PCI Express အတွက် Streaming IP*
ဒီဇိုင်းထွample အသုံးပြုသူလမ်းညွှန်
Intel® အတွက် အပ်ဒိတ်လုပ်ထားသည်။
Quartus® Prime Design Suite- 21.3
IP ဗားရှင်း- 6.0.0
အသုံးပြုသူလမ်းညွှန်
ဒီဇိုင်းထွample ဖော်ပြချက်
၁.၁။ Programmed Input/Output (PIO) Design Ex အတွက် Functional Descriptionample
PIO ဒီဇိုင်း example သည် host ပရိုဆက်ဆာမှ ပစ်မှတ်ကိရိယာသို့ မမ်မိုရီလွှဲပြောင်းမှုများကို လုပ်ဆောင်သည်။ ဒီ exampထို့ကြောင့်၊ အိမ်ရှင်ပရိုဆက်ဆာသည် single-dword MemRd နှင့် emWr ကို တောင်းဆိုသည်။
TLPs
PIO ဒီဇိုင်း example သည် အလိုအလျောက် ဖန်တီးပေးသည်။ fileIntel Prime ဆော့ဖ်ဝဲလ်တွင် အတုယူ၍ စုစည်းရန် လိုအပ်ပါသည်။ ဒီဇိုင်းဟောင်းample သည် ကျယ်ပြန့်သောဘောင်များကို ဖုံးအုပ်ထားသည်။ သို့သော်၊ PCIe အတွက် P-Tile Hard IP ၏ ဖြစ်နိုင်ချေရှိသော ကန့်သတ်ချက်များအားလုံးကို အကျုံးမဝင်ပါ။
ဒီဒီဇိုင်း example တွင် အောက်ပါ အစိတ်အပိုင်းများ ပါဝင်သည်။
- သင်သတ်မှတ်ထားသော ကန့်သတ်ဘောင်များဖြင့် ထုတ်လုပ်ထားသော P-Tile Avalon Streaming Hard IP Endpoint မျိုးကွဲ (DUT)။ ဤအစိတ်အပိုင်းသည် PIO အပလီကေးရှင်းသို့ လက်ခံရရှိသည့် TLP ဒေတာကို မောင်းနှင်စေသည်။
- PCI Express TLP နှင့် ရိုးရိုး Avalon-MM တို့ကြား လိုအပ်သော ဘာသာပြန်ဆိုမှုကို လုပ်ဆောင်ပေးသည့် PIO Application (APPS) အစိတ်အပိုင်းသည် onchip memory သို့ စာရေးပြီး ဖတ်သည်။
- on-chip memory (MEM) အစိတ်အပိုင်း။ 1×16 ဒီဇိုင်းဟောင်းအတွက်ampon-chip memory တွင် 16 KB memory block တစ်ခု ပါ၀င်ပါသည်။ 2×8 ဒီဇိုင်းဟောင်းအတွက်ampအဘယ်ကြောင့်ဆိုသော် on-chip memory တွင် 16 KB memory blocks နှစ်ခု ပါဝင်သည်။
- Reset Release IP- ဤ IP သည် စက်ပစ္စည်းသည် အသုံးပြုသူမုဒ်သို့ အပြည့်အ၀မ၀င်မချင်း ပြန်လည်သတ်မှတ်မှုတွင် ထိန်းချုပ်မှုပတ်လမ်းကို ထိန်းထားသည်။ FPGA သည် စက်သည် အသုံးပြုသူမုဒ်တွင် ရှိနေကြောင်း အချက်ပြရန် INIT_DONE အထွက်ကို အခိုင်အမာ အတည်ပြုသည်။ ပြန်လည်သတ်မှတ်ခြင်း ဖြန့်ချိမှု IP သည် သင့်ဒီဇိုင်းအတွက် သင်အသုံးပြုနိုင်သည့် nINIT_DONE အထွက်ကို ဖန်တီးရန် အတွင်းပိုင်း INIT_DONE အချက်ပြ၏ ပြောင်းပြန်ဗားရှင်းကို ထုတ်ပေးပါသည်။ စက်တစ်ခုလုံး အသုံးပြုသူမုဒ်သို့ မဝင်မချင်း nINIT_DONE အချက်ပြမှုသည် မြင့်မားပါသည်။ nINIT_DONE က အတည်ပြုပြီးနောက် (နည်းသည်)၊ ယုတ္တိဗေဒအားလုံးသည် အသုံးပြုသူမုဒ်တွင်ရှိပြီး ပုံမှန်အတိုင်းလည်ပတ်နေသည်။ အောက်ပါနည်းလမ်းများအနက်မှ သင် nINIT_DONE အချက်ပြမှုကို အသုံးပြုနိုင်ပါသည်။
- ပြင်ပ သို့မဟုတ် အတွင်းပိုင်း ပြန်လည်သတ်မှတ်မှုကို ဂိတ်ပေါက်ရန်။
- transceiver နှင့် I/O PLLs များသို့ reset input ကိုတံခါးပိတ်ရန်။
- ထည့်သွင်းထားသော memory blocks၊ state machine နှင့် shift registers များကဲ့သို့သော ဒီဇိုင်းဘလောက်များကို ရေးရန် တံခါးပိတ်ရန်။
- တစ်ပြိုင်နက်တည်း မောင်းနှင်ရန် မှတ်ပုံတင်ရန် သင့်ဒီဇိုင်းရှိ အဝင်ပေါက်များကို ပြန်လည်သတ်မှတ်ပါ။
Simulation testbench သည် PIO ဒီဇိုင်းဟောင်းကို သဘောကျစေသည်။ampပစ်မှတ် Endpoint နှင့် ဆက်သွယ်ရန်အတွက် le နှင့် Root Port BFM တစ်ခု။
Intel ကော်ပိုရေးရှင်း။ မူပိုင်ခွင့်များရယူပြီး။ Intel၊ Intel လိုဂိုနှင့် အခြားသော Intel အမှတ်အသားများသည် Intel ကော်ပိုရေးရှင်း သို့မဟုတ် ၎င်း၏လုပ်ငန်းခွဲများ၏ အမှတ်တံဆိပ်များဖြစ်သည်။ Intel သည် Intel ၏ စံအာမခံချက်နှင့်အညီ ၎င်း၏ FPGA နှင့် တစ်ပိုင်းလျှပ်ကူးပစ္စည်းထုတ်ကုန်များ၏ စွမ်းဆောင်ရည်ကို လက်ရှိ သတ်မှတ်ချက်များအတိုင်း အာမခံထားသော်လည်း မည်သည့်ထုတ်ကုန်နှင့် ဝန်ဆောင်မှုများကိုမဆို အသိပေးခြင်းမရှိဘဲ အချိန်မရွေး အပြောင်းအလဲပြုလုပ်ပိုင်ခွင့်ကို လက်ဝယ်ရှိပါသည်။ Intel မှ စာဖြင့် အတိအလင်း သဘောတူထားသည့်အတိုင်း ဤနေရာတွင် ဖော်ပြထားသော အချက်အလက်၊ ထုတ်ကုန် သို့မဟုတ် ဝန်ဆောင်မှုကို အသုံးပြုခြင်း သို့မဟုတ် အသုံးပြုခြင်းမှ ဖြစ်ပေါ်လာသော တာဝန် သို့မဟုတ် တာဝန်ခံမှု မရှိဟု ယူဆပါသည်။ Intel သုံးစွဲသူများသည် ထုတ်ဝေထားသော အချက်အလက်များနှင့် ထုတ်ကုန် သို့မဟုတ် ဝန်ဆောင်မှုများအတွက် အမှာစာမတင်မီ နောက်ဆုံးဗားရှင်းကို ရယူရန် အကြံပြုအပ်ပါသည်။ *အခြားအမည်များနှင့် အမှတ်တံဆိပ်များကို အခြားသူများ၏ပိုင်ဆိုင်မှုအဖြစ် တောင်းဆိုနိုင်ပါသည်။
ISO 9001:2015 မှတ်ပုံတင်ထားသည်။
ပုံ ၇။ Platform Designer PIO 1×16 Design Ex အတွက် Block Diagramample Simulation Testbench
ပုံ ၇။ Platform Designer PIO 2×8 Design Ex အတွက် Block Diagramample Simulation Testbench
စမ်းသပ်မှုပရိုဂရမ်သည် on-chip မမ်မိုရီရှိ တည်နေရာတစ်ခုတည်းမှ အချက်အလက်များကို စာရေးပြီး ပြန်ဖတ်သည်။ ၎င်းသည် ဖတ်ထားသော ဒေတာကို မျှော်လင့်ထားသည့်ရလဒ်နှင့် နှိုင်းယှဉ်သည်။ စမ်းသပ်မှုတွင် အမှားအယွင်းများ မဖြစ်ပေါ်ပါက "အောင်မြင်စွာ ပြီးစီးမှုကြောင့် သရုပ်သကန် ရပ်တန့်သွားသည်" ဟု ဖော်ပြသည်။ P-Tile Avalon
Streaming ဒီဇိုင်း example သည် အောက်ပါဖွဲ့စည်းပုံများကို ပံ့ပိုးပေးသည်-
- Gen4 x16 အဆုံးမှတ်
- Gen3 x16 အဆုံးမှတ်
- Gen4 x8x8 အဆုံးမှတ်
- Gen3 x8x8 အဆုံးမှတ်
မှတ်ချက် - PCIe x8x8 PIO ဒီဇိုင်းဟောင်းအတွက် simulation testbenchampအမှန်တကယ် ဒီဇိုင်းသည် PCIe x8 လင့်ခ်နှစ်ခုကို အကောင်အထည်ဖော်သော်လည်း၊ le ကို PCIe x8 လင့်ခ်တစ်ခုအတွက် စီစဉ်သတ်မှတ်ထားသည်။
မှတ်ချက် - ဒီဒီဇိုင်း example သည် PCI Express အတွက် P-tile Avalon Streaming IP ၏ Parameter Editor တွင် မူရင်းဆက်တင်များကိုသာ ပံ့ပိုးပေးပါသည်။
ပုံ ၇။ P-Tile Avalon Streaming PCI Express 1×16 PIO ဒီဇိုင်း Ex အတွက် ပလပ်ဖောင်း ဒီဇိုင်နာ စနစ် အကြောင်းအရာများample
Platform Designer သည် Gen4 x16 မျိုးကွဲများအထိ ဤဒီဇိုင်းကို ထုတ်ပေးပါသည်။
ပုံ ၇။ P-Tile Avalon Streaming PCI Express 2×8 PIO ဒီဇိုင်း Ex အတွက် ပလပ်ဖောင်း ဒီဇိုင်နာ စနစ် အကြောင်းအရာများample
Platform Designer သည် Gen4 x8x8 မျိုးကွဲများအထိ ဤဒီဇိုင်းကို ထုတ်ပေးပါသည်။
၁.၂။ Single Root I/O Virtualization (SR-IOV) Design Ex အတွက် လုပ်ဆောင်နိုင်သော ဖော်ပြချက်ample
SR-IOV ဒီဇိုင်းဟောင်းample သည် host ပရိုဆက်ဆာမှ ပစ်မှတ်ကိရိယာသို့ မမ်မိုရီလွှဲပြောင်းမှုများကို လုပ်ဆောင်သည်။ ၎င်းသည် PF တစ်ခုလျှင် PF နှစ်ခုနှင့် 32 VFs အထိ ပံ့ပိုးပေးသည်။
SR-IOV ဒီဇိုင်းဟောင်းample သည် အလိုအလျောက် ဖန်တီးပေးသည်။ fileIntel Quartus Prime ဆော့ဖ်ဝဲလ်တွင် အတုယူ၍ စုစည်းရန် လိုအပ်ပါသည်။ စုစည်းထားတဲ့ ဒီဇိုင်းတွေကိုလည်း ဒေါင်းလုဒ်လုပ်နိုင်ပါတယ်။
Intel Stratix® 10 DX Development Kit သို့မဟုတ် Intel Agilex™ Development Kit တစ်ခု။
ဒီဒီဇိုင်း example တွင် အောက်ပါ အစိတ်အပိုင်းများ ပါဝင်သည်။
- သင်သတ်မှတ်ထားသော ကန့်သတ်ဘောင်များဖြင့် ထုတ်လုပ်ထားသော P-Tile Avalon Streaming (Avalon-ST) IP Endpoint မျိုးကွဲ (DUT)။ ဤအစိတ်အပိုင်းသည် လက်ခံရရှိသော TLP ဒေတာကို SR-IOV အပလီကေးရှင်းသို့ မောင်းနှင်သည်။
- PCI Express TLP နှင့် ရိုးရိုး Avalon-ST အကြား လိုအပ်သော ဘာသာပြန်ဆိုမှုကို လုပ်ဆောင်ပေးသည့် SR-IOV အက်ပ်လီကေးရှင်း (APPS) အစိတ်အပိုင်းသည် ချပ်စ်ပေါ်ရှိ မမ်မိုရီသို့ စာရေးဖတ်သည်။ SR-IOV APPS အစိတ်အပိုင်းအတွက်၊ မမ်မိုရီဖတ်သော TLP သည် ဒေတာနှင့်အတူ ပြီးမြောက်မှုကို ထုတ်ပေးမည်ဖြစ်သည်။
- SR-IOV ဒီဇိုင်းဟောင်းအတွက်ample PF တစ်ခုလျှင် PF နှစ်ခုနှင့် 32 VFs ပါရှိသော၊ ဒီဇိုင်း ex သည် memory တည်နေရာ 66 ခု ရှိပါသည်။ampဝင်ရောက်နိုင်ပါတယ်။ PF နှစ်ခုသည် မမ်မိုရီတည်နေရာနှစ်ခုကို ဝင်ရောက်ကြည့်ရှုနိုင်ပြီး 64 VFs (2 x 32) သည် 64 မမ်မိုရီတည်နေရာများကို ရယူနိုင်သည်။
- Reset Release IP တစ်ခု။
Simulation testbench သည် SR-IOV ဒီဇိုင်းဟောင်းကို လှုံ့ဆော်ပေးသည်။ampပစ်မှတ် Endpoint နှင့် ဆက်သွယ်ရန်အတွက် le နှင့် Root Port BFM တစ်ခု။
ပုံ ၇။ Platform Designer SR-IOV 1×16 ဒီဇိုင်း Ex အတွက် ပိတ်ဆို့ Diagramample Simulation Testbench
ပုံ ၇။ Platform Designer SR-IOV 2×8 ဒီဇိုင်း Ex အတွက် ပိတ်ဆို့ Diagramample Simulation Testbench
စမ်းသပ်မှုပရိုဂရမ်သည် PF တစ်ခုလျှင် 2 PFs နှင့် 32 VFs တစ်လျှောက်ရှိ on-chip memory ရှိ တည်နေရာတစ်ခုတည်းမှ အချက်အလက်များကို စာရေးပြီး ပြန်ဖတ်သည်။ ၎င်းသည် ဖတ်ရှုထားသည့် ဒေတာကို မျှော်လင့်ထားသည်နှင့် နှိုင်းယှဉ်သည်။
ရလဒ်။ စမ်းသပ်မှုတွင် အမှားအယွင်းများ မဖြစ်ပေါ်ပါက "အောင်မြင်စွာ ပြီးစီးမှုကြောင့် သရုပ်သကန် ရပ်တန့်သွားသည်" ဟု ဖော်ပြသည်။
SR-IOV ဒီဇိုင်းဟောင်းample သည် အောက်ပါဖွဲ့စည်းပုံများကို ပံ့ပိုးပေးသည်-
- Gen4 x16 အဆုံးမှတ်
- Gen3 x16 အဆုံးမှတ်
- Gen4 x8x8 အဆုံးမှတ်
- Gen3 x8x8 အဆုံးမှတ်
ပုံ ၇။ PCI Express 1×16 ဒီဇိုင်း Ex အတွက် SR-IOV ပါသော P-Tile Avalon-ST အတွက် ပလပ်ဖောင်း ဒီဇိုင်နာစနစ် အကြောင်းအရာများample
ပုံ ၇။ PCI Express 2×8 ဒီဇိုင်း Ex အတွက် SR-IOV ပါသော P-Tile Avalon-ST အတွက် ပလပ်ဖောင်း ဒီဇိုင်နာစနစ် အကြောင်းအရာများample
အမြန်စတင်လမ်းညွှန်
Intel Quartus Prime ဆော့ဖ်ဝဲလ်ကို အသုံးပြု၍ ပရိုဂရမ်လုပ်ထားသော I/O (PIO) ဒီဇိုင်း ex ကို ထုတ်လုပ်နိုင်သည်။ample Intel FPGA P-Tile Avalon-ST Hard IP အတွက် PCI Express* IP core အတွက်။ ထုတ်လုပ်လိုက်တဲ့ ဒီဇိုင်း example သည် သင်သတ်မှတ်ထားသော ဘောင်များကို ထင်ဟပ်စေသည်။ PIO ဟောင်းample သည် host ပရိုဆက်ဆာမှ ဒေတာများကို ပစ်မှတ်ကိရိယာသို့ လွှဲပြောင်းပေးသည်။ ၎င်းသည် lowbandwidth applications များအတွက်သင့်လျော်သည်။ ဒီဒီဇိုင်း example သည် အလိုအလျောက် ဖန်တီးပေးသည်။ fileIntel Quartus Prime ဆော့ဖ်ဝဲလ်တွင် အတုယူ၍ စုစည်းရန် လိုအပ်ပါသည်။ စုစည်းထားသော ဒီဇိုင်းကို သင်၏ FPGA Development Board သို့ ဒေါင်းလုဒ်လုပ်နိုင်ပါသည်။ စိတ်ကြိုက်ဟာ့ဒ်ဝဲသို့ ဒေါင်းလုဒ်လုပ်ရန်၊ Intel Quartus Prime ဆက်တင်များကို အပ်ဒိတ်လုပ်ပါ။ File မှန်ကန်သော pin assignments များဖြင့် (.qsf)။ ပုံ ၇။ Design Ex အတွက် ဖွံ့ဖြိုးတိုးတက်မှု အဆင့်များample
Intel ကော်ပိုရေးရှင်း။ မူပိုင်ခွင့်များရယူပြီး။ Intel၊ Intel လိုဂိုနှင့် အခြားသော Intel အမှတ်အသားများသည် Intel ကော်ပိုရေးရှင်း သို့မဟုတ် ၎င်း၏လုပ်ငန်းခွဲများ၏ အမှတ်တံဆိပ်များဖြစ်သည်။ Intel သည် Intel ၏ စံအာမခံချက်နှင့်အညီ ၎င်း၏ FPGA နှင့် တစ်ပိုင်းလျှပ်ကူးပစ္စည်းထုတ်ကုန်များ၏ စွမ်းဆောင်ရည်ကို လက်ရှိ သတ်မှတ်ချက်များအတိုင်း အာမခံထားသော်လည်း မည်သည့်ထုတ်ကုန်နှင့် ဝန်ဆောင်မှုများကိုမဆို အသိပေးခြင်းမရှိဘဲ အချိန်မရွေး အပြောင်းအလဲပြုလုပ်ပိုင်ခွင့်ကို လက်ဝယ်ရှိပါသည်။ Intel မှ စာဖြင့် အတိအလင်း သဘောတူထားသည့်အတိုင်း ဤနေရာတွင် ဖော်ပြထားသော အချက်အလက်၊ ထုတ်ကုန် သို့မဟုတ် ဝန်ဆောင်မှုကို အသုံးပြုခြင်း သို့မဟုတ် အသုံးပြုခြင်းမှ ဖြစ်ပေါ်လာသော တာဝန် သို့မဟုတ် တာဝန်ခံမှု မရှိဟု ယူဆပါသည်။ Intel သုံးစွဲသူများသည် ထုတ်ဝေထားသော အချက်အလက်များနှင့် ထုတ်ကုန် သို့မဟုတ် ဝန်ဆောင်မှုများအတွက် အမှာစာမတင်မီ နောက်ဆုံးဗားရှင်းကို ရယူရန် အကြံပြုအပ်ပါသည်။ *အခြားအမည်များနှင့် အမှတ်တံဆိပ်များကို အခြားသူများ၏ပိုင်ဆိုင်မှုအဖြစ် တောင်းဆိုနိုင်ပါသည်။
ISO 9001:2015 မှတ်ပုံတင်ထားသည်။
၂.၁။ လမ်းညွှန်ဖွဲ့စည်းပုံ
ပုံ 10. Generated Design Ex အတွက် Directory Structureample
၂.၂။ ဒီဇိုင်းထွကို ထုတ်လုပ်ခြင်း။ample
ပုံ 11. လုပ်ထုံးလုပ်နည်း
- Intel Quartus Prime Pro Edition ဆော့ဖ်ဝဲလ်တွင် ပရောဂျက်အသစ်တစ်ခုကို ဖန်တီးပါ (File ➤ ပရောဂျက်အသစ် Wizard)။
- လမ်းညွှန်၊ အမည်နှင့် ထိပ်တန်းအဆင့် အကြောင်းအရာကို သတ်မှတ်ပါ။
- ပရောဂျက်အမျိုးအစားအတွက်၊ ပုံသေတန်ဖိုး၊ ဗလာပရောဂျက်ကို လက်ခံပါ။ Next ကိုနှိပ်ပါ။
- Add အတွက် Files Next ကိုနှိပ်ပါ။
- Family၊ စက်နှင့် ဘုတ်အဖွဲ့ဆက်တင်များအတွက်၊ Family အောက်ရှိ Intel Agilex သို့မဟုတ် Intel Stratix 10 ကို ရွေးချယ်ပါ။
- နောက်ဆုံးအဆင့်တွင် Intel Stratix 10 ကို သင်ရွေးချယ်ပါက၊ Device ဆွဲချမီနူးရှိ Stratix 10 DX ကို ရွေးချယ်ပါ။
- သင့်ဒီဇိုင်းအတွက် ပစ်မှတ်ကိရိယာကို ရွေးပါ။
- Finish ကိုနှိပ်ပါ။
- IP Catalog တွင် ရှာဖွေပြီး PCI Express အတွက် Intel P-Tile Avalon-ST Hard IP ကို ထည့်ပါ။
- New IP Variant dialog box တွင်၊ သင်၏ IP အတွက် အမည်တစ်ခုကို သတ်မှတ်ပါ။ Create ကိုနှိပ်ပါ။
- ထိပ်တန်းအဆင့် ဆက်တင်များနှင့် PCIe* ဆက်တင်များ တက်ဘ်များတွင်၊ သင်၏ IP ကွဲပြားမှုအတွက် ကန့်သတ်ချက်များကို သတ်မှတ်ပါ။ အကယ်၍ သင်သည် SR-IOV ဒီဇိုင်းကို အသုံးပြုနေပါက၊ample၊ SR-IOV ကိုဖွင့်ရန် အောက်ပါအဆင့်များကို လုပ်ဆောင်ပါ။
a PCIe* Device tab တွင် PCIe* PCI Express / PCI Capabilities tab အောက်ရှိ၊ Enable multiple physical functions ကို အမှန်ခြစ်ပါ။
ခ PCIe* Multifunction နှင့် SR-IOV စနစ်ဆက်တင်များ တက်ဘ်တွင်၊ SR-IOV ပံ့ပိုးမှုဖွင့်ရန် အကွက်ကို အမှန်ခြစ်ပြီး PF နှင့် VF အရေအတွက်ကို သတ်မှတ်ပါ။ x8 ဖွဲ့စည်းမှုပုံစံများအတွက်၊ များစွာသောရုပ်ပိုင်းဆိုင်ရာလုပ်ဆောင်ချက်များကိုဖွင့်ပါနှင့် PCIe0 နှင့် PCIe1 တဘ်နှစ်ခုလုံးအတွက် SR-IOV ပံ့ပိုးမှုကိုဖွင့်ပါ အကွက်များကိုစစ်ဆေးပါ။
ဂ။ PCIe* MSI-X tab တွင် PCIe* PCI Express / PCI Capabilities tab အောက်ရှိ MSI-X လုပ်ဆောင်ချက်ကို လိုအပ်သလို ဖွင့်ပါ။
ဃ။ PCIe* Base Address Registers tab တွင် PF နှင့် VF နှစ်ခုလုံးအတွက် BAR0 ကိုဖွင့်ပါ။
င ဤဒီဇိုင်းဟောင်းအတွက် အခြားသော ကန့်သတ်ဆက်တင်များကို ပံ့ပိုးမထားပါ။ampလဲ့ - အထွက၊ample Designs tab၊ အောက်ပါရွေးချယ်မှုများကို ပြုလုပ်ပါ။
a Ex အတွက်ample ဒီဇိုင်း Files၊ Simulation and Synthesis ရွေးစရာများကို ဖွင့်ပါ။
အကယ်၍ သင်သည် ဤ simulation သို့မဟုတ် synthesis မလိုအပ်ပါ။ files၊ သက်ဆိုင်ရာ ရွေးချယ်ခွင့်(များ)ကို ပိတ်ထားခြင်းဖြင့် ဟောင်းကို သိသိသာသာ လျော့နည်းစေသည်။ampဒီဇိုင်း မျိုးဆက် တွေ ပါ တယ် ။
ခ Generated HDL ဖော်မတ်အတွက်၊ လက်ရှိထုတ်ဝေမှုတွင် Verilog ကိုသာ ရနိုင်သည်။
ဂ။ Target Development Kit အတွက် Intel Stratix 10 DX P-Tile ES1 FPGA Development Kit၊ Intel Stratix 10 DX P-Tile Production FPGA Development Kit သို့မဟုတ် Intel Agilex F-Series P-Tile ES0 FPGA Development Kit ကို ရွေးပါ။
13. Generate Ex ကို ရွေးပါ။ample Design သည် ဒီဇိုင်းဟောင်းကို ဖန်တီးသည်။ampဟာ့ဒ်ဝဲမှာ ပုံဖော်ပြီး ဒေါင်းလုဒ်လုပ်နိုင်ပါတယ်။ P-Tile ဖွံ့ဖြိုးတိုးတက်ရေးဘုတ်များထဲမှ တစ်ခုကို ရွေးချယ်ပါက၊ အဆိုပါဘုတ်ရှိ စက်ပစ္စည်းသည် စက်ပစ္စည်းများ ကွဲပြားပါက Intel Quartus Prime ပရောဂျက်တွင် ယခင်ရွေးချယ်ထားသော စက်ပစ္စည်းကို ထပ်ရေးပါမည်။ အမှာစာက သင့်ဟောင်းအတွက် လမ်းညွှန်ကို သတ်မှတ်ရန် တောင်းဆိုသောအခါample ဒီဇိုင်း၊ သင်သည် မူရင်းလမ်းညွှန်ကို လက်ခံနိုင်သည်၊ ./intel_pcie_ptile_ast_0_example_design သို့မဟုတ် အခြားလမ်းညွှန်ကို ရွေးချယ်ပါ။
ပုံ ၇။ Example Designs Tab
- Finish ကိုနှိပ်ပါ။ သင်၏ .ip ကို သိမ်းဆည်းနိုင်သည်။ file မေးသောအခါတွင်၊ သို့သော် ex ကိုသုံးရန်မလိုအပ်ပါ။ample ဒီဇိုင်း။
- ရည်းစားဟောင်းကို ဖွင့်ပါ။ample ဒီဇိုင်းပရောဂျက်။
- ရည်းစားဟောင်းကို ပြုစုပါ။ample ဒီဇိုင်းပရောဂျက် .sof ကို ထုတ်လုပ်ရန် file ပြီးပြည့်စုံသော ex အတွက်ample ဒီဇိုင်း။ ဒီ file ဟာ့ဒ်ဝဲအတည်ပြုခြင်းကို လုပ်ဆောင်ရန် သင် ဘုတ်အဖွဲ့သို့ ဒေါင်းလုဒ်လုပ်ထားသည့်အရာဖြစ်သည်။
- မင်းရဲ့ရည်းစားဟောင်းကို ပိတ်လိုက်ပါ။ample ဒီဇိုင်းပရောဂျက်။
Intel Quartus Prime ပရောဂျက်ရှိ PCIe pin ခွဲတမ်းများကို သင်ပြောင်းလဲ၍မရကြောင်း သတိပြုပါ။ သို့သော် PCB လမ်းကြောင်းကို လွယ်ကူစေရန်၊ သင်သည် advan ကိုယူနိုင်သည်။tage ဤ IP မှပံ့ပိုးပေးထားသော လမ်းကြောပြောင်းပြန်နှင့် polarity ပြောင်းပြန်လှန်ခြင်းအင်္ဂါရပ်များ။
၂.၃။ ဒီဇိုင်း Ex ကို အတုယူခြင်း။ample
စီစဥ်ခြင်းစနစ်တွင် အောက်ပါအတိုင်း PCIe (DUT) အတွက် P-tile Avalon Streaming IP ကို ကျင့်သုံးရန် Root Port Bus Functional Model (BFM) ကို အသုံးပြုခြင်း ပါဝင်ပါသည်။
ပုံ
ပုံ ၇။ PIO ဒီဇိုင်းထွample Simulation Testbench
testbench နှင့် ၎င်းရှိ module များအကြောင်း နောက်ထပ်အသေးစိတ်အချက်အလက်များအတွက်၊ စာမျက်နှာ 15 ရှိ Testbench ကို ကိုးကားပါ။
အောက်ပါ flow diagram သည် ဒီဇိုင်း ex ကို အတုယူရန် အဆင့်များကို ပြသည်ample-
ပုံ ၇။ လုပ်ထုံးလုပ်နည်း
- testbench simulation directory သို့ပြောင်းပါ၊ /pcie_ed_tb/pcie_ed_tb/sim/ /simulator။
- သင်နှစ်သက်ရာ Simulator အတွက် simulation script ကိုဖွင့်ပါ။ အောက်ပါဇယားကို ကိုးကားပါ။
- ရလဒ်များကိုခွဲခြမ်းစိတ်ဖြာပါ။
မှတ်ချက် - P-Tile သည် Parallel PIPE Simulations များကို မပံ့ပိုးပါ။
ဇယား ၁။ Simulation လုပ်ဆောင်ရန် အဆင့်များ
Simulator | အလုပ်လမ်းညွှန် | ညွှန်ကြားချက်များ |
ModelSim* SE၊ Siemens* EDA QuestaSim*- Intel FPGA Edition | <example_design>/pcie_ed_tb/ pcie_ed_tb/sim/mentor/ | 1. vsim ကိုခေါ်ပါ (သင်အောက်ပါ command များကိုလုပ်ဆောင်နိုင်သည့် console window တစ်ခုပေါ်လာသည့် vsim ကိုရိုက်ထည့်ခြင်းဖြင့်)။ 2. msim_setup.tcl ကိုလုပ်ပါ။ မှတ်ချက်- နောက်တစ်နည်းအားဖြင့် အဆင့် 1 နှင့် 2 ကိုလုပ်မည့်အစား၊ vsim -c -do msim_setup.tcl ဟုရိုက်နိုင်သည်။ 3. ld_debug 4. run -all 5. အောင်မြင်သော သရုပ်ဖော်မှုတစ်ခုသည် "အောင်မြင်စွာ ပြီးစီးမှုကြောင့် သရုပ်ဖော်မှု ရပ်သွားသည်!" |
VCS* | <example_design>/pcie_ed_tb/ pcie_ed_tb/sim/synopsys/vcs | 1. sh vcs_setup.sh USER_DEFINED_COMPILE_OPTIONS=”” USER_DEFINED_ELAB_OPTIONS=”-xlrm\ uniq_prior_final” USER_DEFINED_SIM_OPTIONS=” ဟုရိုက်ပါ |
ဆက်ရန်… |
Simulator | အလုပ်လမ်းညွှန် | ညွှန်ကြားချက်များ |
မှတ်ချက်- အထက်ပါ command သည် single-line command ဖြစ်သည်။ 2. အောင်မြင်သော သရုပ်ဖော်မှုတစ်ခုသည် "အောင်မြင်စွာ ပြီးစီးမှုကြောင့် သရုပ်ဖော်မှု ရပ်သွားသည်!" မှတ်ချက်- အပြန်အလှန်တုံ့ပြန်မှုမုဒ်တွင် သရုပ်ပြမှုတစ်ခုကို လုပ်ဆောင်ရန် အောက်ပါအဆင့်များကို အသုံးပြုပါ- (အပြန်အလှန်အသုံးမပြုသောမုဒ်တွင် သင်လုပ်ဆောင်နိုင်သော simv ကို ထုတ်လုပ်ထားပြီးဖြစ်ပါက simv နှင့် simv.diadir ကို ဖျက်ပါ) 1. vcs_setup.sh ကိုဖွင့်ပါ။ file ပြီးလျှင် VCS ကွန်မန်းတွင် အမှားရှာပြင်ဆင်မှုတစ်ခု ထည့်ပါ- vcs -debug_access+r 2. ဒီဇိုင်းဟောင်းကို စုစည်းပါ။ample- sh vcs_setup.sh USER_DEFINED_ELAB_OPTIONS=”- xlrm\ uniq_prior_final” SKIP_SIM=1 3. အပြန်အလှန်တုံ့ပြန်မှုမုဒ်တွင် သရုပ်ပြခြင်းကို စတင်ပါ- simv -gui & |
ဤစမ်းသပ်ခုံသည် Gen4 x16 မျိုးကွဲအထိ အတုယူသည်။
အမှားအယွင်းများ မဖြစ်ပေါ်ပါက "အောင်မြင်စွာ ပြီးစီးမှုကြောင့် သရုပ်ပြမှု ရပ်သွားသည်" ဟု သရုပ်ပြမှု အစီရင်ခံသည်။
၂.၃.၁။ ခုံတန်းလျား
testbench သည် စမ်းသပ်မောင်းနှင်မှု မော်ဂျူး၊ altpcietb_bfm_rp_gen4_x16.sv ကို အသုံးပြု၍ ဖွဲ့စည်းမှုပုံစံနှင့် မှတ်ဉာဏ် လွှဲပြောင်းမှုများကို စတင်ရန်။ စတင်ချိန်တွင်၊ စမ်းသပ်မောင်းနှင်မှု module သည် Root Port နှင့် Endpoint Configuration Space မှတ်ပုံတင်မှုများမှ အချက်အလက်များကို ပြသပေးသည်၊ သို့မှသာ Parameter Editor ကိုအသုံးပြု၍ သင်သတ်မှတ်ထားသော ကန့်သတ်ဘောင်များနှင့် ဆက်စပ်နိုင်မည်ဖြစ်သည်။
ရည်းစားဟောင်းample ဒီဇိုင်းနှင့် testbench ကို PCIe အတွက် P-Tile IP အတွက် သင်ရွေးချယ်သော ဖွဲ့စည်းမှုအပေါ် အခြေခံ၍ ဒိုင်းနမစ်ထုတ်ပေးပါသည်။ testbench သည် Intel Quartus Prime ရှိ Parameter Editor တွင် သင်သတ်မှတ်ထားသော ဘောင်များကို အသုံးပြုသည်။ ဤ testbench သည် အမှတ်စဉ် PCI Express အင်တာဖေ့စ်ကို အသုံးပြု၍ ×16 PCI Express လင့်ခ်အထိ အတုယူသည်။ testbench ဒီဇိုင်းသည် တစ်ချိန်တည်းတွင် PCI Express လင့်ခ်တစ်ခုထက်ပိုသော ချိတ်ဆက်မှုကို ခွင့်ပြုသည်။ အောက်ပါပုံသည် မြင့်မားသောအဆင့်ကို ဖော်ပြသည်။ view PIO ဒီဇိုင်းဟောင်း၏ampလဲ့
ပုံ ၇။ PIO ဒီဇိုင်းထွample Simulation Testbench
testbench ၏ထိပ်တန်းအဆင့်သည်အောက်ပါပင်မ module များကိုလှုံ့ဆော်ပေးသည်-
- altpcietb_bfm_rp_gen4x16.sv — ၎င်းသည် Root Port PCIe BFM ဖြစ်သည်။
// လမ်းကြောင်း
/intel_pcie_ptile_ast_0_example_design/pcie_ed_tb/ip/
pcie_ed_tb/dut_pcie_tb_ip/intel_pcie_ptile_tbed_ /sim - pcie_ed_dut.ip- ဤသည်မှာ သင်သတ်မှတ်ထားသော ဘောင်များပါသည့် အဆုံးအမှတ် ဒီဇိုင်းဖြစ်သည်။
// လမ်းကြောင်း
/intel_pcie_ptile_ast_0_example_design/ip/pcie_ed - pcie_ed_pio0.ip- ဤမော်ဂျူးသည် PIO ဒီဇိုင်းဟောင်းအတွက် အရောင်းအ၀ယ်ပြုလုပ်ရန် ပစ်မှတ်နှင့် စတင်လုပ်ဆောင်သူဖြစ်သည်။ampလဲ့
// လမ်းကြောင်း
/intel_pcie_ptile_ast_0_example_design/ip/pcie_ed - pcie_ed_sriov0.ip- ဤမော်ဂျူးသည် SR-IOV ဒီဇိုင်းဟောင်းအတွက် အရောင်းအ၀ယ်ပြုလုပ်ရန် ပစ်မှတ်နှင့် စတင်လုပ်ဆောင်သူဖြစ်သည်။ampလဲ့
// လမ်းကြောင်း
/intel_pcie_ptile_ast_0_example_design/ip/pcie_ed
ပုံ ၇။ SR-IOV ဒီဇိုင်းထွample Simulation Testbench
ထို့အပြင်၊ testbench တွင်အောက်ပါတာဝန်များကိုလုပ်ဆောင်သည့်လုပ်ရိုးလုပ်စဉ်များရှိသည်။
- လိုအပ်သော ကြိမ်နှုန်းဖြင့် Endpoint အတွက် ရည်ညွှန်းနာရီကို ထုတ်လုပ်သည်။
- စတင်ချိန်တွင် PCI Express ပြန်လည်သတ်မှတ်မှုကို ပေးသည်။
Root Port BFM ၏အသေးစိတ်အချက်အလက်များအတွက်၊ PCI Express အသုံးပြုသူလမ်းညွှန်အတွက် Intel FPGA P-Tile Avalon streaming IP ၏ TestBench အခန်းကို ဖတ်ရှုပါ။
ဆက်စပ်အချက်အလက်
PCI Express အသုံးပြုသူလမ်းညွှန်အတွက် Intel FPGA P-Tile Avalon streaming IP
၂.၃.၁.၁။ Driver Module ကို စမ်းသပ်ပါ။
စမ်းသပ်မောင်းနှင်မှု မော်ဂျူး၊ intel_pcie_ptile_tbed_hwtcl.v၊ သည် ထိပ်တန်းအဆင့် BFM၊altpcietb_bfm_top_rp.v ကို ချက်ချင်းလုပ်ဆောင်သည်။
ထိပ်တန်းအဆင့် BFM သည် အောက်ပါတာဝန်များကို ပြီးမြောက်သည်-
- ယာဉ်မောင်းကို အရှိန်မြှင့်ပြီး စောင့်ကြည့်ပါ။
- Root Port BFM ကို Instantiates ။
- အမှတ်စဉ်အင်တာဖေ့စ်ကို အင်စတောလုပ်သည်။
ဖွဲ့စည်းမှုပုံစံ module၊ altpcietb_g3bfm_configure.v၊ သည် အောက်ပါလုပ်ဆောင်စရာများကို လုပ်ဆောင်သည်-
- BAR များကို စီစဉ်သတ်မှတ်ပေးသည်။
- Root Port နှင့် Endpoint ကို စီစဉ်သတ်မှတ်ပေးသည်။
- ပြည့်စုံသော Configuration Space၊ BAR၊ MSI၊ MSI-X နှင့် AER ဆက်တင်များကို ပြသသည်။
၂.၃.၁.၂။ PIO ဒီဇိုင်းထွample Testbench
အောက်ပါပုံသည် PIO ဒီဇိုင်းဟောင်းကိုပြသထားသည်။ample simulation ဒီဇိုင်း အထက်အောက်။ PIO ဒီဇိုင်းဟောင်းအတွက် စမ်းသပ်မှုများample ကို apps_type_hwtcl parameter ဖြင့်သတ်မှတ်ထားသည်။
3. ဤကန့်သတ်ချက်တန်ဖိုးအောက်တွင် လုပ်ဆောင်သည့် စမ်းသပ်မှုများကို ebfm_cfg_rp_ep_rootport၊ find_mem_bar နှင့် downstream_loop တွင် သတ်မှတ်ထားပါသည်။
ပုံ 17. PIO Design Example Simulation Design Hierarchy
testbench သည် link training ဖြင့် စတင်ပြီး စာရင်းပေးသွင်းရန်အတွက် IP ၏ configuration space ကို ရယူပါသည်။ downstream_loop ဟုခေါ်သော အလုပ်တစ်ခု (Root Port တွင် သတ်မှတ်ထားသည်။
PCIe BFM altpcietb_bfm_rp_gen4_x16.sv) ထို့နောက် PCIe လင့်ခ်စမ်းသပ်မှုကို လုပ်ဆောင်သည်။ ဤစမ်းသပ်မှုတွင် အောက်ပါအဆင့်များ ပါဝင်ပါသည်။
- Endpoint ၏နောက်ကွယ်ရှိ on-chip memory တွင် data တစ်ခုတည်းကိုရေးရန် memory write command ကိုထုတ်ပါ။
- on-chip မမ်မိုရီမှဒေတာကိုပြန်ဖတ်ရန် memory read command ကိုထုတ်ပါ။
- ဖတ်ရှုသည့်ဒေတာကို ရေးထားသောဒေတာနှင့် နှိုင်းယှဉ်ပါ။ ကိုက်ညီပါက စာမေးပွဲက ၎င်းကို Pass အဖြစ် ရေတွက်သည်။
- အဆင့် 1၊ 2 နှင့် 3 ကို 10 ထပ်လုပ်ပါ။
ပထမဆုံး memory write ဟာ 219 ဝန်းကျင်လောက်မှာ ဖြစ်ခဲ့ပါတယ်။ ၎င်းကို PCIe အတွက် P-tile Hard IP ၏ Avalon-ST RX အင်တာဖေ့စ်တွင် ဖတ်သည့်မှတ်ဉာဏ်တစ်ခုဖြင့် လိုက်ပါလာသည်။ ပြီးစီးမှု TLP သည် Avalon-ST TX အင်တာဖေ့စ်တွင် မမ်မိုရီဖတ်ရန် တောင်းဆိုချက်ပြီးနောက် မကြာမီပေါ်လာသည်။
၂.၃.၁.၃။ SR-IOV ဒီဇိုင်းထွample Testbench
အောက်ပါပုံသည် SR-IOV ဒီဇိုင်းဟောင်းကို ပြသထားသည်။ample simulation ဒီဇိုင်း အထက်အောက်။ SR-IOV ဒီဇိုင်းဟောင်းအတွက် စမ်းသပ်မှုများample ကို sriov_test ဟုခေါ်သော အလုပ်ဖြင့် လုပ်ဆောင်သည်၊
altpcietb_bfm_cfbp.sv တွင် သတ်မှတ်ထားသည်။
ပုံ ၇။ SR-IOV ဒီဇိုင်းထွample Simulation Design Hierarchy
SR-IOV testbench သည် PF တစ်ခုလျှင် Physical Functions (PFs) နှင့် 32 Virtual Functions (VFs) အထိ ပံ့ပိုးပေးပါသည်။
testbench သည် link training ဖြင့် စတင်ပြီး စာရင်းပေးသွင်းရန်အတွက် IP ၏ configuration space ကို ရယူပါသည်။ ၎င်းနောက်၊ ၎င်းသည် အောက်ပါအဆင့်များကို လုပ်ဆောင်သည်။
- နှိုင်းယှဉ်မှုအတွက် တူညီသောဒေတာကို ပြန်ဖတ်ရန် မန်မိုရီဖတ်ရန် တောင်းဆိုချက်ဖြင့် PF သို့ မန်မိုရီရေးရန် တောင်းဆိုချက်တစ်ခု ပေးပို့ပါ။ ဖတ်ရှုထားသော အချက်အလက်သည် ရေးထားသော အချက်အလက်နှင့် ကိုက်ညီပါက၊
Pass တစ်ခု။ ဤစမ်းသပ်မှုကို my_test (altpcietb_bfm_cfbp.v တွင် သတ်မှတ်ထားသည်) ဟုခေါ်သော အလုပ်ဖြင့် လုပ်ဆောင်ပါသည်။ ဤစမ်းသပ်မှုကို PF တစ်ခုစီအတွက် နှစ်ကြိမ် ထပ်ခါတလဲလဲ ပြုလုပ်သည်။ - နှိုင်းယှဉ်မှုအတွက် တူညီသောဒေတာကို ပြန်ဖတ်ရန် မန်မိုရီဖတ်ရန် တောင်းဆိုချက်ဖြင့် VF သို့ မန်မိုရီရေးရန် တောင်းဆိုချက်တစ်ခု ပေးပို့ပါ။ ဖတ်ရှုထားသော အချက်အလက်သည် ရေးထားသော အချက်အလက်နှင့် ကိုက်ညီပါက၊
Pass တစ်ခု။ ဤစမ်းသပ်မှုကို cfbp_target_test (altpcietb_bfm_cfbp.v တွင် သတ်မှတ်ထားသည်) ဟုခေါ်သော အလုပ်ဖြင့် လုပ်ဆောင်ပါသည်။ ဤစမ်းသပ်မှုသည် VF တစ်ခုစီအတွက် ထပ်ခါတလဲလဲဖြစ်သည်။
ပထမဆုံး memory write သည် ကျွန်ုပ်တို့ 263 ဝန်းကျင်တွင် ဖြစ်ပွားသည်။ ၎င်းကို PCIe အတွက် P-tile Hard IP ၏ PF0 ၏ Avalon-ST RX အင်တာဖေ့စ်တွင် ဖတ်မှတ်ထားသည့် မှတ်ဉာဏ်တစ်ခုက နောက်တွင် ရှိနေသည်။ ပြီးစီးမှု TLP သည် Avalon-ST TX အင်တာဖေ့စ်တွင် မမ်မိုရီဖတ်ရန် တောင်းဆိုချက်ပြီးနောက် မကြာမီပေါ်လာသည်။
၂.၄။ ဒီဇိုင်းထွကို ပြုစုခြင်း၊ample
- သို့သွားပါ။ /intel_pcie_ptile_ast_0_example_design/ နှင့် pcie_ed.qpf ကိုဖွင့်ပါ။
- အောက်ဖော်ပြပါ ဖွံ့ဖြိုးတိုးတက်ရေးကိရိယာနှစ်ခုမှ တစ်ခုခုကို ရွေးချယ်ပါက၊ VID ဆိုင်ရာ ဆက်တင်များကို .qsf တွင် ထည့်သွင်းထားသည်။ file ထုတ်လုပ်လိုက်တဲ့ ဒီဇိုင်း example၊ ၎င်းတို့ကို ကိုယ်တိုင်ထည့်ရန် မလိုအပ်ပါ။ ဤဆက်တင်များသည် ဘုတ်အဖွဲ့သီးသန့်ဖြစ်ကြောင်း သတိပြုပါ။
• Intel Stratix 10 DX P-Tile ES1 FPGA ဖွံ့ဖြိုးတိုးတက်ရေးကိရိယာအစုံ
• Intel Stratix 10 DX P-Tile ထုတ်လုပ်မှု FPGA ဖွံ့ဖြိုးတိုးတက်ရေးကိရိယာအစုံ
• Intel Agilex F-Series P-Tile ES0 FPGA ဖွံ့ဖြိုးတိုးတက်ရေးကိရိယာအစုံ - Processing menu တွင်၊ Start Compilation ကိုရွေးချယ်ပါ။
၂.၅။ Linux Kernel Driver ကို ထည့်သွင်းခြင်း။
ဒီဇိုင်းဟောင်းကို မစမ်းသပ်နိုင်ခင်ampဟာ့ဒ်ဝဲတွင်၊ သင်သည် Linux kernel ကို ထည့်သွင်းရပါမည်။
ကားသမား။ အောက်ပါစမ်းသပ်မှုများကို လုပ်ဆောင်ရန် ဤဒရိုက်ဗာကို သင်အသုံးပြုနိုင်သည်-
• စာရေးခြင်းနှင့်ဖတ်ခြင်း 100 လုပ်ဆောင်နိုင်သော PCIe လင့်ခ်စမ်းသပ်မှု
• Memory space DWORD
ဖတ်ပြီးရေးတယ်။
• Configuration Space DWORD ဖတ်ပြီးရေးသည်။
(၄)
ထို့အပြင်၊ သင်သည်အောက်ပါကန့်သတ်ချက်များ၏တန်ဖိုးကိုပြောင်းလဲရန်ယာဉ်မောင်းကိုသုံးနိုင်သည်။
• အသုံးပြုနေသော BAR
• ရွေးချယ်ထားသောကိရိယာ (ဘတ်စ်ကား၊ ကိရိယာနှင့် လုပ်ဆောင်ချက် (BDF) အတွက်) နံပါတ်များကို သတ်မှတ်ခြင်းဖြင့်
စက်)
kernel driver ကိုထည့်သွင်းရန်အောက်ပါအဆင့်များကိုဖြည့်ပါ။
- ဟောင်းအောက်ရှိ ./software/kernel/linux သို့သွားပါ။ample ဒီဇိုင်းမျိုးဆက်လမ်းညွှန်။
- ထည့်သွင်းခြင်း၊ တင်ခြင်းနှင့် ဖြုတ်ခြင်းတွင် ခွင့်ပြုချက်များကို ပြောင်းလဲပါ။ files:
$ chmod 777 install load ကို unload လုပ်ပါ။ - Driver ကို install လုပ်ပါ
$ sudo ./install - ယာဉ်မောင်းတပ်ဆင်မှုကို အတည်ပြုပါ-
$lsmod | grep intel_fpga_pcie_drv
မျှော်လင့်ထားသည့်ရလဒ်-
intel_fpga_pcie_drv 17792 ၀ - Linux သည် PCIe ဒီဇိုင်းဟောင်းကို အသိအမှတ်ပြုကြောင်း အတည်ပြုပါ။ample-
$lspci -d 1172:000 -v | grep intel_fpga_pcie_drv
မှတ်ချက် - အကယ်၍ သင်သည် Vendor ID ကိုပြောင်းလဲခဲ့ပါက Intel ၏ Vendor ID အသစ်ကို အစားထိုးပါ။
ဤအမိန့်တော်တွင် ရောင်းချသူ ID။
မျှော်လင့်ထားသည့်ရလဒ်-
အသုံးပြုနေသည့် Kernel driver- intel_fpga_pcie_drv
၂.၆။ ဒီဇိုင်းထွကို လုပ်ဆောင်ခြင်း။ample
ဤသည်မှာ P-Tile Avalon-ST PCIe ဒီဇိုင်းဟောင်းတွင် သင်လုပ်ဆောင်နိုင်သည့် စမ်းသပ်လုပ်ဆောင်မှုများဖြစ်သည်။amples-
- ဤအသုံးပြုသူလမ်းညွှန်တစ်လျှောက်လုံး၊ ဝေါဟာရစကားလုံးများ၊ DWORD နှင့် QWORD တို့သည် PCI Express Base Specification တွင် ၎င်းတို့တွင်ရှိသည့် တူညီသောအဓိပ္ပါယ်ရှိသည်။ စကားလုံးတစ်လုံးသည် 16 bits၊ DWORD သည် 32 bits ဖြစ်ပြီး QWORD သည် 64 bits ဖြစ်သည်။
ဇယား 2။ P-Tile Avalon-ST PCIe Design Ex မှ ပံ့ပိုးထားသော စမ်းသပ်ဆောင်ရွက်မှုများamples
စစ်ဆင်ရေး | လိုအပ်သော BAR | P-Tile Avalon-ST PCIe Design Ex မှပံ့ပိုးထားသည်။ample |
0- လင့်ခ်စမ်းသပ်မှု – 100 ရေးသားပြီး ဖတ်သည်။ | 0 | ဟုတ်ကဲ့ |
1- memory space ကိုရေးပါ။ | 0 | ဟုတ်ကဲ့ |
2- memory space ကိုဖတ်ပါ။ | 0 | ဟုတ်ကဲ့ |
3- ဖွဲ့စည်းမှုနေရာကို ရေးပါ။ | မရှိ | ဟုတ်ကဲ့ |
4- ဖွဲ့စည်းမှုပုံစံနေရာကို ဖတ်ပါ။ | မရှိ | ဟုတ်ကဲ့ |
5- BAR ကိုပြောင်းပါ။ | မရှိ | ဟုတ်ကဲ့ |
6- စက်ကိုပြောင်းပါ။ | မရှိ | ဟုတ်ကဲ့ |
7- SR-IOV ကိုဖွင့်ပါ။ | မရှိ | ဟုတ်တယ် (*) |
8- လက်ရှိစက်ပစ္စည်းနှင့်သက်ဆိုင်သည့် ဖွင့်ထားသည့် virtual လုပ်ဆောင်ချက်တိုင်းအတွက် လင့်ခ်စမ်းသပ်မှုပြုလုပ်ပါ။ | မရှိ | ဟုတ်တယ် (*) |
9- DMA လုပ်ဆောင်ပါ။ | မရှိ | မရှိ |
10: အစီအစဉ်မှထွက်ပါ။ | မရှိ | ဟုတ်ကဲ့ |
မှတ်ချက်- (*) ဤစမ်းသပ်ဆောင်ရွက်မှုများသည် SR-IOV ဒီဇိုင်းဟောင်းမှသာလျှင် ရရှိနိုင်ပါသည်။ample ကိုရွေးချယ်ထားသည်။
၂.၆.၁။ PIO Design Ex ကို run ပါ။ample
- ./software/user/ex သို့သွားပါ။ample ဒီဇိုင်း ex အောက်ample လမ်းညွှန်။
- ဒီဇိုင်းဟောင်းကို စုစည်းပါ။ample လျှောက်လွှာ
ဒေါ်လာလုပ်ပါ။ - စမ်းသပ်မှုကို လုပ်ဆောင်ပါ
$ sudo ./intel_fpga_pcie_link_test
သင်သည် Intel FPGA IP PCIe လင့်ခ်စမ်းသပ်မှုကို manual သို့မဟုတ် အလိုအလျောက်မုဒ်တွင် လုပ်ဆောင်နိုင်သည်။ ရွေးချယ်ပါ-
• အလိုအလျောက်မုဒ်တွင်၊ အပလီကေးရှင်းသည် စက်ပစ္စည်းကို အလိုအလျောက်ရွေးချယ်သည်။ စမ်းသပ်မှုသည် Vendor ID နှင့် ကိုက်ညီခြင်းဖြင့် အနိမ့်ဆုံး BDF နှင့် Intel PCIe စက်ပစ္စည်းကို ရွေးချယ်သည်။
စမ်းသပ်မှုတွင် အနိမ့်ဆုံးရရှိနိုင်သော BAR ကိုလည်း ရွေးချယ်သည်။
• လက်စွဲမုဒ်တွင်၊ စမ်းသပ်မှုသည် ဘတ်စ်ကား၊ စက်နှင့် လုပ်ဆောင်ချက်နံပါတ်နှင့် BAR အတွက် သင့်အား မေးမြန်းသည်။
Intel Stratix 10 DX သို့မဟုတ် Intel Agilex Development Kit အတွက်၊ သင်ဆုံးဖြတ်နိုင်သည်။
အောက်ပါ command ကိုရိုက်ခြင်းဖြင့် BDF
$ lspci -d 1172:
4. ဤတွင် sampအလိုအလျောက်နှင့် လက်စွဲမုဒ်များအတွက် le စာသားမှတ်တမ်းများ
အလိုအလျောက်မုဒ်-
လူကိုယ်တိုင်မုဒ်-
ဆက်စပ်အချက်အလက်
PCIe Link Inspector ကျော်view
Physical, Data Link နှင့် Transaction Layers များတွင် လင့်ခ်ကို စောင့်ကြည့်ရန် PCIe Link Inspector ကို အသုံးပြုပါ။
၂.၆.၂။ SR-IOV ဒီဇိုင်းထွကို လုပ်ဆောင်ခြင်း။ample
ဤသည်မှာ SR-IOV ဒီဇိုင်းဟောင်းကို စမ်းသပ်ရန် အဆင့်များဖြစ်သည်။ampဟာ့ဒ်ဝဲကို အသုံးချပါ
- sudo ကို run ခြင်းဖြင့် Intel FPGA IP PCIe လင့်ခ်စမ်းသပ်မှုကို လုပ်ဆောင်ပါ။/
intel_fpga_pcie_link_test command ပြီးနောက် option 1 ကို ရွေးပါ-
စက်ပစ္စည်းတစ်ခုကို ကိုယ်တိုင်ရွေးချယ်ပါ။ - အတုအယောင်လုပ်ဆောင်ချက်များကို ခွဲဝေပေးသည့် ရုပ်ပိုင်းဆိုင်ရာလုပ်ဆောင်မှု၏ BDF ကို ထည့်သွင်းပါ။
- စမ်းသပ်မှုမီနူးသို့ ရှေ့ဆက်ရန် BAR “0” ကို ရိုက်ထည့်ပါ။
- လက်ရှိစက်ပစ္စည်းအတွက် SR-IOV ကိုဖွင့်ရန် ရွေးချယ်မှု 7 ကိုထည့်ပါ။
- လက်ရှိစက်ပစ္စည်းအတွက် ဖွင့်ထားရမည့် virtual function အရေအတွက်ကို ထည့်သွင်းပါ။
- ရုပ်ပိုင်းဆိုင်ရာလုပ်ဆောင်ချက်အတွက် ခွဲဝေပေးထားသော ဖွင့်ထားသော virtual လုပ်ဆောင်ချက်တိုင်းအတွက် လင့်ခ်စမ်းသပ်မှုလုပ်ဆောင်ရန် ရွေးချယ်မှု 8 ကို ထည့်သွင်းပါ။ link test အပလီကေးရှင်းသည် ဒေတာ dword တစ်လုံးစီဖြင့် memory 100 ရေးပြီး စစ်ဆေးရန်အတွက် data ကို ပြန်ဖတ်မည်ဖြစ်သည်။ အပလီကေးရှင်းသည် စမ်းသပ်မှုအဆုံးတွင် လင့်ခ်စမ်းသပ်မှု မအောင်မြင်သည့် အတုအယောင်လုပ်ဆောင်ချက် အရေအတွက်ကို ပရင့်ထုတ်မည်ဖြစ်သည်။
7. terminal အသစ်တွင် lspci –d 1172: | ကို run ပါ။ PFs နှင့် VFs စာရင်းကောက်ခြင်းကို အတည်ပြုရန် grep -c "Altera" အမိန့်။ မျှော်လင့်ထားသည့်ရလဒ်မှာ ရုပ်ပိုင်းဆိုင်ရာလုပ်ဆောင်ချက်အရေအတွက်နှင့် virtual functions အရေအတွက်တို့ဖြစ်သည်။
PCI Express Design အတွက် P-tile Avalon Streaming IP
Example အသုံးပြုသူလမ်းညွှန် မော်ကွန်း
Intel ကော်ပိုရေးရှင်း။ မူပိုင်ခွင့်များရယူပြီး။ Intel၊ Intel လိုဂိုနှင့် အခြားသော Intel အမှတ်အသားများသည် Intel ကော်ပိုရေးရှင်း သို့မဟုတ် ၎င်း၏လုပ်ငန်းခွဲများ၏ အမှတ်တံဆိပ်များဖြစ်သည်။ Intel သည် Intel ၏ စံအာမခံချက်နှင့်အညီ ၎င်း၏ FPGA နှင့် တစ်ပိုင်းလျှပ်ကူးပစ္စည်းထုတ်ကုန်များ၏ စွမ်းဆောင်ရည်ကို လက်ရှိ သတ်မှတ်ချက်များအတိုင်း အာမခံထားသော်လည်း မည်သည့်ထုတ်ကုန်နှင့် ဝန်ဆောင်မှုများကိုမဆို အသိပေးခြင်းမရှိဘဲ အချိန်မရွေး အပြောင်းအလဲပြုလုပ်ပိုင်ခွင့်ကို လက်ဝယ်ရှိပါသည်။ Intel မှ စာဖြင့် အတိအလင်း သဘောတူထားသည့်အတိုင်း ဤနေရာတွင် ဖော်ပြထားသော အချက်အလက်၊ ထုတ်ကုန် သို့မဟုတ် ဝန်ဆောင်မှုကို အသုံးပြုခြင်း သို့မဟုတ် အသုံးပြုခြင်းမှ ဖြစ်ပေါ်လာသော တာဝန် သို့မဟုတ် တာဝန်ခံမှု မရှိဟု ယူဆပါသည်။ Intel သုံးစွဲသူများသည် ထုတ်ဝေထားသော အချက်အလက်များနှင့် ထုတ်ကုန် သို့မဟုတ် ဝန်ဆောင်မှုများအတွက် အမှာစာမတင်မီ နောက်ဆုံးဗားရှင်းကို ရယူရန် အကြံပြုအပ်ပါသည်။ *အခြားအမည်များနှင့် အမှတ်တံဆိပ်များကို အခြားသူများ၏ပိုင်ဆိုင်မှုအဖြစ် တောင်းဆိုနိုင်ပါသည်။
ISO
၁၁:၄၂
မှတ်ပုံတင်ထားသည်။
Intel P-Tile Avalon အတွက် စာရွက်စာတမ်း ပြန်လည်ပြင်ဆင်မှုမှတ်တမ်း
PCIe Design Ex အတွက် Streaming Hard IPample အသုံးပြုသူလမ်းညွှန်
စာရွက်စာတမ်းဗားရှင်း | Intel Quartus Prime ဗားရှင်း | IP ဗားရှင်း | အပြောင်းအလဲများ |
2021.10.04 | 21.3 | 6.0.0 | SR-IOV ဒီဇိုင်းဟောင်းအတွက် ပံ့ပိုးထားသော ဖွဲ့စည်းမှုများကို ပြောင်းလဲခဲ့သည်။ample Gen3 x16 EP နှင့် Gen4 x16 EP မှ Gen3 x8 EP နှင့် Gen4 x8 EP Single Root I/O Virtualization (SR-IOV) Design Ex အတွက် Functional Description တွင် leample ကဏ္ဍ။ Intel Stratix 10 DX P-tile Production FPGA Development Kit အတွက် အထောက်အပံ့ကို ဒီဇိုင်း Ex ထုတ်လုပ်ခြင်းသို့ ပေါင်းထည့်ခဲ့သည်။ample ကဏ္ဍ။ |
2021.07.01 | 21.2 | 5.0.0 | PIO နှင့် SR-IOV ဒီဇိုင်းဟောင်းအတွက် သရုပ်ပြလှိုင်းပုံစံများကို ဖယ်ရှားခဲ့သည်။amples ကဏ္ဍမှ ဒီဇိုင်းထွကို အတုယူခြင်း။ampလဲ့ ကဏ္ဍတွင် BDF ကိုပြသရန် အမိန့်ကို အပ်ဒိတ်လုပ်ခဲ့သည်။ PIO Design Ex ကို run ပါ။ampလဲ့ |
2020.10.05 | 20.3 | 3.1.0 | Avalon Streaming ဒီဇိုင်းဟောင်းကတည်းက မှတ်ပုံတင်ခြင်းကဏ္ဍကို ဖယ်ရှားခဲ့သည်။amples တွင် control register မရှိပါ။ |
2020.07.10 | 20.2 | 3.0.0 | ထည့်သွင်းထားသော သရုပ်ဖော်လှိုင်းပုံစံများ၊ စမ်းသပ်မှုကိစ္စဖော်ပြချက်များနှင့် ဒီဇိုင်းဟောင်းအတွက် စမ်းသပ်ရလဒ်ဖော်ပြချက်များamples ModelSim Simulator အတွက် Simulator အတွက် Simulation ညွှန်ကြားချက်များကို ဒီဇိုင်း Ex ကို ပုံဖော်ခြင်းample ကဏ္ဍ။ |
2020.05.07 | 20.1 | 2.0.0 | PCI Express Design Ex အတွက် စာရွက်စာတမ်းခေါင်းစဉ်ကို Intel FPGA P-Tile Avalon streaming IP သို့ အပ်ဒိတ်လုပ်ခဲ့သည်။ampတရားဝင်အမည်ပေးခြင်း လမ်းညွှန်ချက်အသစ်များနှင့် ကိုက်ညီရန် အသုံးပြုသူလမ်းညွှန်။ VCS အပြန်အလှန်တုံ့ပြန်မှုမုဒ် သရုပ်ဖော်မှုအမိန့်ကို အပ်ဒိတ်လုပ်ခဲ့သည်။ |
2019.12.16 | 19.4 | 1.1.0 | SR-IOV ဒီဇိုင်းဟောင်းကို ထည့်ထားသည်။ampဖော်ပြချက်။ |
2019.11.13 | 19.3 | 1.0.0 | Gen4 x8 Endpoint နှင့် Gen3 x8 Endpoint ကို ပံ့ပိုးပေးထားသော ဖွဲ့စည်းမှုစာရင်းသို့ ပေါင်းထည့်ထားသည်။ |
2019.05.03 | 19.1.1 | 1.0.0 | ကနဦး ထုတ်ဝေမှု။ |
Intel ကော်ပိုရေးရှင်း။ မူပိုင်ခွင့်များရယူပြီး။ Intel၊ Intel လိုဂိုနှင့် အခြားသော Intel အမှတ်အသားများသည် Intel ကော်ပိုရေးရှင်း သို့မဟုတ် ၎င်း၏လုပ်ငန်းခွဲများ၏ အမှတ်တံဆိပ်များဖြစ်သည်။ Intel သည် Intel ၏ စံအာမခံချက်နှင့်အညီ ၎င်း၏ FPGA နှင့် တစ်ပိုင်းလျှပ်ကူးပစ္စည်းထုတ်ကုန်များ၏ စွမ်းဆောင်ရည်ကို လက်ရှိ သတ်မှတ်ချက်များအတိုင်း အာမခံထားသော်လည်း မည်သည့်ထုတ်ကုန်နှင့် ဝန်ဆောင်မှုများကိုမဆို အသိပေးခြင်းမရှိဘဲ အချိန်မရွေး အပြောင်းအလဲပြုလုပ်ပိုင်ခွင့်ကို လက်ဝယ်ရှိပါသည်။ Intel မှ စာဖြင့် အတိအလင်း သဘောတူထားသည့်အတိုင်း ဤနေရာတွင် ဖော်ပြထားသော အချက်အလက်၊ ထုတ်ကုန် သို့မဟုတ် ဝန်ဆောင်မှုကို အသုံးပြုခြင်း သို့မဟုတ် အသုံးပြုခြင်းမှ ဖြစ်ပေါ်လာသော တာဝန် သို့မဟုတ် တာဝန်ခံမှု မရှိဟု ယူဆပါသည်။ Intel သုံးစွဲသူများသည် ထုတ်ဝေထားသော အချက်အလက်များနှင့် ထုတ်ကုန် သို့မဟုတ် ဝန်ဆောင်မှုများအတွက် အမှာစာမတင်မီ နောက်ဆုံးဗားရှင်းကို ရယူရန် အကြံပြုအပ်ပါသည်။ *အခြားအမည်များနှင့် အမှတ်တံဆိပ်များကို အခြားသူများ၏ပိုင်ဆိုင်မှုအဖြစ် တောင်းဆိုနိုင်ပါသည်။
ISO
၁၁:၄၂
မှတ်ပုံတင်ထားသည်။
အွန်လိုင်းဗားရှင်း
တုံ့ပြန်ချက်ပေးပို့ပါ။
ID: 683038
UG-20234
ဗားရှင်း- 2021.10.04
စာရွက်စာတမ်းများ / အရင်းအမြစ်များ
![]() |
PCI Express Design Ex အတွက် intel FPGA P-Tile Avalon Streaming IPample [pdf] အသုံးပြုသူလမ်းညွှန် PCI Express Design Ex အတွက် FPGA P-Tile၊ Avalon Streaming IPample, PCI Express Design Ex အတွက် FPGA P-Tile Avalon Streaming IPample၊ FPGA P-Tile Avalon လွှင့်တင် IP |