Esercizi Risolti RETI LOGICHE T (Modulo 2)

Похожие документы
Prova d esame di Reti Logiche T 13 Luglio 2016

Reti Logiche T. Esercizi reti sequenziali sincrone

Tutorato di Calcolatori Elettronici Battista Biggio - Sebastiano Pomata. Corso di Laurea in Ingegneria Elettronica

Reti Logiche T. Esercizi reti sequenziali asincrone

RETI LOGICHE T Analisi, sintesi e composizione di Reti Sequenziali Sincrone

Esercizio 1. Sintesi ottima SP e NAND

Esercizio 1. Utilizzare FF di tipo D (come ovvio dalla figura, sensibili al fronte di discesa del clock). Progettare il circuito con un PLA.

Calcolatori Elettronici

Reti Logiche 1. Prof. B. Buttarazzi A.A. 2009/2010. Reti Sequenziali

Laboratorio di Architettura degli Elaboratori A.A. 2016/17 Circuiti Logici

Livello logico digitale

Algebra di Boole. Fondamenti di Informatica per Meccanici Energetici - Biomedici 1. Politecnico di Torino Ottobre Mr. Boole. Variabile booleana

Reti Logiche Combinatorie

Prova d esame di Reti Logiche T 10 Giugno 2016

Calcolatori Elettronici

Esercitazioni di Reti Logiche. Lezione 4

NOME e COGNOME (stampatello): Compito A. Esercizio 1 (8 punti) Minimizzare l automa in tabella e disegnare l automa minimo.

COMPITO A. Esercizio 1 (17 punti)

Appello di Progettazione di Sistemi Digitali 16 Settembre Docenti: Proff. Gorla e Massini

UNIVERSITÀ DEGLI STUDI DI PARMA FACOLTÀ DI INGEGNERIA Corso di Reti Logiche A

Esercizi sulle Reti Sequenziali Sincronizzate

Sintesi di Reti sequenziali Sincrone

Flip-flop, registri, la macchina a stati finiti

Macchine Sequenziali

Esercitazioni di Reti Logiche

Automi a stati finiti

Esercizio 4.3. Esercizio 4.4

Sintesi di Reti Sequenziali Sincrone

Fondamenti di informatica II 1. Sintesi di reti logiche sequenziali

Reti Sequenziali. Reti Sequenziali. Corso di Architetture degli Elaboratori

Esercizi Logica Digitale,Circuiti e Bus

FONDAMENTI DI INFORMATICA. Prof. PIER LUCA MONTESSORO. Facoltà di Ingegneria Università degli Studi di Udine. Reti logiche

Dalla tabella alla funzione canonica

Circuiti sequenziali: macchine a stati finiti

Reti Logiche Appello del 1 marzo 2011

Cenni alle reti logiche. Luigi Palopoli

Alee in macchine combinatorie

ESAME DI ARCHITETTURA I COMPITO A

Calcolatori Elettronici Prof. Ing. Fabio Roli

Reti Logiche Combinatorie

Транскрипт:

Esercizio 1 Utilizzando l approccio visto nella realizzazione dell adder binario interno alla ALU si esegua il procedimento di sintesi del componente ADDER_5 4 che sommi operandi in base 4 (es 3+3=12; 1+3=1) 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 (FA 4). In particolare sono richiesti: Blocco ai morsetti del full adder FA 4 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_5 4 che evidenzi la connessione fra i full adder. La tabella di verità del full adder in base 4 (FA 4) Le mappe, le coperture minime e le espressioni minime SP delle uscite di FA 4 per operandi in base 4 Lo schema logico della rete minima SP che calcola il riporto in uscita (C out) per un qualsiasi FA 4 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. Il blocco ai morsetti e lo schema logico sono esposti qui di seguito: alfredo.delia4@unibo.it 1

