Esercizio 1 - Computer Vision LABsmatt/DIDATTICA/Reti_Logiche_T/PDF/2_6... · si individuino le...

33
Esercizio 1 Utilizzando l’approccio visto nella realizzazione dell’adder binario interno alla ALU si esegua il procedimento di sintesi del componente ADDER_54 che sommi operandi in base 4(es 3+3 = 12; 1+3=10) da 5 cifre. Si utilizzi la normale codifica binaria posizionale per le cifre rappresentanti gli operandi ed il risultato. In figura è rappresentato un esempio di operazione che la rete deve essere in grado di compiere ed è messa in evidenza la parte delegata ad un generico Full adder base 4 (FA4). In particolare sono richiesti: Blocco ai morsetti del full adder FA4 per sommare in base 4, tenendo anche in considerazione il riporto, due cifre nella medesima posizione degli operandi. Lo schema logico di alto livello di ADDER_54 che evidenzi la connessione fra i full adder. la tabella di verità del full adder in base 4 (FA4) Le mappe, le coperture minime e le espressioni minime SP delle uscite di FA4 per operandi in base 4 Lo schema logico della rete minima SP che calcola il riporto in uscita (Cout) per un qualsiasi FA4 Il full adder realizzato è una rete sequenziale o combinatoria? L’adder risultante dalla connessione dei full adder è una rete sequenziale o combinatoria? Motivare le risposte

Transcript of Esercizio 1 - Computer Vision LABsmatt/DIDATTICA/Reti_Logiche_T/PDF/2_6... · si individuino le...

Esercizio 1

Utilizzando l’approccio visto nella realizzazione dell’adder binario interno alla ALU si esegua il procedimento

di sintesi del componente ADDER_54 che sommi operandi in base 4(es 3+3 = 12; 1+3=10) da 5 cifre. Si utilizzi

la normale codifica binaria posizionale per le cifre rappresentanti gli operandi ed il risultato. In figura è

rappresentato un esempio di operazione che la rete deve essere in grado di compiere ed è messa in evidenza

la parte delegata ad un generico Full adder base 4 (FA4). In particolare sono richiesti:

Blocco ai morsetti del full adder FA4 per sommare in base 4, tenendo anche in considerazione il riporto,

due cifre nella medesima posizione degli operandi.

Lo schema logico di alto livello di ADDER_54 che evidenzi la connessione fra i full adder.

la tabella di verità del full adder in base 4 (FA4)

Le mappe, le coperture minime e le espressioni minime SP delle uscite di FA4 per operandi in base 4

Lo schema logico della rete minima SP che calcola il riporto in uscita (Cout) per un qualsiasi FA4

Il full adder realizzato è una rete sequenziale o combinatoria? L’adder risultante dalla connessione dei

full adder è una rete sequenziale o combinatoria? Motivare le risposte

Esercizio 2

Con riguardo alla rete sequenziale sincrona rappresentata in figura in cui tutti i FFD sono comandati dallo

stesso segnale di clock, si utilizzino gli strumenti e la metodologia tipiche dell’analisi per derivare il

comportamento della rete. In particolare:

si individuino le variabili di stato e le espressioni delle variabili di stato futuro

si riportino la tabella delle transizioni e la tabella di flusso

si ricavi il diagramma degli stati

si descriva chiaramente il comportamento della rete: come varia l’uscita in funzione della sequenza di

ingresso? La rete è di Mealy o di Moore? Motivare le risposte

Esercizio 3 (Sintesi minima di una rete sequenziale sincrona)

Si realizzi tramite il procedimento di sintesi visto nel corso la rete logica R che ha un solo ingresso I e due uscite U0 ed

U1. R è un riconoscitore di impulsi che attiva U0 in caso di impulso negativo di esattamente 2 clock ed U1 in caso di

impulso positivo di esattamente due clock. Quando un impulso di due clock viene individuato R modifica la

corrispondente uscita durante il clock di riconoscimento e la disattiva al successivo.

Supporre che la rete venga inizializzata proponendo in ingresso 0 per 8 clock consecutivi

Un esempio del comportamento di R è riportato nella tabella sottostante:

Clock T T T T T T T T T T T T T T

I 0 0 1 0 1 1 0 0 1 1 1 0 0 1

U0 0 0 0 0 0 0 0 0 1 0 0 0 0 1

U1 0 0 0 0 0 0 1 0 0 0 0 0 0

Si rappresentino il diagramma degli stati, la tabella di flusso, la codifica scelta per lo stato, e la tabella delle transizioni.

Si utilizzino poi le mappe di Karnaugh per ottenere le espressioni minime SP delle uscite e delle variabili di stato futuro.

Si rappresenti infine lo schema logico di R, evidenziando la rete F e la rete G.

Esercizio 4 (analisi di una rete sequenziale sincrona)

La rete rappresentata in figura è formata da un universal shift register (USR) a 8 bit inizializzato con 47H, un

contatore binario per sedici inizializzato a 0H, un registro a 8 bit inizializzato con ingressi costanti a D5H, alcuni

componenti combinatori noti. La funzione svolta da USR è determinata dai bit A1 ed A0 come mostrato in tabella.

Si completi l’andamento dei segnali riportati in tabella e si descriva brevemente a parole il comportamento della

rete: in particolare si spieghi come si comporta il segnale U ed eventuali comportamenti periodici a regime . Cosa

succede quando viene modificato il contenuto del registro?

Esercizio 5

Un sistema di conteggio persone S è installato in un museo ed è realizzato come segue. Un sensore P_in rileva l’ingresso

di una persona e lo segnala tramite la propria uscita mantenuta al valore logico alto per un clock. All’uscita del museo un

sensore P_out rileva le persone che escono mantenendo il proprio segnale di uscita al valore logico alto per un clock. S è

provvisto in ingresso di una porta dati D collegata ad un registro R che serve per indicare il numero massimo di persone

consentite all’interno della struttura. S ha un uscita U che indica, col valore alto, che il numero massimo di persone

consentito è stato raggiunto

1) Si disegni lo schema al alto livello del sistema indicando almeno S, P_in, P_out, R (ed il suo contenuto) e le loro

connessioni, nell’ipotesi che il numero massimo di persone consentito sia 2500

2) Utilizzare i componenti visti nel corso per disegnare la struttura interna di S, la quale avrà il solo scopo di tener traccia

costantemente del numero di persone all’interno del museo allo scopo di segnalare il raggiungimento del valore massimo

Esercizio 6

1) Data la mappa in figura della funzione G, si ricavino le espressioni minime SP e PS

2) Nell’espressione ricavata si metta in evidenza la variabile f ottendo G = (G1 AND f) OR (G2 AND (f*) ).

Quale rete logica nota ci consente di ottenere G supponendo di avere F, G1, e G2?

3) Scrivere una possibile mappa di Karnaugh che implementa G1

Esercizio 7 (Sintesi minima di una rete combinatoria)

Si prenda in considerazione la rete logica R

R ha in ingresso:

A: variabile a 2 bit formata dai bit A1 ed A0.

B: variabile binaria

C: variabile binaria

R ha in uscita :

U: variabile a ? bit

R svolge un’operazione aritmetica sugli operandi A, B e C e fornisce il risultato in U. Si considerino interi senza segno

in notazione binaria posizionale sia gli operandi che l’uscita. In particolare

U = 2*A + 2*B + 4*C + 3

Domanda 1: Completare la tabella sottostante

U2

Domanda 2: Quanti bit al minimo occorre utilizzare per rappresentare la variabile di uscita U?

Per rappresentare U come intero senza segno servono minimo bit

Domanda 3: Si completi la mappa di Karnaugh relativa al bit U2 di U, si mettano in evidenza i raggruppamenti

rettangolari per calcolare l’espressione minima SP e si scriva tale espressione

U2 = F (A1,A0,B,C) =

Domanda 4: L’espressione minima presenta il rischio di alee statiche? Se si quale/i ragruppamenti bisogna aggiungere

per evitare le alee statiche?

Raggruppamenti aggiuntivi:

Esercizio 8 ( Sintesi di una rete sequenziale sincrona )

