Intel - uphawuI-Software yeYunithi eSebenzayo yokulinganisa imekobume
Isikhokelo somsebenzisi

Malunga nolu xwebhu

Olu xwebhu luchaza indlela yokulinganisa njengeample Accelerator Functional Unit (AFU) usebenzisa i-Intel
I-Accelerator Functional Unit (AFU) Ukulinganisa Imo engqongileyo (ASE). Jonga kwi-Intel Accelerator Functional Unit (AFU) Ukulinganisa Imo yendalo (ASE) Isikhokelo somsebenzisi ngeenkcukacha ezibanzi malunga nezakhono ze-ASE kunye noyilo lwangaphakathi.
I-Intel Accelerator Functional Unit (AFU) Ukulinganisa Imo (ASE) yi-hardware kunye ne-software yokulinganisa ukulinganisa indawo kuyo nayiphi na i-Intel FPGA Programmable® Acceleration Card (Intel FPGA PAC). Le nkqubo yokulinganisa isoftware ngoku ixhasa ezi zilandelayo ze-Intel FPGA PACs: 10 GX FPGA

  • Intel FPGA Programmable Acceleration Card D5005
  • Ikhadi le-Intel elinoLungiselelo lokukhawulezisa kunye ne-Intel Arria®
    I-ASE ibonelela ngemodeli yetransaction ye-Core Cache Interface (CCI-P) protocol kunye nemodeli yememori ye-FPGA-eqhotyoshelweyo kwimemori yendawo.
    I-ASE ikwaqinisekisa ukuthotyelwa kweAccelerator Functional Unit (AFU) kwezi protocols zilandelayo kunye nee-APIs:
  • Ubalulo lweprotocol yeCCI-P
  • IAvalon
    IMaphu yeMemori (i-Avalon-MM) iNkcazelo yesiNxulumanisi
  • I-Open Programmable Acceleration Engine (OPAE)®

Itheyibhile 1. I-Acceleration Stack ye-Intel Xeon® CPU eneFPGAs Glossary

Ixesha Ushunqulelo Inkcazo
I-Intel Acceleration Stack ye-Intel Xeon® CPU eneFPGAs Isitaki sokukhawulezisa Ingqokelela yesoftware, i-firmware kunye nezixhobo ezibonelela ngoqhagamshelo oluphuculweyo lokusebenza phakathi kwe-Intel FPGA kunye neprosesa ye-Intel Xeon.
Intel FPGA Programmable Acceleration Card (Intel FPGA PAC) Intel FPGA PAC PCIe* FPGA i-accelerator ikhadi.
Iqulethe iFPGA Interface Manager (FIM) edityaniswa ne-Intel Xeon processor phezu kwebhasi yePCIe.
I-Intel Xeon Scalable Platform ene-FPGA eDityanisiweyo IQonga leFPGA elidityanisiweyo I-Intel Xeon kunye ne-FPGA iqonga kunye ne-Intel Xeon kunye ne-FPGA kwiphakheji enye kunye nokwabelana nge-cache ehambelanayo yememori nge-Ultra Path Interconnect (UPI).

Ulwazi olunxulumeneyo
IYunithi yokuSebenza ye-Intel Accelerator (AFU) yokuLingisa (ASE) Isikhokelo soMsebenzisi

Intel Corporation. Onke Amalungelo Agciniwe. I-Intel, ilogo ye-Intel, kunye nezinye iimpawu ze-Intel ziimpawu zorhwebo ze-Intel Corporation okanye iinkampani eziphantsi kwayo. I-Intel iqinisekisa ukusebenza kweFPGA yayo kunye neemveliso zesemiconductor kwiinkcukacha zangoku ngokuhambelana newaranti esemgangathweni ye-Intel kodwa inelungelo lokwenza utshintsho kuzo naziphi na iimveliso kunye neenkonzo nangaliphi na ixesha ngaphandle kwesaziso. I-Intel ayithathi xanduva okanye ityala elivela kwisicelo okanye ukusetyenziswa kwalo naluphi na ulwazi, imveliso, okanye inkonzo echazwe apha ngaphandle kokuba kuvunyelwene ngokubhaliweyo yi-Intel. Abathengi be-Intel bayacetyiswa ukuba bafumane inguqulelo yamva nje yeenkcazo zesixhobo ngaphambi kokuba baxhomekeke kulo naluphi na ulwazi olupapashiweyo naphambi kokubeka iiodolo zeemveliso okanye iinkonzo.
*Amanye amagama kunye neempawu zingabangwa njengempahla yabanye.
ISO 9001:2015 ibhalisiwe

