Advanced Digital Logic Design EECS 303

Size: px
Start display at page:

Download "Advanced Digital Logic Design EECS 303"

Transcription

1 dvanced igital Logic esign S Teacher: Robert ick Office: L477 Tech mail: dickrp@northwestern.edu Phone:

2 Today s topics inate covering Tree mapping rithmetic circuits Number systems dders 2 Robert ick dvanced igital Logic esign

3 Outline Robert ick dvanced igital Logic esign

4 Section outline 1. 4 Robert ick dvanced igital Logic esign

5 We know how to minimize two-level and multi-level logic Generally expressed in terms of simple gates, e.g., NN2s and NOTs Need to map to efficient implementation in target technology Target technology consists of a set of gates ach has area, power consumption, and timing properties Map to those gates minimizing some combination of area, power, and delay 5 Robert ick dvanced igital Logic esign

6 Given: Simplified and decomposed (reduced) logic graph (G) Tree makes things easier omposed of NOT and NN2 gates Library: NOT, NN2, NN3, NOR4 (O4), and XNOR gates ecide minimal area/delay/power cost mapping from logic tree to technology library 6 Robert ick dvanced igital Logic esign

7 Given: Simplified and decomposed (reduced) logic graph (G) Tree makes things easier omposed of NOT and NN2 gates Library: NOT, NN2, NN3, NOR4 (O4), and XNOR gates ecide minimal area/delay/power cost mapping from logic tree to technology library 6 Robert ick dvanced igital Logic esign

8 example library gate area cost NOT 1 NN2 2 NN3 3 NN4 4 XNOR2 5 NOR4 4 7 Robert ick dvanced igital Logic esign

9 Potentially overlapping maps 8 Robert ick dvanced igital Logic esign

10 Potentially overlapping maps 8 Robert ick dvanced igital Logic esign

11 Potentially overlapping maps 8 Robert ick dvanced igital Logic esign

12 Potentially overlapping maps 8 Robert ick dvanced igital Logic esign

13 Potentially overlapping maps 8 Robert ick dvanced igital Logic esign

14 Section outline 1. 9 Robert ick dvanced igital Logic esign

15 for area as binate covering ind all possible matches However, complete cover insufficient Need match outputs to align with inputs of other matches an represent problem as binate covering 10 Robert ick dvanced igital Logic esign

16 inate covering term column J 1 1 J J J J ind a set of columns, S, such that, for every row 1-colum in the row is in S or a 0-column in the row is not in S 11 Robert ick dvanced igital Logic esign

17 G mapping binate covering formulation 12 Robert ick dvanced igital Logic esign

18 G mapping binate covering formulation 12 Robert ick dvanced igital Logic esign

19 G mapping binate covering formulation 12 Robert ick dvanced igital Logic esign

20 G mapping binate covering formulation 12 Robert ick dvanced igital Logic esign

21 G mapping binate covering formulation 12 Robert ick dvanced igital Logic esign

22 G mapping binate covering formulation (J K) (K J) (K L N) (L K) (N K) 13 Robert ick dvanced igital Logic esign

23 G mapping binate covering formulation (J K) (K J) (K L N) (L K) (N K) 13 Robert ick dvanced igital Logic esign

24 G mapping binate covering formulation Q R S (J K) (K J) (K L N) (L K) (N K) 13 Robert ick dvanced igital Logic esign

25 G mapping binate covering formulation M N Q J K R S L (J K) (K J) (K L N) (L K) (N K) 13 Robert ick dvanced igital Logic esign

26 G mapping binate covering formulation Outputs feed directly into next gate s inputs (J K) (K J) (K L N) (L K) (N K) lso ensure primary outputs are available (omitted from example) constraint gate J K L M N Q 1 1 R 1 1 S J K 0 1 K J 1 0 K L N L K 1 0 N K Robert ick dvanced igital Logic esign

27 Problems with binate covering lthough there are good heuristics to speed up unate covering, binate covering appears to be a harder problem Intractable for large problem instances ost function must be independent of other portions of solution an use area but can t use delay or power an use a fast alternative for tree, not G covering 15 Robert ick dvanced igital Logic esign

28 Section outline Robert ick dvanced igital Logic esign

29 Tree covering Split G at multiple output nodes to form trees Optimally and quickly map trees using dynamic programming Reconnect result into a G Locally improve connection points Result: Nearly (but not quite) optimal, fast G mapping 17 Robert ick dvanced igital Logic esign

30 for area complexity Reduced logic tree RLT = (V, ) Technology library with T gates Maximum gate size of S, i.e., no gate covers more than S vertices lgorithm is Linear in V Linear in T xponential in S 18 Robert ick dvanced igital Logic esign

31 Tree technology mapping for area (detailed) 19 Robert ick dvanced igital Logic esign

32 Tree technology mapping for area (detailed) 19 Robert ick dvanced igital Logic esign

33 Tree technology mapping for area (detailed) 19 Robert ick dvanced igital Logic esign

34 Tree technology mapping for area (detailed) 2 NN2(2) + NOT (1) = 5 or NN3(3) = 3 19 Robert ick dvanced igital Logic esign

35 Tree technology mapping for area (detailed) 2 NN2(2) + NOT (1) = 5 or NN3(3) = 3 19 Robert ick dvanced igital Logic esign

36 Tree technology mapping for area (detailed) 19 Robert ick dvanced igital Logic esign

37 Tree technology mapping for area (detailed) 19 Robert ick dvanced igital Logic esign

38 Tree technology mapping for area (detailed) 19 Robert ick dvanced igital Logic esign

39 Tree technology mapping for area (detailed) 2 NN2(2) + NOT (1) = 5 or NN3(3) = 3 cached 19 Robert ick dvanced igital Logic esign

40 Tree technology mapping for area (detailed) 2 NN2(2) + NOT (1) = 5 or NN3(3) = 3 cached 19 Robert ick dvanced igital Logic esign

41 Tree technology mapping for area (detailed) 19 Robert ick dvanced igital Logic esign

42 Tree technology mapping for area (detailed) 2 NN3(3) + NN2(2) = 8 or 2 NN2(2) + 2 NOT (1) + NOR4(4) = Robert ick dvanced igital Logic esign

