Presenter : Shih-Tung Huang 2015/4/30 EICE team Automated Data Analysis Solutions to Silicon Debug Yu-Shen Yang Dept. of ECE University of Toronto Toronto,

Slides:



Advertisements
Similar presentations
1 Verification by Model Checking. 2 Part 1 : Motivation.
Advertisements

Presenter : Shao-Chieh Hou VLSI Design, Automation and Test, VLSI-DAT 2007.
Presenter : Ching-Hua Huang 2013/11/4 Temporal Parallel Simulation: A Fast Gate-level HDL Simulation Using Higher Level Models Cited count : 3 Dusung Kim.
Automated Method Eliminates X Bugs in RTL and Gates Kai-hui Chang, Yen-ting Liu and Chris Browy.
Reap What You Sow: Spare Cells for Post-Silicon Metal Fix Kai-hui Chang, Igor L. Markov and Valeria Bertacco ISPD’08, Pages
Presenter : Ching-Hua Huang 2014/4/14 A Configurable Bus-Tracer for Error Reproduction in Post-Silicon Validation Shing-Yu Chen ; Ming-Yi Hsiao ; Wen-Ben.
Feng-Xiang Huang 2015/5/4 International Symposium Quality Electronic Design (ISQED), th M. H Neishaburi, Zeljko Zilic, McGill University, Quebec.
1 Architectural Complexity: Opening the Black Box Methods for Exposing Internal Functionality of Complex Single and Multiple Processor Systems EECC-756.
Reporter:PCLee With a significant increase in the design complexity of cores and associated communication among them, post-silicon validation.
CSE241 Formal Verification.1Cichy, UCSD ©2003 CSE241A VLSI Digital Circuits Winter 2003 Recitation 6: Formal Verification.
Continuously Recording Program Execution for Deterministic Replay Debugging.
Feng-Xiang Huang A Low-Cost SOC Debug Platform Based on On-Chip Test Architectures.
Presenter : Shau-Jay Hou Tsung-Cheng Lin Kuan-Fu Kuo 2015/6/12 EICE team TraceDo: An On-Chip Trace System for Real-Time Debug and Optimization in Multiprocessor.
Presenter : Shao-Jay Hou. Today’s complex integrated circuit designs increasingly rely on post-silicon validation to eliminate bugs that escape from pre-silicon.
Presenter : Shih-Tung Huang Tsung-Cheng Lin Kuan-Fu Kuo 2015/6/15 EICE team Model-Level Debugging of Embedded Real-Time Systems Wolfgang Haberl, Markus.
1 Design For Debug Using DAFCA system Gadi Glikberg 15/6/06.
Ritu Varma Roshanak Roshandel Manu Prasanna
Design of Fault Tolerant Data Flow in Ptolemy II Mark McKelvin EE290 N, Fall 2004 Final Project.
Presenter : Shih-Tung Huang Tsung-Cheng Lin Kuan-Fu Kuo 2015/6/26 EICE team dIP: A Non-Intrusive Debugging IP for Dynamic Data Race Detection in Many-core.
CS533 - Concepts of Operating Systems
The importance of switching in communication The cost of switching is high Definition: Transfer input sample points to the correct output ports at the.
System-Level Types for Component-Based Design Paper by: Edward A. Lee and Yuhong Xiong Presentation by: Dan Patterson.
Feng-Xiang Huang A Design-for-Debug (DfD) for NoC-based SoC Debugging via NoC Hyunbean Yi 1, Sungju Park 2, and Sandip Kundu 1 1 Department of Electrical.
Principle of Functional Verification Chapter 1~3 Presenter : Fu-Ching Yang.
Data Cache Prefetching using a Global History Buffer Presented by: Chuck (Chengyan) Zhao Mar 30, 2004 Written by: - Kyle Nesbit - James Smith Department.
Presenter : Shao-Cheih Hou Sight count : 11 ASPDAC ‘08.
1 Presenter: Ming-Shiun Yang Sah, A., Balakrishnan, M., Panda, P.R. Design, Automation & Test in Europe Conference & Exhibition, DATE ‘09. A Generic.
L i a b l eh kC o m p u t i n gL a b o r a t o r y Trace-Based Post-Silicon Validation for VLSI Circuits Xiao Liu Department of Computer Science and Engineering.
Technical University Tallinn, ESTONIA Overview: Fault Simulation Overview about methods Low (gate) level methods Parallel fault simulation Deductive fault.
Dr. Pedro Mejia Alvarez Software Testing Slide 1 Software Testing: Building Test Cases.
Using Mathematica for modeling, simulation and property checking of hardware systems Ghiath AL SAMMANE VDS group : Verification & Modeling of Digital systems.
CMSC 345 Fall 2000 Unit Testing. The testing process.
Reporter: PCLee. Assertions in silicon help post-silicon debug by providing observability of internal properties within a system which are.
Presenter : Ching-Hua Huang 2013/9/16 Visibility Enhancement for Silicon Debug Cited count : 62 Yu-Chin Hsu; Furshing Tsai; Wells Jong; Ying-Tsai Chang.
Design Verification An Overview. Powerful HDL Verification Solutions for the Industry’s Highest Density Devices  What is driving the FPGA Verification.
Presenter : Ching-Hua Huang 2013/7/15 A Unified Methodology for Pre-Silicon Verification and Post-Silicon Validation Citation : 15 Adir, A., Copty, S.
Robust Low Power VLSI ECE 7502 S2015 Fault Diagnosis and Logic Debugging Using Boolean Satisfiability ECE 7502 Class Discussion Benjamin Melton Thursday.
Presenter: Jyun-Yan Li Effective Software-Based Self-Test Strategies for On-Line Periodic Testing of Embedded Processors Antonis Paschalis Department of.
Reporter :PCLee The decisions on when to acquire debug data during post-silicon validation are determined by trigger events that are programmed.
Dynamic Analysis of Multithreaded Java Programs Dr. Abhik Roychoudhury National University of Singapore.
1 C++ Plus Data Structures Nell Dale Chapter 1 Software Engineering Principles Modified from the Slides made by Sylvia Sorkin, Community College of Baltimore.
Presenter: PCLee Post-silicon validation is used to identify design errors in silicon. Its main limitation is real-time observability of the.
Replay Compilation: Improving Debuggability of a Just-in Time Complier Presenter: Jun Tao.
Presenter: PCLee. Semiconductor manufacturers aim at delivering high-quality new devices within shorter times in order to gain market shares.
Presenter: Hong-Wei Zhuang X-Tracer: A Reconfigurable X- Tolerant Trace Compressor for Silicon Debug Feng Yuan Dept. of Comput. Sci. & Eng., Chinese Univ.
Preeti Ranjan Panda, Anant Vishnoi, and M. Balakrishnan Proceedings of the IEEE 18th VLSI System on Chip Conference (VLSI-SoC 2010) Sept Presenter:
Feng-Xiang Huang Test Symposium(ETS), th IEEE European Ko, Ho Fai; Nicolici, Nicola; Department of Electrical and Computer Engineering,
Lecture 12: Reconfigurable Systems II October 20, 2004 ECE 697F Reconfigurable Computing Lecture 12 Reconfigurable Systems II: Exploring Programmable Systems.
The Structure of the “THE”- Multiprogramming System Edsger W. Dijkstra Presented by: Jin Li.
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
Virtual Application Profiler (VAPP) Problem – Increasing hardware complexity – Programmers need to understand interactions between architecture and their.
Lecture 1 – Overview (rSp06) ©2008 Joanne DeGroat, ECE, OSU -1- Functional Verification of Hardware Designs EE764 – Functional Verification of Hardware.
CS 351/ IT 351 Modeling and Simulation Technologies Review ( ) Dr. Jim Holten.
Unit1: Modeling & Simulation Module5: Logic Simulation Topic: Unknown Logic Value.
Chapter 11 System-Level Verification Issues. The Importance of Verification Verifying at the system level is the last opportunity to find errors before.
Formal Verification of Clock Domain Crossing Using Gate-level Models of Metastable Flip-Flops Ghaith Tarawneh, Andrey Mokhov and Alex Yakovlev Newcastle.
On the Relation Between Simulation-based and SAT-based Diagnosis CMPE 58Q Giray Kömürcü Boğaziçi University.
Distributed Sequencing for Resource Sharing in Multi-Applicative Heterogeneous NoC Platforms 林鼎原 Department of Electrical Engineering National Cheng Kung.
The LC-3 – Chapter 6 COMP 2620 Dr. James Money COMP
An Unobtrusive Debugging Methodology for Actel AX and RTAX-S FPGAs
C++ Plus Data Structures
FPGA: Real needs and limits
Class project by Piyush Ranjan Satapathy & Van Lepham
Chapter 1: Object-Oriented Thinking
Overview: Fault Diagnosis
Soft Error Detection for Iterative Applications Using Offline Training
Avidan Efody, Mentor Graphics Corp.
The Structure of the “The” –Multiprogramming System
Paper by D.L Parnas And D.P.Siewiorek Prepared by Xi Chen May 16,2003
William Stallings Computer Organization and Architecture
Presentation transcript:

