Sei sulla pagina 1di 22

ARCHITETTURA DEI CALCOLATORI E SISTEMI OPERATIVI - ESERCIZI DI LOGICA .

17 OTTOBRE 2015

ESERCIZIO N. 1 – LOGICA COMBINATORIA


Si progetti in prima forma canonica (SoP) una rete combinatoria avente 4 ingressi X Y A B e un’uscita F:

se XY = 00 allora F vale 0 se XY = 01 allora F vale B

se XY = 11 allora F vale (A or B) se XY = 10 allora F vale A

a) Si scriva la tabella ingressi-uscite e per ogni mintermine individuato si scriva la forma algebrica
corrispondente:

XYAB  F  forma 
0000  0   
0001  0   
0010  0   
0011  0   
0100  0   
0101  1  !XY!AB 
0110  0   
0111  1  !XYAB 
1000  0   
1001  0   
1010  1  X!YA!B 
1011  1  X!YAB 
1100  0   
1101  1  XY!AB 
1110  1  XYA!B 
1111  1  XYAB 

b) Poi si scriva come SoP la funzione F

F ( X, Y, A, B )  !XY!AB+!XYAB+X!YA!B+X!YAB+XY!AB+XYA!B+XYAB

c) Si disegni una rete combinatoria che realizza la funzione F sintetizzata al punto precedente, utilizzando
solamente porte a due ingressi (e negatori): banale, lasciato al lettore

d) Si calcoli il ritardo massimo (percorsi critici) della rete disegnata prima, supponendo che la porta NOT
abbia ritardo di 1 ns, la porta AND a due ingressi abbia ritardo di 2 ns e la porta OR a due ingressi abbia
ritardo di 3 ns (non si consideri il ritardo di propagazione lungo i conduttori):

ritardo (F)  Comunque si disegni la rete, i percorsi critici sono più d’uno e comprendono il passaggio
in cascata attraverso 1 negatore, 2 and e 3 or: ; dunque il ritardo lungo essi vale 1+2x2 + 3x3 = 14 ns __

Pag. 1
ESERCIZIO N. 2 – LOGICA DIGITALE

prima parte – logica combinatoria

Si vuole realizzare un circuito combinatorio con quattro ingressi ( a, b, c, d ) e una uscita F,


caratterizzata dai mintermini seguenti ( 0, 1, 2, 3, 7, 8, 9, 11, 13 ).

(a) Si scriva la prima forma canonica (somma di prodotti – SOP) della funzione F:

F ( a, b, c, d )  !a !b !c !d  !a !b !c d  !a !b c !d  !a !b c d  !a b c d ___
 a !b !c !d  a !b !c d  a !b c d  a b !c d _____________________________
__________________________________________________________
(b) Si disegni una rete combinatoria che realizza la funzione F sintetizzata al punto precedente, utilizzando
solamente porte a tre ingressi. Nel caso di termine con solo due ingressi nell’espressione algebrica, nel
circuito si introduca il terzo ingresso alla porta in modo opportuno (p. es. con un valore costante di
segnale o utilizzando la proprietà di idempotenza): lasciato al lettore

(c) Si calcoli il ritardo massimo (percorso critico) della rete disegnata al punto precedente, supponendo che
ogni porta AND a tre ingressi abbia ritardo di 2 ns e che ogni porta OR a tre ingressi abbia ritardo pari a
3 ns (non si consideri il ritardo delle porte NOT applicate agli ingressi primari):

ritardo (F)  1  2 ns (strato AND)  2  3 ns (strato OR)  8 ns


