intel - logoFunctional Unit Simulation Environment Software
Brugervejledning

Om dette dokument

Dette dokument beskriver, hvordan man simulerer somample Accelerator Functional Unit (AFU) ved hjælp af Intel
Accelerator Functional Unit (AFU) Simuleringsmiljø (ASE) miljø. Se brugervejledningen til Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) for omfattende detaljer om ASE-funktioner og intern arkitektur.
Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) er et hardware- og softwareco-simuleringsmiljø for ethvert Intel FPGA Programmable® Acceleration Card (Intel FPGA PAC). Dette software-co-simuleringsmiljø understøtter i øjeblikket følgende Intel FPGA PAC'er: 10 GX FPGA

  • Intel FPGA programmerbart accelerationskort D5005
  • Intel Programmable Acceleration Card med Intel Arria®
    ASE giver en transaktionsmodel for Core Cache Interface (CCI-P) protokollen og en hukommelsesmodel for den FPGA-tilsluttede lokale hukommelse.
    ASE validerer også Accelerator Functional Unit (AFU) overholdelse af følgende protokoller og API'er:
  • CCI-P protokolspecifikationen
  • Avalon
    Memory Mapped (Avalon-MM) grænsefladespecifikation
  • Open Programmable Acceleration Engine (OPAE)®

Tabel 1. Accelerationsstak for Intel Xeon® CPU med FPGA'er Ordliste

Semester Forkortelse Beskrivelse
Intel Acceleration Stack til Intel Xeon® CPU med FPGA'er Accelerationsstak En samling af software, firmware og værktøjer, der giver ydeevneoptimeret forbindelse mellem en Intel FPGA og en Intel Xeon-processor.
Intel FPGA programmerbart accelerationskort (Intel FPGA PAC) Intel FPGA PAC PCIe* FPGA acceleratorkort.
Indeholder en FPGA Interface Manager (FIM), der parres med en Intel Xeon-processor over en PCIe-bus.
Intel Xeon skalerbar platform med integreret FPGA Integreret FPGA-platform Intel Xeon plus FPGA-platform med Intel Xeon og en FPGA i en enkelt pakke og deler en sammenhængende cache af hukommelse via Ultra Path Interconnect (UPI).

Relateret information
Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) brugervejledning

Intel Corporation. Alle rettigheder forbeholdes. Intel, Intel-logoet og andre Intel-mærker er varemærker tilhørende Intel Corporation eller dets datterselskaber. Intel garanterer ydeevnen af ​​sine FPGA- og halvlederprodukter i henhold til de aktuelle specifikationer i overensstemmelse med Intels standardgaranti, men forbeholder sig retten til at foretage ændringer af produkter og tjenester til enhver tid uden varsel. Intel påtager sig intet ansvar eller erstatningsansvar, der opstår som følge af applikationen eller brugen af ​​nogen information, produkt eller service, der er beskrevet heri, undtagen som udtrykkeligt skriftligt aftalt af Intel. Intel-kunder rådes til at få den seneste version af enhedsspecifikationerne, før de stoler på nogen offentliggjort information, og før de afgiver ordrer på produkter eller tjenester.
*Andre navne og mærker kan hævdes at være andres ejendom.
ISO 9001: 2015 Registreret

Systemkrav

Her er systemkravene til Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE)::

  • Et 64-bit Linux-operativsystem. Denne udgivelse validerede følgende operativsystemer:
    — Til Intel FPGA PAC D5005:
  • RHEL 7.6 med Kernel 3.10.0-957
    — For 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 af følgende simulatorer:
    — 64-bit Synopsys* VCS-MX-2016.06-SP2-1 RTL Simulator
    — 64-bit Mentor Graphics* Modelsim SE Simulator (version 10.5c)
    — 64-bit Mentor Graphics QuestaSim Simulator (version 10.5c)
  • C-kompiler: GCC 4.7.0 eller nyere
  • CMake: version 2.8.12 eller nyere
  • GNU C Library: version 2.17 eller nyere
  • Python: version 2.7
  • Intel Quartus® Prime Pro Edition-softwareversion 19.2 (1)

Opsætning af miljøet