Si tratta di reti combinatorie, perché qualsiasi sia la situazione, ai medesimi ingressi deve corrispondere sempre la stessa uscita. La tabella di verità del FA 4: ingressi Uscite C in A1 A B1 B S1 S C out nota ++= 1 1 ++1=1 1 1 ++2=2 1 1 1 1 ++3=3 1 1 +1+=1 1 1 1 +1+1=2 1 1 1 1 +1+2=3 1 1 1 1 +1+3=1 1 1 +2+=2 1 1 1 1 +2+1=3 1 1 1 +2+2=1 1 1 1 1 1 +2+3=11 1 1 1 1 +3+=3 1 1 1 1 +3+1=1 1 1 1 1 1 +3+2=11 1 1 1 1 1 1 +3+3=12 1 1 1++=1 1 1 1 1++1=2 1 1 1 1 1++2=3 1 1 1 1 1++3=1 1 1 1 1+1+=2 1 1 1 1 1 1+1+1=3 1 1 1 1 1+1+2=1 1 1 1 1 1 1 1+1+3=11 1 1 1 1 1+2+=3 1 1 1 1 1+2+1=1 1 1 1 1 1 1+2+2=11 1 1 1 1 1 1 1+2+3=12 1 1 1 1 1+3+=1 1 1 1 1 1 1 1+3+1=11 1 1 1 1 1 1 1+3+2=12 1 1 1 1 1 1 1 1 1+3+3=13 Mappa ed espressione di S: B1B A1A A1A Cin= 1 11 1 Cin=1 1 11 1 1 1 1 1 1 1 1 1 1 1 11 1 1 11 1 1 1 1 1 1 1 1 S = C (A in B + A B ) + C in (A B + A B ) B1B alfredo.delia4@unibo.it 2

Mappa ed espressione di S1: A1A A1A Cin= 1 11 1 Cin=1 1 11 1 1 1*$ 1 1$ 1 1 1* 1 1& 1 & 11 1 1 11 1@ 1@ 1 1# 1# 1 1 1@ 1@ S 1 = B B 1 A A 1 + B 1 B A 1 A + B 1 B A 1 A $ + C in (B 1 B A 1 + B 1 A 1 A + B 1 B A # 1 + B A 1 1 A ) B1B Mappa ed espressione di Cout: B1B + C in (B 1 B A + A 1 B @ 1 + B B & 1 A 1 + B 1 A A 1 ) B1B A1A A1A Cin= 1 11 1 Cin=1 1 11 1 1? 1 1@ 1 1@?! 1! 11 1 1 @ 1 11 1# 1 #$ 1 @#?!$ 1#! 1 1 1 1 1$ 1?$ 1 C out = B 1 A 1 + B 1 B A + B A 1 A @ + C in B 1 B # + C in A 1 A?! $ + C in B A 1 + C in B 1 A B1B alfredo.delia4@unibo.it 3

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 C A B Per prima cosa, notiamo che A 1 = A Di conseguenza solo quando l and ha in ingresso 11 abbiamo che out=. Per tutto il resto del tempo, sarà out=1. Possiamo quindi già affermare che il circuito riconosce la sequenza 11, e ne segnala la presenza portando a l output. La rete è di Moore, perché l ingresso in non partecipa direttamente al calcolo dell uscita, che dipende solo dallo stato presente. Da questo punto in poi, per semplicità, considererò uscita il nodo compreso tra and ed exor. Per ottenere out quindi, basterà negare quanto otterremo, come visto nel paragrafo appena sopra. Le variabili di stato sono tre, una per ciascun ingresso dell and. Le chiamiamo A, B, C dove A esce dal primo FFD, B dal secondo e C dal terzo. Avremo che C future = B, B future = A, A future = in. Gli stati della rete sono quindi le 8 configurazioni di queste tre variabili C: pertanto la tabella delle transizioni e di flusso sarà Stato C in= in=1 Out* S S1 S2 S3 S4 S5 S6 S7 1 1 11 1 11 11 111 (S) (S) 1 (S1) 1 (S1) 1 (S2) 1 (S2) 11 (S3) 11 (S3) 1 (S4) 1 (S4) 11 (S5) 11 (S5) 11 (S6) 11 (S6) 111 (S7) 111 (S7) 1 alfredo.delia4@unibo.it 4

