intel-logo

intel UG-01173 Fault Injection FPGA IP Kerno

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

Fault Injection Intel® FPGA IP Core User Guide

La Fault Injection Intel® FPGA IP-kerno injektas erarojn en la agordan RAM (CRAM) de FPGA-aparato. Ĉi tiu proceduro simulas molajn erarojn, kiuj povas okazi dum normala operacio pro ununuraj okazaĵaj malordoj (SEUoj). SEUoj estas maloftaj eventoj kaj tial malfacilas provi. Post kiam vi instancigas la IP-kernon de Fault Injection en vian dezajnon kaj agordas vian aparaton, vi povas uzi la ilon Intel Quartus® Prime Fault Injection Debugger por provoki intencitajn erarojn en la FPGA por testi la respondon de la sistemo al ĉi tiuj eraroj.

Rilataj Informoj

  • Unuopaj Okazaĵoj
  • AN 737: SEU-Detekto kaj Reakiro en Intel Arria 10-Aparatoj

Karakterizaĵoj

  • Permesas al vi taksi sisteman respondon por mildigado de unuopaj funkciaj interrompoj (SEFI).
  • Permesas al vi fari SEFI-karakterizadon interne, forigante la bezonon de tuta sistema trabo-testado. Anstataŭe, vi povas limigi la trabo-testadon al misfunkciadoj en tempo (FIT)/Mb-mezurado ĉe la aparato-nivelo.
  • Skali FIT-tarifoj laŭ la karakterizado de SEFI, kiu rilatas al via projektarkitekturo. Vi povas hazarde distribui misajn injektojn tra la tuta aparato, aŭ limigi ilin al specifaj funkciaj areoj por akceli testadon.
  • Optimumigu vian dezajnon por redukti interrompon kaŭzitan de unuopaj malordoj de evento (SEU).

Subteno de Aparato

La IP-kerno de Fault Injection subtenas familiajn aparatojn Intel Arria® 10, Intel Cyclone® 10 GX kaj Stratix® V. La Cyclone V-familio subtenas Fault Injection sur aparatoj kun la -SC sufikso en la mendkodo. Kontaktu vian lokan vendan reprezentanton por mendi informojn pri -SC-sufikso Cyclone V-aparatoj.

Rimeda Utiligo kaj Agado
La Intel Quartus Prime-programaro generas la sekvan rimedtakson por la Stratix V A7 FPGA. Rezultoj por aliaj aparatoj estas similaj.

Intel Corporation. Ĉiuj rajtoj rezervitaj. Intel, la Intel-emblemo kaj aliaj Intel-markoj estas varmarkoj de Intel Corporation aŭ ĝiaj filioj. Intel garantias agadon de siaj FPGA kaj duonkonduktaĵoj laŭ nunaj specifoj konforme al la norma garantio de Intel, sed rezervas la rajton fari ŝanĝojn al ajnaj produktoj kaj servoj iam ajn sen avizo. Intel supozas neniun respondecon aŭ respondecon de la apliko aŭ uzo de ajna informo, produkto aŭ servo priskribita ĉi tie krom kiel eksplicite konsentite skribe de Intel. Intel-klientoj estas konsilitaj akiri la lastan version de aparato-specifoj antaŭ ol fidi je ajnaj publikigitaj informoj kaj antaŭ ol fari mendojn por produktoj aŭ servoj. *Aliaj nomoj kaj markoj povas esti postulataj kiel posedaĵo de aliaj.

Fault Injection IP Core FPGA Performance and Resource Utilisation

Aparato ALMoj Logikaj Registroj M20K
Primara Sekundara
Stratix V A7 3,821 5,179 0 0

La instalaĵo de la programaro Intel Quartus Prime inkluzivas la bibliotekon Intel FPGA IP. Ĉi tiu biblioteko disponigas multajn utilajn IP-kernojn por via produktada uzo sen la bezono de plia permesilo. Iuj Intel FPGA IP-kernoj postulas aĉeton de aparta permesilo por produktada uzo. La Intel FPGA IP-Taksada Reĝimo permesas al vi taksi ĉi tiujn aprobitajn Intel FPGA IP-kernojn en simulado kaj aparataro, antaŭ ol decidi aĉeti plenan produktan IP-kernan permesilon. Vi nur bezonas aĉeti plenan produktadlicencon por licencaj Intel IP-kernoj post kiam vi finprovas aparataron kaj pretas uzi la IP en produktado. La programaro Intel Quartus Prime instalas IP-kernojn en la sekvaj lokoj defaŭlte:

IP Kerna Instala Vojo

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

IP Kernaj Instalaj Lokoj

Loko Programaro Platformo
:\intelFPGA_pro\quartus\ip\altera Intel Quartus Prime Pro Edition Vindozo *
:\intelFPGA\quartus\ip\altera Intel Quartus Prime Standard Edition Vindozo
:/intelFPGA_pro/quartus/ip/altera Intel Quartus Prime Pro Edition Linukso *
:/intelFPGA/quartus/ip/altera Intel Quartus Prime Standard Edition Linukso

Notu: La programaro Intel Quartus Prime ne subtenas spacojn en la instalvojo.

Agordado kaj Generado de IP-Kernoj
Vi povas personecigi IP-kernojn por subteni ampleksan varion de aplikoj. La Intel Quartus Prime IP Katalogo kaj parametra redaktilo permesas vin rapide elekti kaj agordi IP-kernhavenojn, funkciojn kaj eligon. files.

