intel-logo

Intel UG-01173 Fault Injection FPGA IP Core

intel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-PRODUCT

Fault Injection Intel® FPGA IP Core User Guide

Fault Injection Intel® FPGA IP core injects errors in a cunfigurazione RAM (CRAM) di un dispositivu FPGA. Questa prucedura simula l'errori morbidi chì ponu accade durante u funziunamentu nurmale per via di scontri unicu eventu (SEU). I SEU sò avvenimenti rari è sò dunque difficiuli di pruvà. Dopu avè istanziatu u core IP di Fault Injection in u vostru disignu è cunfigurà u vostru dispositivu, pudete aduprà l'utillita Intel Quartus® Prime Fault Injection Debugger per induce errori intenzionali in a FPGA per pruvà a risposta di u sistema à questi errori.

Information Related

  • Singulu Event Upsets
  • AN 737: SEU Detection and Recovery in Intel Arria 10 Devices

Features

  • Permette di valutà a risposta di u sistema per mitigà l'interruzioni funziunali di un avvenimentu unicu (SEFI).
  • Permette di realizà a carattarizazione SEFI in casa, eliminendu a necessità di teste di fasciu di u sistema tutale. Invece, pudete limità a prova di fasciu à fallimenti in u tempu (FIT) / misurazione Mb à u livellu di u dispusitivu.
  • Scale FIT rates secondu a caratterizzazione SEFI chì hè pertinente à a vostra architettura di disignu. Pudete distribuisce iniezioni di difetti in modu aleatoriu in tuttu u dispusitivu, o custringhjenu à spazii funziunali specifichi per accelerà a prova.
  • Ottimisate u vostru disignu per riduce a disrupzione causata da un unicu avvenimentu disturbi (SEU).

Supportu di u dispositivu

U core IP Fault Injection supporta i dispositivi di famiglia Intel Arria® 10, Intel Cyclone® 10 GX è Stratix® V. A famiglia Cyclone V supporta l'Injection Fault in i dispositi cù u suffissu -SC in u codice di ordine. Cuntattate u vostru rappresentante di vendita lucali per l'infurmazioni di ordine nantu à i dispositi Cyclone V suffissu -SC.

Utilizazione di Risorse è Prestazione
U software Intel Quartus Prime genera a seguente stima di risorse per u Stratix V A7 FPGA. I risultati per altri dispositi sò simili.

Intel Corporation. Tutti i diritti riservati. Intel, u logu Intel è altri marchi Intel sò marchi di Intel Corporation o di e so filiali. Intel garantisce a prestazione di i so prudutti FPGA è semiconduttori à e specificazioni attuali in cunfurmità cù a garanzia standard di Intel, ma si riserva u dirittu di fà cambiamenti à qualsiasi prudutti è servizii in ogni mumentu senza avvisu. Intel ùn assume alcuna rispunsabilità o responsabilità derivante da l'applicazione o l'usu di qualsiasi informazione, pruduttu o serviziu descritti quì, salvu cum'è espressamente accunsentutu in scrittura da Intel. I clienti di Intel sò cunsigliati per ottene l'ultima versione di e specificazioni di u dispositivu prima di confià nantu à qualsiasi infurmazione publicata è prima di fà ordini per prudutti o servizii. * Altri nomi è marche ponu esse rivendicate cum'è a pruprietà di l'altri.

Fault Injection IP Core FPGA Performance and Resource Utilization

Dispositivu ALM Registri logici M20K
Primariu Sicundariu
Stratix V A7 3,821 5,179 0 0

L'installazione di u software Intel Quartus Prime include a libreria Intel FPGA IP. Questa biblioteca furnisce assai nuclei IP utili per u vostru usu di produzzione senza a necessità di una licenza supplementaria. Certi nuclei Intel FPGA IP necessitanu l'acquistu di una licenza separata per l'usu di produzzione. L'Intel FPGA IP Evaluation Mode permette di valutà questi nuclei Intel FPGA IP licenziati in simulazione è hardware, prima di decide di cumprà una licenza di core IP di produzzione completa. Solu bisognu di cumprà una licenza di produzzione cumpleta per i nuclei Intel IP licenziati dopu avè finitu a prova di hardware è sò pronti à aduprà l'IP in a produzzione. U software Intel Quartus Prime installa i core IP in i seguenti lochi per difettu:

Percorsu d'installazione di u core IP

intel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-1

Locazioni di installazione di IP Core

Locu Software Piattaforma
:\intelFPGA_pro\quartus\ip\altera Intel Quartus Prime Pro Edition Windows *
:\intelFPGA\quartus\ip\altera Intel Quartus Prime Standard Edition Windows
:/intelFPGA_pro/quartus/ip/altera Intel Quartus Prime Pro Edition Linux*
:/intelFPGA/quartus/ip/altera Intel Quartus Prime Standard Edition Linux

Nota: U software Intel Quartus Prime ùn sustene micca spazii in u percorsu di stallazione.

persunalizazione è generazione di core IP
Pudete persunalizà core IP per sustene una larga varietà di applicazioni. U Catalogu IP Intel Quartus Prime è l'editore di paràmetri permettenu di selezziunà è cunfigurà rapidamente porti, funzioni è output di core IP. files.