IiMfuno zeNkqubo

Nazi iimfuno zenkqubo ye-Intel Accelerator Functional Unit (AFU) Ukulinganisa Imeko-bume (ASE)::

  • Inkqubo yokusebenza ye-64 bit ye-Linux. Olu khupho luqinisekise ezi sistim zokusebenza zilandelayo:
    -I-Intel FPGA PAC D5005:
  • I-RHEL 7.6 kunye ne-Kernel 3.10.0-957
    -I-Intel PAC ene-Intel Arria 10 GX FPGA:
  • I-RHEL 7.6 kunye ne-Kernel 3.10.0-957
  • Ubuntu 18.04 kunye neKernel 4.15
  • Enye yezi simulators zilandelayo:
    — I-64-bit Synopsys* VCS-MX-2016.06-SP2-1 RTL Simulator
    — Imizobo ye-64-bit Mentor* iModelsim SE Simulator (Uguqulelo 10.5c)
    — I-64-bit yeMizobo ye-Mentor QuestaSim Simulator (Ushicilelo 10.5c)
  • Umqokeleli C: GCC 4.7.0 okanye ngaphezulu
  • CMake: uguqulelo 2.8.12 okanye ngaphezulu
  • GNU C Library: uguqulelo 2.17 okanye ngaphezulu
  • Python: inguqulelo 2.7
  • Intel Quartus® Prime Pro Edition software version 19.2 (1)

Ukumisela imo engqongileyo

Kuya kufuneka usete indawo yakho yokulinganisa kwaye ufake isoftware ye-OPAE ngaphambi kokuba usebenzise i-ASE.

  1. Cwangcisa okuguquguqukayo kwemekobume kulandelayo kwisoftware yakho yokulinganisa:
    • Ye-VCS:
    $ thumela ngaphandle VCS_HOME=
    $ thumela ngaphandle UMENDO=$VCS_HOME/umgqomo:$PATH
    Ulwakhiwo lukavimba weefayili wofakelo lweVCS ngolu hlobo lulandelayo:
    i-intel i-Accelerator eSebenzayo yeYunithi yokulinganisa iSofthiwe yokuSingqongileyo-Umfanekiso woku-1Qinisekisa ukuba isixokelelwano sakho sinelayisensi esebenzayo yeVCS.
    • NgeModelsim SE/QuestaSim:
    $ thumela ngaphandle MTI_HOME=
    $ thumela ngaphandle UMENDO=$MTI_HOME/linux_x86_64/:$MTI_HOME/umgqomo/:$INDLELA
    Uluhlu lwesikhokelo sofakelo lweModelsim/Questa simi ngolu hlobo lulandelayo:
    i-intel i-Accelerator eSebenzayo yeYunithi yokulinganisa iSofthiwe yokuSingqongileyo-Umfanekiso woku-2Qinisekisa ukuba inkqubo yakho inelayisensi esebenzayo yeModelsim SE/QuestaSim.
    • Ye-Intel Quartus Prime Pro Edition:
    $ thumela ngaphandle QUARTUS_HOME=
    Uluhlu lwe-Intel Quartus Prime lofakelo loluhlu lulolu hlobo lulandelayo:
    i-intel i-Accelerator eSebenzayo yeYunithi yokulinganisa iSofthiwe yokuSingqongileyo-Umfanekiso woku-3Yongeza ukuguquguquka kokusingqongileyo ukujonga ilayisensi yeModelsim:
    $ thumela ngaphandle MGLS_LICENSE_FILE=
  2. Thumela ngaphandle:
    $ Thumela ngaphandle LM_LICENSE_FILE=
  3.  Khipha uvimba wexesha lokusebenza file, kwaye ufake iilayibrari ze-OPAE, ii-binaries, zibandakanya files, kunye namathala eencwadi e-ASE njengoko kuchaziwe kwicandelo: Ukufakela iPhakheji yeSofthiwe ye-OPAE kwi-Intel yoKukhawuleza iSitakhi esiKhawulezayo sokuQala uMsebenzisi weSikhokelo soMsebenzisi weIntel FPGA PAC yakho.

