elektro- och informationsteknik...lunds tekniska högskola elektro- och informationsteknik edi610...

17
Digitala system EDI610 Elektro- och informationsteknik

Upload: others

Post on 20-Jan-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Elektro- och informationsteknik...Lunds Tekniska högskola Elektro- och Informationsteknik EDI610 Exempel –detektera tre ettor• I en bitström, x, ska förekomsten av tre ettor

Digitala system EDI610Elektro- och informationsteknik

Page 2: Elektro- och informationsteknik...Lunds Tekniska högskola Elektro- och Informationsteknik EDI610 Exempel –detektera tre ettor• I en bitström, x, ska förekomsten av tre ettor

Lunds Tekniska högskola Elektro- och Informationsteknik EDI610

Sekvensnät• En klass av kretsar med minnesfunktion

• För att kunna beskriv utsignalerna krävs kännedom om systemets tillstånd och beteende.

• Tillståndsdiagram, tillståndstabell , klocksignal och register

• D-vippor

• Sekvensmodellerna Moore och Mealy.

• Synkrona och asynkrona sekvensnät

• Finite State Machines FSM

Page 3: Elektro- och informationsteknik...Lunds Tekniska högskola Elektro- och Informationsteknik EDI610 Exempel –detektera tre ettor• I en bitström, x, ska förekomsten av tre ettor

Lunds Tekniska högskola Elektro- och Informationsteknik EDI610

Tillståndsdiagram

s0

s1

s2

s3

Realisering av en sekvenskrets börjar med att beskriva beteendet med tillstånd. Tillstånd Sx betecknas med en cirkelBörja med ett starttillståndGå till nästa tillstånd eller stanna kvar beroende på insignalenGenerera utsignaler i tillstånden (Moore) eller vid övergångarna (Mealy)

Nästa tillstånd

Stanna kvar

Page 4: Elektro- och informationsteknik...Lunds Tekniska högskola Elektro- och Informationsteknik EDI610 Exempel –detektera tre ettor• I en bitström, x, ska förekomsten av tre ettor

Lunds Tekniska högskola Elektro- och Informationsteknik EDI610

Beteendet av tillståndsdiagrammet kan realiseras av en sekvenskrets

D = D-vippan, realiserar minnet av systemet ( tillstånd)K = Kombinatoriska nätet ( Booleska funktioner)

Nuvarandetillstånd

Nästatillstånd

insignaler utsignaler

q q+

ux

clk

Page 5: Elektro- och informationsteknik...Lunds Tekniska högskola Elektro- och Informationsteknik EDI610 Exempel –detektera tre ettor• I en bitström, x, ska förekomsten av tre ettor

Lunds Tekniska högskola Elektro- och Informationsteknik EDI610

D-vippan, minneselementet

D

• D-vippan har en ingång ’D’ vars logiska värde överförs till ’Q’ när klockingången ’Clk’ går från ’låg’ till ’hög’

Q

Clk

QClk D Q+

0 X Q

0->1 0 1

0->1 1 1

1 X Q

Page 6: Elektro- och informationsteknik...Lunds Tekniska högskola Elektro- och Informationsteknik EDI610 Exempel –detektera tre ettor• I en bitström, x, ska förekomsten av tre ettor

Lunds Tekniska högskola Elektro- och Informationsteknik EDI610

Tillståndstabell

• Tabellbeskrivning av tillståndsgrafen. Innehåller ingen ny information.

Nuvarande tillstånd

Nästa tillstånd

Utsignal

Insignal x

start

nästa

nästa1

nästa2

start

0 1

nästa

nästa2

nästa1

nästanästa2start

start

u

000

1

Page 7: Elektro- och informationsteknik...Lunds Tekniska högskola Elektro- och Informationsteknik EDI610 Exempel –detektera tre ettor• I en bitström, x, ska förekomsten av tre ettor

Lunds Tekniska högskola Elektro- och Informationsteknik EDI610

Tillståndskodning

Kodning (0, 1)

q1q0

start 0 0

Nästa 0 1

Nästa1 1 0

Nästa2 1 1

Nuvarande tillstånd

Nästa tillstånd

Utsignal

Insignal x

00

01

10

11

00

0 1

01

11

10

011100

00

u

000

1

Ta fram booleska uttryck för q1+ , q0

+ och u (enligt tidigare)

Gray kodning och one-hot, andra typer av tillståndskodning