IP Katalogo kaj Parametra Redaktilo
La IP-Katalogo montras la IP-kernojn disponeblajn por via projekto, inkluzive de Intel FPGA IP kaj alian IP, kiujn vi aldonas al la serĉvojo de IP Katalogo.. Uzu la sekvajn funkciojn de la IP-Katalogo por lokalizi kaj personecigi IP-kernon:

  • Filtru IP Katalogo por Montri IP por aktiva aparato familio aŭ Montri IP por ĉiuj aparato familioj. Se vi ne havas projekton malfermita, elektu la Aparato-Familion en IP Katalogo.
  • Tajpu en la Serĉkampon por trovi ajnan plenan aŭ partan IP-kernan nomon en IP Katalogo.
  • Dekstre alklaku IP-kernan nomon en IP Katalogo por montri detalojn pri subtenataj aparatoj, malfermi la instalan dosierujon de la IP-kerno kaj por ligiloj al IP-dokumentado.
  • Klaku Serĉu Partner IP to access partner IP information on the web.

La parametra redaktilo instigas vin specifi IP-varian nomon, laŭvolajn pordojn kaj eligon file generaciaj elektoj. La parametra redaktilo generas altnivelan Intel Quartus Prime IP file (.ip) por IP-vario en projektoj Intel Quartus Prime Pro Edition. La parametra redaktilo generas altnivelan Quartus IP file (.qip) por IP-vario en projektoj Intel Quartus Prime Standard Edition. Ĉi tiuj files reprezentas la IP-varion en la projekto, kaj stokas parametrigajn informojn.

IP Parametro Redaktilo (Intel Quartus Prime Standard Edition)intel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-2

Eligo de IP Core Generation (Intel Quartus Prime Pro Edition)

La programaro Intel Quartus Prime generas la sekvan eligon file strukturo por individuaj IP-kernoj kiuj ne estas parto de Platform Designer-sistemo.

Individua IP Core Generation Eligo (Intel Quartus Prime Pro Edition)intel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-3

  • Se subtenata kaj ebligita por via IP-kernvario.

Eligo Files de Intel FPGA IP Generation

File Nomo Priskribo
<via_ip>.ip Altnivela IP-variaĵo file kiu enhavas la parametrigon de IP-kerno en via projekto. Se la IP-variaĵo estas parto de Platform Designer-sistemo, la parametra redaktilo ankaŭ generas .qsys file.
<via_ip>.cmp La VHDL-Komponenta Deklaro (.cmp) file estas teksto file kiu enhavas lokajn senmarkajn kaj havendifinojn, kiujn vi uzas en VHDL-dezajno files.
<via_ip>_generacio.rpt Protokolo pri IP aŭ Platform Designer-generacio file. Montras resumon de la mesaĝoj dum IP-generado.
daŭrigis…
File Nomo Priskribo
<via_ip>.qgsimc (Platform Designer-sistemoj nur) Kaŝmemoro de simulado file tio komparas la .qsys kaj .ip files kun la nuna parametrigo de la sistemo Platform Designer kaj IP-kerno. Ĉi tiu komparo determinas ĉu Platform Designer povas preterpasi regeneradon de la HDL.
<via_ip>.qgsynth (Platform Designer-sistemoj nur) Sinteza kaŝmemoro file tio komparas la .qsys kaj .ip files kun la nuna parametrigo de la sistemo Platform Designer kaj IP-kerno. Ĉi tiu komparo determinas ĉu Platform Designer povas preterpasi regeneradon de la HDL.
<via_ip>.qip Enhavas ĉiujn informojn por integri kaj kompili la IP-komponenton.
<via_ip>.csv Enhavas informojn pri la ĝisdatigo de la IP-komponento.
.bsf Simbolo reprezentado de la IP-vario por uzo en Blokdiagramo Files (.bdf).
<via_ip>.spd Enigo file ke ip-make-simscript postulas generi simulajn skriptojn. La .spd file enhavas liston de files, kiujn vi generas por simulado, kune kun informoj pri memoroj, kiujn vi inicialigas.
<via_ip>.ppf La Pinglo-Planisto File (.ppf) konservas la havenon kaj nod-taskojn por IP-komponentoj, kiujn vi kreas por uzi kun la Pinplanilo.
<via_ip>_bb.v Uzu la nigran skatolon de Verilog (_bb.v) file kiel malplena modulo deklaro por uzo kiel nigra skatolo.
<via_ip>_inst.v aŭ _inst.vhd HDL ekzample-instanciga ŝablono. Kopiu kaj algluu la enhavon de ĉi tio file en vian HDL file por instantigi la IP-varion.
<via_ip>.regmapo Se la IP enhavas registrajn informojn, la programaro Intel Quartus Prime generas la .regmap file. La .regmapo file priskribas la registrajn mapinformojn de majstraj kaj sklavinterfacoj. Ĉi tio file komplementoj

la .sopcinfo file provizante pli detalajn registrinformojn pri la sistemo. Ĉi tio file ebligas registran ekranon views kaj uzantaj agordeblaj statistikoj en Sistemkonzolo.

<via_ip>.svd Permesas al HPS System Debug iloj view la registromapoj de ekstercentraj kiuj ligas al HPS ene de Platform Designer-sistemo.

Dum sintezo, la programaro Intel Quartus Prime konservas la .svd files por sklavinterfaco videbla al la System Console-mastroj en la .sof file en la sencimiga sesio. Sistemkonzolo legas ĉi tiun sekcion, kiun Platform Designer demandas por registri mapaj informoj. Por sistemsklavoj, Platform Designer aliras la registrojn laŭnome.