Okusingqongileyo kufuneka kucwangciswe ngokuchanekileyo ukuqwalasela kunye nokwakha i-AFU. Ngokukodwa, kufuneka ufake i-OPAE Software Development Kit (SDK) ngokufanelekileyo. Iincwadi zeempendulo ze-OPAE SDK mazibe ku- PATH kwaye zibandakanye filekunye namathala eencwadi ekufuneka afumaneke kumqokeleli C. Ukongeza, kufuneka uqinisekise ukuba i-OPAE_PLATFORM_ROOT imo eguquguqukayo isetiwe. Jonga kuFakelo lwePakeji yeSoftware ye-OPAE ngolwazi oluthe kratya.
Ukuqinisekisa ukuba i-OPAE SDK kunye ne-ASE zifakwe ngokufanelekileyo, kwiqokobhe, qinisekisa ukuba UMENDO wakho ubandakanya afu_sim_setup. I-afu_sim_setup kufuneka ibe kwi/usr/bin directory okanye kwi ukuba wakha i OPAE ukusuka kwimvelaphi files.

Ulwazi olunxulumeneyo

  • IYunithi yokuSebenza ye-Intel Accelerator (AFU) yokuLingisa (ASE) Isikhokelo soMsebenzisi
  • Ukufakela i-OPAE Software Package
    Ye-Intel PAC ene-Intel Arria 10 GX FPGA.
  • Ukufakela iPakeji yeSoftware ye-OPAE ye-Intel FPGA PAC D5005.

Ukulinganisa hello_afu kwiNdlela yoMxumi-Iseva

Molo_afu example yitemplate elula ye-AFU ebonisa ujongano oluphambili lweCCI-P. I-RTL iyanelisa ubuncinci beemfuno ze-AFU, iphendula kwimaphu yememori ye-I/O ifundeka ukubuyisela isihloko sesixhobo sesihloko kunye ne-UUID ye-AFU.
Umzobo 1. hello_afu Directory Tree

i-intel i-Accelerator eSebenzayo yeYunithi yokulinganisa iSofthiwe yokuSingqongileyo-Umfanekiso woku-4

Phawula:
Olu xwebhu lusebenzisaample> ukubhekisa kwi example ulawulo loyilo, olufana hello_afu kumzobo ongentla.
Isoftware ibonisa ubuncinci beemfuno zokuncamathela kwiFPGA usebenzisa iOPAE. I-RTL ibonisa ubuncinane beemfuno zokwanelisa umqhubi we-OPAE kunye ne-hello_afu example software.
filelist.txt ikhankanya i files ye-RTL yokulinganisa kunye nokudibanisa.
Ukuqwalasela ngempumelelo kunye nokwakha i-AFU sampNgokukodwa, imeko-bume yakho kufuneka icwangciswe ngokuchanekileyo, njengoko kuchaziwe kuCwangciso lweNdawo.

Ulwazi olunxulumeneyo

  • IYunithi yokuSebenza ye-Intel Accelerator (AFU) yokuLingisa (ASE) Isikhokelo soMsebenzisi
  • Ukuseka iNdawo kwiphepha lesi-5

Ukuphuhlisa ii-AFUs nge-OPAE SDK
KwiYunithi yokuSebenza ye-Accelerator (AFU) iSikhokelo soPhuhlisi

4.1. Ukulinganisa kwiNdlela yoMthengi-Iseva