43 Tree technology mapping for area (detailed) 2 NN3(3) + NN2(2) = 8 or 2 NN2(2) + 2 NOT (1) + NOR4(4) = Robert ick dvanced igital Logic esign

44 Tree technology mapping for area (detailed) 19 Robert ick dvanced igital Logic esign

45 Tree technology mapping for area (detailed) 19 Robert ick dvanced igital Logic esign

46 Tree technology mapping for area (detailed) 19 Robert ick dvanced igital Logic esign

47 Tree technology mapping for area (detailed) 19 Robert ick dvanced igital Logic esign

48 Tree technology mapping for area (detailed) 19 Robert ick dvanced igital Logic esign

49 Tree technology mapping for area (detailed) 3 NN2(2) = 6 or NOR4(4) = 4 19 Robert ick dvanced igital Logic esign

50 Tree technology mapping for area (detailed) 3 NN2(2) = 6 or NOR4(4) = 4 19 Robert ick dvanced igital Logic esign

51 Tree technology mapping for area (detailed) 19 Robert ick dvanced igital Logic esign

52 Tree technology mapping for area (detailed) 3 NOT (1) + NOR4(4) = 7 or XNOR2(5) = 5 19 Robert ick dvanced igital Logic esign

53 Tree technology mapping for area (detailed) 3 NOT (1) + NOR4(4) = 7 or XNOR2(5) = 5 19 Robert ick dvanced igital Logic esign

54 Tree technology mapping for area (detailed) 19 Robert ick dvanced igital Logic esign

55 Tree technology mapping for area (detailed) XNOR2(5) + NN2(2) = 7 or 2 NOT (1) + 2 NN2(2) + NN3(3) = 9 19 Robert ick dvanced igital Logic esign

56 Tree technology mapping for area (detailed) XNOR2(5) + NN2(2) = 7 or 2 NOT (1) + 2 NN2(2) + NN3(3) = 9 19 Robert ick dvanced igital Logic esign

57 Tree technology mapping for area (detailed) 19 Robert ick dvanced igital Logic esign

58 Tree technology mapping for area (detailed) 19 Robert ick dvanced igital Logic esign

59 Tree technology mapping for area (detailed) 2 NN3(3) + XNOR2(5) + 2 NN2(2) = Robert ick dvanced igital Logic esign

60 for speed If each gate had a different constant delay, could use simple dynamic programming algorithm This works pretty well but is suboptimal However, each gate s speed depends on next gate s input load 20 Robert ick dvanced igital Logic esign

61 for speed If each gate had a different constant delay, could use simple dynamic programming algorithm This works pretty well but is suboptimal However, each gate s speed depends on next gate s input load V a z b V SS 20 Robert ick dvanced igital Logic esign

62 Two-pass delay optimization Problem: Optimize area under timing constraint 1 ind the set of all possible pin-loads 2 rom leafs, build array of minimal-area solutions, one for each pin-load 3 alculate the arrival time for each possible mapping (pin-load) 4 or each point, select the optimal area solution for each pin-load 5 Propagate optimal solution backwards from output load Note, that this isn t efficient given a large number of pin-loads iscretize 21 Robert ick dvanced igital Logic esign

63 re circuits really trees? What happens when they are not? 22 Robert ick dvanced igital Logic esign

64 Section outline Robert ick dvanced igital Logic esign

65 for technology mapping Start from an arbitrary G of gates Want canonical G for technology mapping.g., NN2 gates only NN2 with inputs tied is a NOT However, decomposition is not unique 24 Robert ick dvanced igital Logic esign

66 N4 NN2 25 Robert ick dvanced igital Logic esign

67 N4 NN2 25 Robert ick dvanced igital Logic esign

68 N4 NN2 25 Robert ick dvanced igital Logic esign

69 Non-canonical decomposition ould decide to allow more complex gates in subject G However, little opportunity for optimization Instead, consider all equivalent mappings for each library gate an t consider numerous subject G omplexity exponential Restated: Store many matches for each library gate but use only one subject G decomposition 26 Robert ick dvanced igital Logic esign

70 Notes on optimality It is common for algorithm designers to come up with elegant and optimal algorithms Look closely at their assumptions! It is often, first, necessary to formulate a problem in a simplified form to arrive at an optimal solution n optimal solution to the simplified form is not necessarily an optimal solution to the original problem 27 Robert ick dvanced igital Logic esign

71 Notes on optimality The technology mapping algorithms in this lecture are polynomial-time (fast) and optimal however, they aren t polynomial-time (fast) in every term Maximum library gate size... or optimal for the original problem The original problem can be a G, instead of a tree The decomposition is not unique etter solutions might be possible for other decompositions 28 Robert ick dvanced igital Logic esign

72 Notes on optimality The algorithms are high-quality and efficient However They are only optimal with respect to the simplified inputs They are only polynomial in the most important terms This situation is very common in / because the original problems are often N P-complete Too slow to solve for large problem instances Whenever you see or use the word optimal, think very carefully about what is meant 29 Robert ick dvanced igital Logic esign

73 summary is taking a set of functions and determining how to implement them using gates from a library Optimal and fast approaches exist for trees However, no optimal solution is known for arbitrary circuit topologies This is what you are doing when you type map in SIS 30 Robert ick dvanced igital Logic esign

74 Next lecture Multipliers and LUs Sequential logic networks Latches (RS Latch) lip-flops ( and JK) Timing issues (setup and hold times) 31 Robert ick dvanced igital Logic esign

75 Outline Robert ick dvanced igital Logic esign

76 Reading assignment M. Morris Mano and harles R. Kime. Logic and omputer esign undamentals. Prentice-Hall, NJ, third edition, 2004 hapter 5 33 Robert ick dvanced igital Logic esign

Advanced Digital Logic Design EECS 303

Advanced Digital Logic Design EECS 303 Advanced Digital Logic Design EECS 303 http://ziyang.eecs.northwestern.edu/eecs303/ Teacher: Robert Dick Office: L477 Tech Email: dickrp@northwestern.edu Phone: 847 467 2298 Outline 1. 2. 2 Robert Dick

