Bài Giảng Kỹ Thuật Số
Chương 1
CHƯƠNG 1. HỆ THỐNG SỐ ĐẾM 1.1.
CƠ SỐ - CHUYỂN ĐỔI CƠ SỐ
1.1.1. Khái niệm Baát cöù moät soá nguyeân döông R (R>1) ñeàu coù theå ñöôïc choïn laøm cô soá cho moät heä thoáng soá. Neáu heä thoáng coù cô soá R thì caùc soá töø 0 ñeán (R-1) ñöôïc söû duïng. Ví duï: neáu R=8 thì caùc chöõ soá caàn thieát laø 0,1,2,3,4,5,6,7. Caùc heä thoáng cô soá thoâng duïng trong kyõ thuaät soá: •
Thaäp phaân (cô soá 10).
•
Nhò phaân (cô soá 2).
•
Baùt phaân (cô soá 8).
•
Thaäp luïc phaân (cô soá 16).
Một hệ thống với cơ số R được biểu diễn dưới dạng (…a3a2a1a0 a-1a-2a-3…)R Phần nguyên
Phần thập phân
Khai trieån theo haøm muõ cuûa R. N =(a3a2a1a0a-1a-2a-3)R = a3.R3 + a2.R2 + a1.R1 + a0.R0 + a-1.R-1 + a-2.R-2 + a-3.R-3 Vôùi caùc cô soá lôùn hôn 10 thì caàn phaûi theâm caùc kyù hieäu ñeå bieåu hieän caùc soá lôùn hôn 10. Ví duï heä thaäp luïc phaân (hex) coù cô soá 16 thì A bieåu thò 10, B bieåu thò 11,…, F bieåu thò 15. Đổi giữa các cơ số Phần nguyên và phần thập phân được đổi một cách riêng biệt Phần nguyên được đổi bằng cách sử dụng phép chia lặp cho cơ số mới và sử dụng chuỗi các số dư phát sinh để tạo ra số mới. Phép tính số học được thực hiện trên các số hạng của cơ số cũ Phần thập phân được đổi bằng cách nhân lặp lại cho cơ số mới, sử dụng các số nguyên được tạo ra để biểu thị phân số được chuyển đổi, phép tính số học được thực hiện trên các cơ số cũ
GV: Nguyễn Trọng Hải
Trang 4
Bài Giảng Kỹ Thuật Số
Chương 1
Ví dụ: Biến đổi phần nguyên trong hệ cơ số 10 sang hệ cơ số R N = (anan-1…a2a1a0)R = an.Rn + an-1.Rn-1 + … + a2.R2 + a1.R1 + a0 Neáu chia N cho R, nhaän ñöôïc soá dö laø a0 a N = an.Rn-1 + an-1.Rn-2 + … + a2.R1 + a1 + 0 = Q1 + soá dö a0 R R
Chia Q1 cho R Q1 a = an.Rn-2 + an-1.Rn-3 + … + a3.R1 + a2 + 1 = Q2 + soá dö a1 R R
Quaù trình treân ñöôïc thöïc hieän tieáp tuïc cho ñeán khi tìm ñöôïc taát caû caùc heä soá an Ví dụ: Biến đổi phần thập phân của hệ cơ số 10 sang hệ cơ số R F = (a-1a-2a-3…a-m)R = a-1.R-1 + a-2.R-2 + a-3.R-3 +… + a-m.R-m Nhaân F vôùi R FR = a-1 + a-2.R-1 + a-3.R-2 +… + a-m.R-m+1 = a-1 + F1 Vôùi a-1 laø phaàn nguyeân, F1 laø phaàn leû cuûa pheùp nhaân Tieáp tuïc nhaân R vôùi F1 F1.R = a-2 + a-3.R-1 + a-4.R-2 + … + a-m.R-m+2 = a-2 + F2 Tieáp tuïc quaù trình cho ñeán khi xaùc ñònh heát caùc heä soá a-m Biến đổi giữa 2 cơ số không phải là cơ số 10 có thể thực hiện dễ dàng bằng cách đầu tiên biến đổi sang cơ số 10 rồi biến đổi tiếp từ cơ số 10 sang cơ số mới. 1.1.2. Hệ thập phân (hệ cơ số 10) Heä thaäp phaân ñöôïc keát hôïp bôûi 10 chöõ soá: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Moät chöõ soá trong heä thaäp phaân ñöôïc bieåu dieãn theo caùc soá muõ cuûa 10. Troïng soá
103 102 101 100
5 MSD
3
4
6
10-1 10-2
,
Ñieåm thaäp phaân
7 2 LSD
Soá mang troïng soá lôùn nhaát goïi laø MSD (most significant digit) Soá mang troïng soá nhoû nhaát goïi laø LSD (least significant digit) Ví dụ: Soá 5346,72 bieåu dieãn nhö sau: 5346,72 = 5.103 + 3.102 + 4.10 + 6 + 7.10-1 + 2.10-2
GV: Nguyễn Trọng Hải
Trang 5
Bài Giảng Kỹ Thuật Số •
Chương 1
Ñeám trong heä thaäp phaân: 0 1 2 3 4 5 6 7 8 9
10 11 12 13 14
100 101 102 103 104 105 106 107 108 109
99
Toång quaùt vôùi N chöõ soá coù theå ñeám ñöôïc 10N soá khaùc nhau, bao goàm caû soá 0. Soá thaäp phaân lôùn nhaát laø 10N – 1. 1.1.3. Hệ nhị phân (hệ cơ số 2) Heä nhò phaân duøng hai chöõ soá 0, 1. Moät soá trong heä nhò phaân ñöôïc bieåu dieãn theo soá muõ cuûa 2. Troïng soá
23
22 21 20 2-1 2-2 2-3
1 0 MSB
1 1 1 0 1 Ñieåm nhò phaân
LSB
Moät chöõ soá nhò phaân goïi laø bit. Chuoãi 4 bit nhò phaân goïi laø nibble. Chuoãi 8 bit goïi laø byte. Chuoãi 16 bit goïi laø word. Chuoãi 32 bit goïi laø double word. Chöõ soá nhò phaân beân phaûi nhaát cuûa chuoãi bit goïi laø bit coù yù nghóa nhoû nhaát (least significant bit – LSB) Chöõ soá nhò phaân beân traùi nhaát cuûa chuoãi bit goïi laø bit coù yù nghóa lôùn nhaát (most significant bit – MSB). Thöôøng duøng chöõ B cuoái chuoãi bit ñeå xaùc ñònh ñoù laø soá nhò phaân. Ví dụ: Soá 1011,101B bieåu dieãn giaù trò soá: 1011,101B = 1.23 + 0.22 + 1.21 +1.20 + 1.2-1 + 0.2-2 + 1.2-3
GV: Nguyễn Trọng Hải
Trang 6
Bài Giảng Kỹ Thuật Số •
Chương 1
Ñeám trong heä nhò phaân Xeùt boä ñeám 4 bit, baét ñaàu vôùi taát caû caùc bit = 0 Troïng soá
23 = 8
22 = 4
21 = 2
20 = 1
0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Cuõng nhö trong heä thaäp phaân, neáu duøng N bit seõ ñeám ñöôïc 2N laàn. •
Chuyeån soá nhò phaân thaønh soá thaäp phaân: Phương pháp: Coäng troïng soá caùc bit 1 Ví dụ: 1011,11B = 1.23 + 0.22 + 1.21 + 1 + 1.2-1 + 1.2-2 = 11,75
•
Chuyeån soá thaäp phaân thaønh soá nhò phaân: Phương pháp: Phaàn nguyeân: Chia 2, nhôù laïi soá dö Phaàn thaäp phaân: Nhaân 2, nhôù laïi phaàn nguyeân Ví dụ: Chuyeån (25)10 ra soá nhò phaân
25 = 12 2 12 =6 2 6 =3 2 3 =1 2 1 =0 2
+ soá dö 1 + soá dö 0 + soá dö 0 + soá dö 1 + soá dö 1 MSB 25 =
GV: Nguyễn Trọng Hải
LSB 1
Trang 7
1
0
0
1
Bài Giảng Kỹ Thuật Số
Chương 1
Ví dụ: Chuyeån (0,625)10 thaønh soá nhò phaân 0,625 × 2 = 1,25 0,25
× 2 = 0,5
0,5
× 2 = 1,0
0,625 = 0,101B 1.1.4. Các phép toán số học trên số nhị phân Caùc pheùp toaøn soá hoïc treân soá nhò phaân chuû yeáu vaãn gioáng caùc pheùp toaùn treân soá thaäp phaân, ngoaïi tröø pheùp coäng vaø pheùp nhaân thì ñôn giaûn hôn. Baûng pheùp coäng cho soá nhò phaân 0+0=0 0+1=1 1+0=1 1+1=0
nhôù 1 cho soá haïng keá tieáp
Ví dụ: coäng 1310 vôùi 1110 döôùi daïng nhò phaân 1111 ← caùc soá nhôù 1310 = 1101 1110 = 1011 11000 =2410 Baûng pheùp tröø cho soá nhò phaân 0-0=0 0-1=1
möôïn 1 töø soá haïng keá tieáp
1-0=1 1-1=0 Möôïn1 töø 1 coät töông ñöông vôùi vieäc tröø 1 taïi coät ñoù Ví dụ: (a)
1 ← (möôïn 1 töø coät thöù 3) 11101 - 10011 1010
Baûng pheùp nhaân cho soá nhò phaân 0x0=0 0x1=0 1x0=0 GV: Nguyễn Trọng Hải
Trang 8
(b)
1111 ← (möôïn) 10000 11 1101
Bài Giảng Kỹ Thuật Số
Chương 1
1x1=1 Ví dụ: Nhaân 1310 vôùi 1110 ôû daïng nhò phaân 1101 1011 1101 1101 0000 1101 10001111 =14310 Ñoái vôùi maùy tính, pheùp nhaân ñöôïc thöïc hieän baèng phöông phaùp coäng vaø dòch traùi:
-
Thaønh phaàn ñaàu tieân cuûa toång seõ chính laø soá bò nhaân neáu nhö LSB cuûa soá nhaân laø 1. Ngöôïc laïi, LSB cuûa soá nhaân baèng 0 thì thaønh phaàn naøy baèng 0.
-
Moãi thaønh phaàn thöù i keá tieáp seõ ñöôïc tính töông töï vôùi ñieàu kieän laø phaûi dòch traùi soá bò nhaân i bit.
-
Keát quaû caàn tìm chính laø toång caùc thaønh phaàn noùi treân.
Pheùp chia cho soá nhò phaân Pheùp chia caùc soá nhò phaân cuõng töông töï nhö ñoái vôùi caùc soá thaäp phaân. Ví dụ: 30/6
11110 110 011 000 110 110 0
110 101
Töông töï nhö ñoái vôùi pheùp nhaân, ta coù theå duøng pheùp tröø vaø pheùp dòch phaûi cho ñeán khi khoâng theå thöïc hieän pheùp tröø ñöôïc nöõa. 1.1.5. Số có dấu - không dấu Heä thoáng soá ñöôïc chia laøm 2 loaïi: khoâng daáu vaø coù daáu. Trong heä thoáng coù daáu: ñeå bieåu thò soá nhò phaân coù daáu thöôøng söû duïng bit MSB ñeå chæ daáu: bit 0 chæ soá döông, bit 1 chæ soá aâm, caùc bit coøn laïi ñeå chæ ñoä lôùn Nhö vaäy, neáu ta duøng 8 bit ñeå bieåu dieãn thì seõ thu ñöôïc 256 toå hôïp öùng vôùi caùc giaù trò 0..255 (soá khoâng daáu) hay –127.. –0 +0 … +127 (soá coù daáu). Tuy nhieân, khoâng ñôn giaûn laø cöù thay ñoåi bit MSB baèng 1 ñeå bieåu dieãn giaù trò aâm, ví duï nhö 01000001 (+65) thaønh 11000001 (-65), caùc pheùp tính soá hoïc seõ khoâng coøn ñuùng. Giaù trò aâm ñöôïc moâ taû döôùi daïng soá buø 2. GV: Nguyễn Trọng Hải
Trang 9
Bài Giảng Kỹ Thuật Số
Chương 1
Soá buø 2 (2’s component) Soá buø 2 cuûa moät soá nhò phaân xaùc ñònh baèng caùch laáy ñaûo caùc bit roài coäng theâm 1. Ví dụ: Trong heä thoáng coù daáu 8bit Soá +65 bieåu dieãn laø: 0100 0001 Soá buø 2 cuûa +65 laø: 1011 1110 + 1 = 1011 1111. (– 65) Nhöng neáu ñoåi ngöôïc 1011 1111 sang thaäp phaân seõ khoâng nhaän ñöôïc -65. Ñeå xaùc ñònh giaù trò tuyeät ñoái cuûa moät soá nhò phaân aâm, thöïc hieän laïi caùc böôùc treân -65 10111111 ñaûo bit 01000000 coäng 1 1 +65 01000001 Thöû laïi baèng caùch laáy toång cuûa +65 vaø –65, keát quaû phaûi baèng 0 +65 -65 00
01000001 +10111111 (1)00000000
Trong pheùp coäng vôùi soá buø 2, ta boû qua bit nhôù cuoái cuøng bôûi vì coù moät bit gaùn cho bit daáu neân keát quaû vaãn ñuùng Khi bieåu dieãn theo soá buø 2, neáu söû duïng 8 bit ta seõ coù caùc giaù trò soá thay ñoåi töø -128 ..127. Pheùp tröø thoâng qua soá buø 2 Ngoaøi caùch tröø nhö treân, ta cuõng coù theå thöïc hieän pheùp tröø thoâng qua soá buø 2 cuûa soá tröø: A-B=A+(-B) VD:
0110 1101 - 0011 0001 Soá buø 1
→ 1 Nhôù
0110 1101 + 1100 1111 0011 1100
1100 1110 + 1 = 1100 1111 (Soá buø 2) Keát quaû 0011 1100, Bit MSB = 0 cho bieát keát quaû laø soá döông. Xeùt khoaûng thay ñoåi sau +3 00000011 +2 00000010 +1 00000001 0 00000000 -1 11111111 -2 11111110 -3 11111101 GV: Nguyễn Trọng Hải
Trang 10
Bài Giảng Kỹ Thuật Số
Chương 1
Thaáy raèng caùc bit 0 ôû soá nhò phaân aâm bieåu thò giaù trò thaäp phaân cuûa noù: tính giaù trò cuûa caùc bit 0 theo vò trí gioáng nhö vôùi bit 1, coäng caùc giaù trò laïi vaø coäng 1. 1.1.6. Hệ bát phân (hệ cơ số 8) Heä baùt phaân ñöôïc keát hôïp bôûi 8 chöõ soá: 0, 1, 2, 3, 4, 5, 6, 7. Vò trí cuûa moãi chöõ soá coù troïng soá nhö sau: 84
83
82
81
80
8-1
8-2
8-3
8-4
8-5
Ñieåm baùt phaân
¾ Ñeám trong heä baùt phaân 0 10 1 11 2 12 3 4 5 6 66 7 67
70 71 72
277 300
Vôùi N chöõ soá baùt phaân, ta coù theå ñeám töø 0 ñeán 8N-1, 8N laàn ñeám khaùc nhau. ¾ Chuyeån soá baùt phaân sang soá thaäp phaân: Ví dụ: (24.6)8 = 2.81 + 4.80 + 6.8-1 =(20.75)10 ¾ Chuyeån soá thaäp phaân sang baùt phaân: Ví dụ: ñoåi (266)10 sang heä baùt phaân
266 = 33 8
+ soá dö 2
33 = 4 + soá dö 1 8 4 = 0 + soá dö 4 8 26610 =
4128
Ví dụ: Chuyeån 0,3125 thaønh soá baùt phaân 0,3125 × 8 = 2.5 0,5
× 8 = 4.0
( 0,3125 = 0,248 )
GV: Nguyễn Trọng Hải
Trang 11
Bài Giảng Kỹ Thuật Số
Chương 1
¾ Chuyeån soá baùt phaân sang soá nhò phaân: Phương pháp: Bieán ñoåi moãi chöõ soá baùt phaân sang 3 bit nhò phaân töông öùng Soá Octal Soá nhò phaân töông ñöông
0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111
Ví dụ: Bieán ñoåi (472)8 sang soá nhò phaân nhö sau: 4 ↓ 100
7 ↓ 111
2 ↓ 010
Vaäy (472)8 chuyeån sang nhò phaân laø 100111010B. ¾ Chuyeån soá nhò phaân sang soá baùt phaân. Phương pháp: nhoùm töøng 3 bit baét ñaàu taïi LSB, sau ñoù chuyeån moãi nhoùm naøy sang soá baùt phaân töông öùng (theo baûng chuyeån ñoåi ôû treân). Ví dụ: chuyeån 100111010B sang soá baùt phaân 100111010
↓ (4
↓ 7
↓ 2)8
Tröôøng hôïp caùc soá nhò phaân khoâng ñuû thaønh 1 nhoùm 3 bits, ta theâm 1 hoaëc 2 soá 0 veà beân traùi cuûa MSB. Ví dụ: chuyeån 11010110 sang soá baùt phaân 011010110
↓ (3
↓ 2
↓ 6)8
¾ Lôïi ích cuûa heä baùt phaân Vieäc deã daøng chuyeån töø heä baùt phaân sang nhò phaân vaø ngöôïc laïi laøm cho heä baùt phaân raát coù lôïi trong vieäc ruùt ngaén caùc soá nhò phaân lôùn. Trong maùy tính, caùc soá nhò phaân naøy khoâng phaûi luoân luoân bieåu hieän moät con soá maø thöôøng bieåu thò döôùi daïng maõ mang thoâng tin, ví duï: • döõ lieäu baèng soá thöïc • caùc soá töông öùng vôùi caùc vò trí (ñòa chæ) trong boä nhôù • maõ leänh • maõ bieåu thò soá hoïc vaø caùc ñaëc ñieåm khaùc • moät noùm caùc bit bieåu hieän traïng thaùi cuûa caùc thieát bò trong vaø ngoaøi maøy tính Khi giaûi quyeát moät löôïng lôùn caùc soá nhò phaân vôùi nhieàu bit, thöôøng duøng caùc soá döôùi daïng baùt phaân hôn laø nhò phaân ñeå taêng ñoä tieän lôïi, maëc duø caùc maïch soá vaø caùc heä thoáng soá laøm vieäc hoaøn toaøn treân soá nhò phaân. GV: Nguyễn Trọng Hải
Trang 12
Bài Giảng Kỹ Thuật Số
Chương 1
Ví dụ: Chuyeån soá 11710 sang heä baùt phaân roài chuyeån sang heä nhò phaân Giaûi
177 = 22 8
+ soá dö 1
22 =2 8
+ soá dö 6
2 =0 8
+ soá dö 2
Vaäy (177)10 =(261)8 = (10110001)2 Phöông phaùp chuyeån soá thaäp phaân thaønh soá nhò phaân naøy thöôøng nhanh hôn vieäc chuyeån thaúng töø thaäp phaân sang nhò phaân, ñaëc bieät ñoái vôùi caùc soá lôùn. Cuõng nhö vaäy ñoái vôùi vieäc chuyeån ngöôïc laïi töø nhò phaân sang thaäp phaân baèng caùch chuyeån sang soá baùt phaân 1.1.7. Hệ thập lục phân (hệ cơ số 16) Trong heä thoáng naøy, ta duøng caùc soá 0..9 vaø caùc kí töï A..F ñeå bieåu dieãn cho moät giaù trò soá (töông öùng vôùi 10 ñeán 15 trong heä 10). Thoâng thöôøng, ta duøng chöõ H ôû cuoái ñeå xaùc ñònh ñoù laø soá thaäp luïc phaân. Heä thaäp luïc phaân 0 1 2 3 4 5 6 7 8 9 A B C D E F
Heä thaäp phaân 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Heä nhò phaân 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
¾ Ñeám trong heä thaäp luïc phaân (hex) Khi ñeám trong heä thaäp luïc phaân moãi chöõ soá taêng töø 0 ñeán F sau ñoù veà 0 vaø chöõ soá coù troïng soá lôùn hôn keá tieáp seõ taêng leân 1.
GV: Nguyễn Trọng Hải
Trang 13
Bài Giảng Kỹ Thuật Số
Chương 1
0
10
20
9 A B C D E F
19 1A
FF 100
1E 1F
6FF 700
¾ Chuyeån soá hex sang thaäp phaân Ví dụ:
35616 = 3.162 + 5.161 + 6.160 = 85410
¾ Chuyeån soá hex sang nhò phaân Phương pháp: moãi chöõ soá hex ñöôïc bieán ñoåi thaønh soá nhò phaân 4 bit töông öùng. Ví dụ:
9F216 =
9 F 2 ↓ ↓ ↓ 1001 1111 0010
¾ Chuyeån ñoåi soá nhò phaân sang soá hex Phương pháp: caùc bit nhò phaân ñöôïc nhoùm vaøo nhoùm 4 bit töø LSB, moãi nhoùm 4 bit ñöôïc bieán ñoåi sang soá hex töông öùng. Neáu soá bit khoâng ñuû 4, thì coäng theâm bit 0 vaøo MSB. Ví dụ:
11101001102 = 0 0 1 1 1 0 1 0 0 1 1 0 = 3A616 3
A
6
Ví dụ: Chuyeån (378)10 sang soá hex roài chuyeån sang soá nhò phaân, nhaän xeùt Ví dụ: Chuyeån B2F16 sang baùt phaân 1.2.
CÁC BỘ MÃ HÓA SỐ HỆ MƯỜI THÔNG DỤNG Khi caùc soá, maãu töï hoaëc caùc töø words ñöôïc bieåu thò döôùi daïng moät nhoùm caùc kyù hieäu khaùc, ta noùi raèng chuùng ñöôïc maõ hoùa vaø nhoùm kyù töï ñoù ñöôïc goïi laø moät maõ. Moät trong nhöõng maõ thoâng duïng nhaát laø maõ Morse, chuùng bao goàm caùc chaám vaø gaïch ñeå bieåu hieän caùc maãu töï hay caùc chöõ caùi. Baát cöù soá thaäp phaân naøo cuõng coù theå ñöôïc moâ taû baèng soá nhò phaân töông öùng, moät nhoùm caùc soá nhò phaân 0 vaø 1 coù theå ñöôïc xem laø moät maõ cho soá thaäp phaân. Khi moät soá thaäp phaân ñöôïc moâ taû baèng soá nhò phaân töông öùng vôùi noù, ngöôøi ta goïi laø maõ nhò phaân tröïc tieáp (straight binary code)
GV: Nguyễn Trọng Hải
Trang 14
Bài Giảng Kỹ Thuật Số
Chương 1
Taát caû caùc heä thoáng soá duøng moät soá daïng caùc soá nhò phaân cho vieäc thöïc thi beân trong, nhöng caùc töø beân ngoaøi thì thöôøng laø thaäp phaân, nghóa laø coù moät söï bieán ñoåi thöôøng xuyeân töø thaäp phaân sang nhò phaân, söï bieán ñoåi töø thaäp phaân sang nhò phaân coù theå chieám moät khoaûng thôøi gian laâu vaø phöùc taïp ñoái vôùi moät soá lôùn. Vì lyù do ñoù, vieäc maõ hoùa caùc soá thaäp phaân baèng caùch keát hôïp moät vaøi chöùc naêng cuûa caû heä thoáng thaäp phaân vaø nhò phaân ñöôïc söû duïng trong caùc tình huoáng. 1.2.1. Mã BCD (Binary-Coded-Decimal Code) Neáu moãi chöõ soá cuûa soá thaäp phaân ñöôïc moâ taû baèng soá nhò phaân töông öùng vôùi noù, keát quaû ta ñöôïc 1 maõ goïi laø maõ BCD, vì chöõ soá thaäp phaân lôùn nhaát laø 9, caàn 4 bit ñeå maõ hoùa. Caùc soá 8,4,2,1 ñöôïc goïi laø troïng soá cuûa maõ vaø ñöôïc goïi laø maõ BCD 8-4-2-1. Ñoâi khi troïng soá 8-4-2-1 toû ra khoâng thuaän tieän trong tính toaùn, moät soá troïng soá khaùc cuõng ñöôïc söû duïng nhö 2-4-2-1, 5-4-2-1, 7-4-2-1…
Thập phân 0 1 2 3 4 5 6 7 8 9
8 0 0 0 0 0 0 0 0 1 1
Trọng số 4 2 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1 0 0 0 0
1 0 1 0 1 0 1 0 1 0 1
7 0 0 0 0 0 0 0 1 1 1
MÃ BCD Trọng số Trọng số 4 2 1 2 4 2 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0 1 1 0 0 1 1 0 0 0 1 0 1 0 1 1 0 1 1 1 0 1 1 0 0 0 0 1 1 0 0 0 1 1 1 1 0 1 0 1 1 1
1 0 1 0 1 0 0 0 1 0 1
5 0 0 0 0 0 1 1 1 1 1
Trọng số 1 2 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 1 0 1 1 1
1 0 1 0 1 0 0 1 0 1 1
Löu yù raèng caùc loaïi maõ 5-1-2-1 vaø 2-4-2-1 laø khoâng duy nhaát trong khi maõ 8-42-1 vaø 7-4-2-1 laïi duy nhaát Ví dụ: Soá thaäp phaân 874 chuyeån sang töông ñöông nhò phaân nhö sau:
hoaëc
8 ↓ 1000 1011 1011
7 ↓ 0111 1010 1101
3 ↓ 0011 0011 0110
(thaäp phaân) (BCD 8-4-2-1) (BCD 5-1-2-1) (BCD 5-1-2-1)
Moät laàn nöõa, moãi chöõ soá thaäp phaân ñöôïc bieán ñoåi tröïc tieáp sang soá nhò phaân töông öùng, löu yù raèng 4 bit luoân ñöôïc duøng cho moãi chöõ soá thaäp phaân
GV: Nguyễn Trọng Hải
Trang 15
Bài Giảng Kỹ Thuật Số
Chương 1
Trong baøi giaûng naøy laáy maõ BCD 8-4-2-1 laøm ví du. Maõ BCD bieåu thò moãi chöõ soá cuûa soá thaäp phaân baèng soá nhò phaân 4 bit, söû duïng caùc soá nhò phaân 4 bit töø 0000 ñeán 1001, khoâng söû duïng caùc soá 1010, 1011, 1100, 1101, 1110 vaø 1111. Ví dụ: Bieán ñoåi 0110100000111001 (BCD 8-4-2-1) sang giaù trò thaäp phaân Giải Chia soá BCD thaønh caùc nhoùm 4 bit vaø bieán ñoåi sang thaäp phaân 0110
1000 0011 1001 = 6839
So saùnh BCD vaø nhò phaân. Moät ñieàu quan troïng laø maõ BCD khoâng gioáng nhö maõ nhò phaân tröïc tieáp. Maõ nhò phaân tröïc tieáp bieán ñoåi soá thaäp phaân sang nhò phaân trong khi maõ BCD bieán ñoåi moãi chöõ soá trong soá thaäp phaân sang nhò phaân. Xeùt ví duï bieán ñoåi 137 sang maõ nhò phaân tröïc tieáp vaø sang BCD 8-4-2-1 nhö sau: 13710 = 100010012
(nhò phaân)
13710 = 0001 0011 0111 (BCD 8-4-2-1) Maõ BCD caàn 12 bit trong khi maõ nhò phaân tröïc tieáp chæ caàn 8 bit ñeå bieåu thò soá 137. Maõ BCD caàn nhieàu bit hôn laø bôûi vì BCD khoâng duøng heát caùc khaû naêng cuûa caùc nhoùm 4 bit vaø vì vaäy coù phaàn naøo ñoù khoâng hieäu quaû. Öu ñieåm chính cuûa BCD laø deã daøng chuyeån sang thaäp phaân. Chæ phaûi nhôù caùc nhoùm maõ 4bit cho caùc soá thaäp phaân töø 0 ñeán 9. Söï deã daøng chuyeån ñoåi naøy ñaëc bieät quan troïng theo quan ñieåm veà phaàn cöùng vì trong moät heä thoáng soá, noù laø caùc maïch logic ñeå taïo neân söï chuyeån ñoåi sang vaø töø thaäp phaân 1.2.2. Các phép toán số học với mã BCD Cộng BCD Coäng hai soá BCD coù ñieåm khaùc so vôùi coäng hai soá nhò phaân. Khi toång cuûa moãi soá haïng BCD ≤ 9 thì toång ñoù laø keát quaû cuoái cuøng Ví dụ, 01010011 (53) 00100101 (25) 01111000 (78) Khi toång hai soá nhò phaân ≥ 9 thì toång phaûi ñöôïc coäng theâm 6 vaø nhôù 1 leân haøng BCD coù nghóa cao hôn Ví dụ, 0001 0111 (17) 0010 0101 (25) 0011 1100 Keát quaû ≥ 9 0110 (6) 0100 0010 (42) GV: Nguyễn Trọng Hải
Trang 16
Bài Giảng Kỹ Thuật Số
Chương 1
Trừ BCD Gioáng quy luaät tröø soá nhò phaân nhieàu bit, neáu soá bò tröø nhoû hôn soá tröø thì phaûi möôïn 1 ôû haøng coù nghóa lôùn hôn (gioáng tröø thaäp phaân) 0101 0101 (55) 0001 1000 (18)
0100 0001 0011
⇒
1111 1000 0111
Möôïn 1 (37)
Biểu diễn số BCD âm Gioáng heä nhò phaân, ñeå bieåu dieãn soá aâm trong heä nhò phaân thöôøng duøng soá buø 2, ñeå bieåu dieãn soá BCD aâm thöôøng duøng soá buø 10. Soá buø 10 baèng soá buø 9 coäng 1 Bit taän cuøng beân traùi laø bit daáu: 1 cho soá aâm vaø 0 cho soá döông Ví dụ, + 342 + - 342
0 342
Soá döông
1 657
Soá buø 9 cuûa 342
1 1 658
Soá buø 10 cuûa 342
1.2.3. Mã quá 3 (excess-3code) Maõ quaù 3 ñöôïc hình thaønh baèng caùch coäng theâm 3 ñôn vò vaøo maõ BCD 8421. Ví dụ: bieán ñoåi 48 sang maõ quaù 3 4 +3 7 ↓ 0111
8 +3 11 ↓ 1011
Coäng 3 cho moãi chöõ soá
Chuyeån sang maõ nhò phaân 4 bit
Baûng lieät keâ maõ BCD vaø maõ quaù 3 töông öùng vôùi caùc chöõ soá thaäp phaân. Thaäp phaân 0 1 2 3 4 5 6 7 8 9
GV: Nguyễn Trọng Hải
BCD 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001
Trang 17
Maõ quaù 3 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100
Bài Giảng Kỹ Thuật Số
Chương 1
1.2.4. Mã Gray Maõ Gray naèm trong nhoùm maõ thay ñoåi cöïc tieåu minimun-change codes, ôû ñoù chæ 1 bit trong nhoùm maõ thay ñoåi ôû khi ñi töø böôùc naøy qua böôùc khaùc. Maõ Gray laø maõ khoâng coù troïng soá, nghóa laø moïi vò trí cuûa bit trong nhoùm maõ khoâng ñöôïc gaùn troïng soá naøo. Vì vaäy, maõ Gray khoâng phuø hôïp vôùi caùc bieåu thöùc soá hoïc nhöng phuø hôïp vôùi caùc thieát bò öùng duïng vaøo/ra & moät soá daïng bieán ñoåi analog - digital Baûng chuyeån ñoåi maõ Gray töø soá thaäp phaân (0 ñeán 15) vôùi maõ nhò phaân tröïc tieáp Thaäp phaân 0 1 2 3 4 5 6 7
Nhò phaân 0000 0001 0010 0011 0100 0101 0110 0111
Maõ Gray 0000 0001 0011 0010 0110 0111 0101 0100
Thaäp phaân 8 9 10 11 12 13 14 15
Nhò phaân 1000 1001 1010 1011 1100 1101 1110 1111
Maõ Gray 1100 1101 1111 1110 1010 1011 1001 1000
1.2.5. Mã Johnson Maõ naøy söû duïng naêm chöõ soá nhò phaân ñeå bieåu dieãn caùc chöõ soá heä möôøi. Phương pháp: Khi chuyeån sang soá tieáp theo maõ seõ thay chöõ soá 0 baèng chöõ soá 1, baét ñaàu töø phaùi sang traùi, cho ñeán khi ñaït 11111 thì seõ baét ñaàu thay theá daàn chöõ soá 1 baèng chöõ soá 0 vaø cuõng theo chieàu töø phaûi sang traùi
Hệ 10
Mã Johnson J4 J3 J2 J1 J0 0 0 0 0 0 0 1 0 0 0 0 1 1 1 0 0 0 2 1 1 1 0 0 3 1 1 1 1 0 4 1 1 1 1 1 5 0 1 1 1 1 6 0 0 1 1 1 7 0 0 0 1 1 8 0 0 0 0 1 9 Ngoaøi ra coøn duøng caùc loaïi maõ coù chöõ soá lôùn hôn nhö 8 hoaëc 10 chöõ soá, nhöôïc ñieåm cuûa caùc loaïi maõ naøy laø ñoä daøi töø maõ lôùn neân chieám nhieàu thôøi gian trong keânh thoâng tin nhöng öu ñieåm laø coù theå phaùt hieän sai vaø trong nhieàu tröôøng hôïp coøn coù theå söûa sai, vì vaäy thöôøng goïi laø maõ choáng nhieãu (noäi dung naøy naèm trong lyù thuyeát thoâng tin)
GV: Nguyễn Trọng Hải
Trang 18
Bài Giảng Kỹ Thuật Số
Chương 1
1.2.6. Các mã Alphanumeric (mã theo chữ cái và con số) Ngoaøi caùc döõ lieäu soá, moät maùy tính phaûi coù khaû naêng xöû lyù caùc coâng tin khoâng soá. Noùi caùch khaùc, moät maùy tính phaûi nhaän ra caùc maõ bieåu thò caùc kyù töï cuûa chöõ caùi, caùc daáu chaám, vaø caùc kyù töï ñaëc bieät khaùc. Caùc maõ naøy ñöôïc goïi laø maõ alphanumeric. Moät maõ alphanumeric hoaøn taát bao goàm 26 chöõ caùi thöôøng, 26 chöõ caùi hoa, 10 chöõ soá, 7 chaám caâu, vaø töø 20 ñeán 40 kyù töï khaùc, nhö +, /, #, %, *,v.v…. Coù theå noùi raèng maõ alphanumeric bieåu thò taát caû caùc kyù töï khaùc nhau vaø caùc haøm tuøy thuoäc vaøo chuaån baøn phím cuûa maùy tính hay maùy ñaùnh chöõ Maõ ASCII. Maõ alphanumeric duøng roäng raõi hieän nay laø maõ ASCII (American Standard Code for Information Interchange), söû duïng haàu heát trong caùc maùy vi tính, trong caùc theá heä maùy tính lôùn (mainframe). Maõ ASCII laø moät maõ 7 bit vaø vì vaäy noù coù 27 = 128 nhoùm maõ. Ñieàu naøy thì ñuû ñeå bieåu thò taát caû caùc kyù töï baøn phím chuaån cuõng nhö caùc haøm ñieàu khieån nhö (RETURN) vaø (LINEFEED) Kyù töï A B C D E F G H I J K L M N O P Q R S T U V W X
ASCII 100 0001 100 0010 100 0011 100 0100 100 0101 100 0110 100 0111 100 1000 100 1001 100 1010 100 1011 100 1100 100 1101 100 1110 100 1111 101 0000 101 0001 101 0010 101 0011 101 0100 101 0101 101 0110 101 0111 101 1000
Octal 101 102 103 104 105 106 107 110 111 112 113 114 115 116 117 120 121 122 123 124 125 126 127 130
Hex 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57 58
Kyù töï Y Z 0 1 2 3 4 5 6 7 8 9 Blank . ( + $ * ) / = RETURN LINEFEED
ASCII 101 1001 101 1010 011 0000 011 0001 011 0010 011 0011 011 0100 011 0101 011 0110 011 0111 011 1000 011 1001 010 0000 010 1110 010 1000 010 1011 010 0100 010 1010 010 1001 010 1101 0101111 010 1100 011 1101 000 1101 0001010
Octal 131 132 060 061 062 063 064 065 066 067 070 071 040 056 050 053 044 052 051 055 057 054 075 015 012
Hex 59 5A 30 31 32 33 34 35 36 37 38 39 20 2E 28 2B 24 2A 29 2D 2F 2C 3D 0D 0A
Ví dụ: Thoâng ñieäp ñöôïc maõ hoùa trong ASCII nhö sau 1001000 Giải Keát quaû theo HEX laø 48
1000101
1001100
1010000
45
4C
50
Theo baûng ASCII, bieán ñoåi HEX sang kyù töï laø H E L P GV: Nguyễn Trọng Hải
Trang 19
Bài Giảng Kỹ Thuật Số
Chương 1
Maõ ASCII thöôøng duøng trong caùc boä truyeàn caùc thoâng tin alphanumeric giöõa moät maùy tính vaø caùc thieát bò vaøo ra nhö thieát bò video hay printer. Maùy tính cuõng söû duïng noù ñeå löu tröõ caùc thoâng tin nhö caùc daïng leänh. Ñeå coù theå bieåu dieãn theâm nhieàu kyù töï khaùc (kyù hieäu khoâng phaûi laø chöõ La Ting nhö α, β, χ, δ…) maõ ASCII ñöôïc theâm 1bit nöõa ñeå coù maõ ASCII 8bit dieãn taû ñöôïc 256 kyù töï, ñaây laø maõ ASCII môû roäng (Extended ASCII)
GV: Nguyễn Trọng Hải
Trang 20
Bài Giảng Kỹ Thuật Số
Chương 1
Bài tập chương 1 1.1. Đổi các số nhị phân sau sang số thập phân: a.
10110
b.
10001101
c.
100100001001
d.
1111010111
e.
10111111
1.2. Đổi các giá trị thập phân sau sang nhị phân: a.
37
b.
14
c.
189
d.
205
e.
2313
f.
511
1.3. Giá trị thập phân lớn nhất của số nhị phân 8 bit là bao nhiêu,16 bit là bao nhiêu 1.4. Đổi các số bát phân sang số thập phân tương ứng: a.
743
b.
36
c.
3777
d.
257
e.
1204
1.5. Đổi các số thập phân sau sang số bát phân: a.
59
b.
372
c.
919
d.
65,535
e.
255
1.6. Đổi các số bát phân ở 1.4 thành số nhị phân. 1.7. Đổi các số nhị phân ở 1.1 thành số bát phân. 1.8. Hãy liệt kê các số bát phân liên tục từ 1658 đến 2008. 1.9.Khi các số thập phân lớn, để đổi sang nhị phân, trước tiên ta đổi sang bát phân, sau đó đổi số bát phân thành số nhị phân. Hãy dùng cách này đổi số 231310 thành số nhị phân và so sánh với cách đổi dùng ở bài 1.2. 1.10. Đổi các giá trị hex sau thành số thập phân: a.
92
GV: Nguyễn Trọng Hải
Trang 21
Bài Giảng Kỹ Thuật Số b.
1A6
c.
37FD
e.
2C0
f.
7FF
Chương 1
1.11. Đổi các giá trị thập phân sau sang Hex: a.
75
b.
314
c.
2048
d.
25,619
e.
4095
1.12. Đổi các giá trị nhị phân ở bài 1.1sang thập lục phân. 1.13. Đổi các giá trị Hex ở bài 1.10 sang nhị phân. 1.14.Trong máy vi tính, địa chỉ các vị trí ô nhớ được biểu diễn ở dạng thập lục phân. Địa chỉ này là những số liên tục mà nó nhận dạng mỗi mạch nhớ a. Một máy tính cụ thể có thể chứa 1 số 8 bit trong mỗi vị trí nhớ. Nếu các địa chỉ ô nhớ nằm trong khoảng từ 000016 đến FFFF16, có bao nhiêu vị trí nhớ? b. Một bộ vi xử lý có 4096 vị trí nhớ thì khoảng địa chỉ Hex mà bộ vi xử lý này dùng là gì ?. 1.15. Hãy liệt kê những số hex trình tự từ 280 đến 2A0. 1.16. Hãy mã hóa các số thập phân sau thành số BCD: a.
47
b.
962
c.
187
d.
42,689.627
e.
1204
1.17. Cần bao nhiêu bit để thể hiện các số thập phân trong khoảng từ 0 đến 999 dùng mã nhị phân chuẩn, mã BCD? 1.18. Đổi những số BCD sau thành số thập phân: a.
10010110101010010
b.
000110000100
c.
0111011101110101
d.
010010010010
1.19. Hãy thể hiện phát biểu sau "X = 25/Y" bằng mã ASCII, có kèm theo một bit chẵn lẻ. 1.20. Hãy thêm bit chẵn lẻ vào mã ASCII ở bài 1.19 và đưa kết quả về số Hex. 1.21. Các nhóm mã dưới đây được truyền đi, hãy thêm bit chẵn lẻ cho mỗi nhóm: GV: Nguyễn Trọng Hải
Trang 22
Bài Giảng Kỹ Thuật Số a.
10110110
b.
00101000
c.
11110111
Chương 1
1.22. Hãy đổi số thập phân sau thành mã BCD, sau đó đổi sang số BCD âm: a.
74
b.
38
c.
165
d.
9201
1.23. Trong hệ thống số, số thập phân từ 000 đến 999 được thể hiện ở dạng mã BCD. Một bit chẵn lẻ lẻ cũng được đích kèm ở cuối mỗi nhóm mã. Hãy kiểm tra các nhóm mã bên dưới và giả sử rằng mỗi một mã được truyền từ vị trí này đến vị trí khác. Một vài nhóm có chứa lỗi. Giả sử không quá 2 lỗi trong mỗi nhóm. Hãy xác định nhóm mã nào có 1 lỗi đơn và nhóm mã nào có 1 lỗi kép: a.
100101011000
b.
0100011101100
c.
011110000011
d.
1000011000101
1.24. Thực hiện các sự chuyển đổi dưới đây. Trong số đó, có thể thử 1 cách tốt nhất trong nhiều cách đã khảo sát. a.
(1417)10 = (……………………….……..)2
b.
(-255)10 = (………………………………)2
c.
(1110101000100111)2 =(……………………………)10
e.
(2497)10 = (……………………………..)8
g.
(235)8 = (……………………………)10
i.
(7A9)16 = (…………………………….)10
k.
(1600,123)10 = (………………………………………)16
m.
(865)10 =( …………………………………….)BCD
n.
(100101000111)BCD = (……………………………….)10
1.25. Thể hiện giá trị thập phân 37 theo những cách sau: a.
Biến đổi thẳng nhị phân
b.
BCD
c.
ASCII
d.
Bát phân
e.
Hex
GV: Nguyễn Trọng Hải
Trang 23
Bài Giảng Kỹ Thuật Số
Chương 2
CHƯƠNG 2. ĐẠI SỐ BOOLEAN VÀ CÁC CỔNG LOGIC 2.1.
KHÁI NIỆM VỀ LOGIC HAI TRẠNG THÁI Pheùp toaùn cô baûn trong thieát keá logic caùc heä thoáng soá laø ñaïi soá Boolean. Ñaïi soá Boolean coù nhieàu öùng duïng khaùc nhau bao goàm lyù thuyeát taäp hôïp vaø logic toaùn, vì taát caû caùc phaàn töû chuyeån maïch veà cô baûn ñeàu laø caùc phaàn töû hai traïng thaùi (nhö diode, transistor), cho neân seõ taäp trung khaûo saùt tröôøng hôïp ñaïi soá Boolean vôùi söï thay ñoåi giaû söû chæ ôû 1 trong 2 giaù trò. Ñaïi soá Boolean söû duïng 2 giaù trò naøy xem nhö ñaïi soá veà chuyeån maïch. Phaàn naøy söû duïng caùc bieán Boolean nhö X hoaëc Y… ñeå bieåu dieãn ngoõ vaøo hoaëc ngoõ ra cuûa maïch chuyeån maïch, moãi bieán coù theå laáy 1 trong hai giaù trò. Kyù hieäu “0” vaø “1” ñöôïc duøng ñeå ñaïi dieän cho hai giaù trò khaùc nhau naøy. Vì vaäy, neáu X laø bieán chuyeån maïch hay bieán Boolean thì hoaëc X=0, hoaëc X=1 Maëc duø kyù hieäu “0” vaø “1” gioáng nhö soá nhò phaân, nhöng khoâng phaûi nhö vaäy. Ñaây chæ laø 2 kyù töï ñaïi dieän cho 2 giaù trò cuûa bieán chuyeån maïch vaø ñöôïc xem laø möùc logic, moät soá vò duï veà caùc hieän töôïng maø möùc logic ñaïi dieän nhö sau LOGIC 0 Sai Taét Möùc ñieän aùp thaáp Khoâng Môû maïch
LOGIC 1 Ñuùng Môû Möùc ñieän aùp cao Coù Ñoùng maïch
Vì chæ coù hai giaù trò, neân ñaïi soá Boolean töông ñoái deã daøng hôn so vôùi ñaïi soá thoâng thöôøng. ÔÛ ñaïi soá Boolean, khoâng coù phaân soá, thaäp phaân, caên baäc hai, caên baäc ba, logarit, soá aûo, v.v. Ñaïi soá Boolean chæ coù 3 pheùp toaùn cô baûn: coäng (OR), nhaân (AND) vaø laáy buø (NOT). 2.2.
BẢNG SỰ THẬT Baûng söï thaät (Truth Table) moâ taû caùc ñaùp öùng ngoõ ra cuûa maïch logic öùng vôùi caùc toå hôïp khaùc nhau taïi ngoõ vaøo. Ví dụ
A B
Maïng chuyeån maïch
GV: Nguyễn Trọng Hải
A X
B C
Maïng chuyeån maïch
A B X
C D
Trang 24
Maïng chuyeån maïch
X
Bài Giảng Kỹ Thuật Số
Chương 2
Caùc baûng söï thaät tieâu bieåu öùng vôùi caùc maïng chuyeån maïch treân nhö sau: Ngoõ vaøo Ngoõ ra ↓ ↓ ↓ A 0 0 1 1
B 0 1 0 1
X ? ? ? ?
A 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
C 0 1 0 1 0 1 0 1
A 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
X ? ? ? ? ? ? ? ?
B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
C 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
D 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
X ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
ÔÛ moãi baûng söï thaät, caùc toå hôïp möùc logic 0 vaø 1 ñoái vôùi ngoõ vaøo (A, B, C, D) ñöôïc theå hieän beân traùi, möùc logic ôû ngoõ ra X ñöôïc theå hieän beân phaûi Löu yù, neáu coù 2 ngoõ vaøo thì coù 4 khaû naêng xaûy ra, töông töï 8 khaû naêng cho 3 ngoõ vaøo vaø 16 khaû naêng cho 4 ngoõ vaøo. Seõ coù 2N khaû naêng xaûy ra ñoái vôùi N ngoõ vaøo. Taát caû caùc toå hôïp ngoõ vaøo ñöôïc theå hieän theo chuoãi ñeám nhò phaân. 2.3.
CÁC PHÉP TOÁN CƠ BẢN
2.3.1. Phép toán OR và cổng OR Goïi A vaø B laø 2 bieán logic ñoäc laäp. Khi A vaø B keát hôïp qua pheùp toaùn OR, keát quaû x ñöôïc moâ taû nhö sau: X=A+B Trong bieåu thöùc naøy, daáu “+” khoâng coù nghóa laø pheùp coäng thuaàn tuùy. Noù laø pheùp toaùn OR, keát quaû cuûa pheùp toaùn OR ñöôïc cho trong baûng söï thaät sau: A 0 0 1 1
B 0 1 0 1
X=A+B 0 1 1 1
A
Y=A+B
B Coång OR
Keát luaän •
Pheùp toaùn OR seõ coù keát quaû baèng 1 neáu moät hay nhieàu bieán ngoõ vaøo baèng 1
•
Coång OR chæ coù moät ngoõ ra vaø coù theå coù nhieàu hôn hai ngoõ vaøo
GV: Nguyễn Trọng Hải
Trang 25
Bài Giảng Kỹ Thuật Số
Chương 2 A 0 0 0 0 1 1 1 1
Kyù hieäu vaø baûng söï thaät cho coång OR 3 ngoõ vaøo A B C
X=A+B+C
B 0 0 1 1 0 0 1 1
C 0 1 0 1 0 1 0 1
X=A+B+C 0 1 1 1 1 1 1 1
Ví dụ Xaùc ñònh daïng soùng ngoõ ra coång OR khi ngoõ vaøo A, B thay ñoåi theo giaûn ñoà sau: 1
A 0
A
Out
B B 2.3.2. Phép toán AND và cổng AND
Neáu hai bieán logic A vaø B ñöôïc keát hôïp qua pheùp AND, keát quaû laø: X= A.B Baûng söï thaät cuûa pheùp nhaân 2 bieán A vaø B nhö sau: A 0 0 1 1
B 0 1 0 1
X=A.B 0 0 0 1
A B
X = AB
Coång AND
Keát luaän •
Pheùp toaùn AND seõ coù keát quaû baèng 0 neáu moät hay nhieàu bieán ngoõ vaøo baèng 0
•
Coång AND chæ coù moät ngoõ ra vaø coù theå coù nhieàu hôn hai ngoõ vaøo
Ví duï AND 3 ngoõ vaøo coù baûng söï thaät nhö sau
A B C
X = ABC
Coång AND
Trang 23
A 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
C 0 1 0 1 0 1 0 1
X = ABC 0 0 0 0 0 0 0 1
Bài Giảng Kỹ Thuật Số
Chương 2
Ví dụ Xaùc ñònh daïng soùng ngoõ ra cuûa coång AND öùng vôùi caùc ngoõ vaøo nhö sau `
A
A
B
B
X = AB
Trong ví duï naøy thaáy raèng, ngoõ ra x seõ baèng vôùi ngoõ vaøo A khi B ôû möùc logic 1. Vì vaäy ta coù theå xem ngoõ vaøo B nhö ngoõ vaøo ñieàu khieån, noù cho pheùp daïng soùng ôû ngoõ vaøo A xuaát hieän ôû ngoõ ra hay khoâng. Trong tröôøng hôïp naøy coång AND ñöôïc duøng nhö moät maïch cho pheùp, vaø ñaây laø öùng duïng raát quan troïng cuûa coång AND vaø seõ ñöôïc khaûo saùt sau. 2.3.3. Phép toán NOT và cổng NOT Neáu bieán A ñöôïc ñöa qua pheùp toaùn NOT, keát quaû x seõ laø: X= A Ta coù 1 = 0 vaø 0 = 1 , baûng söï thaät cho pheùp toaùn NOT nhö sau: A 0 1
A
X= A 1 0
X=A Coång NOT
Coång NOT chæ coù moät ngoõ vaøo vaø moät ngoõ ra 2.4.
MÔ TẢ CÁC MẠCH LOGIC THEO PHƯƠNG PHÁP ĐẠI SỐ Baát cöù moät maïch logic naøo cuõng coù theå ñöôïc moâ taû baèng caùch söû duïng caùc pheùp toaùn Boolean ñaõ ñeà caäp ôû treân (coång OR, AND vaø NOT laø nhöõng khoái cô baûn trong moät heä thoáng soá). Ví dụ, xeùt maïch sau A B
A.B C
X = A.B + C
Maïch coù 3 ngoõ vaøo A, B vaø C vaø moät ngoõ ra x. Söû duïng caùc bieåu thöùc Boolean cho moãi coång ta xaùc ñònh ñöôïc bieåu thöùc ngoõ ra x = AB + C. Ví dụ A B
A+B C
Trang 24
X = (A+B).C
Bài Giảng Kỹ Thuật Số
Chương 2
Ví dụ xaùc ñònh haøm ngoõ ra cuûa maïch sau
A B (a) A B C D (b) 2.5.
THỰC HIỆN CÁC MẠCH LOGIC TỪ BIỂU THỨC BOOLEAN Ví dụ thöïc hieän bieåu thöùc sau: y = AC+BC+ABC AC
A C B
B
BC
y=AC+BC+ABC
C A
ABC
B C
Ví dụ veõ sô ñoà maïch thöïc hieän bieåu thöùc sau: x= AB+BC
(
)
Ví dụ veõ sô ñoà maïch thöïc hieän bieåu thöùc x = ABC A+D söû duïng caùc coång coù soá ngoõ vaøo nhoû hôn 3 2.6.
CỔNG NOR VÀ CỔNG NAND Coång NAND vaø coång NOR ñöôïc duøng raát roäng raõi trong caùc maïch soá. Thöïc söï caùc coång naøy ñeàu ñöôïc keát hôïp töø caùc pheùp toùan cô baûn AND, OR vaø NOT.
2.6.1. Cổng NOR Coång NOR hoïat ñoäng gioáng nhö hai coång OR vaø NOT maéc noái tieáp nhö hình veõ vaø bieåu thöùc ngoõ ra laø x= A+B , baûng söï thaät nhö sau: OR NOR X= A+B A A 0 0 1 1
B 0 1 0 1
A+B 0 1 1 1
A+B
1 0 0 0
B
Kyù hieäu ñaûo A B
Ngoõ ra coång NOR laø ñaûo vôùi ngoõ ra coång OR Trang 25
X= A+B
Bài Giảng Kỹ Thuật Số
Chương 2
Ví dụ, xaùc ñònh daïng soùng ngoõ ra cuûa coång NOR öùng vôùi ngoõ vaøo nhö sau 1
A 0
A B
B
2.6.2. Cổng NAND Coång NAND töông ñöông vôùi AND coäng vôùi NOT, ngoõ ra cuûa NAND seõ laø x= AB , baûng söï thaät cho nhö sau: A 0 0 1 1
B 0 1 0 1
AND
NAND
AB 0 0 0 1
AB
X= A+B
A B
1 1 1 0
Kyù hieäu ñaûo X= A+B
A B
Ngoõ ra coång NAND laø ñaûo vôùi ngoõ ra coång AND Ví dụ, xaùc ñònh daïng soùng ngoõ ra cuûa coång NAND öùng vôùi ngoõ vaøo nhö sau
A
A
X
B B
Ví duï, thöïc hieän maïch logic coù bieåu thöùc nhö sau: x = AB(C + D) chæ duøng coång NOR vaø NAND Ví dụ xaùc ñònh möùc logic ngoõ ra cuûa ví duï treân vôùi A=B=C=1 vaø D=0 2.7.
PHÉP TOÁN XOR (Exclusive-OR) và phép toán tương đương
2.7.1. Phép toán XOR và cổng XOR Pheùp toaùn XOR (kyù hieäu ⊕) coù baûng söï thaät nhö sau: X 0 0 1 1
Y 0 1 0 1
X⊕Y 0 1 1 0
X
X⊕Y
Y Cổng XOR
Töø baûng söï thaät thaáy raèng X ⊕ Y =1 khi X≠ Y vaø X ⊕ Y =0 khi X= Y Bieåu thöùc toaùn cuûa pheùp toaùn XOR: X ⊕ Y = XY+YX
Trang 26
Bài Giảng Kỹ Thuật Số
Chương 2
2.7.2. Phép toán tương đương và cổng XNOR Pheùp toùan töông ñöông (kyù hieäu ≡) coù baûng söï thaät nhö sau: X 0 0 1 1
Y 0 1 0 1
X≡Y 1 0 0 1
X
X⊕Y
Y Cổng XNOR
Töø baûng söï thaät thaáy raèng X ≡ Y = 0 khi X≠ Y vaø X ≡ Y = 1 khi X= Y Bieåu thöùc toaùn: X ≡ Y = X ⊕ Y = XY + X.Y 2.8.
CÁC ĐỊNH LÝ CƠ BẢN CỦA ĐẠI SỐ BOOLEAN (1) X . 0 = 0
(5) X + 0 = X
(2) X . 1 = X
(6) X + 1 =1
(3) X . X = X
(7) X + X = X (8) X + X = 1
(4) X . X = 0 2.8.1. Phép giao hoán, kết hợp và phân phối (9)
X+Y=Y+X
(10)
X.Y=Y.X
(11)
X + (Y + Z) = (X + Y) + Z = X + Y + Z
(12)
X(YZ) = (XY)Z = XYZ
(13)
X(Y + Z) = XY + XZ
(14)
(W + X)(Y + Z) = WY + XY + WZ + XZ
(15)
X + XY = X
(vì X(1+Y) = X)
(16)
X + XY = X + Y
(vì X + X Y = (X + Y)(X + X ))
(17)
(X + Y)(X + Y ) = X
2.8.2. Định lý DeMorgan (18)
X + Y = X.Y
(19)
( X.Y) = X + Y
2.8.3. Định lý Consensus (20)
XY + XZ + YZ = XY + XZ
(21)
( X + Y)( X + Z)(Y + Z) = ( X + Y)( X + Z)
2.8.4. Các định lý cho phép tóan XOR (22)
X⊕0=X
Trang 27
Bài Giảng Kỹ Thuật Số
Chương 2
(23)
X⊕1= X
(24)
X⊕X=0
(25)
X⊕ X =1
(26)
X ⊕ Y = Y ⊕ X (Giao hoaùn)
(27)
(X ⊕ Y) ⊕ Z = X ⊕ (Y ⊕ Z) = X ⊕ Y ⊕ Z (Keát hôïp)
(28)
X(Y ⊕ Z) = XY ⊕ XZ (Phaân phoái)
(29)
( X ⊕ Y) = X ⊕ Y = X ⊕ Y = XY + X.Y
Ví dụ, ruùt goïn bieåu thöùc y = A BD + A B.D Giải. y = A B(D + D) , söû duïng ñònh lyù (8): D + D = 1
y = A B.1 = A B Ví dụ, Ruùt goïn bieåu thöùc x = ACD + ABCD Ví dụ Ruùt goïn bieåu thöùc z = (A + C).(B + D) Ví dụ Thöïc hieän maïch logic vôùi bieåu thöùc ngoõ ra z = A + B + C chæ duøng coång NAND vaø coång ñaûo Ví dụ Ruùt goïn bieåu thöùc a.b+ac+bc+bc+ab Ví dụ Ruùt goïn bieåu thöùc (a+b+c)(a+b+d)(b+c+d) 2.8.5. Các phép biến đổi trên cổng NAND và NOR Taát caû caùc bieåu thöùc Boolean ñeàu coù theå ñöôïc thöïc hieän thoâng qua caùc coång OR, AND vaø NOT. Tuy nhieân, ñeå thöïc hieän caùc bieåu thöùc logic maø chæ duøng 1 loaïi coång NAND (hay coång NOR), ta seõ bieán ñoåi coång NAND (hay coång NOR) ñeå thöïc hieän caùc pheùp toaùn AND, OR, NOT nhö sau Thực hiện các phép toán bằng cổng NAND A
x = A.A = A
x=AB
A B A
x = A.B = A + B
B
Trang 28
Bài Giảng Kỹ Thuật Số
Chương 2
Thực hiện các phép toán bằng cổng NOR A
x =A+A=A
A
x=A+B
B A
x = A + B = A.B
B
Ví dụ. Thieát keá maïch thöïc hieän bieåu thöùc x=AB+CD, sao cho duøng ít IC nhaát. Giaû söû coù caùc IC sau 14
13
12
11
10
9
8
Vcc 14
13
12
11
10
9
8
7408
7400
1
2
3
4
5
6
1
7
Vcc 14
2
3
4
5
6
7
GND
13
12
11
10
9
8
7432
1
2
3
4
5
6
7
GND
2.8.6. Biểu diễn qua lại giữa các cổng ÔÛ treân ñaõ khaûo saùt 5 loaïi coång logic (AND, OR, NOT, NAND, NOR) vaø caùc kyù hieäu chuaån ñeå bieåu dieãn chuùng treân moät maïch logic. Maëc duø vaäy moät soá maïch cuõng söû duïng theâm moät soá caùch bieåu dieãn khaùc nhö sau:
Trang 29
Bài Giảng Kỹ Thuật Số
Chương 2
AB
A
AND
B A B
A+B
A B
AB
A B
A+B
A
A
OR
NAND
A B
A + B = AB
A B
A.B = A + B
A + B = AB
A B
NOR A
A.B = A + B
B
NOT
A
A
Khái nhiệm về mức logic tích cực.
A A tích cực mức 1 Ví dụ,
A B
A
A
A tích cực mức 0
A tích cực cạnh lên
AB
A A tích cực cạnh xuống A + B = AB
A B
(b)
(a)
ÔÛ coång NAND (a) coù theå dieãn giaûi: Ngoõ ra tích cöïc ôû möùc thaáp chæ khi A vaø B ôû möùc cao ÔÛ coång NAND (b): Ngoõ ra tích cöïc ôû möùc cao khi A hoaëc B ôû möùc thaáp Ví duï, dieãn giaûi yù nghóa ngoõ ra Z theo caùc ngoõ vaøo ABCD sau `
A B Z C D
(a)
Trang 30
Bài Giảng Kỹ Thuật Số
Chương 2
A B Z
C D
(b) A B Z
C D
(c)
¾ Löu yù: khi hoaùn chuyeån caùc coång, moät nguyeân lyù chung laø: Keát noái ngoõ ra ñaûo cuûa coång naøy vaøo ngoõ vaøo ñaûo cuûa coång kia (hình b), vaø ngoû ra khoâng ñaûo cuûa coång naøy naøo ngoõ ra khoâng ñaûo cuûa coång kia (hình c) 2.9.
LOGIC DƯƠNG VÀ LOGIC ÂM ÖÙng vôùi ñieàu kieän hoïat ñoäng bình thöôøng, ñieän aùp cung caáp cho caùc ngoõ vaøo cuûa coång logic ñöôïc haïn cheá ñeå coù ñöôïc moät trong hai giaù trò 0 vaø 1. Khi möùc ñieän aùp ngoõ vaøo ñuùng cung caáp cho moät coång logic thì ñieän aùp ngoû ra seõ nhaän moät trong hai giaù trò. Logic döông: Möùc ñieän aùp cao trong hai möùc ñieän aùp bieåu thò möùc logic 1 vaø möùc ñieän aùp thaáp trong hai möùc ñieän aùp bieåu thò möùc logic 0 Logic aâm: Möùc ñieän aùp thaáp trong hai möùc ñieän aùp bieåu thò möùc logic 1 vaø möùc ñieän aùp cao trong hai möùc ñieän aùp bieåu thò möùc logic 0 Ví duï cho coång logic vaø quan heä giöõa ngoõ vaøo vaø ngoõ ra nhö sau: E1
Coång Logic
E2 E3 E1 0 0 0 0 +V +V +V +V
E2 0 0 +V +V 0 0 +V +V
Trang 31
E3 0 +V 0 +V 0 +V 0 +V
E0
E0 0 0 0 0 0 0 0 +V
Bài Giảng Kỹ Thuật Số
Chương 2
Baûng traïng thaùi logic döông ñöôïc moâ taû nhö sau E1 0 0 0 0 1 1 1 1
E2 0 0 1 1 0 0 1 1
E3 0 1 0 1 0 1 0 1
E0 0 0 0 0 0 0 0 1
Thaáy raèng E0 = 1 neáu E1, E2 vaø E3 = 1, nghóa laø: E0 = E1E2E3 Töø ñoù thaáy raèng, coång treân töông ñöông vôùi coång AND cho maïch logic döông Neáu chuyeån baûng traïng thaùi sang logic aâm, ñöôïc nhö sau E1 1 1 1 1 0 0 0 0
E2 1 1 0 0 1 1 0 0
E3 1 0 1 0 1 0 1 0
E0 1 1 1 1 1 1 1 0
E0 = 1 neáu E1 hoaëc E2 hoaëc E3 = 1, nghóa laø: E0 = E1+E2+E3 Töø ñoù thaáy raèng, coång treân töông ñöông vôùi coång OR cho maïch logic aâm Neáu coù moät haøm ñoái vôùi maïch logic döông, deã daøng xaùc ñònh haøm cho maïch ñoù nhöng öùng vôùi logic aâm baèng caùch aùp duïng ñònh lyù logic aâm Định lý logic âm Neáu moät maïch toå hôïp coù haøm F quan heä giöõa ngoõ ra vaø ngoõ vaøo theo logic döông, thì maïch toå hôïp ñoù seõ coù haøm ñoái ngaãu vôùi haøm F khi ngoõ vaøo vaø ngoõ ra ñöôïc ñònh nghóa theo logic aâm baèng caùch bieán ñoåi AND thaønh OR vaø ngöôïc laïi Ví dụ. Xeùt maïch toå hôïp sau: A G
B C
Giaû söû haøm G ñöôïc ñònh nghóa theo logic döông laø G= ABC + A.BC
Trang 32
Bài Giảng Kỹ Thuật Số
Chương 2
thì haøm G ñònh nghóa theo logic aâm seõ laø G = ( ABC + A.BC )D = ( A + B + C)(A + B + C) Ví dụ. ÖÙng duïng ñònh lyù logic aâm, tìm ñoái ngaãu cuûa haøm XOR 2.10. CÁC HÀM CƠ BẢN CỦA ĐẠI SỐ BOOLEAN VÀ CÁC PHƯƠNG PHÁP BIỂU DIỄN 2.10.1.
Hàm logic cơ bản
Moät haøm y=f(x1, x2, …, xn) vôùi caùc bieán x1, x2, …, xn chæ nhaän hai giaù trò 0 hoaëc 1 vaø haøm y cuõng chæ nhaän hai giaù trò 0 hoaëc 1 ñöôïc goïi laø haøm logic (1) Hàm logic một biến: y=f(x) Vì bieán x seõ nhaän moät trong hai giaù trò: 0 hoaëc 1, neân haøm y coù 4 khaû naêng hay thöôøng goïi laø 4 haøm y0, y1, y2, y3, vaø baûng chaân lyù nhö sau:
Haøm khoâng Haøm ñaûo
Baûng chaân lyù x 0 1 y0 0 0 y1 1 0
Haøm laëp Haøm ñôn vò
y2 y3
Teân haøm
0 1
Thuaät toùan logic y0 = 0
Haøm luoân baèng 0
y1 = x y2 = x y3 = 1 y3= x + x
1 1
Ghi chuù
Haøm luoân baèng 1
(2) Haøm logic hai bieán y=f(x1, x2) Vôùi hai bieán logic x1, x2, moãi bieán nhaän hai giaù trò laø 0, 1, nhö vaäy coù 16 toå hôïp logic taïo thaønh 16 haøm. Baûng toùm taét 16 haøm töø y0 – y15 Teân haøm
Baûng chaân trò 1 1 0 0 1 0 1 0 0 0 0 0 0 0 0 1
Thuaät toaùn logic
Haøm khoâng Haøm Piec
x1 x2 y0 y1
Haøm caám x1
y2
0 0
1
0
Y 2= x 1 x 2
Haøm ñaûo x1
y3
0 0
1
1
Y3 = x 1
Haøm caám x2
y4
0 1
0
0
Y 4= x 2 x 1
Haøm ñaûo x2
y5
0 1
0
1
Y5 = x 2
Haøm XOR
y6
0 1
1
0
Y6= x 1 x 2 + x 1 .x 2
Haøm Cheffer
y7
0 1
1
1
Y 7= x 1 + x 2 = x 1 x 2
Haøm AND Haøm XNOR
y8 y9
1 0 1 0
0 0
0 1
Y8 = x1x2 Y9 = x1x2 + x 1 .x 2
Haøm laëp theo x2 Haøm keùo theo x2
y10 1 0 y11 1 0
1 1
0 1
y10 = x2 Y11= x 1 +x2
Trang 33
Y0 = 0 Y1= x 1 .x 2 = x 1 + x 2
Ghi Chuù
Bài Giảng Kỹ Thuật Số
Chương 2
Haøm laëp theo x1 Haøm keùo theo x1
y12 1 1 y13 1 1
0 0
0 1
y12= x1 y13= x1+ x 2
Haøm OR Haøm ñôn vò
y14 1 1 y15 1 1
1 1
0 1
y14 = x1 + x2 y15=1
(3) Hàm logic n biến y=f(x1, x2,…, xn) Vôùi haøm logic n bieán, moãi bieán nhaän moät trong hai giaù trò 0 hoaëc 1 neân ta coù 2n toå hôïp bieán, moãi toå hôïp bieán laïi nhaän hai giaù trò 0 hoaëc 1, do vaäy soá haøm logic n taát caû laø 2 2 . Vôùi 1 bieán coù 4 khaû naêng taïo haøm, vôùi 2 bieán coù 16 khaû naêng taïo haøm, vôùi 3 bieán coù 256 khaû naêng taïo haøm, nhö vaäy khi soá bieán taêng thì soá haøm coù khaû naêng taïo thaønh raát lôùn. Tuy nhieân taát caû khaû naêng naøy ñeàu ñöôïc bieåu hieän qua caùc khaû naêng toång logic, tích logic vaø nghòch ñaûo logic cuûa caùc bieán. Trong taát caû caùc haøm ñöôïc taïo thaønh, ñaëc bieät chuù yù ñeán haøm toång chuaån vaø haøm tích chuaån. Haøm toång chuaån laø haøm chöùa toång caùc tích maø moãi tích coù ñuû taát caû caùc bieán cuûa haøm. Haøm tích chuaån laø haøm chöùa tích caùc toång maø moåi toång ñeàu coù ñuû taát caû caùc bieán cuûa haøm 2.10.2.
Các phương pháp biểu diễn hàm logic
(1) Phương pháp biểu diễn thành bảng ÔÛ ñaây caùc giaù trò cuûa haøm phuï thuoäc vaøo caùc bieán ñöôïc trình baøy trong moät baûng goïi laø baûng söï thaät. Ví dụ. moät haøm 2 bieán vôùi giaù trò haøm ñaõ cho ñöôïc bieåu dieãn thaønh baûng nhö sau: Giá trị thập phân X1 của tổ hợp biến X2 Y 0 0 0 1 1 0 1 X 2 1 0 0 3 1 1 1 Ghi chuù: daáu X laø giaù trò haøm khoâng xaùc ñònh (coù theå 0 hay 1) Öu ñieåm cuûa caùch bieåu dieãn haøm baèng baûng laø deã nhìn, ít nhaàm laãn. Nhöôïc ñieåm cuûa phöông phaùp naøy laø coàng keành, ñaëc bieät khi soá bieán lôùn (2) Phương pháp hình học ÔÛ ñaây mieàn xaùc ñònh cuûa haøm ñöôïc bieåu dieãn trong khoâng gian n chieàu. Moãi toå hôïp bieán ñöôïc bieåu dieãn thaønh 1 ñieåm ôû trong khoâng gian ñoù, öùng vôùi moãi ñieåm seõ ghi 1 giaù trò cuûa haøm. Hai ñieåm naèm treân cuøng moät truïc chæ khaùc nhau bôûi söï thay ñoåi giaù trò cuûa moät bieán.
Trang 34
Bài Giảng Kỹ Thuật Số
Chương 2
Sau ñaây minh hoïa caùch bieåu dieãn haøm logic 1 bieán, 2, 3 bieán döôùi daïng hình hoïc 0
1
x1
x
(a)
001
x2 100
000
11 x2
00
111
011
x1 10
110
010
101
x3
(c)
01 (b)
(3) Phương pháp biểu thức đại số Moät haøm logic n bieán baát kyø bao giôø cuõng coù theå bieåu dieãn thaønh haøm toång chuaån ñaày ñuû vaø tích chuaån ñaày ñuû Cách viết hàm dưới dạng tổng chuẩn đầy đủ
•
Chæ quan taâm ñeán toå hôïp bieán maø haøm coù giaù trò baèng 1. Soá laàn haøm baèng 1 seõ chính laø soá tích (minterm) cuûa caùc toå hôïp bieán
•
Trong moãi tích, caùc bieán coù giaù trò baèng 1 ñöôïc giöõ nguyeân, coøn caùc bieán coù giaù trò baèng 0 thì ñöôïc laáy giaù trò ñaûo
•
Haøm toång chuaån ñaày ñuû seõ laø toång caùc tích ñoù
Ví dụ, Thöù töï toå hôïp bieán 0 1 2 3 4 5 6 7
A
B
C
F
0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
0 0 1 1 0 0 0 1
Minterm
→ →
ABC ABC
→
ABC
Vaäy F =ΣABC (2,3,7) = ABC + ABC + ABC Cách viết hàm dưới dạng tích chuẩn đầy đủ
•
Chæ quan taâm ñeán toå hôïp bieán maø haøm coù giaù trò baèng 0. Soá laàn haøm baèng 0 seõ chính laø soá toång (maxterm) cuûa caùc toå hôïp bieán
•
Trong moãi toång caùc bieán coù giaù trò 0 ñöôïc giöõ nguyeân, coøn caùc bieán coù giaù trò 1 ñöôïc laáy ñaûo.
•
Haøm tích chuaån ñaày ñuû seõ laø tích caùc toång ñoù
Trang 35
Bài Giảng Kỹ Thuật Số
Chương 2
Ví dụ, Thöù töï toå hôïp bieán 0 1 2 3 Vaäy
A
B
f
0 0 1 1
0 1 0 1
0 1 0 0
Maxterm A+B A+B A+B
f= ΠAB(0,2,3) = (A+B) ( A+B )( A+B )
(4) Phương pháp biểu diễn bằng bìa Karnaugh
•
Ñeå bieåu dieãn haøm logic n bieán, caàn thaønh laäp moät baûng coù 2n oâ, moãi oâ töông öùng vôùi moät toå hôïp bieán. Ñaùnh soá thöù töï cuûa caùc oâ trong baûng töông öùng vôùi giaù trò cuûa toå hôïp bieán
•
Caùc oâ caïnh nhau hoaëc ñoái xöùng nhau chæ cho pheùp khaùc nhau veà giaù trò cuûa moät bieán
•
Trong caùc oâ ghi giaù trò cuûa haøm töông öùng vôùi giaù trò cuûa toå hôïp bieán ñoù
Mô tả hàm f hai biến bằng bìa Karnaugh
f B A=0, B=0 A=0, B=1
A
0
1
0
A=1, B=0
1
A=1, B=1
Moãi moät oâ vuoâng bieåu dieãn moät minterm cuûa haøm f neáu noù coù giaù trò 1, vaø bieåu dieãn moät maxterm neáu coù giaù trò 0. Ñoïc giaù trò minterm, maxterm naøy gioáng nhö ñoái vôùi baûng söï thaät Ví dụ, Haøm f ñöôïc bieåu dieãn baèng baûng söï thaät vaø baèng bìa Karnaugh nhö sau
A 0 0 1 1
B 0 1 0 1
f 1 1 0 0
f B
A
f 0
1
0
1
0
1
1
0
B A.B AB
Töø bìa Karnaugh ta cuõng coù theå vieát laïi haøm f = A.B + AB
Trang 36
A
0
1
0
1
0
1
1
0
Bài Giảng Kỹ Thuật Số
Chương 2
Mô tả hàm f ba biến bằng bìa Karnaugh A 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
C 0 1 0 1 0 1 0 1
f 0 0 1 1 1 0 1 0
f
A
0
1
00
0
1
01
0
0
11
1
0
10
1
1
BC
ABC=110 thì f=1
Lưu ý: caùc oâ caïnh nhau hoaëc ñoái xöùng nhau chæ cho pheùp khaùc nhau veà giaù trò cuûa moät bieán Mô tả hàm f 4 biến bằng bìa Karnaugh Ví dụ, Moâ taû haøm f(a,b,c,d) = acd + ab + d
f
ab 00
01
11
10
00
1
1
1
1
01
1
1
1
1
11
0
1
1
1
10
0
1
0
0
cd
Mô tả hàm f 5 biến bằng bìa Karnaugh Moät bìa 5 bieán coù theå ñöôïc xaây döïng treân khoâng gian 3 chieàu baèng caùch ñaët moät bìa 4 bieán treân moät bìa thöù hai. Soá haïng lôùp döôùi ñöôïc ñaùnh soá töø 0 ñeán 15, soá haïng ôû lôùp treân ñöôïc ñaùnh soá töø 16 ñeán 31. Vì vaäy soá haïng nhoùm döôùi chöùa A vaø soá haïng nhoùm treân chöùa A
f
A 1/0
BC 00 DE 00 01 11
A.B.CDE
10
01
16
1
28
1
1
0
17
4 21
19
23
1
3 22
1
Trang 37
2
1 12
1
5
1
113
18 19
27
1
11 26
30 6
1
15
7
1
1
25
31
1
10 24
29
1
18
11
20
14
10
A.BCDE
Bài Giảng Kỹ Thuật Số
Chương 2
Ngoaøi ra ta coù theå moâ taû haøm 5 bieán nhö sau:
A=0
f
BC 00 DE
A=1
01
11
11
10
11
01
00
00
0
2
6
4
5
7
3
1
01
8
10
14
12
13
15
11
9
11
24
26
30
28
29
21
27
25
10
16
18
22
20
21
23
19
17
Mô tả hàm f 6 biến bằng bìa Karnaugh
f
ABC 000
001
011
010
110
111
101
100
000
0
1
3
2
6
7
5
4
001
8
9
11
10
14
15
13
12
011
24
25
27
26
30
21
29
28
010
16
17
19
18
22
33
21
20
110
48
49
51
50
54
55
53
52
111
56
57
59
58
62
63
61
60
101
40
41
43
42
46
47
45
44
100
32
33
35
34
38
39
37
36
DEF
2.11. TỐI THIỂU HÓA HÀM LOGIC BẰNG BÌA KARNAUGH Các bước thực hiện Bước 1. Bieåu dieãn haøm ñaõ cho thaønh baûng Karnaugh Bước 2. Xaùc ñònh nhoùm caùc tích cöïc tieåu hoaëc caùc toång cöïc tieåu (nhoùm 2k oâ keá caän hoaëc ñoái xöùng vôùi ñieàu kieän trong moãi nhoùm phaûi coù ít nhaát 1 oâ chöa ñöôïc nhoùm bôûi caùc nhoùm khaùc) Bước 3. Trong moãi nhoùm, caùc bieán coù giaù trò gioáng nhau thì giöõ laïi, caùc bieán coù giaù trò khaùc nhau thì ñôn giaûn, sau ñoù vieát haøm keát quaû theo toång hoaëc theo tích
Trang 38
Bài Giảng Kỹ Thuật Số
Chương 2
Ví dụ, tích cực tiểu 2 ô kế cận
x
C
C
0 1 AB 1 0 AB (a)
0 0 0 0
A.B A.B
x A.B A.B
x=ABC+ABC = BC
AB AB
C
C 0 1 0 0 (b)
0 X 0 0
C.D
CD
0 0 0 1
0 0 X 0 (d)
x=ABC+ABC = AB
Ví dụ, ruùt goïn bìa K sau
x
C
C
1 0 AB 0 1 AB (c)
X X 0 0
A.B A.B
x A.B A.B
AB AB
CD CD 1 1 0 0 0 0 0 X
Ví dụ, tích cực tiểu 4 ô kế cận
x
C
C
0 0 AB X 0 AB (a)
1 X 1 1
A.B A.B
x
C.D
CD
0 0 1 0
0 0 1 0 (b)
A.B A.B
x=C
AB AB
CD CD X 0 0 0 x=AB X 1 0 0
Ví dụ, ruùt goïn bìa K sau
x A.B A.B
AB AB
C.D
1 0 0 X
x
CD CD 0 0 0 1 1 0 X 1 0 0 0 0 (c) x
CD
A.B A.B
AB AB
A.B A.B
AB AB
C.D
CD
1 0 0 1
0 1 0 X (e)
CD CD 0 1 0 0 0 0 X X
Trang 39
C.D
CD
0 0 X 1
0 0 0 0 (d)
CD CD X 1 0 0 0 1 X 1
Bài Giảng Kỹ Thuật Số
Chương 2
Ví dụ, tích cực tiểu 8 ô kế cận
x
x A.B A.B
AB AB
C.D
CD
0 1 1 0
0 1 1 0 (a)
CD CD X 0 1 1 x=B X 1 X 0
Ví dụ, ruùt goïn bìa K sau
x A.B A.B
AB AB
C.D
CD
1 X 0 1
1 0 0 1 (c)
A.B A.B AB AB
C.D
CD
1 X 1 1
1 X 1 1 (b)
C.D
CD
1 1 1 1
0 0 0 0 (d)
CD CD 0 0 x= C 0 X 0 0 0 0
x
CD CD 1 0 0 1
A.B A.B
1 X 0 1
AB AB
Trang 40
CD CD 0 1 0 1 0 1 0 1
Bài Giảng Kỹ Thuật Số
Chương 2
Bài tập chương 2
2.1. Vẽ dạng sóng ngõ ra cho mạch hình sau (A)
(A) (B) (C)
(B)
X
(C)
2.2. Giả sử ngõ vào A (bài 2.1) = 0, vẽ dạng sóng ngõ ra. 2.3. Giả sử ngõ vào A (bài 2.1) = 1, vẽ dạng sóng ngõ ra. 2.4. Có bao nhiêu tổ hợp ngõ vào của cổng OR 5 ngõ vào làm cho ngõ ra ở mức cao? 2.5. Thay đổi cổng OR ở bài 2.1 thành cổng AND a. Vẽ sóng ngõ ra b. Vẽ sóng ngõ ra nếu ngõ vào A nối mass c. Vẽ sóng ngõ ra nếu ngõ vào A nối +5V 2.6. Thêm cổng đảo ở ngõ ra của cổng OR (bài 2.1). Vẽ dạng sóng tại ngõ ra của cổng đảo. 2.7. Viết biểu thức Boolean cho ngõ ra X. Xác định gia trị của X ứng với các điều kiện ngõ vào có thể và liệt kê các giá trị vào bảng sự thật. A B X
C 2.8. Làm lại với các yêu cầu tương tự bài 2.7 A B C
X
D
Trang 41
Bài Giảng Kỹ Thuật Số
Chương 2
2.9. Xác định bảng sự thật đầy đủ cho mạch ở bài 2.8 bằng cách tìm mức logic hiện điện tại ngõ ra ứng với mỗi sự kết hợp của ngõ vào. 2.10. Thay cổng OR thành cổng AND, cổng AND thành cổng OR ở bài 2.8, viết biểu thức ngõ ra. 2.11. Ứng với mỗi biểu thức bên dưới, xây dựng mạch logic tương ứng, dùng cổng AND, OR, cổng đảo a. x = AB(C + D ) b. z = ( A + B + CD E ) + BC D c. y = ( M + N ) + PQ d. x = W + PQ e. z = MN ( P + N ) 2.12. Vẽ dạng sóng ngõ ra (A)
(A) (B) (C)
(B)
X
(C) 2.13. Làm lại bài 2.12 với cổng NAND 2.14. Viết biểu thức ngõ ra cho mạch sau và xác định bảng sự thật A B
X
C 2.15. Thay đổi mạch điện được xây dựng trong bài 2.15 chỉ dùng cổng NAND 2.16. Hoàn tất các biểu thức sau a. A + 1 = b. A . A = c. B . B = d. C + C = e. X . 0 = f. D . 1 = g. D + 0 = h. C + C = i. G + GF = j. y + wy = Trang 42
Bài Giảng Kỹ Thuật Số
Chương 2
2.17. Đơn giản biểu thức sau a. x = ABC + AC b. y = (Q + R ) Q + R
(
)
c. w = ABC + ABC + A d. q = RST R + S + T
(
)
e. x = ABC + ABC + ABC + ABC + ABC f.
(
)(
)
z = B +C B +C A+ B +C
g. x=(M+N)(M+P)(N+P) h. z=ABC+ABC+BCD i. y = C + D + AC D + ABC + ABCD + AC D
(
)
2.18. Hãy chứng minh định lý DeMorgan bằng tất cả các cách có thể. 2.19. Đơn giản biểu thức bên dưới dùng định lý DeMorgan: a. ABC b. A+BC c. ABCD d. A(B+C)D e. (M+N)(M+N) f.
ABCD
2.20. Trình bày cách tạo cổng NAND 2 ngõ vào từ cổng NOT 2 ngõ vào. 2.21. Trình bày cách tạo cổng NOR 2 ngõ vào từ cổng NAND 2 ngõ vào. 2.22. Hoàn tất bảng sự thật cho mạch sau A B
X
C D E
2.23. Chỉ ra cách thực hiện x = A BC bằng 1 cổng NOR 2 ngõ vào và 1 cổng NAND 2 ngõ vào. 2.24. Thực hiện biểu thức Y = ABCD sử dụng các cổng NAND 2 ngõ vào.
Trang 43
Bài Giảng Kỹ Thuật Số
Chương 2
2.25 Rút gọn bìa Karnaugh sau
A.B A.B AB AB
A.B A.B AB AB
C.D
CD
0 X 0 0
0 1 1 0 (a)
C.D
CD
X 0 1 0
1 1 X 0 (c)
CD CD 0 1 X 1
1 0 0 0
A.B A.B AB AB
CD CD 0 X 1 1
0 1 0 0
2.26 Rút gọn hàm bài 2.17 dùng bìa Karnaugh
Trang 44
C.D
CD
0 1 1 0
0 1 1 0 (b)
CD CD 1 1 0 0
0 1 0 0
Bài Giảng Kỹ Thuật Số
Chương 3
CHƯƠNG 3. MẠCH LOGIC TỔ HỢP 3.1. GIỚI THIỆU Chöông 2 ñaõ khaûo saùt caùc pheùp toaùn cuûa taát caû caùc coång logic vaø vieäc söû duïng ñaïi soá Boolean ñeå moâ taû vaø phaân tích caùc maïch keát hôïp töø caùc coång logic. Caùc maïch naøy ñöôïc goïi laø maïch logic toå hôïp, vì möùc logic ngoõ ra chæ phuï thuoäc vaøo toå hôïp logic ngoõ vaøo hieän taïi. Moät maïch toå hôïp thì khoâng coù ñaëc tính nhôù Caùc phöông phaùp toái thieåu hoùa thöôøng ñöôïc söû duïng trong thieát keá soá laø: •
Söû duïng caùc ñònh lyù cuûa ñaïi soá Boolean
•
Caùc kyõ thuaät duøng bìa (Karnaugh, Quine Mc. Cluskey)
Mô hình mạch tổ hợp với n đầu vào và m đầu ra X1 X2
MẠCH TỔ HỢP
Xn
Y1 Y2
Ym
3.2. THIẾT KẾ MẠCH LOGIC TỔ HỢP 3.2.1. Các bước thiết kế mạch logic tổ hợp •
ÖÙng vôùi moãi toå hôïp ngoõ vaøo, ñaët caùc möùc logic ngoõ ra theo yeâu caàu thieát keá, taát caû caùc khaû naêng ngoõ ra cuûa moät maïch logic coù theå ñöôïc bieåu dieãn thoâng qua baûng söï thaät.
•
Töø baûng söï thaät suy ra bieåu thöùc Boolean cho maïch caàn thieát keá
•
Ruùt goïn bieåu thöùc Boolean
•
Chuyeån bieåu thöùc Boolean thaønh maïch toå hôïp
Ví dụ, Thieát keá moät maïch logic 3 ngoõ vaøo, A, B, C vôùi yeâu caàu: ngoõ ra seõ ôû möùc cao khi coù ít nhaát 2 ngoõ vaøo ôû möùc cao Giải. Bước 1. Thieát laäp moät baûng söï thaät, coù taát caû 8 khaû naêng ñoái vôùi ngoõ vaøo. Döïa vaøo yeâu caàu baøi toaùn, ngoõ ra seõ ôû möùc 1 khi coù 2 hay 3 ngoõ vaøo ôû möùc 1, caùc tröôøng hôïp coøn laïi ngoõ ra ôû möùc 0. GV: Nguyễn Trọng Hải
Trang 45
Bài Giảng Kỹ Thuật Số A 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
Chương 3
C 0 1 0 1 0 1 0 1
X 0 0 0 1 0 1 1 1
Minterm
A.BC A BC ABC ABC
Bước 2. Vieát bieåu thöùc ngoõ ra döôùi daïng minterm (cho moãi tröôøng hôïp X=1) X = A.BC + ABC + ABC + ABC Bước 3. Coù theå vieát laïi X=ABC+ABC+ABC+ABC+ABC+ABC
Nhoùm caùc soá haïng laïi vôùi nhau X=BC(A+A)+AC(B+B)+AB(C+C)=BC+AC+AB
Bước 4. Bieåu thöùc ngoõ ra ñöôïc thöïc hieän nhö sau: 74LS08
B C
A B
A
X
X 1
C 74LS08
74LS08
Hình (a)
Hình (b)
Ngöôøi ta cuõng co theå bieán ñoåi bieåu thöùc treân thaønh x=C(B + A) + AB, vaø maïch logic ñöôïc thöïc hieän nhö hình (b) Maïch (b) coù phaàn ñôn giaûn hôn vì chæ söû duïng caùc coång 2 ngoõ vaøo thay vì phaûi söû duïng coång OR 3 ngoõ vaøo nhö maïch (a). Treân thöïc teá ngöôøi thieát keá vaãn choïn maïch (a) bôûi vì nhieàu lyù do, moät trong nhöõng lyù do laø tín hieäu ngoõ vaøo A, B ôû maïch (b) phaûi qua 3 coång logic tröôùc khi ñöôïc ñöa ra ngoõ ra. Ñieàu naøy coù theå aûnh höôûng raát lôùn trong moät heä thoáng soá toác ñoä cao. Ví dụ, Thieát keá moät maïch logic 4 ngoõ vaøo, A, B, C, D (trong ñoù A öùng vôùi MSB, vaø D öùng vôùi LSB) vôùi yeâu caàu ngoõ ra seõ ôû möùc cao khi giaù trò thaäp phaân cuûa caùc ngoõ vaøo ABCD > 610
GV: Nguyễn Trọng Hải
Trang 46
Bài Giảng Kỹ Thuật Số
Chương 3
3.2.2. Một số điểm quan trọng khi thực hiện thiết kế cuối cùng Trong caùc ví duï veà thieát keá treân, caùc maïch ñöôïc thöïc hieän thoâng qua caùc coång AND vaø OR, trong ñoù moät hay nhieàu coång AND laùi moät coång OR do vieäc bieåu dieãn haøm döôùi daïng minterm. Khi bieåu dieãn haøm döôùi daïng minterm ta coù theå deã daøng chuyeån ñoåi caùc coång logic thaønh moät coång NAND duy nhaát (löu yù xem laïi phaàn chuyeån ñoåi ñaõ khaûo saùt ôû chöông 2), bôûi vì coång NAND laø coång logic coù ñaùp öùng nhanh nhaát trong hoï logic TTL, ñaây laø moät ñaëc tính quan troïng caàn phaûi löu yù. Ví dụ, bieán ñoåi maïch cuûa 2 ví duï treân duøng coång NAND B C
B C
A
X
A
74LS08
3.3. KỸ THUẬT CỰC TIỂU QUINE-Mc CLUSKEY Caùc heä thoáng soá hieän ñaïi ñöôïc thieát keá baèng caùch söû duïng caùc thieát bò logic phöùc taïp, do ñoù ñoøi hoûi moät kyõ thuaät toái hieåu hoùa haøm logic vôùi söï hoã trôï cuûa maùy tính thay vì laøm baèng tay vôùi caùc yeâu caàu: •
Coù khaû naêng xöû lyù moät soá lôùn caùc bieán
•
Khoâng phuï thuoäc vaøo khaû naêng cuûa ngöôøi duøng trong vieäc nhaän bieát caùc phaàn töû nguyeân toá
•
Ñaûm baûo bieåu thöùc ñöôïc cöïc tieåu hoùa
•
Phuø hôïp cho giaûi phaùp baèng maùy tính
Phương pháp: Bước 1. Chuyển hàm về dạng minterm Bước 2. Sắp xếp các số hạng minterm của hàm theo từng nhóm có chung số bit 1 Bước 3. Áp dụng định lý A+A =1 cho 2 minterm chỉ sai khác nhau 1 bit 1. Lặp lại cho đến khi nhóm xong các minterm Bước 4. Quan sát bảng các nguyên tố cơ bản được rút gọn, xác định cột chỉ chứa một minterm Bước 5. Viết hàm dưới dạng tổng chuẩn rút gọn của các minterm đó Ví dụ. Ruùt goïn haøm Boolean sau duøng phöông phaùp Quin McCluskey Y=∑ ABCD (0,1,2,3,5,7,8,9,11,14) GV: Nguyễn Trọng Hải
Trang 47
X
Bài Giảng Kỹ Thuật Số
Chương 3
Bước 2. Nhoùm (soá bit 1) 1
Minterm 1 2 8 3 5 9 7 11 14
2
3
A 0 0 1 0 0 1 0 1 1
Caùc bieán B C 0 0 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 1
D 1 0 0 1 1 1 1 1 0
A 0 0 0 0 0 1 0 0 1 1
Caùc bieán B C 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 1 1 0 1 1
D 0 0 1 1 1 1 1 1 1 0
Bước 3. Nhoùm caùc minterm chæ sai khaùc 1 bit Nhoùm 1
2
3
4
Minterm 0,1 0,2 0,8 1,3 1,5 1,9 2,3 8,9 3,7 3,11 5,7 9,11 14
Laëp laïi böôùc 3, tieáp tuïc nhoùm caùc minterm chæ sai khaùc 1 bit Nhoùm 1 2 3
Nguyeân toá cô baûn AB
0,1,2,3 0,1,8,9
A 0 -
Caùc bieán B C 0 0 0
D -
1,3,5,7 1,3,9,11
0 -
0
-
1 1
AD
14
1
1
1
0
ABCD
Minterm
BC
BD
Bước 4. Quan saùt caùc nguyeân toá vaø tìm caùc coät chæ chöùa moät gaïch cheùo (kyù hieäu ⊗) GV: Nguyễn Trọng Hải
Trang 48
Bài Giảng Kỹ Thuật Số
Caùc nguyeân toá
Chương 3
Caùc soá thaäp phaân
Caùc minterm 0
1
2
3
5
7
8
9
11
14
⊗
ABCD
14
AB
0,1,2,3
X
X
BC
0,1,8,9
X
X
AD
1,3,5,7
X
X
BD
1,3,9,11
X
X
⊗
X
⊗ ⊗
X
⊗ X
⊗
Thaáy raèng, taát caû caùc nguyeân toá ñeàu coù ⊗, ñaây laø caùc minterm ñaõ cöïc tieåu hoùa, vaäy haøm cuoái cuøng laø Y= ABCD + A B + B C + A D + B D Ví dụ. Ruùt goïn haøm Boolean sau duøng phöông phaùp Quin McCluskey
Y=∏ ABCD (2,4,5,6,10,12,13,14) 3.4. THIẾT KẾ MẠCH KHÔNG SỬ DỤNG BẢNG SỰ THẬT Moät soá baøi toaùn thieát keá ñoâi khi coù theå giaûi quyeát tröïc tieáp maø khoâng qua caùc böôùc thieát keá treân, ñoái vôùi nhöõng baøi toaùn naøy ñoøi hoûi phaûi hieåu roõ nhöõng pheùp toaùn logic, caùc coång logic vaø caùc tính chaát cuûa coång logic. Xeùt moät vaøi ví duï sau ñaây 3.4.1. Mạch so sánh số nhị phân 2 bit Bài toán
x1 x0
Mạch
y1 y0
sánh
so
z
Thieát keá maïch sao cho ngoõ ra seõ ôû möùc cao khi x1x0 = y1y0 Giaûi. Coù theå giaûi baøi toaùn baèng caùch laäp baûng söï thaät roài ruùt goïn haøm Tuy nhieân, neáu ta xeùt ñeán ñaëc ñieåm cuûa pheùp toaùn töông ñöông hay coång XNOR (ngoõ ra seõ ôû möùc cao neáu 2 ngoõ vaøo baèng nhau) ta seõ thaáy vaán ñeà caàn giaûi quyeát seõ ñôn giaûn hôn nhieàu.
GV: Nguyễn Trọng Hải
Trang 49
x1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
x0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
y1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
y0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
z 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1
Bài Giảng Kỹ Thuật Số
Chương 3
Coát loõi cuûa baøi toaùn laø so saùnh x0 vôùi y0 vaø x1 vôùi y1, ta seõ coù maïch nhö sau: X1 X0
Z
Y1
74LS08
Y0
3.4.2. Mạch tạo và kiểm tra chẵn lẻ Khi truyeàn döõ lieäu töø maùy phaùt sang maùy thu, coù nhieàu caùch ñeå kieåm tra loãi trong khi truyeàn, moät trong nhöõng caùch ñôn giaûn nhaát laø theâm 1 bit vaøo döõ lieäu ñöôïc truyeàn ñi, bit ñoù goïi laø bit chaün leû (parity bit). Parity bit coù hai giaù trò 0 hay 1 tuøy thuoäc vaøo soá bit 1 coù trong nhoùm maõ. coù hai phöông phaùp taïo bit parity. Phương pháp parity chẵn Giaù trò cuûa bit parity ñöôïc choïn sao cho toång caùc chöõ soá 1 trong nhoùm maõ laø soá chaün. Neáu soá bit 1 trong nhoùm maõ laø leû thì bit parity theâm vaøo laø 1 Neáu soá bit 1 trong nhoùm maõ laø chaün thì bit parity theâm vaøo laø 0 Ví duï maõ ASCII cuûa chöõ C laø 1000011, nhoùm maõ naøy coù 3 bit 1 vì vaäy seõ ñaët theâm parity bit laø 1 ñeå sao cho nhoùm maõ taïo ra coù soá bit 1 laø chaün (4 bit 1) 11000011 Bit parity theâm vaøo maõ ASCII cuûa chöõ A laø 1000001, bit parity theâm vaøo seõ laø bit 0 (01000001) Maïch taïo Parity chaün döïa treân phöông phaùp so saùnh soá bit 1 D3 D2 D1 D0
Parity (P)
To Receiver
Ngoõ ra coång XOR ôû möùc cao khi soá bit 1 ôû ngoõ vaøo laø leû Ta coù theå thieát keá maïch duøng baûng söï thaät vaø keát quaû cuõng gioáng nhö treân
GV: Nguyễn Trọng Hải
Trang 50
Bài Giảng Kỹ Thuật Số
Chương 3
Phương pháp Parity lẻ Giaù trò cuûa bit parity ñöôïc choïn sao cho toång caùc chöõ soá 1 trong nhoùm maõ laø soá leû. Neáu soá bit 1 trong nhoùm maõ laø leû thì bit parity theâm vaøo laø 0 Neáu soá bit 1 trong nhoùm maõ laø chaün thì bit parity theâm vaøo laø 1 Ví duï maõ ASCII cuûa chöõ C laø 1000011, nhoùm maõ naøy coù 3 bit 1 vì vaäy seõ ñaët theâm parity bit laø 0 ñeå sao cho nhoùm maõ taïo ra coù soá bit 1 laø leû 01000011 Bit parity theâm vaøo maõ ASCII cuûa chöõ A laø 1000001, bit parity theâm vaøo seõ laø bit 1 (11000001) Mạch kiểm tra chẵn lẻ Maïch kieåm tra chaün töông töï nhö maïch phaùt parity chaün, cuõng döïa treân nguyeân lyù cuûa coång XOR, ngoõ ra seõ ôû möùc cao neáu caùc ngoõ vaøo coù soá bit 1 laø chaün. Nghóa laø khi ngoõ ra ôû möùc 1: khoâng coù loãi, khi ngoõ ra ôû möùc 0: coù loãi trong khi truyeàn. Maïch nhö hình sau P D3 D2 D1 D0
Error (E) 0=no error 1=error
Maïch chæ kieåm tra caùc bit goác coù bò loãi hay khoâng chöù khoâng bieát ñöôïc bit naøo loãi trong tröôøng hôïp phaùt hieän ñöôïc loãi 3.4.3. Mạch cho phép/cấm Moãi coång logic cô baûn coù theå ñöôïc söû duïng ñeå ñieàu khieån cho pheùp hoaëc khoâng cho pheùp caùc tín hieäu ñi qua coång ñoù. ÔÛ ñaây ta söû duïng moät ngoõ vaøo laøm chaân ñieàu khieån cho pheùp hoaëc caám, ngoõ coøn laïi caáp tín hieäu
Control
Control Cổng logic
Không thay đổi trạng thái
Traïng thaùi caám (ñoùng coång)
GV: Nguyễn Trọng Hải
Trang 51
Cổng logic
Traïng thaùi cho pheùp (môû coång)
Bài Giảng Kỹ Thuật Số
Chương 3
Ví dụ, Thieát keá maïch logic cho pheùp tín hieäu ñi qua chæ khi hai ngoõ ñieàu khieån B vaø C ñeàu ôû möùc cao, caùc tröôøng hôïp coøn laïi ngoõ ra ôû möùc thaáp Giải. A B C
X 74LS11
Ví dụ Thieát keá maïch logic cho pheùp tín hieäu ñi qua chæ khi 2 ngoõ vaøo ñieàu khieån coù möùc logic khaùc nhau. Ví dụ, Thieát keá maïch logic vôùi tín hieäu ngoõ vaøo taïi A, ñieàu khieån taïi B, ngoõ ra X vaø Y nhö sau: Khi B=1 ngoõ ra X = A, Y = 0 Khi B=0 ngoõ ra X = 0, Y= A
GV: Nguyễn Trọng Hải
Trang 52
Bài Giảng Kỹ Thuật Số 3.5.
Chương 3
MẠCH GIẢI MÃ (Decoder)
Laø maïch logic giaûi maõ N-bit nhò phaân ngoõ vaøo thaønh M ñöôøng ngoõ ra, chæ duy nhaát moät ñöôøng ngoõ ra ôû möùc tích cöïc öùng vôùi moät toå hôïp N-bit ngoõ vaøo. Goïi boä giaûi maõ laø boä phaùt hieän maõ O0 O1 O2
A0
N input
A1 A2
Decoder
M output
OM-1
AN-1
Moät soá maïch giaûi maõ khoâng söû duïng heát taát caû caùc khaû naêng cuûa ngoõ vaøo, vì vaäy öùng vôùi toå hôïp ngoõ vaøo khoâng söû duïng thì khi thieát keá khoâng coù ngoõ ra naøo tích cöïc 3.5.1. Mạch giải mã 3 sang 8 Maïch coù 3 ngoõ vaøo vaø 8 ngoõ ra, coøn ñöôïc goïi laø maïch giaûi maõ nhò phaân sang octal (binary to octal decoder), vôùi ngoõ ra tích cöïc möùc 1, coù baûng söï thaät nhö sau Bảng sự thật C 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
A 0 1 0 1 0 1 0 1
Q0 1 0 0 0 0 0 0 0
Q1 0 1 0 0 0 0 0 0
Q2 0 0 1 0 0 0 0 0
Q3 0 0 0 1 0 0 0 0
Q0 = C.B.A A (LSB)
Q3 = C.BA Q4 = CB.A
Q6 0 0 0 0 0 0 1 0
Q7 0 0 0 0 0 0 0 1
Q1 = C.B.A Q2 = C.BA
B
Q3 = C.BA
Q5 = CB.A Q6 = CB.A
Q5 0 0 0 0 0 1 0 0
Q0 = C.B.A
Q1 = C.B.A Q2 = C.BA
Q4 0 0 0 0 1 0 0 0
C (MSB)
Q7 = CBA
Q4 = CB.A Q5 = CB.A
Tröôøng hôïp ngoõ ra tích cöïc möùc 0 laøm töông töï
Q6 = CB.A Q7 = CBA
GV: Nguyễn Trọng Hải
Trang 53
Bài Giảng Kỹ Thuật Số
Chương 3
3.5.2. Ngõ vào cho phép Ña soá caùc boä giaûi maõ ñeàu coù moät hoaëc nhieàu ngoõ vaøo cho pheùp ñeå ñieàu khieån hoaït ñoäng cuûa boä giaûi maõ. Ví dụ, xeùt boä giaûi maõ ôû treân, keát noái moãi coång AND ngoõ ra vôùi chaân ñieàu khieån cho pheùp chung ENABLE. Khi ENABLE=1, cho pheùp coång AND hoaït ñoäng bình thöôøng ôû cheá ñoä giaûi maõ, khi ENABLE ôû möùc thaáp ngoõ ra cuûa caùc coång AND ñöôïc ñaët ôû möùc 0, nghóa laø maïch cho pheùp giaûi maõ öùng vôùi ngoõ ENABLE=1 vaø khoâng cho pheùp öùng vôùi ENABLE=0 3.5.3. Giải mã 3 sang 8 dùng IC74LS138 G2A
G2B
G1
Output
0
0
1
Ngoõ ra tích cöïc theo maõ cuûa A2A1A0
1
x
x
Khoâng giaûi maõ, ngoõ ra ôû möùc cao
x
1
x
Khoâng giaûi maõ, ngoõ ra ôû möùc cao
x
x
0
Khoâng giaûi maõ, ngoõ ra ôû möùc cao
(MSB) A2
A1
A B C
G1 G2A G2B 74LS138
G2A G2B G1
A0 (LSB)
74LS11
Y7
Y6
Y5
Y4
Y3
Y2
Y1
Ví dụ Xaùc ñònh ngoõ ra naøo cuûa 74LS138 tích cöïc öùng vôùi caùc ngoõ vaøo nhö sau: G2A = 0; G2B = G1=1 ; A2 = A1 = 1 ; A0 = 0 G2A = G2B = 0 ; G1=1 ; A2 = 0 ; A1 = A0 = 1
GV: Nguyễn Trọng Hải
Trang 54
Y0
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
Bài Giảng Kỹ Thuật Số
Chương 3
3.7. BOÄ CHOÏN KEÂNH (MULTIPLEXERS) Moät boä choïn keânh töông töông vôùi boä chuyeån maïch soá, noù keát noái data töø n nguoàn khaùc nhau. Ngoõ ra seõ choïn moät trong caùc nguoàn data ngoõ vaøo tuøy thuoäc vaøo caùc ngoõ löïa choïn Multiplexer Enable Select
EN s s s
n data sources
SEL
s
D1
s
D0
s
D1
s
Y s
s
D0
Data output
Dn-1
Data output
Dn-1
Selector Enable
Vôùi 2n ngoõ vaøo thì caàn n bit select 3.7.1. Maïch choïn keânh 2 ngoõ vaøo cô baûn Select 0 1
I1
Output Z=I0 Z=I1
74LS08
I0
Z=I0 .S+I1.S
Z 74LS32
1
74LS04
3.7.2. Maïch choïn keânh 4 ngoõ vaøo
S
I0
S1
S0
Output
0
0
Z=I0
0
1
Z=I1
1
0
Z=I2
1
1
Z=I3
74LS11 74LS04
I1 Z I2 1
I3
SELECT S1
GV: Nguyễn Trọng Hải
Trang 62
S0
Bài Giảng Kỹ Thuật Số
Chương 3
3.7.3. Maïch choïn keânh 8 ngoõ vaøo 74LS151
74LS151 G 1 0 0 0 0 0 0 0 0
C x 0 0 0 0 1 1 1 1
B x 0 0 1 1 0 0 1 1
A x 0 1 0 1 0 1 0 1
G
Y 0 D0 D1 D2 D3 D4 D5 D6 D7
D0 D1 Y D2 D3 D4 D5 W D6 D7 A B C
W= Y Ví dụ Duøng 2 IC 74ls151 vaø 1 coång ñaûo, moät coång OR thieát keá maïch choïn keânh 16 ngoõ vaøo, 1 ngoõ ra vaø 4 ngoõ select S0, S1, S2, S3 3.7.4. Maïch choïn keânh 2 nhoùm ngoõ vaøo 74LS157 1A 1B 2A 2B 3A 3B 4A 4B
74LS157 chöùa 2 nhoùm ngoõ vaøo nhö hình sau
G
A /B X 0 1
1 0 0
1Y
2Y
3Y
4Y
0 1A 1B
0 2A 2B
0 3A 3B
0 4A 4B
1Y 2Y 3Y 4Y
A/B G 74LS157
3.7.5. Caùc öùng duïng cuûa maïch choïn keânh
Caùc boä choïn keânh coù nhieàu öùng duïng khaùc nhau trong caùc heä thoáng soá. Caùc öùng duïng bao goàm: choïn data, hoïat ñoäng tuaàn töï, chuyeån ñoåi song song sang noái tieáp, taïo daïng soùng, taïo caùc haøm logic... phaàn naøy seõ ñeà caäp ñeán moät soá öùng duïng, moät soá coøn laïi seõ ñöôïc xeùt ñeán ôû caùc chöông sau Mạch tạo hàm logic Ví dụï. Thöïc hieän baûng söï thaät sau söû duïng multiplexer
C 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
A 0 1 0 1 0 1 0 1
Z 0 1 1 0 0 0 0 1
Các biến ngõ vào
G C B A D7D6D5D4D3D2D1D0
74LS151 Y=Z
Z=A.B.C+ABC+ABC
Z=A.B.C+ABC+ABC
GV: Nguyễn Trọng Hải
HI
Trang 63
W
Bài Giảng Kỹ Thuật Số
Chương 3
Mux coù theå ñöôïc duøng ñeå thöïc hieän caùc haøm logic tröïc tieáp töø baûng söï thaät maø khoâng caàn ñôn giaûn hoaù haøm logic. Khi söû duïng Mux vaøo muïc ñích naøy, caùc ngoõ select ñöôïc söû duïng nhö caùc bieán logic vaø moãi ngoõ vaøo data ñöôïc noái vôùi möùc 1 hay 0 sao cho thoûa maõn baûng söï thaät. Định hướng data MUX coù theå ñònh höôùng data töø nhieàu nguoàn data thaønh 1 nguoàn ñích. Ví dụ, söû duïng 74LS157 ñeå choïn vaø hieån thò noäi dung cuûa hai boä ñeám BCD. Counter 1 BCD counter
Counter 2 Clock 1
BCD counter
Clock 2
BCD counter
BCD counter
select display G A/B 4B
2B 4A 2A 3B 1B 3A 1A
G A/B 4B
2B 4A 2A 3B 1B 3A 1A
74LS157
4Y 3Y 2Y 1Y 4Y 3Y 2Y 1Y
74LS157
74LS47
D
C G F
B
A
LT RBI RB0
E D C B A
D
C G F
B
A
LT RBI RB0
74LS47
E D C B A
Moãi boä ñeám bao goàm 2 soá ñeám BCD. Khi select=1, ngoõ ra cuûa boä ñeám 1 seõ hieån thò leân LED 7 ñoaïn, khi select=0, ngoõ ra cuûa boä ñeám 2 seõ hieån thò leân LED 7 ñoaïn. Baèng caùch naøy, noäi dung cuûa caùc boä ñeám seõ ñöôïc hieån thò thoâng qua ngoõ select. Maïch ñònh höôùng naøy thöôøng ñöôïc öùng duïng trong caùc ñoàng hoà ñieän töû soá, ôû ñoù coù caùc boä ñeám vaø caùc thanh ghi nhö giaây, phuùt, giôø, thaùng, vaø baùo thöùc, v.v… Moät maïch MUX nhö treân seõ cho pheùp caùc data khaùc nhau ñöôïc hieån thò leân treân maøn hình coù soá LED hieån thò laø giôùi haïn
GV: Nguyễn Trọng Hải
Trang 64
Bài Giảng Kỹ Thuật Số
Chương 3
Muïc ñích cuûa kyõ thuaät Multiplex laø ñeà chia seû thôøi gian hieån thò giöõa hai hay nhieàu boä ñeám, vaø ñieàu quan troïng hôn nöõa laø tieát kieäm ñöôïc naêng löôïng, bôûi vì moät löôïng lôùn caùc boä giaûi maõ vaø LED hieån thò seõ tieâu toán moät doøng lôùn Tuy nhieân kyõ thuaät naøy cuõng coù nhöôïc ñieåm laø noäi dung cuûa caùc boä ñeám chæ hieån thò 1 laàn taïi moät thôøi ñieåm, tuy nhieân trong nhieàu öùng duïng, ñieàu naøy coù theå boû qua Mạch chuyển đổi song song sang nối tiếp (parallel to serial converter) Nhieàu heä thoáng soá xöû lyù caùc data nhò phaân ôû daïng song song (xöû lyù caùc bit ñoàng thôøi) vì toác ñoä xöû lyù nhanh hôn. Khi data ñöôïc truyeàn treân moät khaûng caùch xa, giaûi phaùp truyeàn song song seõ caàn ñeán moät löôïng daây noái lôùn. Vì lyù do naøy, caùc data nhò phaân hoaëc caùc thoâng tin ôû daïng song song ñöôïc chuyeån thaønh daïng noái tieáp tröôùc khi ñöôïc truyeàn treân moät khoaûng caùch xa. Moät phöông phaùp ñeå bieán ñoåi song song sang noái tieáp laø söû duïng boä Multiplexer nhö sau:
Mạch đếm 3 bit
X0 X1 X2 X3 X4 X5 X6 X7
D0 D1 D2 D3 D4 D5 D6 D7
W
Y
Z
A B C G 74LS151
Moät boä ñeám 3 bit ñöôïc söû duïng ñeå cung caáp caùc bit maõ choïn CBA töø 000 ñeán 111, baèng caùch naøy ngoõ ra cuûa Mux seõ choïn töøng keânh Xi theo moãi xung clock, ví duï, xung clock ñaàu tieân CBA = 000 ngoõ ra seõ laø X0, xung clock thöù hai CBA = 001 ngoõ ra seõ laø X1, cöù nhö theá ngoõ ra Z seõ laø caùc ngoõ vaøo nhö ôû daïng noái tieáp X7X6X5X4X3X2X1X0 vôi X0 laø LSB ñöôïc truyeàn tröôùc vaø X7 laø MSB ñöôïc truyeàn cuoái cuøng 3.8. MAÏCH PHAÂN KEÂNH (DEMULTIPLEXERS) DeMux Enable Select
s
EN s
SEL O0
Data Intput
s
O1
On-1
s s
s
s
`On-1
s
Trang 65
O1
s
Data intput
Selector
GV: Nguyễn Trọng Hải
O0
Bài Giảng Kỹ Thuật Số
Chương 3
Maïch phaân keânh ngöôïc laïi vôùi maïch choïn keânh. DeMUX coù moät ngoõ vaøo vaø nhieàu ngoõ ra. Ngoõ vaøo ñieàu khieån choïn (select) seõ xaùc ñònh ngoõ ra maø ngoõ vaøo seõ ñöôïc truyeàn ñeán 3.8.1. Maïch phaân keânh 1 sang 8
S2 0 0 0 0 1 1 1 1
Select S1 0 0 1 1 0 0 1 1
S0 0 1 0 1 0 1 0 1
Y7 0 0 0 0 0 0 0 In
Y6 0 0 0 0 0 0 In 0
Y5 0 0 0 0 0 In 0 0
Output Y4 Y3 0 0 0 0 0 0 0 In In 0 0 0 0 0 0 0
Y2 0 0 In 0 0 0 0 0
Y1 0 In 0 0 0 0 0 0
Y0 In 0 0 0 0 0 0 0
Töø baûng söï thaät vieát ñöôïc caùc bieåu thöùc ngoõ ra nhö sau Y7 = In.(S 2 S1S 0 ) , Y6 = In.(S 2 S1 S 0 ) , Y5 = In.(S 2 S1S 0 ) , … Y0
S2
Y1
S1
S0 Y7 In
3.8.2. Maïch phaân keânh 1 sang 8 vaø maïch choïn xung clock duøng 74LS138 Phaàn tröôùc ñaõ khaûo saùt 74LS138 laøm nhieäm vuï giaûi maõ, ñeán ñaây seõ tieáp tuïc öùng duïng 74LS138 laøm boä phaân keânh data vaø maïch choïn xung clock S0 S1 S2
DATA
HI
A B C G1 G2A G2B
S0 S1 S2
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
HI
74LS138
GV: Nguyễn Trọng Hải
A B C G1 G2A G2B
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
74LS138
Trang 66
Shift Register Counter
Bài Giảng Kỹ Thuật Số
Chương 3
3.8.3. Maïch choïn xung clock Coù raát nhieàu öùng duïng döïa vaøo nguyeân lyù DeMUX. Sau ñaây söû duïng 74LS138 laøm boä choïn clock 3.9. MAÏCH SOÁ HOÏC 3.10.1.
Maïch coäng baùn phaàn
A 0 0 1 1
B 0 1 0 1
S 0 1 1 0
COUT 0 0 0 1
A
S
A B
B COUT
S
Cout
S=AB+AB
COUT = AB 3.10.2.
CIN 0 0 0 0 1 1 1 1
Maïch coäng toaøn phaàn
A 0 0 1 1 0 0 1 1
B 0 1 0 1 0 1 0 1
S 0 1 1 0 1 0 0 1
COUT 0 0 0 1 0 1 1 1
A B Cin
A B
S
S Cout
CIN COUT
Ví dụ, Thieát keá maïch coäng toaøn phaàn töø maïch coäng baùn phaàn Ví dụ, Thieát keá maïch coäng hai soá nhò phaân 4 bit (a3a2a1a0 + b3b2b1b0 =S4S3S2S1S0 ) töø maïch coäng baùn phaàn vaø toaøn phaàn IC cộng toàn phần
Cin Cout B S A 74LS183 Cộng toàn phần 1 bit
A4 Cout A3 S4 A2 A1 S3 B4 B3 S2 B2 B1 Cin S1 74LS83 Cộng toàn phần 4 bit
GV: Nguyễn Trọng Hải
Trang 67
Bài Giảng Kỹ Thuật Số 3.10.3.
Chương 3
Maïch coäng nhìn tröôùc soá nhôù
ÔÛ maïch coäng nhieàu bit, pheùp coäng haøng cao hôn caàn soá nhôù laàn coäng haøng keá tröôùc. Thôøi gian trì hoaõn naøy laø lôùn ñoái vôùi caùc pheùp tính nhanh. Ñeå khaéc phuïc phaûi theâm maïch logic ñeå taïo tröïc tieáp soá nhôù goïi laø maïch coäng nhìn tröôùc soá nhôù (toác ñoä coäng ñoäc laäp vôùi soá bit) Goïi
Pi =A i ⊕ Bi
Pi
A B
Gi =A iBi
S
⇒ phöông trình coäng toaøn phaàn Ci
Si =Pi ⊕ Ci-1 Gi
Ci-1
Ci =Gi +PC i i-1
Ñeå hieåu roõ yù nghóa cuûa coäng nhìn tröôùc soá nhôù, vieát phöông trình C0, C1, C2, C3 vaø nhaän xeùt caùc bieán logic chöùa trong caùc phöông trình ñoù (xem nhö moät baøi taäp) 3.10.4.
Maïch coäng BCD
Ñoái vôùi maïch coäng BCD, neáu ñaàu ra toång khoâng phaûi laø soá BCD thì keát quaû phaûi ñöôïc coäng theâm 6 BCD BCD A
B
A3 A2A1A0 B3 B2B1B0 Cin C4 S3 S2S1S0
A3 A2A1A0 B3 B2B1B0 Cin C4 S3 S2S1S0
BCD
thứ hai GV: Nguyễn Trọng Hải
Trang 68
BCD
thứ nhất
Bài Giảng Kỹ Thuật Số
Chương 3
3.10. MAÏCH CHUYEÅN MAÕ Maïch chuyeån ñoåi maõ thay ñoåi döõ lieäu nhò phaân töø daïng naøy sang daïng khaùc Ví dụ, •
BCD - LED 7 ñoaïn
•
BCD – nhò phaân
•
Nhò phaân – BCD
•
Nhò phaân – Gray
•
Gray – nhò phaân
3.10.5.
Maïch chuyeån ñoåi BCD sang nhò phaân
Bước 1. Xaùc ñònh soá bit nhò phaân cho maïch chuyeån ñoåi. Ví dụ, ñeå chuyeån ñoåi 2 chöõ soá BCD caàn 7bit nhò phaân, vì giaù trò lôùn nhaát 99 cuûa BCD ñoåi sang nhò phaân laø 1100011 Bước 2. Tính toång cuûa caùc soá nhò phaân töông ñöông vôùi bit 1 (theo troïng soá cuûa maõ BCD) Ví dụ, (52)10 coù maõ BCD laø 01010010, toång nhò phaân laø 80 0
40 1
20 0
10 1
8 0
4 0
2 1
1 0
Troïng soá BCD BCD 0000010 0001010 0101000 0110100
(maõ nhò phaân cho 2) (maõ nhò phaân cho 10) (maõ nhò phaân cho 40) (maõ nhò phaân cho 52)
Bước 3. Xaây döïng maïch söû duïng maïch coäng nhò phaân Ví dụ, Baûng coäng cho soá BCD coù 2 chöõ soá Maõ nhò phaân töông ñöông Bit BCD Troïng soá b6 b5 b4 b3 b2 b1 A0 1 0 0 0 0 0 0 B0 2 0 0 0 0 0 1 4 0 0 0 0 1 0 C0 D0 8 0 0 0 1 0 0 A1 10 0 0 0 1 0 1 B1 20 0 0 1 0 1 0 40 0 1 0 1 0 0 C1 D1 80 1 0 1 0 0 0 Vaäy
b0 = A0; b1 = B0 + A1; b2 = C0 + B1; b3 = D0 + A1 + C1; b4 = B1 + D1; b5 = C1; b6 = D1;
GV: Nguyễn Trọng Hải
Trang 69
b0 1 0 0 0 0 0 0 0
Bài Giảng Kỹ Thuật Số
Chương 3
D1 C1 B1 A1 D0 C0 B0 A0
A3 A2A1A0 B3 B2B1B0 Cin
C4 B3 B2B1B0
S3 S2S1S0
A3 A2 A1A0 B3 B2B1B0 Cin
C4 B3 B2 B1B0
S3 S2S1S0
b6
b5
b4
b3
b2
b1
b0
IC 74184. Chuyeån maõ BCD sang nhò phaân Các đầu vào BCD từ 00 đến 39
A0 B0 C0 D0 A1 B1
b0 A B C D E G
Y1 Y2 Y3 Y4 Y5 Y6 Y7 Y8
b1 b2 b3 b4 b5
Các đầu ra nhị phân
A B C D 1
Các đầu vào BCD
Y1 Y2 Y3 Y4 Y5 Y6 Y7 Y8
A B C D E G
TA TB TC TD
Các đầu bù 10 của BCD
74184
74184
Ví dụ, Tra baûng hoïat ñoäng cuûa 74184, ñöa ra sô ñoà noái daây chuyeån maõ BCD sang maõ buø 9 cuûa noù Ví dụ, Töø 2 IC 74184, thieát keá maïch ñoåi moät soá BCD 2 chöõ boá sang 7bit nhò phaân 3.10.6.
Maïch chuyeån ñoåi nhò phaân sang BCD Các đầu vào nhị phân 6 bit
b0 b1 b2 b3 b4 b5
A0 A B C D E G
Y1 Y2 Y3 Y4 Y5 Y6 74185
GV: Nguyễn Trọng Hải
Trang 70
B0 C0 D0 A1 B1 C1
Các đầu ra BCD
Bài Giảng Kỹ Thuật Số
Chương 3
Bài tập chương 3
3.1. Đơn giản mạch sau dùng đại số Boolean M N O X
3.2. Thiết kế mạch điện logic tương ứng với bảng sự thật sau A B C Y 0 0 0 1 0 0 1 0 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1 3.3. Thiết kế mạch điện logic có 3 ngõ vào A, B và C.Ngõ ra ở mức HIGH chỉ khi có 2 ngõ vào là mức LOW. 3.4. Một số nhị phân 4 bit được ký hiệu là A3A2A1A0, với A0 là bit LSB, thiết kế mạch logic mà ngõ ra ở mức HIGH khi các số nhị phân lớn hơn 0010 và nhỏ hơn 1000. 3.5. Thực thi mạch điện ở bài 3.3 dùng tất cả là cổng NAND 3.6. Thực thi mạch điện ở bài 3.4 dùng tất cả là cổng NAND 3.7. Một bộ đếm BCD với ngõ ra 4 bit mã BCD hiển thị số xung được đưa vào bộ đếm. Thí dụ, sau 4 xung, ngõ ra của bộ đếm là DCBA = 01002 = 410. Bộ đếm Reset về 0000 tại xung thứ 10 và bắt đầu đếm trở lại. Nói cách khác, ngõ ra DCBA không bao giờ biểu diễn giá trị lớn hơn 10012 = 910. Hãy thiết kế mạch logic với ngõ ra ở mức HIGH khi đếm số 2, 3, 9. D
BCD Counter
C B A
Logic circuit
X
3.8. Hình sau biểu diễn 4 công tắc trong mạch điều khiển máy copy. Thông thường các công tắc này mở (open). Khi có giấy đi qua công tắc thì đóng (close). Công tắc 1 và 4 không thể đóng (close) tại cùng 1 thời điểm. Hãy thiết GV: Nguyễn Trọng Hải
Trang 71
Bài Giảng Kỹ Thuật Số
Chương 3
kế 1 mạch logic với ngõ ra mức HIGH khi 2 công tắc hay nhiều hơn cùng đóng. +5V SW1 SW2 SW3 SW4
+5V +5V +5V
Logic circuit
X
3.9. Hình sau thể hiện mạch nhân hai số nhị phân 2 bit x1x0 và y1y0, ngõ ra là số nhị phân z3z2z1z0 tương đương với tích đại số của 2 số ngõ vào. Hãy thiết kế mạch logic cho mạch nhân. X1
Z3 MSB
X0
Z2
Multiplier circuit
Y1
Z1 Z0 LSB
Y0
3.10. Một mã BCD được truyền tới thiết bị nhận ở xa, các bit là A3A2A1A0, với A3 là bit MSB. Mạch nhận gồm 1 mạch phát hiện lỗi BCD để kiểm tra mã nhận. Thiết kế mạch kiểm tra tạo mức HIGH nếu có bất kỳ điều kiện lỗi nào xảy ra. 3.11. Thiết kế mạch logic với điều kiện: tín hiệu ngõ vào A đến ngõ ra Y chỉ khi ngõ vào điều khiển B ở mức LOW và ngõ vào điều khiển C ở mức HIGH, các trường hợp còn lại ngõ ra ở mức LOW. 3.12. Thiết kế mạch logic điều khiển sự đi qua của 1 tín hiệu A theo các yêu cầu sau: 1. Ngõ ra X = A khi ngõ vào điều khiển B và C giống nhau. 2. X duy trì mức HIGH khi B và C khác nhau. 3.13. Thiết kế mạch logic có yêu cầu cho ở hình sau. A1 Multiplexer A0
Z
S 0 1
Z A0 A1
S 3.14. Trong máy tính, bộ vi xử lý (microprocessor unit = MPU) luôn được kết nối với 1 trong các phần sau: (1) bộ nhớ truy cập ngẫu nhiên (RAM = randomaccess memory), lưu trữ các chương trình và dữ liệu mà nó có thể được thay đổi 1 cách nhanh chóng; (2) bộ nhớ chỉ đọc (read-only memory), lưu trữ các chương trình và dữ liệu mà không khi nào thay đổi; (3) thiết bị vào ra bên GV: Nguyễn Trọng Hải
Trang 72
Bài Giảng Kỹ Thuật Số
Chương 3
ngoài (I/O) chẳng hạn như keyboard, máy in. Khi thực thi 1 chương trình, MPU sẽ tạo ra một mã địa chỉ mà nó chọn loại thiết bị (RAM,ROM or I/O) muốn thực thi. Hình sau chỉ ra 1 cách kết nối tiêu biểu ở đó MPU xuất ra 1 mã địa chỉ 8 bit A15-A8. Thực ra MPU xuất ra 1 mã địa chỉ 16 bit, nhưng các bit thấp A7-A0 không dùng cho quá trình chọn thiết bị. Mã địa chỉ được cấp tới 1 mạch logic để tạo ra các tín hiệu chọn thiết bị RAM, ROM, và I/O. A15 A14 A13 A12 A11 A10
RAM
A9 A8
I/O ROM
MPU
Phân tích mạch và xác định những điều sau: (a) Khoảng địa chỉ A15-A8 mà nó tích cực RAM (b) Khoảng địa chỉ A15-A8 mà nó tích cực I/O (c) Khoảng địa chỉ A15-A8 mà nó tích cực ROM Hãy biểu diễn các địa chỉ ở nhị phân và hex. 3.15. Cho haøm Boolean sau: Y =
∏
DCBA
(3,5,6,11,12,13,14,15) + d (4,7,8,9)
a). Ruùt goïn haøm Y, bieåu dieãn haøm Y duøng coång logic b). Töø haøm Y ruùt goïn, bieán ñoåi laïi maïch logic duøng toaøn coång NOR c). Thöïc hieän haøm Y duøng MUX 8 sang 1 (74LS151)
3.16. Cho haøm Boolean sau: Y =
∑
ABC
(0,1,4) + d (3,6)
a). Ruùt goïn haøm Y, bieåu dieãn haøm Y duøng coång logic b). Töø haøm Y ruùt goïn, bieán ñoåi laïi maïch logic duøng toaøn coång NAND c). Thöïc hieän haøm Y duøng giaûi maõ 3 sang 8 (74LS138)
GV: Nguyễn Trọng Hải
Trang 73
Bài Giảng Kỹ Thuật Số
Chương 4
CHÖÔNG 4. HEÄ TUAÀN TÖÏ 4.1.
TOÅNG QUAN Maïch logic tuaàn töï laø maïch coù caùc ngoõ ra tuøy thuoäc khoâng chæ vaøo traïng thaùi hieän taïi cuûa caùc ngoõ vaøo maø coøn tuøy thuoäc vaøo moät chuoãi caùc ngoõ vaøo tröôùc ñoù. Vieäc moâ taû moät maïch tuaàn töï baèng caùch laäp baûng quan heä ngoõ ra laø moät haøm cuûa chuoãi caùc ngoõ vaøo töø caùc traïng thaùi tröôùc ñoù ñeán traïng thaùi hieän taïi thöôøng thì khoâng thuaän tieän hay khoâng theå thöïc hieän ñöôïc. Traïng thaùi cuûa moät maïch tuaàn töï laø moät söï taäp hôïp caùc bieán traïng thaùi maø giaù trò cuûa noù taïi baát cöù moät thôøi ñieåm naøo ñeàu chöùa ñöïng taát caû caùc thoâng tin veà caùc traïng thaùi tröôùc ñoù ñeå giaûi thích caùc taùc ñoäng sau ñoù cuûa maïch Caùc bieán traïng thaùi khoâng caàn phaûi coù yù nghóa vaät lyù tröïc tieáp, vaø thöôøng coù nhieàu caùch choïn chuùng ñeå moâ taû moät maïch tuaàn töï ñaõ cho. Trong caùc maïch logic soá, caùc bieán traïng thaùi coù giaù trò nhò phaân töông öùng vôùi tín hieäu logic naøo ñoù trong maïch. Moät maïch vôùi n bieán traïng thaùi nhò phaân seõ coù 2n traïng thaùi xaûy ra, vaø 2n luoân laø giaù trò giôùi haïn, vì vaäy maïch tuaàn töï cuõng thöôøng goïi laø maùy traïng thaùi giôùi haïn (finite-state machines) Thôøi ñieåm ñeå caùc traïng thaùi cuûa haàu heát caùc maïch tuaàn töï thay ñoåi ñöôïc quyeát ñònh bôûi xung clock. Hình sau minh hoïa caùc sô ñoà thôøi gian vaø caùc thuaät ngöõ cho caùc xung clock thoâng duïng. Theo quy öôùc, moät xung clock tích cöïc möùc cao neáu caùc thay ñoåi traïng thaùi trong maïch xuaát hieän taïi caïnh leân cuûa xung clock hay taïi möùc cao cuûa xung clock, vaø tích cöïc möùc thaáp cho tröôøng hôïp coøn laïi. Chu kyø boån phaän laø phaàn traêm thôøi gian xung clock tích cöïc treân moät chu kyø. Thoâng thöôøng trong moät heä thoáng soá ngöôøi ta söû duïng dao ñoäng thaïnh anh ñeå taïo caùc xung clock. Taàn soá xung clock khoaûng 32768 khz (cho ñoàng hoà) ñeán 400 Mhz (cho supercomputer). Caùc heä thoáng thoâng thöôøng söû duïng caùc phaàn töû CMOS vaø TTL coù taàn soá xung clock vaøo khaûng töø 1 ñeán 25Mhz.
CLK
CLK
tH
tL
tH
tL
Tper
Tper Chu kyø boån phaän=tH/Tper
Chu kyø boån phaän=tL/Tper
Hai loaïi maïch tuaàn töï thöôøng aùp duïng chính trong caùc thieát keá thöïc teá: GV: Nguyễn Trọng Hải
Trang 74
Bài Giảng Kỹ Thuật Số
Chương 4
Maïch tuaàn töï coù hoài tieáp: söû duïng caùc coång thoâng thöôøng vaø caùc voøng hoài tieáp ñeå taïo khaû naêng nhôù trong maïch logic, baèng caùch ñoù taïo ra caùc khoái maïch tuaàn töï nhö flip-flop vaø maïch choát ñeå thieát keá caùc maïch ôû möùc cao hôn Maùy traïng thaùi vôùi xung clock ñöôïc ñoàng boä: söû duïng caùc phaàn töû nhôù, ñaëc bieät laø D flipflop, ñeå taïo ra nhöõng maïch maø ngoõ ra seõ thay ñoåi ñoàng thôøi vôùi xung Clock Caùc daïng maïch tuaàn töï khaùc nhö daïng ña xung, ña phase thöôøng öùng duïng trong caùc heä thoáng coù tính naêng cao vaø VLSI 4.2.
CAÙC PHAÀN TÖÛ HAI TRAÏNG THAÙI BEÀN
4.2.1. Maïch Ñaûo Moät transistor coù theå laøm chöùc naêng maïch ñaûo nhö sô ñoà hình sau +12V 4K 2.2K
2.2K
-12V
Khi VI ôû möùc ñieän aùp cao thì BJT chaïy baõo hoøa vaø doøng IC qua RC taïo suït aùp neân V0 ≈ 0.2V (VCESAT) öùng vôùi möùc ñieän aùp thaáp Khi VI ôû möùc ñieän aùp thaáp thì BJT phaân cöïc ngöôïc ôû ngoõ vaøo neân ngöng daãn, doøng IC =0 neân khoâng giaûm aùp qua RC neân V0 ≈ VCC öùng vôùi möùc ñieän aùp cao 4.2.2. Maïch Hai Traïng Thaùi Beàn Moät maïch tuaàn töï ñôn giaûn nhaát bao goàm hai coång ñaûo vôùi voøng hoài tieáp. Noù khoâng coù ngoõ vaøo vaø coù 2 ngoõ ra nhö sau: Vcc Vin1
Vout1
Q
R2 Rb1
Vout2
GV: Nguyễn Trọng Hải
Q
Trang 75
Rc2
Rc1 R1
Vin2
Vcc
-VBB
Rb2
-VBB
Bài Giảng Kỹ Thuật Số
Chương 4
Maïch ñöôïc veõ laïi nhö sau
RC1
+VCC
R2
R1
T1
RC2
T2 RB2
RB1
-VBB
Giaû thieát coù maïch ñoái xöùng (T1 vaø T2 cuøng teân, caùc ñieän trô phaân cöïc cho 2 transistor cuøng trò soá) nhöng do 2 transistor khoâng theå caân baèng moät caùch tuyeät ñoái neân seõ coù moät transistor chaïy maïnh hôn vaø moät transistor chaïy yeáu hôn Giaû thieát T1 chaïy maïnh hôn T2 neân IC1 lôùn hôn neân VRC1 lôùn laøm ñieän aùp VC1 giaûm. VC1 qua ñieän trôû R2 phaân cöïc cho T2 giaûm laøm T2 chaïy caøng yeáu hôn laøm IC2 nhoû hôn daãn ñeán VC2 taêng, ñieän aùp VC2 taêng qua R1 laøm taêng phaân cöïc cho T1 daãn ñeán T1 chaïy maïnh hôn nöõa, cuoái cuøng T1 seõ tieán ñeán traïng thaùi baõo hoøa, T2 tieán ñeán traïng thaùi ngöng daãn. Neáu khoâng coù moät taùc ñoäng naøo khaùc thì maïch ñieän seõ ôû maõi traïng thaùi naøy. Ñaây laø moät traïng thaùi cuûa maïch Flip Flop Ngöôïc laïi, neáu giaû thieát T2 chaïy maïnh hôn T1 lyù luaän töông töï cuoái cuøng T2 seõ tieán ñeán traïng thaùi baõo hoøa, T1 tieán ñeán traïng thaùi ngöng daãn. Neáu khoâng coù moät taùc ñoäng naøo khaùc thì maïch ñieän seõ ôû maõi traïng thaùi naøy. Ñaây laø traïng thaùi thöù hai cuûa maïch Flip Flop Maïch FF seõ ôû moät trong hai traïng thaùi treân neân ñöôïc goïi laø maïch löôõng oån 4.3.
FLIPFLOP Phaàn töû nhôù quan troïng nhaát laø FlipFlop, noù ñöôïc taïo töø caùc coång Logic. Caùc coång logic thì töï noù khoâng coù tính naêng nhôù, nhöng ta coù theå keát noái chuùng vôùi nhau ñeå taïo neân khaû naêng nhôù Sô ñoà khoái cho moät FF nhö sau: Q Các ngõ vào
Ngõ ra nhớ
FlipFlop Q
Ngõ ra đảo
Thaáy raèng FF coù 2 ngoõ ra vaø 1 hay nhieàu ngoõ vaøo. Caùc ngoõ vaøo thöôøng ñöôïc söû duïng ñeå chuyeån ñoåi giöõa caùc khaû naêng ngoõ ra, ta seõ thaáy raèng khi moät ngoõ vaøo nhaän xung laøm thay ñoåi traïng thaùi ngoõ ra vaø traïng thaùi ngoõ ra naøy seõ vaãn giöõ
GV: Nguyễn Trọng Hải
Trang 76
Bài Giảng Kỹ Thuật Số
Chương 4
nguyeân khoâng thay ñoåi khi ngoõ vaøo naøy khoâng coøn xung nöõa, vì vaäy ta goïi FF coù ñaëc tính nhôù FlipFlop coøn coù caùc teân goïi khaùc laø choát (latch) vaø maïch hai traïng thaùi beàn (bistable multivibrator) 4.3.1. RS-FF duøng Coång NOR RESET
Q
Q
S FF R
Q
SET
Q
Baûng söï thaät SET
RESET
Output
0
0
Khoâng thay ñoåi
1
0
Q=1
0
1
Q=0
1
1
Khoâng söû duïng
Khi SET = RESET= 0. Ñaây laø traïng thaùi nhôù vaø khoâng laøm thay ñoåi caùc traïng thaùi ngoõ ra. Vì ñaây laø maïch hai traïng thaùi beàn neân seõ coù hai tröông hôïp ban ñaàu xaûy ra, tröông hôïp Q =0, Q =1 vaø tröôøng hôïp Q =1, Q =0. Tröôøng hôïp Q=0, Q =1 Q=0 daãn ñeán ngoõ ra coång NOR1 =1, Q =1 naøy ñöa veà ngoõ vaøo coång NOR2, ngoõ ra coång NOR2=0, nhö vaäy maïch vaãn giöõ nguyeân traïng thaùi Q=0, Q =1 Tröôøng hôïp Q=1, Q =0 Q=1 daãn ñeán ngoõ ra coång NOR1 =0, Q =0 naøy ñöa veà ngoõ vaøo coång NOR2, ngoõ ra coång NOR2=1, nhö vaäy maïch vaãn giöõ nguyeân traïng thaùi Q=1, Q =0 Nhö vaäy vôùi hai tröôøng hôïp, ngoõ ra seõ phuï thuoäc vaøo traïng thaùi tröôùc cuûa maïch khi SET = RESET =0 ¾ Thieát laäp caùc thay ñoåi cho FF •
RESET
Q
Khi SET = 1, RESET = 0.
Ngoõ ra Q luoân = 0, Q luoân baèng 1 vaø vaãn giöõ nguyeân traïng thaùi Q=1 khi SET ñöôïc ñaët trôû laïi 0 (LATCH) GV: Nguyễn Trọng Hải
Trang 77
Q SET
Bài Giảng Kỹ Thuật Số
Chương 4
•
Khi SET = 0, RESET = 1. Ngoõ ra Q luoân = 0 vaø vaãn giöõ nguyeân traïng thaùi Q=0 khi CLEAR ñöôïc ñaët trôû laïi 0 (LATCH)
•
Khi SET = CLEAR = 1: ñieàu kieän naøy laøm cho ngoõ ra Q = Q = 0, roõ raøng ñaây laø ñieàu kieän khoâng mong muoán hôn nöõa neáu caùc ngoõ vaøo trôû laïi möùc 0 ñoàng thôøi, keát quaû ngoõ ra seõ khoâng theå ñoaùn ñöôùc ñöôïc. Traïng thaùi naøy khoâng ñöôïc duøng vaø goïi laø traïng thaùi caám.
IC 4044 - 4 NOR RS-FF S X 0 0 1 1
R X 0 1 0 1
E 0 1 1 1 1
Q HiZ Khoâng thay ñoåi 0 1 Caám
4.3.2. RS FlipFlop duøng coång NAND RS – FF duøng coång NAND (töông töï, chæ löu yù söï hoaùn chuyeån ngoõ ra Q vaø Q vaø caùc ñieàu kieän ngoõ vaøo)
SET
RESET
Output
1
1
Khoâng thay ñoåi
0
1
Q=1
1
0
Q=0
0
0
Caám
Q
Q
RESET
•
SET
Bieán ñoåi caùch bieåu thò khaùc cuûa coång NAND
Ta ñöôïc maïch nhö sau SET
Q
Q
S FF
Q
RESET
GV: Nguyễn Trọng Hải
Trang 78
R
Q
Bài Giảng Kỹ Thuật Số
Chương 4
Ví dụ. Caáp daïng soùng sau vaøo ngoõ SR cuûa maïch choát duøng NAND, veõ daïng soùng ngoõ ra Q, giaû söû ban ñaàu Q=0 SET RESET
Q Vì duï treân chæ ra raèng ngoõ ra maïch choát “nhôù traïng thaùi ngoõ vaøo tích cöïc tröôùc ñoù” vaø seõ khoâng thay ñoåi traïng thaùi cho ñeán khi ngoõ vaøo coøn laïi tích cöïc. Noù ñöôïc öùng duïng vaøo caùc coâng taéc choáng doäi (debounce switch). So saùnh tröôøng hôïp söû duïng coâng taéc bình thöôøng vaø tröôøng hôïp söû duïng coâng taéc choáng doäi nhö sau Vcc R
Vcc
1
S
Q
R
Q
Vout
Vout 0 R Vcc
IC 74279 4 RS-FF
4.4.
FLIPFLOP DUØNG XUNG CK Caùc heä thoáng soá coù theå hoaït ñoäng ñoàng boä hay khoâng ñoàng boä. Moät heä thoáng khoâng ñoàng boä, ngoõ ra cuûa maïch logic coù theå thay ñoåi traïng thaùi baát cöù luùc naøo khi moät hay nhieàu ngoõ vaøo thay ñoåi Moät heä thoáng ñoàng boä, söï thay ñoåi ôû ngoõ ra ñöôïc ñoàng thôøi vôùi tín hieäu goïi laø xung clock Haàu heát caùc heä thoáng soá ñeàu döïa vaøo nguyeân lyù ñoàng boä vì maïch ñoàng boä deã thieát keá Q
input
FF
FF CK
Q
CK tích cöïc caïnh leân GV: Nguyễn Trọng Hải
Q
input
Trang 79
CK
Q
CK tích cöïc caïnh xuoáng
Bài Giảng Kỹ Thuật Số
Chương 4
4.4.1. Clock RS – FlipFlop S
Q
S 0 1 0 1
CLK R •
Q
R 0 0 1 1
CK ↑ ↑ ↑ ↑
Q Q0 (khoâng ñoåi) 1 0 Caám
Sô ñoà beân trong cuûa clock SR- FlipFlop SET
Q CK
Phát hiện cạnh 1
Q
RESET
Maïch phaùt hieän söôøn xung leân hay xuoáng seõ taïo moät xung heïp ôû ngoõ ra (CK*). Xung naøy seõ xuaát hieän taïi caïnh leân hay caïnh xuoáng cuûa CK vaø taùc ñoäng môû coång cho 2 coång NAND, maïch phaùt hieän söôøn xung nhö sau CK
CK
CK
CK* CK CK* CK
CK
CK
CK*
CK
CK* 4.4.2. Caùc bieán theå cuûa RS – FF Ñeå söû duïng ñöôïc caû toå hôïp R=S=1, thöôøng söû duïng caùc bieán theå cuûa RS-FF. Bao goàm: R-FF, S-FF, E-FF. R-FF öùng vôùi toå hôïp caám S=R=1 thì Q=0 vaø Q=1 , sô ñoà cuûa R-FF nhö sau SET
Q
CK
Phát hiện cạnh
1
RESET
GV: Nguyễn Trọng Hải
Trang 80
Q
Bài Giảng Kỹ Thuật Số
Chương 4
S-FF öùng vôùi toå hôïp caám S=R=1 thì Q=1 vaø Q=0 , sô ñoà cuûa S-FF nhö sau SET
Q Phát hiện cạnh
CK
1
Q
RESET
E-FF öùng vôùi toå hôïp caám S=R=1 thì Q vaø Q giöõ nguyeân traïng thaùi (gioáng toå hôïp R=S=0), sô ñoà cuûa E-FF nhö sau SET
Q Phát hiện cạnh
CK
1
Q
RESET
4.4.3. Clock JK – FlipFlop J
J 0 1 0 1
Q
CK K •
Q
K 0 0 1 1
CK ↑ ↑ ↑ ↑
Q Q0 (khoâng ñoåi) 1 0 Q0
Sô ñoà beân trong cuûa clock JK – FF
J CK
Q Phát hiện cạnh
Q
K
GV: Nguyễn Trọng Hải
Trang 81
Bài Giảng Kỹ Thuật Số
Chương 4
4.4.4. D FlipFlop D
D
Q
Q CK Q
D 0 1
CK ↑ ↑
Phát hiện cạnh
CK Q 0 1
1
Q
Ví dụ, taïo D-FF töø RS-FF 4.4.5. Bieán theå cuûa D – FF Trong thực tế coøn söû duïng moät bieán theå cuûa D-FF laø DV-FF, kyù hieäu vaø baûng söï thaät nhö sau D
V 0 0 1 1
Q
CK V
Q
D 0 1 0 1
CK ↑ ↑ ↑ ↑
Q Q0 (khoâng ñoåi) Q0 (khoâng ñoåi) 0 1
Vaäy V gioáng nhö chaân ñieàu khieån: khi V=1, FF hoaït ñoäng gioáng D-FF, khi V=0 FF seõ khoâng ñoåi traïng thaùi 4.4.6. T FlipFlop T
CK Khoâng coù CK ↓ ↓
Q
CK Q
T x 0 1
Q Q0 Q0 Q0
4.4.7. Caùc ngoõ vaøo khoâng ñoàng boä Vôùi caùc FF ôû treân, caùc ngoõ vaøo S-R, J-K, D xem nhö caùc ngoõ ñieàu khieån, vaø ñöôïc goïi laø caùc ngoõ vaøo ñoàng boä (synchronous input) vì taùc ñoäng cuûa chuùng ñoái vôùi ngoõ ra thì ñoàng boä vôùi CK Ngoaøi ra haàu heát caùc FF cuõng coù 1 hay nhieàu ngoõ vaøo khoâng ñoàng boä (asynchronous input) hoaït ñoäng ñoäc laäp vôùi ngoõ vaøo ñoàng boä vaø xung clock. Caùc ngoõ vaøo khoâng ñoàng boä naøy ñöôïc söû duïng ñeå ñaët ngoõ ra cuûa FF leân 1 (PRESET) hay xoùa ngoõ ra cuûa FF veà 0 (CLR) baát chaáp caùc ñieàu kieän cuûa ngoõ vaøo GV: Nguyễn Trọng Hải
Trang 82
Bài Giảng Kỹ Thuật Số
D
PR
Chương 4
PR
J
Q
CK
CK
K
CLR Q
CLR Q
7476
7474
D-FF 4.5.
PR 1 0 1 0
Q
CLR 1 1 0 0
Ngoõ ra hoaït ñoäng theo CK Q=1 Q=0 khoâng söû duïng
JK-FF
CAÙC ÖÙNG DUÏNG CUÛA FLIPFLOP
4.5.1. Ñoàng boä hoùa duøng FF Haàu heát caùc heä thoáng soá ñeàu döïa treân nguyeân lyù ñoàng boä trong hoaït ñoäng cuûa chuùng (traïng thaùi tín hieäu thay ñoåi ñoàng boä vôùi xung clock). Trong moät soá tröôøng hôïp seõ coù moät soá tín hieäu khoâng ñöôïc ñoàng boä vôù xung clock, noùi caùch khaùc laø baát ñoàng boä. Caùc tín hieäu naøy thöôøng xuaát hieän ôû tröôøng hôïp nhaán moät phím taïi moät thôøi ñieåm ngaãu nhieân so vôùi xung clock, söï ngaãu nhieân naøy coù theå ñöa ñeán moät keát quaû khoâng mong muoán. Ñeå khaéc phuïc ñieàu naøy ta seõ xeùt ví duï sau: Ví dụ, Khóa chống dội
Clock
A X
A X
Clock
Xung khoâng mong muoán Clock Khóa chống dội
D
PR
Q
X
CLK CLR
Clock
Q
A Q X
Xung ñoàng boä 4.5.2. Maïch phaùt hieän moät chuoãi ngoõ vaøo tuaàn töï Trong moät soá öùng duïng, caàn nhaän bieát chuoãi xung naøo ñeán tröôùc trong hai chuoãi xung, giaû söõ ngoõ ra seõ ôû möùc cao neáu ngoõ vaøo A ôû möùc cao tröôùc ngoõ vaøo B A
A
B
B
X
X
Ta choïn B laøm xung CK kích caïnh leân cho maïch FF GV: Nguyễn Trọng Hải
Trang 83
A B
PR
J
X Q
CLK K
CLR Q
Bài Giảng Kỹ Thuật Số
Chương 4
4.5.3. Thanh ghi dòch Caùc daïng cuûa thanh ghi dòch goàm •
Vaøo song song/ ra song song
•
Vaøo noái tieáp/ra noái tieáp
•
Vaøo song song/ra noái tieáp
•
Vaøo noái tieáp/ ra song song
1D 2D 3D 4D 5D 6D
a. Vaøo song song/ ra song song (74174, 74374) • MR
CK
D4
PR Q
D
CL
CLK CL
Q
CL
Q
Q4
Q5
PR Q
D
CLK CL
Q
PR Q
D
CLK
CLK
•
D0
D1
PR Q
D
74LS174
CLK CLR
74174. Sô ñoà beân trong cuûa 74174 (6bit ghi dòch, ngoõ vaøo töø D0 ñeán D5 ngoõ ra töø Q0 ñeán Q5)
D5
1Q 2Q 3Q 4Q 5Q 6Q
Q
Q1
Q0
74374. thanh ghi dòch 8 bit vaøo song song/ 8 bit ra song song D0 D1 D2 D3 D4 D5 D6 D7
Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7
OC CLK
OC
CLK
D
Output
0
↑
1
1
0
↑
0
0
0
0
X
QO
1
X
X
HiZ
74LS374
b. Vaøo noái tieáp/ ra noái tieáp Ñeå caát n döõ lieäu vaøo thanh ghi ta caàn n xung CK, thôøi gian ghi chaäm. Töông töï, ñeå xuaát döõ lieäu caàn n-1 xung, thôøi gian xuaát chaäm. Lôïi ñieåm: ít sai Ds CK
D
PR Q
PR Q
D CLK
CLK CL
Q
GV: Nguyễn Trọng Hải
D
PR Q
CLK CL
Q
Trang 84
D
PR Q
CLK CL
Q
CL
Q
Os
Bài Giảng Kỹ Thuật Số
Chương 4
4731. CMOS thanh ghi dòch 256bit (4 boä ghi dòch 64bit noái tieáp) DS
DS
Q 64bit
DS
Q
64bit
64bit CP
CP
CP
DS
Q
Q
64bit CP
c. Vaøo song song/ ra noái tieáp •
74LS166 laø loaïi IC naïp döõ lieäu vaøo song song (8bit), xuaát döõ lieäu ra noái tieáp (Döõ lieäu ñöôïc naïp vaøo töø chaân A,…,H vaø xuaát ra tuaàn töï ôû chaân SER OUT. Ngoaøi ra 74166 coøn coù 1 ngoõ vaøo data noái tieáp SER
74LS166 CLR SH/LD INH CLK H G F E D C B A SER
CKI laø chaân cho pheùp xung CK, CKI=[0]: cho pheùp xung CK, CKI=[1] : caám xung CK. SH/LD=[0]: naïp döõ lieäu, SH/LD=[1]: dòch döõ lieäu. Sau khi dòch 1 bit ra khoûi haøng döõ lieäu (veà höôùng bit H), bit A seõ troáng vaø bit SR (Serial in) seõ dòch vaøo thanh choát cuûa bit A.
QH
d. Vaøo noái tieáp / ra song song 74164 74164. thanh ghi dòch 8bit, A vaø B laø ngoõ vaøo data cho D-FF QA QB A QC QD QE B QF CLK QG QH CLR 74LS164
A D
B
PR Q
CLK CL
Q
Ví dụ. Giaû söû raèng ban ñaàu traïng thaùi thanh ghi 74164 laø 00000000, xaùc ñònh chuoãi traïng thaùi keá tieáp cuûa maïch sau CK
1
1
CLK B A CLR H GFE D CB A
GV: Nguyễn Trọng Hải
Trang 85
74LS164
Bài Giảng Kỹ Thuật Số
Chương 4
4.5.4. Öùng duïng Trong microcomputer D
A15 A14 A13 A12
X3
Q
X2
Q
X1
Q
X0
CLK D
A11 A10 A9 A8
MPU
Q
CLK D
CP
CLK
D3 D2 D1 D0
D CLK
Hình treân laø moät ñôn vò vi xöû lyù (MPU) vôùi caùc ngoõ ra duøng ñeå truyeàn data nhò phaân ñeán thanh ghi X (4 D-FF). Haàu heát caùc MPU coù ít nhaát 16 ñöôøng ñòa chæ, nhöng thöôøng seõ khoâng söû duïng heát. ÖÙng duïng MPU ñeå truyeàn soá nhò phaân töø thanh ghi trong MPU ñeán thanh ghi ngoaøi X. Ñeå thöïc hieän ñieàu naøy, MPU thöïc hieän caùc böôùc sau: •
Ñaët soá nhò phaân ra ngoõ ra D3D2D1D0
•
Ñaët maõ ñòa chæ ñuùng töø A15 ñeán A8 ñeå choïn thanh ghi X
•
Khi data vaø ñòa chæ ngoõ ra ñaõ oån ñònh, MPU seõ taïo xung clock caáp cho thanh ghi X ñeå hoaøn taát quaù trình truyeàn song song töø MPU ñeán thanh ghi X
Caùc FF trong thanh ghi X coù theå söû duïng cho nhieàu nuïc ñích khaùc nhau. Ví duï, sau khi MPU thöïc hieän caùc pheùp tính vaø hieån thò keát quaû, moãi FF seõ ñöôïc noái vôùi 1 LED vaø data keát quaû naøy coù theå thaáy ñöôïc. Ví duï khaùc, moãi FF thaønh phaàn coù theå ñieàu khieån taét/môû caùc thieát bò khaùc nhö motor hay role döïa treân cô sôû maõ nhò phaân truyeàn töø MPU ra 4.5.5. Boä Chia Taàn Soá Số MOD: laø soá traïng thaùi ngoõ ra cuûa moät maïch ñeám Ví dụ: moät maïch ñeám coù chuoãi traïng thaùi ngoõ ra sau laø maïch ñeám MOD 4 000
010
101
111
MOD 4
Ví dụ: xeùt maïch sau A LSB
1
B
1
C MSB
1
2
1
J
PR Q
1
CLK
1
K
PR Q
1
CLK CL
Q
1
1
GV: Nguyễn Trọng Hải
J
K
PR Q
CLK CL
1
Trang 86
J
Q
1
K
CL
1
Q
Bài Giảng Kỹ Thuật Số
Chương 4
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
0
10
11
1
2
Clock A B C
QA seõ thay ñoåi traïng thaùi baèng Q tröôùc ñoù taïi caïng xuoáng cuûa xung CK 1 => TQA=2TCK => f QA = f CK 2 QB seõ thay ñoåi traïng thaùi baèng Q tröôùc ñoù taïi caïng xuoáng cuûa QA 1 => TQB=2TQA => f QB = f QA 2 QC seõ thay ñoåi traïng thaùi baèng Q tröôùc ñoù taïi caïng xuoáng cuûa QB 1 => TQC=2TQB => f QC = f QB 2 Nhö vaäy moãi FF chia taàn soá ngoõ vaøo CK cuûa noù 2 laàn. Toång quaùt vôùi n FF thì 1 f Qout = n f CK 2 ÖÙùng duïng boä chia taàn laøm boä ñeám nhò phaân. Döïa vaøo giaûn ñoà xung treân, ñöa ra ñöôïc baûng söï thaät sau. Giaû söû ban ñaàu CBA =000 C 0 0 0 0 1 1 1 1 0 0
B 0 0 1 1 0 0 1 1 0 0
A 0 1 0 1 0 1 0 1 0 1
CK Ban ñaàu Sau xung CK1 Sau xung CK2 Sau xung CK3 Sau xung CK4 Sau xung CK5 Sau xung CK6 Sau xung CK7 Sau xung CK8 Sau xung CK9
000 001
111
010
110 011
101 100
•
Boä ñeám ôû treân coù 23 traïng thaùi khaùc nhau töø 000 ñeán 111, noù ñöôïc goïi laø boä ñeám MOD 8
•
Vôùi n FF coù 2n traïng thaùi khaùc nhau, soá MOD toái ña laø MOD 2n
GV: Nguyễn Trọng Hải
Trang 87
Bài Giảng Kỹ Thuật Số
Chương 4
4.5.6. MAÏCH ÑEÁM a. Ñeám khoâng ñoàng boä vôùi MOD 2n
•
Moâ hình ñeám leân Q0 LSB Q
Q
CK
Q
CK
CK
Q
Q
Q
Q0 LSB Q
CK
Q
CK
CK
Q
Q
Q
Moâ hình ñeám xuoáng Q0 LSB
Qn MSB
Q1
Q
Q
CK
Q
CK
CK
Q
Q
Q
Q0 LSB
Qn MSB
Q1
Q
Q
CK
Q
CK
CK
Q
•
Qn MSB
Q1
Q
•
Qn MSB
Q1
Q
Q
Ñieàu kieän Q+ = Q0
1
J
1
Q
PR
T
CK
1
K
PR
Q
D
CK CL
Q
CL
Q
CK CL
Q
PR
Q
Ví dụ, boä ñeám leân nhò phaân 4 bit duøng JK-FF vôùi CK kích caïnh xuoáng nhö sau A
1 1
J
PR
Q
1
K
J
PR
Q
CL
Q
1
GV: Nguyễn Trọng Hải
1
K
C
1 1
CK
CK
1
B
1
J
PR
Q
1
Q
1
Trang 88
1
K
J
PR
Q
CL
Q
CK
CK CL
D
1
CL
1
Q
1
K
1
Bài Giảng Kỹ Thuật Số
Chương 4
•
Xung clock ñöôïc ñöa vaøo ngoõ CK cuûa FF -A, vì vaäy FF-A seõ thay ñoåi traïng thaùi sau moãi xung clock (löu yù laø taát caû caùc ngoõ vaøo J=K=1)
•
Ngoõ ra cuûa FF-A ñöôïc ñöa vaøo ngoõ vaøo CLK cuûa FF-B, vì vaäy FF-B thay ñoåi traïng thaùi khi ngoõ ra QA thay ñoåi töø 1 xuoáng 0. Töông töï cho FF-C vaø FF-D
•
Baûng sau moâ taû caùc ngoõ ra cuûa caùc FF sau moãi xung CK, sau xung clock thöù 16 caùc ngoõ ra seõ trôû veà 0000 vaø laëp laïi trang thaùi ban ñaàu D 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0
C 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0
B 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0
A 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
Xung CK 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 (laëp laïi)
Daïng maïch ñeám maø ngoõ ra FF ñöôïc söû duïng nhö CK cho taàng sau ñöôïc goïi laø maïch ñeám khoâng ñoàng boä, vì taát caû caùc FF khoâng thay ñoåi traïng thaùi ñoàng boä vôùi xung clock, chæ coù FF-A thay ñoåi töông öùng vôùi xung clock CK QA QB QC QD 0
1
2
3
4
5
6
7
8
9
10
Ví dụ, thiết kế boä ñeám leân nhò phaân 4 bit duøng FF nhö sau (a)
(b) D
PR Q
T
CLK
PR Q
CLK CL
GV: Nguyễn Trọng Hải
CL
Q
Trang 89
Q
11 12 13
14 15
0
Bài Giảng Kỹ Thuật Số
Chương 4
Ví dụ, thiết kế boä ñeám xuoáng nhò phaân 4 bit duøng FF nhö sau (a)
(c)
(b) D
PR Q
T
PR Q
J
CL
K
CLK
CLK
CLK CL
Q
PR Q
Q
CL
Q
Ví dụ, xaây döïng maïch taïo xung 1Hz töø ñieän löôùi 50Hz nhö sau: 50Hz
50Hz
1Hz
MOD 50 counter
Schmitt Trigger
Ñieän aùp löôùi ac coù taàn soá 50hz qua boä bieán ñoåi sin sang soùng vuoâng, sau ñoù cho qua boä chia 50 (MOD 50 counter) ñöôïc xung 1hz Vaán ñeà ñaët ra laø caàn bao nhieâu FF cho boä chia 50. Vôùi 6 FF ta ñöôïc maïch chia 26=64. Nhö vaäy söû duïng giaûi phaùp ñeám MOD 2n laø khoâng thích hôïp. b. Ñeám khoâng ñoàng boä vôùi MOD < 2n Các bước thiết kế Bước 1. Thöïc hieän choïn daïng maïch Bước 2. Xaùc ñònh soá FF caàn toái thieåu Goïi
n laø soá FF caàn
Choïn n sao cho 2n-1 < MOD < 2n Bước 3. Aùp duïng tính chaát cuûa caùc ngoõ vaøo baát ñoàng boä (Pr, Cl) ñeå xaùc ñònh traïng thaùi xoùa theo trình töï sau: Laäp baûng traïng thaùi cho caùc ngoõ ra vaø caùc ngoõ vaøo baát ñoàng boä Vieát haøm cho caùc ngoõ Pr vaø Cl Ruùt goïn haøm Pr vaø Cl (duøng bìa K, ñaïi soá Boolean) Veõ maïch hoaøn chænh Ví dụ, Thieát keá maïch ñeám leân nhò phaân MOD6 duøng JK-FF nhö sau
J
PR Q
CLK K
Xaùc ñònh soá FF toái thieåu:
GV: Nguyễn Trọng Hải
CL
Q
22 < 6 < 23 ⇒ soá FF caàn laø 3
Trang 90
Bài Giảng Kỹ Thuật Số
Chương 4
Baûng traïng thaùi ñeám QC 0 0 0 0 1 1 0
QB 0 0 1 1 0 0 0
QA 0 1 0 1 0 1 0
Cl 1 1 1 1 1 1 0
Pr 1 1 1 1 1 1 1
Cl
QA 0
1
00
1
1
01
1
1
11
0
X
10
1
1
QCQB
Vaäy Cl = Q B + Q C = Q B Q C , Pr = 1 Daïng maïch ñeám leân MOD 6 A
1 PR
1
J
1
CLK CL K
B
1
Q
Q
PR
1
J
1
CLK CL K
Q
Q
C
1 1
J
PR
Q
1
CLK CL K
Q
Sinh viên vẽ dạng sóng ABC để kiểm chứng Ví dụ, Thieát keá maïch ñeám xuoáng MOD 12 duøng FF sau (a)
(c)
(b) D
PR Q
PR Q
T
CL
Q
PR Q
CLK
CLK
CLK
J
CL
Q
K
CL
Q
c. Treã trong maïch ñeám khoâng ñoàng boä Maïch ñeám khoâng ñoàng boä laø daïng ñôn giaûn nhaát cuûa caùc boä ñeám nhò phaân vì caùc thaønh phaàn ñeå taïo ra maïch ñeám laø ít nhaát. Tuy nhieân cuõng coù moät soá vaán ñeà lieân quan ñeán maïch. FF sau seõ thay ñoåi traïng thaùi öùng vôùi söï thay ñoåi traïng thaùi ngoõ ra cuûa FF tröôùc. Do moãi FF coù thôøi gian treã truyeàn ñaït (tpd), nghóa laø FF thöù 2 seõ khoâng ñaùp öùng trong khoaûng thôøi gian tpd khi FF ñaàu tieân nhaän ñöôïc xung clock, töông töï FF thöù 3 seõ khoâng ñaùp öùng trong khoaûng thôøi gian 2tpd khi FF ñaàu tieân nhaän ñöôïc xung clock, cuoái cuøng FF thöù N seõ khoâng ñaùp öùng trong khoaûng thôøi gian Ntpd khi FF ñaàu tieân nhaän ñöôïc xung clock GV: Nguyễn Trọng Hải
Trang 91
Bài Giảng Kỹ Thuật Số
Chương 4
CK QA QB 2tpd
tpd
3tpd
QC
Xeùt tröôøng hôïp sau
T
0
1
0
0
1
0
0
1
0
0
0
1
1
1
0
0
0
0
0
0
0
0
0
1
tpd
tpd
tpd
Neáu chu kyø xung clock T= 2tpd. Nhö ñaõ thaáy treân hình veõ, traïng thaùi ñeám seõ töø 000, 001 roài xuoáng 000, 010, 011, 010, 000, 101, … Thaáy raèng caùc traïng thaùi ñeám khoâng coøn tuaân thuû ñeám leân, vaø khoâng bao giôø coù traïng thaùi 100 Ñeå khaéc phuïc, chu kyø xung clock phaûi lôùn hôn thôøi gian treã lôùn nhaát cuûa maïch ñeám nghóa laø Tclock ≥ Ntpd hoaëc fmax =
1 (taàn soá cöïc ñaïi cho pheùp) Ntpd
Vôùi maïch ñeám khoâng ñoàng boä 4 bit cho thôøi gian treã cuûa JK-FF (tpd = 24ns) => fmax =
1 =10.4Mhz 4.24ns
Khi soá FF taêng thì taàn soá cöïc ñaïi cuûa maïch giaûm xuoáng d. Caùc vi maïch ñeám khoâng ñoàng boä
•
7493, 74293
74LS93 coù 2 boä ñeám beân trong: moät boä ñeám 2 vôùi ngoõ vaøo xung CKA, moät boä ñeám 8 vôùi ngoõ vaøo xung CKB Sinh vieân tra baûng söï thaät cuûa 7493 vaø lieät keâ chuoãi ñeám khi noái QA veà CKB vaø chuoãi ñeám khi noái QD veà CKA GV: Nguyễn Trọng Hải
Trang 92
CKA
QA
CKB
QB
R01
QC
R02
QD
74LS93
Bài Giảng Kỹ Thuật Số
•
Chương 4
74LS90
R91 R92 QA
74LS90 coù 2 boä ñeám beân trong: moät boä ñeám 2 vôùi ngoõ vaøo CKA, moät boä ñeám 5 vôùi ngoõ vaøo CKB
CKA QB CKB QC
Sinh vieân tra baûng söï thaät cuûa 7493 vaø lieät keâ chuoãi ñeám khi noái QA veà CKB vaø chuoãi ñeám khi noái QD veà CKA
•
R01 QD R02
74LS90
CD4024, CD4040
4024 laø boä ñeám nhò phaân 7bit (MOD128), 4040 laø boä ñeám nhò phaân 12bit (MOD4096) e. Ñeám ñoàng boä vaø maïng tuaàn töï Ñeå khaéc phuï nhöôïc ñieåm thôøi gian treã cuûa xung CK, ôû maïng ñoàng boä, taát caû caùc FF ñeàu söû duïng chung xung CK. Vì vaäy, caùc ngoõ ra seõ thay ñoåi ñoàng thôøi theo xung CK Phương pháp thiết kế Bước 1, thieát laäp baûng moâ taû moái quan heä giöõa ngoõ ra hieän taïi (Q) vaø ngoõ ra keá tieáp (Q+) Bước 2, Thieát laäp caùc traïng thaùi ngoõ vaøo cho FF ñeå thoûa maõn caùc thay ñoåi ngoõ ra töø baûng treân Bước 3, Ruùt goïn caùc phöông trình ngoõ vaøo cho FF Bước 4, Thöïc hieän maïch ÔÛ böôùc 2, ñeå thieát laäp traïng thaùi ngoõ vaøo theo ngoõ ra, caùc baûng söï thaät tröôùc cuûa FF phaûi thay ñoåi. Ví dụ, baûng söï thaät cho SR-FF S 0 0 0 0 1 1 1 1
R 0 0 1 1 0 0 1 1
Q 0 1 0 1 0 1 0 1
Q+ 0 1 0 0 1 1 -
Q 0 0 0 1 1 1
Q+ 0 0 1 0 0 1
S 0 0 1 0 0 1
R 0 1 0 1 0 0
Q 0 0 1 1
Q+ 0 1 0 1
S 0 1 0 x
Ví dụ, Töông töï, baûng söï thaät cho JK-FF, D-FF, T-FF Q 0 0 1 1
Q+ 0 1 0 1
GV: Nguyễn Trọng Hải
T 0 1 1 0
Q 0 0 1 1
Q+ 0 1 0 1
Trang 93
J 0 1 x x
K x x 1 0
Q 0 0 1 1
Q+ 0 1 0 1
D 0 1 0 1
R x 0 1 0
Bài Giảng Kỹ Thuật Số
Chương 4
Ví dụ, Thieát keá maïch ñeám coù chuoãi ñeám sau duøng T-FF Bước 1,2, Ngoõ ra hieän taïi C B A 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0
Ngoõ ra keá tieáp C+ B+ A+ 1 0 0 0 1 1 0 0 0 1 1 1 -
Ngoõ vaøo TC TB 1 0 0 0 0 1 0 1 -
000
TA 0 1 1 1 -
011
100
111
010
Bước 3, TC
TB
C 0
1
00
1
0
01
x
11 10
BA
TA
C
0
1
00
0
1
x
01
x
x
1
0
11
1
1
0
x
10
1
x
0
1
00
0
1
x
01
x
0
1
11
0
x
10
BA
TC = CB+CB
C
BA
TB = CA+CB
TA = C+B
Maïch cuoái cuøng vaø giaûn ñoà traïng thaùi cho maïch nhö sau C
B
Q CK
TC
A
CK
TB
CK
Q
Q CK
TA
CK
C
0
1
1
0
0
0
B
0
0
1
1
1
0
A
0
0
1
0
1
0
Tc C
B
TB TA
B C
C B
C B
C A
Maëc duø baûng traïng thaùi cho maïch hình treân khoâng chæ ra heát caùc tröôøng hôïp, caùc traïng thaùi keá cuûa traïng thaùi 001, 101, 110 cuõng ñöôïc chæ roõ trong quaù trình thieát keá maïch. GV: Nguyễn Trọng Hải
Trang 94
Bài Giảng Kỹ Thuật Số
Chương 4
Ví dụ, neáu caùc FF ñöôïc ñaët giaù trò ban ñaàu C=0, B=0, A=1 vaø coù xung Clock, töû phöông trình T-FF suy ra TA = TB =1 vaø traïng thaùi seõ chuyeån thaønh 111, vaø khi nhaän xung ck keá tieáp, maïch seõ hoaït ñoäng nhö boä ñeám ñaõ thieát keá 000 011
100
100
111
010
ÔÛ traïng thaùi ban ñaàu khi caáp nguoàn cho maïch, traïng thaùi ñaàu tieân cuûa FF laø khoâng ñoaùn ñöôïc. Vì lyù do naøy, taát caû caùc traïng thaùi don’t care trong boä ñeám phaûi ñöôïc kieåm tra ñeå chaéc chaén raèng noù seõ ñöa ñeán chuoãi ñeám chính neáu khoâng coù moät taùc ñoäng reset naøo cho maïch Ví dụ, thieát keá laïi ví duï treân duøng SR-FF Keát quaû:
RC = A, SC = B RB = CA , SB = C RA = A, SA = CA+BA
Ví dụ, thieát keá laïi ví duï treân duøng D-FF Ñoái vôùi D-FF, Q+ =D, vì vaäy bìa ngoõ vaøo D töông öùng vôùi bìa traïng thaùi keá. Vì vaäy, bieåu thöùc cho D coù theå ñoïc tröïc tieáp töø bìa Q+. Keát quaû:
DC = C+ = B DB = B+ = C+ BA DA = A+ = CA+BA
Ví dụ, thieát keá laïi ví duï treân duøng JK-FF Keát quaû:
JC = B , KC = A JB = C, KB = CA JA = C+B, KA = 1
•
Phương pháp nhanh để xác định biểu thực ngõ vào cho JK-FF Q 0 0 1 1
Q+ 0 1 0 1
J 0 1 x x
K x x 1 0
Töø ví duï treân thaáy raèng JA vaø KA khoâng chöùa bieán A, töông töï JB vaø KB ñoäc laäp vôùi B, JC vaø KC ñoäc laäp vôùi C. Toång quaùt, haøm cöïc tieåu cho J vaø K cuûa FF Q GV: Nguyễn Trọng Hải
Trang 95
Bài Giảng Kỹ Thuật Số
Chương 4
khoâng phuï thuoäc vaøo Q, ñieàu naøy laø bôûi vì Q=1 trong bìa J laø don’t care, vì vaäy baát cöù 1 ôû phía Q=0 cuûa bìa J coù theå ñöôïc keát hôïp vôùi 1 don’t care laøm trieät tieâu bieán Q, bìa K thì cuõng töông töï vì taát caû Q=0 trong bìa K ñeàu laø don’t care. Töø baûng traïng thaùi keá cho JK, khi Q=0 thì J=Q+, vì J ñoäc laäp vôùi Q, neân coù theå ñoïc J tröïc tieáp töø Q=0 treân bìa Q+, töông töï khi Q=1 thì K =Q+ neân coù theå ñoïc tröïc tieáp K töø Q=1 treân bìa Q+ Xeùt ví duï treân C+
B+
C 0
1
00
1
1
01
x
11 10
BA
A+
C 0
1
00
0
1
x
01
x
x
0
0
11
0
1
0
x
10
1
x
JC Keát quaû:
BA
C 0
1
00
0
1
01
x
x
11
0
0
10
1
x
BA JB
KB
KC
JC = B , KC = A JB = C, KB = CA JA = C+B, KA = 1
Phöông phaùp treân coù 2 thuaän lôïi: (1) Vieäc taùch thaønh 2 bìa J, K laø khoâng caàn thieát. (2) Soá bieán trong haøm giaûm ñi 1 do JQ vaø KQ ñoäc laäp vôùi Q). Ví dụ, thieát keá maïch chuyeån maõ 8-4-2-1 BCD sang maõ quaù 3 duøng JK-FF Baûng traïng thaùi chuyeån ñoåi cho nhö sau A 0 0 0 0 0 0 0 0 1 1
BCD 8-4-2-1 B C 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1 0 0 0 0
GV: Nguyễn Trọng Hải
D 0 1 0 1 0 1 0 1 0 1
+
A 0 0 0 0 0 1 1 1 1 1
Quaù 3 B+ C+ 0 1 1 0 1 0 1 1 1 1 0 0 0 0 0 1 0 1 1 0
Trang 96
D+ 1 0 1 0 1 0 1 0 1 0
JA KA
JA
Bài Giảng Kỹ Thuật Số Keát quaû:
Chương 4
JA = BC+BD
KA=0
JB = C+D
KB=C+D
JC = D
KC= D
JD= 1
KD =1
Ví dụ, Thieát keá maïch ñeám leân/ xuoáng ñoàng boä MOD8 duøng JK-FF Maïch ñeám leân MOD8
1 Q
1
PR
J
PR
Q
CLK Q
CL
1 J
Q
PR
K
CL
Q
1
K
1
J
CLK
CLK Q
CL
1
1
1
1
K
1 74LS76
clock Maïch ñeám xuoáng MOD8
1 Q
PR
Q
CLK CL K
J
Q
PR
Q
CLK CL K
1
1
J
Q
PR
Q
CLK CL K
1
J
1 1
74LS76
clock Maïch ñeám leân/xuoáng MOD8 Keát hôïp 2 maïch treân ñeå taïo thaønh maïch ñeám leân/ xuoáng nhö sau: Count-up
1
1
Q
PR
Q
CLK CL K
J
1
1
Q
PR
Q
CLK CL K
1
J
Q
PR
Q
CLK CL K
1
J
74LS76
Count-down clock GV: Nguyễn Trọng Hải
Trang 97
1 1
Bài Giảng Kỹ Thuật Số
Chương 4
Ví dụ, Thieát keá maïch ñeám coù khaû naêng ñaët traïng thaùi (presetable counter) Nhieàu maïch ñeám ñoàng boä ñöôïc thieát keá coù khaû naêng ñaët traïng thaùi baét ñaàu cho boä ñeám. Khaû naêng naøy coù theå ñoàng boä hoaëc khoâng ñoàng boä vôùi xung CK. Minh hoaï maïch ñeám leân 3 bit coù khaû naêng ñaët traïng thaùi khoâng ñoàng boä P1 P0 P2
Q
PR
J
Q
PR
J
Q
PR
J
1
Q
CLK CL K
Q
CLK CL K
Q
CLK CL K
1
74LS76
clock
LOAD
Nhieàu IC söû duïng ñaët traïng thaùi ñoàng boä vôùi xung clock. f. Moät soá IC ñeám ñoàng boä thoâng duïng
•
74163, boä ñeám leân 4bit, Pr vaø CLR ñoàng boä, coù khaû naêng ñaët tröôùc traïng thaùi
•
74192, boä ñeám leân/xuoáng ñoàng boä MOD10, Pr vaø CLR baát ñoàng boä
•
74193, boä ñeám leân/xuoáng ñoàng boä 4bit, Pr vaø CLR baát ñoàng boä 74LS163 A B C D
QA QB QC QD RCO
CLK ENT ENP LOAD
CLR
GV: Nguyễn Trọng Hải
74LS192 UP DOWN QA CLR QB LOAD QC QD A BO B CO C D
Trang 98
74LS193 A B C D
QA QB QC QD
UP CO DN BO LOAD CLR
Bài Giảng Kỹ Thuật Số
Chương 4
g. Maïch ñeám voøng Ñöôïc xeùt treân cô sôû cuûa maïch ñeám ñoàng boä, boä ñeám voøng coù caáu truùc cuûa thanh ghi dòch nhöng coù theâm hoài tieáp. Thoâng thöôøng söû duïng D-FF hay JK-FF A B C
PR Q
D
PR Q
D CLK
CLK CL
PR Q
D CLK
CL
Q
CL
Q
Q
CK A
PR Q
J
B
PR Q
J
CLK K
K
Q
PR Q
J
CLK CL
C
CLK CL
K
Q
CL
Q
CK Traïng thaùi ban ñaàu ñaët cho maïch laø A=0, B=0, C=1 CK A B C Maïch coù chu trình ñeám MOD3 baèng vôùi soá FF coù trong maïch. Caùc traïng thaùi cuûa FF ñöôïc chuyeån daàn töø C -> A -> B.
•
Boä ñeám voøng Johnson A
B
1
1
1 PR
D
C
Q
CLK
PR
D
Q
CL
Q
1
CL
Q
1
1
CK GV: Nguyễn Trọng Hải
Trang 99
Q
CLK
CLK CL
PR
D
Q
Bài Giảng Kỹ Thuật Số
Chương 4
ck A B C Baûng traïng thaùi CK 0 1 2 3 4 5 6
A 0 1 1 1 0 0 0
B 0 0 1 1 1 0 0
C 0 0 0 1 1 1 0
Maïch söû duïng 3-FF neân soá MOD = 6 Toång quaùt, vôùi maïch söû duïng n-FF thì soá MOD laø 2n
•
Vi maïch ñeám voøng Johnson laø 4017 MOD10 CD4017 O0 O1 CLK O2 O3 CKI O4 O5 O6 O7 O8 O9 COUT RESET
4.5.7. Öùng duïng boä ñeám: a. Ñeám taàn soá Clear Unknow freq Counter
Unknow freq. SAMPLE pulses
SAMPLE pulses Clear Z
Counter Display
t0 GV: Nguyễn Trọng Hải
Trang 100
t1 T.gian lấy mẫu t2
Bài Giảng Kỹ Thuật Số
Chương 4
Maïch ñeám taàn soá laø maïch ño vaø hieån thò taàn soá cuûa tín hieäu. Ngoõ vaøo coång AND bao goàm caùc xung vôùi taàn soá chua bieát fx vaø 1 xung laáy maãu ñieàu khieån thôøi gian cho pheùp xung qua coång AND vaøo boä ñeám. Maïch ñeám seõ ñeám soá xung xuaát hieän trong thôøi gian laáy maãu. Gía trò hieån thò cuûa boä ñeám laø taàn soá cuûa tín hieäu caàn ño (neáu thôøi gian laáy maãu t2 – t1 =1s thì ñôn vò cuûa taàn soá laø Hz) Söï chính xaùc cuûa phuông phaùp naøy tuøy thuoäc vaøo khoaûng thôøi gian laáy maãu. Phöông phaùp thöôøng söû duïng ñeå nhaän ñöôïc 1 xung laáy maãu chính xaùc laø söû duïng boä dao ñoäng thaïch anh ñeå taïo ra taàn soá chính xaùc (ví duï 100khz) sau ñoù ngöôøi ta chia xuoáng theo caùc thang ño nhö sau 100kh
Dao động thạch anh
100kh
Biến đổi sinvuông
10khz
Bộ đếm10 Chia 10
100hz
1khz
Bộ đếm10 Chia 10
Bộ đếm10 Chia 10
Bộ đếm10 Chia 10
SAMPLE pulse Q
PR
Q
CLK CL K
J
1 1
Cuoái cuøng boä ñeám taàn soá hoaøn taát nhö sau Unknow freq
CLEAR Counter
SAMPLE pulse
Decoder/ Display Q Tp
GV: Nguyễn Trọng Hải
PR
Q
CLK CL K
T
=100ns
RT
Q
CT
Trang 101
J
1
1
10hz
1hz
Bộ đếm10 Chia 10
Bài Giảng Kỹ Thuật Số
Chương 4
Input pulse SAMPLE pulse T Q output
counter counter clear
is
counter count counter stop clear display show freq
is
b. Ñoàng hoà soá Moät trong nhöõng öùng duïng thoâng duïng nhaát cuûa boä ñeám laø ñoàng hoà soá, hieån thò thôøi gian trong ngaøy nhö giôø, phuùt, giaây. Ñeå taïo moät ñoàng hoà soá chính xaùc yeâu caàu taàn soá xung clock caáp cho ñoàng hoà phaûi chính xaùc. Ñoái vôùi nhöõng ñoàng hoà soá söû duïng pin, thöôøng söû duïng thaïch anh ñeå taïo taàn soá cô baûn. Ñoái vôùi ñoàng hoà soá söû duïng ñieän löôùi ac, duøng taàn soá cuûa ñieän löôùi ñeå taïo taàn soá cô baûn. Trong caùc tröôøng hôïp treân taàn soá cuûa thaïch anh hay ñieän löôùi ñöôïc chia xuoáng thaønh taàn soá 1hz caáp cho ñoàng hoà 50hz
1hz
50hz
Pulse shaper
Chia 50
MOD2 1-FF
BCD counter
MOD6 counter
BCD counter
MOD6 counter
BCD counter
Decoder display 0-1 ten
Decoder display 0-9 Unit
Decoder display 0-5 ten
Decoder display 0-9 Unit
Decoder display 0-5 ten
Decoder display 0-9 Unit
Hours section
GV: Nguyễn Trọng Hải
Minute section
Trang 102
Second section
Bài Giảng Kỹ Thuật Số
Chương 4
Ñoái vôùi maïch ñeám giôø coù moät soá tình huoáng sau:
0001
Khi soá haøng chuïc ôû giaù trò 0, thì boä ñeám haøng ñôn vò laø boä ñeám BCD Khi soá haøng chuïc ôû giaù trò 1, thì boä ñeám haøng ñôn vò chæ ñeám MOD3 (hieån thò giaù trò giôø töø 10 ñeán 12 roài trôû laïi 1 (cho neân maïch naøy phaûi coù khaû naêng ñaët tröôùc soá ñeám)
Q
PR
Q
CLK CL K
J
1
CLR
CK-D CK-UP
PL COBO D C B A
1
74LS192
Decoder Display Unit of hours
Display Tens of hours
Maïch cho boä ñeám giôø nhö hình beân
DCB A
4.5.8. Boä nhôù truy caäp ngaãu nhieân
Di
Nhập data
R/W
Ai
D PR
Q
CLK CL
Q
DO Xuất data
Địa chỉ ô nhớ
Baûng chöùc naêng
Ngoõ vaøo Ai 0 1 1 1
R/W
GV: Nguyễn Trọng Hải
X 0 0 1
Di X 0 1 X
Cheá ñoä Nhôù, D0 = 0 Nhôù 0 vaøo oâ nhôù, D0 = 0 Nhôù 0 vaøo oâ nhôù, D0 = 0 Ñoïc oâ nhôù, D0 = bit nhôù
Trang 103
Bài Giảng Kỹ Thuật Số 4.6.
Chương 4
MÁY TRẠNG THÁI Heä tuaàn töï coøn coù teân goïi khaùc laø maùy traïng thaùi (State Machine), teân naøy thöôøng söû duïng khi duøng moät heä tuaàn töï ñeå ñieàu khieån 1 heä thoáng soá thöïc hieän moät thuû tuïc hoaëc moät thuaät toaùn töøng böôùc moät. Coù theå ñònh nghóa caùc maùy traïng thaùi baèng caùc giaûn ñoà traïng thaùi, hoaëc moät kieåu löu ñoà ñaëc bieät ñöôïc goïi laø löu ñoà maùy traïng thaùi hay löu ñoà SM (State Machine) duøng ñeå moâ taû ñaëc tính laøm vieäc cuûa moät maùy traïng thaùi Trong thieát keá soá, thöôøng söû duïng töø maùy traïng thaùi ñeå chæ caùc maïch ñoàng boä nhö mạch đếm… ở ñoù caùc giaù trò ra thay ñoåi töø moät traïng thaùi nhò phaân naøy sang moät traïng thaùi nhò phaân khaùc khi maïch ñöôïc cung caáp xung clock. SM coù hai loaïi: Moore vaø Mealy.
4.6.1. Máy trạng thái kiểu MOORE Sô ñoà khoái maùy traïng thaùi kieåu Moore vaø moät maïch counter nhò phaân 2bit laø moät
ví duï cho maùy traïng thaùi kieåu Moore
Caùc t/hieäu ngoaøi
Giaûi maõ t.thaùi keá
Löu tröõ t.thaùi hieän taïi
Giaûi maõ ngoõ ra
Caùc FF
Clock
X1 X2 Xm
Maïng toå hôïp Q1 Q2 Qk
Q1+ Q +2
Q +k
D1 CK D2 CK
Dk CK
Clock
GV: Nguyễn Trọng Hải
Trang 104
Q1 Q2
Qk
Heä toå hôïp (cho caùc ngoõ ra)
Z1 Z2 Zn
Bài Giảng Kỹ Thuật Số
Chương 4
4.6.2. Máy trạng thái kiểu MEALY Sô ñoà khoái maùy traïng thaùi Mealy
Kích Logic thích traïng thaùi keá
Giaù trò vaøo
Boä nhôù traïng thaùi
Traïng thaùi hieän haønh
Logic ra G
Caùc giaù trò ra (Output)
Ngoõ CK
Clock X1 X2
HEÄ TOÅ HÔÏP Q+ 1
Xm
Z1 Z2 Zn D1 CK
Q+ 2
Q1 Q2
D2 CK
Qk+
Qk
Dk CK
Q1
Q2
Qk
Clock 4.7.
LƯU ĐỒ MÁY TRẠNG THÁI Caùc löu ñoà SM coøn ñöôïc goïi laø löu ñoà ASM (Algorithmic State Machine). Löu ñoà SM cho nhieàu thuaän lôïi trong vieäc deã hieåu hôn hoaït ñoäng cuûa moät heä thoáng soá baèng caùch quan saùt thay vì laø giaûn ñoà traïng thaùi töông ñöông. Coù theå chuyeån moät löu ñoà SM cho tröôùc thaønh nhieàu daïng töông ñöông, vaø moãi daïng daãn tröïc tieáp ñeán moät caøi ñaët phaàn cöùng. Ba thaønh phaàn chính cuûa moät löu ñoà SM tên trạng thái
Mã trạng thái
(a) Hoäp traïng thaùi
GV: Nguyễn Trọng Hải
nhánh đúng
nhánh sai
1
0
điều kiện
(b) Hoäp quyeát ñònh
Trang 105
danh sách xuất theo điều kiện (c) Hoäp xuaát theo ñk
Bài Giảng Kỹ Thuật Số
Chương 4
•
Traïng thaùi cuûa moät heä thoáng ñöôïc bieåu dieån baèng hoäp traïng thaùi (state box), hoäp traïng thaùi coù theå chöùa moät danh saùch giaù trò ra. Maõ traïng thaùi coù theå ñaët beân caïnh hoäp ôû phaàn treân. Teân traïng thaùi ñöôïc ñaët trong hình troøn beân traùi hoäp traïng thaùi.
•
Hoäp quyeát ñònh (decision box) ñöôïc bieåu dieãn baèng moät kyù hieäu hình thoi vôùi caùc nhaùnh ñuùng vaø sai. Ñieàu kieän ñaët trong hoäp laø moät bieåu thöùc Boolean ñöôïc xaùc ñònh ñeå laáy nhaùnh naøo.
•
Hoäp xuaát theo ñieàu kieän (conditional output box) chöùa danh saùch vaø caùc giaù trò ra theo ñieàu kieän phuï thuoäc vaøo caû traïng thaùi cuûa heä thoáng vaø caùc giaù trò vaøo
Moät löu ñoà SM ñöôïc xaây döïng töø caùc khoái SM (SM block) moãi khoái SM chöùa chính xaùc moät hoäp traïng thaùi cuøng vôùi caùc hoäp quyeát ñònh vaø caùc hoäp xuaát theo ñieàu kieän lieân heä vôùi traïng thaùi ñoù. Moät khoái SM coù chính xaùc moät ñöôøng vaøo vaø moät hoaëc nhieàu ñöôøng ra vaø moâ taû hoaït ñoäng cuûa maùy trong thôøi gian maø maùy ñang trong traïng thaùi. Khi moät heä thoáng soá ñi vaøo traïng thaùi lieân heä vôùi moät khoái SM cho tröôùc, caùc giaù trò ra ôû danh saùch xuaát trong hoäp traïng thaùi seõ trôû thaønh ñuùng. Caùc ñieàu kieän trong caùc hoäp quyeát ñònh seõ ñöôïc ñònh trò ñeå xaùc ñònh xem ñöôøng naøo ñi theo qua khoái SM. Khi treân ñöôøng ñi coù gaëp moät hoäp xuaát theo ñieàu kieän thì caùc giaù trò ra töông öùng seõ trôû thaønh ñuùng. Moät ñöôøng daãn qua khoái SM töø ngoõ vaøo ñeán ngoõ ra ñöôïc goïi laø ñöôøng daãn noái gheùp (link path) Ví dụ, moät khoái SM Z1, Z2
S1 nhaùnh a
0
1
X1 0
Z3, Z4 0 1
X3
1
nhaùnh b
X3
1
Z5 2
3
n
n ñöôøng ra khi vaøo traïng thaùi S1, caùc giaù trò ra Z1 vaø Z2 = 1. Neáu giaù trò vaøo X1 vaø X2 ñeàu baèng 0 thì Z3 vaø Z4 baèng 1 vaø ôû cuoái thôøi gian traïng thaùi, maùy ñi vaøo traïng thaùi
GV: Nguyễn Trọng Hải
Trang 106
Bài Giảng Kỹ Thuật Số
Chương 4
keá qua ñöôøng ra 1, ngöôïc laïi neáu X1 =1 vaø X3 = 0, giaù trò ra Z5 = 1 vaø ñi vaøo traïng thaùi keá qua ñöôøng ra 3 Toång quaùt thì moät khoái SM coù theå ñöôïc veõ baèng nhieàu daïng khaùc nhau. Hai khoái
SM sau laø töông ñöông.
Z1
S1 0
X1
Z1
S1 0
1
Z2
S2
X3
X1
0
1
1
0 Z2
Z2 S2
S3
1
1
X1 0
X2
S3
Ví dụ, Veõ moät khoái SM töông ñöông vôùi khoái SM sau.
`
0 C 0
1
A 1 1 B 0
Z1
Phaûi tuaân theo moät soá quy taéc nhaát ñònh khi xaây döïng moät khoái SM: Thöù nhaát, vôùi moïi keát hôïp caùc bieán vaøo hôïp leä phaûi coù chính xaùc moät ñöôøng ra ñöôïc ñònh nghóa. Ñieàu naøy laø caàn thieát vì moãi toå hôïp vaøo ñöôïc cho pheùp phaûi daãn ñeán 1 traïng thaùi keá duy nhaát. Thöù hai, khoâng cho pheùp coù ñöôøng hoài tieáp noäi trong moät khoái SM.
GV: Nguyễn Trọng Hải
Trang 107
Bài Giảng Kỹ Thuật Số
Chương 4
Ví dụ, 1 caùch veõ sai vaø 1 caùch veõ ñuùng ñoái vôùi 1 khoái SM coù ñöôøng hoài tieáp
(b) Ñuùng
(a) Sai
Moät khoái SM coù theå coù nhieàu ñöôøng song song maø daãn ñeán cuøng moät ñöôøng ra, vaø hôn moät ñöôøng trong caùc ñöôøng naøy coù theå tích cöïc ñoàng thôøi. Ngoaøi ra cuõng coù theå bieåu dieãn baèng moät khoái SM noái tieáp töông ñöông. Trong khoái noái tieáp naøy coù theå coù moät ñöôøng daãn noái gheùp tích cöïc duy nhaát giöõa ngoû vaøo vaø ra. Vôùi baát cöù toå hôïp naøo cuûa caùc giaù trò vaøo, caùc giaù trò ra seõ gioáng nhö trong daïng song song töông ñöông. Ví dụ,
Z1
Z1
1
Z2
1
X1 0
Z3
1
X2 0
Z4
X1 X3 0
Z2
X2
(a) daïng song song
Z3
X3 Z3
(b) daïng noái tieáp
GV: Nguyễn Trọng Hải
Trang 108
Bài Giảng Kỹ Thuật Số
Chương 4
Coù theå chuyeån moät giaûn ñoà traïng thaùi cuûa maùy tuaàn töï sang löu ñoà SM töông ñöông moät caùch deã daøng. Ví dụ, Giaûn ñoà traïng thaùi 1/0
1/0
S0 0/0
Za
0/0
S1
S2
Zb
Zc
1/Z2
0/Z1
Vaø löu ñoà SM töông ñöông 00 S0
Za link 1
0
X
1
01 Zb
S1
link 2 X
0
1
11
link 3
Zc
S1 0
X
Z1
1 Z2
Giaûn ñoà ñònh thì cho löu ñoà SM clock traïng thaùi X
S0
S1
S2
Za Zb Zc Z1 Z2
GV: Nguyễn Trọng Hải
Trang 109
S2
S0
S0
Bài Giảng Kỹ Thuật Số
Chương 4
ÔÛ giaûn ñoà traïng thaùi, coù caû 2 giaù trò ra Moore vaø Mealy, löu ñoà SM töông ñöông coù 3 khoái, moät khoái öùng vôùi moät traïng thaùi. Caùc giaù trò ra Moore (Za, Zb, Zc) ñöôïc ñaët trong caùc hoäp traïng thaùi, töø ñoù chuùng khoâng phuï thuoäc vaøo giaù trò vaøo. Caùc giaù trò ra Mealy (Z1, Z2) xuaát hieän trong caùc hoäp xuaát theo ñieàu kieän, chuùng phuï thuoäc vaøo caû traïng thaùi vaø giaù trò vaøo. Trong ví duï naøy, moãi khoái SM chæ coù moät hoäp quyeát ñònh, do ñoù chæ phaûi kieåm tra 1 bieán vaøo. Ñoái vôùi caû hai giaûn ñoà traïng thaùi vaø löu ñoà SM, Zc luoân baèng 1 trong traïng thaùi S2. Neáu X=0 trong traïng thaùi S2, Z=1 vaø traïng thaùi keá laø S0. Neáu X=1, Z2 =1 vaø traïng thaùi keá laø S2 ÔÛ giaûn ñoà ñònh thì cho löu ñoà SM, vôùi chuoãi vaøo X=1,1,1,0,0,0. Taát caû caùc thay ñoåi traïng thaùi xaûy ra ngay sau caïnh leân cuûa xung nhòp. Vì caùc giaù trò Moore phuï thuoäc vaøo traïng thaùi vaø chæ coù theå thay ñoåi töùc thôøi sau 1 thay ñoåi traïng thaùi hoaëc moät thay ñoåi giaù trò vaøo. Noùi chung, taát caû caùc giaù trò ra seõ coù giaù trò ñuùng cuûa chuùng ôû caïnh tích cöïc cuûa xung nhòp Ví dụ, Laäp löu ñoà SM cho boä chia nhò phaân song song cho caùc soá nhò phaân
döông, soá bò chia (dividend) 6 bit cho soá chia (divisor) 3 bit ñeå coù ñöôïc thöông 3 bit. Minh hoïa quaù trình chia
100010 110 101 000 1010 110 100
110 101
Pheùp chia coù theå thöïc hieän baèng pheùp toaùn tröø vaø dòch. ñeå xaây döïng boä chia seõ söû duïng thanh ghi soá bò chia 7 bit vaø thanh ghi soá chia 3 bit nhö sau Thanh ghi số bị chia x7
x6
x5
x4
x3
x2
start x1
Sh
Su Bộ trừ và so sánh
y3
C (so sánh)
y2 y1
V Điều khiển
Chỉ báo tràn trên
clock
Số chia Trong quaù trình chia thay vì dòch soá chia sang phaûi tröôùc moãi laàn tröø, ôû ñaây seõ dòch soá bò chia sang traùi. Chuù yù laø caàn theâm 1 bit ôû ñaàu beân traùi thanh ghi soá bò
GV: Nguyễn Trọng Hải
Trang 110
Bài Giảng Kỹ Thuật Số
Chương 4
chia ñeå cho khoâng maát 1 bit khi dòch traùi soá bò chia. Thay vì duøng 1 thanh ghi ñeå chöùa thöông soá, coù theå ñöa thöông soá töøng bit moät vaøo ñaàu beân phaûi cuûa thanh ghi soá bò chia khi dòch traùi soá bò chia Neáu ban ñaàu x7x6x5x4 ≥ y3y2y1 (nghóa laø neáu 4 bit traùi cuûa thanh ghi soá bò chia vöôït quaù hoaëc baèng soá chia) thöông soá seõ lôùn hôn 8 vaø traøn treân xaûy ra. Chuù yù laø neáu x 7 x 6 x 5 x 4 x 3 x 2 x 1 x 7 x 6 x 5 x 4 0000 x 7 x 6 x 5 x 4 8 ≥ = ≥8 y 3 y 2 y1 y 3 y 2 y1 y 3 y 2 y1 baùo traøn vì thöông soá chæ coù 3 bit (toái ña baèng 7) Tín hieäu dòch (Sh = shift) seõ dòch soá bò chia sang traùi moät vò trí. Tín hieäu tröø (Su = Subtract) seõ tröø soá chia cho 4 bit taän cuøng beân traùi cuûa thanh ghi soá bò chia vaø ñaët bit thöông soá (bit taän cuøng beân phaûi thanh ghi soá bò chia) leân 1. Neáu soá chia lôùn hôn 4 bit taän cuøng beân traùi cuûa soá bò chia, ngoõ ra cuûa boä so saùnh laø C=0, ngöôïc laïi C=1. Maïch ñieàu khieån taïo ra chuoåi caùc tín hieäu dòch vaø tröø mong muoán. Baát cöù luùc naøo C=1, tín hieäu tröø ñöôïc taïo ra vaø bit thöông soá ñöôïc ñaët leân Giaûn ñoà traïng thaùi cuûa maïch ñieàu khieån Start’/0
C/Su
C.Start/V S0 Stop
C’.Start/Sh
C’/0
S1
S3 C’/Sh
C/Su
C’/Sh S2 C/Su
Ban ñaàu soá bit chia 6 bit vaø soá chia 3 bit ñöôïc ñöa vaøo caùc thanh ghi thích hôïp. Maïch vaãn ôû traïng thaùi döøng Stop (S0) cho ñeán khi coù tín hieäu Start. Neáu giaù trò ban ñaàu cuûa C=1, thöông soá seõ caàn 4 bit trôû leân. Vì khoâng gian chæ cung caáp cho thöông soá 3 bit, ñieàu kieän naøy laøm traøn treân do ñoù boä chia döøng vaø boä chæ traøn seõ ñaët leân 1 baèng ngoõ ra traøn treân. Bình thöôøng giaù trò ban ñaàu cuûa C=0, vì vaäy dòch seõ xaûy ra ñaàu tieân vaø maïch seõ ñi vaøo traïng thaùi S1. Roài neáu C=1 thì xaûy ra tröø. Sau khi hoaøn taát tröø C seõ luoân luoân baèng 0 vì vaäy xung nhòp keá seõ taïo ra dòch. Quaù trình naøy tieáp tuïc cho ñeán khi xaûy ra 3 laàn dòch vaø ñieàu khieån oå trong traïng thaùi S3. Roài pheùp tröù cuoái cuøng xaûy ra neáu caàn, vaø ñieàu khieån quay veà traïng thaùi döøng. Vôùi vd naøy seõ giaû söø laø khi tín hieäu baét ñaàu (start) xaûy ra noù seõ laø 1 trong thôøi gian 1 clock vaø roài giöõ laø 0 cho ñeán khi heä ñieàu khieån quay veà traïng thaùi S0. Do ñoù Start seõ luoân laø 0 trong caùc traïng thaùi S1, S2, S3
GV: Nguyễn Trọng Hải
Trang 111
Bài Giảng Kỹ Thuật Số
Chương 4
Töø ñoù suy ra löu ñoà SM nhö sau 00 S0 0
Sh Start 1 C
01
S1 0
0 Sh
1 V
S2
Sh S3
1 Su
10 0
C
C
1 Su
11 0
C 1 Su
S0 laø traïng thaùi baét ñaàu, neáu Start=1, tín hieäu so saùnh C ñöôïc kieåm tra, neáu C=1, thöông soá lôùn hôn 3 bit, vì vaäy baùo traøn V=1 ñöôïc taïo ra vaø khoâng coù söï thay ñoåi xaûy ra. Neáu C=0, Sh=1, ôû xung nhòp keá soá bò chia ñöôïc dòch sang traùi vaø traïng thaùi chuyeån sang S1. C ñöôïc kieåm tra trong traïng thaùi S1. Neáu C=1 coù theå coù pheùp tröø, Su=1 vaø khoâng coù söï thay ñoåi traïng thaùi. Neáu C=0, Sh=1 vaø soá bò chia ñöôïc dòch khi traïng thaùi chuyeån sang S2. Hoaït ñoäng ôû S2 thì gioáng S1. Trong traïng thaùi S3 traïng thaùi keá luoân laø S0, vaø C=1 laøm cho pheùp tröø xaûy ra Ví dụ, Laäp löu ñoà Sm cho ñieàu khieån boä nhaân song song cho caùc soá nhò phaân
döông.
Nhaân nhò phaân chæ caàn pheùp toaùn dòch vaø coäng. Thay vì ban ñaàu taïo ra taát caû caùc tích boä phaän roài coäng laïi, thì moãi tích boä phaän (partial product) ñöôïc coäng moãi khi ñöôïc taïo ra vaø do ñoù khoâng caàn coäng moät laàn hôn 2 soá nhò phaân Nhaân 2 soá 4 bit caàn 1 thanh ghi soá bò nhaân (multiplicant register) 4bit, moät thanh ghi soá nhaân 4 bit vaø thanh ghi 8bit cho soá haïng tích. Thanh ghi tích soá laøm vieäc nhö thanh ghi tích luõy laø tích luõy toång caùc tích boä phaän. Thay vì dòch soá bò nhaân sang traùi tröôùc khi coäng, ôû ñaây seõ dòch thanh ghi tích sang phaûi
GV: Nguyễn Trọng Hải
Trang 112
Bài Giảng Kỹ Thuật Số Soá bò nhaân Soá nhaân Caùc tích boä phaän
Chương 4 → →
1101 1011 1101 1101 10111 0000 100111 1101 10001111
Tích soá
Sô ñoà khoái cuûa boä nhaân song song Thanh ghi tích soá Thanh ghi tích luõy
PC
C
Boä coäng
M=1: coäng &dòch M=0: dòch
Soá nhaân
N
Ñieàu khieån
Ad
PC Sh
Ad: tín hieäu coäng Sh: tín hieäu dòch PC: xung clock M: bit boä nhaân N: tín hieäu start C: soá nhôù
Soá bò nhaân Ví duï, nhaân 13 x 11 ñöôïc laøm laïi sau ñaây chæ vò trí caùc bit trong caùc thanh ghi ôû moãi thôøi ñieåm xung nhòp Noäi dung ban ñaàu cuûa t.ghi tích luõy (coäng soá bò nhaân vì M=1) Sau khi coäng Sau khi dòch phaûi Coäng soá bò nhaân vì M=1 Sau khi coäng Sau khi dòch phaûi Boû qua coäng vì M=0 Sau khi dòch coäng soá bò nhaân vì M=1 Sau khi coäng Sau khi dòch (ñaùp soá)
000001011 1101 011011011 001101101 1101 100111101 010011110
M(11) (13)
001001111 1101 100011111 010001111
M=1
M=1
M=0
Ñöôøng chaám chaám laø ñöôøng chia giöõa boä nhaân vaø tích soá Maïch ñieàu khieån phaûi ñöôïc thieát keá ñeå cho ra chuoãi caùc tín hieäu coäng vaø dòch ñuùng.
GV: Nguyễn Trọng Hải
Trang 113
Bài Giảng Kỹ Thuật Số
Chương 4
Giaûn ñoà traïng thaùi cho ñieàu khieån boä nhaân, SV giaûi thích töông töï nhö maïch chia N’/0
S0
- /Sh
MN/Ad
S1
S7 M/Ad
- /Sh
M’N/Sh
M’N/Sh
S2
S6
M’N/Sh
M/Ad
M’N/Sh
- /Sh
S3
S5 S4
M/Ad
- /Sh
N’/0 Ad
N
Ñieàu khieån Coäng - dòch
Sh
PC
K=1 neáu n-1 laàn dòch Boä ñeám
K/Sh
S0
M’N/Sh M’K/Sh
K’/Sh M/Ad
- /Sh
M’/Sh S0
(b) Giaûn ñoà traïng thaùi cuûa ñieàu khieån coäng dòch
N’/0
MN/Ad
M’N/Sh
M/Ad S0
(a) Ñieàu khieån boä nhaân
S0
MN/Ad
S0
(c) Giaûn ñoà traïng thaùi cuoái cuûa ñieàu khieån coäng dòch M’K’/Sh
S0
Laäp löu ñoà SM cho ñieàu khieån boä nhaân, ñieàu khieån naøy taïo ra chuoãi caùc xung coäng vaø dòch mong muoán cuûa boä nhaân nhò phaân. Boä ñeám seõ ñeám soá laàn dòch vaø xuaát K=1 tröôùc khi laàn dòch cuoái cuøng xaûy ra. Löu ñoà SM cho ñieàu khieån boä nhaân töông öùng vôùi giaûn ñoà traïng thaùi hình (c)
GV: Nguyễn Trọng Hải
Trang 114
Bài Giảng Kỹ Thuật Số
Chương 4 S0
0 1
N 1 M
0
Ad
Sh S2
Sh
S1 1
K
1
0
0
M
Sh
Ad 1
GV: Nguyễn Trọng Hải
Trang 115
M
0
Bài Giảng Kỹ Thuật Số 4.8.
Chương 4
BỘ NHỚ BÁN DẪN Boä nhôù baùn daãn chia laøm hai loaïi chính •
Boä nhôù baûng (table memory)
•
Boä nhôù haøm (function memory) Boä nhôù baùn daãn
Boä nhôù haøm
Boä nhôù baûng
RAM Tónh Ñoäng
PLD
ROM MROM PROM EPROM EPROM
PLA
PAL LCA PPAL EPPAL EEPPAL
EPLD
Vôùi
PEEL (Pro. elec. erasable logic
GAL (generic array logic)
RAM = Random Access Memory ROM = Read Only Memory PLD = Programmable Logic Device PLA = Programmable Logic Array PAL = Programmable Array Logic LCA = Logic Cell Array M = Mask programed P = Programmable EP = Erasable and Programmable EEP = Electrically Erasable and Programmable Bộ nhớ bảng, •
Đòa chæ A ñöôïc ñònh nghóa trong daõy 0≤ A ≤ 2N –1 Vôùi ñoä roäng töø cuûa ñòa chæ laø N, giaù trò cuûa N phuï thuoäc vaøo kích thöôùc cuûa boä nhôù. Coù theå caát döõ lieäu ôû moät ñòa chæ trong 2N ñòa chæ. Ñoä roäng töø döõ lieäu laø m = 1…16 bit
•
Dung löôïng boä nhôù K ñöôïc xaùc ñònh bôûi: K=mxn (bit) Vôùi m laø ñoä roäng töø döõ lieäu, n laø soá ñòa chæ Tính theo byte (K/8) cho caùc ñoä roäng töø döõ lieäu laø 8 hay 16 bit
GV: Nguyễn Trọng Hải
Trang 116
Bài Giảng Kỹ Thuật Số
Chương 4
Ví dụ, Baûng cho ROM coù N=3bit ñòa chæ, m=2 bit döõ lieäu
Giaù trò thaäp phaân 0 1 2 3 4 5 6 7
Ñòa chæ a2 a1 a0 0 0 0 1 0 0 0 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 1 1
Döõ lieäu d1 d0 d01 d00 d11 d10 d21 d20 d31 d30 d41 d40 d51 d50 d61 d60 d71 d70
D0 D1 D2 D3 D4 D5 D6 D7
Bộ nhớ hàm •
Chöùa caùc haøm logic (Boolean) thay vì laø caùc baûng. Moãi bieán cuûa baûng chaân trò coù theå ñöôïc bieåu dieãn baèng haøm logic. Vieát döôùi daïng tích chuaån thì haøm logic cuûa bieán d0 ôû ví duï treân laø d0 = a2 .a1.a0 d00 +a2 .a1.d10 +...+a2a1a0 d70
= m0d00 + m1d10+…+m7d70 (vôùi mi: minterm thöù i) neáu trong baûng coù ít dio = 1 thì vieäc söû duïng boä nhôù haøm tieän lôïi hôn boä nhôù baûng Các thiết bị logic lập trình được PLD (Programmable Logic device) •
PLD laø teân goïi toång quaùt cuûa moät IC soá maø ngöôøi ta coù theå laäp trình ñöôïc noù ñeå thöïc hieän caùc haøm logic khaùc nhau. Vì haøm logic ñöôïc bieåu dieãn döôùi daïng toång caùc tích hay tích caùc toång neân caáu truùc maïch trong PLD thoâng thöôøng laø moät daõy AND vaø OR ñoàng daïng (identical cell) maø coù theå laäp trình töøng coång ñöôïc.
•
Caùc thieát keá duøng PLD coù caùc öu ñieåm sau: ¾ Taêng khaû naêng tích hôïp. coù theå giaûm khoái löôïng veà maïch thieát keá trong khi vaãn coù theå taêng chöùc naêng cho maïch ¾ Coâng suaát thaáp. CMOS vaø moät soá ít hôn caùc maïch keát hôïp seõ laøm giaûm ñaùng keå coâng suaát nguoàn cung caáp ¾ Taêng ñoä tin caäy. Nguoàn cung caáp thaáp vaø vieäc giaûm toái ña caùc maïch lieân keát ôû ngoaøi laøm cho vieäc truyeàn giöõa caùc khoái ñaùng tin caäy hôn ¾ Giaù thaønh thaáp. ¾ Deã söû duïng. ¾ Deã daøng thay ñoåi. Khi caàn coù söï thay ñoåi trong thieát keá, khoâng caàn phaûi theâm thaét caùc “daây noái”, taát caû laø thay ñoåi beân trong cuûa PLD vaø coù theå thöïc hieän caùc thay ñoåi ñoù moät caùch nhanh choùng.
GV: Nguyễn Trọng Hải
Trang 117
Bài Giảng Kỹ Thuật Số 4.9.
Chương 4
ROM - THIẾT KẾ HỆ THỐNG SỐ DÙNG ROM
4.9.1. ROM ROM laø moät maïch toå hôïp coù n ngoõ vaøo vaø m ngoõ ra. Caùc ngoõ vaøo ñöôïc goïi laø ñòa chæ (address input) vaø thöôøng ñöôïc ñaët laø A0A1…An-1. Caùc ngoõ ra ñöôïc goïi laø caùc ngoõ ra döõ lieäu (data output) vaø thöôøng ñöôïpc ñaët teân laø D0D1D2…Dm-1
2n x m ROM
address input (n đường)
A0 A1 A2
D0 D1 D2
An-1
Dm-1
address output (m đường)
Hình 1-2. Caáu truùc cô baûn cuûa moät ROM 2n x m ROM chöùa baûng chaân trò cuûa moät haøm logic toå hôïp n ngoõ vaøo, m ngoõ ra. Ví dụ, baûng chaân trò cuûa haøm toå hôïp 3 ngoõ vaøo 4 ngoõ ra vaø ta coù theå chöùa noù trong 1 ROM 23 x 4 (8x 4). Boû qua caùc trì hoaõn veà thôøi gian, caùc ngoõ ra döõ lieäu cuûa moät ROM ôû moïi luùc laø caùc bit ra cuûa haøng trong baûng chaân trò ñöôïc choïn bôûi caùc ngoõ vaøo ñòa chæ
A2 0 0 0 0 1 1 1 1
Input A1 0 0 1 1 0 0 1 1
A0 0 1 0 1 0 1 0 1
D3 1 1 1 0 0 0 0 1
Output D2 D1 1 1 1 0 0 1 1 1 0 0 0 1 1 0 0 0
D0 0 1 1 1 1 0 0 0
Chú ý •
Coù theå duøng ROM nhö baát cöù phaàn töû logic toå hôïp naøo
•
ROM laø boä nhôù khoâng boác hôi (nonvolatile memory) vì noäi dung cuûa noù vaãn giöõ ñöôïc ngay caû khi khoâng caáp ñieän
•
Vaán ñeà hoaùn vò caùc coät bit trong baûng chaân trò cuûa haøm caàn ghi ROM
•
Khi duøng ROM ñeå chöùa moät baûng chaân trò cho tröôùc, caùc tín hieäu input vaø output ñoïc töø phaûi sang traùi trong baûng chaân trò thöôøng ñöôïc gaùn vaøo caùc ngoõ vaøo ñòa chæ vaø ngoõ ra data cuûa ROM vôùi vôùi caùc nhaõn theo thöù töï taêng daàn
Ví dụ, Duøng ROM ñeà thöïc hieän haøm nhaân nhò phaân khoâng daáu cho 2 soá nhò phaân 4 bit. Neáu duøng maïch rôøi ta duøng caùc IC 74284 vaø 74285, coøn duøng ROM thì söû duïng ROM 28 x 8 (256 x 8) vôùi keát noái nhö hình 1-5
GV: Nguyễn Trọng Hải
Trang 118
Bài Giảng Kỹ Thuật Số
Chương 4
256 x 8 ROM A0 A1 A2 A3 A4 A5 A6 A7
Y (Số bị nhân) X (Số nhân)
D0 D1 D2 D3 D4 D5 D6 D7
Tích số
Noäi dung ghi ROM ôû treân nhö sau (daïng file vaên baûn hex)
Ñòa chæ
00: 10: 20: 30: 40: 50: 60: 70: 80: 90: A0: B0: C0: D0: E0: F0:
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
00 02 04 06 08 0A 0C 0E 10 12 14 16 18 1A 1C 1E
00 03 06 09 0C 0F 12 15 18 1B 1E 21 24 27 2A 2D
00 04 08 0C 10 14 18 1C 20 24 28 2C 30 34 38 3C
00 05 0A 0F 14 19 1E 23 28 2D 32 37 3C 41 46 4B
… … … … … … … … … … … … … … … …
Tích soá cuûa 1 x 5
4.9.2. Cấu trúc nội của ROM Cô cheá söû duïng ROM ñeå löu tröõ thì thay ñoåi öùng vôùi caùc coâng ngheä cuûa ROM khaùc nhau. Trong phaàn lôùn caùc ROM, söï xuaát hieän hoaëc vaéng maët cuûa moät diode hay transistor seõ phaân bieät giöõa 0 vaø 1 Cấu trúc với giải mã 1 chiều
GV: Nguyễn Trọng Hải
Trang 119
Bài Giảng Kỹ Thuật Số
Chương 4
Sô ñoà ROM 8x 4 vôùi caáu truùc giaûi maõ 1 chieàu (duøng 1 boä giaûi maõ TTL vaø caùc diode). HI
A0 A1 A2
A B C
HI
G1 G2A G2B
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
0
D0 D1 D2 D3
Moãi ñöôøng ra boä giaûi maõ ñöôïc goïi laø ñöôøng töø (word line) bôûi vì noù choïn moät haøng hoaëc moät töø cuûa baûng chöùa trong ROM Moãi ñöôøng thaúng ñöùng trong hình ñöôïc goïi laø ñöôøng bit (bit line) bôûi vì noù töông öùng vôùi moät bit ra cuûa ROM Nhận xét: coù diode töông öùng möùc 0, khoâng coù diode töông öùng möùc 1 Caùc MOS ROM thöôøng duøng transistor thay vì laø diode ôû moãi vò trí maø bit seõ ñöôïc löu tröõ. Cấu trúc với giải mã 2 chiều Neáu xaây döïng moät ROM 128x1 duøng caáu truùc ôû phaàn tröôùc phaûi söû duïng moät boä giaûi maõ 7 sang 128, nghóa laø phaûi söû duïng ñeán moät löôïng lôùn 128 caùc coång NAND 7 ngoõ vaøo, neáu thieát keá cho ROM vôùi haøng trieäu bits hoaëc nhieàu hôn seõ khoâng coù boä giaûi maõ 20 sang 1048576. Thay vaøo ñoù ngöôøi ta seõ söû duïng caáu truùc khaùc ñöôïc goïi laø giaûi maõ hai chieàu (two-dimentional decoding)
GV: Nguyễn Trọng Hải
Trang 120
Bài Giảng Kỹ Thuật Số
Chương 4
Ví dụ, ROM 128 x 1 HI
A4 A5 A6
A B C
HI
G1 G2A G2B
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
0
0 1 2 3 4 5 6 7 8 9 101112131415 G2 S0 S1 S2 S3 D0
0
A0 A1 A2 A3
D0
3 bit ñòa chæ cao A6A5A4 seõ choïn haøng, moãi haøng chöùa 16 bit baét ñaàu taïi ñòa chæ A6A5A40000. Khi ñaët ñòa chæ cho ROM, 16bit ôû haøng ñöôïc choïn ñöa vaøo boä MUX vaø 4 bit ñòa chæ thaáp seõ choïn bit data mong muoán. Ngoaøi vieäc giaûm tính phöùc taïp vieäc giaûi maõ, giaûi maõ 2 chieàu coù moät thuaän lôïi khaùc laø ROM coù moät kích thöôùc vaät lyù gaàn vuoâng, ñieàu naøy quan troïng cho vieäc cheá taïo vaø ñoùng goùi IC Với ROM coù nhieàu ngoõ ra döõ lieäu, caùc daõy löu tröõ töông öùng vôùi moãi ngoõ ra döõ lieäu coù theå ñöôïc laøm heïp hôn ñeå ñaït ñöôïc boá trí chip gaàn vôùi hình vuoâng hôn. Ví dụ, Moät boá trí cuûa ROM 32K x 8 A6 A7 A8 A9 A10 A11 A12 A13 A14 A0 A1 A2 A3 A4 A5
9 to 512 decoder
512 x 64 512 x 64 512 x 64 512 x 64 512 x 64 512 x 64 512 x 64 512 x 64 array array array array array array array array
64 to 1 64 to 1 64 to 1 64 to 1 64 to 1 64 to 1 64 to 1 64 to 1 MUX MUX MUX MUX MUX MUX MUX MUX
GV: Nguyễn Trọng Hải
Trang 121
Bài Giảng Kỹ Thuật Số
Chương 4
4.9.3. Các kiểu ROM thương mại Baûng caùc kieåu ROM thöông maïi Kieåu Coâng ngheä Chu kyø ñoïc Mask ROM NMOS, CMOS 25 – 500ns Mask ROM Bipolar <100ns
Chu kyø ghi 4 tuaàn 4 tuaàn
PROM
Bipolar
<100ns
5 phuùt
EPROM EEPROM
NMOS, CMOS NMOS
25-500ns 50-500ns
5 phuùt 10ms/bytes
Chuù thích Ghi 1 laàn, coâng suaát thaáp Ghi 1 laàn, coâng suaát cao, maät ñoä thaáp Ghi 1 laàn coâng suaát cao, khoâng coù maët naï Duøng laïi ñöôïc, coâng suaát thaáp Giôùi haïn 10000 laàn ghi/vò trí
Caùc ROM thoâng duïng nhaát laø caùc EPROM: 2764, 27128, 27256, vaø 27512 8K x 8 10 9 8 7 6 5 4 3 25 24 21 23 2 20 22 27 1
A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12
16K x 8 O0 O1 O2 O3 O4 O5 O6 O7
CE OE PGM VPP
10 9 8 7 6 5 4 3 25 24 21 23 2 26 20 22 27 1
2764
Chuù yù:
11 12 13 15 16 17 18 19
A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13
O0 O1 O2 O3 O4 O5 O6 O7
CE OE PGM VPP
32K x 8 11 12 13 15 16 17 18 19
10 9 8 7 6 5 4 3 25 24 21 23 2 26 27 20 22 1
27128
A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14
O0 O1 O2 O3 O4 O5 O6 O7
11 12 13 15 16 17 18 19
CE OE VPP 27256
chaân VCC phaûi noái vôùi +5V chaân VIH phaûi noái vôùi tín hieäu logic HIGH hôïp leä chaân VPP duøng ñeå ñöa vaøo ñieän aùp laäp trình
4.9.4. Các ngõ vào điều khiển và định thì ROM Caùc ngoõ ra cuûa ROM thöôøng phaûi ñöôïc noái vaøo moät BUS 3 traïng thaùi, ôû ñoù caùc thieát bò khaùc coù theå laùi BUS ôû caùc thôøi ñieåm khaùc nhau. Do ñoù, phaàn lôùn caùc chip ROM thöông maïi coù ngoõ ra döõ lieäu 3 traïng thaùi vaø moät ngoõ vaøo Output Enable (OE: cho pheùp xuaát) ñeå cho pheùp caùc ngoõ ra Nhieàu öùng duïng ROM ñaëc bieät laø öùng duïng löu tröõ chöông trình seõ coù nhieàu ROM ñöôïc noái chung vaøo 1 BUS, moãi laàn chæ coù 1 ROM laùi BUS. Phaàn lôùn caùc ROM coù ngoõ vaøo chip select (CS: choïn chip) ñeå laøm ñôn giaûn vieäc thieát keá caùc heä thoáng. Ngoaøi OE coøn caàn phaûi coù CS ñeå cho pheùp ngoõ ra 3 traïng thaùi Tuy nhieân trong nhieàu ROM, CS cuõng laøm vieäc nhö ngoõ vaøo caét nguoàn caáp ñieän (power down input), CS ôû möùc khoâng tích cöïc thì khoâng caáp nguoàn cho caùc decoder noäi, caùc driver vaø caùc MUX cuûa ROM. ÔÛ cheá ñoä chôø naøy (standby mode) 1 ROM tieâu thuï ít hôn 10% coâng suaát so vôùi cheá ñoä hoaït ñoäng (active mode).
GV: Nguyễn Trọng Hải
Trang 122
Bài Giảng Kỹ Thuật Số
Chương 4
Hình sau chæ caùc ngoõ vaøo CS vaø OE ñöôïc söû duïng nhö theá naøo ôû beân trong moät ROM tieâu bieåu A0 A1
row decoder
Storage Array Power on
Power on
Am-1
Power on
Am Am+1
colum MUX
An-1 CS OE
4.9.5. Thiết kế hệ tuần tự dùng ROM Coù theå thieát keá deã daøng moät heä tuaàn töï duøng ROM keát hôïp vôùi caùc FF. Moâ hình toång quaùt cuûa heä tuaàn töï duøng ROM vaø caùc D-FF coù xung nhòp X1 X2
Z1 Z2 Zn
ROM Q1+
Xm Q1 Q2 Qk
Q+ 2
Qk+
D1 CK D2 CK
Dk CK
Q1
Q2
Qk
Clock Phaàn toå hôïp cuûa heä tuaàn töï coù theå duøng ROM ñeå thöïc hieän caùc haøm ra (Z1, Z2, …, Zn) vaø caùc haøm traïng thaùi keá (Q1+, Q2+, …, Qk+). Traïng thaùi cuûa heä ñöôïc chöùa trong moät thanh ghi (taïo baèng caùc D-FF) vaø ñöa hoài tieáp veà ngoõ vaøo cuûa ROM.
GV: Nguyễn Trọng Hải
Trang 123
Bài Giảng Kỹ Thuật Số
Chương 4
Nhö vaäy heä tuaàn töï vôùi m input, n output vaø k bieán traïng thaùi coù theå ñöôïc caøi ñaët baèng k D-FF vaø ROM vôùi (m+k) ngoõ vaøo (nghóa laø 2m+k töø word) vaø (n+k) output Thöông duøng D FF hôn JK FF vì söû duïng caùc FF vôùi 2 ngoõ vaøo seõ caàn phaûi taêng soá ngoõ ra ôû ROM. Ví dụ, Thieát keá maïch chuyeån ñoåi maõ BCD sang maõ quaù 3, ngoõ vaøo vaø ra laø noái tieáp vôùi LSB ñi tröôùc input (BCD) X t2 t1 t0 t3 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1
Output (excess – 3) Y t3 t2 t1 t0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0
Baûng treân lieät keâ caùc input vaø output mong muoán taïi caùc thôøi ñieåm t0, t1, t2 vaø t3 Tröôùc heát thaønh laäp baûng traïng thaùi, sau ñoù ruùt goïn baûng baèng caùch so caùc haøng gioáng nhau thì gom laïi. Khi so caùc haøng coù chöùa daáu gaïch ngang (ñaây laø tröôøng hôïp “don’t care” thì daáu gaïch ngang seõ khôùp vôùi baát cöù traïng thaùi naøo hoaëc baát cöù giaù trò ra naøo. Baèng caùch so khôùp caùc haøng theo caùch naøy, ta coù H ≡ I ≡ J ≡ K ≡ L vaø M≡ N ≡ P, sau khi khöû I, J, K, L N vaø P thaáy raèng E ≡ F ≡ G vaø baûng ñöôïc thu goïn thaønh 7 haøng sau Thời gian
Chuỗi vào nhận được
t0 t1
reset 0 1 00 01 10 11 000 001 010 011 100 101 110 111
t2
t3
GV: Nguyễn Trọng Hải
Trạng thái hiện tại A B C D E F G H I J K L M N P
Trang 124
Trạng thái kế X = 0 X=1 B C D F E G H L I M J N K P A A A A A A A A A A -
Giá trị ra hiện tại (Z) X=0 X=1 1 0 1 0 0 1 0 1 1 0 1 0 1 0 0 1 0 1 0 0 0 1 1 1 -
Bài Giảng Kỹ Thuật Số
Chương 4
Baûng traïng thaùi ñöôïc ruùt goïn cuûa boä chuyeån ñoåi maõ Thời gian
Trạng thái hiện tại A B C D E H M
t0 t1 t2 t3
Trạng thái kế X = 0 X=1 B C D F E G H H H M A A A -
Giá trị ra hiện tại (Z) X=0 X=1 1 0 1 0 0 1 0 1 1 0 0 1 1 -
Coù theå duøng moät caùch khaùc ñeå suy ra baûng treân baèng caùch baét ñaàu baèng giaûn ñoà traïng thaùi. Giaûn ñoà traïng thaùi coù daïng hình caây. Moãi ñöôøng baét ñaàu ôû traïng thaùi reset bieåu dieãn moät trong 10 chuoãi vaøo coù theå coù
t0
A
0/1
1/0
Reset
B
t1
C 1/0
0/1
D t2
F 1/1
0/0
H t3
0/0
L 1/1
0/0
E
0/1
1/0
0/1
J
N
I
0/0
1/1
0/0
0/1
0/0
G 1/0
M 1/1
0/1
0/1
1/0
P
K 0/0
0/1
Baûng gaùn traïng thaùi vaø baûng chuyeån traïng thaùi Thôøi gian t0 t1 t2 t3
Traïng thaùi hieän taïi A B C D E H M
GV: Nguyễn Trọng Hải
Q 1Q 2Q 3 000 010 011 101 100 111 110
Trang 125
Q1+Q2+Q3+ X=0 X=1 010 011 101 100 100 100 111 111 111 110 000 000 000 ---
Z 0 1 1 0 0 1 0 1
1 0 0 1 1 0 1 ---
Bài Giảng Kỹ Thuật Số
Chương 4
Caøi ñaët boä chuyeån ñoåi maõ naøy duøng ROM vaø caùc D-FF. Vì coù 7 traïng thaùi neân caàn 3 DFF. Nhö vaäy caàn ROM coù 4 input (24 word) vaø 4 output . Duøng gaùn nhò phaân tröïc tieáp, xaây döïng baûng chuyeån traïng thaùi cho traïng thaùi keá cuûa caùc D-FF nhö laø haøm cuûa traïng thaùi hieän taïi vaø input. Vì ñang söû duïng caùc D FF, D1 = Q1+, D2=Q2+, D3=Q3+. baûng chaân trò cho ROM xaây döïng ñöôïc deã daøng töø baûng chuyeån traïng thaùi. Nhö vaäy caùc output cuûa ROM (Z, D1, D2, D3) laø caùc haøm cuûa caùc input cuûa ROM (X, Q1, Q2, Q3) (a) Baûng traïng thaùi T. thaùi h.taïi A B C D E H M
T. thaùi keá X=0 B D E H H A A
X=1 C E E H M A ---
(b) baûng chuyeån traïng thaùi
G.trò ra h.taïi Z X=0 1 1 0 0 1 0 1
X=1 0 0 1 1 0 1 ---
Q1+Q2+Q3+
Q 1Q 2Q 3 A B C D E H M
000 001 010 011 100 101 110
X=0 001 011 100 101 101 000 000
X=1 010 100 100 101 110 000 ---
Baûng chaân trò cho ROM
X
Q1
Q2
Q3
Z
D1 (Q1+)
D2 (Q2+)
D3 (Q3+)
0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
1 1 0 0 1 0 1 x 0 0 1 1 0 1 x x
0 0 1 1 1 0 0 x 0 1 1 1 1 0 x x
0 1 0 0 0 0 0 x 1 0 0 0 1 0 x x
1 1 0 1 1 0 0 x 0 0 0 1 0 0 x x
GV: Nguyễn Trọng Hải
Trang 126
Z X=0 1 1 0 0 1 0 1
X=1 0 0 1 1 0 1 ---
Bài Giảng Kỹ Thuật Số
Chương 4
Caøi ñaët maïng tuaàn töï duøng ROM X1
Z
ROM 16 words x 4 bit
Q1+
D1 CK
Q+ 2
Q1 Q2
D2 CK
Q+ 3
Q3
Dk CK
Q1 Q2
Q3
Clock 4.10. PLD tổ hợp (Combinational PLD) 5.3.1. Dãy logic lập trình được (PLA) PLA thöïc hieän cuøng chöùc naêng cô baûn nhö ROM. Moät PLA vôùi n input vaø m output coù theå caøi ñaët m haøm cuûa n bieán. Toå chöùc noäi cuûa PLA thì khaùc vôùi toå chöùc noät cuûa ROM Caáu truùc PLA (PLA nxm vôùi p soá haïng tích) n input
Dãy OR
Dãy AND
p đường word (số hạng tích) Ví dụ, Toå chöùc noäi cuûa PLA 4x3 vôùi 6 soá haïng tích a
b
c
m đường ra
d Dãy OR
a'bd abd ab'c' b'c c bc Dãy AND
GV: Nguyễn Trọng Hải
Trang 127
Các đường Word
F1 F2 F3 Output
Bài Giảng Kỹ Thuật Số
Chương 4
Vôùi kyù hieäu a' b d
a' b d
a'bd
a'bd c bc
a'bd
ab'c'
c a'bd ab'c' bc F3
F3
Baûng PLA cho PLA ôû treân a 0 1 1 -
b 1 1 0 0 1
c 0 1 1 1
d 1 1 -
F1 1 1 1 1 0 0
F2 1 0 0 0 1 0
F3 0 1 1 0 0 1
Moãi haøng trong baûng bieåu dieån moät soá haïng tích toång quaùt. Có hai loại PLA: •
PLA laäp trình maët naï (Mask programmable): ñöôïc laäp trình luùc cheá taïo (töông töï PROM)
•
PLA laäp trình tröôøng (field programmable) coù caùc noái keát caàu chì (fusible link) coù theå laøm ñöùt ñeå löu tröõ caùc maãu trong caùc daõy AND vaø OR.
Chú ý. Khi soá bieán vaøo nhoû, thì toång quaùt laø ROM kinh teá hôn duøng PLA. Tuy nhieân khi soá bieán vaøo lôùn, PLA thöôøng cho giaûi phaùp kinh teá hôn ROM 5.3.2. Logic dãy lập trình được PAL (Programmable Array Logic) PAL laø tröôøng hôïp ñaëc bieät cuûa PLA, trong ñoù caùc daõy AND laäp trình ñöôïc vaø daõy OR laø coá ñònh. Caáu truùc cô baûn cuûa PAL thì gioáng nhö PLA Moät ñoaïn PAL
GV: Nguyễn Trọng Hải
Trang 128
Bài Giảng Kỹ Thuật Số
Chương 4
Vì chæ coù daõy AND laø laäp trình ñöôïc, do ñoù PAL kinh teá hôn PLA. Caùc nhaø thieát keá logic thöôøng söû duïng caùc PAL ñeå thay theá caùc coång logic khi phaûi caøi ñaët nhieàu haøm Phaàn lôùn caùc nhaø saûn xuaát PAL chæ ra thieát keá noäi cuûa PAL ôû kyù hieäu cuûa noù Ví dụ PAL
16 L 8 B – 4
`soá input
tieâu taùn coâng suaát 1/4w
Caáu truùc ra
toác ñoä
Soá output Vôùi caáu truùc ra H = High ngoõ ra taùc ñoäng möùc cao L = Low ngoõ ra taùc ñoäng möùc thaáp C = Complement ngoõ ra coù caû hai ñöôøng taùc ñoäng möùc cao vaø thaáp Toác ñoä: khoaûng traéng – toác ñoä chuaån A= toác ñoä cao B=toác ñoä raát cao D=toác ñoä cöïc cao Tieâu taùn coâng suaát blank = full -2 = ½ -4 = ¼ Ví dụ, kyù hieäu logic truyeàn thoáng cho PAL 16L8 PAL16L8 1 2 3 4 5 6 7 8 9 11
I1 I2 I3 I4 I5 I6 I7 I8 I9 I10
O1 O2 O3 O4 O5 O6 O7 O8
19 18 17 16 15 14 13 12
chaân 10, 20 cho nguoàn vaø ñaát Xem theâm sô ñoà logic cuûa PAL 14L4 vaø PAL 1246 ôû caùc trang 240, 241 trong Fundamentals of logic design cuûa Roth
GV: Nguyễn Trọng Hải
Trang 129
Bài Giảng Kỹ Thuật Số
Chương 4
Khi thiết kế với PAL phaûi ñôn giaûn hoùa caùc phöông trình logic vaø coá ñöa chuùng khôùp vaøo moät (hoaëc nhieàu) caùc PAL. Khoâng gioáng nhö caùc PLA (toång quaùt hôn) caùc soá haïng AND khoâng theå chia seû cho 2 hay nhieàu coång OR, vôùi moät kieåu PAL cho tröôùc, soá soá haïng AND ñöa vaøo moãi coång OR laø coá ñònh vaø bò giôùi haïn. Neáu soá soá haïng AND trong haøm ñöôïc ñôn giaûn laø quaù lôùn thì ta coù theå choïn PAL coù nhieàu ngoõ vaøo vaø ít output hôn Ví dụ, duøng PAL thieát keá maïch ñoåi moät soá nhò phaân 4 bit sang soá HEX vaø xuaát maõ ASCII 7 bit cho soá hex W 0 0 . . 1 1 . . 1
Input X Y 0 0 0 0
Z 0 1
số hex 0 1
A6 0 0
mã ASCII cho số mã hex A5 A4 A3 A2 A1 A0 1 1 0 0 0 0 1 1 0 0 0 1
0 0
0 1
1 0
9 A
0 1
1 0
1 0
1 0
0 0
0 0
1 1
1
1
1
F
1
0
0
0
1
1
0
W X Y Z
A6 PAL
B
A5 A4 A3 A2 A1 A0
Chú ý: Vì A5 = A4 vaø A6 = A 4 neân chæ caàn duøng PAL taïo ra 5 haøm cuûa 4 bieán Ñeå vieát ñöôïc baûng PAL phaûi ruùt goïn caùc haøm ra vaø keát quaû nhö sau A 4 =W+X.Y
A 4 =WX+WY
A 3 =W X.Y
A 3 =W+X+Y
A 2 =WX+XZ+XY
A 2 =X+W Y.Z
A1=WX.Y.Z+YZ+ WY
A 0 =WZ+X.YZ+WXZ+WYZ
Sau ñoù tìm caùc PAL thích hôïp ñeå caøi ñaët caùc haøm treân. Choïn ñöôïc PAL12H6, coù moät output khoâng duøng. Coù theå vieát laïi chöông trình cho A2 nhö sau
GV: Nguyễn Trọng Hải
Trang 130
Bài Giảng Kỹ Thuật Số
Chương 4
A 2 =WX+(XZ+XY)=WX+B vôùi B=XZ+XY
roài coù theå söû duïng ngoõ ra theâm ñeå taïo ra B vaø noái B vaøo moät trong caùc ngoõ vaøo PAL nhö ôû hình treân. Vôùi caùch naøy ta theå taïo ra 5 haøm vôùi moät PAL Xem theâm caùc ví duï trong chöông 8 cuûa Digital desgn principle and practices cuûa John F. Wakerly 5.3.3. Thiết kế hệ tuần tự dùng PLA Coù theå caøi ñaët caùc heä tuaàn töï duøng PLA vaø caùc FF theo caùch töông töï nhö duøng ROM vaø caùc FF. Tuy nhieân trong tröôøng hôïp caùc PLA, söï gaùn traïng thaùi laø quan troïng vì vieäc söû duïng caùc pheùp gaùn toát coù theå giaûm ñöôïc soá caùc soá haïng tích caàn coù vaø töø ñoù giaûm ñöôïc kích thöôc cuûa PLA Ví dụ, caøi ñaët baûng traïng thaùi cuûa VD thieát keá duøng ROM nhöng baây giôø duøng 1 PLA 3 DFF. T. thaùi h.taïi T. thaùi keá G.trò ra h.taïi Z X=0 X=1 X=0 X=1 A B C 1 0 B D E 1 0 C E E 0 1 D H H 0 1 E H M 1 0 H A A 0 1 M A --1 --Caáu hình maïch thì gioáng nhö duøng ROM ngoaïi tröø thay theá ROM baèng moät PLA vôùi kích thöôùng thích hôïp. Söû duïng pheùp gaùn nhò phaân tröïc tieáp daãn ñeán baûng chaân trò sau
X 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
Q1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
GV: Nguyễn Trọng Hải
Q2 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
Q3 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Z 1 1 0 0 1 0 1 x 0 0 1 1 0 1 x x
D1 (Q1+) 0 0 1 1 1 0 0 x 0 1 1 1 1 0 x x
Trang 131
D2 (Q2+) 0 1 0 0 0 0 0 x 1 0 0 0 1 0 x x
D3 (Q3+) 1 1 0 1 1 0 0 x 0 0 0 1 0 0 x x
Bài Giảng Kỹ Thuật Số
Chương 4
Coù theå chöùa baûng naøy trong moät PLA 4 input, 13 soá haïng tích vaø 4 output nhöng thaáy raèng noù seõ khoâng thuaän lôïi hôn vieäc duøng ROM ñaõ laøm ôû phaàn tröôùc. Neáu söû duïng pheùp gaùn traïng thaùi, phöông trình ra vaø phöông trình vaøo caùc D-FF
D1 = Q1 Q 2 + Q1Q 2
D2 = Q2 D 3 = Q 2 .Q 3 + XQ 1 Q 2 + XQ 1 .Q 2 + X.Q 1 .Q 2 Q 3 Z = XQ 3 + XQ 3
Baûng PLA töông öùng vôùi caùc phöông trình naøy nhö sau.
X 0 1 0 0 1
Q1 1 0 1 0 0 -
Q2 0 1 0 0 0 0 1 -
Q3 1 0 0 1
Z 0 0 0 0 0 0 0 1 1
D1 (Q1+) 1 1 0 0 0 0 0 0 0
D2 (Q2+) 0 0 1 0 0 0 0 0 0
D3 (Q3+) 0 0 0 1 1 1 1 0 0
Ñeå caøi ñaët baûng naøy caàn 1 PLA coù 4 input, 9 soá haïng tích vaø 4 output. 5.3.4. Thiết kế hệ tuần tự dùng PAL Duøng caùc PAL toå hôïp, caùch thieát keá töông töï nhö vôùi PLA nhöng phaûi chuù yù ruùt goïn haøm ra 4.11. PLD tuần tự (sequential PLD = PLA(PAL)+các FF) Phaàn lôùn caùc thieát keá soá caàn caùc FF, caùc PLD coù chöùa caùc FF nhö vaäy thöôøng ñöôïc goïi laø PLD coù thanh ghi (registered PLD) hay PLD tuaàn töï. Moät ñoaïn cuûa PAL tuaàn töï.
A A
B
B Q
Q
clock
EN
D Q
Q
Q
Bộ đệm ra đảo 3 t.thái
A B
D-FF ñöôïc laùi töø moät coång OR. Ngoõ ra FF ñöôïc ñöa hoài tieáp veà daõy AND laäp trình ñöôïc qua moät boä ñeäm. Nhö vaäy caùc ngoõ vaøo coång AND coù theå ñöôïc noái vaøo A, A ,…,Q hay Q . Caùc phöông trình traïng thaùi keá
GV: Nguyễn Trọng Hải
Trang 132
Bài Giảng Kỹ Thuật Số
Chương 4
Q + = D = ABQ + A BQ Ngoõ ra FF ñöôïc noái vaøo boä ñeäm ñaûo 3 traïng thaùi, cho pheùp khi EN=1 Ñaëc tính cuûa moät soá PAL tuaàn töï thoâng duïng. Moãi PAL chöùa 1 thanh ghi coù töø 4 ñeán 10 D-FF. 6 PAL ñaàu trong baûng töông töï vôùi 16R4 (coù 1 daõy coång AND vôùi 16 input vaø 4 D-FF) Kieåu 16R4 16R6 16R8 20R4 20R6 20R8 20X4 20X8 20X10
Soá ngoõ vaøo (tröïc tieáp+hoài tieáp + caùc IO) 8+4+4 8+6+2 8+8+0 12+4+4 12+6+2 12+8+0 10+4+6 10+8+2 10+10+0
Soá ngoõ ra (FF + IO) 4+4 6+2 8+0 4+4 6+2 8+0 4+6 8+2 10+0
Soá caùc coång AND treân coång OR 8 8 8 8 8 8 3/2* 3/2* -/2
Ghi chuù: * 3 vôùi caùc ngoõ ra toå hôïp, 2 cho caùc ngoõ vaøo D FF 3 PAL cuoái trong baûng chæ caùc “XOR PAL”. XOR PAL coù moät coång XOR laùi moãi ngoõ vaøo D FF nhö sau clock
EN D Q Q
Q
Trong PAL naøy, moãi coång XOR ñöôïc laùi baèng hai coång OR, vaø moãi coång OR ñöôïc laùi baèng 2 coång AND, caùc ngoõ ra FF coù theå ñöôïc hoài tieáp veà caùc coång AND nhö trong caùc PAL coù thanh ghi khaùc. Daïng toång quaùt cuûa phöông trình traïng thaùi keá cho moãi FF trong XOR PAL laø
Q + = D = (P1 + P2 ) ⊕ (P3 + P4 ) Vôùi P1 P2 P3 P4 laø caùc soá haïng tích Ñeå minh hoïa vieäc söû duïng caùc XOR PAL, thieát keá moät boä ñeám nhò phaân 4 bit (ñeám leân, ñeám xuoáng) vôùi 3 ngoõ vaøo ñieàu khieån U(up), D(down) vaø L (load). Khi U=1 boä ñeám taêng theâm 1, khi D = 1 boä ñeám giaûm 1, vaø khi L =1, boä ñeám naïp döõ lieäu song song töø caùc ngoõ vaøo döõ lieäu cuûa noù (DI) Baûng caùc traïng thaùi keá cuûa boä ñeám cho U=1 vaø cho D=1, giaû söû raèng U=D=1 khoâng xaûy ra
GV: Nguyễn Trọng Hải
Trang 133
Bài Giảng Kỹ Thuật Số
Q3 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
Q2 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
Q1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
Chương 4
Q0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Q3 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0
U=1 Q2 Q 1+ 0 0 1 0 1 0 0 1 0 1 1 1 1 1 0 0 0 0 1 0 1 0 0 1 0 1 1 1 1 1 0 0
+
+
Q0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
+
Q3 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1
+
D=1 Q2 Q 1+ 1 1 0 0 0 0 1 0 1 0 0 1 0 1 1 1 1 1 0 0 0 0 1 0 1 0 0 1 0 1 1 1 +
Q 0+ 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
Tröôùc heát, suy ra caùc phöông trình traïng thaùi keá cho boä ñeám leân. Trong moïi haøng Q0 khaùc Q0+ vì vaäy FF Q0 phaûi thay ñoåi traïng thaùi ôû moïi xung nhòp khi U=1 vì leõ ñoù Q 0+ = Q 0 ⊕ U Nhaän thaáy Q1 thay ñoåi (Q1 ≠ Q1+) chæ neáu Q0 =1. vì theá Q1+ = Q1 ⊕ UQ0 Q2 thay ñoåi trong caùc haøng 3, 7, 11 vaø 15 chæ khi Q1 = Q0 = 1 vì theá Q2+ = Q2 ⊕ UQ1Q0 Q3 thay ñoåi traïng thaùi chæ trong nhöõng haøng maø Q2 =Q1=Q0=1, vì theá Q3+= Q3 ⊕ UQ2Q1Q0 Töông töï, baèng caùch quan saùt baûng, coù theå suy ra caùc phöông trình cho boä ñeám xuoáng khi D=1 Q 0+ = Q 0 ⊕ D Q 1+ = Q 1 ⊕ D Q 0 Q2+ = Q2 ⊕ D Q 0 .Q 1 Q3+ = Q3 ⊕ D Q 0 .Q 1 .Q 2 Toång quaùt ñeå söû duïng XOR PAL, phaûi bieåu dieãn traïng thaùi keá cuûa Qi ôû daïng Qi+ = Qi ⊕ Fi Caùc Fi ñöôïc tìm baèng phöông phaùp quan saùt hoaëc ruùt goïn baèng baûng Karnaugh Tieáp tuïc thieát keá boä ñeám leân xuoáng vôùi ngoõ vaøo ñieàu khieån U, D, L.
GV: Nguyễn Trọng Hải
Trang 134
Bài Giảng Kỹ Thuật Số
Chương 4
Tröôùc heát xeùt tröôøng hôïp khi U=D=0. Khi L=1, boä ñeám ñöôïc naïp song song töø caùc ngoõ vaøo döõ lieäu cuûa noù (DI), vaø khi L=0 traïng thaùi boä ñeám giöõ khoâng ñoåi. Döïa vaøo tính chaát haøm Boolean f(x1, x2,…, xn) = x1f(1, x2, …,xn) + x 1 f(0,x2,…,xn) Nhö vaäy phöông trình traïng thaùi keá cho moãi FF laø Qi+ = LDi +L’DI Keát hôïp caùc phöông trình khi xeùt caû U, D, L. Giaû söû L=1 aûnh höôûng leân caû U=1 hay D=1 vaø U=D=1 khoâng bao giôø xaûy ra. Neáu baét ñaàu baèng phöông trình Q 0+ = Q 0 ⊕ U thay Q0+ baèng LD0+L’Q0 vaø thay U baèng U+D, ñöôïc Q0+ = (LD0+L’Q0)⊕ (U+D). Phöông trình naøy cho keát quaû ñuùng khi L=0 vaø U hoaëc D laø 1. Ñeå ñaûm baûo L=1 aûnh höôûng öu tieân hôn ñeám leân ñeám xuoáng, ta phaûi nhaân U vaø D cho L’, caùc phöông trình sau coøn laïi cuõng laøm töông töï, ta coù Q0+ = (LD0+L’Q0) ⊕ (UL’+DL’) Q1+ = (LD1+L’Q1) ⊕ (UL’Q0 + DL’Q’0) Q2+ = (LD2+L’Q2) ⊕ (UL’Q0Q1 + DL’Q’0Q’1 ) Q3+ = (LD3+L’Q3) ⊕ (UL’Q0Q1Q2 + DL’Q’0Q’1Q’2) Khi L=D=0, caùc phöông trình naøy ruùt goïn tröôøng hôïp chæ ñeám leân, vaø khi L=U=0 caùc phöông trình naøy ruùt goïn veà tröôøng hôïp ñeám xuoáng Caùc daïng phöông trình toång hôïp ôû treân thích hôïp ñeå caøi ñaët baèng XOR PAL
4.12. Các PLD tuần tự khác Khi coâng ngheä IC ñaõ ñöôïc caûi tieán, nhieàu loaïi PLD khaùc ra ñôøi, caùc PLD môùi döïa treân nhöõng môû roäng cuûa khaùi nieäm PAL hoaëc döïa treân caùc daõy coång 22V10 laø 1 PLD raát linh hoaït maø coù theå duøng noù ñeå caøi ñaët caùc maïng toå hôïp vaø tuaàn töï. 22V10 coù 12 chaân daønh rieâng cho ngoõ vaøo vaø 10 chaân coù theå laäp trình hoaëc laøm ngoõ vaøo hoaëc ngoõ ra. Chöùa 10 D-FF, 10 coång OR, soá coång AND ñöa vaøo moãi coång OR töø 8 ñeán 16. Moãi coång OR laùi moät logic macrocell, moãi macrocell chöùa 1 D-FF, caùc FF coù cuøng clock, moät ngoõ vaøo reset baát ñoàng boä chung (AR= Asynchronuos Reset) vaø moät ngoõ vaøo ñaët tröôùc ñoàng boä chung (SP= synchronuos Preset)
GV: Nguyễn Trọng Hải
Trang 135
Bài Giảng Kỹ Thuật Số
Chương 4
Sô ñoà khoái cuûa 22V10
Chi tieát cuûa moät macrocell xuaát cuûa 22V10.
S1 S0 F0
VCC
S
F1
GV: Nguyễn Trọng Hải
Trang 136
VCC
Bài Giảng Kỹ Thuật Số
Chương 4
Caùc keát noái ñeán caùc chaân ra coù theå ñieàu khieån ñöôïc baèng caùch laäp trình macrocell naøy. Caùc ngoõ vaø ñieàu khieån MUX xuaát S1 S0 choïn moät trong caùc ngoõ vaøo döõ lieäu. Ví dụ, S1S0 =10 choïn ngoõ vaøo döõ lieäu 2. Khi caàu chì F1 hôû (S1 =1), FF bò boû qua vaø ngoõ ra töø coång OR. Ngoõ ra coång OR cuõng ñöôïc hoài tieáp veà ñeå coù theå duøng nhö moät ngoõ vaøo cuûa daõy coång AND Neáu F1 coøn nguyeân (S1=0), thì ngoõ ra FF ñöôïc noái vaøo chaân ngoõ ra vaø noù cuõng ñöôïc hoài tieáp veà ñeå coù theå duøng noù laøm ngoõ vaøo coång AND. Khi caàu chì Fo hôû (S0=1), ngoõ ra khoâng bò ñaûo ñeå noù taùc ñoäng möùc cao. Khi F0 coøn nguyeân (S0=0), ngoõ ra bò ñaûo neân noù taùc ñoäng möùc thaáp. Chaân ngoõ ra ñöôïc laùi baèng boä ñeäm ñaûo 3 traïng thaùi. Khi ngoõ ra boä ñeäm ôû traïng thaùi toång trôû cao, coång OR vaø FF khoâng noái vôùi chaân ngoõ ra (xuaát) vaø chaân naøy coù theå duøng laøm ngoõ vaøo Ví dụ, Duøng 22V10 thieát keá boä ñieàu khieån ñeøn giao thoâng cho giao loä cuûa ñöôøng A vaø ñöôøng B. Moãi ñöôøng coù caùc caûm bieán ñeå phaùt hieän söï xuaát hieän xe coä ñeán gaàn hoaëc döøng ôû giao loä. Sa = 1 nghóa laø xe ñang tieán ñeán ñöôøng A Sb = 1 nghóa laø xe ñang tieán ñeán ñöôøng B A laø ñöôøng chính vaø seõ coù ñeøn xanh cho ñeán khi coù moät xe chaïy ñeán B, roài ñeøn thay ñoåi vaø B coù ñeøn xanh. Vöøa heát 50giaây caùc ñeøn seõ thay ñoåi veà nhö cuõ tröø khi coù moät xe treân ñöôøng B vaø khoâng coù xe ôû A, tröôøng hôïp naøy chu kyø B ñöôïc môû roäng theâm 10s. Khi A xanh noù giöõ xanh toái thieåu 60 giaây vaø roài caùc ñeøn thay ñoåi chæ khi xe tieán ñeán B. Caùc noái keát beân ngoaøi cuûa boä ñieàu khieån
Clock
Sa Sb PAL 22V10
Ga Ya Ra
Gb Yb Rb
Giaûn ñoà traïng thaùi cho boä ñieàu khieån. Cho muïc ñích ñònh thì, maïng tuaàn töï ñöôïc laùi baèng 1 clock coù chu kyø 10giaây. Nhö vaäy söï thay ñoåi traïng thaùi coù theå xaûy ra haàu nhö ôû 10giaây. Ñeå ñôn giaûn hoùa giaûn ñoà. Ta duøng kyù hieäu sau: GaRb trong moät traïng thaùi coù nghóa laø Ga=Rb=1 vaø taát caû caùc bieán ra khaùc laø 0, Sa’Sb ôû cuøng moät cung nghóa laø Sa=0 vaø Sb=1 seõ gaây ra chuyeån traïng thaùi theo cung ñoù. Moät cung khoâng coù nhaõn haøm yù raèng chuyeån traïng thaùi seõ xaûy ra khi coù clock xaûy ra, ñoäc laäp vôùi caùc bieán vaøo. Nhö vaäy ñeøn A xanh seõ saùng trong 6 chu kyø clock vaø ñoåi traïng thaùi sang vaøng neáu coù 1 xe ñang ñôïi ôû ñöôøng B
GV: Nguyễn Trọng Hải
Trang 137
Bài Giảng Kỹ Thuật Số
S0
Chương 4
GaRb
10s
S2
10s
S1
10s
10s
GaRb
GaRb
GaRb
S3
S4
10s
GaRb
S5
Sb’
GaRb Sb S6 YaRb
S6 YaRb
(Sa+Sb’) S11
S10
S9
S8
S7
RaGb
RaGb
RaGb
RaGb
RaGb
Ga 1 1 1 1 1 1 0 0 0 0 0 0 0
Bieán ra Ra Gb 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 0
Sa’Sb Baûng traïng thaùi cuûa boä ñieàu khieån. SaSb S0 S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12
00 S1 S2 S3 S4 S5 S5 S7 S8 S9 S10 S11 S12 S0
01 S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S11 S0
10 S1 S2 S3 S4 S5 S5 S7 S8 S9 S10 S11 S12 S0
11 S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S0
Ya 0 0 0 0 0 0 1 0 0 0 0 0 0
Yb 0 0 0 0 0 0 0 0 0 0 0 0 1
Rb 1 1 1 1 1 1 1 0 0 0 0 0 0
Caøi ñaët baûng treân duøng 4 D-FF vôùi caùc ngoõ vaøo D1, D2, D3 , D4 vaø caùc ngoõ ra Q1, Q2, Q3, Q4. Baèng pheùp gaùn traïng thaùi nhò phaân tröïc tieáp, suy ra caùc phöông trình D1=Q1Q2’+Q2Q3Q4 D2=Q1’ Q2’Q3Q4 + SaQ1Q3Q4 + Sb’Q1Q3Q4’ + Q1’Q2Q4 + Q1’Q2Q3’ D3= Q3Q4’ + SbQ3’ Q4 + Sa’Q3’ Q4 + Q2’Q3’ Q4 + Sa’SbQ1Q4 D4= Sa’SbQ1Q3 + Q2’ Q4’ + Q1’ Q4’ + SaSb’Q2Q3’ Q4 13 traïng thaùi coù 4 bit maõ hoùa traïng thaùi Q3Q2Q1Q0 Ga = Q1’Q3’ + Q1’Q2’
GV: Nguyễn Trọng Hải
Ya = Q2Q3Q4’
Trang 138
Ra= Q1 + Q2Q3Q4
Bài Giảng Kỹ Thuật Số
Chương 4
Gb = Q1Q2’ + Q2Q3Q4
Yb = Q1Q2
Rb=Q1’Q2’+Q1’Q4’+Q1'Q3’
Vì taát caû phöông trình naøy coù ít hôn 8 soá haïng AND, 22V10 laø phuø hôïp. Neáu 1 soá phöông trình coù quaù nhieàu soá haïng khoâng khôùp cho 22V10 thì seõ caàn thöû caùc pheùp gaùn traïng thaùi khaùc Neáu caøi ñaët boä ñieàu khieån duøng JK FF vaø caùc coång, 4FF vaø 34 coång seõ caàn cho gaùn traïng thaùi nhò phaân tröïc tieáp. Q3Q2Q1Q0 = traïng thaùi 6 bieán vaøo SaSb Q3Q2Q1Q0 Theo tính chaát haøm Boolean: f(x1, x2, x3, …, xn) = x 1 .x 2 f(0,0, x3, …,xn) + x 1 x2f(0,1,x3,…,xn) + x1 x 2 f(1,0,x3,…,xn)+ x1x2 f(1,1,x3,…,xn) => Ga = Sa’Sb’F00 + Sa’SbF01 + SaSb’F10 + SaSbF11 Caùc FF vaø caùc coång naøy caàn khoaûng 11 IC loaïi SSI, so vôùi giaûi phaùp 22V10 thì tieát kieäm naêng löôïng vaø tin caäy hôn 4.13. Dãy cổng lập trình được (PGA) Caùc PLD coù khaû naêng duøng ñeå caøi ñaët moät heä tuaàn töï nhöng khoâng phaûi laø moät heä thoáng soá ñaày ñuû. Caùc PGA (programmable gate Array) linh ñoäng hôn vaø coù theå ñöôïc söû duïng ñeå caøi ñaët moät heä thoáng soá nhoû treân moät chip IC. Moät PGA tieâu bieåu laø moät IC chöùa moät daõy caùc logic cell ñoàng daïng vôùi caùc lieân keát noái laäp trình ñöôïc. Ngöôøi söû duïng coù theå laäp tình caùc haøm ñöôïc caøi ñaët baèng moãi logic cell vaø caùc keát noái giöõa caùc cell
Configurable logic block
khoái IO
Vuøng lieân keát noái
GV: Nguyễn Trọng Hải
Trang 139
Bài Giảng Kỹ Thuật Số
Chương 4
Ví duï, Hình treân laø moät phaàn cuûa caáu truùc Xilinx XC2064 LCA (logic cell array) goàm moät daõy noäi 64 khoái logic coù theå ñaët caáu hình ñöôïc CLB (configurable logic block), xung quanh laø moät voøng 58 khoái giaoo tieáp nhaäp xuaát. Caùc lieân keát giöõa caùc khoái naøy coù theå laäp trình ñöôïc baèng caùch chöùa döû lieäu trong caùc oâ nhôù RAM noäi. Moãi CLB chöùa moät logic toå hôïp vaø 1 D-FF vaø coù theå laäp trình ñöôïc ñeå thöïc hieän nhieàu haøm logic Caáu truùc cuûa moät CLB
* *
preset A J B
G
Khối logic tổ hợp
KC clear D
*
F
D
*
*
Y(Q)
S
CK
Q R
* clock A B C F
A
Hàm 4 biến bất kỳ
B C D
Hàm 3 biến bất kỳ
F
Hàm 3 biến bất kỳ
G
D Q
G
A B
Q
C
Lựa chọn một hàm 4 biến
D Q
Lựa chọn hai hàm 3 biến Caùc khoái hình thang trong sô ñoà bieåu dieãn caùc boä doàn keânh (MUX) coù theå laäp trình ñöôïc ñeå choïn moät trong caùc ngoõ vaøo. Ví duï: ngoõ vaøo thaáp nhaát ôû khoái logic toå hôïp coù theå ñeán töø D hay Q vaø ngoõ ra Q coù theå ñeán töø F, G hay Q. Khoái logic toå hôïp chöùa caùc teá baøo nhôù RAM vaø coù theå ñöôïc laäp trình ñeå caøi ñaët moät haøm 4
GV: Nguyễn Trọng Hải
Trang 140
Bài Giảng Kỹ Thuật Số
Chương 4
bieán baát kyø hoaëc 2 haøm 3 bieán baát kyø (hình 1-29. Ví duï coù theå ñaët F=G=f1(A, B, C, Q) hay F=f2 (A, B,…) vaø G =f3(B, C, Q). Caùc ñöôøng ñöùt neùt chæ caùc keát noái caàn ñeå ñaët caáu hình logic cell laø moät JK-FF vôùi caùc ngoõ vaøo “preset” vaø “ clear”. Logic toå hôïp coù caùc ngoõ vaøo J,K vaø Q vaø caøi ñaët traïng thaùi keá cho FF, F=Q+ = JQ’ + K’Q. Ngoaøi ra caøi ñaët G=Q’ ñeå cung caáp moät ngoõ ra buø cho FF. Caùc tín hieäu Preset vaø Clear ñöôïc daãn tröïc tieáp tôùi S (asynchronuos set) vaø R (asynchronuos reset) cuûa D-FF
GV: Nguyễn Trọng Hải
Trang 141
Bài Giảng Kỹ Thuật Số
Chương 4
Bài tập chương 4
4.1. Giả sử ban đầu Q = 0, đưa X, Y đến ngõ vào SET, RESET của 1 RS-FF dùng NAND, xác định dạng sóng Q và Q
X Y Z 4.2. Giả sử ban đầu Q= 0, đảo dạng sóng ngõ vào X, Y ở bài 4.1, sử dụng RS-FF dùng cổng NOR, xác định dạng sóng Q và Q . 4.3. Dạng sóng bài 4.1 được kết nối với mạch hình sau. Giả sử rằng ban đầu Q=0, xác định dạng sóng Q.
X Z
S
Q
R
Q
Y 4.4. Một clocked FF cụ thể có tS = 20ns và tH = 5ns. Mất bao lâu để các ngõ vào điều khiển ổn định trước khi xảy ra sự chuyển đổi xung CK. . 4.5. Một Toggle FF là 1 FF có 1 ngõ vào đơn và hoạt động sao cho trạng thái ngõ ra thay đổi mỗi khi có xung đưa đến ngõ vào. clocked SR-FF có thể được nối để hoạt động trong chế độ này (hình) . Dạng sóng đưa đến ngõ vào CLK là sóng vuông 1KH. Xác định dạng sóng ngõ ra Q, giả sử ban đầu Q = 0 1 KHz
S
Q
CLK R
Q
4.6.a. Hãy trình bày làm thế nào để J-K FF có thể hoạt động như 1 toggle FF. Đưa sóng vuông 10kHz đến ngõ vào và xác định dạng sóng ngõ ra. b.Nối ngõ ra Q của FF phần a đến ngõ vào J-K FF thứ 2 (J2=K2=1). Xác định tần số dạng sóng tại ngõ ra Q của FF thứ 2. 4.7. Xung CK được đưa đến 2 FF khác nhau: (a) J-K FF kích bằng cạnh lên; (b) JK FF kích bằng cạnh xuống. Hãy vẽ dạng sóng ngõ ra Q cho mỗi FF trên, giả sử ban đầu Q = 0.
GV: Nguyễn Trọng Hải
Trang 142
Bài Giảng Kỹ Thuật Số 1
2
Chương 4 3
4
5
6
7
8
9
10
11
Clock
J input
K input
4.8. Một D-FF được dùng để làm mạch tạo trễ sao cho thông tin xuất hiện ở ngõ ra trễ một thời gian sau khi nó xuất hiện tại ngõ vào D. a/ Xác định dạng sóng Q ở hình sau và so sánh với dạng sóng ngõ vào. Data Input
D
CK
Q
Q
Data Input
1 0
Ck
1 0
b/ Làm thế nào để có thể delay thời gian 2 clock? 4.9. Một D-FF được nối như hình sau. Giả sử ban đầu Q = 0 , xác định dạng sóng Q.
1KHz
D CK
Q
Q
4.10. Xác định dạng sóng Q cho FF ở hình sau. Giả sử ban đầu Q = 0 1
CK 0
1
J
CK
CLR 1 0
1
Pr 1 0
K
Pr
Q Q
CLR
4.11. Ban đầu ngõ vào A, B, C trong mạch điện đều ở mức LOW. Giả sử ngõ ra Y ở mức HIGH chỉ khi A, B, C ở mức HIGH trong 1 trình tự nhất định. a/ Xác định trình tự làm Y ở mức HIGH b/ Giải thích tại sao xung START là cần thiết. c/ biến đổi mạch này để dùng D-FF.
GV: Nguyễn Trọng Hải
Trang 143
Bài Giảng Kỹ Thuật Số
Chương 4
A
J
J
X
B
CLK
C
K Clear
CLK
Y
K Clear
Start 4.12. Hãy vẽ mạch logic để truyền song song dữ liệu đồng bộ từ 1 thanh ghi 3 bit sang thanh ghi khác dùng FF J- K. 4.13. làm lại bài 4.12 khi truyền song song bất đồng bộ. 4.14. Thiết kế mạch đếm lên MOD 6 dùng T-FF có xung tác động cạnh lên, Pr va` CLR tích cực mức cao 4.15. Thiết kế mạch đếm lên MOD 10 dùng D-FF có xung tác động cạnh lên, Pr va` CLR tích cực mức cao 4.16. Thực hiện mạch đếm MOD 60 từ bài 4.14 và 4.15 4.17. Hãy vẽ lưu đồ chuyển đổi trạng thái của mạch đếm xuống MOD 6 dùng xung CK tác động cạnh lên và so sánh với sơ đồ đếm xuống dùng xung CK tác động cạnh xuống. Chúng khác nhau như thế nào? 4.18. a/ Để xây dựng 1 mạch đếm nhị phân đếm từ 0 đến 1023 thì phải sử dụng bao nhiêu FF? b/ xác định tần số tại ngõ ra của FF cuối cùng của mạch đếm này khi tần số xung clock ngõ vào là 2 Mhz. c/ Số MOD của mạch đếm là bao nhiêu?. d/ Nếu ban đầu mạch đếm đếm là 0 thì sau 2060 xung số đếm được là bao nhiêu?. 4.19. Một mạch đếm có tín hiệu clock là 256 KHz , tần số ngõ ra FF cuối cùng là 2KHz a/ Hãy xác định số MOD. b/ Hãy xác định phạm vi đếm. 4.20. 1 mạch tách sóng quang được sử dụng để tạo 1 xung mỗi khi có 1 khách hàng đi vào. Các xung này được đưa đến bộ đếm 8 bit. Bộ đếm này dùng để đếm số lượng khách hàng đi vào trong cửa hàng. Sau khi cửa hàng đóng cửa, người chủ cửa hàng kiểm tra mạch đếm và thấy rằng nó chỉ một số đếm là 000010012 = 910. Anh ta biết rằng điều này không đúng vì có nhiều hơn 9 người trong cửa hàng của ông ta. Giả sử mạch đếm dang làm việc đúng. Lý do nào cho sự trái ngược này?. 4.21. Hãy vẽ lưu đồ chuyển đổi trạng thái của mạch đếm MOD 16. 4.22. Hãy xác định dạng sóng tại Q1, Q2, Q3 . 1 Q1
0 T
tp=10ms
OS
Q2 T
Q1
tp=5ms
GV: Nguyễn Trọng Hải
OS Q2
tp=20ms
Trang 144
Q3 T
OS Q3
tp=10ms
Bài Giảng Kỹ Thuật Số
Chương 4
4.23. Xét mạch sau ` 1
J
C
1
C
1
J
CLK
1
K
B
J
CLK K
A
CLK B
A
K
1Hz
X Y
Z
D
B
X
CLK
W
C
D CLK
X
PRE
PRE
Y
Y
Start pule
1 0 Ban đầu tất cả các FF trong trạng thái 1. Hoạt động của mạch bắt đầu với xung Start tức thì được đưa đến các ngõ vào PRE của FF X và Y. Hãy xác định dạng sóng tại A,B,C,X,Y,Z và W trong 20 chu kỳ xung đồng hồ. 4.24. Mạch điện sau có thể sử dụng để phát 2 tín hiệu clock không trùng khớp tại cùng 1 tần số. Các tín hiệu clock này được sử dụng trong vài hệ thống vi xử lý đòi hỏi 4 sự chuyển đổi clock khác nhau để đồng bộ các hoạt động của chúng. Vẽ dạng sóng tại CP1 và CP2 khi tần số clock ngõ vào là 1Mhz. +5V
J
Clock
Q
CP1
CLK K
Q
CP2 4.25. Moät maïch ñoàng boä coù voøng ñeám sau:
000
111
010
101
011
a). Thieát keá boä ñeám treân duøng JK FF coù xung taùc ñoäng caïnh xuoáng. b). Giaû söû traïng thaùi hieän taïi cuûa maïch laø 001 tìm traïng thaùi keá cuûa maïch caâu a. GV: Nguyễn Trọng Hải
Trang 145
Bài Giảng Kỹ Thuật Số
Chương 5
CHƯƠNG 5 CÁC HỌ VI MẠCH SỐ 5.1. TỔNG QUAN Xét về cơ bản có 2 lọai thiết bị bán dẫn là lưỡng cực và đơn cực. Dựa trên các thiết bị này, các mạch tích hợp được hình thành. Các họ mạch logic lưỡng cực Các yếu tố chính của IC lưỡng cực là điện trở, diode và BJT, hai họat động trong IC lưỡng cực là: tắt và bão hòa, các họ logic lưỡng cực: •
Mạch logic RTL
•
Mạch logic DCTL
•
Mạch logic HTL
•
Mạch logic TTL
•
Mạch logic Schottky TTL
•
Mạch logic ECL
Các họ mạch logic đơn cực Các thiết bị MOS là các thiết bị đơn cực và chỉ có các MOSFET được vận hành trong các mạch logic MOS, các mạch logic MOS là •
PMOS
•
NMOS
•
CMOS
5.2. CÁC ĐẶC TRƯNG CỦA CÁC VI MẠCH SỐ Phân lọai các IC số Lọai IC
Các cổng căn bản
Số các linh kiện
Tổ hợp quy mô nhỏ SSI
Nhỏ hơn 12
Lên đến 99
Tổ hợp quy mô trung bình MSI
12-99
100-999
Tổ hợp quy mô lớn LSI
100-999
1000-9999
Tổ hợp quy mô rất lớn VLSI
Lớn hơn 1000
Lớn hơn 10000
Các đặc trưng •
Tốc độ họat động, lệ thuộc vào thời gian trễ truyền đạt tpHL tpLH
GV: Nguyễn Trọng Hải
Trang 146
Bài Giảng Kỹ Thuật Số
Chương 5
•
Tổn hao công suất, xác định bởi tích số nguồn cung cấp Vcc và dòng Icc (giá trị trung bình của dòng Icc mức 0 và mức 1), đơn vị mW
•
Chỉ số giá trị, xác định bởi tích số tốc độ và công suất
•
Chỉ số giá trị (pJ)= thời gian trì hõan truyền đạt (ns)x công suất (mW)
•
Chỉ số giá trị càng nhỏ càng tốt
•
Hệ số tải, là số cổng có thể được vận hành bởi một cổng, hệ số tải càng cao càng thuận lợi
•
Các tham số dòng và áp o Điện áp đầu vào ở mức cao VIH (điện áp tối thiểu mà cổng có thể nhận biết mức 1) o Điện áp đầu vào ở mức thấp VIL (điện áp tối đa mà cổng có thể nhận biết mức 0) o Điện áp đầu ra ở mức cao VOH(điện áp tối thiểu tại đầu ra tương ứng mức 1) o Điện áp đầu ra ở mức thấp VOL (điện áp tối đa tại đầu ra tương ứng mức 0) o Cường độ dòng điện đầu vào mức cao IIH (dòng tối thiểu được cung cấp tương ứng với mức 1) o Cường độ dòng điện đầu vào mức thấp IIL (dòng tối đa được cung cấp tương ứng với mức 0) o Cường độ dòng điện đầu ra mức cao IOH (dòng cực đại mà ngõ ra cung cấp tương ứng với mức 1) o Cường độ dòng điện đầu ra mức thấp IOH (dòng cực tiểu mà ngõ ra cung cấp tương ứng với mức 0)
•
Nhiễu Điện áp VOH VIH
Lề nhiễu ở trạng thái 1
VIL VOH
Lề nhiễu ở trạng thái 0
0 •
Miền nhiệt độ họat động, từ 0-700C cho các ứng dụng tiêu dùng và công nghiệp, từ 550C – 1250C cho các mục đích quân sự
•
Yêu cầu về nguồn
•
Tính đa dạng, khả năng tích hợp, giá thành, chế tạo, dễ phối hợp với vi mạch công nghệ khác
GV: Nguyễn Trọng Hải
Trang 147
Bài Giảng Kỹ Thuật Số
Chương 5
5.3. HỌ RTL (RESISTOR-TRANSISTOR LOGIC) Bao gồm các điện trở và transistor, đây là họ logic được tích hợp sớm nhất Ví dụ, một cổng NOR RTL
Vcc Rc
Y Rb1
Q1
Q2
A Rb2
B
Các mạch RTL có đặc tính chung là cần dòng IB cho các BJT nên còn được gọi là mạch thu dòng (current sinking), vì vậy khi kết nối với các mạch khác cần phải lưu ý để thỏa mãn điều kiện này, nếu không mạch sẽ không làm việc Lề nhiễu ở trạng thái 0 là 0.5-0.2=0.3V Lề nhiễu ở trạng thái 1 phụ thuộc vào tải 5.4. HỌ DTL (DIODE-TRANSISTOR LOGIC) Bao gồm diode ở ngõ vào và transistor ở ngõ ra Ví dụ, cổng NAND DTL
Vcc R1 DA
A
Rc
D1
Y
D2
Q
B DB
AND
Rb
NOT
Ngõ ra Y kéo lên nguồn Vcc được gọi là ngõ ra kéo lên thụ động (Passive pull up) 5.5. HỌ TTL (TRANSISTOR-TRANSISTOR LOGIC) Loại DTL sớm được thay thế bởi mạch TTL tức Transistor ở ngõ vào và Transistor ở ngõ ra
GV: Nguyễn Trọng Hải
Trang 148
Bài Giảng Kỹ Thuật Số
Chương 5
Ví dụ, cổng NAND TTL Vcc R1
R2
Rc R1
Q1
Q3
Q2
A
A B
Q2
DA
B Y
Q1
Q4 R3
Lưu ý: khi các ngõ vào A,B để hở (thả nổi ngõ vào) thì không có dòng chảy ra ở A, B nên ngõ vào để hở giống như nối lên cao (logic 1) Đầu ra TTL hoạt động như bộ thu nhận dòng ở trạng thái thấp (Q4) và cung cấp dòng ở trạng thái cao (Q3) Ngõ ra Y kéo lên Transistor nên được gọi là ngõ ra kéo lên tích cực (Active pull up) hay còn gọi là ngõ ra cột chạm (Totel pole). Với Q3 sẽ không có dòng nào truyền qua Rc khi ngõ ra ở mức thấp nên sẽ giảm bớt dòng tiêu hao trong mạch. Trong khi kiểu kéo lên thụ động sẽ làm cho Q4 dẫn một dòng khá lớn khi ngõ ra ở mức thấp Ưu điểm thứ hai của cấu hình Totem pole là khi Y ở trạng thái cao, Q3 có trở kháng đầu ra thấp nên rất thuận tiện nếu tải có tính dung C Nhược điểm của cấu hình totem pole thể hiện trong giải đoạn chuyển tiếp từ thấp lên cao. Vì Q4 tắt chậm nên khi Q4 chưa tắt mà Q3 đã dẫn, thời gian này (vài ns) cả 2 transostor đều dẫn điện nên hút một dòng tương đối lớn. 5.6. CÁC ĐẶC ĐIỂM CỦA HỌ TTL CHUẨN Loạt IC TTL chuẩn đầu tiên gọi là seri 54/74, tùy theo hãng chế tạo sẽ có thêm các tiền tố. VD, Texas Instruments có tiền tố SN, National Semiconductor dùng DM, Signetic là S Ví dụ, cổng NOR sẽ có các mã số khác nhau DM7402, SN7402… Khoảng nhiệt độ và điện thế nguồn Seri 74 vận hành trong khoảng điện thế 4.75 đến 5.25 và nhiệt độ 00C đến 700C Seri 54 chấp nhận điện thế nguồn trong khoảng 4.5 đến 5.5 và nhiệt độ -550C đến 1250C Mức điện thế của seri 74 Tối đa VOL VOH 2.4 VIL 2.0 VIH GV: Nguyễn Trọng Hải
Chuẩn 0.2 3.4
Tối thiểu 0.4 0.8
Trang 149
Bài Giảng Kỹ Thuật Số
Chương 5
Công suất tiêu hao bình quân một cổng khoảng 10mW Thời gian trễ tiêu biểu tpLH=11ns và tpHL=7ns, trung bình 9ns Đầu ra TTL chuẩn có thể kích thích 10 đầu vào TTL chuẩn 5.7. HỌ TTL CẢI TIẾN
Định mức hiệu suất Trễ do truyền (ns) Công suất (Mw) Chỉ số giá trị (pJ) Hệ số tải Các thông số điện thế VOH(min) VOL(min) VIH(min) VIL(min) Các định mức dòng ngõ ra IOH (mA) IOL (mA) Các định mức dòng ngõ vào IIH ( μA ) IIL (mA)
74
74S
74LS 74AS 74ALS
74F
9 10 90 10
3 20 60 20
9.5 2 19 20
1.7 8 13.6 40
4 1.2 4.8 20
3 6 18 33
2.4 0.4 2.0 0.8
2.7 0.5 2.0 0.8
2.7 0.5 2.0 0.8
2.5 0.5 2.0 0.8
2.5 0.4 2.0 0.8
2.5 0.5 2.0 0.8
-0.4 16
-1 20
-0.4 8
-2 20
-0.4 8
-1 20
40 -1.6
50 -2
20 -0.4
20 -0.5
20 -0.1
20 -0.6
Ví dụ, Xác định giới hạn nhiễu DC cho một IC 74LS so sánh với IC 74 Ví dụ, Một đầu ra 74ALS kích thích 3 đầu vào 74S và một đầu vào 74 được không 5.8. TTL VỚI NGÕ RA CỰC THU HỞ (OPEN COLLECTOR OUTPUT) Sơ đồ điển hình của NAND cực thu hở VCC R1
R2
Y A B
A B
R3
Lưu ý: Mạch có cực thu để hở có thể được sử dụng như mạch Logic thông thường bằng cách mắc thêm R thích hợp với tình trạng của tải. GV: Nguyễn Trọng Hải
Trang 150
X
Bài Giảng Kỹ Thuật Số
Chương 5
5.9. HỌ TTL BA TRẠNG THÁI (TRISTATE) Ngoài 2 trạng thái cơ bản 1 và 0, các mạch logic còn có thêm trạng thái tổng trở cao Hi-Z Ví dụ xét cổng NOT 3 trạng thái sau A
X
A
Cho phép (E)
X= A
X
A
E=1
E=0
5.10. MẠCH LOGIC MOS Chuyển mạch MOSFET cơ bản +5V D G
VGS=0
G
S
D VGS=5V S
G
D S
Mạch số dùng MOSFET được phân thành 3 nhóm: P-MOS, N-MOS và CMOS Đặc điểm của logic MOS o So với họ lưỡng cực thì N-MOS và P-MOS có tốc độ hoạt động chậm hơn, tiêu hao năng lượng ít hơn, giới hạn nhiễu hẹp hơn, khoảng điện thế nguồn nuôi lớn hơn, hệ số tải lớn hơn và đòi hỏi ít chỗ trên chip hơn o Mức logic dành cho mạch MOS là
V(0) ≈ 0V V(1) ≈ VDD
5.11. HỌ CMOS Công nghệ CMOS tung ra các sản phẩm có đặc điểm hiệu suất ngày càng tốt hơn, cung cấp không chỉ tất cả chức năng logic có ở TTL, mà còn nhiều chức năng đặc biệt không có ở TTL CMOS Thông số 4000B 74HC 74HCT 74AC 74ACT 74AHC 74AHCT VIH(min) 3.5 3.5 2.0 3.5 2.0 3.85 2.0 VIL(max) 1.5 1.0 0.8 1.5 0.8 1.65 0.8 VOH(min) 4.95 4.9 4.9 4.9 4.9 4.4 3.15 VOL(max) 0.05 0.1 0.1 0.1 0.1 0.44 0.1 VNH 1.45 1.4 2.9 1.4 2.9 0.55 1.15 VNL 1.45 0.9 0.7 1.4 0.7 1.21 0.7 Lưu ý: không bao giờ được phép thả nổi các đầu vào CMOS không dùng đến, tất cả đầu vào CMOS phải được nối hoặc với mức điện thế cố định (0 hoặc VDD) hoặc với đầu vào khác (Lý do đầu vào CMOS thả nổi rất nhạy với tạp âm nhiễu và tĩnh điện vốn có thể dễ dàng phân cực MOSFET ở trạng thái dẫn điện) GV: Nguyễn Trọng Hải
Trang 151
Bài Giảng Kỹ Thuật Số
Chương 5
5.12. MỘT SỐ CỔNG Tất cả các cổng đều thuộc loại tích hợp SSI Cổng NOT NOT NOT NAND 2 ngõ vào NAND 2 ngõ vào NAND 2 ngõ vào NAND 3 ngõ vào NAND 3 ngõ vào NAND 4 ngõ vào NAND 4 ngõ vào NAND 8 ngõ vào NAND 13 ngõ vào OR 2 ngõ vào NOR 2 ngõ vào NOR 3 ngõ vào NOR 4 ngõ vào AND 2 ngõ vào AND 2 ngõ vào AND 3 ngõ vào AND 3 ngõ vào XOR
GV: Nguyễn Trọng Hải
Ký hiệu 7404 7405 7414 7400 7401 74132 7410 7412 7420 7422 7430 74133 7432 7402 7427 7425 7408 7409 7411 7415 7486
Trang 152
Loại ngõ ra Active Pull up Open collector Schmitt trigger Active Pull up Open collector Schmitt trigger Active Pull up Open collector Active Pull up Open collector Active Pull up Active Pull up Active Pull up Active Pull up Active Pull up Active Pull up Active Pull up Open collector Active Pull up Open collector
Bài Giảng Kỹ Thuật Số
Chương 6
CHƯƠNG 6. GIAO TIẾP TƯƠNG TỰ - SỐ 6.1.
BIẾN ĐỔI ADC
6.2.1. Khái niệm Boä bieán ñoåi töông töï sang soá (ADC) ñoùng vai troø quan troïng trong heä thoáng xöû lí thoâng tin khi maø caùc luoàng tín hieäu ñöa vaøo heä vi xöû lí laø tín hieäu daïng töông töï . Caùc boä chuyeån ñoåi thöïc hieän hai chöùc naêng cô baûn laø löôïng töû hoùa vaø maõ hoùa. Löôïng töû hoùa laø gaùn nhöõng giaù trò cuûa moät tín hieäu töông töï vaøo vuøng caùc giaù trò rôøi raïc sinh ra trong quaù trình maõ hoùa. Ñoái vôùi ADC ta cuõng duøng caùc loaïi maõ soá nhö nhò phaân, BCD, buø moät, buø hai. Quaù trình laáy maãu (Sampling). Böôùc ñaàu tieân trong chuyeån ñoåi töông töï – soá laø rôøi raïc hoaù theo thôøi gian tín hieäu ñaàu vaøo ban ñaàu. Vieäc laáy maãu nhö vaäy ñöôïc boä phaän laáy maãu vaø giöõ – Sample & Hold Circuit (S&H) thöïc hieän.
Böôùc tieáp theo, boä chuyeån ñoåi töông töï – soá A/D chuyeån ñoåi caùc maãu nghieäm lieân tuïc theo giaù trò vaø ñaõ ñöôc rôøi raïc hoaù theo thôøi gian ñoù thaønh tín hieäu löôïng töû hoaù theo giaù trò vaø bieåu dieãn döôùi daïng soá nhò phaân. Phaûi choïn taàn soá laáy maãu sao cho caùc trò lấy maãu coù theå ñaëc tröng cho tín hieäu ban ñaàu maø khoâng bò toån thaát thoâng tin (fsample ≥ 2 fmax). Maïch laáy maãu vaø döøng S&H. Trong kyõ thuaät chuyeån ñoåi töông töï – soá, tín hieäu töông töï bieán thieân lieân tuïc theo thôøi gian u(t) ñöôïc laáy maãu ôû nhöõng thôøi ñieåm nhaát ñònh, vaø giaù trò tín hieäu GV: Nguyễn Trọng Hải
Trang 153
Bài Giảng Kỹ Thuật Số
Chương 6
nhaän ñöôïc seõ ñöôïc löu giöõ trong moät khoaûng thôøi gian ñònh tröôùc. Trong nhieàu boä chuyeån ñoåi A/D, tín hieäu phaûi ñöôïc giöõ khoâng ñoåi trong suoát thôøi gian chuyeån ñoåi. Ñeå thöïc hieän vieäc ñoù, duøng maïch Track-and-Hold – T&H. Caáu truùc cô baûn cuûa maïch T&H
Sau moãi laàn môû chuyeån maïch, tuï ñieän naïp ñeán giaù trò ñieän aùp ñaàu vaøo u vao (t) vaø löu giöõ giaù trò töùc thôøi cuûa ñieän aùp ñaàu vaøo tröôùc thôøi ñieåm môû chuyeån maïch. Caû hai boä khuyeách ñaïi thuaät toaùn laøm boä ñeäm buffer cho ñaàu vaøo cuõng nhö ñaàu ra. Moät khaû naêng khaùc thöïc hieän maïch T&H.
Moät transistor tröôøng FET (Isolated – Gate – FET) ñöôïc maéc giöõa KÑTT ñaûo pha vaø KÑTT tích phaân. Khi usamp = 0, transistor FET seõ daãn vaø ñieän aùp ñaàu ra u ra töông öùng ñieän aùp ñaàu vaøo aâm u vao , giaû thieát haèng soá thôøi gian tích phaân cuûa KÑTT tích phaân (ñöôïc xaùc ñònh bôûi doøng ñieän ñaàu ra cöïc ñaïi cuûa KÑTT) laø ñuû nhoû. Vaøo thôøi ñieåm t = t0 , transistor tröôøng khoaù, nhö vaäy vieäc naïp tuï (ñieän aùp tuï ñieän) khoâng ñoåi vaø ñieän aùp ñaàu ra u ra ñöôïc giöõ laïi ôû möùc giaù trò u ra (t) = u ra ( t0 ), cho ñeán khi transistor tröôøng laïi ñöôïc ñieàu khieån môû maïch. Khi FET ñoùng, caùc diode seõ daãn vaø nhôø ñoù maø traùnh ñöôïc hieän töôïng KÑTT bò quaù ñieàu khieån. Chuyeån ñoåi song song (Flash Converter, giaûi ñieàu nhieàu laàn). Ñeå coù theå tieán haønh chuyeån ñoåi cöïc nhanh, ngöôøi ta söû duïng caùc chuyeån ñoåi song song, coøn ñöôïc goïi laø Flash Converter hay boä giaûi ñieàu nhieàu laàn. Trong kieåu chuyeån ñoåi naøy, ñieän aùp caàn chuyeån ñoåi seõ ñöôïc ñoàng thôøi so saùnh caân baèng vôùi 2 N − 1 ñieän aùp quy chieáu
(
GV: Nguyễn Trọng Hải
Trang 154
)
Bài Giảng Kỹ Thuật Số
Chương 6
Boä chuyeån ñoåi A/D 3 bit vôùi caùc boä so song song U LSB = U ref 2 N = U ref 8
Hình N3.4.15 – .
(
)
Phaàn chuû yeáu cuûa chuyeån ñoåi song song laø 2 N − 1 boä so saùnh, hoaït ñoäng chöùc naêng maïch so saùnh vôùi ñieän aùp ra u ra = +U B töông öùng tín hieäu logic K=1, nhöng neáu u ra = −U B thì töông öùng K=0 nhö sau.
. Vieäc chuyeån ñoåi ñöôïc tieán haønh chæ moät böôùc, cho pheùp toác ñoä chuyeån ñoåi ñaït möùc cao nhaát coù theå, nhöng giaù thaønh cao töông öùng, vì ñoàng thôøi phaûi duøng soá löôïng lôùn caùc boä so saùnh 2 N − 1 . Tín hieäu cuûa moät trong baûy boä so cuûa chuyeån ñoåi song song 3 bit ñöôïc giôùi thieäu trong baûng N3.4-3.
(
)
Xaáp xæ hoaù luõy tieán lieân tuïc (phöông phaùp caân, chuyeån ñoåi theo baäc). Phöông phaùp naøy döïa treân cô sôû nguyeân lyù caân baèng. Trong sô ñoà boä chuyeån ñoåi, hoaït ñoäng theo nguyeân lyù xaáp xæ hoaù luõy tieán, coøn goïi laø chuyeån ñoåi theo baäc, ngoaøi modul ñieàu khieån quaù trình vaø thanh ghi coøn coù boä so saùnh vaø moät chuyeån ñoåi soá – töông töï D/A Trong caùc böôùc luõy tieán, boä so seõ thöû xem ñieän aùp caàn chuyeån ñoåi lôùn hôn hay nhoû hôn ñieän aùp u(Z) do boä chuyeån ñoåi ngöôïc D/A taïo ra. Tieáp theo, bit baäc cao nhaát (MSB) seõ ñöôïc ñaët ñònh, ñöôïc chuyeån ñoåi D/A bieán ñoåi ngöôïc trôû laïi thaønh ñieän aùp töông töï u(Z) vaø so saùnh vôùi ñieän aùp ñaàu vaøo u vao . Tuøy theo giaù trò u(Z) lôùn hay nhoû hôn u vao maø ñieän aùp quy chieáu seõ ñöôïc coäng vaøo hay tröø ñi töø giaù trò ñoù, vaø theo ñoù maø soá nhò nguyeân töông öùng cuûa tín hieäu soá nhò phaân ñaàu ra seõ laø 0 hay 1. Trong moãi chu trình tieáp theo, seõ laøm tieáp chöõ soá nhò nguyeân cho baäc GV: Nguyễn Trọng Hải
Trang 155
Bài Giảng Kỹ Thuật Số
Chương 6
döôùi vaø quaù trình so saùnh seõ ñöôïc laëp laïi. Ñoái vôùi moät chuyeån ñoåi N bit thì caàn N böôùc so saùnh vaø chu trình laëp laïi tuaàn hoaøn. Chuyeån ñoåi A/D 4 bit theo nguyeân lyù xaáp xæ hoaù luõy tieán.
Tín hieäu cuûa boä chuyeån ñoåi song song 3 bit. Ñieän aùp vaøo
Tín hieäu so saùnh K 7 K 6 K 5 K 4 K 3 K 2 K1
Maõ nhò phaân Z 2 Z1Z 0
Ñieän aùp töông töï u vao
0 ≤ u vao < 12 U LSB
0 0 0 0 0 0 0
0 0 0
0
1 2
U LSB ≤ u vao < 32 U LSB
0 0 0 0 0 0 1
0 0 1
U ref / 8
3 2
U LSB ≤ u vao < 52 U LSB
0 0 0 0 0 1 1
0 1 0
2 U ref / 8
5 2
U LSB ≤ u vao < 72 U LSB
0 0 0 0 1 1 1
0 1 1
3 U ref / 8
7 2
U LSB ≤ u vao < 92 U LSB
0 0 0 1 1 1 1
1 0 0
4 U ref / 8
9 2
U LSB ≤ u vao < 112 U LSB
0 0 1 1 1 1 1
1 0 1
5 U ref / 8
0 1 1 1 1 1 1
1 1 0 1 1 1
6 U ref / 8
11 2
U LSB ≤ u vao < 132 U LSB 13 2
U LSB ≤ u vao
1 1 1 1 1 1 1
7 U ref / 8
Boä rôøi raïc hoaù nhieàu taàng theo baäc (phöông phaùp phoái hôïp song song vaø caân baèng). Boä rôøi raïc hoaù nhieàu taàng giaûi quyeát thoaû hieäp giöõa toác ñoä chuyeån ñoåi vaø giaù thaønh. Vì ñoái vôùi caùc chuyeån ñoåi thuaàn tuyù theo phöông phaùp song song (rôøi raïc hoaù nhieàu taàng) thì caàn raát nhieàu boä so saùnh, ví duï: moät chuyeån ñoåi A/D 8 bit thì caàn tôùi 255 boä so, ngöôøi ta phaân baäc boä rôøi raïc hoaù thaønh taàng. Vieäc ñoù cho pheùp giaûm soá löôïng boä so saùnh, nhöng ñoàng thôøi toác ñoä chuyeån ñoåi chaäm hôn.
GV: Nguyễn Trọng Hải
Trang 156
Bài Giảng Kỹ Thuật Số
Chương 6
Sô ñoà khoái chuyeån ñoåi 8 bit baèng hai chuyeån ñoåi song song 4 bit maéc theo baäc.
Chuyeån ñoåi A/D thöù nhaát nhaän vieäc löôïng töû hoaù thoâ, löôïng töû hoaù 4 bit baäc cao. Keát quaû chuyeån ñoåi naøy seõ ñöôïc boä chuyeån ñoåi D/A bieán ñoåi ngöôïc thaønh ñieän aùp töông töï vaø tröø ñi töø ñieän aùp ñaàu vaøo. Tín hieäu sai leäch (vi sai) seõ ñöôïc boä chuyeån ñoåi A/D thöù hai löôïng töû hoaù (heä soá 16 laàn tinh hôn). Keát quaû chuyeån ñoåi naøy cho 4 bit baäc thaáp hôn. Vieäc haïn cheá ñöôïc soá löôïng boä so saùnh(trong ví duï tröôùc thì giaûm ñöôïc töø 255 xuoáng 30), laøm haï giaù thaønh chuyeån ñoåi noùi chung. Chuyeån ñoåi theo phöông phaùp phaân taàng cascade. Theo phöông phaùp phaân taàng, ngöôøi ta duøng moät boä chuyeån ñoåi song song N bit (Flash Converter) ñeå chuyeån ñoåi 2N bit. ÔÛ ñaây caàn hai chu trình chuyeån ñoåi. So vôùi boä chuyeån ñoåi ôû treân thì ôû ñaây tieát kieäm ñöôïc moät boä chuyeån ñoåi. Tín hieäu töông töï ôû ñaàu vaøo u vao trong chu trình nhòp ñoàng boä ñaàu tieân ( S1 ñoùng, S 2 môû) ñöôïc bieán ñoåi bôûi boä chuyeån ñoåi N bit. Keát quaû, cho N bit baäc cao nhaát, ñöôïc boä chuyeån ñoåi ngöôïc D/A bieán ñoåi thaùnh giaù trò töông töï töông öùng, ñem tröø ñi ñieän aùp ñaàu vaøo u vao ban ñaàu. Ñieän aùp vi sai ñöôïc khuyeách ñaïi leân 2 N laàn, vaø ñöôïc ñöa trôû laïi boä chuyeån ñoåi song song N bit ( S1 môû, S 2 ñoùng). Ñem coäng keát quaû cuûa chuyeån ñoåi 1 vaø 2, roát cuoäc ta coù keát quaû cuûa chuyeån ñoåi 2N bit “giaû laäp – pseudo”. Chuyeån ñoåi A/D theo phöông phaùp phaân taàng cascade.
Chuyeån ñoåi theo phöông phaùp phaân taàng laëp laïi. Trong chuyeån ñoåi phaân taàng laëp laïi (Recursive – Subranging – Analog – Digital – Converter RSR-A/DC), seõ tieán haønh bieán ñoåi töông töï – soá moät töø maõ (n.N) bit baèng chuyeån ñoåi song song N bit vôùi n böôùc tuaàn töï. Veà nguyeân lyù hoaït ñoäng, caùc chuyeån ñoåi naøy döïa treân nguyeân lyù tieäm caän töøng böôùc, vôi khaùc bieät laø thay vì GV: Nguyễn Trọng Hải
Trang 157
Bài Giảng Kỹ Thuật Số
Chương 6
söû duïng caùc boä so saùnh töông töï laøm chuyeån ñoåi 1 bit, ôû ñaây söû duïng boä chuyeån ñoåi song song N bit. Noùi chung, cuõng caàn phaûi ñaûm baûo ñoä chính xaùc khueách ñaïi ñoái vôùi toaøn thang ño (n.N) bit. Cuõng nhö trong phöông phaùp phaân taàng ñôn giaûn, söû duïng moät boä chuyeån ñoåi soá – töông töï D/A ñeå bieán ñoåi ngöôïc giaù trò keát quaû thaønh giaù trò töông töï töông öùng ñeå tröø ñi töø giaù trò ñaàu vaøo u vao . Nhö vaäy, caàn duøng moät chuyeån ñoåi D/A (n.N) bit. So vôùi phöông phaùp tieäm caän töøng böôùc ñôn thuaàn, coù söï caûi thieän do chuyeån ñoåi (n.N) bit maø chæ caàn n thay vì (n.N) chu trình xaáp xæ hoaù. Gioáng nhö trong caùc phöông phaùp phaân taàng ñaõ neâu, cuõng duøng bit thöù N ñeå hieäu chính sai soá, ñieàu ñoù caàn theâm moät chu trình nhòp phuï. Boä chuyeån ñoåi A/DC 12 bit theo PP phaân taàng laëp laïi
a)- Sô ñoà nguyeân lyù; b)- Xaùc ñònh giaù trò soá baèng haïn cheá luõy tieán (k vaø i - soá töï nhieân). Chuyeån ñoåi baäc Incremental (phöông phaùp ñeám). Trong chuyeån ñoåi A/D döïa treân cô sôû phöông phaùp ñeám, ñieän aùp so caân baèng u(Z) ñöôïc moät boä chuyeån ñoåi D/A taïo ra. Boä chuyeån ñoåi D/A ñoù ñöôïc moät boä ñeám thoâng thöôøng maéc phía ñaàu vaøo ñieàu khieån.
GV: Nguyễn Trọng Hải
Trang 158
Bài Giảng Kỹ Thuật Số
Chương 6
Chuyeån ñoåi A/D theo nguyeân lyù chuyeån ñoåi baäc Incremental.
Ngay khi u(Z) vöôït quaù ñieän aùp u vao caàn chuyeån ñoåi, thì vieäc chuyeån ñoåi bò ngöng laïi. Töø traïng thaùi boä ñeám coù theå tröïc tieáp tính ra ñöôïc giaù trò soá cuûa ñieän aùp ñöôïc chuyeån ñoåi. Öu ñieåm cuûa phöông phaùp naøy laø giaûm ñöôïc chi phí caáu taïo thieát bò (chæ caàn moät boä so), trong khi coù nhöôïc ñieåm laø giaûm toác ñoä chuyeån ñoåi. Soá chu trình caàn thieát trong chuyeån ñoåi phuï thuoäc vaøo ñoä lôùn cuûa ñieän aùp vaøo u vao . Ñeå coù ñöôïc keát quaû giaù trò côõ N bit seõ caàn toái ña 2 N böôùc. Chuyeån ñoåi baùm saùt (phöông phaùp ñeám). Ngöôïc vôùi chuyeån ñoåi baäc Incremental neâu treân, chuyeån ñoåi baùm saùt ñeám tôùi – lui. Caáu taïo nguyeân lyù cuûa chuyeån ñoåi baùm saùt (hình N3.4-22) veà cô baûn khaùc vôùi chuyeån ñoåi baäc Incremental laø thay vì boä ñeám tôùi thuaàn tuùy, ôû ñaây söû duïng boä ñeám thuaän - nghòch phoái hôïp. Nhö vaäy, tín hieäu ra cuûa D/AC luoân baùm saùt theo tín hieäu vaøo. Trong ñoù, söï bieán ñoäng tín hieäu vaøo trong thôøi gian moät chu kyø nhòp ñoàng boä khoâng ñöôïc lôùn hôn giaù trò U LSB . Khi bieán ñoäng tín hieäu nhanh thì thôøi gian ñeå ñaït tôùi söï caân baèng tieáp theo coù theå laø raát laâu, tröôøng hôïp xaáu coù theå laâu tôùi côõ 2 N chu kyø nhòp ñoàng boä. 6.2.2. Một số loại IC ADC •
ADC 0801/ ADC0802/ ADC0803/ ADC0804/ ADC0805 (IC CMOS 20 chaân), ñaây laø caùc boä bieán ñoåi A/D 8 bit vôùi 1 keânh töông töï, söû duïng phöông phaùp lieân tieáp xaáp xæ. Caùc boä bieán ñoåi naøy ñöôïc thieát keá ñeå coù theå giao tieáp vôùi caùc BUS nhôø vaøo vieäc ñieàu khieån bus 3 traïng thaùi. Khi giao tieáp vôùi boä vi xöû lyù, chuùng seõ ñoùng vai troø nhö nhöõng boä nhôù ñöôïc ñònh vò hay noùi caùch khaùc chuùng laø caùc port I/O. Ñieän aùp tham chieáu chuaån ôû ñaàu vaøo coù theå ñöôïc ñieàu chænh cho pheùp maõ hoùa caùc giaù trò ñieän aùp analog nhoû hôn traûi ñeàu ñoä phaân giaûi cuûa 8 bit.
•
Ñaëc ñieåm chung: 9 9 9 9 9
Deã daøng giao tieáp vôùi boä vi xöû lyù hoaëc hoaït ñoäng ñoäc laäp Möùc logic ñaàu vaøo / ra töông thích vôùi caû 2 loaïi MOS vaø TTL Boä phaùt xung nhòp cuøng naèm treân chip Daûi tín hieäu analog loái vaøo 0 … 5V khi ñieän aùp nguoàn nuoâi laø 5V Khoâng caàn hieäu chænh zero
GV: Nguyễn Trọng Hải
Trang 159
Bài Giảng Kỹ Thuật Số
Chương 6
9 Hoaït ñoäng toaøn vuøng 5V hay 2.5V tuøy theo giaù trò ñieän aùp tham chieáu 9 Doøng tieâu thuï : 1.9mA ADC0804 +IN -IN VREF/2 CLKIN CLKR
DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7
RD WR INTR CS VCC/VREF GND AGND
9 Thôøi gian bieán ñoåi: 100μs 9 Coù taàng khueách ñaïi thuaät toaùn ôû chaân 9 ñeå coù phoái hôïp trôû khaùng 9 Ñieän trôû vaøo ôû chaân 9: 1.1kΩ •
Ngoaøi ra coøn coù caùc IC: ADC 0808/ ADC0809, ñaây laø caùc boä bieán ñoåi A/D 8 bit vôùi 8 keânh töông töï Sinh vieân tra sô ñoà chaân vaø sô ñoà keát noái cho maïch thöïc teá
6.2.
BIẾN ĐỔI DAC
6.2.1. Khái niệm Chuyeån ñoåi soá – töông töï Digital – Analog Converter (DAC) laø bieán ñoåi tín hieäu ñaõ ñöôïc maõ hoaù daïng soá trôû laïi thaønh giaù trò ñieän aùp töông töï. Nguyeân lyù chuyeån ñoåi soá – töông töï.
Giaû thieát raèng giaù trò soá Z ñöôïc xöû lyù nhö moät soá nhò phaân N bit theo maõ nhò phaân vaø xöû lyù song song (1 bit moãi ñöôøng döõ lieäu). Tieáp theo, giaû thieát raèng chæ xeùt ñeán caùc chuyeån ñoåi D/A maø chæ chuyeån ñoåi, xöû lyù nhöõng soá döông trong phaïm vi
GV: Nguyễn Trọng Hải
Trang 160
Bài Giảng Kỹ Thuật Số
Chương 6 ,
0 ≤ Z ≤ Z max = 2 N − 1 ôû ñaây: soá nhò phaân Z bin = z N −1...z1 z0 bieåu thò bôûi N chöõ soá nhò nguyeân zi :
Z = z N −1 2 N −1 + ... + z2 22 + z1 21 + z0 20 . Soá nhò phaân N bit ôû ñaàu vaøo cuûa boä chuyeån ñoåi D/A ñöôïc moät thanh ghi ñaàu vaøo tieáp nhaän, vaø khi coù taùc ñoäng söôøn xung nhòp tieáp theo, noù ñöôïc chuyeån ñoåi thaønh giaù trò töông töï töông öùng. Ñoä lôùn böôùc löôïng töû hoaù U LSB do quaù trình rôøi raïc hoaù, töông öùng vôùi vi sai tín hieäu töông töï ôû ñaàu ra giöõa hai giaù trò soá keá tieáp: ,
U LSB = U ref 2 N
ôû ñaây U ref - ñieän aùp quy chieáu (reference) cuûa boä chuyeån ñoåi D/A. Ñoä lôùn böôùc löôïng töû töông öùng giaù trò töông töï cuûa bit baäc thaáp nhaát Least Significant Bit LSB. Ñaëc tuyeán truyeàn ñaït cuûa boä chuyeån ñoåi D/A ñôn cöïc lyù töôûng 3 bit ( U LSB = U ref / 8) nhö sau.
Trong ñoù, K laø soá ñieåm rôøi raïc hoaù treân ñaëc tuyeán truyeàn ñaït, quy ñònh soá bit N cuûa boä chuyeån ñoåi:
K = 2N Ñieän aùp töông töï ôû ñaàu ra u ra cuûa chuyeån ñoåi D/A naèm trong khoaûng:
.
2n − 1 = U ref (1 − 2 − N ) . 2N Moät trong nhöõng ñaïi löôïng ñaëc tröng quan troïng cuûa boä chuyeån ñoåi D/A laø tyû soá chuyeån ñoåi vaø thôøi gian chuyeån ñoåi. • Tyû soá chuyeån ñoåi: bao nhieâu giaù trò soá ñöôïc chuyeån ñoåi thaønh giaù trò töông töï trong moät ñôn vò thôøi gian. • Thôøi gian chuyeån ñoåi, noùi chung, töông öùng trò nghòch ñaûo cuûa tyû soá chuyeån ñoåi. 0 ≤ u ra ≤ U LSB (2 N − 1) = U ref
GV: Nguyễn Trọng Hải
Trang 161
Bài Giảng Kỹ Thuật Số
Chương 6
Sô ñoà thöïc hieän chuyeån ñoåi soá – töông töï D/A baèng Pheùp coäng doøng hay aùp troïng soá. ï.
a)- Phöông aùn khuyeách ñaïi u / i ; b)- Phöông aùn coù khuyeách ñaïi i / u . Boä chuyeån ñoåi treân coù boä khuyeách ñaïi u / i cung caáp doøng ra khoâng ñoåi I ref = U ref
/ Rref . Neáu song song vôùi ñieän trôû Ri maéc moät chuyeån maïch Si ñöôïc ñieàu khieån bôûi töø maõ Z,, sao cho noù môû khi coù chöõ soá nhò nguyeân 1 (Si ( zi = 1) = 1) , vaø khi coù
soá 0 noù vaãn giöõ traïng thaùi ñoùng (S i ( z i = 0 ) = 0) , thì ñieän aùp ñaàu ra baèng: N −1
U ref
i =0
Rref
u ra = I ref ∑ S i Ri =
N −1
∑S R i =0
i
i
,
ôû ñaây ñieän trôû troïng soá nhò phaân Ri laø:
Ri = 2i R , - i = 0,1,…,N – 1. Hình b giôùi thieäu phöông aùn sô ñoà coù boä khuyeách ñaïi i / u, hoaït ñoäng nhö moät boä coäng ñaûo. Khaùc vôùi phöông aùn tröôùc, trong sô ñoà naøy chuyeån maïch Si seõ ñoùng
(S (z i
i
)
= 1) = 1 khi coù soá nhò nguyeân 1. Vaø ñieän aùp ñaàu ra u ra baèng: N −1
u ra = − Rref U ref ∑ S i i =0
1 Ri
ôû ñaây ñieän trôû Ri coù troïng soá nhò phaân nghòch ñaûo so vôùi trong bieåu thöùc treân R i = 0,1, …, N – 1, Ri = i , 2 vaø S i = 1 khi soá nhò nguyeân thöù i laø 1, coøn ngoaøi ra thì S i = 0.
GV: Nguyễn Trọng Hải
Trang 162
,
Bài Giảng Kỹ Thuật Số
Chương 6
Phöông aùn thöïc hieän sô ñoà Boä chuyeån ñoåi D/A 4 bit coù khuyeách ñaïi i / u treân cô sôû chuyeån maïch baùn daãn.
Sô ñoà ñöôïc phaân baäc thöù nguyeân sao cho khi soá nhò nguyeân thöù i ñöôïc ñaët ñònh ôû möùc 1 (töông öùng ñieän aùp döông trong phaïm vi U B , töùc laø U ( zi = 1) ≈ U B ), thì transistor töông öùng ñöôïc môû vaø doøng collector cuûa noù, voán do ñoä lôùn ñieän trôû R 2i quy ñònh, seõ chaïy qua “ñieän trôû toång” Rref . Nhö vaâïy, pheùp coäng theo bieåu thöùc (N3.4-8) ñöôïc thöïc hieän. Ñieän aùp rôi treân ñieän trôû R 2i coù giaù trò baèng U ref vì ñieän aùp dao ñoäng treân diode U D gaàn töông xöùng ñieän aùp BE aâm cuûa transistor ( U D ≈ −U BE ). Diode zener oån aùp giöõ cho ñieän aùp U ref khoâng ñoåi. Ñoái vôùi nhöõng chuyeån ñoåi D/A thieát keá treân cô sôû caùc maïng trôû khaùng nhö treân, thoâng thöôøng phaûi ñaùp öùng yeâu caàu raát cao veà ñoä chính xaùc cuûa caùc ñieän trôû maéc trong maïch. Boä chuyeån ñoài soá – töông töï N bit coù lieân heä töông quan giöõa ñieän aùp ñaàu ra cöïc ñaïi u ra. max vaø böôùc löôïng töû U LSB laø:
(
)
.
u ra. max = 2 N − 1 U LSB
Neáu phaûi ñaûm baûo sai soá tuyeät ñoái lôùn nhaát Δu ra cuûa ñieän aùp ñaàu ra u ra nhoû hôn U LSB 2 , töùc laø Δu ra ≤ U LSB 2 , thì phaûi aùp duïng luaät phaân boá sai soá ñoái vôùi sai soá heä thoáng cho bieåu thöùc (N3.4-6): U ref N −1 ∂Ri U ref Δu ra = Si ΔRi = ∑ Rref i =0 ∂Ri Rref
N −1
∑S i =0
i
1 ΔRi < U LSB 2
.
Trò soá analog töông töï cuûa baäc löôïng töû hoaù ñaàu tieân coù theå xaùc ñònh töø caùc bieåu thöùc (N3.4-6) vaø (N3.4-7), laø haøm cuûa ñieän aùp quy chieáu vaø giaù trò ñieän trôû R vaø Rref : U LSB =
U ref
ruùt ra: Δu ra =
Rref
U ref Rref
GV: Nguyễn Trọng Hải
R N −1
∑S i =0
i
ΔRi <
1 U ref R 2 Rref
Trang 163
Bài Giảng Kỹ Thuật Số
Chương 6
Tröôøng hôïp xaáu nhaát laø söï coá moïi chuyeån maïch Si ñeàu môû ( Si = 1), cho neân phaûi ñaûm baûo ñieàu kieän sau: N −1 1 ΔRi < R ∑ 2 i =0 Neáu ta coi sai soá töông ñoái cuûa moïi ñieän trôû chæ trò nhò phaân laø nhö nhau, thì:
.
ΔRi = ΔR 2i
Sai soá töông ñoái lôùn nhaát coù theå chaáp nhaän theo ñieàu kieän Δu ra ≤ U LSB 2 maø sô ñoà chuyeån ñoåi duøng maïng ñieän trôû treân coù theå ñaùp öùng: N −1
1 R 2 i =0 ΔR 1 . < N R 2 2 −1
ΔR ∑ 2i < vaø
(
,
)
Phaûi ñaëc bieät ñaûm baûo thoaû maõn ñieàu kieän naøy ñoái vôùi ñieän trôû RN −1 - ñònh trò bit baäc cao nhaát MSB. Veà maët sai soá toaøn phaàn, thì ñieän trôû naøy coù aûnh höôûng lôùn nhaát, ñieàu ñoù coù nghóa laø ñoái vôùi caùc chuyeån ñoåi 12 bit thì ñieän trôû R11 ít nhaát phaûi ñaûm baûo yeâu caàu ñoä chính xaùc sau:
ΔR11 R11
=
(
1
) = 0,00024 = 0,024% .
2 2 −1
GV: Nguyễn Trọng Hải
11
Trang 164
Bài Giảng Kỹ Thuật Số
Chương 6
Maïng chuoãi ñieän trôû. Nhöôïc ñieåm neâu treân, thoâng thöôøng laø do söû duïng ñieän trôû ñöôïc cheá xuaát haøng loaït, theo trò soá chuaån hoaù vôùi ít trò soá ñònh möùc khaùc nhau. Coù theå khaéc phuïc nhöôïc ñieåm ñoù baèng caùch söû duïng maïng chuoãi ñieän trôû R-2R. Phaàn lôùn caùc chuyeån ñoåi D/A söû duïng chuoãi ñieän trôû ñoù laøm nhöõng boä phaân aùp vaø phaân doøng maëc ñònh. Sô ñoà maïch töông öùng chæ duøng caùc ñieän trôû R vaø 2R nhö sau .
Hình a laø sô ñoà coù nguoàn doøng; hình b laø sô ñoà töông ñöông giöõa nuùt i vaø (i+1) khi zi =1 caùc maïch khaùc môû; hình c laøsô ñoà nguyeân lyù coù nguoàn aùp. Sô ñoà töông ñöông hình b bieåu thò töông quan giöõa hai nuùt i vaø (i+1), coù theå theo nguyeân taéc phaân doøng, quy ñònh tyû leä doøng I i +1 vaø I i luoân baèng 1/2: .
I i +1 I i = 1 2
Trong ñoù, giaû ñònh raèng maïch thuoäc bit nhò nguyeân thöù i laø ñoùng, trong khi taát caû caùc bit nhò nguyeân khaùc ñeàu ñang môû. Maët khaùc, tyû leä 1/2 ñuùng baèng chæ trò troïng soá nhò phaân cuûa chuyeån maïch Si . Vôùi I ref = I i +1 + I i thì ñieän aùp u i baèng:
GV: Nguyễn Trọng Hải
Trang 165
Bài Giảng Kỹ Thuật Số
ui = I i R =
Chương 6
2 I ref R . 3
Do phaân aùp giöõa caùc nuùt i vaø (i+1) ta coù: u i +1 1 = ui 2
.
Xaùc ñònh ñieän aùp ñaàu ra u ra baèng caùch aùp duïng nguyeân lyù sieâu vò:
u ra =
N −1 2 I ref R ∑ S i 2 i − N +1 , 3 i =0
vaø ñaùnh giaù troïng soá nhò phaân cuûa ñieän aùp thaønh phaàn u i . Trong phöông aùn sô ñoà hình c, thay vì nguoàn doøng N caàn coù nguoàn aùp quy chieáu. Töø thaønh phaàn ñieän aùp ñaët tröôùc, xaùc ñònh ñöôïc ñieän aùp ñaàu ra u ra : N −1 2 u ra = U ref ∑ S i 2 i − N +1 . 3 i =0
6.2.2. MỘT SỐ IC DAC CHUYÊN DỤNG
•
DAC 0808 laø boä chuyeån ñoåi DAC 8bit
Caùc thoâng soá vaø ñaëc tính kyõ thuaät SV töï tra taøi lieäu
GV: Nguyễn Trọng Hải
Trang 166
MUÏC LUÏC TOÅNG QUAN .................................................................................................... Trang 1 CHÖÔNG 1. HEÄ THOÁNG SOÁ ÑEÁM ........................................................................... 4 1.1. Cô soá – chuyeån ñoåi cô soá..................................................................................4 1.2. Caùc boä maõ hoùa soá heä möôøi thoâng duïng ..........................................................14 CHÖÔNG 2. ÑAÏI SOÁ BOOLEAN VAØ CAÙC COÅNG LOGIC .................................. 24 2.1. Khaùi nieäm veà logic hai traïng thaùi ...................................................................24 2.2. Baûng söï thaät ....................................................................................................24 2.3. Caùc pheùp toaùn cô baûn .....................................................................................25 2.4. Moâ taû caùc maïch logic theo phöông phaùp ñaïi soá .............................................25 2.5. Thöïc hieän caùc maïch logic töø bieåu thöùc Boolean.............................................25 2.6. Coång NOR vaø NAND .....................................................................................26 2.7. Pheùp toaùn XOR vaø pheùp toaùn töông ñöông ....................................................27 2.8. Caùc ñònh lyù cô baûn cuûa ñaïi soá Boolean...........................................................27 2.9. Logic döông vaø aâm .........................................................................................31 2.10. Caùc haøm cô baûn vaø phöông phaùp bieåu dieãn ..................................................23 2.11. Toái thieåu haøm logic baèng bìa K ....................................................................38 CHÖÔNG 3. MAÏCH LOGIC TOÅ HÔÏP ..................................................................... 45 3.1. Giôùi thieäu ........................................................................................................45 3.2. Thieát keá maïch logic toå hôïp .............................................................................45 3.3. Kyõ thuaät cöïc tieåu Quine-Mc Cluskey .............................................................47 3.4. Thieát keá maïch khoâng söû duïng baûng söï thaät ....................................................49 3.5. Maïch giaûi maõ ..................................................................................................53 3.6. Maïch maõ hoùa ..................................................................................................59 3.7. Boä choïn keânh..................................................................................................62 3.8. Boä phaân keânh..................................................................................................65 3.9. Maïch soá hoïc ....................................................................................................67 3.10. Maïch chuyeån maõ .........................................................................................69
CHÖÔNG 4. HEÄ TUAÀN TÖÏ....................................................................................... 74 4.1. Toång quan .......................................................................................................74 4.2. Caùc phaàn töû hai traïng thaùi beàn........................................................................75 4.3. FlipFlop...........................................................................................................76 4.4. FlipFlop duøng xung clock................................................................................79 4.5. Caùc öùng duïng cuûa FlipFlop.............................................................................83 4.6. Maùy traïng thaùi ..............................................................................................104 4.7. Löu ñoà maùy traïng thaùi ..................................................................................105 4.8. Boä nhôù baùn daãn .............................................................................................116 4.9. ROM – thieát keá heä thoáng soá duøng ROM ......................................................118 4.10. PLD toå hôïp ..................................................................................................127 4.11. PLD tuaàn töï.................................................................................................132 4.12. Caùc PLD tuaàn töï khaùc .................................................................................135 CHÖÔNG 5. CAÙC HOÏ VI MAÏCH SOÁ..................................................................... 146 5.1. Toång quan .....................................................................................................146 5.2. Caùc ñaëc tröng cuûa vi maïch soá .......................................................................146 5.3. Hoï RTL .........................................................................................................148 5.4. Hoï DTL.........................................................................................................148 5.5. Hoï TTL .........................................................................................................148 5.6. Caùc ñaëc ñieåm cuûa hoï TTL chuaån..................................................................149 5.7. Hoï TTL caûi tieán ............................................................................................150 5.8. Hoï TTL vôùi ngoõ ra cöïc thu hôû ......................................................................150 5.9. Hoï TTL ba traïng thaùi ....................................................................................151 5.10. Maïch logic MOS .........................................................................................151 5.11. Hoï CMOS ...................................................................................................151 5.12. Moät soá vi maïch thoâng duïng ........................................................................152 CHÖÔNG 6. GIAO TIEÁP TÖÔNG TÖÏ - SOÁ ........................................................... 153 6.1. Bieán ñoåi ADC ...............................................................................................153 6.2. Bieán ñoåi DAC ...............................................................................................160 PHUÏ LUÏC A. TRA CÖÙU CAÙC IC THOÂNG DUÏNG..............................................167 PHUÏ LUÏC B. COÂNG CUÏ CAD TRONG THIEÁT KEÁ SOÁ .....................................251
Bài Giảng Kỹ Thuật Số
Phụ lục B
PHỤ LỤC B I.
NGOÂN NGÖÕ LAÄP TRÌNH CHO PLD Cuõng gioáng nhö ROM hay PROM, moät PLD cuõng ñöôïc laäp trình ñeå taïo ra file ñoát caùc caàu chì hay diode. Ngoân ngöõ söû duïng ñeå laäp trình cho PLD trong chöông trình naøy laø ABEL (Advanced Boolean Equation Language) laø moät trong nhöõng ngoân ngöõ laäp trình raát maïnh cho PLD, hoã trôï cho nhieàu ngoõ vaøo, bao goàm caû sô ñoà traïng thaùi vaø baûng söï thaät. Trình bieân dòch cuûa ABEL coù khaû naêng moâ phoûng vaø taïo file fuse map (caàu chì) cho PLD. Trong phuï luïc naøy chæ toùm taét höôùng daãn söû duïng caùc phaàn caáu truùc vaø cuù phaùp veà caùc phaùt bieåu, khai baùo, chæ daãn…chuû yeáu nhaát ñeå phuïc vuï cho caùc baøi thí nghieäm sau ñoù. Ñeå hieåu saâu hôn veà ngoân ngöõ naøy, sinh vieân neân tham khaûo theâm caùc taøi lieäu khaùc hoaëc phaàn help trong ngoân ngöõ. Ngoaøi ABEL coøn coù caùc ngoân ngöõ khaùc nhö VHDL, AHDL…
CAÁU TRUÙC CUÛA MOÄT CHÖÔNG TRÌNH ABEL module module name title string deviceID device deviceType; pin declarations other declarations equations equations test_vectors end module name Module. Teân chöông trình vaø caùc thoâng soá hình thöùc Title. Duøng ñeå moâ taû module Declaration. Moâ taû caùc module caáp thaáp hôn, ñònh nghóa caùc khoái chöùc naêng nhö devive, pin, node, constant, macro, caùc taäp hôïp,… Equations. Söû duïng caùc haøm, caùc löu ñoà traïng thaùi hay baûng söï thaät ñeå moâ taû caùc thieát keá logic Test_vectors. Test_vectors sö duïng trong caùc file moâ phoûng JEDEC End. Keát thuùc moät module GV: Nguyễn Trọng Hải
Trang 251
Bài Giảng Kỹ Thuật Số
Phụ lục B
Löu yù: caáu truùc ôû treân bao goàm caùc thaønh phaàn cô baûn cuûa moät chöông trình ABEL, tuøy vaøo nhöõng öùng duïng cuï theå coù theå seõ coù theâm caùc phaùt bieåu khaùc nhö maùy traïng thaùi, v.v…
1. CAÙC PHAÙT BIEÅU (STATEMENTS) 1.1.
Phaùt bieåu Module Cuù phaùp
module modname [( dummy_arg[,….])]
Muïc ñích:
Phaùt bieåu module xaùc ñònh ñieåm baét ñaàu cuûa moät chöông trình vaø phaûi coù phaùt bieåu END ñeå xaùc ñònh ñieåm keát thuùc cuûa module
Söû duïng
Modname laø moät danh hieäu hôïp leä ñöôïc ñaët laøm teân goïi cho module chöông trình Danh hieäu hôïp leä laø moät chuoãi daøi toái ña 31 kyù töï (chöõ caùi, chöõ soá, daáu gaïch döôùi’_’), ñöôïc baét ñaàu baèng chöõ caùi hay daáu gaïch döôùi ’_’. Danh hieäu phaân bieät chöõ hoa hay chöõ thöôøng. Dummy_arg (coù theå coù) : laø moät thoâng soá hình thöùc (töông töï nhö trong ngoân ngöõ hôïp dòch)
Ví duï
MODULE My_Example … END My_Example Module coù teân My_Example vaø phaùt bieåu END My_Example keát thuùc module naøy.Trong module naøy khoâng söû duïng thoâng soá hình thöùc. MODULE My_Example (A,B) … C=A+B END My_Example Trong module naøy coù söû duïng hai thoâng soá hình thöùc A vaø B, bieåu thöùc C=A+B, vôi A,B ñöôïc traû veà gía trò thöïc (töø module khaùc) khi bieân dòch
1.2.
Phaùt bieåu Title Cuù phaùp
title ‘string’
Muïc ñích:
Phaùt bieåu title ñaët cho module moät töïa ñeà (header) ñeå minh hoïa ñaëc ñieåm chöùc naêng do ngöôøi laäp trình taïo ra.Chuoãi kyù töï seõ xuaát hieän trong caû file döõ lieäu vaø file fusemap sau khi bieân dòch
Söû duïng
string: laø chuoãi kyù töï naèm trong hai daáu nhaùy ñôn (‘) vaø giôùi haïn 324 kyù töï Söû duïng phaùt bieåu tilte laø tuøy choïn
Ví duï
module m6809a
GV: Nguyễn Trọng Hải
Trang 252
Bài Giảng Kỹ Thuật Số
Phụ lục B
title ’6809 memory decode Jean Designer Data I/O Corp Redmond WA’ 1.3.
Phaùt bieåu equations Cuù phaùp
equations element [?] = condition; when-then-else_statement;
Muïc ñích:
Phaùt bieåu equations ñònh choã baét daàu cuûa moät hay moät nhoùm bieåu thöùc Boole bieãu dieãn haøm logic ngoõ ra theo ngoõ vaøo
Söû duïng
condition. Moät moâ taû element. teân danh ñònh cuûa moät tín hieäu, taäp caùc tín hieäu hay tín hieäu thöïc maø moâ taû giaù trò cuûa noù ñöôïc gaùn when-then-else_statement: phaùt bieåu when-then-else Sau moãi bieåu thöùc phaûi coù daáu chaám phaåy (;)
Ví duï
Equations A = B&C#A; [W,Y] = 3; !F = (B = =C);
1.4.
Phaùt bieåu Truth_table Cuù phaùp hay Muïc ñích:
Söû duïng
Ví duï
truth_table (inputs -> outputs) truth_table (inputs : > reg_outs)
Truth_table trình baøy baûng söï thaät minh hoïa ngoõ ra nhö moät haøm toå hôïp cuûa caùc ngoõ vaøo
Caùc baûng söï thaät coù theå thay theá hoaëc boå sung theâm cho caùc bieåu thöùc (trong equations) hay sô ñoà traïng thaùi (trong state_diagram) inputs : laø caùc ngoõ vaøo cuûa haøm logic outputs : laø caùc ngoõ ra cuûa haøm logic reg_outs : laø caùc ngoõ ra cuûa caùc thanh ghi (FF) Daáu -> bieãu dieãn heä toå hôïp Daáu : > bieãu dieãn heä tuaàn töï Truth_table ([A,B] -> C) [0,1] -> 1; [1,0] -> 1; [1,1] -> 0; [0,0] -> 0; Roõ raøng truth_table ôû treân bieãu dieãn bieåu thöùc C=A+B
GV: Nguyễn Trọng Hải
Trang 253
Bài Giảng Kỹ Thuật Số 1.5.
Phụ lục B
Phaùt bieåu state_diagram Cuù phaùp
State_diagram state variables State state_exp:[equations]; . . [trans-stmt…];
Muïc ñích:
Phaùt bieåu state_diagram ñònh nghóa caùc bieán traïng thaùi baét ñaàu söï moâ taû hoaït ñoäng cuûa maùy traïng thaùi (töông töï nhö ñoà thò traïng thaùi hay löu ñoà maùy traïng thaùi)
Söû duïng
state_variables: laø taäp hôïp caùc bieán traïng thaùi trong maùy traïng thaùi state: laø töø khoùa ñeå bieãu dieãn söï chuyeån bieán töø traïng thaùi hieän taïi sang traïng thaùi keá tieáp vaø ngoõ ra hieän taïi state_exp : laø bieåu thöùc hay haèng soá ñòng nghóa traïng thaùi hieän taïi equations: laø caùc bieåu thöùc logic ngoõ ra hieän taïi cuûa maùy traïng thaùi trans_stmt : laø moät phaùt bieåu daïng IF – THEN – ELSE , GOTO, CASE (tuøy choïn) ñeå moâ taû söï chuyeån bieán töø traïng thaùi hieän btaïi sang traïng thaùi keá tieáp theo ñieàu kieän taùc ñoäng cuûa ngoõ vaøo
Ví duï
1.6.
Giaû söû ta coù 2 ngoõ vaøo x1 vaø x2, ngoõ ra laø z, maùy traïng thaùi coù 3 traïng thaùi kyù hieäu S0,S1,S2, 2 bieán traïng thaùi Q = [Q0,Q1] (2 ngoõ ra cuûa FF) State_diagram Q State S0: if (x1&x2 = =0) then S2 S0 Else S1 State S1: z=1; 1 0 x1x2 Go to S2; State S2: z=0; z=1 S1 S2 z=0 Go to S0;
Phaùt bieåu goto Cuù phaùp
Goto state_exp
Muïc ñích:
Phaùt bieåu goto bieãu dieãn söï chuyeån bieán khoâng ñieàu kieän töø traïng thaí hieän taïi sang traïng thaùi keá tieáp laø state_exp.
Söû duïng
State_exp: laø bieåu thöùc bieãu dieãn traïng thaí keá tieáp
Ví duï
Si: goto Sj; nhaûy ñeán traïng thaùi Sj
GV: Nguyễn Trọng Hải
Trang 254
Bài Giảng Kỹ Thuật Số 1.7.
Phụ lục B
If – then – else Cuù phaùp hay
If exps then state_exp1 [else state_exp2]; if exp1 then state_exp1 else if exp2 then state_exp2 [else if….] else state_expn;
Muïc ñích: Phaùt bieåu if – then – else : moâ taû söï chuyeån hoùa traïng thaùi theo ñieàu kieän ngoõ vaøo. Neáu bieåu thöùc ngay sau töø khoùa if laø ñuùng , chuyeån bieán höôùng ñeán traïng thaùi ngay sau töø khoùa then; neáu sai chuyeån bieán höôùng ñeán trang thaùi ngay sau töø khoùa else. Söû duïng
exps: laø bieåu thöùc baát kyø hôïp leä naøo state_exp1, state_exp2…..: laø bieåu thöùc bieãu dieãn traïng thaùi keá tieáp. Caùc phaùt bieåu if – then – else coù theå ñöôïc noái vôùi nhau lieân tieáp nhöng keát thuùc phaûi laø daáu chaám phaåy.
Ví duï
State 1 : if (A = = B) then 2; “neáu A = b chuyeån ñeán traïng thaùi 2 State 2 : if A then 3 else 4; “ neáu A ñuùng (≠0) chuyeån ñeán traïng thaùi 3 “ neáu A sai (=0) chuyeån ñeán traïng thaùi 4 state 0 : if a then 1 else if b then 2 else if c then 3 else 0;
1.8.
Phaùt bieåu case Cuù phaùp
Case [exps1 : state+exp1;] [expsi : state_expi;] end case;
Muïc ñích:
Phaùt bieåu case moâ taû söï chuyeån bieán traïng thaùi trong tröôøng hôïp coù nhieàu ñieàu kieän taùc ñoäng.
Söû duïng
Traùnh khoâng ñeå 2 ñieàu kieän xaûy ra cuøng luùc vaø traùnh tröôøng hôïp keát quaû traïng thaùi keá khoâng ñoaùn tröôùc ñöôïc
Ví duï
STATE S0: CASE (sel == 0): S0 ; (sel == 1): S1 ; ENDCASE
GV: Nguyễn Trọng Hải
Trang 255
Bài Giảng Kỹ Thuật Số 1.9.
Phụ lục B
Phaùt bieåu test_vectors: Cuù phaùp
Text vectors[‘note’] (inputs → outputs) [invalues → out values]
Muïc ñích: Caùc test_vectors duøng ñeå moâ phoûng hoaït ñoäng cuûa heä vaø kieåm tra caùc chöùc naêng hoaït ñoäng cuûa heä khi chaïy chöông trình moâ phoûng Söû duïng
note: laø moät chuoãi kyù töï ñeå moâ taû caùc text_vectors inputs : laø 1 danh ñònh hay taäp hôïp caùc danh ñònh teân caùc tín hieäu vaøo hay hoài tieáp veà ngoõ vaøo cuûa heä. Outputs : laø 1 danh ñònh hay taäp hôïp caùc danh ñònh teân caùc tín hieäu ra cuûa heä. Invalues : laø 1 hay taäp hôïp caùc giaù trò vaøo Outvalues : laø 1 hay taäp hôïp caùc giaù trò ra laø haøm logic cuûa caùc giaù trò vaøo vaø gía trò traïng thaùi (heä tuaàn töï)
Ví duï
equations C = A&B; “C = A.B D = A#B; “D = A+B Text_vectors ([A,B]→[C,D]) [0,0]→[0,0] [0,1]→[0,1] [1,0]→[0,1] [1,1]→[1,1]
1.10. Phaùt bieåu istype Cuù phaùp
Signal [ , signal] … istype ’attr[ , attr]…’;
Hay signal [ , signal] … pin istype ‘attr[ , attr]… ‘; Muïc ñích: Phaùt bieåu istype ñònh nghóa caùc thuoäc tính cuûa pin hay node laäp trình ñöôïc cuûa caùc duïng cuï (PLD). Caùc thuoäc tính cuûa pin hay node coù theå khai baùo cuøng moät doøng Söû duïng
signal: laø moät danh hieäu pin hay node attr: laø moät chuoãi kyù töï xaùc ñònh caùc thuoäc tính cuûa caùc signal Caùc thuoäc tính hôïp leä laø: ‘buffer’ : ñeäm ‘com’ : heä toå hôïp ‘invert’ : ñaûo ‘neg’ : tính cöïc möùc thaáp ‘pos’ : tính cöïc möùc cao ‘reg’ : thanh ghi (heä tuaàn töï) ‘reg_D’,’reg_T’,’reg_JK’,’reg_SR’ : caùcFF, D, T, JK, SR
GV: Nguyễn Trọng Hải
Trang 256
Bài Giảng Kỹ Thuật Số Ví duï
Phụ lục B
F0, A istype ‘neg , reg’; istype ñònh nghóa F0 , A laø tín hieäu cuûa thanh ghi , taùc ñoäng möùc thaáp outputs pin 15 istype ‘reg , invert’ tín hieäu output chaân 15 cuûa thanh ghi ngoõ ñaûo (ngoõ ra Q )
1.11. Phaùt bieåu end End
Cuù phaùp Hay
end modname
Muïc ñích: Duøng keát hôïp vôùi caùc phaùt bieåi module ñeå môû ñaàu vaø keát thuùc module chöông trình Söû duïng
signal: laø moät danh hieäu pin hay node attr: laø moät chuoãi kyù töï xaùc ñònh caùc thuoäc tính cuûa caùc signal Caùc thuoäc tính hôïp leä laø: ‘buffer’ : ñeäm ‘com’ : heä toå hôïp ‘invert’ : ñaûo ‘neg’ : tính cöïc möùc thaáp ‘pos’ : tính cöïc möùc cao ‘reg’ : thanh ghi (heä tuaàn töï) ‘reg_D’,’reg_T’,’reg_JK’,’reg_SR’ : caùcFF, D, T, JK, SR
Ví duï
F0, A istype ‘neg , reg’; istype ñònh nghóa F0 , A laø tín hieäu cuûa thanh ghi , taùc ñoäng möùc thaáp outputs pin 15 istype ‘reg , invert’ tín hieäu output chaân 15 cuûa thanh ghi ngoõ ñaûo (ngoõ ra Q )
2. CAÙC KHAI BAÙO (DECLARATIONS) 2.1.
Pin Cuù phaùp
[!]pin_id[,[l]pin_id…]pin[pin#[,pin#]] istype ’attr’];
Muïc ñích: Töø khoùa pin duøng ñeå khai baùo nhöõng tín hieäu input vaø output, laø nhöõng tín hieäu in/out quy ñònh saün treân duïng cu ï(theo soå tra cöùu). Khai baùo cuõng coù theå ñònh nghóa thuoäc tính chaân Khi 1 danh saùc danh ñònh chaân vaø soá chaân coù trong cuøng moät khai baùo chaân , seõ coù söï töông öùng 1-1 giöõa danh ñònh chaân vaø soá chaân Söû duïng
pin_id: laø moät danh hieäu duøng ñeå ñaët teân cho 1 chaân pin #: laø soá thöù töï chaân treân duïng cuï (PLD)thaät
GV: Nguyễn Trọng Hải
Trang 257
Bài Giảng Kỹ Thuật Số
Phụ lục B
attr: laø moät chuoãi xaùc ñònh caùc thuoäc tính cuûa chaân !: kyù hieäu NOT,tích cöïc möùc thaáp Ví duï
!clock,reset,S1 pin 12,15,3; khai baùo naøy gaùn teân chaân: clock chaân 12, reset chaân 15, S1 chaân 3 !clock: tích cöïc möùc 0
2.2.
Node Cuù phaùp
[!]node_id[,[!]node_id … ]node[node#[,node# …][istype ’attr’];
Muïc ñích: Töø khoùa node duøng ñeå khai baùo nhöõng tín hieäu gaùn cho nhöõng nuùt aån trong duïng cuï Söû duïng
node_id: laø moät danh hieäu duøng ñeå ñaët teân moät nuùt node#: laø soá thöù töï nuùt treân duïng cuï thaät (nuùt töông ñöông nhö chaân aån trong duïng cuï vaø soá nuùt ñöôïc cho trong soå tay tra cöuù)
Ví duï
B node istype’reg’ : xaùc ñònh nuùt B laø 1 ngoõ cuûa FF trong duïng cuï A,B node 25,26 : gaùn teân A laø nuùt 25, gaùn teân B laø nuùt 26. Soá nuùt naøy do nhaø saûn xuaát quy ñònh trong soå tay tra cöùu
2.3.
Duïng cuï (Device) Cuù phaùp
Device-id device real_device;
Muïc ñích: Khai baùo device cho moät PLD thaät. Trong quaù trình bieân dòch, caùc haøm logic seõ ñöôïc ñöa veà daïng theo caáu truùc coång ñuùng nhö cuûa duïng cuï thaät. Söû duïng
device-id: laø moät danh hieäu, chính laø teân file fusemap real-device: moâ taû maõ soá duïng cuï (PLD) ñaët giöõa 2 daáu nhaùy ñôn (‘) Phaûi ñaët daáu ; sau khai baùo
Ví duï
D1 device ‘P16R4’: khai baùo naøy cho bieát D1 laø loaïi PLD PAL 16R4
3. CAÙC KHAI BAÙO KHAÙC (OTHER DECLARATIONS) 3.1.
Haèng (constant) Cuù phaùp
id[,id]… = expr[,expr] …;
Muïc ñích: Khai baùo haèng ñònh nghóa nhöõng haèng soá ñöôïc duøng trong 1 module Söû duïng
id: laø moät danh hieäu ñaët teân cho 1 haèng expr: xaùc ñònh gía trò haèng
Ví duï
X = .X.;
GV: Nguyễn Trọng Hải
“X mang yù nghóa khoâng xaùc ñònh Trang 258
Bài Giảng Kỹ Thuật Số
3.2.
Phụ lục B
Z = .Z.;
“Z mang yù nghóa toång trôû cao
C = .C.
“C mang yù nghóa taùc ñoäng caïnh leân
A = ^b01 ;
“soá nhò phaân
B = ^h16;
“soá hex
C = 10;
“soá thaäp phaân
Taäp hôïp (set) Ñònh nghóa
Taäp hôïp laø taäp hôïp nhöõng tính hieäu vaø haèng soá maø taùc vuï thöïc hieän nhö laø 1 ñôn vò Baát cöù taùc vuï naøo aùp duïng cho 1 taäp hôïp seõ ñöôïc aùp duïng cho moãi phaàn töû trong taäp hôïp Taäp hôïp seõ laøm ñôn giaûn vieäc moâ taû logic vaø caùc test-vectors baèng caùch chæ caàn duøng teân goïi taäp hôïp
Söû duïng
Moät taäp hôïp ñöôïc ñaïi dieän bôûi 1 danh saùch caùc haèng soá vaø tín hieäu ngaên caùch baèng caùc daáu chaám phaåy hay daáu khoaûng (..), ñaët trong daáu ngoaëc vuoâng ([ ]). Sau moãi khai baùo taäp hôïp phaûi coù daáu ;
Ví duï
MULOUT = [B0,B1,B2,B3,B4,B5,B6,B7]; hay
MULOUT = [B0…B7];
MULOUT laø khai baùo laø teân moät taäp hôïp goàm 8 tín hieäu töø B0 ñeán B7 BCD = [D,C,B,A] LED = [g,f,e,d,c,b,a] Test-vectors (BCD → LED) [0,0,0,0] →[1,0,0,0,0,0,0] BCD laø 1 taäp hôïp goàm caùc tín hieäu D,C,B,A LED laø 1 taäp hôïp goàm caùc tín hieäu g,f,e,d,c,b,a 3.3.
Macro Cuù phaùp
Macro_id macro [(dummy_arg [, dummy_arg]…)]{block};
Muïc ñích: Khai baùo macro ñònh nghóa 1 macro thöïc hieän caùc chöùc naêng, caùc pheùp toaùn,bieåu thöùc logic trong moät khoái Chæ ñònh nghóa macro 1 laàn trong phaàn khai baùo macro trong module vaø seõ ñöôïc duøng baát cöù nôi naøo trong module Khai baùo macro töông töï nhö trong trình hôïp ngöõ Macro chæ coù theå ñöôïc duøng trong module maø noù ñöôïc khai baùo GV: Nguyễn Trọng Hải
Trang 259
Bài Giảng Kỹ Thuật Số
Phụ lục B
macro_id: laø moät danh hieäu ñaët teân cho macro dummy_arg: laø moät thoâng soá hình thöùc block: laø caùc bieåu thöùc logic
Söû duïng
Ví duï
NAND3 macro (A,B,C) {!(A&B&C)} NAND3 laø macro thöïc hieän chöùc naêng haøm logic A.B.C vôùi A,B,C laø caùc thoâng soá hình thöùc Sau ñoù trong module khai baùo macro naøy ta coù khai baùo: D = NAND 3 (Clock, Hello, busy); Keát quûa laø: D = !(Clock&Hello&Busy) khi bieân dòch
3.4.
Enable Cuù phaùp
Enable output_id = [!]expr;
Muïc ñích: Khai baùo enable cho pheùp caùc ngoõ ra 3 traïng thaùi hoaït ñoäng theo tín hieäu ñieàu khieån bôûi gía trò cuûa expr Söû duïng khai baùo naøy theo sau phaùt bieåu equations Söû duïng
output_id: laø danh hieäu ñaët teân cho 1 ngoõ ra hoaëc 1 taäp hôïp ngoõ ra expr: laø 1 bieåu thöùc logic
Ví duï
OE pin11; F0,F1,F2,F3 pin 19,18,17,16; Count = [F0,F1,F2,F3]; Equations Enable count = !OE Caùc ngoõ ra töø F0 ñeán F3 trong taäp hôïp count laø caùc ngoõ ra 3 traïng thaùi , seõ hoaït ñoäng khi OE = 0 vaø seõ ôû traïng thaùi high-Z khi OE = 1 Coù theå söû duïng tieáp vó ngöõ .OE thay cho khai baùo enable (xem phaàn tieáp vó ngöõ)
4. CAÙC TOAÙN TÖÛ (OPERATORS) 4.1.
Toaùn töû chuaån (standard) !
NOT
=
toaùn töû gaén cho bieåu thöùc toå hôïp
#
OR
:=
toaùn töû gaùn cho bieåu thöùc thanh ghi (tuaàn töï)
&
AND
$
XOR
!$
XNOR
GV: Nguyễn Trọng Hải
Trang 260
Bài Giảng Kỹ Thuật Số
Phụ lục B
Ngoaøi ra töø khoaù @ALTERNATE baùo cho trình bieân dòch bieát boä toaùn töû töông ñöông (alternate) thay theá cho boä toaùn töû chuaån (caùc kyù hieäu deã nhôù hôn) Boä toaùn töû thay theá (phaûi coù töø khoaù @ALTERNATE ôû ñaàu module chöông trình) / * + :+: :*: 4.2.
NOT AND OR XOR XNOR Toaùn töû so saùnh
==
baèng
!=
khoâng baèng
<
nhoû hôn
>
lôùn hôn
<=
nhoû hôn hoaëc baèng
>=
lôùn hôn hoaëc baèng
Ngoaøi ra coøn cho pheùp vieát caùc bieåu thöùc ñieàu kieän , bieåu thöùc naøy seõ traû veà 1 neáu thoaû ñieàu kieän vaø traû veà 0 neáu khoâng thoûa ñieàu kieän Ví duï Q = (P = =1);
“Q seõ baèng 1 neáu P =1 vaø Q seõ baèng 0 neáu P khaùc 1
5. CAÙC TIEÁP ÑAÀU NGÖÕ (Prefix), tieáp vó ngöõ (suffix) 5.1.
Tieáp ñaàu ngöõ
Toùan töû Not (! hay /) ñöôïc duøng nhö tieàp ñaàu ngöõ ñeå baùo trình bieân dòch bieát tín hieäu hoaït ñoäng (tích cöïc) ôû möùc logic Ví duï: 5.2.
!Q0 pin 15; töông ñöông vôùi Q0 pin 15 istype ‘neg’;
Tieáp vó ngöõ
Caùc tieáp vó ngöõ thöôøng ñöôïc duøng trong cheá ñoä thanh ghi ñeå truy xuaát ñeán töøng chaân noäi trong thanh ghi Ví duï Q0.CK truy xuaát ñeán chaân clock cuûa tín hieäu ra Q0 ôû cheá ñoä thanh ghi Töông töï nhö ñoái vôùi .RE,.PR,.D,.T….. laàn löôït truy xuaát ñeán caùc chaân reset,preset,D,T cuaû thanh ghi Tieáp vó ngöõ .OE cho pheùp xuaát ôû ngoõ ra 3 traïng thaùi Ví duï out.oe = !ena; ena =0 → ngoõ ra out ñöôïc pheùp xuaát ena = 1 → ngoõ ra out ôû traïng thaùi high-Z GV: Nguyễn Trọng Hải
Trang 261
Bài Giảng Kỹ Thuật Số
Phụ lục B
6. GHI CHUÙ (Comments) Caùc ghi chuù minh hoaï , giaûi thích cuûa chöông trình baét ñaàu baèng daáu nhaùy keùp (“)vaø keát thuùc baèng daáu nhaùy keùp (“) hoaëc xuoáng doøng. Ví duï Q1,Q2,Q3, pin 14,15,16 “outputs “declarations QSTATE = [Q1,Q2,Q3]; “sets
GV: Nguyễn Trọng Hải
Trang 262
Bài Giảng Kỹ Thuật Số
Phụ lục B
BAØI THÍ NGHIEÄM BIEÂN DÒCH VAØ MOÂ PHOÛNG ABEL A. MUÏC ÑÍCH – YEÂU CAÀU BAØI THÍ NGHIEÄM: •
Giuùp sinh vieân naém ñöôïc kyõ thuaät laäp trình vaø bieân dòch ngoân ngöõ ABEL trong thieát keá PLD (caùc daïng hoài tieáp, khoâng hoài tieáp, thanh ghi…)
•
SV phaûi ñoïc kyõ tröôùc baøi cô sôû lyù thuyeát vaø oân laïi kieán thöùc veà kyõ thuaät soá
•
SV phaûi nhaäp saün caùc baøi thí nghieäm vaøo ñóa meàm
B. THIEÁT BÒ SÖÛ DUÏNG: Maùy vi tính + chöông trình
•
C. NOÄI DUNG THÍ NGHIEÄM: 1. Thí nghieäm 1 Muïc ñích: Duøng caùc bieåu thöùc trong equations ñeå thöïc hieän maïch (mode ñôn). Thieát keá boä MUX 12 → 4 duøng GAL16V8 nhö hình sau A0 A1 A2 A3 B0 B1 B2 B3 C0 C1
1 2 3 4 5 6 7 8 9 11
U2 I0 I1 I2 I3 I4 I5 I6 I7 I8 I9
F0 F1 F2 F3 F4 F5 F6 F7
12 13 14 15 16 17 18 19
C2 C3 Y0 Y1 Y2 Y3 S1 S0
16V8
Caùc ngoõ vaøo: [a3,a2,a1,a0], [b3,b2,b1,b0], [c3,c2,c1,c0] Ngoõ ra : [y0, y1, y2, y3] •
Ñieàu khieån choïn keânh : [S1, S0] Chöông trình 1 2 3 4 5
Module mux12t4 title '12 to 4 multiplexer Thi nghiem 1' “Cac khai bao mux12t4 device 'P16V8S';
6 7 8 9 10
a0,a1,a2,a3 b0,b1,b2,b3 c0,c1,c2,c3 s1,s0 y0,y1,y2,y3
GV: Nguyễn Trọng Hải
pin pin pin pin pin
1,2,3,4; 5,6,7,8; 9,11,12,13; 18,19; 14,15,16,17;
Trang 263
Bài Giảng Kỹ Thuật Số 11 12 13 14 15 16 17 18
•
Phụ lục B
H = [1,1,1,1]; L = [0,0,0,0]; X = [.x.,.x.,.x.,.x.]; select = [s1, s0]; y = [y3,y2,y1,y0]; a = [a3,a2,a1,a0]; b = [b3,b2,b1,b0]; c = [c3,c2,c1,c0];
19 20 21 22 23
equations y = (select (select (select (select
24 25 26 27 28 29 30 31 32 33 34 35 36 37
test_vectors ([select, a, b, c] -> y) [0 , 1, X, X] -> 1; [0 ,10, H, L] -> 10; [0 , 5, H, L] -> 5; [1 , H, 3, H] -> 3; [1 ,10, 7, H] -> 7; [1 , L,15, L] -> 15; [2 , L, L, 8] -> 8; [2 , H, H, 9] -> 9; [2 , L, L, 1] -> 1; [3 , H, H, 0] -> 0; [3 , L, L, 9] -> 9; [3 , H, L, 0] -> 0; end
== == == ==
0) 1) 2) 3)
& & & &
a b c c
# # # ;
Giaûi thích chöông trình -
-
-
Doøng 1 khai baùo teân module laø mux12t4 Doøng 2,3 khai baùo teân title vaø ñaët teân Doøng 4 laø chuù thích Doøng 5 khai baùo duïng cuï (device) teân U1 vaø duøng vi maïch 16V8S (simple mode) Doøng 6,7,8,9,10 laø khai baùo gaùn teân caùc chaân töông öùng nhö hình Doøng 11, 12, 13 laø khai baùo haèng : L = 0, H = 1, X=tuøy ñònh Doøng 14,15,16,17,18 laø khai baùo taäp hôïp : select = [S1,S0] laø taäp goàm 3 bieán ñieàu khieån choïn keânh, töông töï cho taäp a, b, c, y. Vieäc khai baùo taäp hôïp naøy seõ raát tieän khi ta caàn tham chieáu tôùi caùc ngoõ ñieàu khieån hoaëc ngoõ ra ôû phaàn sau ñoù Doøng 19 baét ñaàu phaùt bieåu equations. Giaù trò gaùn cho toaùn töû ‘baèng’ duøng heä thaäp phaân. Neáu duøng heä nhò phaân ta ghi : (select = = ^b00) Doøng 24 baét ñaàu phaùt bieåu test_vectors ñeå kieåm tra chöùc naêng cuûa heä, khai baùo caùc tín hieäu ngoõ vaøo vaø ngoõ ra caàn kieåm tra Ngoõ vaøo laø taäp hôïp caùc bieán select, a, b, c. Ngoõ ra laø taäp hôïp caùc bieán y
GV: Nguyễn Trọng Hải
Trang 264
Bài Giảng Kỹ Thuật Số •
Phụ lục B
Doøng 25 ñeán 27 laø caùc vector kieåm tra doàn keânh khi cho ngoõ vaøo select=0 Doøng 28 ñeán 30 laø caùc vector kieåm tra doàn keânh khi cho ngoõ vaøo select=1 Doøng 31 ñeán 33 laø caùc vector kieåm tra doàn keânh khi cho ngoõ vaøo select=2 Doøng 34 ñeán 36 laø caùc vector kieåm tra doàn keânh khi cho ngoõ vaøo select=3 Doøng 37 laø phaùt bieåu END keát thuùc chöông trình
Bieân dòch chöông trình Böôùc 1: Nhaäp file nguoàn trong thí nghieäm treân Böôùc 2: Bieân dòch chöông trình duøng phaàn meàm ABEL Töø thö muïc ABEL ñaùnh leänh abe filename Böôùc 3: Xem laïi caùc file môùi hình thaønh (file.doc, file.list) Böôùc 4: Theâm töø khoùa flag ‘-t1’ vaøo sau phaùt bieåu module Module mod-id flag ‘-t1’ Böôùc 5: Bieân dòch laïi chöông trình vaø xem keát quaû ôû file.sim. Nhaän xeùt.
2. Thí nghieäm 2 Muïc ñích: Thieát laäp ñieàu khieån caùc ngoõ ôû cheá ñoä I/O vaø Hi Z (mode phöùc) Thieát keá boä ñeäm 2 chieàu 3 traïng thaùi duøng GAL 16V8 S1 S0 S1 S0
GAL16V8
B2 B1 B0
1 2 3 4 5 6 7 8 9 11
U2 I0 I1 I2 I3 I4 I5 I6 I7 I8 I9
F0 F1 F2 F3 F4 F5 F6 F7
12 13 14 15 16 17 18 19
16V8
A2 A1 A0
Caùc ngoõ vaøo/ra: [a2,a1,a0], [b2,b1,b0] Ñieàu khieån choïn chieàu data: [S1, S0] Neáu [S1,S0] = [0,1]: höôùng töø B sang A Neáu [S1,S0] = [1,0]: höôùng töø A sang B •
Chöông trình 1 2 3
module tsbuffer title 'bi-directional three state buffer Thi nghiem 2'
4
TSB1 device 'P16V8c';
GV: Nguyễn Trọng Hải
Trang 265
A2 A1 A0 B2 B1 B0
Bài Giảng Kỹ Thuật Số
5 6 7
S1,S0 A2,A1,A0 B2,B1,B0
8 9 10 11
Select A = B = X,Z =
12 13 14
Equations A = B; B = A;
15 16 17 18 19 20 21 22 23 24 25 26 27 •
Pin 1,2; Pin 13,14,15; Pin 16,17,18;
= [S1,S0]; [A2,A1,A0]; [B2,B1,B0]; .X., .Z.;
Enable A = (Select==1); Enable B = (Select==2); test_vectors ([Select, [ 0 , [ 0 , [ 1 , [ 1 , [ 2 , [ 2 , [ 3 , [ 3 ,
A, 0, 7, X, X, 3, 5, 0, 7,
B]-> 0]-> 7]-> 3]-> 5]-> X]-> X]-> 0]-> 7]->
[ [ [ [ [ [ [ [ [
A, Z, Z, 3, 5, X, X, Z, Z,
B]) Z]; Z]; X]; X]; 3]; 5]; Z]; Z];
end
Giaûi thích chöông trình -
•
Phụ lục B
Doøng 4 khai baùo device ôû mode phöùc (modeI/O) Doøng 11 khai baùo .z. laø toång trôû cao Doøng 15 cho pheùp A xuaát khi [S1S0] = [01], luùc naøy höôøng truyeàn töø B->A Doøng 16 cho pheùp B xuaát khi [S1S0] = [10], luùc naøy höôøng truyeàn töø A->B
Bieân dòch chöông trình Böôùc 1: Nhaäp file nguoàn trong thí nghieäm treân Böôùc 2: Bieân dòch chöông trình duøng phaàn meàm ABEL Töø thö muïc ABEL ñaùnh leänh abe filename Böôùc 3: Xem laïi caùc file môùi hình thaønh (file.doc, file.list) Böôùc 4: Theâm töø khoùa flag ‘-t1’ vaøo sau phaùt bieåu module Module mod-id flag ‘-t1’ Böôùc 5: Bieân dòch laïi chöông trình vaø xem keát quaû ôû file.sim. Nhaän xeùt.
GV: Nguyễn Trọng Hải
Trang 266
Bài Giảng Kỹ Thuật Số
Phụ lục B
3. Thí nghieäm 3 Muïc ñích: Söû duïng baûng söï thaät trong truth_table ñeå thöïc hieän maïch Thieát keá 2 boä giaûi maõ 2→ 4 söû duïng GAL16V8 hoaït ñoäng theo baûng söï thaät sau: Input G B 1 0 1 0 1 1 1 1 0 x
•
A 0 1 0 1 x
Y3 1 1 1 0 1
Output Y2 Y1 1 1 1 0 0 1 1 1 1 1
Y0 0 1 1 1 1
G1 A1 B1 G2 A2 B2
1 2 3 4 5 6 7 8 9 11
U2 I0 I1 I2 I3 I4 I5 I6 I7 I8 I9
F0 F1 F2 F3 F4 F5 F6 F7
16V8
Chöông trình 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
Module decod2t4 Title 'giai ma 2 sang 4 Thi nghiem 3'
23 24 25 26 27 28
truth_table (inputs2-> outputs2) [1,0,0] -> [H,H,H,L]; [1,0,1] -> [H,H,L,H]; [1,1,0] -> [H,L,H,H]; [1,1,1] -> [L,H,H,H]; [0,X,X] -> [H,H,H,H];
Decod2t4 device 'P16V8S'; G1,G2 pin 2,5; A1,B1,A2,B2 pin 3,4,6,7; Y01,Y11,Y21,Y31 pin 19,18,17,16; Y02,Y12,Y22,Y32 pin 15,14,13,12; H,L,X = 1,0,.x.; inputs1 = [G1,B1,A1]; outputs1 = [Y31,Y21,Y11,Y01] ; inputs2 = [G2,B2,A2]; outputs2 = [Y32,Y22,Y12,Y02]; Truth_table (inputs1->outputs1) [1,0,0] -> [H,H,H,L]; [1,0,1] -> [H,H,L,H]; [1,1,0] -> [H,L,H,H]; [1,1,1] -> [L,H,H,H]; [0,X,X] -> [H,H,H,H];
GV: Nguyễn Trọng Hải
Trang 267
12 13 14 15 16 17 18 19
Y32 Y22 Y12 Y02 Y31 Y21 Y11 Y01
Bài Giảng Kỹ Thuật Số
•
Phụ lục B
29 30 31 32 33 34
test_vectors (inputs1-> outputs1) [1,0,0] -> [H,H,H,L]; [1,0,1] -> [H,H,L,H]; [1,1,0] -> [H,L,H,H]; [1,1,1] -> [L,H,H,H]; [0,1,0] -> [H,H,H,H];
35 36 37 38 39 40 41
test_vectors (inputs2-> outputs2) [1,0,0] -> [H,H,H,L]; [1,0,1] -> [H,H,L,H]; [1,1,0] -> [H,L,H,H]; [1,1,1] -> [L,H,H,H]; [0,0,1] -> [H,H,H,H]; end
Giaûi thích chöông trình Chöông trình treân duøng phaùt bieåu truth_table ñeå khai baùo baûng söï thaät hoaït ñoäng cuûa heä thay cho bieåu thöùc. Trong tröôøng hôïp naøy caùch vieát truth_table seõ goïn hôn caùch vieát theo bieåu thöùc (equations).
•
Bieân dòch chöông trình Böôùc 1: Nhaäp file nguoàn trong thí nghieäm treân Böôùc 2: Bieân dòch chöông trình duøng phaàn meàm ABEL Töø thö muïc ABEL ñaùnh leänh abe filename Böôùc 3: Xem laïi caùc file môùi hình thaønh (file.doc, file.list) Böôùc 4: Theâm töø khoùa flag ‘-t1’ vaøo sau phaùt bieåu module Module mod-id flag ‘-t1’ Böôùc 5: Bieân dòch laïi chöông trình vaø xem keát quaû ôû file.sim. Nhaän xeùt.
4. Thí nghieäm 4 Muïc ñích: Thieát keá vôùi mode thanh ghi cho maïch tuaàn töï
Thieát keá boä ñeám leân (ñoàng boä) 16 duøng GAL16V8. Boä ñeám coù ngoõ Cl ñoàng boä, tính cöïc möùc 0 nhö hình sau CK CL
1 2 3 4 5 6 7 8 9 11
U2 I0 I1 I2 I3 I4 I5 I6 I7 I8 I9
F0 F1 F2 F3 F4 F5 F6 F7
12 13 14 15 16 17 18 19
16V8
GV: Nguyễn Trọng Hải
Trang 268
Q0 Q1 Q2 Q3
Bài Giảng Kỹ Thuật Số
Phụ lục B
Ta thieát laäp baûng traïng thaùi hieän taïi vaø keá tieáp cho caùc ngoõ ra Q3Q2Q1Q0 Traïng thaùi hieän taïi Q3 Q2 Q1 Q0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 1 0 1 0 0 1 0 1 0 1 1 0 0 1 1 0 1 0 0 0 1 0 0 1 1 0 1 0 1 1 1 1 0 0 0 1 1 1 0 1 1 0 1 1 1 1 1 1 1
+
Q3 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0
Traïng thaùi keá Q2+ Q1+ Q0+ 1 0 0 0 1 0 1 1 0 1 0 0 0 1 1 1 0 1 1 1 1 0 0 0 1 0 0 0 0 1 1 1 0 1 0 0 0 1 1 1 1 0 1 1 1 0 0 0
Töø ñoù ruùt ra ñöôïc
Q0 + = Q0 .Cl
(vôùi Cl tích cöïc möùc thaáp)
Q1+ = Q1 ⊕ Q0.Cl Q 2 + = Q 2 ⊕ (Q1.Q0).Cl Q3 + = Q3 ⊕ (Q 2.Q1.Q0).Cl Theo caáu truùc GAL16V8, chaân 1 laø chaân CK ñoàng boä caùc thanh ghi beân trong
•
Chöông trình 1 2 3 4 5 6
module count4 title 'COUNTER Bai so 1' Counter device CK,CL Q3,Q2,Q1,Q0
7 8
Count = [Q3,Q2,Q1,Q0]; C,H,L = .C.,1,0 ; "Xung CK tac dong canh len
9 10 11 12 13
Equations Q0 := Q1 := Q2 := Q3 :=
GV: Nguyễn Trọng Hải
MOD16 'P16V8R'; pin 1,2 ; pin 19,18,17,16;
!Q0 & CL; (Q1$Q0) & CL; (Q2$(Q1&Q0))&CL; (Q3$(Q2&Q1&Q0))&CL;
Trang 269
Bài Giảng Kỹ Thuật Số 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
•
Phụ lục B
Test_vectors([CK,CL] -> Count) [C,L] -> 0 ; [C,H] -> 1 ; [C,H] -> 2 ; [C,H] -> 3 ; [C,H] -> 4 ; [C,H] -> 5 ; [C,H] -> 6 ; [C,H] -> 7 ; [C,H] -> 8 ; [C,H] -> 9 ; [C,H] -> 10 ; [C,H] -> 11 ; [C,H] -> 12 ; [C,H] -> 13 ; [C,H] -> 14 ; [C,H] -> 15 ; [C,H] -> 0 ; END
Giaûi thích Trong mode thanh ghi caùc bieåu thöùc söû duïng toaùn töû gaùn ‘:=’ ñeå bieãu dieãn ngoõ ra laø heä tuaàn töï (thanh ghi).
•
Bieân dòch chöông trình Böôùc 1: Nhaäp file nguoàn trong thí nghieäm treân Böôùc 2: Bieân dòch chöông trình duøng phaàn meàm ABEL Töø thö muïc ABEL ñaùnh leänh abe filename Böôùc 3: Xem laïi caùc file môùi hình thaønh (file.doc, file.list) Böôùc 4: Theâm töø khoùa flag ‘-t1’ vaøo sau phaùt bieåu module Module mod-id flag ‘-t1’ Böôùc 5: Bieân dòch laïi chöông trình vaø xem keát quaû ôû file.sim. Nhaän xeùt.
GV: Nguyễn Trọng Hải
Trang 270