perchè ogni AND a 4 ingressi che realizza un mintermine viene ottenuto
con due AND a 3 ingressi in cascata, poi l’OR a 9 ingressi viene realizzato con
un albero a 2 stadi (il primo di 3 OR da 3 ingressi, il secondo con un OR da 3
ingressi che raccoglie le 3 uscite dello stadio precedente, e genera F
Quindi ci sono 3x9 percorsi di uguale criticità che passano attraverso due
AND in cascata e 2OR in cascata. _______________________________________

Pag. 2
seconda parte – logica sequenziale

Sia dato il circuito sequenziale descritto dalle equazioni logiche seguenti:

D1 = IN or (not Q1 or Q2)
D2 = not IN and (not Q1 or Q2)
Z = (not Q1 or Q2)

Il circuito è composto da due bistabili master / slave di tipo D (D1, Q1) e (D2, Q2), con Di ingresso del
bistabile e Qi stato / uscita del bistabile; ed è dotato di un ingresso IN e di un’uscita Z.
Si chiede di completare il diagramma temporale riportato qui sotto. Si noti che:
 si devono trascurare completamente i ritardi di propagazione delle porte logiche AND e OR, e i ritardi
di commutazione dei bistabili
 i bistabili sono di tipo master-slave con uscita che commuta sul fronte di discesa del clock
 l’ingresso IN può variare in qualunque momento

diagramma temporale da completare

                                                         
IN  0                                                       
                                                         
Z  1                                                       
                                                         
D1  1                                                       
                                                         
Q1  0                                                       
                                                         
D2  1                                                       
                                                         
Q2  0                                                       
                                                         
CLK                                                         
                                                         

Pag. 3
soluzione
Si noti che:

D1 = IN or (not Q1 or Q2) = IN or Z
D2 = not IN and (not Q1 or Q2) = not IN and Z
Z = (not Q1 or Q2)
Pertanto ricavare il diagramma temporale è semplice e rapido. Eccolo:

                                                         
IN  0                                                       
                                                         
Z  1                                                       
                                                         
D1  1                                                       
                                                         
Q1  0                                                       
                                                         
D2  1                                                       
                                                         
Q2  0                                                       
                                                         
CLK                                                         
                                                         

Pag. 4
ESERCIZIO N. 3 – LOGICA DIGITALE

prima parte – logica combinatoria

Si vuole realizzare un circuito combinatorio con quattro ingressi (a, b, c, d ) e una uscita F,
caratterizzata dai mintermini seguenti: ( 0, 2, 8, 10, 12, 14 ).
(b) Si scriva la prima forma canonica (somma di prodotti – SOP) della funzione F:

F ( a, b, c, d )  !a !b !c !d  !a !b c !d  a !b !c !d  a !b c !d  a b !c !d
+ a b c !d _____________________________________________
____________________________________________________________________

(d) Si disegni una rete combinatoria che realizza la funzione F sintetizzata al punto precedente, utilizzando
solamente porte a due ingressi. lasciato al lettore

(e) Si calcoli il ritardo massimo (percorso critico) della rete disegnata al punto precedente, supponendo che
ogni porta AND a due ingressi abbia ritardo pari a 2 ns e che ogni porta OR a due ingressi abbia ritardo
pari a 3 ns e ogni porta NOT abbia ritardo pari a 1 ns:

ritardo (F)  1 ns (NOT)  2 ns (AND)  3 ns (OR)  6 ns ___________________

Pag. 5
seconda parte – logica sequenziale

Sia dato il circuito sequenziale descritto dalle equazioni logiche seguenti:

D1 = I × (Q1 × Q0 + not Q1 × not Q0) + not I × (not Q1 × Q0 + Q1 × not Q0)

D0 = not Q0

Z = Q1 × Q0
dove “+” indica la somma logica (or) e “×” indica il prodotto logico (and).
Il circuito è composto da due bistabili master / slave di tipo D (D1, Q1) e (D0, Q0), dove Di è l’ingresso del
bistabile e Qi è lo stato/uscita del bistabile; ed è dotato di un ingresso I e di una uscita Z.
Si chiede di completare il diagramma temporale riportato qui sotto. Si noti che:
 si devono trascurare completamente i ritardi di propagazione delle porte logiche AND e OR, e i ritardi
di commutazione dei bistabili
 i bistabili sono di tipo master-slave con uscita che commuta sul fronte di discesa del clock
 l’ingresso I può variare in qualunque momento

diagramma temporale da completare

                                                         

I                                                         

                                                         

Z                                                         

                                                         

D1                                                         

                                                         

Q1  0                                                       

                                                         

D0                                                         

  1                                                       

Q0                                                         
                                                         
CLK                                                         
ciclo  1  2  3  4  5  6  7 

Pag. 6
soluzione

                                                         

I                                                         

                                                         

Z                                                         

                                                         

D1                                                         

                                                         

Q1  0        1        1        0       1       1       0       

                                                         

D0                                                         

  1                                                       

Q0          0        1        0       1       0       1       

                                                         
CLK                                                         
                                                         
cicl
1  2  3  4  5  6  7 

Si noti che D0 e Q0 costituiscono un sistema autonomo: in ogni intervallo di clock D0 è la


negazione di Q0, quindi a ogni fronte di discesa del clock Q0 si inverte (e D0 di conseguenza pure
si inverte).

D1 è un poco più difficile da calcolare:

se I= 0 vale 1 solo se Q1 e Q0 sono diversi (cioè è l’exor fra Q1 e Q0)

se I= 1 vale 1 solo se Q1 e Q0 sono uguali (cioè è la negazione dell’exor fra Q1 e Q0)

Di conseguenza Q1 in un intervallo di clock assume il valore di D1 presente sul finire della fase alta
del clock nell’intervallo immediatamente precedente.

Osservando la sequenza di Q1 Q0 si vede che in pratica il circuito costituisce un contatore binario


modulo 4 (il conteggio vale 00, 01, 10, 11, 00, 01 ecc.): se I=0 conta a incremento, se I=1 conta
a decremento. L’uscita Z vale 1 solo quando il conteggio vale 11.

Pag. 7
ESERCIZIO N. 4 – LOGICA DIGITALE

prima parte – logica combinatoria

Data la funzione combinatoria F seguente:

F ( a, b, c, d )  !(a+b+c+d) + (!ac+a!c)!b!d + (!b!d+bd)!ac + abcd


a) La si trasformi in somma di prodotti (SOP):