Le ex ilandelayoampI-le flow yazisa imibhalo esisiseko ye-ASE. Ungalinganisa zonke exampkancinci nge-ASE, ngaphandle kwe-eth_e2e_e10 kunye ne-eth_e2e_e40.
Ukulinganisa kufuna iinkqubo ezimbini zesoftware: inkqubo enye yokulinganisa i-RTL kunye nenkqubo yesibini ukuqhuba isoftware edibeneyo. Ukwakha indawo yokulinganisa ye-RTL, sebenzisa oku kulandelayo kwi-$OPAE_PLATFORM_ROOT/hw/samples/hello_afu:
$ afu_sim_setup -umthombo hw/rtl/filelist.txt build_sim
Lo myalelo wakha imeko-bume ye-ASE kuvimba weefayili we-build_sim.
Ukwakha kunye nokuqhuba isifanisi:
$ cd build_sim
$ yenza
$ yenza sim
I-simulator iprinta umyalezo ukuba ulungele ukulinganisa. Ikwaprinta umyalezo okukhokelela ukuba usete i-ASE_WORKDIR umahluko wemeko-bume.
Vula elinye iqokobhe lokulinganisa isoftwe. Kufuneka uqinisekise ukuseta OPAE_PLATFORM_ROOT ukuguquguquka kwendalo.
Ukwakha kunye nokusebenzisa isoftwe kwiqokobhe elitsha:
$ cd $OPAE_PLATFORM_ROOT
$ thumela ngaphandle ASE_WORKDIR=$OPAE_PLATFORM_ROOT/hw/samples/hello_afu/build_sim/work
$ cd $OPAE_PLATFORM_ROOT/hw/samples/hello_afu/sw
$ hlambulula
$ yenza USE_ASE=1
$ ./molo_afu

Phawula:
Igama elithile lendlela ye ASE_WORKDIR inokwahluka. Sebenzisa igama lomendo elinikwe ngumyalelo wesilingisi.
Isoftware kunye ne-simulator run, log transactions, kwaye uphume.

4.1.1. Ukulinganisa Ilog Files
Incwadi yomsebenzi wokulinganisa igcina i-waveform, i-CCI-P yentengiselwano, kunye nelogi yokulinganisa files.
Gqibezela la manyathelo alandelayo ukuze view idatabase ye waveform:

  1. Guqula kulawulo apho wenze khona umyalelo we-make sim.
  2. Uhlobo:
    $ yenza amaza
    Umyalelo we-maza wave ubiza i-waveform viewer.

4.1.2. Izibhengezo zoYilo
Ezilandelayo file kunye nabalawuli bachaza ukulinganisa kwe-AFU:

  • $OPAE_PLATFORM_ROOT/hw/sampkancinci/ample>/hw/rtl/filelist.txt ixela imithombo yeRTL.
  • <AFU example> ngu example directory njengoko kubonisiwe kwi-hello_afu Directory Tree figure.
  • filelist.txt dwelisa SystemVerilog, VHDL, kunye ne-AFU JavaScript Object Notation (.json) file.
  • I-AFU .json ichaza ujongano olufunwa yi-AFU. Ikwabandakanya i-UUID yokuchonga i-AFU xa sele ikhutshelwe kwiFPGA.
  • hw/rtl/hello_afu.json ichaza ccip_std_afu njengojongano olukwinqanaba eliphezulu ngokucwangcisa i-afu-top-interface ukuya kwi-ccip_std_afu. I-ccip_std_afu sisiseko se-CCI-P ujongano olubandakanya iiwotshi, ukusetha kwakhona, kunye ne-CCI-P TX kunye nezakhiwo ze-RX. Ex advancedampLes ichaza ezinye iinketho zojongano.
  • I.json file ibhengeza i-AFU UUID. Umbhalo we-OPAE uvelisa i-UUID. I-RTL ilayisha i-UUID ukusuka ku-afu_json_info.vh.
  • sw/Yenzafile ivelisa afu_json_info.h. Isoftware ilayisha i-UUID ukusuka ku-afu_json_info.h.

4.1.3. Ukulungisa ingxaki kuMfaniso woMxumi-Umncedisi
Ukuba umyalelo we-afu_sim_setup uyasilela, qinisekisa ukuba:

  • afu_sim_setup ikwi- PATH yakho. afu_sim_setup kufuneka ibe kwi/usr/bin okanye ngaphakathi ukuba uye wakha i-OPAE ukusuka kumthombo files.
  • UnePython version 2.7 okanye ngaphezulu efakiweyo.

Ukuba awukwazi ukwakha nokwenza isifanisi, kusenokwenzeka ukuba awusifakanga ngokufanelekileyo isixhobo sakho sokulinganisa i-RTL.
Xa uzama ukwakha nokusebenzisa isoftwe, ukuba ubona umyalezo othi “Impazamo xa ubala ii-AFCs”, ushiye ukuseta USE_ASE=1 kumgca womyalelo wokwenza. Isoftware ikhangela isixhobo esibonakalayo seFPGA. Ukubuyisela, phinda amanyathelo avela kumyalelo we-make clean.