Catalogu IP è Editore di Parametri
U Catalogu IP mostra i nuclei IP dispunibuli per u vostru prughjettu, cumpresu l'IP Intel FPGA è altre IP chì aghjunghje à u percorsu di ricerca di u Catalogu IP.. Aduprate e seguenti funzioni di u Catalogu IP per localizà è persunalizà un core IP:

  • Filtrà u Catalogu IP per Mostra l'IP per a famiglia di dispositivi attivu o Mostra l'IP per tutte e famiglie di i dispositi. Se ùn avete micca prughjettu apertu, selezziunate a Famiglia di Dispositivi in ​​Catalogu IP.
  • Scrivite in u campu di Ricerca per truvà qualsiasi nome di core IP completo o parziale in u Catalogu IP.
  • Cliccate cù u dirittu nantu à u nome di u core IP in u Catalogu IP per vede dettagli nantu à i dispositi supportati, per apre u cartulare di installazione di u core IP, è per ligami à a documentazione IP.
  • Cliccate Cerca Partner IP to access partner IP information on the web.

L'editore di paràmetri vi invita à specificà un nome di variazione IP, porti opzionali è output file opzioni di generazione. L'editore di paràmetri genera un IP Intel Quartus Prime di primu livellu file (.ip) per una variazione IP in prughjetti Intel Quartus Prime Pro Edition. L'editore di paràmetri genera un IP Quartus di primu livellu file (.qip) per una variazione IP in prughjetti Intel Quartus Prime Standard Edition. Quessi files rapprisentanu a variazione IP in u prugettu, è magazzini l'infurmazioni di parametrizzazione.

Editor di parametri IP (Intel Quartus Prime Standard Edition)intel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-2

Sortie IP Core Generation (Intel Quartus Prime Pro Edition)

U software Intel Quartus Prime genera a seguente output file struttura per i nuclei IP individuali chì ùn sò micca parte di un sistema Platform Designer.

Output individuale di generazione di core IP (Intel Quartus Prime Pro Edition)intel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-3

  • Se supportatu è attivatu per a vostra variazione di core IP.

Output Files di Intel FPGA IP Generation

File Nome Descrizzione
<u vostru_ip>.ip Variazione IP di primu livellu file chì cuntene a parametrizzazione di un core IP in u vostru prughjettu. Se a variazione IP hè parti di un sistema Platform Designer, l'editore di paràmetri genera ancu un .qsys file.
<u vostru_ip> .cmp A dichjarazione di cumpunenti VHDL (.cmp) file hè un testu file chì cuntene definizioni generiche è portu lucali chì utilizate in u disignu VHDL files.
<u vostru_ip>_generazione.rpt Log di generazione IP o Platform Designer file. Mostra un riassuntu di i missaghji durante a generazione IP.
cuntinuò…
File Nome Descrizzione
<u vostru_ip>.qgsimc (solu sistemi di Piattaforma Designer) Caching di simulazione file chì compara i .qsys è .ip files cù a parametrizzazione attuale di u sistema Platform Designer è u core IP. Questa comparazione determina se Platform Designer pò saltà a rigenerazione di HDL.
<u vostru_ip>.qgsynth (solu sistemi di Piattaforma Designer) Cache di sintesi file chì compara i .qsys è .ip files cù a parametrizzazione attuale di u sistema Platform Designer è u core IP. Questa comparazione determina se Platform Designer pò saltà a rigenerazione di HDL.
<u vostru_ip> .qip Contene tutte l'infurmazioni per integrà è cumpilà u cumpunente IP.
<u vostru_ip> .csv Contene infurmazione nantu à u statu di l'aghjurnamentu di u cumpunente IP.
.bsf Una rapprisintazioni simbulu di a variazione IP per l'usu in u Diagramu di Bloccu Files (.bdf).
<u vostru_ip> .spd Input file chì ip-make-simscript richiede per generà script di simulazione. U .spd file cuntene una lista di files generate per a simulazione, cù l'infurmazioni nantu à i ricordi chì avete inizializatu.
<u vostru_ip>.ppf U Pin Planner File (.ppf) guarda l'assignazioni di portu è di nodu per i cumpunenti IP chì create per l'usu cù u Pin Planner.
<u vostru_ip> _bb.v Aduprate a casella negra di Verilog (_bb.v) file cum'è una dichjarazione di modulu viotu per aduprà cum'è una scatula negra.
<u vostru_ip> _inst.v o _inst.vhd HDL exampu mudellu di istanza. Copia è incollà u cuntenutu di questu file in u vostru HDL file per instantiate a variazione IP.
<u vostru_ip> .regmap Se l'IP cuntene infurmazione di registru, u software Intel Quartus Prime genera u .regmap file. U .regmap file descrive l'infurmazione di a mappa di u registru di l'interfaccia master è slave. Questu file cumplementari

u .sopcinfo file fornendu infurmazione di registru più dettagliata nantu à u sistema. Questu file permette a visualizazione di u registru views è statistiche persunalizabili d'utilizatori in System Console.

<u vostru_ip> .svd Permette à i strumenti di debug di u sistema HPS view e carte di registru di periferiche chì si cunnetta à HPS in un sistema Platform Designer.