<via_ip>.v

<via_ip>.vhd

HDL files kiuj instantiigas ĉiun submodulon aŭ infanan IP-kernon por sintezo aŭ simulado.
mentoro/ Enhavas msim_setup.tcl-skripton por agordi kaj ruli simuladon.
aldec/ Enhavas skripton rivierapro_setup.tcl por agordi kaj ruli simuladon.
/synopsys/vcs

/synopsys/vcsmx

Enhavas ŝelan skripton vcs_setup.sh por agordi kaj ruli simuladon.

Enhavas ŝelan skripton vcsmx_setup.sh kaj synopsys_sim.setup file starigi kaj ruli simuladon.

/kadenco Enhavas ŝelan skripton ncsim_setup.sh kaj alian aranĝon files starigi kaj ruli simuladon.
/xceliumo Enhavas Paralela simulila ŝelo-skripto xcelium_setup.sh kaj alian aranĝon files starigi kaj ruli simuladon.
/submoduloj Enhavas HDL files por la IP-kernsubmodulo.
<IP-submodulo>/ Platform Designer generas /synth kaj /sim sub-dosierujojn por ĉiu IP-submodula dosierujo kiun Platform Designer generas.

Funkcia Priskribo
Kun la Fault Injection IP-kerno, dizajnistoj povas plenumi SEFI-karakteradon endome, skali FIT-tarifoj laŭ SEFI-karakterizado kaj optimumigi dezajnojn por redukti efikon de SEUoj.

Ununura Eventa Maltrankviliĝo

Integraj cirkvitoj kaj programeblaj logikaparatoj kiel ekzemple FPGAoj estas sentemaj al SEUoj. SEUoj estas hazardaj, nedetruaj eventoj, kaŭzitaj de du ĉefaj fontoj: alfa-partikloj kaj neŭtronoj de kosmaj radioj. Radiado povas kaŭzi aŭ la logikregistron, enigitan memorpecon, aŭ konfiguracian RAM (CRAM) pecon renversi sian staton, tiel kondukante al neatendita aparatoperacio. Intel Arria 10, Intel Cyclone 10 GX, Arria V, Cyclone V, Stratix V kaj pli novaj aparatoj havas la sekvajn CRAM-kapablojn:

  • Kontrolado de Cikla Redunda Detekto de Eraroj (EDCRC)
  • Aŭtomata korekto de ĉagrenita CRAM (purigado)
  • Kapablo krei ĉagrenitan CRAM-kondiĉon (faŭlto-injekto)

Por pliaj informoj pri SEU-mildigo en Intel FPGA-aparatoj, raportu al la ĉapitro SEU-Mitigado en la respektiva aparato-manlibro.

Faŭlto Injekto IP Pinglo Priskribo

La Fault Injection IP-kerno inkluzivas la sekvajn I/O-pinglojn.

Fault Injection IP Core I/O Pins

Pin Nomo Pingla Direkto Pinglo Priskribo
crcerror_pin enigo Enigo de Erara Mesaĝo Register Unloader Intel FPGA IP (EMR Unloader IP). Ĉi tiu signalo estas asertita kiam CRC-eraro estis detektita de la EDCRC de la aparato.
emr_data enigo Enhavo de Registro de Eraraj Mesaĝoj (EMR). Riferu al la taŭga aparato-manlibro por la EMR-kampoj.

Ĉi tiu enigo konformas al la signalo de interfaco de datumoj de Avalon Streaming.

emr_valida enigo Indikas ke la emr_data enigaĵoj enhavas validajn datumojn. Ĉi tio estas valida interfaca signalo de Avalon Streaming.
Restarigi enigo Modulo rekomencigita enigo. La restarigo estas plene kontrolita de la Erarĉimilo de Fault Injection.
eraro_injektita eligo Indikas ke eraro estis injektita en CRAM kiel ordonite per la JTAG interfaco. La tempodaŭro, kiun ĉi tiu signalo asertas, dependas de viaj agordoj de la JTAG TCK kaj kontrolblokaj signaloj. Tipe, la tempo estas proksimume 20 horloĝcikloj de la TCK-signalo.
eraro_scrubbed eligo Indikas ke la aparato frotado estas kompleta kiel ordonite per la JTAG interfaco. La tempodaŭro, kiun ĉi tiu signalo asertas, dependas de viaj agordoj de la JTAG TCK kaj kontrolblokaj signaloj. Tipe, la tempo estas proksimume 20 horloĝcikloj de la TCK-signalo.
intosc eligo Laŭvola eligo. La Fault Injection IP uzas ĉi tiun horloĝon, ekzample, por horloĝi la EMR_unloader-blokon.

Faŭlto Injekto IP Pin Diagramo

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

Uzante la Fault Injection Sencirmilon kaj Fault Injection IP Core

La Fault Injection Debugger funkcias kune kun la Fault Injection IP-kerno. Unue, vi kreas la IP-kernon en via dezajno, kompilas kaj elŝutas la rezultan agordon file en vian aparaton. Poste, vi rulu la Erarĉimilon de Fault Injection de ene de la programaro Intel Quartus Prime aŭ de la komandlinio por simuli molajn erarojn.

  • La Erarĉimilo de Faŭlto-Injekto permesas al vi funkciigi eksperimentojn pri misaj injektoj interage aŭ per bataj komandoj, kaj permesas al vi specifi la logikan areojn en via dezajno por misaj injektoj.
  • La komandlinia interfaco estas utila por ruli la erarserĉilon per skripto.

Notu