Presenter : Shih-Tung Huang 2015/4/30 EICE team Automated Data Analysis Solutions to Silicon Debug Yu-Shen Yang Dept. of ECE University of Toronto Toronto, M5S 3G4 Design, Automation & Test in Europe Conference & Exhibition, DATE '09. Nicola Nicolici Dept. of ECE McMaster University Hamilton, L8S 4K1 Andreas Veneris Dept. of ECE & CS University of Toronto Toronto, M5S 3G4

2 Research tree Multi-core debugging environment OpenOCD [paper] [thesis] [user guide] Eclipse C/C++ Development Tooling FLEXIBLE DEBUGGING FRAMEWORK FOR HETEROGENEOUS MULTICORE PLATFORM dIP: A Non-Intrusive Debugging IP for Dynamic Data Race Detection in Many-core IEEE GDB

Since pre-silicon functional verification is insufficient to detect all design errors, re-spins are often needed due to malfunctions that escape into the silicon. This paper presents an automated software solution to analyze the data collected during silicon debug. The proposed methodology analyzes the test sequences to detect suspects in both the spatial and the temporal domain. A set of software debug techniques are proposed to analyze the acquired data from the hardware testing and provide suggestions for the setup of the test environment in the next debug session. A comprehensive set of experiments demonstrate its effectiveness in terms of run-time and resolution. 3 Abstract

