intel UG-01173 Foutinspuiting FPGA IP Core
Foutinspuiting Intel® FPGA IP Core Gebruikersgids
Die Fault Injection Intel® FPGA IP-kern spuit foute in die konfigurasie-RAM (CRAM) van 'n FPGA-toestel. Hierdie prosedure simuleer sagte foute wat tydens normale werking kan voorkom as gevolg van enkelgebeurtenis-ontwrigting (SEU's). SEU's is seldsame gebeurtenisse en is dus moeilik om te toets. Nadat jy die Fault Injection IP-kern in jou ontwerp geïntansieer het en jou toestel gekonfigureer het, kan jy die Intel Quartus® Prime Fault Injection Debugger-nutsding gebruik om opsetlike foute in die FPGA te veroorsaak om die stelsel se reaksie op hierdie foute te toets.
Verwante inligting
- Enkelgebeurtenis ontstel
- AN 737: SEU-opsporing en -herwinning in Intel Arria 10-toestelle
Kenmerke
- Laat jou toe om stelselreaksie te evalueer om enkelgebeurtenis funksionele onderbrekings (SEFI) te versag.
- Laat jou toe om SEFI-karakterisering intern uit te voer, wat die behoefte aan die hele stelselbalktoetsing uitskakel. In plaas daarvan kan jy die straaltoetsing beperk tot mislukkings in tyd (FIT)/Mb-meting op toestelvlak.
- Skaal FIT-koerse volgens die SEFI-karakterisering wat relevant is vir jou ontwerpargitektuur. Jy kan foutinspuitings ewekansig deur die hele toestel versprei, of dit beperk tot spesifieke funksionele areas om toetsing te bespoedig.
- Optimaliseer jou ontwerp om ontwrigting wat veroorsaak word deur 'n enkele gebeurtenis ontsteltenis (SEU) te verminder.
Toestelondersteuning
Die Fault Injection IP-kern ondersteun Intel Arria® 10-, Intel Cyclone® 10 GX- en Stratix® V-familietoestelle. Die Cyclone V-familie ondersteun foutinspuiting op toestelle met die -SC-agtervoegsel in die bestelkode. Kontak jou plaaslike verkoopsverteenwoordiger vir bestelinligting oor -SC-agtervoegsel Cyclone V-toestelle.
Hulpbronbenutting en -prestasie
Die Intel Quartus Prime-sagteware genereer die volgende hulpbronskatting vir die Stratix V A7 FPGA. Resultate vir ander toestelle is soortgelyk.
Intel Corporation. Alle regte voorbehou. Intel, die Intel-logo en ander Intel-merke is handelsmerke van Intel Corporation of sy filiale. Intel waarborg prestasie van sy FPGA- en halfgeleierprodukte volgens huidige spesifikasies in ooreenstemming met Intel se standaardwaarborg, maar behou die reg voor om enige tyd sonder kennisgewing veranderinge aan enige produkte en dienste aan te bring. Intel aanvaar geen verantwoordelikheid of aanspreeklikheid wat voortspruit uit die toepassing of gebruik van enige inligting, produk of diens wat hierin beskryf word nie, behalwe soos uitdruklik skriftelik deur Intel ooreengekom. Intel-kliënte word aangeraai om die nuutste weergawe van toestelspesifikasies te bekom voordat hulle op enige gepubliseerde inligting staatmaak en voordat bestellings vir produkte of dienste geplaas word. *Ander name en handelsmerke kan as die eiendom van ander geëis word.
Foutinspuiting IP-kern FPGA-prestasie en hulpbronbenutting
Toestel | ALM's | Logika registers | M20K | |
Primêr | Sekondêr | |||
Stratix V A7 | 3,821 | 5,179 | 0 | 0 |
Die Intel Quartus Prime-sagteware-installasie sluit die Intel FPGA IP-biblioteek in. Hierdie biblioteek verskaf baie nuttige IP-kerne vir jou produksiegebruik sonder die behoefte aan 'n bykomende lisensie. Sommige Intel FPGA IP-kerne vereis die aankoop van 'n aparte lisensie vir produksiegebruik. Die Intel FPGA IP-evalueringsmodus laat jou toe om hierdie gelisensieerde Intel FPGA IP-kerns in simulasie en hardeware te evalueer, voordat jy besluit om 'n volledige produksie-IP-kernlisensie te koop. Jy hoef net 'n volledige produksielisensie vir gelisensieerde Intel IP-kerns te koop nadat jy hardewaretoetse voltooi het en gereed is om die IP in produksie te gebruik. Die Intel Quartus Prime-sagteware installeer IP-kerne by verstek op die volgende liggings:
IP-kerninstallasiepad
IP-kerninstallasie-liggings
Ligging | Sagteware | Platform |
:\intelFPGA_pro\quartus\ip\altera | Intel Quartus Prime Pro Edition | Windows * |
:\intelFPGA\quartus\ip\altera | Intel Quartus Prime Standard Edition | Vensters |
:/intelFPGA_pro/quartus/ip/altera | Intel Quartus Prime Pro Edition | Linux * |
:/intelFPGA/quartus/ip/altera | Intel Quartus Prime Standard Edition | Linux |
Let wel: Die Intel Quartus Prime-sagteware ondersteun nie spasies in die installasiepad nie.
Pasmaak en generering van IP-kerne
U kan IP-kerne aanpas om 'n wye verskeidenheid toepassings te ondersteun. Die Intel Quartus Prime IP-katalogus en parameterredigeerder laat jou toe om vinnig IP-kernpoorte, -kenmerke en -uitvoer te kies en op te stel files.
IP-katalogus en parameterredigeerder
Die IP-katalogus vertoon die IP-kerne wat vir jou projek beskikbaar is, insluitend Intel FPGA IP en ander IP wat jy by die IP-katalogus-soekpad voeg. Gebruik die volgende kenmerke van die IP-katalogus om 'n IP-kern op te spoor en aan te pas:
- Filter IP-katalogus om IP te wys vir aktiewe toestelfamilie of Wys IP vir alle toestelfamilies. As jy geen projek oop het nie, kies die Toestelfamilie in IP-katalogus.
- Tik die Soek-veld in om enige volledige of gedeeltelike IP-kernnaam in IP-katalogus op te spoor.
- Regskliek 'n IP-kernnaam in IP-katalogus om besonderhede oor ondersteunde toestelle te vertoon, om die IP-kern se installasiegids oop te maak en vir skakels na IP-dokumentasie.
- Klik Soek vir Partner IP to access partner IP information on the web.
Die parameterredigeerder vra jou om 'n IP-variasienaam, opsionele poorte en uitvoer te spesifiseer file generasie opsies. Die parameterredigeerder genereer 'n topvlak Intel Quartus Prime IP file (.ip) vir 'n IP-variasie in Intel Quartus Prime Pro Edition-projekte. Die parameterredigeerder genereer 'n topvlak Quartus IP file (.qip) vir 'n IP-variasie in Intel Quartus Prime Standard Edition-projekte. Hierdie files verteenwoordig die IP-variasie in die projek, en stoor parameteriseringsinligting.
IP-parameterredigeerder (Intel Quartus Prime Standard Edition)
IP Core Generation Output (Intel Quartus Prime Pro Edition)
Die Intel Quartus Prime-sagteware genereer die volgende uitvoer file struktuur vir individuele IP-kerne wat nie deel is van 'n Platform Designer-stelsel nie.
Individuele IP Core Generation Uitset (Intel Quartus Prime Pro Edition)
- Indien ondersteun en geaktiveer vir u IP-kernvariasie.
Uitset Files van Intel FPGA IP Generation
File Naam | Beskrywing |
<jou_ip>.ip | Topvlak IP-variasie file wat die parameterisering van 'n IP-kern in u projek bevat. As die IP-variasie deel is van 'n Platform Designer-stelsel, genereer die parameterredigeerder ook 'n .qsys file. |
<jou_ip>.cmp | Die VHDL-komponentverklaring (.cmp) file is 'n teks file wat plaaslike generiese en poortdefinisies bevat wat jy in VHDL-ontwerp gebruik files. |
<jou_ip>_generasie.rpt | IP- of platformontwerper-generasielogboek file. Vertoon 'n opsomming van die boodskappe tydens IP-generering. |
voortgesit … |
File Naam | Beskrywing |
<jou_ip>.qgsimc (slegs platformontwerperstelsels) | Simulasie kas file wat die .qsys en .ip vergelyk files met die huidige parameterisering van die Platform Designer-stelsel en IP-kern. Hierdie vergelyking bepaal of Platform Designer herlewing van die HDL kan oorslaan. |
<jou_ip>.qgsynth (slegs platformontwerperstelsels) | Sintese kas file wat die .qsys en .ip vergelyk files met die huidige parameterisering van die Platform Designer-stelsel en IP-kern. Hierdie vergelyking bepaal of Platform Designer herlewing van die HDL kan oorslaan. |
<jou_ip>.qip | Bevat alle inligting om die IP-komponent te integreer en saam te stel. |
<jou_ip>.csv | Bevat inligting oor die opgraderingstatus van die IP-komponent. |
.bsf | 'n Simboolvoorstelling van die IP-variasie vir gebruik in Blokdiagram Files (.bdf). |
<jou_ip>.spd | Invoer file wat ip-make-simscript vereis om simulasie skrifte te genereer. Die .spd file bevat 'n lys van files wat jy genereer vir simulasie, saam met inligting oor herinneringe wat jy inisialiseer. |
<jou_ip>.ppf | Die Speldbeplanner File (.ppf) stoor die poort- en nodusopdragte vir IP-komponente wat jy skep vir gebruik met die Pin Planner. |
<jou_ip>_bb.v | Gebruik die Verilog blackbox (_bb.v) file as 'n leë module-verklaring vir gebruik as 'n swartboks. |
<jou_ip>_inst.v of _inst.vhd | HDL bvampdie instansiasie sjabloon. Kopieer en plak die inhoud hiervan file in jou HDL file om die IP-variasie te instansieer. |
<jou_ip>.regmap | As die IP registerinligting bevat, genereer die Intel Quartus Prime-sagteware die .regmap file. Die .regmap file beskryf die registerkaartinligting van meester- en slaafkoppelvlakke. Hierdie file komplementeer
die .sopcinfo file deur meer gedetailleerde registerinligting oor die stelsel te verskaf. Hierdie file maak registervertoning moontlik views en gebruiker aanpasbare statistieke in System Console. |
<jou_ip>.svd | Laat HPS System Debug-nutsgoed toe om view die registerkaarte van randapparatuur wat binne 'n Platform Designer-stelsel aan HPS koppel.
Tydens sintese stoor die Intel Quartus Prime-sagteware die .svd files vir slawe koppelvlak sigbaar vir die System Console meesters in die .sof file in die ontfoutsessie. Stelselkonsole lees hierdie afdeling, wat Platform Designer navrae doen vir registerkaartinligting. Vir stelselslawe kry Platform Designer toegang tot die registers op naam. |
<jou_ip>.v
<jou_ip>.vhd |
HDL files wat elke submodule of kind IP-kern instansieer vir sintese of simulasie. |
mentor/ | Bevat 'n msim_setup.tcl script om 'n simulasie op te stel en uit te voer. |
aldec/ | Bevat 'n skrif rivierapro_setup.tcl om 'n simulasie op te stel en uit te voer. |
/synopsys/vcs
/synopsys/vcsmx |
Bevat 'n dopskrif vcs_setup.sh om 'n simulasie op te stel en uit te voer.
Bevat 'n dopskrif vcsmx_setup.sh en synopsys_sim.setup file om 'n simulasie op te stel en uit te voer. |
/kadens | Bevat 'n dopskrif ncsim_setup.sh en ander opstelling files om 'n simulasie op te stel en uit te voer. |
/xcelium | Bevat 'n Parallelle simulator dop script xcelium_setup.sh en ander opstelling files om 'n simulasie op te stel en uit te voer. |
/submodules | Bevat HDL files vir die IP kern submodule. |
<IP submodule>/ | Platform Designer genereer /synth en /sim subgidse vir elke IP submodule gids wat Platform Designer genereer. |
Funksionele beskrywing
Met die Fault Injection IP-kern kan ontwerpers SEFI-karakterisering intern uitvoer, FIT-tempo's skaal volgens SEFI-karakterisering, en ontwerpe optimaliseer om effek van SEU's te verminder.
Enkelgebeurtenis ontsteltenis Versagting
Geïntegreerde stroombane en programmeerbare logika-toestelle soos FPGA's is vatbaar vir SEU's. SEU's is ewekansige, nie-vernietigende gebeurtenisse, wat deur twee hoofbronne veroorsaak word: alfa-deeltjies en neutrone van kosmiese strale. Straling kan veroorsaak dat óf die logiese register, ingebedde geheuebis, óf 'n konfigurasie-RAM (CRAM)-bis sy toestand verander, wat dus lei tot onverwagte toestelwerking. Intel Arria 10, Intel Cyclone 10 GX, Arria V, Cyclone V, Stratix V en nuwer toestelle het die volgende CRAM-vermoëns:
- Foutbespeuring Sikliese Redundansiekontrolering (EDCRC)
- Outomatiese regstelling van 'n ontstelde CRAM (skrop)
- Vermoë om 'n ontstelde CRAM-toestand te skep (foutinspuiting)
Vir meer inligting oor SEU-versagting in Intel FPGA-toestelle, verwys na die SEU-versagting-hoofstuk in die onderskeie toestelhandboek.
Foutinspuiting IP-penbeskrywing
Die Fault Injection IP-kern bevat die volgende I/O-penne.
Foutinspuiting IP Core I/O-penne
Speld Naam | Speldrigting | Speldbeskrywing |
crcerror_pin | insette | Invoer vanaf Foutboodskap Register Unloader Intel FPGA IP (EMR Unloader IP). Hierdie sein word beweer wanneer 'n CRC-fout deur die toestel se EDCRC opgespoor is. |
emr_data | insette | Foutboodskapregister (EMR) inhoud. Verwys na die toepaslike toestelhandboek vir die EMR-velde.
Hierdie invoer voldoen aan die Avalon Streaming-datakoppelvlaksein. |
emr_valid | insette | Dui aan dat die emr_data-insette geldige data bevat. Dit is 'n Avalon Streaming geldige koppelvlak sein. |
Stel terug | insette | Module-terugstelling-invoer. Die terugstelling word ten volle beheer deur die foutinspuiting-ontfouter. |
error_injected | uitset | Dui aan dat 'n fout in CRAM ingespuit is soos beveel via die JTAG koppelvlak. Die tydsduur wat hierdie sein bevestig, hang af van jou instellings van die JTAG TCK en beheer blok seine. Tipies is die tyd ongeveer 20 kloksiklusse van die TCK-sein. |
fout_geskrop | uitset | Dui aan dat die skrop van die toestel voltooi is soos beveel via die JTAG koppelvlak. Die tydsduur wat hierdie sein bevestig, hang af van jou instellings van die JTAG TCK en beheer blok seine. Tipies is die tyd ongeveer 20 kloksiklusse van die TCK-sein. |
insc | uitset | Opsionele uitset. Die Fault Injection IP gebruik hierdie horlosie, bvample, om die EMR_unloader-blok te klok. |
Foutinspuiting IP-pendiagram
Gebruik die Foutinspuiting Ontfouter en Foutinspuiting IP Core
Die Fault Injection Debugger werk saam met die Fault Injection IP-kern. Eerstens instansieer jy die IP-kern in jou ontwerp, stel en laai die gevolglike konfigurasie af file in jou toestel. Dan hardloop jy die foutinspuiting-ontfouter van binne die Intel Quartus Prime-sagteware of vanaf die opdragreël om sagte foute te simuleer.
- Die Fault Injection Debugger laat jou toe om foutinspuitingseksperimente interaktief of deur bondelopdragte te bedryf, en laat jou toe om die logiese areas in jou ontwerp vir foutinspuitings te spesifiseer.
- Die opdragreël-koppelvlak is nuttig om die ontfouter via 'n skrip te laat loop.
Let wel
Die Fault Injection Debugger kommunikeer met die Fault Injection IP-kern via die JTAG koppelvlak. Die Fault Injection IP aanvaar opdragte van die JTAG koppelvlak en rapporteer status terug deur die JTAG koppelvlak. Die Fault Injection IP-kern word in sagte logika in jou toestel geïmplementeer; daarom moet jy hierdie logikagebruik in jou ontwerp verantwoord. Een metodologie is om jou ontwerp se reaksie op SEU in die laboratorium te karakteriseer en dan die IP-kern uit jou finale ontplooide ontwerp weg te laat.
Jy gebruik die Foutinspuiting IP-kern met die volgende IP-kerne:
- Die Foutboodskap Register Unloader IP-kern, wat data lees en stoor van die verharde foutopsporingskringe in Intel FPGA-toestelle.
- (Opsioneel) Die Advanced SEU Detection Intel FPGA IP-kern, wat enkelbisfoutliggings met 'n sensitiwiteitskaart vergelyk tydens toestelwerking om te bepaal of 'n sagte fout dit beïnvloed.
Foutinspuiting Ontfouter verbyview Blokdiagram
Notas:
-
Die Fault Injection IP draai die stukkies van die geteikende logika om.
-
Die Fault Injection Debugger en Advanced SEU Detection IP gebruik dieselfde EMR Unloader-instansie.
-
Die Advanced SEU Detection IP-kern is opsioneel.
Verwante inligting
- Oor SMH Files op bladsy 13
- Oor die EMR Unloader IP Core op bladsy 10
- Oor die Advanced SEU Detection IP Core op bladsy 11
Instansieer die foutinspuiting IP-kern
LET WEL
Die foutinspuiting IP-kern vereis nie dat u enige parameters instel nie. Om die IP-kern te gebruik, skep 'n nuwe IP-instansie, sluit dit by jou Platform Designer (Standaard) stelsel in, en koppel die seine soos toepaslik. Jy moet die Fault Injection IP-kern met die EMR Unloader IP-kern gebruik. Die foutinspuiting en die EMR Unloader IP-kerne is beskikbaar in Platform Designer en die IP-katalogus. Opsioneel kan jy hulle direk in jou RTL-ontwerp instansieer deur Verilog HDL, SystemVerilog of VHDL te gebruik.
Oor die EMR Unloader IP Core
Die EMR Unloader IP-kern verskaf 'n koppelvlak na die EMR, wat deurlopend opgedateer word deur die toestel se EDCRC wat die toestel se CRAM bisse CRC nagaan vir sagte foute.
Example Platform Designer System Insluitend die Foutinspuiting IP Core en EMR Unloader IP Core
Example Foutinspuiting IP Core en EMR Unloader IP Core Blokdiagram
Verwante inligting
Foutboodskap Register Unloader Intel FPGA IP Core Gebruikersgids
Oor die Advanced SEU Detection IP Core
Gebruik die Advanced SEU Detection (ASD) IP-kern wanneer SEU-verdraagsaamheid 'n ontwerpprobleem is. Jy moet die EMR Unloader IP-kern met die ASD IP-kern gebruik. As jy dus die ASD IP en die Fault Injection IP in dieselfde ontwerp gebruik, moet hulle die EMR Unloader uitset deel via 'n Avalon®-ST splitter komponent. Die volgende figuur toon 'n platformontwerperstelsel waarin 'n Avalon-ST-splitter die EMR-inhoud na die ASD- en Foutinspuiting-IP-kerne versprei.
Gebruik die ASD en Fault Injection IP in dieselfde platformontwerperstelsel
Verwante inligting
Gevorderde SEU-opsporing Intel FPGA IP Core Gebruikersgids
Definieer foutinspuitingsareas
Jy kan spesifieke streke van die FPGA vir foutinspuiting definieer met behulp van 'n Sensitivity Map Header (.smh) file. Die SMH file stoor die koördinate van die toestel CRAM-bisse, hul toegewysde streek (ASD-streek) en kritiek. Tydens die ontwerpproses gebruik jy hiërargie taggaan om die streek te skep. Dan, tydens samestelling, genereer die Intel Quartus Prime Assembler die SMH file. Die Fault Injection Debugger beperk foutinspuitings tot spesifieke toestelstreke wat jy in die SMH definieer file.
Uitvoer van hiërargie Tagging
Jy definieer die FPGA-streke vir toetsing deur 'n ASD-streek aan die ligging toe te wys. Jy kan 'n ASD-streekwaarde vir enige gedeelte van jou ontwerphiërargie spesifiseer deur die Ontwerppartisies-venster te gebruik.
- Kies Opdragte ➤ Ontwerp partisies Venster.
- Regskliek enige plek in die kopry en skakel ASD Streek aan om die ASD Streek kolom te vertoon (indien dit nie reeds vertoon word nie).
- Voer 'n waarde van 0 tot 16 in vir enige partisie om dit aan 'n spesifieke ASD-streek toe te wys.
- ASD-streek 0 is gereserveer vir ongebruikte gedeeltes van die toestel. Jy kan 'n partisie aan hierdie streek toewys om dit as nie-kritiek te spesifiseer.
- ASD-streek 1 is die verstekstreek. Alle gebruikte gedeeltes van die toestel word aan hierdie streek toegewys, tensy jy die ASD-streektoewysing uitdruklik verander.
Oor SMH Files
Die SMH file bevat die volgende inligting:
- As jy nie hiërargie gebruik nie tagging (dws die ontwerp het geen eksplisiete ASD-streekopdragte in die ontwerphiërargie nie), die SMH file lys elke CRAM-bis en dui aan of dit sensitief is vir die ontwerp.
- As jy hiërargie uitgevoer het tagging en veranderde verstek ASD Streek opdragte, die SMH file lys elke CRAM-bietjie en dit word ASD-gebied toegeken.
Die Fault Injection Debugger kan inspuitings beperk tot een of meer gespesifiseerde streke. Om die Assembler te rig om 'n SMH te genereer file:
- Kies Opdragte ➤ Toestel ➤ Toestel- en Pin-opsies ➤ Foutbespeuring CRC.
- Skakel die Genereer SEU-sensitiwiteitskaart aan file (.smh) opsie.
Gebruik die Fault Injection Debugger
LET WEL
Om die Fault Injection Debugger te gebruik, koppel jy aan jou toestel via die JTAG koppelvlak. Stel dan die toestel op en voer foutinspuiting uit. Om die Fault Injection Debugger te begin, kies Tools ➤ Fault Injection Debugger in die Intel Quartus Prime-sagteware. Die opstel of programmering van die toestel is soortgelyk aan die prosedure wat gebruik word vir die Programmeerder of Signal Tap Logic Analyzer.
Foutinspuiting Ontfouter
Om jou JTAG ketting:
- Klik op Hardware Setup. Die instrument vertoon die programmeringshardeware wat aan jou rekenaar gekoppel is.
- Kies die programmering hardeware wat jy wil gebruik.
- Klik Sluit.
- Klik Auto Detect, wat die toestelketting vul met die programmeerbare toestelle wat in die JTAG ketting.
Verwante inligting
Geteikende foutinspuitingskenmerk op bladsy 21
Hardeware en sagteware vereistes
Die volgende hardeware en sagteware word benodig om die Foutinspuiting Ontfouter te gebruik:
- FEATURE-lyn in jou Intel FPGA-lisensie wat die Fault Injection IP-kern moontlik maak. Vir meer inligting, kontak jou plaaslike Intel FPGA verkoopsverteenwoordiger.
- Laai kabel af (Intel FPGA-aflaaikabel, Intel FPGA-aflaaikabel II, , of II).
- Intel FPGA-ontwikkelingskit of gebruikersontwerpte bord met 'n JTAG verbinding met die toestel wat getoets word.
- (Opsioneel) FEATURE-lyn in jou Intel FPGA-lisensie wat die Advanced SEU Detection IP-kern moontlik maak.
Konfigureer jou toestel en die foutinspuiting-ontfouter
Die Fault Injection Debugger gebruik 'n .sof en (opsioneel) 'n Sensitivity Map Header (.smh) file. Die sagteware-objek File (.sof) konfigureer die FPGA. Die .smh file definieer die sensitiwiteit van die CRAM-bisse in die toestel. As jy nie 'n .smh file, die Fault Injection Debugger spuit foute ewekansig regdeur die CRAM-bisse in. Om 'n .sof te spesifiseer:
- Kies die FPGA wat jy wil konfigureer in die Toestelkettingboks.
- Klik Kies File.
- Navigeer na die .sof en klik OK. Die Fault Injection Debugger lees die .sof.
- (Opsioneel) Kies die SMH file.
As jy nie 'n SMH spesifiseer nie file, die Fault Injection Debugger spuit foute ewekansig oor die hele toestel in. As jy 'n SMH spesifiseer file, kan jy inspuitings beperk tot die gebruikte areas van jou toestel.- Regskliek op die toestel in die Toestelkettingkassie en klik dan Kies SMH File.
- Kies jou SMH file.
- Klik OK.
- Skakel Program/Configure aan.
- Klik Start.
Die Fault Injection Debugger konfigureer die toestel deur die .sof.
Kontekskieslys vir die keuse van die SMH File
Beperkende streke vir foutinspuiting
Na die laai van 'n SMH file, kan jy die Fault Injection Debugger rig om slegs op spesifieke ASD-streke te werk. Om die ASD-gebied(e) te spesifiseer waarin foute ingespuit moet word:
- Regskliek op die FPGA in die Toestelkettingkassie en klik Wys Toestelsensitiwiteitskaart.
- Kies die ASD-gebied(e) vir foutinspuiting.
Toestelgevoeligheidskaart Viewer
Spesifikasie van fouttipes
U kan verskillende tipes foute vir inspuiting spesifiseer.
- Enkelfoute (SE)
- Dubbel-aangrensende foute (DAE)
- Onkorrekbare multi-bis foute (EMBE)
Intel FPGA-toestelle kan enkel- en dubbel-aangrensende foute self regstel as die skropfunksie geaktiveer is. Intel FPGA-toestelle kan nie multi-bis foute regstel nie. Verwys na die hoofstuk oor versagtende SEU's vir meer inligting oor die ontfouting van hierdie foute. U kan die mengsel van foute wat ingespuit moet word en die inspuittydinterval spesifiseer. Om die inspuitingstydinterval te spesifiseer:
- In die Foutinspuiting Ontfouter, kies Gereedskap ➤ Opsies.
- Sleep die rooi kontroleerder na die mengsel van foute. Alternatiewelik kan jy die mengsel numeries spesifiseer.
- Spesifiseer die inspuitintervaltyd.
- Klik OK.
Figuur 12. Spesifikasie van die mengsel van SEU-fouttipes
Verwante inligting Versagtende enkelgebeurtenis ontsteltenis
Inspuitfoute
U kan foute in verskeie modusse inspuit:
- Spuit een fout op bevel in
- Spuit veelvuldige foute op bevel in
- Spuit foute in totdat beveel word om te stop
Om hierdie foute in te spuit:
- Skakel die Inspuitfout-opsie aan.
- Kies of jy foutinspuiting wil uitvoer vir 'n aantal herhalings of totdat dit gestop word:
- As jy kies om te hardloop totdat dit gestop word, spuit die Foutinspuiting Ontfouter foute in met die interval wat in die Gereedskap ➤ Opsies dialoogkassie gespesifiseer word.
- As jy foutinspuiting vir 'n spesifieke aantal iterasies wil uitvoer, voer die nommer in.
- Klik Start.
Let wel: Die Fault Injection Debugger loop vir die gespesifiseerde aantal iterasies of totdat dit gestop word. Die Intel Quartus Prime Messages-venster wys boodskappe oor die foute wat ingespuit word. Vir bykomende inligting oor die ingespuitde foute, klik Lees EMR. Die Fault Injection Debugger lees die toestel se EMR en vertoon die inhoud in die Messages-venster.
Intel Quartus Prime-foutinspuiting en EMR-inhoudboodskappe
Opname foute
Jy kan die ligging van enige ingespuite fout opneem deur die parameters wat in die Intel Quartus Prime Messages-venster gerapporteer word, te let. As bvample, 'n ingespuite fout lei tot gedrag wat jy graag wil herhaal, jy kan daardie plek vir inspuiting teiken. Jy voer geteikende inspuiting uit met behulp van die Fault Injection Debugger-opdragreëlkoppelvlak.
Vee ingespuite foute uit
Om die normale funksie van die FPGA te herstel, klik Skrop. Wanneer jy 'n fout skrop, word die toestel se EDCRC-funksies gebruik om die foute reg te stel. Die skropmeganisme is soortgelyk aan dié wat tydens die werking van die toestel gebruik word.
Opdraglyn-koppelvlak
Jy kan die Fault Injection Debugger by die opdragreël laat loop met die quartus_fid-uitvoerbare, wat nuttig is as jy foutinspuiting vanaf 'n skrip wil uitvoer.
Tabel 5. Opdragreëlargumente vir foutinspuiting
Kort argument | Lang argument | Beskrywing |
c | kabel | Spesifiseer programmering hardeware of kabel. (Vereis) |
i | indeks | Spesifiseer die aktiewe toestel om fout in te spuit. (Vereis) |
n | nommer | Spesifiseer die aantal foute om in te spuit. Die verstekwaarde is
1. (Opsioneel) |
t | tyd | Intervaltyd tussen inspuitings. (Opsioneel) |
Let wel: Gebruik quartus_fid –help om view alle beskikbare opsies. Die volgende kode verskaf bvamples met behulp van die Fault Injection Debugger-opdraglynkoppelvlak.
###########################################
- # Vind uit watter USB-kabels vir hierdie geval beskikbaar is
- # Die resultaat wys dat een kabel beskikbaar is, genaamd "USB-Blaster" #
- $ quartus_fid –lys . . .
- Info: Opdrag: quartus_fid –lys
- USB-Blaster op sj-sng-z4 [USB-0] Inligting: Intel Quartus Prime 64-bis Fault Injection Debugger was suksesvol. 0 foute, 0 waarskuwing
- ###########################################
- # Vind watter toestelle op USB-Blaster-kabel beskikbaar is
- # Die resultaat toon twee toestelle: 'n Stratix V A7, en 'n MAX V CPLD. #
- $ quartus_fid –kabel USB-Blaster -a
- Info: Opdrag: quartus_fid –cable=USB-Blaster -a
- Info (208809): Gebruik programmeringskabel “USB-Blaster op sj-sng-z4 [USB-0]”
- USB-Blaster op sj-sng-z4 [USB-0]
- 029030DD 5SGXEA7H(1|2|3)/5SGXEA7K1/..
- 020A40DD 5M2210Z/EPM2210
- Inligting: Intel Quartus Prime 64-bis Fault Injection Debugger was suksesvol.
- 0 foute, 0 waarskuwings
- ###########################################
- # Programmeer die Stratix V-toestel
- # Die –index-opsie spesifiseer bewerkings wat op 'n gekoppelde toestel uitgevoer word.
- # “=svgx.sof” assosieer 'n .sof file met die toestel
- # “#p” beteken programmeer die toestel #
- $ quartus_fid –kabel USB-Blaster –index “@1=svgx.sof#p” . . .
- Info (209016): Stel toestelindeks 1 op
- Info (209017): Toestel 1 bevat JTAG ID-kode 0x029030DD
- Inligting (209007): Opstelling geslaag – 1 toestel(me) is opgestel
- Info (209011): Suksesvolle bewerking(s)
- Info (208551): Programmeer handtekening in toestel 1.
- Inligting: Intel Quartus Prime 64-bis Fault Injection Debugger was suksesvol.
- 0 foute, 0 waarskuwings
- ###########################################
- # Spuit 'n fout in die toestel in.
- # Die #i-operateur dui aan om foute in te spuit
- # -n 3 dui aan om 3 foute in te spuit #
- $ quartus_fid –kabel USB-Blaster –index “@1=svgx.sof#i” -n 3
- Info: Opdrag: quartus_fid –cable=USB-Blaster –index=@1=svgx.sof#i -n 3
- Info (208809): Gebruik programmeringskabel “USB-Blaster op sj-sng-z4 [USB-0]”
- Inligting (208521): Spuit 3 fout(e) in toestel(me) in
- Inligting: Intel Quartus Prime 64-bis Fault Injection Debugger was suksesvol.
- 0 foute, 0 waarskuwings
- ###########################################
- # Interaktiewe modus.
- # Deur die #i-bewerking met -n 0 te gebruik, plaas die ontfouter in interaktiewe modus.
- # Let daarop dat 3 foute in die vorige sessie ingespuit is;
- # "E" lees die foute wat tans in die EMR Unloader IP-kern is. #
- $ quartus_fid –kabel USB-Blaster –index “@1=svgx.sof#i” -n 0
- Info: Opdrag: quartus_fid –cable=USB-Blaster –index=@1=svgx.sof#i -n 0
- Info (208809): Gebruik programmeringskabel “USB-Blaster op sj-sng-z4 [USB-0]”
- Voer in:
- 'F' om fout in te spuit
- 'E' om EMR te lees
- 'S' om fout(e) te skrop
- 'Q' om E
- Info (208540): Lees EMR-skikking
- Inligting (208544): 3 raamfout(e) bespeur in toestel 1.
- Info (208545): Fout #1 : Enkelfout in raam 0x1028 by bietjie 0x21EA.
- Inligting (10914): Fout #2: Onregstelbare multibisfout in raam 0x1116.
- Info (208545): Fout #3: Enkelfout in raam 0x1848 by bietjie 0x128C.
- 'F' om fout in te spuit
- 'E' om EMR te lees
- 'S' om fout(e) te skrop
- 'Q' om Q te verlaat
- Inligting: Intel Quartus Prime 64-bis Fault Injection Debugger was suksesvol. 0 foute, 0 waarskuwings
- Inligting: Piek virtuele geheue: 1522 megagrepe
- Inligting: Verwerking geëindig: Ma 3 Nov 18:50:00 2014
- Inligting: Verstreke tyd: 00:00:29
- Inligting: Totale SVE-tyd (op alle verwerkers): 00:00:13
Geteikende foutinspuitingsfunksie
Let wel
Die Fault Injection Debugger spuit foute willekeurig in die FPGA. Die doelgerigte foutinspuiting-funksie laat jou egter toe om foute in geteikende plekke in die CRAM in te spuit. Hierdie operasie kan nuttig wees, bvample, as jy 'n SEU-gebeurtenis opgemerk het en die FPGA- of stelselreaksie op dieselfde gebeurtenis wil toets nadat jy 'n herstelstrategie gewysig het. Die doelgerigte foutinspuiting-funksie is slegs beskikbaar vanaf die opdragreël-koppelvlak. U kan spesifiseer dat foute vanaf die opdragreël of in die vinnige modus ingespuit word. Verwante inligting
AN 539: Toetsmetodologie of foutopsporing en -herwinning met behulp van CRC in Intel FPGA-toestelle
Spesifiseer 'n foutlys vanaf die opdragreël
Die doelgerigte foutinspuiting-funksie laat jou toe om 'n foutlys vanaf die opdragreël te spesifiseer, soos in die volgende voorbeeld getoonample: c:\Users\sng> quartus_fid -c 1 – i “@1= svgx.sof#i ” -n 2 -user=”@1= 0x2274 0x05EF 0x2264 0x0500″ Waar: c 1 aandui dat die FPGA beheer word deur die eerste kabel op jou rekenaar. i “@1= six.sof#i ” dui aan dat die eerste toestel in die ketting met die voorwerp gelaai is file svgx.sof en sal met foute ingespuit word. n 2 dui aan dat twee foute ingespuit sal word. user=”@1= 0x2274 0x05EF 0x2264 0x0500” is 'n gebruiker-gespesifiseerde lys van foute wat ingespuit moet word. In hierdie example, toestel 1 het twee foute: by raam 0x2274, bietjie 0x05EF en by raam 0x2264, bietjie 0x0500.
Spesifikasie van 'n foutlys vanaf aansporingsmodus
Jy kan die doelgerigte foutinspuiting-funksie interaktief gebruik deur die aantal foute as 0 (-n 0) te spesifiseer. Die Fault Injection Debugger bied vinnige modus opdragte en hul beskrywings.
Vinnige modus-opdrag | Beskrywing |
F | Spuit 'n fout in |
E | Lees die EMR |
S | Skrop foute |
Q | Hou op |
In vinnige modus kan jy die F-opdrag alleen uitreik om 'n enkele fout op 'n ewekansige plek in die toestel in te spuit. In die volgende examples met behulp van die F-opdrag in promptmodus, word drie foute ingespuit. F #3 0x12 0x34 0x56 0x78 * 0x9A 0xBC +
- Fout 1 – Enkelbisfout by raam 0x12, bietjie 0x34
- Fout 2 – Onregstelbare fout by raam 0x56, bietjie 0x78 ('n * dui op 'n multi-bis fout)
- Fout 3 – Dubbel-aangrensende fout by raam 0x9A, bietjie 0xBC (a + dui op 'n dubbelbisfout)
F 0x12 0x34 0x56 0x78 * Een (verstek) fout word ingespuit: Fout 1 – Enkelbisfout by raam 0x12, bietjie 0x34. Liggings na die eerste raam/bis-ligging word geïgnoreer. F #3 0x12 0x34 0x56 0x78 * 0x9A 0xBC + 0xDE 0x00
Drie foute word ingespuit:
- Fout 1 – Enkelbisfout by raam 0x12, bietjie 0x34
- Fout 2 – Onregstelbare fout by raam 0x56, bietjie 0x78
- Fout 3 – Dubbel-aangrensende fout by raam 0x9A, bietjie 0xBC
- Liggings na die eerste 3 raam/bis-pare word geïgnoreer
Bepaling van CRAM Bit-liggings
Let wel:
Wanneer die Fault Injection Debugger 'n CRAM EDCRC-fout opspoor, bevat die Error Message Register (EMR) die sindroom, raamnommer, bis-ligging en fouttipe (enkel-, dubbel- of multi-bis) van die bespeurde CRAM-fout. Stoor die EMR-inhoud wat deur die Fault Injection Debugger gerapporteer word tydens stelseltoetsing wanneer jy 'n EDCRC-fout opspoor. Met die aangetekende EMR-inhoud, kan jy die raam- en bisnommers aan die Fault Injection Debugger verskaf om die foute wat tydens stelseltoetsing opgemerk is, weer te speel, om 'n stelselherstelreaksie op daardie fout verder te ontwerp en te karakteriseer.
Verwante inligting
AN 539: Toetsmetodologie of foutopsporing en -herwinning met behulp van CRC in Intel FPGA-toestelle
Gevorderde opdragreëlopsies: ASD-streke en fouttipe-gewig
Jy kan die Fault Injection Debugger-opdraglyn-koppelvlak gebruik om foute in ASD-streke in te spuit en die fouttipes te weeg. Eerstens spesifiseer jy die mengsel van fouttipes (enkelbis, dubbel aangrensend en multi-bis onregstelbaar) met die –gewig . . opsie. Byvoorbeeldample, gebruik die opsie –gewig=50 vir 'n mengsel van 30% enkelfoute, 20% dubbele aangrensende foute en 50.30.20% multi-bis onregstelbare foute. Om dan 'n ASD-streek te teiken, gebruik die -smh-opsie om die SMH in te sluit file en dui die ASD-streek aan om te teiken. Byvoorbeeldample: $ quartus_fid –cable=USB-BlasterII –index “@1=svgx.sof#pi” –weight=100.0.0 –smh=”@1=svgx.smh#2″ –number=30
Hierdie exampdie opdrag:
- Programmeer die toestel en spuit foute in (pi-string)
- Spuit 100% enkelbisfoute in (100.0.0)
- Spuit slegs in ASD_REGION 2 (aangedui deur die #2)
- Spuit 30 foute in
Foutinspuiting IP Core Gebruikersgids Argiewe
IP-kernweergawe | Gebruikersgids |
18.0 | Foutinspuiting Intel FPGA IP Core Gebruikersgids |
17.1 | Intel FPGA Foutinspuiting IP Core Gebruikersgids |
16.1 | Altera Fault Injection IP Core Gebruikersgids |
15.1 | Altera Fault Injection IP Core Gebruikersgids |
As 'n IP-kernweergawe nie gelys word nie, is die gebruikersgids vir die vorige IP-kernweergawe van toepassing.
Dokumenthersieningsgeskiedenis vir foutinspuiting IP-kerngebruikersgids
Dokument weergawe | Intel Quartus Prime weergawe | Veranderinge |
2019.07.09 | 18.1 | Opgedateer die Foutinspuiting IP-penbeskrywing onderwerp om die Reset, error_injected en error_scrubbed seine te verduidelik. |
2018.05.16 | 18.0 | • Het die volgende onderwerpe uit die Intel Quartus Prime Pro Edition-handboek bygevoeg:
— Definieer foutinspuitingsareas en subonderwerpe. — Gebruik die Fault Injection Debugger en subonderwerpe. — Opdraglyn-koppelvlak en subonderwerpe. • Herdoop Intel FPGA Fault Injection IP-kern na Fault Injection Intel FPGA IP. |
Datum | Weergawe | Veranderinge |
2017.11.06 | 17.1 | • Herhandel as Intel.
• Bygevoeg Intel Cyclone 10 GX toestel ondersteuning. |
2016.10.31 | 16.1 | Opgedateerde toestelondersteuning. |
2015.12.15 | 15.1 | • Quartus II na Quartus Prime sagteware verander.
• Vaste selfverwysende skakel. |
2015.05.04 | 15.0 | Aanvanklike vrystelling. |
Dokumente / Hulpbronne
![]() |
intel UG-01173 Foutinspuiting FPGA IP Core [pdf] Gebruikersgids UG-01173 Foutinspuiting FPGA IP Core, UG-01173, Foutinspuiting FPGA IP Core, Injection c, Injection FPGA IP Core |