Si richiede di disegnare il grafo degli stati di una rete sequenziale sincrona, con un ingresso (RESET) e un’uscita

(OUT) il cui comportamento a parole è di seguito descritto:

Tutte le volte che il segnale RESET = 1, la rete dovrà riportare in uscita il valore logico 0

A partire dal primo periodo di clock in cui RESET = 0 , e per tutto il tempo in cui RESET permane a 0, la rete

dovrà generare in uscita una forma d’onda che generi un impulso negativo della durata di un clock ogni 3

fronti positivi del clock

Esercizio 9 ( Analisi di una rete sequenziale sincrona )

Indicare nell’apposita tabella l’andamento dei segnali J0 J1 J2 e J3 ed U, supponendo che il valore

memorizzato nel registro sia DC7A esadecimale e che esso sia in modalità Hold. Scrivere inoltre

brevemente come si comporta la rete rappresentata

Descrivere il funzionamento della rete logica rappresentata ed indicare se è combinatoria o

sequenziale e perché.

Esercizio 10

Sintetizzare un contatore per 28 in due modi:

utilizzando unicamente dei contatori BCD (contatore per 10 che va avanti secondo la

numerazione binaria) e dei componenti logici combinatori elementari ( AND, OR, NOT,

EXOR, MUX )

utilizzando un sommatore, un registro e dei componenti logici elementari.

Esercizio 11

Con riferimento alla rete logica sottostante(a) in cui i dati in ingresso IN vengono processati in

più stadi di elaborazione fino a diventare i risultati attesi OUT e considerando che R0, R1, R2, R3

sono registri edge-triggered caratterizzati dai seguenti tempi: tsetup = 200 ns, thold = 100 ns tR = 100 ns,

mentre RC0, RC1 e RC2 sono reti combinatorie i cui tempi di elaborazione sono RC0: 300 ns, RC1:

600 ns, RC2: 300 ns, si risponda ai seguenti quesiti:

Supponendo noto tclk, quanto tempo impiega un dato in ingresso (IN) per essere processato

fino alla fine della catena (OUT)?

Qual è la frequenza massima con cui la rete (a) può elaborare dati ?

Si confronti la rete proposta con un’altra rete (b) composta da 2 soli registri e da una rete

combinatoria che combina RC0, RC1 ed RC2. In (b) i tempi sono uguali per quanto riguarda

i registri: tsetup = 200 ns, thold = 100 ns tR = 100 ns. RC012 impiega invece 1000 ns per

processare i dati. Supponendo che entrambe le reti funzionino alla massima frequenza

rispettivamente possibile, quale rete termina per prima di processare il primo ingresso? Quale

termina per prima di processare 100 ingressi? Perché?

Esercizio 12 (Sintesi minima di una rete combinatoria)

Si richiede di ricavare l’espressione minima SP della funzione di uscita U di una rete combinatoria avente come ingresso

4 variabili binarie (I3I2I1I0), il cui funzionamento è descritto dalle seguenti specifiche:

l’uscita U vale 1 per tutte le configurazioni d’ingresso tali che I3=1 e I0 = 1

l’uscita U vale 1 per tutte le configurazioni d’ingresso tali che I2=1 e I1I0 = 00

l’uscita U vale 0 per tutte le altre configurazioni d’ingresso

Domanda 1) Ricavare l’espressione minima SP dell’uscita U utilizzando la mappa di Karnaugh di seguito

riportata, evidenziando i raggruppamenti effettuati.

U =

Domanda 2) La rete ottenuta al punto 1 presenta alee? Se si, riportare nel seguito i termini ridondati da introdurre

per evitare a priori il problema dell’alea statica. Sotto quali altre condizioni la rete non presenta a priori il

problema dell’alea statica?

Esercizio 13 (Grafo degli stati di una rete sequenziale sincrona)

Si richiede di disegnare il grafo degli stati secondo il modello di Moore di una rete sequenziale sincrona, con un

ingresso I ad un bit e un’uscita U a due bit (U1U0), il cui comportamento a parole è di seguito descritto:

La rete deve contare per quanti periodi di clock (anche non consecutivi) l’ingresso I è stato a valore logico alto.

L’uscita U deve riportare questo numero come configurazione binaria di due bit.

Raggiunto il conteggio massimo (3), la rete resetterà il conteggio solamente se l’ingresso I presenta per tre

periodi di clock consecutivi il valore 0. In caso contrario, l’uscita permane al valore binario 11.

Di seguito è riportato un esempio di andamento dell’uscita U in funzione dell’ingresso I:

Domanda 1) Disegnare il grafo degli stati della rete Domanda 2) Quante variabili di stato sono necessarie? _______

CALCOLATORI ELETTRONI CI

I 1 I 0

I 3 I 2 0 0 0 1 1 1 1 0

0 0

0 1

1 1

1 0

CALCOLATORI ELETTRONI CI

Clock T T T T T T T T T T T T T T

I 0 1 0 0 1 1 0 1 0 0 0 1 1 1

U1U0 01 01 10 10 10 11 11 11 11 11 11 00 01 10

Stato present e

Stato fut uro

Esercizio 14 (Analisi di una rete sequenziale sincrona)

Data la rete sequenziale sincrona riportata nel seguito (entrambi i FF-D sono comandati dallo stesso segnale di clock):

FF-D 1: Tsumin1 = 10 ms ; TRmax1 = 5

ms

FF-D 0: Tsumin0 = 8 ms ; TRmax0 = 2

ms

MUX: TRIOmax = 3 ms (tempo di

risposta massimo rispetto al

cambiamento degli ingressi); TRCOmax= 4 ms (tempo di risposta massimo rispetto al cambiamento del segnale di

controllo)

Domanda 1) Scrivere le espressioni dello stato futuro dei due FF-D

Q1* =

Q0* =

Domanda 2) Completare l’andamento dei segnali sotto riportati

Domanda 3) Considerando i tempi sopra riportati, calcolare la frequenza massima di funzionamento della rete,

mostrando i passaggi seguiti per il calcolo.

CALCOLATORI ELETTRONI CI

Clock T T T T T T T T T T T

I=D1 0 1 1 0 0 1 1 1 0 0 0

Q1 0

Q1*

Q0 = U 0

Q0*

CALCOLATORI ELETTRONI CI D1

Q1

FF- D

1

0

D0

Q0

FF- D

I U

Esercizio 15 (soluzione a fine blocco)

In un sistema sono presenti:

- Una bilancia B con uscita a n bit sempre positiva e codificata in complemento a due.

- Un pulsante P2 che se premuto corrisponde ad un impulso da un clock.

- Un pulsante P1 che se premuto corrisponde ad un impulso da un clock.

- Una linea dati Din a n bit che si suppone portare dati sempre positivi e codificati in complemento a due

- Una rete logica S che ha in ingresso i segnali di uscita dei blocchi precedentemente citati ed in unscita 3 bit

o W# (Win attivo basso)

o L (Loose)

o R (Retry)

Si desidera il seguente funzionamento: Si inserisce un dato in Din e si preme P2 per inizializzare il sistema. Poi

ciclicamente si mette un oggetto sulla bilancia e si preme P1.

- Se la somma dei pesi inseriti su B è pari al dato in ingresso allora si attiva W#.

- Se la somma dei pesi inseriti su B è superiore al dato iniziale in ingresso allora si attiva L.

- Se la somma dei pesi inseriti su B è inferiore al dato iniziale in ingresso allora si attiva R.

Sotto sono riportati lo schema ad alto livello ed i componenti necessari.

Si colleghino su foglio protocollo i componenti in modo da ottenere il funzionamento desiderato e si spieghi come avviene

il tutto con cura e dettaglio.

Esercizio 16

1) Data la mappa in figura della funzione G, si ricavino le espressioni minime SP e PS

2) Nell’espressione SP ricavata si metta in evidenza la variabile f ottendo G = (G1 AND f) OR (G0 AND

(f*) ). Quale rete logica nota ci consente di ottenere G supponendo di avere F, G1, e G2?

Ripetere il procedimento con la variabile e ottenendo

