memory; sequential & clocked circuits; finite state machines cos 116: 3/25/2008 sanjeev arora
Post on 20-Dec-2015
216 views
TRANSCRIPT
![Page 1: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/1.jpg)
Memory; Sequential & Clocked Circuits;
Finite State MachinesCOS 116: 3/25/2008Sanjeev Arora
![Page 2: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/2.jpg)
Midterm grade Criterion:
58-65: A55-57: A-50-54: B+45-49: B
40-44: B-33-39: C26--32: D25 and below: F
![Page 3: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/3.jpg)
Recap: Boolean Logic
Boolean Expression E = S AND D
Truth table:Value of E for every possible D, S. TRUE=1; FALSE= 0. 001
011
110
000
ESD
Boolean Circuit ES
D
Truth table has rows ifthe number ofvariables is k
€
2k
![Page 4: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/4.jpg)
Boole’s reworking of Clarke’s “proof” of existence of God(see handout) General idea: Try to prove that Boolean expressions
E1, E2, …, Ek cannot simultaneously be true
Method: Show E1· E2 · … · Ek = 0
Discussion: What exactly does Clarke’s “proof” prove? How convincing is such a proof to you?
Also: Do Google search for “Proof of God’s Existence.”
![Page 5: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/5.jpg)
Combinational circuit for binary addition?
Want to design a circuit to add any two N-bit integers.
2511001
+ 2911101
54 110110
Is the truth table method useful for N=64?
![Page 6: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/6.jpg)
Modular design
Have small numberof basic components.
Put them together to achieve desired functionality
Basic principle of modern industrial design; recurring theme in next few lectures.
![Page 7: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/7.jpg)
Modular design for N-bit adder
Suffices to use N 1-bit adders!
cN-1 cN-2 … c1 c0
aN-1 aN-2 … a1 a0
+ bN-1 bN-2 … b1 b0
sN sN-1 sN-2 … s1 s0
Carry bits
![Page 8: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/8.jpg)
1-bit adder
(Carry from previous adder)
Do yourself: Write truth table, circuit.
ak bk
ck1-ADDck+1
sk
Carry bit for
next adder.
![Page 9: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/9.jpg)
A Full Adder (from handout)
![Page 10: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/10.jpg)
Timing Diagram
5V
0VTime
X
5V
0VTime
output
NOT gate
delay
![Page 11: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/11.jpg)
Memory
Rest of this lecture:How boolean circuits can have“memory”.
![Page 12: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/12.jpg)
What do you understand by ‘memory”?
How can you tell that a 1-year old child has it?
Behaviorist’s answer: His/her actions depend upon past events.
![Page 13: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/13.jpg)
Why combinational circuits have no “memory”
Wires: transmit voltage(and hence value)
Boolean gates connected by wires
Important: no loops allowed
Output is determined by current inputs;no “memory” of past values of the inputs.
Today: Circuits with loops; aka “Sequential Circuits”
![Page 14: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/14.jpg)
Matt likes Sue but he doesn’t like changing his mind Represent with a circuit:
Matt will go to the party if Sue goes or if he already wanted to go
S
M Is this well-defined?
![Page 15: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/15.jpg)
Sequential Circuits
Circuits with AND, OR and NOT gates.
Cycles are allowed (ie outputs can feed
back into inputs)
Can exhibit “memory”.
Sometimes may have “undefined” values
![Page 16: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/16.jpg)
Enter Rita
Matt will go to the party if Sue goes OR if the following holds: if Rita does not go and he already wanted to go.
?
M
S
R
MR, S: “control” inputs
What combination of R, S changes M?
![Page 17: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/17.jpg)
R-S Flip-FlopS
R
M
![Page 18: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/18.jpg)
A more convenient form of memory
“Data Flip-Flop” or “D flip flop”;Can be implemented using R-S flip flop.
No“undefined”outputs ever!
![Page 19: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/19.jpg)
“Register” with 4 bits of memory
![Page 20: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/20.jpg)
What controls the “Write” signal?
![Page 21: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/21.jpg)
The “symphony” inside a computer
Clock
Combinational circuit
Memory
ClockedSequentialCircuit(akaSynchronousCircuits)
![Page 22: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/22.jpg)
Clocked Sequential Circuits
![Page 23: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/23.jpg)
Synchronous Sequential Circuit(aka Clocked Sequential Circuit)
CLOCK
INPUTSCombinational
CircuitMemory
(flip-flops)
![Page 24: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/24.jpg)
Shorthand
Combinational Circuit
Memory(flip-flops)
CLK
This stands for “lots of wires”
![Page 25: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/25.jpg)
Clock Speeds
Heinrich Hertz1857-94
1974 Intel 8080 2 MHz(Mega = Million)
1981 Original IBM PC 4.77 MHz
1993 Intel Pentium 66 MHz
2005 Pentium 4 3.4 GHz(Giga = Billion)
![Page 26: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/26.jpg)
What limits clock speed?
Combinational Circuit
Memory(flip-flops)
CLK
Delays in combinational logic (remember the adder)During 1 clock cycle of Pentium 4, light travels: 4 inches
![Page 27: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/27.jpg)
Finite State Machines
Read handout (Brian Hayes article) for next time.
![Page 28: Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora](https://reader037.vdocuments.us/reader037/viewer/2022110207/56649d4d5503460f94a2c716/html5/thumbnails/28.jpg)
Example: State diagram for automatic door
Closed Open
Detected PersonNo Person
Detected
Detected Person
No Person Detected