intel-logo

intel UG-01173 दोष इंजेक्शन FPGA IP कोर

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

दोष इंजेक्शन Intel® FPGA IP कोर प्रयोगकर्ता गाइड

त्रुटि इंजेक्शन Intel® FPGA IP कोरले FPGA उपकरणको कन्फिगरेसन RAM (CRAM) मा त्रुटिहरू इन्जेक्ट गर्छ। यो प्रक्रियाले एकल घटना अपसेटहरू (SEUs) को कारणले सामान्य सञ्चालनको समयमा हुन सक्ने नरम त्रुटिहरू अनुकरण गर्दछ। SEUs दुर्लभ घटनाहरू हुन् र त्यसैले परीक्षण गर्न गाह्रो छ। तपाईंले आफ्नो डिजाइनमा फल्ट इन्जेक्शन आईपी कोर इन्स्ट्यान्टिएट गरेपछि र आफ्नो यन्त्र कन्फिगर गरेपछि, तपाईंले FPGA मा जानाजानी त्रुटिहरू उत्पन्न गर्न Intel Quartus® Prime Fault Injection Debugger उपकरण प्रयोग गर्न सक्नुहुन्छ यी त्रुटिहरूमा प्रणालीको प्रतिक्रिया परीक्षण गर्न।

सम्बन्धित जानकारी

  • एकल घटना अपसेटहरू
  • AN 737: Intel Arria 10 उपकरणहरूमा SEU पत्ता लगाउने र रिकभरी

सुविधाहरू

  • तपाईंलाई एकल घटना कार्यात्मक अवरोधहरू (SEFI) कम गर्न प्रणाली प्रतिक्रिया मूल्याङ्कन गर्न अनुमति दिन्छ।
  • सम्पूर्ण प्रणाली बीम परीक्षणको आवश्यकतालाई हटाउँदै, तपाइँलाई SEFI क्यारेक्टराइजेसन इन-हाउस प्रदर्शन गर्न अनुमति दिन्छ। यसको सट्टा, तपाईंले यन्त्र स्तरमा समय (FIT)/Mb मापनमा विफलताहरूमा बीम परीक्षण सीमित गर्न सक्नुहुन्छ।
  • तपाईंको डिजाइन वास्तुकलासँग सान्दर्भिक SEFI विशेषता अनुसार FIT दरहरू मापन गर्नुहोस्। तपाईं अनियमित रूपमा सम्पूर्ण यन्त्रमा दोष इंजेक्शनहरू वितरण गर्न सक्नुहुन्छ, वा परीक्षणको गति बढाउन विशेष कार्यात्मक क्षेत्रहरूमा सीमित गर्न सक्नुहुन्छ।
  • एकल घटना अपसेट (SEU) को कारणले गर्दा अवरोध कम गर्न आफ्नो डिजाइन अप्टिमाइज गर्नुहोस्।

उपकरण समर्थन

फल्ट इंजेक्शन आईपी कोरले Intel Arria® 10, Intel Cyclone® 10 GX र Stratix® V पारिवारिक उपकरणहरूलाई समर्थन गर्दछ। साइक्लोन वी परिवारले अर्डरिङ कोडमा -SC प्रत्यय भएका यन्त्रहरूमा फल्ट इन्जेक्शन समर्थन गर्दछ। -SC प्रत्यय चक्रवात V उपकरणहरूमा जानकारी अर्डर गर्नको लागि आफ्नो स्थानीय बिक्री प्रतिनिधिलाई सम्पर्क गर्नुहोस्।

स्रोतको उपयोग र कार्यसम्पादन
Intel Quartus प्राइम सफ्टवेयरले Stratix V A7 FPGA को लागि निम्न स्रोत अनुमान उत्पन्न गर्दछ। अन्य उपकरणहरूको लागि परिणाम समान छन्।

इंटेल कर्पोरेशन। सबै अधिकार सुरक्षित। Intel, Intel लोगो, र अन्य Intel मार्कहरू Intel Corporation वा यसको सहायक कम्पनीहरूको ट्रेडमार्क हुन्। Intel ले आफ्नो FPGA र अर्धचालक उत्पादनहरूको प्रदर्शनलाई Intel को मानक वारेन्टी अनुसार हालको विशिष्टताहरूमा वारेन्टी दिन्छ, तर सूचना बिना कुनै पनि समयमा कुनै पनि उत्पादन र सेवाहरूमा परिवर्तन गर्ने अधिकार सुरक्षित गर्दछ। Intel ले यहाँ वर्णन गरिएको कुनै पनि जानकारी, उत्पादन, वा सेवाको आवेदन वा प्रयोगबाट उत्पन्न हुने कुनै जिम्मेवारी वा दायित्व ग्रहण गर्दैन बाहेक Intel द्वारा लिखित रूपमा स्पष्ट रूपमा सहमत भए। Intel ग्राहकहरूलाई कुनै पनि प्रकाशित जानकारीमा भर पर्नु अघि र उत्पादन वा सेवाहरूको लागि अर्डर राख्नु अघि उपकरण विशिष्टताहरूको नवीनतम संस्करण प्राप्त गर्न सल्लाह दिइन्छ। *अन्य नाम र ब्रान्डहरू अरूको सम्पत्तिको रूपमा दाबी गर्न सकिन्छ।

दोष इंजेक्शन आईपी कोर FPGA प्रदर्शन र स्रोत उपयोग

यन्त्र ALMs तर्क दर्ताहरू M20K
प्राथमिक माध्यमिक
Stratix V A7 3,821 5,179 0 0

Intel Quartus प्राइम सफ्टवेयर स्थापनाले Intel FPGA IP लाइब्रेरी समावेश गर्दछ। यस पुस्तकालयले अतिरिक्त इजाजतपत्रको आवश्यकता बिना तपाईंको उत्पादन प्रयोगको लागि धेरै उपयोगी आईपी कोरहरू प्रदान गर्दछ। केही Intel FPGA IP कोर उत्पादन प्रयोगको लागि छुट्टै इजाजतपत्र खरिद गर्न आवश्यक छ। Intel FPGA IP मूल्याङ्कन मोडले तपाईंलाई पूर्ण उत्पादन IP कोर इजाजतपत्र खरिद गर्ने निर्णय गर्नु अघि सिमुलेशन र हार्डवेयरमा यी इजाजतपत्र प्राप्त Intel FPGA IP कोरहरूको मूल्याङ्कन गर्न अनुमति दिन्छ। तपाईंले हार्डवेयर परीक्षण पूरा गरेपछि र उत्पादनमा आईपी प्रयोग गर्न तयार भएपछि इजाजतपत्र प्राप्त इंटेल आईपी कोरहरूको लागि पूर्ण उत्पादन इजाजतपत्र खरिद गर्न आवश्यक छ। Intel Quartus प्राइम सफ्टवेयरले पूर्वनिर्धारित रूपमा निम्न स्थानहरूमा IP कोरहरू स्थापना गर्दछ:

आईपी ​​कोर स्थापना पथ

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

आईपी ​​कोर स्थापना स्थानहरू

स्थान सफ्टवेयर प्लेटफर्म
:\intelFPGA_pro\quartus\ip\altera इंटेल क्वार्टस प्राइम प्रो संस्करण विन्डोज *
:\intelFPGA\quartus\ip\altera इंटेल क्वार्टस प्राइम मानक संस्करण विन्डोज
:/intelFPGA_pro/quartus/ip/altera इंटेल क्वार्टस प्राइम प्रो संस्करण लिनक्स *
:/intelFPGA/quartus/ip/altera इंटेल क्वार्टस प्राइम मानक संस्करण लिनक्स

नोट: Intel Quartus प्राइम सफ्टवेयरले स्थापना मार्गमा खाली ठाउँहरूलाई समर्थन गर्दैन।

अनुकूलन र आईपी कोर उत्पन्न
तपाईं अनुप्रयोगहरूको एक विस्तृत विविधता समर्थन गर्न आईपी कोर अनुकूलन गर्न सक्नुहुन्छ। इंटेल क्वार्टस प्राइम आईपी क्याटलग र प्यारामिटर सम्पादकले तपाईंलाई आईपी कोर पोर्टहरू, सुविधाहरू, र आउटपुट छिट्टै चयन गर्न र कन्फिगर गर्न अनुमति दिन्छ। files.