More information

Advanced Digital Logic Design EECS 303

Advanced Digital Logic Design EECS 303 Advanced igital Logic esign EECS 33 http://ziyang.eecs.northwestern.edu/eecs33/ Teacher: Robert ick Office: L477 Tech Email: dickrp@northwestern.edu Phone: 847 467 2298 Outline. 2. 2 Robert ick Advanced

More information

Advanced Digital Logic Design EECS 303

Advanced Digital Logic Design EECS 303 Advanced Digital Logic Design EECS 303 http://ziyang.eecs.northwestern.edu/eecs303/ Teacher: Robert Dick Office: L477 Tech Email: dickrp@northwestern.edu Phone: 847 467 2298 Outline 1. Finite state machines

More information

1 Construct implication chart, one square for each combination of states. 2 Square labeled S i, S j, if outputs differ than square gets X (0).

1 Construct implication chart, one square for each combination of states. 2 Square labeled S i, S j, if outputs differ than square gets X (0). Advanced Digital Logic Design EECS 33 http://ziyang.eecs.northwestern.edu/eecs33/ FSM design overview Teacher: Robert Dick Office: L477 Tech Email: dickrp@northwestern.edu Phone: 847 467 2298 State diagram

More information

Chapter 3 Part 1 Combinational Logic Design

Chapter 3 Part 1 Combinational Logic Design Universit of Wisconsin - Madison EE/omp Sci 352 igital Sstems undamentals Kewal K. Saluja and Yu Hen Hu Spring 22 hapter 3 Part ombinational Logic esign Originals b: harles R. Kime and Tom Kamisnski Modified

More information

Supplement to. Logic and Computer Design Fundamentals 4th Edition 1

Supplement to. Logic and Computer Design Fundamentals 4th Edition 1 Supplement to Logic and Computer esign Fundamentals 4th Edition MORE OPTIMIZTION Selected topics not covered in the fourth edition of Logic and Computer esign Fundamentals are provided here for optional

More information

Topics of this Slideset. CS429: Computer Organization and Architecture. Digital Signals. Truth Tables. Logic Design

Topics of this Slideset. CS429: Computer Organization and Architecture. Digital Signals. Truth Tables. Logic Design Topics of this Slideset CS429: Computer Organization and rchitecture Dr. Bill Young Department of Computer Science University of Texas at ustin Last updated: July 5, 2018 at 11:55 To execute a program

More information

Advanced Topic in Pipeline: Pipeline scheduling

Advanced Topic in Pipeline: Pipeline scheduling Contents dvanced Topic in Pipeline: Pipeline scheduling Linear Pipelines Nonlinear pipelines Instruction Pipelines rithmetic Operations esign of Multifunction Pipeline Linear Pipeline Processing Stages

More information

Computer Architecture and Organization:

Computer Architecture and Organization: Computer Architecture and Organization: Introductory lecture By: A. H. Abdul Hafez abdul.hafez@hku.edu.tr, ah.abdulhafez@gmail.com 1 Outlines 1. What is computer? 2. What is this course looking at? Computer

More information

A search for Compromises!

A search for Compromises! EET 310 Chapter 5 Lesson Notes () PL Categories R.L. Jones 11/6/2011 1 OF 5.5 Programmable Logic array types 5.5.1 The FPL PL s come in many varieties. The FPL type has two Programmable areas; the OR array

More information

ECE 3060 VLSI and Advanced Digital Design

ECE 3060 VLSI and Advanced Digital Design ECE 3060 VLSI and Advanced Digital Design Lecture 16 Technology Mapping/Library Binding Outline Modeling and problem analysis Rule-based systems for library binding Algorithms for library binding structural

More information

Real Digital Problem Set #6

Real Digital Problem Set #6 Real igital Problem et #6. (2 points) ketch a block diagram for a magnitude comparator bit-slice circuit. Create K-maps to define the bit-slice circuit, and use them to find optimal logic equations. ketch

More information

DESIGN RAM MEMORIES BY USING FLIP-FLOP CIRCUITS

DESIGN RAM MEMORIES BY USING FLIP-FLOP CIRCUITS DESIGN RAM MEMORIES BY USING FLIP-FLOP CIRCUITS Saed Soliman Alasttal Computer Department, Faculty of Science, Al Asmarya Islamic University-Zliten E-mail :saedelasttal@gmail.com Abdalla Mohamed Alasoud

More information

CS Spring Combinational Examples - 1

CS Spring Combinational Examples - 1 S 5 - Spring 2 - ombinational Examples - ombinational Logic esign ase Studies General esign Procedure for ombinational Logic General design procedure Examples alendar subsstem to 7-segment displa controller

More information

EECS 3201: Digital Logic Design Lecture 7. Ihab Amer, PhD, SMIEEE, P.Eng.

EECS 3201: Digital Logic Design Lecture 7. Ihab Amer, PhD, SMIEEE, P.Eng. EECS 3201: Digital Logic Design Lecture 7 Ihab Amer, PhD, SMIEEE, P.Eng. 2x2 binary multiplier 2 4x4 Array Multiplier 3 Multiplexer (MUX) 4 MUX Implementations 5 Wider MUXes 6 Logic with MUXes 7 Reducing

More information

High Dimensional Indexing by Clustering

High Dimensional Indexing by Clustering Yufei Tao ITEE University of Queensland Recall that, our discussion so far has assumed that the dimensionality d is moderately high, such that it can be regarded as a constant. This means that d should

More information

LOGIC DESIGN. Dr. Mahmoud Abo_elfetouh

LOGIC DESIGN. Dr. Mahmoud Abo_elfetouh LOGIC DESIGN Dr. Mahmoud Abo_elfetouh Course objectives This course provides you with a basic understanding of what digital devices are, how they operate, and how they can be designed to perform useful

More information

Ensemble methods in machine learning. Example. Neural networks. Neural networks

Ensemble methods in machine learning. Example. Neural networks. Neural networks Ensemble methods in machine learning Bootstrap aggregating (bagging) train an ensemble of models based on randomly resampled versions of the training set, then take a majority vote Example What if you