F ( a, b, c, d )  !a !b !c !d  !a !b c !d  a !b !c !d  !a !b c !d  !a b c d
 a b c d_____________________________________________________________
(trasf. De Morgan del primo termine e calcolo dei prodotti del secondo e del terzo) _____________

d) Si disegni una rete combinatoria che realizza la funzione F sintetizzata al punto precedente, utilizzando
solamente porte a due ingressi (e negatori): banale, lasciato al lettore

e) Si calcoli il ritardo massimo (percorsi critici) della rete disegnata prima, supponendo che la porta NOT
abbia ritardo di 1 ns, la porta AND a due ingressi abbia ritardo di 2 ns e la porta OR a due ingressi
abbia ritardo di 3 ns (non si consideri il ritardo di propagazione lungo i conduttori):

ritardo (F)  1 (NOT)  2 (AND in cascata)  2 ns  3 (OR in cascata)  3 ns  14 ns ___________

Pag. 8
seconda parte – logica sequenziale

Sia dato il circuito sequenziale con un ingresso I e due uscite Z1 e Z2 descritto dalle equazioni logiche
seguenti:

D = I xor Q

Z1 = Q

Z2 = I xor (not Q)
Il circuito comprende un bistabile master / slave di tipo D (D, Q), con D ingresso del bistabile e Q stato /
uscita del bistabile.
Si chiede di completare il diagramma temporale riportato qui sotto. Si noti che:
 si devono trascurare completamente i ritardi di propagazione delle porte logiche NOT e XOR, e i ritardi
di campionamento e commutazione del bistabile
 il bistabile impiegato campiona e memorizza l’ingresso presente quando si ha il fronte di salita del
clock; in corrispondenza del fronte di discesa del clock mostra il valore memorizzato; durante i due
livelli del clock è insensibile agli ingressi e mantiene fissa l’uscita. Si noti bene questo tipo di
comportamento.

diagramma temporale da completare

                                                         
I  0  1                                                     
                                                         
Z1                                                         
                                                         
Z2                                                         
                                                         
Q  0                                                       
                                                         
D                                                         
                                                         
CLK                                                         
                                                         

