Timing Analysis. Andreas Kuehlmann. A k = max{a 1 +D k1, A 2 +D k2,a 3 +D k3 } S k. S j. Required times: S ki. given required times on primary outputs

Size: px
Start display at page:

Download "Timing Analysis. Andreas Kuehlmann. A k = max{a 1 +D k1, A 2 +D k2,a 3 +D k3 } S k. S j. Required times: S ki. given required times on primary outputs"

Transcription

1 EECS 9B Spring 3 Timing Analysis - Delay Models Simple model : D k Ak A A A3 Timing Analysis A k = arrival time = max(a,a,a 3 ) + D k D k is the delay at node k, parameterized according to function f k and fanout node k Andreas Kuehlmann Simple model : Ak D k D D k k3 A3 A A A A A3 Can also have different times for rise time and fall time Ak A k = max{a +D k, A +D k,a 3 +D k3 } Static delay analysis Required Times // level of PI nodes initialized to, // the others are set to -. // Invoke LEVEL from PO Algorithm LEVEL(k) { // levelize nodes if( k.level!= -) return(k.level) else k.level = +max{level(k i ) k i fanin(k)} return(k.level) } // Compute arrival times: // Given arrival times on PI s Algorithm ARRIVAL() { for L = to MAXLEVEL for {k k.level = L} A k = MAX{A ki } + D k } Required times: given required times on primary outputs Traverse in reverse topological order (i.e. from primary outputs to primary inputs) if (k i, k ) is an edge between k i and k, R ki,k = R k - D k (this is the edge required time) Hence, the required time of output of node k is R k = min ( R k,kj k j fanout(k) ) k i k S k k i S ki S j j 3

2 Propagating Slacks Sequential networks Slacks: slack at the output node kiss k = R k -A k Since R ki, k =R k -D k S ki, k =R ki, k - A ki S ki, k + A ki = R k -D k = S k + A k - D k Since A k = max {A kj } + D k S ki, k = S k + max {A kj } - A ki k j, k i fanin (k ) S ki = min{s ki, j } j fanout (k i ) k i k S k S ki k i S j j l l C C3 l5 C C l l3 Notes: Each edge is the graph has a slack and a required time Negative slack is bad. Arrival times known at l and l Required times known at l 3, l, and l 5 Delay analysis gives arrival and required times (hence slacks) for C, C, C 3, C 5 6 Static critical paths Min-Max problem:minimize max{-s i, } A static critical path of a Boolean network is a path P = {i,i,,i p } where S ik, ik+ < Note: if a node k is on a static critical path, then at least one of the fanin edges of kis critical. Hence, all critical paths reach from an input to an output. Note: There may be several critical paths Example: Static critical paths A8= R=5 - R= A9= A=6 R=5 A=5 R=5 S =- R3=3 S = R7= S 3, =- R9=- S, = - S, = S 5, = S 6,3 = S 7,3 = - S 7, = - S 7,5 = S 8,6 = S 9,7 = - critical path edges S ki, k = S k + max{a kj } - A ki, k j,k i fanin(k) S k = min{s k, kj }, k j fanout(k) 7 8

3 Timing analysis problems Functional Timing Analysis We want to determine the true critical paths of a circuit in order to: determine the minimum cycle time that the circuit will function identify critical paths from performance optimization - don t want to try to optimize the wrong (non-critical) paths Implications: Don t want false paths (produced by static delay analysis) Delay model is worstcase model. Need to ensure correctness for case where i th gate delay D i M What is Timing Analysis? Estimate when the output of a given circuit gets stable clock Combinational block T 9 Why Timing Analysis? Timing verification Verifies whether a design meets a given timing constraint Example: cycle-time constraint Timing optimization Needs to identify critical portion of a design for further optimization Critical path identification In both applications, the more accurate, the better Timing Analysis - Basics Naïve approach - Simulate all input vectors with SPICE Accurate, but too expensive Gate-level timing analysis Focus of this lecture Less accurate than SPICE due to the level of abstraction, but much more efficient Scenario: Gate/wire delays are pre-characterized (accuracy loss) Perform timing analysis of a gate-level circuit assuming the gate/wire delays 3

4 Gate-level Timing Analysis Example: -bit Carry-skip Adder False path aware arr(z)? z A naive approach is topological analysis Easy longest-path problem Linear in the size of a network Not all paths can propagate signal events False paths If all longest paths are false, topological analysis gives delay overestimate Functional timing analysis= false-pathaware timing analysis Compute false-path-aware arrival time c_in a b a b Length 5 Length s s c_out x x arr(x )= arr(x )= mux ripple carry adder False Path Analysis - Basics Controlling/Non-Controlling Values Is a path responsible for delay? If the answer is no, can ignore the path for delay computation Check the falsity of long paths until we find the longest true path How can we determine whether a path is false? Controlled value of AND Delay underestimation is unacceptable Can lead to overlooking a timing violation Delay overestimation is not desirable, but acceptable Topological analysis can give overestimate, but never give underestimate Controlling value of AND Non-Controlling value of AND Controlled value of OR Controlling value of OR Non-Controlling value of OR 5 6

5 Static Sensitization A path is statically-sensitizable if there exists an input vector such that all the side inputs to the path are set to non-controlling values This is independent of gate delays Controlling value! Static Sensitization The (dashed)path is responsible for delay! Delay underestimation by static sensitization (delay = when true delay = 3) incorrect condition t= t= t= These paths are not statically-sensitizable 3 The longest true path is of length? 7 8 What is Wrong with Static Sensitization? Timing Simulation The idea of forcing non-controlling values to side inputs is okay, buttiming was ignored The same signal can have a controlling value at one time and a non-controlling value at another time. How about timing simulation as a correct method? 3 9 Implies that delay = for these inputs BUT! 5