More information

ECE260B CSE241A Winter Logic Synthesis

ECE260B CSE241A Winter Logic Synthesis ECE260B CSE241A Winter 2007 Logic Synthesis Website: /courses/ece260b-w07 ECE 260B CSE 241A Static Timing Analysis 1 Slides courtesy of Dr. Cho Moon Introduction Why logic synthesis? Ubiquitous used almost

More information

Id Question Microprocessor is the example of architecture. A Princeton B Von Neumann C Rockwell D Harvard Answer A Marks 1 Unit 1

Id Question Microprocessor is the example of architecture. A Princeton B Von Neumann C Rockwell D Harvard Answer A Marks 1 Unit 1 Question Microprocessor is the example of architecture. Princeton Von Neumann Rockwell Harvard nswer Question bus is unidirectional. ata ddress ontrol None of these nswer Question Use of isolates PU form

More information

VLSI Test Technology and Reliability (ET4076)

VLSI Test Technology and Reliability (ET4076) VLSI Test Technology and Reliability (ET4076) Lecture 8 (1) Delay Test (Chapter 12) Said Hamdioui Computer Engineering Lab Delft University of Technology 2009-2010 1 Learning aims Define a path delay fault

More information

Homework 3 Handout 19 February 18, 2016

Homework 3 Handout 19 February 18, 2016 CSEE E6861y Prof. Steven Nowick Homework 3 Handout 19 February 18, 2016 This homework is due at the beginning of class on Thursday, March 3. NOTE: A correct answer without adequate explanation or derivation

More information

Table of Laplace Transforms

Table of Laplace Transforms Table of Laplace Transforms 1 1 2 3 4, p > -1 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 Heaviside Function 27 28. Dirac Delta Function 29 30. 31 32. 1 33 34. 35 36. 37 Laplace Transforms

More information

Computer Architecture: Part V. First Semester 2013 Department of Computer Science Faculty of Science Chiang Mai University

Computer Architecture: Part V. First Semester 2013 Department of Computer Science Faculty of Science Chiang Mai University Computer Architecture: Part V First Semester 2013 Department of Computer Science Faculty of Science Chiang Mai University Outline Addition and Subtraction Multiplication Algorithm Array Multiplier Peripheral

More information

SIR C.R.REDDY COLLEGE OF ENGINEERING, ELURU DEPARTMENT OF INFORMATION TECHNOLOGY LESSON PLAN

SIR C.R.REDDY COLLEGE OF ENGINEERING, ELURU DEPARTMENT OF INFORMATION TECHNOLOGY LESSON PLAN SIR C.R.REDDY COLLEGE OF ENGINEERING, ELURU DEPARTMENT OF INFORMATION TECHNOLOGY LESSON PLAN SUBJECT: CSE 2.1.6 DIGITAL LOGIC DESIGN CLASS: 2/4 B.Tech., I SEMESTER, A.Y.2017-18 INSTRUCTOR: Sri A.M.K.KANNA

More information

CSE/EE 461 Lecture 7 Bridging LANs. Last Two Times. This Time -- Switching (a.k.a. Bridging)

CSE/EE 461 Lecture 7 Bridging LANs. Last Two Times. This Time -- Switching (a.k.a. Bridging) S/ 461 Lecture 7 ridging LNs Last Two Times Medium ccess ontrol (M) protocols Part of the Link Layer t the heart of Local rea Networks (LNs) ow do multiple parties share a wire or the air? Random access

More information

(Refer Slide Time: 2:20)

(Refer Slide Time: 2:20) Data Communications Prof. A. Pal Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Lecture-15 Error Detection and Correction Hello viewers welcome to today s lecture

More information

EEC 483 Computer Organization

EEC 483 Computer Organization EEC 483 Computer Organization Chapter 5 Large and Fast: Exploiting Memory Hierarchy Chansu Yu Table of Contents Ch.1 Introduction Ch. 2 Instruction: Machine Language Ch. 3-4 CPU Implementation Ch. 5 Cache

More information

Constraint Satisfaction Problems. Chapter 6

Constraint Satisfaction Problems. Chapter 6 Constraint Satisfaction Problems Chapter 6 Constraint Satisfaction Problems A constraint satisfaction problem consists of three components, X, D, and C: X is a set of variables, {X 1,..., X n }. D is a

More information

Memory, Latches, & Registers

Memory, Latches, & Registers Memory, Latches, & Registers 1) Structured Logic Arrays 2) Memory Arrays 3) Transparent Latches 4) How to save a few bucks at toll booths 5) Edge-triggered Registers L13 Memory 1 General Table Lookup Synthesis

More information

DESIGN OF A HIGH SPEED SYNCHRONOUS MEMORY BUS INTERFACE

DESIGN OF A HIGH SPEED SYNCHRONOUS MEMORY BUS INTERFACE ESIGN OF HIGH SPEE SYNCHRONOUS MEMORY BUS INTERFCE Mayank Gupta mayank@ee.ucla.edu UI:92995846 Jen-Wei Ko jenwei@ee.ucla.edu UI:85777 University of California, Los ngeles M26 Term Project Report Professor

More information

(Refer Slide Time 3:31)

(Refer Slide Time 3:31) Digital Circuits and Systems Prof. S. Srinivasan Department of Electrical Engineering Indian Institute of Technology Madras Lecture - 5 Logic Simplification In the last lecture we talked about logic functions

More information

Memory, Latches, & Registers

Memory, Latches, & Registers Memory, Latches, & Registers 1) Structured Logic Arrays 2) Memory Arrays 3) Transparent Latches 4) Saving a few bucks at toll booths 5) Edge-triggered Registers L14 Memory 1 General Table Lookup Synthesis

More information

ECE 5775 (Fall 17) High-Level Digital Design Automation. Binary Decision Diagrams Static Timing Analysis

ECE 5775 (Fall 17) High-Level Digital Design Automation. Binary Decision Diagrams Static Timing Analysis ECE 5775 (Fall 17) High-Level Digital Design Automation Binary Decision Diagrams Static Timing Analysis Announcements Start early on Lab 1 (CORDIC design) Fixed-point design should not have usage of DSP48s

