28
Information and Communication Technology – Modulo n. 1 Pag. 1 C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010 Claudio CANCELLI (www.claudiocancelli.it)

Gli AUTOMI a stati finiti

Embed Size (px)

DESCRIPTION

Ecco un valido contributo dell'elettronica nell'analizzare e progettare macchine sequenziali. La parte introduttiva affronta lo studio dei sistemi e dei loro modelli per offrire l'opportunità di comprendere il passaggio da un sistema reale ad un modello e fornire in tal modo i requisiti necessari per affrontare in una fase successiva la progettazione o l'analisi.

Citation preview

Page 1: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 1

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

Claudio CANCELLI (www.claudiocancelli.it)

Page 2: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 2

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

INDICE

IINNDDIICCEE DDEEII CCOONNTTEENNUUTTII

1. SCOPO ……………………………………….………………………………………………………………..………….. PPAAGG.. 33 2. LEGENDA ………………………………………………………………………………….……………………..……… PPAAGG.. 44 3. PROSPETTO MODULO DIDATTICO I ……………………………………………………………… PPAAGG.. 44 4. SVILUPPO DELL’UNITA’ DI LAVORO I.1

I.1.1 - Conoscere la differenza tra sistema dinamico e sistema algebrico .... PPAAGG.. 6 I.1.2 - Conoscere e comprendere il significato di variabile di stato ……….………. PPAAGG.. 1111 I.1.3 - Conoscere i concetti di sistema a stati finiti, di sistema discreto e di automa …………………………………………………………………………………………………………… PPAAGG.. 1133 I.1.4 – Conoscere la differenza tra automi sincroni e asincroni …………………………. PPAAGG.. 1155 I.1.5 – Conoscere e comprendere i concetti relativi agli automi di Mealy e di Moore …………………………………………………………………………………………………………….. PPAAGG.. 1166 I.1.6 – Saper analizzare e/o creare la struttura di un automa ………………………….. PPAAGG.. 2244

Page 3: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 3

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

Automi a Stati Finiti”

SSCCOOPPOO SVILUPPARE LA PRIMA UNITÀ DI LAVORO DEL MODULO “AUTOMI A STATI FINITI”, EVIDENZIANDO IN PARTICOLARE IL CONTRIBUTO CHE L’ELETTRONICA FORNISCE NELL’ANALISI E NEL PROGETTO DELLE MACCHINE SEQUENZIALI.

E’ INOLTRE AFFRONTATA UNA PARTE INTRODUTTIVA SULLO STUDIO DEI SISTEMI E DEI LORO MODELLI PER OFFRIRE L’OPPORTUNITÀ DI COMPRENDERE IL PASSAGGIO DA UN SISTEMA REALE AD UN MODELLO E FORNIRE COSÌ I REQUISITI NECESSARI PER AFFRONTARE LA SUCCESSIVA FASE DI PROGETTAZIONE O DI ANALISI.

Page 4: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 4

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

1. LEGENDA

Cn = OBIETTIVI RELATIVI ALLE CONOSCENZE (sapere nel senso di possedere conoscenze descrittive di tipo formale/astratto)

Ab= OBIETTIVI RELATIVI ALLE ABILITA’ (saper fare, nel senso di saper utilizzare in concreto date conoscenze)

CT = OBIETTIVI RELATIVI ALLA TEORIA CL = OBIETTIVI RELATIVI AL LABORATORI

UNITA’ DI LAVORO INERENTI LA TEORIA UNITA’ DI LAVORO INERENTI LA TEORIA E LA PRATICA

VERIFICHE SCRITTE

2. PROSPETTO MODULO DIDATTICO I

Modulo I: Automi a stati finiti

Obiettivi di competenza finali attesi 1 – Saper analizzare un automa a stati finiti (Esercizi da definire con l’Unità di Lavoro I.2), oppure 2 – Saper progettare un automa a stati finiti (Esercizi da definire con l’Unità di Lavoro I.2) Modalità di verifica, recupero ed approfondimento Verifica in itenere (di tipo formativo), sommativa scritta alla fine del modulo. Eventuale rivisitazione dei contenuti e completamento. Eventuale approfondimento mirato ad ulteriori esempi di analisi o di progetto. Verifica orale e scritta. Recupero pomeridiano.