Durante a sintesi, u software Intel Quartus Prime guarda u .svd files per l'interfaccia slave visibile à i maestri di a Console di Sistema in u .sof file in a sessione di debug. A Consola di Sistema leghje sta sezione, chì Platform Designer dumanda per l'infurmazioni di a mappa di registru. Per i schiavi di u sistema, Platform Designer accede à i registri per nome.

<u vostru_ip>.v

<u vostru_ip>.vhd

HDL files chì istanzianu ogni sottumodulu o core IP di u zitellu per sintesi o simulazione.
mentore/ Contene un script msim_setup.tcl per stallà è eseguisce una simulazione.
aldec/ Contene un script rivierapro_setup.tcl per installà è eseguisce una simulazione.
/synopsys/vcs

/synopsys/vcsmx

Contene un script di shell vcs_setup.sh per stallà è eseguisce una simulazione.

Contene un script shell vcsmx_setup.sh è synopsys_sim.setup file per stabilisce è eseguisce una simulazione.

/ cadenza Contene un script di shell ncsim_setup.sh è altre setup files per stallà è eseguisce una simulazione.
/xcelium Contene un script di shell di simulatore Parallel xcelium_setup.sh è altre setup files per stallà è eseguisce una simulazione.
/ sottomoduli Contene HDL files per u sottumodulu core IP.
<sottumodulu IP>/ Platform Designer genera /synth è /sim subdirectori per ogni repertoriu di sottomoduli IP chì Platform Designer genera.

Descrizzione Funziunale
Cù u core IP di Fault Injection, i disegnatori ponu eseguisce a caratterizzazione SEFI in casa, scala i tassi FIT secondu a carattarizazione SEFI, è ottimisà i disinni per riduce l'effettu di SEU.

Attenuazione di u Singulu Eventu

I circuiti integrati è i dispositi logici programmabili cum'è FPGA sò suscettibili à SEU. I SEU sò avvenimenti casuali, non distruttivi, causati da duie fonti maiò: particelle alfa è neutroni da i raghji còsmici. A radiazione pò causà sia u registru logicu, u bit di memoria integrata, o un bit di cunfigurazione RAM (CRAM) per vultà u so statu, purtendu cusì à l'operazione di u dispositivu inespettatu. Intel Arria 10, Intel Cyclone 10 GX, Arria V, Cyclone V, Stratix V è i dispositi più recenti anu e seguenti capacità CRAM:

  • Verificazione di ridondanza ciclica di rilevazione di errore (EDCRC)
  • Correzione automatica di una CRAM disturbata (scrubbing)
  • Capacità di creà una cundizione CRAM disturbata (iniezione di difettu)

Per più infurmazione nantu à a mitigazione SEU in i dispositi Intel FPGA, riferite à u capitulu SEU Mitigation in u rispettivu manuale di u dispositivu.

Fault Injection IP Pin Description

U core IP Fault Injection include i seguenti pin I/O.

Fault Injection IP Core I/O Pins

Pin Name Direzzione Pin Pin Description
crcerror_pin input Input from Error Message Register Unloader Intel FPGA IP (EMR Unloader IP). Stu signalu hè affirmatu quandu un errore CRC hè statu rilevatu da l'EDCRC di u dispusitivu.
emr_data input Cuntenutu di u Registru di Missaghju di Errore (EMR). Riferite à u manuale di u dispositivu adattatu per i campi EMR.

Stu input hè conforme à u signale di l'interfaccia di dati Avalon Streaming.

emr_validu input Indica chì i input emr_data cuntenenu dati validi. Questu hè un signalu d'interfaccia validu Avalon Streaming.
Resettate input Ingressu di reset di u modulu. U resettore hè cumplettamente cuntrullatu da u Debugger Fault Injection.
error_injected output Indica chì un errore hè statu injectatu in CRAM cum'è urdinatu via u JTAG interfaccia. A durata di u tempu chì stu signale affirmeghja dipende da i vostri paràmetri di u JTAG TCK è signali di bloccu di cuntrollu. Di genere, u tempu hè di circa 20 cicli di clock di u signale TCK.
error_scrubbed output Indica chì u scrubbing di u dispusitivu hè cumpletu cum'è urdinatu via u JTAG interfaccia. A durata di u tempu chì stu signale affirmeghja dipende da i vostri paràmetri di u JTAG TCK è signali di bloccu di cuntrollu. Di genere, u tempu hè di circa 20 cicli di clock di u signale TCK.
intosc output Output opzionale. U Fault Injection IP usa stu clock, per esempiuample, per clock u bloccu EMR_unloader.

Fault Injection IP Pin Diagram

intel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-4

Utilizà u Fault Injection Debugger è Fault Injection IP Core

U Fault Injection Debugger travaglia inseme cù u core IP Fault Injection. Prima, instanziate u core IP in u vostru disignu, compilate è scaricate a cunfigurazione resultanti file in u vostru dispusitivu. Allora, eseguite u Debugger di iniezione di errore da u software Intel Quartus Prime o da a linea di cummanda per simulà errori soft.

  • U Fault Injection Debugger permette di uperà esperimenti di iniezione di difetti in modu interattivu o per cumandamenti di batch, è vi permette di specificà e zoni lògichi in u vostru disignu per iniezioni di difetti.
  • L'interfaccia di linea di cumanda hè utile per eseguisce u debugger via un script.

