University of Michigan Electrical Engineering and Computer Science 1 A Microarchitectural Analysis of Soft Error Propagation in a Production-Level Embedded.

Slides:



Advertisements
Similar presentations
Machine cycle.
Advertisements

Philips Research ICS 252 class, February 3, The Trimedia CPU64 VLIW Media Processor Kees Vissers Philips Research Visiting Industrial Fellow
NC STATE UNIVERSITY 1 Assertion-Based Microarchitecture Design for Improved Fault Tolerance Vimal K. Reddy Ahmed S. Al-Zawawi, Eric Rotenberg Center for.
Final Project : Pipelined Microprocessor Joseph Kim.
EZ-COURSEWARE State-of-the-Art Teaching Tools From AMS Teaching Tomorrow’s Technology Today.
University of Michigan Electrical Engineering and Computer Science 1 Application-Specific Processing on a General Purpose Core via Transparent Instruction.
CMSC 611: Advanced Computer Architecture Cache Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted from.
LEVERAGING ACCESS LOCALITY FOR THE EFFICIENT USE OF MULTIBIT ERROR-CORRECTING CODES IN L2 CACHE By Hongbin Sun, Nanning Zheng, and Tong Zhang Joseph Schneider.
Fault-Tolerant Systems Design Part 1.
Computer Science 210 Computer Organization Clocks and Memory Elements.
Using Hardware Vulnerability Factors to Enhance AVF Analysis Vilas Sridharan RAS Architecture and Strategy AMD, Inc. International Symposium on Computer.
UW-Madison Computer Sciences Vertical Research Group© 2010 Relax: An Architectural Framework for Software Recovery of Hardware Faults Marc de Kruijf Shuou.
NC STATE UNIVERSITY DSN 2007 © Vimal Reddy Inherent Time Redundancy (ITR): Using Program Repetition for Low-Overhead Fault Tolerance Vimal Reddy.
University of Michigan Electrical Engineering and Computer Science 1 Parallelizing Sequential Applications on Commodity Hardware Using a Low-Cost Software.
11 University of Michigan Electrical Engineering and Computer Science Exploring the Design Space of LUT-based Transparent Accelerators Sami Yehia *, Nathan.
11/14/05ELEC Fall Multi-processor SoCs Yijing Chen.
A Programmable Coprocessor Architecture for Wireless Applications Yuan Lin, Nadav Baron, Hyunseok Lee, Scott Mahlke, Trevor Mudge Advance Computer Architecture.
University of Michigan Electrical Engineering and Computer Science 1 An Architecture Framework for Transparent Instruction Set Customization in Embedded.
1 EECS Components and Design Techniques for Digital Systems Lec 21 – RTL Design Optimization 11/16/2004 David Culler Electrical Engineering and Computer.
State Machines Timing Computer Bus Computer Performance Instruction Set Architectures RISC / CISC Machines.
Vacuum tubes Transistor 1948 –Smaller, Cheaper, Less heat dissipation, Made from Silicon (Sand) –Invented at Bell Labs –Shockley, Brittain, Bardeen ICs.
Cost-Efficient Soft Error Protection for Embedded Microprocessors
Lec 9: Pipelining Kavita Bala CS 3410, Fall 2008 Computer Science Cornell University.
Barcelona, Spain November 13, 2005 WAR-1: Assessing SEU Vulnerability Via Circuit-Level Timing Analysis 1 Assessing SEU Vulnerability via Circuit-Level.
COMPUTER ARCHITECTURE & OPERATIONS I Instructor: Hao Ji.
Author: D. Brooks, V.Tiwari and M. Martonosi Reviewer: Junxia Ma
University of Michigan Electrical Engineering and Computer Science 1 StageNet: A Reconfigurable CMP Fabric for Resilient Systems Shantanu Gupta Shuguang.
University of Michigan Electrical Engineering and Computer Science 1 Online Timing Analysis for Wearout Detection Jason Blome, Shuguang Feng, Shantanu.
Lect 13-1 Lect 13: and Pentium. Lect Microprocessor Family  Microprocessor  Introduced in 1989  High Integration  On-chip 8K.
Exploring the Tradeoffs of Configurability and Heterogeneity in Multicore Embedded Systems + Also Affiliated with NSF Center for High- Performance Reconfigurable.
Principles Of Digital Design Chapter 1 Introduction Design Representation Levels of Abstraction Design Tasks and Design Processes CAD Tools.
Presenter: Jyun-Yan Li Effective Software-Based Self-Test Strategies for On-Line Periodic Testing of Embedded Processors Antonis Paschalis Department of.
SiLab presentation on Reliable Computing Combinational Logic Soft Error Analysis and Protection Ali Ahmadi May 2008.
Lecture 9. MIPS Processor Design – Instruction Fetch Prof. Taeweon Suh Computer Science Education Korea University 2010 R&E Computer System Education &
1 Presented By Şahin DELİPINAR Simon Moore,Peter Robinson,Steve Wilcox Computer Labaratory,University Of Cambridge December 15, 1995 Rotary Pipeline Processors.
Lecture 8: Processors, Introduction EEN 312: Processors: Hardware, Software, and Interfacing Department of Electrical and Computer Engineering Spring 2014,
Lecture 14: Processors CS 2011 Fall 2014, Dr. Rozier.
Fault-Tolerant Systems Design Part 1.
CSI-2111 Computer Architecture Ipage Control, memory and I/O v Objectives: –To define and understand the control units and the generation of sequences.
Title of Selected Paper: IMPRES: Integrated Monitoring for Processor Reliability and Security Authors: Roshan G. Ragel and Sri Parameswaran Presented by:
CHAPTER 4 The Central Processing Unit. Chapter Overview Microprocessors Replacing and Upgrading a CPU.
University of Michigan Electrical Engineering and Computer Science University of Michigan Electrical Engineering and Computer Science 1 Bundled Execution.
Fault-Tolerant Systems Design Part 1.
Introduction to Microprocessors
Pipelining and Parallelism Mark Staveley
ECE 353 Lab 2 Pipeline Simulator. Aims Further experience in C programming Handling strings Further experience in the use of assertions Reinforce concepts.
CPS3340 COMPUTER ARCHITECTURE Fall Semester, /3/2013 Lecture 9: Memory Unit Instructor: Ashraf Yaseen DEPARTMENT OF MATH & COMPUTER SCIENCE CENTRAL.
1 Energy-Efficient Register Access Jessica H. Tseng and Krste Asanović MIT Laboratory for Computer Science, Cambridge, MA 02139, USA SBCCI2000.
Hrushikesh Chavan Younggyun Cho Structural Fault Tolerance for SOC.
Eduardo L. Rhod, Álisson Michels, Carlos A. L. Lisbôa, Luigi Carro ETS 2006 Fault Tolerance Against Multiple SEUs using Memory-Based Circuits to Improve.
Jason Jong Kyu Park, Yongjun Park, and Scott Mahlke
Harnessing Soft Computation for Low-Budget Fault Tolerance Daya S Khudia Scott Mahlke Advanced Computer Architecture Laboratory University of Michigan,
Different Microprocessors Tamanna Haque Nipa Lecturer Dept. of Computer Science Stamford University Bangladesh.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 22 Memory Definitions Memory ─ A collection of storage cells together with the necessary.
Hardwired Control Department of Computer Engineering, M.S.P.V.L Polytechnic College, Pavoorchatram. A Presentation On.
Lecture 9. MIPS Processor Design – Pipelined Processor Design #1 Prof. Taeweon Suh Computer Science Education Korea University 2010 R&E Computer System.
Application-Specific Customization of Soft Processor Microarchitecture Peter Yiannacouras J. Gregory Steffan Jonathan Rose University of Toronto Electrical.
Gill 1 MAPLD 2005/234 Analysis and Reduction Soft Delay Errors in CMOS Circuits Balkaran Gill, Chris Papachristou, and Francis Wolff Department of Electrical.
SHAKTI PROCESSORS RAHUL BODDUNA RISE LAB, IIT MADRAS
University of Michigan Electrical Engineering and Computer Science Dynamic Voltage/Frequency Scaling in Loop Accelerators using BLADES Ganesh Dasika 1,
Computer Science 210 Computer Organization
nZDC: A compiler technique for near-Zero silent Data Corruption
Computer Science 210 Computer Organization
ECE 353 Lab 3 Pipeline Simulator
Pipelining: Advanced ILP
Computer Science 210 Computer Organization
Application-Specific Processing on a General Purpose Core via Transparent Instruction Set Customization Nathan Clark, Manjunath Kudlur, Hyunchul Park,
Guihai Yan, Yinhe Han, and Xiaowei Li
Application-Specific Customization of Soft Processor Microarchitecture
Presentation transcript:

