Software de mediu de simulare a unității funcționale
Ghidul utilizatorului
Despre acest document
Acest document descrie modul de simulare caample Accelerator Functional Unit (AFU) folosind Intel
Mediul de mediu de simulare (ASE) al unității funcționale de accelerație (AFU). Consultați Ghidul utilizatorului Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) pentru detalii complete despre capabilitățile ASE și arhitectura internă.
Mediul de simulare Intel Accelerator Functional Unit (AFU) (ASE) este un mediu de co-simulare hardware și software pentru orice placă de accelerare Intel FPGA Programmable® (Intel FPGA PAC). Acest mediu de co-simulare software acceptă în prezent următoarele PAC-uri Intel FPGA: 10 GX FPGA
- Placă de accelerație programabilă Intel FPGA D5005
- Placă de accelerație programabilă Intel cu Intel Arria®
ASE oferă un model tranzacțional pentru protocolul Core Cache Interface (CCI-P) și un model de memorie pentru memoria locală atașată la FPGA.
ASE validează, de asemenea, conformitatea Unității Funcționale Acceleratorului (AFU) cu următoarele protocoale și API-uri: - Specificația protocolului CCI-P
- Avalonul
Specificația interfeței mapate cu memorie (Avalon-MM). - Motorul de accelerare programabil deschis (OPAE)®
Tabelul 1. Stiva de accelerare pentru procesorul Intel Xeon® cu FPGA Glosar
Termen | Abreviere | Descriere |
Intel Acceleration Stack pentru procesorul Intel Xeon® cu FPGA | Stiva de accelerare | O colecție de software, firmware și instrumente care oferă conectivitate optimizată pentru performanță între un procesor Intel FPGA și un procesor Intel Xeon. |
Placă de accelerație programabilă Intel FPGA (Intel FPGA PAC) | Intel FPGA PAC | Placă de accelerare PCIe* FPGA. Conține un manager de interfață FPGA (FIM) care se asociază cu un procesor Intel Xeon printr-o magistrală PCIe. |
Platformă scalabilă Intel Xeon cu FPGA integrat | Platformă FPGA integrată | Platformă Intel Xeon plus FPGA cu Intel Xeon și un FPGA într-un singur pachet și partajarea unui cache coerent de memorie prin Ultra Path Interconnect (UPI). |
Informații conexe
Ghidul utilizatorului pentru mediul de simulare (ASE) pentru unitatea funcțională a acceleratorului Intel (AFU).
Intel Corporation. Toate drepturile rezervate. Intel, sigla Intel și alte mărci Intel sunt mărci comerciale ale Intel Corporation sau ale subsidiarelor sale. Intel garantează performanța produselor sale FPGA și semiconductoare conform specificațiilor actuale, în conformitate cu garanția standard Intel, dar își rezervă dreptul de a face modificări oricăror produse și servicii în orice moment, fără notificare. Intel nu își asumă nicio responsabilitate sau răspundere care decurge din aplicarea sau utilizarea oricăror informații, produse sau servicii descrise aici, cu excepția cazului în care Intel a convenit în mod expres în scris. Clienții Intel sunt sfătuiți să obțină cea mai recentă versiune a specificațiilor dispozitivului înainte de a se baza pe orice informații publicate și înainte de a plasa comenzi pentru produse sau servicii.
*Alte nume și mărci pot fi revendicate ca fiind proprietatea altora.
Înregistrat ISO 9001: 2015
Cerințe de sistem
Iată cerințele de sistem pentru Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE)::
- Un sistem de operare Linux pe 64 de biți. Această versiune a validat următoarele sisteme de operare:
— Pentru Intel FPGA PAC D5005: - RHEL 7.6 cu Kernel 3.10.0-957
— Pentru Intel PAC cu Intel Arria 10 GX FPGA: - RHEL 7.6 cu Kernel 3.10.0-957
- Ubuntu 18.04 cu Kernel 4.15
- Unul dintre următoarele simulatoare:
— Synopsys pe 64 de biți* VCS-MX-2016.06-SP2-1 RTL Simulator
— Grafică Mentor pe 64 de biți* Simulator Modelsim SE (versiunea 10.5c)
— Simulator de grafică Mentor pe 64 de biți QuestaSim (versiunea 10.5c) - Compilator C: GCC 4.7.0 sau mai recent
- CMake: versiunea 2.8.12 sau mai recentă
- Biblioteca GNU C: versiunea 2.17 sau mai sus
- Python: versiunea 2.7
- Versiunea software Intel Quartus® Prime Pro Edition 19.2 (1)
Configurarea mediului
Trebuie să vă configurați mediul de simulare și să instalați software-ul OPAE înainte de a rula ASE.
- Setați următoarele variabile de mediu pentru software-ul dvs. de simulare:
• Pentru VCS:
$ export VCS_HOME=
$ export PATH=$VCS_HOME/bin:$PATH
Structura directorului de instalare VCS este următoarea:
Asigurați-vă că sistemul dvs. are o licență VCS validă.
• Pentru Modelsim SE/QuestaSim:
$ export MTI_HOME=
$ export PATH=$MTI_HOME/linux_x86_64/:$MTI_HOME/bin/:$PATH
Structura directorului de instalare Modelsim/Questa este următoarea:
Asigurați-vă că sistemul dumneavoastră are o licență validă Modelsim SE/QuestaSim.
• Pentru Intel Quartus Prime Pro Edition:
$ export QUARTUS_HOME=
Structura directorului de instalare Intel Quartus Prime este următoarea:
Adăugați variabila de mediu pentru a verifica licența Modelsim:
$ export MGLS_LICENSE_FILE= - Export:
$ export LM_LICENSE_FILE= - Extrageți arhiva runtime file, și instalați biblioteci OPAE, binare, includ files și bibliotecile ASE, așa cum este descris în secțiunea: Instalarea pachetului software OPAE în Ghidul utilizatorului Intel Acceleration Stack Quick Start corespunzător pentru PAC-ul dumneavoastră Intel FPGA.
Mediul dumneavoastră trebuie configurat corect pentru a configura și construi un AFU. În special, trebuie să instalați corect kitul de dezvoltare software (SDK) OPAE. Scripturile OPAE SDK trebuie să fie pe PATH și să includă files și biblioteci care trebuie să fie disponibile pentru compilatorul C. În plus, trebuie să vă asigurați că este setată variabila de mediu OPAE_PLATFORM_ROOT. Consultați Instalarea pachetului software OPAE pentru mai multe informații.
Pentru a vă asigura că OPAE SDK și ASE sunt instalate corect, într-un shell, confirmați că PATH include afu_sim_setup. Afu_sim_setup ar trebui să fie în directorul /usr/bin sau în dacă ai construit OPAE-ul de la sursă files.
Informații conexe
- Ghidul utilizatorului pentru mediul de simulare (ASE) pentru unitatea funcțională a acceleratorului Intel (AFU).
- Instalarea pachetului software OPAE
Pentru Intel PAC cu Intel Arria 10 GX FPGA. - Instalarea pachetului software OPAE pentru Intel FPGA PAC D5005.
Simularea hello_afu în modul Client-Server
Ex. hello_afuampfiul este un șablon AFU simplu care demonstrează interfața primară CCI-P. RTL îndeplinește cerințele minime ale unui AFU, răspunzând la citirile I/O mapate în memorie pentru a returna antetul caracteristicii dispozitivului și UUID-ul AFU.
Figura 1. Arborele directorului hello_afu
Nota:
Acest document foloseșteample> a se referi la un exampdirectorul de proiectare a fișierului, cum ar fi hello_afu din figura de mai sus.
Software-ul demonstrează cerințele minime pentru atașarea la un FPGA folosind OPAE. RTL demonstrează cerințele minime pentru a satisface șoferul OPAE și hello_afu exampsoftware-ul.
filelist.txt specifică files pentru simularea și sinteza RTL.
Pentru a configura și construi cu succes AFU-uriampfișiere, mediul dumneavoastră trebuie să fie configurat corect, așa cum este descris în Configurarea mediului.
Informații conexe
- Ghidul utilizatorului pentru mediul de simulare (ASE) pentru unitatea funcțională a acceleratorului Intel (AFU).
- Configurarea mediului la pagina 5
Dezvoltarea AFU cu SDK-ul OPAE
În Ghidul pentru dezvoltatori Accelerator Functional Unit (AFU).
4.1. Simulare în modul Client-Server
Următorul exampfluxul de fișiere introduce scripturile ASE de bază. Puteți simula toate exampfișiere cu ASE, cu excepția eth_e2e_e10 și eth_e2e_e40.
Simularea necesită două procese software: un proces pentru simularea RTL și un al doilea proces pentru a rula software-ul conectat. Pentru a construi un mediu de simulare RTL, rulați următoarele în $OPAE_PLATFORM_ROOT/hw/samples/hello_afu:
$ afu_sim_setup –sursa hw/rtl/filelist.txt build_sim
Această comandă construiește un mediu ASE în subdirectorul build_sim.
Pentru a construi și a rula simulatorul:
$ cd build_sim
$ face
$ face sim
Simulatorul imprimă un mesaj că este pregătit pentru simulare. De asemenea, imprimă un mesaj care vă solicită să setați variabila de mediu ASE_WORKDIR.
Deschideți un alt shell pentru simularea software-ului. Trebuie să vă asigurați că setați variabila de mediu OPAE_PLATFORM_ROOT.
Pentru a construi și a rula software-ul în noul shell:
$ cd $OPAE_PLATFORM_ROOT
$ export ASE_WORKDIR=$OPAE_PLATFORM_ROOT/hw/samples/hello_afu/build_sim/work
$ cd $OPAE_PLATFORM_ROOT/hw/samples/hello_afu/sw
$ face curat
$ face USE_ASE=1
$ ./hello_afu
Nota:
Calea specifică pentru ASE_WORKDIR poate varia. Utilizați calea furnizată de promptul simulatorului.
Software-ul și simulatorul rulează, înregistrează tranzacțiile și ies.
4.1.1. Jurnal de simulare Files
Directorul de lucru de simulare stochează forma de undă, tranzacțiile CCI-P și jurnalul de simulare files.
Parcurgeți următorii pași pentru view baza de date a formelor de undă:
- Schimbați în directorul în care ați executat comanda make sim.
- Tip:
$ face val
Comanda make wave invocă forma de undă viewer.
4.1.2. Declarații de proiectare
Următoarele file și directoare definesc simularea AFU:
- $OPAE_PLATFORM_ROOT/hw/samples/ample>/hw/rtl/filelist.txt specifică sursele RTL.
- <AFU example> este exampdirectorul fișierelor, așa cum se arată în figura Hello_afu Directory Tree.
- filelist.txt listează SystemVerilog, VHDL și AFU JavaScript Object Notation (.json) file.
- AFU .json descrie interfețele necesare AFU. Include, de asemenea, un UUID pentru a identifica AFU odată descărcat pe un FPGA.
- hw/rtl/hello_afu.json definește ccip_std_afu ca interfață de nivel superior prin setarea afu-top-interface la ccip_std_afu. ccip_std_afu este interfața de bază CCI-P, inclusiv ceasuri, resetare și structuri CCI-P TX și RX. Mai avansat exampfișierele definesc alte opțiuni de interfață.
- .json file declară UUID-ul AFU. Un script OPAE generează UUID-ul. RTL încarcă UUID-ul de la afu_json_info.vh.
- sw/Facefile generează afu_json_info.h. Software-ul încarcă UUID-ul de pe afu_json_info.h.
4.1.3. Depanarea simularii client-server
Dacă comanda afu_sim_setup eșuează, confirmați că:
- afu_sim_setup este pe PATH. afu_sim_setup ar trebui să fie în /usr/bin sau în dacă ai construit OPAE de la sursă files.
- Aveți instalat Python versiunea 2.7 sau o versiune ulterioară.
Dacă nu puteți construi și executa simulatorul, este posibil să nu fi instalat corect instrumentul de simulare RTL.
Când încercați să construiți și să rulați software-ul, dacă vedeți un mesaj „Eroare la enumerarea AFC-urilor”, ați omis setarea USE_ASE=1 pe linia de comandă make. Software-ul caută un dispozitiv FPGA fizic. Pentru a recupera, repetați pașii din comanda make clean.
AFU Examples
Tabelul 2.
AFU Examples
Fiecare AFU exampfișierul include un README detaliat file, oferind o descriere operațională și note privind modul de simulare a proiectării. Pentru o înțelegere completă a procesului de simulare, review README file în fiecare AFU example.
AFU | Descriere | |
salut_mem_afu | hello_mem_afu demonstrează un AFU care construiește o mașină de stare simplă pentru a accesa memorie. Mașina de stat este capabilă de mai multe modele de acces la memoria locală atașată direct la pinii FPGA, cum ar fi DIMM-urile DDR4. Această memorie este diferită de memoria gazdă accesată prin CCI-P. Gazda gestionează mașina de stare a controlerului hello_mem_afu utilizând cereri de I/O mapate în memorie (MMIO) pentru a controla și a registrelor de stare (CSR). | |
salut_intr_afu | hello_intr_afu demonstrează caracteristica de întrerupere a aplicației în ASE. | |
DMA și f1.1 (2) _ | dma_afu demonstrează un bloc de bază DMA pentru transferuri de memorie de la gazdă la FPGA, de la FPGA la gazdă și de la FPGA la FPGA. Când se simulează acest AFU, dimensiunea tamponului utilizată pentru transferul DMA este mică pentru a menține timpul de simulare rezonabil. Pentru mai multe informații, consultați Ghidul utilizatorului pentru unitatea funcțională a acceleratorului DMA (AFU). | |
nlb_mode_O | nlb_mode_O este un sistem CCI-P care demonstrează testul de copiere a memoriei. $0PAE_PLATFORM_ROOT/ sw/opae—număr cre/ease>/sample/hello_fpga . c include nlb_mode_0. | |
$ sh regres.sh -a -r rtl_sim -s < vcslmodelsimlquesta > [-i ) -b |
||
streaming_dma | streaming_dma demonstrează cum se transferă date între memoria gazdă și un port de streaming FPGA. Pentru mai multe informații, consultați Ghidul utilizatorului Unității funcționale Accelerator DMA (AFU) pentru streaming. | |
salut_afu | hel lo_a fu este un AFU simplu care demonstrează interfața primară CCI-P. RTL îndeplinește cerințele minime stricte ale unui AFU, răspunzând la citirile MMIO pentru a returna antetul caracteristicii dispozitivului și UUID-ul AFU. |
Informații conexe
- Ghid de utilizare pentru unitatea funcțională a acceleratorului DMA (AFU).
Pentru informații despre cum să compilați și să executați dma_afu pe Intel PAC cu Intel Arria 10 GX FPGA. - Ghid de utilizare pentru unitatea funcțională a acceleratorului DMA (AFU) pentru streaming
Pentru informații despre cum să compilați și să executați streaming_dma_afu pe Intel PAC cu Intel Arria 10 GX FPGA. - Ghid de utilizare al unității funcționale a acceleratorului DMA: placă de accelerație programabilă Intel FPGA D5005
Pentru informații despre cum să compilați și să executați dma_afu pe Intel FPGA PAC D5005. - Ghidul utilizatorului pentru unitatea funcțională a acceleratorului DMA de streaming: placă de accelerație programabilă Intel FPGA D5005
Pentru informații despre cum să compilați și să executați dma_afu pe Intel FPGA PAC D5005.
Depanare
Dacă apare următoarea eroare în timpul simulării, corectați-o urmând pașii de mai jos.
Mesaj de eroare
# [SIM] Probabil că o instanță ASE încă rulează în directorul curent!
# [SIM] Verificați PID 28816
# [SIM] Simularea va ieși... puteți folosi un SIGKILL pentru a opri procesul de simulare.
# [SIM] Verificați și dacă .ase_ready.pid file este eliminat înainte de a continua. Soluţie
- Tastați kill ase_simv pentru a ucide procesele de simulare zombie și pentru a elimina orice temporar filesunt lăsate în urmă de procese de simulare eșuate sau de blocări.
- Ștergeți .ase_ready.pid file, găsit în directorul $ASE_WORKDIR.
Arhivele ghidului utilizatorului de pornire rapidă ASE
Versiunea Intel Acceleration Stack | Ghidul utilizatorului |
2.0 | Ghid de utilizare rapidă a mediului de simulare (ASE) pentru unitatea funcțională a acceleratorului Intel (AFU). |
1. | Ghid de utilizare rapidă a mediului de simulare (ASE) pentru unitatea funcțională a acceleratorului Intel (AFU). |
1. | Ghid de utilizare rapidă a mediului de simulare (ASE) pentru unitatea funcțională a acceleratorului Intel (AFU). |
1.0 | Ghid de utilizare rapidă a mediului de simulare (ASE) pentru unitatea funcțională a acceleratorului Intel (AFU). |
Istoricul revizuirilor documentelor pentru Ghidul utilizatorului de pornire rapidă ASE
Versiunea documentului | Versiunea Intel Acceleration Stack | Schimbări |
2020.03.06 | 1.2.1 și 2.0.1 | Actualizat următoarele: • Cerințe de sistem |
2019.08.05 | 2.0 | • S-a actualizat versiunea Intel Quartus Prime Pro Edition în Cerințele de sistem. • S-a adăugat hello_afu în AFU Examples. • S-au eliminat informații despre simularea în modul de regresie. • A fost adăugată o nouă secțiune: Arhivele Ghidului utilizatorului ASE Quick Start. |
2018.12.04 | 1. | S-a adăugat suport Ubuntu. |
2018.08.06 | 1. | S-au actualizat cerințele de sistem, structura directoarelor și corespunzătoare filenume. |
2018.04.10 | 1.0 | Lansare inițială. |
683200 | 2020.03.06
Trimiteți feedback
Documente/Resurse
![]() |
Intel Accelerator Functional Unit Simulation Environment Software [pdfGhid de utilizare Unitate funcțională accelerator, software pentru mediu de simulare, mediu de simulare pentru unitatea funcțională pentru accelerator, software, software pentru mediu de simulare pentru unitatea funcțională pentru accelerator |