आईपी ​​क्याटलग र प्यारामिटर सम्पादक
आईपी ​​क्याटलगले तपाइँको परियोजनाको लागि उपलब्ध आईपी कोरहरू प्रदर्शन गर्दछ, जसमा तपाइँले आईपी क्याटलग खोज मार्गमा थप्नुभएको इंटेल FPGA आईपी र अन्य आईपी समावेश गर्दछ। आईपी कोर पत्ता लगाउन र अनुकूलन गर्न आईपी क्याटलगका निम्न सुविधाहरू प्रयोग गर्नुहोस्:

  • सक्रिय यन्त्र परिवारको लागि आईपी देखाउन आईपी क्याटलग फिल्टर गर्नुहोस् वा सबै उपकरण परिवारहरूको लागि आईपी देखाउनुहोस्। यदि तपाइँसँग कुनै परियोजना खुला छैन भने, आईपी क्याटलगमा उपकरण परिवार चयन गर्नुहोस्।
  • IP क्याटलगमा कुनै पनि पूर्ण वा आंशिक IP कोर नाम पत्ता लगाउन खोज क्षेत्रमा टाइप गर्नुहोस्।
  • समर्थित यन्त्रहरू बारे विवरणहरू प्रदर्शन गर्न, IP कोरको स्थापना फोल्डर खोल्न, र IP कागजातहरूमा लिङ्कहरूको लागि IP क्याटलगमा IP कोर नाममा दायाँ-क्लिक गर्नुहोस्।
  • क्लिक गर्नुहोस् खोज्नुहोस् Partner IP to access partner IP information on the web.

प्यारामिटर सम्पादकले तपाईंलाई IP भिन्नता नाम, वैकल्पिक पोर्टहरू, र आउटपुट निर्दिष्ट गर्न संकेत गर्दछ। file पुस्ता विकल्प। प्यारामिटर सम्पादकले शीर्ष-स्तर Intel Quartus प्राइम आईपी उत्पन्न गर्दछ file (.ip) Intel Quartus Prime Pro Edition परियोजनाहरूमा IP भिन्नताका लागि। प्यारामिटर सम्पादकले शीर्ष-स्तर क्वार्टस आईपी उत्पन्न गर्दछ file (.qip) Intel Quartus Prime Standard Edition परियोजनाहरूमा IP भिन्नताका लागि। यी files ले परियोजनामा ​​IP भिन्नता प्रतिनिधित्व गर्दछ, र प्यारामिटराइजेशन जानकारी भण्डारण गर्दछ।

आईपी ​​प्यारामिटर सम्पादक (इन्टेल क्वार्टस प्राइम मानक संस्करण)intel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-2

आईपी ​​कोर जेनेरेशन आउटपुट (इन्टेल क्वार्टस प्राइम प्रो संस्करण)

Intel Quartus प्राइम सफ्टवेयरले निम्न आउटपुट उत्पन्न गर्दछ file व्यक्तिगत IP कोरहरूको लागि संरचना जुन प्लेटफर्म डिजाइनर प्रणालीको भाग होइन।

व्यक्तिगत आईपी कोर जेनेरेसन आउटपुट (इन्टेल क्वार्टस प्राइम प्रो संस्करण)intel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-3

  • यदि तपाईंको IP कोर भिन्नताको लागि समर्थित र सक्षम गरिएको छ।

आउटपुट FileIntel FPGA IP जेनेरेसनको s

File नाम विवरण
<your_ip> आईपी शीर्ष-स्तर IP भिन्नता file जसमा तपाईको प्रोजेक्टमा IP कोरको प्यारामिटराइजेशन हुन्छ। यदि IP भिन्नता प्लेटफर्म डिजाइनर प्रणालीको अंश हो भने, प्यारामिटर सम्पादकले पनि .qsys उत्पन्न गर्दछ। file.
<your_ip> cmp VHDL कम्पोनेन्ट घोषणा (.cmp) file पाठ छ file जसमा स्थानीय सामान्य र पोर्ट परिभाषाहरू छन् जुन तपाईंले VHDL डिजाइनमा प्रयोग गर्नुहुन्छ files.
<your_ip>_generation.rpt IP वा प्लेटफर्म डिजाइनर पुस्ता लग file। आईपी ​​जेनेरेसनको समयमा सन्देशहरूको सारांश प्रदर्शन गर्दछ।
जारी…
File नाम विवरण
<your_ip>.qgsimc (प्लेटफर्म डिजाइनर प्रणाली मात्र) सिमुलेशन क्यासिङ file जसले .qsys र .ip लाई तुलना गर्छ fileप्लेटफर्म डिजाइनर प्रणाली र आईपी कोरको हालको प्यारामिटराइजेशनसँग। यो तुलनाले प्लेटफर्म डिजाइनरले HDL को पुनर्जन्म छोड्न सक्छ कि भनेर निर्धारण गर्छ।
<your_ip>.qgsynth (प्लेटफर्म डिजाइनर प्रणाली मात्र) संश्लेषण क्यासिङ file जसले .qsys र .ip लाई तुलना गर्छ fileप्लेटफर्म डिजाइनर प्रणाली र आईपी कोरको हालको प्यारामिटराइजेशनसँग। यो तुलनाले प्लेटफर्म डिजाइनरले HDL को पुनर्जन्म छोड्न सक्छ कि भनेर निर्धारण गर्छ।
<your_ip> qip IP कम्पोनेन्ट एकीकृत र कम्पाइल गर्न सबै जानकारी समावेश गर्दछ।
<your_ip>.csv IP कम्पोनेन्टको स्तरवृद्धि स्थिति बारे जानकारी समावेश गर्दछ।
.bsf ब्लक रेखाचित्रमा प्रयोगको लागि IP भिन्नताको प्रतीक प्रतिनिधित्व Files (.bdf)।
<your_ip>.spd इनपुट file त्यो ip-make-simscript लाई सिमुलेशन लिपिहरू उत्पन्न गर्न आवश्यक छ। एसपीडी file को सूची समावेश गर्दछ files तपाईंले सिमुलेशनको लागि उत्पन्न गर्नुहुन्छ, साथै तपाईंले सुरु गर्नुभएका सम्झनाहरू बारे जानकारी सहित।
<your_ip>.ppf पिन प्लानर File (.ppf) तपाईंले पिन प्लानरसँग प्रयोगको लागि सिर्जना गर्नुभएको IP कम्पोनेन्टहरूका लागि पोर्ट र नोड असाइनमेन्टहरू भण्डारण गर्दछ।
<your_ip>_bb.v Verilog कालोबक्स (_bb.v) प्रयोग गर्नुहोस् file ब्ल्याकबक्सको रूपमा प्रयोगको लागि खाली मोड्युल घोषणाको रूपमा।
<your_ip> _inst.v वा _inst.vhd एचडीएल पूर्वample instantiation टेम्प्लेट। यसका सामग्रीहरू प्रतिलिपि गरेर टाँस्नुहोस् file तपाईंको HDL मा file IP भिन्नता इन्स्ट्याट गर्न।
<your_ip> regmap यदि IP मा दर्ता जानकारी समावेश छ भने, Intel Quartus प्राइम सफ्टवेयरले .regmap उत्पन्न गर्दछ। file। .regmap file मास्टर र दास इन्टरफेस को दर्ता नक्शा जानकारी को वर्णन गर्दछ। यो file पूरकहरू

sopcinfo file प्रणाली बारे थप विस्तृत दर्ता जानकारी प्रदान गरेर। यो file दर्ता प्रदर्शन सक्षम गर्दछ views र प्रणाली कन्सोलमा प्रयोगकर्ता अनुकूलन तथ्याङ्कहरू।

<your_ip>.svd HPS प्रणाली डिबग उपकरणहरूलाई अनुमति दिन्छ view प्लेटफर्म डिजाइनर प्रणाली भित्र HPS मा जडान हुने बाह्य उपकरणहरूको दर्ता नक्सा।

संश्लेषणको क्रममा, इन्टेल क्वार्टस प्राइम सफ्टवेयरले .svd भण्डारण गर्दछ files .sof मा प्रणाली कन्सोल मास्टरहरू देखिने दास इन्टरफेसका लागि file डिबग सत्रमा। प्रणाली कन्सोलले यो खण्ड पढ्छ, जुन प्लेटफर्म डिजाइनरले दर्ता नक्सा जानकारीको लागि सोध्छन्। प्रणाली दासहरूको लागि, प्लेटफर्म डिजाइनरले नामद्वारा दर्ताहरू पहुँच गर्दछ।