Pag. 9
soluzione
D è uguale all’ingresso I quando Q = 0, è la negazione dell’ingresso I quando Q = 1

Q è costante per tutto un intervallo, e ha il valore che D aveva in corrispondenza del precedente fronte di
salita del clock

Z1 dipende solo dallo stato (è uguale a Q) quindi deve rimanere costante nell’intervallo

Z2 dipende da stato e ingresso, quindi può variare al variare dell’ingresso

Procedimento di calcolo dei valori in un intervallo:

- si pone Q uguale a D al fronte di salita a metà dell’intervallo precedente

- si pone Z1 uguale a Q

- si calcola D nell’intervallo, istante per istante

- si calcola Z2 nell’intervallo, istante per istante

Poi si passa all’intervallo successivo. Nel primo intervallo Q è ovviamente già dato (è lo stato iniziale, non
calcolabile perché non c’è l’intervallo precedente).

 
I  0 1 0 1 0 1 0 0
 
Z1  0 1 1 0 0 1 1
 
Z2  0 0 1 1 0 0 0
 

 

                                                         
CLK                                                         
                                                         

Descrizione del comportamento ai morsetti:


Z1 è il bit di parità di tutti i bit di ingresso arrivati in precedenza (cioè non considerando quello attualmente
in arrivo): si vedano le sequenze di 0 e di 1 riportate nel diagramma (per I si devono considerare i valori in
corrispondenza dei fronti di salita del clock). Il primo valore è 0 perché in precedenza non è arrivato nulla:
niente 1 cioè zero 1 quindi parità pari.
Z2 è uguale all’ingresso quando Z1 = 1, è la negazione dell’ingresso quando Z1 = 0. Se guardassimo solo i
valori in corrispondenza del fronte di salita del clock, troveremmo la sequenza di ingresso, con negati i bit in
corrispondenza degli zeri della sequenza Z1 dei bit di parità.

Pag. 10
ESERCIZIO N. 5 – LOGICA DIGITALE

prima parte – logica combinatoria

Data la funzione combinatoria F seguente:

F ( a, b, c, d )  !a ( c ( !b !d + b d ) + !d ( !b !c + b c ) ) + a b c d
a) La si trasformi in somma di prodotti (SOP):

F ( a, b, c, d )  !a !b c !d  !a b c d  !a !b !c !d  !a b c !d  a b c d ________

(semplice calcolo dei prodotti) ________________________________________________

b) Si disegni una rete combinatoria che realizza la funzione F sintetizzata al punto precedente, utilizzando
solamente porte a due ingressi (e negatori): banale, lasciato al lettore

e) Si calcoli il ritardo massimo (percorsi critici) della rete disegnata prima, supponendo che la porta NOT
abbia ritardo di 1 ns, la porta AND a due ingressi abbia ritardo di 2 ns e la porta OR a due ingressi
abbia ritardo di 3 ns (non si consideri il ritardo di propagazione lungo i conduttori):

ritardo (F)  ______________________________________________________________________


comunque si disegni la rete ci sarà sempre almeno un percorso che da un ingresso arriva all’uscita passando
per un NOT, due AND e tre OR: quindi

ritardo max =1 (NOT)  2 (AND in cascata)  2 ns  3 (OR in cascata)3 ns  14 ns.

Pag. 11
seconda parte – logica sequenziale

Sia dato il circuito sequenziale con due ingressi I e SEL e un’uscita F riportato nel seguente disegno:

Il circuito comprende un bistabile master / slave di tipo D (D, Q), con D ingresso del bistabile e Q stato /
uscita del bistabile, e un selettore (multiplexer) comandato da SEL.
Si chiede di completare il diagramma temporale riportato qui sotto. Si noti che:
 si devono trascurare completamente i ritardi di propagazione della porta logica XOR, del selettore, dei
file e i ritardi di campionamento e commutazione del bistabile.
 il bistabile impiegato è il solito master-slave che commuta l’uscita sul fronte di discesa del clock.

diagramma temporale da completare

    1                                                     
I  0                                                       
                                                         
