Boolean Algebra and Digital Logic 2009, University of Colombo School of Computing

Similar documents
EE40 Lec 15. Logic Synthesis and Sequential Logic Circuits

Digital Logic Appendix A

Chapter 7 Logic Circuits

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

Sample Test Paper - I

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

Digital Logic: Boolean Algebra and Gates. Textbook Chapter 3

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

ENGG 1203 Tutorial - 2 Recall Lab 2 - e.g. 4 input XOR. Parity checking (for interest) Recall : Simplification methods. Recall : Time Delay

Fundamentals of Boolean Algebra

CHAPTER1: Digital Logic Circuits Combination Circuits

MC9211 Computer Organization

Philadelphia University Student Name: Student Number:

Fundamentals of Digital Design

EEE130 Digital Electronics I Lecture #4

XI STANDARD [ COMPUTER SCIENCE ] 5 MARKS STUDY MATERIAL.

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

Combinational Logic. By : Ali Mustafa

Systems I: Computer Organization and Architecture

Design of Sequential Circuits

CHAPTER 7. Exercises 17/ / /2 2 0

KUMARAGURU COLLEGE OF TECHNOLOGY COIMBATORE

Save from: cs. Logic design 1 st Class أستاذ المادة: د. عماد

UNIVERSITI TENAGA NASIONAL. College of Information Technology

Logic and Boolean algebra

SAU1A FUNDAMENTALS OF DIGITAL COMPUTERS

DIGITAL LOGIC CIRCUITS

Cs302 Quiz for MID TERM Exam Solved

Boolean Algebra, Gates and Circuits

DIGITAL LOGIC CIRCUITS

WORKBOOK. Try Yourself Questions. Electrical Engineering Digital Electronics. Detailed Explanations of

CMPE12 - Notes chapter 1. Digital Logic. (Textbook Chapter 3)

Digital Logic (2) Boolean Algebra

Vidyalankar S.E. Sem. III [CMPN] Digital Logic Design and Analysis Prelim Question Paper Solution

Sequential Logic. Rab Nawaz Khan Jadoon DCS. Lecturer COMSATS Lahore Pakistan. Department of Computer Science

Department of Electrical & Electronics EE-333 DIGITAL SYSTEMS

Adders, subtractors comparators, multipliers and other ALU elements

CS/COE0447: Computer Organization and Assembly Language

CSC9R6 Computer Design. Practical Digital Logic

BOOLEAN ALGEBRA. Introduction. 1854: Logical algebra was published by George Boole known today as Boolean Algebra

Lecture 6: Manipulation of Algebraic Functions, Boolean Algebra, Karnaugh Maps

CS470: Computer Architecture. AMD Quad Core

Adders, subtractors comparators, multipliers and other ALU elements

Appendix B. Review of Digital Logic. Baback Izadi Division of Engineering Programs

Philadelphia University Student Name: Student Number:

CMPE12 - Notes chapter 2. Digital Logic. (Textbook Chapters and 2.1)"

Part 1: Digital Logic and Gates. Analog vs. Digital waveforms. The digital advantage. In real life...

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

S.Y. Diploma : Sem. III [CO/CM/IF/CD/CW] Digital Techniques

Lecture 22 Chapters 3 Logic Circuits Part 1

Week-I. Combinational Logic & Circuits

The Design Procedure. Output Equation Determination - Derive output equations from the state table

Schedule. ECEN 301 Discussion #25 Final Review 1. Date Day Class No. 1 Dec Mon 25 Final Review. Title Chapters HW Due date. Lab Due date.

Latches. October 13, 2003 Latches 1

Digital Logic. CS211 Computer Architecture. l Topics. l Transistors (Design & Types) l Logic Gates. l Combinational Circuits.

Introduction to Karnaugh Maps

Unit II Chapter 4:- Digital Logic Contents 4.1 Introduction... 4


ELEC Digital Logic Circuits Fall 2014 Sequential Circuits (Chapter 6) Finite State Machines (Ch. 7-10)

Chapter 5. Digital systems. 5.1 Boolean algebra Negation, conjunction and disjunction

CS/COE1541: Introduction to Computer Architecture. Logic Design Review. Sangyeun Cho. Computer Science Department University of Pittsburgh

DIGITAL LOGIC CIRCUITS

Review for Test 1 : Ch1 5

