You are on page 1of 37

Chöông 3: HEÄ TOÅ HÔÏP

I. Giôùi thieäu – Caùch thieát keá heä toå


hôïp:
Maïch logic ñöôïc chia laøm 2 loaïi:
- Heä toå hôïp (Combinational Circuit)
- Heä tuaàn töï (Sequential Circuit).
Heä toå hôïp laø maïch maø caùc ngoõ ra
chæ phuï thuoäc vaøo giaù trò cuûa caùc ngoõ
vaøo. Moïi söï thay ñoåi cuûa ngoõ vaøo seõ
laøm ngoõ ra thay ñoåi theo.

Ngoõ COÅN Ngoõ ra


vaøo G (OUTPUT
(INPUT) LOGIC )

1
Caùc böôùc thieát keá:
- Phaùt bieåu baøi toaùn.
ñònh soá bieán ngoõ vaøo vaø soá bieán ngoõ ra.
- Thaønh laäp baûng giaù trò chæ roõ moái
quan heä giöõa ngoõ vaøo vaø ngoõ ra.

Ngoõ vaøo Ngoõ ra


Xn-1 … X1 X0 Ym-1 … Y1 Y0
0 … 0 0

1 … 1 1

- Tìm bieåu thöùc ruùt goïn cuûa töøng ngoõ


ra phuï thuoäc vaøo caùc bieán ngoõ vaøo.
- Thöïc hieän sô ñoà logic. 2
Vd: Thieát keá heä toå hôïp coù 3 ngoõ vaøo X,
Y, Z; vaø 2 ngoõ ra F, G.
- Ngoõ ra F laø 1 neáu nhö 3 ngoõ vaøo coù
soá bit 1 nhieàu hôn soá bit 0; ngöôïc laïi F = 0.
- Ngoõ ra G laø 1 neáu nhö giaù trò nhò phaân
cuûa 3 ngoõ vaøo lôùn hôn 1 vaø nhoû hôn 6;
ngöôïc laïi G = 0. F XY
0 0 1 1 XY
X Y Z F G Z
0 0 1 1 0
0 0 0 0
0 0 0 1 1 1 1
0 0 0 1 YZ XZ
1
F=XY+YZ+X
0 1
G XY Z
0 1 1
Z 0 0 1 1
0 1 0 1
0 0 1 1 0 1
1 1 1
1 0 XY 1 1 1 XY
0 3
1 0 1 0 G=XY+XY= X
F=XY+YZ+X G=XY+XY= X
Z ⊕ Y
X

Y
F

4
Vd: Thieát keá
caû 2n toå hôïp cuûa ngoõ vaøo, thì taïi caùc toå
heä toå hôïp coù
hôïp khoâng söû duïng ñoù ngoõ ra coù giaù trò
ngoõ vaøo bieåu
tuøy ñònh.
dieãn cho 1 soá A B C F2 F1
maõ BCD. Neáu 0 D0 0 F00 0
giaù trò ngoõ 0 0 0
vaøo nhoû hôn 3 0 0 0 0 11
thì ngoõ ra coù 1 0000
giaù trò baèng 0 0 1 0 0
bình phöông giaù 0 0 10
trò ngoõ vaøo; 0 0 1 1 0
ngöôïc laïi giaù 1 0 1
0 1 0 1 1
trò ngoõ ra baèng
0 0 0
giaù trò ngoõ 1 X0
F2 = A + B C D + B C D 0 1 0 X
vaøo tröø ñi 3. 1 11 1
X
F1 = A D + B C D + B C D 0 1 1 X 0X
0 X X
F0 = A D + B D + A B C D 0 1 1 X X 5
1 X X
Boä coäng - tröø nhò phaân:
1. Boä coäng (Adder):
Boä coäng
Boäbaùn
coängphaàn
baùn(Half
phaànAdder – H.A):
laø heä toå hôïp
coù nhieäm vuï thöïc hieän pheùp coäng soá
hoïc x + y (x, y laø 2 bit nhò phaân ngoõ
vaøo); heä coù 2 ngoõ ra: bit toång S (Sum)
vaø bit nhôù C (Carry). S = xy + xy =
x S x⊕ y
H.A C= xy
y C
x
S
x y C S
y
0 0
0 0
0 0
1 C
1 1 6
1 0
Boä coängBoä
toaøn phaàn
coäng (Full phaàn
toaøn Adder –thực
F.A):hiện pheùp
coäng soá hoïc 3 bit x + y + z (z bieåu dieãn cho
bit nhôù töø vị trí coù troïng soá nhoû hôn gôûi
tôùi) S
x S xy
0 0 1 1
z
y F.A 0 0 1 1 0 1
z C 1 1 1
S = xyz + xyz +xy
x y C S z+xyz
0 z0 0 0 C
0 0 1
xy
0 0 1 1
0 0 0 1 z
0 0 1 1
1 0
1 1 0
0 1 0 1 1 1 1 1
0 1 0
0 1 1 0 C = xy +xz+
1 1 1 yz 7
S = xyz + xyz +xy C = xy +xz+
z+= x yzz(x y + x y) + z yz = xy +xyz+xy
(x y + x y) z+= x yxzy (1 + z) + z (x
= z (x ⊕ y) + z (x ⊕ y)
S = z ⊕ (x yC+ =x y)x y + z (x
⊕ y) ⊕ y)