Cn = OBIETTIVI RELATIVI ALLE CONOSCENZE (sapere nel senso di possedere conoscenze descrittive di tipo formale/astratto) Ab= OBIETTIVI RELATIVI ALLE ABILITA’ (saper fare, nel senso di saper utilizzare in concreto date conoscenze)

T => TEORIA -- P => PRATICA

Unità di Lavoro I.1 – Teoria di Base Prerequisiti – Ottima conoscenza dei circuiti combinatori (Modulo B) e dei circuiti sequenziali (Modulo D)

Obiettivi di Teoria Fondamentali CnT1–I.1.1 – Conoscere la differenza tra sistema dinamico e sistema algebrico (Significato di sistema, di variabile di ingresso, di uscita) CnT2-I.1.2 – Conoscere e comprendere il significato di variabile di stato CnT3-I.1.3 – Conoscere i concetti di sistema a stati finiti, di sistema discreto e di automa CnT4-I.1.4 – Conoscere la differenza tra automi sincroni e asincroni CnT5-I.1.5 – Conoscere e comprendere i concetti relativi agli automi di Mealy e di Moore

Obiettivi di Laboratorio Fondamentali Non previsti Obiettivi di Laboratorio Opzionali Non previsti

Page 5: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 5

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

AbT1-I.1.6 – Saper analizzare e/o creare la struttura di un automa Corrispondenze tra obiettivi e verifiche Test –1 (CnT1); 2 (CnT2); 3 (CnT3); 4 (CnT4); 5 (CnT4); 6 (CnT5); 6 (CnT5); 7 (CnT5); 8 (CnT5); 9 (CnT5); Problemi Pr.1 ABT1; Pr.2 ABT1; Pr.3 ABT1;

Obiettivi di Teoria Opzionali Non previsti

Modalità di verifica, recupero ed approfondimento Verifica formativa in itenere con esercizi mirati alla valutazione delle conoscenze e delle abilità, eventuale rivisitazione dei contenuti; verifica scritta alla fine dell’unità. L’eventuale approfondimento mirato avverrà in itinere. L’eventuale recupero sarà successivo alla verifica scritta prevista con J.2. e comunque previsto con n.ro 4 ore pomeridiane.

Unità di Lavoro I.2 – La realizzazione

Prerequisiti – Unità di Lavoro I.1 – Teoria di Base ed ottima conoscenza dei circuiti combinatori (Modulo B)e dei circuiti sequenziali (Modulo D)

Obiettivi di Teoria Fondamentali AbT1–I.2.1 – saper analizzare un automa AbT2–I.2.2 – saper progettare un automa

Obiettivi di Teoria Opzionali CnT3-I.2.3 - Ridurre alla forma minima (Indistinguibilità e Minimizzazione degli stati

Corrispondenze tra obiettivi e verifiche Da definire Modalità di verifica, recupero ed approfondimento Da definire

Obiettivi di Laboratorio Fondamentali AbL1–I.2.3 – verificare sperimentalmente il funzionamento dell’automa pressa AbL2–I.2.4 – imparare ad usare il programma di simulazione meamoo.exe AbL3–I.2.5 – rivisitare, attraverso la simulazione, i concetti relativi all’indistinguibilità degli stati AbL4–I.2.6 – verificare sperimentalmente il funzionamento dell’automa riconoscimento di sequenza Obiettivi di Laboratorio Opzionali Non previsti

 

 

Page 6: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 6

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

SVILUPPO DELL’UNITA’ DI LAVORO I.1 

CnT1 – I.1.1 Conoscere la differenza tra sistema dinamico e sistema algebrico SISTEMA

Evitiamo la fatica di ricercare la definizione di sistema e cerchiamo di dare un significato al termine richiamando i concetti che ci saranno utili per la nostra trattazione. Cos’è secondo voi un sistema? Le risposte le riportiamo in un angolino sulla lavagna e le verificheremo nel corso dei primi tre obiettivi di questa unità di lavoro. Per sistema, intanto, possiamo intendere un insieme di elementi, o sottosistemi, interconnessi gli uni agli altri da relazioni. Tali elementi interagiscono tra di loro in modo da raggiungere uno scopo comune non raggiungibile evidentemente dal singolo elemento. Un sistema sulla base degli Ingressi X (che hanno il significato di variabili indipendenti ossia quelle grandezze che possono assumere un valore assegnato nell’ambito del campo di variabilità previsto. Ricordate in matematica la x sull’asse delle ascisse?) consente di ottenere le Uscite Y (che hanno il significato di variabili dipendenti ossia quelle grandezze che hanno il significato di risultato, obiettivo. Ricordate in matematica la y sull’asse delle ordinate?). Esempio 1) La macchina che eroga il caffè è l’esempio che prendiamo in riferimento per mettere in evidenza gli ingressi e le uscite. Proviamo a pensare a ciò che può essere considerato variabile dipendente e variabile indipendente.