SEL  0                                                       
                                                         
D                                                         
                                                         
Q  0                                                       
                                                         
F                                                         
                                                         
CLOCK                                                         
                                                         

Pag. 12
soluzione
D è uguale all’ingresso I quando Q = 0, è la negazione dell’ingresso I quando Q = 1.

Q è costante per tutto un intervallo, e ha il valore che D aveva immediatamente prima del fronte di discesa
del clock all’inizio dell’intervallo.

Procedimento di calcolo dei valori in un intervallo:

- per tutto l’intervallo si pone Q uguale al valore di D verso la fine dell’intervallo precedente

- si calcola D nell’intervallo, istante per istante, in funzione di I e di Q

Poi si passa all’intervallo successivo, e così via fino al termine. Nel primo intervallo Q è ovviamente già dato
(è lo stato iniziale, non calcolabile perché non c’è l’intervallo precedente).

Infine, in tutti gli intervalli si pone F uguale a I se SEL = 0, oppure F uguale a Q se SEL = 1.

  1
I  0 1 0 0 1 1 0 1
 
SEL  0 0 0 0 0 0 0 1
  1
D  0 1 1 1 0 1 1 0
  1
Q  0 0 1 1 1 0 1 1
  1
F  0 1 0 0 1 1 0 1
                                                         
CLK                                                         
                                                         

Descrizione del comportamento ai morsetti:


Q è il bit di parità di tutti i bit di ingresso I arrivati negli intervalli precedenti (cioè non considerando quello in
arrivo nell’intervallo attuale): si vedano le sequenze di 0 e di 1 riportate nel diagramma per I.
L’uscita F è uguale a I se SEL=0, è uguale a Q (cioè al bit di parità della sequenza di I) se SEL =1 .
Quindi il circuito, comandato da SEL nel modo indicato nel diagramma, riproduce in uscita la sequenza di I e
vi aggiunge in coda il bit di parità della sequenza stessa.
Quando in uscita viene posto il bit di parità il corrispondente bit di I non appare nell’uscita F, ma continua a
partecipare alla generazione dei bit di parità Q. Perciò il bit di parità dipende da tutte le sequenze che si
susseguono in ingresso e non viene inizializzato quando SEL da 1 torna a 0. (Come si potrebbe modificare il
circuito per introdurvi l’inizializzazione del bit di parità all’inizio di ogni nuova sequenza di I?)

Pag. 13
ESERCIZIO N. 6 – LOGICA DIGITALE

prima parte – logica combinatoria

Un circuito combinatorio riceve in ingresso un numero binario intero senza segno da quattro bit (X3 X2 X1
X0), dove ogni bit rappresenta un ingresso al circuito stesso (X3 e X0 sono i bit più e meno significativo del
numero, rispettivamente). Il dispositivo è dotato di un’uscita F, che vale 1 solo se il numero in ingresso è un
multiplo di 3.

(a) Si scrivano i mintermini della funzione F (forma somma di prodotti – SOP) della funzione F.

I multipli di 3 sono 3, 6, 9, 12 ,15 quindi i mintermini sono i corrispondenti cinque:

!X3 !X2 X1 X0, !X3 X2 X1 !X0, X3 !X2 !X1 X0, X3 X2 !X1 !X0, X3 X2 X1 X0

(f) Si sintetizzi la funzione F come somma di prodotti (SOP).

F ( X3, X2, X1, X0 ) !X3 !X2 X1 X0 + !X3 X2 X1 !X0 + X3 !X2 !X1 X0 + X3 X2 !X1 !X0 + X3 X2 X1 X0

__________________________________________________________
(g) Si disegni una rete combinatoria che realizza la funzione F sintetizzata al punto precedente, utilizzando
solamente porte a due ingressi. lasciato al lettore

(h) Si calcoli il ritardo massimo (percorso critico) della rete disegnata al punto precedente, supponendo che
ogni porta AND a due ingressi abbia ritardo pari a 2 ns e che ogni porta OR a due ingressi abbia ritardo
pari a 3 ns (non si consideri il ritardo delle porte NOT applicate agli ingressi primari):

