Compito A

Esercizio 1 (15 punti)

Disegnare il circuito sequenziale il cui funzionamento è descritto dalle seguenti espressioni booleane:

e sintetizzare il relativo automa (procedere come visto a lezione per la derivazione della tabella degli stati futuri).

 

Esercizio 2 (15 punti)

Progettare un circuito il cui output è 1 quando viene riconosciuta una delle seguenti stringhe:

00111

00100

00000

00011

l'output è zero altrimenti.

Il primo bit che viene letto è il bit più a sinistra.

Una volta riconosciuta una delle quattro stringhe, il sistema deve ritornare nello stato iniziale q0.

Pur non essendo richiesta l’applicazione di un criterio formale di minimizzazione dell’ automa, sarà elemento di valutazione il numero degli stati complessivi utilizzati.

Compito B

Esercizio 1 (16 punti)

Progettare un registro a 3 bit realizzato con FF di tipo JK, che riceve in ingresso un input sequenziale I , un segnale READ (attivo alto), un segnale SHIFT_LEFT, , un segnale SHIFT_RIGHT, ed un clock.

  1. Fintanto che il segnale READ è "1" il registro deve leggere i valori di input e memorizzarli, secondo la temporizzazione del clock. (Questo significa che vengono letti tanti bit di input quanti sono i fronti di clock ricevuti nel periodo in cui READ=1) In questa fase il registro si deve comportare come un registro a slittamento a destra (SISO).
  2. Fintanto che READ=1 i valori di SHIFT_LEFT e SHIFT_RIGHT non modificano il comportamento del registro, descritto al punto 1.
  3. Quando READ=0, se ( e fintanto che) SHIFT_LEFT=1 l’informazione memorizzata nel registro viene fatta slittare a sinistra, secondo la temporizzazione del clock.
  4. Quando READ=0, se ( e fintanto che) SHIFT_RIGHT=1 l’informazione memorizzata nel registro viene fatta slittare a destra, secondo la temporizzazione del clock.
  5. SHIFT_LEFT e SHIFT_RIGHT non sono mai contemporaneamente ad "1".
  6. Poiché durante lo slittamento a destra ( o sinistra) il valore dell’input I non viene letto, il bit più a destra (sinistra) viene perso, mentre quello più a sinistra (destra) diventa uno zero.

Rappresentare il funzionamento del circuito con un automa e progettare il circuito.

Suggerimento: Idealmente, sarebbe preferibile non rappresentare tutti gli stati dell’automa, ma, a partire da un generico stato in cui il valore memorizzato è b1b2b3, esaminare le possibili transizioni in funzione di READ, SHIFT_LEFT e SHIFT_RIGHT, ed I. Se, ad esempio, la stringa viene fatta slittare a sinistra, la nuova stringa sarà b2b30.

Esercizio 2 (14 punti)

Progettare un divisore di frequenza, ovvero un circuito che riceve in ingresso un segnale di clock di frequenza f e produce in uscita un segnale di clock di frequenza . Ovviamente, la durata dell'impulso è T in ingresso, Tx8 in uscita.

 

Compito A

Esercizio 1

 

 

Si (Q2Q1Q0) stato di partenza

J2K2 J1K1 J0K0

Sj stato di arrivo

000

001

010

011

100

101

110

111

11 11 11

11 11 11

00 11 01

10 11 01

11 11 00

11 11 00

00 11 00

10 11 00

111

110

000

100

010

011

100

101

 

La sequenza contata è 000 111 101 011 100 010 000…

Si noti che, qualora il sistema erroneamente ricada in uno stato non incluso nella sequenza, comunque "ricade" successivamente nel ciclo previsto.

 

 

 

 

Esercizio 2

L’automa di Mealy è rappresentato in figura:

 

In figura, per semplicità, l’output è mostrato solo quando assume il valore "1".

 

 

 

Compito B

 

Esercizio 1

La figura mostra le transizioni dell’automa a partire da un generico stato:

Lo schema circuitale può essere ricavato nel solito modo, ma è possibile anche ricavare le espressioni booleane di JiKi scrivendo in forma di espressione booleana la specifica verbale.

Ad esempio, l’input J0 del FF più a sinistra è pari ad I (input) se Read=1, è pari a Q1 se SL=1, ed è pari a zero se SR=1, dunque:

Dove J0 rappresenta il FF più a sinistra, Ji il generico FF centrale (0<i<n) e Jn il FF più a destra.

K=not(J) per ogni FF.

Esercizio 2:

Basta realizzare un contatore sincrono mod 8 il cui clock è alimentato dal segnale di frequenza f.

Il bit più significativo del contatore varierà con frequenza f/8