Abbiamo trascurato un elemento importante, ricordatemelo, lo

riprenderemo più avanti.

Figura 1 – Esempio di sistema

Page 7: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 7

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

SISTEMI STATICI E SISTEMI DINAMICI Una delle suddivisioni dei sistemi riguarda la dipendenza dell’uscita in funzione degli

ingressi e dello stato del sistema. In tale suddivisione rientrano i sistemi statici, o algebrici e i sistemi dinamici.

Nei sistemi statici l’uscita è funzione dei soli ingressi y = f(t), mentre nei sistemi dinamici l’uscita è funzione dello stato, che rappresenta la storia passata, sinonimo di memoria, ed eventualmente degli ingressi. Nell’ambito dell’Elettronica Digitale, la suddivisione riguarda i circuiti combinatori ed i circuiti sequenziali. Es. I.1.1) In figura 1 è riportato l’esempio di un circuito combinatorio la cui uscita,

y, è funzione solo degli ingressi x1, x2 ed x3. Infatti:

Y = x1 + x2 * x3

SISTEMI

yy == ff((ssttaattoo,, iinnggrreessssii)) yy == ff((iinnggrreessssii))

SISTEMI STATICI

SISTEMI DINAMICI

CIRCUITI SEQUENZIALI

CIRCUITI COMBINATORI

Page 8: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 8

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

Figura 2 - Esempio di circuito combinatorio

X 2

X 1

X 3

Y

X 2

X 1

X 3

Y

L’uscita è funzione solo ……………………………………….………….. e quindi ……………………………………………………………………….……………………………………………………………

Es. I.1.2) In figura 3 è riportato l’esempio di un circuito sequenziale le cui uscite,

Q e Q negata, sono calcolate sulla base dello stato di memoria del flip-flop.

Chiarire tale concetto descrivendo il funzionamento del FF-SR. …………………………………………………….………………………………………………………………………………

…………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………… ……………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………

Es. I.1.3) Un quesito per voi. Un circuito in serie è composto da un generatore in continua, da un interruttore, da una condensatore e da un resistore.

Il condensatore rappresenta l’elemento di memoria e la tensione ai suoi capi rappresenta la variabile di stato. La tensione ai capi della resistenza

Figura 3 – Flip-Flop SR

Ck

Figura 4 – Carica di un condensatore

Page 9: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 9

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

è l’uscita del sistema: tale segnale dipende solo dal segnale di ingresso (tensione di ingresso vi(t)) o dipende anche dalla carica iniziale del condensatore? Ricordate che se la risposta è: l’uscita è anche funzione dello stato, allora il circuito è dinamico ed esiste quindi una condizione di memoria

……………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….…………..

Es. I.1.4) Non più di 1 minuto per rispondere alla seguente domanda. Per quale motivo i circuiti statici si chiamano anche circuiti algebrici?

……………………………………………………………………………………………………………………………………

………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….…………..

E per quale motivo nessuno di voi ha sollevato delle obiezioni? Vuol dire

che è chiara a tutti questa corrispondenza anche in virtù della risposta che avete fornito? Lo verificheremo successivamente.

Es. I.1.5) Concludiamo tale obiettivo valutando il partitore resistivo riportato in Fig.

5.

Proviamo a scrivere la tensione di uscita in funzione della tensione di

ingresso:

vo(t) = vi(t) * R2 R1 + R2 E’ vero che la tensione di uscita dipende solo dalla tensione di ingresso a meno di una costante? …………... E quindi siamo in presenza di un sistema ……………………………………….……..

Figura 5 – Partitore resistivo

Page 10: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 10

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

E’ vero che il circuito non ha memoria ? …………….. Ed è vero che se il valore delle resistenze dipende dalla temperatura e quindi per effetto Joule anche dalla corrente dobbiamo constatare che la tensione di uscita è funzione oltre che della tensione di ingresso anche del valore delle resistenze per una data temperatura? ……………………, ed in questo caso saremmo in presenza di un sistema …………………………..………………... Se hai qualche dubbio su tale problema, ma anche su quanto è stato fatto

