Dan NICULA
ELECTRONIC
˘
A DIGITAL
˘
A
Carte de ˆınat¸˘atur˘a 2.0
Editura Universit˘at¸ii TRANSILVANIA din Bra¸sov
ISBN 978-606-19-0563-8
2015
Lect¸ia 12
Aplicat¸ii cu circuite logice combinat¸ionale
12.1 Not¸iuni teoretice
Proiectarea circuitelor logice combinat¸ionale complexe, cu multe intr˘ari, nu urmeaz˘a un anumit algoritm. Teoretic,
se poate imagina a orice funct¸ie logic˘a poate reprezentat˘a ˆıntr-o form˘a standard.
ˆ
Ins˘a, pentru un num˘ar mare
de intr˘ari, toate formele de reprezentare (expresie analitic˘a, diagrama V-K, tabel de adev˘ar, forme canonice) sunt
imposibil de gestionat mental.
amˆane varianta unei proiect˘ari pe baza comportamentului cunoscut al unor circuite combinat¸ionale elementare:
codificator/decodificator, comparator, multiplexor/demultiplexor, sumator/sc˘az˘ator, port¸i logice.
12.2 Pentru cei ce vor doar a promoveze examenul
Nu este necesar˘a parcurgerea acestui capitol.
12.3 Pentru cei ce vor a ˆınvet¸e
1. a se implementeze un circuit logic combinat¸ional la intrarea aruia se aplic˘a un cuvˆant M de 8 bit¸i ¸si un cuvˆant
N de 3 bit¸i. Ie¸sirea F a circuitului va activ˘a and M este multiplu de 2
N
.
Solut¸ie
Num˘arul binar M este multiplu al num˘arului 2
N
dac˘a este ˆındeplinit˘a relat¸ia: M = K × 2
N
. Observˆand a
expresia K × 2
N
este echivalent˘a cu ”num˘arul K exprimat ˆın binar deplasat la stˆanga cu N pozit¸ii”, rezult˘a a
relat¸ia este ˆındeplinit˘a and ultimii N bit¸i ai cuvˆantului M sunt egali cu 0. Solut¸ia problemei se reduce la a
determina care este pozit¸ia primului 1 (din partea mai put¸in semnificativ˘a) a num˘arului M aplicat la intrare ¸si
a o compara cu num˘arul N. Indexul celui mai put¸in semnificativ 1 se poate determina cu un circuit codificator
cu prioritate. Compararea indexului cu num˘arul N se poate face cu un circuit de comparare pe 3 bit¸i. Figura
12.1 prezint˘a circuitul proiectat.
2. a se implementeze un circuit logic combinat¸ional care calculeaz˘a relat¸ia: F = [log
2
M] + 1, pentru M num˘ar
pozitiv reprezentat pe 8 bit¸i. S-a notat cu [ ] partea ˆıntreg˘a a num˘arului.
Solut¸ie
F = [log
2
M] + 1 = [log
2
(2 · M)], ceea ce este echivalent cu indexul celui mai semnificativ bit al num˘arului M
deplasat cu o pozit¸ie spre stˆanga. Circuitul se poate realiza cu un codificator.
160 LECT¸ IA 12. Aplicat¸ii cu circuite logice combinat¸ionale
Figura 12.1 Circuit pentru implementarea relat¸iei M = K × 2
N
, problema 1.
3. a se proiecteze un circuit logic combinat¸ional cu 8 intr˘ari I
i
¸si 8 ie¸siri O
i
, i 7...0. Circuitul activeaz˘a ˆın 1
numai ie¸sirea i de pe pozit¸ia celui mai semnificativ bit 1 din cuvˆantul de intrare.
Solut¸ie
Codarea pozit¸iei celui mai semnificativ bit pe intrare se poate realiza cu un codificator prioritar iar decodarea
pentru ie¸sire se poate realiza cu un circuit decodificator.
4. a se implementeze un circuit logic combinat¸ional care activeaz˘a ie¸sirea ”1” dac˘a exist˘a un singur bit egal cu
”1” ˆıntr-un cuvˆant de 8 bit¸i aplicat la intrare.
Solut¸ie
Rezolvarea se bazeaz˘a pe observat¸ia a dac˘a la intrarea unui codificator se inverseaz˘a ordinea bit¸ilor, cel mai
semnificativ devine cel mai put¸in semnificativ ¸si invers, atunci se p oate considera a la ie¸sirea codificatorului
prioritar apare indexul celui mai put¸in semnificativ bit, ˆın cod complementat.
Ca exemplu, se consider˘a num˘arul de intrare 0000 0100. Dac˘a acest cuvˆant se aplic˘a, ˆın acest˘a ordine, la intrarea
unui codificator prioritar, la ie¸sire se va prezenta indexul celui mai semnificativ bit, 2, combinat¸ia binar˘a 010.
Dac˘a num˘arul se aplic˘a la intrarea unui codificator ˆın mod inversat, adic˘a 0010 0000, la ie¸sirea codificatorului
prioritar, se va prezenta indexul bitului 5, adic˘a 101. Prin complementarea bit cu bit, combinat¸ia 101 devine
010 adic˘a indexul 2.
ˆ
In cazul unui num˘ar de intrare aand mai mult de un bit egal cu 1, la conectare direct˘a se va codifica bitul cel mai
semnificativ, iar la conectare inversat˘a se va co difica bitul cel mai put¸in semnificativ. De exemplu, dac˘a num˘arul
de intrare este 0100 0100, codificatoarele vor genera 110 la conectare direct˘a ¸si 101 la conectare inversat˘a
Se observ˘a a dac˘a se ˆınsumeaz˘a cele dou˘a coduri, dac˘a exist˘a un singur 1, atunci suma va ˆıntotdeauna
7
10
= 111
2
, iar dac˘a exist˘a mai mult de un 1 la intrare suma celor dou˘a coduri va mai mare decˆat 7 ¸si va
produce transport la ie¸sire (ˆın cazul ˆınsum˘arii cu sumator de 3 bit¸i).
ˆ
In cazul ˆın care la intrare tot¸i bit¸ii sunt 0, atunci ambele codificatoare vor prezenta la ie¸sire 000 iar cele dou˘a
coduri ˆınsumate vor 0
10
= 000
2
.
Concluzia este a funct¸ia cerut˘a a implementat˘a se obt¸ine la bitul de transport al sumatorului. Figura 12.2
prezina circuitul proiectat.
5. a se realizeze, folosind circuite comparator de 4 bit¸i o structur˘a pentru compararea a dou˘a cuvinte de 8 bit¸i,
respectiv 16 bit¸i.
Solut¸ie
Cuvintele se compar˘a bit cu bit, ˆıncepˆand de la bitul mai semnificativ spre cel mai put¸in semnificativ. Dac˘a
cei 2 bit¸i comparat¸i sunt egali, se trece la compararea bitului de ordin inferior. Dac˘a bit¸ii sunt diferit¸i, atunci
rezultatul operat¸iei de comparare este determinat ¸si bit¸ii mai put¸ini semnificativi sunt ignorat¸i. Deci, exist˘a un
transport de informat¸ie de la bit¸ii mai semnificativi spre cei mai put¸ini semnificativi.
ˆ
In cazul utiliz˘arii circuitelor
de comparare de 4 bit¸i, cel mai semnificativ circuit trebuie a informeze circuitul mai put¸in semnificativ dac˘a
12.3. Pentru cei ce vor a ˆınvet¸e 161
Figura 12.2 Circuit pentru detectarea prezent¸ei unui singur bit egal cu 1 ˆın datele de intrare, problema 4.
rezultatul compar˘arii a fost asit sau partea mai semnificativ˘a a cuvintelor de intrare este identic˘a.
ˆ
In acest caz,
circuitul care compar˘a partea mai put¸in semnificativ˘a a datelor trebuie a fie activat. Circuitul este prezentat
ˆın figura 12.3. Comparatorul de 4 bit¸i are intr˘ari specifice prin care transmite rezultatul compar˘arii bit¸ilor mai
semnificativi. Comparatorul bit¸ilor mai semnificativi are aceste intr˘ari conectate ca ¸si cum bit¸ii superiori au fost
egali: L
i
= 0, E
i
= 1, G
i
= 0. Ie¸sirile comparatorului mai semnificativ devin intr˘ari pentru comparatorul mai
put¸in semnificativ.
Figura 12.3 Circuit de comparare a dou˘a cuvinte de 8 bit¸i realizat cu dou˘a circuite comparator de 4 bit¸i, problema 5.
6. a se realizeze un circuit logic combinat¸ional care semnaleaz˘a pe ie¸sire identitatea celor dou˘a cuvinte de 3 bit¸i
de la intrare. a se implementeze circuitul cu:
port¸i XOR sau
circuite multiplexor/demultiplexor.
Solut¸ie
Funct¸ia circuitului este egal˘a cu 1 and cele dou˘a cuvinte de intrare sunt egale bit cu bit. Poarta logic˘a XOR
prezina la ie¸sire 1 dac˘a bit¸ii de intrare sunt diferit¸i.
ˆ
In logic˘a negat˘a, poarta XNOR prezint˘a la ie¸sire 1 dac˘a
bit¸ii de intrare sunt egali. Aceast˘a observat¸ie sugereaz˘a a circuitul de determinare a identit˘at¸ii a dou˘a cuvinte
se poate realiza dac˘a se compar˘a cele dou˘a cuvinte bit cu bit, folosind port¸i XNOR iar rezultatele acestora se
unesc cu o poart˘a AND.
F (A, B) = (A
2
B
2
) · (A
1
B
1
) · (A
0
B
0
)
Utilizˆand teorema lui DeMorgan se poate scrie expresia funct¸iei ca:
F (A, B) = (A
2
B
2
) + (A
1
B
1
) + (A
0
B
0
)
Circuitul este prezentat ˆın figura 12.4-a,b.
Funct¸ia de determinare a identit˘at¸ii se poate realiza cu dou˘a circuite DMUX 1:8 ¸si MUX 8:1 dac˘a cele dou˘a
cuvinte se conecteaz˘a pe intr˘arile de select¸ie iar ie¸sirile de date ale demultiplexorului se conecteaz˘a unu la unu
162 LECT¸ IA 12. Aplicat¸ii cu circuite logice combinat¸ionale
a) b)
c)
Figura 12.4 Circuit de verificare a identit˘at¸ii a dou˘a cuvinte de 3 bit¸i, problema 6.
la intr˘arile de date ale multiplexorului.
ˆ
In cazul identit˘at¸ii celor dou˘a cuvinte, valoarea de 1 de la intrarea
demultiplexorului se propag˘a la ie¸sirea cu indexul corespunz˘ator primului operand ¸si apoi este preluat˘a de pe
intrarea cu indice corespunz˘ator a multiplexorului. Circuitul este prezentat ˆın figura 12.4-c.
7. Folosind circuite DMUX 1:8 ¸si MUX 8:1 a se realizeze un circuit logic combinat¸ional care semnaleaz˘a pe ie¸sire
existent¸a urm˘atoarelor corespondent¸e ale intr˘arilor (date de intrare reprezentate pe 3 bit¸i): 0 6, 1 4, 2 3,
3 1, 4 7, 5 5, 6 2, 7 0.
Solut¸ie
Solut¸ia se bazeaz˘a pe funct¸ia circuitului demultiplexor de a activa ie¸sirea a arei index este prezent pe intr˘arile
de select¸ie ¸si funct¸ia circuitului multiplexor de a transmite la ie¸sire intrarea selectat˘a.
ˆ
In cazul unui circuit
similar cu cel prezentat ˆın figura 12.4-c, dac˘a firele se conecteaz˘a ˆın ordine, se obt¸ine un circuit care detecteaz˘a
identitatea intr˘arilor de select¸ie, adic˘a: 0 0, 1 1, 2 2, 3 3, 4 4, 5 5, 6 6, 7 7. Prin modificarea
firelor se pot detecta alte corespondent¸e. Corespondent¸a specificat˘a este prezentat˘a ˆın figura 12.5.
8. Proiectat¸i un circuit care depisteaz˘a o eroare ˆıntr-un num˘ar ˆın format BCD. Circuitul semnalizeaz˘a cu 0 cazurile
and cei 4 bit¸i de la intrare nu corespund unui num˘ar zecimal (ˆıntre 0 ¸si 9). Ad˘augat¸i proiectului 4 port¸i cu dou˘a
intr˘ari pentru ca ˆın cazul ˆın care la intrare apare o combinat¸ie invalid˘a la ie¸sire a se transmit˘a num˘arul zecimal
0.
Solut¸ie
Tabelul de adev˘ar al circuitului de semnalare a erorii este:
12.3. Pentru cei ce vor a ˆınvet¸e 163
Figura 12.5 Circuit de verificare a corespondent¸ei unor date reprezentate pe 3 bit¸i, problema 7.
Nr. B
3
B
2
B
1
B
0
ERR
0 0 0 0 0 1
1 0 0 0 1 1
2 0 0 1 0 1
3 0 0 1 1 1
4 0 1 0 0 1
5 0 1 0 1 1
6 0 1 1 0 1
7 0 1 1 1 1
8 1 0 0 0 1
9 1 0 0 1 1
10 1 0 1 0 0
11 1 0 1 1 0
12 1 1 0 0 0
13 1 1 0 1 0
14 1 1 1 0 0
15 1 1 1 1 0
a) b)
Figura 12.6 Funct¸ia de depistare a erorii de cod BCD: a) diagrama V-K, b) structura de port¸i logice.
Diagrama V-K asociat˘a este prezentat˘a ˆın figura 12.6-a. Din diagrama V-K rezult˘a ecuat¸ia:
ERR = B
3
+ B
2
· B
1
Circuitul care implementeaz˘a funct¸ia ERR este prezentat ˆın figura 12.6-b.
Pentru a evita transmiterea codurilor binare mai mari decˆat 9 ¸si ˆınlocuirea acestora cu 0, trebuie ad˘augate pe
cele 4 ie¸siri 4 port¸i AND cu dou˘a intr˘ari. Pentru fiecare din cele 4 port¸i o intrare este bitul ERR.
ˆ
In acest fel,
164 LECT¸ IA 12. Aplicat¸ii cu circuite logice combinat¸ionale
dac˘a ERR = 0 la ie¸sirea port¸ilor AND se va genera 0, indiferent de datele prezentate la intrare. Dac˘a ERR = 1,
toate port¸ile AND sunt deschise ¸si transfer˘a la ie¸sire valorile de la intrarea circuitului. Circuitul astfel realizat
este prezentat ˆın figura 12.7.
Figura 12.7 Circuit de mascare a erorilor de cod BCD.
9. Implementat¸i cu port¸i logice pe dou˘a nivele (f˘ar˘a a folosi celule semisumator sau sumator complet de 1 bit) un
circuit de ˆınsumare a dou˘a numere reprezentate pe ate 2 bit¸i. Circuitul accept˘a transport de intrare ¸si genereaz˘a
transport de ie¸sire.
Solut¸ie
Schema bloc a circuitului este prezentat˘a ˆın figura 12.8. S-au notat A
1
A
0
¸si B
1
B
0
operatorii, S
1
S
0
rezultatul,
C
in
transportul de intrare ¸si C
out
transportul de ie¸sire. Sumatorul este un circuit combinat¸ional cu 5 intr˘ari ¸si
Figura 12.8 Schema bloc a sumatorului de 2 bit¸i referit la problema 9.
3 ie¸siri ¸si poate implementat pe dou˘a nivele de port¸i logice. Ecuat¸iile logice ale ie¸sirilor sunt:
S
0
= A
0
B
0
C
in
C
0
= A
0
· B
0
+ A
0
· C
in
+ B
0
· C
in
S
1
= A
1
B
1
C
0
C
out
= A
1
· B
1
+ A
1
· C
0
+ B
1
· C
0
S-a notat C
0
transportul intermediar de la bitul 0 (cel mai put¸in semnificativ).
10. Se dore¸ste transmiterea pe o distant¸˘a mare a unui bus de 1024 bit¸i de date. Solut¸ia banal˘a a existent¸ei a 1024
de conductoare este prea costisitoare. T¸ inˆand cont a informat¸ia transmis˘a pe bus nu are o frecvent¸˘a mare, se
propune reducerea num˘arului de conductoare prin multiplexarea bit¸ilor la expeditor ¸si demultiplexarea acestora
la destinat¸ie. Propunet¸i o schem˘a de implementare. Care este num˘arul de conductoare necesar?
Solut¸ie
Solut¸ia const˘a ˆın multiplexarea datelor la partea de emisie ¸si demultiplexarea acestora la partea de recept¸ie.
Pentru o comunicare corect˘a, trebuie ca multiplexorul ¸si demultiplexorul a selecteze simultan aceea¸si valoare.
Valoarea de select¸ie de 10 bit¸i ar trebui ¸si ea transmis˘a de la surs˘a la destinat¸ie.
ˆ
In total, num˘arul de conectoare
va redus de la 1024 la 11 (10 pentru select¸ie ¸si 1 pentru date). Schema de principiu este prezentat˘a ˆın figura
12.9.
11. Demonstrat¸i a orice funct¸ie logic˘a de 4 intr˘ari poate implementat˘a cu urm˘atoarele resurse: un decodificator
de 3 bit¸i (DCD 3:8), un multiplexor 2:1, dou˘a port¸i OR de maxim 4 intr˘ari ¸si un inversor.
12.4. Pentru cei ce vor a devin˘a profesioni¸sti 165
Figura 12.9 Reducerea num˘arului de conectoare pentru o transmisiune de date folosind circuite multiplexor/demultiplexor,
problema 10.
a se exemplifice solut¸ia p entru funct¸iile:
a) F =
(4, 5, 8, 9)
b) F =
(2, 7, 8, 9, 10, 12, 13)
c) F =
(0, 1, 3, 5, 9, 10, 11, 13, 15)
d) F =
(2, 3, 5, 6, 7, 8, 9, 10)
Solut¸ie
Orice funct¸ie de 4 variabile se poate scrie sub o form˘a condensat˘a cu o variabil˘a reziduu, ca:
F (A, B, C, D) = A · G
1
(B, C, D) + A · G
0
(B, C, D)
Funct¸iile G
1,0
(B, C, D) depind de acelea¸si 3 variabile. Acestea pot implementate cu un circuit decodificator de
3 bit¸i ¸si ate o poart˘a logic˘a OR care reune¸ste mintermii prezent¸i ˆın expresia funct¸iei.
ˆ
In final, un multiplexor
2:1 are conectat˘a intrarea A pe intrarea de select¸ie ¸si funct¸iile G
1
¸si G
0
pe intr˘arile de date. Num˘arul maxim de
intr˘ari pentru poart˘a OR este 4 (jum˘atate din num˘arul total de mintermi). Dac˘a expresia unei funct¸ii G
1
¸si G
0
are mai mult de 4 mintermi, se implementeaz˘a inversat˘a ¸si cu ajutorul unui inversor se aduce la forma necesar˘a.
Dac˘a ambele funct¸ii G
1
¸si G
0
au mai mult de 4 mintermi, inversorul se plaseaz˘a pe ie¸sire, dup˘a multiplexor.
Dac˘a ambele funct¸ii G
1
¸si G
0
au maxim 4 mintermi, inversorul nu mai este necesar.
12. Se consider˘a funct¸ia F (A, B, C, D) =
(1, 2, 3, 4, 5, 9, 13). Se cer:
a) Implementarea funct¸iei cu p ort¸i NAND. Evaluarea costului implemenarii.
b) Implementarea funct¸iei cu port¸i NOR. Evaluarea costului implemenarii.
c) Evaluarea existent¸ei hazardului combinat¸ional ˆın implemenarile de la punctele a) sau b) ¸si implementarea
funct¸iei cu eliminarea hazardului combinat¸ional. Forme de und˘a pentru punerea ˆın evident¸˘a a hazardului
combinat¸ional.
d) Implementarea funct¸iei cu MUX 8:1, variabil˘a reziduu D, A sau C.
e) Implementarea funct¸iei cu MUX 4:1, variabile reziduu (C, D) sau (A, B).
f) Implementarea funct¸iei cu DCD 3:8, MUX 2:1 ¸si port¸i logice OR/NOR.
g)
Implementarea funct¸iei cu ROM 16x1. Implementarea funct¸iei cu dou˘a circuite ROM 8x1 ¸si MUX 2:1.
h) Implementarea funct¸iei cu circuit PLA generic.
i) Implementarea funct¸iei cu circuit PAL generic.
12.4 Pentru cei ce vor a devin˘a profesioni¸sti
1. Proiectat¸i un multiplicator binar de 2 bit¸i implementat cu p ort¸i AND ¸si sumatoare binare.
Extindet¸i multiplicatorul binar pentru a realiza ˆınmult¸iri cu numere reprezentate pe 3 bit¸i ¸si 4 bit¸i.
Solut¸ie
Algoritmul clasic deˆınmult¸ire presupune ˆınmult¸irea fiec˘arei cifre a unui operand cu fiecare cifr˘a a celuilalt operand
¸si adunarea rezultatelor t¸inˆand cont de ordinul acestora.
ˆ
Inmult¸irea a dou˘a cifre binare este implementat˘a cu o
poart˘a AND (0 × 0 = 0, 0 × 1 = 0, 1 × 0 = 0, 1 × 1 = 1). Modul de plasare a rezultatelor de part¸iale ¸si modul de
adunare a acestora sunt prezentate ˆın figura 12.10.
Figura 12.11 prezint˘a circuitele necesare pentru multiplicarea a dou˘a numere de ate 2 sau ate 3 bit¸i. Simbolurile
de sumator reprezina sumatoare complete de 1 bit.
166 LECT¸ IA 12. Aplicat¸ii cu circuite logice combinat¸ionale
2 bit¸i 3 bit¸i 4 bit¸i
Figura 12.10
ˆ
Inmult¸irea numerelor de 2, 3 ¸si 4 bit¸i (problema 1)
2. Proiectat¸i circuite de generare ¸si verificare de paritate pentru un bus de date de 8 bit¸i.
Solut¸ie
Generarea de paritate (par˘a sau impar˘a) const˘a ˆın determinarea unui bit suplimentar, pe baza bit¸ilor datelor,
astfel ˆıncˆat num˘arul total de bit¸i (bit¸i de date ¸si bit de paritate) a aib˘a paritatea impus˘a. De exemplu, ˆın cazul
parit˘at¸ii pare suma bit¸ilor de date plus bitul de paritate trebuie a fie un num˘ar par. Similar, ˆın cazul parit˘at¸ii
impare, suma bit¸ilor de date plus bitul de paritate trebuie a fie un num˘ar impar.
Verificarea parit˘at¸ii const˘a ˆın calcularea sumei tuturor bit¸ilor plus bitul de paritate ¸si verificarea ˆındeplinirii
parit˘at¸ii steptate.
ˆ
In cazul aparit¸iei unei erori asupra bit¸ilor transmi¸si, verificarea de paritate nu va mai
satisf˘acut˘a ¸si se va semnala o eroare de paritate. Paritatea este un mod de protect¸ie limitat˘a ˆımpotriva erorilor
ˆın mediul de transmisiune. Protect¸ia este activ˘a doar ˆın cazul apartit¸iei unei singure erori. De exemplu, ˆın
cazul existent¸ei a dou˘a erori, verificarea de paritate pro duce un rezultat fals pozitiv, semnalˆand ˆın mod eronat
a datele sunt corecte. Schema bloc a circuitelor de generare ¸si verificare de paritate este prezentat˘a ˆın figura
12.12.
ˆ
In cazul parit˘at¸ii pare, 8 bit¸i de date, ecuat¸iile ie¸sirilor circuitelor combinat¸ionale sunt urm˘atoarele:
Generare de paritate:
P
par
= 0, dac˘a suma D
7
+ D
6
+ D
5
+ D
4
+ D
3
+ D
2
+ D
1
+ D
0
este un num˘ar par
P
par
= 1, dac˘a suma D
7
+ D
6
+ D
5
+ D
4
+ D
3
+ D
2
+ D
1
+ D
0
este un num˘ar impar
Verificare de paritate:
ERR
par
= 0, dac˘a suma D
7
+ D
6
+ D
5
+ D
4
+ D
3
+ D
2
+ D
1
+ D
0
+ P
par
este un num˘ar par
ERR
par
= 1, dac˘a suma D
7
+ D
6
+ D
5
+ D
4
+ D
3
+ D
2
+ D
1
+ D
0
+ P
par
este un num˘ar impar
T¸ inˆand cont a poarta logic˘a XOR poate interpretat˘a ca un circuit de generare a parit˘at¸ii impare (produce la
ie¸sire 1 ˆın cazul dac˘a un num˘ar impar de intr˘ari sunt egale cu 1), se deduc urm˘atoarele ecuat¸ii logice:
P
par
= D
7
D
6
D
5
D
4
D
3
D
2
D
1
D
0
ERR
par
= D
7
D
6
D
5
D
4
D
3
D
2
D
1
D
0
P
par
Similar,
P
impar
= D
7
D
6
D
5
D
4
D
3
D
2
D
1
D
0
ERR
impar
= D
7
D
6
D
5
D
4
D
3
D
2
D
1
D
0
P
impar
3. Proiectat¸i un singur circuit care a poat˘a utilizat atˆat pentru generarea parit˘at¸ii at ¸si pentru verificarea
acesteia ˆın cazul unei transmisiuni de 8 bit¸i de date, atˆat pentru paritate par˘a at ¸si pentru paritate impar˘a.
Solut¸ie
Conform problemei 2, rezult˘a a ecuat¸iile logice pentru generare ¸si verificare de paritate sunt simlare: XOR cu
mai multe intr˘ari.
ˆ
In plus, schimbarea tipului parit˘at¸ii (par˘a sau impar˘a) presupune negarea expresiilor parit˘at¸ii
generate ¸si erorii determinate. Poarta XOR poate interpretat˘a ca ”inversor comandat”.
ˆ
In cazul a 8 intr˘ari de date, expresiile ment¸ionate la problema 2 pot rescrise pentru a putea implementate
cu acela¸si circuit astfel:
P
par
= D
7
D
6
D
5
D
4
D
3
D
2
D
1
D
0
ERR
par
= D
7
D
6
D
5
D
4
D
3
D
2
D
1
D
0
P
par
Similar,
P
impar
= D
7
D
6
D
5
D
4
D
3
D
2
D
1
D
0
1
ERR
impar
= D
7
D
6
D
5
D
4
D
3
D
2
D
1
D
0
P
impar
1
Rezult˘a a circuitul capabil de a genera ¸si verifica paritatea par˘a sau impar˘a are funct¸ia logic˘a XOR cu 10 intr˘ari.
ˆ
In funct¸ie de rolul au, circuitul se va utiliza ˆın conexiunile prezentate ˆın tabelul urm˘ator.
12.4. Pentru cei ce vor a devin˘a profesioni¸sti 167
2 bit¸i 3 bit¸i
Figura 12.11 Circuite de ˆınmult¸ire a numerelor reprezentate pe 2 sau 3 bit¸i (problema 1).
Utilizare Ie¸sire I
9
I
8
I
7
I
6
I
5
I
4
I
3
I
2
I
1
I
0
Generare paritate par˘a P
par
0 0 D
7
D
6
D
5
D
4
D
3
D
2
D
1
D
0
Verificare paritate par˘a ERR
par
0 P
par
D
7
D
6
D
5
D
4
D
3
D
2
D
1
D
0
Generare paritate impar˘a P
impar
1 0 D
7
D
6
D
5
D
4
D
3
D
2
D
1
D
0
Verificare paritate impar˘a ERR
impar
1 P
impar
D
7
D
6
D
5
D
4
D
3
D
2
D
1
D
0
4. Utilizˆand exclusiv sumatoare complete de un bit, proiectat¸i un circuit care furnizeaz˘a la ie¸sire num˘arul de bit¸i
egali cu 1 ˆın cadrul cuvˆantului de 7 bit¸i prezentat la intrare.
5. Utilizˆand exclusiv sumatoare complete de un bit, proiectat¸i un circuit care furnizeaz˘a la ie¸sire num˘arul de bit¸i
egali cu 1 ˆın cadrul cuvˆantului de 15 bit¸i prezentat la intrare.
168 LECT¸ IA 12. Aplicat¸ii cu circuite logice combinat¸ionale
Figura 12.12 Schema bloc a circuitelor de generare ¸si verificare de paritate, referite la problema 2.