6 Timing Simulation What is Wrong with Timing Simulation? -> 3 3 If gate delays are reduced, delay estimates can increase Not acceptable since Gate delays are just upper-bounds, actual delay is in [,d] Delay uncertainty due to manufacturing We are implicitly analyzing a familyof circuits where gate delays are within the upper-bounds Implies that delay = with the same set of inputs. Monotone Speedup Property Timing Simulation Revisited Definition: For any circuit C, if C is obtained from C by reducing some gate delays, and delay_estimate(c ) delay_estimate(c), then delay_estimate has Monotone Speedup property Timing simulation does nothave this property 3 3 means that the rising signal occurs anywhere between t = -infinity and t =. X-valued simulation 6

7 Timing Simulation Revisited Timed 3-valued (,,X) simulation called X-valued simulation Monotone speedup property is satisfied. Underlying model of floating mode condition [Chen, Du] Applies to simple gate networks only viability [McGeer, Brayton] Applies to general Boolean networks False Path Analysis Algorithms Checking the falsity of every path explicitly is too expensive - exponential # of paths State-of -the-art approach:. Start: set L = L top -! = topological longest path delay -! L old =. Binary search: If (Delay(L)) ( * )! L = L-L old /, L old = L, L = L +! L Else,! L = L-L old /, L old = L, L = L -! L If (L > L top or! L < threshold), L = L old, done (* ) Delay(L) = if there an input vector under which an output gets stable only at time t where L t? Can be reduced to a SAT problem [McGeer, Saldanha, Brayton, ASV] or a timed-atpg [Devadas, Keutzer, Malik] SAT-based False Path Analysis Example Decision problem: Is there an input vector under which the output gets stable only after t = T? Idea:. characterize the set of all input vectors S(T) that make the output stable no later than t = T. check if S(T) contains S = all possible input vectors This check is solved as a SAT problem: Is S \ S(T) empty? - set difference + emptiness check Let F and F(T) be the characteristic functions of S and S(T) Is F!F(T) satisfiable? a b c e d Assume all the PIs arrive at t =, all gate delays = Is the output stable time t >? f g 7 8 7

8 Example g(,t=) : the set of input vectors under which g gets stable to value = no later than t = a b c e d g(,t=) = d(,t=) f(,t=) = (a(,t=) b(,t=)) (c(,t=) e(,t=)) =!a!b(c ) =!a!bc = S (t=) g(,t= ) = onset =!a!bc = g(,t=) = S 9 f g Onset: stabilized by t=? Example a b c g(,t=) : the set of input vectors under which g gets stable to value = no later than t= e d g(,t=) = d(,t=) f(,t=) = (a(,t=) b(,t=)) (c(,t=) e(,t=)) = (a+b) + (!c ) = a+b = S (t=) g(,t= ) = offset = a+b+!c = S 3 f g Example a b c g(,t=) : the set of input vectors under which g gets stable to no later than t= g(,t=) = a+b e d g(,t= ) = offset = a+b+!c g(,t= ) \ g(,t=) = (a+b+!c)!(a+b) =!a!b!c = satisfiable f g Offset: NOTstabilized by t= under abc= 3 Summary False-path-aware arrival time analysis is wellunderstood Practical algorithms exist Can handle industrial circuits easily Remaining problems Incremental analysis (make it so that a small change in the circuit does not make the analysis start all over) Integration with logic optimization DSM issues such as cross-talk-aware false path analysis 3 8

9 Timed ATPG Yet another way to solve the same decision problem A generalization of regular ATPG: regular ATPG find an input vector that differentiates a fault-freecircuit and a faulty circuit in terms of functionality Timed ATPG find an input vector that exhibits a given timed behavior Timed extension of PODEM 33 9

Logic Synthesis and Verification

Logic Synthesis and Verification Logic Synthesis and Verification Jie-Hong Roland Jiang 江介宏 Department of Electrical Engineering National Taiwan University Fall Timing Analysis & Optimization Reading: Logic Synthesis in a Nutshell Sections

More information

Computation of Floating Mode Delay in Combinational Circuits: Theory and Algorithms. Kurt Keutzer. Synopsys. Abstract

Computation of Floating Mode Delay in Combinational Circuits: Theory and Algorithms. Kurt Keutzer. Synopsys. Abstract Computation of Floating Mode Delay in Combinational Circuits: Theory and Algorithms Srinivas Devadas MIT Cambridge, MA Kurt Keutzer Synopsys Mountain View, CA Sharad Malik Princeton University Princeton,

More information

VLSI Design Verification and Test Simulation CMPE 646. Specification. Design(netlist) True-value Simulator

VLSI Design Verification and Test Simulation CMPE 646. Specification. Design(netlist) True-value Simulator Design Verification Simulation used for ) design verification: verify the correctness of the design and 2) test verification. Design verification: Response analysis Specification Design(netlist) Critical

More information

Generation of High Quality Non-Robust Tests for Path Delay Faults

Generation of High Quality Non-Robust Tests for Path Delay Faults Generation of High Quality Non-Robust Tests for Path Delay Faults Kwang-Ting Cheng Hsi-Chuan Chen Department of ECE AT&T Bell Laboratories University of California Murray Hill, NJ 07974 Santa Barbara,

More information

EECS150 - Digital Design Lecture 10 - Combinational Logic Circuits Part 1

EECS150 - Digital Design Lecture 10 - Combinational Logic Circuits Part 1 EECS5 - Digital Design Lecture - Combinational Logic Circuits Part Feburary 26, 22 John Wawrzynek Spring 22 EECS5 - Lec-cl Page Combinational Logic (CL) Defined y i = f i (x,...., xn-), where x, y are

More information

For smaller NRE cost For faster time to market For smaller high-volume manufacturing cost For higher performance

For smaller NRE cost For faster time to market For smaller high-volume manufacturing cost For higher performance University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Sciences EECS5 J. Wawrzynek Spring 22 2/22/2. [2 pts] Short Answers. Midterm Exam I a) [2 pts]

More information

USING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING. Liudmila Cheremisinova, Dmitry Novikov

USING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING. Liudmila Cheremisinova, Dmitry Novikov International Book Series "Information Science and Computing" 203 USING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING Liudmila Cheremisinova, Dmitry Novikov Abstract. The problem of checking whether a

More information

Physical Design of Digital Integrated Circuits (EN0291 S40) Sherief Reda Division of Engineering, Brown University Fall 2006