G1 =( G11 AND e) OR ( G10 and e* )

G0= ( G01 AND e) OR ( G00 and e* )

Nota: provare a premettere agli implicanti sprovvisti della variabile var da estrarre il termine

logicamente pari 1:

(var + var*)

3) Scrivere la mappa di Karnaugh che implementa G10

Esercizio 17

Si disegni la struttura interna di C: un contatore per N contenente un sommatore ad N bit ed un

registro di accumulazione. C è provvisto, oltre che dell’ingresso di clock, anche degli ingressi

R. Reset sincrono attivo basso: se vale 0 viene eseguito il reset sincrono

Load attivo alto e Data(n-1)..0 : se Load vale 1 allora viene eseguita l’operazione di Load per

l’operando ad N bit Data(n-1)..0

E. Enable attivo alto: se vale uno il contatore procede

UD. up/down:se vale 1 conta in avanti se vale 0 conta all’indietro (secondo il verso della

numerazione binaria)

Avere cura nel disegnare e spiegare i collegamenti necessari a fare in modo che gli ingressi

abbiano l’effetto voluto .

Disegnare C ai morsetti per N = 16 .

Modificare C in modo che conti per 9 e chiamare la nuova rete C2

Disegnare C3: un contatore per 59 e fatto da due contatori C2 opportunamente interconnessi

e da gate logici elementari

Esercizio 18

Eseguire tutti i passi della sintesi per giungere allo schema logico del riconoscitore di sequenze 0011

che attiva la sua uscita U per un solo clock ogni qual volta l’ultimo 1 della sequenza viene riconosciuto

sull’unico ingresso I (oltre al clock). In particolare si indichino

Lo schema ai morsetti

Il diagramma degli stati

La tabella di flusso

La codifica degli stati e la tabella delle transizioni

Le mappe di Karnaugh per ottenere un copertura minima

Lo schema logico

Esercizio 19

Scrivere come è possibile calcolare la frequenza massima di funzionamento di una rete combinatoria

ed applicare il ragionamento ad un adder a 3 bit in cui ciascun Full Adder impiega 1 ns per calcolare

le proprie uscite da quando l’ultimo degli ingressi è divenuto stabile. Dopo quanto tempo otteniamo

il valore della somma rispetto al momento in cui forniamo in ingresso gli operandi 011 e 001

Esercizio 20

Usando tutti i passi della sintesi si progetti un contatore per 6 chiamato C1 i cui stati seguano la

sequenza 011, 001, 000, 111, 101, 100. C1 deve disporre di un ingresso di reset sincrono che riporti

allo stato 011.

Si prenda in considerazione anche C2 un contatore per 6 che segue l’ordine 000, 001, 011, 111, 110,

100 che non deve essere progettato.

Quale dei due contatori è meglio usare nel generatore di forme d’onda RL1? Perché? Qual è il vincolo

di progettazione del multiplexer in RL1 affinché la rete si comporti correttamente, nell’ipotesi che si

sia scelto il contatore corretto?

Indicare un possibile valore dell’uscita di RL2 che consente di generare la forma d’onda 111001

all’uscita di RL1

Spiegare quale potrebbe essere una possibile realizzazione interna di RL2 che consenta di cambiare

la forma d’onda generata all’uscita di RL1 quando si attiva il segnale L. Non è necessario disegnare

tutto lo schema ma solo una sua parte e spiegarne il funzionamento

Esercizio 21

Eseguire i passi della sintesi della rete RL0 con 4 ingressi (I3, I2, I1 e I0) e 4 uscite (O3, O2, O1,

O0). Il funzionamento è il seguente:

Se gli ingressi sono tutti nulli non si attiva alcuna uscita

Se l’ingresso I3 è attivo si attiva la sola uscita O3

Altrimenti, se l’ingresso I2 è attivo si attiva la sola uscita O2

Altrimenti, se l’ingresso I1 è attivo si attiva la sola uscita O1

Altrimenti, se l’ingresso I0 è attivo si attiva la sola uscita O0

Quindi ad esempio se gli ingressi I3, I2, I1, I0 valgono 0, 1, 1, 0 le uscite O3 O2 O1 O0 valgono 0,