1 Boolean Algebra Simplification

211: Computer Architecture Summer 2016

ELEN Electronique numérique

UNIT 8A Computer Circuitry: Layers of Abstraction. Boolean Logic & Truth Tables

ELCT201: DIGITAL LOGIC DESIGN

3. Complete the following table of equivalent values. Use binary numbers with a sign bit and 7 bits for the value

DE58/DC58 LOGIC DESIGN DEC 2014

Synchronous Sequential Logic

Unit 7 Sequential Circuits (Flip Flop, Registers)

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS6201 DIGITAL PRINCIPLES AND SYSTEM DESIGN

Total Time = 90 Minutes, Total Marks = 50. Total /50 /10 /18

Appendix A: Digital Logic. Principles of Computer Architecture. Principles of Computer Architecture by M. Murdocca and V. Heuring

Digital Logic Design ABC. Representing Logic Operations. Dr. Kenneth Wong. Determining output level from a diagram. Laws of Boolean Algebra

UNIT II COMBINATIONAL CIRCUITS:

Combinational Logic Design Combinational Functions and Circuits

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified) State any two Boolean laws. (Any 2 laws 1 mark each)

XOR - XNOR Gates. The graphic symbol and truth table of XOR gate is shown in the figure.

CHW 261: Logic Design

Propositional Logic. Logical Expressions. Logic Minimization. CNF and DNF. Algebraic Laws for Logical Expressions CSC 173

Simplifying Logic Circuits with Karnaugh Maps

This form sometimes used in logic circuit, example:

Sequential Circuits Sequential circuits combinational circuits state gate delay

ELE2120 Digital Circuits and Systems. Tutorial Note 9

King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department

S.Y. Diploma : Sem. III [DE/ED/EI/EJ/EN/ET/EV/EX/IC/IE/IS/IU/MU] Principles of Digital Techniques

UNIT 4 MINTERM AND MAXTERM EXPANSIONS

(Boolean Algebra, combinational circuits) (Binary Codes and -arithmetics)

Gates and Flip-Flops

Chapter 7. Sequential Circuits Registers, Counters, RAM

Synchronous Sequential Circuit

Minimization techniques

11.1 As mentioned in Experiment 10, sequential logic circuits are a type of logic circuit where the output of

CS/COE0447: Computer Organization

CPE100: Digital Logic Design I

ELC224C. Karnaugh Maps

Reg. No. Question Paper Code : B.E./B.Tech. DEGREE EXAMINATION, NOVEMBER/DECEMBER Second Semester. Computer Science and Engineering

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

Transcription:

IT 204 Section 3.0 Boolean Algebra and Digital Logic

Boolean Algebra 2

Logic Equations to Truth Tables X = A. B + A. B + AB A B X 0 0 0 0 3

Sum of Products The OR operation performed on the products of the AND operation Fill the corresponding cells with for each product, the other cells with 0 X = ( A. B) + A =, A = 0 ( A. B) + ( A. B) A B X 0 0 0 B =, B = 0 0 0 4

Product of Sums The AND operation performed on the sums of the OR operation Fill the corresponding cells with 0 for each sum, the other cells with Y = ( A + B).( A + B) A B X 0 0 A = 0, A = 0 B = 0, B = 0 0 0 5

Truth Tables to Logic Equations A B X 0 0 0 0 0 0 Sum of Products - consider s Consider A=,B= X = ( A. B) + ( A. B) Product of sums consider 0s Consider A=0,B=0 X = ( A + B).( A + B) 6

Your Turn: Exercise Convert the following equation which is in the form of Product-of-sums into the form of Sum-of-products f ( ABCD) = ( A + B + C)( A + B + C + D)( A + B + D)( A + C) 7