Physical Design of Digital Integrated Circuits (EN0291 S40) Sherief Reda Division of Engineering, Brown University Fall 2006 Physical Design of Digital Integrated Circuits (EN0291 S40) Sherief Reda Division of Engineering, Brown University Fall 2006 1 Lecture 04: Timing Analysis Static timing analysis STA for sequential circuits

More information

CSE 140 Spring 2017: Final Solutions (Total 50 Points)

CSE 140 Spring 2017: Final Solutions (Total 50 Points) CSE 140 Spring 2017: Final Solutions (Total 50 Points) 1. (Boolean Algebra) Prove the following Boolean theorem using Boolean laws only, i.e. no theorem is allowed for the proof. State the name of the

More information

EECS150 - Digital Design Lecture 19 - Combinational Logic Circuits : A Deep Dive

EECS150 - Digital Design Lecture 19 - Combinational Logic Circuits : A Deep Dive EECS150 - Digital Design Lecture 19 - Combinational Logic Circuits : A Deep Dive March 30, 2010 John Wawrzynek Spring 2010 EECS150 - Lec19-cl1 Page 1 Boolean Algebra I (Representations of Combinational

More information

EECS 427 Lecture 8: Adders Readings: EECS 427 F09 Lecture 8 1. Reminders. HW3 project initial proposal: due Wednesday 10/7

EECS 427 Lecture 8: Adders Readings: EECS 427 F09 Lecture 8 1. Reminders. HW3 project initial proposal: due Wednesday 10/7 EECS 427 Lecture 8: dders Readings: 11.1-11.3.3 3 EECS 427 F09 Lecture 8 1 Reminders HW3 project initial proposal: due Wednesday 10/7 You can schedule a half-hour hour appointment with me to discuss your

More information

Fault Modeling. 李昆忠 Kuen-Jong Lee. Dept. of Electrical Engineering National Cheng-Kung University Tainan, Taiwan. VLSI Testing Class

Fault Modeling. 李昆忠 Kuen-Jong Lee. Dept. of Electrical Engineering National Cheng-Kung University Tainan, Taiwan. VLSI Testing Class Fault Modeling 李昆忠 Kuen-Jong Lee Dept. of Electrical Engineering National Cheng-Kung University Tainan, Taiwan Class Fault Modeling Some Definitions Why Modeling Faults Various Fault Models Fault Detection

More information

Multi-Level Logic Optimization. Technology Independent. Thanks to R. Rudell, S. Malik, R. Rutenbar. University of California, Berkeley, CA

Multi-Level Logic Optimization. Technology Independent. Thanks to R. Rudell, S. Malik, R. Rutenbar. University of California, Berkeley, CA Technology Independent Multi-Level Logic Optimization Prof. Kurt Keutzer Prof. Sanjit Seshia EECS University of California, Berkeley, CA Thanks to R. Rudell, S. Malik, R. Rutenbar 1 Logic Optimization

More information

211: Computer Architecture Summer 2016

211: Computer Architecture Summer 2016 211: Computer Architecture Summer 2016 Liu Liu Topic: Storage Project3 Digital Logic - Storage: Recap - Review: cache hit rate - Project3 - Digital Logic: - truth table => SOP - simplification: Boolean

More information

CSE 140 Midterm 3 version A Tajana Simunic Rosing Spring 2015

CSE 140 Midterm 3 version A Tajana Simunic Rosing Spring 2015 CSE 140 Midterm 3 version A Tajana Simunic Rosing Spring 2015 Name of the person on your left : Name of the person on your right: 1. 20 points 2. 20 points 3. 20 points 4. 15 points 5. 15 points 6. 10

More information

Delay Variation Tolerance for Domino Circuits

Delay Variation Tolerance for Domino Circuits Delay Variation Tolerance for Domino Circuits Student: Kai-Chiang Wu Advisor: Shih-Chieh Chang Department of Computer Science National Tsing Hua University Hsinchu, Taiwan 300, R.O.C. June, 2004 Abstract

More information

VLSI Physical Design Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

VLSI Physical Design Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur VLSI Physical Design Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture - 54 Design for Testability So, in the last lecture we talked

More information

( c) Give logic symbol, Truth table and circuit diagram for a clocked SR flip-flop. A combinational circuit is defined by the function

( c) Give logic symbol, Truth table and circuit diagram for a clocked SR flip-flop. A combinational circuit is defined by the function Question Paper Digital Electronics (EE-204-F) MDU Examination May 2015 1. (a) represent (32)10 in (i) BCD 8421 code (ii) Excess-3 code (iii) ASCII code (b) Design half adder using only NAND gates. ( c)

More information

Testability Measures controllability observability Controllability Observability

Testability Measures controllability observability Controllability Observability Testability Measures An attempt to quantify testability by Goldstein 79 and Grason 79 resulted in two testability measures, controllability and observability. Controllability is defined as the difficulty

More information

ECE 2300 Digital Logic & Computer Organization

ECE 2300 Digital Logic & Computer Organization ECE 23 Digital Logic & Computer Organization Spring 28 Combinational Building Blocks Lecture 5: Announcements Lab 2 prelab due tomorrow HW due Friday HW 2 to be posted on Thursday Lecture 4 to be replayed

More information

Single Stuck-At Fault Model Other Fault Models Redundancy and Untestable Faults Fault Equivalence and Fault Dominance Method of Boolean Difference

Single Stuck-At Fault Model Other Fault Models Redundancy and Untestable Faults Fault Equivalence and Fault Dominance Method of Boolean Difference Single Stuck-At Fault Model Other Fault Models Redundancy and Untestable Faults Fault Equivalence and Fault Dominance Method of Boolean Difference Copyright 1998 Elizabeth M. Rudnick 1 Modeling the effects

More information

Combinational Equivalence Checking using Boolean Satisfiability and Binary Decision Diagrams

Combinational Equivalence Checking using Boolean Satisfiability and Binary Decision Diagrams Combinational Equivalence Checking using Boolean Satisfiability and Binary Decision Diagrams Sherief Reda Ashraf Salem Computer & Systems Eng. Dept. Mentor Graphics Egypt Ain Shams University Cairo, Egypt

More information

Adders, subtractors comparators, multipliers and other ALU elements

Adders, subtractors comparators, multipliers and other ALU elements CSE4: Components and Design Techniques for Digital Systems Adders, subtractors comparators, multipliers and other ALU elements Instructor: Mohsen Imani UC San Diego Slides from: Prof.Tajana Simunic Rosing

More information

Boolean Algebra. Digital Logic Appendix A. Postulates, Identities in Boolean Algebra How can I manipulate expressions?

Boolean Algebra. Digital Logic Appendix A. Postulates, Identities in Boolean Algebra How can I manipulate expressions? Digital Logic Appendix A Gates Combinatorial Circuits Sequential Circuits Other operations NAND A NAND B = NOT ( A ANDB) = AB NOR A NOR B = NOT ( A ORB) = A + B Truth tables What is the result of the operation

More information

Fundamentals of Digital Design

Fundamentals of Digital Design Fundamentals of Digital Design Digital Radiation Measurement and Spectroscopy NE/RHP 537 1 Binary Number System The binary numeral system, or base-2 number system, is a numeral system that represents numeric

More information

EEE2135 Digital Logic Design

EEE2135 Digital Logic Design EEE2135 Digital Logic Design Chapter 7. Sequential Circuits Design 서강대학교 전자공학과 1. Model of Sequential Circuits 1) Sequential vs. Combinational Circuits a. Sequential circuits: Outputs depend on both the

