Sequentiële schakelingen - UvA · 2018-07-04 · Set-Reset latch 1 1 0 0 Strijdig 1 0 1 0 Set 0 1...

Post on 24-May-2020

1 views 0 download

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