La Fault Injection Sencimigilo komunikas kun la Fault Injection IP-kerno per la JTAG interfaco. La IP de Fault Injection akceptas komandojn de la JTAG interfaco kaj raportas statuson reen tra la JTAG interfaco. La Fault Injection IP-kerno estas efektivigita en mola logiko en via aparato; tial vi devas konsideri ĉi tiun logikan uzadon en via dezajno. Unu metodaro estas karakterizi la respondon de via dezajno al SEU en la laboratorio kaj poste preterlasi la IP-kernon de via fina deplojita dezajno.

Vi uzas la IP-kernon de Fault Injection kun la jenaj IP-kernoj:

  • La IP-kerno de Erara Mesaĝo Register Unloader, kiu legas kaj konservas datumojn de la hardita eraro-detekta cirkvito en Intel FPGA-aparatoj.
  • (Laŭvola) La Advanced SEU Detection Intel FPGA IP-kerno, kiu komparas unubitajn erarlokojn al sentemmapo dum aparato-operacio por determini ĉu mola eraro influas ĝin.

Fault Injection Sencimigilo Superview Bloka Diagramointel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-5

Notoj:

  1. La Fault Injection IP renversas la pecojn de la celita logiko.
  2. La Fault Injection Debugger kaj Advanced SEU Detection IP uzas la saman EMR Unloader-instancon.
  3. La Advanced SEU Detection IP-kerno estas laŭvola.

Rilataj Informoj

  • Pri SMH Files sur paĝo 13
  • Pri la IP Kerno de EMR Unloader sur paĝo 10
  • Pri la Advanced SEU Detection IP Core sur paĝo 11

Instanciante la Faŭltan Injekton IP Kernon

NOTO

La IP-kerno de Fault Injection ne postulas, ke vi agordu iujn ajn parametrojn. Por uzi la IP-kernon, kreu novan IP-okazaĵon, inkluzivu ĝin en vian Platform Designer (Norma) sistemon, kaj konektu la signalojn kiel taŭgas. Vi devas uzi la IP-kernon de Fault Injection kun la IP-kerno de EMR Unloader. La Fault Injection kaj la IP-kernoj de EMR Unloader estas haveblaj en Platform Designer kaj la IP Katalogo. Laŭvole, vi povas instantigi ilin rekte en vian RTL-dezajnon, uzante Verilog HDL, SystemVerilog aŭ VHDL.

Pri la IP Kerno de EMR Unloader
La EMR Unloader IP-kerno disponigas interfacon al la EMR, kiu estas ĝisdatigita kontinue de la EDCRC de la aparato, kiu kontrolas la CRAM-bitojn CRC de la aparato por molaj eraroj.

Example Platform Designer System Inkluzivanta la Fault Injection IP Core kaj EMR Unloader IP Coreintel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-6

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

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

Rilataj Informoj
Erarmesaĝo Register Unloader Intel FPGA IP Core User Guide

Pri la Altnivela SEU-Detekta IP Kerno

Uzu la IP-kernon de Advanced SEU Detection (ASD) kiam SEU-toleremo estas zorgo pri dezajno. Vi devas uzi la EMR Unloader IP-kernon kun la ASD IP-kerno. Tial, se vi uzas la ASD-IP kaj la Fault Injection IP en la sama dezajno, ili devas kunhavigi la EMR Unloader-eligon per Avalon®-ST-dividilo. La sekva figuro montras Platform Designer-sistemon, en kiu Avalon-ST-dividilo distribuas la EMR-enhavon al la ASD kaj Fault Injection IP-kernoj.

Uzante la ASD kaj Fault Injection IP en la Sama Platforma Projektista Sistemointel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-8

Rilataj Informoj
Altnivela SEU-Detekto Intel FPGA IP Core Uzantgvidilo

Difinante Faŭltajn Injektajn Areojn
Vi povas difini specifajn regionojn de la FPGA por faŭlto-injekto uzante Sensiveca Map Header (.smh) file. La SMH file stokas la koordinatojn de la aparataj CRAM-bitoj, ilian asignitan regionon (ASD-Regiono), kaj kritikecon. Dum la dezajnprocezo vi uzas hierarkion tagging krei la regionon. Tiam, dum kompilo, la Intel Quartus Prime Assembler generas la SMH file. La Erarĉimilo de Fault Injection limigas erarajn injektojn al specifaj aparatregionoj, kiujn vi difinas en la SMH file.

Elfaranta Hierarkio Tagging
Vi difinas la FPGA-regionojn por testado asignante ASD-Regionon al la loko. Vi povas specifi valoron de ASD-Regiono por iu ajn parto de via dezajna hierarkio uzante la Fenestron de Dezajnaj Dispartigoj.

  1. Elektu Taskojn ➤ Dezajni Dispartigojn.
  2. Dekstre alklaku ie ajn en la kaplinio kaj ŝaltu ASD Regionon por montri la kolumnon ASD Region (se ĝi ne estas jam montrata).
  3. Enigu valoron de 0 ĝis 16 por iu ajn subdisko por asigni ĝin al specifa ASD-Regiono.
    • ASD-regiono 0 estas rezervita al neuzataj partoj de la aparato. Vi povas asigni sekcion al ĉi tiu regiono por specifi ĝin kiel ne-kritika..
    • ASD-regiono 1 estas la defaŭlta regiono. Ĉiuj uzitaj partoj de la aparato estas asignitaj al ĉi tiu regiono krom se vi eksplicite ŝanĝas la ASD-Regionon-taskon.

Pri SMH Files