More information

! Replace maxterm OR gates with NOR gates! Place compensating inversion at inputs of AND gate

! Replace maxterm OR gates with NOR gates! Place compensating inversion at inputs of AND gate Two-level logic using NN gates (cont d) ELE 4 igital Electronics Week : ombinational Logic Implementation! OR gate with inverted inputs is a NN gate " de Morgan's: ' ' = ( )'! Two-level NN-NN network "

More information

Computer Architecture: Part III. First Semester 2013 Department of Computer Science Faculty of Science Chiang Mai University

Computer Architecture: Part III. First Semester 2013 Department of Computer Science Faculty of Science Chiang Mai University Computer Architecture: Part III First Semester 2013 Department of Computer Science Faculty of Science Chiang Mai University Outline Decoders Multiplexers Registers Shift Registers Binary Counters Memory

More information

ELCT 501: Digital System Design

ELCT 501: Digital System Design ELCT 501: Digital System Lecture 4: CAD tools (Continued) Dr. Mohamed Abd El Ghany, Basic VHDL Concept Via an Example Problem: write VHDL code for 1-bit adder 4-bit adder 2 1-bit adder Inputs: A (1 bit)

More information

Lecture 15 Register Allocation & Spilling

Lecture 15 Register Allocation & Spilling I. Motivation Lecture 15 Register Allocation & Spilling I. Introduction II. Abstraction and the Problem III. Algorithm IV. Spilling Problem Allocation of variables (pseudo-registers) to hardware registers

More information

Unit 4: Formal Verification

Unit 4: Formal Verification Course contents Unit 4: Formal Verification Logic synthesis basics Binary-decision diagram (BDD) Verification Logic optimization Technology mapping Readings Chapter 11 Unit 4 1 Logic Synthesis & Verification

More information

Minimization of NBTI Performance Degradation Using Internal Node Control

Minimization of NBTI Performance Degradation Using Internal Node Control Minimization of NBTI Performance Degradation Using Internal Node Control David R. Bild, Gregory E. Bok, and Robert P. Dick Department of EECS Nico Trading University of Michigan 3 S. Wacker Drive, Suite

More information

ECE199JL: Introduction to Computer Engineering Fall 2012 Notes Set 2.4. Example: Bit-Sliced Comparison

ECE199JL: Introduction to Computer Engineering Fall 2012 Notes Set 2.4. Example: Bit-Sliced Comparison c 22 Steven S. Lumetta. ll rights reserved. 2 EE99JL: Introduction to omputer Engineering Fall 22 Notes Set 2.4 Eample: it-sliced omparison This set of notes develops s for unsigned and 2 s complement

More information

Some Hardness Proofs

Some Hardness Proofs Some Hardness Proofs Magnus Lie Hetland January 2011 This is a very brief overview of some well-known hard (NP Hard and NP complete) problems, and the main ideas behind their hardness proofs. The document

More information

Simple Ladder Logic. Simple Ladder Logic. OR Operation. Chapter 2: Basic Ladder Logic Programming. Ladder Logic Learning objectives.

Simple Ladder Logic. Simple Ladder Logic. OR Operation. Chapter 2: Basic Ladder Logic Programming. Ladder Logic Learning objectives. OR Operation Chapter 2: asic Ladder Logic Programming Control ehavior: The light should be on when either switch is on (i.e., closed) or switch is on (closed). Otherwise it should be off Task: Implement

More information

Lecture Topics ECE 341. Lecture # 6. CLA Delay Calculation. CLA Fan-in Limitation

Lecture Topics ECE 341. Lecture # 6. CLA Delay Calculation. CLA Fan-in Limitation EE 34 Lecture # 6 Instructor: Zeshan hishti zeshan@pdx.edu October 5, 24 Lecture Topics Design of Fast dders arry Looakaheaddders (L) Blocked arry-lookahead dders ultiplication of Unsigned Numbers rray

More information

Routers & Routing : Computer Networking. Binary Search on Ranges. Speeding up Prefix Match - Alternatives

Routers & Routing : Computer Networking. Binary Search on Ranges. Speeding up Prefix Match - Alternatives Routers & Routing -44: omputer Networking High-speed router architecture Intro to routing protocols ssigned reading [McK9] Fast Switched ackplane for a Gigabit Switched Router Know RIP/OSPF L-4 Intra-omain

More information