Nota

U Fault Injection Debugger comunica cù u core IP Fault Injection via u JTAG interfaccia. L'IP Fault Injection accetta cumandamenti da u JTAG interfaccia è riporta u statu di ritornu attraversu u JTAG interfaccia. U core IP Fault Injection hè implementatu in logica suave in u vostru dispositivu; dunque, vi tocca à contu di stu usu logica in u vostru disignu. Una metodulugia hè di caratterizà a risposta di u vostru disignu à SEU in u laboratoriu è dopu omette u core IP da u vostru disignu finale implementatu.

Aduprate u core IP Fault Injection cù i seguenti core IP:

  • U nucleu IP di u Registru di Error Message Register Unloader, chì leghje è guarda e dati da i circuiti di rilevazione di errore induriti in i dispositi Intel FPGA.
  • (Opcional) U core Advanced SEU Detection Intel FPGA IP, chì compara i lochi d'errore di un bit à una mappa di sensibilità durante u funziunamentu di u dispositivu per determinà se un errore dolce l'affetta.

Fault Injection Debugger Overview Diagramma di Blocuintel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-5

Note:

  1. L'IP di iniezione di difetti cambia i pezzi di a logica mirata.
  2. U Fault Injection Debugger è Advanced SEU Detection IP utilizanu a stessa istanza di EMR Unloader.
  3. U core IP Advanced SEU Detection hè opzionale.

Information Related

  • À propositu di SMH Files a pagina 13
  • À propositu di EMR Unloader IP Core à a pagina 10
  • Circa l'IP Core Advanced SEU Detection à a pagina 11

Instanciazione di l'IP Core di Fault Injection

NOTA

U core IP Fault Injection ùn hà micca bisognu di stabilisce alcunu paràmetru. Per utilizà u core IP, crea una nova istanza IP, includela in u vostru sistema Platform Designer (Standard), è cunnette i segnali cum'è apprupriatu. Duvete aduprà u core IP Fault Injection cù u core IP EMR Unloader. I nuclei IP Fault Injection è EMR Unloader sò dispunibuli in Platform Designer è u Catalogu IP. Opzionalmente, pudete instantiate direttamente in u vostru disignu RTL, usendu Verilog HDL, SystemVerilog, o VHDL.

À propositu di EMR Unloader IP Core
U core IP EMR Unloader furnisce una interfaccia à l'EMR, chì hè aghjurnata continuamente da l'EDCRC di u dispusitivu chì verifica i CRAM bits CRC di u dispusitivu per errori soft.

Example Platform Designer System Includendu u Fault Injection IP Core è EMR Unloader IP Coreintel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-6

Example Fault Injection IP Core è EMR Unloader IP Core Block Diagram

intel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-7

Information Related
Error Message Register Unloader Intel FPGA IP Core User Guide

À propositu di u Core IP Advanced SEU Detection

Aduprate u core IP Advanced SEU Detection (ASD) quandu a tolleranza SEU hè una preoccupazione di design. Duvete aduprà u core IP EMR Unloader cù u core IP ASD. Dunque, se utilizate l'IP ASD è l'IP Fault Injection in u stessu disignu, devenu sparte l'output EMR Unloader via un cumpunente splitter Avalon®-ST. A figura seguente mostra un sistema Platform Designer in quale un splitter Avalon-ST distribuisce u cuntenutu EMR à i core IP ASD è Fault Injection.

Utilizà l'ASD è l'IP di iniezione di difetti in u Sistema di Designer di a stessa piattaformaintel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-8

Information Related
Advanced SEU Detection Intel FPGA IP Core User Guide

Definizione di e zone di iniezione di difetti
Pudete definisce e regioni specifiche di l'FPGA per l'iniezione di difetti utilizendu una Sensibilità Map Header (.smh) file. U SMH file almacena e coordenate di i bits CRAM di u dispusitivu, a so regione assignata (Regione ASD), è a criticità. Durante u prucessu di cuncepimentu utilizate a gerarchia tagging per creà a regione. Dopu, durante a compilazione, l'Intel Quartus Prime Assembler genera u SMH file. U Fault Injection Debugger limita l'injections d'errore à e regioni specifiche di u dispositivu definite in u SMH file.

Eseguisce a Gerarchia Tagging
Definite e regioni FPGA per a prova assignendu una Regione ASD à u locu. Pudete specificà un valore di a Regione ASD per ogni parte di a vostra ghjerarchia di cuncepimentu utilizendu a Finestra di Partizioni di Design.

  1. Sceglite Assegnazioni ➤ Finestra di Partizioni Design.
  2. Cliccate cù u dirittu in ogni locu in a fila di l'intestazione è attivate a Regione ASD per vede a colonna Regione ASD (se ùn hè micca digià visualizata).
  3. Inserite un valore da 0 à 16 per ogni partizione per assignà à una regione ASD specifica.
    • A regione ASD 0 hè riservata à parti inutilizate di u dispusitivu. Pudete assignà una partizione à sta regione per specificà cum'è micca critica.
    • A regione ASD 1 hè a regione predeterminata. Tutte e porzioni usate di u dispusitivu sò assignate à sta regione, salvu chì ùn cambiate esplicitamente l'assignazione di a Regione ASD.

