- 80 Views
- Uploaded on
- Presentation posted in: General

Digital Logic

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Digital Logic

http://www.pds.ewi.tudelft.nl/~iosup/Courses/2011_ti1400_1.ppt

Basics of Boolean algebra and digital implementation

Sum of products form and digital implementation

Functional Units

Repeated Operations

Other Building Blocks

- Computers consist of digital (binary) circuits
- Unit of information: bit(Binary digIT), e.g. 0and 1
- There are two interpretations of 0and 1:
- as data values
- as truth values (true andfalse)

- By grouping bits together we obtain bit strings
- e.g<10001>
which can be given a specific meaning

- e.g<10001>
- For instance, we can represent non-negative numbers by bitstrings:

- We want a computer that can calculate, i.e transform strings into other strings:
1 +2 = 3 <01> <10> = <11>

- To calculate we need an algebrabeing able to use only two values
- George Boole (1854) showed that logic (or symbolic reasoning) can be reduced to a simple algebraic system

- Rules are the same as school algebra:
- There is, however, one exception:
!

Commutative Law

Distributive Law

Associative Law

- To see this we have to find out what the operations “+” and “.” mean in logic
- First the “.” operation: x.y(orx y)
- Suppose x means “black” and y means “cows”. Then, x.y means “black cows”
- Hence “.” implies the class of objects that has both properties. Also called ANDfunction.

- The “+” operation merges independent objects: x + y (or x y)
- Hence, ifx means “man” and y means “woman”
- Then x+y means “man or woman”
- Also called OR function

- Now suppose both objects are identical, for example x means “cows”
- Then x.x comprises no additional information
- Hence

- Next, we select “0” and “1” as the symbols in the algebra
- This choice is not arbitrary, since these are the only number symbols for which holds x2 = x
- What do these symbols mean in logic?
- “0” : Nothing
- “1”: Universe

- So 0.y = 0 and 1.y = y

- Also, if x is a class of objects, then 1-x is the complement of that class
- It holds that x(1-x) = x -x2 = x-x =0
- Hence, a class and its complement have nothing in common
- We denote 1-x as x

- A nice property of this system that we write any function f(x) as
- We can show this by observing that virtually every mathematical function can be written in polynomial form, i.e

- Now
- Hence,
- Let b = a0 and a = a0 + a1
- Then we have
- From this it follows that

- So
- More dimensional functions can be derived in an identical way:

- We apply this on the modulo-2 addition

- Same for modulo-2 multiplication

- Let X denote bitstring, e.g., <x4x3x2 x1>
- Any polynomial functionY=f(X)can be constructed using Boolean logic
- Also holds for functions with more arguments
- Functions can be put in table form or in formula form

- We use basic components to represent primary logic operations (called gates)
- Components are made from transistors

x

x

x+y

x.y

y

y

OR

AND

x

x

INVERT

- We can make networks of gates

x

y

EXOR

- Basics of Boolean algebra and digital implementation
- Sum of products form and digital implementation
- Functional Units
- Repeated Operations
- Other Building Blocks

simplify

f

x

y

- Logic expressions can often be minimized
- Saves components
- Example:

x y

- Alternative geometrical method

v w

Different drawing

y

w

v

x

- Some outputs are indifferent
- Can be used for minimization

de Morgan’s Laws

- NAND and NOR gates are universal
- They are easy to realize

- Basics of Boolean algebra and digital implementation
- Sum of products form and digital implementation
- Functional Units
- Repeated Operations
- Other Building Blocks

- Every network of gates has delays

transition time

1

input

0

1

propagation delay

output

0

time

Vcc

Gnd

nandgates

A

Y

ADD

B

Y

A,B

time

delay

- It would be very uneconomical to construct separate combinatorial circuits for every function needed
- Hence, functional units are parameterized
- A specific function is activated by a special control stringF

A

Y

F

B

F

A

B

F

F

Y

- Basics of Boolean algebra and digital implementation
- Sum of products form and digital implementation
- Functional Units
- Repeated Operations
- Other Building Blocks

- Y : = Y + Bi, i=1..n
- Repeated addition requires feedback
- Cannot be done without intermediate storage of results

Y

F

B

F

Y

F

B

F

= storage element

- Storage elements are not transient and are able to hold a logic value for a certain period of time

R

Qa

Qb

S

- In many circuits it is very convenient to have the state changed only at regular points in time
- This makes design of systems with memory elements easier
- Also, reasoning about the behavior of the system is easier
- This is done by a clock signal

clockperiod

Qn

C

Qn

D

- D flip flop samples at clock is high and stores if clock is low

DQn+1

00

11

state change

- In reality most systems are built such that the state only changes at rising edge of the clock pulse
- We also need a control signal to enable a change

enables a state change

I

R/W

C

C

I

C

D

R/W

Q

O

O

time

- Basics of Boolean algebra and digital implementation
- Sum of products form and digital implementation
- Functional Units
- Repeated Operations
- Other Building Blocks

I

R/W

I

I

I

C

C

D

C

D

C

D

C

D

Q

Q

Q

Q

O

O

O

O

A

B

Y = A if m=1

Y = B if m=0

m

MPLEX

Y

Y

Only output yA= 1, rest is 0

Decoder

A

a1

3

a1 a2#y

0 00

0 11

1 02

1 13

2

1

0

a2

Y

Only output yA= 1, rest is 0

Decoder

A

A

B

Y = A if m=1

Y = B if m=0

m

MPLEX

Y

b

y

a

m

- Comments?
- Questions?

Din

mplex

REG1

Dout

REG2

decoder

Address

REG3

REG4

R/W

preset

MPLEX

R/W

REG

INC

0001

output

- The counter example shows that systems have state
- The state of such systems depend on the current inputs and the sequence of previous inputs
- The state of a system is the union of the values of the memory elements of that system

code

S0

S1

S2

- We call the change from one state to another a statetransition
- Can be represented as a state diagram

x=0

S0

S1

x=1

S2

y

Y

x

y

z

Z

x

z

x

z

Z

Q

D

Y

y

Q

D

Outputs

Inputs

Combinatorial Logic

Delay elements

- Make State Diagram
- Make State Table
- Give States binary code
- Put state update functions in Karnaugh Map
- Make combinatorial circuit to realize functions