Page 8: Elektro- och informationsteknik...Lunds Tekniska högskola Elektro- och Informationsteknik EDI610 Exempel –detektera tre ettor• I en bitström, x, ska förekomsten av tre ettor

Lunds Tekniska högskola Elektro- och Informationsteknik EDI610

Mealy eller Moore

MealyMoore

x x

u u

q+q+ qqD DK K

KutKut

Utsignal beror endast av nuvarande tillstånd.q+ = f(q, x) och u = g(q)

Utsignalen beror både av nuvarande tillståndet och insignalenq+ = f(q, x) och u = g(q, x)

Page 9: Elektro- och informationsteknik...Lunds Tekniska högskola Elektro- och Informationsteknik EDI610 Exempel –detektera tre ettor• I en bitström, x, ska förekomsten av tre ettor

Lunds Tekniska högskola Elektro- och Informationsteknik EDI610

Exempel – detektera tre ettor

• I en bitström, x, ska förekomsten av tre ettor i följd detekteras. Utsignalen ska vara ’1’ när tre ettor hittats annars ’0’. Moore- och Mealytypen ska undersökas.

• Metod:

– Rita tillståndsgraf

– Koda tillstånden (’S0’ -> (0, 0) etc. och ange utsignalen)

– Skriv upp tilståndstabellen

– Gör Karnaugh-diagram för D-vipporna (q1+, q0+ och utsignalen)

– Minimera och teckna Booleska uttryck för qi+

– Realisera med vippor och grindar (eller i VHDL)

Page 10: Elektro- och informationsteknik...Lunds Tekniska högskola Elektro- och Informationsteknik EDI610 Exempel –detektera tre ettor• I en bitström, x, ska förekomsten av tre ettor

Lunds Tekniska högskola Elektro- och Informationsteknik EDI610

Exempel: detektera minst 3 ettor.

s0

s1s2

s3

Moore

1

1

1

1

100

0

0 0

0

0

Mealy

s0

s1 s2

1/01/0

1/1

0/0

0/0

0/0

Nuvarande tillstånd

Nästa tillstånd Utsignal

Insignal x

00 s0

01 s1

11 s2

10 s3

00 s0

0 1

00 s0

00 s0

u

0

0

0

1

01 s1

11 s2

10 s3

00 s0 10 s3

X q1q0/u

Nuvarande tillstånd

Nästa tillstånd

Insignal x

00 s0

01 s1

11 s2

--

00 s0/0

0 1

u

01 s1/0

00 s0/0

00 s0/0

--

11 s2/0

11 s2/1

--

x/u q1q0

Page 11: Elektro- och informationsteknik...Lunds Tekniska högskola Elektro- och Informationsteknik EDI610 Exempel –detektera tre ettor• I en bitström, x, ska förekomsten av tre ettor

Lunds Tekniska högskola Elektro- och Informationsteknik EDI610

0 0 0 0 0 0

0 0 1 0 0 0

0 1 0 - - -

0 1 1 0 0 0

1 0 0 0 1 0

1 0 1 1 1 0

1 1 0 - - -

1 1 1 1 1 1

x q1 q0 q1+ q0

+ u

0 0

0 1

0 1

- -11

00

01

10

0 1x

q1, q0

q1+

0 1

0 1

0 1

- -

11

00

01

10

0 1x

q1, q0

q0+

q1+= x q0

q0+= x

u = x q1

0 0

0 0

0 1

- -11

00

01

10

0 1x

q1, q0

u

Mealy

s0

s1 s2

1/01/0

1/1

0/0

0/0

0/0

Nuvarande tillstånd

Nästa tillstånd

Insignal x

00 s0

01 s1

11 s2

--

00 s0/0

0 1

u

01 s1/0

00 s0/0

00 s0/0

--

11 s2/0

11 s2/1

--

x/u q1q0

Page 12: Elektro- och informationsteknik...Lunds Tekniska högskola Elektro- och Informationsteknik EDI610 Exempel –detektera tre ettor• I en bitström, x, ska förekomsten av tre ettor

Lunds Tekniska högskola Elektro- och Informationsteknik EDI610

0 0 0 0 0

0 0 1 0 0

0 1 0 0 0

0 1 1 0 0

1 0 0 0 1

1 0 1 1 1

1 1 0 1 0

1 1 1 1 0

x q1 q0 q1+ q0

+

u

0

0

0

1

0 0

0 1

0 1

0 1

11

00

01

10

0 1

x

q1, q0

q1+

0 1

0 1

0 0

0 0

11

00

01

10

0 1

x

q1, q0

q0+