À propositu di SMH Files

U SMH file cuntene l'infurmazioni seguenti:

  • Se ùn site micca aduprà a gerarchia tagging (vale à dì, u disignu ùn hà micca assignazioni esplicite di a Regione ASD in a ghjerarchia di cuncepimentu), u SMH file elenca ogni bit CRAM è indica s'ellu hè sensibile per u disignu.
  • Sì avete fattu a gerarchia tagging è cambiatu l'assignazioni predeterminate di a Regione ASD, u SMH file elenca ogni bit CRAM è hè assignatu a regione ASD.

U Fault Injection Debugger pò limità l'iniezioni à una o più regioni specificate. Per dirige l'Assembler per generà un SMH file:

  • Sceglite Assegnazioni ➤ Dispositivu ➤ Opzioni di Dispositivu è Pin ➤ Error Detection CRC.
  • Accende a mappa di sensibilità Generate SEU file (.smh) opzione.

Utilizà u Debugger d'Injection Fault

NOTA
Per utilizà u Debugger Fault Injection, cunnette à u vostru dispositivu via u JTAG interfaccia. Allora, cunfigurà u dispusitivu è eseguite l'iniezione di difetti. Per lancià u Debugger di iniezione di errore, sceglite Strumenti ➤ Debugger di iniezione di errore in u software Intel Quartus Prime. A cunfigurazione o a prugrammazione di u dispositivu hè simile à a prucedura utilizata per u prugrammatore o l'analizzatore di logica di u Signal Tap.

Fault Injection Debugger

intel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-9

Per cunfigurà u vostru JTAG catena:

  1. Cliccate Configurazione hardware. U strumentu mostra u hardware di prugrammazione cunnessu à u vostru urdinatore.
  2. Selezziunate u hardware di prugrammazione chì vulete usà.
  3. Cliccate Close.
  4. Cliccate Auto Detect, chì populate a catena di i dispositi cù i dispositi programabili truvati in u JTAG catena.

Information Related
Funzione di iniezione di difetti mirati a pagina 21

Requisiti di Hardware è Software

I seguenti hardware è software sò necessarii per utilizà u Debugger di iniezione di errore:

  • Linea FEATURE in a vostra licenza Intel FPGA chì permette u core IP Fault Injection. Per più infurmazione, cuntattate u vostru rappresentante di vendita Intel FPGA locale.
  • Cavo di scaricamentu (Cavo di scaricamentu Intel FPGA, Cavo di scaricamentu Intel FPGA II, , o II).
  • Kit di sviluppu Intel FPGA o scheda cuncepita da l'utilizatore cù un JTAG cunnessione à u dispusitivu in prova.
  • (Opcional) Linea FEATURE in a vostra licenza Intel FPGA chì permette u core IP Advanced SEU Detection.

Configurazione di u vostru Dispositivu è u Debugger d'Injection Fault

U Fault Injection Debugger usa un .sof è (opcionalmente) una Sensibilità Map Header (.smh) file. L'ughjettu di u Software File (.sof) cunfigura l'FPGA. U .smh file definisce a sensibilità di i bit CRAM in u dispusitivu. Se ùn furnisce micca un .smh file, u Fault Injection Debugger injects faults aleatoriamente in tutti i bit CRAM. Per specificà un .sof:

  1. Selezziunate u FPGA chì vulete cunfigurà in a casella di a catena di Dispositivi.
  2. Cliccate Selezziunà File.
  3. Navigate à u .sof è cliccate OK. U Fault Injection Debugger leghje u .sof.
  4. (Opcional) Selezziunà u SMH file.
    Se ùn specificate micca un SMH file, u Fault Injection Debugger injects faults aleatoriamente in tuttu u dispusitivu. Se specificate un SMH file, pudete limità l'injections à i spazii utilizati di u vostru dispositivu.
    • Cliccate cù u dirittu nantu à u dispusitivu in a casella di a catena di Dispositivi è dopu cliccate Selezziunà SMH File.
    • Sceglite u vostru SMH file.
    • Cliccate OK.
  5. Accende u prugramma / cunfigurazione.
  6. Cliccate Start.

U Fault Injection Debugger configura u dispusitivu cù u .sof.

Menu cuntestu per selezziunà u SMH File

intel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-10

Regioni Constraining per l'iniezione di Fault

Dopu à carica un SMH file, Pudete dirigà u Debugger d'Injection Fault per operà solu in regioni ASD specifiche. Per specificà a regione ASD in quale injectà i difetti:

  1. Cliccate cù u dirittu nantu à l'FPGA in a casella di a catena di Dispositivi, è cliccate Mostra Mappa di Sensibilità di Dispositivi.
  2. Selezziunate a regione ASD per l'iniezione di difetti.

Mappa di sensibilità di u dispositivu Viewer

intel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-11

Specificà i tipi di errore

Pudete specificà diversi tipi d'errori per l'iniezione.

  • Errori unichi (SE)
  • Errori di doppia adiacente (DAE)
  • Errori multi-bit incorregibili (EMBE)

