COMPITO A. Esercizio 1 (17 punti)

Похожие документы
Esercizio 1 (12 punti) Minimizzare il numero di stati dell automa qui rappresentato. Disegnare l automa minimo.

Esercizi svolti e da svolgere sugli argomenti trattati nella lezione 25

Compito A. Esercizio 1 (13 punti) Minimizzare l automa descritto dalla seguente tabella degli stati

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

COMPITO A Esercizio 1 (13 punti) Dato il seguente automa:

Compito A Esercizio 1 (15 punti)

ESAME di PROGETTAZIONE di SISTEMI DIGITALI. Nome e Cognome

ESAME DI ARCHITETTURA I COMPITO A

Circuiti Sequenziali & Somma FP

I Indice. Prefazione. Capitolo 1 Introduzione 1

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

Informatica Generale 1 - Esercitazioni Flowgraph, algebra di Boole e calcolo binario

Contatore avanti-indietro Modulo 4

Reti Sequenziali. Reti Sequenziali. Corso di Architetture degli Elaboratori

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

Reti Logiche Combinatorie

Reti Logiche T. Esercizi reti sequenziali sincrone

Architetture degli Elaboratori I II Compito di Esonero (A) - 16/1/1997

Esercitazioni di Reti Logiche. Lezione 5

FONDAMENTI DI INFORMATICA Lezione n. 7. Esercizi di progetto di circuiti sequenziali

LOGICA SEQUENZIALE. Un blocco di logica puramente combinatoria è un. blocco con N variabili di ingresso e M variabili di uscita

Reti logiche: analisi, sintesi e minimizzazione Esercitazione. Venerdì 9 ottobre 2015

Esercizi sulle Reti Sequenziali Sincronizzate

Prova d esame di Reti Logiche T 10 Giugno 2016

Addizionatori: metodo Carry-Lookahead. Costruzione di circuiti combinatori. Standard IEEE754

senza stato una ed una sola

Costruzione di. circuiti combinatori

Calcolatori Elettronici

Rappresentazione. Notazione in complemento a 2. Complemento a due su 3 e 4 bit Complemento a due

Moduli combinatori Barbara Masucci

Sintesi di Reti Sequenziali Sincrone

Fondamenti di informatica II 1. Sintesi di reti logiche sequenziali

Introduzione. Sintesi Sequenziale Sincrona. Modello del circuito sequenziale. Progetto e strumenti. Il modello di un circuito sincrono può essere

Rappresentazione di Numeri Reali. Rappresentazione in virgola fissa (fixed-point) Rappresentazione in virgola fissa (fixed-point)

Esercitazioni di Reti Logiche. Lezione 4

La codifica. dell informazione


Esercitazione : REALIZZAZIONE IMPIANTO SEMAFORICO

I CONTATORI. Definizioni

Calcolo numerico e programmazione Rappresentazione dei numeri

Dalla tabella alla funzione canonica

I REGISTRI. Reti autonome e contatori

Per gli esercizi sulla algebra booleana, si consiglia di verificare tramite tabelle di verità le equivalenze logiche proposte sulle dispense.

Esercitazione n. 5. Rappresentazione dei numeri

21/10/14. Contatori. Registri: contatori. Sintesi del contatore modulo 8 (1) Sintesi del contatore modulo 8 (2) J 0 = K 0 = 1 J 1 = K 1 = y 0

Lezione 3. I numeri relativi

Introduzione - Modello. Introduzione - progetto e strumenti

Conversione binario-decimale. Interi unsigned in base 2. Esercitazioni su rappresentazione. dei numeri e aritmetica

Aritmetica dei Calcolatori Elettronici

Algebra di Boole X Y Z V. Algebra di Boole

Esercitazioni su rappresentazione dei numeri e aritmetica. Interi unsigned in base 2

Rappresentazione di numeri relativi (interi con segno) Rappresentazione di numeri interi relativi (con N bit) Segno e Valore Assoluto

Architettura degli Elaboratori I Esercitazione 5 - Progettazione di Reti di Interconnessione fra Registri Roberto Navigli

Soluzione Esercizio 1

Fondamenti di Informatica

Capitolo IX. Convertitori di dati

Indice. Prefazione. sommario.pdf 1 05/12/

Esempio 1: virgola mobile

Automi a stati finiti

La codifica. dell informazione

Rappresentazione dei numeri interi in un calcolatore

1. Automi a stati finiti: introduzione

Sistemi Combinatori & Mappe di Karnaugh

Rappresentazione dei Numeri

Sintesi di Reti sequenziali Sincrone

