reti logiche 1 - uniroma2.it · 22/06/2010 corso di reti logiche 2005/06 14 ma il sistema oltre a...

119
Reti Logiche 1 Prof. B. Buttarazzi A.A. 2009/2010 ASF

Upload: lythuy

Post on 18-Feb-2019

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Reti Logiche 1

Prof. B. Buttarazzi

A.A. 2009/2010

ASF

Page 2: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Sommario

• Introduzione alle reti sequnziali

• La definizione di ASF

• ASF di Mealy e Moore

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

2

• ASF di Mealy e Moore

• Diagrammi di stato e Tabelle di flusso

• Automi equivalenti

• Minimizzazione di ASF

• Esempi

Page 3: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Le reti combinatorie sono caratterizzate da un modello che definisce in

modo univoco la corrispondenza tra ingresso e uscite z=f(x)

Introduzione alle reti sequenziali

Reti combinatorie

22/06/2010 Corso di Reti Logiche 2005/06 3

Porte logiche

combinatorie

ingressiuscite

Page 4: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Reti combinatorie

• Una rete combinatoria con n ingressi ed m uscite

realizza m funzioni booleane con n ingressi.

• Assegnando alle variabili binarie x1x2….xn (che

rappresentano i segnali di ingresso) tutte le

22/06/2010 Corso di Reti Logiche 2005/06 4

rappresentano i segnali di ingresso) tutte le

possibili configurazioni di ingresso il

comportamento della rete si specifica tramite la

tabella di verità di ciascuna funzione di uscita

z1z2….zm .

Page 5: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Limite delle Reti Combinatorie

• Una Rete Combinatoria realizza una (o m ) funzione booleana

• ma non è in grado di realizzare un algoritmo

– Ad esempio un addizionatore ripple-carry con 4 FA

22/06/2010 Corso di Reti Logiche 2005/06 5

– Ad esempio un addizionatore ripple-carry con 4 FA realizza la funzione di somma con input parallelo a 4bit

però…….

– nessuna RC è in grado di realizzare da sola l’algoritmo della somma ovvero una generica somma a n-bit con input sequenziale.

Page 6: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Addizionatore per numeri binari rappresentati su 4 bit (e

risultato rappresentato

su 5 bit) ottenuto

dalla connessione di

4 moduli FA.

1 BIT

FULLADDER

Z0

Z1

X0

Y0

X1

0

Esempio di RC

22/06/2010 Corso di Reti Logiche 2005/06 6

4 moduli FA.

Z4

1 BIT

FULLADDER

1 BIT

FULLADDER

1 BIT

FULLADDER

Z2

Z3

X1

Y1

X2

Y2

X3

Y3

Page 7: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Proviamo a calcolare la somma di 2 numeri

rappresentati su 3bit con I/O sequenziale

RC con I/O Sequenziale

22/06/2010 Corso di Reti Logiche 2005/06 7

X = (x2, x1, x0) = 011, Y = (y2, y1, y0) =110

X+Y = (r3, z2, z1, z0) =1001

Page 8: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Somma per dati sequenziali

Questo problema non può essere risolto da una Rete Combinatoria.

Occorre una rete capace di memorizzare il riporto e riassegnarlo

all’ingresso, quindi capace di dare risposte non solo in funzione

dell'ingresso corrente, ma anche dello stato corrente della sua memoria

interna.

22/06/2010 Corso di Reti Logiche 2005/06 8

.

FA

x0

1

0

y0

x1

1

1

y1

x2

0

1

y2

z2

1

0

r3

z1

0

1

r2

z0

1

0

r1

X+Y = 101

•Occorre la memorizzazione del riporto!

•Occorre introdurre linea di ciclo!

Memoria ad 1 bit

Page 9: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

FA

x0

1

0

x1

1

1

x2

0

1

z2

1

z1

0

z0

1

0

X+Y = 0101errato!

Somma 3-bit con I/O sequenziale

22/06/2010 Corso di Reti Logiche 2005/06 9

0

y0

1

y1

1

y2

0

r3

1

r2

0

r1

errato!

correttoX+Y = (r3, z2, z1, z0) =1001

Page 10: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Reti Logiche per la somma

a s

a b r s

0 0 0 0

Addizionatore Parallelo

Addizionatore

a s

Addizionatore Seriale

22/06/2010 Corso di Reti Logiche 2005/06 10

Addizionatore

1-bit

a

b

s

r

0 0 0 0

0 1 0 1

1 0 0 1

1 1 1 0

Tabella di veritàSchema a Blocchi

Addizionatore

1-bitb r

Memoria

1-bit

Rete Logica Combinatoria Rete Logica Sequenziale

Page 11: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Addizionatore Seriale

x1

x2

Rete

Combinatoria

Full Adder

uscitaingresso

z1

22/06/2010 Corso di Reti Logiche 2005/06 11

L’addizione è ottenuta mandando

in ingresso al Full Adder il riporto calcolato al passo precedente

Y1y1

Full Adder

stato

futuro

stato

presente

Page 12: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Una Rete sequenziale è caratterizzate dal fatto che le uscite non

dipendono solo dall'ingresso all'istante t ma anche dalla sequenza degli

ingressi applicati a partire dalla condizione iniziale.

Rete Sequenziale

x1

xz1

22/06/2010 Corso di Reti Logiche 2005/06 12

x2

xn

z1

z2

zm

Y1

.

.

Yk

y1

.

.

yk

Rete

Combinatoria

uscitaingresso

stato

futuro

stato

presente

Page 13: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

In una Rete Sequenziale se indichiamo:

• x le variabili di ingresso

• z le variabili di uscita

• y le variabili che rappresentano lo stato attuale,

• Y le variabili che rappresentano lo stato futuro

Rete Sequenziale

22/06/2010 Corso di Reti Logiche 2005/06 13

• Y le variabili che rappresentano lo stato futuro

allora la relazione tra ingresso e uscita si articola in due funzioni:

Y= δ(x,y)

z = ω(x,y)

funzione di transizione di stato

funzione di uscita

Page 14: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Y= δ(x,y)

z = ω(x,y)Le due funzioni indicano che quando arrivano in ingresso dei segnali (x) l’output z prodotto dal sistema dipende sia dal valore di segnali in ingresso (x) sia dallo stato attuale (y). in cui si trova il sistema

ω

Rete Sequenziale

22/06/2010 Corso di Reti Logiche 2005/06 14

Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita ω, passerà dallo