ritardo (F)  2  2 ns (strato AND)  3  3 ns (strato OR)  13 ns _______

Pag. 14
seconda parte – logica sequenziale

Sia dato il circuito sequenziale avente un ingresso I e un’uscita Z, dotato di due bistabili master / slave di
tipo D: (D1, Q1) e (D2, Q2), descritto dalle equazioni logiche seguenti:

D1 = Q2 or I D2 = Q2 xor Q1 Z = Q2 and Q1
Si chiede di completare il diagramma temporale riportato qui sotto. Si noti che:
 si devono trascurare completamente i ritardi di propagazione delle porte logiche XOR e AND, e i ritardi
di commutazione dei bistabili
 i bistabili presenti nel circuito sono di tipo "master-slave " e hanno questo funzionamento:
o sul livello alto del clock campionano e memorizzano l’ingresso
o sul fronte di discesa del clock mostrano il valore memorizzato
mentre negli altri momenti sono insensibili agli ingressi e mantengono fissa l’uscita; questo è il
comportamento usuale del bistabile master-slave standard illustrato a lezione

diagramma temporale da completare

                                                         
I  0                                                       
                                                         
D1                                                         
                                                         
Q1  0                                                       
                                                         
D2                                                         
                                                         
Q2  0                                                       
                                                         
Z                                                         
                                                         
CLK                                                         
                                                         

Pag. 15
soluzione
D1 = Q2 or I D2 = Q2 xor Q1 Z = Q2 and Q1
                                                         
I  0        1        1  0      0        0        0  1    0  0       
                                                         
D1  0        1        1  0      1        1        0  1    0  1       
                                                         
Q1  0        0        1        0        1                0       
                                                         
D2  0        0        1        1        0        1        1       
                                                         
Q2  0        0        0        1        1        0        1       
                                                         
Z  0        0        0        0        1        0        0       
                                                         
CLK                                                         
                                                         

Pag. 16
ESERCIZIO N. 7 – LOGICA DIGITALE

prima parte – logica combinatoria

Un circuito combinatorio riceve in ingresso un numero binario intero senza segno da quattro bit (X3 X2 X1
X0), dove ogni bit rappresenta un ingresso al circuito stesso (X3 è il bit più significativo e X0 è il bit meno
significativo del numero). Il dispositivo è dotato di un’uscita F, che vale 1 solo se il numero in ingresso vale
10, 11, 12.

(a) Si scrivano i tre mintermini della funzione F in prima forma canonica (somma di prodotti – SOP):

10: X3 !X2 X1 !X0 11: X3 !X2 X1 X0 12: X3 X2 !X1 !X0

(i) Si sintetizzi la funzione F come somma di prodotti (SOP).

F (X3, X2, X1, X0 )  X3 !X2 X1 !X0 + X3 !X2 X1 X0 + X3 X2 !X1 !X0 _______________

(j) Si disegni una rete combinatoria che realizza la funzione F sintetizzata al punto precedente,
esattamente come risulta dalla forma canonica SOP utilizzando solamente porte a due ingressi.
Lasciato al lettore.

(k) Si calcoli il ritardo massimo (percorso critico) della rete disegnata al punto precedente, supponendo che
ogni porta NOT non abbia ritardo, che ogni porta AND a due ingressi abbia ritardo pari a 2 ns e che ogni
porta OR a due ingressi abbia ritardo pari a 3 ns:

ritardo (F)  2  2 ns (strato AND)  2  3 ns (strato OR)  10 ns __________________


Questo ritardo è calcolato considerando uno qualsiasi dei percorsi critici (tutti di uguale criticità) che passano
attraverso due AND in cascata e due OR in cascata.

Pag. 17
seconda parte – logica sequenziale

Sia dato il circuito sequenziale avente un ingresso I e due uscite Z1 e Z0, dotato di tre bistabili master /
slave di tipo D: (D2, Q2) , (D1, Q1) e (D0, Q0), descritto dalle equazioni logiche seguenti:

D2 = Q0 D1 = Q2 D0 = Q1

