A.S.E.21.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 21 Tecnica di sintesiTecnica di sintesi EsempiEsempi Riduzione del numero di statiRiduzione del numero di stati EsempiEsempi
A.S.E.21.2 Richiami Modelli di reti sequenzialiModelli di reti sequenziali –Macchina di Mealy –Macchina di Moore –Macchina di Mealy Ritardata Sintesi di reti sequenziali sincronizzate Descrizione di reti sequenzialiDescrizione di reti sequenziali Tabella delle transizioniTabella delle transizioni
A.S.E.21.3 Tabella delle transizioni Si riportanoSi riportano –Valore degli ingressi –Variabili di stato di partenza (Stato presente) –Variabili di stato di arrivo(Nuovo stato) Sp 1 … Sp n X1X1X1X1… XnXnXnXn Sn 1 …. Sn n X1X1 XnXn Ck R R’ z1z1 s p1 s Pk s n1 s nk a1a1 anan a n+1 a n+k z1z1 zmzm z m+1 z m+k zmzm Ck
A.S.E.21.4 Flip - Flop J – K Tabella delle funzioniSchema logicoTabella delle funzioniSchema logico Q QQQQ CkJKQ 0XXQ 1XXQ XXQ 00Q QQQQ J Q Ck Q K
A.S.E.21.5 Diagramma di flusso 0 Wa 0,0 Y Y J, K 0,1 Q 1 Wb 0,0 Y Y 1,0 CkJKQ 0XXQ 1XXQ XXQ 00Q QQQQ
A.S.E.21.6 Tabella delle transizioni WpJKWn Wa 0,0 Y Y J, K 0,1 Q 1 Wb 0,0 Y Y 1,0
A.S.E.21.7 Individuazioni delle equazioni Costruzione delle Mappe di KarnaughCostruzione delle Mappe di Karnaugh 0,00,11,11, J,K Wp WnWpJKWnQ
A.S.E.21.8 Schema D Q Ck Ck J Q K
A.S.E.21.9 Flip - Flop T (TOGLE) Tabella di VeritàSchema logicoTabella di VeritàSchema logico CkTQ 0XQ 1XQ XQ 0Q 1 QQQQ T Q Ck
A.S.E Diagramma di flusso 0 Wa 0 Y T Q 1 Wb 0 Y
A.S.E Tabella delle transizioni TWpWn Wa 0 Y T Q 1 Wb 0 Y
A.S.E Individuazioni delle equazioni Costruzione delle Mappe di KarnaughCostruzione delle Mappe di Karnaugh T Wp WnTWpWnQ
A.S.E Schema D Q Ck Ck T Q
A.S.E Riconoscitore di sequenza Y attiva per la sequenza “0101”Y attiva per la sequenza “0101” Valido anche per sequenze interallaciateValido anche per sequenze interallaciate Riconoscitore di sequenzaRiconoscitore di sequenza
A.S.E Diagramma di flusso [0101] a00 01b 0 1 Y 1 0 Y c11 d10 Z,W Y Y Y
A.S.E Tabella delle transizioni ZpWpXZnWn a00 01b Y 0 1 Y 1 0 Y c11 d10 Z,W
A.S.E Individuazioni delle equazioni X Zp,WpZn X Zp,WpWn X Zp,WpYZpWpXZnWnY
A.S.E Schema CLK D Q DQ DQ X Y Ck Z W ZpZp WpWp
A.S.E Riconoscitore di sequenza 0110 o 1001 (A) x 0 1 x 01 x 0 1 x 0 1 x 0 1 x 0 1 x 0 1 x 0 1 x 0 1 x 01 x 01 x 01 x 01 x 01 x 01 hijklmno defg 0 bc a Z=
A.S.E Tabella degli Stati (A) P.S. Next State Out Z X = 0 X = 1 X = 0 X = 1 abc00 bde00 cfg00 dhi00 ejk00 flm00 gno00 hhi00 ijk00 jlm00 kno10 lhi01 mjk00 nlm00 ono00
A.S.E Riconoscitore di sequenza 0110 o 1001 (A) x 0 x x x 1 x 1 x 0 1 x 1 0 F ij C E G 0 B D A Z=1
A.S.E Tabella degli stati (A) P.S. Next State Out Z X = 0 X = 1 X = 0 X = 1 ABC00 BBD00 CEC00 DEF00 EGD00 FEC10 GBD01 x 0 x x x 1 x 1 x 0 1 x 1 0 F ij C E G 0 B D A Z=
A.S.E Riduzione della tabella degli stati Meno stati => meno variabili di stato => meno flip-flop => meno ingressi e uscite della rete combinatoriaMeno stati => meno variabili di stato => meno flip-flop => meno ingressi e uscite della rete combinatoria A parità di variabili di stato (stessa potenza del 2) => meno stati = più don’t-care nelle tabelle della verità della rete combinatoria => maggiore semplificabilitàA parità di variabili di stato (stessa potenza del 2) => meno stati = più don’t-care nelle tabelle della verità della rete combinatoria => maggiore semplificabilità
A.S.E Coppie di stati equivalenti Due stati p e q di una rete sincrona sono equivalenti se e solo se per ciascuna combinazione dei valori delle variabili d’ingresso (1) le uscite relative sono identiche eDue stati p e q di una rete sincrona sono equivalenti se e solo se per ciascuna combinazione dei valori delle variabili d’ingresso (1) le uscite relative sono identiche e (2) gli stati successivi sono equivalenti(2) gli stati successivi sono equivalenti –Due stati sono equivalenti => le uscite devono essere non contraddittorie per ciascuna combinazione degli ingressi –Due stati sono equivalenti =>i relativi stati successivi non devono essere contraddittori per ciascuna combinazione degli ingressi
A.S.E Esempio di verifica dell’equivalenza 1.Verifica sua “A” e “B”: per X=1 le uscite sono in contraddizioneNO 2.Verifica per “A” e “E”: uscite OK, per X=0 gli stati successivi sono “A” e “B” che non sono equivalentiNO 3.Verifica per “A” e “D”: uscite OK, per X=0 gli stati successivi sono “A” e “D”, si se è verificata per X=1; per X=1 devono essere equivalenti “B” e “F”: uscite si, “C” e ”C” si (uno stato è equivalente a se stesso) devono essere equivalenti “D” e “G”, si se “D” e “A” sono equivalentiOK PSNS Out Z 0101 AAB00 BDC01 CFE00 DDF00 EBG00 FGC01 GAF00
A.S.E Metodo a tre passi 1.Individuazione di coppie di stati equivalenti 2.Date le coppie di stati equivalenti, determinazione degli insiemi di stati equivalenti 3.Generazione della tabella degli stati ridotta (sostituzione con un unico stato di più stati equivalenti) Metodo valido per tabelle degli stati completamente specificataMetodo valido per tabelle degli stati completamente specificata
A.S.E Algoritmo Passo A 1.Costruire la tabella delle implicazioni Ogni cella corrisponde a una coppia (q i,q k ) So presenti le coppie con k≠i L’ordine degli indici non conta ik=ki 2.La cella (q i,q k ) contiene X se le uscite sono contraddittorie per ingressi uguali Tutte le coppie di stati successivi relativi agli ingressi, senza duplicazione, (q h,q f )=(q f,q h ), (q l,q l ) no, se gli stati successivi sono uguali a quelli presenti no, se la cella è vuota si mette un marker 3.Ispezione => si mette una X se a una delle coppie contenute nella cella corrisponde una coppia di stati legati a una cella con X 4.Iterare il punto 3
A.S.E Costruzione della tabella delle implicazioni Data una tabella degli stati con “n” statiData una tabella degli stati con “n” stati Matrice diagonale inferiore (diagonale principale esclusa)Matrice diagonale inferiore (diagonale principale esclusa) Per 10 statiPer 10 stati si ha A B C D E F G H I J ABCDEFGHIJ
A.S.E Tabella degli statiTabella delle implicazioni PS.NS.OutX=0X=1X=0X=1 AAB00 BDC01 CFE00 DDF00 EBG00 FGC01 GAF00BXCA,FB,EX DB,FXD,EE,F EA,BB,GXB,FE,GB,DF,G FXD,GXXX GB,FXA,FE,FA,DA,BF,GX ABCDEF Manca A,D Manca C,C
A.S.E Tabella delle implicazioni passo 1 B CA,FB,E DB,FD,EE,F EA,BB,GB,FE,GB,DF,G FD,G GB,FA,FE,FA,DA,BF,G ABCDEFBCA,FB,E DB,FD,EE,F EA,BB,GB,FE,GB,DF,G FD,G GB,FA,FE,FA,DA,BF,G ABCDEF BCA,FB,E DB,FD,EE,F EA,BB,GB,FE,GB,DF,G FD,G GB,FA,FE,FA,DA,BF,G ABCDEFBCA,FB,E DB,FD,EE,F EA,BB,GB,FE,GB,DF,G FD,G GB,FA,FE,FA,DA,BF,G ABCDEF
A.S.E Tabella delle implicazioni passo 2 B CA,FB,E DB,FD,EE,F EA,BB,GB,FE,GB,DF,G FD,G GB,FA,FE,FA,DA,BF,G ABCDEFBCA,FB,E DB,FD,EE,F EA,BB,GB,FE,GB,DF,G FD,G GB,FA,FE,FA,DA,BF,G ABCDEF BCA,FB,E DB,FD,EE,F EA,BB,GB,FE,GB,DF,G FD,G GB,FA,FE,FA,DA,BF,G ABCDEF
A.S.E Coppie di stati equivalenti (Passo B) e Insiemi di stati equivalenti (Passo C) B CA,FB,E DB,FD,EE,F EA,BB,GB,FE,GB,DF,G FD,G GB,FA,FE,FA,DA,BF,G ABCDEFBCA,FB,E DB,FD,EE,F EA,BB,GB,FE,GB,DF,G FD,G GB,FA,FE,FA,DA,BF,G ABCDEF 1 A D, A G, B F, D G 2 (A,D,G), (B,F), (D,G) 3 {(A,D,G),(B,F),(C),(E)}
A.S.E.21.33PS.NS.OutX=0X=1X=0X=1 AAB00 BDC01 CFE00 DDF00 EBG00 FGC01 GAF00 Tabella degli stati minima (Passo D) PS.NS.OutX=0X=1X=0X=1 00 01 00 00 {(A,D,G),(B,F),(C),(E)} A=D=G= B=F= C= E=
A.S.E CONCLUSIONI Sintesi di reti sequenziali sincronizzate Tecnica di sintesiTecnica di sintesi EsempiEsempi Riduzione del numero di statiRiduzione del numero di stati EsempiEsempi