stato attuale y a quello successivo Y secondo la funzione di transizione δ, che tiene conto del tipo di input e dello stato attuale.

Page 15: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Il numero di elementi di memoria dipende dai diversi stati in cui potrà trovarsi il sistema:

- un elemento di memoria (1 bit) permette di

Rete Sequenziale

22/06/2010 Corso di Reti Logiche 2005/06 15

- un elemento di memoria (1 bit) permette di rappresentare 2 stati (0,1).

- n elementi di memoria (n bit) posso rappresentare 2n

stati distinti.

Page 16: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Per fare l’analisi e la sintesi delle Reti Sequenziali è utile uno strumento formale adatto a descrivere sistemi con memoria.

Automi a stati finiti

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

16

memoria.

L'automa a stati finiti è il modello astratto adatto a rappresentare le reti sequenziali.

Prima di affrontare lo studio delle reti sequenziali analizzeremo, limitatamente agli obiettivi di questo corso, le caratteristiche degli automi a stati finiti.

Page 17: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Introduzione agli Automi

Con il termine automa s’intende un qualunque dispositivo, che esegue in modo autonomo un particolare compito, sulla base di ordini ricevuti.

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

17

particolare compito, sulla base di ordini ricevuti.

Page 18: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

• Sono esempi di automi la lavatrice, la lavastoviglie, i sistemi di controllo di apertura/chiusura delle banche, i bancomat, i sistemi di controllo degli ascensori, i distributori automatici di bevande, gettoni telefonici, benzina.

• Sono rappresentabili con automi anche sistemi più astratti

Automi

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

18

• Sono rappresentabili con automi anche sistemi più astratti come gli analizzatori di linguaggi, i riconoscitori di sequenze, i traduttori.

• Anche i computer sono automi, in particolare sono automi che possono svolgere un ruolo diverso a seconda del programma che in quel momento sta “girando”nella memoria centrale.

