Intel UG-01173 Fault Injection FPGA IP Core
คู่มือผู้ใช้ Fault Injection Intel® FPGA IP Core
คอร์ Fault Injection Intel® FPGA IP แทรกข้อผิดพลาดลงในการกำหนดค่า RAM (CRAM) ของอุปกรณ์ FPGA โพรซีเดอร์นี้จำลองข้อผิดพลาดแบบซอฟต์ที่สามารถเกิดขึ้นได้ระหว่างการทำงานปกติเนื่องจาก single event ups (SEUs) SEUs เป็นเหตุการณ์ที่เกิดขึ้นได้ยาก ดังนั้นจึงยากต่อการทดสอบ หลังจากที่คุณสร้างอินสแตนซ์คอร์ Fault Injection IP ในการออกแบบและกำหนดค่าอุปกรณ์ของคุณแล้ว คุณสามารถใช้เครื่องมือ Intel Quartus® Prime Fault Injection Debugger เพื่อทำให้เกิดข้อผิดพลาดโดยเจตนาใน FPGA เพื่อทดสอบการตอบสนองของระบบต่อข้อผิดพลาดเหล่านี้
ข้อมูลที่เกี่ยวข้อง
- อารมณ์เสียในเหตุการณ์เดียว
- AN 737: การตรวจจับและกู้คืน SEU ในอุปกรณ์ Intel Arria 10
คุณสมบัติ
- ให้คุณประเมินการตอบสนองของระบบเพื่อลดการขัดจังหวะการทำงานของเหตุการณ์เดียว (SEFI)
- ให้คุณดำเนินการกำหนดลักษณะเฉพาะของ SEFI ภายในองค์กร โดยไม่จำเป็นต้องมีการทดสอบลำแสงทั้งระบบ แต่คุณสามารถจำกัดการทดสอบลำแสงตามการวัดความล้มเหลวในเวลา (FIT)/Mb ที่ระดับอุปกรณ์แทนได้
- ปรับอัตรา FIT ตามลักษณะ SEFI ที่เกี่ยวข้องกับสถาปัตยกรรมการออกแบบของคุณ คุณสามารถสุ่มกระจาย Fault Injection ทั่วทั้งอุปกรณ์ หรือจำกัดไว้ตามพื้นที่การทำงานเฉพาะเพื่อเพิ่มความเร็วในการทดสอบ
- ปรับการออกแบบของคุณให้เหมาะสมเพื่อลดการหยุดชะงักที่เกิดจากเหตุการณ์เดียว (SEU)
การสนับสนุนอุปกรณ์
Fault Injection IP core รองรับอุปกรณ์ตระกูล Intel Arria® 10, Intel Cyclone® 10 GX และ Stratix® V ตระกูล Cyclone V รองรับ Fault Injection บนอุปกรณ์ที่มี -SC ต่อท้ายในรหัสการสั่งซื้อ ติดต่อตัวแทนขายในพื้นที่ของคุณสำหรับข้อมูลการสั่งซื้อเกี่ยวกับอุปกรณ์ Cyclone V ต่อท้าย -SC
การใช้ทรัพยากรและประสิทธิภาพ
ซอฟต์แวร์ Intel Quartus Prime สร้างการประมาณทรัพยากรต่อไปนี้สำหรับ Stratix V A7 FPGA ผลลัพธ์สำหรับอุปกรณ์อื่นจะคล้ายกัน
อินเทล คอร์ปอเรชั่น สงวนลิขสิทธิ์. Intel, โลโก้ Intel และเครื่องหมายอื่นๆ ของ Intel เป็นเครื่องหมายการค้าของ Intel Corporation หรือบริษัทในเครือ Intel รับประกันประสิทธิภาพของ FPGA และผลิตภัณฑ์เซมิคอนดักเตอร์ตามข้อกำหนดปัจจุบันตามการรับประกันมาตรฐานของ Intel แต่ขอสงวนสิทธิ์ในการเปลี่ยนแปลงผลิตภัณฑ์และบริการใดๆ ได้ตลอดเวลาโดยไม่ต้องแจ้งให้ทราบ Intel จะไม่รับผิดชอบหรือรับผิดใด ๆ ที่เกิดขึ้นจากแอปพลิเคชันหรือการใช้ข้อมูล ผลิตภัณฑ์ หรือบริการใด ๆ ที่อธิบายไว้ในที่นี้ ยกเว้นตามที่ตกลงไว้อย่างชัดแจ้งเป็นลายลักษณ์อักษรโดย Intel ขอแนะนำให้ลูกค้า Intel ขอรับข้อมูลจำเพาะของอุปกรณ์เวอร์ชันล่าสุดก่อนที่จะใช้ข้อมูลที่เผยแพร่และก่อนทำการสั่งซื้อผลิตภัณฑ์หรือบริการ *ชื่อและแบรนด์อื่น ๆ อาจเป็นทรัพย์สินของผู้อื่น
Fault Injection IP Core ประสิทธิภาพ FPGA และการใช้ทรัพยากร
อุปกรณ์ | ALM | ลอจิกรีจิสเตอร์ | เอ็ม20เค | |
หลัก | มัธยมศึกษาตอนปลาย | |||
สตราทริกซ์ วี A7 | 3,821 | 5,179 | 0 | 0 |
การติดตั้งซอฟต์แวร์ Intel Quartus Prime รวมถึงไลบรารี Intel FPGA IP ไลบรารีนี้มีคอร์ IP ที่มีประโยชน์มากมายสำหรับการใช้งานจริงของคุณโดยไม่ต้องมีใบอนุญาตเพิ่มเติม คอร์ Intel FPGA IP บางตัวจำเป็นต้องซื้อใบอนุญาตแยกต่างหากสำหรับการใช้งานจริง โหมดการประเมิน Intel FPGA IP ช่วยให้คุณสามารถประเมินคอร์ Intel FPGA IP ที่ได้รับอนุญาตเหล่านี้ในการจำลองและฮาร์ดแวร์ ก่อนตัดสินใจซื้อใบอนุญาตคอร์ IP ที่ใช้งานจริงเต็มรูปแบบ คุณจะต้องซื้อใบอนุญาตการผลิตเต็มรูปแบบสำหรับแกน IP ของ Intel ที่ได้รับอนุญาตหลังจากที่คุณเสร็จสิ้นการทดสอบฮาร์ดแวร์และพร้อมที่จะใช้ IP ในการผลิต ซอฟต์แวร์ Intel Quartus Prime ติดตั้งคอร์ IP ในตำแหน่งต่อไปนี้ตามค่าเริ่มต้น:
เส้นทางการติดตั้ง IP Core
ตำแหน่งการติดตั้ง IP Core
ที่ตั้ง | ซอฟต์แวร์ | แพลตฟอร์ม |
:\intelFPGA_pro\quartus\ip\altera | Intel Quartus Prime รุ่นโปร | Windows * |
:\intelFPGA\quartus\ip\altera | Intel Quartus Prime รุ่นมาตรฐาน | หน้าต่าง |
:/intelFPGA_pro/quartus/ip/altera | Intel Quartus Prime รุ่นโปร | ลินุกซ์ * |
:/intelFPGA/quartus/ip/altera | Intel Quartus Prime รุ่นมาตรฐาน | ลินุกซ์ |
บันทึก: ซอฟต์แวร์ Intel Quartus Prime ไม่สนับสนุนช่องว่างในเส้นทางการติดตั้ง
การปรับแต่งและสร้าง IP Cores
คุณสามารถปรับแต่งแกน IP เพื่อรองรับแอพพลิเคชั่นที่หลากหลาย แค็ตตาล็อก Intel Quartus Prime IP และตัวแก้ไขพารามิเตอร์ช่วยให้คุณเลือกและกำหนดค่าพอร์ตหลัก IP คุณสมบัติ และเอาต์พุตได้อย่างรวดเร็ว files.
แค็ตตาล็อก IP และตัวแก้ไขพารามิเตอร์
แค็ตตาล็อก IP แสดงแกน IP ที่พร้อมใช้งานสำหรับโครงการของคุณ รวมถึง Intel FPGA IP และ IP อื่นๆ ที่คุณเพิ่มในพาธการค้นหาแคตตาล็อก IP... ใช้คุณลักษณะต่อไปนี้ของแคตตาล็อก IP เพื่อค้นหาและปรับแต่งแกน IP:
- กรอง IP Catalog เพื่อแสดง IP สำหรับตระกูลอุปกรณ์ที่ใช้งานหรือแสดง IP สำหรับอุปกรณ์ทุกตระกูล หากคุณไม่ได้เปิดโปรเจ็กต์ ให้เลือก Device Family ใน IP Catalog
- พิมพ์ในช่องค้นหาเพื่อค้นหาชื่อแกน IP แบบเต็มหรือบางส่วนใน IP Catalog
- คลิกขวาที่ชื่อแกน IP ใน IP Catalog เพื่อแสดงรายละเอียดเกี่ยวกับอุปกรณ์ที่รองรับ เพื่อเปิดโฟลเดอร์การติดตั้งของแกน IP และสำหรับลิงก์ไปยังเอกสารประกอบ IP
- คลิก ค้นหา Partner IP to access partner IP information on the web.
ตัวแก้ไขพารามิเตอร์จะแจ้งให้คุณระบุชื่อรูปแบบ IP พอร์ตทางเลือก และเอาต์พุต file ตัวเลือกการสร้าง ตัวแก้ไขพารามิเตอร์สร้าง Intel Quartus Prime IP ระดับบนสุด file (.ip) สำหรับรูปแบบ IP ในโครงการ Intel Quartus Prime Pro Edition ตัวแก้ไขพารามิเตอร์สร้าง Quartus IP ระดับบนสุด file (.qip) สำหรับรูปแบบ IP ในโครงการ Intel Quartus Prime Standard Edition เหล่านี้ files แสดงถึงการเปลี่ยนแปลง IP ในโครงการ และเก็บข้อมูลการกำหนดพารามิเตอร์
ตัวแก้ไขพารามิเตอร์ IP (Intel Quartus Prime Standard Edition)
เอาต์พุตการสร้างคอร์ IP (Intel Quartus Prime Pro Edition)
ซอฟต์แวร์ Intel Quartus Prime สร้างผลลัพธ์ต่อไปนี้ file โครงสร้างสำหรับแต่ละแกน IP ที่ไม่ได้เป็นส่วนหนึ่งของระบบ Platform Designer
เอาต์พุตการสร้าง IP Core แต่ละรายการ (Intel Quartus Prime Pro Edition)
- หากรองรับและเปิดใช้งานสำหรับรูปแบบหลักของ IP ของคุณ
เอาท์พุต Files ของการสร้าง Intel FPGA IP
File ชื่อ | คำอธิบาย |
<your_ip>.ip | รูปแบบ IP ระดับบนสุด file ที่มีการกำหนดพารามิเตอร์ของคอร์ IP ในโครงการของคุณ หากรูปแบบ IP เป็นส่วนหนึ่งของระบบ Platform Designer ตัวแก้ไขพารามิเตอร์จะสร้าง .qsys ด้วย file. |
<your_ip>.cmp | การประกาศคอมโพเนนต์ VHDL (.cmp) file เป็นข้อความ file ที่มีคำจำกัดความทั่วไปและพอร์ตท้องถิ่นที่คุณใช้ในการออกแบบ VHDL files. |
<your_ip>_generation.rpt | บันทึกการสร้าง IP หรือ Platform Designer file. แสดงข้อมูลสรุปของข้อความระหว่างการสร้าง IP |
ต่อเนื่อง… |
File ชื่อ | คำอธิบาย |
<your_ip>.qgsimc (ระบบ Platform Designer เท่านั้น) | แคชจำลอง file ที่เปรียบเทียบ .qsys และ .ip fileด้วยการกำหนดพารามิเตอร์ปัจจุบันของระบบ Platform Designer และ IP คอร์ การเปรียบเทียบนี้พิจารณาว่า Platform Designer สามารถข้ามการสร้าง HDL ใหม่ได้หรือไม่ |
<your_ip>.qgsynth (ระบบ Platform Designer เท่านั้น) | แคชการสังเคราะห์ file ที่เปรียบเทียบ .qsys และ .ip fileด้วยการกำหนดพารามิเตอร์ปัจจุบันของระบบ Platform Designer และ IP คอร์ การเปรียบเทียบนี้พิจารณาว่า Platform Designer สามารถข้ามการสร้าง HDL ใหม่ได้หรือไม่ |
<your_ip>.qip | มีข้อมูลทั้งหมดเพื่อรวมและคอมไพล์ส่วนประกอบ IP |
<your_ip>.csv | มีข้อมูลเกี่ยวกับสถานะการอัพเกรดของส่วนประกอบ IP |
.bsf | สัญลักษณ์แทนรูปแบบ IP สำหรับใช้ใน Block Diagram Files (.bdf) |
<your_ip>.spd | ป้อนข้อมูล file ip-make-simscript นั้นต้องการเพื่อสร้างสคริปต์จำลอง .spd file มีรายการของ fileที่คุณสร้างขึ้นสำหรับการจำลอง พร้อมกับข้อมูลเกี่ยวกับความทรงจำที่คุณเริ่มต้น |
<your_ip>.ppf | พินแพลนเนอร์ File (.ppf) จัดเก็บการกำหนดพอร์ตและโหนดสำหรับส่วนประกอบ IP ที่คุณสร้างเพื่อใช้กับ Pin Planner |
<your_ip>_bb.v | ใช้กล่องดำ Verilog (_bb.v) file เป็นการประกาศโมดูลว่างเพื่อใช้เป็นกล่องดำ |
<your_ip>_inst.v หรือ _inst.vhd | HDL อดีตampเทมเพลตการสร้างอินสแตนซ์ คัดลอกและวางเนื้อหาของสิ่งนี้ file ลงใน HDL . ของคุณ file เพื่อยกตัวอย่างรูปแบบ IP |
<your_ip>.regmap | หาก IP มีข้อมูลการลงทะเบียน ซอฟต์แวร์ Intel Quartus Prime จะสร้าง .regmap file. .regmap file อธิบายข้อมูลแผนที่การลงทะเบียนของอินเทอร์เฟซหลักและรอง นี้ file ส่วนเสริม
.sopcinfo file โดยให้รายละเอียดข้อมูลการลงทะเบียนเพิ่มเติมเกี่ยวกับระบบ นี้ file เปิดใช้งานการลงทะเบียน display viewและสถิติที่ผู้ใช้กำหนดเองได้ในคอนโซลระบบ |
<your_ip>.svd | อนุญาตให้เครื่องมือ HPS System Debug to view แผนที่การลงทะเบียนของอุปกรณ์ต่อพ่วงที่เชื่อมต่อกับ HPS ภายในระบบ Platform Designer
ระหว่างการสังเคราะห์ ซอฟต์แวร์ Intel Quartus Prime จะจัดเก็บไฟล์ .svd files สำหรับอินเทอร์เฟซทาสที่มองเห็นได้ในคอนโซลระบบต้นแบบใน .sof file ในเซสชันการแก้ไขข้อบกพร่อง คอนโซลระบบอ่านส่วนนี้ ซึ่ง Platform Designer สืบค้นข้อมูลแผนที่การลงทะเบียน สำหรับทาสของระบบ Platform Designer จะเข้าถึงการลงทะเบียนโดยใช้ชื่อ |
<your_ip>.v
<your_ip>.vhd |
เอชดีแอล fileที่ยกตัวอย่างแต่ละ submodule หรือ child IP core สำหรับการสังเคราะห์หรือการจำลอง |
ที่ปรึกษา/ | มีสคริปต์ msim_setup.tcl เพื่อตั้งค่าและเรียกใช้การจำลอง |
อัลเด็ค/ | มีสคริปต์ rivierapro_setup.tcl เพื่อตั้งค่าและรันการจำลอง |
/เรื่องย่อ/vcs
/เรื่องย่อ/vcsmx |
มีเชลล์สคริปต์ vcs_setup.sh เพื่อตั้งค่าและรันการจำลอง
มีเชลล์สคริปต์ vcsmx_setup.sh และ synopsys_sim.setup file เพื่อตั้งค่าและเรียกใช้การจำลอง |
/จังหวะ | มีเชลล์สคริปต์ ncsim_setup.sh และ setup . อื่นๆ fileเพื่อตั้งค่าและเรียกใช้การจำลอง |
/เอ็กซ์ซีเลียม | มีเชลล์สคริปต์ตัวจำลองแบบขนาน xcelium_setup.sh และการตั้งค่าอื่นๆ fileเพื่อตั้งค่าและเรียกใช้การจำลอง |
/โมดูลย่อย | ประกอบด้วย HDL files สำหรับโมดูลย่อยหลักของ IP |
<IP โมดูลย่อย>/ | Platform Designer สร้างไดเร็กทอรีย่อย /synth และ /sim สำหรับแต่ละไดเร็กทอรี IP submodule ที่ Platform Designer สร้างขึ้น |
คำอธิบายการทำงาน
ด้วยคอร์ Fault Injection IP นักออกแบบสามารถดำเนินการกำหนดลักษณะเฉพาะของ SEFI ภายในองค์กร ปรับขนาดอัตรา FIT ตามลักษณะเฉพาะของ SEFI และปรับการออกแบบให้เหมาะสมเพื่อลดผลกระทบของ SEU
การบรรเทาอารมณ์เสียในเหตุการณ์เดียว
วงจรรวมและอุปกรณ์ลอจิกที่ตั้งโปรแกรมได้ เช่น FPGA มีความอ่อนไหวต่อ SEU SEU เป็นเหตุการณ์ที่เกิดขึ้นแบบสุ่มและไม่ทำลายล้าง ซึ่งเกิดจากแหล่งที่มาหลัก 10 แหล่ง ได้แก่ อนุภาคแอลฟาและนิวตรอนจากรังสีคอสมิก การแผ่รังสีอาจทำให้ลอจิกรีจิสเตอร์ บิตหน่วยความจำฝังตัว หรือบิตการกำหนดค่า RAM (CRAM) พลิกสถานะ จึงนำไปสู่การทำงานของอุปกรณ์ที่ไม่คาดคิด Intel Arria 10, Intel Cyclone XNUMX GX, Arria V, Cyclone V, Stratix V และอุปกรณ์รุ่นใหม่มีความสามารถด้าน CRAM ดังต่อไปนี้:
- การตรวจจับข้อผิดพลาด การตรวจสอบความซ้ำซ้อนแบบวนรอบ (EDRCC)
- การแก้ไขอัตโนมัติของ CRAM ที่ไม่พอใจ (การขัดถู)
- ความสามารถในการสร้างเงื่อนไข CRAM ที่ไม่พอใจ (การฉีดข้อผิดพลาด)
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการบรรเทา SEU ในอุปกรณ์ Intel FPGA โปรดดูบทการลด SEU ในคู่มืออุปกรณ์ที่เกี่ยวข้อง
คำอธิบายพิน IP การฉีดข้อผิดพลาด
Fault Injection IP core ประกอบด้วยพิน I/O ต่อไปนี้
พิน I/O แกน IP การฉีดข้อผิดพลาด
ชื่อพิน | ปักหมุดทิศทาง | คำอธิบายหมุด |
crcererror_pin | ป้อนข้อมูล | อินพุตจากข้อความแสดงข้อผิดพลาด Register Unloader Intel FPGA IP (EMR Unloader IP) สัญญาณนี้ได้รับการยืนยันเมื่อตรวจพบข้อผิดพลาด CRC โดย EDCRC ของอุปกรณ์ |
emr_data | ป้อนข้อมูล | เนื้อหาการลงทะเบียนข้อความแสดงข้อผิดพลาด (EMR) โปรดดูคู่มืออุปกรณ์ที่เหมาะสมสำหรับฟิลด์ EMR
อินพุตนี้สอดคล้องกับสัญญาณอินเตอร์เฟสข้อมูล Avalon Streaming |
emr_valid | ป้อนข้อมูล | ระบุว่าอินพุต emr_data มีข้อมูลที่ถูกต้อง นี่คือสัญญาณอินเตอร์เฟสที่ถูกต้องของ Avalon Streaming |
รีเซ็ต | ป้อนข้อมูล | อินพุตรีเซ็ตโมดูล การรีเซ็ตถูกควบคุมอย่างสมบูรณ์โดย Fault Injection Debugger |
error_injected | เอาท์พุต | ระบุว่ามีข้อผิดพลาดถูกฉีดเข้าไปใน CRAM ตามคำสั่งผ่าน JTAG อินเตอร์เฟซ. ระยะเวลาที่สัญญาณยืนยันขึ้นอยู่กับการตั้งค่า JTAG TCK และสัญญาณบล็อกควบคุม โดยปกติแล้ว เวลาจะอยู่ที่ประมาณ 20 รอบสัญญาณนาฬิกาของสัญญาณ TCK |
error_scrubbed | เอาท์พุต | แสดงว่าการขัดอุปกรณ์เสร็จสิ้นตามคำสั่งผ่าน JTAG อินเตอร์เฟซ. ระยะเวลาที่สัญญาณยืนยันขึ้นอยู่กับการตั้งค่า JTAG TCK และสัญญาณบล็อกควบคุม โดยปกติแล้ว เวลาจะอยู่ที่ประมาณ 20 รอบสัญญาณนาฬิกาของสัญญาณ TCK |
รวม | เอาท์พุต | เอาต์พุตเสริม Fault Injection IP ใช้นาฬิกานี้ เช่นample เพื่อตอกบัตรบล็อก EMR_unloader |
ไดอะแกรมพิน IP ของ Fault Injection
การใช้ Fault Injection Debugger และ Fault Injection IP Core
Fault Injection Debugger ทำงานร่วมกับคอร์ Fault Injection IP ขั้นแรก คุณต้องสร้างอินสแตนซ์คอร์ IP ในการออกแบบ คอมไพล์ และดาวน์โหลดการกำหนดค่าที่เป็นผลลัพธ์ file ลงในอุปกรณ์ของคุณ จากนั้น คุณเรียกใช้ Fault Injection Debugger จากภายในซอฟต์แวร์ Intel Quartus Prime หรือจากบรรทัดคำสั่งเพื่อจำลองข้อผิดพลาดแบบซอฟต์
- Fault Injection Debugger ช่วยให้คุณสามารถดำเนินการทดสอบ Fault Injection แบบโต้ตอบหรือตามคำสั่งแบบชุด และอนุญาตให้คุณระบุพื้นที่ตรรกะในการออกแบบของคุณสำหรับ Fault Injection
- อินเทอร์เฟซบรรทัดคำสั่งมีประโยชน์สำหรับการเรียกใช้ดีบักเกอร์ผ่านสคริปต์
บันทึก
Fault Injection Debugger สื่อสารกับคอร์ Fault Injection IP ผ่าน JTAG อินเตอร์เฟซ. Fault Injection IP ยอมรับคำสั่งจาก JTAG ติดต่อและรายงานสถานะย้อนหลังผ่าน JTAG อินเตอร์เฟซ. คอร์ Fault Injection IP ถูกนำมาใช้ในลอจิกแบบซอฟต์ในอุปกรณ์ของคุณ ดังนั้น คุณต้องคำนึงถึงการใช้ตรรกะนี้ในการออกแบบของคุณ วิธีการหนึ่งคือการระบุลักษณะการตอบสนองของการออกแบบของคุณต่อ SEU ในห้องแล็บ จากนั้นละเว้นคอร์ IP จากการออกแบบที่ใช้งานขั้นสุดท้ายของคุณ
คุณใช้คอร์ Fault Injection IP กับคอร์ IP ต่อไปนี้:
- Error Message Register Unloader IP core ซึ่งอ่านและจัดเก็บข้อมูลจากวงจรการตรวจจับข้อผิดพลาดที่เข้มงวดในอุปกรณ์ Intel FPGA
- (ไม่บังคับ) คอร์ Advanced SEU Detection Intel FPGA IP ซึ่งเปรียบเทียบตำแหน่งข้อผิดพลาดแบบบิตเดียวกับแมปความไวระหว่างการทำงานของอุปกรณ์เพื่อระบุว่าข้อผิดพลาดแบบซอฟต์มีผลหรือไม่
ดีบักเกอร์ Fault Injection Overview แผนภาพบล็อก
หมายเหตุ:
-
Fault Injection IP พลิกบิตของลอจิกเป้าหมาย
-
Fault Injection Debugger และ Advanced SEU Detection IP ใช้อินสแตนซ์ EMR Unloader เดียวกัน
-
คอร์ Advanced SEU Detection IP เป็นทางเลือก
ข้อมูลที่เกี่ยวข้อง
- เกี่ยวกับ SMH Fileในหน้า 13
- เกี่ยวกับ EMR Unloader IP Core ในหน้า 10
- เกี่ยวกับ Advanced SEU Detection IP Core ในหน้า 11
การสร้างอินสแตนซ์ของ Fault Injection IP Core
บันทึก
Fault Injection IP core ไม่ต้องการให้คุณตั้งค่าพารามิเตอร์ใดๆ หากต้องการใช้ IP หลัก ให้สร้างอินสแตนซ์ IP ใหม่ รวมไว้ในระบบ Platform Designer (มาตรฐาน) ของคุณ และเชื่อมต่อสัญญาณตามความเหมาะสม คุณต้องใช้คอร์ Fault Injection IP กับคอร์ EMR Unloader IP แกน IP Fault Injection และ EMR Unloader มีอยู่ใน Platform Designer และ IP Catalog คุณสามารถเลือกสร้างอินสแตนซ์ลงในการออกแบบ RTL ได้โดยตรงโดยใช้ Verilog HDL, SystemVerilog หรือ VHDL
เกี่ยวกับ EMR Unloader IP Core
EMR Unloader IP core มีอินเทอร์เฟซไปยัง EMR ซึ่งได้รับการอัปเดตอย่างต่อเนื่องโดย EDCRC ของอุปกรณ์ที่จะตรวจสอบ CRC บิต CRAM ของอุปกรณ์เพื่อหาข้อผิดพลาดแบบซอฟต์
Example Platform Designer System รวมถึง Fault Injection IP Core และ EMR Unloader IP Core
Example Fault Injection IP Core และ EMR Unloader IP Core Block Diagram
ข้อมูลที่เกี่ยวข้อง
ข้อความแสดงข้อผิดพลาด Register Unloader คู่มือผู้ใช้ Intel FPGA IP Core
เกี่ยวกับ Advanced SEU Detection IP Core
ใช้คอร์ IP การตรวจจับ SEU ขั้นสูง (ASD) เมื่อความทนทานต่อ SEU เป็นปัญหาในการออกแบบ คุณต้องใช้ EMR Unloader IP core กับ ASD IP core ดังนั้น หากคุณใช้ ASD IP และ Fault Injection IP ในการออกแบบเดียวกัน จะต้องแชร์เอาต์พุต EMR Unloader ผ่านส่วนประกอบตัวแยก Avalon®-ST รูปภาพต่อไปนี้แสดงระบบ Platform Designer ซึ่งตัวแยก Avalon-ST กระจายเนื้อหา EMR ไปยังแกน ASD และ Fault Injection IP
การใช้ ASD และ Fault Injection IP ในระบบ Platform Designer เดียวกัน
ข้อมูลที่เกี่ยวข้อง
คู่มือผู้ใช้ Advanced SEU Detection Intel FPGA IP Core
การกำหนดพื้นที่ฉีดผิดพลาด
คุณสามารถกำหนดขอบเขตเฉพาะของ FPGA สำหรับการฉีดข้อบกพร่องโดยใช้ Sensitivity Map Header (.smh) file. สจล file เก็บพิกัดของบิต CRAM ของอุปกรณ์ ภูมิภาคที่กำหนด (ภูมิภาค ASD) และระดับวิกฤต ในระหว่างขั้นตอนการออกแบบ คุณใช้ลำดับชั้น tagging เพื่อสร้างภูมิภาค จากนั้น ระหว่างการคอมไพล์ Intel Quartus Prime Assembler จะสร้าง SMH file. Fault Injection Debugger จะจำกัดการแทรกข้อผิดพลาดไว้ในพื้นที่อุปกรณ์เฉพาะที่คุณกำหนดใน SMH file.
ลำดับชั้นการแสดง Tagจิง
คุณกำหนดขอบเขต FPGA สำหรับการทดสอบโดยกำหนดขอบเขต ASD ให้กับตำแหน่ง คุณสามารถระบุค่าภูมิภาค ASD สำหรับส่วนใดๆ ของลำดับชั้นการออกแบบของคุณโดยใช้หน้าต่างพาร์ติชันการออกแบบ
- เลือกงานที่มอบหมาย ➤ ออกแบบหน้าต่างพาร์ติชัน
- คลิกขวาที่ใดก็ได้ในแถวส่วนหัวและเปิดภูมิภาค ASD เพื่อแสดงคอลัมน์ภูมิภาค ASD (หากยังไม่ได้แสดง)
- ป้อนค่าตั้งแต่ 0 ถึง 16 สำหรับพาร์ติชันใดๆ เพื่อกำหนดให้กับภูมิภาค ASD เฉพาะ
- ASD ภูมิภาค 0 สงวนไว้สำหรับส่วนที่ไม่ได้ใช้ของอุปกรณ์ คุณสามารถกำหนดพาร์ติชันให้กับภูมิภาคนี้เพื่อระบุว่าไม่สำคัญ..
- ASD ภูมิภาค 1 เป็นภูมิภาคเริ่มต้น ส่วนที่ใช้ทั้งหมดของอุปกรณ์ถูกกำหนดให้กับภูมิภาคนี้ เว้นแต่คุณจะเปลี่ยนการกำหนดภูมิภาค ASD อย่างชัดเจน
เกี่ยวกับ SMH Files
SMH file มีข้อมูลดังต่อไปนี้:
- หากคุณไม่ได้ใช้ลำดับชั้น tagging (เช่น การออกแบบไม่มีการกำหนดภูมิภาค ASD ที่ชัดเจนในลำดับชั้นการออกแบบ), SMH file แสดงทุกบิต CRAM และระบุว่ามีความสำคัญต่อการออกแบบหรือไม่
- หากคุณได้ดำเนินการตามลำดับชั้น tagging และเปลี่ยนการกำหนดภูมิภาค ASD เริ่มต้น SMH file แสดงทุกบิต CRAM และกำหนดภูมิภาค ASD
Fault Injection Debugger สามารถจำกัดการฉีดไปยังภูมิภาคที่ระบุอย่างน้อยหนึ่งแห่ง เพื่อสั่งให้ Assembler สร้าง SMH file:
- เลือก การมอบหมาย ➤ อุปกรณ์ ➤ ตัวเลือกอุปกรณ์และพิน ➤ การตรวจจับข้อผิดพลาด CRC
- เปิดแผนที่ความไวของ Generate SEU file (.smh) ตัวเลือก
การใช้ดีบักเกอร์ Fault Injection
บันทึก
หากต้องการใช้ Fault Injection Debugger คุณต้องเชื่อมต่อกับอุปกรณ์ของคุณผ่าน JTAG อินเตอร์เฟซ. จากนั้น กำหนดค่าอุปกรณ์และดำเนินการฉีดข้อบกพร่อง ในการเปิดใช้งาน Fault Injection Debugger ให้เลือกเครื่องมือ ➤ Fault Injection Debugger ในซอฟต์แวร์ Intel Quartus Prime การกำหนดค่าหรือการตั้งโปรแกรมอุปกรณ์จะคล้ายกับขั้นตอนที่ใช้สำหรับโปรแกรมเมอร์หรือเครื่องวิเคราะห์ลอจิกการแตะสัญญาณ
ดีบักเกอร์ Fault Injection
ในการกำหนดค่า JTAG โซ่:
- คลิก การตั้งค่าฮาร์ดแวร์ เครื่องมือนี้จะแสดงฮาร์ดแวร์การเขียนโปรแกรมที่เชื่อมต่อกับคอมพิวเตอร์ของคุณ
- เลือกฮาร์ดแวร์การเขียนโปรแกรมที่คุณต้องการใช้
- คลิกปิด
- คลิกตรวจหาอัตโนมัติ ซึ่งจะเติมห่วงโซ่อุปกรณ์ด้วยอุปกรณ์ที่ตั้งโปรแกรมได้ที่พบใน JTAG โซ่.
ข้อมูลที่เกี่ยวข้อง
คุณลักษณะ Fault Injection เป้าหมาย ในหน้า 21
ข้อกำหนดด้านฮาร์ดแวร์และซอฟต์แวร์
ต้องใช้ฮาร์ดแวร์และซอฟต์แวร์ต่อไปนี้เพื่อใช้ Fault Injection Debugger:
- บรรทัดคุณลักษณะในใบอนุญาต Intel FPGA ของคุณที่เปิดใช้งานคอร์ Fault Injection IP สำหรับข้อมูลเพิ่มเติม โปรดติดต่อตัวแทนขาย Intel FPGA ในพื้นที่ของคุณ
- สายเคเบิลดาวน์โหลด (สายเคเบิลดาวน์โหลด Intel FPGA, สายเคเบิลดาวน์โหลด Intel FPGA II, หรือ II)
- ชุดพัฒนา Intel FPGA หรือบอร์ดที่ผู้ใช้ออกแบบด้วย JTAG การเชื่อมต่อกับอุปกรณ์ที่ทดสอบ
- (ไม่บังคับ) รายการคุณลักษณะในใบอนุญาต Intel FPGA ของคุณที่เปิดใช้งานคอร์ IP การตรวจจับ SEU ขั้นสูง
การกำหนดค่าอุปกรณ์ของคุณและดีบักเกอร์ Fault Injection
Fault Injection Debugger ใช้ .sof และ (เป็นทางเลือก) ส่วนหัวของ Sensitivity Map Header (.smh) file. วัตถุซอฟต์แวร์ File (.sof) กำหนดค่า FPGA .smh file กำหนดความไวของบิต CRAM ในอุปกรณ์ หากคุณไม่ได้ระบุ .smh file, Fault Injection Debugger จะแทรกข้อผิดพลาดแบบสุ่มทั่วทั้ง CRAM bits ในการระบุ .sof:
- เลือก FPGA ที่คุณต้องการกำหนดค่าในช่อง Device chain
- คลิกเลือก File.
- ไปที่ .sof แล้วคลิก ตกลง Fault Injection Debugger อ่านไฟล์ .sof
- (ไม่บังคับ) เลือก SMH file.
หากคุณไม่ระบุ SMH fileดีบักเกอร์ Fault Injection จะแทรกข้อผิดพลาดแบบสุ่มทั่วทั้งอุปกรณ์ หากคุณระบุ SMH fileคุณสามารถจำกัดการฉีดไปยังพื้นที่ใช้งานของอุปกรณ์ได้- คลิกขวาที่อุปกรณ์ในช่อง Device chain จากนั้นคลิก Select SMH File.
- เลือก SMH ของคุณ file.
- คลิกตกลง.
- เปิดโปรแกรม/กำหนดค่า
- คลิกเริ่มต้น
Fault Injection Debugger กำหนดค่าอุปกรณ์โดยใช้ .sof
เมนูบริบทสำหรับการเลือก SMH File
พื้นที่จำกัดสำหรับ Fault Injection
หลังจากโหลด SMH fileคุณสามารถกำหนดให้ Fault Injection Debugger ทำงานบนพื้นที่ ASD เฉพาะได้ ในการระบุภูมิภาค ASD ที่จะแทรกข้อผิดพลาด:
- คลิกขวาที่ FPGA ในกล่อง Device chain และคลิก Show Device Sensitivity Map
- เลือกภูมิภาค ASD สำหรับการฉีดข้อบกพร่อง
แผนที่ความไวของอุปกรณ์ Viewer
การระบุประเภทข้อผิดพลาด
คุณสามารถระบุข้อผิดพลาดประเภทต่างๆ สำหรับการฉีด
- ข้อผิดพลาดเดียว (SE)
- ข้อผิดพลาดที่อยู่ติดกันสองครั้ง (DAE)
- ข้อผิดพลาดหลายบิตที่ไม่สามารถแก้ไขได้ (EMBE)
อุปกรณ์ Intel FPGA สามารถแก้ไขข้อผิดพลาดเดี่ยวและคู่ที่อยู่ติดกันได้ด้วยตนเอง หากเปิดใช้งานคุณสมบัติการขัดถู อุปกรณ์ Intel FPGA ไม่สามารถแก้ไขข้อผิดพลาดหลายบิตได้ โปรดดูบทเกี่ยวกับการบรรเทา SEU สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการดีบักข้อผิดพลาดเหล่านี้ คุณสามารถระบุส่วนผสมของข้อผิดพลาดในการฉีดและช่วงเวลาการฉีดได้ ในการระบุช่วงเวลาการฉีด:
- ใน Fault Injection Debugger ให้เลือก Tools ➤ Options
- ลากตัวควบคุมสีแดงไปที่ข้อผิดพลาดผสมกัน หรือคุณสามารถระบุการผสมเป็นตัวเลขได้
- ระบุช่วงเวลาการฉีด
- คลิกตกลง.
รูปที่ 12. การระบุส่วนผสมของประเภทความผิดพลาดของ SEU
ข้อมูลที่เกี่ยวข้อง บรรเทาอารมณ์เสียจากเหตุการณ์เดียว
ข้อผิดพลาดในการฉีด
คุณสามารถแทรกข้อผิดพลาดได้ในหลายโหมด:
- ใส่ข้อผิดพลาดหนึ่งรายการในคำสั่ง
- ใส่ข้อผิดพลาดหลายรายการในคำสั่ง
- ใส่ข้อผิดพลาดจนกว่าจะได้รับคำสั่งให้หยุด
ในการฉีดข้อผิดพลาดเหล่านี้:
- เปิดตัวเลือก Inject Fault
- เลือกว่าคุณต้องการเรียกใช้การป้อนข้อผิดพลาดสำหรับการวนซ้ำหลายครั้งหรือจนกว่าจะหยุดทำงาน:
- หากคุณเลือกที่จะทำงานจนกระทั่งหยุดทำงาน Fault Injection Debugger จะแทรกข้อผิดพลาดในช่วงเวลาที่ระบุในกล่องโต้ตอบ Tools ➤ Options
- หากคุณต้องการเรียกใช้การป้อนข้อผิดพลาดสำหรับจำนวนการวนซ้ำที่ระบุ ให้ป้อนหมายเลข
- คลิกเริ่มต้น
บันทึก: Fault Injection Debugger ทำงานตามจำนวนการวนซ้ำที่ระบุหรือจนกว่าจะหยุดทำงาน หน้าต่าง Intel Quartus Prime Messages แสดงข้อความเกี่ยวกับข้อผิดพลาดที่แทรกเข้ามา สำหรับข้อมูลเพิ่มเติมเกี่ยวกับความผิดพลาดที่แทรกเข้ามา ให้คลิก อ่าน EMR Fault Injection Debugger อ่าน EMR ของอุปกรณ์และแสดงเนื้อหาในหน้าต่างข้อความ
Intel Quartus Prime Error Injection และข้อความเนื้อหา EMR
ข้อผิดพลาดในการบันทึก
คุณสามารถบันทึกตำแหน่งของข้อผิดพลาดที่แทรกเข้ามาได้โดยการสังเกตพารามิเตอร์ที่รายงานในหน้าต่าง Intel Quartus Prime Messages ถ้าเช่นample, ข้อผิดพลาดที่ถูกแทรกส่งผลให้เกิดพฤติกรรมที่คุณต้องการเล่นซ้ำ คุณสามารถกำหนดเป้าหมายตำแหน่งนั้นสำหรับการแทรก คุณดำเนินการฉีดเป้าหมายโดยใช้อินเทอร์เฟซบรรทัดคำสั่ง Fault Injection Debugger
การล้างข้อผิดพลาดที่แทรกเข้ามา
หากต้องการคืนค่าการทำงานปกติของ FPGA ให้คลิก ขัด เมื่อคุณแก้ไขข้อผิดพลาด ฟังก์ชัน EDCRC ของอุปกรณ์จะถูกใช้เพื่อแก้ไขข้อผิดพลาด กลไกการขัดคล้ายกับที่ใช้ระหว่างการทำงานของอุปกรณ์
อินเทอร์เฟซบรรทัดคำสั่ง
คุณสามารถเรียกใช้ Fault Injection Debugger ที่บรรทัดคำสั่งด้วยไฟล์เรียกทำงาน quartus_fid ซึ่งมีประโยชน์หากคุณต้องการดำเนินการฉีดข้อบกพร่องจากสคริปต์
ตารางที่ 5 อาร์กิวเมนต์บรรทัดคำสั่งสำหรับ Fault Injection
อาร์กิวเมนต์สั้น ๆ | อาร์กิวเมนต์ยาว | คำอธิบาย |
c | สายเคเบิล | ระบุฮาร์ดแวร์โปรแกรมหรือสายเคเบิล (ที่จำเป็น) |
i | ดัชนี | ระบุอุปกรณ์ที่ใช้งานเพื่อฉีดความผิด (ที่จำเป็น) |
n | ตัวเลข | ระบุจำนวนข้อผิดพลาดที่จะแทรก ค่าเริ่มต้นคือ
1. (ทางเลือก) |
t | เวลา | ช่วงเวลาระหว่างการฉีด (ไม่จำเป็น) |
บันทึก: ใช้ quartus_fid –help เพื่อ view ตัวเลือกที่มีอยู่ทั้งหมด รหัสต่อไปนี้ให้เช่นampโดยใช้อินเทอร์เฟซบรรทัดคำสั่ง Fault Injection Debugger
-
- # ค้นหาว่ามีสาย USB ใดบ้างสำหรับอินสแตนซ์นี้
- # ผลปรากฏว่ามีสายมาให้ XNUMX เส้น ชื่อ “USB-Blaster” #
- $quartus_fid –รายการ . .
- ข้อมูล: คำสั่ง: quartus_fid –list
- USB-Blaster บน sj-sng-z4 [USB-0] ข้อมูล: Intel Quartus Prime 64-Bit Fault Injection Debugger ประสบความสำเร็จ 0 ข้อผิดพลาด 0 คำเตือน
- -
- # ค้นหาอุปกรณ์ที่มีอยู่ในสาย USB-Blaster
- # ผลลัพธ์จะแสดงอุปกรณ์สองเครื่อง: Stratix V A7 และ MAX V CPLD #
- $ quartus_fid –สาย USB-Blaster -a
- ข้อมูล: คำสั่ง: quartus_fid –cable=USB-Blaster -a
- ข้อมูล (208809): การใช้สายโปรแกรม “USB-Blaster on sj-sng-z4 [USB-0]”
- USB-Blaster บน sj-sng-z4 [USB-0]
- 029030DD 5SGXEA7H(1|2|3)/5SGXEA7K1/..
- 020A40DD 5M2210Z/EPM2210
- ข้อมูล: Intel Quartus Prime 64-Bit Fault Injection Debugger ประสบความสำเร็จ
- 0 ข้อผิดพลาด 0 คำเตือน
- -
- # ตั้งโปรแกรมอุปกรณ์ Stratix V
- # ตัวเลือก –index ระบุการดำเนินการที่ดำเนินการบนอุปกรณ์ที่เชื่อมต่อ
- # “=svgx.sof” เชื่อมโยง .sof file กับตัวเครื่อง
- # “#p” หมายถึงโปรแกรมอุปกรณ์ #
- $quartus_fid –cable USB-Blaster –index “@1=svgx.sof#p” . .
- ข้อมูล (209016): การกำหนดค่าดัชนีอุปกรณ์ 1
- ข้อมูล (209017): อุปกรณ์ 1 มี JTAG รหัสประจำตัวประชาชน 0x029030DD
- ข้อมูล (209007): กำหนดค่าสำเร็จ — กำหนดค่าอุปกรณ์ 1 เครื่อง
- ข้อมูล (209011): ดำเนินการสำเร็จแล้ว
- ข้อมูล (208551): ลายเซ็นโปรแกรมลงในอุปกรณ์ 1
- ข้อมูล: Intel Quartus Prime 64-Bit Fault Injection Debugger ประสบความสำเร็จ
- 0 ข้อผิดพลาด 0 คำเตือน
- -
- #ใส่ความผิดปกติลงในอุปกรณ์
- # ตัวดำเนินการ #i บ่งชี้ถึงข้อผิดพลาด
- # -n 3 หมายถึงการฉีด 3 ข้อผิดพลาด #
- $ quartus_fid – สาย USB-Blaster – ดัชนี “@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): ใส่ข้อผิดพลาด 3 รายการลงในอุปกรณ์
- ข้อมูล: Intel Quartus Prime 64-Bit Fault Injection Debugger ประสบความสำเร็จ
- 0 ข้อผิดพลาด 0 คำเตือน
- -
- # โหมดโต้ตอบ
- # การใช้การดำเนินการ #i กับ -n 0 ทำให้ดีบักเกอร์เข้าสู่โหมดโต้ตอบ
- # โปรดทราบว่ามีข้อผิดพลาด 3 รายการในเซสชันก่อนหน้า
- # “E” อ่านข้อบกพร่องในปัจจุบันใน EMR Unloader IP core #
- $ quartus_fid – สาย USB-Blaster – ดัชนี “@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' เพื่อฉีดความผิด
- 'E' เพื่ออ่าน EMR
- 'S' เพื่อขัดข้อผิดพลาด
- 'Q' เพื่อออกจาก E
- ข้อมูล (208540): อ่านอาร์เรย์ EMR
- ข้อมูล (208544): ตรวจพบข้อผิดพลาด 3 เฟรมในอุปกรณ์ 1
- ข้อมูล (208545): ข้อผิดพลาด #1: ข้อผิดพลาดเดียวในเฟรม 0x1028 ที่บิต 0x21EA
- ข้อมูล (10914): ข้อผิดพลาด #2 : ข้อผิดพลาดหลายบิตที่ไม่สามารถแก้ไขได้ในเฟรม 0x1116
- ข้อมูล (208545): ข้อผิดพลาด #3 : ข้อผิดพลาดเดียวในเฟรม 0x1848 ที่บิต 0x128C
- 'F' เพื่อฉีดความผิด
- 'E' เพื่ออ่าน EMR
- 'S' เพื่อขัดข้อผิดพลาด
- 'Q' เพื่อออกจาก Q
- ข้อมูล: ดีบักเกอร์ Intel Quartus Prime 64-Bit Fault Injection สำเร็จแล้ว 0 ข้อผิดพลาด 0 คำเตือน
- ข้อมูล: หน่วยความจำเสมือนสูงสุด: 1522 เมกะไบต์
- ข้อมูล: สิ้นสุดการประมวลผล: จันทร์ 3 พ.ย. 18:50:00 น. 2014
- ข้อมูล: เวลาที่ผ่านไป: 00:00:29 น
- ข้อมูล: เวลา CPU ทั้งหมด (ในโปรเซสเซอร์ทั้งหมด): 00:00:13
คุณลักษณะ Fault Injection เป้าหมาย
บันทึก
Fault Injection Debugger จะแทรกข้อผิดพลาดเข้าไปใน FPGA แบบสุ่ม อย่างไรก็ตาม คุณลักษณะ Targeted Fault Injection ช่วยให้คุณสามารถแทรกข้อผิดพลาดไปยังตำแหน่งเป้าหมายใน CRAM การดำเนินการนี้อาจมีประโยชน์ เช่นampหากคุณสังเกตเห็นเหตุการณ์ SEU และต้องการทดสอบ FPGA หรือการตอบสนองของระบบต่อเหตุการณ์เดียวกันหลังจากปรับเปลี่ยนกลยุทธ์การกู้คืน คุณลักษณะ Targeted Fault Injection พร้อมใช้งานจากอินเทอร์เฟซบรรทัดคำสั่งเท่านั้น คุณสามารถระบุว่าข้อผิดพลาดถูกแทรกจากบรรทัดคำสั่งหรือในโหมดพรอมต์ ข้อมูลที่เกี่ยวข้อง
539: วิธีการทดสอบหรือการตรวจจับข้อผิดพลาดและการกู้คืนโดยใช้ CRC ในอุปกรณ์ Intel FPGA
การระบุรายการข้อผิดพลาดจากบรรทัดคำสั่ง
คุณลักษณะ Targeted Fault Injection ช่วยให้คุณสามารถระบุรายการข้อผิดพลาดจากบรรทัดคำสั่ง ดังที่แสดงไว้ด้านล่างเช่น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
การระบุรายการข้อผิดพลาดจากโหมดพรอมต์
คุณสามารถใช้งานคุณลักษณะ Targeted Fault Injection แบบโต้ตอบได้โดยการระบุจำนวนข้อผิดพลาดเป็น 0 (-n 0) Fault Injection Debugger แสดงคำสั่งโหมดพรอมต์และคำอธิบาย
คำสั่งโหมดพรอมต์ | คำอธิบาย |
F | ใส่ความผิด |
E | อ่าน EMR |
S | ขัดข้อผิดพลาด |
Q | ล้มเลิก |
ในโหมดพรอมต์ คุณสามารถใช้คำสั่ง F เพียงอย่างเดียวเพื่อใส่ข้อผิดพลาดเดียวในตำแหน่งสุ่มในอุปกรณ์ ในตัวอย่างต่อไปนี้ampเมื่อใช้คำสั่ง 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
- ตำแหน่งหลังจาก 3 คู่เฟรม/บิตแรกจะถูกละเว้น
การกำหนดตำแหน่งของ CRAM Bit
บันทึก:
เมื่อ Fault Injection Debugger ตรวจพบข้อผิดพลาด CRAM EDCRC Error Message Register (EMR) จะมีซินโดรม หมายเลขเฟรม ตำแหน่งบิต และประเภทข้อผิดพลาด (single, double หรือ multi-bit) ของข้อผิดพลาด CRAM ที่ตรวจพบ ในระหว่างการทดสอบระบบ ให้บันทึกเนื้อหา EMR ที่รายงานโดย Fault Injection Debugger เมื่อคุณตรวจพบข้อผิดพลาด EDCRC ด้วยเนื้อหา EMR ที่บันทึกไว้ คุณสามารถระบุหมายเลขเฟรมและบิตให้กับ Fault Injection Debugger เพื่อเล่นซ้ำข้อผิดพลาดที่บันทึกไว้ในระหว่างการทดสอบระบบ เพื่อออกแบบเพิ่มเติม และกำหนดลักษณะของการตอบสนองการกู้คืนระบบต่อข้อผิดพลาดนั้น
ข้อมูลที่เกี่ยวข้อง
AN 539: วิธีทดสอบหรือการตรวจจับข้อผิดพลาดและการกู้คืนโดยใช้ CRC ในอุปกรณ์ Intel FPGA
ตัวเลือกบรรทัดคำสั่งขั้นสูง: ภูมิภาค ASD และการถ่วงน้ำหนักประเภทข้อผิดพลาด
คุณสามารถใช้อินเทอร์เฟซบรรทัดคำสั่ง Fault Injection Debugger เพื่อแทรกข้อผิดพลาดลงในพื้นที่ ASD และถ่วงน้ำหนักประเภทข้อผิดพลาด ขั้นแรก คุณต้องระบุประเภทข้อผิดพลาดผสมกัน (บิตเดี่ยว สองบิตที่อยู่ติดกัน และหลายบิตที่แก้ไขไม่ได้) โดยใช้ –weight . . ตัวเลือก. สำหรับอดีตampสำหรับข้อผิดพลาดเดี่ยว 50% ข้อผิดพลาดที่อยู่ติดกัน 30% และข้อผิดพลาดหลายบิตที่แก้ไขไม่ได้ 20% ให้ใช้ตัวเลือก –weight=50.30.20 จากนั้น หากต้องการกำหนดเป้าหมายภูมิภาค ASD ให้ใช้ตัวเลือก -smh เพื่อรวม SMH file และระบุภูมิภาค ASD ที่จะกำหนดเป้าหมาย สำหรับอดีตampเลอ: $ quartus_fid –cable=USB-BlasterII –index “@1=svgx.sof#pi” –weight=100.0.0 –smh=”@1=svgx.smh#2″ –number=30
อดีตนี้ampคำสั่ง le:
- ตั้งโปรแกรมอุปกรณ์และแทรกข้อผิดพลาด (pi string)
- ฉีดข้อผิดพลาดบิตเดียว 100% (100.0.0)
- ใส่เข้าไปใน ASD_REGION 2 เท่านั้น (ระบุโดย #2)
- ฉีด 30 ข้อบกพร่อง
คู่มือผู้ใช้ Fault Injection IP Core
IP Core รุ่น | คู่มือการใช้งาน |
18.0 | คู่มือผู้ใช้ Fault Injection Intel FPGA IP Core |
17.1 | คู่มือผู้ใช้ Intel FPGA Fault Injection IP Core |
16.1 | คู่มือผู้ใช้ Altera Fault Injection IP Core |
15.1 | คู่มือผู้ใช้ Altera Fault Injection IP Core |
หากไม่มี IP core version อยู่ในรายการ คู่มือผู้ใช้สำหรับ IP core รุ่นก่อนหน้าจะถูกนำมาใช้
ประวัติการแก้ไขเอกสารสำหรับ คู่มือผู้ใช้ Fault Injection IP Core
เวอร์ชันเอกสาร | รุ่น Intel Quartus Prime | การเปลี่ยนแปลง |
2019.07.09 | 18.1 | อัพเดตแล้ว คำอธิบายพิน IP การฉีดข้อผิดพลาด หัวข้อเพื่อชี้แจงสัญญาณ Reset, error_injected และ error_scrubbed |
2018.05.16 | 18.0 | • เพิ่มหัวข้อต่อไปนี้จากคู่มือ Intel Quartus Prime Pro Edition:
— การกำหนดพื้นที่ฉีดผิดพลาด และหัวข้อย่อย — การใช้ดีบักเกอร์ Fault Injection และหัวข้อย่อย — อินเทอร์เฟซบรรทัดคำสั่ง และหัวข้อย่อย • เปลี่ยนชื่อคอร์ Intel FPGA Fault Injection IP เป็น Fault Injection 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 Fault Injection FPGA IP Core [พีดีเอฟ] คู่มือการใช้งาน UG-01173 Fault Injection FPGA IP Core, UG-01173, Fault Injection FPGA IP Core, Injection c, การฉีด FPGA IP Core |