Sequentiële schakelingen - UvA · 2018-07-04 · Set-Reset latch 1 1 0 0 Strijdig 1 0 1 0 Set 0 1...
Transcript of Sequentiële schakelingen - UvA · 2018-07-04 · Set-Reset latch 1 1 0 0 Strijdig 1 0 1 0 Set 0 1...
1Ben Bruidegom
1
Sequentiële schakelingen
� Toestand uitgang bepaald door:waarde op de ingangen én ....
a
Qb
2Ben Bruidegom
2
Sequentiële schakelingen
� Toestand uitgang bepaald door:waarde op de ingangen én vorige toestand van de uitgang(en)
a
Qb
Kenmerk: Uitgang linker poort � ingang rechter poort en vice versa
3Ben Bruidegom
3
Flipflops/latches
� Set-Reset latch
� D-latch
� D-flipflop
� JK-flipflop
4Ben Bruidegom
4
NOR-poort
NOR-poort
011
001
010
100
Zwv
Eén van de ingangen 1 � Uitgang 0
5Ben Bruidegom
5
Set-Reset latch Q
11
01
10
00
ToestandNQQResetSet
1
0
6Ben Bruidegom
6
Set-Reset latch
Q
11
01
Reset1010
00
ToestandNQQResetSet
1
01
0
NQ =
7Ben Bruidegom
7
Set-Reset latch
11
01
Reset1010
00
ToestandNQQResetSet
0
01
0
8Ben Bruidegom
8
Set-Reset latch
11
01
Reset1010
GeheugenNQQ00
ToestandNQQRes
et
Set
0
01
0
9Ben Bruidegom
9
Set-Reset latch
11
01
Reset1010
GeheugenNQQ00
ToestandNQQResetSet
0
1
10Ben Bruidegom
10
Set-Reset latch
11
Set0101
Reset1010
GeheugenNQQ00
ToestandNQQResetSet
0
10
1
11Ben Bruidegom
11
Set-Reset latch
11
Set0101
Reset1010
00
ToestandNQQResetSet
0
00
1
12Ben Bruidegom
12
Set-Reset latch
11
Set0101
Reset1010
GeheugenNQQ00
ToestandNQQResetSet
0
00
1
13Ben Bruidegom
13
Set-Reset latch
11
Set0101
Reset1010
GeheugenNQQ00
ToestandNQQResetSet
1
1
14Ben Bruidegom
14
Set-Reset latch
Strijdig0011
Set0101
Reset1010
GeheugenNQQ00
ToestandNQQResetSet
1
10
0
‘Set-actie’ is Q-uitgang 1 maken door Set-ingang even 1 te maken:‘Reset-actie’ is Q-uitgang 0 maken door Reset-ingang even 1 te maken:
15Ben Bruidegom
15
Tabel Set-Reset latch
Ongewenst00111
Ongewenst00011
Set01101
Set01001
Reset10110
Reset10010
Geheugen01100
Geheugen10000
FunctieNQQniewQvorigResetSet
16Ben Bruidegom
16
D-latch
17Ben Bruidegom
17
Q
D-latch
11
01
x0
ToestandNQQDataEnable
x
0
18Ben Bruidegom
18
Q
D-latch
11
01
GeheugenNQQx0
ToestandNQQDataEnable
x
0
0
0
19Ben Bruidegom
19
Q
D-latch
11
01
GeheugenNQQx0
ToestandNQQDataEnable
0
1
20Ben Bruidegom
20
Q
D-latch
11
Reset (Load 0)1001
GeheugenNQQx0
ToestandNQQDataEnable
0
1
0
11
1
0
21Ben Bruidegom
21
Q
D-latch
Set (Load 1)0111
Reset (Load 0)1001
GeheugenNQQx0
ToestandNQQDataEnable
1
1
1
00
0
1
22Ben Bruidegom
22
State diagrams
State (cirkel)
Transition (pijl)
23Ben Bruidegom
23
Toestandsdiagram D-latch
Q = {0,1} verzameling toestanden
ED = {00,01,10,11} invoeralfabet
0 є Q is de initiële toestand
δ = is de overgangsfunctie
Set1011
Reset0101
Set1111
Reset0001
Qnew = δ (E, D, Qlast)
Memory1110
Memory0010
Memory1100
Memory0000
ToestandQnewQlastDataEnable
24Ben Bruidegom
24
Toestandsdiagram D-latch
Q = {01,10} verzameling toestanden
ED = {00,01,10,11} invoeralfabet
01є Q is de initiële toestand
δ = is de overgangsfunctie
Set1011
Reset0101
Set1111
Reset0001
Q = δ (E, D, Q)
Memory1110
Memory0010
Memory1100
Memory0000
ToestandQnewQlastDataEnable
25Ben Bruidegom
25
Toestandsdiagram D-latch
Q = {01,10} verzameling toestanden
ED = {00,01,10,11} invoeralfabet
01є Q is de initiële toestand
δ = is de overgangsfunctie
Set1011
Reset0101
Set1111
Reset0001
Q = δ (E, D, Q)
Memory1110
Memory0010
Memory1100
Memory0000
ToestandQnewQlastDataEnable
26Ben Bruidegom
26
Level triggerered & Edge triggered
0
1 ���� 0 -overgang
neergaande klokflank ↓
0 ���� 1 -overgang
opgaande klokflank ↑
1
27Ben Bruidegom
27
State diagram D-flipflop
Tabel 5.4
Load 1 Set11↑1
Load 1 Set10↑1
Load 0 Reset01↑0
Load 0 Reset00↑0
FunctieQn+1QnklokDn
28Ben Bruidegom
28
State diagram D-flipflop
Tabel 5.4
Load 1 Set11↑1
Load 1 Set10↑1
Load 0
Reset
01↑0
Load 0
Reset
00↑0
FunctieQn+1QnklokDn
29Ben Bruidegom
29
Symbolen latches en flipflops
30Ben Bruidegom
30
JK-flipflop
nQ
Tabel 5.5: JK-flipflop
ToggleQn11
Load 11Qn01
Load 00Qn10
MemoryQnQn0 0
Mode of operationQn+1QnKnJn
31Ben Bruidegom
31
JK-flipflop
Tabel JK-flipflop
Q11
Q01
Q10
Q0 0
Qn+1DBAQnKnJn
0
0
32Ben Bruidegom
32
JK-flipflop
Tabel JK-flipflop
Q11
Q01
Q10
QQQ0Q0 0
Qn+1DBAQnKnJn
Q
0
Q0
0
33Ben Bruidegom
33
JK-flipflop
Tabel JK-flipflop
Q11
Q01
Q10
QQQ0Q0 0
Qn+1DBAQnKnJn
?
?
?1
1
34Ben Bruidegom
34
JK-flipflop
Tabel JK-flipflop
QQ0QQ11
Q01
Q10
QQQ0Q0 0
Qn+1DBAQnKnJn
Q
0
Q
0
0
35Ben Bruidegom
35
Set-up & Hold-time
Set-up time: minimale tijd dat een signaal op een ingang aanwezig moet zijn voor de klokflank verschijnt.
Hold time: minimale tijd dat een signaal op een ingang
aanwezig moet blijven nadat de klokflank is
verschenen.
36Ben Bruidegom
36
Set-up time
Set-up time
37Ben Bruidegom
37
Practicum
� Opgaven paragraaf 5.1 .. 5.4
38Ben Bruidegom
38
Finite state machines
Moore Machine
39Ben Bruidegom
39
Finite State Machine
Moore Machine
Next State
Current State
40Ben Bruidegom
40
Finite state machines
Next State
Current State
Mealy Machine
41Ben Bruidegom
41
State Diagram
42Ben Bruidegom
42
Verkeerslicht
Tabel 5.7: Next State function voor een stoplicht
2 auto’s, licht wordt rood0111
2 auto’s, licht wordt groen1011
NZauto, licht wordt rood0101
NZauto, licht blijft rood0001
OWauto, licht blijft groen1110
OWauto, licht wordt groen1010
Geen auto, licht blijft groen1100
Geen auto, licht blijft rood0000
Toestand licht oost-west route 1 = groenQnextQcurrentOWautoNZauto
.QNZ.OW..OW.QNZQ.OW.NZ.QOW.NZQnext +++=
43Ben Bruidegom
43
Vereenvoudigen van Boole-expressie
.Q. NZOW)OW.Q.( NZ .OW.Q NZ.Q OW . NZ =+=+
.Q . OW.Q NZQnext +=
.QNZ.OW..OW.QNZQ.OW.NZ.QOW.NZQnext +++=
44Ben Bruidegom
44
.Q . OW.Q NZQnext +=
45Ben Bruidegom
45
Uitbreiding State Diagram t.b.v. Output Function
Output Function
46Ben Bruidegom
46
.Q . OW.Q NZQnext +=
47Ben Bruidegom
47
Tweede voorbeeld: 2-bits Up/Down counter
• Als = 1 dan wordt de teller door iedere positieve klokflank met 1 verhoogd. De telcyclus is: 00, 01, 10, 11, 00, 01 etc.
• Als = 0 dan wordt de teller door iedere positieve klokflank met 1 verlaagd. De telcyclus is dan: 00, 11, 10, 01, 00, 11 etc.
• Hoeveel States zijn er?
• State Diagram
• Tabel
• Boole-uitdrukking
• Implementatie
ingang.DownUp/ −DownUp/
DownUp/
DownUp/
48Ben Bruidegom
48
State Diagram
�Hoeveel D-flipflops zijn er nodig om deze states te bewaren?
Q = {00, 01,10, 11} verzameling toestanden
= {Up, Down} invoeralfabet
00є Q is de initiële toestand
δ = is de overgangsfunctie
DownUp/
49Ben Bruidegom
49
Tabel
111
011
101
001
110
010
100
000
nLnHLHU
50Ben Bruidegom
50
Tabel
00111
11011
01101
10001
110
010
100
000
nLnHLHU
51Ben Bruidegom
51
Tabel
00111
11011
01101
10001
01110
10010
00100
11000
nLnHLHU
52Ben Bruidegom
52
Boole-uitdrukkingen
.LU.H..LHU..H.LUL.H.UnH +++=
.LU.H.L.HU.L.H.UL.H.U nL +++=
00111
11011
01101
10001
01110
10010
00100
11000
nLnHLHU
53Ben Bruidegom
53
Vereenvoudigen
=+++
=+++=
)LH..LHU.(H.L)L.H.(U
LU.H..LHU..H.LUL.H.UnH
54Ben Bruidegom
54
Vereenvoudigen
H.LUL)H(UL)U.(HLH.U
)LH..LHU.(H.L)L.H.(U
LU.H..LHU..H.LUL.H.UnH
⊕⊕=⊕⊕=⊕+⊕
=+++
=+++=
55Ben Bruidegom
55
Intermezzo
1
0
0
1
1
1
0
0
1
0
0
1
0
1
1
0
0
1
0
1
0
0
1
1
ba .baba. + a
babaa.bb.a ⊕=⊕=+
a.bb.a + ba ⊕
baba..ba ⊕=+
56Ben Bruidegom
56
Vereenvoudigen
.LU)U.(LLU.L.U
H)H.(LU.H)H.(L.U
LU.H.L.HU.L.H.UL.H.U nL
=+=+
=+++
=+++=
57Ben Bruidegom
57
Implementatie
H)LU(nH ⊕⊕= .LnL =
58Ben Bruidegom
58
Set-Reset Latch met NAND-gates
De Morgan Laag actieve ingangen
59Ben Bruidegom
59
D-latch met NAND-poorten
E Data Q Q operatie
1 1 1 0 Load 1
1 0 0 1 Load 0
0 x 1 1 Memory
60Ben Bruidegom
60
D-flipflop type 74LS74
61Ben Bruidegom
61
10-15 F
62Ben Bruidegom
62
63Ben Bruidegom
63
Organisatie DRAM & SRAM
Decoder
D
e
c
o
d
e
r
64Ben Bruidegom
64
16 Megabit DRAM (4M *4)
65Ben Bruidegom
65
Pin configuration 16 M-bit DRAM
66Ben Bruidegom
66
512 * 512 *1* 8
262.144 * 8 bits
≈ 256 kByte DRAM
67Ben Bruidegom
67
Edge triggered flipflops
SRAM
DRAM
68Ben Bruidegom
68
Practicum
Paragraaf 5.6 opdracht 1 en 2
HuiswerkOpdracht 3: Branch Predictor