Vendor Independent SEE Mitigation Solution For FPGAs Kamesh Ramani Pravin Bhandakkar Darren Zacher Melanie Berg (MEI – NASA Goddard)

Slides:



Advertisements
Similar presentations
Giuseppe De Robertis - INFN Sez. di Bari 1 SEU – SET test structures.
Advertisements

Basic HDL Coding Techniques
Melanie Berg MEI Technologies/NASA GSFC
© 2003 Xilinx, Inc. All Rights Reserved Course Wrap Up DSP Design Flow.
10/14/2005Caltech1 Reliable State Machines Dr. Gary R Burke California Institute of Technology Jet Propulsion Laboratory.
ECE 551 Digital System Design & Synthesis Lecture 08 The Synthesis Process Constraints and Design Rules High-Level Synthesis Options.
© 2003 Xilinx, Inc. All Rights Reserved Architecture Wizard and PACE FPGA Design Flow Workshop Xilinx: new module Xilinx: new module.
Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003.
Maintaining Data Integrity in Programmable Logic in Atmospheric Environments through Error Detection Joel Seely Technical Marketing Manager Military &
CSE241 Formal Verification.1Cichy, UCSD ©2003 CSE241A VLSI Digital Circuits Winter 2003 Recitation 6: Formal Verification.
Graduate Computer Architecture I Lecture 15: Intro to Reconfigurable Devices.
FPGA-Based System Design: Chapter 3 Copyright  2004 Prentice Hall PTR SRAM-based FPGA n SRAM-based LE –Registers in logic elements –LUT-based logic element.
The Design Process Outline Goal Reading Design Domain Design Flow
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
Embedded Systems Hardware:
The Spartan 3e FPGA. CS/EE 3710 The Spartan 3e FPGA  What’s inside the chip? How does it implement random logic? What other features can you use?  What.
Programmable logic and FPGA
Logic Design Outline –Logic Design –Schematic Capture –Logic Simulation –Logic Synthesis –Technology Mapping –Logic Verification Goal –Understand logic.
Embedded Systems Hardware: Storage Elements; Finite State Machines; Sequential Logic.
Design for Testability
General FPGA Architecture Field Programmable Gate Array.
Global Timing Constraints FPGA Design Workshop. Objectives  Apply timing constraints to a simple synchronous design  Specify global timing constraints.
Radiation Effects and Mitigation Strategies for modern FPGAs 10 th annual workshop for LHC and Future experiments Los Alamos National Laboratory, USA.
A comprehensive method for the evaluation of the sensitivity to SEUs of FPGA-based applications A comprehensive method for the evaluation of the sensitivity.
MAPLD 2009 Presentation Poster Session
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.
FPGA (Field Programmable Gate Array): CLBs, Slices, and LUTs Each configurable logic block (CLB) in Spartan-6 FPGAs consists of two slices, arranged side-by-side.
Tools - Implementation Options - Chapter15 slide 1 FPGA Tools Course Implementation Options.
Chonnam national university VLSI Lab 8.4 Block Integration for Hard Macros The process of integrating the subblocks into the macro.
FORMAL VERIFICATION OF ADVANCED SYNTHESIS OPTIMIZATIONS Anant Kumar Jain Pradish Mathews Mike Mahar.
Design for Testability By Dr. Amin Danial Asham. References An Introduction to Logic Circuit Testing.
Introduction to FPGA Created & Presented By Ali Masoudi For Advanced Digital Communication Lab (ADC-Lab) At Isfahan University Of technology (IUT) Department.
Field Programmable Gate Arrays (FPGAs) An Enabling Technology.
RTL Hardware Design by P. Chu Chapter Overview on sequential circuits 2. Synchronous circuits 3. Danger of synthesizing asynchronous circuit 4.
MAPLD 2005/202 Pratt1 Improving FPGA Design Robustness with Partial TMR Brian Pratt 1,2 Michael Caffrey, Paul Graham 2 Eric Johnson, Keith Morgan, Michael.
Synthesis Of Fault Tolerant Circuits For FSMs & RAMs Rajiv Garg Pradish Mathews Darren Zacher.
RTL and Synthesis Design Approach to Radiation-Tolerant and Fail-Safe Targeted Applications Buu Huynh & Roger Do Mentor Graphics Corp.
Kazi ECE 6811 ECE 681 VLSI Design Automation Khurram Kazi Thanks to Automation press THE button outcomes the Chip !!! Reality or Myth.
04/06/031 ECE 551: Digital System Design & Synthesis Lecture Set 9 9.1: Constraints and Timing (In separate file) 9.2: Optimization - Part 1 9.3: Optimization.
CHAPTER 8 Developing Hard Macros The topics are: Overview Hard macro design issues Hard macro design process Physical design for hard macros Block integration.
Field Programmable Port Extender (FPX) 1 Modular Design Techniques for the FPX.
2011/IX/27SEU protection insertion in Verilog for the ABCN project 1 Filipe Sousa Francis Anghinolfi.
Update on the Design Implementation Methodology for the 130nm process Microelecronics User Group meeting TWEPP 2010 – Aachen Sandro Bonacini CERN PH/ESE.
ESS | FPGA for Dummies | | Maurizio Donna FPGA for Dummies Basic FPGA architecture.
Evaluating Logic Resources Utilization in an FPGA-Based TMR CPU
1 CzajkowskiMAPLD 2005/138 Radiation Hardened, Ultra Low Power, High Performance Space Computer Leveraging COTS Microelectronics With SEE Mitigation D.
A Simplified Approach to Fault Tolerant State Machine Design for Single Event Upsets Melanie Berg.
03/30/031 ECE Digital System Design & Synthesis Lecture Design Partitioning for Synthesis Strategies  Partition for design reuse  Keep related.
FEV And Netlists Erik Seligman CS 510, Lecture 5, January 2009.
Equivalence checking Prof Shobha Vasudevan ECE 598SV.
Implementing Tile-based Chip Multiprocessors with GALS Clocking Styles Zhiyi Yu, Bevan Baas VLSI Computation Lab, ECE Department University of California,
ASIC/FPGA design flow. Design Flow Detailed Design Detailed Design Ideas Design Ideas Device Programming Device Programming Timing Simulation Timing Simulation.
12004 MAPLD Int’l Conference – Paper 118 Kumar Automated FSM Error Correction for Single Event Upsets Dr. Nand Kumar & Darren Zacher Design Creation and.
Xilinx V4 Single Event Effects (SEE) High-Speed Testing Melanie D. Berg/MEI – Principal Investigator Hak Kim, Mark Friendlich/MEI.
Chandrasekhar 1 MAPLD 2005/204 Reduced Triple Modular Redundancy for Tolerating SEUs in SRAM based FPGAs Vikram Chandrasekhar, Sk. Noor Mahammad, V. Muralidharan.
INF3430 / 4431 Synthesis and the Integrated Logic Analyzer (ILA) (WORK IN PROGRESS)
ASIC Design Methodology
Topics SRAM-based FPGA fabrics: Xilinx. Altera..
MAPLD 2005 Reduced Triple Modular Redundancy for Tolerating SEUs in SRAM based FPGAs Vikram Chandrasekhar, Sk. Noor Mahammad, V. Muralidharan Dr. V. Kamakoti.
SEU Mitigation Techniques for Virtex FPGAs in Space Applications
FPGA Implementation of Multicore AES 128/192/256
Maintaining Data Integrity in Programmable Logic in Atmospheric Environments through Error Detection Joel Seely Technical Marketing Manager Military &
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS
The Xilinx Virtex Series FPGA
Timing Analysis 11/21/2018.
ECE 551: Digital System Design & Synthesis
FPGA Tools Course Answers
The Xilinx Virtex Series FPGA
H a r d w a r e M o d e l i n g O v e r v i e w
Optimizing RTL for EFLX Tony Kozaczuk, Shuying Fan December 21, 2016
Presentation transcript:

Vendor Independent SEE Mitigation Solution For FPGAs Kamesh Ramani Pravin Bhandakkar Darren Zacher Melanie Berg (MEI – NASA Goddard)

MAPLD Vendor Independent SEE mitigation solution for FPGAs Agenda n Vendor Independent solution — Flow — Advantages — TMR Techniques — Handling of special cases — DRC and max fanout violation — Constraint handling — Formal Verification interface — User controls

MAPLD Vendor Independent SEE mitigation solution for FPGAs Vendor Independent Flow RTL Regular Synthesis Constraints Switches TMR TMR Options PNR TMR related synthesis controls EDIF SelectTechnology Regular options Switch off Netlist Optimizations Control inference of ROM/RAM, Shift Registers, DSPs Based on Scheme perform TMR on design and check for DRC rules

MAPLD Vendor Independent SEE mitigation solution for FPGAs Inference of Safe FSMs TMR Recognize TMR related attributes In the RTL Control not to infer Distributed RAM Constraints handling infrastructure Recognizing Combinational loops Block RAM inference and resource control DSP Inference, resource control No MAC inference No Counter inference Control on Flop absorption Formal Verification infrastructure SRL inference can be controlled SEU related controls during synthesis TMR TMRDRCProcessingTMR Max Fanout Processing Post TMR Processing TMRRelatedPNRoptions TMRPNRInteraction Synthesis From RTL to EDIF

