Binary Adder/Subtractor

Slides:



Advertisements
Similar presentations
DIGITAL ELECTRONICS & it0203 Semester - 3
Advertisements

A. Abhari CPS2131 Sequential Circuits Most digital systems like digital watches, digital phones, digital computers, digital traffic light controllers and.
1 Fundamentals of Computer Science Sequential Circuits.
Computer Architecture CS 215
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 12 Basic (NAND) S – R Latch “Cross-Coupling” two NAND gates gives the S -R Latch:
Sequential Circuits1 DIGITAL LOGIC DESIGN by Dr. Fenghui Yao Tennessee State University Department of Computer Science Nashville, TN.
SYEN 3330 Digital SystemsJung H. Kim 1 SYEN 3330 Digital Systems Chapter 6 – Part 1.
Module 12.  In Module 9, 10, 11, you have been introduced to examples of combinational logic circuits whereby the outputs are entirely dependent on the.
Overview Part 1 - Storage Elements and Analysis
Overview Part 1 - Storage Elements and Analysis
CPEN Digital System Design Chapter 5 Sequential Circuits Storage Elements and Sequential Circuit Analysis C. Gerousis © Logic and Computer Design.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 5 – Sequential Circuits Logic and Computer.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 5 – Sequential Circuits Part 1 – Storage.
Sequential Circuit Analysis & Design Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum & Minerals Dr. Aiman H. El-Maleh.
1. 2 Logic Circuits Sequential Circuits Combinational Circuits Consists of logic gates whose outputs are determined from the current combination of inputs.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 5 – Sequential Circuits Part 1 – Storage.
Logic and Computer Design Fundamentals Registers and Counters
KU College of Engineering Elec 204: Digital Systems Design
Digital Logic Design CHAPTER 5 Sequential Logic. 2 Sequential Circuits Combinational circuits – The outputs are entirely dependent on the current inputs.
Digital Computer Design Fundamental
1 Boolean Algebra & Logic Gates. 2 Objectives Understand the relationship between Boolean logic and digital computer circuits. Learn how to design simple.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 21 Multiplier Example Example: (101 x 011) Base 2 Note that the partial product summation.
Chap 4. Sequential Circuits
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Logic and Computer Design.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 11 Binary Adder/Subtractor.
Introduction to State Machine
Sequential Circuit: Analysis BIL- 223 Logic Circuit Design Ege University Department of Computer Engineering.
CS 151: Digital Design Chapter 4: Arithmetic Functions and Circuits
Synchronous Sequential Logic A digital system has combinational logic as well as sequential logic. The latter includes storage elements. feedback path.
5 Chapter Synchronous Sequential Circuits 1. Logic Circuits- Review 2 Logic Circuits Sequential Circuits Combinational Circuits Consists of logic gates.
Synchronous Sequential Circuits by Dr. Amin Danial Asham.
CS151 Introduction to Digital Design Chapter 5: Sequential Circuits 5-1 : Sequential Circuit Definition 5-2: Latches 1Created by: Ms.Amany AlSaleh.
Synchronous Sequential Circuits by Dr. Amin Danial Asham.
4–1. BSCS 5 th Semester Introduction Logic diagram: a graphical representation of a circuit –Each type of gate is represented by a specific graphical.
TOPIC : Introduction to Sequential Circuits UNIT 1: Modeling and Simulation Module 4 : Modeling Sequential Circuits.
1. 2 Logic Circuits Sequential Circuits Combinational Circuits Consists of logic gates whose outputs are determined from the current combination of inputs.
Overview Part 1 - Storage Elements and Sequential Circuit Analysis
FLIP FLOPS Binary unit capable of storing one bit – 0 or 1
Prof. Sin-Min Lee Department of Computer Science
Overview Part 1 - Storage Elements and Analysis
LATCHED, FLIP-FLOPS,AND TIMERS
EKT 221 – Counters.
EKT 221 : Digital 2 COUNTERS.
FIGURE 5.1 Block diagram of sequential circuit
KU College of Engineering Elec 204: Digital Systems Design
Synchronous Sequential Circuits
EKT 121 / 4 DIGITAL ELECTRONICS I
Sequential Circuits Most digital systems like digital watches, digital phones, digital computers, digital traffic light controllers and so on require.
Reading: Hambley Chapters
ECE Digital logic Lecture 16: Synchronous Sequential Logic
DIGITAL ELECTRONICS ТHEME 4: SEQUENTIAL LOGIC CIRCUITS. FLIP- FLOPS – ASYNCHRONOUS AND SYNCHRONOUS, R - S, D, T, J - K FLIP- FLOPS. The value of the outputs.
Sequential logic circuits
KU College of Engineering Elec 204: Digital Systems Design
Basics Combinational Circuits Sequential Circuits Ahmad Jawdat
LECTURE 15 – DIGITAL ELECTRONICS
Boolean Algebra and Digital Logic
KU College of Engineering Elec 204: Digital Systems Design
Synchronous Sequential Circuits
CSE 370 – Winter Sequential Logic - 1
KU College of Engineering Elec 204: Digital Systems Design
Sequential Circuits: Latches
Overview Part 1 – Design Procedure Part 2 – Combinational Logic
Chapter 5 – Sequential Circuits
Sequential Circuit Analysis & Design
Thought of the Day To be what we are, and to become
Synchronous sequential
Synchronous Sequential
ECE 352 Digital System Fundamentals
Lecture 14: State Tables, Diagrams, Latches, and Flip Flop
Chapter 5 Sequential Circuits.
Presentation transcript:

Binary Adder/Subtractor KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Overflow When does it occur? How do we detect it? 01110 10000 + 5 0101 -4 1100 + 7 0111 -6 1010 +12 ? 01100 -10 ? 10110 KU College of Engineering Elec 204: Digital Systems Design

Binary Multiplication The binary digit multiplication table is trivial: This is simply the Boolean AND function. Form larger products the same way we form larger products in base 10. (a × b) b = 0 b = 1 a = 0 a = 1 1 KU College of Engineering Elec 204: Digital Systems Design

Review - Decimal Example: (237 × 149)10 Partial products are: 237 × 9, 237 × 40, and 237 × 100 Note that the partial product summation for n digit, base 10 numbers requires adding up to n digits (with carries). Note also n × m digit multiply generates up to an m + n digit result. 2 3 7 × 1 4 9 8 - + 5 KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Example: (101 x 011) Base 2 Partial products are: 101 × 1, 101 × 10, and 101 × 000 Note that the partial product summation for n digit, base 2 numbers requires adding up to n digits (with carries) in a column. Note also n × m digit multiply generates up to an m + n digit result (same as decimal). 1 × KU College of Engineering Elec 204: Digital Systems Design

Multiplier Boolean Equations We can also make an n × m “block” multiplier and use that to form partial products. Example: 2 × 2 – The logic equations for each partial-product binary digit are shown below: We need to "add" the columns to get the product bits P0, P1, P2, and P3. Note that some columns may generate carries. b1 b0 ´ a1 a0 . . (a0 b1) (a0 b0) + . . (a1 b1) (a1 b0) P3 P2 P1 P0 KU College of Engineering Elec 204: Digital Systems Design

Multiplier Arrays Using Adders An implementation of the 2 × 2 multiplier array is shown: KU College of Engineering Elec 204: Digital Systems Design

4-bit by 3-bit multiplier KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Design by Contraction Contraction is a technique for simplifying the logic in a functional block to implement a different function The new function must be realizable from the original function by applying rudimentary functions to its inputs Contraction is treated here only for application of 0s and 1s (not for X and X’) After application of 0s and 1s, equations or the logic diagram are simplified KU College of Engineering Elec 204: Digital Systems Design

Design by Contraction Example: Increment Contraction of a ripple carry adder to incrementer for n = 3 bits Set B = 001 The middle cell can be repeated to make an incrementer with n > 3. KU College of Engineering Elec 204: Digital Systems Design

Incrementing & Decrementing Adding a fixed value to an arithmetic variable Fixed value is often 1, called counting (up) Examples: A + 1, B + 4 Functional block is called incrementer Decrementing Subtracting a fixed value from an arithmetic variable Fixed value is often 1, called counting (down) Examples: A - 1, B - 4 Functional block is called decrementer KU College of Engineering Elec 204: Digital Systems Design

Introduction to Sequential Circuits Inputs Outputs Combina-tional Logic A Sequential circuit contains: Storage elements: Latches or Flip-Flops Combinatorial Logic: Implements a multiple-output switching function Inputs are signals from the outside. Outputs are signals to the outside. Other inputs, State or Present State, are signals from storage elements. The remaining outputs, Next State are inputs to storage elements. Storage Elements State Next State KU College of Engineering Elec 204: Digital Systems Design

