14.06.2013 Views

Capitolo 3: La macchina a stati finiti - Dipartimento di Fisica

Capitolo 3: La macchina a stati finiti - Dipartimento di Fisica

Capitolo 3: La macchina a stati finiti - Dipartimento di Fisica

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Cap. 3 – <strong>La</strong> <strong>macchina</strong> a <strong>stati</strong> <strong>finiti</strong> 3.3 – <strong>La</strong> <strong>macchina</strong> sincrona<br />

3.3 - <strong>La</strong> <strong>macchina</strong> sincrona<br />

Per ottenere una esatta misura del tempo da una <strong>macchina</strong> sincrona occorre accettare un<br />

vincolo: la mo<strong>di</strong>fica dei simboli d’ingresso, <strong>di</strong><br />

stato e <strong>di</strong> uscita deve verificarsi solo in<br />

corrispondenza <strong>di</strong> istanti tn , detti <strong>di</strong> sincronismo,<br />

che <strong>di</strong>stano uno dall’altro <strong>di</strong> una<br />

quantità T0 prefissata.<br />

Il funzionamento della <strong>macchina</strong> viene<br />

così sud<strong>di</strong>viso in intervalli <strong>di</strong> eguale durata,<br />

durante ciascuno dei quali ingresso, stato e<br />

uscita sono costanti. Per esprimere questa<br />

situazione è utile apporre un apice ai simboli <strong>di</strong><br />

ingresso, <strong>di</strong> stato e d’uscita ed utilizzarlo per<br />

in<strong>di</strong>care l’intervallo a cui si fa riferimento:<br />

u n = F(s n ,i n )<br />

46<br />

<strong>La</strong> <strong>macchina</strong> sincrona (comportamento)<br />

τ p : intervallo <strong>di</strong> tempo impiegato dal calcolo <strong>di</strong> F e <strong>di</strong> G<br />

T 0 : intervallo <strong>di</strong> tempo in cui la <strong>macchina</strong> non mo<strong>di</strong>fica il suo stato<br />

t n<br />

t n+1= t n + T 0<br />

ingresso i n-1 i n i n+1<br />

stato presente s n-1 s n<br />

uscita F(i n ,s n )<br />

stato futuro G(i n ,s n )<br />

C<br />

U U n-1 =D n-2<br />

ritardo τ p<br />

s<br />

<strong>La</strong> <strong>macchina</strong> sincrona (struttura)<br />

i<br />

F<br />

u i<br />

F<br />

u<br />

s<br />

G<br />

s*<br />

s<br />

G<br />

s*<br />

ritardo<br />

Τ0<br />

Τ0<br />

Registro<br />

n+1 = s* n = G(s n ,i n )<br />

Alla fine <strong>di</strong> ogni intervallo nella<br />

memoria viene scritto il simbolo <strong>di</strong> stato futuro<br />

che la funzione G ha generato all’inizio<br />

dell’intervallo (o poco dopo, se è una <strong>macchina</strong><br />

reale).Anche in questo caso il ruolo <strong>di</strong> memoria<br />

può essere affidato ad un ritardo.<br />

A <strong>di</strong>fferenza della <strong>macchina</strong> asincrona,<br />

in cui il valore del ritardo può essere qualsiasi,<br />

la <strong>macchina</strong> sincrona ha però bisogno <strong>di</strong> un<br />

ritardo esattamente <strong>di</strong> valore T0.<br />

Tecnica usuale per realizzarlo è quella<br />

<strong>di</strong> pre<strong>di</strong>sporre all’esterno un oscillatore a onda<br />

quadra (il clock) con periodo T0 ed impiegare<br />

poi o l’uno o l’altro dei due fronti del suo segnale d’uscita per in<strong>di</strong>care ad una particolare <strong>macchina</strong><br />

asincrona, detta registro, gli istanti in cui deve sostituire lo stato presente con lo stato futuro.<br />

Flip-flop e Registro<br />

L’uscita della <strong>macchina</strong> asincrona da porre in retroazione alla funzione G <strong>di</strong> una <strong>macchina</strong><br />

sincrona deve avere la proprietà <strong>di</strong> mo<strong>di</strong>ficarsi solo in corrispondenza degli istanti <strong>di</strong> sincronismo.<br />

Il caso più semplice è la retroazione <strong>di</strong> un bit.<br />

CASO DI STUDIO – A pag. 42 abbiamo stu<strong>di</strong>ato una<br />

<strong>macchina</strong> asincrona in grado <strong>di</strong> presentare in uscita i<br />

valori assunti da un segnale D in corrispondenza dei fronti<br />

<strong>di</strong> salita <strong>di</strong> un segnale C.<br />

Facciamo ora le seguenti ipotesi:<br />

il segnale C è perio<strong>di</strong>co con periodo T0 ,<br />

le mo<strong>di</strong>fiche <strong>di</strong> valore del segnale D possono<br />

verificarsi solo poco dopo il verificarsi su C <strong>di</strong> un<br />

fronte <strong>di</strong> salita.<br />

<strong>La</strong> conseguenza è evidenziata in figura: il segnale<br />

U è una copia <strong>di</strong> D ritardata <strong>di</strong> T0.<br />

L’ipotesi che le variazioni <strong>di</strong> D si verifichino con<br />

un piccolo ritardo rispetto al fronte <strong>di</strong> C non dve<br />

preoccupare: il ritardo con cui la <strong>macchina</strong> reale G mette a<br />

<strong>di</strong>sposizione i bit <strong>di</strong> stato futuro garantisce la loro costanza<br />

in corrispondenza degli istanti <strong>di</strong> sincronismo.<br />

s n+1<br />

Il flip-flop (o registro da un bit)<br />

D U<br />

C<br />

(n-1)T 0 nT 0 (n+1)T 0<br />

D D n-1 D n D n+1<br />

(n+2)T 0<br />

D n+2<br />

U n =D n-1 U n+1 = D n U n+2 = D n+1

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!