Giáo trình Kỹ thuật số - Chương 4: Hệ tổ hợp
Trong hai mạch mã hoá đã xét ở trên, tín hiệu đầu vào tồn tại độc
lập tức là không có tình huống có 2 tín hiệu trở lên đồng thời tác động
ở mức logic 1 (nếu ta chọn mức tích cực ở ngõ vào là mức logic 1), do
đó cần phải đặt ra vấn đề ưu tiên.
Vấn đề ưu tiên: Khi có nhiều tín hiệu đồng thời tác động, tín hiệu
nào có mức ưu tiên cao hơn ở thời điểm đang xét sẽ tác động, tức là
nếu ngõ vào có độ ưu tiên cao hơn bằng 1 trong khi những ngõ vào có
độ ưu tiên thấp hơn nếu bằng 1 thì mạch sẽ tạo ra từ mã nhị phân ứng
với ngõ vào có mức độ ưu tiên cao nhất
Mảch so sạnh 1 bit
b
a
2→3
(a > b) = y3
(a = b) = y2
(a < b) = y1
10
0
0
0
1
10
0
1
0
0
y3 y2 y1
Choün mỉïc têch cỉûc åí ngoỵ ra laì mỉïc logic 1. Ta láûp âỉåüc baíng trảng
thại mä taí hoảt âäüng cuía mảch.
Tỉì baíng trảng thại, ta cọ phỉång trçnh logic:
Hçnh 4.31. Så âäư mảch so sạnh 1 bit
1
2
3
1
2
3
1
2
3
a
b
y1(a < b)y1 = a .b
y2 = a .b+ a.b = ba⊕
y2 (a=b)y3 = a. b
y3 (a>b)
Chỉång 4. Hãû täø håüp Trang 113
(A < B) = Y1
(A = B) = Y2
(A > B) = Y3
8→3
b3
Hçnh 4.32. Så âäư khäúi mảch so sạnh nhiãưu bit
a0
a1
a2 a3
b2
b1
b0
4.4.3. Mảch so sạnh nhiãưu bit
Mảch cọ 8 ngoỵ vaìo vaì 3 ngoỵ ra, thỉûc hiãûn so sạnh 2 säú nhë phán 4 bêt
A (a3a2a1a0) vaì B (b3b2b1b0). Cọ hai phỉång phạp thỉûc hiãûn mảch so
sạnh nhiãưu bêt:
- Thỉûc hiãûn trỉûc tiãúp.
- Thỉûc hiãûn mảch so sạnh nhiãưu bêt trãn cå såí mảch so sạnh 1 bêt.
Chụng ta láưn lỉåüt xẹt tỉìng phỉång phạp.
4.4.3.1. Phỉång phạp trỉûc tiãúp
Ta cọ baíng trảng thại hoảt âäüng cuía mảch
INPUT OUTPUT
a3 vaì b3 a2 vaì b2 a1 vaì b1 a0 vaì b A B
< x x X 1 0 0
> x x X 0 0 1
= < x X 1 0 0
= > x X 0 0 1
= = < X 1 0 0
= = > x 0 0 1
= = = < 1 0 0
= = = > 0 0 1
= = = = 0 1 0
Phỉång trçnh logic cuía mảch:
Baìi giaíng Kyỵ Thuáût Säú Trang 114
Y1 = ( A < B)
= (a3 < b3 ) + (a3 = b3 )( a2 < b2 ) + (a3 = b3 )(a2 = b2 )(a1 < b1)
+ (a3 = b3 )(a2 = b2 )(a1 = b1)(a0 < b0 )
Y2 = ( A = B)
= (a3 = b3 )(a2 = b2 ) (a1 = b1 )(a0 = b0 )
Y3 = ( A > B)
= (a3 > b3 ) + (a3 = b3 )( a2 > b2 ) + (a3 = b3 )(a2 = b2 )(a1 > b1)
+ (a3 = b3 )(a2 = b2 )(a1 = b1)(a0 > b0 ).
Så âäư mảch thỉûc hiãûn trãn hçnh 4.33.
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
1
2
3
1
2
3
1
2
3
a3b3
a2>b2a2b0a0<b0
a1>b1a1<b1
a3=b3
a2=b2
a1=b1
a0=b0
Y
Y
Y
Hçnh 4.33. Thỉûc hiãûn mảch so sạnh nhiãưu bêt trỉûc tiãúp
Chỉång 4. Hãû täø håüp Trang 115
4.4.3.2. Phỉång phạp xáy dỉûng trãn cå såí mảch so sạnh 1 bit
Âãø mảch so sạnh hai säú nhë phán 1 bit cọ thãø thỉûc hiãûn cäng viãûc
xáy dỉûng mảch so sạnh hai säú nhë phán nhiãưu bit ta caíi tiãún lải mảch
so sạnh 1 bit nhỉ sau: ngoaìi cạc ngoỵ vaìo vaì ngoỵ ra giäúng nhỉ mảch so
sạnh 1 bit ta âaỵ khaío sạt åí trãn, coìn cọ cạc ngoỵ vaìo âiãưu khiãøn a
b, a = b, våïi så âäư mảch nhỉ sau :
a=b ab
c1 c2 c3
b
a
2→3
( a < b ) = y1
( a = b ) = y2
( a > b ) = y3
Hçnh 4.34. Mảch so sạnh 1 bêt caíi tiãún
Baíng trảng thại mä taí hoảt âäüng cuía mảch so sạnh nhë phán 1 bit
âáưy âuí nhỉ sau:
Ngoỵ vaìo âiãưu khiãøn Ngoỵ vaìo DATA Ngoỵ ra
ab a b (ab)
1 0 0 x x 1 0 0
0 0 1 x x 0 0 1
0 1 0 0 0 0 1 0
0 1 0 0 1 1 0 0
0 1 0 1 0 0 0 1
0 1 0 1 1 0 1 0
Phỉång trçnh logic:
y1 = (a<b) = c1 + c2(a b).
y2 = (a=b) = c2( ba⊕ ).
y3 = (a>b) = c3 + c2(ab).
Dỉûa vaìo vi mảch so sạnh âáưy âuí naìy, ngỉåìi ta thỉûc hiãûn mảch so
sạnh hai säú nhë phán 4 bit bàịng cạch sỉí dủng cạc vi mảch so sạnh 1 bit
âáưy âuí naìy gỉỵa a3 våïi b3, a2 våïi b2, a1 våïi b1, a0 våïi b0 våïi cạch näúi theo
så âäư nhỉ trãn hçnh 4.35.
Baìi giaíng Kyỵ Thuáût Säú Trang 116
Lỉu yï âäúi våïi mảch trãn hçnh 4.35: mảch cọ 3 ngoỵ vaìo âiãưu khiãøn
(A>B), (A=B), (A<B) nãn âãø mảch laìm viãûc âỉåüc thç bàõt buäüc cho
ngoỵ vaìo âiãưu khiãøn (A=B) = 1 (tỉïc laì xem nhỉ a4, a4 tråí vãư trỉåïc bàịng
nhau, nãúu a4 > a4 thç ngoỵ ra A>B).
1 00
A>B
A=B
A<B
b0
a0
b1
a1
b2
a2
b3
a3
(A<B)
(A=B)
(A>B)
Hçnh 4.35. Mảch so sạnh nhiãưu bêt
Chỉång 4. Hãû täø håüp Trang 117
4.5. MẢCH SÄÚ HOÜC
4.5.1. Âải cỉång
Mảch säú hoüc laì mảch cọ chỉïc nàng thỉûc hiãûn cạc phẹp toạn säú hoüc
+, -, x, / cạc säú nhë phán. Âáy laì cå såí âãø xáy dỉûng âån vë luáûn lyï vaì säú
hoüc (ALU) trong µp (µicro Processor) hồûc CPU (Centre Processing
Unit).
4.5.2. Bäü cäüng (Adder)
4.5.2.1. Bäü bạn täøng (HA-Half Adder)
Bäü bạn täøng thỉûc hiãûn cäüng 2 säú nhë phán mäüt bêt.
Quy tàõc cäüng nhỉ sau:
0 + 0 = 0 nhåï 0 s
HA
a0 + 1 = 1 nhåï 0
b c1 + 0 = 1 nhåï 0
Hçnh 4.36. Mảch cäüng 1 bêt1 + 1 = 0 nhåï 1
(a) (b) (s) (c)
Trong âọ a, b laì säú cäüng, s laì täøng, c laì säú nhåï.
Baíng trảng thại mä taí hoảt âäüng cuía mảch vaì phỉång trçnh logic:
s = a. b + a .b = a⊕b a b s c
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
c = a.b
Mảch cäüng naìy chè cho phẹp cäüng hai säú nhë
phán 1 bit maì khäng thỉûc hiãûn cäüng hai säú nhë
phán nhiãưu bit.
1
2
3
1
2
3 S
C
a
b
Hçnh 4.37. Så âäư mảch cäüng bạn pháưn
Baìi giaíng Kyỵ Thuáût Säú Trang 118
4.5.2.2.Bäü täøng (Bäü cäüng toaìn pháưn - FA: Full Adder)
Vãư phỉång diãûn mảch cọ så âäư khäúi nhỉ sau:
an bn Cn-1 Sn Cn
0 0 0 0 0
0 1 0 1 0
1 0 0 1 0
1 1 0 0 1
0 0 1 1 0
0 1 1 0 1
1 0 1 0 1
1 1 1 1 1
Sn
Cn-1
FA bn
an
Cn
Trong âọ:
Hçnh 4.38. Bäü cäüng toaìn pháưn
+ Cn-1 : Säú nhåï cuía láưn cäüng trỉåïc âọ.
+ Cn : Säú nhåï cuía láưn cäüng hiãûn tải.
+ Sn : Täøng hiãûn tải.
Tỉì baíng trảng thại mä taí hoảt âäüng cuía mảch ta viãút âỉåüc phỉång
trçnh logic:
Sn = f (an, bn, Cn-1 )
Cn = f (an, bn, Cn-1 )
Láûp baíng Karnaugh vaì täúi thiãøu họa, ta cọ:
1 1 1
0
anbn
Cn-1 00 01 11 10
0
0 1 0 1
0 1 1
0 0 1 0
11
0
anbn
Cn-1 10 110100
0
CnSn
nnnnnnn baCbCaC ++= −− 11
11
11
−−
−−
+
++=
nnnnnn
nnnnnnn
CbaCba
CbaCbaS
)(1 nnnnnn baCbaC ++= −
1−⊕⊕= nnnn CbaS
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
Hçnh 4.39. Mảch cäüng toaìn pháưn trỉûc tiãúp
Cn-1
Cn
Sn
an bn
Chỉång 4. Hãû täø håüp Trang 119
Hồûc sỉí dủng HA âãø thỉûc hiãûn FA :
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
Sn
Cn
Cn-1
bn
an
Hçnh 4.40. Thỉûc hiãûn mảch cäüng toaìn pháưn tỉì bäü bạn täøng
4.5.3. Bäü trỉì (Subtractor)
4.5.3.1. Bäü bạn trỉì (Bäü trỉì bạn pháưn - HS: Half subtractor)
Bäü bạn trỉì thỉûc hiãûn trỉì 2 säú nhë phán 1 bit.
Quy tàõc trỉì nhỉ sau:
0 - 0 = 0 mỉåün 0 D
HS
a
0 - 1 = 1 mỉåün 1 b B 1 - 0 = 1 mỉåün 0
Hçnh 4.41 Mảch trỉì bạn pháưn 1 - 1 = 0 mỉåün 0
(a) (b) (D) (B)
Trong âọ a laì säú bë trỉì, b laì säú trỉì, D laì hiãûu, B laì säú mỉåün.
Baíng trảng thại mä taí hoảt âäüng :
1
2
3
1
2
3
B
Da
b
a b D B
0 0 0 0
0 1 1 1
1 0 1 0
1 1 0 0
Hçnh 4.42. Så âäư logic
Phỉång trçnh logic :
D = a.b + a .b = a b ⊕
B = a .b
Mảch trỉì naìy chè cho phẹp trỉì hai säú nhë phán 1 bit maì khäng thỉûc
hiãûn viãûc trỉì hai säú nhë phán nhiãưu bit.
Baìi giaíng Kyỵ Thuáût Säú Trang 120
4.5.3.2. Bäü trỉì toaìn pháưn (FS - Full Subtractor)
Mảch cọ så âäư khäúi vaì baíng trảng thại mä taí hoảt âäüng nhỉ sau:
Trong âọ: Bn-1 : Säú mỉåün cuía láưn trỉì trỉåïc âọ.
Bn : Säú mỉåün cuía láưn trỉì hiãûn tải.
Dn : Hiãûu säú hiãûn tải.
an bn Bn-1 Dn Bn
Bn-1
FSbn
an Dn
0 0 0 0 0
0 1 0 1 1
1 0 0 1 0
1 1 0 0 0
0 0 1 1 1
0 1 1 0 1
1 0 1 0 0
1 1 1 1 1
Bn
Hçnh 4.43. Mảch trỉì toaìn pháưn
Láûp baíng Karnaugh vaì täúi thiãøu họa, ta cọ:
Dn
1 1 0
0 1 0 1
0 1
0
anbn
Bn-1 1011 00 01 Bn
1 1 0
0 1 0 0
11
0
anbn
Bn-1 10 11 0100
11
11
−−
−−
+
++=
nnnnnn
nnnnnnn
BbaBba
BbaBbaD
nnnnnnn baBbBaB ++= −− 11
)(1 nnnnnn baBbaB ++= −
1−⊕⊕= nnnn BbaD
Cọ 2 cạch thỉûc hiãûn bäü trỉì toaìn pháưn theo biãøu thỉïc logic âaỵ tçm
âỉåüc: hồûc thỉûc hiãûn trỉûc tiãúp (hçnh 4.44) hồûc sỉí dủng HS âãø thỉûc
hiãûn FS (hçnh 4.45).
Chỉång 4. Hãû täø håüp Trang 121
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
Bn
Dn
Bn-1bn an
Hçnh 4.44. Thỉûc hiãûn mảch trỉì toaìn pháưn trỉûc tiãúp
1
2
3
1
2
3
1
2
3
1
2
31
2
3
Bn
Dn
Bn-1
bn
an
Tỉì bäü cäüng toaìn pháưn, ta xáy dỉûng mảch cäüng hai säú nhë phán nhiãưu
bit bàịng 2 phỉång phạp: Näúi tiãúp vaì Song Song.
Hçnh 4.45. Thỉûc hiãûn FS trãn cå såí HS
Phỉång phạp näúi tiãúp:
Thanh ghi a Thanh ghi s
a3 a2 a1 a0
b3 b2 b1 b0
s3 s2 s1 s0
FA
DFF
Ck
C3
clr
Pr
C-1
Thanh ghi b
Hçnh 4.46. Mảch cäüng 2 säú nhë phán nhiãưu bit theo kiãøu näúi tiãúp
Baìi giaíng Kyỵ Thuáût Säú Trang 122
Thanh ghi A chỉïa säú A : a3, a2, a1, a0
Thanh ghi B chỉïa säú B : b3, b2, b1, b0
Thanh ghi S chỉïa säú S : s3, s2, s1, s0
Nhỉåüc âiãøm cuía phỉång phạp naìy laì thåìi gian thỉûc hiãûn láu.
Phỉång phạp song song:
Âãø khàõc phủc nhỉåüc âiãøm âọ, ngỉåìi ta duìng phỉång phạp cäüng song
song.
Do tên hiãûu âiãưu khiãøn Ck (âiãưu khiãøn cäüng) âäưng thåìi nãn thåìi gian
thỉûc hiãûn phẹp cäüng nhanh hån phỉång phạp näúi tiãúp, song do säú nhåï
váùn phaíi chuyãøn näúi tiãúp nãn aính hỉåỵng täúc âäü xỉí lyï.
Vç váûy ngỉåìi ta caíi tiãún mảch trãn thaình mảch cäüng song song våïi
säú nhåï nhçn tháúy trỉåïc (mảch cäüng nhåï nhanh).
FA3
s3 c3
b3 a3
FA2
FA1
FA0
s0 c0
b0 a0
s1 c1
b1 a1
s2 c2
b2 a2
Hçnh 4.47. Mảch cäüng våïi säú nhåï nhçn tháúy trỉåïc
Bàịng cạch dỉûa vaìo sỉû phán têch mảch cäüng toaìn pháưn nhỉ sau:
Ta cọ:
Sn = ( an ⊕ bn ) ⊕ Cn-1
Cn = an. bn + ( an ⊕ bn )Cn-1
Suy ra:
Sn = Qn⊕ Cn-1
Trong âọ:
Pn = an bn ; Qn = an ⊕ bn ;
Cn = Pn + Qn Cn-1
Khi n= 0:
S0 = Q0⊕ C-1
Chỉång 4. Hãû täø håüp Trang 123
C0 = P0 + Q0 C-1
Khi n=1:
S1 = Q1⊕ C0 = Q1 ⊕ ( p0 + Q0 C-1 )
C1 = P1 + Q1 C0= p1 + Q1 ( p0 + Q0 C-1 )
Khi n=2:
S2 = Q2⊕ C1 = Q2 ⊕ [ p1 + Q1 ( p0 + Q0 C-1 )]
C2 = P2 + Q2 C1= p2 + Q2 [ p1 + Q1( p0 + Q0 C-1 )]
Khi n=3:
S3 = Q3⊕ C2 = Q3 ⊕ { p2 + Q2 [ p1 + Q1( p0 + Q0 C-1 )]}
C3 = P3 + Q3 C2= p3 + Q3 .{p2 + Q2 [ p1 + Q1( p0 + Q0 C-1 )]}
Âáy chênh laì cå såí tênh toạn âãø tảo ra säú nhåï c1, c2, c3 tuìy thuäüc an,
bn nãn lục âọ seỵ tçm âỉåüc Sn. Trãn thỉûc tãú ngỉåìi ta âaỵ chãú tảo ra cạc vi
mảch cäüng nhåï nhanh, vê dủ: IC 7483.
File đính kèm:
giao_trinh_ky_thuat_so_chuong_4_he_to_hop.pdf