<your_ip> v

<your_ip> vhd

एचडीएल files जसले संश्लेषण वा सिमुलेशनको लागि प्रत्येक सबमोड्युल वा चाइल्ड आईपी कोरलाई इन्स्ट्यान्टियट गर्छ।
गुरु/ सिमुलेशन सेटअप गर्न र चलाउनको लागि msim_setup.tcl स्क्रिप्ट समावेश गर्दछ।
aldec/ सेटअप गर्न र सिमुलेशन चलाउनको लागि rivierapro_setup.tcl लिपि समावेश गर्दछ।
/synopsys/vcs

/synopsys/vcsmx

सिमुलेशन सेटअप गर्न र चलाउनको लागि शेल स्क्रिप्ट vcs_setup.sh समावेश गर्दछ।

एउटा शेल लिपि vcsmx_setup.sh र synopsys_sim.setup समावेश गर्दछ file सिमुलेशन सेटअप र चलाउन।

/ताल शेल स्क्रिप्ट ncsim_setup.sh र अन्य सेटअप समावेश गर्दछ files एक सिमुलेशन सेटअप र चलाउन।
/xcelium एक समानान्तर सिमुलेटर शेल लिपि xcelium_setup.sh र अन्य सेटअप समावेश गर्दछ fileसिमुलेशन सेटअप र चलाउनको लागि।
/उपमोड्युलहरू HDL समावेश गर्दछ fileआईपी ​​कोर सबमोड्युलको लागि s।
<आईपी ​​सबमोड्युल>/ प्लेटफर्म डिजाइनरले प्लेटफर्म डिजाइनरले उत्पन्न गर्ने प्रत्येक आईपी सबमोड्युल डाइरेक्टरीको लागि /सिन्थ र /सिम उप-निर्देशिकाहरू उत्पन्न गर्दछ।

कार्यात्मक विवरण
फल्ट इन्जेक्शन आईपी कोरको साथ, डिजाइनरहरूले SEFI क्यारेक्टराइजेसन इन-हाउस गर्न, SEFI क्यारेक्टराइजेसन अनुसार FIT दरहरू मापन गर्न र SEUs को प्रभाव कम गर्न डिजाइनहरू अनुकूलन गर्न सक्छन्।

एकल घटना अपसेट शमन

एकीकृत सर्किट र प्रोग्रामेबल तर्क उपकरणहरू जस्तै FPGAs SEUs को लागी संवेदनशील छन्। SEUs अनियमित, गैर-विनाशकारी घटनाहरू हुन्, दुई प्रमुख स्रोतहरू: अल्फा कणहरू र ब्रह्माण्ड किरणहरूबाट न्यूट्रोनहरू। विकिरणले या त तर्क दर्ता, इम्बेडेड मेमोरी बिट, वा कन्फिगरेसन RAM (CRAM) बिटलाई यसको अवस्था पल्टाउन सक्छ, जसले गर्दा अप्रत्याशित यन्त्र सञ्चालन हुन्छ। Intel Arria 10, Intel Cyclone 10 GX, Arria V, Cyclone V, Stratix V र नयाँ उपकरणहरूमा निम्न CRAM क्षमताहरू छन्:

  • त्रुटि पत्ता लगाउने चक्रीय रिडन्डन्स जाँच (EDCRC)
  • अपसेट CRAM को स्वचालित सुधार (स्क्रबिंग)
  • अपसेट CRAM अवस्था सिर्जना गर्ने क्षमता (गल्ती इंजेक्शन)

Intel FPGA यन्त्रहरूमा SEU शमन बारे थप जानकारीको लागि, सम्बन्धित यन्त्र ह्यान्डबुकमा SEU Mitigation अध्याय हेर्नुहोस्।

दोष इंजेक्शन आईपी पिन विवरण

फल्ट इंजेक्शन आईपी कोरले निम्न I/O पिनहरू समावेश गर्दछ।

दोष इंजेक्शन आईपी कोर I/O पिन

पिन नाम पिन दिशा पिन विवरण
crcerror_pin इनपुट त्रुटि सन्देश दर्ता अनलोडर Intel FPGA IP (EMR Unloader IP) बाट इनपुट। यन्त्रको EDCRC द्वारा CRC त्रुटि फेला परेको बेला यो सङ्केत दाबी गरिन्छ।
emr_data इनपुट त्रुटि सन्देश दर्ता (EMR) सामग्री। EMR क्षेत्रहरूको लागि उपयुक्त यन्त्र ह्यान्डबुकलाई सन्दर्भ गर्नुहोस्।

यो इनपुट Avalon Streaming डेटा इन्टरफेस संकेत संग अनुपालन गर्दछ।

emr_valid इनपुट संकेत गर्दछ emr_data इनपुटहरूमा मान्य डाटा समावेश छ। यो Avalon Streaming मान्य इन्टरफेस संकेत हो।
रिसेट गर्नुहोस् इनपुट मोड्युल रिसेट इनपुट। रिसेट पूर्णतया दोष इंजेक्शन डिबगर द्वारा नियन्त्रित छ।
error_injected आउटपुट जे मार्फत आदेश दिए अनुसार CRAM मा एक त्रुटि इन्जेक्सन गरिएको संकेत गर्दछTAG इन्टरफेस। यो संकेतले दाबी गर्ने समयको लम्बाइ तपाईको J को सेटिङहरूमा निर्भर गर्दछTAG TCK र नियन्त्रण ब्लक संकेतहरू। सामान्यतया, समय TCK संकेत को लगभग 20 घडी चक्र छ।
error_scrubbed आउटपुट J मार्फत आदेश दिए अनुसार यन्त्र स्क्रबिङ पूरा भएको देखाउँछTAG इन्टरफेस। यो संकेतले दाबी गर्ने समयको लम्बाइ तपाईको J को सेटिङहरूमा निर्भर गर्दछTAG TCK र नियन्त्रण ब्लक संकेतहरू। सामान्यतया, समय TCK संकेत को लगभग 20 घडी चक्र छ।
insc आउटपुट वैकल्पिक आउटपुट। त्रुटि इंजेक्शन आईपी यो घडी प्रयोग गर्दछ, पूर्वको लागिample, EMR_unloader ब्लक घडी गर्न।

दोष इंजेक्शन आईपी पिन रेखाचित्र

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

दोष इंजेक्शन डिबगर र दोष इंजेक्शन आईपी कोर प्रयोग गर्दै

फल्ट इन्जेक्शन डिबगरले फल्ट इन्जेक्शन आईपी कोरसँग मिलेर काम गर्छ। पहिले, तपाइँ तपाइँको डिजाईनमा आईपी कोर इन्स्ट्यान्टियट गर्नुहोस्, कम्पाइल गर्नुहोस्, र परिणामस्वरूप कन्फिगरेसन डाउनलोड गर्नुहोस् file तपाईंको उपकरणमा। त्यसपछि, तपाईले इन्टेल क्वार्टस प्राइम सफ्टवेयर भित्रबाट वा सफ्ट त्रुटिहरू अनुकरण गर्न कमाण्ड लाइनबाट फल्ट इंजेक्शन डिबगर चलाउनुहुन्छ।

  • फल्ट इन्जेक्शन डिबगरले तपाईंलाई अन्तरक्रियात्मक रूपमा वा ब्याच आदेशहरूद्वारा त्रुटि इंजेक्शन प्रयोगहरू सञ्चालन गर्न अनुमति दिन्छ, र तपाईंलाई दोष इंजेक्शनहरूको लागि तपाईंको डिजाइनमा तार्किक क्षेत्रहरू निर्दिष्ट गर्न अनुमति दिन्छ।
  • आदेश-लाइन इन्टरफेस स्क्रिप्ट मार्फत डिबगर चलाउन उपयोगी छ।

नोट

फल्ट इंजेक्शन डिबगरले जे मार्फत फल्ट इंजेक्शन आईपी कोरसँग सञ्चार गर्दछTAG इन्टरफेस। फल्ट इंजेक्शन आईपीले J बाट आदेशहरू स्वीकार गर्दछTAG इन्टरफेस र रिपोर्ट स्थिति जे मार्फत फिर्ताTAG इन्टरफेस। फल्ट इंजेक्शन आईपी कोर तपाईंको उपकरणमा सफ्ट तर्कमा लागू गरिएको छ; तसर्थ, तपाईंले आफ्नो डिजाइनमा यो तर्क प्रयोगको लागि खाता हुनुपर्छ। एउटा विधि भनेको प्रयोगशालामा SEU मा तपाईंको डिजाइनको प्रतिक्रियालाई चित्रण गर्नु हो र त्यसपछि तपाईंको अन्तिम डिप्लोइड डिजाइनबाट IP कोरलाई हटाउनु हो।