MAPLD Vendor Independent SEE mitigation solution for FPGAs Vendor Independent Flow n Regular flow from RTL to synthesized Netlist and then to PNR n TMR can be applied on any chosen technology and device n Various optimizations for RadHard protection can be incorporated during synthesis itself n Output can be formally verified — against RTL — against non-TMR netlist n Special mitigation solution during synthesis for — DSPs, Black Boxes, RAMs, SRLs

MAPLD Vendor Independent SEE mitigation solution for FPGAs Vendor Independent Flow Advantages n Formally verifiable against RTL and non TMR netlist n Can be applied on any FPGA vendor chip n Can be applied on newer technology FPGAs seamlessly n Control throughout the synthesis flow to perform radiation related optimizations and choices n Controls at module level is available n Special handling for different technology cells n Ability to plug in dedicated RadHard modules for different inferred components n Can fix DRC and maxfanout violations effectively after TMR n Can seamlessly generate appropriate constraints, attributes, area and frequency reports for TMR netlist

MAPLD Vendor Independent SEE mitigation solution for FPGAs Voters n Voters — We define voters to be circuits that take in the output from triplicated flops and resolve it based on either majority or minority — We choose to use majority voters — Equation: A×B + B×C + C×A — Voters utilize combinatorial cells specific to target technology n LUTs in SRAM-based devices n MAJ3 in antifuse-based devices

MAPLD Vendor Independent SEE mitigation solution for FPGAs Various TMR Strategies - LTMR n Local TMR (LTMR) [1] — Triplicate sequential elements only, and majority vote the outputs n Flip-flops, shift registers, block RAMs, and sequential DSPs — The input data, control signals and clock will be shared by the triplicated flops — Reduces SEE occurrence to frequency dependent SET capture; clock trees, global routes and IOs are still susceptible [1] M. Berg, “Design for Radiation Effects, ”Invited Talk Presented 2008 at Military and Aerospace Programmable Logic Design, MAPLD, Annapolis, MD, September. 2008

MAPLD Vendor Independent SEE mitigation solution for FPGAs Various TMR Strategies - LTMR CombLogic Voter Voter Voter LTMR

MAPLD Vendor Independent SEE mitigation solution for FPGAs Various TMR Strategies - DTMR n Distributed TMR (DTMR) [1] — Apply TMR on sequential and combinational logic n Triplicate sequential and combinatorial logic; global routes and I/O are not triplicated n Vote out the triplicated logic just after the sequential elements n Triplicate the majority voting circuit as well to protect SET effects on the voting circuit — Reduces SEE occurrence; clock trees, global routes and IOs are still susceptible — Preferrable scheme for SEU and SET protection of technologies with hardened clock trees

MAPLD Vendor Independent SEE mitigation solution for FPGAs Various TMR Strategies - DTMR CombLogic DTMR Voter Voter Voter Voter Voter Voter Voter Voter Voter