AFU EksampLes

Uluhlu loku-2.
AFU EksampLes
Nganye AFU example ibandakanya i README eneenkcukacha file, ukubonelela ngenkcazo yokusebenza kunye namanqaku malunga nendlela yokulinganisa ukuyila. Ukuqonda ngokupheleleyo inkqubo yokulinganisa, review i FUNDA file kwi-AFU nganye example.

AFU Inkcazo
molo_mem_afu hello_mem_afu ibonisa i-AFU eyakha umatshini welizwe olula ukufikelela kwimemori. Umatshini welizwe unako ukufikelela kwiipateni ezininzi kwimemori yasekhaya edityaniswe ngokuthe ngqo kwiiphini zeFPGA, ezinjengeDDR4 DIMM. Le nkumbulo yahlukile kwimemori yenginginya efikelelweyo ngaphezulu kweCCI-P. Umamkeli ulawula umatshini wombuso we-hello_mem_afu osebenzisa i-memod-mapped I/O (MMIO) izicelo zokulawula kunye neerejista zobume (CSRs).
molo_intr_afu molo_intr_afu ibonisa uphazamiseko lwesicelo kwi ASE.
I-DMA kunye ne-f1.1 (2) _ I-dma_afu ibonisa iBloko yeSakhiwo esiSiseko se-DMA yenginginya kwi-FPGA, FPGA yokusingatha, kunye ne-FPGA ukuya kwi-FPGA yogqithiselo lwenkumbulo. Xa ulinganisa le AFU, isayizi ye-buffer esetyenziselwa ukudluliselwa kwe-DMA incinci ukugcina ixesha lokulinganisa elifanelekileyo. Ngolwazi oluthe vetshe, jonga kwi-DMA Accelerator Functional Unit (AFU) IsiKhokelo somsebenzisi.
nlb_imowudi_O nlb_mode_O yinkqubo yeCCI-P ebonisa uvavanyo lwekopi yememori. $0PAE_PLATFORM_ROOT/ sw/opae—cre/ease number>/sampmolo_fpga . c ibandakanya nlb_mode_0.
$ sh regress.sh -a -r rtl_sim
-s < vcslmodelsimlquesta > [-i )
-b
ustrimisho_DM streaming_dma ibonisa indlela yokudlulisa idatha phakathi kwememori yenginginya kunye ne-FPGA yokusasaza izibuko. Ngolwazi oluthe vetshe, jonga kwi-Streaming DMA Accelerator Functional Unit (AFU) IsiKhokelo somsebenzisi.
molo_afu hel lo_a fu yi-AFU elula ebonisa ujongano oluphambili lweCCI-P. I-RTL iyanelisa ubuncinci beemfuno ze-AFU, ukuphendula kwiMMIO ifundeka ukubuyisela isihloko sesixhobo sesihloko kunye ne-UUID ye-AFU.

Ulwazi olunxulumeneyo

  • I-DMA Accelerator Functional Unit (AFU) IsiKhokelo soMsebenzisi
    Ngolwazi malunga nendlela yokuqokelela kunye nokwenza i-dma_afu kwi-Intel PAC yakho nge-Intel Arria 10 GX FPGA.
  • Ukusasaza iDMA Accelerator Functional Unit (AFU) IsiKhokelo soMsebenzisi
    Ngolwazi malunga nendlela yokuqokelela kunye nokwenza ukusasazwa_dma_afu kwi-Intel PAC yakho nge-Intel Arria 10 GX FPGA.
  • I-DMA Accelerator yeYunithi eSebenzayo yeSikhokelo soMsebenzisi: Ikhadi le-Intel FPGA elinoLungiselelo lwe-D5005
    Ngolwazi malunga nendlela yokuqokelela kunye nokwenza i-dma_afu kwi-Intel FPGA PAC D5005 yakho.
  • Ukusasaza i-DMA ye-Accelerator yeYunithi eSebenzayo yeSikhokelo soMsebenzisi: Ikhadi le-Intel FPGA elinoXhakala lokuLungiswa kweD5005
    Ngolwazi malunga nendlela yokuqokelela kunye nokwenza i-dma_afu kwi-Intel FPGA PAC D5005 yakho.