1, 0, 0

E’ una rete combinatoria o sequenziale? Perché?

Per quale scopo potrebbe essere impiegata una rete del genere?

Esercizio 22

La figura mostra come è possibile implementare un semplice gioco fra due contendenti. I due

giocatori hanno a disposizione due distinte pulsantiere con tre tasti R, A, B e non vedono le scelte

effettuate dall’avversario, ma solo un display che mostra lo stato o l’esito delle giocate.

Le scelte dei giocatori si traducono (tramite RL1) in input per RL2, che esegue i calcoli necessari a

determinare l’esito e lo rappresenta nelle variabili U1 ed U0 La rete RL3 rende i risultati leggibili ai

giocatori, consentendone la visualizzazione in un display a 7 segmenti. Tutti i segnali nella

descrizione seguente vengono considerati attivi alti (logica positiva). Tutte le reti che si riterrà di

dover realizzare con logiche sequenziali andranno sintetizzate come reti di Moore.

RL1:

- Non più di un ingresso può essere attivo contemporaneamente.

- Se si attiva R le uscite valgono 00 fino alla prossima attivazione di A o B

- Se si attiva A le uscite valgono 01 fino alla prossima attivazione di R o B

- Se si attiva B le uscite valgono 10 fino alla prossima attivazione di A o R

RL2:

- Si suppone che inizialmente gli ingressi valgano 0000 con U1 ed U0 = 00.

- Si suppone che i due giocatori non eseguano mai la loro scelta durante lo stesso periodo di

clock (è un’ipotesi, non deve essere implementata! Ed è solitamente valida per clock

sufficiente alti)

- Quando uno dei due giocatori avrà scelto A o B la rete RL2 resta in attesa che il secondo

giocatore scelga ed il primo ad aver effettuato la scelta, pur toccando la propria pulsantiera

non potrà modificare la scelta effettuata. In questa situazione U1 ed U0 valgono 11

- Quando il secondo giocatore sceglie fra A o B, allora RL2 calcola il vincitore e pone U1U0

= 01 se vince il giocatore connesso con I3I2(cioè P2) ed U1U0 = 10 se vince il giocatore

collegato con I1I0 (cioè P1)

- Il secondo giocatore a scegliere tra A o B vince se sceglie il simbolo diverso da quello scelto

dal primo giocatore

- Una volta che il vincitore è stato designato si può ripartire solo quando entrambi i giocatori

premono consecutivamente i loro rispettivi pulsanti R

RL3:

- Quando nessuno dei due giocatori ha scelto fra A o B il display è spento

- Quando manca la scelta di uno dei due giocatori il display mostra il carattere 0

- Quando vince P1 il display mostra il carattere 1 (segmenti e ed f accesi), quando vince P2 il

display mostra il carattere 2

1) Progettare interamente, seguendo tutti i passi della procedura di sintesi, la rete RL1. Prima di

iniziare un nuovo passo si descriva cosa si sta per fare, lo si motivi e si commenti,

eventualmente, il risultato del passo precedente. Ove possibile eseguire coperture minime

2) Disegnare il diagramma degli stati della rete RL2

3) Sintetizzare la rete F della rete RL2, ove possibile eseguire coperture minime

4) Sintetizzare la rete RL3 senza usare mappe di Karnaugh

5) Si eseguano considerazioni sulla determinazione della frequenza massima nello scenario

mostrato

Esercizio 23

Si sintetizzi la rete logica R1 in grado di implementare il gioco della morra cinese. Quanti ingressi

e quante uscite sono necessarie? Quanti se aggiungiamo i simboli di lucertola e spock?

Ricavare per il caso della normale gioco della morra cinese (carta forbice sasso)

- tabella di verità

- mappe

- copertura minima e relative espressioni sia in SP che in PS

- lo schema circuitale nel caso SP

Esercizio 24

Data la rete sequenziale sincrona mostrata in figura

- si dica se è di Mealy o di Moore.

- si eseguano i passi dell’analisi attraverso le espressioni delle variabili di stato e delle uscite, le