8 Answer: Exercise ). ( ).. ( )... ( ).. ( ) ( ). ( ).. ( )... ( ).. ( ) ( ) ( ) ( ) ( ) ( ) ( ) )( )( )( ( ) ( ) )( )( )( ( ) ( AC A B D A B C D A B C ABCD f AC A B D A B C D A B C ABCD f C A D B A D C B A C B A ABCD f C A D B A D C B A C B A ABCD f C A D B A D C B A C B A ABCD f + + + = + + + = + + + + + + + + + + + = + + + + + + + + = + + + + + + + + =

Boolean Postulates 0. 0 = 0 + = 0 + 0 = 0. =. 0 = 0. = 0 + 0 = 0 + = 9

Laws of Boolean Algebra Commutative Law A + B = B + A A B = B A Associate Law (A + B) + C = A + (B + C) (A B) C = A (B C) 0

Laws of Boolean Algebra Distributive Law A (B + C) = A B + A C A + (BC) = (A + B) (A + C) Identity Law A + A = A A. A = A

Laws of Boolean Algebra Redundancy Law A + AB = A A (A + B) = A Demorgan s Theorem. ( A + B) ( A. B ) = = A. B A + B 2

Laws of Boolean Algebra. A. B + A. B = A ( A + B)( A + B) = A. A + 0 = A A.0 = 0 3

Laws of Boolean Algebra. + A =. A = A. A + A = A. A = 0 4

Laws of Boolean Algebra. A + A. B = A + B A( A + B) = AB 5

Implementation of Boolean Functions A Boolean function can be realised in either SOP or POS form At this point, it would seem that the choice would depend on whether the truth table contains more s and 0s for the output function The SOP has one term for each, and the POS has one term for each 0 6

Implementation of Boolean Functions However, there are other considerations: It is generally possible to derive a simpler Boolean expression from truth table than either SOP or POS It may be preferable to implement the function with a single gate type (NAND or NOR) 7

Implementation of Boolean Functions The significance of this is that, with a simpler Boolean expression, fewer gates will be needed to implement the function Methods that can be used to achieve simplification are: Algebraic Simplification Karnaugh Maps 8

Your Turn: Algebraic Simplification Simplify the following equation using Boolean algebra laws f ( ABC) = ( A + B + C)( A + BC ) 9

Answer: Algebraic Simplification f ( ABC) = ( A + B + C)( A + BC ) f ( ABC) = AA + ABC + AB + BBC + AC + BCC f ( ABC) = A( + BC + B + C) + BC + BCC f ( ABC) = A + BC 20

Karnaugh Maps For purposes of simplification, the Karnaugh map is a convenient way of representing a Boolean function of a small number (up to 4 to 6) of variables The map is an array of 2 n squares, representing the possible combinations of values of n binary variables 2

Karnaugh Maps The map can be used to represent any Boolean function in the following way: Each square corresponds to a unique product in the sum-of-products form. With a value corresponding to the variable and a 0 value corresponding to the NOT of that variable 22

Karnaugh Maps: 2 Values B A 0 0 0 X = A. B + A. B + AB 23

Karnaugh Maps: 2 Values The AB corresponds to the fourth square in the Figure For each such production in the function, is placed in the corresponding square AB 00 0 0 F = AB + AB 24

Karnaugh Maps: 3 Values C AB 00 0 0 0 0 0 0 0 X = A. B. C + A. B. C + A. B. C + A. B. C 25

Karnaugh Maps: 4 Values CD AB 00 0 0 00 0 0 0 0 0 0 0 0 0 X = A. B. C. D + A. B. C. D + A. B. C. D + A. B. C. D + A. B. C. D + A. B. C. D + A. B. C. D + A. B. C. D 26

Karnaugh Maps: Exercise Simplify the following Karnaugh Map using Boolean equations (Write your answers in both SOP and POS) AB C 00 0 0 0 0 0 0 0 27

Karnaugh Maps: Answer ( A. B. C) + ( A. B. C) + ( A. B. C) + ( A. B. C) A B + BC ( A + B + C).( A + B + C).( A + B + C).( A + B + C) ( B + C).( A + B) C AB 00 0 0 0 0 0 0 0 28

Karnaugh Maps: Exercise 2 Simplify the following Karnaugh Map using Boolean equations (Write your answers in both SOP and POS) AB CD 00 0 0 00 0 0 0 0 0 0 0 0 0 0 0 29

Karnaugh Maps: Answer ( A BCD) + ( ABCD) + ( ABCD) + ( ABCD) + ( ABCD) + ( ABCD) + ( ABC D) B D + BCD + ABD AB CD 00 0 0 00 0 0 0 0 0 0 0 0 0 0 0 30

Karnaugh Maps: Answer ( A + B + C + D).( A + B + C + D).( A + B + C + D).( A + B + C + D). ( A + B + C + D).( A + B + C + D).( A + B + C + D).( A + B + C + D). ( A + B + C + D) ( B + D).( B + D).( A + C + D) AB CD 00 0 0 00 0 0 0 0 0 0 0 0 0 0 0 3

Simplified Labeling of Karnaugh Maps The labeling used in figure emphasizes the relationship between variables and the rows and columns of the map The two rows embraced by the symbol A are those in which the variable A has the value ; the rows not embraced by the symbol A are those in which A is 0 A C B D 32

Simplified Labeling of Karnaugh Maps Once the map of a function is created, we can often write a simple algebraic expression for it by noting the arrangement of the s on the map The principle is as follows: Any two squares that are adjacent differ in only one of the variables If two adjacent squares both have an entry of, then the corresponding product terms differ in only one variable In such a case, the two terms can be merged by eliminating that variable 33

Simplified Labeling of Karnaugh Maps For example, in following FIGURE, the two adjacent squares correspond to the two terms ABCD and ABCD The function expressed is ABCD + ABCD = ABD CD AB 34

Simplified Labeling of Karnaugh Maps This process can be extended in several ways: First, the concept of adjacent can be extended to include wrapping around the edge of the map Thus, the top square of a column is adjacent to the bottom square, and the leftmost square of a row is adjacent to the rightmost square Second, we can group not just 2 squares but 2 n adjacent squares, that is, 4, 8, etc 35

Your turn: Karnaugh Maps CD AB 36

Answer: Karnaugh Maps CD AB BCD 37

Your turn: Karnaugh Maps CD AB 38

Answer: Karnaugh Maps CD AB ABD 39

Your turn: Karnaugh Maps CD AB 40

Answer: Karnaugh Maps CD AB AB 4

Your turn: Karnaugh Maps CD AB 42

Answer: Karnaugh Maps CD AB BC 43

Your turn: Karnaugh Maps CD AB 44

Answer: Karnaugh Maps CD AB A 45

Your turn: Karnaugh Maps CD AB 46

Answer: Karnaugh Maps CD AB C 47

Simplified Labeling of Karnaugh Maps In attempting to simplify, first look for the largest grouping possible: When you are circling groups, you are allowed to use the same more than once If any isolated s remain after the groupings, then each of these is circled as a group of s Finally, before going from the map to a simplified Boolean expression, any group of s that is completely overlapped by other groups can be eliminated 48

Karnaugh Maps: Overlapping Groups BC CD 00 0 0 A 0 00 0 0 AB 00 0 F = AB + BC 0 F = BCD +ACD 49

Your turn: Karnaugh Maps CD 0 0 0 0 AB 0 0 0 0 50

Answer: Karnaugh Maps CD AB 0 0 0 0 0 0 0 F=AC + AB + BCD F=(A+C).(A+B).(B+C+D) 0 5

Drawing a Circuit 52

Drawing a Circuit B+AC 53

Drawing a Circuit B+AC 54

Logic Operators 55

Logic Operations Basic logic operators and logic gates Boolean algebra Combinational Circuits Basic circuit design 56

Basic Logic Operators and Logic Gates AND OR NOT XOR (Exclusive OR) NOR NAND XNOR 57

Buffer A B 0 0

AND Operation. Operator ^ Operator A. B = A ^ B A B A. B 0 0 0 0 0 0 0

OR Operation + Operator v Operator A + B = A v B A B A + B 0 0 0 0 0

NOT Operation ~ Operator Operator A = A = ~ A = A' A A 0 0

XOR Operation Operator A B A B A B 0 0 0 0 0 0

NAND Operation ( A. B) = ( A. B)' A B ( A. B) 0 0 0 0 0

NOR Operation ( A + B) = ( A + B)' A B ( A + B) 0 0 0 0 0 0 0

XNOR Operation ( A B) A B 0 0 ( A B) 0 0 0 0

Drawing Logic Gates In addition to the basic gates, gates with 3,4, or more inputs can be used E.g. x + y + z can be implemented with a single OR gate with 3 inputs 66

Drawing Logic Gates X = ( A + B) C

Drawing Logic Gates X = A + ( B. C) + D

Drawing Logic Gates X = ( A. B) + ( A. C)

Drawing Logic Gates X = ( A + B).( C + D). C

Reducing Logic Gates Reducing the number of inputs The number of inputs to a gate can be reduced by connecting two (or more) inputs together The diagram shows a 3-input AND gate operating as a 2-input AND gate 7

Reducing Logic Gates Reducing the number of inputs Reducing a NOT gate from a NAND or NOR gate The diagram shows this for a 2-input NAND gate 72

Logic Gates Typically, not all gate types are used in implementation Design and fabrication are simpler if only one or two types of gates are used Therefore, it is important to identify functionally complete sets of gates This means that any Boolean function can be implemented using only the gates in the set 73

Logic Gates The following are functionally complete sets: AND, OR, NOT AND, NOT OR, NOT NAND NOR 74

Logic Gates AND, OR, and NOT gates constitute a functionally complete set, since they represent the 3 operations of Boolean algebra For the AND and NOT gates to form a functionally complete set, there must be a way to synthesize the OR operation from the AND and NOT operations A + B = A. B A OR B = NOT( ( NOT A) AND ( NOT B) ) 75

Logic Gates Similarly, the OR and NOT operations are functionally complete because they can be synthesize the AND operation A. B = A + B A AND B = NOT( ( NOT A) OR ( NOT B) ) 76

Logic Gates The AND, OR and NOT functions can be implemented solely with NAND gates, and the same thing for NOR gates. For this reason, digital circuits can be, and frequently are, implemented solely with NAND gates or solely with NOR gates 77

Logic Gates The diagram shows how the NOT function can be implemented solely with NAND gate A A 78

Logic Gates The diagram shows how the AND function can be implemented solely with NAND gate A B A A. B A. B 79

Logic Gates The diagram shows how the OR function can be implemented solely with NAND gate A A A + B B B 80

Logic Gates Gate Equivalent in NAND gates NOT AND OR NOR 8

Your turn Draw a diagram that shows how the NOT function can be implemented solely with NOR gate 82

Logic Gates The diagram shows how the NOT function can be implemented solely with NOR gate A A 83

Your turn Draw a diagram that shows how the OR function can be implemented solely with NOR gate 84

Logic Gates The diagram shows how the OR function can be implemented solely with NOR gate A B A + B A + B 85

Your turn Draw a diagram that shows how the AND function can be implemented solely with NOR gate 86

Logic Gates The diagram shows how the AND function can be implemented solely with NOR gate A A A. B B B 87

Substituting Gates in an Logic System 88

Substituting Gates in an Logic System 89

Substituting Gates in an Logic System 90

Combinational Circuits 9

Combinational Logic Also called combinatorial logic A type of logic circuit whose output is a function of the present input only 92

Half Adder Finds the sum of two bits The sum can be found using the XOR operation and the carry using the AND operation 93

Full Adder We can change our half adder into to a full adder by including gates for processing the carry bit The truth table for a full adder is: 94

Converting a Half Adder into a Full Adder 95

Ripple-carry Adder (I) Just as we combined half adders to make a full adder, full adders can be connected in series The carry bit ripples from one adder to the next; hence, this configuration is called a ripple-carry adder O 5 O O 0 96

Ripple-carry Adder (II) Digits of first number Digits of second number /2 /2 /2 /2 Carry /2 /2 /2 Sum 97

Adder Adders (and other arithmetic circuits) are usually drawn like this in block diagrams A3-A0 A0 B3-B0 B0 inputs collections of parallel, related wires like this are known as buses; ; they carry multi-bit values between components + out3-out0 out0 output 98

Decoder Selects a memory location according a binary value placed on the address lines of a memory bus Decoders with n inputs can select any of 2 n locations 99

2-to-4 Decoder If x = 0 and y =, which output line is enabled? 00

Multiplexer A multiplexer does the opposite of a decoder Selects a single output from several inputs The particular input chosen for output is determined by the value of the multiplexer s control lines To select among n inputs, log 2 n control lines are needed 0

4-to- Multiplexer If S0 = and S = 0, which input is selected as output? 02

Arithmetic Computers need to do more than just addition arithmetic: + * / % logic: & ~ << >> Need a circuit that can select operation to perform 03

Arithmetic Logic Unit (ALU) A B op 0 op op op + * 2 & 3 << more operations here <<... Multiplexer: : a combinatorial circuit which selects exactly one input MUX 0 2 3.. out op op selects operation: 0 = add, = multiply,... 04

Arithmetic Logic Unit (ALU) op 0 op A = 5 B = 2 op op + * 2 & 3 << more operations here <<... for example: compute 5 << 2 other results also computed but ignored by multiplexer MUX 0 2 3.. out = 60 op = 3 05

Sequential Logic Memory 06

Sequential Logic Circuits Combinational logic circuits are perfect for situations which require the immediate application of a Boolean function to a set of inputs But, here are times when we need a circuit to change its value with consideration to its current state as well as its inputs These circuits have to remember their current state Sequential logic circuits provide this functionality 07

Sequencing Events Sequential logic circuits require a means by which events can be sequenced State changes are controlled by clocks A clock is a special circuit that sends electrical pulses through a circuit Clocks produce electrical waveforms such as this one State changes occur in sequential circuits only when the clock ticks 08

Feedback in Sequential Logic Circuits Sequential circuits rely on feedback to retain their state values Feedback in digital circuits occurs when an output is looped back to the input Example, If Q is 0 it will always be 0, if it is, it will always be 09

SR Flip-flop (Set-Reset) (I) The behavior of an SR flipflop is described by a characteristic table Q(t) output at time t Q(t+) output after the next clock pulse 0

SR Flip-flop: Block Diagram Flip-flops are often drawn like this in block diagrams S and R input S Q and Q = output Q CK CK is read/write ( clock( clock because this input is connected to the computer s processor clock) R Q

SR Flip-flop (II) The SR flip-flop has three inputs: S, R and Q(t) When both S and R are, the SR flip-flop is unstable 2

JK Flip-flop (Jack Kilby) Modified version of the SR flip-flop to provide a stable state when both inputs are 3

JK Flip-flop: Binary Counter The low-order bit is complemented at each clock pulse Whenever it changes from to 0, the next bit is complemented, and so on through the other flip-flops 4

D Flip-flop (Data) Fundamental circuit of computer memory Used to store bit Can be implemented with gates Not combinatorial logic because current output may depend on previous state Example of sequential logic current output depends on inputs and prior output 5

D Flip-flop data in NOR gate: OR gate followed by NOT gate data out read/write read/write control: 0 = read, = write 6

D Flip-flop: Writing data in = Try changing data in to 0 and watch data out 0 0 0 0 data out = read/write = (write) when read/write =, data out = data in 7

D Flip-flop: Reading data in =?? 0 0 0?? 0 0 0 data out = read/write = 0 (read) when read/write = 0, no signals in box can change - data out holds value regardless of data in 8

D Flip-flop: Block Diagram D = data in Q = data out D Q CK CK is read/write ( clock( clock because this input is often connected to the computer s processor clock) 9

D Flip-flop: 4-bit Register A register stores data inside the CPU 20

Memory Memory can store many bits independently register banks contain many flip-flops Need to identify which bit (flip-flop) to read or write Give each flip-flop a unique number (address) 2

Memory: Circuit Diagram Decoder: feeds input to selected output, 0 to all others data in D Q CK address 0 0 DEC 2 3... D CK D CK Q Q address address 2 0 2 3... MUX data out address D CK Q address 3 rd/wr... millions more flip-flops flops... 22

Memory: Writing data in 0 D CK Q address 0 Writing value to flip-flop flop at address 2 0 DEC 2 3... 0 D CK D CK Q Q address address 2 0 2 3... MUX data out address 2 0 D CK Q address 3... millions more flip-flops flops... rd/wr 23

Memory: Reading data in We just wrote this value 0 D CK Q address 0 Reading value from flip-flop flop at address 2 0 DEC 2 3... 0 0 D CK D CK Q Q address 2 3 address 2 0... MUX data out address 2 0 0 D CK rd/wr Q address 3... millions more flip-flops flops... 24

Memory: 4-words, 3 bits/word 25

Summary (I) Computers are implementations of Boolean logic Boolean functions are completely described by Truth Tables Logic gates are small circuits that implement Boolean operators The basic gates are AND, OR and NOT The universal gates are NOR and NAND 26

Summary (II) Computer circuits consist of combinational logic circuits and sequential logic circuits Combinational circuits produce outputs (almost) immediately when their inputs change Sequential circuits have internal states as well as combinations of input and output logic The outputs may also depend on the states left behind by previous inputs Sequential circuits require clocks to control their changes of state The basic sequential circuit unit is the flip-flop 27

Thank You 28