La SMH file enhavas la jenajn informojn:

  • Se vi ne uzas hierarkion tagging (te, la dezajno havas neniujn eksplicitajn ASD Region-taskojn en la dezajnohierarkio), la SMH file listigas ĉiun CRAM-biton kaj indikas ĉu ĝi estas sentema por la dezajno.
  • Se vi faris hierarkion tagging kaj ŝanĝis defaŭltajn ASD Regionajn taskojn, la SMH file listigas ĉiun CRAM-biton kaj al ĝi estas asignita ASD-regiono.

La Erarĉimilo de Fault Injection povas limigi injektojn al unu aŭ pluraj specifitaj regionoj. Direkti la Asemblanton por generi SMH file:

  • Elektu Taskojn ➤ Aparato ➤ Aparato kaj Pinglo-Opcioj ➤ Erara Detekto CRC.
  • Ŝaltu la mapon de sentemo Generi SEU file (.smh) opcio.

Uzante la Erarĉimilon de Fault Injection

NOTO
Por uzi la Erarsirmilon de Fault Injection, vi konektas al via aparato per la JTAG interfaco. Poste, agordu la aparaton kaj faru misfunkcian injekton. Por lanĉi la Fault Injection Sencirmilon, elektu Iloj ➤ Fault Injection Sencirmilon en la Intel Quartus Prime-programaro. Agordo aŭ programado de la aparato estas simila al la proceduro uzata por la Programisto aŭ Signal Tap Logic Analyzer.

Erarĉimilo de injekto de misfunkciado

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

Por agordi vian JTAG ĉeno:

  1. Klaku Aparataro Agordo. La ilo montras la programadan aparataron konektitan al via komputilo.
  2. Elektu la programadan aparataron, kiun vi volas uzi.
  3. Klaku Fermi.
  4. Alklaku Aŭtomatan Detekton, kiu popolas la aparatan ĉenon kun la programeblaj aparatoj trovitaj en la JTAG ĉeno.

Rilataj Informoj
Celita Faŭlta Injekto-Trajto sur paĝo 21

Postuloj pri aparataro kaj programaro

La sekva aparataro kaj programaro estas bezonataj por uzi la Faŭltan Injektan Erarserĉilon:

  • FEATURE-linio en via Intel FPGA-licenco kiu ebligas la Fault Injection IP-kernon. Por pliaj informoj, kontaktu vian lokan vendan reprezentanton de Intel FPGA.
  • Elŝuta kablo (Intel FPGA Download Cable, Intel FPGA Download Cable II, , aŭ II).
  • Intel FPGA-disvolva kompleto aŭ uzanto dizajnita tabulo kun JTAG konekto al la aparato sub testo.
  • (Laŭvola) FEATURE-linio en via Intel FPGA-licenco kiu ebligas la Advanced SEU Detection IP-kernon.

Agordante Vian Aparaton kaj la Erarserĉilon de Faŭlto-Injekto

La Erarĉimilo de Faŭlto-Injekto uzas .sof kaj (laŭvole) Sensiveca Map Header (.smh) file. La Programaro-Objekto File (.sof) agordas la FPGA. La .smh file difinas la sentemon de la CRAM-bitoj en la aparato. Se vi ne provizas .smh file, la Fault Inject Debugger injektas faŭltojn hazarde ĉie en la CRAM-pecoj. Por specifi .sof:

  1. Elektu la FPGA, kiun vi volas agordi en la Aparato ĉeno-skatolo.
  2. Klaku Elektu File.
  3. Iru al la .sof kaj alklaku OK. La Erarĉimilo de Fault Injection legas la .sof.
  4. (Laŭvola) Elektu la SMH file.
    Se vi ne specifas SMH file, la Fault Injection Debugger injektas misfunkciadojn hazarde tra la tuta aparato. Se vi specifas SMH file, vi povas limigi injektojn al la uzitaj areoj de via aparato.
    • Dekstre alklaku la aparaton en la Aparato ĉeno skatolo kaj tiam alklaku Elektu SMH File.
    • Elektu vian SMH file.
    • Klaku OK.
  5. Ŝaltu Programon/Agordu.
  6. Klaku Komencu.

La Erarĉimilo de Fault Injection agordas la aparaton uzante la .sof.

Kunteksta Menuo por Elekti la SMH File

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

Limigo de Regionoj por Fault Injection

Post ŝarĝo de SMH file, vi povas direkti la Fault Injection Sencirmilon por funkcii sur nur specifaj ASD-regionoj. Por specifi la ASD-regionon(j)n en kiuj injekti misfunkciadojn:

  1. Dekstre alklaku la FPGA en la Aparato ĉeno-skatolo, kaj alklaku Montri Aparan Sensitiveca Mapo.
  2. Elektu la ASD-regionon(j)n por misfara injekto.

Aparato Sensiveca Mapo Viewer

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

Specifante Erarspecojn

Vi povas specifi diversajn tipojn de eraroj por injekto.

  • Unuopaj eraroj (SE)
  • Duobla apudaj eraroj (DAE)
  • Nekorekteblaj plurbitaj eraroj (EMBE)

Intel FPGA-aparatoj povas mem-korekti unuopaj kaj duoble apudajn erarojn se la frota funkcio estas ebligita. Intel FPGA-aparatoj ne povas korekti plurbitajn erarojn. Riferu al la ĉapitro pri mildigado de SEU-oj por pliaj informoj pri senararigado de ĉi tiuj eraroj. Vi povas specifi la miksaĵon de misfunkciadoj por injekti kaj la injektotempan intervalon. Por specifi la injektan tempon:

  1. En la Erarĉimilo de Faŭlto-Injekto, elektu Iloj ➤ Opcioj.
  2. Trenu la ruĝan regilon al la miksaĵo de eraroj. Alternative, vi povas specifi la miksaĵon cifere.
  3. Indiku la Injektan intervaltempon.
  4. Klaku OK.

