Consegna Diagramma degli stati (Mealy) Condizione di riposo Diminuzione dell’erogazione del carburante Prima marcia Seconda marcia Definizione delle variabili Ingressi D, M, m → Gli ingressi variano uno solo alla volta. Uscite M1, M0, L Stato presente y1, y2, y3 Stato futuro Y1, Y2, Y3 x3, x1, x2 Impostazione del progetto La sintesi della rete asincrona, sarà fatta seguendo un modello di tipo Mealy, nel quale le uscite non dipendono solo dagli stati, ma anche dagli ingressi. Risulta quindi essere una rete più pronta e, per questo motivo, nel grafo degli stati è stata posta una condizione di indifferenza se il segnale di uscita varia da uno stato al successivo. Inoltre poiché vi sono tre variabili di ingresso, si utilizzeranno due mappe, tenendo esterna la variabile x3 (che corrisponde all'ingresso D) da considerare con valore 0 per un mappa e 1 per l'altra. Tabella degli stati primitiva X3 = 1 Ad ogni riga corrisponde uno stato interno e ad ogni colonna un ingresso; in una casella è specificato il prossimo stato interno della rete e l'uscita. Tabella degli stati primitiva X3 = 0 Minimizzazione degli stati (reti non completamente specificate) Due stati si dicono compatibili se portano a stati compatibili e con le stesse uscite, a meno di condizioni di indifferenza. Ricerca degli stati compatibili e delle classi di massima compatibilità Le relazioni di compatibilità possono essere identificate mediante la tabella delle implicazioni [A] => α [B] => β [C] => γ [D, E] => δ D ed E risultano essere gli unici stati compatibili della rete. Condizioni di copertura e chiusura verificate. Tabella delle transizioni ridotta (minimo numero di variabili di stato) X3 = 1 X3 = 0 Codifica degli stati X3 = 1 Codifica degli stati X3 = 0 Eliminazione delle corse critiche Se una codifica pretende che un valore di stabilità sia raggiunto con il cambiamento contemporaneo di più bit dei segnali di stato, si ha corsa critica. In tutte le colonne in cui sono previste più condizioni di stabilità, le codifiche degli stati coinvolti in transizione devono differire per un solo bit. In questo caso il fenomeno delle corse critiche non si manifesta, in quanto ogni stato presente porta a uno stato futuro ad esso adiacente (distanza pari a 1). Sintesi degli stati Y1 = y2x1x3 + y1!x2 X3 = 1 X3 = 0 Sintesi degli stati Y2 = y2x1 + x2x3 + !y1y2!x2 X3 = 1 X3 = 0 Sintesi delle funzioni di uscita L = !y1 + y2 + !x1 M1 = y1 M0 = y1 + y2 Direttorio esercizio n° 11 Y1 = y2x1x3 + y1!x2 Y2 = y2x1 + x2x3 + !y1y2!x2 L = !y1 + y2 + !x1 M1 = y1 M0 = y1 + y2 Simulazione behavioral Simulazione post-route Descrizione della simulazione Inizialmente la macchina è in condizione di riposo (zona rossa), dalla quale si può passare in prima marcia se l'ingresso è 101; Una volta in prima, se il numero di giri del motore risulta essere superiore al valore massimo (x3x1x2=110), la marcia deve essere aumentata; altrimenti è possibile tornare in condizione di riposo (zona gialla) con ingresso 001. Dalla seconda (zona blu) si scala la marcia se il numero di giri del motore è troppo basso (x3x1x2 = 101); se invece aumenta (x3x1x2=110) è necessaria una riduzione dell'erogazione del carburante (zona bianca). Terminato il rifornimento della macchina (x3x1x2=100), è poi possibile tornare in seconda marcia.