IE1204 Digital Design

Relevanta dokument
Asynkrona sekvensmaskiner

IE1205 Digital Design: F9: Synkrona tillståndsautomater

Digital Design IE1204

Digital Design IE1204

IE1204 Digital Design

Digital Design IE1204

Digital Design IE1204

Digital Design IE1204

Digital Design IE1204

Repetition delay-element

Tentamen med lösningar för IE1204/5 Digital Design Torsdag 15/

Sekvensnät Som Du kommer ihåg

IE1205 Digital Design: F10: Synkrona tillståndsautomater del 2

Digitalteknik 7.5 hp distans: 5.1 Generella sekvenskretsar 5.1.1

Tentamen med lösningar i IE1204/5 Digital Design Måndag 27/

Omtentamen med lösningar i IE1204/5 Digital Design Fredag 10/

Digital Design IE1204

Tentamen i IE1204/5 Digital Design onsdagen den 5/

TSEA22 Digitalteknik 2019!

DIGITALTEKNIK I. Laboration DE2. Sekvensnät och sekvenskretsar

Tentamen i IE1204/5 Digital Design onsdagen den 5/

IE1204/5 Digital Design typtenta

IE1205 Digital Design: F13: Asynkrona Sekvensnät (Del 2)

Tentamen IE Digital Design Måndag 23/

Tentamen med lösningar IE Digital Design Måndag 23/

IE1205 Digital Design: F4 : Karnaugh-diagrammet, två- och fler-nivå minimering

Tentamen i IE1204/5 Digital Design Torsdag 29/

Digital Design IE1204

IE1204/5 Digital Design typtenta

Tentamen i IE1204/5 Digital Design måndagen den 15/

IE1204/IE1205 Digital Design

Tentamen med lösningar i IE1204/5 Digital Design Torsdag 29/

Tentamen IE Digital Design Fredag 15/

Omtentamen IE Digital Design Måndag 14/

Digital- och datorteknik

Repetition TSIU05 Digitalteknik Di/EL. Michael Josefsson

Mintermer. SP-form med tre mintermer. William Sandqvist

Tentamen i IE Digital Design Fredag 21/

SEKVENSKRETSAR. Innehåll

IE1205 Digital Design: F8: Minneselement: Latchar och Vippor. Räknare

Tentamen med lösningar i IE Digital Design Fredag 15/

Repetition och sammanfattning av syntes och analys av sekvensnät

Maurice Karnaugh. Karnaugh-diagrammet gör det enkelt att minimera Boolska uttryck! William Sandqvist

Sekvensnät i VHDL del 2

Digital elektronik CL0090

Tenta i Digitalteknik

Digital Design IE1204

F5 Introduktion till digitalteknik

Sekvensnät. William Sandqvist

Tenta i Digitalteknik

Tentamen med lösningar i IE Digital Design Fredag 21/

Digital Design IE1204

Digital Design IE1204

Digital- och datorteknik

Låskretsar och Vippor

Sekvensnät vippor, register och bussar

Tentamen i Digitalteknik, EITF65

Quine McCluskys algoritm

Omtentamen med lösningar IE Digital Design Måndag 14/

Digitalteknik F9. Automater Minneselement. Digitalteknik F9 bild 1

Tentamen IE1204 Digital Design Måndag 15/

Laboration D159. Sekvensnät beskrivna med VHDL och realiserade med PLD. Namn: Datum: Epostadr: Kurs:

IE1205 Digital Design: F8: Minneselement: Latchar och Vippor. Räknare

Tentamen IE Digital Design Fredag 13/

IE1204 Digital Design

-c wc. Pre- Next state Out- Vi ser att tillstånden är redan sorterade i grupper med olika utsignaler,

TSEA22 Digitalteknik 2019!

Tentamen i Grundläggande ellära och digitalteknik ETA 013 för D

Institutionen för systemteknik, ISY, LiTH. Tentamen i. Tid: kl

Programmerbar logik och VHDL. Föreläsning 4

Försättsblad till skriftlig tentamen vid Linköpings universitet

Grundläggande digitalteknik

Tenta i Digitalteknik

Tentamen i Digital Design

D2 och E3. EDA321 Digitalteknik-syntes. Fredag den 13 januari 2012, fm i M-salarna

Tenta i Digitalteknik

Digitala system EDI610 Elektro- och informationsteknik

Flaskautomaten Ett design-exempel av Ingo Sander

Tentamen. TSEA22 Digitalteknik 5 juni, 2015, kl

Grundläggande Datorteknik Digital- och datorteknik

Tentamen i Digitalteknik TSEA22