Figuro 12. Specifante la Miksaĵon de SEU-Faŭltaj Tipojintel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-12

Rilataj Informoj Mildigo de Ununura Eventa Maltrankviliĝo

Injektado de Eraroj

Vi povas injekti erarojn en pluraj reĝimoj:

  • Injektu unu eraron ĉe komando
  • Injektu plurajn erarojn ĉe komando
  • Injektu erarojn ĝis ordonite ĉesi

Por injekti ĉi tiujn misfunkciadojn:

  1. Ŝaltu la opcion Injekto-Faŭlto.
  2. Elektu ĉu vi volas ruli eraran injekton por kelkaj ripetoj aŭ ĝis halto:
    • Se vi elektas kuri ĝis halto, la Erarĉimilo de Fault Injection injektas erarojn je la intervalo specifita en la dialogujo Iloj ➤ Opcioj.
    • Se vi volas ruli eraran injekton por specifa nombro da ripetoj, enigu la nombron.
  3. Klaku Komencu.

Notu: La Erarĉimilo de Fault Injection funkcias por la specifita nombro da ripetoj aŭ ĝis halto. La fenestro de Mesaĝoj de Intel Quartus Prime montras mesaĝojn pri la eraroj injektitaj. Por pliaj informoj pri la injektitaj misfunkciadoj, alklaku Legi EMR. La Erarĉimilo de Fault Injection legas la EMR de la aparato kaj montras la enhavon en la Mesaĝoj-fenestro.

Intel Quartus Prime Eraro-Injekto kaj EMR-Enhavaj Mesaĝoj

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

Registrado de Eraroj
Vi povas registri la lokon de iu ajn injektita misfunkciado notante la parametrojn raportitajn en la fenestro de Intel Quartus Prime Messages. Se, ekzample, injektita faŭlto rezultigas konduton, kiun vi ŝatus reludi, vi povas celi tiun lokon por injekto. Vi plenumas celitan injekton per la interfaco de komandlinio de Fault Injection Debugger.

Forigante Injektitajn Erarojn
Por restarigi la normalan funkcion de la FPGA, alklaku Scrub. Kiam vi frotas eraron, la EDCRC-funkcioj de la aparato estas uzataj por korekti la erarojn. La vepromekanismo estas simila al tiu uzata dum aparato-funkciado.

Komandlinia Interfaco
Vi povas ruli la Erarĉimilon de Fault Injection ĉe la komandlinio kun la plenumebla quartus_fid, kiu estas utila se vi volas fari misfunkciadon de skripto.

Tablo 5. Argumentoj de komandlinio por Fault Injection

Mallonga Argumento Longa Argumento Priskribo
c kablo Indiku programan aparataron aŭ kablon. (Bezonata)
i indekso Indiku la aktivan aparaton por injekti misfunkciadon. (Bezonata)
n nombro Indiku la nombron da eraroj por injekti. La defaŭlta valoro estas

1. (Laŭvola)

t tempo Intervala tempo inter injektoj. (Laŭvola)