तपाईंले निम्न आईपी कोरहरूसँग फल्ट इंजेक्शन आईपी कोर प्रयोग गर्नुहुन्छ:

  • त्रुटि सन्देश दर्ता अनलोडर IP कोर, जसले Intel FPGA उपकरणहरूमा कडा त्रुटि पत्ता लगाउने सर्किटरीबाट डाटा पढ्छ र भण्डार गर्दछ।
  • (वैकल्पिक) उन्नत SEU पत्ता लगाउने Intel FPGA IP कोर, जसले एकल-बिट त्रुटि स्थानहरूलाई यन्त्र सञ्चालनको क्रममा संवेदनशीलता नक्सासँग तुलना गर्छ कि नरम त्रुटिले यसलाई असर गर्छ कि गर्दैन भनेर निर्धारण गर्न।

दोष इंजेक्शन डिबगर ओभरview ब्लक डायग्रामintel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-5

नोट:

  1. फल्ट इंजेक्शन आईपीले लक्षित तर्कको बिटहरू फ्लिप गर्दछ।
  2. त्रुटि इंजेक्शन डिबगर र उन्नत SEU पत्ता लगाउने आईपी समान EMR अनलोडर उदाहरण प्रयोग गर्दछ।
  3. उन्नत SEU पत्ता लगाउने आईपी कोर वैकल्पिक छ।

सम्बन्धित जानकारी

  • SMH को बारेमा Fileपृष्ठ १३ मा छ
  • पृष्ठ १० मा EMR अनलोडर आईपी कोरको बारेमा
  • पृष्ठ 11 मा उन्नत SEU पत्ता लगाउने आईपी कोरको बारेमा

फल्ट इंजेक्शन आईपी कोर इन्स्ट्यान्टिएट गर्दै

नोट

त्रुटि इंजेक्शन आईपी कोरले तपाइँलाई कुनै पनि प्यारामिटरहरू सेट गर्न आवश्यक छैन। IP कोर प्रयोग गर्न, नयाँ IP उदाहरण सिर्जना गर्नुहोस्, यसलाई तपाईंको प्लेटफर्म डिजाइनर (मानक) प्रणालीमा समावेश गर्नुहोस्, र उपयुक्त रूपमा संकेतहरू जडान गर्नुहोस्। तपाईंले ईएमआर अनलोडर आईपी कोरसँग फल्ट इंजेक्शन आईपी कोर प्रयोग गर्नुपर्छ। फल्ट इन्जेक्शन र EMR अनलोडर IP कोरहरू प्लेटफर्म डिजाइनर र IP क्याटलगमा उपलब्ध छन्। वैकल्पिक रूपमा, तपाईंले Verilog HDL, SystemVerilog, वा VHDL प्रयोग गरेर तिनीहरूलाई सीधा आफ्नो RTL डिजाइनमा इन्स्ट्यान्ट गर्न सक्नुहुन्छ।

EMR अनलोडर आईपी कोरको बारेमा
EMR अनलोडर IP कोरले EMR लाई एक इन्टरफेस प्रदान गर्दछ, जुन यन्त्रको EDCRC द्वारा निरन्तर अद्यावधिक हुन्छ जसले सफ्ट त्रुटिहरूको लागि यन्त्रको CRAM बिट CRC जाँच गर्दछ।

Example प्लेटफर्म डिजाइनर प्रणाली त्रुटि इंजेक्शन आईपी कोर र EMR अनलोडर आईपी कोर सहितintel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-6

Exampले फल्ट इंजेक्शन आईपी कोर र ईएमआर अनलोडर आईपी कोर ब्लक रेखाचित्र

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

सम्बन्धित जानकारी
त्रुटि सन्देश दर्ता अनलोडर Intel FPGA IP कोर प्रयोगकर्ता गाइड

उन्नत SEU पत्ता लगाउने आईपी कोरको बारेमा

SEU सहिष्णुता एक डिजाइन चिन्ता हुँदा उन्नत SEU पत्ता लगाउने (ASD) IP कोर प्रयोग गर्नुहोस्। तपाईंले ASD IP कोरसँग EMR अनलोडर IP कोर प्रयोग गर्नुपर्छ। तसर्थ, यदि तपाईंले एएसडी आईपी र फल्ट इन्जेक्शन आईपी एउटै डिजाइनमा प्रयोग गर्नुहुन्छ भने, तिनीहरूले एभलोन®-एसटी स्प्लिटर कम्पोनेन्ट मार्फत EMR अनलोडर आउटपुट साझा गर्नुपर्छ। निम्न चित्रले प्लेटफर्म डिजाइनर प्रणाली देखाउँछ जसमा Avalon-ST स्प्लिटरले EMR सामग्रीहरू ASD र Fault Injection IP कोरहरूमा वितरण गर्दछ।

समान प्लेटफर्म डिजाइनर प्रणालीमा ASD र दोष इंजेक्शन आईपी प्रयोग गर्दैintel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-8

सम्बन्धित जानकारी
उन्नत SEU पत्ता लगाउने Intel FPGA IP कोर प्रयोगकर्ता गाइड

दोष इंजेक्शन क्षेत्रहरू परिभाषित गर्दै
तपाईंले संवेदनशीलता नक्सा हेडर (.smh) प्रयोग गरेर त्रुटि इंजेक्शनको लागि FPGA को विशिष्ट क्षेत्रहरू परिभाषित गर्न सक्नुहुन्छ। file। एसएमएच file यन्त्र CRAM बिट्स, तिनीहरूको तोकिएको क्षेत्र (ASD Region), र criticality को निर्देशांकहरू भण्डारण गर्दछ। डिजाइन प्रक्रियाको बखत तपाईंले पदानुक्रम प्रयोग गर्नुहुन्छ tagक्षेत्र सिर्जना गर्न ging। त्यसपछि, संकलनको क्रममा, इंटेल क्वार्टस प्राइम एसेम्बलरले SMH उत्पन्न गर्दछ file। फल्ट इन्जेक्शन डिबगरले त्रुटि इंजेक्शनहरूलाई तपाईंले SMH मा परिभाषित गर्नुभएका विशिष्ट उपकरण क्षेत्रहरूमा सीमित गर्दछ। file.

पदानुक्रम प्रदर्शन गर्दै Tagging
तपाईंले FPGA क्षेत्रहरूलाई स्थानमा एएसडी क्षेत्र तोकेर परीक्षणको लागि परिभाषित गर्नुहुन्छ। तपाईंले डिजाइन विभाजन सञ्झ्याल प्रयोग गरेर आफ्नो डिजाइन पदानुक्रमको कुनै पनि भागको लागि ASD क्षेत्र मान निर्दिष्ट गर्न सक्नुहुन्छ।

  1. असाइनमेन्ट छान्नुहोस् ➤ डिजाइन विभाजन विन्डो।
  2. हेडर पङ्क्तिमा जहाँ पनि दायाँ क्लिक गर्नुहोस् र ASD क्षेत्र स्तम्भ प्रदर्शन गर्नको लागि ASD क्षेत्र खोल्नुहोस् (यदि यो पहिले देखि नै प्रदर्शित छैन)।
  3. कुनै पनि विभाजनको लागि 0 देखि 16 सम्मको मान प्रविष्ट गर्नुहोस् यसलाई विशेष ASD क्षेत्रमा तोक्नुहोस्।
    • ASD क्षेत्र 0 उपकरणको प्रयोग नगरिएका भागहरूमा आरक्षित छ। तपाईंले यो क्षेत्रलाई गैर-महत्वपूर्ण रूपमा निर्दिष्ट गर्नको लागि विभाजन तोक्न सक्नुहुन्छ।
    • ASD क्षेत्र 1 पूर्वनिर्धारित क्षेत्र हो। तपाईंले स्पष्ट रूपमा ASD क्षेत्र असाइनमेन्ट परिवर्तन नगरेसम्म यन्त्रका सबै प्रयोग गरिएका भागहरू यस क्षेत्रमा तोकिएका छन्।

