intel UG-01173 Fault Injection FPGA IP Core
Fault Injection Intel® FPGA IP Core User Guide
Ang Fault Injection Intel® FPGA IP core ay nag-iinject ng mga error sa configuration RAM (CRAM) ng isang FPGA device. Ginagaya ng pamamaraang ito ang mga soft error na maaaring mangyari sa normal na operasyon dahil sa mga single event upsets (SEUs). Ang mga SEU ay bihirang mga kaganapan at samakatuwid ay mahirap subukan. Pagkatapos mong i-instantiate ang Fault Injection IP core sa iyong disenyo at i-configure ang iyong device, maaari mong gamitin ang tool ng Intel Quartus® Prime Fault Injection Debugger upang mapukaw ang mga sinasadyang error sa FPGA upang subukan ang tugon ng system sa mga error na ito.
Kaugnay na Impormasyon
- Mga Pag-iisang Kaganapan
- AN 737: SEU Detection at Recovery sa Intel Arria 10 Devices
Mga tampok
- Nagbibigay-daan sa iyong suriin ang tugon ng system para sa pagpapagaan ng mga single event functional interrupts (SEFI).
- Binibigyang-daan kang magsagawa ng SEFI characterization in-house, na inaalis ang pangangailangan para sa buong system beam testing. Sa halip, maaari mong limitahan ang beam testing sa mga failure in time (FIT)/Mb na pagsukat sa antas ng device.
- I-scale ang mga rate ng FIT ayon sa paglalarawan ng SEFI na nauugnay sa iyong arkitektura ng disenyo. Maaari mong random na ipamahagi ang mga fault injection sa buong device, o pilitin ang mga ito sa mga partikular na functional na lugar upang mapabilis ang pagsubok.
- I-optimize ang iyong disenyo para mabawasan ang pagkagambala na dulot ng iisang event upsets (SEU).
Suporta sa Device
Ang Fault Injection IP core ay sumusuporta sa Intel Arria® 10, Intel Cyclone® 10 GX at Stratix® V na mga family device. Sinusuportahan ng pamilya ng Cyclone V ang Fault Injection sa mga device na may -SC suffix sa ordering code. Makipag-ugnayan sa iyong lokal na sales representative para sa pag-order ng impormasyon sa -SC suffix Cyclone V device.
Paggamit at Pagganap ng Resource
Ang software ng Intel Quartus Prime ay bumubuo ng sumusunod na pagtatantya ng mapagkukunan para sa Stratix V A7 FPGA. Ang mga resulta para sa iba pang mga device ay magkatulad.
Intel Corporation. Lahat ng karapatan ay nakalaan. Ang Intel, ang logo ng Intel, at iba pang mga marka ng Intel ay mga trademark ng Intel Corporation o mga subsidiary nito. Ginagarantiyahan ng Intel ang pagganap ng mga produktong FPGA at semiconductor nito sa kasalukuyang mga detalye alinsunod sa karaniwang warranty ng Intel, ngunit inilalaan ang karapatang gumawa ng mga pagbabago sa anumang produkto at serbisyo anumang oras nang walang abiso. Walang pananagutan o pananagutan ang Intel na nagmumula sa aplikasyon o paggamit ng anumang impormasyon, produkto, o serbisyong inilarawan dito maliban kung hayagang sinang-ayunan ng Intel. Pinapayuhan ang mga customer ng Intel na kunin ang pinakabagong bersyon ng mga detalye ng device bago umasa sa anumang nai-publish na impormasyon at bago maglagay ng mga order para sa mga produkto o serbisyo. *Ang ibang mga pangalan at tatak ay maaaring i-claim bilang pag-aari ng iba.
Fault Injection IP Core FPGA Performance at Resource Utilization
Device | Mga ALM | Logic Registers | M20K | |
Pangunahin | Pangalawa | |||
Stratix V A7 | 3,821 | 5,179 | 0 | 0 |
Kasama sa pag-install ng software ng Intel Quartus Prime ang Intel FPGA IP library. Nagbibigay ang library na ito ng maraming kapaki-pakinabang na IP core para sa iyong paggamit ng produksyon nang hindi nangangailangan ng karagdagang lisensya. Ang ilang mga Intel FPGA IP core ay nangangailangan ng pagbili ng isang hiwalay na lisensya para sa paggamit ng produksyon. Binibigyang-daan ka ng Intel FPGA IP Evaluation Mode na suriin ang mga lisensyadong Intel FPGA IP core na ito sa simulation at hardware, bago magpasyang bumili ng ganap na production IP core license. Kailangan mo lang bumili ng buong lisensya sa produksyon para sa mga lisensyadong Intel IP core pagkatapos mong makumpleto ang pagsubok sa hardware at handa nang gamitin ang IP sa produksyon. Ang Intel Quartus Prime software ay nag-i-install ng mga IP core sa mga sumusunod na lokasyon bilang default:
Landas ng Pag-install ng IP Core
Mga Lokasyon ng Pag-install ng IP Core
Lokasyon | Software | Plataporma |
:\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 |
Tandaan: Ang software ng Intel Quartus Prime ay hindi sumusuporta sa mga puwang sa landas ng pag-install.
Pag-customize at Pagbuo ng mga IP Core
Maaari mong i-customize ang mga IP core upang suportahan ang isang malawak na iba't ibang mga application. Binibigyang-daan ka ng Intel Quartus Prime IP Catalog at parameter editor na mabilis na pumili at i-configure ang mga IP core port, feature, at output files.
IP Catalog at Parameter Editor
Ang IP Catalog ay nagpapakita ng mga IP core na magagamit para sa iyong proyekto, kabilang ang Intel FPGA IP at iba pang IP na idinagdag mo sa IP Catalog search path.. Gamitin ang mga sumusunod na feature ng IP Catalog upang mahanap at i-customize ang isang IP core:
- I-filter ang IP Catalog upang Ipakita ang IP para sa aktibong pamilya ng device o Ipakita ang IP para sa lahat ng pamilya ng device. Kung wala kang bukas na proyekto, piliin ang Device Family sa IP Catalog.
- I-type ang field ng Paghahanap upang mahanap ang anumang buo o bahagyang pangalan ng IP core sa IP Catalog.
- I-right-click ang isang IP core name sa IP Catalog upang ipakita ang mga detalye tungkol sa mga sinusuportahang device, upang buksan ang folder ng pag-install ng IP core, at para sa mga link sa dokumentasyon ng IP.
- I-click Maghanap para sa Partner IP to access partner IP information on the web.
Ipo-prompt ka ng editor ng parameter na tumukoy ng pangalan ng variation ng IP, mga opsyonal na port, at output file mga pagpipilian sa henerasyon. Ang editor ng parameter ay bumubuo ng isang nangungunang antas ng Intel Quartus Prime IP file (.ip) para sa isang variation ng IP sa mga proyekto ng Intel Quartus Prime Pro Edition. Ang editor ng parameter ay bumubuo ng isang nangungunang antas ng Quartus IP file (.qip) para sa isang variation ng IP sa mga proyekto ng Intel Quartus Prime Standard Edition. Ang mga ito files ay kumakatawan sa pagkakaiba-iba ng IP sa proyekto, at mag-imbak ng impormasyon ng parameterization.
IP Parameter Editor (Intel Quartus Prime Standard Edition)
IP Core Generation Output (Intel Quartus Prime Pro Edition)
Ang software ng Intel Quartus Prime ay bumubuo ng sumusunod na output file istraktura para sa mga indibidwal na IP core na hindi bahagi ng isang Platform Designer system.
Indibidwal na IP Core Generation Output (Intel Quartus Prime Pro Edition)
- Kung sinusuportahan at pinagana para sa iyong IP core variation.
Output Fileng Intel FPGA IP Generation
File Pangalan | Paglalarawan |
<iyong_ip>.ip | Top-level na variation ng IP file na naglalaman ng parameterization ng isang IP core sa iyong proyekto. Kung ang variation ng IP ay bahagi ng isang Platform Designer system, bubuo din ang editor ng parameter ng isang .qsys file. |
<iyong_ip>.cmp | Ang VHDL Component Declaration (.cmp) file ay isang text file na naglalaman ng lokal na generic at mga kahulugan ng port na ginagamit mo sa disenyo ng VHDL files. |
<iyong_ip>_generation.rpt | IP o Platform Designer generation log file. Nagpapakita ng buod ng mga mensahe sa panahon ng pagbuo ng IP. |
nagpatuloy... |
File Pangalan | Paglalarawan |
<iyong_ip>.qgsimc (Platform Designer system lang) | Pag-cache ng simulation file na naghahambing ng .qsys at .ip files sa kasalukuyang parameterization ng Platform Designer system at IP core. Tinutukoy ng paghahambing na ito kung maaaring laktawan ng Platform Designer ang pagbabagong-buhay ng HDL. |
<iyong_ip>.qgsynth (Platform Designer system lang) | Pag-cache ng synthesis file na naghahambing ng .qsys at .ip files sa kasalukuyang parameterization ng Platform Designer system at IP core. Tinutukoy ng paghahambing na ito kung maaaring laktawan ng Platform Designer ang pagbabagong-buhay ng HDL. |
<iyong_ip>.qip | Naglalaman ng lahat ng impormasyon upang isama at i-compile ang bahagi ng IP. |
<iyong_ip>.csv | Naglalaman ng impormasyon tungkol sa status ng pag-upgrade ng bahagi ng IP. |
.bsf | Isang simbolo na representasyon ng variation ng IP para gamitin sa Block Diagram Files (.bdf). |
<iyong_ip>.spd | Input file na kailangan ng ip-make-simscript upang makabuo ng mga simulation script. Ang .spd file naglalaman ng listahan ng fileBinubuo mo para sa simulation, kasama ang impormasyon tungkol sa mga alaala na sinimulan mo. |
<iyong_ip>.ppf | Ang Pin Planner File Iniimbak ng (.ppf) ang port at mga pagtatalaga ng node para sa mga bahagi ng IP na gagawin mo para gamitin sa Pin Planner. |
<iyong_ip>_bb.v | Gamitin ang Verilog blackbox (_bb.v) file bilang isang walang laman na deklarasyon ng module para gamitin bilang isang blackbox. |
<iyong_ip>_inst.v o _inst.vhd | HDL halampang template ng instantiation. Kopyahin at i-paste ang mga nilalaman nito file sa iyong HDL file upang i-instantiate ang pagkakaiba-iba ng IP. |
<iyong_ip>.regmap | Kung ang IP ay naglalaman ng impormasyon sa pagpaparehistro, ang Intel Quartus Prime software ay bubuo ng .regmap file. Ang .regmap file inilalarawan ang impormasyon ng mapa ng rehistro ng mga interface ng master at alipin. Ito file pandagdag
ang .sopcinfo file sa pamamagitan ng pagbibigay ng mas detalyadong impormasyon sa pagpaparehistro tungkol sa system. Ito file pinapagana ang pagpapakita ng pagpaparehistro views at user na nako-customize na mga istatistika sa System Console. |
<iyong_ip>.svd | Nagbibigay-daan sa mga tool sa Pag-debug ng System ng HPS na view ang mga mapa ng rehistro ng mga peripheral na kumokonekta sa HPS sa loob ng isang Platform Designer system.
Sa panahon ng synthesis, iniimbak ng Intel Quartus Prime software ang .svd files para sa interface ng alipin na makikita ng mga master ng System Console sa .sof file sa session ng pag-debug. Binabasa ng System Console ang seksyong ito, na tinatanong ng Platform Designer para sa impormasyon ng mapa ng pagpaparehistro. Para sa mga alipin ng system, ina-access ng Platform Designer ang mga rehistro ayon sa pangalan. |
<iyong_ip>.v
<iyong_ip>.vhd |
HDL files na nagpapasimula ng bawat submodule o child IP core para sa synthesis o simulation. |
tagapagturo/ | Naglalaman ng msim_setup.tcl script para mag-set up at magpatakbo ng simulation. |
aldec/ | Naglalaman ng script rivierapro_setup.tcl para i-setup at magpatakbo ng simulation. |
/synopsys/vcs
/synopsys/vcsmx |
Naglalaman ng shell script na vcs_setup.sh para mag-set up at magpatakbo ng simulation.
Naglalaman ng shell script na vcsmx_setup.sh at synopsys_sim.setup file para mag-set up at magpatakbo ng simulation. |
/indayog | Naglalaman ng shell script na ncsim_setup.sh at iba pang setup files upang mag-set up at magpatakbo ng isang simulation. |
/xcelium | Naglalaman ng Parallel simulator shell script xcelium_setup.sh at iba pang setup files upang mag-set up at magpatakbo ng isang simulation. |
/submodules | Naglalaman ng HDL files para sa IP core submodule. |
<IP submodule>/ | Ang Platform Designer ay bumubuo ng /synth at /sim na mga sub-directory para sa bawat IP submodule na direktoryo na binubuo ng Platform Designer. |
Functional na Paglalarawan
Gamit ang Fault Injection IP core, ang mga designer ay maaaring magsagawa ng SEFI characterization in-house, sukatin ang mga rate ng FIT ayon sa SEFI characterization, at i-optimize ang mga disenyo upang mabawasan ang epekto ng mga SEU.
Nag-iisang Event Upset Mitigation
Ang mga pinagsama-samang circuit at mga programmable logic device tulad ng mga FPGA ay madaling kapitan sa mga SEU. Ang mga SEU ay random, hindi mapanirang mga kaganapan, na dulot ng dalawang pangunahing pinagmumulan: mga alpha particle at neutron mula sa mga cosmic ray. Ang radyasyon ay maaaring maging sanhi ng alinman sa logic register, naka-embed na memory bit, o isang configuration RAM (CRAM) bit upang i-flip ang estado nito, kaya humahantong sa hindi inaasahang operasyon ng device. Ang Intel Arria 10, Intel Cyclone 10 GX, Arria V, Cyclone V, Stratix V at mas bagong mga device ay may mga sumusunod na kakayahan ng CRAM:
- Error Detection Cyclical Redundance Checking (EDCRC)
- Awtomatikong pagwawasto ng isang sira na CRAM (pag-scrub)
- Kakayahang lumikha ng nakakapinsalang kondisyon ng CRAM (fault injection)
Para sa higit pang impormasyon tungkol sa pagpapagaan ng SEU sa mga Intel FPGA device, sumangguni sa SEU Mitigation chapter sa kaukulang handbook ng device.
Paglalarawan ng Fault Injection IP Pin
Kasama sa Fault Injection IP core ang mga sumusunod na I/O pin.
Fault Injection IP Core I/O Pins
Pangalan ng Pin | Direksyon ng Pin | Paglalarawan ng Pin |
crcerror_pin | input | Input mula sa Error Message Register Unloader Intel FPGA IP (EMR Unloader IP). Iginiit ang signal na ito kapag may natukoy na error sa CRC ng EDCRC ng device. |
emr_data | input | Mga nilalaman ng Error Message Register (EMR). Sumangguni sa naaangkop na handbook ng device para sa mga field ng EMR.
Sumusunod ang input na ito sa signal ng interface ng data ng Avalon Streaming. |
emr_valid | input | Isinasaad na ang mga input ng emr_data ay naglalaman ng wastong data. Ito ay isang wastong signal ng interface ng Avalon Streaming. |
I-reset | input | Input sa pag-reset ng module. Ang pag-reset ay ganap na kinokontrol ng Fault Injection Debugger. |
error_injected | output | Nagsasaad ng error na na-inject sa CRAM gaya ng iniutos sa pamamagitan ng JTAG interface. Ang haba ng oras na iginiit ng signal na ito ay depende sa iyong mga setting ng JTAG TCK at kontrolin ang mga signal ng block. Karaniwan, ang oras ay humigit-kumulang 20 clock cycle ng signal ng TCK. |
error_scrubbed | output | Isinasaad na kumpleto na ang pag-scrub ng device gaya ng iniutos sa pamamagitan ng JTAG interface. Ang haba ng oras na iginiit ng signal na ito ay depende sa iyong mga setting ng JTAG TCK at kontrolin ang mga signal ng block. Karaniwan, ang oras ay humigit-kumulang 20 clock cycle ng signal ng TCK. |
intosc | output | Opsyonal na output. Ginagamit ng Fault Injection IP ang orasan na ito, halimbawaample, upang orasan ang EMR_unloader block. |
Fault Injection IP Pin Diagram
Gamit ang Fault Injection Debugger at Fault Injection IP Core
Gumagana ang Fault Injection Debugger kasama ang Fault Injection IP core. Una, i-instantiate mo ang IP core sa iyong disenyo, i-compile, at i-download ang resultang configuration file sa iyong device. Pagkatapos, patakbuhin mo ang Fault Injection Debugger mula sa loob ng software ng Intel Quartus Prime o mula sa command line upang gayahin ang mga soft error.
- Binibigyang-daan ka ng Fault Injection Debugger na magpatakbo ng mga eksperimento sa fault injection nang interactive o sa pamamagitan ng mga batch command, at nagbibigay-daan sa iyong tukuyin ang mga lohikal na lugar sa iyong disenyo para sa mga fault injection.
- Ang interface ng command-line ay kapaki-pakinabang para sa pagpapatakbo ng debugger sa pamamagitan ng isang script.
Tandaan
Ang Fault Injection Debugger ay nakikipag-ugnayan sa Fault Injection IP core sa pamamagitan ng JTAG interface. Ang Fault Injection IP ay tumatanggap ng mga utos mula sa JTAG interface at mga ulat sa katayuan pabalik sa pamamagitan ng JTAG interface. Ang Fault Injection IP core ay ipinatupad sa soft logic sa iyong device; samakatuwid, dapat mong isaalang-alang ang paggamit ng lohika na ito sa iyong disenyo. Ang isang pamamaraan ay ang pagkilala sa tugon ng iyong disenyo sa SEU sa lab at pagkatapos ay alisin ang IP core mula sa iyong huling na-deploy na disenyo.
Ginagamit mo ang Fault Injection IP core na may mga sumusunod na IP core:
- Ang Error Message Register Unloader IP core, na nagbabasa at nag-iimbak ng data mula sa hardened error detection circuitry sa mga Intel FPGA device.
- (Opsyonal) Ang Advanced na SEU Detection Intel FPGA IP core, na nagkukumpara sa mga lokasyon ng single-bit na error sa isang mapa ng sensitivity sa panahon ng pagpapatakbo ng device upang matukoy kung ang isang malambot na error ay nakakaapekto dito.
Tapos na ang Fault Injection Debuggerview I-block ang Diagram
Mga Tala:
-
Binabaliktad ng Fault Injection IP ang mga piraso ng naka-target na lohika.
-
Ang Fault Injection Debugger at Advanced SEU Detection IP ay gumagamit ng parehong EMR Unloader instance.
-
Opsyonal ang Advanced na SEU Detection IP core.
Kaugnay na Impormasyon
- Tungkol sa SMH Files sa pahina 13
- Tungkol sa EMR Unloader IP Core sa pahina 10
- Tungkol sa Advanced na SEU Detection IP Core sa pahina 11
Instantiating ang Fault Injection IP Core
TANDAAN
Ang Fault Injection IP core ay hindi nangangailangan sa iyo na magtakda ng anumang mga parameter. Para magamit ang IP core, gumawa ng bagong IP instance, isama ito sa iyong Platform Designer (Standard) system, at ikonekta ang mga signal kung naaangkop. Dapat mong gamitin ang Fault Injection IP core kasama ang EMR Unloader IP core. Ang Fault Injection at ang EMR Unloader IP core ay available sa Platform Designer at sa IP Catalog. Opsyonal, maaari mong i-instantiate ang mga ito nang direkta sa iyong disenyo ng RTL, gamit ang Verilog HDL, SystemVerilog, o VHDL.
Tungkol sa EMR Unloader IP Core
Ang EMR Unloader IP core ay nagbibigay ng interface sa EMR, na patuloy na ina-update ng EDCRC ng device na sumusuri sa CRAM bits ng CRC ng device para sa mga soft error.
Example Platform Designer System Kabilang ang Fault Injection IP Core at EMR Unloader IP Core
Example Fault Injection IP Core at EMR Unloader IP Core Block Diagram
Kaugnay na Impormasyon
Mensahe ng Error Register Unloader Intel FPGA IP Core User Guide
Tungkol sa Advanced na SEU Detection IP Core
Gamitin ang Advanced na SEU Detection (ASD) IP core kapag ang SEU tolerance ay isang alalahanin sa disenyo. Dapat mong gamitin ang EMR Unloader IP core na may ASD IP core. Samakatuwid, kung gagamitin mo ang ASD IP at ang Fault Injection IP sa parehong disenyo, dapat nilang ibahagi ang EMR Unloader output sa pamamagitan ng Avalon®-ST splitter component. Ang sumusunod na figure ay nagpapakita ng isang Platform Designer system kung saan ang isang Avalon-ST splitter ay namamahagi ng mga nilalaman ng EMR sa ASD at Fault Injection IP core.
Gamit ang ASD at Fault Injection IP sa Parehong Platform Designer System
Kaugnay na Impormasyon
Advanced na SEU Detection Intel FPGA IP Core User Guide
Pagtukoy sa mga Lugar ng Fault Injection
Maaari mong tukuyin ang mga partikular na rehiyon ng FPGA para sa fault injection gamit ang isang Sensitivity Map Header (.smh) file. Ang SMH file iniimbak ang mga coordinate ng CRAM bits ng device, ang kanilang itinalagang rehiyon (ASD Region), at pagiging kritikal. Sa panahon ng proseso ng disenyo, ginagamit mo ang hierarchy tagging upang lumikha ng rehiyon. Pagkatapos, sa panahon ng compilation, ang Intel Quartus Prime Assembler ay bumubuo ng SMH file. Nililimitahan ng Fault Injection Debugger ang mga error injection sa mga partikular na rehiyon ng device na iyong tinukoy sa SMH file.
Pagsasagawa ng Hierarchy Tagging
Tinutukoy mo ang mga rehiyon ng FPGA para sa pagsubok sa pamamagitan ng pagtatalaga ng Rehiyon ng ASD sa lokasyon. Maaari kang tumukoy ng halaga ng ASD Region para sa anumang bahagi ng iyong hierarchy ng disenyo gamit ang Design Partitions Window.
- Piliin ang Mga Assignment ➤ Design Partitions Window.
- Mag-right click kahit saan sa header row at i-on ang ASD Region para ipakita ang column ng ASD Region (kung hindi pa ito ipinapakita).
- Maglagay ng value mula 0 hanggang 16 para sa anumang partition para italaga ito sa isang partikular na Rehiyon ng ASD.
- Ang ASD region 0 ay nakalaan sa mga hindi nagamit na bahagi ng device. Maaari kang magtalaga ng partition sa rehiyong ito upang tukuyin ito bilang hindi kritikal..
- Ang ASD region 1 ay ang default na rehiyon. Ang lahat ng ginamit na bahagi ng device ay itinalaga sa rehiyong ito maliban kung tahasan mong babaguhin ang pagtatalaga ng ASD Region.
Tungkol sa SMH Files
Ang SMH file naglalaman ng sumusunod na impormasyon:
- Kung hindi ka gumagamit ng hierarchy tagging (ibig sabihin, ang disenyo ay walang tahasang mga pagtatalaga sa Rehiyon ng ASD sa hierarchy ng disenyo), ang SMH file naglilista ng bawat CRAM bit at ipinapahiwatig kung ito ay sensitibo para sa disenyo.
- Kung nagsagawa ka ng hierarchy tagging at binago ang default na ASD Region assignment, ang SMH file naglilista ng bawat CRAM bit at ito ay nakatalaga sa rehiyon ng ASD.
Maaaring limitahan ng Fault Injection Debugger ang mga iniksyon sa isa o higit pang tinukoy na mga rehiyon. Upang idirekta ang Assembler na bumuo ng isang SMH file:
- Piliin ang Mga Assignment ➤ Device ➤ Device at Pin Options ➤ Error Detection CRC.
- I-on ang Generate SEU sensitivity map file (.smh) na opsyon.
Gamit ang Fault Injection Debugger
TANDAAN
Para magamit ang Fault Injection Debugger, kumonekta ka sa iyong device sa pamamagitan ng JTAG interface. Pagkatapos, i-configure ang device at magsagawa ng fault injection. Para ilunsad ang Fault Injection Debugger, piliin ang Tools ➤ Fault Injection Debugger sa Intel Quartus Prime software. Ang pag-configure o pagprograma ng device ay katulad ng pamamaraang ginagamit para sa Programmer o Signal Tap Logic Analyzer.
Debugger ng Fault Injection
Upang i-configure ang iyong JTAG kadena:
- I-click ang Hardware Setup. Ipinapakita ng tool ang programming hardware na konektado sa iyong computer.
- Piliin ang programming hardware na gusto mong gamitin.
- I-click ang Isara.
- I-click ang Auto Detect, na pumupuno sa chain ng device ng mga programmable device na makikita sa JTAG kadena.
Kaugnay na Impormasyon
Tampok na Naka-target na Fault Injection sa pahina 21
Mga Kinakailangan sa Hardware at Software
Ang sumusunod na hardware at software ay kinakailangan para magamit ang Fault Injection Debugger:
- FEATURE line sa iyong lisensya ng Intel FPGA na nagbibigay-daan sa Fault Injection IP core. Para sa karagdagang impormasyon, makipag-ugnayan sa iyong lokal na kinatawan ng pagbebenta ng Intel FPGA.
- I-download ang cable (Intel FPGA Download Cable, Intel FPGA Download Cable II, , o II).
- Intel FPGA development kit o user-designed board na may JTAG koneksyon sa device na nasa ilalim ng pagsubok.
- (Opsyonal) FEATURE line sa iyong lisensya ng Intel FPGA na nagbibigay-daan sa Advanced na SEU Detection IP core.
Pag-configure ng Iyong Device at ang Fault Injection Debugger
Gumagamit ang Fault Injection Debugger ng .sof at (opsyonal) ng Sensitivity Map Header (.smh) file. Ang Software Object File Kino-configure ni (.sof) ang FPGA. Ang .smh file tumutukoy sa sensitivity ng CRAM bits sa device. Kung hindi ka magbibigay ng .smh file, ang Fault Injection Debugger ay nag-iinject ng mga fault nang random sa buong CRAM bits. Upang tukuyin ang isang .sof:
- Piliin ang FPGA na gusto mong i-configure sa kahon ng chain ng Device.
- I-click ang Piliin File.
- Mag-navigate sa .sof at i-click ang OK. Binabasa ng Fault Injection Debugger ang .sof.
- (Opsyonal) Piliin ang SMH file.
Kung hindi mo tinukoy ang isang SMH file, ang Fault Injection Debugger ay random na nag-inject ng mga fault sa buong device. Kung tinukoy mo ang isang SMH file, maaari mong paghigpitan ang mga iniksyon sa mga ginamit na bahagi ng iyong device.- I-right-click ang device sa kahon ng Device chain at pagkatapos ay i-click ang Piliin ang SMH File.
- Piliin ang iyong SMH file.
- I-click ang OK.
- I-on ang Program/Configure.
- I-click ang Start.
Kino-configure ng Fault Injection Debugger ang device gamit ang .sof.
Menu ng Konteksto para sa Pagpili ng SMH File
Pinipigilan ang mga Rehiyon para sa Fault Injection
Pagkatapos mag-load ng SMH file, maaari mong idirekta ang Fault Injection Debugger upang gumana sa mga partikular na rehiyon ng ASD lamang. Upang tukuyin ang (mga) rehiyon ng ASD kung saan mag-iniksyon ng mga pagkakamali:
- I-right-click ang FPGA sa kahon ng chain ng Device, at i-click ang Ipakita ang Mapa ng Sensitivity ng Device.
- Piliin ang (mga) rehiyon ng ASD para sa fault injection.
Mapa ng Sensitivity ng Device Viewer
Pagtukoy sa Mga Uri ng Error
Maaari mong tukuyin ang iba't ibang uri ng mga error para sa iniksyon.
- Mga solong error (SE)
- Double-adjacent error (DAE)
- Mga hindi naitatama na multi-bit na error (EMBE)
Ang mga Intel FPGA device ay maaaring mag-self-correct ng single at double-adjacent na mga error kung pinagana ang scrubbing feature. Hindi maitatama ng mga Intel FPGA device ang mga multi-bit na error. Sumangguni sa kabanata sa pagpapagaan ng mga SEU para sa higit pang impormasyon tungkol sa pag-debug sa mga error na ito. Maaari mong tukuyin ang pinaghalong mga pagkakamali na dapat iturok at ang agwat ng oras ng pag-iniksyon. Upang tukuyin ang agwat ng oras ng pag-iniksyon:
- Sa Fault Injection Debugger, piliin ang Tools ➤ Options.
- I-drag ang pulang controller sa halo ng mga error. Bilang kahalili, maaari mong tukuyin ang halo ayon sa numero.
- Tukuyin ang oras ng agwat ng Injection.
- I-click ang OK.
Figure 12. Pagtukoy sa Mixture ng SEU Fault Types
Kaugnay na Impormasyon Pagbabawas ng Pag-iisang Pangyayari
Mga Error sa Pag-iniksyon
Maaari kang mag-inject ng mga error sa ilang mga mode:
- Mag-inject ng isang error sa command
- Mag-inject ng maraming error sa command
- Mag-inject ng mga error hanggang sa iniutos na huminto
Upang mag-inject ng mga fault na ito:
- I-on ang opsyong Inject Fault.
- Piliin kung gusto mong magpatakbo ng error injection para sa ilang mga pag-ulit o hanggang sa tumigil:
- Kung pipiliin mong tumakbo hanggang huminto, ang Fault Injection Debugger ay nag-iinject ng mga error sa pagitan na tinukoy sa Tools ➤ Options dialog box.
- Kung gusto mong magpatakbo ng error injection para sa isang partikular na bilang ng mga pag-ulit, ilagay ang numero.
- I-click ang Start.
Tandaan: Ang Fault Injection Debugger ay tumatakbo para sa tinukoy na bilang ng mga pag-ulit o hanggang sa huminto. Ang window ng Intel Quartus Prime Messages ay nagpapakita ng mga mensahe tungkol sa mga error na ini-inject. Para sa karagdagang impormasyon sa mga na-inject na pagkakamali, i-click ang Basahin ang EMR. Binabasa ng Fault Injection Debugger ang EMR ng device at ipinapakita ang mga nilalaman sa window ng Mga Mensahe.
Intel Quartus Prime Error Injection at Mga Mensahe sa Nilalaman ng EMR
Mga Error sa Pagre-record
Maaari mong i-record ang lokasyon ng anumang injected na fault sa pamamagitan ng pagpuna sa mga parameter na iniulat sa window ng Intel Quartus Prime Messages. Kung, para sa exampSa gayon, ang isang injected na kasalanan ay nagreresulta sa pag-uugali na gusto mong i-replay, maaari mong i-target ang lokasyong iyon para sa iniksyon. Nagsasagawa ka ng naka-target na iniksyon gamit ang interface ng command line ng Fault Injection Debugger.
Pag-clear ng Mga Na-inject na Error
Para ibalik ang normal na function ng FPGA, i-click ang Scrub. Kapag nag-scrub ka ng error, ginagamit ang mga function ng EDCRC ng device para itama ang mga error. Ang mekanismo ng scrub ay katulad ng ginagamit sa panahon ng pagpapatakbo ng device.
Interface ng Command-Line
Maaari mong patakbuhin ang Fault Injection Debugger sa command line gamit ang quartus_fid executable, na kapaki-pakinabang kung gusto mong magsagawa ng fault injection mula sa isang script.
Talahanayan 5. Mga Pangangatwiran ng Command line para sa Fault Injection
Maikling Argumento | Mahabang Argumento | Paglalarawan |
c | kable | Tukuyin ang programming hardware o cable. (Kailangan) |
i | index | Tukuyin ang aktibong device para mag-inject ng fault. (Kailangan) |
n | numero | Tukuyin ang bilang ng mga error na i-inject. Ang default na halaga ay
1. (Opsyonal) |
t | oras | Oras ng agwat sa pagitan ng mga iniksyon. (Opsyonal) |
Tandaan: Gumamit ng quartus_fid –help to view lahat ng magagamit na mga pagpipilian. Ang sumusunod na code ay nagbibigay ng exampgamit ang interface ng commandline ng Fault Injection Debugger.
################################################
- # Alamin kung aling mga USB cable ang available para sa pagkakataong ito
- # Ipinapakita ng resulta na available ang isang cable, pinangalanang "USB-Blaster" #
- $ quartus_fid –listahan . . .
- Impormasyon: Utos: quartus_fid –list
- USB-Blaster sa sj-sng-z4 [USB-0] Impormasyon: Ang Intel Quartus Prime 64-Bit Fault Injection Debugger ay matagumpay. 0 error, 0 babala
- ################################################
- # Hanapin kung aling mga device ang available sa USB-Blaster cable
- # Ang resulta ay nagpapakita ng dalawang device: isang Stratix V A7, at isang MAX V CPLD. #
- $ quartus_fid –cable USB-Blaster -a
- Impormasyon: Utos: quartus_fid –cable=USB-Blaster -a
- Impormasyon (208809): Gamit ang programming cable na “USB-Blaster sa sj-sng-z4 [USB-0]”
- USB-Blaster sa sj-sng-z4 [USB-0]
- 029030DD 5SGXEA7H(1|2|3)/5SGXEA7K1/..
- 020A40DD 5M2210Z/EPM2210
- Impormasyon: Ang Intel Quartus Prime 64-Bit Fault Injection Debugger ay matagumpay.
- 0 error, 0 babala
- ################################################
- # Programa ang Stratix V device
- # Ang –index na opsyon ay tumutukoy sa mga operasyong isinagawa sa isang konektadong aparato.
- # “=svgx.sof” ay nag-uugnay sa isang .sof file gamit ang device
- Ang ibig sabihin ng # "#p" ay i-program ang device #
- $ quartus_fid –cable USB-Blaster –index “@1=svgx.sof#p” . . .
- Impormasyon (209016): Pag-configure ng index ng device 1
- Impormasyon (209017): Ang Device 1 ay naglalaman ng JTAG ID code 0x029030DD
- Impormasyon (209007): Nagtagumpay ang pag-configure — 1 (mga) device ang na-configure
- Impormasyon (209011): Matagumpay na naisagawa ang (mga) operasyon
- Impormasyon (208551): Signature ng program sa device 1.
- Impormasyon: Ang Intel Quartus Prime 64-Bit Fault Injection Debugger ay matagumpay.
- 0 error, 0 babala
- ################################################
- # Mag-inject ng fault sa device.
- # Ang #i operator ay nagpapahiwatig na mag-inject ng mga pagkakamali
- # -n 3 ay nagpapahiwatig na mag-inject ng 3 faults #
- $ quartus_fid –cable USB-Blaster –index “@1=svgx.sof#i” -n 3
- Impormasyon: Command: quartus_fid –cable=USB-Blaster –index=@1=svgx.sof#i -n 3
- Impormasyon (208809): Gamit ang programming cable na “USB-Blaster sa sj-sng-z4 [USB-0]”
- Impormasyon (208521): Nag-inject ng 3 (mga) error sa (mga) device
- Impormasyon: Ang Intel Quartus Prime 64-Bit Fault Injection Debugger ay matagumpay.
- 0 error, 0 babala
- ################################################
- # Interactive na Mode.
- # Ang paggamit ng #i operation na may -n 0 ay naglalagay ng debugger sa interactive na mode.
- # Tandaan na 3 mga pagkakamali ang na-inject sa nakaraang session;
- Binabasa ng # "E" ang mga fault na kasalukuyang nasa EMR Unloader IP core. #
- $ quartus_fid –cable USB-Blaster –index “@1=svgx.sof#i” -n 0
- Impormasyon: Command: quartus_fid –cable=USB-Blaster –index=@1=svgx.sof#i -n 0
- Impormasyon (208809): Gamit ang programming cable na “USB-Blaster sa sj-sng-z4 [USB-0]”
- Ipasok ang :
- 'F' para mag-inject ng kasalanan
- 'E' para basahin ang EMR
- 'S' para mag-scrub ng (mga) error
- 'Q' na huminto sa E
- Impormasyon (208540): Binabasa ang EMR array
- Impormasyon (208544): 3 (mga) error sa frame ang nakita sa device 1.
- Impormasyon (208545): Error #1 : Isang error sa frame 0x1028 at bit 0x21EA.
- Impormasyon (10914): Error #2 : Hindi naitatama na multi-bit na error sa frame 0x1116.
- Impormasyon (208545): Error #3 : Isang error sa frame 0x1848 at bit 0x128C.
- 'F' para mag-inject ng kasalanan
- 'E' para basahin ang EMR
- 'S' para mag-scrub ng (mga) error
- 'Q' para umalis sa Q
- impormasyon: Matagumpay ang Intel Quartus Prime 64-Bit Fault Injection Debugger. 0 error, 0 babala
- impormasyon: Pinakamataas na virtual memory: 1522 megabytes
- impormasyon: Natapos ang pagproseso: Lun Nob 3 18:50:00 2014
- impormasyon: Lumipas na oras: 00:00:29
- impormasyon: Kabuuang oras ng CPU (sa lahat ng mga processor): 00:00:13
Tampok na Naka-target na Fault Injection
Tandaan
Ang Fault Injection Debugger ay nag-inject ng mga fault sa FPGA nang random. Gayunpaman, binibigyang-daan ka ng feature na Naka-target na Fault Injection na mag-inject ng mga fault sa mga target na lokasyon sa CRAM. Maaaring maging kapaki-pakinabang ang operasyong ito, halimbawaample, kung napansin mo ang isang kaganapan sa SEU at gusto mong subukan ang FPGA o tugon ng system sa parehong kaganapan pagkatapos baguhin ang isang diskarte sa pagbawi. Ang tampok na Targeted Fault Injection ay magagamit lamang mula sa interface ng command line. Maaari mong tukuyin na ang mga error ay na-injected mula sa command line o sa prompt mode. Kaugnay na Impormasyon
AN 539: Test Methodology o Error Detection and Recovery gamit ang CRC sa Intel FPGA Devices
Pagtukoy ng Listahan ng Error Mula sa Command Line
Ang tampok na Targeted Fault Injection ay nagbibigay-daan sa iyo na tumukoy ng isang listahan ng error mula sa command line, tulad ng ipinapakita sa sumusunod na example: c:\Users\sng> quartus_fid -c 1 – i “@1= svgx.sof#i ” -n 2 -user=”@1= 0x2274 0x05EF 0x2264 0x0500″ Kung saan: c 1 ay nagpapahiwatig na ang FPGA ay kontrolado sa pamamagitan ng unang cable sa iyong computer. i “@1= six.sof#i ” ay nagpapahiwatig na ang unang aparato sa chain ay na-load ng bagay file svgx.sof at masusuklian ng mga pagkakamali. Ang n 2 ay nagpapahiwatig na ang dalawang pagkakamali ay iturok. user=”@1= 0x2274 0x05EF 0x2264 0x0500” ay isang listahan na tinukoy ng user ng mga fault na ilalagay. Sa ex na itoampNgayon, ang device 1 ay may dalawang fault: sa frame 0x2274, bit 0x05EF at sa frame 0x2264, bit 0x0500.
Pagtukoy ng Listahan ng Error Mula sa Prompt Mode
Maaari mong patakbuhin ang feature na Naka-target na Fault Injection nang interactive sa pamamagitan ng pagtukoy sa bilang ng mga fault na magiging 0 (-n 0). Ang Fault Injection Debugger ay nagpapakita ng mga prompt mode command at ang kanilang mga paglalarawan.
Prompt Mode Command | Paglalarawan |
F | Mag-inject ng kasalanan |
E | Basahin ang EMR |
S | Mga error sa pag-scrub |
Q | quit |
Sa prompt mode, maaari kang mag-isyu ng F command nang mag-isa upang mag-iniksyon ng isang pagkakamali sa isang random na lokasyon sa device. Sa sumusunod na exampgamit ang F command sa prompt mode, tatlong error ang na-inject. F #3 0x12 0x34 0x56 0x78 * 0x9A 0xBC +
- Error 1 – Isang bit na error sa frame 0x12, bit 0x34
- Error 2 – Hindi naitatama na error sa frame 0x56, bit 0x78 (ang * ay nagpapahiwatig ng multi-bit na error)
- Error 3 – Double-adjacent error sa frame 0x9A, bit 0xBC (a + ay nagpapahiwatig ng double bit error)
F 0x12 0x34 0x56 0x78 * Isang (default) na error ang na-inject: Error 1 – Single bit error sa frame 0x12, bit 0x34. Ang mga lokasyon pagkatapos ng unang frame/bit na lokasyon ay binabalewala. F #3 0x12 0x34 0x56 0x78 * 0x9A 0xBC + 0xDE 0x00
Tatlong error ang na-inject:
- Error 1 – Isang bit na error sa frame 0x12, bit 0x34
- Error 2 – Hindi naitatama na error sa frame 0x56, bit 0x78
- Error 3 – Double-adjacent error sa frame 0x9A, bit 0xBC
- Ang mga lokasyon pagkatapos ng unang 3 pares ng frame/bit ay binabalewala
Pagtukoy sa Mga Lokasyon ng CRAM Bit
Tandaan:
Kapag naka-detect ang Fault Injection Debugger ng CRAM EDCRC error, ang Error Message Register (EMR) ay naglalaman ng syndrome, frame number, bit location, at uri ng error (single, double, o multi-bit) ng nakitang CRAM error. Sa panahon ng pagsubok ng system, i-save ang mga nilalaman ng EMR na iniulat ng Fault Injection Debugger kapag nakakita ka ng EDCRC fault. Gamit ang mga naitala na nilalaman ng EMR, maaari mong ibigay ang frame at bit na mga numero sa Fault Injection Debugger upang i-replay ang mga error na nabanggit sa panahon ng pagsubok ng system, upang higit pang magdisenyo, at makilala ang isang tugon sa pagbawi ng system sa error na iyon.
Kaugnay na Impormasyon
AN 539: Test Methodology o Error Detection at Recovery gamit ang CRC sa Intel FPGA Devices
Mga Advanced na Opsyon sa Command-Line: ASD Regions at Error Type Weighting
Maaari mong gamitin ang interface ng command-line ng Fault Injection Debugger upang mag-inject ng mga error sa mga rehiyon ng ASD at timbangin ang mga uri ng error. Una, tinukoy mo ang halo ng mga uri ng error (single bit, double adjacent, at multi-bit na hindi naitatama) gamit ang –weight . . opsyon. Para kay exampAt, para sa isang halo ng 50% solong error, 30% dobleng katabi na error, at 20% multi-bit na hindi naitatama na mga error, gamitin ang opsyon –weight=50.30.20. Pagkatapos, para mag-target ng rehiyon ng ASD, gamitin ang opsyong -smh para isama ang SMH file at ipahiwatig ang rehiyon ng ASD na ita-target. Para kay example: $ quartus_fid –cable=USB-BlasterII –index “@1=svgx.sof#pi” –weight=100.0.0 –smh=”@1=svgx.smh#2″ –number=30
Itong exampang utos:
- I-program ang device at nag-inject ng mga fault (pi string)
- Nag-inject ng 100% single-bit faults (100.0.0)
- Ini-inject lamang sa ASD_REGION 2 (ipinahiwatig ng #2)
- Nag-inject ng 30 faults
Fault Injection IP Core User Guide Archives
IP Core na Bersyon | Gabay sa Gumagamit |
18.0 | Fault Injection Intel FPGA IP Core User Guide |
17.1 | Gabay sa Gumagamit ng Intel FPGA Fault Injection IP Core |
16.1 | Altera Fault Injection IP Core User Guide |
15.1 | Altera Fault Injection IP Core User Guide |
Kung ang isang IP core na bersyon ay hindi nakalista, ang gabay sa gumagamit para sa nakaraang IP core na bersyon ay nalalapat.
Kasaysayan ng Pagbabago ng Dokumento para sa Fault Injection IP Core User Guide
Bersyon ng Dokumento | Bersyon ng Intel Quartus Prime | Mga pagbabago |
2019.07.09 | 18.1 | Na-update ang Paglalarawan ng Fault Injection IP Pin paksa upang linawin ang mga signal ng I-reset, error_injected, at error_scrubbed. |
2018.05.16 | 18.0 | • Idinagdag ang mga sumusunod na paksa mula sa Handbook ng Intel Quartus Prime Pro Edition:
— Pagtukoy sa mga Lugar ng Fault Injection at mga subtopic. — Gamit ang Fault Injection Debugger at mga subtopic. — Interface ng Command-Line at mga subtopic. • Pinalitan ang pangalan ng Intel FPGA Fault Injection IP core ng Fault Injection Intel FPGA IP. |
Petsa | Bersyon | Mga pagbabago |
2017.11.06 | 17.1 | • Na-rebrand bilang Intel.
• Nagdagdag ng suporta sa Intel Cyclone 10 GX device. |
2016.10.31 | 16.1 | Na-update na suporta sa device. |
2015.12.15 | 15.1 | • Binago ang Quartus II sa Quartus Prime software.
• Nakapirming link na nauugnay sa pagre-refer sa sarili. |
2015.05.04 | 15.0 | Paunang paglabas. |
Mga Dokumento / Mga Mapagkukunan
![]() |
intel UG-01173 Fault Injection FPGA IP Core [pdf] Gabay sa Gumagamit UG-01173 Fault Injection FPGA IP Core, UG-01173, Fault Injection FPGA IP Core, Injection c, Injection FPGA IP Core |