Post-silicon verification Scan chain [6][7] Trace buffer [8][9] To find bug root engineer need to use above tool again and again Trace buffer is limited Spend lot of time to fine bug root This paper propose method Automated software help engineer to find bug root Spatial domain Which module may cause bug root temporal domain what time dose the bug happen 4 What’s the problem Spatial domain temporal domain

Error/defect can type into two kind Deterministic Input are controlled synchronously Non-deterministic Input are controlled asynchronously interrupts from peripherals or timing of refresh cycles for dynamic memories Bug will happen when event trigged contribution Automated figure 1 flow to help find suspect(s) in hierarchical manner 5 Introduction

6 Related work Automated data analysis (post-silicon verification) Similar approach [10][11][12] This paper method X-simulation[17] Similar to Hierarchical debug in Post-silicon[16] Scan chain [6][7] Trace buffer [8][9] software hardware used reference

7 Propose methodology assumption Erroneous silicon behavior is deterministic Methodology can only find deterministic suspect(s) Can access internal states’ value internal states’ value mean register value Through scan chain [6][7] and trace buffer [8][9] Functional bug Can escape in silicon by use programmable hardware[14] Partial states equivalence Golden model is high-level model There are some states can not be mapped test vectors faulting due to silicon signals error

8 Silicon scan chan and trace buffer Traced group is 16bits width and use multiplexer to select traced group which controlled by JTAG Trace buffer can be separate into two segment for tracing difference time’s and group’s single

9 Propose methodology overview This methodology have three goals Find suspect modules in in hierarchical manner (Spatial domain) Find which time slot (critial interval) does bug happen (temporal domain) Find state elements which in bug propagation path Start form reducing test vectors This paper believe if time before Tn‘s pattern is pass, then we can eliminate the pattern before Tn Error is not in patten before Tn Start from Tn in next debug section Store state elements’ value

10 Propose methodology step This algorithm can separate into three step Step1 : Hierarchical Diagnosis analysis which module is suspect Step2 : Timeframe Diagnosis find which time slot (critical interval) does error happen Step3 :X-simulation[17] simulate unknown output port value as golden result Round, defined by n, how many level should be examine Debug session Debug runs

11 Hierarchical Diagnosis Goal: identify suspect modules Compare real output value and expect output value which came from X-simulation by Boolean satisfiability instance How many hierarchy level should examine in one debug session is defined by n Output suspect list to Timeframe Diagnosis First round Second round

12 Timeframe Diagnosis Goal: identify which time slot (critical interval) dose bug happen How to determine time slot By the algorithm below

13 Timeframe Diagnosis How to identify which time slot dose bug happen By comparing real value and golden result at Tn, Tn+3 and Tn+6 If Tn is OK and Tn+3, Tn+6 are error, then bug is happen in Timeframe module 1

14 Timeframe Diagnosis Problem Partial state equivalence problem Number of Golden state element is not enough to map real state element S3 error happen between Tm and Tn, but only when Tn+i can be detected S1 and S2 have Golden state element, but S3 don’t have Tn+i

15 Timeframe Diagnosis Solution Algorithm have all state elements’ value at initial module (time at Tn) When time at Tn+i algorithm detect error happen Return all state elements’ value and restart before time Tn Objective Dump all state elements’ value which around error happened time Tn+i

16 Experiment 1 More then 90% module is reduced Lot amount of trace data can be reduced

17 Experiment 2 Force on n value How many hierarchy level should examine in one debug session Fig 8(a), identify more suspects when n increase, because not enough information Timeframe

Four different benchmarks worse case performance down is 12.25% Compare with related work [9] 18 Experiences

At first, this paper force many-core data race detection through now how many solutions are proposed, benefits and drawbacks Hardware: use lot of huge area when core number increase Software: probe effect Second, propose the ideal of this paper Use relate work [3] to prevent probe effect Use relate work [4] for Data race detection Proposed overall framework Finally, use experiences to show the maximum performance down is 12.25% of the four testbench 19 Conclusion