fino a questo punto, lo esponi per poterlo successivamente riprendere e discutere in classe.

i. ………………………………………………………………………………………………………………………………

………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….…………………………………………………………………………………………………………………………………………………………………………………………………………………………………………

ii. ………………………………………………………………………………………………………………………………

………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….…………………………………………………………………………………………………………………………………………………………………………………………………………………………………………

iii. ………………………………………………………………………………………………………………………………

………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….…………………………………………………………………………………………………………………………………………………………………………………………………………………………………………

Page 11: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 11

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

CnT2-I.1.2 Conoscere e comprendere il significato di variabile di stato

STATO DI UN SISTEMA

Cosa si intende per Stato di un sistema? E’ L’insieme delle grandezze che definiscono il sistema in un certo istante, e questi valori, tengono conto della storia passata del sistema. Lo stato, quindi, per i sistemi dinamici rappresenta la condizione di Memoria. Si può quindi affermare che l’uscita di un sistema in un certo istante dipende dall’ingresso in quell’istante e dalla storia passata del sistema, ossia ciò che il sistema ricorda; possiamo così studiare l’evoluzione del sistema pensando allo stato futuro come funzione dello stato attuale.

Con degli esempi tutto sarà più semplice. Se il sistema ha una sola variabile, lo stato del sistema in un certo istante coincide con il valore che la variabile di stato ha in quell’istante; se invece il sistema presenta più variabili di stato, lo stato del sistema in un certo istante coincide con l’insieme dei valori assunti da tutte le variabili di stato. Es. I.1.6) Riprendiamo l’elemento importante che abbiamo trascurato con l’esempio

1. Se per prendere un caffè che costa 30 cent. dispongo di tre monete di 10 cent. cadauna, dopo che avrò inserito la prima moneta, il sistema dovrà ricordare che la monetà inserita è 10 cent? ………..

e dopo che avrò inserito la seconda, il sistema dovrà ricordare che le monete inserite sono state due per un totale di 20 cent.? …………

Bene, questo ricordare si chiama Stato del Sistema, in quanto tiene conto della storia passata e serve per determinare l’uscita. È vero? ……………

Es.I.1.7) Se ad uno di voi chiedo “come ti chiami?” è vero che c’è una risposta in

funzione della mia domanda? …….… e di un’altra condizione importantissima, che è la ………………………….…….….. senza la quale non ci sarebbe risposta o potrebbe essere una volta Carlo, la successiva Carmelo, ecc.

STATO MEMORIA

Page 12: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 12

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

Es.I.1.8) Riprendendo il rif. I.1.4 di tale dispensa) rileggere il testo e valutate le differenze tra i grafici riportati in b) ed in c) per meglio comprendere il concetto di stato.

Esempio 2) Consideriamo il sistema “Ascensore a tre piani” . Possiamo pensare che l’ingresso del sistema sia una variabile associata al pulsante premuto, l’uscita è il movimento della cabina verso l’alto o verso il basso , e lo stato del sistema quale potrebbe essere? Si può associare lo stato al piano in cui si trova la cabina, in modo che l’uscita è così univocamente determinata: noto il piano ed il pulsante premuto è univocamente determinabile il movimento che deve compiere la cabina. Se consideriamo