Tenta i Digitalteknik

Tentamensskrivning 11 januari 2016

Definition av kombinatorisk logik Olika sätt att representera kombinatorisk logik Minimering av logiska uttryck

DESIGN AV SEKVENTIELL LOGIK

Tenta i Digitalteknik

Minnet. Minne. Minns Man Minnet? Aktivera Kursens mål: LV3 Fo7. RAM-minnen: ROM PROM FLASH RWM. Primärminnen Sekundärminne Blockminne. Ext 15.

Avkodning av minnen (och I/O)

Digital Design IE1204

Exempel på tentamensfrågor Digitalteknik

TSIU05 Digitalteknik. LAB1 Kombinatorik LAB2 Sekvensnät LAB3 System

Tentamen med lösningar IE Digital Design Fredag 13/

Lösningförslag till Exempel på tentamensfrågor Digitalteknik I.

Digital Design IE1204

Digitalteknik F12. Några speciella automater: register räknare Synkronisering av insignaler. Digitalteknik F12 bild 1

Tenta i Digitalteknik

Kodlås. Kopplingsschema över kodlåset PAL-18

Tentamen i Digitalteknik, TSEA22

Laboration i digitalteknik Introduktion till digitalteknik

Tentamen i EDA320 Digitalteknik för D2

Transkript:

IE204 Digital Design F F3 F2 F4 Ö Booles algebra, Grindar MOS-teknologi, minimering F5 F6 Ö2 Aritmetik Ö3 KK LAB Kombinatoriska kretsar F7 F8 Ö4 F9 Ö5 Multiplexor KK2 LAB2 Låskretsar, vippor, FSM F0 F Ö6 KK3 LAB3 FSM, VHDL introduktion F2 Ö7 F3 Asynkron FSM Ö8 F4 tentamen Minnen Föreläsningar och övningar bygger på varandra! Ta alltid igen det Du missat! Läs på i förväg delta i undervisningen arbeta igenom materialet efteråt!

ÖH. Glitchar Om signaler passerar olika många grindsteg på vägen mot utgången kan kortvariga oönskade avvikelser från sanningstabellen uppkomma, så kallade glitchar. Visa i Karnaughdiagrammet hur man undviker dessa. ( i figuren visas bara fördröjningen i inverteraren övriga grindfördröjningar som inte påverkar glitchen har inte tagits med )

ÖH. Glitchar Om signaler passerar olika många grindsteg på vägen mot utgången kan kortvariga oönskade avvikelser från sanningstabellen uppkomma, så kallade glitchar. Visa i Karnaughdiagrammet hur man undviker dessa. Signalen D är fördröjd i förhållande till A B C. ( i figuren visas bara fördröjningen i inverteraren övriga grindfördröjningar som inte påverkar glitchen har inte tagits med )

( med alla grindfördröjningar ) (Jan Andersson)

. Nätet i ett Karnaughdiagram:

. Nätet i ett Karnaughdiagram: Se till att Karnaughdiagrammets hoptagningar bildar en sammanhängande kontinent inga öar! (Man tar med konsensustermer så att man får funktionen på fullständig primimplikator form).

. Nätet i ett Karnaughdiagram: Se till att Karnaughdiagrammets hoptagningar bildar en sammanhängande kontinent inga öar! (Man tar med konsensustermer så att man får funktionen på fullständig primimplikator form). G = BC + AB { Hazardfritt} G = BC + AB + AC

. Vi ser att signalen X täcker upp då det är risk för en glitch, till priset av ett mer komplext nät!

ÖH.2 SR Asynkront sekvensnät SR-låskretsen är ett asynkront sekvensnät. Alla grindfördröjningar som finns i nätet tänks placerade i symbolen som får en liknande funktion som D-vippan i ett synkront sekvensnät.

SR Analys:

SR Analys: + Q = R + S + Q = R ( S + Q) = R ( S + Q) = S R + RQ

SR Analys: + Q = R + S + Q = R ( S + Q) = R ( S + Q) = S R + RQ

SR Kodad tillståndstabell Den kodade tillståndstabellen brukar kallas för excitationstabell när man arbetar med asynkrona tillståndsmaskiner. Nuvarande tillstånd Q Nästa tillstånd Q + Insignaler SR 00 0 0 0 0 0 0 0 0

SR Kodad tillståndstabell Den kodade tillståndstabellen brukar kallas för excitationstabell när man arbetar med asynkrona tillståndsmaskiner. Nuvarande tillstånd Q Nästa tillstånd Q + Insignaler SR 00 0 0 0 0 0 0 0 0 För varje insignal (kolumn) måste det finnas åtminstone något tillstånd där Q = Q +. Sådana tillstånd är stabila och de brukar markeras genom att ringas in.

