Download lecture9 - Clarkson University

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
EE365
Adv. Digital Circuit Design
Clarkson University
Lecture #9
Math Units
ROMs
Topics
•
•
•
•
Lect #9
Comparators
Adders
Multipliers
ROMs
Rissacher EE365
Equality Comparators
• 1-bit comparator
• 4-bit comparator
EQ_L
Lect #9
Rissacher EE365
8-bit Magnitude
Comparator
Lect #9
Rissacher EE365
Other
conditions
Lect #9
Rissacher EE365
Adders
• Basic building block is “full adder”
– 1-bit-wide adder, produces sum and carry
outputs
• Truth table:
Lect #9
X
Y
Cin
S
Cout
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
1
0
1
0
0
1
0
0
0
1
0
1
1
1
Rissacher EE365
Full-adder circuit
Lect #9
Rissacher EE365
Ripple adder
• Speed limited by carry chain
• Faster adders eliminate or limit carry chain
– 2-level AND-OR logic ==> 2n product terms
– 3 or 4 levels of logic, carry look-ahead
Lect #9
Rissacher EE365
74x283
4-bit
adder
• Uses carry
look-ahead
internally
Lect #9
Rissacher EE365
“generate”
“half sum”
“propagate”
Lect #9
carry-in from
previous stage
Rissacher EE365
Ripple
carry
between
groups
Lect #9
Rissacher EE365
Look-ahead
carry between
groups
Lect #9
Rissacher EE365
Subtraction
• Subtraction is the same as addition of
the two’s complement.
• The two’s complement is the bit-by-bit
complement plus 1.
• Therefore, X – Y = X + Y + 1 .
– Complement Y inputs to adder, set Cin to 1.
– For a borrow, set Cin to 0.
Lect #9
Rissacher EE365
Full subtractor = full adder, almost
Lect #9
Rissacher EE365
Multipliers
• 8x8 multiplier
Lect #9
Rissacher EE365
Full-adder
array
Lect #9
Rissacher EE365
Faster
carry
chain
Lect #9
Rissacher EE365
Read-Only Memories
Lect #9
Rissacher EE365
Why “ROM”?
• Program storage
– Boot ROM for personal computers
– Complete application storage for embedded
systems.
• Actually, a ROM is a combinational circuit,
basically a truth-table lookup.
– Can perform any combinational logic function
– Address inputs = function inputs
– Data outputs = function outputs
Lect #9
Rissacher EE365
Logic-inROM
example
Lect #9
Rissacher EE365
4x4
multiplier
example
Lect #9
Rissacher EE365
Internal
ROM
structure
PDP-11 boot ROM
(64 words, 1024 diodes)
Lect #9
Rissacher EE365
Two-dimensional decoding
?
Lect #9
Rissacher EE365
Larger example, 32Kx8 ROM
Lect #9
Rissacher EE365
Today’s ROMs
• 256K bytes, 1M byte, or larger
• Use MOS transistors
Lect #9
Rissacher EE365
EEPROMs, Flash PROMs
• Programmable
and erasable
using floating-gate
MOS transistors
Lect #9
Rissacher EE365
Typical commercial EEPROMs
Lect #9
Rissacher EE365
EEPROM programming
• Apply a higher voltage to force bit change
– E.g., VPP = 12 V
– On-chip high-voltage “charge pump” in newer
chips
• Erase bits
– Byte-byte
– Entire chip (“flash”)
– One block (typically 32K - 66K bytes) at a time
• Programming and erasing are a lot slower
than reading (milliseconds vs. 10’s of
nanoseconds)
Lect #9
Rissacher EE365
Microprocessor EPROM application
Lect #9
Rissacher EE365
ROM
control
and I/O
signals
Lect #9
Rissacher EE365
Next time
• Latches
• Flip Flops
• Clocking
Lect #9
Rissacher EE365
Related documents