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

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

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

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)intel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-2

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)intel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-3

  • 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

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

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 Diagramintel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-5

Mga Tala:

  1. Binabaliktad ng Fault Injection IP ang mga piraso ng naka-target na lohika.
  2. Ang Fault Injection Debugger at Advanced SEU Detection IP ay gumagamit ng parehong EMR Unloader instance.
  3. 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 Coreintel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-6

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

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

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 Systemintel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-8

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.

  1. Piliin ang Mga Assignment ➤ Design Partitions Window.
  2. 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).
  3. 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

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

Upang i-configure ang iyong JTAG kadena:

  1. I-click ang Hardware Setup. Ipinapakita ng tool ang programming hardware na konektado sa iyong computer.
  2. Piliin ang programming hardware na gusto mong gamitin.
  3. I-click ang Isara.
  4. 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:

  1. Piliin ang FPGA na gusto mong i-configure sa kahon ng chain ng Device.
  2. I-click ang Piliin File.
  3. Mag-navigate sa .sof at i-click ang OK. Binabasa ng Fault Injection Debugger ang .sof.
  4. (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.
  5. I-on ang Program/Configure.
  6. I-click ang Start.

Kino-configure ng Fault Injection Debugger ang device gamit ang .sof.

Menu ng Konteksto para sa Pagpili ng SMH File

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

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:

  1. I-right-click ang FPGA sa kahon ng chain ng Device, at i-click ang Ipakita ang Mapa ng Sensitivity ng Device.
  2. Piliin ang (mga) rehiyon ng ASD para sa fault injection.

Mapa ng Sensitivity ng Device Viewer

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

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:

  1. Sa Fault Injection Debugger, piliin ang Tools ➤ Options.
  2. I-drag ang pulang controller sa halo ng mga error. Bilang kahalili, maaari mong tukuyin ang halo ayon sa numero.
  3. Tukuyin ang oras ng agwat ng Injection.
  4. I-click ang OK.

Figure 12. Pagtukoy sa Mixture ng SEU Fault Typesintel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-12

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:

  1. I-on ang opsyong Inject Fault.
  2. 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.
  3. 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

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

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
    1. 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]”
    1. 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

Mga sanggunian

Mag-iwan ng komento

Ang iyong email address ay hindi maipa-publish. Ang mga kinakailangang field ay minarkahan *