University of Michigan Electrical Engineering and Computer Science 1 A Microarchitectural Analysis of Soft Error Propagation in a Production-Level Embedded Microprocessor Jason Blome, Scott Mahlke, Daryl Bradley*, Krisztián Flautner* Advanced Computer Architecture Lab, University of Michigan *ARM Ltd.

University of Michigan Electrical Engineering and Computer Science 2 Embedded Everywhere Patterson and Hennessy 2005 Not just cellphones Safety critical applications: ► Automotive ► Healthcare

University of Michigan Electrical Engineering and Computer Science 3 Embedded Domain Constraints Power efficient performance ► Longer clock cycle times ► Increased logic depth between stages ► Higher area ratio of combinational logic to state elements Less speculative state ► Potentially less masking Limited real estate All of these high level constraints affect the behavior of faults and the potential of fault tolerance techniques

University of Michigan Electrical Engineering and Computer Science 4 Objectives Understand the effects of transient faults on a typical embedded design ► Architectural contributions to soft error effects ► Production-grade core Reference synthesis flow Design for test methodologies Simulate faults in both combinational and sequential logic

University of Michigan Electrical Engineering and Computer Science 5 Soft Error Rate Contributions Shivakumar 2002 Soft Error Rate Contributions Mitra 2005 Increasing contribution of faults in combinational logic to the overall soft error rate