I dispositi Intel FPGA ponu autocorregge l'errori unichi è doppiu adiacenti se a funzione di scrubbing hè attivata. I dispositi Intel FPGA ùn ponu micca corregge l'errori multi-bit. Riferite à u capitulu nantu à a mitigazione di SEU per più infurmazione nantu à debugging sti errori. Pudete specificà a mistura di difetti per inject è l'intervallu di tempu di iniezione. Per specificà l'intervallu di tempu di iniezione:

  1. In u Fault Injection Debugger, sceglite Strumenti ➤ Opzioni.
  2. Trascinate u controller rossu à u mischju di errori. In alternativa, pudete specificà a mistura numerica.
  3. Specificate u tempu di intervallu di iniezione.
  4. Cliccate OK.

Figura 12. Specificing the Mixture of SEU Fault Typesintel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-12

Information Related Attenuazione di u Singulu Event Upset

Injecting Errors

Pudete injectà errori in parechji modi:

  • Inject one error on command
  • Inject multiple errors on command
  • Inject errors finu à u cumandamentu di piantà

Per injectà sti difetti:

  1. Accende l'opzione Inject Fault.
  2. Sceglite se vulete eseguisce l'iniezione d'errore per una quantità di iterazioni o finu à chì si ferma:
    • Se sceglite di eseguisce finu à l'arrestu, u Debugger d'Injection Fault injects errors à l'intervallu specificatu in a finestra di dialogu Strumenti ➤ Opzioni.
    • Se vulete eseguisce l'injection d'errore per un numeru specificu di iterazioni, inserite u numeru.
  3. Cliccate Start.

Nota: U Fault Injection Debugger corre per u numeru specificatu di iterazioni o finu à chì si ferma. A finestra Intel Quartus Prime Messages mostra missaghji nantu à l'errori chì sò injected. Per più infurmazione nantu à i difetti injected, cliccate Read EMR. U Fault Injection Debugger leghje l'EMR di u dispusitivu è mostra u cuntenutu in a finestra di i missaghji.

Intel Quartus Prime Error Injection è EMR Content Messages

intel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-13

Errori di registrazione
Pudete registrà u locu di ogni difettu injected nutendu i paràmetri rappurtati in a finestra Intel Quartus Prime Messages. Se, per esempiuample, una culpa injected i risultati in cumpurtamentu vo vulete à ripiglià, vi ponu indirizzà chì locu per iniezione. Eseguite l'iniezione mirata utilizendu l'interfaccia di linea di cummanda di Fault Injection Debugger.

Clearing Errors Injected
Per restaurà a funzione normale di l'FPGA, cliccate Scrub. Quandu sguassate un errore, e funzioni EDCRC di u dispusitivu sò aduprate per corregge l'errori. U mecanismu di scrub hè simile à quellu utilizatu durante u funziunamentu di u dispusitivu.

Interfaccia di linea di cummanda
Pudete eseguisce u Debugger di iniezione di difettu à a linea di cummanda cù l'executable quartus_fid, chì hè utile se vulete eseguisce iniezione di difetti da un script.

Table 5. Argumenti di a linea di cumanda per l'iniezione di difetti

Argumentu Cortu Argumentu longu Descrizzione
c cable Specificate hardware di prugrammazione o cable. (Ubligatoriu)
i indice Specificà u dispusitivu attivu à inject curpa. (Ubligatoriu)
n numeru Specificate u numeru di errori da inject. U valore predeterminatu hè

1. (Opcional)

t tempu Intervallu di tempu trà injections. (Opcional)