Z1 = I and Q1 Z0 = I xor Q0
Si chiede di completare il diagramma temporale riportato qui sotto. Si noti che:
 si devono trascurare completamente i ritardi di propagazione delle porte logiche xor e and, e i ritardi
di commutazione dei bistabili
 i bistabili presenti nel circuito sono di tipo "master-slave" e hanno questo funzionamento:
o sul livello alto del clock campionano e memorizzano l’ingresso
o sul fronte di discesa del clock mostrano il valore memorizzato
mentre negli altri momenti sono insensibili agli ingressi e mantengono fissa l’uscita; questo è il
comportamento usuale del bistabile master-slave standard illustrato a lezione

diagramma temporale da completare

                                                         
I  1                                                       
                                                         
D2                                                         
                                                         
Q2  1                                                       
                                                         
D1                                                         
                                                         
Q1  0                                                       
                                                         
D0                                                         
                                                         
Q0  0                                                       
                                                         
Z1                                                         
                                                         
Z0                                                         
                                                         
CLK                                                         
                                                         

Pag. 18
soluzione
D2 = Q0 D1 = Q2 D0 = Q1
Con queste equazioni i tre bistabili si comportano come un registro a scorrimento circolare (i tre bit
scorrono da Q2 a Q1 a Q0 e rientrano da Q0 a Q2) indipendentemente da I.

Q2, Q1 e Q0 partono da 100 e dunque poi valgono 010 001 100 010 001, eccetera. In questa
sequenza leggiamo che:

Q1 vale 0,1,0,0,1,0,0,1,0, ...

Q0 vale 0,0,1,0,0,1,0,0,1, ...

Poichè Z1 = (I and Q1), ne segue che Z1 sarà la stessa sequenza di Q1 se I = 1, e sarà una
sequenza di 0 se I = 0.

Poichè Z0 = ( I xor Q0), ne segue che se I = 1 allora lo xor farà diventare la sequenza di Z0 uguale
alla negazione della sequenza di Q0, e se I = 0 allora la sequenza di Z0 sarà la stessa sequenza di Q0.

                                                         
I  1        1        1        1        1  0      0        0       
                                                         
D2  0        0        1        0        0        1        0       
                                                         
Q2  1        0        0        1        0        0        1       
                                                         
D1  1        0        0        1        0        0        1       
                                                         
Q1  0        1        0        0        1        0        0       
                                                         
D0  0        1        0        0        1        0        0       
                                                         
Q0  0        0        1        0        0        1        0       
                                                         
Z1  0        1        0        0        1  0      0        0       
                                                         
Z0  1        1        0        1        1  0      1        0       
                                                         
CLK                                                         
                                                         

Pag. 19
ESERCIZIO N. 8 – LOGICA DIGITALE

prima parte – logica combinatoria

Un circuito combinatorio riceve in ingresso due numeri binari interi senza segno da due bit ciascuno (primo
numero: X2 X1, secondo numero Y2 Y1). Il circuito ha quindi quattro ingressi (X2, X1, Y2, Y1 ) e una
uscita F, la quale deve valere 1 solo se X2 X1 è maggiore di Y2 Y1.

(a) Si trovino i mintermini di F in prima forma canonica (somma di prodotti – SOP) della funzione F:

ci sono sei mintermini corrispondenti ai casi X2X1>Y2Y1 per i quali occorre generare 1:

X2X1  Y2Y1   

01  00  !X2 X1 !Y2 !Y1

10  00  X2 !X1 !Y2 !Y1

10  01  X2 !X1 !Y2 Y1

11  00  X2 X1 !Y2 !Y1

11  01  X2 X1 !Y2 Y1

11  10  X2 X1 Y2 !Y1

(l) Si sintetizzi la funzione F come somma di prodotti (SOP).

F (X2,X1,Y2,Y1) !X2X1!Y2!Y1 + X2!X1!Y2!Y1 + X2!X1!Y2Y1 + X2X1!Y2!Y1 + X2X1!Y2Y1 + X2X1Y2!Y1

