T6.3 Sekvensiell logikk Flashcards
- Sekvensiell logikk har
minne
- Utverdien i sekvensiell logikk er avhengig av
innverdier og tilstanden til enheten
- Hvordan implementerer man minne i sekvensiell logikk?
Ved å bruke utgangsverdiene til porter som inngangsverdiene - dette låser utgangsverdiene i en gitt tilstand
- Alle minne elementer lagrer tilstand som vil si at
output fra ethvert minne element avhenger av både input og verdien som har blitt lagret i minne elementet
- Alle logiske blokker som inneholder et minne element inneholder
tilstand og er sekvensielle
- Den enkleste typen minne elementer er
uten klokke
Hvordan oppfører en SR-lås seg?
Brukes til å holde på en enkelt bit tilstanden (0 eller 1). Den har to innganger:
S (Set): Setter utgangen til 1 når aktivert.
R (Reset): Setter utgangen til 0 når aktivert.
Hva er forskjellen på en lås og en vippe?
Hvordan de reagerer på klokkesignalet
Hvordan reagerer en lås på klokkesignalet?
Reagerer på input når klokkesignalet er høyt/lavt
Hvordan reagerer en vippe på klokkesignalet?
På stigende / synkende klokkeflanke
Hvordan oppfører en D-vippe seg?
Lagrer verdien til inputsignalet i sitt interne minne når klokkeflanken er høy/lav. Har to inputs og to outputs.
Fordi input til D-vippen blir lagret på klokkeflanken, må den være gyldig i
et tidsrom før og etter klokkeflanken oppstår
Setup time
minimumstiden der input til et minne element må være gyldig før klokkeflanken
Hold time
minimumstiden der input til et minne element må være gyldig etter klokkeflanken
Et n-bit register kan lages med
n D-vipper
Registerfilen inneholder
- 32 bit registre
- Logikk for å skrive og lese disse registrene
Hvorfor trenger man kun å gi et register nummer som input?
Fordi lesing av et register ikke endrer noen tilstand
Hvordan implementeres lesing i registerfilen?
Med to store multipleksere - slik at man kan lese to registre samtidig
Hva trengs for å skrive til et register?
- Et register tall
- Dataen som skal skrives
- En klokke som kontrollerer skrivingen til registeret
Man bruker en … til å sette ett signal per registernummer
dekoder
Når skriver man til et register?
Når signalet til registeret, kontrollsignalet “Write” er satt og vi har stigende/synkende klokkeflanke
Hva er en tilstandsmaskin?
Et verktøy for å beskrive sekvensielle systemer
Hva er en tilstandsmaskin (detaljert def.)?
En funksjon av sekvensiell logikk som består av ett sett med inputs og outputs, en neste-tilstands funksjon som mapper den nåværende tilstanden og inputs for en ny tilstand, og en output funksjon som mapper den nåværende tilstanden og muligens inputs for et set med “asserted” outputs
Tilstandsmaskinene vi ser på er
synkrone - tilstanden endres med klokkesykelen, og en ny tilstand regnes ut hver klokkesykel
Hva er funksjonen til klokkesignalet i en datamaskin?
Fungerer som en tidsstyring som synkroniserer operasjonene til alle komponentene.
- Nivå-sensitiv klokking
En timings metodologi der hvor tilstandsendringer skjer når det enten er høyt eller lavt klokkesignalnivå, men som ikke er umiddelbare slik som i klokkeflanke design
- Hva er race?
Når innholdet til et tilstandselement avhenger av den relative farten til forskjellige logiske elementer
Asynkront input kan føre til
metastabilitet
- Metastabilitet
En situasjon som oppstår når et signal blir samplet når det er ustabilt for det krevde set up’et og hold tidene, og muligens forårsaker at den samplede verdier faller i den uavgjorte regionen mellom høy og lav verdi
- Hva kan metastabilitet føre til?
Synkroniseringsfeil
- Synkroniseringsfeil
En situasjon der en vippe går inn i en metastabil tilstand og hvor noen logiske blokker leser output fra vippen som 0, og noen som 1
- Hvordan kan man unngå synkroniseringsfeil?
Vha. sikring av setup, et rent synkront system og at hold tider alltid imøtekommes
D-vipper krever at signalet er
stabilt rundt klokkeflanken
I et system der man bruker stigende klokkeflanke må klokkeperioden være minst så stor som summen av
- Tiden det tar for et signal å propagere gjennom en vippe
- Den lengste forsinkelsen for enhver kombinatorisk logikk
- Tiden før den stigende klokkeflanken som input på vippen må være gyldig for
- Differansen mellom absolutt tid mellom tidene det tar for to tilstands elementer å “se” en klokkeflanke
Hva er de to nedsidene med klokkeflanke designet?
- Krever ekstra logikk
- Kan være saktere
Hva er kritisk sti?
Den lengste signalveien
Forsinkelsen på kritisk sti begrenser
klokkefrekvensen