Nota: Aduprate quartus_fid -help to view tutte l'opzioni dispunibili. U codice seguente furnisce examples aduprendu l'interfaccia di linea di cummanda Fault Injection Debugger.
#############################################

  • # Scuprite quali cavi USB sò dispunibili per questu esempiu
  • # U risultatu mostra chì un cable hè dispunibule, chjamatu "USB-Blaster" #
  • $ quartus_fid –list . . .
  • Info: Command: quartus_fid -list
    1. USB-Blaster nantu à sj-sng-z4 [USB-0] Info: Intel Quartus Prime 64-Bit Fault Injection Debugger hè statu successu. 0 errori, 0 avvisu
  • ############################################
  • # Truvate quali dispusitivi sò dispunibili nantu à u cable USB-Blaster
  • # U risultatu mostra dui dispusitivi: un Stratix V A7, è un MAX V CPLD. #
  • $ quartus_fid –cable USB-Blaster -a
  • Info: Command: quartus_fid –cable=USB-Blaster -a
  • Info (208809): Utilizà u cable di prugrammazione "USB-Blaster on sj-sng-z4 [USB-0]"
    1. USB-Blaster nantu à sj-sng-z4 [USB-0]
  • 029030DD 5SGXEA7H(1|2|3)/5SGXEA7K1/..
  • 020A40DD 5M2210Z/EPM2210
  • Info: Intel Quartus Prime 64-Bit Fault Injection Debugger hà successu.
  • 0 errori, 0 avvisi
  • ############################################
  • # Prugrammu u dispusitivu Stratix V
  • # L'opzione -index specifica l'operazioni realizate nantu à un dispositivu cunnessu.
  • # "=svgx.sof" assucia un .sof file cù u dispusitivu
  • # "#p" significa prugramma u dispusitivu #
  • $ quartus_fid –cable USB-Blaster –index “@1=svgx.sof#p” . . .
  • Info (209016): Configurazione di l'indice di u dispositivu 1
  • Info (209017): U dispusitivu 1 cuntene JTAG codice ID 0x029030DD
  • Info (209007): Configurazione successu - 1 dispositivu (s) cunfiguratu
  • Info (209011): Operazioni eseguite cù successu
  • Info (208551): Firma di prugramma in u dispusitivu 1.
  • Info: Intel Quartus Prime 64-Bit Fault Injection Debugger hà successu.
  • 0 errori, 0 avvisi
  • ############################################
  • # Inject un difettu in u dispusitivu.
  • # L'operatore #i indica di injectà i difetti
  • # -n 3 indica di injectà 3 difetti #
  • $ quartus_fid –cable USB-Blaster –index “@1=svgx.sof#i” -n 3
  • Info: Command: quartus_fid –cable=USB-Blaster –index=@1=svgx.sof#i -n 3
  • Info (208809): Utilizà u cable di prugrammazione "USB-Blaster on sj-sng-z4 [USB-0]"
  • Info (208521): Injects 3 error(s) in device(s)
  • Info: Intel Quartus Prime 64-Bit Fault Injection Debugger hà successu.
  • 0 errori, 0 avvisi
  • ############################################
  • # Modu interattivu.
  • # Utilizendu l'operazione #i cù -n 0 mette u debugger in modu interattivu.
  • # Nota chì 3 difetti sò stati injectati in a sessione precedente;
  • # "E" leghje i difetti attualmente in u core IP EMR Unloader. #
  • $ quartus_fid –cable USB-Blaster –index “@1=svgx.sof#i” -n 0
  • Info: Command: quartus_fid –cable=USB-Blaster –index=@1=svgx.sof#i -n 0
  • Info (208809): Utilizà u cable di prugrammazione "USB-Blaster on sj-sng-z4 [USB-0]"
  • Entre:
  • 'F' per iniettà difettu
  • 'E' per leghje EMR
  • 'S' per sguassà l'errore (s)
  • "Q" per abbandunà E
  • Info (208540): Lettura di array EMR
  • Info (208544): 3 errore di fotogramma rilevatu in u dispusitivu 1.
  • Info (208545): Error #1: Errore unicu in u quadru 0x1028 à u bit 0x21EA.
  • Info (10914): Error #2: Errore multi-bit incorregibile in frame 0x1116.
  • Info (208545): Error #3: Errore unicu in u quadru 0x1848 à u bit 0x128C.
  • 'F' per iniettà difettu
  • 'E' per leghje EMR
  • 'S' per sguassà l'errore (s)
  • "Q" per abbandunà Q
  • Info: Intel Quartus Prime 64-Bit Fault Injection Debugger hè statu successu. 0 errori, 0 avvisi
  • Info: Memoria virtuale di punta: 1522 megabyte
  • Info: Trattamentu finitu: Mon Nov 3 18:50:00 2014
  • Info: Tempu passatu: 00:00:29
  • Info: Tempu tutale di CPU (in tutti i processori): 00:00:13

Funzione di iniezione di difetti mirati

Nota

U Fault Injection Debugger injecta i difetti in l'FPGA in modu aleatoriu. Tuttavia, a funzione Targeted Fault Injection permette di injectà i difetti in i lochi mirati in a CRAM. Questa operazione pò esse utile, per esempiuample, si avete nutatu un avvenimentu SEU è vulete pruvà a risposta di FPGA o di u sistema à u stessu avvenimentu dopu avè mudificatu una strategia di ricuperazione. A funzione Targeted Fault Injection hè dispunibule solu da l'interfaccia di linea di cumanda. Pudete specificà chì l'errori sò injected da a linea di cumanda o in modu prompt. Information Related

AN 539: Metodologia di prova o rilevazione di errore è ricuperazione cù CRC in Dispositivi Intel FPGA

Specificà una Lista di Errori Da a Linea di Command

A funzione Targeted Fault Injection permette di specificà una lista d'errore da a linea di cummanda, cum'è mostra in l'ex.ample: c:\Users\sng> quartus_fid -c 1 – i “@1= svgx.sof#i ” -n 2 -user="@1= 0x2274 0x05EF 0x2264 0x0500″ Induve: c 1 indica chì l'FPGA hè cuntrullatu da u primu cable in u vostru urdinatore. i "@1= six.sof#i" indica chì u primu dispositivu in a catena hè carricu cù l'ughjettu file svgx.sof è serà injected with faults. n 2 indica chì dui difetti seranu injected. user="@1= 0x2274 0x05EF 0x2264 0x0500" hè una lista specifica di l'utilizatori di difetti per esse injected. In questu example, u dispusitivu 1 hà dui difetti: à u quadru 0x2274, bit 0x05EF è à u quadru 0x2264, bit 0x0500.

Specificà una Lista di Errori Da u Modu Prompt

Pudete operà a funzione Targeted Fault Injection interattivamente specificendu u numeru di difetti per esse 0 (-n 0). U Fault Injection Debugger presenta cumandamenti in modalità prompt è e so descrizzioni.

Modu Prompt Command Descrizzione
F Inject un difettu
E Leghjite l'EMR
S Scrub errors
Q Lascia