SR Kodad tillståndstabell Den kodade tillståndstabellen brukar kallas för excitationstabell när man arbetar med asynkrona tillståndsmaskiner. Nuvarande tillstånd Q Nästa tillstånd Q + Insignaler SR 00 0 0 0 0 0 0 0 0 För varje insignal (kolumn) måste det finnas åtminstone något tillstånd där Q = Q +. Sådana tillstånd är stabila och de brukar markeras genom att ringas in.

SR Kodad tillståndstabell Den kodade tillståndstabellen brukar kallas för excitationstabell när man arbetar med asynkrona tillståndsmaskiner. Nuvarande tillstånd Q Nästa tillstånd Q + Insignaler SR 00 0 0 0 0 0 0 0 0 För varje insignal (kolumn) måste det finnas åtminstone något tillstånd där Q = Q +. Sådana tillstånd är stabila och de brukar markeras genom att ringas in.

SR Tillståndsdiagram Nuvarande tillstånd Q Nästa tillstånd Q + Insignaler SR 00 0 0 0 0 0 0 0 0

SR Tillståndstabell Tillståndstabellen brukar kallas för flödestabell när man arbetar med asynkrona tillståndsmaskiner. Nuvarande tillstånd Q Nästa tillstånd Q + Insignaler SR 00 0 0 A A A A B B B A A B

ÖH.3 Oscillator?

ÖH.3 Oscillator? + Q = Q

ÖH.3 Oscillator? + Q = Q Q 0 + Q 0 Inga stabila tillstånd!

ÖH.3 Oscillator? Q + Q + Q = Q 0 0 Inga stabila tillstånd! T = 6 t PD f = 6 t PD

ÖH.3 Oscillator? + Q = Q T Q 0 = 6 t + Q 0 PD Inga stabila tillstånd! f = 6 t PD Sifferexempel: t pd 9 5 0 f = 9 6 5 0 = = 33 MHz

ÖH.3 Oscillator? + Q = Q T Q 0 = 6 t + Q 0 PD Inga stabila tillstånd! f = 6 t PD Sifferexempel: t pd 9 5 0 f = 9 6 5 0 = = 33 MHz Kan användas för att indirekt mäta upp grindfördröjningen för logikkretsar.

Speciellt för asynkrona nät Tillstånden måste kodas Kapplöpningsfritt (tex. Graykod). SR-låskretsen är kapplöpningsfri eftersom det bara finns en tillståndssignal, som ju inte kan kapplöpa med sig själv. Nästa tillståndsavkodaren måste vara Glitchfri/Hazardfri (även konsensustermer tas med). SR-låskretsens nät är sammanhängande i Karnaugh-diagrammet, det finns inga fler konsensustermer som behöver tas med.

Speciellt för asynkrona nät Tillstånden måste kodas Kapplöpningsfritt (tex. Graykod). SR-låskretsen är kapplöpningsfri eftersom det bara finns en tillståndssignal, som ju inte kan kapplöpa med sig själv. Nästa tillståndsavkodaren måste vara Glitchfri/Hazardfri (även konsensustermer tas med). SR-låskretsens nät är sammanhängande i Karnaugh-diagrammet, det finns inga fler konsensustermer som behöver tas med. SR-latchen är således en idiotsäker konstruktion. Större asynkrona sekvensnät är betydligt mera komplicerade att konstruera!

Tillståndsdiagram som hyperkuber Tillståndsdiagrammet placeras ut på en hyperkub med Graykodade hörn. För två tillståndsvariabler blir det en kvadrat.

Tillståndsdiagram som hyperkuber För tre tillståndsvariabler blir det en kub.

Tillståndsdiagram som hyperkuber För tre tillståndsvariabler blir det en kub. Det blir tydligare om man plattar till kuben.

Tillståndsdiagram som hyperkuber För tre tillståndsvariabler blir det en kub. Det blir tydligare om man plattar till kuben. För fler variabler är principen densamma, men tillstånden placeras i hörnen av hyperkuber och det blir svårare att rita.

(Fyra variabler) (Jfr. Karnaughdiagrammet.)

ÖH.4 Q Analysera följande krets. Rita ett tillståndsdiagram. Betrakta kretsen som ett asynkront sekvensnät där klockpulsingången är en av de asynkrona ingångarna. Vad har kretsen för funktion?

