Top Banner
1 Logic Gates TARUNGEHLOTS
34

Logicgates

Aug 10, 2015

Download

Documents

Tarun Gehlot
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Logicgates

1

Logic GatesTARUNGEHLOTS

Page 2: Logicgates

2

Review of Boolean algebra

Just like Boolean logic

Variables can only be 1 or 0 Instead of true / false

Page 3: Logicgates

3

Review of Boolean algebra

Not is a horizontal bar above the number 0 = 1 1 = 0

Or is a plus 0+0 = 0 0+1 = 1 1+0 = 1 1+1 = 1

And is multiplication 0*0 = 0 0*1 = 0 1*0 = 0 1*1 = 1

_

_

Page 4: Logicgates

4

Review of Boolean algebra

Example: translate (x+y+z)(xyz) to a Boolean logic expression

(xyz)(xyz)

We can define a Boolean function: F(x,y) = (xy)(xy)

And then write a “truth table” for it:

_ _ _

x y F(x,y)

1 1 0

1 0 0

0 1 0

0 0 0

Page 5: Logicgates

5

Quick survey

I understand the basics of Boolean algebra

a) Absolutely!b) More or lessc) Not reallyd) Boolean what?

Page 6: Logicgates

6

Basic logic gates

Not

And

Or

Nand

Nor

Xor

xx

xy

xy xy

xyz

zx+yx

yxy

x+y+z

z

xy

xy

x+yxy

xÅyxy

Page 7: Logicgates

7

Find the output of the following circuit

Answer: (x+y)y Or (xy)y

xy

x+y

y

(x+y)y

__

xy

y

Page 8: Logicgates

8

x

y

Find the output of the following circuit

Answer: xy Or (xy) ≡ xy

x

y

x y x y

_ _ ___

Page 9: Logicgates

9

Quick survey

I understand how to figure out what a logic gate does

a) Absolutely!b) More or lessc) Not reallyd) Not at all

Page 10: Logicgates

10

Write the circuits for the following Boolean algebraic expressions

a) x+y

xyxyxy

__

x x+y

Page 11: Logicgates

11

xyxyxy

Write the circuits for the following Boolean algebraic expressions

b) (x+y)x_______

xy

x+yx+y (x+y)x

Page 12: Logicgates

12

Writing xor using and/or/not

p q (p q) ¬(p q)

x y (x + y)(xy)

x y xy1 1 0

1 0 1

0 1 1

0 0 0

xy

x+y

xy xy

(x+y)(xy)

____

Page 13: Logicgates

13

Quick survey

I understand how to write a logic circuit for simple Boolean formula

a) Absolutely!b) More or lessc) Not reallyd) Not at all

Page 14: Logicgates

14

Converting decimal numbers to binary

53 = 32 + 16 + 4 + 1= 25 + 24 + 22 + 20

= 1*25 + 1*24 + 0*23 + 1*22 + 0*21 + 1*20

= 110101 in binary= 00110101 as a full byte in binary

211= 128 + 64 + 16 + 2 + 1= 27 + 26 + 24 + 21 + 20

= 1*27 + 1*26 + 0*25 + 1*24 + 0*23 + 0*22 + 1*21 + 1*20

= 11010011 in binary

Page 15: Logicgates

15

Converting binary numbers to decimal

What is 10011010 in decimal?10011010 = 1*27 + 0*26 + 0*25 + 1*24 + 1*23 +

0*22 + 1*21 + 0*20

= 27 + 24 + 23 + 21

= 128 + 16 + 8 + 2 = 154

What is 00101001 in decimal? 00101001 = 0*27 + 0*26 + 1*25 + 0*24 + 1*23 +

0*22 + 0*21 + 1*20

= 25 + 23 + 20

= 32 + 8 + 1 = 41

Page 16: Logicgates

16

A bit of binary humor

Available for $15 at http://www.thinkgeek.com/ tshirts/frustrations/5aa9/

Page 17: Logicgates

17

Quick survey

I understand the basics of converting numbers between decimal and binary

a) Absolutely!b) More or lessc) Not reallyd) Not at all

Page 18: Logicgates

18

How to add binary numbers

Consider adding two 1-bit binary numbers x and y 0+0 = 0 0+1 = 1 1+0 = 1 1+1 = 10

Carry is x AND y

Sum is x XOR y

The circuit to compute this is called a half-adder

x y Carry Sum0 0 0 00 1 0 11 0 0 11 1 1 0

