Reti Sequenziali
Reti Sequenziali
Corso di Architetture degli Elaboratori
Caratteristiche 1
Caratteristiche delle reti sequenziali
Reti combinatorie:
il valore in uscita è funzione (con il ritardo indotto
dalla rete) dei soli valori dati in ingresso in
quel momento
Reti sequenziali:
il valore in uscita è funzione della sequenza di
valori forniti in input fino a quel momento
Le reti sequenziali hanno memoria
RETI LOGICHE
2
Caratteristiche 2
Caratteristiche delle reti sequenziali
Essendo finita, una rete sequenziale può “ricordare”
un numero finito di sequenze di ingresso.
La rete determina la suddivisione di tutte le infinite
sequenze di ingresso in un numero finito di classi, che
la rete riesce a distinguere. Tutte le sequenze all’interno
di una stessa classe sono equivalenti per la rete.
Esempio: contatore a due bit e sequenze 11 e 111111
RETI LOGICHE
3
Livelli e impulsi 1
Livelli ed impulsi
In una rete a livelli i valori sono trasmessi come livelli
di segnale (alto=1, basso=0, o viceversa) in particolari
istanti scanditi da un orologio (clock).
In una rete a livelli il valore in input permane per un
tempo (sufficientemente) maggiore rispetto al ritardo
della rete
In una rete ad impulsi i valori sono trasmessi come
segnali impulsivi (presenza=1, assenza=0, o viceversa)
negli istanti scanditi dal clock.
In una rete ad impulsi il valore in input permane per un
tempo (molto) minore rispetto al ritardo della rete
RETI LOGICHE
4
Livelli e impulsi 2
Livelli ed impulsi
La stringa 10011011 come sequenza di livelli e di
impulsi
RETI LOGICHE
5
Livelli e impulsi 3
Livelli ed impulsi
Funzionamento a livelli di una rete
La configurazione di ingresso è mantenuta costante per
il tempo necessario affinché si stabilizzino i valori in
uscita
Funzionamento ad impulsi di una rete
La configurazione di ingresso è mantenuta costante per
un tempo limitato e breve, inferiore al tempo necessario
necessario affinché si stabilizzino i valori in uscita, dopo
di che in input viene posta una configurazione di default
(in genere tutti 0)
RETI LOGICHE
6
Modello di rete sequenziale
Modello di rete sequenziale
x1
xn
.
.
y1
.
.
yk
RETE
COMBINATORIA
.
.
y’1
.
.
y’k
z1
zm
yi(t+d(yi))=gi(x1(t),…,xn(t), y1(t),…,yk(t))
zi(t+d(zi))=fi(x1(t),…,xn(t), y1(t),…,yk(t))
Mealy
zi(t+d(zi))=hi(y1(t),…,yk(t))
Moore
RETI LOGICHE
7
Flip flop 1
Flip flop
Il flip flop è la più elementare rete sequenziale.
Ha la funzione di memorizzare un bit di informazione.
Flip flop RS (Reset-Set)
R=0,
R=1,
R=0,
R=1,
S=1:
S=0:
S=0:
S=1:
y posto a 1
y posto a 0
y rimane uguale
non ammessa
R
y
S
RETI LOGICHE
8
Flip flop 2
Flip flop
R
RETE
COMBINATORIA
S
y
y’
RS
y’
0
1
00 01 11 10
0
1
1
1
*
*
0
0
y=¬R(S+y’)
RETI LOGICHE
9
Flip flop 3
Flip flop
y
R
S
y’
Se
d1: ritardo al primo livello della rete combinatoria
d2: ritardo al secondo livello della rete combinatoria
Allora
Il segnale R=1 o S=1 deve permanere in ingresso
per un tempo d>d1+d2
RETI LOGICHE
10
Flip flop 4
Flip flop
Flip flop Fc: il valore F viene memorizzato in
corrispondenza agli impulsi di clock
F
R
0
c
S
1
RETI LOGICHE
11
Flip flop 5
Flip flop
Se:
d è il ritardo del flip flop Fc e d’ il ritardo del
solo flip flop RS al suo interno
 è la lunghezza dell’impulso e s la distanza fra due
impulsi successivi
Allora dovrà aversi
d’< per far funzionare a livelli il flip flop RS
<d per far funzionare ad impulsi il flip flop Fc (in questo
modo durante l’impulso è possibile leggere il vecchio
output mentre si fornisce il nuovo input)
d<s per evitare che sia fornito un nuovo valore prima
che il precedente venga memorizzato
Si dovrà quindi avere tra l’altro d’<<d (necessità di
ritardi aggiuntivi)
RETI LOGICHE
12
Flip flop 5
Flip flop
Flip flop MS (master-slave)
Consente di avere, durante l’impulso, il vecchio output
disponibile mentre l’input viene fornito.
Disaccoppiamento mediante due RS in cascata.
F
R
0
R
0
c
S
1
S
1
Il valore F viene memorizzato nel primo RS durante l’impulso
e copiato nel secodno RS durante l’intervallo tra impulsi
RETI LOGICHE
13
Reti sequenziali sincrone
Reti sequenziali sincrone
x1
xn
.
.
y1
.
.
yk
RETE
COMBINATORIA
.
.
y’1
.
.
y’k
z1
zm
Registro di dimensione k
c
I flip flop contengono la codifica dello stato della rete (al più
2k stati diversi). Lo stato può cambiare solo in corrispondenza
agli impulsi di clock.
RETI LOGICHE
14
Reti sequenziali sincrone
Reti sequenziali sincrone
Una rete sequenziale sincrona è un automa a stati finiti
avente:
- alfabeto di input S di dimensione al più 2n
- insieme degli stati Q di dimensione al più 2k
L’automa ha anche un output, con alfabeto G di dimensione
al più 2m.
Se l’output è funzione su SxQ l’automa si dice
di Mealy, altrimenti (se è funzione sul solo Q) si dice di
Moore.
RETI LOGICHE
15
Reti sequenziali sincrone
Sintesi di reti sequenziali sincrone
Definire il comportamento desiderato per la
rete sequenziale rappresentandola come automa a stati
finiti con output (Mealy o Moore).
Derivare i valori di n,k,m e definire una codifica su n,k,m
bit rispettivamente di input, stati ed output.
Dalla funzione di transizione dell’automa e dalla sua
funzione di output derivare le funzioni combinatorie che
legano per ogni i,j i valori di y’i e zj a tutti i valori yk e xh.
Derivare le reti combinatorie che calcolano tali funzioni
RETI LOGICHE
16
Scarica

Reti Logiche