More information

UNIVERSITY OF CALIFORNIA, BERKELEY College of Engineering Department of Electrical Engineering and Computer Sciences

UNIVERSITY OF CALIFORNIA, BERKELEY College of Engineering Department of Electrical Engineering and Computer Sciences UNIVERSITY OF CALIFORNIA, BERKELEY College of Engineering Department of Electrical Engineering and Computer Sciences Elad Alon Homework #9 EECS141 PROBLEM 1: TIMING Consider the simple state machine shown

More information

Principles of Computer Architecture. Appendix B: Reduction of Digital Logic. Chapter Contents

Principles of Computer Architecture. Appendix B: Reduction of Digital Logic. Chapter Contents B-1 Principles of Computer Architecture Miles Murdocca and Vincent Heuring Appendix B: Reduction of Digital Logic B-2 Chapter Contents B.1 Reduction of Combinational Logic and Sequential Logic B.2 Reduction

More information

Carry Look Ahead Adders

Carry Look Ahead Adders Carry Look Ahead Adders Lesson Objectives: The objectives of this lesson are to learn about: 1. Carry Look Ahead Adder circuit. 2. Binary Parallel Adder/Subtractor circuit. 3. BCD adder circuit. 4. Binary

More information

ECE/CS 552: Introduction To Computer Architecture 1. Instructor:Mikko H Lipasti. Fall 2010 University i of Wisconsin-Madison

ECE/CS 552: Introduction To Computer Architecture 1. Instructor:Mikko H Lipasti. Fall 2010 University i of Wisconsin-Madison ECE/CS 552: Arithmetic I Instructor:Mikko H Lipasti Fall 2010 Univsity i of Wisconsin-Madison i Lecture notes partially based on set created by Mark Hill. Basic Arithmetic and the ALU Numb representations:

More information

Fundamental Algorithms for System Modeling, Analysis, and Optimization

Fundamental Algorithms for System Modeling, Analysis, and Optimization Fundamental Algorithms for System Modeling, Analysis, and Optimization Edward A. Lee, Jaijeet Roychowdhury, Sanjit A. Seshia UC Berkeley EECS 244 Fall 2016 Lecturer: Yu-Yun Dai Copyright 2010-date, E.

More information

Digital Logic Appendix A

Digital Logic Appendix A Digital Logic Appendix A Boolean Algebra Gates Combinatorial Circuits Sequential Circuits 1 Boolean Algebra George Boole ideas 1854 Claude Shannon, apply to circuit design, 1938 Describe digital circuitry

More information

VLSI System Testing. Testability Measures

VLSI System Testing. Testability Measures ECE 538 VLSI System Testing Krish Chakrabarty Testability Measures ECE 538 Krish Chakrabarty 1 Testability Measures Origins Controllability and observability SCOAP measures Sources of correlation error

More information

Equalities and Uninterpreted Functions. Chapter 3. Decision Procedures. An Algorithmic Point of View. Revision 1.0

Equalities and Uninterpreted Functions. Chapter 3. Decision Procedures. An Algorithmic Point of View. Revision 1.0 Equalities and Uninterpreted Functions Chapter 3 Decision Procedures An Algorithmic Point of View D.Kroening O.Strichman Revision 1.0 Outline Decision Procedures Equalities and Uninterpreted Functions

More information

Boolean Algebra. Digital Logic Appendix A. Boolean Algebra Other operations. Boolean Algebra. Postulates, Identities in Boolean Algebra

Boolean Algebra. Digital Logic Appendix A. Boolean Algebra Other operations. Boolean Algebra. Postulates, Identities in Boolean Algebra Digital Logic Appendix A Gates Combinatorial Circuits Sequential Circuits George Boole ideas 1854 Claude Shannon, apply to circuit design, 1938 (piirisuunnittelu) Describe digital circuitry function programming

More information

ECE 1767 University of Toronto

ECE 1767 University of Toronto Applications Why Two Fault Simulators Never Agree General Techniques Parallel Pattern Simulation Inactive Fault Removal Critical Path Tracing Fault Sampling Statistical Fault Analysis ECE 767 Fault grading

More information

EECS 579: Logic and Fault Simulation. Simulation

EECS 579: Logic and Fault Simulation. Simulation EECS 579: Logic and Fault Simulation Simulation: Use of computer software models to verify correctness Fault Simulation: Use of simulation for fault analysis and ATPG Circuit description Input data for

More information

Issues on Timing and Clocking

Issues on Timing and Clocking ECE152B TC 1 Issues on Timing and Clocking X Combinational Logic Z... clock clock clock period ECE152B TC 2 Latch and Flip-Flop L CK CK 1 L1 1 L2 2 CK CK CK ECE152B TC 3 Clocking X Combinational Logic...

