1. 2 contatore: esempio di circuito sequenziale 3 circuito sequenziali loutput dipende dallinput...

51
1

Upload: carla-cristina

Post on 02-May-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

1

Page 2: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

2

Contatore: esempio di circuito sequenziale

Page 3: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

3

Circuito sequenziali

L’output dipende dall’input corrente e dalla storia passata degli input

Lo “stato” racchiude tutte le informazioni sul passato necessarie per predire l’output corrente basato sull’input corrente

Variabili di stato, uno o più bit di informazione

Esempio di circuito sequenziale: il contatore

Le variabili di stato sono i bit del conteggio il conteggio definisce lo stato

Ad un certo istante lo stato (conteggio) dipende dalla storia passata

Page 4: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

4

Circuito sequenziale con input: contatore con input di enable

Il contatore controlla il valore di ENABLE sui fronti di salita di CLK

Page 5: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

5

Page 6: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

6

ZOOM

Page 7: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

7

Input EN deve essere sincrono: deve cambiare sempre a un istante fissato un pò dopo il fronte di salita del segnale di clock

Tutti i segnali di input di un circuito sequenziale devono essere sincroni col segnale di clock (altrimenti il circuito può funzionale male)

Page 8: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

8

Nei sistemi digitali le transizioni avvengono sui fronti di salita di clk

Potrei pero’ provocare le transizioni invertendo clk

Page 9: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

9

Circuito sequenziale con output: COUT e’ un segnale che ci dice quando il contatore ha raggiunto il conteggio massimo

Page 10: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

10

Tutti i segnali di output prodotti da un circuito sequenziali sono sincroni col segnale di clock

Page 11: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

11

L’input EN potrebbe essere pilotato dall’uscita di un altro circuito sequenziale (qui un altro contatore) che per definizione e’ un segnale sincrono

Page 12: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

12

EN prodotto da un altro circuito sequenziale e’ quindi OK

Page 13: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

13Può essere mandato in input al contatore

Page 14: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

14

Descrizione dei circuiti sequenziali: diagrammi degli stati

Versione grafica della tavola degli stati di un contatore a 2 bit

S0

S1 S2

S3

S4

S5S6S7

Le frecce indicano la transizione da uno stato (conteggio) al successivo

S0

S1

S2S3

contatore a 3 bit

Page 15: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

15

Descrizione dei circuiti sequenziali: tavola delle transizioni degli stati

Per ciascuno stato corrente, specifica gli stati successivi in funzione degli input

Per ciascuno stato corrente, specifica gli output

Esempio: contatore a 3 bit

Q2Q1Q0 Q2*Q1*Q0*

0 0 0 0 0 1 0 0 1 0 1 00 1 0 0 1 10 1 1 1 0 01 0 0 1 0 11 0 1 1 1 01 1 0 1 1 11 1 1 0 0 0

Stato corrente Stato successivo

Notazione: Q* denota i bit dello stato successivo

N.B.: questo circuito sequenziale non ha input (oltre clock e reset)

Page 16: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

16

Page 17: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

17

Page 18: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

18

Page 19: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

19

I Flip-Flop potrebbero essere proprio i dispositivi adatti

Page 20: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

20

Consideriamo 2 Flip-Flop: assumiamo che le uscite Q0 e Q1 siano i 2 bit del conteggio

Page 21: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

21

Aggiungiamo un circuito combinatorio che ha come input Q0 e Q1 (stato corrente) e che produce come output Q0* e Q1*, cioe’ lo stato successivo

Page 22: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

22

Cosa succede se colleghiamo Q0* all’ingresso D0 del FF0 e Q1* all’ingresso del FF1?

Page 23: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

23

Page 24: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

24

Page 25: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

25

Page 26: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

26

Contatore a 2 bit con enable: il conteggio (stato) cambia solo se il segnale di enable è 1

Transizione da uno stato al successivo: adesso dipendono dal valore di ENABLE

Se ENABLE=0 lo stato non cambia: freccia che parte e termina nello stato

Page 27: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

27

Contatore a 2 bit con enable: il conteggio (stato) cambia solo se il segnale di enable è 1

Q1Q0 EN Q1*Q0*

0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 1 01 0 1 1 11 1 0 1 11 1 1 0 0

Stato corrente Stato successivo

input

Page 28: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

28

Astrazione: dal contatore alle macchine a stati

Macchine a stati: controllano circuiti caratterizzati da uno stato (definito da un certo numero di Flip-Flop)

La transizione a uno stato successivo dipendono dallo stato corrente e dagli input

In ogni stato possono produrre degli output usati per controllare altri circuiti

Descrivibili da un diagramma a bolle come il contatore

Page 29: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

29

Macchine a stati

Stato successivo determinato da un circuito combinatorio:

FlipFlops

clk

Logica di eccitazione

Ha come input i segnali di input esterni e i segnali di output dei flip flop (stato corrente)

Ha come output i valori degli input D dei flip flop necessari per produrre lo stato successivo

InputsStato corrente

Stato successivo

Page 30: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

30

Page 31: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

31

Page 32: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

32

Page 33: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

33

Page 34: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

34

Page 35: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

35

Page 36: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

36

Page 37: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

37

Page 38: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

38

Page 39: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

39

Page 40: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

40

Page 41: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

41

Page 42: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

42

Page 43: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

43

Page 44: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

44

Page 45: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

45

Page 46: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

46

Page 47: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

47

Page 48: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

48

Page 49: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

49

Page 50: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

50

Page 51: 1. 2 Contatore: esempio di circuito sequenziale 3 Circuito sequenziali Loutput dipende dallinput corrente e dalla storia passata degli input Lo stato

51