y S

C
z
8
2. Boä tröø (Subtractor):
Boä tröø baùn
Boä phaàn
tröø baùn (Half
phaàn Subtractor
coù nhieäm– H.S):
vuï
thöïc hieän pheùp tröø soá hoïc x - y (x, y laø
2 bit nhò phaân ngoõ vaøo); heä coù 2 ngoõ
ra: bit hieäu D (Difference) vaø bit möôïn B
(Borrow).
x D D = xy + xy =
H.S x⊕ y
y B B = xy

x
x y B D D
0 0 y
0 1
0
0 0
1 B
1 1
0
9
1 0
Boä tröø toaøn phaàn (Full Subtractor – F.S):
Boä tröø toaøn phaàn thực hiện pheùp tröø
soá hoïc 3 bit x - y - z (z bieåu dieãn cho bit
möôïn töø ví trò coù troïng soá nhoû hôn)
D
x D xy
0 0 1 1
z
0 0 1 1 0 1
y F.S
z B 1 1 1
S = xyz + xyz +xy
x y B D z + x ySz = z ⊕ (x
⊕ y)
0 z0 0 0
0 1 1
B
xy
0 0 1 1 0 0 1 1
z
1 1 0 0 0 1 1 1 0
0 1 0 1
1 1 1 1
0 0 0
0 1 0 0 C = xy +xz+
1 1 1 y Cz = x y + z (x 10
oä coäng/tröø nhò phaân song song:
a. Boä coäng nhò phaân:
C3 C2 C1
M: M3 M2
+ M1 M0
N: N3 N2
N1 N0
C4 S3 S2 S1 S0
M3 M2 M1 M0
N3 N2 N1 N0

x y x y x y x y
F.A C3 F.A C2 F.A C1 F.A C0
C z C z C z C z
=
S S S S 0
7428
3
C S S S S 11
4 3 2 1 0
b. Boä tröø nhò phaân:
- Söû duïng caùc boä tröø toaøn
phaàn
- ThöïcF.Shieän baèng pheùp coäng
vôùi
Mbuø
– N 2=cuûa
M +soá tröø
Buø_2(N) = M +
Buø_1(N) + 1
M3 M2 M1 M0
N3 N2 N1 N0

x y x y x y x y
F.A C3 F.A C2 F.A C1 F.A C0
C z C z C z C z
=
S S S S 1

C S S S S
4 3 2 1 0
Keát quaû: - C4 = 1 keát quaû laø soá döông 12
- C4 = 0 keát quaû laø soá aâm
. Boä coäng/tröø nhò phaân:

Pheùp C0 yi Ngoõ vaøo


toaùn ñieàu
COÄN 0 T = khieån
0: C0 =
G
TRÖØ N
1i Coäng
T = 1: T
yi = T⊕
M3 N3 N
M2i N2 TröøM1 N1 N
M0 N0
i T

x y x y x y x y
F.A C3 F.A C2 F.A C1 F.A C0
C z C z C z C z
S S S S

C S S S S 13
4 3 2 1 0
Heä chuyeån maõ (Code Conversion):
- Heä chuyeån maõ laø heä toå hôïp coù
nhieäm vuï laøm cho 2 heä thoáng töông thích
vôùi nhau, maëc duø moãi heä thoáng duøng
maõ nhò phaân khaùc nhau.

Heä
Maõ chuye Maõ
nhò phaân A ån nhò phaân B
maõ

- Heä chuyeån maõ coù ngoõ vaøo cung caáp


caùc toå hôïp maõ nhò phaân A vaø caùc ngoõ ra
taïo ra caùc toå hôïp maõ nhò phaân B. Nhö
vaäy, ngoõ vaøo vaø ngoõ ra phaûi coù soá
löôïng töø maõ baèng nhau.
14
át keá heä chuyeån maõ töø maõ BCD thaønh maõ BC
A B C W X Y W = A + B (C +
0 D
0 0 Z 0 1
0 D)
X = B ⊕ (C +
0 1 D)
Y=C⊕ D
0 0 0 0 1 0
1 0 Z=D
0 0 1 0 1 0
A W
0 1
0 0 1 0 1 1 B
1 0
0 1 0 0 1 1
0 1
C X
0 1 0 1 X0 X0 X
X
1 X X 0X X
0 1 1 1 X 0X 0X
D Y
0 X X 1X X
0 1 1 1 0X 1
Z
1 X X 0X X 15
1 0 0 1 X0 X1 X
X
Boä giaûi maõ (DECODER):
1. Giôùi thieäu:
- Boä giaûi maõ laø heä chuyeån maõ coù
nhieäm vuï chuyeån töø maõ nhò phaân cô
baûn n bit ôû ngoõ vaøo thaønh maõ nhò
phaân 1 trong m ôû ngoõ ra.
X0 Y0
Maõ X1 Y1 Maõ
nhò phaân 1 trong m

Xn-1 Ym-1
m=2 n

- Với giaù trị i của tổ hợp nhị phaân ở ngoõ


vaøo, thì ngoõ ra Yi sẽ tích cực vaø caùc ngoõ
ra coøn lại sẽ khoâng tích cực.
- Coù 2 daïng: ngoõ ra tích cöïc cao (möùc 1)
16
vaø ngoõ ra tích cöïc thaáp (möùc 0).
Boä giaûi maõ ngoõ ra tích cöïc cao:
X1 X0 Y3 Y2 Y1 Y0
Y0
X0 (LSB) 0 0 0 0
Y1
0 1
Y2 0 0 0 1
X1 1 0
Y3
1 0 1 0
Y0 = X 1 X0 = 0 0
Y0
1 1 0 0
m0
Y1 = X 1 X0 = X0 1 0
m1 Y1
Y2 = X 1 X0 =
m2 Y2
Y3 = X 1 X0 = X1
m3
Ngoõ ra: Yi = m i Y3
17
(i = 0, 1, ..,
Boä giaûi maõ ngoõ ra tích cöïc thaáp:
X1 X0 Y3 Y2 Y1 Y0
Y0
X0 (LSB) 0 1 1 1
Y1
0 0
Y2 0 1 1 0
X1 1 1
Y3
1 1 0 1
Y0 = X 1 + X0 = M 0 0 1
Y0
1 0 1 1
= m0
Y1 = X 1 + X0 = M 1 X0 1 1
= m1 Y1
Y2 = X 1 + X0 = M 2
= m2 Y2
Y3 = X 1 + X0 = M 3 X1
= m3
Ngoõ ra: Yi = Mi Y3
18
(i = 0, 1, ..,
Boä giaûi maõ coù ngoõ vaøo cho pheùp:
- Ngoaøi caùc ngoõ vaøo döõ lieäu, boä giaûi
maõ coù theå coù 1 hay nhieàu ngoõ vaøo cho
- Khi caùc ngoõ vaøo cho pheùp ôû traïng
pheùp.
thaùi tích cöïc thì maïch giaûi maõ môùi ñöôïc
hoaït ñoäng. Ngöôïc laïi, maïch giaûi maõ seõ
khoâng hoaït ñoäng; khi ñoù caùc ngoõ ra ñeàu
ôû traïng thaùi khoâng tích cöïc.
X0 Y0
(LSB)
Y0
Y1
X1 X0
Y2 Y1
Y3
EN Y2
EN X1 Y3 Y2 Y1 X1
0 X0 X 0 Y00 0
X 0 Y3
1 0 0 0 0
0 1 EN 19
1 0 0 0 1
2. IC giaûi maõ:
a. IC 74139: goàm 2 boä giaûi maõ 2 sang 4
ngoõ ra tích cöïc thaáp

2 4
1A 1Y
3 (LSB) 0 5

1B 1Y 6 G B A Y3 Y2 Y1
1 1 1 X 1 Y10 1
7
1Y X 1
1G 0 0 1 1 1
1
14
2A 2Y
2
2 0 0
1 (LSB) 1Y
0 1 0 0 1 1 0
1
3 1 1
2B 2Y
3 1
0 0 1 1 0 1
15 1
9 0 1
2Y 0 1 0 1 1
2G 1 1 20
2
b. IC 74138: boä giaûi maõ 3 sang 8 ngoõ ra
tích cöïc thaáp

1
1 Y0 5
A (LSB) G1 G2A G2B C B Y7 Y6 Y5 Y4 Y3 Y2 Y1
1
2 Y1 4
B 1 0 X AX X Y
10 1 1 1 1
3 Y2 3 X X 1 1 1
C 1 X 1 X X 1 1 1 1 1
Y3 2 X X 1 1 1
1 X X 1 X 1 1 1 1 1
Y4 1
6 X X 1 1 1
G1 1
Y5 0
1 0 0 0 1 1 1 1 1
5
G2A 9 0 0 1 1 0
4 Y6 1 0 0 0 1 1 1 1 1
G2B 7 0 1 1 0 1
Y7 1 0 0 0 1 1 1 1 1
1 0 0 1 1
1 0 0 0 1 1 1 1 0
1 1 1 1 1 21
1 0 0 1 1 1 1 0 1
duïng boä giaûi maõ thöïc hieän haøm Boole:
Ngoõ ra cuûa boä giaûi maõ laø minterm
(ngoõ ra tích cöïc cao) hoaëc maxterm (ngoõ ra
tích cöïc thaáp) cuûa n bieán ngoõ vaøo. Do
ñoù, ta coù theå söû duïng boä giaûi maõ thöïc
hieän haøm Boole theo daïng chính taéc.
74138
(x, y, z) = ∑ (2, 5, 7) z Y0
A (LSB) F2
= m 2 + m 5 + m7 Y1
y B
= M2 + M5 + M7
x Y2
C
= M2 M 5 M 7
Y3
Y4
1 G1 F1
(x, y, z) = ∏ (0, 1, 4) Y5
0 G2A
= M0 M1 M4 Y6
0 G2B
Y7 22
Boä maõ hoùa (ENCODER):
1. Giôùi thieäu:
- Encoder laø heä chuyeån maõ thöïc hieän hoaït
ñoäng ngöôïc laïi vôùi decoder. Nghóa laø
encoder coù m ngoõ vaøo theo maõ nhò phaân
1 trong m vaø n ngoõ ra theo maõ nhò phaân cô
- Vôùi(vôùi
baûn ngoõ m vaøo
≤ 2n).Ii ñöôïc tích cöïc thì ngoõ ra
chính laø toå hôïp giaù trò nhò phaân i töông
Z1 = I 3 +
öùng.
I2
I0
Z0 = I3 +
I1 (LSB) Z0 I1
I2 Z1 I3
I3
Z1
I2
I3 I2 I1 I0 Z1 Z0
0 0 0 0 0
1 0 1
Z0
0 0 1 1 0 I1 23
0 1 1
ä maõ hoùa coù öu tieân (Priority Encoder):
Boä maõ hoùa coù öu tieân laø maïch maõ
hoùa sao cho neáu coù nhieàu hôn 1 ngoõ vaøo
cuøng tích cöïc thì ngoõ ra seõ laø giaù trò nhò
phaân cuûa ngoõ vaøo coù Z 1 =
öu I3 +
tieân I2 nhaát.
cao
I
Z0 = I3 + I2 I1
0
(LSB) Z0
I1
V = I3 + I 2 + I 1
Z1
+ I0
I2
V I3 Z1
I3
I2
I3 I2 I1 I0 Z1 Z0
0 0 0 X VX I1
0 0 Z0
0 0 0 0 0
1 1
0 0 1 0 1 V
X 1 I0
öù töï
0 öu
1 tieân:
X I3 > I02 >
1 I1 > I0 24
. IC maõ hoùa öu tieân 8 →3 (74148):

5 EI EI I7 I6 I5 I4 I3 I2 I1 A2 A1 A0 GS
I1 EO
6 0 X X X X X X X 1 1 1
4 I7 A2
7 X 1 1
3
I6 A1 0 0 X X X X X 0 0 0
2 9
(LSB) X X 0 1
1
I5 A0 0 1 0 X X X X 0 0 1
13 I4
1 X X 0 1
12 I3 GS 4 0 1 1 0 X X X 0 1 0
1
11 I2 EO 5 X X 0 1
10 I1 0 1 1 1 0 X X 0 1 1
X X 0 1
I0
0 1 1 1 1 0 X 1 0 0
X X 0 1
0 1 1 1 1 1 0 1 0 1 25
X X 0 1
Boä doàn keânh (Multiplexer - MUX):
1. Giôùi
- MUXthieäu:
2n →1 laø heä toå hôïp coù nhiều ngoõ
vaøo nhöng chæ coù
1 ngoõ ra. Ngoõ vaøo goàm 2 nhoùm: m ngoõ
vaøo döõ lieäu (data input) vaø n ngoõ vaøo
löïa choïn (select input).
D0
Ngoõ vaøo D1
döõ lieäu
(Data Input) :
Dm-1
Y
S0(LSB)
Ngoõ vaøo S1
löïa choïn
(Select Input) :
Sn-1
- Vôùi 1 giaù trò i cuûa toå hôïp nhò phaân
caùc ngoõ vaøo löïa choïn, ngoõ vaøo döõ
lieäu Di seõ ñöôïc choïn ñöa ñeán ngoõ ra. (m 26
n
Y = S 1 S0 D 0 + S1 S 0 D 1 + S1 S 0 D 2
* Boä MUX 4 → 1:
= m0 D+ S S0mD13D1 + m2
0 +1

D0 D2 + m3 D3
= ∑ m i Di (i = 0, 1, 2, 3)
D1
D2 S1
Y
D3
S0
S0(LSB)
S1
D0
S1 S0 Y
0 D0 D1 Y
0 D1
0 D2 D2
1 D3
1
0 D3
1
1
Toång quaùt: Y = ∑ mi Di (vôùi i = 0, 1, .., 2n-1)
27
2. IC doàn keânh:
a. 74LS153: goàm 2 boä MUX 4 →1

14
A(LSB)
2
B
1
1G
6
1C0 G B A Y
5
1C1 7 1 X 0
4 1
1C2 X C0
3 Y
0 0 C1
1C3
15
0 C2
2G 0 0
10
2C0 C3
11 1
12
2C1 2 9 0 1
13 2C2 Y 0
2C3 0 1
1 28
b. 74151: boä MUX 8 →1

7
EN
11
A(LSB) EN C B Y
10
B 1 A
X X 0
9
C X D0
4 5
D0 Y 0 0 0 D1
3
D1 0 D2
2 6
D2 Y 0 0 0
1 D3
D3 1
15 D4
0 0 1
14 D4 D5
13
0
D5 D6
0 0 1
12 D6 1 D7
D7 0 1 0
29
0
û duïng boä MUX thöïc hieän haøm Boole:
Boä MUX 2n thöïc hieän haøm Boole n bieán:

F(x, y, z) = ∑ (0, 1,
4, =
7) m0 1++ mm 0 EN
1 1m
1 + +4 m 07 + m3
+ 2m
0 z A(LSB)
+ m4 1 + m5 0 + m6 0 y B
x C
+ m7 1 F
1 D0 Y
Y ==∑mm i D
0D 0 i+ m1D1 + m2D2 +
D1
m3D3 0 Y
D2
+ m4D4 + m5D5 + m6D6
D3
+ m7D7
D4
D0 = D1 = D4 = D7 = 1 D5
D2 = D3 = D5 = D6 D6
=0 D7 30
Boä MUX 2n thöïc hieän haøm Boole n+1 bieán:
x, y, z) = ∑ (0, 1, 4, 7)
= xyz+xyz+xy y A(LSB)
z
= + xx yy .1
z + x y .0 + x y .z x B
+
= xm y 0.z.1 + m1 .0 + m2 .z + 0 1G
1
Y m .z D + m D + m D +
=3 m 1C0
0 0 1 1 2 2
0 1C1 F
m3D3 1
D0 = 1; D1 = 0; D2 = z; z 1C2 Y
D3 = z 1C3
x y z F 2G
0 0 0 1 2C0
0 0 1 1
D0 =
0 1 0 0 1 2C1 2
0 1 1 0 D1 = 2C2 Y
1 0 0 1 0 2C3
1 0 1 0
D2 = z
1 1 0 0 31
1 1 1 1 D3 = z
Boä phaân keânh (DEMUX):
1. Giôùi thieäu:
- Boä DEMUX 1→2n coù chöùc naêng thöïc
hieän hoaït ñoäng ngöôïc laïi vôùi boä MUX.
Maïch coù 1 ngoõ vaøo döõ lieäu, n ngoõ vaøo
löïa choïn vaø 2n ngoõ ra.
Y0
Ngoõ vaøo
D Y1 Ngoõ ra
döõ lieäu
(Data Input) :
Ym-1
S0(LSB)
Ngoõ vaøo S1
löïa choïn
(Select Input) :
Sn-1
- Vôùi 1 giaù trò i cuûa toå hôïp nhò phaân
caùc ngoõ vaøo löïa choïn, ngoõ vaøo döõ 32
lieäu D seõ ñöôïc ñöa ñeán ngoõ ra Y .
* Boä DEMUX 1 → 4:
S1 S0 Y3 Y2 Y1 Y0
D Y0
0 0 0 0
Y1 0 D
S0
Y2 0 0 0 D
(LSB) 1 0
S1 Y3 1 0 D 0
D 0 0
Y0 = S 1 S0 D = 1 D 0 0 Y0
m0 D 1 0
Y1 = S 1 S0 D = S1 Y1
m1 D
Y2 = S 1 S0 D = Y2
S0
m2 D
Y3 = S 1 S0 D = Y3
m3 D 33
haân keânh 74LS155: goàm 2 boä phaân keânh 1 → 4

2 7 B A 1G 1Y0 1Y1 1Y2


1G 1Y
X 11C 1 1Y 13 1
1 6
1C 0 X X 1
1Y 5 X X 1 1 1
X 0 1
1
13 4 0 0 0 1 1
A (LSB) 0 1 1
1Y
3 0 0 1 0 1
B 2Y
2 9
B
1 A 12G 2Y1
0 2Y1 2Y2

1Y
0 1 1
X 12C
0 1
1 2Y 1
13 0
1
0 0
X 1
X 1
1
14
2G 2Y
3 1 1 0 1 1 1
1 X X 1 1 1
15 1 1 1
X 1
1 0
1
2C
2Y
2 0 0 0 1 1
0 0 1
2
0 0 1 0 134
2Y 1 0 1
Boä so saùnh đoä lôùn (Comparator):
1. Giôùi thieäu:
- Boä so saùnh laø heä toå hôïp coù nhieäm vuï
so saùnh 2 soá nhị phaân khoâng daáu A vaø B
(moãi soá n bit).
- Boä so saùnh coù 3 ngoõ ra (A>B), (A=B) vaø
(A<B); chæ coù 1 ngoõ ra tích cöïc theo keát quaû
so saùnh.
* Boä so saùnh
A: A23 A bit:
1
A (A>B)
A0
B: B2 B1 (A=B)
Söû duïng bieán trung B (A<B)
B0
gian:
xi = Ai ⊕ Bi (i =
0, 1, 2)
(A = B) = x2 x1 xo
(A > B) = A2 B2 + x2 A1 B1
+x x1B)
(A 2< A0 B=0 A B + x A B = (A=B) + 35
2 2 2 1 1
A0 x0
B0
A1 x1 (A=B
B1 )
A2 x2
B2 (A<B
)

(A>B
)

36
2. IC so saùnh 74LS85:

2 ALTBIN
3
AEQBIN AGTBOUT = (A>B) + (A=B)AGTBIN
4
AGTBIN
AEQBOUT = (A=B) AEQBIN
10
A0 ALTBOUT = (A<B) + (A=B)ALTBIN
12
13
A1
15 A2 7
ALTBOU
A3 T 6
9
B0 AEQBOU 5
1 T
1 B1
1 AGTBOU
41 B2
T
B3

37

You might also like