Professional Documents
Culture Documents
3-2
1
CuuDuongThanCong.com https://fb.com/tailieudientucntt
p-type MOS Transistor Logic Gates
p-type is complementary to n-type Use switch behavior of MOS transistors
• when Gate has positive voltage, to implement logical functions: AND, OR, NOT.
open circuit between #1 and #2
(switch open) Digital symbols:
• when Gate has zero voltage, • recall that we assign a range of analog voltages to each
short circuit between #1 and #2 digital (logic) symbol
(switch closed)
Gate = 1
For all inputs, make sure that output is either connected to GND or to +, In Out In Out
but not both!
0 V 2.9 V 0 1
2.9 V 0V 1 0
3-7 3-8
2
CuuDuongThanCong.com https://fb.com/tailieudientucntt
NOR Gate OR Gate
A B C
0 0 0
0 1 1
1 0 1
1 1 1
A B C
0 0 1
0 1 0 Add inverter to NOR.
1 0 0
1 1 0
Note: Serial structure on top, parallel on bottom. 3-9 3-10
A B C
0 0 1
0 1 1 Add inverter to NAND.
1 0 1
1 1 0
Note: Parallel structure on top, serial on bottom. 3-11 3-12
3
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Basic Logic Gates DeMorgan's Law
Converting AND to OR (with some help from NOT)
Consider the following gate:
To convert AND to OR
A B A B A ⋅B A ⋅B (or vice versa)
versa),
0 0 1 1 1 0 invert inputs and output.
0 1 1 0 0 1
1 0 0 1 0 1
1 1 0 0 0 1
Same as A+B!
3-13 3-14
DeMorgan's Law
• Convert AND to OR (and vice versa)
by inverting inputs and output
3-15 3-16
4
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Building Functions from Logic Gates Decoder
Combinational Logic Circuit n inputs, 2n outputs
• output depends only on the current inputs • exactly one output is 1 for each possible input pattern
• stateless
Sequential Logic Circuit
• output depends on the sequence of inputs (past and present)
• stores information (state) from past inputs
3-17 3-18
4-to-1 MUX
3-19 3-20
5
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Four-bit Adder Logical Completeness
Can implement ANY truth table with AND, OR, NOT.
A B C D
0 0 0 0
0 0 1 0 1. AND combinations
that yield a "1" in the
0 1 0 1
truth table.
0 1 1 0
1 0 0 0
1 0 1 1 2. OR the results
1 1 0 0 of the AND gates.
1 1 1 0
3-21 3-22
Sequential Circuit 0 1 1 0
1
• stores information
• output depends on stored information (state) plus input
1 0 0 1
¾so a given input might produce different outputs, 0
depending on the stored information 1 1
• example: ticket counter
¾advances when you push the button
¾output depends on previous state If both R and S are one, out could be either zero or one.
• useful for building “memory” elements and “state machines” • “quiescent” state -- holds its previous value
• note: if a is 1, b is 0, and vice versa
3-23 3-24
6
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Clearing the R-S latch Setting the R-S Latch
Suppose we start with output = 1, then change R to zero. Suppose we start with output = 0, then change S to zero.
1 1
0 1 1 0
1
1 0 0 1
0
1 Output changes to zero. 1 Output changes to one.
1 0
1 0 0 1
1
0 1 1 0
0
0 1
Then set R=1 to “store” value in quiescent state. 3-25 Then set S=1 to “store” value in quiescent state. 3-26
R=S=0
• both outputs equal one
• final state determined by electrical properties of gates
• Don’t do it!
3-27 3-28
7
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Register Representing Multi-bit Values
A register stores a multi-bit value. Number bits from right (0) to left (n-1)
• We use a collection of D-latches, all controlled by a common • just a convention -- could be left to right, but must be consistent
WE. Use brackets to denote range:
• When WE=1, n-bit value D is written to register. D[l:r] denotes bit l to bit r, from left to right
15 0
A = 0101001101010101
Memory 22 x 3 Memory
word select word WE input bits
Now that we know how to store bits, address
we can build a memory – a logical k × m array of
stored bits. write
enable
Add
Address Space:
S
k = 2n
number of locations locations •
(usually a power of 2) •
•
Addressability:
number of bits per location m bits
(e.g., byte-addressable) address
decoder
3-31 output bits 3-32
8
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Memory
More Memory Details
Organization (1)
This is a not the way actual memory is implemented.
• fewer transistors, much more dense,
relies on electrical properties
Logic diagram for a But the logical structure is very similar.
4 x 3 memory. • address decoder
• word select line
Each row is one of • word write enable
the four 3-bit words. Two basic kinds of RAM (Random Access Memory)
Static RAM (SRAM)
• fast, maintains data as long as power applied
Dynamic RAM (DRAM)
• slower but denser, bit storage decays – must be periodically
refreshed
3-33 Also, non-volatile memories: ROM, PROM, flash, … 3-34
State Machine 4 1 8 4 20 10
15
3-35 3-36
9
CuuDuongThanCong.com https://fb.com/tailieudientucntt
State State of Sequential Lock
The state of a system is a snapshot of Our lock example has four different states,
all the relevant elements of the system labelled A-D:
at the moment the snapshot is taken.
A: The lock is not open,
Examples: and no relevant operations have been performed.
• The state of a basketball g
game can be represented
p by
y B: The lock is not open,
p ,
the scoreboard. and the user has completed the R-13 operation.
¾Number of points, time remaining, possession, etc. C: The lock is not open,
• The state of a tic-tac-toe game can be represented by and the user has completed R-13, followed by L-22.
the placement of X’s and O’s on the board.
D: The lock is open.
3-37 3-38
3-39 3-40
10
CuuDuongThanCong.com https://fb.com/tailieudientucntt
The Clock Implementing a Finite State Machine
Frequently, a clock circuit triggers transition from Combinational logic
one state to the next. • Determine outputs and next state.
Storage elements
“1”
• Maintain state representation.
“0”
One time→ State Machine
Cycle
Inputs Combinational Outputs
At the beginning of each clock cycle, Logic Circuit
state machine makes a transition,
based on the current state and the external inputs. Storage
Clock Elements
• Not always required. In lock example, the input itself triggers a transition.
3-41 3-42
Examples:
• Sequential lock
¾Four states – two bits
During 1st phase (clock=1), During 2nd phase (clock=0), • Basketball scoreboard
previously-computed state next state, computed by ¾7 bits for each score, 5 bits for minutes, 6 bits for seconds,
becomes current state and is logic circuit, is stored in 1 bit for possession arrow, 1 bit for half, …
sent to the logic circuit. Latch A.
3-43 3-44
11
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Complete Example Traffic Sign State Diagram
A blinking traffic sign
• No lights on
• 1 & 2 on
3
• 1, 2, 3, & 4 on 4
1
• 1, 2, 3, 4, & 5 on 5
2
Switch on
• (repeat as long as switch
is turned on) Switch off
DANGER
MOVE
RIGHT State bit S1
State bit S0
Outputs
3-45 3-46
Transition on each clock cycle.
Lights 3 and 4 In S1 S0 S1 ’ S0 ’
Light 5
0 X X 0 0
S1 S0 Z Y X 1 0 0 0 1
0 0 0 0 0 1 0 1 1 0
0 1 1 0 0 1 1 0 1 1
1 0 1 1 0 1 1 1 0 0
Master-slave
1 1 1 1 1 flipflop
Whenever In=0, next state is 00.
3-47 3-48
12
CuuDuongThanCong.com https://fb.com/tailieudientucntt
From Logic to Data Path LC-3 Data Path
The data path of a computer is all the logic used to
process information. Combinational
• See the data path of the LC-3 on next slide. Logic
Combinational Logic
• Decoders -- convert instructions into control signals Storage
• Multiplexers -- select inputs and outputs
• ALU (Arithmetic and Logic Unit) -- operations on data
Sequential Logic
• State machine -- coordinate control signals and data movement
• Registers and latches -- storage elements State Machine
3-49 3-50
13
CuuDuongThanCong.com https://fb.com/tailieudientucntt