More information

Advanced Testing. EE5375 ADD II Prof. MacDonald

Advanced Testing. EE5375 ADD II Prof. MacDonald Advanced Testing EE5375 ADD II Prof. MacDonald Functional Testing l Original testing method l Run chip from reset l Tester emulates the outside world l Chip runs functionally with internally generated

More information

CPE/EE 422/522. Chapter 1 - Review of Logic Design Fundamentals. Dr. Rhonda Kay Gaede UAH. 1.1 Combinational Logic

CPE/EE 422/522. Chapter 1 - Review of Logic Design Fundamentals. Dr. Rhonda Kay Gaede UAH. 1.1 Combinational Logic CPE/EE 422/522 Chapter - Review of Logic Design Fundamentals Dr. Rhonda Kay Gaede UAH UAH Chapter CPE/EE 422/522. Combinational Logic Combinational Logic has no control inputs. When the inputs to a combinational

More information

Adders, subtractors comparators, multipliers and other ALU elements

Adders, subtractors comparators, multipliers and other ALU elements CSE4: Components and Design Techniques for Digital Systems Adders, subtractors comparators, multipliers and other ALU elements Adders 2 Circuit Delay Transistors have instrinsic resistance and capacitance

More information

Number System. Decimal to binary Binary to Decimal Binary to octal Binary to hexadecimal Hexadecimal to binary Octal to binary

Number System. Decimal to binary Binary to Decimal Binary to octal Binary to hexadecimal Hexadecimal to binary Octal to binary Number System Decimal to binary Binary to Decimal Binary to octal Binary to hexadecimal Hexadecimal to binary Octal to binary BOOLEAN ALGEBRA BOOLEAN LOGIC OPERATIONS Logical AND Logical OR Logical COMPLEMENTATION

More information

CSEE 3827: Fundamentals of Computer Systems. Combinational Circuits

CSEE 3827: Fundamentals of Computer Systems. Combinational Circuits CSEE 3827: Fundamentals of Computer Systems Combinational Circuits Outline (M&K 3., 3.3, 3.6-3.9, 4.-4.2, 4.5, 9.4) Combinational Circuit Design Standard combinational circuits enabler decoder encoder

More information

Sample Test Paper - I

Sample Test Paper - I Scheme G Sample Test Paper - I Course Name : Computer Engineering Group Marks : 25 Hours: 1 Hrs. Q.1) Attempt any THREE: 09 Marks a) Define i) Propagation delay ii) Fan-in iii) Fan-out b) Convert the following:

More information

Chapter 6 Testability Analysis

Chapter 6 Testability Analysis 電機系 Chapter 6 Testability Analysis 可測度分析法 2 Outline Introduction SCOAP COP High-level Testability Testability Analysis Applications To give early warnings about the test problems Guide the selection of

More information

Chapter 4. Combinational: Circuits with logic gates whose outputs depend on the present combination of the inputs. elements. Dr.

Chapter 4. Combinational: Circuits with logic gates whose outputs depend on the present combination of the inputs. elements. Dr. Chapter 4 Dr. Panos Nasiopoulos Combinational: Circuits with logic gates whose outputs depend on the present combination of the inputs. Sequential: In addition, they include storage elements Combinational

More information

EECS150 - Digital Design Lecture 23 - FSMs & Counters

EECS150 - Digital Design Lecture 23 - FSMs & Counters EECS150 - Digital Design Lecture 23 - FSMs & Counters April 8, 2010 John Wawrzynek Spring 2010 EECS150 - Lec22-counters Page 1 One-hot encoding of states. One FF per state. State Encoding Why one-hot encoding?

More information

Latches. October 13, 2003 Latches 1

Latches. October 13, 2003 Latches 1 Latches The second part of CS231 focuses on sequential circuits, where we add memory to the hardware that we ve already seen. Our schedule will be very similar to before: We first show how primitive memory

More information

Philadelphia University Student Name: Student Number:

Philadelphia University Student Name: Student Number: Philadelphia University Student Name: Student Number: Faculty of Engineering Serial Number: Final Exam, First Semester: 2017/2018 Dept. of Computer Engineering Course Title: Logic Circuits Date: 29/01/2018

More information

Simplifying Logic Circuits with Karnaugh Maps

Simplifying Logic Circuits with Karnaugh Maps Simplifying Logic Circuits with Karnaugh Maps The circuit at the top right is the logic equivalent of the Boolean expression: f = abc + abc + abc Now, as we have seen, this expression can be simplified

More information

Lecture 3 Review on Digital Logic (Part 2)

Lecture 3 Review on Digital Logic (Part 2) Lecture 3 Review on Digital Logic (Part 2) Xuan Silvia Zhang Washington University in St. Louis http://classes.engineering.wustl.edu/ese461/ ircuit Optimization Simplest implementation ost criterion literal

More information

Outline. EECS150 - Digital Design Lecture 4 - Boolean Algebra I (Representations of Combinational Logic Circuits) Combinational Logic (CL) Defined

Outline. EECS150 - Digital Design Lecture 4 - Boolean Algebra I (Representations of Combinational Logic Circuits) Combinational Logic (CL) Defined EECS150 - Digital Design Lecture 4 - Boolean Algebra I (Representations of Combinational Logic Circuits) January 30, 2003 John Wawrzynek Outline Review of three representations for combinational logic:

More information

CMPUT 329. Circuits for binary addition

CMPUT 329. Circuits for binary addition CMPUT 329 Parallel Adder with Carry Lookahead and ALU Ioanis Nikolaidis (Katz & Borriello) rcuits for binary addition Full adder (carry-in to cascade for multi-bit adders) Sum = xor A xor B Cout = B +

More information

EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving III & Binary Decision Diagrams. Sanjit A. Seshia EECS, UC Berkeley

EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving III & Binary Decision Diagrams. Sanjit A. Seshia EECS, UC Berkeley EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving III & Binary Decision Diagrams Sanjit A. Seshia EECS, UC Berkeley Acknowledgments: Lintao Zhang Announcement Project proposals due