Page 19: Logicgates

19

The half-adder

Sum = x XOR y

Carry = x AND y

xy Sum

Carry

xy Sum

Carry

Page 20: Logicgates

20

Using half adders

We can then use a half-adder to compute the sum of two Boolean numbers

1 1 0 0

+ 1 1 1 0010?

001

Page 21: Logicgates

21

Quick survey

I understand half addersa) Absolutely!b) More or lessc) Not reallyd) Not at all

Page 22: Logicgates

22

How to fix this

We need to create an adder that can take a carry bit as an additional input

Inputs: x, y, carry in Outputs: sum, carry out

This is called a full adder Will add x and y with a half-adder Will add the sum of that to the

carry in

What about the carry out? It’s 1 if either (or both): x+y = 10 x+y = 01 and carry in = 1

x y c carry sum

1 1 1 1 1

1 1 0 1 0

1 0 1 1 0

1 0 0 0 1

0 1 1 1 0

0 1 0 0 1

0 0 1 0 1

0 0 0 0 0

Page 23: Logicgates

23

The full adder

The “HA” boxes are half-adders

HAX

Y

S

C

HAX

Y

S

C

xy

c

c

s

HAX

Y

S

C

HAX

Y

S

C

xy

c

Page 24: Logicgates

24

The full adder

The full circuitry of the full adder

xy

s

c

c

Page 25: Logicgates

25

Adding bigger binary numbers

Just chain full adders together

HAX

Y

S

C

FAC

Y

X

S

C

FAC

Y

X

S

C

FAC

Y

X

S

C

x1y1

x2y2

x3y3

x0y0

s0

s1

s2

s3c

Page 26: Logicgates

26

Adding bigger binary numbers

A half adder has 4 logic gatesA full adder has two half adders plus a OR gate

Total of 9 logic gates

To add n bit binary numbers, you need 1 HA and n-1 FAsTo add 32 bit binary numbers, you need 1 HA and 31 FAs

Total of 4+9*31 = 283 logic gates

To add 64 bit binary numbers, you need 1 HA and 63 FAs

Total of 4+9*63 = 571 logic gates

Page 27: Logicgates

27

Quick survey

I understand (more or less) about adding binary numbers using logic gates

a) Absolutely!b) More or lessc) Not reallyd) Not at all

Page 28: Logicgates

28

More about logic gates

To implement a logic gate in hardware, you use a transistor

Transistors are all enclosed in an “IC”, or integrated circuit

The current Intel Pentium IV processors have 55 million transistors!

Page 29: Logicgates

29

Pentium math error 1 Intel’s Pentiums

(60Mhz – 100 Mhz) had a floating point error

Graph of z = y/x

Intel reluctantlyagreed to replace them in 1994

Graph from http://kuhttp.cc.ukans.edu/cwis/units/IPPBR/pentium_fdiv/pentgrph.html

Page 30: Logicgates

30

Pentium math error 2 Top 10 reasons to buy a Pentium:

10 Your old PC is too accurate 8.9999163362 Provides a good alibi when the IRS calls 7.9999414610 Attracted by Intel's new "You don't need to know

what's inside" campaign

6.9999831538 It redefines computing--and mathematics!5.9999835137 You've always wondered what it would be like to

be a plaintiff

4.9999999021 Current paperweight not big enough 3.9998245917 Takes concept of "floating point" to a new level 2.9991523619 You always round off to the nearest hundred

anyway 1.9999103517 Got a great deal from the Jet Propulsion

Laboratory 0.9999999998 It'll probably work!!

Page 31: Logicgates

31

Flip-flops

Consider the following circuit:

What does it do?

Page 32: Logicgates

32

Memory

A flip-flop holds a single bit of memory The bit “flip-flops” between the two NAND

gates

In reality, flip-flops are a bit more complicated

Have 5 (or so) logic gates (transistors) per flip-flop

Consider a 1 Gb memory chip 1 Gb = 8,589,934,592 bits of memory That’s about 43 million transistors!

In reality, those transistors are split into 9 ICs of about 5 million transistors each

Page 33: Logicgates

33

Quick survey

I felt I understood the material in this slide set…

a) Very wellb) With some review, I’ll be goodc) Not reallyd) Not at all

Page 34: Logicgates

34

Quick survey

The pace of the lecture for this slide set was…

a) Fastb) About rightc) A little slowd) Too slow