SMH को बारेमा Files

एसएमएच file निम्न जानकारी समावेश गर्दछ:

  • यदि तपाइँ पदानुक्रम प्रयोग गरिरहनु भएको छैन भने tagging (अर्थात, डिजाइन पदानुक्रममा डिजाइनको कुनै स्पष्ट ASD क्षेत्र असाइनमेन्ट छैन), SMH file प्रत्येक CRAM बिट सूचीबद्ध गर्दछ र यो डिजाइनको लागि संवेदनशील छ कि छैन भनेर संकेत गर्दछ।
  • यदि तपाईंले पदानुक्रम प्रदर्शन गर्नुभयो भने tagging र परिवर्तन गरिएको पूर्वनिर्धारित ASD क्षेत्र असाइनमेन्ट, SMH file प्रत्येक CRAM बिट सूचीबद्ध गर्दछ र यसलाई ASD क्षेत्र तोकिएको छ।

फल्ट इंजेक्शन डिबगरले एक वा बढी निर्दिष्ट क्षेत्रहरूमा इंजेक्शनहरू सीमित गर्न सक्छ। एसेम्बलरलाई SMH उत्पन्न गर्न निर्देशन दिन file:

  • असाइनमेन्टहरू छनौट गर्नुहोस् ➤ यन्त्र ➤ यन्त्र र पिन विकल्पहरू ➤ त्रुटि पत्ता लगाउने CRC।
  • SEU संवेदनशीलता नक्सा उत्पन्न गर्नुहोस् सक्रिय गर्नुहोस् file (.smh) विकल्प।

दोष इंजेक्शन डिबगर प्रयोग गर्दै

नोट
फल्ट इन्जेक्शन डिबगर प्रयोग गर्न, तपाइँ J मार्फत तपाइँको यन्त्रमा जडान गर्नुहुन्छTAG इन्टरफेस। त्यसपछि, उपकरण कन्फिगर गर्नुहोस् र दोष इंजेक्शन प्रदर्शन गर्नुहोस्। फल्ट इंजेक्शन डिबगर सुरु गर्न, इन्टेल क्वार्टस प्राइम सफ्टवेयरमा उपकरणहरू ➤ फल्ट इन्जेक्शन डिबगर छनौट गर्नुहोस्। यन्त्र कन्फिगर वा प्रोग्रामिङ प्रोग्रामर वा सिग्नल ट्याप तर्क विश्लेषकको लागि प्रयोग गरिएको प्रक्रिया जस्तै हो।

दोष इंजेक्शन डिबगर

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

आफ्नो जे कन्फिगर गर्नTAG चेन:

  1. हार्डवेयर सेटअप क्लिक गर्नुहोस्। उपकरणले तपाइँको कम्प्युटरमा जडान भएको प्रोग्रामिङ हार्डवेयर प्रदर्शन गर्दछ।
  2. तपाईंले प्रयोग गर्न चाहनुभएको प्रोग्रामिङ हार्डवेयर चयन गर्नुहोस्।
  3. बन्द क्लिक गर्नुहोस्।
  4. Auto Detect मा क्लिक गर्नुहोस्, जसले J मा पाइने प्रोग्रामयोग्य यन्त्रहरूसँग यन्त्र चेनलाई भर्छTAG चेन।

सम्बन्धित जानकारी
पृष्ठ २१ मा लक्षित दोष इंजेक्शन सुविधा

हार्डवेयर र सफ्टवेयर आवश्यकताहरू

निम्न हार्डवेयर र सफ्टवेयर त्रुटि इंजेक्शन डिबगर प्रयोग गर्न आवश्यक छ:

  • तपाईंको Intel FPGA लाइसेन्समा FEATURE लाइन जसले त्रुटि इंजेक्शन IP कोर सक्षम गर्दछ। थप जानकारीको लागि, आफ्नो स्थानीय Intel FPGA बिक्री प्रतिनिधिलाई सम्पर्क गर्नुहोस्।
  • केबल डाउनलोड गर्नुहोस् (Intel FPGA डाउनलोड केबल, Intel FPGA डाउनलोड केबल II, वा II)।
  • Intel FPGA विकास किट वा प्रयोगकर्ता डिजाइन गरिएको बोर्ड J को साथTAG परीक्षण अन्तर्गत उपकरण जडान।
  • (वैकल्पिक) तपाईंको Intel FPGA लाइसेन्समा FEATURE लाइन जसले उन्नत SEU पत्ता लगाउने IP कोर सक्षम गर्दछ।

तपाईंको यन्त्र र त्रुटि इंजेक्शन डिबगर कन्फिगर गर्दै

फल्ट इंजेक्शन डिबगरले .sof र (वैकल्पिक रूपमा) एक संवेदनशीलता नक्सा हेडर (.smh) प्रयोग गर्दछ। file। सफ्टवेयर वस्तु File (.sof) ले FPGA कन्फिगर गर्छ। smh file यन्त्रमा CRAM बिट्सको संवेदनशीलता परिभाषित गर्दछ। यदि तपाईंले .smh प्रदान गर्नुभएन भने file, फल्ट इन्जेक्शन डिबगरले CRAM बिटहरूमा अनियमित रूपमा त्रुटिहरू इन्जेक्ट गर्छ। .sof निर्दिष्ट गर्न:

  1. यन्त्र चेन बक्समा तपाईले कन्फिगर गर्न चाहनुभएको FPGA चयन गर्नुहोस्।
  2. चयन गर्नुहोस् क्लिक गर्नुहोस् File.
  3. .sof मा नेभिगेट गर्नुहोस् र ठीक क्लिक गर्नुहोस्। द फल्ट इन्जेक्शन डिबगरले .sof पढ्छ।
  4. (वैकल्पिक) SMH चयन गर्नुहोस् file.
    यदि तपाईंले SMH निर्दिष्ट गर्नुभएन भने file, फल्ट इन्जेक्शन डिबगरले सम्पूर्ण यन्त्रमा अनियमित रूपमा त्रुटिहरू इन्जेक्ट गर्छ। यदि तपाइँ एक SMH निर्दिष्ट गर्नुहुन्छ file, तपाइँ तपाइँको यन्त्रको प्रयोग गरिएका क्षेत्रहरूमा इंजेक्शनहरू प्रतिबन्ध गर्न सक्नुहुन्छ।
    • यन्त्र चेन बक्समा यन्त्रमा दायाँ क्लिक गर्नुहोस् र त्यसपछि SMH चयन गर्नुहोस् क्लिक गर्नुहोस् File.
    • आफ्नो SMH चयन गर्नुहोस् file.
    • ठीक क्लिक गर्नुहोस्।
  5. कार्यक्रम/कन्फिगर खोल्नुहोस्।
  6. सुरु क्लिक गर्नुहोस्।

त्रुटि इंजेक्शन डिबगरले .sof प्रयोग गरेर उपकरण कन्फिगर गर्दछ।

SMH चयन गर्न सन्दर्भ मेनु File

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

फल्ट इन्जेक्शनका लागि अवरोध गर्ने क्षेत्रहरू

SMH लोड गरेपछि file, तपाईले फल्ट इंजेक्शन डिबगरलाई विशेष ASD क्षेत्रहरूमा मात्र सञ्चालन गर्न निर्देशन दिन सक्नुहुन्छ। ASD क्षेत्र(हरू) निर्दिष्ट गर्न जसमा त्रुटिहरू इन्जेक्ट गर्ने:

  1. यन्त्र चेन बाकसमा FPGA मा दायाँ क्लिक गर्नुहोस्, र यन्त्र संवेदनशीलता नक्सा देखाउनुहोस् क्लिक गर्नुहोस्।
  2. गल्ती इंजेक्शनको लागि ASD क्षेत्र(हरू) चयन गर्नुहोस्।

यन्त्र संवेदनशीलता नक्सा Viewer

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

त्रुटि प्रकारहरू निर्दिष्ट गर्दै

तपाईं इंजेक्शन लागि त्रुटि को विभिन्न प्रकार निर्दिष्ट गर्न सक्नुहुन्छ।

  • एकल त्रुटि (SE)
  • डबल-एजेसेन्ट त्रुटिहरू (DAE)
  • असुधारनीय बहु-बिट त्रुटिहरू (EMBE)

