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 9
Multiplexoare ¸si demultiplexoare
9.1 Not¸iuni teoretice
Multiplexorul MUX 2
N
: 1 selecteaz˘a pe baza unui cod de N bit¸i una din cele 2
N
intr˘ari de date pe care o transmite
la unica ie¸sire.
Funct¸ionarea multiplexorului 2:1 (o intrare de select¸ie ¸si dou˘a intr˘ari de date) se poate descrie astfel: ”dac˘a select¸ia
este egal˘a cu 0, ie¸sirea ia valoarea intr˘arii I
0
, iar dac˘a select¸ia este egal˘a cu 1, ie¸sirea ia valoarea intr˘arii I
1
.
Multiplexorul implementeaz˘a ˆın hardware funct¸ia de decizie, similar˘a cu specificat¸ia software ”if ... then ... else”
(ˆın cazul MUX 2:1) sau ”case” (ˆın cazul MUX de dimensiuni mai mari).
Figura 9.1 Simboluri de multiplexoare.
Ecuat¸iile funct¸iilor logice implementate de MUX sunt:
MUX 2:1 Y = S · I
1
+ S · I
0
MUX 4:1 Y = S
1
· S
0
· I
3
+ S
1
· S
0
· I
2
+ S
1
· S
0
· I
1
+ S
1
· S
0
· I
0
MUX 8:1 Y = S
2
· S
1
· S
0
· I
7
+ S
2
· S
1
· S
0
· I
6
+ S
2
· S
1
· S
0
· I
5
+ S
2
· S
1
· S
0
· I
4
+
+S
2
· S
1
· S
0
· I
3
+ S
2
· S
1
· S
0
· I
2
+ S
2
· S
1
· S
0
· I
1
+ S
2
· S
1
· S
0
· I
0
Circuitele MUX pot avea o intrare de validare. Funct¸ionarea este neschimbat˘a dac˘a intrarea de validare este activat˘a.
Dac˘a intrarea de validare este inactiv˘a ie¸sirea multiplexorului este egal˘a cu 0 indiferent de valorile intr˘arilor de date
(multiplexorul nu transmite la ie¸sire nicio valoare primit˘a la intrare).
ˆ
In acest caz, ecuat¸iile se modific˘a astfel:
110 LECT¸ IA 9. Multiplexoare ¸si demultiplexoare
MUX 2:1 Y = E · S · I
1
+ E · S · I
0
MUX 4:1 Y = E · S
1
· S
0
· I
3
+ E · S
1
· S
0
· I
2
+ E · S
1
· S
0
· I
1
+ E · S
1
· S
0
· I
0
MUX 8:1 Y = E · S
2
· S
1
· S
0
· I
7
+ E · S
2
· S
1
· S
0
· I
6
+ E · S
2
· S
1
· S
0
· I
5
+ E · S
2
· S
1
· S
0
· I
4
+
+E · S
2
· S
1
· S
0
· I
3
+ E · S
2
· S
1
· S
0
· I
2
+ E · S
2
· S
1
· S
0
· I
1
+ E · S
2
· S
1
· S
0
· I
0
Structurile logice ale multiplexoarelor se obt¸in pe baza ecuat¸iilor.
Figura 9.2 Structuri de multiplexoare.
Orice funct¸ie logic˘a de N variabile poate implementat˘a utilizˆand un MUX 2
N
: 1, ar˘a minimizare, astfel:
Pe cele N intr˘ari de select¸ie ale multiplexorului se conecteaz˘a cele N intr˘ari.
Pe cele 2
N
intr˘ari de date ale multiplexorului se conecteaz˘a valorile logice 1 ¸si 0, conform coloanei funct¸iei din
tabelul de adev˘ar. Dac˘a funct¸ia este exprimat˘a FCND, se poate utiliza regula: intr˘arile de date ale multiplexo-
rului ce ˆı¸si reg˘asesc indexul ˆın FCND se conecteaz˘a la 1, cele ce nu apar ˆın FCND se conecteaz˘a la 0.
Costul maxim total al implement˘arii oric˘arei funct¸ii de N intr˘ari este un MUX 2
N1
: 1.
Orice funct¸ie logic˘a de N variabile poate implementat˘a utilizˆand un MUX 2
N1
: 1, ar˘a minimizare, astfel:
Pe cele N 1 intr˘ari de select¸ie ale multiplexorului se conecteaz˘a cele mai semnificative N 1 intr˘ari.
Pe cele 2
N1
intr˘ari de date ale multiplexorului se conecteaz˘a funct¸ii reziduu ale celei mai put¸in semnificative
intr˘ari. Funct¸iile reziduu de o variabil˘a pot implementate cu maximum un inversor deoarece acestea sunt:
0, 1, X, X. Funct¸iile rezizuu se pot determina din tabelul de adev˘ar astfel:
Se delimiteaz˘a ˆın tabelul de adev˘ar grupuri de ate dou˘a anduri.
Se compar˘a valorile de pe cele dou˘a anduri, coloana variabilei reziduu (cea mai put¸in semnificativ˘a, aflat˘a
ˆın partea dreapt˘a) ¸si coloana funct¸iei.
Pot exista 4 cazuri:
9.1. Not¸iuni teoretice 111
Intrare reziduu Funct¸ie Funct¸ie reziduu Observat¸ii
X F R[i]
0 0
1 0 0 F = 0 pe toate andurile grupului
0 0
1 1 X F = X pe toate andurile grupului
0 1
1 0 X F = X pe toate andurile grupului
0 1
1 1 1 F = 1 pe toate andurile grupului
Costul maxim total al implement˘arii oric˘arei funct¸ii de N intr˘ari este un MUX 2
N1
: 1 ¸si un inversor.
Demultiplexorul DMUX 1 : 2
N
selecteaz˘a pe baza unui cod de N bit¸i una din cele 2
N
ie¸siri de date pe care
transmite intrarea de date.
Funct¸ionarea demultiplexorului 1:2 (o intrare de select¸ie ¸si dou˘a ie¸siri de date) se poate descrie astfel: ”dac˘a select¸ia
este egal˘a cu 0, intrarea este transmis˘a la ie¸sirea Y
0
, iar dac˘a select¸ia este egal˘a cu 1, intrarea este transmis˘a la ie¸sirea
Y
1
.
Figura 9.3 Simboluri de demultiplexoare.
Ecuat¸iile funct¸iilor logice implementate de DMUX sunt:
DMUX 1:2 Y
1
= S · I Y
0
= S · I
DMUX 1:4 Y
3
= S
1
· S
0
· I Y
2
= S
1
· S
0
· I Y
1
= S
1
· S
0
· I Y
0
= S
1
· S
0
· I
DMUX 1:8 Y
7
= S
2
· S
1
· S
0
· I Y
6
= S
2
· S
1
· S
0
· I Y
5
= S
2
· S
1
· S
0
· I Y
4
= S
2
· S
1
· S
0
· I
Y
3
= S
2
· S
1
· S
0
· I Y
2
= S
2
· S
1
· S
0
· I Y
1
= S
2
· S
1
· S
0
· I Y
0
= S
2
· S
1
· S
0
· I
Circuitele DMUX 1 : 2
N
au un comportament similar cu cel al unui decodificator de N bit¸i cu intrare de validare.
Dac˘a la un DMUX 1 : 2
N
se conecteaz˘a intrarea I = 1, circuitul este echivalent cu un DCD N : 2
N
.
Structurile logice ale demultiplexoarelor se obt¸in pe baza ecuat¸iilor.
Orice funct¸ie logic˘a de N variabile poate implementat˘a utilizˆand un DMUX 1 : 2
N
, ar˘a minimizare, astfel:
Pe cele N intr˘ari de select¸ie ale demultiplexorului se conecteaz˘a cele N intr˘ari.
Pe intrarea de date se va conecta 1.
Conform modului de conectare, demultiplexorul genereaz˘a pe cele 2
N
ie¸siri funct¸iile logice ale tuturor celor 2
N
mintermini ai variabilelor de intrare. Implementarea necesit˘a conectarea la intr˘arile unei port¸i OR a ie¸sirilor
demultiplexorului cu indexul egal cu indexul andurilor cu valoare 1 ˆın coloana de adev˘ar a funct¸iei. Dac˘a
funct¸ia este exprimat˘a FCND, se poate utiliza regula: ie¸sirile demultiplexorului ce ˆı¸si reg˘asesc indexul ˆın FCND
se conecteaz˘a la intrarea unei port¸i OR.
112 LECT¸ IA 9. Multiplexoare ¸si demultiplexoare
Figura 9.4 Structuri de demultiplexoare.
Dac˘a ˆın expresia analitic˘a a funct¸iei exprimat˘a FCND sunt prezent¸i mai mult de jum˘atate de mintermi (2
N1
),
se pot uni ˆıntr-o poart˘a NOR ie¸sirile ale aror index nu apar ˆın FCND.
Costul maxim total al implement˘arii oric˘arei funct¸ii de N intr˘ari este un DMUX 1 : 2
N
¸si o poart˘a OR/NOR de
maximum 2
N1
intr˘ari.
O funct¸ie logic˘a de N variabile poate implementat˘a pe un DMUX 1 : 2
N1
, ar˘a minimizare, dac˘a ˆın expresia
analitic˘a o variabil˘a de intrare poate dat˘a ˆın factor (negat˘a sau ne-negat˘a).
De exemplu, F (A, B , C, D) = A · G(B, C, D) sau F(A, B, C, D ) = A · G(B, C, D).
Implementarea const˘a ˆın conectarea intr˘arii factorizate pe intrarea de date a demultiplexorului. Celelalte intr˘ari
se conecteaz˘a pe intr˘arile de select¸ie ale demultiplexorului 1 : 2
N1
. Cu o poart˘a OR se vor conecta ie¸sirile necesare
pentru realizarea funct¸iei cu variabilele de pe select¸ie.
Costul maxim total al implement˘arii oric˘arei funct¸ii de N intr˘ari ce ˆındepline¸ste condit¸ia ment¸ionat˘a este un DMUX
1 : 2
N1
¸si o poart˘a OR/NOR de maximum 2
N2
intr˘ari (eventual un inversor pe intrarea de date).
9.2 Pentru cei ce vor doar a promoveze examenul
1. Implementat¸i urm˘atoarele funct¸ii conform cerint¸elor:
a) F
a
(A, B) =
(0, 3), cu MUX 4:1
b) F
b
(A, B, C) =
(0, 2, 5, 7), cu MUX 8:1
c) F
c
(A, B, C , D) =
(3, 4, 5, 9, 10, 12, 14, 15), cu MUX 16:1
d) F
d
(A, B) =
(0, 3), cu MUX 2:1 ¸si un inversor
e) F
e
(A, B, C) =
(0, 2, 5, 7), cu MUX 4:1 ¸si un inversor
f) F
f
(A, B, C , D) =
(3, 4, 5, 9, 10, 12, 14, 15), cu MUX 8:1 ¸si un inversor
g) F
g
(A, B, C) =
(3, 4, 6, 7), cu MUX 8:1
h) F
h
(A, B, C) =
(3, 4, 6, 7), cu MUX 4:1 ¸si un inversor
Solut¸ie
g) Funct¸ia F
g
(A, B, C) =
(3, 4, 6, 7) are 3 intr˘ari. Implementarea cu MUX 8:1 necesit˘a conectarea celor 3 intr˘ari
pe intr˘arile de select¸ie ¸si a valorilor din coloana de adev˘ar a funct¸iei pe intr˘arile de date ale multiplexorului.
Altfel spus, intr˘arile de date ale multiplexorului care au indexul prezent ˆın forma FCND a funct¸iei se conecteaz˘a
la 1. ar˘a minimizare, rezult˘a implementarea din figura 9.5.
h) Funct¸ia F
h
(A, B, C) =
(3, 4, 6, 7) are 3 intr˘ari. Implementarea cu MUX 4:1 necesit˘a conectarea a dou˘a
intr˘ari (cele mai semnificative, A ¸si B) pe cele 2 intr˘ari pe intr˘ari de select¸ie ale multiplexorului ¸si a funct¸iilor
reziduu ale celei mai put¸in semnificative intr˘ari (C) pe intr˘arile de date. Funct¸iile reziduu se deduc din tabelul
urm˘ator:
9.2. Pentru cei ce vor doar a promoveze examenul 113
Figura 9.5 Implementarea cu MUX 8:1 a funct¸iei de 3 intr˘ari F
g
(A, B, C) =
(3, 4, 6, 7), problema 1-g.
A B C F
h
Funct¸ii reziduu
0 0 0 0 I
0
= 0
0 0 1 0
0 1 0 0 I
1
= C
0 1 1 1
1 0 0 1 I
2
= C
1 0 1 0
1 1 0 1 I
3
= 1
1 1 1 1
ar˘a minimizare, rezult˘a implementarea din figura 9.6.
Figura 9.6 Implementarea cu MUX 4:1 a funct¸iei de 3 intr˘ari F
h
(A, B, C) =
(3, 4, 6, 7), problema 1-h.
2. Determinat¸i funct¸ia logic˘a implementat˘a de multiplexoare ˆın cazul realiz˘arii urm˘atoarelor conexiuni:
a) MUX 4:1 cu conexiunile: S
1
= A, S
0
= B, I
0
= I
3
= 0, I
1
= I
2
= 1
b) MUX 4:1 cu conexiunile: S
1
= A, S
0
= B, I
0
= I
3
= 0, I
1
= C, I
2
= 1
c) MUX 8:1 cu conexiunile: S
2
= A, S
1
= B, S
0
= C, I
0
= I
3
= I
7
= 0 ¸si I
1
= I
2
= I
4
= I
5
= I
6
= 1
d) MUX 8:1 cu conexiunile: S
2
= A, S
1
= B, S
0
= C, I
0
= I
3
= 0, I
7
= D, I
1
= I
2
= D ¸si I
4
= I
5
= I
6
= 1
e) MUX 8:1 cu conexiunile: S
2
= A, S
1
= B, S
0
= C, I
0
= I
3
= 0, I
1
= I
2
= D + E, I
4
= A · B, I
5
= I
6
= E ¸si
I
7
= 1
Solut¸ie
a) Se particularizeaz˘a funct¸ia multiplexorului 4:1 cu valorile impuse.
Y = S
1
· S
0
· I
3
+ S
1
· S
0
· I
2
+ S
1
· S
0
· I
1
+ S
1
· S
0
· I
0
Rezult˘a:
F
a
(A, B) = A · B · 0 + A · B · 1 + A · B · 1 + A · B · 0 = A · B + A · B =
(2, 1) =
(1, 2) = A B
b) Se particularizeaz˘a funct¸ia multiplexorului 4:1 cu valorile impuse.
Y = S
1
· S
0
· I
3
+ S
1
· S
0
· I
2
+ S
1
· S
0
· I
1
+ S
1
· S
0
· I
0
Rezult˘a:
F
a
(A, B, C) = A · B · 0 + A · B · 1 + A · B · C + A · B · 0 = A · B + A · B · C = A · B · C + A · B · C + A · B · C =
=
(5, 4, 3) =
(3, 4 , 5)
3. a se implementeze funct¸ia F (A, B, C, D) =
(3, 4, 6, 7, 10 , 11, 12, 14, 15) astfel:
a) cu multiplexor 16 : 1;
114 LECT¸ IA 9. Multiplexoare ¸si demultiplexoare
b) cu multiplexor 8 : 1, cu variabila reziduu D, pe select¸ie S
2
S
1
S
0
= ABC;
c) cu multiplexor 8 : 1, cu variabila reziduu C, pe select¸ie S
2
S
1
S
0
= ABD;
d) cu multiplexor 4 : 1, cu variabile reziduu C ¸si D, pe select¸ie S
1
S
0
= AB;
e) cu multiplexor 4 : 1, cu variabile reziduu B ¸si C, pe select¸ie S
1
S
0
= AD.
Solut¸ie
a) Funct¸ia are 4 variabile de intrare. Implementarea cu MUX 16:1 presupune:
- conectarea pe intr˘arile de select¸ie a celor 4 variabile de intrare;
- conectarea p e intr˘arile de date a valorilor logice corespunz˘atoare definirii funct¸iei, conform tabelului de adev˘ar:
b) Implementarea cu MUX 8:1 presupune introducerea funct¸iilor dependente de o variabil˘a reziduu pe intr˘arile
de date.
ˆ
In tabelul de adev˘ar se grupeaz˘a andurile dou˘a ate dou˘a, prezentˆand acelea¸si valori pentru variabilele
introduse pe intr˘arile de select¸ie (A, B, C).
Nr. A B C D F I
x
ABC
0 0 0 0 0 0 I
0
= 0 000
1 0 0 0 1 0
2 0 0 1 0 0 I
1
= D 001
3 0 0 1 1 1
4 0 1 0 0 1 I
2
= D 010
5 0 1 0 1 0
6 0 1 1 0 1 I
3
= 1 011
7 0 1 1 1 1
8 1 0 0 0 0 I
4
= 0 100
9 1 0 0 1 0
10 1 0 1 0 1 I
5
= 1 101
11 1 0 1 1 1
12 1 1 0 0 1 I
6
= D 110
13 1 1 0 1 0
14 1 1 1 0 1 I
7
= 1 111
15 1 1 1 1 1
c) Tabelul de adev˘ar se prelucreaz˘a similar cu cazul b) ˆıns˘a ˆın tabel s-au inversat coloanele C ¸si D pentru a
deveni adiacente andurile avˆand acelea¸si valori pentru variabilele introduse pe intr˘arile de select¸ie (A, B, D).
Nr. A B D C F I
x
ABD
0 0 0 0 0 0 I
0
= 0 000
2 0 0 0 1 0
1 0 0 1 0 0 I
1
= C 001
3 0 0 1 1 1
4 0 1 0 0 1 I
2
= 1 010
6 0 1 0 1 1
5 0 1 1 0 0 I
3
= C 011
7 0 1 1 1 1
8 1 0 0 0 0 I
4
= C 100
10 1 0 0 1 1
9 1 0 1 0 0 I
5
= C 101
11 1 0 1 1 1
12 1 1 0 0 1 I
6
= 1 110
14 1 1 0 1 1
13 1 1 1 0 0 I
7
= C 111
15 1 1 1 1 1
d) Se grupeaz˘a ate 4 anduri ¸si se deduc cele 4 funct¸ii reziduu dependente de C ¸si D.
9.2. Pentru cei ce vor doar a promoveze examenul 115
A B C D F I
x
S
1
S
0
= AB
0 0 0 0 0
0 0 0 1 0 I
0
= C · D 00
0 0 1 0 0
0 0 1 1 1
0 1 0 0 1
0 1 0 1 0 I
1
= C · D 01
0 1 1 0 1
0 1 1 1 1
1 0 0 0 0
1 0 0 1 0 I
2
= C 10
1 0 1 0 1
1 0 1 1 1
1 1 0 0 1
1 1 0 1 0 I
3
= C · D 11
1 1 1 0 1
1 1 1 1 1
e) Similar cu punctul d), cu coloanele inversate astfel ˆıncˆat a fie adiacente coloanele apart¸inˆand variabilelor
introduse pe intr˘arile de select¸ie (A, D).
A D B C F I
x
S
1
S
0
= AD
0 0 0 0 0
0 0 0 1 0 I
0
= B 00
0 0 1 0 1
0 0 1 1 1
0 1 0 0 0
0 1 0 1 1 I
1
= C 01
0 1 1 0 0
0 1 1 1 1
1 0 0 0 0
1 0 0 1 1 I
2
= B + C 10
1 0 1 0 1
1 0 1 1 1
1 1 0 0 0
1 1 0 1 1 I
3
= C 11
1 1 1 0 0
1 1 1 1 1
4. asit¸i port¸ile logice echivalente ale circuitelor cu multiplexor 2:1 prezentate ˆın figura 9.7.
Figura 9.7 Circuite particulare implementate cu multiplexor 2:1, problema 4.
Solut¸ie
Ecuat¸ia implementat˘a de MUX 2:1 este Y = S · I
0
+ S · I
1
. Particularizˆand ecuat¸ia pentru circuitele prezentate
rezult˘a:
a) Y = A · 0 + A · 1 = A
b) Y = A · B + A · B = B
c) Y = A · B + A · 1 = A + B
d) Y = A · 1 + A · B = A + B
116 LECT¸ IA 9. Multiplexoare ¸si demultiplexoare
5. Implementat¸i funct¸iile cu MUX 8:1.
a) F
a
=
(1, 3, 5) + d(0, 2)
b) F
b
=
(0, 3, 4, 5, 6, 7, 14, 15) + d(10, 11)
c) F
c
=
(0, 1, 5, 7, 9) + d(10, 11, 12, 13, 14, 15)
9.3 Pentru cei ce vor a ˆınvet¸e
1. Care este num˘arul de intr˘ari ale unui multiplexor 4:1? Aceea¸si ˆıntrebare pentru multiplexoarele 8:1, 16:1, 32:1
¸si 64:1. Generalizat¸i aspunsul pentru multiplexor 2
N
: 1.
Solut¸ie
Un multiplexor 2
N
: 1 are 2
N
intr˘ari de date selectate pe baza unui cod de select¸ie de N bit¸i. Distinct¸ia ”intr˘ari
de date” ¸si ”intr˘ari de select¸ie” este acut˘a t¸inˆand cont de funct¸ionalitatea circuitului.
ˆ
Ins˘a, cele dou˘a tipuri de
intr˘ari sunt similare, din punct de vedere al intr˘arilor unui circuit combinat¸ional. Deci, un multiplexor 2
N
: 1
are 2
N
+ N intr˘ari ¸si o ie¸sire.
2. Care din urm˘atoarele funct¸ii este implementat˘a pe circuitul din figura 9.8?
Figura 9.8 Circuitul cu multiplexoare referit la problema 2.
a) F(A, B, C) =
(0, 1, 3 , 4, 6, 7)
b) F(A, B, C) =
(0, 2, 3, 4, 5, 6)
c) F(A, B, C) =
(0, 2, 4, 5, 6, 7)
d) F(A, B, C) =
(0, 3, 4, 5, 6, 7)
e) F(A, B, C) =
(1, 3, 4, 6, 7)
Solut¸ie
Y
1
(A, B, C) = C · A + C · A,
Y
2
(A, B, C) = C · Y
1
+ C · B = C · (C · A+ CA)+ C · B = A ·C + B · C = A· B · C + A · B · C + A · B · C + A · B · C =
(6, 4, 7, 3) =
(3, 4, 6, 7),
Y
3
(A, B, C) = B · Y
1
+ B · C = B · (A · C + A · C) + B · C = A · B · C + A · B · C + A · B · C + A · B · C =
(5, 0, 7, 3) =
(0, 3, 5, 7),
F (A, B, C) = Y
3
+ Y
2
=
(3, 4, 6, 7) +
(0, 3, 5, 7) =
(0, 3, 4, 5, 6, 7)
F (A, B, C) =
(0, 3, 4, 5, 6, 7), deci aspunsul corect este d).
3. Care din urm˘atoarele funct¸ii este implementat˘a de circuitul din figura 9.9?
a) F(A, B) = A · B
b) F(A, B) = A + B
c) F(A, B) = A B
d) F(A, B) = A B
e) F(A, B) = A · B
Solut¸ie
F (A, B) = m
0
+ m
3
= A B, deci aspunsul corect este c).
9.3. Pentru cei ce vor a ˆınvet¸e 117
Figura 9.9 Circuitul cu multiplexor referit la problema 3.
4. Proiectat¸i un circuit de ”vot majoritar” cu 3 intr˘ari ¸si implementat¸i-l cu multiplexor 4:1, ar˘a minimizarea
funct¸iei. Ie¸sirea circuitului are valoarea logic˘a a majorit˘at¸ii intr˘arilor.
Solut¸ie
Tabelul de adev˘ar al circuitului ”vot majoritar” este:
V
2
V
1
V
0
VOT
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
Implementarea cu MUX4:1 necesit˘a scrierea funct¸iei cu o variabil˘a reziduu (V
0
):
V OT = V
2
· V
1
+ V
2
· V
0
+ V
1
· V
0
= V
2
· V
1
· V
0
+ V
2
· V
1
· V
0
+ V
2
· V
1
· V
0
+ V
2
· V
1
· V
0
+ V
2
· V
1
· V
0
+ V
2
· V
1
· V
0
=
= V
2
· V
1
· (V
0
+ V
0
+ V
0
+ V
0
) + V
2
· V
1
· (V
0
) + V
2
· V
1
· (V
0
) + V
2
· V
1
· (0) = m
3
· 1 + m
2
· V
0
+ m
1
· V
0
+ m
0
· 0,
unde m
i
(V
2
, V
1
).
Circuitul este prezentat ˆın figura 9.10.
Figura 9.10 Funct¸ia ”vot majoritar”: implementare cu multiplexor.
5. a se implementeze urm˘atoarele circuite MUX cu circuitele MUX de dimensiuni mai reduse, precizate:
a) MUX 4:1 cu MUX 2:1
b) MUX 8:1 cu MUX 2:1
c) MUX 8:1 cu MUX 4:1
d) MUX 16:1 cu MUX 2:1
6. a se implementeze un MUX 32:1 utilizˆand 4 circuite MUX 8:1 cu validare ¸si un decodificator de 2 bit¸i.
118 LECT¸ IA 9. Multiplexoare ¸si demultiplexoare
Solut¸ie
MUX 32:1 are 5 bit¸i de select¸ie, 32 bit¸i de date ¸si o ie¸sire. Cei mai semnificativi 2 bit¸i de select¸ie se decodific˘a
pentru a se obt¸ine 4 semnale de validare. Cele 4 semnale de validare se aplic˘a ate unul la fiecare MUX 8:1 astfel
ˆıncˆat, la un moment dat, o singur˘a ie¸sire este nenul˘a. Cei 32 bit¸i de date se aplic˘a pe cele 4 × 8 intr˘ari de date
ale multiplexoarelor. Cele 4 ie¸siri ale multiplexoarelor se conecteaz˘a la intr˘arile unei port¸i OR cu 4 intr˘ari care
genereaz˘a bitul de ie¸sire.
7. Se consider˘a circuitul de adunare a operanzilor de 8 bit¸i provenit¸i din 4 surse posibile pentru un operand ¸si alte
4 surse p osibile pentru al doilea operand ¸si direct¸ionarea rezultatului spre una din cele 4 destinat¸ii posibile, cu
schema bloc prezentat˘a ˆın figura 9.11.
Figura 9.11 Circuitul de adunare descris la problema 7.
a se scrie cuvintele de comand˘a pentru urm˘atoarele adun˘ari:
a) S
1
= A
1
+ B
1
b) S
3
= A
2
+ B
3
c) S
2
= A
2
+ B
1
d) S
3
= A
2
+ B
0
e) S
0
= A
3
+ B
3
Solut¸ie
Cuvintele de comand˘a sunt:
a) SEL
A
= 01, SEL
B
= 01, SEL
S
= 01
b) SEL
A
= 10, SEL
B
= 11, SEL
S
= 11
8. a se implementeze funct¸iile ˆın variantele precizate:
F
1
(A, B, C, D) =
(0, 1 , 3, 4, 7, 8, 10, 11, 15)
F
2
(A, B, C, D) =
(3, 4 , 5, 6, 13, 14, 15)
F
3
(A, B, C, D) =
(0, 1, 4, 5, 6, 9 , 12, 14)
a) cu MUX 2:1
b) cu MUX 4:1
c) cu MUX 16:1
d) cu MUX 2:1 ¸si MUX 4:1
Solut¸ie
a) Implementarea funct¸iilor cu MUX 2:1 se poate face, ar˘a minimizare, pe o structur˘a arborescena de multi-
plexoare pe un num˘ar de nivele egal cu num˘arul de variabile de intrare. Multiplexoarele de pe fiecare nivel au
aceea¸si select¸ie. Variabilele de intrare se aplic˘a pe intr˘arile de select¸ie, ˆın ordine, intrarea cea mai semnificativ˘a p e
ultimul nivel de multiplexare. Pe intr˘arile de date se aplic˘a valorile logice corespunz˘atoare mintermilor prezent¸i
ˆın expresia funct¸iei.
ˆ
In funct¸ie de valorile unei anumite funct¸ii, se poate renunt¸a la primul nivel de multiplexoare
care poate implementat cu maxim un inversor.
Figurile 9.12-a,b prezint˘a implementarea funct¸iei F
1
pe structura arborescena de multiplexoare 2:1 ¸si structura
redus˘a, t¸inˆand cont de valorile concrete ale funct¸iei.
9.3. Pentru cei ce vor a ˆınvet¸e 119
a)
b)
Figura 9.12 a) Implementarea funct¸iei F
1
pe o ret¸ea arborescena de MUX 2:1, b) varianta redus˘a, problema 8.
b) Implementarea funct¸iilor cu MUX 4:1 este similar˘a cu implementarea cu MUX 2:1 cu deosebirea a num˘arul
de nivele de multiplexare se ˆınjum˘at˘at¸e¸ste deoarece pe fiecare nivel se utilizeaz˘a ate dou˘a variabile de select¸ie.
9. a se implementeze funct¸ia F (A, B, C, D) =
(3, 6, 11, 14, 15) +
d(2, 5, 12, 13), cu MUX 4:1.
10. a se implementeze funct¸ia F (A, B, C, D, E) = A · B · E + A · B · D · E + A · B · C · E + A · C · D · E cu MUX
8:1 cu validare.
Solut¸ie
Funct¸ia aand 5 variabile, pentru implementare cu MUX 8:1, este necesar˘a exprimarea acesteia cu dou˘a variabile
reziduu. Deoarece ˆın expresia funct¸iei se poate factoriza variabila E, aceasta poate utilizat˘a pentru comanda
valid˘arii circuitului. amˆane de introdus numai o singur˘a variabil˘a reziduu. Expresia funct¸iei se transform˘a ˆın:
F (A, B, C, D, E) = E · (A · B + A · B · D + A · B · C + A · C · D) = E · [A · (B + B · D) + A · (B · C + C · D)] =
= E ·[A·(B ·C ·D +B ·C ·D +B ·C ·D +B ·C ·D+B ·C ·D+B ·C ·D)+A·(B ·C ·D +B ·C ·D +B ·C ·D +B ·C ·D)]
= E · [A · (m
4
+ m
5
+ m
6
+ m
7
+ m
1
+ m
3
) + A · (m
2
+ m
3
+ m
2
+ m
6
)] =
= E · [A · (m
1
+ m
3
+ m
4
+ m
5
+ m
6
+ m
7
) + A · (m
2
+ m
3
+ m
6
)] =
= E · [A · (m
1
+ m
4
+ m
5
+ m
7
) + A · (m
2
) + (m
3
+ m
6
)]
Mintermii sunt calculat¸i asupra celor trei variabile m
i
(B, C, D).
Funct¸ia de ie¸sire a circuitului MUX 8:1 cu validare este:
Y = E · (I
0
· m
0
+ I
1
· m
1
+ I
2
· m
2
+ I
3
· m
3
+ I
4
· m
4
+ I
5
· m
5
+ I
6
· m
6
+ I
7
· m
7
)
Funct¸ia considerat˘a se poate scrie ca:
F = E · (0 · m
0
+ A · m
1
+ A · m
2
+ 1 · m
3
+ A · m
4
+ A · m
5
+ 1 · m
6
+ A · m
7
)
Implementarea acestei expresii este reprezentat˘a ˆın figura 9.13.
Figura 9.13 Implementarea funct¸iei de la problema 10 cu MUX 8:1.
120 LECT¸ IA 9. Multiplexoare ¸si demultiplexoare
11. a se implementeze funct¸ia:
F (A, B, C, D, E) = A · B · E + A · B · D · E + A · B · C · E + A · C · D · E + A · B · C · D · E + A · B · C · D · E
utilizˆand un circuit DMUX 1:8, un MUX 4:1 ¸si port¸i logice OR/NOR.
Solut¸ie
Ideea implement˘arii const˘a ˆın utilizarea a 2 variabile de intrare (D, E) conectate p e intr˘arile de select¸ie ale
multiplexorului 4:1 ¸si celelalte 3 variabile de intrare (A, B, C) pe intr˘arile de select¸ie ale demultiplexorului.
Demultiplexorul genereaz˘a tot¸i mintermii variabilelor A, B, C. Multiplexorul implementeaz˘a funct¸ia:
Y = H
3
· D · E + H
2
· D · E + H
1
· D · E + H
0
· D · E
Funct¸iile H
0,1,2,3
(A, B, C) pot obt¸inute cu un singur DMUX 1:8 ¸si ate o poart˘a OR/NOR pentru fiecare
funct¸ie, ˆın total maximum 4 port¸i OR/NOR. Expresia funct¸iei se prelucreaz˘a analitic pentru a adus˘a la forma
canonic˘a disjunctiv˘a FCD (prin ad˘augarea variabilelor lips˘a):
F (A, B, C, D, E) = A · B · E + A · B · D · E + A · B · C · E + A · C · D · E + A · B · C · D · E + A · B · C · D · E =
= A·B·(C+C)· (D+D)·E+A·B·(C+C)·D·E+A·B· C·(D+D)·E+A·(B+B)·C·D·E+A· B·C·D·E+A ·B·C·D·E =
= A · B · C · D · E + A · B · C · D · E + A · B · C · D · E + A · B · C · D · E+
+A · B · C · D · E + A · B · C · D · E+
+A · B · C · D · E + A · B · C · D · E+
+A · B · C · D · E + A · B · C · D · E+
+A · B · C · D · E+
+A · B · C · D · E
Apoi se dau ˆın factor mintermii variabilelor D ¸si E: D · E, D · E, D · E, D · E, rezultˆand:
F = (A · B · C + A · B · C + A · B · C + A · B · C + A · B · C) · D · E+
+A · B · C · D · E+
+(A · B · C + A · B · C + A · B · C + A · B · C + A · B · C) · D · E+
+A · B · C · D · E
= (m
2
+ m
3
+ m
1
+ m
0
+ m
5
) · D · E+
+m
7
· D · E+
+(m
2
+ m
3
+ m
5
+ m
5
+ m
7
) · D · E+
+m
4
· D · E
F = (m
0
+ m
1
+ m
2
+ m
3
+ m
5
) · D · E + m
7
· D · E + (m
2
+ m
3
+ m
5
+ m
7
) · D · E + m
4
· D · E
Expresia final˘a obt¸inut˘a este implementat˘a de circuitul din figura 9.14.
F = (m
4
+ m
6
+ m
7
) · D · E + m
7
· D · E + (m
2
+ m
3
+ m
5
+ m
7
) · D · E + m
4
· D · E =
= H
3
· D · E + H
2
· D · E + H
1
· D · E + H
0
· D · E
ˆ
In cazul H
3
s-a optat pentru complementarea funct¸iei pentru a reduce num˘arul de intr˘ari de la 5 la 3.
Figura 9.14 Implementarea funct¸iei de la problema 11 cu DMUX 1:8 ¸si MUX 4:1.
9.3. Pentru cei ce vor a ˆınvet¸e 121
12. a se implementeze funct¸ia:
F (A, B, C, D, E) = A · B · E + A · B · D · E + A · B · C · E + A · C · D · E
utilizˆand un circuit DMUX 1:8, un MUX 2:1 ¸si port¸i logice OR/NOR.
Solut¸ie
Se observ˘a a ˆın expresia funct¸iei se poate da ˆın factor variabila E, scriindu-se funct¸ia ca:
F (A, B, C, D, E) = E · G(A, B, C, D)
Apoi, funct¸ia G(A, B, C, D) se scrie sub forma:
G(A, B, C, D) = H
0
(A, B, C) · D + H
1
(A, B, C) · D
Funct¸ia G se va implementa cu MUX 2:1 avˆand pe select¸ie variabila D, iar funct¸iile H
0,1
(A, B, C) se imple-
menteaz˘a cu DMUX 1:8 ¸si port¸i OR/NOR. Circuitul DMUX va avea pe intrare variabila E, realizˆand F = 0
dac˘a E = 0.
Prin preluc˘ari algebrice se obt¸ine:
F (A, B, C, D, E) = A · B · E + A · B · D · E + A · B · C · E + A · C · D · E =
= E · (A · B + A · B · D + A · B · C + A · C · D)
Deci: G(A, B, C, D) = A · B + A · B · D + A · B · C + A · C · D
G(A, B, C, D) = A · B + A · B · D + A · B · C + A · C · D =
= A · B · (C + C) · (D + D) + A · B · (C + C) · D + A · B · C · (D + D) + A · (B + 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 + A · B · C · D
Apoi se dau ˆın factor D ¸si D, rezultˆand:
G(A, B, C, D) = (A·B·C+A·B·C+A·B·C+A·B·C+A·B·C)·D+(A·B·C+A·B·C+A·B·C+ A·B·C+A·B·C)·D =
= (m
2
+ m
3
+ m
5
+ m
5
+ m
7
) · D + (m
2
+ m
3
+ m
1
+ m
0
+ m
5
) · D
Rezult˘a H
0
(A, B, C) =
(2, 3, 5, 7) ¸si H
1
(A, B, C) =
(0, 1, 2, 3, 5)
Expresia final˘a obt¸inut˘a este implementat˘a de circuitul din figura 9.15.
F (A, B, C, D, E) = E · [(m
2
+ m
3
+ m
5
+ m
7
) · D + (m
0
+ m
1
+ m
2
+ m
3
+ m
5
) · D]
Figura 9.15 Implementarea funct¸iei de la problema 12 cu DMUX 1:8 ¸si MUX 2:1.
13. a se implementeze funct¸ia F (A, B, C, D, E) =
(3, 6, 7, 10 , 11, 19, 22, 26, 27, 30, 31) utilizˆand un circuit DMUX
1:8, port¸i logice OR ¸si MUX 4:1.
a se implementeze aceea¸si funct¸ie cu DMUX 1:4, port¸i logice OR ¸si MUX 4:1 cu validare.
14. a se implementeze funct¸ia F (A, B, C, D, E) = A · B · E + A · B · D · E + A · B · C · E + A · C · D · E utilizˆand un
circuit DMUX 1:4 urmat de un MUX 4:1 ¸si port¸i logice OR, conectˆand intr˘arile C ¸si D pe intr˘arile de select¸ie ¸si
E pe intrarea de date a demultiplexorului iar intr˘arile A ¸si B pe intr˘arile de select¸ie ale demultiplexorului.
Solut¸ie
Circuitul DMUX 1:4, cu intrarea de date activat˘a (E), genereaz˘a tot¸i mintermii de 2 variabile (A ¸si B).
Circuitul MUX 4:1 selecteaz˘a o intrare pe baza unui cod de select¸ie de 2 bit¸i (C ¸si D).
Pentru aceast˘a implementare funct¸ia trebuie pus˘a sub forma:
F (A, B, C, D, E) = E · (C · D · G
3
(A, B) + C · D · G
2
(A, B) + C · D · G
1
(A, B) + C · D · G
0
(A, B))
Funct¸iile G
3
,
2
,
1
,
0
(A, B) vor implementate cu p ort¸i OR pe baza mintermilor generat¸i de demultiplexor.
122 LECT¸ IA 9. Multiplexoare ¸si demultiplexoare
F (A, B, C, D, E) = E· (A·B+A·B·D+A·B·C+A·C·D) = E·[m
1
+m
0
·D+m
2
·C+(m
2
+m
3
)·C·D], unde m
i
(A, B).
F (A, B, C, D, E) = E·[m
1
·(C ·D+C ·D+C ·D+C ·D)+m
0
·(C ·D+C ·D)+m
2
·(C ·D+C ·D)+(m
2
+m
3
)·C ·D] =
= E · [(m
0
+ m
1
+ m2) · C · D + (m
1
+ m
2
+ m3) · C · D + (m
0
+ m
1
) · C · D + m
1
· C · D]
Implementarea este prezentat˘a ˆın figura 9.16.
Figura 9.16 Implementarea funct¸iei de la problema 14 cu DMUX ¸si MUX.
15. a se implementeze numai cu MUX 4:1 urm˘atoarele funct¸ii:
a) F(A, B, C, D, E) = A · B · C · D + B · C · D · E + B · C · D · E + A · B · C · D
b) F(A, B, C, D, E) =
(1, 2, 3, 4 , 5, 6, 7, 10, 14, 20, 22, 28, 31)
Solut¸ie
Funct¸iile au 5 variabilele de intrare. Implementarea cu MUX 4:1 se poate face pe dou˘a nivele: pe primul nivel 4
circuite MUX 4:1, avˆand pe intr˘arile de select¸ie dou˘a variabile de intrare ¸si pe intr˘arile de date funct¸ii reziduu ale
unei variabile de intrare. Pe al doilea nivel, apare ˆınc˘a un MUX 4:1 avˆand pe intr˘arile de select¸ie dou˘a variabile
de intrare (cele mai semnificative) ¸si intr˘arile de date conectate la ie¸sirile multiplexoarelor de pe primul nivel.
Pentru implementare, funct¸ia trebuie pus˘a sub form˘a canonic˘a disjunctiv˘a. Funct¸iile reziduu se p ot determina
din observarea indec¸silor mintermilor care apar ˆın expresia funct¸iei. Pentru o intrare de date, se grupeaz˘a ate
doi mintermi adiacent¸i. Mintermii 0 ¸si 1 vor genera funct¸ia reziduu pentru ABCD = 0000, mintermii 2 ¸si 3
vor genera funct¸ia reziduu pentru ABCD = 0001, ... mintermii 30 ¸si 31 vor genera funct¸ia reziduu pentru
ABCD = 1111.
Dac˘a ˆın expresia funct¸iei nu apare niciunul din cei doi mintermi, se va considera funct¸ia reziduu egal˘a cu 0.
Dac˘a ˆın expresia funct¸iei apar ambii dintre cei doi mintermi, se va considera funct¸ia reziduu egal˘a cu 1.
Dac˘a ˆın expresia funct¸iei apare mintermul par dar nu ¸si cel impar, se va considera funct¸ia reziduu negat˘a.
Dac˘a ˆın expresia funct¸iei apare mintermul impar dar nu ¸si cel par, se va considera funct¸ia reziduu direct˘a.
Pentru funct¸ia b), datele pot deduse din tabel:
9.3. Pentru cei ce vor a ˆınvet¸e 123
Minterm A B C D E F(A, B, C, D, E) Reziduu(E)
0 0 0 0 0 0 0
1 0 0 0 0 1 1 E
2 0 0 0 1 0 1
3 0 0 0 1 1 1 1
4 0 0 1 0 0 1
5 0 0 1 0 1 1 1
6 0 0 1 1 0 1
7 0 0 1 1 1 1 1
8 0 1 0 0 0 0
9 0 1 0 0 1 0 0
10 0 1 0 1 0 1
11 0 1 0 1 1 0 E
12 0 1 1 0 0 0
13 0 1 1 0 1 0 0
14 0 1 1 1 0 1
15 0 1 1 1 1 0 E
16 1 0 0 0 0 0
17 1 0 0 0 1 0 0
18 1 0 0 1 0 0
19 1 0 0 1 1 0 0
20 1 0 1 0 0 1
21 1 0 1 0 1 0 E
22 1 0 1 1 0 1
23 1 0 1 1 1 0 E
24 1 1 0 0 0 0
25 1 1 0 0 1 0 0
26 1 1 0 1 0 0
27 1 1 0 1 1 0 0
28 1 1 1 0 0 1
29 1 1 1 0 1 0 E
30 1 1 1 1 0 0
31 1 1 1 1 1 1 E
Pentru funct¸ia b) circuitul este prezentat ˆın figura 9.17.
16. Analizat¸i circuitul prezentat ˆın figura 9.18.
Solut¸ie
Circuitul cont¸ine un DMUX 1:4 cu select¸ia provenind de la intrarea de 2 bit¸i A, cu ie¸sirile conectate ”unu-la-
unu” la intr˘arile unui MUX 4:1 cu select¸ia provenind de la intrarea de 2 bit¸i B. Circuitul va propaga la ie¸sirea
Y valoarea 1 aplicat˘a pe intrarea de date/validare a demultiplexorului doar and cele dou˘a intr˘ari sunt egale
A[1 : 0] = B[1 : 0]. Circuitul implementeaz˘a un comparator de dou˘a numere reprezentate pe ate 2 bit¸i.
17. Determinat¸i funct¸iile logice implementate de circuitele din figura 9.19.
Solut¸ie
a) Circuitul implementeaz˘a o funct¸ie de 4 intr˘ari cu multiplexor 8:1, intrarea A fiind conectat˘a ca funct¸ii reziduu
pe intr˘arile de date ale multiplexorului, iar intr˘arile B, C, D realizˆand select¸ia datelor. Rezult˘a funct¸ia:
F (A, B, C, D) =
m
i
· d
i
unde m
i
(B, C, D).
F (A, B, C, D) = m
0
· 1 + m
1
· 1 + m
2
· A + m
3
· A + m
4
· A + m
5
· 1 + m
6
· 0 + m
7
· A = m
0
+ m
1
+ m
2
· A + m
3
·
A + m
4
· A + m
5
+ m
7
· A
F = B · C · D + B · C · D + A · B · C · D + A · B · C · D + A · B · C · D + B · C · D + A · B · C · D
18. Implementat¸i urm˘atoarele funct¸ii cu multiplexor 8:1 ¸si un inversor:
a) F(A, B, C, D) =
(0, 3 , 5, 7, 8, 14, 15)
b) F(A, B, C, D) =
(0, 2, 5, 7, 8, 9, 11, 12, 13)
c) F(A, B, C, D) =
(3, 4, 5, 9, 10 , 12, 14, 15)
d) F(A, B, C, D) =
(2, 4, 6, 7, 9, 10)
124 LECT¸ IA 9. Multiplexoare ¸si demultiplexoare
Figura 9.17 Funct¸ie de 5 intr˘ari implementat˘a cu multiplexoare 4:1, problema 15-b).
Figura 9.18 Circuitul de analizat la problema 16.
e) F(A, B, C, D) =
(1, 3, 5, 7 , 11, 13, 15)
f) F(A, B, C, D) =
(0, 1, 3, 4, 8, 9, 15)
g) F(A, B, C, D) =
(2, 3 , 5, 6, 8, 9, 12, 14)
Solut¸ie
Funct¸iile au 4 intr˘ari. Implementarea cu MUX 8:1 necesit˘a conectarea a 3 intr˘ari pe intr˘arile de select¸ie ¸si a unei
variabile de intrare pe intr˘arile de date, sub forma de funct¸ii reziduu. Dac˘a se conecteaz˘a pe intr˘arile de select¸ie
variabilele mai semnificative, funct¸iile reziduu se determin˘a prin gruparea a doi indec¸si adiacent¸i din expresia
funct¸iei ˆın forma canonic˘a disjunctiv˘a, similar cu modul descris la problema 15.
a) F (A, B, C, D) =
(0, 3, 5, 7, 8, 14, 15) = m
0
· D + m
1
· D + m
2
· D + m
3
· D + m
4
· D + m
5
· 0 + m
6
· 0 + m
7
· 1
unde m
i
(A, B, C)
Circuitul este prezentat ˆın figura 9.20.
19. Determinat¸i funct¸ia logic˘a implementat˘a de un multiplexor 8:1 ˆın cazul realiz˘arii urm˘atoarelor conexiuni:
a) S
2
= A, S
1
= B, S
0
= C, I
1
= I
2
= I
7
= 0, I
3
= I
5
= 1, I
0
= I
4
= D ¸si I
6
= D
b) S
2
= C, S
1
= B, S
0
= A, I
1
= I
2
= I
6
= 0, I
3
= I
4
= E, I
0
= D, I
5
= D · E ¸si I
7
= 1
c) S
2
= C, S
1
= A, S
0
= B · C, I
0
= I
3
= 0, I
1
= I
2
= D + E, I
4
= A · B, I
5
= I
6
= E ¸si I
7
= 1
Solut¸ie
a)F (A, B, C, D) = S
2
·S
1
·S
0
·I
7
+S
2
·S
1
·S
0
·I
6
+S
2
·S
1
·S
0
·I
5
+S
2
·S
1
·S
0
·I
4
+S
2
·S
1
·S
0
·I
3
+S
2
·S
1
·S
0
·I
2
+S
2
·S
1
·
S
0
·I
1
+S
2
·S
1
·S
0
·I
0
= A·B·C·0+A·B·C·D+A·B·C·1+A·B·C·D+A·B·C·1+A·B·C·0+A·B·C·0+A·B·C·D =
= A · B · C · D + A · B · C + A · B · C · D + A · B · C + A · B · C · D =
(12, 11, 10, 9, 7, 6, 1)
9.3. Pentru cei ce vor a ˆınvet¸e 125
a) b)
Figura 9.19 Funct¸ii logice implementate cu multiplexor 8:1, problema 17.
Figura 9.20 Funct¸ie de 4 intr˘ari implementat˘a cu multiplexor 8:1, problema 18-a).
20. Figura 9.21 prezint˘a un multiplexor 4:1 ale arui intr˘ari de select¸ie sunt decodificate (se presupune a o singur˘a
intrare e
3
, e
2
, e
1
, e
0
este activat˘a la un moment dat). Tabelul de adev˘ar care caracterizeaz˘a acest multiplexor
este prezentat ˆın continuare:
e
3
e
2
e
1
e
0
Y
1 0 0 0 d
3
0 1 0 0 d
2
0 0 1 0 d
1
0 0 0 1 d
0
a) a se scrie funct¸ia logic˘a a ie¸sirii.
b) a se implementeze circuitul cu port¸i logice.
c) Care este valoarea ie¸sirii ˆın cazul ˆın care nicio intrare de select¸ie nu este activat˘a (e
3
= e
2
= e
1
= e
0
= 0)?
d) Care este valoarea ie¸sirii ˆın cazul ˆın care dou˘a sau mai multe intr˘ari de select¸ie sunt activate simultan
(e
3
= e
2
= 1, e
1
= e
0
= 0 sau e
3
= e
2
= e
1
= e
0
= 1)?
Figura 9.21 Multiplexor 4:1 cu select¸ia deco dificat˘a, problema 20.
Solut¸ie
a) Se observ˘a a tabelul de adev˘ar este incomplet definit: din cele 2
4
= 16 combinat¸ii ale intr˘arilor e
3
, e
2
, e
1
, e
0
sunt prezente doar 4. Presupunerea este a nu se activeaz˘a dou˘a intr˘ari simultan. Cu aceast˘a presupunere,
126 LECT¸ IA 9. Multiplexoare ¸si demultiplexoare
expresia logic˘a a funct¸iei se poate scrie:
Y (e
3
, e
2
, e
1
, e
0
, d
3
, d
2
, d
1
, d
0
) = e
3
· d
3
+ e
2
· d
2
+ e
1
· d
1
+ e
0
· d
0
b) Circuitul este prezentat ˆın figura 9.22.
Figura 9.22 Structur˘a intern˘a a multiplexorului 4:1 cu select¸ia decodificat˘a, problema 20.
c) Conform ecuat¸iei logice a ie¸sirii, ˆın cazul ˆın care nicio intrare de validare nu este activat˘a ie¸sirea este Y = 0.
d) Conform ecuat¸iei logice a ie¸sirii, ˆın cazul ˆın care mai mult de o intrare de validare este activat˘a, ie¸sirea
realizeaz˘a funct¸ia OR a intr˘arilor de date corespunz˘atoare validate.
Y (1, 1, 0, 0, d
3
, d
2
, d
1
, d
0
) = d
3
+ d
2
Y (1, 1, 1, 1, d
3
, d
2
, d
1
, d
0
) = d
3
+ d
2
+ d
1
+ d
0
21. Analizat¸i circuitul prezentat ˆın figura 9.23 ¸si deducet¸i ecuat¸iile funct¸iilor de transfer ale acestuia.
Figura 9.23 Circuit de analizat, problema 21.
Solut¸ie
Circuitul DMUX genereaz˘a la ie¸sire tot¸i mintermii variabilelor A, B, C.
F
1
(A, B, C) = m
0
· m
2
· m
5
= 0 = 1 (deoarece este o cojunct¸ie de mintermi de indec¸si diferit¸i)
F
2
(A, B, C) = m
2
+ m
3
+ m
5
+ m
7
=
(2, 3 , 5, 7)
F
3
(A, B, C) = m
4
+ m
6
+ m
7
=
(0, 1, 2, 3, 5)
F
4
(A, B, C) = m
1
+ m
4
=
(1, 4)
22. Implementat¸i cu multiplexor 2:1 urm˘atoarele funct¸ii logice, conectˆand intrarea A pe intrarea de select¸ie a mul-
tiplexorului: A · B, A + B, A B, A + B.
23. Implementat¸i cu multiplexor 4:1 urm˘atoarele funct¸ii logice, conectˆand intr˘arile A ¸si B pe intr˘arile de select¸ie ale
multiplexorului: A + B · C, A · B + A · C, F (A, B, C) =
(0, 2, 4, 5), A + B · C.
Implementat¸i acelea¸si funct¸ii cu multiplexor 2:1 ¸si port¸i adit¸ionale, conectˆand intrarea A pe select¸ia multiplexo-
rului.
24. Proiectat¸i arborii de multiplexare organizat¸i dup˘a regulile:
a) A|BC|F b) AB|C|F c) A|BC|D|F d) AB|CD|F
Solut¸ie
a) Un arbore de multiplexare utilizeaz˘a mai multe nivele de multiplexoare de dimensiuni mici pentru a imple-
menta un multiplexor de dimensiuni mare. Regula A|BC|F trebuie ˆınt¸eleas˘a ca o funct¸ie F (A, B, C).
9.3. Pentru cei ce vor a ˆınvet¸e 127
Pe primul nivel (cel de intrare) se conecteaz˘a pe intr˘arile de select¸ie intr˘arile mai put¸in semnificative ale funct¸iei,
BC. Pe primul nivel, exist˘a dou˘a circuite MUX 4:1 care genereaz˘a semnale ce se conecteaz˘a la intr˘arile de date
ale multiplexorului MUX 2:1 de pe al doilea nivel.
Pe al doilea nivel (cel ce genereaz˘a ie¸sirea) se conecteaz˘a pe select¸ia multiplexorului intrarea cea mai semnifica-
tiv˘a, A. Intr˘arile de date provin de la ie¸sirile multiplexoarelor de pe nivelele inferioare. Pe ultimul nivel exist˘a
ˆıntotdeauna un singur multiplexor. Dimensiunea acestuia (ˆın acest caz) este MUX 2:1 (deoarece are un singur
bit de select¸ie A).
Circuitul rezultat este prezentat ˆın figura 9.24. Circuitul este echivalent cu un MUX 8:1 (avˆand 3 intr˘ari de
select¸ie, ABC).
Figura 9.24 Arb ore de multiplexare A|BC|F ¸si AB|C|F , problema 24-a,b.
b) Circuitul are un MUX 4:1 pe al doilea nivel (cu select¸ii AB) ¸si 4 MUX 2:1 pe primul nivel (cu select¸ie C).
Circuitul este echivalent cu un MUX 8:1 (avˆand 3 intr˘ari de select¸ie ABC).
c) Circuitul are un MUX 2:1 pe al treilea nivel (cu select¸ie A), 2 x MUX 4:1 pe al doilea nivel (cu select¸ie BC)
¸si 8 x MUX 2:1 pe primul nivel (cu select¸ia D).
d) Circuitul are un MUX 4:1 pe al doilea nivel (cu select¸ie AB) ¸si 4 x MUX 4:1 pe primul nivel (cu select¸ie CD).
25. a se implementeze funct¸ia F (A, B, C) =
(2, 3, 7) cu un DMUX 1:4 ¸si o poart˘a logic˘a OR.
26. Implementat¸i funct¸iile cu MUX 8:1.
a) F
a
=
(1, 3, 5 , 9, 14, 15) + d(4, 6, 12, 13)
b) F
b
=
(0, 3, 4, 5, 6, 7, 9, 12, 14, 15) + d(10)
c) F
c
=
(0, 1, 5, 7, 9 , 10, 14) + d(3, 8)
d) F
d
=
(2, 6, 7, 9, 10) + d(0, 8)
e) F
e
=
(5, 6, 7 , 8, 9, 10, 13, 14, 15) + d(0, 11)
f) F
f
=
(1, 2, 3, 5, 7, 10 , 13, 14, 15) + d(6, 8)
Solut¸ie
a) Implementarea funct¸iei cu multiplexor nu necesit˘a minimizare.
ˆ
In schimb, pentru a funct¸ia are 4 intr˘ari
iar multiplexorul necesar MUX 8:1 doar 3 intr˘ari de select¸ie, este necesar˘a exprimarea funct¸iei cu o variabil˘a
reziduu. Pentru aceasta se poate utiliza diagrama V-K, prezentat˘a ˆın figura 9.25. Funct¸ia se rescrie:
F
a
= A · B · C · D + A · B · C · D + A · B · C + A · B · C · D + A · B · C = m
0
· D + m
1
· D + m
2
+ m
4
· D + m
7
,
unde mintermii m
i
(A, B, C).
Se observ˘a a valorile indiferente s-au considerat 0, 1 astfel ˆıncˆat pe intr˘arile de date a fie at mai multe valori
constante (ca a nu se areasc˘a inutil fan-out-ul port¸ilor ce preced circuitul).
Implementarea funct¸iei F
a
cu MUX 8:1 este prezentat˘a ˆın figura 9.25.
d) Implementarea funct¸iei cu multiplexor nu necesit˘a minimizare.
ˆ
In schimb, pentru a funct¸ia are 4 intr˘ari
iar multiplexorul necesar MUX 8:1 doar 3 intr˘ari de select¸ie, este necesar˘a exprimarea funct¸iei cu o variabil˘a
128 LECT¸ IA 9. Multiplexoare ¸si demultiplexoare
Figura 9.25 F
a
, problema 26-a: diagrama V-K ¸si implementare cu MUX 8:1.
reziduu. Pentru aceasta se poate utiliza diagrama V-K, prezentat˘a ˆın figura 7.8. Funct¸ia se rescrie:
F
d
= A · B · C · D + A · B · C + A · B · C + A · B · C · D = m
1
· D + m
3
+ m
2
+ m
4
+ m
5
· D, unde mintermii
m
i
(A, B, C).
Implementarea funct¸iei F
d
cu MUX 8:1 este prezentat˘a in figura 9.26.
Figura 9.26 F
d
, problema 26-d: diagrama V-K ¸si implementare cu MUX 8:1.
27. Minimizat¸i funct¸ia logic˘a ¸si implementat¸i-o cu port¸i NAND. Evaluat¸i ”costul” implemenarii. Propunet¸i o solut¸ie
de eliminare a hazardului combinat¸ional ¸si evaluat¸i costul suplimentar al acesteia. Implementat¸i funct¸ia cu MUX
8:1 ¸si un num˘ar minim de port¸i logice suplimentare.
a) F
a
(A, B, C, D) =
(5, 6, 7, 8, 13, 14, 15) + d(2, 4)
b) F
b
(A, B, C, D) =
(2, 3, 4, 6, 8, 11) + d(5, 7, 15)
Solut¸ie
Orice funct¸ie de 4 intr˘ari se poate implementa cu un MUX 8:1 dac˘a pe intr˘arile de select¸ie se conecteaz˘a 3
variabile de intrare (A, B, C) iar pe intr˘arile de date se conecteaz˘a una din cele 2
2
1
= 4 funct¸ii dependente de
variabila a patra. Aceste funct¸ii sunt 0, 1, D, D. Se remarc˘a faptul a toate aceste funct¸ii se pot realiza cu
maxim un inversor. Implementarea nu necesit˘a minimizare. Reprezentarea funct¸iei ˆın diagrama V-K permite
construirea unei diagrame reduse urmat˘a de trecerea la implementare.
a) Diagrama V-K a funct¸iei considerate, diagrama V-K redus˘a ¸si implementarea cu MUX 8:1 sunt reprezentate
ˆın figura 9.27.
9.4 Pentru cei ce vor a devin˘a profesioni¸sti
Multiplexor 2:1 mo delat cu operator ternar, specificat¸ie contina (cod Verilog)
9.4. Pentru cei ce vor a devin˘a profesioni¸sti 129
Figura 9.27 F
a
, problema 27-a: diagrama V-K, diagrama V-K redus˘a ¸si implementare cu MUX 8:1 a unei funct¸ii de 4 intr˘ari.
assign Y = S ? I1 : I0;
Multiplexor 2:1 modelat cu specificat¸ie de decizie (cod Verilog)
always @(S or I1 or I0)
if (S) Y <= I1; else
Y <= I0;
Multiplexor 4:1 modelat cu specificat¸ie ”case” (cod Verilog)
always @(*)
case (S)
2’b11: Y <= I3;
2’b10: Y <= I2;
2’b01: Y <= I1;
default: Y <= I0;
endcase
Multiplexor 4:1 cu validare (cod Verilog)
always @(*)
if (E)
case (S)
2’b11: Y <= I3;
2’b10: Y <= I2;
2’b01: Y <= I1;
default: Y <= I0;
endcase
else
Y <= ’1b0;
Multiplexor de dimensiune generic˘a (cod Verilog)
parameter N = 4;
wire[N-1:0] S; // selectie
wire[(1<<N)-1:0] I; // date de intrare
wire Y; // iesire
assign Y = I[S];
Demultiplexor 1:2 modelat cu specificat¸ie contina
assign Y1 = S & I;
assign Y0 = ~S & I;
130 LECT¸ IA 9. Multiplexoare ¸si demultiplexoare
Demultiplexor de dimensiune generic˘a
parameter N = 4;
wire[N-1:0] S; // selectie
wire[(1<<N)-1:0] Y; // date de iesire
wire I; // intrare
assign Y = I<<S;
1. a se conceap˘a un circuit de adunare a doi operanzi de 8 bit¸i provenit¸i din 4 surse posibile ¸si stocarea rezultatului
ˆın acelea¸si posibile locat¸ii.
2. a se implementeze funct¸ia F (A, B, C, D, E) =
(3, 6, 7, 10, 11, 19, 22, 26, 27, 30, 31) conectˆand intrarea D pe
intrarea de validare a unui multiplexor 16:1.
Implementat¸i aceea¸si funct¸ie cu un MUX 8:1 cu intrare de validare ¸si un inversor.
Solut¸ie
Diagrama V-K asociat˘a funct¸iei este prezentat˘a ˆın figura 9.28.
Figura 9.28 Diagrama V-K asociat˘a funct¸iei de la problema 2.
O funct¸ie poate implementat˘a cu un multiplexor care are una din intr˘ari conectat˘a la intrarea de validare dac˘a
expresia funct¸iei se scrie sub forma unei funct¸ii AND ˆıntre o intrare ¸si o funct¸ie ce depinde de celelalte variabile.
ˆ
In acest caz, funct¸ia trebuie scris˘a ca F(A, B, C, D, E) = D · G(A, B, C, E).
Din diagrama V-K se observ˘a a funct¸ia F are valoarea 1 numai ˆın asut¸ele pentru care D = 1. Din diagrama
V-K, prin minimizare ¸si excluderea variabilei D, se poate deduce expresia funct¸iei:
G(A, B, C, E) = B · C + C · E + A · B + A · B · C + A · C · E,
G(A, B, C, E) =
(1, 2, 3 , 4, 5, 9, 10, 12, 13, 14, 15).
Ca alternativ˘a analitic˘a, funct¸ia F se poate prelucra astfel:
F (A, B, C, D, E) = A · B · C · D · E + A · B · C · D · E + A · B · C · D · E + A · B · C · D · E + A · B · C · D · E + A ·
B · C · D · E + A · B · C · D · E + A · B · C · D · E + A · B · C · D · E + A · B · C · D · E + A · B · C · D · E =
= D · (A · B · C · E + A · B · C · E + A · B · C · E + A · B · C · E + A · B · C · E + A · B · C · E + A · B · C · E + A ·
B · C · E + A · B · C · E + A · B · C · E + A · B · C · E) =
= D · G(A, B, C, E), unde G(A, B, C, E) =
(1, 2, 3 , 4, 5, 9, 10, 12, 13, 14, 15).
Circuitul de implementare cu MUX 16:1 este prezentat ˆın figura 9.29.
3. Proiectat¸i un multiplexor 16:1 utilizˆand dou˘a multiplexoare 8:1 ¸si un multiplexor 2:1.
Proiectat¸i un multiplexor 16:1 utilizˆand multiplexoare 4:1.
Proiectat¸i un multiplexor 16:1 utilizˆand numai multiplexoare 2:1.
4. Proiectat¸i un circuit care selecteaz˘a o intrare de date din cele 3 intr˘ari existente pe baza unui cod de select¸ie
astfel: AB = 00, selecteaz˘a D
0
, AB = 01, selecteaz˘a D
1
¸si AB = 1X, selecteaz˘a D
2
(s-a notat cu X o valoare
indiferena). Utilizat¸i un circuit multiplexor 2:1.
5. Descriet¸i modul de implementare a unui multiplexor 128:1 utilizˆand circuite multiplexor 16:1.
9.4. Pentru cei ce vor a devin˘a profesioni¸sti 131
Figura 9.29 Circuitul de implementare cu MUX 16:1 cu intrare de validare a funct¸iei de la problema 2.
Descriet¸i modul de implementare a unui multiplexor 128:1 utilizˆand circuite multiplexor 4:1.
Descriet¸i modul de implementare a unui multiplexor 256:1 utilizˆand circuite multiplexor 8:1.
Solut¸ie
Un multiplexor 128:1 are 7 intr˘ari de select¸ie (2
7
= 128), 128 de intr˘ari de date ¸si o ie¸sire.
ˆ
Imp˘art¸ind num˘arul de
intr˘ari de date la num˘arul de intr˘ari de date ale multiplexorului cu care se face implementarea rezult˘a num˘arul de
multiplexoare necesare pentru primul nivel. Sunt necesare 128/16 = 8 multiplexoare 16:1. Cele 8 multiplexoare
de pe primul nivel vor selectate cu 4 bit¸i de intrare (cei mai put¸in semnificativi). Cei mai semnificativi 3 bit¸i
de intrare se vor conecta pe intr˘arile de select¸ie ale unui alt multiplexor 16:1. Acesta va avea intr˘arile de date
conectate la ie¸sirile multiplexoarelor de pe primul nivel. Datorit˘a faptului a pe al doilea nivel se implementeaz˘a
practic un MUX 8:1 cu un MUX 16:1, intrarea de select¸ie cea mai semnificativ˘a se conecteaz˘a la mas˘a (”0”
logic), iar intr˘arile de date cu index ˆıntre 8 ¸si 15 vor indiferente (se vor conecta la mas˘a).
6. Proiectat¸i un demultiplexor 1:32 utilizˆand un num˘ar minim de circuite demultiplexor 1:4 ¸si 1:8.
7. Proiectat¸i un circuit pentru conversia paralel-serie a datelor reprezentate pe 8 bit¸i.
Proiectat¸i un circuit pentru conversia serie-paralel a datelor reprezentate pe 8 bit¸i.
Solut¸ie
Circuitul de conversie a datelor paralel-serie const˘a dintr-un multiplexor 8:1 a arui intr˘ari de select¸ie provin de
la un circuit care genereaz˘a secvent¸ial toate combinat¸iile de 3 bit¸i (num˘ar˘ator). Datele de intrare reprezentate
pe 8 bit¸i se aplic˘a pe intr˘arile de date. Datele seriale se obt¸in pe ie¸sirea multiplexorului.
Circuitul de conversie a datelor serie-paralel const˘a dintr-un demultiplexor 1:8 a arui intr˘ari de select¸ie provin
de la un circuit care genereaz˘a secvent¸ial toate combinat¸iile de 3 bit¸i (num˘ar˘ator). Datele seriale se aplic˘a pe
intrarea demultiplexorului. Datele de ie¸sire reprezentate pe 8 bit¸i se obt¸in pe ie¸sirile demultiplexorului.
ˆ
In cazul funct¸ion˘arii ˆımpreun˘a a circuitelor de conversie paralel-seriel ¸si serie-paralel trebuie asigurat˘a sin-
cronizarea celor dou˘a coduri pentru a se reface corect pozit¸ia bit¸ilor ˆın cuvˆantul de 8 bit¸i. Figura 9.30 prezina
solut¸ia de transmitere a datelor cu serializare-deserializare.
Figura 9.30 Solut¸ia de transmitere a datelor cu serializare-deserializare implementat˘a cu multiplexor-demultiplexor.