University of Michigan Electrical Engineering and Computer Science 6 Processor Model Register Bank Register Bank Data Interface Instruction Address Logic Instruction Address Logic Data Address Logic Data Address Logic Multiply ALU Shift Instruction Decode ARM926EJ-S Instruction Fetch Data cache Data cache MMU Instruction cache Instruction cache MMU Bus Interface Write Buffer/ Bus Interface Mux Array Mux Array ARM926EJ-S Cell library characterized for 130 nm 5 ns clock cycle time

University of Michigan Electrical Engineering and Computer Science 7 Analysis Infrastructure testbench reference design test design report generation benchmark fault injection/error analysis framework error checking and logging fault injection scheduler

University of Michigan Electrical Engineering and Computer Science 8 Fault Masking Logical: faulted value does not affect logical operation of the circuit 0 0 Latching-Window: the fault pulse does not reach a state element within the latching window Electrical: the fault pulse is electrically attenuated by subsequent gates in the circuit Architectural/Software: incorrect state is written before it is read CLK t setup t hold

University of Michigan Electrical Engineering and Computer Science 9 Observed Error Rates Error SiteError RateMasking Rate Microarchitectural State 94%6% Architectural State7%93% Top-level Ports4%96% Error SiteError RateMasking Rate Microarchitectural State 16%84% Architectural State4%96% Top-level Ports3%97% Faults Occurring in Registers Faults Occurring in Combinational Logic At the software interface, error rates within 3% 94% 16% 7% 4%

University of Michigan Electrical Engineering and Computer Science 10 Observed Error Rates CycleAverage Bit Errors Faults Occurring in Registers Faults Occurring in Combinational Logic CycleAverage Bit Errors Faults in combinational logic have a much more dramatic effect on system state

University of Michigan Electrical Engineering and Computer Science 11 Architectural Errors per Cycle Faults Occurring in Registers Faults Occurring in Combinational Logic

University of Michigan Electrical Engineering and Computer Science 12 Architectural Corruption Characteristics Bits per Architectural Register Corrupted Number of Architectural Registers Corrupted

University of Michigan Electrical Engineering and Computer Science 13 Results Summary Faults occurring in logic: ► Will likely be much more frequent in embedded design ► Tend to have a more dramatic effect on system state ► Multi-bit/multi-register architectural errors common Design for test methodologies can greatly impact soft error characteristics Error rates at the software interface consistent with those observed in high-performance microprocessors

University of Michigan Electrical Engineering and Computer Science 14 Traditional Error Detection/Protection Reliable Encoding ► ECC/Parity Limited use for faults in logic Unclear where/how much to protect Redundant Computation ► In space Area/energy overhead ► In time Energy overhead Requires performance slack