Intel FPGA यन्त्रहरूले स्क्रबिङ सुविधा सक्षम पारिएको खण्डमा एकल र डबल-सम्पन्न त्रुटिहरू स्वयं-सच्याउन सक्छन्। Intel FPGA उपकरणहरूले बहु-बिट त्रुटिहरू सुधार गर्न सक्दैन। यी त्रुटिहरू डिबग गर्ने बारे थप जानकारीको लागि SEUs लाई कम गर्ने अध्यायमा हेर्नुहोस्। तपाईले इन्जेक्सन गर्न गल्तीहरूको मिश्रण र इंजेक्शन समय अन्तराल निर्दिष्ट गर्न सक्नुहुन्छ। इंजेक्शन समय अन्तराल निर्दिष्ट गर्न:

  1. त्रुटि इंजेक्शन डिबगरमा, उपकरण ➤ विकल्पहरू छनौट गर्नुहोस्।
  2. त्रुटिहरूको मिश्रणमा रातो नियन्त्रक तान्नुहोस्। वैकल्पिक रूपमा, तपाईले मिश्रणलाई संख्यात्मक रूपमा निर्दिष्ट गर्न सक्नुहुन्छ।
  3. इंजेक्शन अन्तराल समय निर्दिष्ट गर्नुहोस्।
  4. ठीक क्लिक गर्नुहोस्।

चित्र 12. SEU त्रुटि प्रकारहरूको मिश्रण निर्दिष्ट गर्दैintel-UG-01173-Fault-Injection-FPGA-IP-Core-fig-12

सम्बन्धित जानकारी एकल घटना अपसेट कम गर्दै

इन्जेक्सन त्रुटिहरू

तपाईं धेरै मोडहरूमा त्रुटिहरू इन्जेक्ट गर्न सक्नुहुन्छ:

  • आदेशमा एउटा त्रुटि इन्जेक्ट गर्नुहोस्
  • आदेशमा धेरै त्रुटिहरू इन्जेक्ट गर्नुहोस्
  • रोक्न आदेश नभएसम्म त्रुटिहरू इन्जेक्ट गर्नुहोस्

यी दोषहरू इंजेक्शन गर्न:

  1. Inject Fault विकल्प खोल्नुहोस्।
  2. छनौट गर्नुहोस् कि तपाइँ धेरै पुनरावृत्तिहरूको लागि त्रुटि इंजेक्शन चलाउन चाहनुहुन्छ वा नरोकिएसम्म:
    • यदि तपाइँ नरोकिएसम्म चलाउन छनौट गर्नुहुन्छ भने, त्रुटि इंजेक्शन डिबगरले उपकरण ➤ विकल्प संवाद बाकसमा निर्दिष्ट अन्तरालमा त्रुटिहरू इन्जेक्ट गर्दछ।
    • यदि तपाइँ पुनरावृत्तिको निर्दिष्ट संख्याको लागि त्रुटि इंजेक्शन चलाउन चाहनुहुन्छ भने, नम्बर प्रविष्ट गर्नुहोस्।
  3. सुरु क्लिक गर्नुहोस्।

नोट: फल्ट इंजेक्शन डिबगर निर्दिष्ट संख्याको पुनरावृत्ति वा बन्द नभएसम्म चल्छ। Intel Quartus Prime Messages विन्डोले इन्जेक्सन गरिएका त्रुटिहरूको बारेमा सन्देशहरू देखाउँछ। इन्जेक्टेड गल्तीहरूमा थप जानकारीको लागि, EMR पढ्नुहोस् क्लिक गर्नुहोस्। त्रुटि इंजेक्शन डिबगरले उपकरणको EMR पढ्छ र सन्देश विन्डोमा सामग्रीहरू प्रदर्शन गर्दछ।

Intel Quartus प्राइम त्रुटि इंजेक्शन र EMR सामग्री सन्देशहरू

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

रेकर्डिङ त्रुटिहरू
तपाईंले Intel Quartus Prime Messages सञ्झ्यालमा रिपोर्ट गरिएका प्यारामिटरहरू नोट गरेर कुनै पनि इन्जेक्टेड गल्तीको स्थान रेकर्ड गर्न सक्नुहुन्छ। यदि, पूर्वको लागिampले, एक इंजेक्शन गल्ती व्यवहार मा परिणाम तपाईं पुन: प्ले गर्न चाहनुहुन्छ, तपाईं इंजेक्शन को लागी त्यो स्थान लक्षित गर्न सक्नुहुन्छ। तपाईंले फल्ट इंजेक्शन डिबगर कमाण्ड लाइन इन्टरफेस प्रयोग गरेर लक्षित इंजेक्शन प्रदर्शन गर्नुहुन्छ।

इन्जेक्टेड त्रुटिहरू सफा गर्दै
FPGA को सामान्य प्रकार्य पुनर्स्थापित गर्न, स्क्रब क्लिक गर्नुहोस्। जब तपाइँ त्रुटि स्क्रब गर्नुहुन्छ, यन्त्रको EDCRC कार्यहरू त्रुटिहरू सच्याउन प्रयोग गरिन्छ। स्क्रब मेकानिजम उपकरण सञ्चालनको समयमा प्रयोग गरिएको जस्तै छ।

कमाण्ड-लाइन इन्टरफेस
तपाईँले quartus_fid कार्यान्वयन योग्यको साथ कमाण्ड लाइनमा फल्ट इन्जेक्शन डिबगर चलाउन सक्नुहुन्छ, जुन उपयोगी हुन्छ यदि तपाईँ स्क्रिप्टबाट त्रुटि इंजेक्शन गर्न चाहनुहुन्छ भने।

तालिका 5. दोष इंजेक्शन को लागी आदेश लाइन तर्क

छोटो तर्क लामो तर्क विवरण
c केबल प्रोग्रामिङ हार्डवेयर वा केबल निर्दिष्ट गर्नुहोस्। (आवश्यक)
i अनुक्रमणिका गल्ती इंजेक्शन गर्न सक्रिय उपकरण निर्दिष्ट गर्नुहोस्। (आवश्यक)
n संख्या इन्जेक्सन गर्न त्रुटिहरूको संख्या निर्दिष्ट गर्नुहोस्। पूर्वनिर्धारित मान हो

३. (वैकल्पिक)

t समय इंजेक्शनहरू बीचको अन्तराल समय। (वैकल्पिक)