Ukulungisa ingxaki

Ukuba impazamo elandelayo ibonakala ngexesha lokulinganisa, yilungise ngokulandela la manyathelo angezantsi.
Umyalezo wemposiso
# [SIM] Umzekelo we-ASE mhlawumbi usasebenza kulawulo lwangoku!
# [SIM] Khangela iPID 28816
# [SIM] Ukulinganisa kuya kuphuma… ungasebenzisa i-SIGKILL ukubulala inkqubo yokulinganisa.
# [SIM] Kwakhona khangela ukuba .ase_ready.pid file iyasuswa phambi kokuba kuqhutyekwe. Isisombululo

  1. Chwetheza ukubulala ase_simv ukubulala iinkqubo zokulinganisa i-zombie kwaye ususe nayiphi na okwethutyana files ishiywe ngasemva yinkqubo yokulinganisa engaphumelelanga okanye ukutshixa.
  2. Cima i-.ase_ready.pid file, ifunyenwe kuluhlu lwe-$ASE_WORKDIR.

I-ASE Qala ngokuKhawuleza uMsebenzisi ooVimba

Inguqulelo ye-Intel yokuKhawuleza yeSitaki Isikhokelo somsebenzisi
2.0 IYunithi yokuSebenza ye-Intel Accelerator (AFU) Ukulinganisa Imeko (ASE) IsiKhokelo sokuQala esiKhawulezayo soMsebenzisi
1. IYunithi yokuSebenza ye-Intel Accelerator (AFU) Ukulinganisa Imeko (ASE) IsiKhokelo sokuQala esiKhawulezayo soMsebenzisi
1. IYunithi yokuSebenza ye-Intel Accelerator (AFU) Ukulinganisa Imeko (ASE) IsiKhokelo sokuQala esiKhawulezayo soMsebenzisi
1.0 IYunithi yokuSebenza ye-Intel Accelerator (AFU) Ukulinganisa Imeko (ASE) IsiKhokelo sokuQala esiKhawulezayo soMsebenzisi

Uxwebhu lweMbali yoHlaziyo lwe-ASE IsiKhokelo soMsebenzisi esiKhawulezayo

Inguqulelo yoXwebhu Inguqulelo ye-Intel yokuKhawuleza yeSitaki Iinguqu
2020.03.06 1.2.1 kunye no-2.0.1 Hlaziya oku kulandelayo:
• IiMfuno zeNkqubo
2019.08.05 2.0 • Ukuhlaziya inguqulo ye-Intel Quartus Prime Pro Edition kwiiMfuno zeNkqubo.
• Yongeza i-hello_afu kwi-AFU Examples.
• Ulwazi olususiwe malunga nokulinganisa kwimo yokubuyisela umva.
• Yongezwe icandelo elitsha: i-ASE Qala ngokuKhawuleza uLondolozo lweSikhokelo soMsebenzisi.
2018.12.04 1. Inkxaso eyongeziweyo ye-Ubuntu.
2018.08.06 1. Uhlaziyo lweemfuno zesistim, ulwakhiwo lolawulo, nokuhambelana fileamagama.
2018.04.10 1.0 Ukukhutshwa kokuqala.

683200 | 2020.03.06
TCL HH42CV1 I-Hub yoQhagamshelwano-i-icon ye-8Ukuzisa impendulo

Amaxwebhu / Izibonelelo

Intel iAccelerator eSebenzayo yeYunithi yokuLingisa iSofthiwe yokuSingqongileyo [pdf] Isikhokelo somsebenzisi
IYunithi eSebenzayo ye-Accelerator, iSoftware yokulinganisa okusiNgqongileyo, i-Accelerator yeYunithi eSebenzayo yokulinganisa imo engqongileyo, iSoftware, i-Accelerator eSebenzayo yeYunithi eSebenzayo yokuSingqongileyo iSoftware.

Iimbekiselo

Shiya uluvo

Idilesi yakho ye-imeyile ayizupapashwa. Iindawo ezifunekayo ziphawulwe *