ECE/Comp. Sci. 352 { Digital System Fundamentals

ECE/Comp. Sci. 352 { Digital System Fundamentals epartment of Electrical and Computer Engineering University of Wisconsin - Madison Final uggested olution ECE/Comp. ci. 352 { igital ystem Fundamentals. (25 points) hort Questions (a)(5points) Convert

More information

DIGITAL CIRCUIT LOGIC UNIT 9: MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES

DIGITAL CIRCUIT LOGIC UNIT 9: MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES DIGITAL CIRCUIT LOGIC UNIT 9: MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES 1 Learning Objectives 1. Explain the function of a multiplexer. Implement a multiplexer using gates. 2. Explain the

More information

CSE241 VLSI Digital Circuits UC San Diego

CSE241 VLSI Digital Circuits UC San Diego CSE241 VLSI Digital Circuits UC San Diego Winter 2003 Lecture 05: Logic Synthesis Cho Moon Cadence Design Systems January 21, 2003 CSE241 L5 Synthesis.1 Kahng & Cichy, UCSD 2003 Outline Introduction Two-level

More information

Boolean Representations and Combinatorial Equivalence

Boolean Representations and Combinatorial Equivalence Chapter 2 Boolean Representations and Combinatorial Equivalence This chapter introduces different representations of Boolean functions. It then discusses the applications of these representations for proving

More information

Redundant States in Sequential Circuits

Redundant States in Sequential Circuits Redundant States in Sequential Circuits Removal of redundant states is important because Cost: the number of memory elements is directly related to the number of states Complexity: the more states the

More information

CS:APP Chapter 4 Computer Architecture Logic Design Randal E. Bryant Carnegie Mellon University

CS:APP Chapter 4 Computer Architecture Logic Design Randal E. Bryant Carnegie Mellon University S:PP hapter 4 omputer rchitecture Logic esign Randal E. Bryant arnegie Mellon University http://csapp.cs.cmu.edu S:PP Overview of Logic esign Fundamental Hardware Requirements ommunication How to get values

More information

Lecture 8: Synthesis, Implementation Constraints and High-Level Planning

Lecture 8: Synthesis, Implementation Constraints and High-Level Planning Lecture 8: Synthesis, Implementation Constraints and High-Level Planning MAH, AEN EE271 Lecture 8 1 Overview Reading Synopsys Verilog Guide WE 6.3.5-6.3.6 (gate array, standard cells) Introduction We have

More information

Optimal Latch Mapping and Retiming within a Tree

Optimal Latch Mapping and Retiming within a Tree Optimal Latch Mapping and Retiming within a Tree Joel rodstein, ric Lehman, eather arkness, erve Touati, and Bill rundmann Digital quipment Corporation, udson, M bstract. We propose a technology mapping

More information

Summer 2003 Lecture 21 07/15/03

Summer 2003 Lecture 21 07/15/03 Summer 2003 Lecture 21 07/15/03 Simple I/O Devices Simple i/o hardware generally refers to simple input or output ports. These devices generally accept external logic signals as input and allow the CPU

More information

Chapter 3 Part 2 Combinational Logic Design

Chapter 3 Part 2 Combinational Logic Design University of Wisconsin - Madison EE/omp ci 352 Digital ystems Fundamentals Kewal K. aluja and u Hen Hu pring 2002 hapter 3 Part 2 ombinational Logic Design Originals by: harles R. Kime and Tom Kamisnski

More information

Advances In Industrial Logic Synthesis

Advances In Industrial Logic Synthesis Advances In Industrial Logic Synthesis Luca Amarù, Patrick Vuillod, Jiong Luo Design Group, Synopsys Inc., Sunnyvale, California, USA Design Group, Synopsys, Grenoble, FR Logic Synthesis Y

More information

QUESTION BANK FOR TEST

QUESTION BANK FOR TEST CSCI 2121 Computer Organization and Assembly Language PRACTICE QUESTION BANK FOR TEST 1 Note: This represents a sample set. Please study all the topics from the lecture notes. Question 1. Multiple Choice

More information

Chapter 2 Part 4 Combinational Logic Circuits

Chapter 2 Part 4 Combinational Logic Circuits University of Wisconsin - Madison EE/omp Sci 352 Digital Systems undamentals Kewal K. Saluja and Yu Hen Hu Spring 2002 hapter 2 Part 4 ombinational Logic ircuits Originals by: harles R. Kime and Tom Kamisnski

More information

SCHEME OF EXAMINATION FOR B.Sc.(COMPUTER SCIENCE) SEMESTER SYSTEM (Regular Course) w.e.f Scheme for B.Sc.-I. Semester-I. Internal Assessment

SCHEME OF EXAMINATION FOR B.Sc.(COMPUTER SCIENCE) SEMESTER SYSTEM (Regular Course) w.e.f Scheme for B.Sc.-I. Semester-I. Internal Assessment SCHEME OF EXAMINATION FOR B.Sc.(COMPUTER SCIENCE) SEMESTER SYSTEM (Regular Course) w.e.f. 2013-14 Scheme for B.Sc.-I Sr. No. Paper 1 Paper-I Computer And Programming Fundamentals Semester-I Internal Assessment

More information

Homework. Update on website issue Reading: Chapter 7 Homework: All exercises at end of Chapter 7 Due 9/26

Homework. Update on website issue Reading: Chapter 7 Homework: All exercises at end of Chapter 7 Due 9/26 Homework Update on website issue Reading: hapter 7 Homework: All exercises at end of hapter 7 Due 9/26 opyright c 22 28 UMaine omputer Science Department / 2 OS 4: Foundations of omputer Science Karnaugh

More information

CS250 VLSI Systems Design Lecture 8: Introduction to Hardware Design Patterns

CS250 VLSI Systems Design Lecture 8: Introduction to Hardware Design Patterns CS250 VLSI Systems Design Lecture 8: Introduction to Hardware Design Patterns John Wawrzynek, Jonathan Bachrach, with Krste Asanovic, John Lazzaro and Rimas Avizienis (TA) UC Berkeley Fall 2012 Lecture

More information

ECE 637 Integrated VLSI Circuits. Introduction. Introduction EE141

ECE 637 Integrated VLSI Circuits. Introduction. Introduction EE141 ECE 637 Integrated VLSI Circuits Introduction EE141 1 Introduction Course Details Instructor Mohab Anis; manis@vlsi.uwaterloo.ca Text Digital Integrated Circuits, Jan Rabaey, Prentice Hall, 2 nd edition

More information

CPSC 313, 04w Term 2 Midterm Exam 2 Solutions

CPSC 313, 04w Term 2 Midterm Exam 2 Solutions 1. (10 marks) Short answers. CPSC 313, 04w Term 2 Midterm Exam 2 Solutions Date: March 11, 2005; Instructor: Mike Feeley 1a. Give an example of one important CISC feature that is normally not part of a

More information

Computational Geometry

Computational Geometry Orthogonal Range Searching omputational Geometry hapter 5 Range Searching Problem: Given a set of n points in R d, preprocess them such that reporting or counting the k points inside a d-dimensional axis-parallel

More information

Boolean Unit (The obvious way)

Boolean Unit (The obvious way) oolean Unit (The obvious way) It is simple to build up a oolean unit using primitive gates and a mux to select the function. Since there is no interconnection between bits, this unit can be simply replicated

More information

Hours / 100 Marks Seat No.

Hours / 100 Marks Seat No. 17320 21718 3 Hours / 100 Seat No. Instructions (1) All Questions are Compulsory. (2) Answer each next main Question on a new page. (3) Figures to the right indicate full marks. (4) Assume suitable data,

More information

SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR

SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR 603203 DEPARTMENT OF COMPUTER SCIENCE & APPLICATIONS LESSON PLAN (207-208) Course / Branch : B.Sc CS Total Hours : 50 Subject Name : Digital Electronics

More information

Memory System Design. Outline

Memory System Design. Outline Memory System Design Chapter 16 S. Dandamudi Outline Introduction A simple memory block Memory design with D flip flops Problems with the design Techniques to connect to a bus Using multiplexers Using

More information

Two-Chip 32k in the TI-99/4A Console by Mike Brent Updated: 27 Jul 2016

Two-Chip 32k in the TI-99/4A Console by Mike Brent Updated: 27 Jul 2016 Two-Chip 32k in the TI-99/4A Console by Mike Brent Updated: 27 Jul 2016 The purpose of this modification is to provide a simpler, faster to install, and more reliable 32k mod for the TI-99/4A than the

More information

WAN Technology and Routing

WAN Technology and Routing PS 60 - Network Programming WN Technology and Routing Michele Weigle epartment of omputer Science lemson University mweigle@cs.clemson.edu March, 00 http://www.cs.clemson.edu/~mweigle/courses/cpsc60 WN

More information

CSE A215 Assembly Language Programming for Engineers

CSE A215 Assembly Language Programming for Engineers CSE A215 Assembly Language Programming for Engineers Lecture 4 & 5 Logic Design Review (Chapter 3 And Appendices C&D in COD CDROM) September 20, 2012 Sam Siewert ALU Quick Review Conceptual ALU Operation

More information

Microservice Splitting the Monolith. Software Engineering II Sharif University of Technology MohammadAmin Fazli

Microservice Splitting the Monolith. Software Engineering II Sharif University of Technology MohammadAmin Fazli Microservice Software Engineering II Sharif University of Technology MohammadAmin Fazli Topics Seams Why to split the monolith Tangled Dependencies Splitting and Refactoring Databases Transactional Boundaries

More information

ECE 341 Midterm Exam

ECE 341 Midterm Exam ECE 341 Midterm Exam Time allowed: 90 minutes Total Points: 75 Points Scored: Name: Problem No. 1 (10 points) For each of the following statements, indicate whether the statement is TRUE or FALSE: (a)

More information

How a Digital Binary Adder Operates

How a Digital Binary Adder Operates Overview of a Binary Adder How a Digital Binary Adder Operates By: Shawn R Moser A binary adder is a digital electronic component that is used to perform the addition of two binary numbers and return the

More information

Overview. Memory Classification Read-Only Memory (ROM) Random Access Memory (RAM) Functional Behavior of RAM. Implementing Static RAM

Overview. Memory Classification Read-Only Memory (ROM) Random Access Memory (RAM) Functional Behavior of RAM. Implementing Static RAM Memories Overview Memory Classification Read-Only Memory (ROM) Types of ROM PROM, EPROM, E 2 PROM Flash ROMs (Compact Flash, Secure Digital, Memory Stick) Random Access Memory (RAM) Types of RAM Static

More information

CSE 417 Network Flows (pt 3) Modeling with Min Cuts

CSE 417 Network Flows (pt 3) Modeling with Min Cuts CSE 417 Network Flows (pt 3) Modeling with Min Cuts Reminders > HW6 is due on Friday start early bug fixed on line 33 of OptimalLineup.java: > change true to false Review of last two lectures > Defined

More information

Lecture Notes on Binary Decision Diagrams

Lecture Notes on Binary Decision Diagrams Lecture Notes on Binary Decision Diagrams 15-122: Principles of Imperative Computation William Lovas Notes by Frank Pfenning Lecture 25 April 21, 2011 1 Introduction In this lecture we revisit the important

More information

Announcements. This week: no lab, no quiz, just midterm

Announcements. This week: no lab, no quiz, just midterm CSC258 Week 7 Announcements This week: no lab, no quiz, just midterm 2 Recap ALU Multiplication 3 To implement multiplication, we basically repeatedly do three things AND (one-bit multiplication) Addition

More information

0.1 Welcome. 0.2 Insertion sort. Jessica Su (some portions copied from CLRS)

0.1 Welcome. 0.2 Insertion sort. Jessica Su (some portions copied from CLRS) 0.1 Welcome http://cs161.stanford.edu My contact info: Jessica Su, jtysu at stanford dot edu, office hours Monday 3-5 pm in Huang basement TA office hours: Monday, Tuesday, Wednesday 7-9 pm in Huang basement

More information

Discharge by touching: BNC coax shield, outlet metal cover plate, wire connected to GND

Discharge by touching: BNC coax shield, outlet metal cover plate, wire connected to GND Step-down transformer Very High Voltage Very Low Current Lower Voltage, 110V Power Station Grounding contact (3rd wire) Faulty wiring makes box hot!! Current path splits: 1) to ground (mostly) 2) through

More information

1. Prove that if you have tri-state buffers and inverters, you can build any combinational logic circuit. [4]

1. Prove that if you have tri-state buffers and inverters, you can build any combinational logic circuit. [4] HW 3 Answer Key 1. Prove that if you have tri-state buffers and inverters, you can build any combinational logic circuit. [4] You can build a NAND gate from tri-state buffers and inverters and thus you

More information

EGCP 1010 Digital Logic Design (DLD) Laboratory #6

EGCP 1010 Digital Logic Design (DLD) Laboratory #6 EGCP 11 Digital Logic Design (DLD) Laboratory #6 Four by Four (4 x 4) Sorting Stack Prepared By: Alex Laird on October 1st, 2 Lab Partner: Ryan Morehart Objective: The goal of this laboratory is to expose

More information

DigSim Assignment 2: Finite State Machine Simplifications

DigSim Assignment 2: Finite State Machine Simplifications CMSC, Computer Organization & Assembly Language Programming Section Fall DigSim Assignment : Finite State Machine Simplifications Due: Tuesday December, Objective The objective is to design and simplify

More information

R10. II B. Tech I Semester, Supplementary Examinations, May

R10. II B. Tech I Semester, Supplementary Examinations, May SET - 1 1. a) Convert the following decimal numbers into an equivalent binary numbers. i) 53.625 ii) 4097.188 iii) 167 iv) 0.4475 b) Add the following numbers using 2 s complement method. i) -48 and +31