Du skal konfigurere dit simuleringsmiljø og installere OPAE-softwaren, før du kører ASE.

  1. Indstil følgende miljøvariabler for din simuleringssoftware:
    • For VCS:
    $ eksport VCS_HOME=
    $ eksport PATH=$VCS_HOME/bin:$PATH
    VCS installationsmappestrukturen er som følger:
    Intel Accelerator Functional Unit Simulation Environment Software - Figur 1Sørg for, at dit system har en gyldig VCS-licens.
    • For Modelsim SE/QuestaSim:
    $ eksport MTI_HOME=
    $ eksport PATH=$MTI_HOME/linux_x86_64/:$MTI_HOME/bin/:$PATH
    Modelsim/Questa installationsmappestrukturen er som følger:
    Intel Accelerator Functional Unit Simulation Environment Software - Figur 2Sørg for, at dit system har en gyldig Modelsim SE/QuestaSim-licens.
    • Til Intel Quartus Prime Pro Edition:
    $ eksport QUARTUS_HOME=
    Intel Quartus Prime installationsmappestrukturen er som følger:
    Intel Accelerator Functional Unit Simulation Environment Software - Figur 3Tilføj miljøvariablen for at kontrollere Modelsim-licensen:
    $ eksport MGLS_LICENSE_FILE=
  2. Eksportere:
    $ eksport LM_LICENSE_FILE=
  3.  Udpak runtime-arkivet file, og installer OPAE-biblioteker, binære filer, inkl files og ASE-biblioteker som beskrevet i afsnittet: Installation af OPAE-softwarepakken i den relevante Intel Acceleration Stack Quick Start-brugervejledning til din Intel FPGA PAC.

Dit miljø skal konfigureres korrekt for at konfigurere og bygge en AFU. Især skal du installere OPAE Software Development Kit (SDK) korrekt. OPAE SDK-scripts skal være på PATH og inkludere files og biblioteker, der skal være tilgængelige for C-kompileren. Derudover skal du sikre dig, at OPAE_PLATFORM_ROOT miljøvariablen er indstillet. Se Installation af OPAE-softwarepakken for at få flere oplysninger.
For at sikre, at OPAE SDK og ASE er korrekt installeret i en shell, skal du bekræfte, at din PATH inkluderer afu_sim_setup. afu_sim_setup skal være i mappen /usr/bin eller i hvis du byggede OPAE fra kilden files.

Relateret information

  • Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) brugervejledning
  • Installation af OPAE-softwarepakken
    Til Intel PAC med Intel Arria 10 GX FPGA.
  • Installation af OPAE-softwarepakken til Intel FPGA PAC D5005.

Simulering af hello_afu i klient-servertilstand

Hello_afu example er en simpel AFU-skabelon, der demonstrerer den primære CCI-P-grænseflade. RTL'en opfylder minimumskravene for en AFU, idet den reagerer på hukommelseskortlagte I/O-læsninger for at returnere enhedsfunktionsheaderen og AFU'ens UUID.
Figur 1. hello_afu Directory Tree

Intel Accelerator Functional Unit Simulation Environment Software - Figur 4

Note:
Dette dokument brugerample> at henvise til en example design bibliotek, såsom hello_afu i figuren ovenfor.
Softwaren demonstrerer minimumskravene til at tilslutte til en FPGA ved hjælp af OPAE. RTL demonstrerer minimumskravene for at tilfredsstille OPAE-driveren og hello_afu exampsoftwaren.
filelist.txt angiver files til RTL-simulering og syntese.
For at konfigurere og bygge AFU'erne med succesamples, skal dit miljø være opsat korrekt, som beskrevet i Opsætning af miljøet.

Relateret information

  • Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) brugervejledning
  • Opsætning af miljøet på side 5

Udvikling af AFU'er med OPAE SDK
I Accelerator Functional Unit (AFU) Developer's Guide

4.1. Simulering i klient-servertilstand

Følgende example flow introducerer de grundlæggende ASE-scripts. Du kan simulere alle examples med ASE, undtagen eth_e2e_e10 og eth_e2e_e40.
Simuleringen kræver to softwareprocesser: en proces til RTL-simulering og en anden proces til at køre den tilsluttede software. For at konstruere et RTL-simuleringsmiljø skal du køre følgende i $OPAE_PLATFORM_ROOT/hw/samples/hello_afu:
$ afu_sim_setup –kilde hw/rtl/filelist.txt build_sim
Denne kommando konstruerer et ASE-miljø i build_sim-undermappen.
For at bygge og køre simulatoren:
$ cd build_sim
$ gøre
$ lav sim
Simulatoren udskriver en besked om, at den er klar til simulering. Den udskriver også en meddelelse, der beder dig om at indstille miljøvariablen ASE_WORKDIR.
Åbn en anden shell til softwaresimulering. Du skal sørge for at indstille OPAE_PLATFORM_ROOT miljøvariablen.
For at bygge og køre softwaren i den nye shell:
$ cd $OPAE_PLATFORM_ROOT
$ eksport ASE_WORKDIR=$OPAE_PLATFORM_ROOT/hw/samples/hello_afu/build_sim/work
$ cd $OPAE_PLATFORM_ROOT/hw/samples/hello_afu/sw
$ gøre rent
$ gør USE_ASE=1
$ ./hello_afu