mappe, la tabella delle transizioni e quella di flusso. (Per le mappe usare il template seguente)

- si disegni il grafo degli stati

- si indichi una possibile procedura di inizializzazione per rendere la rete un riconoscitore di

sequenze distinte di 3 simboli 1 consecutivi, indipendentemente dallo stato di partenza

D

>

Q

FFD_0

D

>

Q

FFD_1

D

>

Q

FFD_2

x0

x1

x2

I

U

Esercizio 25 Eseguire tutti i passi della sintesi di reti combinatorie per giungere fino all’implementazione circuitale di una rete

con gli stessi ingressi di un full-adder ed uscite che assumono il valore opposto.

Disegnare la forma minima realizzata come prodotto di somme e discutere riguardo all’alea statica evidenziando

eventuali modifiche necessarie ai raggruppamenti ed allo schema logico. Discutere anche nel caso in cui non siano

necessarie modifiche, spiegando il perché

Proporre una semplice modifica a livello di schema logico che, usando due XOR aggiuntivi, consenta di usare

l’ingresso aggiuntivo N nel seguente modo: se N vale 1 allora le uscite devono essere uguali a quelle di un full adder

Esercizio 26

Il sistema in figura funziona nel modo seguente:

La pressione di un bottone fa partire un impulso rettangolare della durata di un clock.

RL3 funziona nel seguente modo:

o Il segnale T1 perviene ogni 16 periodi di clock dopo l’ultima pressione del pulsante (ad esempio se il

pulsante viene premuto periodicamente prima dell’arrivo del sedicesimo clock, T1 non varrà mai 1)

o Il segnale T2 perviene assieme al quarto T1 dopo l’ultima pressione del pulsante (ad esempio se il

pulsante viene premuto periodicamente prima che arrivi il quarto T1 allora T2 non si attiverà mai)

o Parte da uno stato in cui tutte le uscite hanno valore 0

o Dallo stato di partenza, quando il bottone viene premuto la prima volta, le uscite U2U1U0 varranno

001, se entro l’arrivo di T1 il pulsante viene premuto nuovamente U2U1U0 varranno 010, se entro

l’arrivo di T1 il pulsante viene premuto ancora le uscite varranno U2U1U0=100 e ulteriori pressioni

del pulsante verranno ignorate. Se nessuna pressione del pulsante viene effettuata prima dell’arrivo di

T1 tutte le successive pressioni del pulsante ed i successivi T1 verranno ignorati, e le uscite manterranno

il valore corrente. L’arrivo di T2 riporta RL3 nello stato di partenza con U2U1U0 = 000.

RL1 è collegata in qualche modo agli ingressi del contatore in modo che il funzionamento di RL3 sia quello

descritto in relazione alla pressione del pulsante

RL2 ha in ingresso le uscite del contatore e, sulla base di esse, controlla T1 e T2 in modo che il funzionamento

di RL3 sia quello descritto

Specificare se per RL1, RL2 ed RL3 si pensa di impiegare reti sequenziali o combinatorie e motivare la risposta

per ciascuna rete.

Proporre un’implementazione di RL1

Sulla base di come è stata proposta RL1 proporre un’implementazione di RL2 che generi T1 ogni 16 clock

dall’ultima pressione del pulsante e che generi T2 assieme al quarto T1 dopo l’ultima pressione del pulsante

Considerando il contatore qual è il K minimo è perché?

Disegnare il grafo degli stati di RL3

Esercizio 27 (con soluzione inclusa nel testo)

Si vuole realizzare una rete logica R1 con 2 ingressi a 5 bit (A e B), un ingresso a 2 bit C ed un’uscita

a 5 bit S. Il valore di C stabilisce come viene calcolato S secondo la specifica riportata in tabella.

Tutti gli operandi si considerano con segno e rappresentati in complemento a 2

C1C0 S

00 A+B

01 A-B

10 B-A

11 2A

Si riporti la rappresentazione ai morsetti di R1

A

B

C

5

5

2

A4..0

B4..0

C1..0

S4..0

5 S

Si proponga un’implementazione interna che utilizzi solo un Adder, dei Multiplexer dei Not ed il

