Programvara för funktionell enhetssimulering
Användarhandbok
Om detta dokument
Detta dokument beskriver hur man simulerar somample Accelerator Functional Unit (AFU) som använder Intel
Accelerator Functional Unit (AFU) Simuleringsmiljö (ASE) miljö. Se användarhandboken för Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) för omfattande information om ASE-kapacitet och intern arkitektur.
Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) är en samsimuleringsmiljö för hårdvara och mjukvara för alla Intel FPGA Programmable® Acceleration Card (Intel FPGA PAC). Denna mjukvarusamsimuleringsmiljö stöder för närvarande följande Intel FPGA PAC:er: 10 GX FPGA
- Intel FPGA programmerbart accelerationskort D5005
- Intel Programmable Acceleration Card med Intel Arria®
ASE tillhandahåller en transaktionsmodell för Core Cache Interface (CCI-P)-protokollet och en minnesmodell för det FPGA-anslutna lokala minnet.
ASE validerar också Accelerator Functional Unit (AFU) överensstämmelse med följande protokoll och API:er: - CCI-P-protokollspecifikationen
- Avalon
Minnesmappad (Avalon-MM) gränssnittsspecifikation - Open Programmable Acceleration Engine (OPAE)®
Tabell 1. Accelerationsstack för Intel Xeon® CPU med FPGA Ordlista
Kalla | Förkortning | Beskrivning |
Intel Acceleration Stack för Intel Xeon® CPU med FPGA | Accelerationsstapel | En samling programvara, firmware och verktyg som ger prestandaoptimerad anslutning mellan en Intel FPGA och en Intel Xeon-processor. |
Intel FPGA programmerbart accelerationskort (Intel FPGA PAC) | Intel FPGA PAC | PCIe* FPGA acceleratorkort. Innehåller en FPGA Interface Manager (FIM) som paras ihop med en Intel Xeon-processor över en PCIe-buss. |
Intel Xeon skalbar plattform med integrerad FPGA | Integrerad FPGA-plattform | Intel Xeon plus FPGA-plattform med Intel Xeon och en FPGA i ett enda paket och delar en sammanhängande cache av minne via Ultra Path Interconnect (UPI). |
Relaterad information
Användarhandbok för Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE).
Intel Corporation. Alla rättigheter förbehållna. Intel, Intels logotyp och andra Intel-märken är varumärken som tillhör Intel Corporation eller dess dotterbolag. Intel garanterar prestandan för sina FPGA- och halvledarprodukter enligt gällande specifikationer i enlighet med Intels standardgaranti men förbehåller sig rätten att göra ändringar av alla produkter och tjänster när som helst utan föregående meddelande. Intel tar inget ansvar eller ansvar som uppstår till följd av applikationen eller användningen av någon information, produkt eller tjänst som beskrivs här, förutom vad som uttryckligen har godkänts skriftligen av Intel. Intel-kunder rekommenderas att skaffa den senaste versionen av enhetsspecifikationerna innan de förlitar sig på någon publicerad information och innan de beställer produkter eller tjänster.
*Andra namn och varumärken kan göras anspråk på att vara andras egendom.
ISO 9001: 2015 Registrerad
Systemkrav
Här är systemkraven för Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE)::
- Ett 64-bitars Linux operativsystem. Den här versionen validerade följande operativsystem:
— För Intel FPGA PAC D5005: - RHEL 7.6 med Kernel 3.10.0-957
— För Intel PAC med Intel Arria 10 GX FPGA: - RHEL 7.6 med Kernel 3.10.0-957
- Ubuntu 18.04 med Kernel 4.15
- En av följande simulatorer:
— 64-bitars Synopsys* VCS-MX-2016.06-SP2-1 RTL Simulator
— 64-bitars Mentor Graphics* Modelsim SE Simulator (version 10.5c)
— 64-bitars Mentor Graphics QuestaSim Simulator (version 10.5c) - C-kompilator: GCC 4.7.0 eller högre
- CMake: version 2.8.12 eller senare
- GNU C Library: version 2.17 eller senare
- Python: version 2.7
- Intel Quartus® Prime Pro Edition version 19.2 (1)
Ställa in miljön
Du måste ställa in din simuleringsmiljö och installera OPAE-programvaran innan du kör ASE.
- Ställ in följande miljövariabler för din simuleringsprogramvara:
• För VCS:
$ export VCS_HOME=
$ export PATH=$VCS_HOME/bin:$PATH
VCS-installationskatalogstrukturen är som följer:
Se till att ditt system har en giltig VCS-licens.
• För Modelsim SE/QuestaSim:
$ export MTI_HOME=
$ export PATH=$MTI_HOME/linux_x86_64/:$MTI_HOME/bin/:$PATH
Installationskatalogstrukturen för Modelsim/Questa är som följer:
Se till att ditt system har en giltig Modelsim SE/QuestaSim-licens.
• För Intel Quartus Prime Pro Edition:
$ export QUARTUS_HOME=
Installationskatalogstrukturen för Intel Quartus Prime är som följer:
Lägg till miljövariabeln för att kontrollera Modelsim-licensen:
$ export MGLS_LICENSE_FILE= - Exportera:
$ export LM_LICENSE_FILE= - Extrahera körtidsarkivet file, och installera OPAE-bibliotek, binärer, include files och ASE-bibliotek enligt beskrivningen i avsnittet: Installera OPAE-programvarupaketet i lämplig Intel Acceleration Stack Quick Start User Guide för din Intel FPGA PAC.
Din miljö måste vara korrekt inställd för att konfigurera och bygga en AFU. I synnerhet måste du installera OPAE Software Development Kit (SDK) korrekt. OPAE SDK-skript måste vara på PATH och inkludera files och bibliotek som måste vara tillgängliga för C-kompilatorn. Dessutom måste du se till att miljövariabeln OPAE_PLATFORM_ROOT är inställd. Se Installera OPAE-programvarupaketet för mer information.
För att säkerställa att OPAE SDK och ASE är korrekt installerade, i ett skal, bekräfta att din PATH innehåller afu_sim_setup. afu_sim_setup bör finnas i katalogen /usr/bin eller i om du byggde OPAE från källan files.
Relaterad information
- Användarhandbok för Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE).
- Installera OPAE Software Package
För Intel PAC med Intel Arria 10 GX FPGA. - Installera OPAE-programpaketet för Intel FPGA PAC D5005.
Simulerar hello_afu i klient-serverläge
Hello_afu example är en enkel AFU-mall som visar det primära CCI-P-gränssnittet. RTL:n uppfyller minimikraven för en AFU och svarar på minnesmappade I/O-läsningar för att returnera enhetens funktionshuvud och AFU:s UUID.
Figur 1. hello_afu Katalogträd
Notera:
Detta dokument använderample> att hänvisa till ett exampdesignkatalogen, som hello_afu i figuren ovan.
Programvaran visar minimikraven för att ansluta till en FPGA med OPAE. RTL visar minimikraven för att tillfredsställa OPAE-föraren och hello_afu exampprogramvaran.
filelist.txt anger files för RTL-simulering och syntes.
För att framgångsrikt konfigurera och bygga AFU:ernaampdin miljö måste ställas in korrekt, enligt beskrivningen i Konfigurera miljön.
Relaterad information
- Användarhandbok för Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE).
- Ställa in miljön på sidan 5
Utveckla AFU med OPAE SDK
I Accelerator Functional Unit (AFU) Developer's Guide
4.1. Simulering i klient-serverläge
Följande example flow introducerar de grundläggande ASE-skripten. Du kan simulera alla examples med ASE, förutom eth_e2e_e10 och eth_e2e_e40.
Simuleringen kräver två programvaruprocesser: en process för RTL-simulering och en andra process för att köra den anslutna programvaran. För att konstruera en RTL-simuleringsmiljö, kör följande i $OPAE_PLATFORM_ROOT/hw/samples/hello_afu:
$ afu_sim_setup –källa hw/rtl/filelist.txt build_sim
Detta kommando konstruerar en ASE-miljö i underkatalogen build_sim.
Så här bygger och kör du simulatorn:
$ cd build_sim
$ göra
$ gör sim
Simulatorn skriver ut ett meddelande om att den är redo för simulering. Den skriver också ut ett meddelande som uppmanar dig att ställa in miljövariabeln ASE_WORKDIR.
Öppna ett annat skal för mjukvarusimulering. Du måste se till att ställa in miljövariabeln OPAE_PLATFORM_ROOT.
Så här bygger och kör du programvaran i det nya skalet:
$ 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
$ göra rent
$ gör USE_ASE=1
$ ./hello_afu
Notera:
Det specifika sökvägsnamnet för ASE_WORKDIR kan variera. Använd sökvägen från simulatorprompten.
Programvaran och simulatorn körs, loggar transaktioner och avslutar.
4.1.1. Simuleringslogg Files
Simuleringsarbetskatalogen lagrar vågformen, CCI-P-transaktioner och simuleringsloggen files.
Slutför följande steg för att view vågformsdatabasen:
- Byt till katalogen där du körde kommandot make sim.
- Typ:
$ göra vinka
Kommandot make wave anropar vågformen vieweh.
4.1.2. Designdeklarationer
Följande file och kataloger definierar AFU-simuleringen:
- $OPAE_PLATFORM_ROOT/hw/samples/ample>/hw/rtl/filelist.txt anger RTL-källor.
- <AFU example> är exampkatalogen som visas i hello_afu Directory Tree-bilden.
- filelist.txt listar SystemVerilog, VHDL och AFU JavaScript Object Notation (.json) file.
- AFU .json beskriver de gränssnitt som AFU kräver. Den innehåller också en UUID för att identifiera AFU när den har laddats ner till en FPGA.
- hw/rtl/hello_afu.json definierar ccip_std_afu som toppnivågränssnittet genom att ställa in afu-top-interface till ccip_std_afu. ccip_std_afu är basens CCI-P-gränssnitt inklusive klockor, återställning och CCI-P TX- och RX-strukturer. Mer avancerat examples definierar andra gränssnittsalternativ.
- .json file förklarar AFU UUID. Ett OPAE-skript genererar UUID. RTL:n laddar UUID från afu_json_info.vh.
- sw/Makefile genererar afu_json_info.h. Programvaran laddar UUID från afu_json_info.h.
4.1.3. Felsökning av klient-serversimulering
Om kommandot afu_sim_setup misslyckas, bekräfta att:
- afu_sim_setup är på din PATH. afu_sim_setup bör vara i /usr/bin eller in om du byggde OPAE från källan files.
- Du har Python version 2.7 eller senare installerad.
Om du inte kan bygga och köra simulatorn är det troligt att du inte har installerat ditt RTL-simuleringsverktyg ordentligt.
När du försöker bygga och köra programvaran, om du ser ett "Fel vid uppräkning av AFCs"-meddelande, utelämnade du inställningen USE_ASE=1 på kommandoraden make. Programvaran söker efter en fysisk FPGA-enhet. För att återställa, upprepa stegen från kommandot make clean.
AFU Examples
Tabell 2.
AFU Examples
Varje AFU example innehåller en detaljerad README file, tillhandahålla en driftsbeskrivning och anteckningar om hur man simulerar designen. För en fullständig förståelse av simuleringsprocessen, angview README file i varje AFU example.
AFU | Beskrivning | |
hej_mem_afu | hello_mem_afu demonstrerar en AFU som bygger en enkel tillståndsmaskin för att komma åt minne. Tillståndsmaskinen kan ha flera åtkomstmönster till lokalt minne direkt kopplat till FPGA-stift, såsom DDR4 DIMM. Detta minne skiljer sig från värdminnet som nås via CCI-P. Värden hanterar hello_mem_afu-kontrollertillståndsmaskinen genom att använda minnesmappade I/O-förfrågningar (MMIO) för att styra och statusregister (CSR). | |
hej_intr_afu | hello_intr_afu demonstrerar funktionen för programavbrott i ASE. | |
DMA och f1.1 (2) _ | dma_afu demonstrerar en DMA Basic Building Block för värd till FPGA, FPGA till värd och FPGA till FPGA minnesöverföringar. När man simulerar denna AFU är buffertstorleken som används för DMA-överföring liten för att hålla simuleringstiden rimlig. För mer information, se användarhandboken för DMA Accelerator Functional Unit (AFU). | |
nlb_mode_O | nlb_mode_O är ett CCI-P-system som demonstrerar minneskopieringstestet. $0PAE_PLATFORM_ROOT/ sw/opae—cre/ease number>/sample/hello_fpga . c inkluderar nlb_mode_0. | |
$ sh regress.sh -a -r rtl_sim -s < vcslmodelsimlquesta > [-i ) -b |
||
streaming_dma | streaming_dma visar hur man överför data mellan värdminne och en FPGA-strömningsport. För mer information, se användarhandboken för Streaming DMA Accelerator Functional Unit (AFU). | |
hej_afu | hell lo_a fu är en enkel AFU som visar det primära CCI-P-gränssnittet. RTL:n uppfyller minimikraven för en AFU och svarar på MMIO-läsningar för att returnera enhetens funktionshuvud och AFU:s UUID. |
Relaterad information
- Användarhandbok för DMA Accelerator Functional Unit (AFU).
För information om hur du kompilerar och kör dma_afu på din Intel PAC med Intel Arria 10 GX FPGA. - Streaming DMA Accelerator Functional Unit (AFU) Användarhandbok
För information om hur du kompilerar och kör streaming_dma_afu på din Intel PAC med Intel Arria 10 GX FPGA. - DMA Accelerator Functional Unit Användarhandbok: Intel FPGA Programmerbart Acceleration Card D5005
För information om hur du kompilerar och kör dma_afu på din Intel FPGA PAC D5005. - Streaming DMA Accelerator Funktionsenhet Användarhandbok: Intel FPGA Programmerbart Acceleration Card D5005
För information om hur du kompilerar och kör dma_afu på din Intel FPGA PAC D5005.
Felsökning
Om följande fel uppstår under simuleringen, korrigera det genom att följa stegen nedan.
Felmeddelande
# [SIM] En ASE-instans körs förmodligen fortfarande i den aktuella katalogen!
# [SIM] Sök efter PID 28816
# [SIM] Simuleringen avslutas... du kan använda en SIGKILL för att döda simuleringsprocessen.
# [SIM] Kontrollera också om .ase_ready.pid file tas bort innan du fortsätter. Lösning
- Skriv kill ase_simv för att döda zombiesimuleringsprocesser och ta bort eventuella tillfälliga fileär kvar av misslyckade simuleringsprocesser eller låsningar.
- Ta bort .ase_ready.pid file, som finns i katalogen $ASE_WORKDIR.
ASE Snabbstart Användarhandbok Arkiv
Intel Acceleration Stack-version | Användarhandbok |
2.0 | Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) Användarhandbok för snabbstart |
1. | Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) Användarhandbok för snabbstart |
1. | Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) Användarhandbok för snabbstart |
1.0 | Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) Användarhandbok för snabbstart |
Dokumentversionshistorik för ASE Snabbstart användarhandbok
Dokumentversion | Intel Acceleration Stack-version | Ändringar |
2020.03.06 | 1.2.1 och 2.0.1 | Uppdaterade följande: • Systemkrav |
2019.08.05 | 2.0 | • Uppdaterade versionen av Intel Quartus Prime Pro Edition i Systemkrav. • Lade till hello_afu i AFU Examples. • Borttagen information om simulering i regressionsläge. • Lade till ett nytt avsnitt: ASE Quick Start User Guide Archives. |
2018.12.04 | 1. | Lade till Ubuntu-stöd. |
2018.08.06 | 1. | Uppdaterade systemkrav, katalogstruktur och motsvarande filenamn. |
2018.04.10 | 1.0 | Initial release. |
683200 | 2020.03.06
Skicka feedback
Dokument/resurser
![]() |
Intel Accelerator Functional Unit Simulation Environment Software [pdf] Användarhandbok Accelerator Functional Unit, Simulation Environment Software, Accelerator Functional Unit Simulation Environment, Software, Accelerator Functional Unit Simulation Environment Software |