Logic Verification Industry Perspective Bruce Wile IBM Server Group Verification Lead 4/2/01.

Slides:



Advertisements
Similar presentations
Sistemas Digitais I LESI - 2º ano Lesson 9 - Memory, CPLDs and FPGAs U NIVERSIDADE DO M INHO E SCOLA DE E NGENHARIA Prof. João Miguel Fernandes
Advertisements

SE-292 High Performance Computing
SE-292 High Performance Computing Memory Hierarchy R. Govindarajan
CSCE430/830 Computer Architecture
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.
10/14/2005Caltech1 Reliable State Machines Dr. Gary R Burke California Institute of Technology Jet Propulsion Laboratory.
Enhanced Availability With RAID CC5493/7493. RAID Redundant Array of Independent Disks RAID is implemented to improve: –IO throughput (speed) and –Availability.
Verification Plan. This is the specification for the verification effort. It gives the what am I verifying and how am I going to do it!
Software Quality Assurance Inspection by Ross Simmerman Software developers follow a method of software quality assurance and try to eliminate bugs prior.
The Memory Hierarchy (Lectures #24) ECE 445 – Computer Organization The slides included herein were taken from the materials accompanying Computer Organization.
Software Testing. Overview Definition of Software Testing Problems with Testing Benefits of Testing Effective Methods for Testing.
1 Lecture 2: Review of Computer Organization Operating System Spring 2007.
1 HW/SW Partitioning Embedded Systems Design. 2 Hardware/Software Codesign “Exploration of the system design space formed by combinations of hardware.
ENGIN112 L38: Programmable Logic December 5, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 38 Programmable Logic.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Verification and Validation l Assuring that a software system meets a user's.
November 18, 2004 Embedded System Design Flow Arkadeb Ghosal Alessandro Pinto Daniele Gasperini Alberto Sangiovanni-Vincentelli
COMPUTER ARCHITECTURE & OPERATIONS I Instructor: Hao Ji.
1 Introduction A digital circuit design is just an idea, perhaps drawn on paper We eventually need to implement the circuit on a physical device –How do.
Formal verification Marco A. Peña Universitat Politècnica de Catalunya.
CS 151 Digital Systems Design Lecture 38 Programmable Logic.
From Concept to Silicon How an idea becomes a part of a new chip at ATI Richard Huddy ATI Research.
Software Testing & Strategies
RAID Systems CS Introduction to Operating Systems.
Digital Circuit Implementation. Wafers and Chips  Integrated circuit (IC) chips are manufactured on silicon wafers  Transistors are placed on the wafers.
Test and Verification Solutions116 th April 2010 Silicon South West, “Testing Times” The Economics of Verification Mike Bartley, TVS.
Lecture 11: Storage Systems Disk, RAID, Dependability Kai Bu
Silent Dismissal Administrator Quick Start Guide.
Advances in Language Design
Lecture 11: Storage Systems Disk, RAID, Dependability Kai Bu
RAID Ref: Stallings. Introduction The rate in improvement in secondary storage performance has been considerably less than the rate for processors and.
Day 10 Hardware Fault Tolerance RAID. High availability All servers should be on UPSs –2 Types Smart UPS –Serial cable connects from UPS to computer.
C.S. Choy95 COMPUTER ORGANIZATION Logic Design Skill to design digital components JAVA Language Skill to program a computer Computer Organization Skill.
MGS Testing A High Level Overview of Testing in Microsoft Games Studio Joe Djorgee – Test Lead.
1 Software Testing (Part-II) Lecture Software Testing Software Testing is the process of finding the bugs in a software. It helps in Verifying and.
N-Tier Client/Server Architectures Chapter 4 Server - RAID Copyright 2002, Dr. Ken Hoganson All rights reserved. OS Kernel Concept RAID – Redundant Array.
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.
Presenter : Ching-Hua Huang 2013/7/15 A Unified Methodology for Pre-Silicon Verification and Post-Silicon Validation Citation : 15 Adir, A., Copty, S.
Teaching Functional Verification Design Automation Conference Sunday, June 9, 2002.
CSE 494: Electronic Design Automation Lecture 2 VLSI Design, Physical Design Automation, Design Styles.
Cyclic Codes for Error Detection W. W. Peterson and D. T. Brown by Maheshwar R Geereddy.
Reminder Lab 0 Xilinx ISE tutorial Research Send me an if interested Looking for those interested in RC with skills in compilers/languages/synthesis,
Functional Verification Figure 1.1 p 6 Detection of errors in the design Before fab for design errors, after fab for physical errors.
From Quality Control to Quality Assurance…and Beyond Alan Page Microsoft.
COEN 180 Erasure Correcting, Error Detecting, and Error Correcting Codes.
Introduction to Reconfigurable Computing Greg Stitt ECE Department University of Florida.
1 Homework Reading –PAL pp , Continue mp1 –Questions? Continue lab sessions with your section.
ECE 259 / CPS 221 Advanced Computer Architecture II (Parallel Computer Architecture) Availability Copyright 2004 Daniel J. Sorin Duke University.
PHY 201 (Blum)1 Microcode Source: Digital Computer Electronics (Malvino and Brown)
CS 127 Introduction to Computer Science. What is a computer?  “A machine that stores and manipulates information under the control of a changeable program”
1 Taxonomy and Trends Dan Siewiorek Carnegie Mellon University June 2012.
DSP Architectures Additional Slides Professor S. Srinivasan Electrical Engineering Department I.I.T.-Madras, Chennai –
Lecture 1: Review of Computer Organization
Lecture 1 – Overview (rSp06) ©2008 Joanne DeGroat, ECE, OSU -1- Functional Verification of Hardware Designs EE764 – Functional Verification of Hardware.
Economic Justification. Good Enough Quality Time to market Time to market Time to profit Time to profit.
Challenges in Hardware Logic Verification Bruce Wile IBM Server Group Verification Lead 10/25/01.
Lecture 1 – Overview (rSp06) ©2008 Joanne DeGroat, ECE, OSU -1- Functional Verification of Hardware Designs EE764 – Functional Verification of Hardware.
Types of RAM (Random Access Memory) Information Technology.
Computer Architecture Lecture 25 Fasih ur Rehman.
Introduction Edited by Enas Naffar using the following textbooks: - A concise introduction to Software Engineering - Software Engineering for students-
Different Types of Testing
CS161 – Design and Architecture of Computer Systems
Introduction to Reconfigurable Computing
Introduction Edited by Enas Naffar using the following textbooks: - A concise introduction to Software Engineering - Software Engineering for students-
Chapter 2: Operating-System Structures
CSE451 Virtual Memory Paging Autumn 2002
CSC3050 – Computer Architecture
Chapter 2: Operating-System Structures
Presentation transcript:

Logic Verification Industry Perspective Bruce Wile IBM Server Group Verification Lead 4/2/01

What a great time to be an engineer! n Exciting work n Major effect on culture n Compensation l Industry's word for "money, morale, and benefits"

Why all the big bucks? n Basic business principle: Company that gets a product to the market first gets an inordinate share of the market revenue

Triple Constraints n Schedule n Costs n Quality

Why is verification so important to the chip industry? n Verification is the single biggest lever to positively effect the triple constraints l Fewer revs through the fabrication process means lower costs and faster time-to-market l Re-spinning a chip costs: è Hundreds of thousands of dollars è 6-8 weeks n So if you can get it right in fewer "passes", you WIN!!!

Cost of Bugs Over Time n The longer a bug goes undetected, the more expensive the fix l A bug found early (designer sim) has little cost l Finding a bug at Chip or System Sim has moderate cost è Requires more debug time and problem isolation è Could require new algorithm, which could effect schedule and cause rework of physical design l Finding a bug in System Test (testfloor) requires new hardware RIT l Finding a bug in the customer's environment can cost hundreds of millions in hardware and brand image $ Time

EE career choices EE Verification Design Circuits

Biggest challenges are in Verification n Circuit design process has been "fixed" n Industry-wide shortage of "good" verification engineers

The Art of Verification n Two simple questions; One huge task l Am I driving all possible input scenarios? l How will I know when it fails?

Thou shalt stress thine logic harder than it will ever be stressed again Thou shalt not move onto a higher platform until the bug rate has dropped off Thou shalt place checking upon all things Three Simulation Commandments

The Line Delete Escape n Escape: A problem that is found on the test floor (after fabrication) and therefore has escaped the verification process n The Line Delete escape was a problem on the ES/9000 machine l S/390 Bipolar, 1991 l Escape shows example of how a verification engineer needs to think

The Line Delete Escape (pg 2) n Line Delete is a method of circumventing bad cells of a large memory array or cache array l An array mapping allows for removal of defective cells within the usable space l In highly reliable servers, Error Correction Code (ECC) fixes single bit errors withing an array, and detects double bit errors

The Line Delete Escape (pg 3) If a line in an array has multiple bad bits (a single bit usually goes unnoticed due to ECC-error correction codes), the line can be taken "out of service". In the array pictured, row 05 has a bad congruence class entry

The Line Delete Escape (pg 4) Data enters ECC creation logic prior to storage into the array. When read out, the ECC logic corrects single bit errors and tags Uncorrectable Errors (UEs), and increments a counter corresponding to the row and congruence class Data in ECC Logic Counters ECC Logic Data out

The Line Delete Escape (pg 5) When a preset threshhold of UEs is detected from a array cell, the service controller is informed that a line delete operation is needed Data in ECC Logic Counters ECC Logic Data out Threshhold Service Controller

The Line Delete Escape (pg 6) The Service controller can update the configuration registers, ordering a line delete to occur. When the configuration registers are written, the line delete controls are engaged and writes to row 5, congruence class 'C' cease. However, because three other cells remain good in this congruence class, the sole repercussion of the line delete is a slight decline in performance ECC Logic Counters Data in ECC Logic Data out Threshhold Service Controller Line delete control Storage Controller configuration registers

The Line Delete Escape (pg 7) ECC Logic Counters Data in ECC Logic Data out Threshhold Service Controller Line delete control Storage Controller configuration registers How would we test this logic? What must occur in the testcase? What checking must we implement?