Algebra di Boole. Tavole di verità. Fondamenti di Informatica Algebra di Boole. Si basa su tre operazioni logiche: AND (*) OR (+) NOT (!

FSM: Macchine a Stati Finiti

La codifica dei numeri

Rappresentazione dei numeri reali in un calcolatore

Calcolatori Elettronici A a.a. 2008/2009. RETI SEQUENZIALI: ESERCIZI Massimiliano Giacomin

Esercizi Logica Digitale,Circuiti e Bus

Architettura degli elaboratori Tema d esame del 20/01/2016

Rappresentazione dell Informazione

Esercitazioni di Reti Logiche

Introduzione I contatori sono dispositivi fondamentali nell elettronica digitale e sono utilizzati per:

AB=AB. Porte logiche elementari. Livello fisico. Universalità delle porte NAND. Elementi di memoria: flip-flop e registri AA= A. Porta NAND.

Calcolatori Elettronici

Lezione 6 Introduzione al C++ Mauro Piccolo

Algebra di Boole Esercizi risolti

Lezione 4. Sommario. L artimetica binaria: I numeri relativi e frazionari. I numeri relativi I numeri frazionari

Транскрипт:

Esercizio (7 punti) COMPITO A Si hanno a disposizione due registri sorgente S e S da 6 bit che contengono reali memorizzati in rappresentazione a virgola mobile normalizzata : il primo bit (b ) rappresenta il segno, i successivi bit 8(b,b...b ) rappresentano la mantissa (normalizzata) e gli ultimi 3 bit (b 3 b 4 b 5 ) l esponente in complemento a due. Si dispone anche di due registri destinazione da bit D e D. Si vuole realizzare la seguente interconnessione: se la parte intera del numero reale memorizzato in S è pari, allora trasferisci la mantissa del numero contenuto in Si nel registro Di (S D, S D) altrimenti S D, S D ( NotaBene : non richiesto che la mantissa del numero in S sia pari, ma che lo sia la parte intera del numero in virgola fissa corrispondente. Pertanto necessario riflettere su come sono collegati la rappresentazione in virgola mobile normalizzata di un numero reale e il numero reale effettivamente codificato in questo modo. Dovete passare, per ogni valore della tripla b 3 b 4 b 5, dalla rappresentazione in virgola mobile a quella in virgola fissa, e osservare quale sia l ultimo bit della parte intera del numero cosi ottenuto). Si descriva in dettaglio il circuito di interconnessione. OSSERVAZIONE (che non dovrebbe proprio essere necessaria): dovete progettare un circuito COMBINATORIO!!! Esercizio (3 punti). Si progetti un comparatore aritmetico SEQUENZIALE. Il comparatore riceve due stringhe di ingresso X(n)=xx..xn... Y(n)=yy...yn (xi,yi rappresentano la coppia di bit ricevuta nell istante ti), e produce in ogni istante ti un uscita zi= sse la stringa X(i)>Y(i) (quindi verifica una maggioranza stretta).

Compito B Esercizio (7 punti) Si progetti il circuito di controllo di un semaforo. Il funzionamento richiesto è il seguente: il semaforo deve tenere accesa per secondi la luce verde poi deve spegnere la luce verde e tenere accesa per 6 secondi la luce gialla poi deve spegnere la luce gialla e tenere accesa per 6 secondi la luce rossa infine deve spegnere la luce rossa e ricominciare Si assuma di avere a disposizione un clock con una frequenza di Herz (cioè un impulso ogni secondo). Si utilizzino FF di tipo JK e non si dia per scontato l utilizzo di alcun modulo predefinito (cioè, se si usa un qualche modulo visto a lezione è necessario mostrarne in dettaglio l architettura, fino a porte logiche e FF). Per i contatori, potete usare un modulo predefinito, visto che sono oggetto del successivo esercizio. Esercizio ( punti) Progettate nel dettaglio un contatore sincrono parallelo modulo 3 con FF di tipo JK. Esercizio 3 ( punti) Quale è la codifica in decimale delle stringhe e in complemento a due?

Compito C Esercizio (4 punti). Analizzare il seguente circuito sequenziale e ricavare il diagramma di stato. J Q J Q J Q z x K Q K Q K Q Esercizio (4 punti). Progettare un circuito il cui output è quando viene riconosciuta una delle seguenti stringhe:, oppure. L output è zero altrimenti. Il primo bit che viene letto è il bit più a sinistra. Le stringhe sono sovrapponibili, nel senso chiarito a lezione. Pur non essendo richiesta l applicazione di un criterio formale di minimizzazione dell automa, sarà elemento di valutazione il numero degli stati complessivi utilizzati. Esercizio 3 ( punti) Dati tre bit bbb scrivere tutte le possibili configurazioni di questi tre bit in complemento a due, con accanto il rispettivo numero intero con segno.

Compito D Esercizio (4 punti). Analizzare il seguente circuito sequenziale e ricavare il diagramma di stato: x z J Q y J Q K Q K Q Esercizio (4 punti). Minimizzare il seguente automa e progettare il relativo circuito utilizzando FF di tipo JK: / / S / / / S 4 S 6 / S / / / / / S 5 S 3 / / S 7 / S 8 / / Esercizio 3 ( punti) In complemento a due, che valore hanno le stringhe e?

Soluzione compito A Esercizio Si hanno a disposizione due registri sorgente S e S da 6 bit che contengono reali memorizzati in rappresentazione a virgola mobile normalizzata : il primo bit (b ) rappresenta il segno, i successivi bit 8(b,b...b ) rappresentano la mantissa (normalizzata) e gli ultimi 3 bit (b 3 b 4 b 5 ) l esponente in complemento a due. Si dispone anche di due registri destinazione da bit D e D. Si vuole realizzare la seguente interconnessione: se la parte intera del numero reale memorizzato in S è pari, allora trasferisci la mantissa del numero contenuto in Si nel registro Di (S D, S D) altrimenti S D, S D Diciamo che i registri sorgente siano del tipo b b b b3 b5 dove b il bit di segno, b/ /b sono i bit della mantissa e b3/b4/b5 i bit dell esponente. Il numero in virgola fissa corrispondente dunque espresso come: b ± 3 3b, bbb... b 4b5 Ed inoltre in Ca si ha per l esponente: b3b4b5 decimale +3 + + - - -3-4 Per definire il circuito di controllo, basta osservare che se b3 = oppure b3 = b4 = b5 = allora il numero ha parte intera uguale a (che quindi è pari) Infatti, se l esponente è zero o negativo, il numero decimale corrispondente avrà certamente la parte intera uguale a zero. se b3 b4 b5 = allora il numero decimale corrispondente, a meno del segno, sarà: b,bb3..b la parte intera è dunque b (che quindi è pari sse b è ) se b3 b4 b5 = allora la parte intera è b b (che quindi è pari sse b è ) se b3 b4 b5 = allora la parte intera è b b b3 (che quindi è pari sse b3 è ) Volendo rappresentare tutto questo mediante una tabella di verità, avrò: b3b4b5 bit (X) che determina la parit (=true, =false)

se b3= true, altrimenti false se b= true, altrimenti false se b= true, altrimenti false true true true true true Pertanto il primo trasferimento verrà effettuato se e solo se X =, dove X è definito come X = b3 + b3 b4 b5 + b b3 b4 b5 + b b3 b4 b5 + b3 b3 b4 b5 (la sootolineatura significa negazione) Infatti, X vale se e solo se uno dei quttro casi sopra elencati si verifica. Sia C il circuito che prende in input b/b/b3/b3/b4/b5 e d in output sse X =. La rete di interconnessione richiesta pertanto S b b b M U X d D b3 b4 b5 a d S b b b M U X d D b 3 b 4 b 5 b a d b b3 b3 b4 b5 C X dove la linea spessa contiene solo i bit delle mantisse. Inoltre i multiplexer selezionano l input più in alto se il segnale di controllo vale, l input più in basso altrimenti.

Esercizio. Questo esercizio è del tutto analogo al progetto di un sommatore sequenziale che è stato fatto durante una esercitazione e fa anche parte delle prove circuitmaker 3-4. L automa può trovarsi in due stati possibili: S, in cui il risultato della precedente comparazione ha prodotto z=, ed S, in cui il risultato della precedente comparazione ha prodotto z=. L automa (descritto mediante tabella di transizione) è il seguente: Stato di partenza /Input (xy) S /S /S /S /S S /S /S /S /S Poichè l output coincide con l informazione che occorre tenere in memoria, conviene un automa di Moore. Compito B Esercizi e Intuitivamente, l automa di Moore che descrive il comportamento richiesto è il seguente. V dopo sec G dopo 6 sec R dopo 6 sec Se disponessimo di un circuito C che continuamente dia in output una volta contati segnali di clock, poi dia in output nuovamente una volta contati altri 6 segnali di clock ed infine dia in output una volta contati altri 6 segnali di clock (e in tutti i momenti intermedi dà in output ), l automa verrebbe tradotto nell automa di Mealy (dove associamo alle uscite ZZ = l accensione del verde e lo spegnimento delle altre due luci, a l accensione del giallo e lo spegnimento delle altre due luci, e a l accensione del rosso e lo spegnimento delle altre due luci). / V / G / / R / / Facciamo la sintesi di questo automa, lasciando per dopo la sintesi del circuito C. Associamo a V, G e R le ovvie codifiche QQ =,,. Da ciò la tabella degli stati futuri è

x Q Q Z Z Q Q (t+) J K J K - - - - - - - - - - - - - - - - - - - - - - - - - - - - Usando le mappe di Karnaugh si ottengono le espressioni minime Z = x Q + x Q Z = x Q + x Q Q J = x Q J = x Q K = K = x da cui è immediato ricavare il circuito risultante D. Supponiamo di avere un contatore modulo 3 (l esrcizio richiedeva di disegnarne esplicitamente lo schema circuitale) che prenda in input il clock con frequenza Hz e diamo in input a C le cinque uscite x4/x3/x/x/x del contatore. Il circuito C dovr implementare la funzione booleana che d se e solo se x4 x3 x x x =, oppure x4 x3 x x x =, oppure x4 x3 x x x = In questa maniera, prendendo come stato iniziale R e il contatore resettato, abbiamo il compartamento desiderato. Ovviamente, l output di C sarà l input x del circuito D (sintetizzato a partire dall automa appena mostrato). Pertanto, utilizzando il procedimento per ottenere la forma canonica disgiuntiva e usando poi gli assiomi dell algebra di Boole, si ottiene che x = x4 x3 x x x + x4 x3 x x x + x4 x3 x x x = x3 x x x + x4 x3 x x x = x x ( x3 x + x4 x3 x ) che è la funzione che C deve calcolare. In definitiva, il circuito richiesto è ottenuto come segue Ck C N T mod 3 x x x x3 x4 C x D Z Z OSS: l'esercizio poteva essere risolto più semplicemente prendendo il contatore MOD 3 ed associare alle uscite da a la luce verde, da a la luce gialla e da a la luce rossa.

Soluzione compito C Esercizio Si ha: J = Q K = x J = Q K = Q J = Q K = Q z = Q + Q = Q Q Il diagramma degli stati è il seguente: x Q (t) Q (t) Q (t) J K J K J K Q (t+) Q (t+) Q (t+) z L automa di Mealy relativo è il seguente:

/, / / /, / S /, S S 3 4 / / / S / S / 6 S 5 S 7 / / S /, / / L automa è minimizzabile: gli stati S e S 4 possono essere fusi in un unico stato. Esercizio L automa di Mealy è il seguente: / / S / / / S S / / S 4 S3 / / / dove: S indica lo stato iniziale S lo stato in cui è stato riconosciuto S 4 lo stato in cui è stata riconosciuta una stringa di lunghezza almeno S lo stato in cui è stato riconosciuto un S 3 lo stato in cui è stato riconosciuto Si noti che non è necessario tenere uno stato per la stringa perché è sufficiente tenere traccia dell ultimo. Infatti concatenando un bit alla stringa non si ottiene nessuna sequenza valida. Lo stesso ragionamento si può applicare alla stringa e così via. Si poteva anche realizzare l automa con tutti i possibili stati e poi minimizzarlo, ma sarebbe stato più laborioso. Stato Input Input S S / S / S S 4 / S / S S 3 / S /

S 3 S 4 / S / S 4 S 4 / S / Gli stati si codificano con 3 FF di tipo JK. La tabella degli stati futuri è la seguente: Stato Q (t) Q (t) Q (t) x J K J K J K Q (t+) Q (t+) Q (t+) z S X X X X X X S X X X X X X S X X X X X X S 3 X X X X X X S 4 X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X Applicando le mappe di Karnaugh si ottiene: J = x, K = J = Q x, K = x, J = Q x, K, z Q + Q Q x Esercizio 3 = = Per ottenere il valore decimale di un numero in complemento a due c n- c n- c c si usa la seguente formula: N n n i + i i= = c n c per n = 3 e al variare della sequenza di bit si ottiene: Compl. a Decimale 3-4 -3 - -

Soluzione compito D Esercizio Si ha: J = x y K = y + J = x Q Q K = Q z = Q Il diagramma degli stati è il seguente: x y Q (t) Q (t) J K J K Q (t+) Q (t+) z Esercizio L automa minimizzato è costituito da due soli stati S = { S, S, S 3, S 6 } e S = { S 4, S 5, S 7, S 8 }: / / S / S / La codifica con FF di tipo JK è immediata: x Q (t) J K Q (t+) z X

Applicando Karnaugh si ottiene: J = x, K = x infine banalmente z = x Q Esercizio 3 X X X Per ottenere il valore decimale di un numero in complemento a due c n- c n- c c si usa la seguente formula: N n n i + i i= = c n c per cui si ha: = + = + = 3 3 = + + + = 8 + 4 + + =