Notu: Uzu quartus_fid –help to view ĉiuj disponeblaj opcioj. La sekva kodo provizas ekzamples uzante la Fault Injection Debugger komandlinia interfaco.
####################################################

  • # Eltrovu, kiuj USB-kabloj disponeblas por ĉi tiu kazo
  • # La rezulto montras, ke unu kablo disponeblas, nomata "USB-Blaster" #
  • $ quartus_fid –list . . .
  • Informoj: Komando: quartus_fid –list
    1. USB-Blaster sur sj-sng-z4 [USB-0] Informoj: Intel Quartus Prime 64-Bit Fault Injection Debugger sukcesis. 0 eraroj, 0 averto
  • ############################################
  • # Trovu, kiuj aparatoj disponeblas per USB-Blaster-kablo
  • # La rezulto montras du aparatojn: Stratix V A7, kaj MAX V CPLD. #
  • $ quartus_fid –kablo USB-Blaster -a
  • Informoj: Komando: quartus_fid –cable=USB-Blaster -a
  • Informoj (208809): Uzante programan kablon "USB-Blaster sur sj-sng-z4 [USB-0]"
    1. USB-Blaster sur sj-sng-z4 [USB-0]
  • 029030DD 5SGXEA7H(1|2|3)/5SGXEA7K1/..
  • 020A40DD 5M2210Z/EPM2210
  • Informoj: Intel Quartus Prime 64-Bit Fault Injection Debugger estis sukcesa.
  • 0 eraroj, 0 avertoj
  • ############################################
  • # Programu la aparaton Stratix V
  • # La opcio –index specifas operaciojn faritajn sur konektita aparato.
  • # “=svgx.sof” asocias .sof file kun la aparato
  • # "#p" signifas programi la aparaton #
  • $ quartus_fid –kablo USB-Blaster –index “@1=svgx.sof#p” . . .
  • Informoj (209016): Agordante aparatan indekson 1
  • Informoj (209017): Aparato 1 enhavas JTAG ID-kodo 0x029030DD
  • Informoj (209007): Agordo sukcesis — 1 aparato(j) agordita(j).
  • Informoj (209011): Sukcese farita(j) operacio(j)
  • Info (208551): Programsubskribo en aparato 1.
  • Informoj: Intel Quartus Prime 64-Bit Fault Injection Debugger estis sukcesa.
  • 0 eraroj, 0 avertoj
  • ############################################
  • # Injektu misfunkciadon en la aparaton.
  • # La #i operatoro indikas injekti misfunkciadojn
  • # -n 3 indikas injekti 3 misfunkciadojn #
  • $ quartus_fid –kablo USB-Blaster –index “@1=svgx.sof#i” -n 3
  • Informoj: Komando: quartus_fid –cable=USB-Blaster –index=@1=svgx.sof#i -n 3
  • Informoj (208809): Uzante programan kablon "USB-Blaster sur sj-sng-z4 [USB-0]"
  • Informoj (208521): Injektas 3 eraron(j)n en aparato(j)
  • Informoj: Intel Quartus Prime 64-Bit Fault Injection Debugger estis sukcesa.
  • 0 eraroj, 0 avertoj
  • ############################################
  • # Interaga Reĝimo.
  • # Uzado de la operacio #i kun -n 0 metas la erarserĉilon en interaga reĝimo.
  • # Notu, ke 3 eraroj estis injektitaj en la antaŭa sesio;
  • # "E" legas la erarojn nuntempe en la IP-kerno de EMR Unloader. #
  • $ quartus_fid –kablo USB-Blaster –index “@1=svgx.sof#i” -n 0
  • Informoj: Komando: quartus_fid –cable=USB-Blaster –index=@1=svgx.sof#i -n 0
  • Informoj (208809): Uzante programan kablon "USB-Blaster sur sj-sng-z4 [USB-0]"
  • Enigu:
  • 'F' por injekti kulpon
  • 'E' por legi EMR
  • 'S' por froti eraron(j)n
  • "Q" por forlasi E
  • Info (208540): Legante EMR-aron
  • Informoj (208544): 3 kadra eraro(j) detektita(j) en aparato 1.
  • Info (208545): Eraro n-ro 1 : Ununura eraro en kadro 0x1028 ĉe bito 0x21EA.
  • Informoj (10914): Eraro #2: Nekorektebla plurbita eraro en kadro 0x1116.
  • Informoj (208545): Eraro n-ro 3 : Ununura eraro en kadro 0x1848 ĉe bito 0x128C.
  • 'F' por injekti kulpon
  • 'E' por legi EMR
  • 'S' por froti eraron(j)n
  • 'Q' por forlasi Q
  • Informoj: Intel Quartus Prime 64-Bit Fault Injection Debugger estis sukcesa. 0 eraroj, 0 avertoj
  • Informoj: Pinta virtuala memoro: 1522 megabajtoj
  • Informoj: Pretigo finiĝis: lun nov 3 18:50:00 2014
  • Informoj: Pasita tempo: 00:00:29
  • Informoj: Totala CPU-tempo (sur ĉiuj procesoroj): 00:00:13

Celita Kulpo-Injekto Trajto

Notu

La Erarĉimilo de Fault Injection injektas erarojn en la FPGA hazarde. Tamen, la trajto de Targeted Fault Injection permesas vin injekti faŭltojn en celitajn lokojn en la CRAM. Ĉi tiu operacio povas esti utila, ekzample, se vi notis SEU-okazaĵon kaj volas testi la FPGA aŭ sisteman respondon al la sama evento post modifo de reakira strategio. La funkcio de Celita Fault Injection disponeblas nur de la komandlinia interfaco. Vi povas specifi, ke eraroj estas injektitaj de la komandlinio aŭ en prompta reĝimo. Rilataj Informoj

AN 539: Testa Metodologio aŭ Erara Detekto kaj Reakiro uzante CRC en Intel FPGA-Aparatoj

Specifante Erarliston De la Komandlinio

La funkcio de Celita Faŭlta Injekto permesas vin specifi erarliston de la komandlinio, kiel montrite en la sekva ekz.ample: c:\Users\sng> quartus_fid -c 1 – i “@1= svgx.sof#i ” -n 2 -user=”@1= 0x2274 0x05EF 0x2264 0x0500″ Kie: c 1 indikas ke la FPGA estas kontrolita per la unua kablo en via komputilo. i "@1= six.sof#i " indikas ke la unua aparato en la ĉeno estas ŝarĝita kun la objekto file svgx.sof kaj estos injektita kun misfunkciadoj. n 2 indikas ke du faŭltoj estos injektitaj. user="@1= 0x2274 0x05EF 0x2264 0x0500" estas uzant-specifita listo de injektotaj misfunkciadoj. En ĉi tiu ekzample, aparato 1 havas du misfunkciadojn: ĉe kadro 0x2274, bito 0x05EF kaj ĉe kadro 0x2264, bito 0x0500.

Specifante Erarliston De Prompta Reĝimo

Vi povas funkcii la funkcion de Celita Faŭlto-Injekto interage specifante la nombron da misfunkciadoj por esti 0 (-n 0). La Erarĉimilo de Fault Injection prezentas promptajn reĝimajn komandojn kaj iliajn priskribojn.

Prompta Reĝima Komando Priskribo
F Injektu misfunkciadon
E Legu la EMR
S Scrub-eraroj
Q Forlasu

En prompta reĝimo, vi povas eldoni la F-komandon sole por injekti ununuran misfunkciadon en hazarda loko en la aparato. En la sekva ekzamples uzante la F-komandon en prompta reĝimo, tri eraroj estas injektitaj. F #3 0x12 0x34 0x56 0x78 * 0x9A 0xBC +

  • Eraro 1 - Unubita eraro ĉe kadro 0x12, bito 0x34
  • Eraro 2 - Nekorektebla eraro ĉe kadro 0x56, bito 0x78 (* indikas plurbitan eraron)
  • Eraro 3 - Duobla apuda eraro ĉe kadro 0x9A, bito 0xBC (a + indikas duoblan bitan eraron)

