Basics Combinational Circuits Sequential Circuits

Slides:



Advertisements
Similar presentations
Boolean Algebra and Logic Gates
Advertisements

Chapter 4 Gates and Circuits.
Switching circuits Composed of switching elements called “gates” that implement logical blocks or switching expressions Positive logic convention (active.
CT455: Computer Organization Logic gate
Boolean Algebra and Logic Gates
CS105 Introduction to Computer Concepts GATES and CIRCUITS
Chapter 4 Gates and Circuits.
Functions and Functional Blocks
Chapter 2 Logic Circuits.
Appendix B Digital Logic. Irvine, Kip R. Assembly Language for Intel-Based Computers, NOT AND OR XOR NAND NOR Truth Tables Boolean Operators.
Chapter 11_1 (chap 10 ed 8) Digital Logic. Irvine, Kip R. Assembly Language for Intel-Based Computers, NOT AND OR XOR NAND NOR Truth Tables Boolean.
Boolean Algebra and Combinational Logic
Chapter 4 Gates and Circuits.
9/19/06 Hofstra University – Overview of Computer Science, CSC005 1 Chapter 4 Gates and Circuits.
Boolean Algebra and Logic Gates1 DIGITAL LOGIC DESIGN by Dr. Fenghui Yao Tennessee State University Department of Computer Science Nashville, TN.
Lecture 3. Boolean Algebra, Logic Gates
Computer Programming Skills Revision Prepared by: Ghader Kurdi.
XOR, XNOR, and Binary Adders
Chapter 4 Gates and Circuits. 4–2 Chapter Goals Identify the basic gates and describe the behavior of each Describe how gates are implemented using transistors.
Introduction to Digital Logic Design Appendix A of CO&A Dr. Farag
Chapter 4 Gates and Circuits.
Chapter 10_1 Digital Logic. Irvine, Kip R. Assembly Language for Intel-Based Computers, NOT AND OR XOR NAND NOR Truth Tables Boolean Operators.
Combinational Circuits Chapter 3 S. Dandamudi To be used with S. Dandamudi, “Fundamentals of Computer Organization and Design,” Springer, 2003.
Chapter 4 Gates and Circuits.
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee Logic Circuits I.
Digital Logic Basics Chapter 2 S. Dandamudi To be used with S. Dandamudi, “Fundamentals of Computer Organization and Design,” Springer, 
CPS120: Introduction to Computer Science
1 The Chinese University of Hong Kong Faculty of Education Diploma in Education (Part-Time) Winter 1997 Educational Communications and Technology Assignment.
The Digital Logic Level
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee Logic Circuits I.
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.
1 Boolean Algebra & Logic Gates. 2 Objectives Understand the relationship between Boolean logic and digital computer circuits. Learn how to design simple.
Apr. 3, 2000Systems Architecture I1 Systems Architecture I (CS ) Lecture 3: Review of Digital Circuits and Logic Design Jeremy R. Johnson Mon. Apr.
1 Lecture #7 EGR 277 – Digital Logic Reading Assignment: Chapter 4 in Digital Design, 3 rd Edition by Mano Chapter 4 – Combinational Logic Circuits A)
Logic Gates Shashidhara H S Dept. of ISE MSRIT. Basic Logic Design and Boolean Algebra GATES = basic digital building blocks which correspond to and perform.
Logic Design CS221 1 st Term combinational circuits Cairo University Faculty of Computers and Information.
1 ECE 545—Digital System Design with VHDL Lecture 1 Digital Logic Refresher Part A – Combinational Logic Building Blocks.
Digital Logic Design Basics Combinational Circuits Sequential Circuits Pu-Jen Cheng Adapted from the slides prepared by S. Dandamudi for the book, Fundamentals.
Logic Gates Ghader Kurdi Adapted from the slides prepared by DEPARTMENT OF PREPARATORY YEAR.
CEC 220 Digital Circuit Design SOP and POS forms Friday, January 23 CEC 220 Digital Circuit Design Slide 1 of 17.
COMPUTER ARCHITECTURE & OPERATIONS I Instructor: Yaohang Li.
LOGIC CIRCUITLOGIC CIRCUIT. Goal To understand how digital a computer can work, at the lowest level. To understand what is possible and the limitations.
Mu.com.lec 9. Overview Gates, latches, memories and other logic components are used to design computer systems and their subsystems Good understanding.
Computer Architecture & Operations I
Computer Architecture & Operations I
Boolean Algebra & Logic Gates
Dr. Ameria Eldosoky Discrete mathematics
Digital Logic.
Dr.Ahmed Bayoumi Dr.Shady Elmashad
Morgan Kaufmann Publishers
Digital Signals Digital Signals have two basic states:
Basic Digital Logic Basic Gates
Jeremy R. Johnson Wed. Sept. 29, 1999
DIGITAL LOGIC CIRCUITS
Dr. Clincy Professor of CS
XOR, XNOR, and Binary Adders
Basics Combinational Circuits Sequential Circuits
Basics Combinational Circuits Sequential Circuits Ahmad Jawdat
CS105 Introduction to Computer Concepts GATES and CIRCUITS
Jeremy R. Johnson Anatole D. Ruslanov William M. Mongan
XOR, XNOR, & Binary Adders
Week 7: Gates and Circuits: PART II
CSC 220: Computer Organization Logic Gates and Functions
Logic Gates.
13 Digital Logic Circuits.
Logic Circuits I Lecture 3.
Chapter 2 Gates.
XOR, XNOR, and Binary Adders
XOR, XNOR, and Binary Adders
Digital Logic Design Basics Combinational Circuits Sequential Circuits.
Presentation transcript:

Basics Combinational Circuits Sequential Circuits Digital Logic Design Basics Combinational Circuits Sequential Circuits Adapted from the slides prepared by S. Dandamudi for the book, Fundamentals of Computer Organization and Design.

Introduction to Digital Logic Basics Hardware consists of a few simple building blocks These are called logic gates AND, OR, NOT, … NAND, NOR, XOR, … Logic gates are built using transistors NOT gate can be implemented by a single transistor AND gate requires 3 transistors Transistors are the fundamental devices Pentium consists of 3 million transistors Compaq Alpha consists of 9 million transistors Now we can build chips with more than 100 million transistors

Basic Concepts Simple gates AND OR NOT Functionality can be expressed by a truth table A truth table lists output for each possible input combination Precedence NOT > AND > OR F = A B + A B = (A (B)) + ((A) B)

Basic Concepts (cont.) Additional useful gates NAND = AND + NOT NOR XOR NAND = AND + NOT NOR = OR + NOT XOR implements exclusive-OR function NAND and NOR gates require only 2 transistors AND and OR need 3 transistors!

Basic Concepts (cont.) Number of functions With N logical variables, we can define 22N functions Some of them are useful AND, NAND, NOR, XOR, … Some are not useful: Output is always 1 Output is always 0 “Number of functions” definition is useful in proving completeness property

Basic Concepts (cont.) Complete sets A set of gates is complete If we can implement any logical function using only the type of gates in the set You can uses as many gates as you want Some example complete sets {AND, OR, NOT} Not a minimal complete set {AND, NOT} {OR, NOT} {NAND} {NOR} Minimal complete set A complete set with no redundant elements.

Basic Concepts (cont.) Proving NAND gate is universal

Basic Concepts (cont.) Proving NOR gate is universal

Logic Chips (cont.)

Logic Chips (cont.) Integration levels SSI (small scale integration) Introduced in late 1960s 1-10 gates (previous examples) MSI (medium scale integration) 10-100 gates LSI (large scale integration) Introduced in early 1970s 100-10,000 gates VLSI (very large scale integration) Introduced in late 1970s More than 10,000 gates

Logic Functions Logical functions can be expressed in several ways: Truth table Logical expressions Graphical form Example: Majority function Output is one whenever majority of inputs is 1 We use 3-input majority function

Logic Functions (cont.) 3-input majority function A B C F 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1 Logical expression form F = A B + B C + A C

Logical Equivalence All three circuits implement F = A B function

Logical Equivalence (cont.) Proving logical equivalence of two circuits Derive the logical expression for the output of each circuit Show that these two expressions are equivalent Two ways: You can use the truth table method For every combination of inputs, if both expressions yield the same output, they are equivalent Good for logical expressions with small number of variables You can also use algebraic manipulation Need Boolean identities

Logical Equivalence (cont.) Derivation of logical expression from a circuit Trace from the input to output Write down intermediate logical expressions along the path

Logical Equivalence (cont.) Proving logical equivalence: Truth table method A B F1 = A B F3 = (A + B) (A + B) (A + B) 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1

Boolean Algebra

Boolean Algebra (cont.)

Boolean Algebra (cont.) Proving logical equivalence: Boolean algebra method To prove that two logical functions F1 and F2 are equivalent Start with one function and apply Boolean laws to derive the other function Needs intuition as to which laws should be applied and when Practice helps Sometimes it may be convenient to reduce both functions to the same expression Example: F1= A B and F3 are equivalent

Logic Circuit Design Process A simple logic design process involves Problem specification Truth table derivation Derivation of logical expression Simplification of logical expression Implementation

Deriving Logical Expressions Derivation of logical expressions from truth tables sum-of-products (SOP) form product-of-sums (POS) form SOP form Write an AND term for each input combination that produces a 1 output Write the variable if its value is 1; complement otherwise OR the AND terms to get the final expression POS form Dual of the SOP form

Deriving Logical Expressions (cont.) 3-input majority function A B C F 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1 SOP logical expression Four product terms Because there are 4 rows with a 1 output F = A B C + A B C + A B C + A B C

Deriving Logical Expressions (cont.) 3-input majority function A B C F 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1 POS logical expression Four sum terms Because there are 4 rows with a 0 output F = (A + B + C) (A + B + C) (A + B + C) (A + B + C)

Logical Expression Simplification Algebraic manipulation Use Boolean laws to simplify the expression Difficult to use Don’t know if you have the simplified form

Algebraic Manipulation Majority function example A B C + A B C + A B C + A B C = A B C + A B C + A B C + A B C + A B C + A B C We can now simplify this expression as B C + A C + A B A difficult method to use for complex expressions Added extra

Implementation Using NAND Gates Get an equivalent expression A B + C D = A B + C D Using de Morgan’s law A B + C D = A B . C D Can be generalized Majority function A B + B C + AC = A B . BC . AC Idea: NAND Gates: Sum-of-Products, NOR Gates: Product-of-Sums

Implementation Using NAND Gates (cont.) Majority function

Introduction to Combinational Circuits Output depends only on the current inputs Combinational circuits provide a higher level of abstraction Help in reducing design complexity Reduce chip count We look at some useful combinational circuits

Multiplexers Multiplexer 4-data input MUX 2n data inputs n selection inputs a single output Selection input determines the input that should be connected to the output 4-data input MUX

4-data input MUX implementation Multiplexers (cont.) 4-data input MUX implementation

Multiplexers (cont.) MUX implementations

Multiplexers (cont.) Example chip: 8-to-1 MUX

Efficient implementation: Majority function Multiplexers (cont.) Efficient implementation: Majority function

Demultiplexer (DeMUX) Demultiplexers Demultiplexer (DeMUX)

Decoders Decoder selects one-out-of-N inputs

Logic function implementation Decoders (cont.) Logic function implementation (Full Adder)

Comparator Used to implement comparison operators (= , > , < ,  , )

4-bit magnitude comparator chip Comparator (cont.) A=B: Ox = Ix (x=A<B, A=B, & A>B) 4-bit magnitude comparator chip

Serial construction of an 8-bit comparator Comparator (cont.) Serial construction of an 8-bit comparator

1-bit Comparator x>y CMP x=y x<y x y x y x>y x=y x<y

8-bit comparator xn>yn x>y CMP xn=yn x=y xn<yn x<y x y

Adders Half-adder Full-adder Adds two bits Produces a sum and carry Problem: Cannot use it to build larger inputs Full-adder Adds three 1-bit values Like half-adder, produces a sum and carry Allows building N-bit adders Simple technique Connect Cout of one adder to Cin of the next These are called ripple-carry adders

Adders (cont.)

A 16-bit ripple-carry adder Adders (cont.) A 16-bit ripple-carry adder

Adders (cont.) Ripple-carry adders can be slow Carry lookahead adders Delay proportional to number of bits Carry lookahead adders Eliminate the delay of ripple-carry adders Carry-ins are generated independently C0 = A0 B0 C1 = A0 B0 A1 + A0 B0 B1 + A1 B1 . . . Requires complex circuits Usually, a combination carry lookahead and ripple-carry techniques are used

1-bit Arithmetic and Logic Unit Preliminary ALU design 2’s complement Required 1 is added via Cin

1-bit Arithmetic and Logic Unit (cont.) Final design

Arithmetic and Logic Unit (cont.) 16-bit ALU

Arithmetic and Logic Unit (cont’d) 4-bit ALU