Introduzione alle Macchine a Stati Finiti

Giuliano Donzellini, Domenico Ponta

Ripensare un contatore sincrono come una Macchina a Stati Finiti

040240

 

v1.71

Il circuito seguente è un contatore binario sincrono bidirezionale (un click sulla figura aprirà il circuito nel d-DcS):

Nello schema, le uscite di conteggio sono QA, QB, QC. L'ingresso Down definisce la direzione del conteggio ('0' = conteggio avanti, '1' = conteggio indietro). L'uscita TC_up (Terminal Count, conteggio avanti) si attiva ad '1' quando il conteggio avanti raggiunge il valore massimo ['111']; TC_down (Terminal Count, conteggio indietro) si attiva ad '1' quando il conteggio all'indietro raggiunge il valore minimo ['000'].

Si verifichi il suo funzionamento tramite una simulazione temporale (si utilizzi la sequenza di test disponibile nella finestra del diagramma temporale).


Si provi ora a riconsidere lo schema della rete in termini di Macchina a Stati Finiti (MSF). Tenendo conto della struttura generale del modello di MSF sincrona di Mealy (rappresentata nella figura seguente):

Si raggruppino i componenti della rete in un nuovo schema, separandone, per zone, i blocchi funzionali (un click sulla figura seguente aprirà nel d-DcS lo schema da completare):

Nel nuovo schema definiamo tre variabili di stato X, Y e Z (le uscite dei flip-flop QA, QB e QC, nello schema originale). Si verifichi il funzionamento della rete mediante simulazione temporale (la sequenza di test è già disponibile nel diagramma temporale). Infine, si scrivano le espressioni booleane dello stato successivo e delle uscite.