q1+= x q0 + x q1

q0+= x q1

u = q1 q0’

00

01

11

10s0

s1s2

s3

Moore

1

1

1

1

100

0

0 0

0

0

Nuvarande tillstånd

Nästa tillstånd Utsignal

Insignal x

00 s0

01 s1

11 s2

10 s3

00 s0

0 1

00 s0

00 s0

u

0

0

0

1

01 s1

11 s2

10 s3

00 s0 10 s3

X q1q0/u

Page 13: Elektro- och informationsteknik...Lunds Tekniska högskola Elektro- och Informationsteknik EDI610 Exempel –detektera tre ettor• I en bitström, x, ska förekomsten av tre ettor

Lunds Tekniska högskola Elektro- och Informationsteknik EDI610

Enable – också en insignal

• Enable, E, betyder tillåta, möjliggöra. ’Chip Enable’, CE, är en annan beteckning som används

• ’Enable’ i en sekvenskrets är en insignal som anger om kretsen ska utföra sin tänkta funktion eller stanna kvar i nuvarande tillstånd. Den behandlas som en insignal och är därför med i tillståndsbeskrivningen.

• Allmänt för alla typer av kretsar t.ex. minnen, AD-omvandlare, in- och utgångskretsar betyder ’Enable’ att kretsen blir aktiv.

Page 14: Elektro- och informationsteknik...Lunds Tekniska högskola Elektro- och Informationsteknik EDI610 Exempel –detektera tre ettor• I en bitström, x, ska förekomsten av tre ettor

Lunds Tekniska högskola Elektro- och Informationsteknik EDI610

Reset - nollställ

• ’Reset’ i sekvenskretsar gör att nästa tillstånd sätts till ett speciellt tillstånd, vanligen starttillståndet ’S0’.

• Synkron Reset behandlas som en insignal och är därför med i tillståndsbeskrivningen. Reset sker när klockan går hög.

• Asynkron Reset påverkar D-vipporna direkt via en extra ingång på dessa och sätter omedelbart ’Q’ till ’0’ oberoende av klockan.

Page 15: Elektro- och informationsteknik...Lunds Tekniska högskola Elektro- och Informationsteknik EDI610 Exempel –detektera tre ettor• I en bitström, x, ska förekomsten av tre ettor

Lunds Tekniska högskola Elektro- och Informationsteknik EDI610

Räknare – ett exempel på sekvensnät

• Räknare är ett sekvensnät vars tillstånd (och utsignal) är den binära koden: 0000, 0001, 0010, …, 1110, 1111, 0000, 0001, …

• Vid varje klockpuls tar räknaren ett steg i sekvensen.

• Räknare används t.ex. för att dela ned en hög klockfrekvens till en lägre t.ex. fClk -> fClk/10

Page 16: Elektro- och informationsteknik...Lunds Tekniska högskola Elektro- och Informationsteknik EDI610 Exempel –detektera tre ettor• I en bitström, x, ska förekomsten av tre ettor

Lunds Tekniska högskola Elektro- och Informationsteknik EDI610

Exempel – tvåbitars upp-räknare i binärkod med enable och reset (dominant).

E R Q1 Q0 Q1+

Q0+

0 0 0 0 0 0

0 0 0 1 0 1

0 0 1 0 1 0

0 0 1 1 1 1

0 1 0 0 0 0

0 1 0 1 0 0

0 1 1 0 0 0

0 1 1 1 0 0

E R Q1 Q0 Q1+

Q0+

1 0 0 0 0 1

1 0 0 1 1 0

1 0 1 0 1 1

1 0 1 1 0 0

1 1 0 0 0 0

1 1 0 1 0 0

1 1 1 0 0 0

1 1 1 1 0 0

Page 17: Elektro- och informationsteknik...Lunds Tekniska högskola Elektro- och Informationsteknik EDI610 Exempel –detektera tre ettor• I en bitström, x, ska förekomsten av tre ettor

Lunds Tekniska högskola Elektro- och Informationsteknik EDI610

Karnaugh-diagrammen för qi+

q1+

00 01 11 10

00 0 0 1 1

01 0 0 0 0

11 0 0 0 0

10 0 1 0 1

q1, q0

E, R

q0+

00 01 11 10

00 0 1 1 0

01 0 0 0 0

11 0 0 0 0

10 0 1 0 1

q1, q0

E, R

q1+ = E’R’q1 + R’q1 + ER’q1’q0 q0+ = E’R’q0 + R’q1’q0 + ER’q1q0’