University of Michigan Electrical Engineering and Computer Science 15 Case Study I Register Bank Register Bank Data Interface Instruction Address Logic Instruction Address Logic Data Address Logic Data Address Logic Multiply ALU Shift Instruction Decode Instruction Fetch Data cache Data cache MMU Instruction cache Instruction cache MMU Bus Interface Write Buffer/ Bus Interface Mux Array Mux Array IRoute Cycle 1: 51 Errors instr_reg_ID[0, 16, 22, 31] ID_decode_info[0, 16, 31] stored_instr[29, 30] Cycle 2: 51 Errors instr_reg_EX[0, 16, 22, 31] EX_decode_info[0, 16, 31] Cycle 3: 17 Errors ALU_out[0, 1, 2, 3, 4, 5, 6] Cycle 4: 18 Errors ALU_result_wb[0,1,2,3,4,5,6] Cycle 5: 29 Errors Reg0_reg[0, 1, 2, 3, 4, 5, 6]

University of Michigan Electrical Engineering and Computer Science 16 Case Study II Register Bank Register Bank Data Interface Instruction Address Logic Instruction Address Logic Data Address Logic Data Address Logic Multiply ALU Shift Instruction Decode Instruction Fetch Data cache Data cache MMU Instruction cache Instruction cache MMU Bus Interface Write Buffer/ Bus Interface Mux Array Mux Array IPipe Cycle 1: 9 Errors instr_reg_ID[3,12,17, 18,24,26,29,30,31] Cycle 4: 183 Errors writeback and forwarding state register bank Cycle 2: 62 Errors instr_reg_EX shifter_data_opEx_reg Shifter_data_reg alu_cc_reg Cycle 3: 49 Errors Shifter_data_EX alu_out_reg

University of Michigan Electrical Engineering and Computer Science 17 Fault Characteristics Case Study I: uCORE.uIRoute.U600 ► First cycle error sites: 51 errors uIRoute.INSTRHeld_reg[0] uIRoute.INSTRHeld_reg[16] uIRoute.INSTRHeld_reg[22] uIRoute.INSTRHeld_reg[31] u9EJ.uARM9.uCORECTL.uIPIPE.IDarmDeint_reg[0] u9EJ.uARM9.uCORECTL.uIPIPE.IDarmDeint_reg[16] u9EJ.uARM9.uCORECTL.uIPIPE.IDarmDeint_reg[31] u9EJ.uARM9.uCORECTL.uIPIPE.StoredInstrInt_reg[29] u9EJ.uARM9.uCORECTL.uIPIPE.StoredInstrInt_reg[30] Case Study II: uCORE.u9EJ.uARM9.uCORECTL.uIPIPE.U3626 ► First cycle error sites: 9 errors u9EJ.uARM9.uCORECTL.uIPIPE.IDarmDeint_reg[3] u9EJ.uARM9.uCORECTL.uIPIPE.IDarmDeint_reg[12] u9EJ.uARM9.uCORECTL.uIPIPE.IDarmDeint_reg[17] u9EJ.uARM9.uCORECTL.uIPIPE.IDarmDeint_reg[18] u9EJ.uARM9.uCORECTL.uIPIPE.IDarmDeint_reg[24] u9EJ.uARM9.uCORECTL.uIPIPE.IDarmDeint_reg[26] u9EJ.uARM9.uCORECTL.uIPIPE.IDarmDeint_reg[29] u9EJ.uARM9.uCORECTL.uIPIPE.IDarmDeint_reg[30] u9EJ.uARM9.uCORECTL.uIPIPE.IDarmDeint_reg[31]

University of Michigan Electrical Engineering and Computer Science 18 Embedded Design Space Potential Leverage significant signal fanout Determine that a fault has occurred during the cycle that it occurs ► Transition detection circuits Selectively deploy fault detection units ► Intersection of high fanout fault targets ► No roll-back necessary – simply flush the pipeline ► Low cost/area overhead critical for embedded designs

University of Michigan Electrical Engineering and Computer Science 19 Conclusion Design domain critical: ► Affects fault behavior ► Limits applicable tolerance techiques Key observations: ► Faults in combinational logic much more likely in embedded designs ► Faults in combinational logic behave dramatically different than those in state elements ► Fault fanout offers potential for low overhead detection

University of Michigan Electrical Engineering and Computer Science 20 Soft Error Terminology transient faultsoft error transistor

University of Michigan Electrical Engineering and Computer Science 21 Dependence on Fault Duration

University of Michigan Electrical Engineering and Computer Science 22 Pulse Detection D CLK Q ~Q error flip-flop shadow latch

University of Michigan Electrical Engineering and Computer Science 23 Microarchitectural Errors per Cycle Faults Occurring in Registers Faults Occurring in Combinational Logic Multi-bit errors common for Faults in combinational logic