Di seguito il diagramma degli stati. alfredo.delia4@unibo.it 5

Esercizio 3 Si realizzi tramite il procedimento di sintesi visto nel corso la rete logica R che ha un solo ingresso I e due uscite U ed U1. R è un riconoscitore di impulsi che attiva U 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 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 1 1 1 1 1 1 1 U 1 1 U1 1 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. Risoluzione con rete di Mealy La scelta di Mealy è forzata, visto il testo. Viene infatti richiesto che l uscita sia modificata durante il clock di riconoscimento. Una risoluzione tramite Moore consentirebbe di modificare l uscita solo al clock successivo in quanto bisogna dare tempo alla rete per cambiare il proprio stato. Il grafo degli stati [U U 1]: alfredo.delia4@unibo.it 6

La tabella di flusso: I= I=1 S S, S1, S1 S4, S2, S2 S4,1 S3, S3 S4, S3, S4 S5, S1, S5 S, S1,1 Codifichiamo gli stati con 3 bit, nella maniera seguente. La tabella delle transizioni e di flusso: C [U U 1]; I= I=1 S, 1, S1 1 11, 11, S2 11 11,1 111, S3 111 11, 111, S4 11 1, 1, S5 1, 1,1 Tutti i casi mancanti sono di indifferenza. Notiamo che altre codifiche sono possibili e non sbagliate. Sintesi per U: Sintesi per U1: Sintesi per la variabile di stato futuro A f1 : Sintesi per la variabile di stato futuro B f1 : Sintesi per la variabile di stato futuro Cf: U = A B CI U 1 = C I A f = I B f = A CI 1 11 1 1 -@ - 1@ 11 1@# 1 1 1@# 1 1# - -# C f = + BI @ + AI # 1 La codifica utilizzata permette di ricavare istantaneamente (senza l uso delle mappe) l espressione di Af e Bf. alfredo.delia4@unibo.it 7

Rete F Rete G Esercizio 4 L and dà in output 1 solo per count=xf. Di conseguenza per Se x<count<xf Se Count = xf lo shift register è in modalità 1 = shift right lo shift register è in modalità 11 = load T T T T T T T T T T T T T T T T T T count h 1h 2h 3h 4h 5h 6h 7h 8h 9h Ah Bh Ch Dh Eh Fh h 1h register D5h USR (h) 47 23 11 8 84 C2 E1 7 B8 DC EE F7 7B 3D 1E 8F D5 6A USR futuro 23 11 8 84 C2 E1 7 B8 DC EE F7 7B 3D 1E 8F D5 6A B5 A1A 1 11 1 1 U 1 1 1 1 1 1 1 1 1 alfredo.delia4@unibo.it 8