In u modu promptatu, pudete emette u cumandimu F solu per inject una sola falla in un locu aleatoriu in u dispusitivu. In i seguenti examples usendu u cumandimu F in modu prompt, trè errori sò injected. F #3 0x12 0x34 0x56 0x78 * 0x9A 0xBC +

  • Errore 1 - Errore unicu bit à u quadru 0x12, bit 0x34
  • Errore 2 - Errore incorregibile à u quadru 0x56, bit 0x78 (un * indica un errore multi-bit)
  • Errore 3 - Errore doppia adiacente à u quadru 0x9A, bit 0xBC (a + indica un errore doppiu bit)

F 0x12 0x34 0x56 0x78 * Un errore (predeterminatu) hè injected: Errore 1 - Errore unicu bit à u quadru 0x12, bit 0x34. Locazioni dopu à u primu locu frame / bit sò ignorati. F #3 0x12 0x34 0x56 0x78 * 0x9A 0xBC + 0xDE 0x00

Trè errori sò injected:

  • Errore 1 - Errore unicu bit à u quadru 0x12, bit 0x34
  • Errore 2 - Errore incorregibile à u quadru 0x56, bit 0x78
  • Errore 3 - Errore doppia adiacente à u quadru 0x9A, bit 0xBC
  • I posti dopu à i primi 3 coppie frame / bit sò ignorati

Determinazione di u locu di bit CRAM

Nota: 

Quandu u Fault Injection Debugger detecta un errore CRAM EDCRC, u Error Message Register (EMR) cuntene u sindromu, u numeru di quadru, u locu di bit è u tipu d'errore (single, double, o multi-bit) di l'errore CRAM rilevatu. Durante a prova di u sistema, salvate u cuntenutu EMR informatu da u Debugger d'Injection Fault quandu detectà un difettu EDCRC. Cù u cuntenutu EMR registratu, pudete furnisce u quadru è i numeri di bit à u Debugger d'Injection Fault per riproduce l'errori nutati durante a prova di u sistema, per cuncepisce più, è caratterizà una risposta di ricuperazione di u sistema à quellu errore.

Information Related
AN 539: Metodologia di Test o Rilevazione di Errori è Recuperazione cù CRC in Dispositivi Intel FPGA

Opzioni Advanced Command-Line: Regioni ASD è ponderazione di u tipu d'errore

Pudete aduprà l'interfaccia di linea di cummanda di Fault Injection Debugger per injecter errori in regioni ASD è ponderà i tipi di errore. Prima, specificate u mischju di tipi d'errore (single bit, double adjacent, and multi-bit uncorrectable) usendu u -weight . . opzione. Per esample, per un mischju di 50% errori unicu, 30% errori doppiu adiacenti, è 20% errori multi-bit uncorrectable, utilizate l'opzione -weight=50.30.20. Allora, per destinà una regione ASD, utilizate l'opzione -smh per include u SMH file è indicà a regione ASD à destinazione. Per esample: $ quartus_fid –cable=USB-BlasterII –index “@1=svgx.sof#pi” –weight=100.0.0 –smh=”@1=svgx.smh#2″ –number=30

Questu exampu cumandamentu:

  • Programma u dispusitivu è injects difetti (pi string)
  • Injects 100% errors single-bit (100.0.0)
  • Injects solu in ASD_REGION 2 (indicata da u #2)
  • Injects 30 difetti

Fault Injection IP Core User Guide Archives

Versione IP Core Guida d'usu
18.0 Fault Injection Intel FPGA IP Core User Guide
17.1 Intel FPGA Fault Injection IP Core User Guide
16.1 Altera Fault Injection IP Core User Guide
15.1 Altera Fault Injection IP Core User Guide

Se una versione di core IP ùn hè micca listata, a guida d'utilizatore per a versione di core IP precedente hè applicata.

Storia di Revisione Documentu per Fault Injection IP Core User Guide

Versione di documentu Version Intel Quartus Prime Cambiamenti
2019.07.09 18.1 Aghjurnatu u Fault Injection IP Pin Description tema per chjarificà i signali Reset, error_injected è error_scrubbed.
2018.05.16 18.0 • Aghjunghjite i seguenti temi da Intel Quartus Prime Pro Edition Handbook:

—   Definizione di e zone di iniezione di difetti e sottotemi.

—   Utilizà u Debugger d'Injection Fault e sottotemi.

—   Interfaccia di linea di cummanda e sottotemi.

• Renamed Intel FPGA Fault Injection IP core à Fault Injection Intel FPGA IP.

Data Versione Cambiamenti
2017.11.06 17.1 • Rebranded cum'è Intel.

• Aghjunghje u supportu di u dispositivu Intel Cyclone 10 GX.

2016.10.31 16.1 Supportu di u dispositivu aghjurnatu.
2015.12.15 15.1 • Cambiatu Quartus II à u software Quartus Prime.

• Fixed self-referencing link rilativi.

2015.05.04 15.0 Liberazione iniziale.

 

Documenti / Risorse

Intel UG-01173 Fault Injection FPGA IP Core [pdfGuida di l'utente
UG-01173 Fault Injection FPGA IP Core, UG-01173, Fault Injection FPGA IP Core, Injection c, Injection FPGA IP Core

Referenze

Lascia un cumentu

U vostru indirizzu email ùn serà micca publicatu. I campi obbligatori sò marcati *