More information

EE 209 Logic Cumulative Exam Name:

EE 209 Logic Cumulative Exam Name: EE 209 Logic Cumulative Exam Name: 1.) Answer the following questions as True or False a.) A 4-to-1 multiplexer requires at least 4 select lines: true / false b.) An 8-to-1 mux and no other logi can be

More information

Binary Decision Diagrams and Symbolic Model Checking

Binary Decision Diagrams and Symbolic Model Checking Binary Decision Diagrams and Symbolic Model Checking Randy Bryant Ed Clarke Ken McMillan Allen Emerson CMU CMU Cadence U Texas http://www.cs.cmu.edu/~bryant Binary Decision Diagrams Restricted Form of

More information

Skew Management of NBTI Impacted Gated Clock Trees

Skew Management of NBTI Impacted Gated Clock Trees International Symposium on Physical Design 2010 Skew Management of NBTI Impacted Gated Clock Trees Ashutosh Chakraborty and David Z. Pan ECE Department, University of Texas at Austin ashutosh@cerc.utexas.edu

More information

Hw 6 due Thursday, Nov 3, 5pm No lab this week

Hw 6 due Thursday, Nov 3, 5pm No lab this week EE141 Fall 2005 Lecture 18 dders nnouncements Hw 6 due Thursday, Nov 3, 5pm No lab this week Midterm 2 Review: Tue Nov 8, North Gate Hall, Room 105, 6:30-8:30pm Exam: Thu Nov 10, Morgan, Room 101, 6:30-8:00pm

More information

Combinational Logic. Mantıksal Tasarım BBM231. section instructor: Ufuk Çelikcan

Combinational Logic. Mantıksal Tasarım BBM231. section instructor: Ufuk Çelikcan Combinational Logic Mantıksal Tasarım BBM23 section instructor: Ufuk Çelikcan Classification. Combinational no memory outputs depends on only the present inputs expressed by Boolean functions 2. Sequential

More information

Optimum Prefix Adders in a Comprehensive Area, Timing and Power Design Space

Optimum Prefix Adders in a Comprehensive Area, Timing and Power Design Space Optimum Prefix Adders in a Comprehensive Area, Timing and Power Design Space Jianhua Liu, Yi Zhu, Haikun Zhu, John Lillis 2, Chung-Kuan Cheng Department of Computer Science and Engineering University of

More information

Hardware Design I Chap. 4 Representative combinational logic

Hardware Design I Chap. 4 Representative combinational logic Hardware Design I Chap. 4 Representative combinational logic E-mail: shimada@is.naist.jp Already optimized circuits There are many optimized circuits which are well used You can reduce your design workload

More information

Testability. Shaahin Hessabi. Sharif University of Technology. Adapted from the presentation prepared by book authors.

Testability. Shaahin Hessabi. Sharif University of Technology. Adapted from the presentation prepared by book authors. Testability Lecture 6: Logic Simulation Shaahin Hessabi Department of Computer Engineering Sharif University of Technology Adapted from the presentation prepared by book authors Slide 1 of 27 Outline What

More information

SAT-Solving: From Davis- Putnam to Zchaff and Beyond Day 3: Recent Developments. Lintao Zhang

SAT-Solving: From Davis- Putnam to Zchaff and Beyond Day 3: Recent Developments. Lintao Zhang SAT-Solving: From Davis- Putnam to Zchaff and Beyond Day 3: Recent Developments Requirements for SAT solvers in the Real World Fast & Robust Given a problem instance, we want to solve it quickly Reliable

More information

EGFC: AN EXACT GLOBAL FAULT COLLAPSING TOOL FOR COMBINATIONAL CIRCUITS

EGFC: AN EXACT GLOBAL FAULT COLLAPSING TOOL FOR COMBINATIONAL CIRCUITS EGFC: AN EXACT GLOBAL FAULT COLLAPSING TOOL FOR COMBINATIONAL CIRCUITS Hussain Al-Asaad Department of Electrical & Computer Engineering University of California One Shields Avenue, Davis, CA 95616-5294

More information

CSE140: Components and Design Techniques for Digital Systems. Decoders, adders, comparators, multipliers and other ALU elements. Tajana Simunic Rosing

CSE140: Components and Design Techniques for Digital Systems. Decoders, adders, comparators, multipliers and other ALU elements. Tajana Simunic Rosing CSE4: Components and Design Techniques for Digital Systems Decoders, adders, comparators, multipliers and other ALU elements Tajana Simunic Rosing Mux, Demux Encoder, Decoder 2 Transmission Gate: Mux/Tristate

More information

Enrico Nardelli Logic Circuits and Computer Architecture

Enrico Nardelli Logic Circuits and Computer Architecture Enrico Nardelli Logic Circuits and Computer Architecture Appendix B The design of VS0: a very simple CPU Rev. 1.4 (2009-10) by Enrico Nardelli B - 1 Instruction set Just 4 instructions LOAD M - Copy into

More information

Lecture 4. Adders. Computer Systems Laboratory Stanford University

Lecture 4. Adders. Computer Systems Laboratory Stanford University Lecture 4 Adders Computer Systems Laboratory Stanford University horowitz@stanford.edu Copyright 2006 Mark Horowitz Some figures from High-Performance Microprocessor Design IEEE 1 Overview Readings Today

More information

Logic BIST. Sungho Kang Yonsei University

Logic BIST. Sungho Kang Yonsei University Logic BIST Sungho Kang Yonsei University Outline Introduction Basics Issues Weighted Random Pattern Generation BIST Architectures Deterministic BIST Conclusion 2 Built In Self Test Test/ Normal Input Pattern

More information

On Critical Path Selection Based Upon Statistical Timing Models -- Theory and Practice

On Critical Path Selection Based Upon Statistical Timing Models -- Theory and Practice On Critical Path Selection Based Upon Statistical Timing Models -- Theory and Practice Jing-Jia Liou, Angela Krstic, Li-C. Wang, and Kwang-Ting Cheng University of California - Santa Barbara Problem Find

More information