ad esempio che il piano di partenza sia il primo (stato precedente), se viene premuto 2 (ingresso) la cabina si muove verso l’alto di uno (uno dei possibili valori che può assumere l’uscita), se invece sono al secondo piano e si preme ancora due la cabina non si muove (altro possibile valore che può assumere l’uscita in funzione dell’ingresso (lo stesso) e dello stato iniziale (differente).

Figura 6 – Il sistema ascensore

(+1, +2, -1, -2, NONE) (T, 1, 2)

2

1

T

Input Uscite

+1 +2

-1 -2

NONE

Page 13: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 13

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

CnT2-I.1.3 Conoscere i concetti di sistema a stati finiti, di sistema discreto e di automa SISTEMA A STATI FINITI

Qual è il significato del termine Finito? Finito è sinonimo discreto, numerabile, digitale. Il numero di penne che voi avete nell’astuccio è finito, il valore che può assumere una grandezza binaria è finito,….

Quindi per Sistema a Stati Finiti (FSM_Finite State Machine) si intende un sistema

le cui variabili, di ingresso, di uscita e di stato assumono

uunn nnuummeerroo ffiinniittoo ddii vvaalloorrii..

AUTOMA Se tali variabili transitano da un valore all’altro solo in corrispondenza di determinati

istanti di tempo, il sistema di dice discreto nel tempo e costituisce un

AAUUTTOOMMAA aa ssttaattii ffiinniittii..

Gli automi si definiscono anche macchine sequenziali (a differenza dei sistemi combinatori).

Un’ automa a stati finiti può essere compiutamente descritto tramite la Funzione di Stato Futuro e la Trasformazione di Uscita.

L’automa essendo un modello è un concetto astratto tramite il quale noi riusciremo a

descrivere il funzionamento di una macchina o di un processo.

FUNZIONE DI STATO FUTURO e TRASFORMAZIONE DI USCITA Se il quesito è: lo stato attuale di un sistema dovrà tener conto della storia passata

di quel sistema (che è come dire lo stato futuro dovrà tener conto della storia attuale) possiamo rappresentare matematicamente la Funzione di Stato Futuro “x” nell’istante “i+1” dipendente (F) dal valore che lo stato “x” e l’uscita “u” hanno nell’istante precedente “i” :

11

xx((ii++11)) == FF((xx((ii)),, uu((ii))))

Page 14: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 14

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

A sua volta l’uscita “y” nell’istante “i” dipende dal valore dello stato “x” e dall’ingresso “u” sempre nell’istante “i”. Da un punto di vista matematico questi legami sono determinati dalla funzione di Trasformazione di Uscita:

Es. I.1.9) Il sistema dinamico descritto in Es. I.1.4 (carica di un condensatore) rappresenta un automa? …………..

Spiega il perché. …………………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………………...

yy((ii)) == GG((xx((ii)),, uu((ii))))

22

Page 15: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 15

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

CnT2-I.1.4 Conoscere la differenza tra automi sincroni e asincroni CLASSIFICAZIONE DEGLI AUTOMI

Gli automi si possono classificare in:

AUTOMI SINCRONI E’ presente un segnale di sincronizzazione (Clock di sistema) che con il fronte attivo determina la transizione dello stato del sistema (secondo la “1”).

AUTOMI ASINCRONI In assenza di temporizzazioni lo stato del sistema

futuro varia nel momento in cui c’è una variazione dello stato attuale o dell’ingresso. La transizione è istantanea, a meno del ritardo introdotto dai circuiti.

Es. I.1.10) Il FF-SR descritto in Es. I.1.3 rappresenta un automa ………………………………..

in quanto ……………………………………………………………………………………………………………………………………

Ora riporta il diagrammi di temporizzazione dell’uscita Q, per quattro

fronti attivi del clock (Il clock è attivo sul fronte di salita) in funzione degli ingressi che sei libero di graficare.

Ck

t

t

t

t

R

Q

S

Page 16: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 16

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

CnT2-I.1.5 Conoscere e comprendere i concetti relativi agli automi di Mealy e di Moore

Gli automi a stati finiti sono classificabili secondo due modelli:

AUTOMA di MEALY - E’ un modello che serve per rappresentare i sistemi propri, ossia quei sistemi per i quali l’uscita è funzione dello stato (precedente) e dell’ingresso

Il modello di Mealy si può schematizzare secondo il seguente schema:

Per il modello di Mealy valgono le seguenti regole: o quando l’automa si trova nello stato x(i) e si presenta un nuovo ingresso u(i)

transita in un nuovo stato tramite la rete combinatoria F. Questo passaggio viene indicato transizione di stato.

o l’automa che si trovi nello stato x(i) quando riceve un nuovo ingresso u(i) transita in un nuovo stato al quale corrisponde una nuova uscita.

F (Funzione di Stato Futuro)

G (Trasformazione di Uscita)

x(i) u(i) y(i) x(i+1)

Ritardo & Sync

Clock

Rete Combinatoria

Rete Combinatoria

Memoria

Fig. 7 – Schema a blocchi dell’automa di Mealy

Stato Successivo

Stato Precedente

Page 17: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 17

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