numero minimo di gate logici elementari possibile.

A4..0

B4..0

O4..0

Y4..0

X4..0

Adder_5

0

1

2

3

0

1

2

3

C1..0

C1..0

S4..0

Cin

C1

C0

S4..0

CO

Supponendo che A e B siano rappresentati in complemento a due, si progetti un rete R2 esterna ad

R1 che abbia in ingresso A, B ed S ed in uscita un bit OV che deve valere 1 solo se c’è overflow nel

caso C1C0 = 00.

La situazione di overflow nella somma si verifica solo se ad operandi con segno uguale corrisponde

un risultato con segno opposto, quindi occorre verificare la concomitanza di due situazioni:

1) A e B hanno lo stesso segno

2) A o B hanno segno opposto rispetto ad S

Se le due condizioni sono entrambe vere allora si ha Overflow

Quali considerazioni si possono fare su R2 se dovesse operare nel caso C1C0 = 10 ?

In questo caso sto eseguendo B-A. Innanzitutto si può considerare che Invertendo il segno di A nel

circuito precedentemente ideato si potrebbe arrivare ad una soluzione funzionante. Tuttavia, essendo

la rappresentazione in complemento a 2 asimmetrica, esiste un numero per il quale occorre eseguire

un test di funzionamento per poter validare lo schema creato o capire cosa è necessario aggiungervi.

In particolare quando A vale -16 cioè 10000 e sgn (A) ̅̅ ̅̅ ̅̅ ̅̅ ̅̅ = 0 si ha overflow per B >=0 con sgn(S)=1.

Per B>= 1 il circuito direbbe sgn(B)= sgn (A) ̅̅ ̅̅ ̅̅ ̅̅ ̅̅ =0 e sgn(B) ≠ sgn(S)=1 Overflow (Corretto)

Per B=0 il circuito direbbe sgn(B)=sgn (A) ̅̅ ̅̅ ̅̅ ̅̅ ̅̅ =0 e sgn(B) ≠ sgn(S)=1 Overflow (Corretto)

Per B <= -1 (11111) il circuito direbbe sgn(B) ≠sgn (A) ̅̅ ̅̅ ̅̅ ̅̅ ̅̅ =0 e sgn(B) ≠sgn(S)=0 OK (Corretto)

Quindi la soluzione è lo schema creato al punto precedente

A4

B4

S4..0

SGN(A)=SGN(B)

Overflow

SGN(B)≠SGN(S)

Abbiamo visto a lezione che questo schema può essere notevolmente semplificato, provare ad eseguire tale

semplificazione come ulteriore esercizio

Esercizio 2

Determinare il comportamento della rete sequenziale sincrona mostrata in figura. In particolare

Si dica quando si attiva l’uscita in funzione dei valori degli ingressi passati e presenti

L’uscita non dipende dall’ingresso presente e vale 1 se gli ingressi passati valgono 000 oppure 101

La rete è di Mealy o di Moore?

L’uscita non dipende dall’ingresso presente ma solo dallo stato interno quindi si tratta di una rete di

Moore

Elementi per la soluzione di esercizi 15 e 16:

Copertura minima degli zeri

Non minima ma interessante

Copertura minima degli uni

Soluzione esercizio 22 1) Progettare interamente, seguendo tutti i passi della procedura di sintesi, la rete RL1. Prima di

iniziare un nuovo passo si descriva cosa si sta per fare, lo si motivi e si commenti,

eventualmente, il risultato del passo precedente. Ove possibile eseguire coperture minime

Per la progettazione della rete ricavo Grafo degli stati, tabella di flusso, codifica degli stati interni,

mappe, coperture minime, espressioni ed infine schema logico.

2) Disegnare il diagramma degli stati della rete RL2

3) Sintetizzare la rete F della rete RL2, ove possibile eseguire coperture minime

Essendo la rete RL2 di Moore, per la rete F mi occorre solo la codifica degli stati

4) Sintetizzare la rete RL3 senza usare mappe di Karnaugh

5) Si eseguano considerazioni sulla determinazione della frequenza massima nello scenario

mostrato