नोट: quartus_fid प्रयोग गर्नुहोस् - मद्दत गर्न view सबै उपलब्ध विकल्पहरू। निम्न कोड पूर्व प्रदान गर्दछampलेस फल्ट इंजेक्शन डिबगर कमांडलाइन इन्टरफेस प्रयोग गर्दै।
##################################

  • # यस उदाहरणका लागि कुन USB केबलहरू उपलब्ध छन् पत्ता लगाउनुहोस्
  • # परिणामले देखाउँछ कि एउटा केबल उपलब्ध छ, "USB-Blaster" #
  • $ quartus_fid -सूची। । ।
  • जानकारी: आदेश: quartus_fid -सूची
    1. sj-sng-z4 मा USB-Blaster [USB-0] जानकारी: Intel Quartus Prime 64-Bit Fault Injection Debugger सफल भयो। ० त्रुटिहरू, ० चेतावनी
  • ####################################
  • # USB-Blaster केबलमा कुन यन्त्रहरू उपलब्ध छन् पत्ता लगाउनुहोस्
  • # परिणामले दुई यन्त्रहरू देखाउँछ: Stratix V A7, र MAX V CPLD। #
  • $ quartus_fid -केबल USB-ब्लास्टर -a
  • जानकारी: आदेश: quartus_fid –cable=USB-Blaster -a
  • जानकारी (208809): प्रोग्रामिङ केबल प्रयोग गर्दै "USB-Blaster on sj-sng-z4 [USB-0]"
    1. sj-sng-z4 [USB-0] मा USB-ब्लास्टर
  • 029030DD 5SGXEA7H(1|2|3)/5SGXEA7K1/..
  • 020A40DD 5M2210Z/EPM2210
  • जानकारी: इंटेल क्वार्टस प्राइम 64-बिट फल्ट इंजेक्शन डिबगर सफल भयो।
  • ० त्रुटिहरू, ० चेतावनीहरू
  • ####################################
  • # Stratix V उपकरण प्रोग्राम गर्नुहोस्
  • # -सूचकांक विकल्पले जडान गरिएको उपकरणमा सञ्चालन गरिएका कार्यहरू निर्दिष्ट गर्दछ।
  • # "=svgx.sof" ले .sof लाई सम्बद्ध गर्दछ file उपकरण संग
  • # "#p" भनेको प्रोग्राम यन्त्र #
  • $ quartus_fid -cable USB-Blaster -index "@1=svgx.sof#p"। । ।
  • जानकारी (209016): उपकरण अनुक्रमणिका कन्फिगर गर्दै 1
  • जानकारी (209017): यन्त्र 1 ले J समावेश गर्दछTAG आईडी कोड 0x029030DD
  • जानकारी (209007): कन्फिगरेसन सफल भयो — १ यन्त्र(हरू) कन्फिगर गरियो
  • जानकारी (209011): सफलतापूर्वक सम्पन्न सञ्चालन(हरू)
  • जानकारी (२०८५५१): यन्त्र १ मा कार्यक्रम हस्ताक्षर।
  • जानकारी: इंटेल क्वार्टस प्राइम 64-बिट फल्ट इंजेक्शन डिबगर सफल भयो।
  • ० त्रुटिहरू, ० चेतावनीहरू
  • ####################################
  • # यन्त्रमा त्रुटि इन्जेक्ट गर्नुहोस्।
  • #i अपरेटरले त्रुटिहरू इन्जेक्ट गर्न संकेत गर्दछ
  • # -n 3 ले 3 गल्तीहरू इंजेक्शन गर्न संकेत गर्दछ #
  • $ quartus_fid –cable USB-Blaster –index “@1=svgx.sof#i” -n 3
  • जानकारी: आदेश: quartus_fid –cable=USB-Blaster –index=@1=svgx.sof#i -n 3
  • जानकारी (208809): प्रोग्रामिङ केबल प्रयोग गर्दै "USB-Blaster on sj-sng-z4 [USB-0]"
  • जानकारी (208521): यन्त्र(हरू) मा ३ त्रुटि(हरू) इन्जेक्ट गर्छ
  • जानकारी: इंटेल क्वार्टस प्राइम 64-बिट फल्ट इंजेक्शन डिबगर सफल भयो।
  • ० त्रुटिहरू, ० चेतावनीहरू
  • ####################################
  • # अन्तरक्रियात्मक मोड।
  • # -n 0 सँग #i अपरेशन प्रयोग गर्दा डिबगरलाई अन्तरक्रियात्मक मोडमा राख्छ।
  • # ध्यान दिनुहोस् कि अघिल्लो सत्रमा 3 गल्तीहरू इंजेक्शन गरिएको थियो;
  • # "E" ले हाल EMR अनलोडर IP कोरमा भएका त्रुटिहरू पढ्छ। #
  • $ quartus_fid –cable USB-Blaster –index “@1=svgx.sof#i” -n 0
  • जानकारी: आदेश: quartus_fid –cable=USB-Blaster –index=@1=svgx.sof#i -n 0
  • जानकारी (208809): प्रोग्रामिङ केबल प्रयोग गर्दै "USB-Blaster on sj-sng-z4 [USB-0]"
  • प्रविष्ट गर्नुहोस्:
  • दोष सुई लगाउनको लागि 'F'
  • EMR पढ्नको लागि 'E'
  • त्रुटि(हरू) स्क्रब गर्न 'S'
  • E छोड्न 'Q'
  • जानकारी (208540): EMR array पढ्दै
  • जानकारी (२०८५४४): यन्त्र १ मा ३ फ्रेम त्रुटि(हरू) पत्ता लाग्यो।
  • जानकारी (208545): त्रुटि # 1 : फ्रेम 0x1028 बिट 0x21EA मा एकल त्रुटि।
  • जानकारी (10914): त्रुटि # 2 : फ्रेम 0x1116 मा असुधारनीय बहु-बिट त्रुटि।
  • जानकारी (208545): त्रुटि #3 : फ्रेम 0x1848 बिट 0x128C मा एकल त्रुटि।
  • दोष सुई लगाउनको लागि 'F'
  • EMR पढ्नको लागि 'E'
  • त्रुटि(हरू) स्क्रब गर्न 'S'
  • Q छोड्न 'Q'
  • जानकारी: Intel Quartus Prime 64-Bit Fault Injection Debugger सफल भयो। ० त्रुटिहरू, ० चेतावनीहरू
  • जानकारी: पीक भर्चुअल मेमोरी: 1522 मेगाबाइट
  • जानकारी: प्रशोधन समाप्त भयो: सोम नोभेम्बर 3 18:50:00 2014
  • जानकारी: बितेको समय: ००:००:२९
  • जानकारी: कुल CPU समय (सबै प्रोसेसरहरूमा): 00:00:13

लक्षित दोष इंजेक्शन सुविधा

नोट

फल्ट इन्जेक्शन डिबगरले FPGA मा अनियमित रूपमा त्रुटिहरू इन्जेक्ट गर्दछ। यद्यपि, लक्षित फल्ट इन्जेक्शन सुविधाले तपाईंलाई CRAM मा लक्षित स्थानहरूमा त्रुटिहरू इन्जेक्सन गर्न अनुमति दिन्छ। यो अपरेशन उपयोगी हुन सक्छ, उदाहरणका लागिampले, यदि तपाईंले SEU घटना याद गर्नुभयो र FPGA वा रिकभरी रणनीति परिमार्जन गरेपछि उही घटनामा प्रणाली प्रतिक्रिया परीक्षण गर्न चाहनुहुन्छ भने। टारगेटेड फल्ट इन्जेक्शन सुविधा कमाण्ड लाइन इन्टरफेसबाट मात्र उपलब्ध छ। तपाइँ निर्दिष्ट गर्न सक्नुहुन्छ कि त्रुटिहरू आदेश रेखा वा प्रम्प्ट मोडमा इन्जेक्ट गरिएको छ। सम्बन्धित जानकारी

AN 539: Intel FPGA उपकरणहरूमा CRC प्रयोग गरेर परीक्षण विधि वा त्रुटि पत्ता लगाउने र रिकभरी

आदेश रेखाबाट त्रुटि सूची निर्दिष्ट गर्दै

लक्षित त्रुटि इंजेक्शन सुविधाले तपाइँलाई निम्न पूर्वमा देखाइए अनुसार, आदेश रेखाबाट त्रुटि सूची निर्दिष्ट गर्न अनुमति दिन्छ।ample: c:\Users\sng> quartus_fid -c 1 – i “@1= svgx.sof#i” -n 2 -user=”@1= 0x2274 0x05EF 0x2264 0x0500″ जहाँ: c 1 ले FPGA नियन्त्रण गरिएको छ भनेर संकेत गर्छ तपाइँको कम्प्युटरमा पहिलो केबल द्वारा। i “@1= six.sof#i” ले चेनमा पहिलो यन्त्र वस्तुसँग लोड भएको संकेत गर्छ file svgx.sof र गल्तीहरूको साथ इंजेक्शन गरिनेछ। n 2 ले संकेत गर्दछ कि दुई दोषहरू इंजेक्शन गरिनेछ। user=”@1= 0x2274 0x05EF 0x2264 0x0500” प्रयोगकर्ता-निर्दिष्ट त्रुटिहरूको सुची हो। यस मा पूर्वample, यन्त्र 1 मा दुईवटा त्रुटिहरू छन्: फ्रेम 0x2274 मा, बिट 0x05EF र फ्रेम 0x2264 मा, बिट 0x0500।

प्रम्प्ट मोडबाट त्रुटि सूची निर्दिष्ट गर्दै

तपाईंले ० (-n ०) हुने त्रुटिहरूको संख्या निर्दिष्ट गरेर अन्तरक्रियात्मक रूपमा लक्षित त्रुटि इंजेक्शन सुविधा सञ्चालन गर्न सक्नुहुन्छ। फल्ट इंजेक्शन डिबगरले प्रम्प्ट मोड आदेशहरू र तिनीहरूको विवरणहरू प्रस्तुत गर्दछ।

प्रम्प्ट मोड आदेश विवरण
F गल्ती इन्जेक्ट गर्नुहोस्
E EMR पढ्नुहोस्
S स्क्रब त्रुटिहरू
Q छोड्नुहोस्