More information

Lecture 18. Questions? Monday, February 20 CS 430 Artificial Intelligence - Lecture 18 1

Lecture 18. Questions? Monday, February 20 CS 430 Artificial Intelligence - Lecture 18 1 Lecture 18 Questions? Monday, February 20 CS 430 Artificial Intelligence - Lecture 18 1 Outline Chapter 6 - Constraint Satisfaction Problems Path Consistency & Global Constraints Sudoku Example Backtracking

More information

Introduction to CMOS VLSI Design (E158) Lecture 7: Synthesis and Floorplanning

Introduction to CMOS VLSI Design (E158) Lecture 7: Synthesis and Floorplanning Harris Introduction to CMOS VLSI Design (E158) Lecture 7: Synthesis and Floorplanning David Harris Harvey Mudd College David_Harris@hmc.edu Based on EE271 developed by Mark Horowitz, Stanford University

More information

10/5/2016. Review of General Bit-Slice Model. ECE 120: Introduction to Computing. Initialization of a Serial Comparator

10/5/2016. Review of General Bit-Slice Model. ECE 120: Introduction to Computing. Initialization of a Serial Comparator University of Illinois at Urbana-Champaign Dept. of Electrical and Computer Engineering ECE 120: Introduction to Computing Example of Serialization Review of General Bit-Slice Model General model parameters