Tra lo stato precedente e lo stato successivo è interposto il blocco “Ritardo&Sync”. Nel caso di Automa Sincrono il trasferimento dello stato successivo è sincronizzato ad un Clock, mentre nel caso di Automa Asincrono il trasferimento avviene solo in funzione della variazione di uno degli ingressi. AUTOMA di MOORE - E’ un modello che serve per rappresentare i sistemi impropri, ossia quei sistemi per i quali l’uscita è solo funzione dello stato

Il modello di Moore si può schematizzare secondo il seguente schema:

F (Funzione di Stato Futuro)

G (Trasformazione di Uscita)

x(i) u(i) y(i) x(i+1)

Ritardo & Sync

Clock

Rete Combinatoria

Rete Combinatoria

Memoria

Stato Successivo

Stato Precedente

Fig. 8 – Schema a blocchi dell’automa di Moore

Page 18: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 18

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

Per il modello di Moore valgono le seguenti regole: o l’automa che si trovi nello stato x(i) in presenza di un nuovo ingresso u(i)

transita in un nuovo stato. Questo passaggio viene indicato transizione di stato.

o l’automa che si trovi nello stato x(i) in presenza di un nuovo ingresso u(i) transita in un nuovo stato al quale corrisponde una nuova uscita.

Da un punto di vista matematica l’automa di Moore può essere descritto tramite la

funzione di stato futuro e la trasformazione d’uscita:

Esempio 3) Riprendiamo ancora il FF-SR per sostenere a questo punto che esso

rappresenta un Automa di Moore sincrono con il segnale di Clock Ck. In assenza di variabili intermedie l’uscita del Flip-Flop coincide con lo stato del sistema e quindi il Blocco G vale “1”. La transizione dell’uscita d’altra parte avviene in concomitanza del fronte attivo del clock e dipende dal valore degli ingressi e dello stato precedente (valore che Q assumeva al precedente fronte attivo). Un latch rappresenta pur sempre un Automa di Moore con G=1, ma asincrono per l’assenza del clock.

Figura 3 – Latch SR

R

Q

Q

S

Figura 1 – Flip-Flop SR

R

Q

Q

Ck

S Fai

rif.all’Es.2 di pag. 45 del testo

Fai rif.all’Es.2 di pag. 45 del testo

8 Fig. 9 – Flip -Flop SR

Fig. 10 – Latch SR

Page 19: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 19

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

RITARDO UNITARIO Nel caso in cui per un’automa di Moore si abbia:

Si è in presenza di un ritardo unitario, ossia l’uscita in un certo istante coincide con

l’ingresso nell’istante immediatamente precedente: ciò vuol dire che l’uscita del sistema dinamico risponde con un certo ritardo all’ingresso. In un sistema di questo tipo la funzione di trasferimento risulta quindi che l’uscita nell’istante successivo dipende dall’ingresso nell’istante precedente:

yy((ii++11)) == uu((ii)) 77

Esempio 4) Ed eccoci al FF tipo D. Sapete perché D? D sta per Delay e quindi

ritardo. Il Flip-Flop tipo D è un esempio di ritardo unitario sincrono in quanto l’uscita riporta con un ritardo che dipende dal ciclo di clock il segnale in ingresso.

L’elemento di ritardo, nelle fig. 6 e 7, è di fatto l’elemento di sincronizzazione SYNC,

Volendo ora pensare all’automa come composto da una unità puramente algebrica e da un elemento unitario, si può pensare di raggruppare i blocchi F e G in un unico blocco puramente combinatorio C, dopo averli evidenziati, rispettivamente di MEALY e di MOORE, in fig. 12.

F

G

x(i)

u(i) y(i) x(i+1) Δ

Funzione di stato futuro

Fig. 11 – Il ritardo unitario nell’automa di Mealy

yy((ii)) == xx((ii)) xx((ii++11)) == uu((ii))

66 55

Page 20: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 20

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

Dal diagramma a blocchi di fig. 13 si deduce che un automa è schematizzabile con una parte puramente combinatoria e da un blocco di memoria (blocco di ritardo unitario). Il blocco di memoria avrà il compito di memorizzare il vecchio stato, x(i) (detto anche entrata secondaria), fino a quando non sarà necessario sostituirlo con il nuovo x(i+1) (detto anche uscita secondaria). Supponendo che le variabili siano binarie la parte combinatoria si realizza con circuiti combinatori ed il ritardo unitario con circuiti sequenziali.

Δ

F

G u(i)

x(i)