.4 Positiv flank och negativ flank Vid positiv flank går C från 0 till och C= kopplar den övre q0 vippan till utgången. Vid negativ flank går C från till 0 och C=0 kopplar den undre q vippan till utgången. Resultatet blir en D-vippa som som reagerar på klockans båda flanker.

DETFF-vippan Dubbelflankvippan (DETFF, Double Edge Trigered Flip Flop) har fördelar vad gäller hastighet och effektförbrukning. Den kan i princip ge ett dubbelt så snabbt sekvensnät! (Införande av DETFF-vippor skulle kräva nytänkande och omkonstruktion av den övriga logiken). För att kunna dra nytta av fördelarna med DETFF-vippan måste den konstrueras som en egen komponent dvs. som ett asynkront sekvensnät.

ÖH.5 DETFF Konstruera en asynkron statemaskin som fungerar som en dubbelflankad D vippa (DETFF), dvs vippan skall ändra värde både på den positiva och den negativa flanken av klockan. a) Härled FSMen. b) Ta fram flödestabellen och minimera den. c) Tilldela tillstånd (states), överför till Karnaughdiagram och härled de boolska uttrycken. d) Rita kretsen.

.5 Möjliga in/ut kombinationer

.5 Möjliga in/ut kombinationer DETFF Karakteristik

.5 Möjliga in/ut kombinationer Det finns 4 ingångskombinationer (CD) och två utgångskombinationer (Q). Totalt 8 möjliga tillstånd (CD Q). DETFF Karakteristik

.5 Möjliga in/ut kombinationer Det finns 4 ingångskombinationer (CD) och två utgångskombinationer (Q). Totalt 8 möjliga tillstånd (CD Q). Ett nytt nästa tillstånd får vi genom att ändra antingen C eller D. När C ändras får vi en positiv flank ( ) eller negativ flank ( ). För båda flankerna gäller att D kopieras till Q +. (Enligt karakteristiken) DETFF Karakteristik

.5 Möjliga in/ut kombinationer Det finns 4 ingångskombinationer (CD) och två utgångskombinationer (Q). Totalt 8 möjliga tillstånd (CD Q). Ett nytt nästa tillstånd får vi genom att ändra antingen C eller D. När C ändras får vi en positiv flank ( ) eller negativ flank ( ). För båda flankerna gäller att D kopieras till Q +. (Enligt karakteristiken) DETFF Karakteristik

.5 Flödestabell Stabila tillstånd markeras med ring. Kontrollera att varje kolumn CD innehåller minst ett stabilt tillstånd, annars får man ju ett oscillerande nät för den insignalen. Don t-care - införs där insignalen CD innehåller mer än en ändring från det stabila tillståndet på raden.

.5 Tillståndsminimering A och B är inte ekvivalenta om Ekvivalens innebär att tillstånden ska vara stabila för samma insignaler, och ha sina don t care för samma insignaler så att man inte förlorar flexibiliteten inför den fortsatta minimeringen. Kompatibilitet blir olika för Moore eller Mealy. För Moore-kompatibla automater gäller att utsignalerna måste vara lika, och utsignalerna i efterföljar-tillstånden (alla, om flera) måste också vara lika. Annars är de två tillstånden inte kompatibla!

Tillståndsminimering Vi startar med ett block med alla tillstånd P = (ABCDEFGH) Inga Ekvivalenta tillstånd, vi undersöker Kompatibilitet Tillstånden delas först i två block efter utsignal. ACEG har utsignal 0, BDFH har utsignal. P 2 = [ACEG][BDFH] A och C har samma efterföljar-tillstånd (eftersom don t-care kan utnyttjas som H eller E) AC-E ACH- P 3 = [(AC) ][BDFH] (För kompatibilitet räcker det här med att utsignalen från efterföljartillstånden är samma, det behöver inte vara exakt samma tillstånd som det råkar vara i detta exempel.)

Tillståndsminimering E och G har samma efterföljar-tillstånd (eftersom don t-care kan utnyttjas som A eller D) A-GE -DGE P 3 = [(AC)(EG)][BDFH] B och D har samma efterföljar-tillstånd (eftersom don t-care kan utnyttjas som H eller E) BD-E BDH- P 3 = [(AC)(EG)][(BD) ] F och H har samma efterföljar-tillstånd (eftersom don t-care kan utnyttjas som A eller D) A-HF -DHF P 3 = (AC)(EG)(BD)(FH) Vi klarar oss med fyra tillstånd!

.5 Ny Flödestabell De nya tillstånden betecknas: AC A, EG E, BD B, FH F. Tillståndsdiagram