F 0x12 0x34 0x56 0x78 * Unu (defaŭlta) eraro estas injektita: Eraro 1 - Unubita eraro ĉe kadro 0x12, bito 0x34. Lokoj post la unua kadro/bitloko estas ignoritaj. F #3 0x12 0x34 0x56 0x78 * 0x9A 0xBC + 0xDE 0x00

Tri eraroj estas injektitaj:

  • Eraro 1 - Unubita eraro ĉe kadro 0x12, bito 0x34
  • Eraro 2 - Nekorektebla eraro ĉe kadro 0x56, bito 0x78
  • Eraro 3 - Duobla apuda eraro ĉe kadro 0x9A, bito 0xBC
  • Lokoj post la unuaj 3 kadro/bitparoj estas ignoritaj

Determinante CRAM-Bitajn Lokojn

Notu: 

Kiam la Fault Injection Debugger detektas CRAM-EDCRC-eraron, la Erara Mesaĝo-Registro (EMR) enhavas la sindromon, kadran nombron, bitan lokon kaj erarspecon (ununura, duobla aŭ plurbita) de la detektita CRAM-eraro. Dum sistema testado, konservu la EMR-enhavon raportitan de la Erarĉimilo de Fault Injection kiam vi detektas misfunkciadon de EDCRC. Kun la registrita EMR-enhavo, vi povas provizi la kadrajn kaj bitajn nombrojn al la Erarĉimilo de Fault Injection por reprodukti la erarojn notitajn dum sistema testado, por plue desegni kaj karakterizi sisteman reakiran respondon al tiu eraro.

Rilataj Informoj
AN 539: Testa Metodologio aŭ Erara Detekto kaj Reakiro uzante CRC en Intel FPGA-Aparatoj

Altnivelaj Komandliniaj Opcioj: ASD-Regionoj kaj Eraro-Tipo-Pesiĝo

Vi povas uzi la komandlinian interfacon de Fault Injection Debugger por injekti erarojn en ASD-regionojn kaj pezi la erartipojn. Unue, vi specifu la miksaĵon de erartipoj (unu bito, duobla apuda kaj plurbita nekorektebla) uzante la pezon. . . opcio. Por ekzample, por miksaĵo de 50% unuopaj eraroj, 30% duoblaj apudaj eraroj, kaj 20% plurbitaj nekorekteblaj eraroj, uzu la opcion –weight=50.30.20. Poste, por celi ASD-regionon, uzu la -smh-opcion por inkluzivi la SMH file kaj indiku la ASD-regionon celon. Por ekzample: $ quartus_fid –kablo=USB-BlasterII –indekso “@1=svgx.sof#pi” –pezo=100.0.0 –smh=”@1=svgx.smh#2″ –numero=30

Ĉi tiu ekzample komando:

  • Programas la aparaton kaj injektas misfunkciadojn (piŝnuro)
  • Injektas 100% unu-bitajn faŭltojn (100.0.0)
  • Injektas nur en ASD_REGION 2 (indikita per la #2)
  • Injektas 30 faŭltojn

Arkivoj de Fault Injection IP Core User Guide

IP Kerna Versio Uzantgvidilo
18.0 Fault Injection Intel FPGA IP Core Uzantgvidilo
17.1 Intel FPGA Fault Injection IP Core User Guide
16.1 Altera Fault Injection IP Kerna Uzantgvidilo
15.1 Altera Fault Injection IP Kerna Uzantgvidilo

Se IP-kernversio ne estas listigita, la uzantgvidilo por la antaŭa IP-kernversio validas.

Dokumenta Revizia Historio por Fault Injection IP Kerna Uzantgvidilo

Dokumenta Versio Intel Quartus Prime Version Ŝanĝoj
2019.07.09 18.1 Ĝisdatigis la Faŭlto Injekto IP Pinglo Priskribo temo por klarigi la signalojn Reset, error_injected kaj error_scrubbed.
2018.05.16 18.0 • Aldonis la jenajn temojn el la Manlibro pri Intel Quartus Prime Pro Edition:

—   Difinante Faŭltajn Injektajn Areojn kaj subtemoj.

—   Uzante la Erarĉimilon de Fault Injection kaj subtemoj.

—   Komandlinia Interfaco kaj subtemoj.

• Renomita Intel FPGA Fault Injection IP-kerno al Fault Injection Intel FPGA IP.

Dato Versio Ŝanĝoj
2017.11.06 17.1 • Remarkita kiel Intel.

• Aldonita aparato-subteno de Intel Cyclone 10 GX.

2016.10.31 16.1 Ĝisdatigita aparato-subteno.
2015.12.15 15.1 • Ŝanĝita Quartus II al Quartus Prime programaro.

• Fiksita mem-referenca rilata ligilo.

2015.05.04 15.0 Komenca eldono.

 

Dokumentoj/Rimedoj

intel UG-01173 Fault Injection FPGA IP Kerno [pdf] Uzantogvidilo
UG-01173 Fault Injection FPGA IP Core, UG-01173, Fault Injection FPGA IP Core, Injection c, Injection FPGA IP Core

Referencoj

Lasu komenton

Via retadreso ne estos publikigita. Bezonataj kampoj estas markitaj *