Lecture 11: Adders. Slides courtesy of Deming Chen. Slides based on the initial set from David Harris. 4th Ed.

Lecture 11: Adders. Slides courtesy of Deming Chen. Slides based on the initial set from David Harris. 4th Ed. Lecture : dders Slides courtesy of Deming hen Slides based on the initial set from David Harris MOS VLSI Design Outline Single-bit ddition arry-ripple dder arry-skip dder arry-lookahead dder arry-select

More information

Design of Sequential Circuits

Design of Sequential Circuits Design of Sequential Circuits Seven Steps: Construct a state diagram (showing contents of flip flop and inputs with next state) Assign letter variables to each flip flop and each input and output variable

More information

Final Exam. ECE 25, Spring 2008 Thursday, June 12, Problem Points Score Total 90

Final Exam. ECE 25, Spring 2008 Thursday, June 12, Problem Points Score Total 90 Final Exam ECE 25, Spring 2008 Thursday, June 12, 2008 Name: PID: Problem Points Score 1 10 2 10 3 10 4 10 5 10 6 10 7 10 8 10 9 10 Total 90 1) Number representation (10 pts) a) For each binary vector

More information

Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 3: Practical SAT Solving

Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 3: Practical SAT Solving Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 3: Practical SAT Solving Matt Fredrikson mfredrik@cs.cmu.edu October 17, 2016 Matt Fredrikson SAT Solving 1 / 36 Review: Propositional

More information

Counters. We ll look at different kinds of counters and discuss how to build them

Counters. We ll look at different kinds of counters and discuss how to build them Counters We ll look at different kinds of counters and discuss how to build them These are not only examples of sequential analysis and design, but also real devices used in larger circuits 1 Introducing

More information

Digital Integrated Circuits A Design Perspective. Arithmetic Circuits. Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic.

Digital Integrated Circuits A Design Perspective. Arithmetic Circuits. Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic. Digital Integrated Circuits A Design Perspective Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic Arithmetic Circuits January, 2003 1 A Generic Digital Processor MEM ORY INPUT-OUTPUT CONTROL DATAPATH

More information

Chapter 2 Fault Modeling

Chapter 2 Fault Modeling Chapter 2 Fault Modeling Jin-Fu Li Advanced Reliable Systems (ARES) Lab. Department of Electrical Engineering National Central University Jungli, Taiwan Outline Why Model Faults? Fault Models (Faults)

More information

Combinational Logic Design Arithmetic Functions and Circuits

Combinational Logic Design Arithmetic Functions and Circuits Combinational Logic Design Arithmetic Functions and Circuits Overview Binary Addition Half Adder Full Adder Ripple Carry Adder Carry Look-ahead Adder Binary Subtraction Binary Subtractor Binary Adder-Subtractor

More information

EECS150 - Digital Design Lecture 22 - Arithmetic Blocks, Part 1

EECS150 - Digital Design Lecture 22 - Arithmetic Blocks, Part 1 EECS150 - igital esign Lecture 22 - Arithmetic Blocks, Part 1 April 10, 2011 John Wawrzynek Spring 2011 EECS150 - Lec23-arith1 Page 1 Each cell: r i = a i XOR b i XOR c in Carry-ripple Adder Revisited

More information

EE40 Lec 15. Logic Synthesis and Sequential Logic Circuits

EE40 Lec 15. Logic Synthesis and Sequential Logic Circuits EE40 Lec 15 Logic Synthesis and Sequential Logic Circuits Prof. Nathan Cheung 10/20/2009 Reading: Hambley Chapters 7.4-7.6 Karnaugh Maps: Read following before reading textbook http://www.facstaff.bucknell.edu/mastascu/elessonshtml/logic/logic3.html

More information

Department of Electrical and Computer Engineering University of Wisconsin Madison. Fall Midterm Examination CLOSED BOOK

Department of Electrical and Computer Engineering University of Wisconsin Madison. Fall Midterm Examination CLOSED BOOK Department of Electrical and Computer Engineering University of Wisconsin Madison ECE 553: Testing and Testable Design of Digital Systems Fall 2014-2015 Midterm Examination CLOSED BOOK Kewal K. Saluja

More information

EECS150 - Digital Design Lecture 11 - Shifters & Counters. Register Summary

EECS150 - Digital Design Lecture 11 - Shifters & Counters. Register Summary EECS50 - Digital Design Lecture - Shifters & Counters February 24, 2003 John Wawrzynek Spring 2005 EECS50 - Lec-counters Page Register Summary All registers (this semester) based on Flip-flops: q 3 q 2

More information

EECS150 - Digital Design Lecture 4 - Boolean Algebra I (Representations of Combinational Logic Circuits)

EECS150 - Digital Design Lecture 4 - Boolean Algebra I (Representations of Combinational Logic Circuits) EECS150 - Digital Design Lecture 4 - Boolean Algebra I (Representations of Combinational Logic Circuits) September 5, 2002 John Wawrzynek Fall 2002 EECS150 Lec4-bool1 Page 1, 9/5 9am Outline Review of

More information

Delay Testing from the Ivory Tower to Tools in the Workshop

Delay Testing from the Ivory Tower to Tools in the Workshop Delay Testing from the Ivory Tower to Tools in the Workshop Einar Johan Aas Department of Electronics and Telecommunications, NTNU Nordic Test Forum, Tallinn, 25. November 2008 Name, title of the presentation

More information

Simplify the following Boolean expressions and minimize the number of literals:

Simplify the following Boolean expressions and minimize the number of literals: Boolean Algebra Task 1 Simplify the following Boolean expressions and minimize the number of literals: 1.1 1.2 1.3 Task 2 Convert the following expressions into sum of products and product of sums: 2.1

More information

EECS150 - Digital Design Lecture 17 - Sequential Circuits 3 (Counters)

EECS150 - Digital Design Lecture 17 - Sequential Circuits 3 (Counters) EECS150 - Digital Design Lecture 17 - Sequential Circuits 3 (Counters) March 19&21, 2002 John Wawrzynek Spring 2002 EECS150 - Lec13-seq3 version 2 Page 1 Counters Special sequential circuits (FSMs) that