.5 Tillståndskodning Tillstånden (q q 0 ), placeras i hörnen på en Gray-kodad kvadrat. Tex. A=00, F=0, B=, E=0.

.5 Tillståndskodning Tillstånden (q q 0 ), placeras i hörnen på en Gray-kodad kvadrat. Tex. A=00, F=0, B=, E=0. Även alla rotationer och speglingar av koden är giltiga tillståndskodningar.

.5 Tillståndskodning Tillstånden (q q 0 ), placeras i hörnen på en Gray-kodad kvadrat. Tex. A=00, F=0, B=, E=0. Även alla rotationer och speglingar av koden är giltiga tillståndskodningar. A F B E A F B E 00 0 0 0 0 00 0 0 00 00 0 0 0 00 0 0 00 0 0 00 0 0 00 0

.5 Tillståndskodning Tillstånden (q q 0 ), placeras i hörnen på en Gray-kodad kvadrat. Tex. A=00, F=0, B=, E=0. Även alla rotationer och speglingar av koden är giltiga tillståndskodningar. A F B E A F B E 00 0 0 0 0 00 0 0 00 00 0 0 0 00 0 0 00 0 0 00 0 0 00 0 Detta blir vår godtyckligt valda tillståndskod.

.5 Tillståndskodning Tillstånden (q q 0 ), placeras i hörnen på en Gray-kodad kvadrat. Tex. A=00, F=0, B=, E=0. Även alla rotationer och speglingar av koden är giltiga tillståndskodningar. A F B E A F B E 00 0 0 0 0 00 0 0 00 00 0 0 0 00 0 0 00 0 0 00 0 0 00 0 Detta blir vår godtyckligt valda tillståndskod. Är detta bästa tillståndskodningen? Uttömmande sökning (=prova alla) är oftast enda lösningen för den som vill veta!

.5 Exitationstabell q q 0 q q 0

.5 Karnaughdiagram På K-map-form: q q 0 q q 0 Q = q 0 q + = CDq + q q + CDq 0 C + q 0 + C D q q 0 + C D q D + q q C + q q 0 0 + 0 D + q0 = q0d + q q0c + q CD + qcd + qq0c

ÖH.6 Analysera Analysera ovanstående krets. a) Härled de Boolska uttrycken för tillståndsvariablerna Y och Y 0. b) Härled exitationstabell. Ledning: Vilken funktion (inom streckat) finns i de inre looparna. c) Härled flödestabell, tilldela symboliska states och rita FSM. d) Vilken vippa motsvarar detta?

.6 Boolska funktioner Y + 0 Y 0 + Y0 = Y0Y + Y0 C + YC Y + Y + Y = Y ( Y0 I) + ( Y0 I) C + Y C

.6 Glitch-fri MUX? Vanlig MUX: Glitch-fri MUX:

.6 Två Glitch-fria MUXar Nätet kan ses som sammansatt av två Glitch-fria MUXar. Detta faktum kan utnyttjas om man vill resonera sig fram till nätets funktion.

.6 Boolska ekvationer Y C C Y Y Y Y 0 0 0 + + = + Q = Y 0 C Y IC Y C I Y I Y Y I Y Y C Y C I Y I Y I Y I Y Y C Y C I Y I Y Y Y 0 0 0 0 0 0 0 0 0 0 ) ( ) ( ) ( ) ( + + + + = = + + + + = = + + = + Vi använder de boolska funktionerna för att härleda funktionen.

.6 Excitationstabell + Y = YY 0 I + YY 0 I + Y0 IC + Y 0 IC + Y C + Y0 = Y0Y + Y0 C + YC Rödmarkerade inrigningar är kretsens Hazardcover

.6 Exitationstabell Omöjliga tillstånd betecknas som genomstrukna. Det gäller tillstånd, som för att nås, skulle kräva två ändringar av insignalen från det stabila tillståndet på den aktuella raden. Q = Y 0 IC 0 0 omöjlig samtidig ändring av ingångssignalerna.

.6 Flödestabell De omöjliga tillstånden (genomstrukna) skulle kunna utnyttjas som Don t-care om man vid ett annat tillfälle omkodar nätet. Tillståndsdiagram:

.6 Vilken vippa är det? Om I = och C är klockpulser,0,,0 blir sekvensen: IC: 0 0, D-C-B-A-D-C-B-A Q: 0---0-0---0 Dvs. vippan togglar på positiv flank ( ) hos C. Om I = 0 blir det i stället på stället marsch A A och D A Q = 0 C C och B C Q = Vippan byter tillstånd vid övergångarna från C = 0 till C =, således en positivt flanktriggad ( ) T-vippa ( I = T ).