Esercizio 6 Data la mappa in figura della funzione G, si ricavino le espressioni minime SP e PS Nell espressione ricavata si metta in evidenza la variabile F ottenendo G = (G1 AND F) OR (G2 AND (F*)). Quale rete logica nota ci consente di ottenere G supponendo di avere F, G1, e G2? Scrivere una possibile mappa di Karnaugh che implementa G1. SP: PS: EF= 1 11 1 EF=1 1 11 1 1 1 $ 1$ 1 1@ 1 @ 1 $ 1 1$ 11 1@ 1@ 1 1 11 1 1 1 1 1 1 EF=1 1 11 1 EF=11 1 11 1 1 1 1 1 1 11 11 1 1 1 1# 1# 1 1 1# 1# 1 G = A DE F + BC E F @ + E + A E $ + A B + A B C D EF + DE # + AD EF EF= 1 11 1 EF=1 1 11 1 * 1 1 * * 1 * 1 1 1 1 1 1 11 1 1 1 1 11 1 1 1 1 1 * * 1 * * EF=1 1 11 1 EF=11 1 11 1 1 # # # # 1 1 1 1 11 @ @ 11 1 1 1 @ 1 1 @ 1 1 1 1 1 G = (B + D + E) (C + D + A)(A + B + E)(A + C + F )(A + B + D + E ) # (A + B + D + E )(A + D + E + F) @ (A + C + B + E) Per quanto riguarda la seconda domanda, la risposta è senza dubbio un multiplexer, perché la sua espressione è proprio quella scritta nel testo. Per ottenere la mappa di Karnaugh di G1 iniziamo con il raccogliere F e not-f. G = A DE F + BC E F + E + A E + A B + A B C D EF + DE + AD EF = F (A DE + BC E + A B C D E) + E + A E + A B + DE + F(AD E) I termini che non contengono né F né not-f possono essere inclusi in entrambe le parentesi, perché X = X(Y + Y ) = XY + XY Quindi G1 = AD E # + E + A E + A B @ + DE alfredo.delia4@unibo.it 9

Da cui la mappa in 5 variabili (E): E= 1 11 1 E=1 1 11 1 1 1 1@ 1 1@ 11 1 1 1 1 11 1# 1# 1 1 1# 1 1 1# Nota bene: la mappa ricavata è la stessa che veniva data nel testo del problema, considerato F=1. Esercizio 7 A1A B C 2A 2B 4C 3 2A+2B+4C+3 11 11 1 1 11 111 1 1 11 11 1 1 1 1 11 11 1 1 11 11 1 1 1 1 11 11 1 1 1 1 11 111 1 1 1 1 1 1 11 111 1 1 11 111 1 1 1 1 11 111 1 1 1 1 11 11 1 1 1 1 1 1 11 111 11 11 11 11 11 1 11 1 11 111 11 1 11 1 11 111 11 1 1 11 1 1 11 1111 Da cui si ricava che per l uscita servono 4 bit. I bit sono nell ordine U3U2U1U. Quindi la mappa di Karnaugh del bit U2 è la seguente: BC 1 11 1 1 1 A1A 1 1@ 1@ 11 1 1# 1 1 1# U 2 = A 1 A B C + A 1 A B C + A A 1 C @ + A 1 A C + A 1 BC # + A BC 1 In questa mappa di Karnaugh non ci sono configurazioni soggette ad alea statica. alfredo.delia4@unibo.it 1

Esercizio 8 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 A partire dal primo periodo di clock in cui RESET =, e per tutto il tempo in cui RESET permane a, 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 Indicare nell apposita tabella l andamento dei segnali J 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. Q[15..] contiene DC7A h = 111 11 111 11 Clock T T T T T T T T T J[3..] 1 11 111 1111 111 11 1 U 1 1 1 1 1 Con questa rete si genera una forma d onda 11111. alfredo.delia4@unibo.it 11

Le altre reti proposte sono combinatorie, perché non ci sono elementi di memoria. Le uscite valgono Esercizio 1 Nel caso di sommatore e registro, abbiamo che arrivati allo stato presente S27 lo stato futuro deve essere S. Quindi a 27, cioè 1111, il multiplexer manda in ingresso al sommatore 11111 per fare in modo che lo stato futuro sia. U = C (A 5 A 4 A 3 A 2 A 1 A ) U 1 = C (B 4 B 3 B 2 B 1 B ) Alternativamente, come visto a lezione, si può usare il segnale uscente dall and, negato, per azzerare l ingresso del registro. Con questa soluzione non è necessario il multiplexer presente in figura. Per quanto concerne il contatore per 28 con i B, ne servono 2. Il primo conta le unità, e alla decina raggiunta incrementa il secondo, che conta le decine. Quando in uscita dal primo c è 7, e in uscita dal secondo c è 2, si deve fare in modo che entrambi vedano come stato futuro. Esercizio 11 1. Servono 4t clk 2. La frequenza è data da t clk > t su + t RC + t R Per quanto riguarda RC va scelto il caso peggiore. Di conseguenza sceglieremo la rete RC che impiega più tempo a fare i suoi calcoli e cioè RC1: alfredo.delia4@unibo.it 12

