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