MAPLD Vendor Independent SEE mitigation solution for FPGAs Various TMR Strategies - GTMR n Global TMR (GTMR) [1] — Apply TMR on the entire design including global buffers n Triplicate the sequential elements, combinational logic, voters and the global buffers n Voters converge the triplicated flop outputs at clock and control domain crossovers — This gives very high level of radiation protection — This scheme requires that the triplicated global lines have minimum skew between them — Preferred scheme for commercial SRAM based FPGAs

MAPLD Vendor Independent SEE mitigation solution for FPGAs Various TMR Strategies - GTMR CombLogic GTMR Voter Voter Voter Voter Voter Voter Voter Voter Voter

MAPLD Vendor Independent SEE mitigation solution for FPGAs Special Case Handling Overview n In vendor independent flow we can handle embedded resources effectively — Tech cells such as RAMs, DSPs, Shift registers etc — Need to triplicate and vote datapath can limit usage — Ability to control automated embedded resource inference n To Selectively infer n To infer with restricted features — Synthesis tool decides embedded resource allocation earlier in the implementation flow n Enables more effective TMR application. — Gives better control over synthesis for radiation hardening

MAPLD Vendor Independent SEE mitigation solution for FPGAs Embedded Resource Handling n Embedded RAM — Triplicated and voters are inserted at each output — Treated as sequential elements and will be TMRed in all the schemes — The user can instantiate an error correcting (EDAC) RAM n Supply black box or netlist IP, or set an attribute on the instance n Instance will be treated like a black box or IP and not triplicated

MAPLD Vendor Independent SEE mitigation solution for FPGAs Embedded Resource Handling n Embedded Shift Registers (e.g. SRL) — By default, embedded shift registers will not be inferred during synthesis n User has option to enable shift register inference if desired — If present in the design, embedded shift registers are triplicated and a voter is inserted at the output

MAPLD Vendor Independent SEE mitigation solution for FPGAs Embedded Resource Handling n DSP — DSPs can be classified for TMR broadly into n Sequential DSPs n Combinational DSPs — Sequential DSPs n Contain Flops in them — Flops can be at the input, output or as pipeline registers n Infer DSPs with only flops at the output by default n These DSPs will be triplicated and voters inserted at every output n Scan chain facilities in these DSPs will not be used as we cannot insert voters at their outputs

MAPLD Vendor Independent SEE mitigation solution for FPGAs Embedded Resource Handling n DSPs — Combinational DSPs n These contain only combinational logic n Will be triplicated and voted out in DTMR and GTMR schemes only — Multiply-Accumulate (MAC) n MACs will not be inferred — They contain loops and can potentially get stuck after a fault — Hence the loop will be outside the DSP so that voters can be inserted in the loop to correct SEUs

MAPLD Vendor Independent SEE mitigation solution for FPGAs Special Case Handling n I/O Boundary Flops — Flops at input and output may need special handling based on the TMR scheme — LTMR n The inputs to the TMRed design will fanout to triplicated flop instances n The output flops will also have a voter at its output similar to other flops in the design. n If user wishes, by using regular synthesis attributes can absorb the flops into the pads — Flop not triplicated when absorbed into the pad

MAPLD Vendor Independent SEE mitigation solution for FPGAs Special Case Handling I/O Boundary Flops n DTMR and GTMR — The inputs to the TMRed design will fanout to triplicated design — The outputs from the TMRed design will converge at output flops — Voters need to be applied at the output flops to converge the output — If user wishes, by using regular synthesis attributes can absorb the flops into the pads n Flop not triplicated when absorbed into the pad — Can choose to triplicate pins on top level n Each of the triplicated outputs can be voted n Or user can choose to absorb flops, without voting, into pads using normal synthesis attributes

MAPLD Vendor Independent SEE mitigation solution for FPGAs Special Case Handling n Boxes — By boxes we mean black, white, grey, clear etc — Need to be mitigated by the user, as there is either no or limited visibility inside them — All inputs to the box will converge at the box input boundary n A voter will be inserted before each box input — All outputs from box will fanout to triplicated instances — Tool will fix and report any max fanout violation at box outputs