x(i+1)

y(i)

Δ

F

G u(i)

x(i)

x(i+1)

y(i)

Fig. 12 – Rappresentazione di una macchina sequenziale secondo MEALY e MOORE

C (Circuito

Combinatorio)

Δ (Memoria)

u(i)

x(i) x(i+1)

y(i)

Fig. 13 – Rappresentazione di una macchina sequenziale

Page 21: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 21

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

RAPPRESENTAZIONE DEGLI AUTOMI Un automa si può rappresentare in tre modi:

Cerchiamo ora di rappresentare un sistema descritto da:

o tre ingressi (uO, u1, u2) o due stati (x0, x1) o due uscite (y1, y2)

1. TABELLA DEGLI STATI La prima tabella, funzione dello stato futuro, riporta l’incrocio tra gli stati precedenti (righe) e gli ingressi (colonne) ed evidenzia per ciascuna corrispondenza lo stato successivo. Supponiamo che il problema sia posto nel modo seguente:

- se lo stato iniziale è x0 e l’ingresso è uO, lo stato finale sarà x0; - se lo stato iniziale è x0 e l’ingresso è u1, lo stato finale sarà x1; - se lo stato iniziale è x0 e l’ingresso è u2, lo stato finale sarà x1; - se lo stato iniziale è x1 e l’ingresso è u0, lo stato finale sarà x1; - se lo stato iniziale è x1 e l’ingresso è u0, lo stato finale sarà x0; - se lo stato iniziale è x1 e l’ingresso è u0, lo stato finale sarà x1;

La funzione dello stato futuro risulterà:

Tabella 1 –Funzione dello stato futuro

La seconda tabella, trasformazione di uscita, stabilisce la corrispondenza in funzione dello stato ed eventualmente anche degli ingressi (solo per Mealy).

Ingressi

Stat

o Pr

eced

ente

u0 u1 u2

xo x0 x1 x1

x1 x1 x0 x1

1

TABELLA DEGLI STATI (Funzione dello stato futuro e Trasformazione di Uscita)

DIAGRAMMA DEGLI STATI CARTA ASM

3

2

Input = {uO, u1, u2} Stato = {x0, x1} Output = {y1, y2}

In

Stato Stati successivi

Page 22: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 22

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

Supponiamo che il problema sia posto nel modo seguente:

- se lo stato iniziale è x0 e l’ingresso è uO, l’uscita sarà y1; - se lo stato iniziale è x0 e l’ingresso è u1, l’uscita sarà y0; - se lo stato iniziale è x0 e l’ingresso è u2, l’uscita sarà y0; - se lo stato iniziale è x0 e l’ingresso è uO, l’uscita sarà y1; - se lo stato iniziale è x0 e l’ingresso è u1, l’uscita sarà y1; - se lo stato iniziale è x0 e l’ingresso è u2, l’uscita sarà y0;

La trasformazione di uscita, con il modello di Mealy, risulterà:

Tabella 2 – Trasformazione di uscita

Es.I.1.11) Un problemino! Con il modello di Moore l’uscita è funzione solo dello stato. Sapresti riportare la trasformazione di uscita per tale modello (fai riferimento ad un sistema con due variabili di stato, tre ingressi e due uscite).

2. DIAGRAMMA DEGLI STATI Le stesse informazioni fornite dalle tabelle possono essere rappresentate sotto

Ingressi

Stat

o Pr

eced

ente

u0 u1 u2

xo y1 y0 y0

x1 y1 y1 y0

In

Stato Uscite

u0/y1

x0 x0/y0

u0

MOOREMEALY

Ingresso

Uscita Ingresso

Stato Uscita

Fig. 14 – Rappresentazione delle uscite, ingressi e stati

Stato

transizione transizione

Page 23: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 23

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

forma grafica tramite il diagramma degli stati. Gli stati del sistema sono rappresentati da nodi e la transizione tra stati è evidenziata con archi orientati sui quali è indicato uno stato di ingresso e, solo per Moore, uno di uscita.

Con il modello di Mealy, se il sistema è nello stato x0 in presenza dell’ingresso u0 genera l’uscita y1 e transita nello stato successivo (non evidenziato): pertanto l’uscita y1 è funzione dell’ingresso u0 e dello stato x0.