f MAX = 1 1 19 = = ~1,1 MHz t clkmin (2 + 6 + 1)1 9 9 3. Nel secondo caso la frequenza è 1 9 f 2 = ~,7 MHz 2 + 1 + 1 Quindi avremo che la prima uscita sarà disponibile dalla prima rete dopo T = 4 9 1 9 = 3,6μs Da questo istante in poi ad ogni clock avremo un uscita disponibile. Quindi la 1esima uscita sarà disponibile a Per la seconda invece 1 T = 3,6 1 6 + 9 1 9 99 = 92,7μs T 2 = 2 13 1 9 = 2,6μs 1 T 2 = 2,6 1 6 + 13 1 9 99 = 131,3μs Esercizio 12 Si richiede di ricavare l espressione minima SP della funzione di uscita U di una rete combinatoria avente come ingresso 4 variabili binarie I 3 I 2 I 1 I, il cui funzionamento è descritto dalle seguenti specifiche: L uscita U vale 1 per tutte le configurazioni d ingresso tali che I 3=1 e I = 1 L uscita U vale 1 per tutte le configurazioni d ingresso tali che I 2=1 e I 1I = L uscita U vale 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. I 3I 2 I 1I 1 11 1 1 1 11 1 1 1 1 1 1 U = I 3 I + I 2 I 1 I 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? La rete presenta possibili alee in quanto gli uni in 11 e in 111, che sono adiacenti, non si trovano in uno stesso raggruppamento. Si potrebbe aggiungere l addendo I 3 I 2 I 1. Quando i segnali cambiano uno alla volta, se la rete è completamente specificata, si risolve il problema delle alee facendo in modo che ogni coppia di 1 adiacenti sia racchiusa in un raggruppamento. alfredo.delia4@unibo.it 13

Esercizio 13 Il grafo degli stati: Con 6 stati, servono 3 variabili di stato. Esercizio 14 Espressioni di stato futuro dei due FF-D: Completamento dell andamento dei segnali Q 1f = I Q f = IQ + Q 1 Q CLOCK T T T T T T T T T T I=D1 1 1 1 1 1 Q 1 1 1 1 1 1 Q 1F 1 1 1 1 1 Q =U 1 1 1 Q F 1 1 1 La frequenza è data da t clk > t su + t RC + t R (1) Ai fini della frequenza massima di funzionamento dovremo considerare il percorso dati critico all ingresso dei FF-D. FF1 impone un tempo di setup di 1 ms, ma il suo ingresso è I, che arriva immediatamente. FF impone un tempo di setup di 8 ms, ma il suo ingresso può provenire da due diversi percorsi: 1. Dal MUX, dopo il cambio di un ingresso (I o Q 1) 2. Dal MUX, dopo il cambio di Q che è il segnale di controllo Q è valido dopo il tempo di risposta di FF, cioè 2 ms, mentre Q 1 è valido dopo il tempo di risposta di FF1 (5 ms). Quindi, nonostante il MUX sia più lento quando viene modificato il segnale di controllo, nel nostro caso possiamo considerare che impieghi 3 ms perché quando Q 1 cambia il segnale di controllo è già stabile. alfredo.delia4@unibo.it 14

Applicando la formula (1) all ingresso di FF, otteniamo t clk > 8 + 3 + 5 = 16 ms f MAX = 1 1 13 = = t clk 16 1 3 16 ~62,5Hz alfredo.delia4@unibo.it 15