Note:
Det specifikke stinavn for ASE_WORKDIR kan variere. Brug det stinavn, der er angivet af simulatorprompten.
Softwaren og simulatoren kører, logger transaktioner og afslutter.

4.1.1. Simuleringslog Files
Simuleringsarbejdsbiblioteket gemmer kurveformen, CCI-P-transaktioner og simuleringsloggen files.
Udfør følgende trin for at view bølgeformdatabasen:

  1. Skift til den mappe, hvor du udførte kommandoen make sim.
  2. Type:
    $ lav bølge
    Make wave kommandoen kalder bølgeformen vieweh.

4.1.2. Designerklæringer
Følgende file og mapper definerer AFU-simuleringen:

  • $OPAE_PLATFORM_ROOT/hw/samples/ample>/hw/rtl/filelist.txt angiver RTL-kilder.
  • <AFU example> er example mappe som vist i hello_afu Directory Tree figuren.
  • filelist.txt viser SystemVerilog, VHDL og AFU JavaScript Object Notation (.json) file.
  • AFU .json beskriver de grænseflader, som AFU kræver. Det inkluderer også en UUID til at identificere AFU'en, når den er downloadet til en FPGA.
  • hw/rtl/hello_afu.json definerer ccip_std_afu som grænsefladen på øverste niveau ved at indstille afu-top-grænsefladen til ccip_std_afu. ccip_std_afu er basis-CCI-P-grænsefladen inklusive ure, nulstilling og CCI-P TX- og RX-strukturer. Mere avanceret examples definerer andre grænseflademuligheder.
  • .json file erklærer AFU UUID. Et OPAE-script genererer UUID. RTL indlæser UUID fra afu_json_info.vh.
  • sw/Makefile genererer afu_json_info.h. Softwaren indlæser UUID fra afu_json_info.h.

4.1.3. Fejlfinding af klient-server-simulering
Hvis kommandoen afu_sim_setup mislykkes, skal du bekræfte at:

  • afu_sim_setup er på din PATH. afu_sim_setup skal være i /usr/bin eller in hvis du byggede OPAE fra kilden files.
  • Du har Python version 2.7 eller nyere installeret.

Hvis du ikke er i stand til at bygge og udføre simulatoren, er det sandsynligt, at du ikke har installeret dit RTL-simuleringsværktøj korrekt.
Når du forsøger at bygge og køre softwaren, hvis du ser en "Fejl ved opregning af AFC'er", undlod du at indstille USE_ASE=1 på kommandolinjen make. Softwaren søger efter en fysisk FPGA-enhed. For at gendanne skal du gentage trinene fra kommandoen make clean.

AFU Examples

Tabel 2.
AFU Examples
Hver AFU example indeholder en detaljeret README file, giver en driftsbeskrivelse og noter om, hvordan man simulerer designet. For en fuld forståelse af simuleringsprocessen, vedrview README file i hver AFU example.