More information

Numbers & Arithmetic. Hakim Weatherspoon CS 3410, Spring 2012 Computer Science Cornell University. See: P&H Chapter , 3.2, C.5 C.

Numbers & Arithmetic. Hakim Weatherspoon CS 3410, Spring 2012 Computer Science Cornell University. See: P&H Chapter , 3.2, C.5 C. Numbers & Arithmetic Hakim Weatherspoon CS 3410, Spring 2012 Computer Science Cornell University See: P&H Chapter 2.4-2.6, 3.2, C.5 C.6 Example: Big Picture Computer System Organization and Programming

More information

EECS 579: Test Generation 4. Test Generation System

EECS 579: Test Generation 4. Test Generation System EECS 579: Test Generation 4 Other Combinational ATPG Algorithms SOCRATES Structure-Oriented Cost-Reducing Automatic TESt pattern generation [Schultz et al. 988] An ATPG system not just a test generation

More information

Logic in Automatic Verification

Logic in Automatic Verification Logic in Automatic Verification Javier Esparza Sofware Reliability and Security Group Institute for Formal Methods in Computer Science University of Stuttgart Many thanks to Abdelwaheb Ayari, David Basin,

More information

Lecture 5. MOS Inverter: Switching Characteristics and Interconnection Effects

Lecture 5. MOS Inverter: Switching Characteristics and Interconnection Effects Lecture 5 MOS Inverter: Switching Characteristics and Interconnection Effects Introduction C load = (C gd,n + C gd,p + C db,n + C db,p ) + (C int + C g ) Lumped linear capacitance intrinsic cap. extrinsic

More information

VLSI Design. [Adapted from Rabaey s Digital Integrated Circuits, 2002, J. Rabaey et al.] ECE 4121 VLSI DEsign.1

VLSI Design. [Adapted from Rabaey s Digital Integrated Circuits, 2002, J. Rabaey et al.] ECE 4121 VLSI DEsign.1 VLSI Design Adder Design [Adapted from Rabaey s Digital Integrated Circuits, 2002, J. Rabaey et al.] ECE 4121 VLSI DEsign.1 Major Components of a Computer Processor Devices Control Memory Input Datapath

More information

Z = F(X) Combinational circuit. A combinational circuit can be specified either by a truth table. Truth Table

Z = F(X) Combinational circuit. A combinational circuit can be specified either by a truth table. Truth Table Lesson Objectives In this lesson, you will learn about What are combinational circuits Design procedure of combinational circuits Examples of combinational circuit design Combinational Circuits Logic circuit

More information

Lecture 8: Sequential Networks and Finite State Machines

Lecture 8: Sequential Networks and Finite State Machines Lecture 8: Sequential Networks and Finite State Machines CSE 140: Components and Design Techniques for Digital Systems Spring 2014 CK Cheng, Diba Mirza Dept. of Computer Science and Engineering University

More information

Computer Science 324 Computer Architecture Mount Holyoke College Fall Topic Notes: Digital Logic

Computer Science 324 Computer Architecture Mount Holyoke College Fall Topic Notes: Digital Logic Computer Science 324 Computer Architecture Mount Holyoke College Fall 2007 Topic Notes: Digital Logic Our goal for the next few weeks is to paint a a reasonably complete picture of how we can go from transistor

More information

Efficient Circuit Analysis under Multiple Input Switching (MIS) Anupama R. Subramaniam

Efficient Circuit Analysis under Multiple Input Switching (MIS) Anupama R. Subramaniam Efficient Circuit Analysis under Multiple Input Switching (MIS) by Anupama R. Subramaniam A Dissertation Presented in Partial Fulfillment of the Requirements for the Degree Doctor of Philosophy Approved

More information

Logarithmic Circuits

Logarithmic Circuits Logarithmic Circuits Binary Up Counter Logarithmic Circuits WHAt T Q T C Toggle Flip Flop @(posedge clk) If T=, toggle output Q If T=, hold old Q -bit binary counter TC=T Q T Q T Q T Q T T T T T C C C

More information

Arithmetic Building Blocks

Arithmetic Building Blocks rithmetic uilding locks Datapath elements dder design Static adder Dynamic adder Multiplier design rray multipliers Shifters, Parity circuits ECE 261 Krish Chakrabarty 1 Generic Digital Processor Input-Output

More information

Combina-onal Logic Chapter 4. Topics. Combina-on Circuit 10/13/10. EECE 256 Dr. Sidney Fels Steven Oldridge

Combina-onal Logic Chapter 4. Topics. Combina-on Circuit 10/13/10. EECE 256 Dr. Sidney Fels Steven Oldridge Combina-onal Logic Chapter 4 EECE 256 Dr. Sidney Fels Steven Oldridge Topics Combina-onal circuits Combina-onal analysis Design procedure simple combined to make complex adders, subtractors, converters

More information

CMPT 710/407 - Complexity Theory Lecture 4: Complexity Classes, Completeness, Linear Speedup, and Hierarchy Theorems

CMPT 710/407 - Complexity Theory Lecture 4: Complexity Classes, Completeness, Linear Speedup, and Hierarchy Theorems CMPT 710/407 - Complexity Theory Lecture 4: Complexity Classes, Completeness, Linear Speedup, and Hierarchy Theorems Valentine Kabanets September 13, 2007 1 Complexity Classes Unless explicitly stated,

More information

Lecture 10: Synchronous Sequential Circuits Design

Lecture 10: Synchronous Sequential Circuits Design Lecture 0: Synchronous Sequential Circuits Design. General Form Input Combinational Flip-flops Combinational Output Circuit Circuit Clock.. Moore type has outputs dependent only on the state, e.g. ripple

More information

EE241 - Spring 2000 Advanced Digital Integrated Circuits. Announcements

EE241 - Spring 2000 Advanced Digital Integrated Circuits. Announcements EE241 - Spring 2 Advanced Digital Integrated Circuits Lecture 11 Low Power-Low Energy Circuit Design Announcements Homework #2 due Friday, 3/3 by 5pm Midterm project reports due in two weeks - 3/7 by 5pm

More information