More information

Administrivia. CSE 370 Spring 2006 Introduction to Digital Design Lecture 9: Multilevel Logic

Administrivia. CSE 370 Spring 2006 Introduction to Digital Design Lecture 9: Multilevel Logic SE 370 Spring 2006 Introduction to igital esign Lecture 9: Multilevel Logic Last Lecture Introduction to Verilog Today Multilevel Logic Hazards dministrivia Hand in Homework #3 Homework #3 posted this

More information

Machine Learning Lecture 16

Machine Learning Lecture 16 ourse Outline Machine Learning Lecture 16 undamentals (2 weeks) ayes ecision Theory Probability ensity stimation Undirected raphical Models & Inference 28.06.2016 iscriminative pproaches (5 weeks) Linear

More information

Dynamic Programming Matrix-chain Multiplication

Dynamic Programming Matrix-chain Multiplication 1 / 32 Dynamic Programming Matrix-chain Multiplication CS 584: Algorithm Design and Analysis Daniel Leblanc 1 1 Senior Adjunct Instructor Portland State University Maseeh College of Engineering and Computer

More information

Binary Decision Diagrams (BDDs) Pingqiang Zhou ShanghaiTech University

Binary Decision Diagrams (BDDs) Pingqiang Zhou ShanghaiTech University Binary Decision Diagrams (BDDs) Pingqiang Zhou ShanghaiTech University Computational Boolean Algera Representations Applying unate recursive paradigm (URP) in solving tautology is a great warm up example.

More information

Fault Tolerant Computing CS 530 Testing Sequential Circuits

Fault Tolerant Computing CS 530 Testing Sequential Circuits CS 530 Testing Sequential Circuits Yashwant K. Malaiya Colorado State University 1 Why Testing Sequential Circuits is Hard To test a sequential circuit we need to Initialize it into a known state (reset

More information

Ripple Counters. Lecture 30 1

Ripple Counters. Lecture 30 1 Ripple Counters A register that goes through a prescribed sequence of states upon the application of input pulses is called a counter. The input pulses may be clock pulses, or they may originate from some

More information

Sense Amplifiers 6 T Cell. M PC is the precharge transistor whose purpose is to force the latch to operate at the unstable point.

Sense Amplifiers 6 T Cell. M PC is the precharge transistor whose purpose is to force the latch to operate at the unstable point. Announcements (Crude) notes for switching speed example from lecture last week posted. Schedule Final Project demo with TAs. Written project report to include written evaluation section. Send me suggestions

More information

Introduction to synthesis. Logic Synthesis

Introduction to synthesis. Logic Synthesis Introduction to synthesis Lecture 5 Logic Synthesis Logic synthesis operates on boolean equations and produce optimized combinational logic Logic Minimization Two-level logic minimization Two-level logic

More information

Announcements. Midterm 2 next Thursday, 6-7:30pm, 277 Cory Review session on Tuesday, 6-7:30pm, 277 Cory Homework 8 due next Tuesday Labs: project

Announcements. Midterm 2 next Thursday, 6-7:30pm, 277 Cory Review session on Tuesday, 6-7:30pm, 277 Cory Homework 8 due next Tuesday Labs: project - Fall 2002 Lecture 20 Synthesis Sequential Logic Announcements Midterm 2 next Thursday, 6-7:30pm, 277 Cory Review session on Tuesday, 6-7:30pm, 277 Cory Homework 8 due next Tuesday Labs: project» Teams

More information

Memory & Logic Array. Lecture # 23 & 24 By : Ali Mustafa

Memory & Logic Array. Lecture # 23 & 24 By : Ali Mustafa Memory & Logic Array Lecture # 23 & 24 By : Ali Mustafa Memory Memory unit is a device to which a binary information is transferred for storage. From which information is retrieved when needed. Types of

More information

Lecture 18: DRAM Technologies

Lecture 18: DRAM Technologies Lecture 18: DRAM Technologies Last Time: Cache and Virtual Memory Review Today DRAM organization or, why is DRAM so slow??? Lecture 18 1 Main Memory = DRAM Lecture 18 2 Basic DRAM Architecture Lecture

More information

Building Bigger Systems: Hardware Threads

Building Bigger Systems: Hardware Threads ! uilding igger Systems: Hardware Threads Lecture L06 18-4 dvanced igital esign ECE epartment Many elements on Thomas, 2014, used with permission with credit to G. Larson Today We build on our knowledge

More information

Gate-Level Minimization

Gate-Level Minimization Gate-Level Minimization ( 范倫達 ), Ph. D. Department of Computer Science National Chiao Tung University Taiwan, R.O.C. Fall, 2017 ldvan@cs.nctu.edu.tw http://www.cs.nctu.edu.tw/~ldvan/ Outlines The Map Method

More information