Contemporary Logic Design Introduction © R.H. Katz Transparency No. 2-1 Chapter # 1: Introduction.

Slides:



Advertisements
Similar presentations
Switching circuits Composed of switching elements called “gates” that implement logical blocks or switching expressions Positive logic convention (active.
Advertisements

Sistemas Digitais I LESI - 2º ano Lesson 1 - Introduction U NIVERSIDADE DO M INHO E SCOLA DE E NGENHARIA Prof. João Miguel Fernandes
01 Introduction to Digital Logic
Sahar Mosleh PageCalifornia State University San Marcos 1 Introductory Concepts This section of the course introduces the concept of digital circuits and.
CMPT150, Ch 3, Tariq Nuruddin, Fall 06, SFU 1 Ch3. Combinatorial Logic Design Modern digital design involves a number of techniques and tools essential.
Contemporary Logic Design Multi-Level Logic © R.H. Katz Transparency No Chapter # 3: Multi-Level Combinational Logic 3.3 and Time Response.
02/02/20091 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
Chapter 4 Gates and Circuits.
Contemporary Logic Design Finite State Machine Design © R.H. Katz Transparency No Chapter #8: Finite State Machine Design 8.5 Finite State Machine.
Chapter # 5: Arithmetic Circuits Contemporary Logic Design Randy H
1/31/20081 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
EE 231 Digital Electronics Fall 01 week 1-slide 1 Digital Hardware Systems Digital Systems Digital vs. Analog Waveforms Analog: values vary over a broad.
Contemporary Logic Design Two-Level Logic © R.H. Katz Transparency No. 3-1 Chapter #2: Two-Level Combinational Logic Section 2.1, Logic Functions.
Computer ArchitectureFall 2008 © August 20 th, Introduction to Computer Architecture Lecture 2 – Digital Logic Design.
Chapter #6: Sequential Logic Design 6.2 Timing Methodologies
Contemporary Logic Design Sequential Logic © R.H. Katz Transparency No Chapter #6: Sequential Logic Design Sequential Switching Networks.
EECS 303 Lecture 11 Lecture 1 Introduction to Digital Logic Design Hai Zhou EECS 303 Advanced Digital Design Fall 2011.
Sequential Circuit  It is a type of logic circuit whose output depends not only on the present value of its input signals but on the past history of its.
Signals and Systems March 25, Summary thus far: software engineering Focused on abstraction and modularity in software engineering. Topics: procedures,
Introduction to Digital Logic Design Appendix A of CO&A Dr. Farag
Chapter 4 Gates and Circuits.
CSCI 255, ENGR 274, ECE August 2000 Announcements – –Homework 1 is due 31 AugustHomework.
Contemporary Logic Design Multi-Level Logic © R.H. Katz Transparency No. 5-1 Chapter # 2: Two-Level Combinational Logic Section Practical Matters.
Introduction to Digital Design
1 CHAPTER 4: PART I ARITHMETIC FOR COMPUTERS. 2 The MIPS ALU We’ll be working with the MIPS instruction set architecture –similar to other architectures.
Chapter 2: Fundamentals of Digital Electronics Dr Mohamed Menacer Taibah University
Contemporary Logic Design Introduction CSIE, Dgt-ckt Transparency No. 1-1 Chapter # 1: Introduction Contemporary Logic Design Randy H. Katz University.
CSCI-235 Micro-Computers in Science Hardware Design Part I.
Digital Electronics. Introduction to Number Systems & Codes Digital & Analog systems, Numerical representation, Digital number systems, Binary to Decimal.
Contemporary Logic Design Introduction ?R.H. Katz Transparency No. 1-1 Chapter # 1: Introduction Contemporary Logic Design Randy H. Katz University of.
COE4OI5 Engineering Design. Copyright S. Shirani 2 Course Outline Design process, design of digital hardware Programmable logic technology Altera’s UP2.
School of Computer Science G51CSA 1 Computer Systems Architecture Fundamentals Of Digital Logic.
PROGRAMMABLE LOGIC DEVICES (PLD)
CSC321 Where We’ve Been Binary representations Boolean logic Logic gates – combinational circuits Flip-flops – sequential circuits Complex gates – modules.
Digital Logic. 4 Why is 32-bit or 64-bit significant in terms of speed, efficiency? 4 Difference between OR and XOR 4 What is a mux for? PLA 4 Two kinds.
Slide No. 1 Course: Logic Design Dr. Ali Elkateeb Topic: Introduction Course Number: COMP 1213 Course Title: Logic Design Instructor: Dr. Ali Elkateeb.
Fall 2012: FCM 708 Foundation I Lecture 2 Prof. Shamik Sengupta
Memory and Programmable Logic Memory device: Device to which binary information is transferred for storage, and from which information is available for.
CWRU EECS 317 EECS 317 Computer Design LECTURE 1: The VHDL Adder Instructor: Francis G. Wolff Case Western Reserve University.
CSCI-100 Introduction to Computing Hardware Design Part I.
June 2005Computer Architecture, Background and MotivationSlide 1 Part I Background and Motivation.
Fall 2004EE 3563 Digital Systems Design EE 3563 VHSIC Hardware Description Language  Required Reading: –These Slides –VHDL Tutorial  Very High Speed.
Chapter 0 - reVieW Combinational Logic Circuit, Combinational Logic Circuit, Propagation Delay, Propagation Delay, Programmable Logic. Programmable Logic.
1 ECSE-2610 Computer Components & Operations (COCO) Today: General Course Information First Hour: Introduction to Design –Section 1.1 of Katz’s Textbook.
EE 5900 Advanced Algorithms for Robust VLSI CAD, Spring 2009 Combinational Circuits.
1-1 Introduction Chapter # 1: Introduction. 1-2 Introduction Motivation Dramatic Change in the Way Industry Does Hardware Design Pervasive use of Computer-Aided.
Chapter 3 Digital Logic Structures. Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 3-2 Transistor: Building.
1 ECSE-2610 Computer Components & Operations (COCO) Welcome to the world of Computers!
Apr. 3, 2000Systems Architecture I1 Introduction to VHDL (CS 570) Jeremy R. Johnson Wed. Nov. 8, 2000.
May 9, 2001Systems Architecture I1 Systems Architecture I (CS ) Lab 5: Introduction to VHDL Jeremy R. Johnson May 9, 2001.
COE 200 Fundamentals of Computer Engineering Instructor: Syed Z. Shazli
IAY 0600 Digital Systems Design Timing and Post-Synthesis Verifications Hazards in Combinational Circuits Alexander Sudnitson Tallinn University of Technology.
ECE 3110: Introduction to Digital Systems Introduction (Contd.)
Chapter # 1: Introduction Contemporary Logic Design.
Digital electronics 4–1 Gates and Circuits SANJAYBHAI RAJGURU COLLEGE OF ENGG.
Boolean Algebra and Computer Logic Mathematical Structures for Computer Science Chapter 7 Copyright © 2006 W.H. Freeman & Co.MSCS Slides Boolean Logic.

EECE 320 L8: Combinational Logic design Principles 1Chehab, AUB, 2003 EECE 320 Digital Systems Design Lecture 8: Combinational Logic Design Principles.
Programmable Logic Devices
IAY 0600 Digital Systems Design
Systems Architecture Lab: Introduction to VHDL
EEE2135 Digital Logic Design Chapter 1. Introduction
Stateless Combinational Logic and State Circuits
CS105 Introduction to Computer Concepts GATES and CIRCUITS
IAY 0800 Digitaalsüsteemide disain
Part I Background and Motivation
CSE 370 – Winter Introduction -2- 1
Digital Circuits and Logic
COMPUTER ORGANIZATION
Instructor: Michael Greenbaum
Presentation transcript:

Contemporary Logic Design Introduction © R.H. Katz Transparency No. 2-1 Chapter # 1: Introduction

Contemporary Logic Design Introduction © R.H. Katz Transparency No. 2-2 Design Process

Contemporary Logic Design Introduction © R.H. Katz Transparency No. 2-3 The Process Of Design Design Initial concept: what is the function performed by the object? Constraints: How fast? How much area? How much cost? Refine abstract functional blocks into more concrete realizations Implementation Assemble primitives into more complex building blocks Composition via wiring Choose among alternatives to improve the design Debug Faulty systems: design flaws, composition flaws, component flaws Design to make debugging easier Hypothesis formation and troubleshooting skills

Contemporary Logic Design Introduction © R.H. Katz Transparency No. 2-4 The Elements of Modern Design Rapid Prototyping Technologies Design Representations Circuit Technologies MOS TTL Behaviors Blocks Waveforms Gates Truth Tables Boolean Algebra Switches Simulation SynthesisPAL, PLA, ROM, PLD Computer-Aided Design Representations, Circuit Technologies, Rapid Prototyping

Contemporary Logic Design Introduction © R.H. Katz Transparency No. 2-5 Lights point in the directions N, S, E, W Illuminates the same lights N as S and E as W Cycles thru the sequence GREEN-YELLOW-RED N-S and E-W never GREEN or YELLOW at the same time Stay GREEN for 45 seconds, yellow for 15, red for 60 The Art Of Design: Refinement of Representations 1. Functional Specification/What the System Does Ex: Traffic Light Controller 2. Performance Constraints/Requirements to be Met speed: compute changes in under 100 ms power: consume less than 20 watts area: implementation in less than 20 square cm cost: less than $20 in manufacturing costs

Contemporary Logic Design Introduction © R.H. Katz Transparency No. 2-6 The Art of Design: "To Design Is To Represent" 1. English language specification easy to write, but not precise and subject to ambiguity 2. Functional description more precise specification flow charts, program fragments 3. Structural description complex components decomposed into compositions of less complex components 4. Physical description the design in terms of most primitive building blocks, e. g., logic gates or transistors

Contemporary Logic Design Introduction © R.H. Katz Transparency No. 2-7 The Process of Design: Debugging the System Design Flaws Implementation does not meet functional specification Logic design is incorrect (wrong function implemented) Misinterpretation or corner cases ignored Implementation Flaws Individual modules function correctly but their compositions do not Misunderstanding of interface and timing behavior Wiring mistakes, Electrical mistakes Component Flaws Logically correct and correctly wired Not all hardware components are guaranteed to work! E.g., burnt out component What Can Go Wrong

Contemporary Logic Design Introduction © R.H. Katz Transparency No. 2-8 The Process of Design Debugging via Simulation Before Construction Debugging Skills: Improving the testability of the design Formulating a testing plan and choosing test cases Hypothesizing about the cause of the problem Isolating portions of the implementation for testing Effective use of laboratory instruments for troubleshooting

Contemporary Logic Design Introduction © R.H. Katz Transparency No. 2-9 Digital Hardware Systems

Contemporary Logic Design Introduction © R.H. Katz Transparency No Digital Hardware Systems Digital Systems Digital vs. Analog Waveforms Analog: values vary over a broad range continuously Digital: - only assumes discrete values - number of possible outputs is finite binary digital system

Contemporary Logic Design Introduction © R.H. Katz Transparency No Digital Hardware Systems Analog systems: slight error in input yields large error in output Digital systems more accurate and reliable Readily available as self-contained, easy to cascade building blocks Computers use digital circuits internally Interface circuits (i.e., sensors & actuators) often analog This course is about logic design, not system design (processor architecture), not circuit design (transistor level) Advantages of Digital Systems

Contemporary Logic Design Introduction © R.H. Katz Transparency No Digital Hardware Systems Two discrete values: yes, on, 5 volts, current flowing, magnetized North, "1" no, off, 0 volts, no current flowing, magnetized South, "0" Advantage of binary systems: rigorous mathematical foundation based on logic the three preconditions must be true to imply the conclusion both the door must be open and the car running before I can back out IF N-S is green AND E-W is red AND 45 seconds has expired since the last light change THEN we can advance to the next light configuration IF N-S is green AND E-W is red AND 45 seconds has expired since the last light change THEN we can advance to the next light configuration Digital Binary Systems IF the garage door is open AND the car is running THEN the car can be backed out of the garage IF the garage door is open AND the car is running THEN the car can be backed out of the garage

Contemporary Logic Design Introduction © R.H. Katz Transparency No Digital Hardware Systems Algebra: variables, values, operations In Boolean algebra, the values are the symbols 0 and 1 If a logic statement is false, it has value 0 If a logic statement is true, it has value 1 Operations: AND, OR, NOT Truth Table -- tabulate all possible input combinations and their associated output values Boolean Algebra and Logical Operators

Contemporary Logic Design Introduction © R.H. Katz Transparency No Digital Hardware Systems Physical electronic components are continuous, not discrete! These are the building blocks of all digital components! Transition from logic 1 to logic 0 does not take place instantaneously in real digital systems Intermediate values may be visible for an instant Boolean algebra useful for describing the steady state behavior of digital systems The Real World output transition from on to off

Contemporary Logic Design Introduction © R.H. Katz Transparency No Digital Hardware Systems Integrated circuit technology choice of conducting, non-conducting, sometimes conducting ("semiconductor") materials whether or not their interaction allows electrons to flow forms the basis for electrically controlled switches Digital Circuit Technologies Main technologies MOS: Metal-Oxide-Silicon Bipolar TTL: Transistor-Transistor Logic ECL: Emitter Coupled Logic

Contemporary Logic Design Introduction © R.H. Katz Transparency No Digital Hardware Systems Transistor basic electrical switch three terminal switch: gate, source, drain voltage between gate and source exceeds threshold switch is conducting or "closed" electrons flow between source and drain when voltage is removed, the switch is "open" or non-conducting connection between source and drain is broken voltage-controlled switch MOS Technology

Contemporary Logic Design Introduction © R.H. Katz Transparency No Digital Hardware Systems Circuit that implements logical negation (NOT) 1 at input yields 0 at output 0 at input yields 1 at output Inverter behavior as a function of input voltage input ramps from 0V to 5V output holds at 5V for some range of small input voltages then changes rapidly, but not instantaneously! Building upon transistor switches, we can construct logic gates that implement various logic operations such as AND, OR, and NOT Logic gates -- physical devices that operate over electrical voltages rather than symbols like 1 and 0. Typical logic gate interprets voltages near 5 V as a logic 1 and those near 0V as a logic 0.

Contemporary Logic Design Introduction © R.H. Katz Transparency No Circuits Combinational Sequential

Contemporary Logic Design Introduction © R.H. Katz Transparency No Digital Hardware Systems Combinational logic no feedback among inputs and outputs outputs are a pure function of the inputs no memory e.g., full adder circuit: (A, B, Carry In) mapped into (Sum, Carry Out) Network implemented from switching elements or logic gates. The presence of feedback distinguishes between sequential and combinational networks. Combinational vs. Sequential Logic X 1 X 2 X n Switching Network Z 1 Z 2 Z m - - -

Contemporary Logic Design Introduction © R.H. Katz Transparency No Digital Hardware Systems Traffic Light Example Next State Logic Maps current state and alarm events into the next state Current State Storage elements replaced by next state when the clock signal arrives Output Logic Current state mapped into control signals to change the lights and to start the event timers IF controller in state N-S green, E-W red AND the 45 second timer alarm is asserted THEN the next state becomes N-S yellow, E-W red when the clk signal is next asserted IF controller in state N-S green, E-W red AND the 45 second timer alarm is asserted THEN the next state becomes N-S yellow, E-W red when the clk signal is next asserted Combinational vs Sequential Logic

Contemporary Logic Design Introduction © R.H. Katz Transparency No Representations Switches Truth Table Boolean Algebra Gates Waveforms Blocks Simulation Language

Contemporary Logic Design Introduction © R.H. Katz Transparency No Representations of a Digital Design 1. Switches A switch connects two points (small circles) under control signal (arrow w/ line through it). when the control signal is 0 (false), the switch is open when it is 1 (true), the switch is closed when control is 1 (true), switch is open when control is 0 (false), switch is closed Normally Closed Normally Open

Contemporary Logic Design Introduction © R.H. Katz Transparency No Representations of a Digital Design: Switches Examples: routing inputs to outputs through a maze FLOATING Better Representation

Contemporary Logic Design Introduction © R.H. Katz Transparency No Representations of a Digital Design: Switches Implementation of AND and OR Functions with Switches AND function Series connection to TRUE OR function Parallel connection to TRUE Series connection of Normally open -- AND Parallel connection of Normally open -- OR

Contemporary Logic Design Introduction © R.H. Katz Transparency No Representations of a Digital Design Example: half adder adds two binary digits to form Sum and Carry Example: full adder adds two binary digits and Carry in to form Sum and Carry Out NOTE: 1 plus 1 is 0 with a carry of 1 in binary 2. Truth Table: For large number of inputs, truth table grows too large.

Contemporary Logic Design Introduction © R.H. Katz Transparency No Representations of a Digital Design 3. Boolean Algebra NOT X is written as X X AND Y is written as X & Y, or sometimes X Y X OR Y is written as X + Y values: 0, 1 variables: A, B, C,..., X, Y, Z operations: NOT, AND, OR,... A0011A0011 B0101B0101 Sum Carry 0 1 Sum = A B + A B Carry = A B OR'd together product terms for each truth table row where the function is 1 if input variable is 0, it appears in complemented form; if 1, it appears uncomplemented Deriving Boolean equations from truth tables:

Contemporary Logic Design Introduction © R.H. Katz Transparency No Representations of a Digital Design 4. Gates most widely used primitive building block in digital system design Standard Logic Gate Representation Half Adder Schematic Netlist: tabulation of gate inputs & outputs and the nets they are connected to Net: electrically connected collection of wires NOT AND OR

Contemporary Logic Design Introduction © R.H. Katz Transparency No Representations of a Digital Design 5. Waveforms dynamic behavior of a circuit real circuits have non-zero delays Timing Diagram of the Half Adder sum propagation delay circuit hazard: 1 plus 0 is 1, not 0! sum propagation delay Output changes are delayed from input changes The propagation delay is sensitive to paths in the circuit Outputs may temporarily change from the correct value to the wrong value back again to the correct value: this is called a glitch or hazard

Contemporary Logic Design Introduction © R.H. Katz Transparency No Representations of a Digital Design 6. Blocks structural organization of the design black boxes with input and output connections corresponds to well defined functions concentrates on how the components are composed by wiring Full Adder realized in terms of composition of half adder blocks Block diagram representation of the Full Adder

Contemporary Logic Design Introduction © R.H. Katz Transparency No Representation of a Digital Design: Behaviors ABEL Hardware Description Language MODULE half_adder; a, b, sum, carry PIN 1, 2, 3, 4; TRUTH_TABLE {[a, b] -> [sum, carry]} [0, 0] -> [0, 0]; [0, 1] -> [1, 0]; [1, 0] -> [1, 0]; [1, 1] -> [0, 1]; END half_adder; MODULE half_adder; a, b, sum, carry PIN 1, 2, 3, 4; EQUATIONS SUM = (A & !B) # (!A & B); CARRY = A & B; END half_adder; Truth Table Specification Equation Specification ANDOR NOT or 7. Simulation Language

Contemporary Logic Design Introduction © R.H. Katz Transparency No Rapid Electronic System Prototyping

Contemporary Logic Design Introduction © R.H. Katz Transparency No Rapid Electronic System Prototyping quick construction of digital systems to prove concept rapid exploration of alternative design approaches performance traded off for faster path to implementation Goals: Techniques: computer-aided design tools simulation: find out how the design will behave before constructing it synthesis: generate detailed descriptions, like schematics, from high level descriptions, like Boolean equations quick turnaround implementation technologies programmable logic

Contemporary Logic Design Introduction © R.H. Katz Transparency No Rapid Electronic System Prototyping: Computer-Aided Design Synthesis tools create a portion of the design from other portions map more abstract representation to more physical representation Behavioral Synthesis Behavioral Synthesis VHDL Boolean Equations Logic Synthesis Logic Synthesis Gate Libraries Schematics map a representation into a more optimized form of that representation, e.g., espresso ABEL

Contemporary Logic Design Introduction © R.H. Katz Transparency No Rapid Electronic System Prototyping Simulation program which dynamically executes an abstract design description obtain verification of functional correctness and some timing information before the design is physically constructed easier to probe and debug a simulation than an implemented design simulation cannot guarantee that a design will work only as good as the test cases attempted does not check electrical errors abstracts away some of the realities of a real system Logic Simulation design described in terms of logic gates values are 0, 1 (plus others to be introduced) good for truth table verification Timing Simulation waveform inputs and outputs model of gate delays are the waveform shapes what was expected? identification of performance bottlenecks

Contemporary Logic Design Introduction © R.H. Katz Transparency No Rapid Electronic System Implementation Rapid Implementation Technologies the function and interconnect of a component can be "personalized" alternative to discrete logic gates and wires reduces wiring complexity and parts count facilitates more rapid design changes and enhancements Programming with 1's and 0's component function configured through truth table interconnect among internal modules also configured in this way selectively blown fuses programmable switching matrix configured by 1's and 0's

Contemporary Logic Design Introduction © R.H. Katz Transparency No Rapid Electronic System Prototyping Example: Read-Only Memories hardware implementation of a two dimensional array inputs form the index into the array the binary word at the indexed memory location contains the output values contents are programmed once, read many times Half Adder Realized as a ROM: Full Adder Realized as a ROM:

Contemporary Logic Design Introduction © R.H. Katz Transparency No Homework Assignment HW #2 -- Chapter 1