RTL and Synthesis Design Approach to Radiation-Tolerant and Fail-Safe Targeted Applications Buu Huynh & Roger Do Mentor Graphics Corp.

Slides:



Advertisements
Similar presentations
TOPIC : SYNTHESIS DESIGN FLOW Module 4.3 Verilog Synthesis.
Advertisements

TOPIC : Finite State Machine(FSM) and Flow Tables UNIT 1 : Modeling Module 1.4 : Modeling Sequential circuits.
ECE 551 Digital System Design & Synthesis Lecture 08 The Synthesis Process Constraints and Design Rules High-Level Synthesis Options.
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.
Implementing Rule Checking Early in the Design Cycle to Reduce Design Iterations and Verification Time Kent Moffat DesignAnalyst Product Manager Mentor.
Leveraging Assertion Based Verification by using Magellan Michal Cayzer.
12004 MAPLD/1002??? When Should You and When Should You Not Use VHDL? Richard B. Katz NASA Office of Logic Design 2004 MAPLD International Conference September.
Digital System Design by Verilog University of Maryland ENEE408C.
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
Logic Design Outline –Logic Design –Schematic Capture –Logic Simulation –Logic Synthesis –Technology Mapping –Logic Verification Goal –Understand logic.
1 Advanced Digital Design Asynchronous Design: Research Concept by A. Steininger and M. Delvai Vienna University of Technology.
Achieving Timing Closure. Achieving Timing Closure - 2 © Copyright 2010 Xilinx Objectives After completing this module, you will be able to:  Describe.
Foundation and XACTstepTM Software
1 Chapter 7 Design Implementation. 2 Overview 3 Main Steps of an FPGA Design ’ s Implementation Design architecture Defining the structure, interface.
Achieving Timing Closure. Objectives After completing this module, you will be able to: Describe a flow for obtaining timing closure Interpret a timing.
Digital System Design EEE344 Lecture 1 INTRODUCTION TO THE COURSE
9/15/09 - L22 Sequential Circuit Design Copyright Joanne DeGroat, ECE, OSU1 Sequential Circuit Design Creating a sequential circuit to address a.
Churning the Most Out of IP-XACT for Superior Design Quality Ayon Dey Lead Engineer, TI Anshuman Nayak Senior Product Director, Atrenta Samantak Chakrabarti.
Guest Lecture by Ben Magstadt CprE 281: Digital Logic.
Guest Lecture by Ben Magstadt CprE 281: Digital Logic.
Nadpis 1 Nadpis 2 Nadpis 3 Jméno Příjmení Vysoké učení technické v Brně, Fakulta informačních technologií v Brně Božetěchova 2, Brno
Finite State Machines. Binary encoded state machines –The number of flip-flops is the smallest number m such that 2 m  n, where n is the number of states.
Chap. 1 Overview of Digital Design with Verilog. 2 Overview of Digital Design with Verilog HDL Evolution of computer aided digital circuit design Emergence.
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.
Foundation Express The HDL Value Leader. Xilinx Foundation Express The HDL Value Leader  Complete HDL Development Environment Best in Class EDA Tools.
Xilinx Development Software Design Flow on Foundation M1.5
Design Verification An Overview. Powerful HDL Verification Solutions for the Industry’s Highest Density Devices  What is driving the FPGA Verification.
Using Formal Verification to Exhaustively Verify SoC Assemblies by Mark Handover Kenny Ranerup Applications Engineer ASIC Consultant Mentor Graphics Corp.
1 H ardware D escription L anguages Modeling Digital Systems.
1 5. Application Examples 5.1. Programmable compensation for analog circuits (Optimal tuning) 5.2. Programmable delays in high-speed digital circuits (Clock.
Chonnam national university VLSI Lab 8.4 Block Integration for Hard Macros The process of integrating the subblocks into the macro.
1/8/ L20 Project Step 8 - Data Path Copyright Joanne DeGroat, ECE, OSU1 State Machine Design with an HDL A methodology that works for documenting.
FORMAL VERIFICATION OF ADVANCED SYNTHESIS OPTIMIZATIONS Anant Kumar Jain Pradish Mathews Mike Mahar.
Vendor Independent SEE Mitigation Solution For FPGAs Kamesh Ramani Pravin Bhandakkar Darren Zacher Melanie Berg (MEI – NASA Goddard)
1 Introduction to Software Engineering Lecture 1.
RTL Hardware Design by P. Chu Chapter Overview on sequential circuits 2. Synchronous circuits 3. Danger of synthesizing asynchronous circuit 4.
Synthesis Of Fault Tolerant Circuits For FSMs & RAMs Rajiv Garg Pradish Mathews Darren Zacher.
Lach1MAPLD 2005/241 Accessible Formal Verification for Safety-Critical FPGA Design John Lach, Scott Bingham, Carl Elks, Travis Lenhart Charles L. Brown.
Quality Assurance.
Introductory project. Development systems Design Entry –Foundation ISE –Third party tools Mentor Graphics: FPGA Advantage Celoxica: DK Design Suite Design.
1 - CPRE 583 (Reconfigurable Computing): VHDL to FPGA: A Tool Flow Overview Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 5: 9/7/2011.
Slide 1 2. Verilog Elements. Slide 2 Why (V)HDL? (VHDL, Verilog etc.), Karen Parnell, Nick Mehta, “Programmable Logic Design Quick Start Handbook”, Xilinx.
- 1 - ©2009 Jasper Design Automation ©2009 Jasper Design Automation JasperGold for Targeted ROI JasperGold solutions portfolio delivers competitive.
ECE-C662 Lecture 2 Prawat Nagvajara
IMPLEMENTATION OF MIPS 64 WITH VERILOG HARDWARE DESIGN LANGUAGE BY PRAMOD MENON CET520 S’03.
Chapter 11: System Design Methodology Digital System Designs and Practices Using Verilog HDL and 2008, John Wiley11-1 Chapter 11: System Design.
A Simplified Approach to Fault Tolerant State Machine Design for Single Event Upsets Melanie Berg.
CprE 281: Verilog Tutorial Ben Magstadt – Master’s Student Electrical Engineering.
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.
EMT 351/4 DIGITAL IC DESIGN Verilog Behavioral Modeling  Finite State Machine -Moore & Mealy Machine -State Encoding Techniques.
Pusat Pengajian Kejuruteraan Mikroelektronik EMT 351/4 DIGITAL IC DESIGN Verilog Behavioural Modeling (Part 4) Week #
Algorithmic State Machine (ASM) Charts: VHDL Code & Timing Diagrams
EECE 320 L8: Combinational Logic design Principles 1Chehab, AUB, 2003 EECE 320 Digital Systems Design Lecture 8: Combinational Logic Design Principles.
State Machine Design with an HDL
Digital System Design An Introduction to Verilog® HDL
EMT 351/4 DIGITAL IC DESIGN Week # Synthesis of Sequential Logic 10.
Introduction Introduction to VHDL Entities Signals Data & Scalar Types
Maintaining Data Integrity in Programmable Logic in Atmospheric Environments through Error Detection Joel Seely Technical Marketing Manager Military &
21 November 2018 Implementing Rule Checking Early in the Design Cycle to Reduce Design Iterations and Verification Time Kent Moffat DesignAnalyst Product.
Hardware Description Languages
ECE-C662 Introduction to Behavioral Synthesis Knapp Text Ch
State Machine Design with an HDL
Win with HDL Slide 4 System Level Design
Dr. Tassadaq Hussain Introduction to Verilog – Part-3 Expressing Sequential Circuits and FSM.
THE ECE 554 XILINX DESIGN PROCESS
Design Methodology & HDL
THE ECE 554 XILINX DESIGN PROCESS
Presentation transcript:

RTL and Synthesis Design Approach to Radiation-Tolerant and Fail-Safe Targeted Applications Buu Huynh & Roger Do Mentor Graphics Corp.

BH/RD, MAPLD 2009 – RTL & Synthesis for Rad-Hard & Fail-Safe App, Sep Fail-Safe and Radiation Applications Have Comparable Digital Design Challenges n Radiation-Harden Design — Corner-cases design coverage — Account for adverse SEE in radiation environment n Voltage supply spikes n Clock signal spikes n Single Event Upsets (SEU) n Fault-Tolerant Design — Detect error conditions — Contain error — Recovery from error n n Fail-Safe Application Design — — Corner-cases design coverage — — Account for adverse operating environment n n Voltage supply spikes n n Multi-Clock Domain issues n n Soft Error Rates (SER) n n Fault-Tolerant Design — — Detect error conditions — — Contain error — — Recovery from error Indistinguishable Design Requirements for RTL Design Code

BH/RD, MAPLD 2009 – RTL & Synthesis for Rad-Hard & Fail-Safe App, Sep Meeting Timing Requirements at RTL n Design margin requirements — Cover corner-cases — Account for adverse effects (e.g. voltage supply, operating temperatures, extreme bandwidth scenarios, etc.) n How does a design margin requirement effect RTL design? n Check for poor RTL code which jeopardizes hardware performance — Long logic snake paths — Deep logic nesting — Combinatorial vs. registered outputs Laboratory Conditions Environmental Chamber Testing

BH/RD, MAPLD 2009 – RTL & Synthesis for Rad-Hard & Fail-Safe App, Sep n n Problem: Noisy power supply environment — — Can cause registers to change state — — Device may lock up n n Solution: Implement global reset in RTL to support system initiated device “soft reset” for fault recovery Adverse Conditions Example: Noisy Power Supply Environment Code Example: status_registers_proc: process (clk, rst_n) begin if (rst_n = '0') then -- Clear Registers, to safe state, xmitting_reg <= '0';-- when global RST is asserted done_xmitting_reg <= '0'; rcving_reg <= '0'; done_rcving_reg <= '0'; elsif rising_edge(clk) then if (xmit_flag = '1') then...

BH/RD, MAPLD 2009 – RTL & Synthesis for Rad-Hard & Fail-Safe App, Sep Adverse Conditions Example: Extreme Environments n n Problem: Extreme environment conditions n n Can cause FSM to enter error states n n Device may lock up n n Solution: Use RTL code supporting FSM synthesis which can recover from undefined states*, to support fault recovery n n Code Example: case current_state is when idle => if (rd_req = ‘1’ and pre = ‘0’) then -- read request & no precharge next_state <= READ;... when read =>... when precharge =>... when others => -- other states, including error states next_state <= ALARM; -- transition to a safe recovery state end case; * Be sure to use “safe FSM” option in the synthesis tool to keep FSM error state recovery transitions from being removed during synthesis optimizations

BH/RD, MAPLD 2009 – RTL & Synthesis for Rad-Hard & Fail-Safe App, Sep Radiation & Fail-Safe Challenge Example: Fault-Tolerant Digital Design n n Problem: SEU induced input errors into control logic n n Incomplete conditional branch code will not resolve in a predictable, controlled behavior n n Undefined conditional input state will resolve in an unknown manner, and can be synthesis run dependent n n Solution: Disallow incomplete case statement n n Code Example: case altitude_in is when GROUND => if (t_minus = FOUR_SEC) then -- run start sequence fuel_valve_cmd_s <= OPEN_SEQ;... when ELV_8K => -- throttle-down... when ELV_40K => -- throttle-up... when others => -- trap error conditions fuel_valve_cmd_s <= fuel_valve_cmd_r; end case;

BH/RD, MAPLD 2009 – RTL & Synthesis for Rad-Hard & Fail-Safe App, Sep Human Factor & Value of Coding Guidelines n Consistent quality across team members and projects n Leverages amassed knowledge base n Industry n RMM, RTL Essentials, etc n Your organization n Senior engineers, lessons learned from previous programs, etc APPRAISAL & TRAINING OPTIMIZE “Like having an expert watch over your code”

BH/RD, MAPLD 2009 – RTL & Synthesis for Rad-Hard & Fail-Safe App, Sep n Option 1: Manual HDL code reviews — Required when design specific or “topic-expert” knowledge must be applied during code review — Extremely labor intensive — Inconsistent and error-prone n Option 2: Automated HDL design checking (Linting) — Enforces standard quality level per organization’s guidelines — Standardize RTL code quality & design reuse cost metric — Reduce RTL synthesis errors — Run rules interactively throughout development — Automatically capture results as process artifact — Machine checks can not cover all design guidelines n Option 3: Combination of Automated & Manual — Leverage the strength in both methodology Assessing RTL Code Quality

BH/RD, MAPLD 2009 – RTL & Synthesis for Rad-Hard & Fail-Safe App, Sep Tool Introduction: HDL Designer A Team Development Environment for Design Assurance RTL Entry & Visualization Assurance MandatesHDL Designer Provides the Solution   10 editor types including text, graphical, and code generation, also automated visualization of RTL   Assurance provided with design integrity checks, quality assessment, and automated visualization   Automated scoring based on industry standards or company-defined coding guidelines   Synchronizes design and all associated data, linking to popular version management systems   Creates design review website with all design and associated data in exported HTML directory   Integration with ReqTracer to link the RTL implementation back to requirements Reuse Assessment Code Checking Version Mgmt Design Reviews Requirement Tracing

BH/RD, MAPLD 2009 – RTL & Synthesis for Rad-Hard & Fail-Safe App, Sep What is Synthesis? n Transformation of HDL code to gate-level implementation — RTL code input n VHDL, Verilog, SystemVerilog — Inferencing and mapping of architectural features — Structural netlist output n Default operation focuses on logic optimization n Fail Safe design considerations must be weighed against performance optimizations Program Device SYNTHESIS Place & Route RTL Design

BH/RD, MAPLD 2009 – RTL & Synthesis for Rad-Hard & Fail-Safe App, Sep Safe FSM Operation n Radiation may change one bit → invalid state n FSM must be designed with error detection & correction — Unused/unreachable states are not pruned — Safe FSM ensures valid transition to default state — FSM Implements all possible states TYPE fsm_state IS (S0, S1, S2, S3); SIGNAL current_state :fsm_state; SIGNAL next_state:fsm_state; … IF (RST=‘1’) THEN current_state=S0; … PROCESS (S0, S1, S2, S3) BEGIN CASE current_state IS CASE current_state IS WHEN S0 => next_state next_state <= S1 … WHEN S1 => next_state next_state <= S2 … WHEN S2 => next_state next_state <= S0 … WHEN others => next_state next_state <= S3; END PROCESS; Safe FSM. Transition to Default state ?? (0101) Invalid State Default S3 (1000) State defined for error reporting S0 (0001) S1 (0010) S2 (0100) States defined for normal FSM operation Reset

BH/RD, MAPLD 2009 – RTL & Synthesis for Rad-Hard & Fail-Safe App, Sep Redundancy Methods n Redundancy mitigates effects of a circuit failure n Uses replication and voting mechanism n 3 Methods Available 1. Combinatorial-Combinatorial (C-C) mapping n Combines two combinatorial cells with feedback as opposed to using flip-flop 2. Triple Module Redundancy (TMR) 3. Triple Module Redundancy & C-C mapping

BH/RD, MAPLD 2009 – RTL & Synthesis for Rad-Hard & Fail-Safe App, Sep TMR Example Before TMR After TMR Supports design assurance but produces dramatically larger circuits (goes against optimization goals)!

BH/RD, MAPLD 2009 – RTL & Synthesis for Rad-Hard & Fail-Safe App, Sep Tool Introduction: Precision ™ Synthesis Vendor Independent FPGA Synthesis for Fail Safe Design Meet Performance Requirements n Mixed language support for VHDL, Verilog, SystemVerilog, and EDIF n Advanced logic inferencing & optimization n Physical synthesis Design Analysis n Interactive static timing analysis n Design debugging and cross-probing Increasing Productivity n Incremental design flows n Resource management Fail Safe Design Considerations n Safe state machines n TMR support n Radiation-hardened device support n Verifiable results n Deterministic netlist for repeatable results FPGA Vendor Independent Concept Design RTL Design SYNTHESIS Place & Route Program Device Requirements Planning Debug Hardware Verification