Con il modello di Moore allo stato x0 corrisponde l’uscita y0 e in presenza dell’ingresso u0 transita nello stato successivo (non evidenziato): pertanto l’uscita y1 è funzione solo dello stato x0.

Raggruppiamo ora la tabella 1 e la tabella 2 in unica tabella e rappresentiamo l’automa di Mealy con il diagramma degli stati.

Tabella 3 – Funzione dello stato futuro e Trasformazione di uscita

3. CARTA ASM - (Non viene trattata in questa dispensa ed eventualmente può far parte del modulo di approfondimento I.4)

Ingressi

Stat

o Pr

eced

ente

u0 u1 u2

xo x0/y1 x1/y0 x1/y0

x1 x1/y1 x0/y1 x1/y0

In

Stato

x0 x1

u0/y1 u1/y0

u2/y0 u0/y1

u1/y1 u2/y0 Mealy

Fig. 15 – Automa di Mealy - Diagramma degli stati

Page 24: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 24

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

AbT1-I.1.6 SAPER ANALIZZARE E/O CREARE LA STRUTTURA DI UN AUTOMA

Gli esempi e i problemi che seguono sono il modo più rapido per comprendere l’analisi del problema e la creazione del modello di Moore o di Mealy.

Esempio 5) Un distributore automatico distribuisce una bibita con due monete di 50 cent. Individuare gli ingressi, le uscite, gli stati del sistema e riportare con il modello di Moore il diagramma degli stati. IN Moneta (M) OUT Bibita (B) STATI PRONTO (0) ATTESA (1)

0 (M) – moneta non inserita

1 (M) – moneta inserita

0 (B) – bibita non erogata

1 (B) – bibita erogata

Stato iniziale del sistema (Il sistema è in attesa di ricevere la prima moneta)

Stato intermedio del sistema (Il sistema ha ricevuto la prima moneta ed è in attesa di ricevere la seconda)

Pronto (0)

M/B M/B

M/B

M/B

Attesa (1)

Mealy

Page 25: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 25

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

 

Es.I.1.14)  Un automa è descritto dalle seguenti tabelle; ricavare il diagramma degli stati  

  

 

 

 

 

 

Esempio 6) Il generatore di parità dispari riceve in ingresso una sequenza di “zero” e di “uno”. Esso deve generare un bit in uscita uguale ad “uno” se il numero di “uno” in ingresso è pari; in tal modo il numero di “1” complessivi tra ingresso e uscita è dispari Ricavare il diagramma degli stati con il modello di Moore.

IN Bit_Input (BI) OUT Even (EV) STATI

Input: 0 1 0 1 1 0 0 1 Output: 1 0 0 1 0 0 0 1

0 – valore logico 0

1 – valore logico 1

0 – N.ro di “1” in ingresso pari

1 – N.ro di “0” in ingresso dispari

Page 26: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 26

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

ODD (0)

EVEN (1)

 

 

 

 

 

 

Esempio 7) Un distributore automatico distribuisce una bibita dal costo di 70 cent. con monete da 20 cent. e 50 cent. Diagrammare con Moore il diagramma degli stati.

IN Moneta da 20 cent. (M1) Moneta da 50 cent. (M2)

OUT Bibita (B)

STATI

In tale stato l’uscita è uguale a zero (Stato iniziale)

In tale stato l’uscita è uguale ad 1

ODD/ 0

1

EVEN/ 1

1 0 0

Moore

0 (M1) – moneta non inserita

1 (M1) – moneta inserita

0 (M2) – moneta non inserita

1 (M2) – moneta inserita

0 (B) – bibita non erogata

1 (B) – bibita erogata

(0 Ct.) Stato iniziale del sistema

Page 27: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 27

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

IMPORTO TOT.

 

 

 

0 Ct./B

M1*M2 M2

M1

RST M2

15 Ct./B 10 Ct./B 5 Ct./B

M2

M1 M1

M1*M2

M1*M2

RST

(5 Ct.) Stato con 5 cent. inseriti

(10 Ct.) Stato con 10 cent. inseriti

(15 Ct.) Stato con 15 cent. inseriti e condizione di reset

Moore

Page 28: Gli AUTOMI a stati finiti

Information and Communication Technology – Modulo n. 1 Pag. 28

C. Cancelli – Gli automi a stati finiti Ed. 1.0 - Dicembre 2010

Qualsiasi osservazione che possa contribuire a rendere il documento più completo è ben accolta!

[email protected]