Introduction to Sequential Circuits Combinatorial Logic Next state function Next State = f (Inputs, State) Output function (Mealy) Outputs = g (Inputs, State) Output function (Moore) Outputs = h (State) Output function type depends on specification and affects the design significantly Inputs Outputs Combina-tional Logic Storage Elements State Next State KU College of Engineering Elec 204: Digital Systems Design

Types of Sequential Circuits Depends on the times at which: storage elements observe their inputs, and storage elements change their state Synchronous Behavior defined from knowledge of its signals at discrete instances of time Storage elements observe inputs and can change state only in relation to a timing signal (clock pulses from a clock) Asynchronous Behavior defined from knowledge of inputs an any instant of time and the order in continuous time in which inputs change If clock just regarded as another input, all circuits are asynchronous! Nevertheless, the synchronous abstraction makes complex designs tractable! KU College of Engineering Elec 204: Digital Systems Design

Discrete Event Simulation In order to understand the time behavior of a sequential circuit we use discrete event simulation. Rules: Gates modeled by an ideal (instantaneous) function and a fixed gate delay Any change in input values is evaluated to see if it causes a change in output value Changes in output values are scheduled for the fixed gate delay after the input change At the time for a scheduled output change, the output value is changed along with any inputs it drives KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Simulated NAND Gate Example: A 2-Input NAND gate with a 0.5 ns. delay: Assume A and B have been 1 for a long time At time t=0, A changes to a 0 at t= 0.8 ns, back to 1. F A B DELAY 0.5 ns. F(Instantaneous) t (ns) A B F(I) F Comment –  1 A=B=1 for a long time Þ Ü F(I) changes to 1 0.5 F changes to 1 after a 0.5 ns delay 0.8 F(Instantaneous) changes to 0 0.13 F changes to 0 after a 0.5 ns delay KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Gate Delay Models Suppose gates with delay n ns are represented for n = 0.2 ns, n = 0.4 ns, n = 0.5 ns, respectively: 0.2 0.5 0.4 KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Circuit Delay Model A Consider a simple 2-input multiplexer: With function: Y = A for S = 0 Y = B for S = 1 “Glitch” is due to delay of inverter 0.4 0.2 0.5 Y S 0.4 B A S B Y KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Storing State What if A con- nected to Y? Circuit becomes: With function: Y = B for S = 1, and Y(t) dependent on Y(t – 0.9) for S = 0 The simple combinational circuit has now become a sequential circuit because its output is a function of a time sequence of input signals! S B Y 0.5 0.4 0.2 B S Y Y is stored value in shaded area KU College of Engineering Elec 204: Digital Systems Design

Storing State (Continued) Simulation example as input signals change with time. Changes occur every 100 ns, so that the tenths of ns delays are negligible. Y represent the state of the circuit, not just an output.   Time B S Y Comment 1 Y “remembers” 0 Y = B when S = 1 Now Y “remembers” B = 1 for S = 0 No change in Y when B changes Y “remembers” B = 0 for S = 0 Note that the “glitch” is still present. An actual storage circuit would be designed to eliminate this by addition of term BY. KU College of Engineering Elec 204: Digital Systems Design

Storing State (Continued) Suppose we place an inverter in the “feedback path.” The following behavior results: The circuit is said to be unstable. For S = 0, the circuit has become what is called an oscillator. Can be used as crude clock. S B Y 0.2 0.5 0.4 B S Y Comment 1 Y = B when S = 1 Now Y “remembers” A Y, 1.1 ns later Y, 1.1 ns later KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Basic (NAND) S – R Latch “Cross-Coupling” two NAND gates gives the S -R Latch: Which has the time sequence behavior: S = 0, R = 0 is forbidden as input pattern S (set) Q Q R (reset) Time R S Q Comment 1 ? Stored state unknown “Set” Q to 1 Now Q “remembers” 1 “Reset” Q to 0 1 1 1 Now Q “remembers” 0 1 1 Both go high 1 1 ? ? Unstable! KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Basic (NOR) S – R Latch Cross-coupling two NOR gates gives the S – R Latch: Which has the time sequence behavior: S (set) R (reset) Q R S Q Comment ? Stored state unknown 1 “Set” Q to 1 Now Q “remembers” 1 “Reset” Q to 0 Now Q “remembers” 0 Both go low Unstable! Time KU College of Engineering Elec 204: Digital Systems Design