(m) Si disegni una rete combinatoria che realizza la funzione F sintetizzata al punto precedente, utilizzando
solamente porte a due ingressi. lasciato al lettore

(n) Si calcoli il ritardo massimo (percorso critico) della rete disegnata al punto precedente, supponendo che
ogni porta AND a due ingressi abbia ritardo pari a 2 ns e che ogni porta OR a due ingressi abbia ritardo
pari a 3 ns (non si consideri il ritardo delle porte NOT applicate agli ingressi primari):

ritardo (F)  2  2 ns (strato AND)  2  3 ns (strato OR)  10 ns _______

Pag. 20
seconda parte – logica sequenziale

Sia dato il circuito sequenziale avente due ingressi I1 e I2 e una uscita Z, dotato di due bistabili master /
slave di tipo D: (D1, Q1) e (D2, Q2), descritto dalle equazioni logiche seguenti:

D1 = Q1 xor I1 D2 = Q1 xor I2 Z = not Q2


Si chiede di completare il diagramma temporale riportato qui sotto. Si noti che:
 si devono trascurare completamente i ritardi di propagazione delle porte logiche XOR e NOT e i ritardi
di commutazione dei bistabili
 i bistabili presenti nel circuito sono di tipo "master-slave con edge-triggering" e hanno un
funzionamento specifico:
o sul fronte di salita del clock campionano e memorizzano l’ingresso
o sul fronte di discesa del clock mostrano il valore memorizzato
mentre negli altri momenti (cioè con clock a livello 1 oppure a livello 0) sono insensibili agli ingressi e
mantengono fissa l’uscita; si noti che questo comportamento è un po' diverso da quello del bistabile
master-slave standard illustrato a lezione

diagramma temporale da completare

                                                         
I1  0                                                       
                                                         
D1                                                         
                                                         
Q1  0                                                       
                                                         
I2  0                                                       
                                                         
D2                                                         
                                                         
Q2  0                                                       
                                                         
Z                                                         
                                                         
CLK                                                         
                                                         

Pag. 21
soluzione
Il segnale Q1 è costante per tutto un intervallo, e ha il valore che D1 aveva in corrispondenza del precedente
fronte di salita del clock (idem per Q2 e D2).
Il segnale Z dipende solo dallo stato (è uguale a not Q2), dunque deve rimanere costante nell’intervallo.
Procedimento di calcolo dei valori in un intervallo:
- si pone Q1 uguale a D1 al fronte di salita a metà dell’intervallo precedente (idem per Q2 e D2)
- si pone Z uguale a not Q2
- si calcola D1 nell’intervallo, istante per istante
- si calcola D2 nell’intervallo, istante per istante
Poi si passa all’intervallo successivo.
Nel primo intervallo Q1 e Q2 sono ovviamente già dati (è lo stato iniziale, non calcolabile perché non c’è
l’intervallo precedente).

 
I1  0 1 0 0 1 0 0
 
D1  0 1 1 1 0 0 0
 
Q1  0 0 1 1 1 0 0
 
I2  0 1 1 0 0 0 1
 
D2  0 1 0 1 1 0 1
                                                         
Q2      0        0        1        0        1        1        0   
                                                         
Z              1        0        1        0        0        1   
                                                         
CLK                                                         
                                                         

Descrizione del comportamento ai morsetti (osservando solo i valori dei bit indicati in corrispondenza dei
fronti di salita di CLK):
D1 è il bit di parità di tutti i bit di ingresso arrivati su I1 (incluso l’attuale) perché è lo xor di I1 con Q1. Ne
segue poi quindi che anche Q1 lo è (ma in ritardo di un CLK) essendo uguale a D1 in ritardo di un CLK.
D2 invece è semplicemente lo xor del bit I2 col bit Q1 (non è il bit di parità della sequenza di I2 perché non
si fa lo xor di I2 con Q2, ma con Q1 …).
Ovviamente Q2 ha gli stessi valori di D2, ma in ritardo di un CLK, e Z è semplicemente la sua negazione.

Pag. 22

Potrebbero piacerti anche