Professional Documents
Culture Documents
Digital Systems
based on textbook
Contemporary Logic Design, 2nd Edition
by R. H. Katz and G. Borriello
COMMONWEALTH OF AUSTRALIA
Copyright Regulations 1969
WARNING
This material has been reproduced and communicated to you by or on behalf of
Monash University pursuant to Part VB of the Copyright Act 1968 (the Act).
The material in this communication may be subject to copyright under the Act. Any
further reproduction or communication of this material by you may be the subject of
copyright protection under the Act.
Do not remove this notice.
I - Introduction
ECE2072/TRC2300/TEC2172: Textbook
Prescribed Text:
Contemporary Logic
Design 2e
By Katz and Borriello
I - Introduction
ECE2072/TRC2300/TEC2172
Overview: Why study logic design?
Obvious reasons
I - Introduction
Networking and
communications
Scientific equipment
Embedded products
I - Introduction
I - Introduction
I - Introduction
State 0
Relay logic
CMOS logic
Transistor transistor logic (TTL)
Fiber Optics
Dynamic RAM
Nonvolatile memory (erasable)
Programmable ROM
Bubble memory
Magnetic disk
Compact disc
I - Introduction
Circuit Open
0.0-1.0 volts
0.0-0.8 volts
Light off
Discharged capacitor
Trapped electrons
Fuse blown
No magnetic bubble
No flux reversal
No pit
State 1
Circuit Closed
2.0-3.0 volts
2.0-5.0 volts
Light on
Charged capacitor
No trapped electrons
Fuse intact
Bubble present
Flux reversal
Pit
example: digital logic where voltage < 0.8v is a 0 and > 2.0v is a 1
store a value
recall a previously stored value
sense
AND
drive
sense
I - Introduction
What is design?
I - Introduction
its switching elements are vacuum tubes (a big advance from relays)
I - Introduction
10
Scale
Time
Cost
I - Introduction
11
representation:
assignment:
data operations:
control:
sequential statements:
conditionals:
loops:
procedures:
I - Introduction
12
Z
close switch (if A is 1 or asserted)
and turn on light bulb (Z)
Z
open switch (if A is 0 or unasserted)
and turn off light bulb (Z)
Z A
I - Introduction
13
Switches (contd)
A
AND
Z A and B
A
B
A
OR
Z A or B
A
B
B
I - Introduction
A B
0
1
0
1
0
0
0
1
A B
0
1
0
1
0
1
1
1
0
0
1
1
0
0
1
1
14
Switching networks
A
Switch settings
Z A or B
I - Introduction
15
Relay networks
conducting
path composed
of switches
closes circuit
current flowing through coil
magnetizes core and causes normally
closed (nc) contact to be pulled open
when no current flows, the spring of the contact
returns it to its normal position
16
I - Introduction
17
MOS transistors
G
D
n-channel
open when voltage at G is low
closes when:
voltage(G) > voltage (S) +
I - Introduction
p-channel
closed when voltage at G is low
opens when:
voltage(G) < voltage (S)
18
MOS networks
what is the
relationship
between x and y?
3v
Y
0v
I - Introduction
0 volts
3 volts
3 volts
0 volts
19
I - Introduction
20
I - Introduction
scope of TRC2300
21
system
outputs
I - Introduction
22
Buffer, NOT
A
AND, NAND
A
B
easy to implement
with CMOS transistors
(the switches we have
available and use most)
OR, NOR
A
B
I - Introduction
23
Sequential logic
Sequential systems
look at the outputs only after sufficient time has elapsed for the
system to make its required changes and settle down
I - Introduction
24
I - Introduction
25
Combinational:
input A, B
wait for clock edge
observe C
wait for another clock edge
observe C again: will stay the same
A
C
B
Sequential:
Clock
input A, B
wait for clock edge
observe C
wait for another clock edge
observe C again: may be different
I - Introduction
26
Abstractions
I - Introduction
27
I - Introduction
28
Implementation in software
integer number_of_days ( month, leap_year_flag)
{
switch (month) {
case 1: return (31);
case 2: if (leap_year_flag == 1) then return (29)
else return (28);
case 3: return (31);
...
case 12: return (31);
default: return (0);
I - Introduction
29
Implementation as a
combinational digital system
Encoding:
Behavior:
combinational
truth table
specification
month
leap
0010
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
111
leap
0
1
d28
0
1
0
0
0
0
0
0
0
0
0
0
0
d29
0
0
1
0
0
0
0
0
0
0
0
0
0
d30
0
0
0
0
1
0
1
0
0
1
0
1
0
d31
1
0
0
1
0
1
0
1
1
0
1
0
1
30
symbol
for not
0
0
0
1
symbol
for and
I - Introduction
symbol
for or
0010
0010
0011
0100
...
1100
1101
111
0000
0
1
1
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
31
d28 = m8'm4'm2m1'leap
d29 = m8'm4'm2m1'leap
d30 = (m8'm4m2'm1') + (m8'm4m2m1') +
(m8m4'm2'm1) + (m8m4'm2m1)
= (m8'm4m1') + (m8m4'm1)
d31 = (m8'm4'm2'm1) + (m8'm4'm2m1) +
(m8'm4m2'm1) + (m8'm4m2m1) +
(m8m4'm2'm1') + (m8m4'm2m1') +
(m8m4m2'm1')
I - Introduction
32
d28 = m8'm4'm2m1'leap
d29 = m8'm4'm2m1'leap
d30 = (m8'm4m2'm1') + (m8'm4m2m1') +
(m8m4'm2'm1) + (m8m4'm2m1)
d31 = (m8'm4'm2'm1) + (m8'm4'm2m1) +
(m8'm4m2'm1) + (m8'm4m2m1) +
(m8m4'm2'm4') + (m8m4'm2m1') +
(m8m4m2'm1')
I - Introduction
33
Summary
I - Introduction
34