AFU Beskrivelse
hej_mem_afu hello_mem_afu demonstrerer en AFU, der bygger en simpel tilstandsmaskine til at få adgang til hukommelse. Statsmaskinen er i stand til flere adgangsmønstre til lokal hukommelse, der er direkte forbundet til FPGA-ben, såsom DDR4 DIMM'er. Denne hukommelse er forskellig fra værtshukommelsen, der er tilgået via CCI-P. Værten administrerer hello_mem_afu-controllerens tilstandsmaskine ved hjælp af memory-mapped I/O (MMIO)-anmodninger til kontrol og statusregistre (CSR'er).
hej_intr_afu hello_intr_afu demonstrerer applikationsafbrydelsesfunktionen i ASE.
DMA og f1.1 (2) _ dma_afu demonstrerer en DMA Basic Building Block for vært til FPGA, FPGA til vært og FPGA til FPGA hukommelsesoverførsler. Ved simulering af denne AFU er bufferstørrelsen, der bruges til DMA-overførsel, lille for at holde simuleringstiden rimelig. For mere information henvises til brugervejledningen til DMA Accelerator Functional Unit (AFU).
nlb_mode_O nlb_mode_O er et CCI-P-system, der demonstrerer hukommelseskopitesten. $0PAE_PLATFORM_ROOT/ sw/opae—cre/ease number>/sample/hello_fpga . c inkluderer nlb_mode_0.
$ sh regress.sh -a -r rtl_sim
-s < vcslmodelsimlquesta > [-i )
-b
streaming_dma streaming_dma demonstrerer, hvordan man overfører data mellem værtshukommelse og en FPGA-streamingport. For mere information henvises til Streaming DMA Accelerator Functional Unit (AFU) brugervejledning.
hej_afu hell lo_a fu er en simpel AFU, der demonstrerer den primære CCI-P-grænseflade. RTL'en opfylder de absolutte minimumskrav til en AFU, idet den reagerer på MMIO-læsninger for at returnere enhedsfunktionshovedet og AFU's UUID.

Relateret information

  • DMA Accelerator Functional Unit (AFU) Brugervejledning
    For information om, hvordan du kompilerer og udfører dma_afu på din Intel PAC med Intel Arria 10 GX FPGA.
  • Streaming DMA Accelerator Functional Unit (AFU) Brugervejledning
    For information om, hvordan du kompilerer og udfører streaming_dma_afu på din Intel PAC med Intel Arria 10 GX FPGA.
  • DMA Accelerator Functional Unit Brugervejledning: Intel FPGA Programmerbart Acceleration Card D5005
    For information om, hvordan du kompilerer og udfører dma_afu på din Intel FPGA PAC D5005.
  • Streaming DMA Accelerator Functional Unit Brugervejledning: Intel FPGA Programmerbart Acceleration Card D5005
    For information om, hvordan du kompilerer og udfører dma_afu på din Intel FPGA PAC D5005.

Fejlfinding

Hvis følgende fejl opstår under simuleringen, skal du rette den ved at følge nedenstående trin.
Fejlmeddelelse
# [SIM] En ASE-instans kører sandsynligvis stadig i den aktuelle mappe!
# [SIM] Tjek for PID 28816
# [SIM] Simulering afsluttes... du kan bruge en SIGKILL til at dræbe simuleringsprocessen.
# [SIM] Tjek også om .ase_ready.pid file fjernes, før du fortsætter. Løsning

  1. Skriv kill ase_simv for at dræbe zombiesimuleringsprocesser og fjerne eventuelle midlertidige files efterladt af mislykkede simuleringsprocesser eller lock ups.
  2. Slet .ase_ready.pid file, fundet i mappen $ASE_WORKDIR.

ASE Quick Start Brugervejledning Arkiver

Intel Acceleration Stack-version Brugervejledning
2.0 Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) Lynstartbrugervejledning
1. Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) Lynstartbrugervejledning
1. Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) Lynstartbrugervejledning
1.0 Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) Lynstartbrugervejledning

Dokumentrevisionshistorik for ASE Quick Start-brugervejledning

Dokumentversion Intel Acceleration Stack-version Ændringer
2020.03.06 1.2.1 og 2.0.1 Opdateret følgende:
• Systemkrav
2019.08.05 2.0 • Opdateret Intel Quartus Prime Pro Edition-versionen i Systemkrav.
• Tilføjet hello_afu i AFU Examples.
• Fjernet information om simulering i regressionstilstand.
• Tilføjet et nyt afsnit: ASE Quick Start User Guide Archives.
2018.12.04 1. Tilføjet Ubuntu-understøttelse.
2018.08.06 1. Opdaterede systemkrav, mappestruktur og tilsvarende filenavne.
2018.04.10 1.0 Første udgivelse.

683200 | 2020.03.06
TCL HH42CV1 Link Hub - ikon 8Send feedback

Dokumenter/ressourcer

intel Accelerator Functional Unit Simulation Environment Software [pdfBrugervejledning
Accelerator Functional Unit, Simulation Environment Software, Accelerator Functional Unit Simulation Environment, Software, Accelerator Functional Unit Simulation Environment Software

Referencer

Efterlad en kommentar

Din e-mailadresse vil ikke blive offentliggjort. Påkrævede felter er markeret *