प्रम्प्ट मोडमा, तपाईले F आदेश एक्लै जारी गर्न सक्नुहुन्छ यन्त्रमा अनियमित स्थानमा एकल गल्ती इंजेक्शन गर्न। निम्न मा पूर्वamples प्रम्प्ट मोडमा F आदेश प्रयोग गरेर, तीन त्रुटिहरू इन्जेक्ट गरिएका छन्। F #3 0x12 0x34 0x56 0x78 * 0x9A 0xBC +

  • त्रुटि 1 - फ्रेम 0x12, बिट 0x34 मा एकल बिट त्रुटि
  • त्रुटि 2 - फ्रेम 0x56, बिट 0x78 मा अयोग्य त्रुटि (एक * बहु-बिट त्रुटि संकेत गर्दछ)
  • त्रुटि 3 - फ्रेम 0x9A मा डबल-सम्पन्न त्रुटि, बिट 0xBC (a + ले डबल बिट त्रुटि संकेत गर्दछ)

F 0x12 0x34 0x56 0x78 * एउटा (पूर्वनिर्धारित) त्रुटि इन्जेक्ट गरिएको छ: त्रुटि 1 - फ्रेम 0x12, बिट 0x34 मा एकल बिट त्रुटि। पहिलो फ्रेम/बिट स्थान पछिका स्थानहरूलाई बेवास्ता गरिन्छ। F #3 0x12 0x34 0x56 0x78 * 0x9A 0xBC + 0xDE 0x00

तीन त्रुटिहरू इंजेक्शन छन्:

  • त्रुटि 1 - फ्रेम 0x12, बिट 0x34 मा एकल बिट त्रुटि
  • त्रुटि 2 - फ्रेम 0x56, बिट 0x78 मा असुधारनीय त्रुटि
  • त्रुटि 3 - फ्रेम 0x9A, बिट 0xBC मा डबल-सन्न त्रुटि
  • पहिलो ३ फ्रेम/बिट जोडी पछिका स्थानहरूलाई बेवास्ता गरिन्छ

CRAM बिट स्थानहरू निर्धारण गर्दै

नोट: 

जब फल्ट इन्जेक्शन डिबगरले CRAM EDCRC त्रुटि पत्ता लगाउँदछ, त्रुटि सन्देश दर्ता (EMR) ले पत्ता लगाइएको CRAM त्रुटिको सिन्ड्रोम, फ्रेम नम्बर, बिट स्थान, र त्रुटि प्रकार (एकल, डबल, वा बहु-बिट) समावेश गर्दछ। प्रणाली परीक्षणको क्रममा, तपाईंले EDCRC गल्ती पत्ता लगाउँदा त्रुटि इंजेक्शन डिबगरद्वारा रिपोर्ट गरिएको EMR सामग्रीहरू बचत गर्नुहोस्। रेकर्ड गरिएको EMR सामग्रीहरूको साथ, तपाईंले प्रणाली परीक्षणको क्रममा उल्लेख गरिएका त्रुटिहरू पुन: प्ले गर्न, थप डिजाइन गर्न, र त्यो त्रुटिको लागि प्रणाली रिकभरी प्रतिक्रियाको विशेषता बनाउन त्रुटि इंजेक्शन डिबगरमा फ्रेम र बिट नम्बरहरू आपूर्ति गर्न सक्नुहुन्छ।

सम्बन्धित जानकारी
AN 539: Intel FPGA उपकरणहरूमा CRC प्रयोग गरेर परीक्षण विधि वा त्रुटि पत्ता लगाउने र रिकभरी

उन्नत कमाण्ड-लाइन विकल्पहरू: ASD क्षेत्रहरू र त्रुटि प्रकार वजन

तपाईंले ASD क्षेत्रहरूमा त्रुटिहरू इन्जेक्सन गर्न र त्रुटि प्रकारहरू वजन गर्न त्रुटि इंजेक्शन डिबगर आदेश-लाइन इन्टरफेस प्रयोग गर्न सक्नुहुन्छ। पहिले, तपाईंले -weight प्रयोग गरेर त्रुटि प्रकारहरू (एकल बिट, डबल आसन्न, र बहु-बिट असुधारनीय) को मिश्रण निर्दिष्ट गर्नुहोस्। । । विकल्प। पूर्वका लागिample, 50% एकल त्रुटिहरू, 30% डबल आसन्न त्रुटिहरू, र 20% बहु-बिट असुधारनीय त्रुटिहरूको मिश्रणको लागि, विकल्प -weight=50.30.20 प्रयोग गर्नुहोस्। त्यसपछि, ASD क्षेत्र लक्षित गर्न, SMH समावेश गर्न -smh विकल्प प्रयोग गर्नुहोस् file र लक्षित गर्न ASD क्षेत्र संकेत गर्नुहोस्। पूर्वका लागिample: $ quartus_fid –cable=USB-BlasterII –index “@1=svgx.sof#pi” –weight=100.0.0 –smh=”@1=svgx.smh#2″ –number=30

यो पूर्वampले आदेश:

  • यन्त्रलाई प्रोग्राम गर्छ र दोषहरू इन्जेक्ट गर्छ (pi string)
  • 100% एकल-बिट त्रुटिहरू इन्जेक्ट गर्दछ (100.0.0)
  • ASD_REGION 2 मा मात्र इन्जेक्ट गर्दछ (#2 द्वारा संकेत गरिएको)
  • 30 गल्तीहरू इंजेक्शन गर्दछ

दोष इंजेक्शन आईपी कोर प्रयोगकर्ता गाइड अभिलेख

आईपी ​​कोर संस्करण प्रयोगकर्ता गाइड
18.0 दोष इंजेक्शन इंटेल FPGA आईपी कोर प्रयोगकर्ता गाइड
17.1 Intel FPGA दोष इंजेक्शन आईपी कोर प्रयोगकर्ता गाइड
16.1 अल्टेरा फल्ट इंजेक्शन आईपी कोर प्रयोगकर्ता गाइड
15.1 अल्टेरा फल्ट इंजेक्शन आईपी कोर प्रयोगकर्ता गाइड

यदि IP कोर संस्करण सूचीबद्ध छैन भने, अघिल्लो IP कोर संस्करणको लागि प्रयोगकर्ता गाइड लागू हुन्छ।

त्रुटि इंजेक्शन आईपी कोर प्रयोगकर्ता गाइडको लागि कागजात संशोधन इतिहास

कागजात संस्करण इंटेल क्वार्टस प्राइम संस्करण परिवर्तनहरू
2019.07.09 18.1 अद्यावधिक गर्नुभयो दोष इंजेक्शन आईपी पिन विवरण रिसेट, error_injected, र error_scrubbed संकेतहरू स्पष्ट गर्नको लागि विषय।
2018.05.16 18.0 • इन्टेल क्वार्टस प्राइम प्रो संस्करण ह्यान्डबुकबाट निम्न विषयहरू थपियो:

—   दोष इंजेक्शन क्षेत्रहरू परिभाषित गर्दै र उपविषयहरू।

—   दोष इंजेक्शन डिबगर प्रयोग गर्दै र उपविषयहरू।

—   कमाण्ड-लाइन इन्टरफेस र उपविषयहरू।

• Intel FPGA Fault Injection IP कोरलाई फल्ट इन्जेक्शन Intel FPGA IP मा पुन: नामाकरण गरियो।

मिति संस्करण परिवर्तनहरू
2017.11.06 17.1 • Intel को रूपमा पुन: ब्रान्ड गरिएको।

• Intel Cyclone 10 GX उपकरण समर्थन थपियो।

2016.10.31 16.1 अद्यावधिक उपकरण समर्थन।
2015.12.15 15.1 • Quartus II लाई Quartus Prime सफ्टवेयरमा परिवर्तन गरियो।

• निश्चित आत्म-संदर्भ सम्बन्धित लिङ्क।

2015.05.04 15.0 प्रारम्भिक रिलीज।

 

कागजातहरू / स्रोतहरू

intel UG-01173 दोष इंजेक्शन FPGA IP कोर [pdf] प्रयोगकर्ता गाइड
UG-01173 दोष इंजेक्शन FPGA IP कोर, UG-01173, दोष इंजेक्शन FPGA IP कोर, इंजेक्शन c, इंजेक्शन FPGA IP कोर

सन्दर्भहरू

एक टिप्पणी छोड्नुहोस्

तपाईंको इमेल ठेगाना प्रकाशित गरिने छैन। आवश्यक क्षेत्रहरू चिन्ह लगाइएका छन् *