MAPLD Vendor Independent SEE mitigation solution for FPGAs Special Case Handling n Latches — Latches are treated similar to sequential elements — If a latch is present we will always triplicate it and insert voters at the output n This is because latches contain loops which have the ability to retain faults

MAPLD Vendor Independent SEE mitigation solution for FPGAs Special Case Handling n Combinational Loops — Combinational loops should be avoided in a design targeted for mitigation — However if combinational loop is present, we will insert a voter at the point of feed back — We will also warn the user about the combinational loop as well

MAPLD Vendor Independent SEE mitigation solution for FPGAs Special Case Handling n Clock generation circuits — Clock generation circuits such as PLLs, DCM etc are susceptible to SEEs and should be avoided — We warn the user about these circuits — We do not triplicate these, nor vote them out

MAPLD Vendor Independent SEE mitigation solution for FPGAs Design Rule Check (DRC) violations n TMR on some cells can cause DRC violations — Inserting voters between cascade pins of embedded resources is generally not allowed n Block RAM cascading n DSP cascading n Scan chain feature of DSPs — The violations are handled by n not cascading the embedded resources or n using the appropriate non-cascade input and output pins of those resources — Global buffers such as those with pads cannot be triplicated n To triplicate them we split them into pad cell and buffer cell n Buffer cells are then triplicated — Flow advantage: preventive steps can be taken during synthesis

MAPLD Vendor Independent SEE mitigation solution for FPGAs Max fanout violations n Potential TMR violations occur at: — Input nets that feed triplicated logic — Black box outputs — Flop inputs in LTMR n Flow advantage: Since TMR is part of the synthesis flow such violations are detected and fixed

MAPLD Vendor Independent SEE mitigation solution for FPGAs Constraints Handling n Constraints on original instance copied to triplicated instances n Constraints on flop output is transferred to voter output(s) n Appropriate constraints are written out at the end of synthesis for the TMRed design as a whole n Flow advantages: — Constraints are applied seamlessly throughout the TMRed design — No need of post processing constraints after synthesis

MAPLD Vendor Independent SEE mitigation solution for FPGAs Formal Verification RTL vs. TMR Netlist n Novel approach regarding TMR insertion — “Formal Verification of Advanced Synthesis Optimizations”, Anant Kumar Jain et al, MAPLD-09 n Formal Verification Interface (FVI) constraints for triplicated instances generated — This assists FormalPro in verifying the generated netlist against RTL n Flow advantages: — FVI constraints are automatically generated during synthesis — Post-TMR netlist can be easily verified

MAPLD Vendor Independent SEE mitigation solution for FPGAs Formal Verification TMR Netlist vs. Non TMR Netlist n FVI matching rules are generated during synthesis — Matching rules helps to identify instance in normal netlist with its triplicated counterparts in the TMRed netlist n Flow advantages: — FVI matching rules are automatically generated during synthesis — Post-TMR netlist can be easily verified

MAPLD Vendor Independent SEE mitigation solution for FPGAs Module Level User Controls n Ability to apply different TMR techniques on different modules n Allows TMR application on an as-needed basis for a given module — Voters converge the triplicated flop outputs on the module boundaries with lesser TMR protection n Using attributes can specify TMR scheme on a — given instance in RTL — On all instances of a given module in RTL n TMR scheme is inherited through the hierarchy n Flow advantages: — Control at the RTL level — Beneficial for design review — Greater flexibility to the user

MAPLD Vendor Independent SEE mitigation solution for FPGAs Additional User Controls n Voter insertion — Force Voter Insertion on net or net’s driver’s output if specified — Can be specified using an attribute n Triplication control — Specify a given instance not be triplicated — Can be specified using an attribute

MAPLD Vendor Independent SEE mitigation solution for FPGAs Summary n Flow implemented as part of Precision synthesis tool n TMR output netlist formally verifiable against RTL and non TMR netlist n TMR can be applied on any FPGA vendor chip n TMR can be applied on newer technology FPGAs seamlessly n Controls available throughout the synthesis flow to perform mitigation related optimizations and choices n TMR netlist is free of any DRC and maxfanout violations n Constraints, attributes, area and frequency reports for TMR netlist are automatically generated.