Page 19: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Descrivere un automa significa fornire una indicazione, (supportata dall’uso di schemi,grafi, tabelle) delle modalità di funzionamento dell’automa stesso (cosa fa l'automa).

Automi

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

19

Quando descriviamo un automa compiamo un procedimento di astrazione preoccupandoci del solo comportamento logico-funzionale dell'automa e non della sua realizzazione fisica.

Page 20: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Noi ci riferiremo ad una particolare classe di automi, quella degli ASF che, da un punto di vista puramente matematico, rappresenta il modello astratto di un sistema con input ed output discreti, che può trovarsi in uno fra n STATI distinti.

Automa a Stati Finiti

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

20

Lo stato rappresenta una condizione in cui il sistema si trova tenendo conto degli input ricevuti in precedenza e da esso dipende il comportamento del sistema a fronte di input successivi.

Page 21: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Il comportamento di un automa a stati finiti (ASF)

A è descritto dalla quintupla

Automa a Stati Finiti

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

21

A=<I, O, Q, δ, ω >

Page 22: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

ove I, O, Q, indicano rispettivamente

• I insieme finito di simboli di input

• O insieme finito di simboli di output

• Q insieme finito di stati interni di cui si assume q ∈Q stato

A=<I, O, Q, δ, ω >

Automi a stati finiti (ASF)

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

22

• Q insieme finito di stati interni di cui si assume q0 ∈Q stato

iniziale (di partenza )

mentre δ, ω sono le funzioni che specificano il comportamento dell’automa.

• δ : I×Q→Q è la funzione di transizione di stato (che ha per dominio

il prodotto cartesiano I×Q (ovvero l'insieme delle coppie xi,qi ) e per

codominio Q,) che serve a specificare il nuovo stato raggiunto

dall’automa;

• ω : I×Q→O è la funzione di uscita, che serve a specificare il

simbolo di uscita prodotto dall’automa.

Page 23: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Esistono automi ove l’informazione prodotta in uscita dipende soltanto dallo stato raggiunto dalla macchina.

(ovvero il valore dell’uscita è già associato allo stato dell’automa vedi Latch prossime lezioni) pertanto in tali casi anziché usare il simbolo ω si userà ω’.

Automi

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

23

anziché usare il simbolo ω si userà ω’.

Allora distingueremo i due tipi di automi in:

•Automi di Mealy quelli che fanno uso della funzione di uscita ω

•Automi di Moore quelli che fanno uso della funzione di uscita ω’.

Page 24: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Un automa si dice di Mealy (oppure improprio ) quando è

caratterizzato dal fatto che l’uscita (zt) al tempo t, oltre che

dallo stato (qt), dipende anche dagli ingressi nello stesso

istante, in pratica:zt=ωωωω(xt,qt).

Automi

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

24

Un automa si dice di Moore (oppure proprio) quando

l’uscita (zt) al tempo t dipende esclusivamente dal valore

assunto dallo stato al tempo t, in pratica:zt =ωωωω’(qt).

Non si deve pensare che gli automi di Moore siano più limitati di quelli di Mealy(rispetto alle cose che possono fare) in quanto è sempre possibile trasformare ogni automa di Mealy nel corrispondente automa di Moore e viceversa.

Page 25: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

• x le variabili di ingresso

• z le variabili di uscita

• y le variabili che rappresentano lo stato attuale,

• Y le variabili che rappresentano lo stato successivo (a quello attuale)

allora la relazione tra ingresso e uscita si articola in due fasi:

Rete SequenzialeIn una rete sequenziale

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

25

allora la relazione tra ingresso e uscita si articola in due fasi:

Y= G(x,y)

z = F(x,y)

funzione di transizione di stato

funzione di uscita

Page 26: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Facendo corrispondere:

I → x,

O → z

Q → y,Y

δ δ δ δ →→→→ G

ω ω ω ω →→→→ F

Rete Sequenziale

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

26

ω ω ω ω →→→→ F

si può osservare la stretta corrispondenza che c’è fra un automa a stati finiti (ASF) A descritto dalla quintupla

A=<I, O, Q, δ, ω >

e una rete sequenziale descritta dalle relazioni ingresso uscita

Y= G(x,y) z = F(x,y)

Le Reti Sequenziali sono esempi di automi di Mealy.

Page 27: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Rappresentazioni di ASF

Per rappresentare il comportamento di un automa ovvero:

•i diversi stati,

•la funzione che calcola, lo stato successivo δ ,

•e la funzione che calcola l'uscita ω ,

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

27

•e la funzione che calcola l'uscita ω ,

generalmente si utilizzano due tipi di rappresentazione equivalenti:

• rappresentazione a grafo: diagramma degli stati;

• rappresentazione a matrice: tabella di flusso;

Page 28: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Nella rappresentazione a grafo, chiamato diagramma

degli stati,

• i nodi rappresentano i possibili stati dell’automa;

Rappresentazione a grafo

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

28

• i rappresentano i possibili ;

• gli archi rappresentano le relazioni di passaggio da

uno stato all’altro, secondo il particolare input.

Page 29: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

ASF di Mealy

Nel diagramma degli stati dell’Automa di Mealy ogni nodo

rappresenta uno stato.

Ad ogni arco che collega due nodi (stati) q1 q2 è associata una

coppia x/z, dove x è l’ingresso che provoca il cambiamento dallo

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

29

coppia x/z, dove x è l’ingresso che provoca il cambiamento dallo

stato q1 allo stato q2 e z è l’uscita che ne deriva.

q1 q2

x / z

Page 30: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Il generico arco che collega la coppia di nodi (stati) q1 q2 è

etichettato da una coppia di valori x,z tali che

δ(x,q1) = q2 e ω(x,q1) = z.

x / z

ASF di Mealy

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

30

q1 δ (x, q1)

x / ω(x, q1)

Stato q1 Stato q2

q1 q2

x / z

Page 31: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Nel diagramma degli stati dell’Automa di Moore ogni nodo rappresenta

uno stato cui è associata l’uscita corrispondente

Pertanto ogni stato è rappresentato da una coppia q/z ove q denota il

particolare stato e z è l’uscita ad esso associata.

Es: (qi / ω( qi) )

ASF di Moore

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

31

Es: (qi / ω( qi) )

Ad ogni arco che collega due nodi (stati q1 q2 ) è associata una sola

etichetta x, che rappresenta l’ingresso che provoca il cambiamento dallo

stato q1 allo stato q2.

q1 / ω( q1) δ (x, q1)

x

stato q1 stato q2

Page 32: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Il generico arco che collega la coppia di nodi (stati q1 q2 ) è

etichettato da x tale che

δ(x,q1) = q2 ove q2 è associato all’uscita z2 e z2 = ω( q2)

ASF di Moore

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

32

q1 / ω( q1) δ (x, q1)

x

stato q1 stato q2

Page 33: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Nella rappresentazione a matrice, chiamata tabella di flusso di un ASF di MEALY, ogni casella (incrocio riga-colonna) specifica

ASF di Mealy

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

33

specifica

• qual è il successivo stato e l’output prodotto dall’automa se esso si trova in un determinato stato e riceve un certo input.

Page 34: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Tabella di flusso di un ASF di Mealy

....

....

....

....

....

....

….

….

….

….

i1 i2 …. ….

s1

s2

....

insieme

degli

stati in-1 in

insieme

degli

ingressi

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

34

....

....

…. ….

......

......

....

....

....

...

....

...

…. ….

….sk

...

....

Ogni riga della tabella rappresenta uno stato dell'automa

Ogni colonna rappresenta una configurazione in ingresso

Page 35: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

In ogni incrocio riga colonna è rappresentato lo stato futuro/ simbolo

d'uscita determinato dalla transizione.

….

….

….

….

i1 i2 …. ….

s1

s

in-1 inii

ingresso

Tabella di flusso di un ASF di Mealy

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

35

....

....

…. ….

....

....

....

....

....

....

....

....

....

....

…. ….

…. ….

….

s2

sk

....

....

sj

stato

presentesp/zp stato futuro/

uscita

Page 36: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Nella rappresentazione a matrice, chiamata tabella di flusso un ASF di MOORE, ogni casella specifica

• qual è il successivo stato (e quindi l’output prodotto

Tabella di flusso di un ASF di Moore

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

36

• qual è il successivo stato (e quindi l’output prodotto dall’automa) se esso si trova in un determinato stato e riceve un certo input.

Page 37: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

......

......

......

….

….

….

….

i1 i2 …. ….

s1

s2

...

insieme

degli

stati in z

insieme degli

ingressi

colonna

delle

uscite

Tabella di flusso di un ASF di Moore

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

37

....

....

…. ….

....

....

....

....

....

....

....

....

....

....

…. ….

….sk

....

....

uscite

Ogni riga della tabella rappresenta uno stato dell'automa .

Ogni colonna (tranne l’ultima) rappresenta una configurazione in ingresso

Page 38: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

....

....

....

....

....

....

….

….

….

….

i1 i2 u…. ….

s1

s2

....

ii

ingresso

in

Tabella di flusso di un ASF di Moore

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

38

In ogni incrocio riga colonna è

rappresentato solo lo stato futuro,

in quanto il simbolo d'uscita è sull’ultima colonna.

....

....

…. ….

.. .. .. ..

....

....

....

..

....

..

…. ….

….sk

..

....

sjstato

presente

stato futuro

sp uj uscita

Page 39: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Un Automa di Mealy è

un ASF A1=<I, O, Q, δ, ω >•I insieme finito di simboli di input

•O insieme di valori di output

•Q insieme finito di stati interni di cui si assume q0 ∈Q stato di partenza

•δ : I×Q→Q funzione di transizione serve a specificare il nuovo stato

Riassumendo

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

39

•δ : I×Q→Q funzione di transizione serve a specificare il nuovo stato raggiunto dall’automa;

•ω : I×Q→O funzione di uscita, serve a specificare il simbolo di uscita prodotto dall’automa.

dove l’uscita al tempo t, oltre che dallo stato, dipende anche dagli

ingressi nello stesso istante:zt=ωωωω(xt,qt).

Page 40: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Un Automa di Moore è

un ASF A2=<I, O, Q, δ, ω’ >

•I insieme finito di simboli di input

•O insieme di valori di output

•Q insieme finito di stati interni di cui si assume q0 ∈Q stato di partenza

•δ : I×Q→Q funzione di transizione serve a specificare il nuovo stato

Riassumendo

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

40

•δ : I×Q→Q funzione di transizione serve a specificare il nuovo stato raggiunto dall’automa;

•ω’ : Q→O funzione di uscita, serve a specificare il simbolo di uscita prodotto dall’automa.

dove l’uscita al tempo t dipende esclusivamente dal valore assunto dallo

stato:zt =ωωωω’(qt).

Page 41: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Diagrammi degli stati

Mealy

q δ (x, q)

x / ω(x, q)

Automa di MEALY:

L'uscita della rete

dipende dagli ingressi e

dagli stati interni :

z=w(x,q).

Il nodo contiene solo il

Automa di MOORE:

L'uscita della rete

dipende dallo stato

interno: z=w’(q). Il nodo

ha due etichette (q/w(q))

che rappresentano

rispettivamente il nome

Riassumendo

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

41

Mooreq δ (x, q)

q/ω(q) δ (x, q)

x

Il nodo contiene solo il

nome dello stato (q).

Sugli archi ci sono 2

etichette (x/w(X,q) che

rappresentano la

configurazione di

ingresso che determina il

passaggio da uno stato

all'altro e il simbolo

d'uscita.

rispettivamente il nome

dello stato ed il simbolo

d'uscita corrispondente.

Sugli archi vi è solo

un’etichetta (x ) la

configurazione di

ingresso che determina il

passaggio da uno stato

all'altro.

Page 42: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Tabella di Flusso

• Mealy

ingressi x

q δ (x,q) / ω (x,q)

Riassumendo

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

42

• Moore

ingressi x

q δ (x,q) ω(q)

Page 43: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Esercizio

• Dato il diagramma degli stati del seguente

Automa dire di che tipo di Automa si tratta

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

43

q0 q1

B/0

A/0

A/1 B/1

Page 44: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

• Dal momento che ciascun nodo contiene solo il nome dello stato (q) e

sugli archi ci sono 2 etichette (x/z) che rappresentano la

configurazione di ingresso che determina il passaggio da uno stato

all'altro e il valore dell'uscita per tale configurazione, si tratta di un

Automa di MEALY ⇒ L'uscita della rete dipende dagli ingressi e

Soluzione

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

44

Automa di MEALY ⇒ L'uscita della rete dipende dagli ingressi e

dagli stati interni : z=w(x,q).

q0 q1

B/0

A/0

A/1 B/1

Page 45: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

• Dato il diagramma degli stati del seguente

Automa di Mealy determinare la

corrispondente Tabella di Flusso

Esercizio

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

45

q0 q1

B/0

A/0

A/1 B/1

Page 46: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

q0 q1

B/0

A/1 B/1

Soluzione

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

46

A/0

A B

q0 q0/1 q1/0

q1 q0/0 q1/1

Page 47: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

• Dato il diagramma degli stati del seguente

Automa di Mealy determinare la

corrispondente Tabella di Flusso

Esercizio

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

47

q0

00/0

01/1

10/1

q1

01/0

10/0

11/1

11/0

00/1

Page 48: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Q0

00/0

01/1

10/1

Q1

01/0

10/0

11/1

11/0

00/1

Soluzione

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

48

00 01 11 10

Q0 Q0/0 Q0/1 Q1/0 Q0/1

Q1 Q0/1 Q1/0 Q1/1 Q1/0

Page 49: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

• Data la seguente Tabella di Flusso

determinare il corrispondente diagramma

degli stati.

Esercizio

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

49

01

q0 q0/0 q1/0

q1 q0/0 q1/1

Page 50: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Soluzione

01

q0 q0/0 q1/0

q1 q0/0 q1/1

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

50

q0 q1

1/0

0/0

0/0 1/1

Page 51: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

• Dato il diagramma degli stati del seguente

Automa di Moore determinare la

corrispondente Tabella di Flusso

Esercizio

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

51

q0 /100

11

10

q1 /000

10

01

01

11

Page 52: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

q /100

q /000

10

01

00 01 11 10 ω

Soluzione

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

52

q0 /100

11

10

q1 /0 10

01

11

q

0

q0 q1 q0 q0 1

q

1

q1 q1 q0 q1 0

Page 53: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Equivalenza

Due stati q e q’ di un automa A si dicono

equivalenti se

per ogni simbolo di ingresso x

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

53

per ogni simbolo di ingresso x

(i)ω (x, q ) = ω (x, q ') (equicomportamento 1-step)

(ii)δ(x, q ) ≡δ (x, q ') (passo induttivo)

Page 54: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Stati equivalenti

Nell’automa di Mealy rappresentato si nota che q0 ≡ q2 in quanto:

• applicando la sequenza di simboli in ingresso AAB allo stato q0

il sistema produce in output 110

� ω (A, q0) =1 ω (A, q2) = 1ω (B, q2) = 0

• applicando la sequenza di simboli in ingresso AAB allo stato q2

il sistema produce in output 110

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

54

� ω (A, q2) =1 ω (A, q2) = 1ω (B, q2) = 0

q0q1

A/0

A/1 B/1B/0

q2q3

A/0A/1 B/1

B/0

Page 55: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

• In un certo senso, potremmo dire che la presenza degli stati

equivalenti (q0 e q1) in A é ridondante, in quanto gli stati

equivalenti effettuano le stesse transizioni a fronte degli stessi

input.

• Poiché un automa é un modello astratto di una macchina

sequenziale, é intuitivo il fatto che sia conveniente minimizzare

Stati equivalenti

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

55

un automa, ovvero trovare un automa equivalente che abbia il

minimo numero di stati.

• Si noti comunque che ridurre il numero degli stati di un automa

(sostituendo tutti gli stati equivalenti con un unico

rappresentante) equivale a ridurre (con legge logaritmica) il

numero di elementi di memoria nel circuito corrispondente.

Page 56: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

• applicando la sequenza di simboli in ingresso AAB allo

stato q0 il sistema produce in output 100

� ω (A, q0) =1 ω (A, q2) = 0ω (B, q2) = 0

• ma applicando la sequenza di simboli in ingresso AAB allo

stato q2 il sistema produce in output 000

ControEsempi

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

56

� ω (A, q2) =0 ω (A, q2) = 0ω (B, q2) = 0

q0q1

A/0

A/1 B/1B/0

q2q3

A/0A/0 B/1

B/0

Detti q e q’ due stati equivalenti di

un automa A, qualunque sequenza

di simboli di ingresso applicata ad

A nello stato q oppure ad A nello

stato q’ da luogo alla stessa

sequenza di output.

Page 57: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

• Partendo dallo stato q0

� δ (B, q0) = q1

• Partendo dallo stato q2

� δ (B, q2) = q0

ControEsempi

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

57

� δ (B, q2) = q0

q0q1

A/0

A/1 B/1B/0

q2q3

A/0A/1 B/1

B/0

Page 58: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Equivalenza fra ASF

Due automi dello stesso tipo A e A’ sono

equivalenti se per ogni stato s di A esiste uno

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

58

equivalenti se per ogni stato s di A esiste uno

stato s’ di A’ equivalente ad s e viceversa.

Riprenderemo l’aspetto della equivalenza per

la minimizzazione degli automi

Page 59: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Dato un Automa (ovvero data la sua tabella di flusso) il processo di minimizzazione mira ad eliminare gli stati ridondanti dell’automa, eventualmente presenti.

Il processo di minimizzazione degli stati di un automa consiste nei seguenti 3 passi:

Minimizzazione degli stati di un ASF

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

59

seguenti 3 passi:

• Trovare una partizione di stati dell’automa suddivisi in classi di equivalenza avente cardinalità minima.

• Scegliere un solo stato per ciascuna classe della partizione

• Sostituire ciascuna classe con il solo stato (nodo) scelto (utilizzando la tecnica della fusione).

Page 60: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Osservazioni

Per determinare l’automa minimo di un dato automa, a differenza di quanto capita per le funzioni booleane, esistono procedure efficienti

•Algoritmo per partizioni successive

•Metodo triangolare

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

60

Va comunque osservato che tra le due operazioni di minimizzazione è più importante quella delle funzioni booleane, infatti mentre minimizzare un automa significa ridurre il numero degli stati (rapporto tra numero di elementi di memoria e numero degli stati è k / 2k ) per le funzioni booleane risparmiare un operatore significa ridurre di uno il numero di porte.

Page 61: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

Per descrivere i vari passi dell’ALGORITMO di minimizzazione

utilizzeremo come esempio la seguente tabella di flusso iniziale:

Minimizzazione di un ASF di Mealy

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

61

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

D D,1 E,0 D,1 F,0

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

Page 62: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Metodo delle partizioni:

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Primo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

62

Π0(Q)= {A,B,C,D,E,F}

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

Page 63: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

Partizioniamo l’insieme di stati di partenza in funzione dell’output prodotto

Π0(Q)= {A,B,C,D,E,F}

{A}

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

Primo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

63

1 0 1 0

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

Page 64: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

Π0(Q)= {A,B,C,D,E,F}

{A}

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

Partizioniamo l’insieme di stati di partenza in funzione dell’output prodotto

Primo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

64

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

1 0 1 0

Page 65: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

Π0(Q)= {A,B,C,D,E,F}

{A,C}

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

Partizioniamo l’insieme di stati di partenza in funzione dell’output prodotto

Primo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

65

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

1 0 1 0

Page 66: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

Π0(Q)= {A,B,C,D,E,F}

{A,C,D}

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

Partizioniamo l’insieme di stati di partenza in funzione dell’output prodotto

Primo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

66

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

1 0 1 0

Page 67: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

Π0(Q)= {A,B,C,D,E,F}

{A,C,D}

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

Partizioniamo l’insieme di stati di partenza in funzione dell’output prodotto

Primo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

67

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

1 0 1 0

Page 68: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

Π0(Q)= {A,B,C,D,E,F}

{A,C,D,F}

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

Partizioniamo l’insieme di stati di partenza in funzione dell’output prodotto

Primo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

68

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

1 0 1 0

Page 69: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

Π0(Q)= {A,B,C,D,E,F}

{A,C,D,F}, {B}

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

Partizioniamo l’insieme di stati di partenza in funzione dell’output prodotto

Primo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

69

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

1 1 1 0

Page 70: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

Π0(Q)= {A,B,C,D,E,F}

{A,C,D,F}, {B}

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

Partizioniamo l’insieme di stati di partenza in funzione dell’output prodotto

Primo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

70

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

1 1 1 0

Page 71: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

Π0(Q)= {A,B,C,D,E,F}

{A,C,D,F}, {B}

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

Partizioniamo l’insieme di stati di partenza in funzione dell’output prodotto

Primo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

71

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

1 1 1 0

Page 72: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

Π0(Q)= {A,B,C,D,E,F}

Π1(Q)= {A,C,D,F}, {B,E}

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

Partizioniamo l’insieme di stati di partenza in funzione dell’output prodotto

Primo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

72

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

1 1 1 0

Page 73: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

Partizioniamo l’insieme di stati di partenza in funzione dell’output prodotto

Π0(Q)= {A,B,C,D,E,F}

Π1(Q)= {A,C,D,F}, {B,E}

Primo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

73

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

1 1 1 0

Page 74: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

(ii)δ(x, q ) ≡δ (x, q ') (passo induttivo)

Per ogni partizione creata vedo se è soddisfatta la regola ii

00 01 11 10 Π0(Q)= {A,B,C,D,E,F}

Secondo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

74

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

A è equivalente a C se per configurazione

di input (00 01 11 01)l’automa transita

nella stessa classe di equivalenza

Π0(Q)= {A,B,C,D,E,F}

Π1(Q)= {A,C,D,F}, {B,E}= {αααα}, {γγγγ}

Page 75: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

(ii)δ(x, q ) ≡δ (x, q ') (passo induttivo)

Per ogni partizione creata vedo se è soddisfatta la regola ii

00 01 11 10

Π0(Q)= {A,B,C,D,E,F}

Π1(Q)= {A,C,D,F}, {B,E}= {αααα}, {γγγγ}

Secondo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

75

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

Vediamo se A è equivalente a C

(per ogni input deve essere δ(x, q )

≡δ (x, q ') )

Page 76: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

(ii)δ(x, q ) ≡δ (x, q ') (passo induttivo)

Per ogni partizione creata vedo se è soddisfatta la regola ii

00 01 11 10A è equivalente a C se per ogni input

Π0(Q)= {A,B,C,D,E,F}

Π1(Q)= {A,C,D,F}, {B,E}= {αααα}, {γγγγ}

Secondo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

76

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

A è equivalente a C se per ogni input

(00 01 11 01)l’automa transita nella

stessa classe

δ(x, q ) ≡δ (x, q ')

00:

δ(00, A ) =A ovvero {αααα}, ΑΑΑΑ

e δ(00, C)= C ovvero {αααα} C

Page 77: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

(ii)δ(x, q ) ≡δ (x, q ') (passo induttivo)

Per ogni partizione creata vedo se è soddisfatta la regola ii

00 01 11 10A è equivalente a C se per ogni input

Π0(Q)= {A,B,C,D,E,F}

Π1(Q)= {A,C,D,F}, {B,E}= {αααα}, {γγγγ}

Secondo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

77

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

A è equivalente a C se per ogni input

(00 01 11 01)l’automa transita nella

stessa classe

01:

δ(01, A ) =E ovvero {γγγγ}, ΑΑΑΑ

e δ(01, C)= B ovvero {γγγγ} C

Page 78: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

(ii)δ(x, q ) ≡δ (x, q ') (passo induttivo)

Per ogni partizione creata vedo se è soddisfatta la regola ii

00 01 11 10A è equivalente a C se per ogni input

Π0(Q)= {A,B,C,D,E,F}

Π1(Q)= {A,C,D,F}, {B,E}= {αααα}, {γγγγ}

Secondo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

78

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

A è equivalente a C se per ogni input

(00 01 11 01)l’automa transita nella

stessa classe

11:

δ(11, A ) =A ovvero {αααα}, ΑΑΑΑ

e

δ(11, C)= C ovvero {αααα} C

Page 79: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

(ii)δ(x, q ) ≡δ (x, q ') (passo induttivo)

Per ogni partizione creata vedo se è soddisfatta la regola ii

00 01 11 10A è equivalente a C se per ogni input

Π0(Q)= {A,B,C,D,E,F}

Π1(Q)= {A,C,D,F}, {B,E}= {αααα}, {γγγγ}

Secondo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

79

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

A è equivalente a C se per ogni input

(00 01 11 01)l’automa transita nella

stessa classe

10:

δ(10, A ) =F ovvero {αααα}, ΑΑΑΑ

e

δ(10, C)= F ovvero {αααα} C

Page 80: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

(ii)δ(x, q ) ≡δ (x, q ') (passo induttivo)

Per ogni partizione creata vedo se è soddisfatta la regola ii

00 01 11 10

Π0(Q)= {A,B,C,D,E,F}

Π1(Q)= {A,C,D,F}, {B,E}= {αααα}, {γγγγ}

Secondo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

80

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

Quindi A è equivalente a C in

quanto per ogni input δ(x, q ) ≡

δ (x, q ')

Page 81: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

(ii)δ(x, q ) ≡δ (x, q ') (passo induttivo)

Per ogni partizione creata vedo se è soddisfatta la regola ii

00 01 11 10

Π0(Q)= {A,B,C,D,E,F}

Π1(Q)= {A,C,D,F}, {B,E}= {αααα}, {γγγγ}

Secondo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

81

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

Ora vediamo se A è equivalente a D

(per ogni input deve essere δ(x, q )

≡δ (x, q ') )

Dai confronti se vede che A ≡ D

Page 82: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

(ii)δ(x, q ) ≡δ (x, q ') (passo induttivo)

Per ogni partizione creata vedo se è soddisfatta la regola ii

00 01 11 10

Π0(Q)= {A,B,C,D,E,F}

Π1(Q)= {A,C,D,F}, {B,E}= {αααα}, {γγγγ}

Secondo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

82

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

D D,1 E,0 D,1 F,O

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

….ripetendo

Dai confronti se vede che A ≡ D

Page 83: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

(ii)δ(x, q ) ≡δ (x, q ') (passo induttivo)

Per ogni partizione creata vedo se è soddisfatta la regola ii

00 01 11 10

Π0(Q)= {A,B,C,D,E,F}

Π1(Q)= {A,C,D,F}, {B,E}= {αααα}, {γγγγ}

Secondo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

83

00 01 11 10

A A,1 E,0 A,1 F,0

B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

D D,1 E,0 D,1 F,0

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

Ma A non è equivalente a F in

quanto δ(01, A ) =E ovvero {γγγγ},

e

δ(01, F)= F ovvero {αααα}

Page 84: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

pertanto devo ulteriormente

partizionare l’insieme

(ii)δ(x, q ) ≡δ (x, q ') (passo induttivo)

Π0(Q)= {A,B,C,D,E,F}

Secondo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

84

Π (Q)= {A,B,C,D,E,F}

Π1(Q)= {A,C,D,F}, {B,E}

Π2(Q)= {A,C,D}, {F},{B,E= {αααα}, {ββββ} , {γγγγ}

Page 85: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Eseguo lo stesso controllo sulla classe {B,E} che

non risulta partizionabile, pertanto l’insieme delle

classi equivalenti è:

{A,C,D}, {F} {B,E},

Secondo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

85

{A,C,D}, {F} {B,E},

{α}, {β} , {γ}

Page 86: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Tutti gli stati appartenenti ad una stessa classe possono essere sostituiti da uno solo di essi ( rappresentante ) in quanto sufficiente a rappresentarli tutti in una tabella di flusso minima.

Pertanto le classi risultanti sono:

Secondo step

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

86

α:=(Α,C,D)

β:=(Β,Ε)

γ:=(F)

Page 87: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

A questo punto è possibile aggiornare la tabella di flusso (sostituire le 3 righe A,C,D con α – le 2 righe B,E con β e F con γ

α:=(A,C,D)

β:=(Β,Ε)

γ:=(F)

00 01 11 10

A A,1 E,0 A,1 F,0

Tabella di flusso

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

87

γ:=(F)B A,1 B,1 D,1 B,0

C C,1 B,0 C,1 F,0

D D,1 E,0 D,1 F,0

E A,1 E,1 C,1 E,0

F C,1 F,0 F,1 F,0

00 01 11 10

α α,1 β,0 α,1 γ,0

β α,1 β,1 α,1 β,0

γ α,1 γ,0 γ,1 γ,0

D D,1 E,0 D,1 F,0

Page 88: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

00 01 11 10

α α,1 β,0 α,1 γ,0

La tabella di flusso minima è:

Tabella di flusso

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

88

β α,1 β,1 α,1 β,0

γ α,1 γ,0 γ,1 γ,0

D D,1 E,0 D,1 F,0

E A,1 E,1 C,1 E,0

B C,1 F,0 F,1 F,0

Ogni riga della tabella rappresenta uno stato dell'automa .

Ogni colonna rappresenta una configurazione in ingresso.

Page 89: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Poichè l’automa minimo ha 3 stati (ovvero necessita di

ricordare 3 stati distinti (α,β,γ) ) α,β,γ) ) α,β,γ) ) α,β,γ) ) per la sua implementazione

(sintesi) saranno sufficienti 2 bit, che potremmo codificare nel

Minimizzazione di un ASF di Mealy

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

89

(sintesi) saranno sufficienti 2 bit, che potremmo codificare nel

seguente modo:

α=00, β=01, γ=11.α=00, β=01, γ=11.α=00, β=01, γ=11.α=00, β=01, γ=11.

Page 90: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1 z

A D B 0

B E C 0

Minimizzazione di un ASF di Moore

Metodo delle partizioni:

(i)ω (x, q ) = ω (x, q ')

(equicomportamento)

Π0(Q)= {A,B,C,D,E,F}

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

90

B E C 0

C F B 0

D A B 0

E F A 1

F E D 1

(equicomportamento)

(ii)δ(x, q ) ≡δ (x, q ‘ )

(passo induttivo)

Page 91: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1 z

A D B 0

B E C 0

La minimizzazione di un automa di Moore è più semplice in quanto

la prima partizione si determina osservando direttamente la colonna z

Minimizzazione di un ASF di Moore

Metodo delle partizioni:

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π0(Q)= {A,B,C,D,E,F}

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

91

B E C 0

C F B 0

D A B 0

E F A 1

F E D 1

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π1(Q)= {A,B,C,D,}, {E,F}= {αααα}, {γγγγ}

Page 92: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1 z

A D B 0

B E C 0

Mentre per i passi successivi è identica al caso precedente

Confronto A e B

Minimizzazione di un ASF di Moore

Metodo delle partizioni:

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π0(Q)= {A,B,C,D,E,F}

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

92

B E C 0

C F B 0

D A B 0

E F A 1

F E D 1

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π1(Q)= {A,B,C,D,}, {E,F}= {αααα}, {γγγγ}

Page 93: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1 z

A D B 0

B E C 0

Minimizzazione di un ASF di Moore

Metodo delle partizioni:

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π0(Q)= {A,B,C,D,E,F}

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

93

B E C 0

C F B 0

D A B 0

E F A 1

F E D 1

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π2(Q)= {A,C,D,}, {B}, {E,F}=

{αααα}, {ββββ} , {γγγγ}

Page 94: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1 z

A D B 0

B E C 0

Minimizzazione di un ASF di Moore

Metodo delle partizioni:

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π0(Q)= {A,B,C,D,E,F}

Confronto A e C

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

94

B E C 0

C F B 0

D A B 0

E F A 1

F E D 1

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π2(Q)= {A,C,D,}, {B}, {E,F}=

{αααα}, {ββββ} , {γγγγ}

Page 95: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1 z

A D B 0

B E C 0

Minimizzazione di un ASF di Moore

Metodo delle partizioni:

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π0(Q)= {A,B,C,D,E,F}

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

95

B E C 0

C F B 0

D A B 0

E F A 1

F E D 1

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π2(Q)= {A,D,}, {B,C}, {E,F}=

{αααα}, {ββββ} , {γγγγ}

Page 96: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1 z

A D B 0

B E C 0

Minimizzazione di un ASF di Moore

Metodo delle partizioni:

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π0(Q)= {A,B,C,D,E,F}

Confronto A e D

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

96

B E C 0

C F B 0

D A B 0

E F A 1

F E D 1

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π2(Q)= {A,D,}, {B,C}, {E,F}=

{αααα}, {ββββ} , {γγγγ}

Page 97: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1 z

A D B 0

B E C 0

Minimizzazione di un ASF di Moore

Metodo delle partizioni:

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π0(Q)= {A,B,C,D,E,F}

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

97

B E C 0

C F B 0

D A B 0

E F A 1

F E D 1

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π2(Q)= {A,D,}, {B,C}, {E,F}=

{αααα}, {ββββ} , {γγγγ}

Page 98: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1 z

A D B 0

B E C 0

Minimizzazione di un ASF di Moore

Metodo delle partizioni:

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π0(Q)= {A,B,C,D,E,F}

Confronto B e C

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

98

B E C 0

C F B 0

D A B 0

E F A 1

F E D 1

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π2(Q)= {A,D,}, {B,C}, {E,F}=

{αααα}, {ββββ} , {γγγγ}

Page 99: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1 z

A D B 0

B E C 0

Minimizzazione di un ASF di Moore

Metodo delle partizioni:

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π0(Q)= {A,B,C,D,E,F}

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

99

B E C 0

C F B 0

D A B 0

E F A 1

F E D 1

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π2(Q)= {A,D,}, {B,C}, {E,F}=

{αααα}, {ββββ} , {γγγγ}

Page 100: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1 z

A D B 0

B E C 0

Minimizzazione di un ASF di Moore

Metodo delle partizioni:

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π0(Q)= {A,B,C,D,E,F}

Confronto E e F

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

100

B E C 0

C F B 0

D A B 0

E F A 1

F E D 1

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π2(Q)= {A,D,}, {B,C}, {E,F}=

{αααα}, {ββββ} , {γγγγ}

Page 101: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1 z

A D B 0

B E C 0

Minimizzazione di un ASF di Moore

Metodo delle partizioni:

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π0(Q)= {A,B,C,D,E,F}

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

101

B E C 0

C F B 0

D A B 0

E F A 1

F E D 1

(ii)δ(x, q ) ≡δ (x, q ‘ )(passo induttivo)

Π2(Q)= {A,D,}, {B,C}, {E,F}=

{αααα}, {ββββ} , {γγγγ}

Page 102: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1 z

A D B 0

B E C 0

Minimizzazione di un ASF di Moore

Scelgo A,B,E come

rappresentanti delle 3

classi di equivalenza:

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

102

B E C 0

C F B 0

D A B 0

E F A 1

F E D 1

classi di equivalenza:

Π2(Q)= {A,D,}, {B,C}, {E,F}=

{αααα}, {ββββ} , {γγγγ}

Page 103: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1 z

A A B 0

B E B 0

ASF di Moore ridotto

Π2(Q)= {A,D,}, {B,C}, {E,F}=

{αααα}, {ββββ} , {γγγγ}

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

103

B E B 0

E E A 1

Page 104: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1

A A/1 B/0

Esercizio

Minimizzare l’automa di cui di seguito è riportata la tabella di flusso

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

104

A A/1 B/0

B C/1 D/0

C C/1 B/0

D B/0 C/1

Page 105: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1

A A/1 B/0

B C/1 D/0

C C/1 B/0

Π0(Q)={A,B,C,D}

Soluzione

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

105

C C/1 B/0

D B/0 C/1

Metodo delle partizioni:(i)ω (x, q ) = ω (x, q ') (equicomportamento)

(ii)δ(x, q ) ≡δ (x, q ')(passo induttivo)

Page 106: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1

A A/1 B/0

B C/1 D/0

C C/1 B/0

Π0(Q)={A,B,C,D}

Π1(Q)={A}

Soluzione

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

106

C C/1 B/0

D B/0 C/1

1 0

(i)ω (x, q ) = ω (x, q ') (equicomportamento)

Partizioniamo l’insieme di stati di partenza in funzione

dell’output prodotto

Page 107: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1

A A/1 B/0

B C/1 D/0

C C/1 B/0

Π0(Q)={A,B,C,D}

Π1(Q)={A,B}

Soluzione

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

107

C C/1 B/0

D B/0 C/1

1 0

Page 108: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1

A A/1 B/0

B C/1 D/0

C C/1 B/0

Π0(Q)={A,B,C,D}

Π1(Q)={A,B,C}

Soluzione

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

108

C C/1 B/0

D B/0 C/1

1 0

Page 109: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1

A A/1 B/0

B C/1 D/0

C C/1 B/0

Π0(Q)={A,B,C,D}

Π1(Q)={A,B,C}

Soluzione

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

109

C C/1 B/0

D B/0 C/1

1 0

Page 110: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1

A A/1 B/0

B C/1 D/0

C C/1 B/0

Π0(Q)={A,B,C,D}

Π1(Q)={A,B,C} , {D}

Soluzione

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

110

C C/1 B/0

D B/0 C/1

0 1

Page 111: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

0 1 Π1(Q)={A,B,C}, {D}

(ii)δ(x, q ) ≡δ (x, q ') (passo induttivo)

Per ogni partizione creata vedo se è soddisfatta la regola ii

Soluzione

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

111

0 1

A A/1 B/0

B C/1 D/0

C C/1 B/0

D B/0 C/1

Π (Q)={A,B,C}, {D}

= {αααα}, {γγγγ}

δ(0, A ) =A ovvero {αααα},

eδ(0, B)= C ovvero {αααα}

Page 112: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

ma

δ(1, A ) =B ovvero {αααα},

mentre

δ(1, B)= D ovvero {γγγγ}

Quindi A non è equivalente a B anche

(ii)δ(x, q ) ≡δ (x, q ') (passo induttivo)

Soluzione

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

112

0 1

A A/1 B/0

B C/1 D/0

C C/1 B/0

D B/0 C/1

Quindi A non è equivalente a B anche

se produce lo stesso output pertanto

devo ulteriormente partizionare

l’insieme

Π2(Q)={A,C }, { B}, {D}

{αααα}, {ββββ} , {γγγγ}

Page 113: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

1) Cosa deve accadere perché due stati A e B di un automa di Mealy siano equivalenti ?

2) Se viene applicata una stessa sequenza di ingressi a due stati equivalenti di un

Rispondere alle seguenti domande

Esercizio

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

113

2) Se viene applicata una stessa sequenza di ingressi a due stati equivalenti di un automa cosa si ottiene ?

3) Data la seguente tabella di flusso, dire perché A non è equivalente a D

0 1

A A/1 B/0

B C/1 D/0

C C/1 B/0

D B/0 C/1

Page 114: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

4) Data la seguente tabella di flusso, dire quale tra le seguenti relazioni di equivalenza è vera.

a) A≡C

b) B≡C

Esercizio

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

114

b) B≡C0 1

A A/1 B/0

B C/1 D/0

C C/1 B/0

D B/0 C/1

Page 115: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Esercizio

Sia data la tabella di transizione seguente dove

X={a,b} Y={0,1} Q={q0, q1, …q7 }

Minimizzare l’automa

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

115

a b

___________________________

q0 q1/1 q7/1

q1 q5/1 q3/1

q2 q3/0 q4/1

q3 q2/0 q5/1

q4 q3/1 q2/1

q5 q2/1 q2/1

q6 q2/1 q3/1

q7 q2/0 q0/1

Page 116: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Soluzione

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

116

a b

_______________

qE qF/1 qH/1

qF qD/1 qG/1

qD qG/1 qG/1

qG qG/0 qD/1

qH qG/0 qD/1

Page 117: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

Riepilogo 1

• AUTOMI:

sono sistemi astratti in grado di modellare il comportamento delle reti sequenziali,

(in genere un automa è un dispositivo che esegue in modo autonomo un particolare compito, sulla base di ordini ricevuti)

• AUTOMA DI MEALY:

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

117

• AUTOMA DI MEALY:

è caratterizzato dal fatto che l’uscita al tempo t, oltre che dallo stato, dipende anche dagli ingressi nello stesso istante, in pratica:zt=ωωωω(xt,qt).

• AUTOMA DI MOORE:

è caratterizzato dal fatto che l’uscita al tempo t dipende esclusivamente dal valore assunto dallo stato, in pratica:zt=ωωωω’(qt).

Page 118: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

• DIAGRAMMI DEGLI STATI:

Riepilogo 2

q δ (x, q)

x / ω(x, q)

Mealy

q/ω(q) δ (x, q)

x

Moore

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

118

• TABELLE DI FLUSSO:

ingressi x

Mealyq δ (x,q) / ω (x,q)

ingressi x

Mooreq δ (x,q) ω(q)

Mealy Moore

Page 119: Reti Logiche 1 - uniroma2.it · 22/06/2010 Corso di Reti Logiche 2005/06 14 Ma il sistema oltre a produrre l’output z, secondo la funzione di uscita , passerà dallo stato attuale

• STATI EQUIVALENTI:

Due automi dello stesso tipo A e A’ sono equivalenti se per ogni stato s di A esiste uno stato s’ di A’ equivalente ad s e viceversa.

• MINIMIZZAZIONE ASF:

Il processo di minimizzazione degli stati di un automa

Riepilogo 3

22/06/2010 Corso di Reti Logiche 2009/10

(ASF)

119

Il processo di minimizzazione degli stati di un automa consiste nei seguenti 3 passi:

-trovare una partizione di stati dell’automa suddivisi in

classi di equivalenza avente cardinalità minima.

-scegliere un solo stato per ciascuna classe della partizione

-sostituire ciascuna classe con il solo stato (nodo) scelto

(utilizzando la tecnica della fusione).

L’automa minimo è unico (ha tanti stati quante sono le classi di indistinguibilità)