Professional Documents
Culture Documents
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
5 3 4 6 , 7 2
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
1 0 1 1 1 0 1
Troïng soá 23 = 8 22 = 4 21 = 2 20 = 1
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
1 0 1 0
1 0 1 1
1 1 0 0
1 1 0 1
1 1 1 0
1 1 1 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 + soá dö 1
2
12
=6 + soá dö 0
2
6
=3 + soá dö 0
2
3
=1 + soá dö 1
2
1
=0 + soá dö 1
2 MSB LSB
25 = 1 1 0 0 1
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) (b) 1111 ← (möôïn)
11101 10000
- 10011 - 11
1010 1101
Baûng pheùp nhaân cho soá nhò phaân
0x0=0
0x1=0
1x0=0
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
110 101
011
000
110
110
0
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
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
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)
↓ ↓ ↓
(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
177
Giaûi = 22 + soá dö 1
8
22
=2 + soá dö 6
8
2
=0 + soá dö 2
8
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 Heä thaäp phaân Heä nhò phaân
0 0 0000
1 1 0001
2 2 0010
3 3 0011
4 4 0100
5 5 0101
6 6 0110
7 7 0111
8 8 1000
9 9 1001
A 10 1010
B 11 1011
C 12 1100
D 13 1101
E 14 1110
F 15 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.
0 10 20
9 19 FF
A 1A 100
B
C
D
E 1E 6FF
F 1F 700
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…
MÃ BCD
Thập
phân Trọng số Trọng số Trọng số Trọng số
8 4 2 1 7 4 2 1 2 4 2 1 5 1 2 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1
2 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0
3 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
4 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0
5 0 1 0 1 0 1 0 1 1 0 1 0 1 0 0 0
6 0 1 1 0 0 1 1 0 1 1 0 0 1 0 0 1
7 0 1 1 1 1 0 0 0 1 1 0 1 1 0 1 0
8 1 0 0 0 1 0 0 1 1 1 1 0 1 0 1 1
9 1 0 0 1 1 0 1 0 1 1 1 1 1 1 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-4-
2-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:
8 7 3 (thaäp phaân)
↓ ↓ ↓
1000 0111 0011 (BCD 8-4-2-1)
1011 1010 0011 (BCD 5-1-2-1)
hoaëc 1011 1101 0110 (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
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)
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)
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 Nhò phaân Maõ Gray Thaäp phaân Nhò phaân Maõ Gray
0 0000 0000 8 1000 1100
1 0001 0001 9 1001 1101
2 0010 0011 10 1010 1111
3 0011 0010 11 1011 1110
4 0100 0110 12 1100 1010
5 0101 0111 13 1101 1011
6 0110 0101 14 1110 1001
7 0111 0100 15 1111 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
2 0 0 0 1 1
3 0 0 1 1 1
4 0 1 1 1 1
5 1 1 1 1 1
6 1 1 1 1 0
7 1 1 1 0 0
8 1 1 0 0 0
9 1 0 0 0 0
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)
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öï ASCII Octal Hex Kyù töï ASCII Octal Hex
A 100 0001 101 41 Y 101 1001 131 59
B 100 0010 102 42 Z 101 1010 132 5A
C 100 0011 103 43 0 011 0000 060 30
D 100 0100 104 44 1 011 0001 061 31
E 100 0101 105 45 2 011 0010 062 32
F 100 0110 106 46 3 011 0011 063 33
G 100 0111 107 47 4 011 0100 064 34
H 100 1000 110 48 5 011 0101 065 35
I 100 1001 111 49 6 011 0110 066 36
J 100 1010 112 4A 7 011 0111 067 37
K 100 1011 113 4B 8 011 1000 070 38
L 100 1100 114 4C 9 011 1001 071 39
M 100 1101 115 4D Blank 010 0000 040 20
N 100 1110 116 4E . 010 1110 056 2E
O 100 1111 117 4F ( 010 1000 050 28
P 101 0000 120 50 + 010 1011 053 2B
Q 101 0001 121 51 $ 010 0100 044 24
R 101 0010 122 52 * 010 1010 052 2A
S 101 0011 123 53 ) 010 1001 051 29
T 101 0100 124 54 - 010 1101 055 2D
U 101 0101 125 55 / 0101111 057 2F
V 101 0110 126 56 010 1100 054 2C
W 101 0111 127 57 = 011 1101 075 3D
X 101 1000 130 58 RETURN 000 1101 015 0D
LINEFEED 0001010 012 0A
Ví dụ: Thoâng ñieäp ñöôïc maõ hoùa trong ASCII nhö sau
1001000 1000101 1001100 1010000
Giải Keát quaû theo HEX laø 48 45 4C 50
Theo baûng ASCII, bieán ñoåi HEX sang kyù töï laø H E L P
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)
b. 1A6
c. 37FD
e. 2C0
f. 7FF
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:
a. 10110110
b. 00101000
c. 11110111
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
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 LOGIC 1
Sai Ñuùng
Taét Môû
Möùc ñieän aùp thaáp Möùc ñieän aùp cao
Khoâng Coù
Môû maïch Ñ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
A Maïng
A Maïng B Maïng
chuyeån X B chuyeån X chuyeån X
B maïch maïch C maïch
C
D
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:
A B C X A B C D X
Ngoõ vaøo Ngoõ ra
0 0 0 ? 0 0 0 0 ?
↓ ↓ ↓ 0 0 0 1 ?
A B X 0 0 1 ?
0 0 1 0 ?
0 0 ? 0 1 0 ?
0 0 1 1 ?
0 1 ? 0 1 1 ?
0 1 0 0 ?
1 0 ? 1 0 0 ? 0 1 0 1 ?
1 1 ? 1 0 1 ? 0 1 1 0 ?
1 1 0 ? 0 1 1 1 ?
1 1 1 ? 1 0 0 0 ?
1 0 0 1 ?
1 0 1 0 ?
1 0 1 1 ?
1 1 0 0 ?
1 1 0 1 ?
1 1 1 0 ?
1 1 1 1 ?
ÔÛ 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 B X=A+B A
0 0 0 Y=A+B
0 1 1
B
1 0 1 Coång OR
1 1 1
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
Kyù hieäu vaø baûng söï thaät cho coång OR 3 ngoõ vaøo A B C X=A+B+C
0 0 0 0
0 0 1 1
A 0 1 0 1
X=A+B+C
B 0 1 1 1
C 1 0 0 1
1 0 1 1
1 1 0 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
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
0 0 0 0
0 0 1 0
A 0 1 0 0
B X = ABC 0 1 1 0
C 1 0 0 0
Coång AND 1 0 1 0
1 1 0 0
1 1 1 1
Trang 23
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
X = AB
B B
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 X= A A X=A
0 1
1 0 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 A.B
B X = A.B + C
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 A+B
B X = (A+B).C
C
Trang 24
Bài Giảng Kỹ Thuật Số Chương 2
B
(a)
A
B
C
D
(b)
A AC
C
B
B BC
y=AC+BC+ABC
C
A
B ABC
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 A X= A+B
A B A+B A+B B
0 0 0 1 Kyù hieäu ñaûo
0 1 1 0
A X= A+B
1 0 1 0
B
1 1 1 0
Ngoõ ra coång NOR laø ñaûo vôùi ngoõ ra coång OR
Trang 25
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
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 Y X⊕Y
0 0 0 X
X⊕Y
0 1 1 Y
1 0 1 Cổng XOR
1 1 0
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
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
y = A B.1 = A B
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
A x=AB
B
A
x = A.B = A + B
Trang 28
Bài Giảng Kỹ Thuật Số Chương 2
A
x =A+A=A
A x=A+B
B
A
x = A + B = A.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
7400 7408
1 2 3 4 5 6 7 1 2 3 4 5 6 7
GND
Vcc 14 13 12 11 10 9 8
7432
1 2 3 4 5 6 7
GND
Trang 29
Bài Giảng Kỹ Thuật Số Chương 2
AND
A AB A A + B = AB
B B
OR
A A+B A A.B = A + B
B B
NAND
A A + B = AB
A AB
B B
NOR A
A.B = A + B
A A+B
B B
NOT
A
A A A
A A A A
Ví dụ,
A A + B = AB
A AB
B B
(a) (b)
ÔÛ 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 E0
E2
Logic
E3
E1 E2 E3 E0
0 0 0 0
0 0 +V 0
0 +V 0 0
0 +V +V 0
+V 0 0 0
+V 0 +V 0
+V +V 0 0
+V +V +V +V
Trang 31
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 E2 E3 E0
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
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 E2 E3 E0
1 1 1 1
1 1 0 1
1 0 1 1
1 0 0 1
0 1 1 1
0 1 0 1
0 0 1 1
0 0 0 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
B G
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
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:
Baûng chaân lyù
Teân haøm Thuaät toùan logic Ghi chuù
x 0 1
Haøm khoâng y0 0 0 y0 = 0 Haøm luoân baèng 0
Haøm ñaûo y1 1 0 y1 = x
Haøm laëp y2 0 1 y2 = x
Haøm ñôn vò y3 1 1 y3 = 1 Haøm luoân baèng 1
y3= x + x
(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
Trang 33
Bài Giảng Kỹ Thuật Số Chương 2
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
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
x1
0 1 x
010 110
(a) 111
011 x2
x1
000 100
10 11
001
101
x2
x3
(c)
00 01
(b)
Trang 35
Bài Giảng Kỹ Thuật Số Chương 2
Ví dụ,
Thöù töï toå hôïp bieán A B f Maxterm
0 0 0 0 A+B
1 0 1 1
2 1 0 0 A+B
3 1 1 0 A+B
f
A
B 0 1
0
A=0, B=0 A=1, B=0
1
A=0, B=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
f f
A B f A A
B 0 1 B 0 1
0 0 1
0 1 1 0 1 0 0 1 0
1 0 0 A.B
1 1 0 1 1 0
1 1 0 AB
Töø bìa Karnaugh ta cuõng coù theå vieát laïi haøm f = A.B + AB
Trang 36
Bài Giảng Kỹ Thuật Số Chương 2
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
cd 00 01 11 10
00 1 1 1 1
01 1 1 1 1
11 0 1 1 1
10 0 1 0 0
Trang 37
Bài Giảng Kỹ Thuật Số Chương 2
f A=0 A=1
BC
DE 00 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
f ABC
DEF 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
Trang 38
Bài Giảng Kỹ Thuật Số Chương 2
x x CD CD
C.D CD CD CD C.D CD
A.B 1 0 0 0 A.B 0 0 X 1
A.B 0 1 1 0 A.B 0 0 0 0
AB 0 X 1 0 AB X 0 0 1
AB X 0 0 0 AB 1 0 X 1
(c) x (d)
C.D CD CD CD
A.B 1 0 0 1
A.B 0 1 0 0
AB 0 0 0 0
AB 1 X X X
(e)
Trang 39
Bài Giảng Kỹ Thuật Số Chương 2
x x
CD CD C.D CD CD CD
C.D CD
0 0 X 0 A.B 1 1 0 0 x= C
A.B
A.B 1 1 1 1 x=B A.B X X 0 X
AB 1 1 X 1 AB 1 1 0 0
AB 0 0 X 0 AB 1 1 0 0
(a) (b)
Trang 40
Bài Giảng Kỹ Thuật Số Chương 2
(A)
(A)
(B) X
(B) (C)
(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.
B
X
C
2.8. Làm lại với các yêu cầu tương tự bài 2.7
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) X
(B) (C)
(C)
A
B X
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.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
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
C.D CD CD CD C.D CD CD CD
A.B 0 0 0 1 A.B 0 0 1 0
A.B X 1 1 0 A.B 1 1 1 1
AB 0 1 X 0 AB 1 1 0 0
AB 0 0 1 0 AB 0 0 0 0
(a) (b)
C.D CD CD CD
A.B X 1 0 0
A.B 0 1 X 1
AB 1 X 1 0
AB 0 0 1 0
(c)
2.26 Rút gọn hàm bài 2.17 dùng bìa Karnaugh
Trang 44
Bài Giảng Kỹ Thuật Số Chương 3
X1 Y1
X2 Y2
MẠCH TỔ
HỢP
Xn Ym
A B C X Minterm
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1 A.BC
1 0 0 0
1 0 1 1 A BC
1 1 0 1 ABC
1 1 1 1 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
74LS08
B
C A
X
B
A X
1
C
74LS08 74LS08
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 B
C C
A X A X
74LS08
Bước 2.
Nhoùm Caùc bieán
Minterm
(soá bit 1) A B C D
1 1 0 0 0 1
2 0 0 1 0
8 1 0 0 0
2 3 0 0 1 1
5 0 1 0 1
9 1 0 0 1
3 7 0 1 1 1
11 1 0 1 1
14 1 1 1 0
Bước 3. Nhoùm caùc minterm chæ sai khaùc 1 bit
Nhoùm Caùc bieán
Minterm
A B C D
1 0,1 0 0 0 -
0,2 0 0 - 0
0,8 - 0 0 0
2 1,3 0 0 - 1
1,5 0 - 0 1
1,9 - 0 0 1
2,3 0 0 1 -
8,9 1 0 0 -
3 3,7 0 - 1 1
3,11 - 0 1 1
5,7 0 1 - 1
9,11 1 0 - 1
4 14 1 1 1 0
Laëp laïi böôùc 3, tieáp tuïc nhoùm caùc minterm chæ sai khaùc 1 bit
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ố Chương 3
BC 0,1,8,9 X X ⊗ X
AD 1,3,5,7 X X ⊗ ⊗
BD 1,3,9,11 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)
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
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 Parity (P)
D0
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
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
Error (E)
D1
D0
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
Traïng thaùi caám (ñoùng coång) Traïng thaùi cho pheùp (môû coång)
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
X
B
C
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
AN-1 OM-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
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 B A Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7
0 0 0 1 0 0 0 0 0 0 0
0 0 1 0 1 0 0 0 0 0 0
0 1 0 0 0 1 0 0 0 0 0
0 1 1 0 0 0 1 0 0 0 0
1 0 0 0 0 0 0 1 0 0 0
1 0 1 0 0 0 0 0 1 0 0
1 1 0 0 0 0 0 0 0 1 0
1 1 1 0 0 0 0 0 0 0 1
Q0 = C.B.A
Q0 = C.B.A
Q1 = C.B.A
A Q1 = C.B.A
Q2 = C.BA (LSB)
Q3 = C.BA
Q2 = C.BA
B
Q4 = CB.A
Q3 = C.BA
Q5 = CB.A
C
Q6 = CB.A (MSB) Q4 = CB.A
Q7 = CBA
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
Ñ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
(MSB) A2 A1 A0 (LSB)
74LS11
Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0
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
Selector Enable
I1
Select Output
74LS08
0 Z=I0 Z
1 Z=I1 I0
74LS32
Z=I0 .S+I1.S 1
74LS04
S
3.7.2. Maïch choïn keânh 4 ngoõ vaøo
I0
S1 S0 Output 74LS11
0 0 Z=I0 74LS04
I1
0 1 Z=I1
Z
1 0 Z=I2
I2
1 1 Z=I3
1
I3
SELECT S1 S0
G C B A Y G
1 x x x 0 D0
0 0 0 0 D0 D1 Y
D2
0 0 0 1 D1 D3
0 0 1 0 D2 D4
0 0 1 1 D3 D5 W
D6
0 1 0 0 D4 D7
0 1 0 1 D5
A
0 1 1 0 D6 B
0 1 1 1 D7 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 1Y
74LS157 chöùa 2 nhoùm ngoõ vaøo nhö hình sau 1B
2A 2Y
2B
G A /B 1Y 2Y 3Y 4Y 3A 3Y
3B
1 X 0 0 0 0 4A
4B
4Y
0 0 1A 2A 3A 4A
A/B
0 1 1B 2B 3B 4B 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 B A Z Các biến HI
0 0 0 0 ngõ vào
0 0 1 1
0 1 0 1
0 1 1 0 G C B A D7D6D5D4D3D2D1D0
1 0 0 0
74LS151
1 0 1 0 Y=Z W
1 1 0 0
1 1 1 1
Z=A.B.C+ABC+ABC Z=A.B.C+ABC+ABC
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 Counter 2
Clock 1
BCD BCD BCD BCD Clock 2
counter counter counter 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
G F E D C B A G F 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:
X0 D0
X1 D1 W
X2 D2
X3 D3
X4 D4
X5 D5
X6 D6
X7 D7
Y
Z
Mạch A
đếm B
C
3 bit 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 s
EN
O0
s
Select SEL
s
s s O1
O0
s Data s
s O1 intput
Data
`On-1
Intput
s
On-1
Selector
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
Select Output
S2 S1 S0 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0
0 0 0 0 0 0 0 0 0 0 In
0 0 1 0 0 0 0 0 0 In 0
0 1 0 0 0 0 0 0 In 0 0
0 1 1 0 0 0 0 In 0 0 0
1 0 0 0 0 0 In 0 0 0 0
1 0 1 0 0 In 0 0 0 0 0
1 1 0 0 In 0 0 0 0 0 0
1 1 1 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 A Y0
S0 A Y0
Shift Register
S1 B Y1 S1 B Y1 Counter
S2 C Y2 S2 C Y2
Y3 Y3
Y4 Y4
HI HI G1 Y5
G1 Y5
DATA G2A
G2B
Y6
Y7
G2A
G2B
Y6
Y7
74LS138 74LS138
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
A B S COUT S
B
0 0 0 0 A S
0 1 1 0
1 0 1 0 B COUT Cout
1 1 0 1
S=AB+AB
COUT = AB
3.10.2. Maïch coäng toaøn phaàn
CIN A B S COUT A
0 0 0 0 0 B S
0 0 1 1 0 Cin
0 1 0 1 0 A S
0 1 1 0 1 B
1 0 0 1 0 CIN COUT Cout
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
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
A4 Cout
A3
Cin Cout S4
A2
B A1
S B4 S3
A B3
B2 S2
74LS183 B1
Cộng toàn phần 1 bit Cin S1
74LS83
Cộng toàn phần 4 bit
ÔÛ 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 A Pi
B S
Gi =A iBi
⇒ phöông trình coäng toaøn phaàn
Ci
Si =Pi ⊕ Ci-1
Ci-1 Gi
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 BCD
thứ hai thứ nhất
A3 A2A1A0 B3 B2B1B0
C4 Cin
B3 B2B1B0 S3 S2S1S0
A3 A2 A1A0 B3 B2B1B0
C4 Cin
B3 B2 B1B0 S3 S2S1S0
b6 b5 b4 b3 b2 b1 b0
IC 74184. Chuyeån maõ BCD sang nhò phaân
Các A0 b0
đầu Các A Y1
Y1 b1 A
vào B0 A đầu Các Y2
Y2 b2 B B
BCD C0 B ra nhị đầu Y3
từ Y3 b3 phân vào C C
D0 C Y4
00 Y4 b4 BCD D D Các
D Y5 TA
A1 Y5 b5 1 E
đến Y6 TB đầu
B1 E Y6
39 Y7 TC bù 10
Y7 G Y8 của
G TD
Y8 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
b0 A0
Các Các
đầu b1 A Y1 B0 đầu
vào b2 B Y2 C0 ra
nhị Y3 D0 BCD
b3 C A1
phân Y4
b4 D
6 bit Y5 B1
b5 E Y6 C1
G
74185
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
C
BCD Logic
B X
Counter circuit
A
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
+5V
SW2
+5V
SW3 Logic
X
circuit
+5V
SW4
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
Multiplier Z2
Y1 circuit Z1
Y0 Z0 LSB
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 Z S Z
0 A0
A0 1 A1
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 = random-
access 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 RAM
A12
A11
A10
A9
A8 I/O
MPU ROM
CLK CLK
tH tL tH tL
Tper 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á:
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
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
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 Vcc
Vin1 Vout1
Q Rc1
Rc2
R2
R1
Rb2
Rb1
RC1 RC2
R2 R1
T1 T2
RB1 RB2
-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 Ngõ ra nhớ
Các
FlipFlop
ngõ
vào
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öõ
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)
RESET Q
Q S
FF
R Q
Q
SET
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.
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
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
RESET
¾ Thieát laäp caùc thay ñoåi cho FF
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
Q
SET ñöôïc ñaët trôû laïi 0 (LATCH)
SET
• 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 R E Q
X X 0 HiZ
0 0 1 Khoâng thay ñoåi
0 1 1 0
1 0 1 1
1 1 1 Caám
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 Q
Q S
FF
R Q
RESET Q
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 Vout
Vout
0
R Q
R
Vcc
IC 74279 4 RS-FF
Q Q
input input
FF FF
CK Q CK Q
CK tích cöïc caïnh leân CK tích cöïc caïnh xuoáng
GV: Nguyễn Trọng Hải Trang 79
Bài Giảng Kỹ Thuật Số Chương 4
S Q S R CK Q
0 0 ↑ Q0 (khoâng ñoåi)
CLK
1 0 ↑ 1
0 1 ↑ 0
R Q
1 1 ↑ Caám
• Sô ñoà beân trong cuûa clock SR- FlipFlop
SET
Q
Phát
CK 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*
Ñ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
Phát
CK hiện
cạnh 1
Q
RESET
GV: Nguyễn Trọng Hải Trang 80
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
CK hiện
cạnh 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
CK hiện
cạnh 1
Q
RESET
J Q J K CK Q
0 0 ↑ Q0 (khoâng ñoåi)
CK 1 0 ↑ 1
0 1 ↑ 0
K Q 1 1 ↑ Q0
J Q
Phát
CK hiện
cạnh
Q
K
4.4.4. D FlipFlop
D Q D
Q
CK Q Phát
CK hiện
cạnh
D CK Q 1
Q
0 ↑ 0
1 ↑ 1
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 Q V D CK Q
0 0 ↑ Q0 (khoâng ñoåi)
CK 0 1 ↑ Q0 (khoâng ñoåi)
1 0 ↑ 0
V Q 1 1 ↑ 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
Q CK T Q
T
Khoâng coù CK x Q0
CK ↓ 0 Q0
↓ 1 Q0
Q
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
PR PR PR CLR Ngoõ ra
D Q J Q
1 1 hoaït ñoäng theo CK
CK CK
0 1 Q=1
CLR Q K CLR Q
1 0 Q=0
7474 7476 0 0 khoâng söû duïng
D-FF JK-FF
Clock X
Xung khoâng mong muoán
Clock
Khóa chống PR
D Q
dội X
CLK A
CLR Q
Clock 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 X
A J PR Q
B B B CLK
K CLR Q
X X
D PR Q D PR Q D PR Q D PR Q
Q5 Q4 Q1 Q0
• 74374. thanh ghi dòch 8 bit vaøo song song/ 8 bit ra song song
D0
D1
Q0
Q1 OC CLK D Output
D2 Q2
D3 Q3 0 ↑ 1 1
D4 Q4
D5
D6
Q5
Q6 0 ↑ 0 0
D7 Q7
0 0 X QO
OC
CLK 1 X X HiZ
74LS374
Ds D PR Q D PR Q D PR Q D PR Q Os
CK CLK CLK CLK CLK
CL CL CL CL
Q Q Q Q
4731. CMOS thanh ghi dòch 256bit (4 boä ghi dòch 64bit noái tieáp)
DS Q DS Q DS Q DS Q
64bit 64bit 64bit 64bit
CP CP CP CP
H QH
CKI laø chaân cho pheùp xung CK, CKI=[0]: cho pheùp G
F
xung CK, CKI=[1] : caám xung CK. E
D
C
SH/LD=[0]: naïp döõ lieäu, SH/LD=[1]: dòch döõ lieäu. B
A
Sau khi dòch 1 bit ra khoûi haøng döõ lieäu (veà höôùng bit
SER
H), bit A seõ troáng vaø bit SR (Serial in) seõ dòch vaøo
thanh choát cuûa bit A.
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 A
D PR Q
QD
B QE B CLK
QF
CL
CLK QG Q
QH
CLR
74LS164
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 74LS164
H GFE D CB A
D Q X3
A15
A14 CLK
A13
A12
D Q X2
A11
A10 CLK
A9
MPU A8
D Q X1
CP CLK
D3
D2 D Q X0
D1
D0 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
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
J PR Q J PR Q J PR Q
1 1 1
CLK CLK CLK
CL CL CL
K Q K Q K Q
1 1 1
1 1 1
1 2 3 4 5 6 7 8 9 10 11
Clock
C
0 1 2 3 4 5 6 7 0 1 2
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 B A CK 000
0 0 0 Ban ñaàu 111 001
0 0 1 Sau xung CK1
0 1 0 Sau xung CK2
0 1 1 Sau xung CK3 010
1 0 0 Sau xung CK4 110
1 0 1 Sau xung CK5
1 1 0 Sau xung CK6 011
101
1 1 1 Sau xung CK7
0 0 0 Sau xung CK8 100
0 0 1 Sau xung CK9
• 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
Q Q Q
CK CK CK
Q Q Q
Q0 LSB Q1 Qn MSB
Q Q Q
CK CK CK
Q Q Q
Q Q Q
CK CK CK
Q Q Q
Q0 LSB Q1 Qn MSB
Q Q Q
CK CK CK
Q Q Q
• Ñieàu kieän Q+ = Q0
1 J PR Q 1 T PR Q D PR Q
CK CK CK
1 K CL Q CL Q CL 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
1 A 1 B 1 C 1 D
1 J PR Q 1 J PR Q 1 J PR Q 1 J PR Q
CK CK CK CK
1 K CL Q 1 K CL Q 1 K CL Q 1 K CL Q
1 1 1 1
GV: Nguyễn Trọng Hải Trang 88
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 C B A Xung CK
0 0 0 0 0
0 0 0 1 1
0 0 1 0 2
0 0 1 1 3
0 1 0 0 4
0 1 0 1 5
0 1 1 0 6
0 1 1 1 7
1 0 0 0 8
1 0 0 1 9
1 0 1 0 10
1 0 1 1 11
1 1 0 0 12
1 1 0 1 13
1 1 1 0 14
1 1 1 1 15
0 0 0 0 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 11 12 13 14 15 0
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 PR Q
CLK CLK
CL CL
Q Q
Ví dụ, thiết kế boä ñeám xuoáng nhò phaân 4 bit duøng FF nhö sau
Ví dụ, xaây döïng maïch taïo xung 1Hz töø ñieän löôùi 50Hz nhö sau:
50Hz 1Hz
50Hz
Schmitt MOD 50
Trigger counter
Ñ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 CL
Q
Xaùc ñònh soá FF toái thieåu: 22 < 6 < 23 ⇒ soá FF caàn laø 3
PR PR PR
1 J Q 1 J Q 1 J Q
CK
QA
QB
tpd 2tpd 3tpd
QC
0 1 0 0 1 0 0 1
0 0 0 1 1 1 0 0
0 0 0 0 0 0 0 1
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
1
hoaëc fmax = (taàn soá cöïc ñaïi cho pheùp)
Ntpd
Sinh vieân tra baûng söï thaät cuûa 7493 vaø lieät keâ chuoãi R01 QC
ñeám khi noái QA veà CKB vaø chuoãi ñeám khi noái QD veà R02 QD
CKA
74LS93
• 74LS90 R91
R92 QA
74LS90 coù 2 boä ñeám beân trong: moät boä ñeám 2 vôùi ngoõ
CKA QB
vaøo CKA, moät boä ñeám 5 vôùi ngoõ vaøo CKB
CKB QC
Sinh vieân tra baûng söï thaät cuûa 7493 vaø lieät keâ chuoãi ñeám
R01 QD
khi noái QA veà CKB vaø chuoãi ñeám khi noái QD veà CKA 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 R Q Q+
0 0 0 0 Q Q+ S R
0 0 1 1 0 0 0 0 Q Q+ S R
0 1 0 0 0 0 0 1 0 0 0 x
0 1 1 0 0 1 1 0 0 1 1 0
1 0 0 1 1 0 0 1 1 0 0 1
1 0 1 1 1 0 0 0
1 1 0 - 1 1 x 0
1 1 1 0
1 1 1 -
Ví dụ, Töông töï, baûng söï thaät cho JK-FF, D-FF, T-FF
Q Q+ T Q Q+ J K Q Q+ D
0 0 0 0 0 0 x 0 0 0
0 1 1 0 1 1 x 0 1 1
1 0 1 1 0 x 1 1 0 0
1 1 0 1 1 x 0 1 1 1
Ví dụ, Thieát keá maïch ñeám coù chuoãi ñeám sau duøng T-FF
Bước 1,2,
Bước 3,
TC C TB C TA C
BA 0 1 BA 0 1 BA 0 1
00 1 0 00 0 1 00 0 1
01 x x 01 x x 01 x x
11 0 1 11 1 0 11 1 1
10 0 x 10 0 x 10 1 x
Q Q
CK
Q
CK CK CK
TC TB TA C 0 1 1 0 0 0
B 0 0 1 1 1 0
CK
A 0 0 1 0 1 0
Tc
TB
C B
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.
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
ÔÛ 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 Q+ J K
0 0 0 x
0 1 1 x
1 0 x 1
1 1 x 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+ C B+ A+
C C
BA 0 1 BA 0 1 BA 0 1
00 1 1 JA
00 0 1 JB
00 0 1
01 x x 01 x x 01 x x KA
11 0 0 11 0 1 11 0 0
KB
10 0 x 10 1 x 10 1 x JA
JC KC
Keát quaû: 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
BCD 8-4-2-1 Quaù 3
+
A B C D A B+ C+ D+
0 0 0 0 0 0 1 1
0 0 0 1 0 1 0 0
0 0 1 0 0 1 0 1
0 0 1 1 0 1 1 0
0 1 0 0 0 1 1 1
0 1 0 1 1 0 0 0
0 1 1 0 1 0 0 1
0 1 1 1 1 0 1 0
1 0 0 0 1 0 1 1
1 0 0 1 1 1 0 0
1 1 1
Q PR J Q PR J Q PR J 1
CLK CLK CLK
Q CL K Q CL K Q CL K
1
74LS76
1 1 1
clock
Maïch ñeám xuoáng MOD8
1 1 1
Q PR J Q PR J Q PR J 1
CLK CLK CLK
CL CL CL
Q K Q K Q K 1
1 1 1 74LS76
clock
1 1 1
Q PR J Q PR J Q PR J 1
CLK CLK CLK
CL CL CL
Q K Q K Q K
1
1 1 1 74LS76
Count-down
clock
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ä
P2 P1 P0
Q PR J Q PR J Q PR J 1
CLK CLK CLK
Q
CL
K Q
CL
K Q
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ä
D PR Q D PR Q D PR Q
CK
A B C
J PR Q J PR Q J PR 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 C
1 1 1
PR PR PR
D Q D Q D Q
1 1 1
CK
ck
A
B
C
Counter Z
Display
t0 t1 T.gian lấy mẫu t2
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
SAMPLE pulse
Q PR J 1
CLK
CL
Q K
1
Cuoái cuøng boä ñeám taàn soá hoaøn taát nhö sau
Unknow
CLEAR freq
Counter SAMPLE
pulse
Decoder/
Display
Q PR J
Q 1
T CLK
Tp =100ns Q
CL
K
1
RT CT
Input pulse
SAMPLE
pulse
T
output
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 Chia
shaper 50
Di Nhập data
D PR Q
DO
R/W
CLK Xuất data
Ai CL Q
Ngoõ vaøo
Cheá ñoä
Ai R/W Di
0 X X Nhôù, D0 = 0
1 0 0 Nhôù 0 vaøo oâ nhôù, D0 = 0
1 0 1 Nhôù 0 vaøo oâ nhôù, D0 = 0
1 1 X Ñoïc oâ nhôù, D0 = bit nhôù
Clock
X1 Q1+ Q1
X2 Maïng toå D1 Heä toå Z1
CK
Xm hôïp hôïp
Q +2 Q2
Z2
Q1 D2 (cho
CK
Q2 caùc
ngoõ
Q +k Qk Zn
Dk ra)
Qk CK
Clock
Logic ra
Traïng thaùi Caùc giaù trò
Giaù trò Logic Kích
Boä nhôù G
hieän haønh ra (Output)
vaøo thích
traïng thaùi traïng thaùi
keá
Ngoõ CK
Clock
X1 Z1
X2
HEÄ Z2
TOÅ Zn
HÔÏP Q+ D1
Q1
Xm 1
CK
Q+
2 Q2
Q1 D2
Q2 CK
Qk
Qk Qk+ Dk
CK
Clock
(a) Hoäp traïng thaùi (b) Hoäp quyeát ñònh (c) Hoäp xuaát theo ñk
• 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
S1 Z1, Z2
nhaùnh a 0 1 nhaùnh b
X1
0 1
Z3, Z4 X3
0 1 Z5
X3
1 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
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.
S1 Z1 S1 Z1
0 1 0 1
X1 X2
Z2 1 1
X1 X1
0 0
0 1
X3 Z2 Z2
S2 S3 S2 S3
0 1
A
C 1
0 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.
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
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 1 1 X1
X1 X2 X3
Z2
Z2 0 Z3 0 Z4 0
X2
X3
Z3
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 S1 S2
1/Z2
0/0 Za 0/0 Zb Zc
0/Z1
Vaø löu ñoà SM töông ñöông
00
S0 Za
link 1
X
0 1 01
S1 Zb
link 2
X
0 1 11 link 3
S1 Zc
0 1
X
Z1 Z2
clock
traïng thaùi S0 S1 S2 S2 S0 S0
X
Za
Zb
Zc
Z1
Z2
ÔÛ 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
110 101
101
000
1010
110
100
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 start
Sh
x7 x6 x5 x4 x3 x2 x1
V
Chỉ báo tràn trên
Su Điều
Bộ trừ và so khiển
sánh C (so sánh)
y3 y2 y1
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ò
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
Start’/0 C.Start/V
S0
Stop C’.Start/Sh
C/Su
C’/0 C/Su
S1
S3
C’/Sh 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
0 1
C
Sh
Su
S3 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
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
Ñöôø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.
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
- /Sh S0 MN/Ad
S7 S1
M’N/Sh - /Sh
M/Ad M’N/Sh
S2
S6
M’N/Sh
M/Ad
- /Sh M’N/Sh
S3
S5
M/Ad S4 - /Sh
N’/0
Ad Ñieàu khieån N
Sh Coäng - dòch PC S0
MN/Ad M’N/Sh
K=1 neáu n-1 laàn dòch M/Ad M’/Sh
Boä ñeám S0 S0
- /Sh
(a) Ñieàu khieån boä nhaân
(b) Giaûn ñoà traïng thaùi cuûa
N’/0
ñieàu khieån coäng dòch
S0 M’N/Sh
MN/Ad (c) Giaûn ñoà traïng thaùi cuoái
K/Sh M’K/Sh cuûa ñieàu khieån coäng dòch
M’K’/Sh
K’/Sh S0
S0
M/Ad
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)
S0
0
N
1
1 0
M
Ad Sh
S1 Sh S2
1 0 1 0
K M
Ad Sh
1 0
M
Ví dụ, Baûng cho ROM coù N=3bit ñòa chæ, m=2 bit döõ lieäu
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.
2n x m ROM
A0 D0
A1 D1 address
address A2 D2
input output
(n đường) (m đường)
An-1 Dm-1
256 x 8 ROM
A0 D0
Y A1 D1
(Số bị nhân) A2 D2
A3 D3 Tích số
A4 D4
X
A5 D5
(Số nhân)
A6 D6
A7 D7
Noäi dung ghi ROM ôû treân nhö sau (daïng file vaên baûn hex)
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 A Y0
A1 B Y1
A2 C Y2
Y3
Y4
HI G1 Y5
G2A Y6
G2B Y7
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)
A4 A Y0
A5 B Y1
C Y2
A6 Y3
Y4
HI G1 Y5
G2A Y6
G2B Y7
0 1 2 3 4 5 6 7 8 9 101112131415
G2
S0 S1 S2 S3 D0
A0 0
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 512 x 64 512 x 64 512 x 64 512 x 64 512 x 64 512 x 64 512 x 64 512 x 64
A10
9 to 512 array array array array array array array array
A11 decoder
A12
A13
A14
A0
A1
A2 64 to 1 64 to 1 64 to 1 64 to 1 64 to 1 64 to 1 64 to 1 64 to 1
A3 MUX MUX MUX MUX MUX MUX MUX MUX
A4
A5
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
Am Power on
Am+1
colum MUX
An-1
CS
OE
X1 Z1
X2
ROM Z2
Zn
Q1
Xm Q1+ D1
CK
Q+
2 Q2
Q1 D2
Q2 CK
Qk
Qk Qk+ Dk
CK
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.
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 Output (excess – 3) Y
t3 t2 t1 t0 t3 t2 t1 t0
0 0 0 0 0 0 1 1
0 0 0 1 0 1 0 0
0 0 1 0 0 1 0 1
0 0 1 1 0 1 1 0
0 1 0 0 0 1 1 1
0 1 0 1 1 0 0 0
0 1 1 0 1 0 0 1
0 1 1 1 1 0 1 0
1 0 0 0 1 0 1 1
1 0 0 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 Trạng Trạng thái Giá trị ra hiện
nhận được thái hiện kế tại (Z)
tại X = 0 X=1 X=0 X=1
t0 reset A B C 1 0
t1 0 B D F 1 0
1 C E G 0 1
t2 00 D H L 0 1
01 E I M 1 0
10 F J N 1 0
11 G K P 1 0
t3 000 H A A 0 1
001 I A A 0 1
010 J A - 0 -
011 K A - 0 -
100 L A - 0 -
101 M A - 1 -
110 N A - 1 -
111 P A - 1 -
Baûng traïng thaùi ñöôïc ruùt goïn cuûa boä chuyeån ñoåi maõ
Thời gian Trạng Trạng thái Giá trị ra hiện
thái hiện kế tại (Z)
tại X = 0 X=1 X=0 X=1
t0 A B C 1 0
t1 B D F 1 0
C E G 0 1
t2 D H H 0 1
E H M 1 0
t3 H A A 0 1
M A - 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ù
A
t0 0/1 1/0
Reset
B C
t1 0/1 1/0 0/0 1/1
D F E G
H L J N I M K P
0/0 1/1 0/0 0/0 0/1 0/0 1/1 0/1 0/0 0/1
t3
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)
X1 Z
ROM
16 words
x 4 bit Q1+ Q1
D1
CK
Q+
2 Q2
Q1 D2
Q2 CK
Q+
3 Q3
Dk
Q3 CK
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 Dãy
AND OR
p đường word
(số hạng tích) m đường ra
Ví dụ, Toå chöùc noäi cuûa PLA 4x3 vôùi 6 soá haïng tích
a b c d
Dãy OR
a'bd
abd Các
ab'c' đường
b'c Word
c
bc
F1 F2 F3
Dãy AND Output
a b c d F1 F2 F3
0 1 - 1 1 1 0
1 1 - 1 1 0 1
1 0 0 - 1 0 1
- 0 1 - 1 0 0
- - 1 - 0 1 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
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 19
2 I1 O1 18
3 I2 O2 17
4 I3 O3 16
5 I4 O4 15
6 I5 O5 14
7 I6 O6 13
8 I7 O7 12
9 I8 O8
11 I9
I10
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
Input số mã ASCII cho số mã hex
W X Y Z hex A6 A5 A4 A3 A2 A1 A0
0 0 0 0 0 0 1 1 0 0 0 0
0 0 0 1 1 0 1 1 0 0 0 1
.
.
1 0 0 1 9 0 1 1 1 0 0 1
1 0 1 0 A 1 0 0 0 0 0 1
.
.
1 1 1 1 F 1 0 0 0 1 1 0
W
A6
X
Y A5
Z PAL A4
A3
A2
A1
A0
B
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 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
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 Q1 Q2 Q3 Z D1 (Q1+) D2 (Q2+) D3 (Q3+)
0 0 0 0 1 0 0 1
0 0 0 1 1 0 1 1
0 0 1 0 0 1 0 0
0 0 1 1 0 1 0 1
0 1 0 0 1 1 0 1
0 1 0 1 0 0 0 0
0 1 1 0 1 0 0 0
0 1 1 1 x x x x
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 0 1 1 1 1 0 1
1 1 0 0 0 1 1 0
1 1 0 1 1 0 0 0
1 1 1 0 x x x x
1 1 1 1 x x x x
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 Q1 Q2 Q3 Z D1 (Q1+) D2 (Q2+) D3 (Q3+)
- 1 0 - 0 1 0 0
- 0 1 - 0 1 0 0
- - 0 - 0 0 1 0
- - 0 1 0 0 0 1
0 1 0 - 0 0 0 1
1 0 0 - 0 0 0 1
0 0 1 0 0 0 0 1
0 - - 0 1 0 0 0
1 - - 1 1 0 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
A Bộ đệm
ra đảo 3
t.thái
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 Soá ngoõ vaøo Soá ngoõ ra Soá caùc coång AND
(tröïc tieáp+hoài tieáp + caùc IO) (FF + IO) treân coång OR
16R4 8+4+4 4+4 8
16R6 8+6+2 6+2 8
16R8 8+8+0 8+0 8
20R4 12+4+4 4+4 8
20R6 12+6+2 6+2 8
20R8 12+8+0 8+0 8
20X4 10+4+6 4+6 3/2*
20X8 10+8+2 8+2 3/2*
20X10 10+10+0 10+0 -/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 )
U=1 D=1
+ +
Q3 Q2 Q1 Q0 Q3 Q2 Q 1+ Q0 +
Q3 +
Q2+
Q 1+ Q 0+
0 0 0 0 0 0 0 1 1 1 1 1
0 0 0 1 0 0 1 0 0 0 0 0
0 0 1 0 0 0 1 1 0 0 0 1
0 0 1 1 0 1 0 0 0 0 1 0
0 1 0 0 0 1 0 1 0 0 1 1
0 1 0 1 0 1 1 0 0 1 0 0
0 1 1 0 0 1 1 1 0 1 0 1
0 1 1 1 1 0 0 0 0 1 1 0
1 0 0 0 1 0 0 1 0 1 1 1
1 0 0 1 1 0 1 0 1 0 0 0
1 0 1 0 1 0 1 1 1 0 0 1
1 0 1 1 1 1 0 0 1 0 1 0
1 1 0 0 1 1 0 1 1 0 1 1
1 1 0 1 1 1 1 0 1 1 0 0
1 1 1 0 1 1 1 1 1 1 0 1
1 1 1 1 0 0 0 0 1 1 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.
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
S1 S0
VCC
F0
S
VCC
F1
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
Sb
S6
S6 YaRb
YaRb (Sa+Sb’)
S11 S10 S9 S8 S7
Sa’Sb
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
G
J B * Y(Q)
Khối F
KC S
logic tổ D
hợp Q
clear D CK
* * R
clock
A
B Hàm 3
biến bất F
C
kỳ
A F
D
B Hàm 4
biến bất
C Q
kỳ
D A
G
B Hàm 3
Q biến bất G
C
kỳ
Lựa chọn một hàm 4 biến D
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
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
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
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
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) J-
K 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.
1 2 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 Data 1
D Q
Input Input 0
CK Q 1
Ck 0
D Q
1KHz
CK
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 Pr
J Q
CK
CLR 1
0 1 K Q
CLR
Pr 1
0
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.
A J J
X Y
B CLK CLK
C K Clear 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 Q2 Q3
0
T OS T OS T OS
tp=10ms Q1 Q2 Q3
1 K C 1 K B K A
1Hz X
Z Y
D X D Y
B CLK CLK
X Y
W PRE PRE
C 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 Q
CP1
Clock CLK
K Q
CP2
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.
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
• 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
Lề nhiễu ở trạng thái 1
VIH
VIL
Lề nhiễu ở trạng thái 0
VOH
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
Rc
Y
Rb1 Q1 Q2
A
Rb2
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 Rc
DA D1 D2 Y
Q
A
B
DB Rb
AND 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
Vcc
R1 R2 Rc
R1
Q1 Q3
Q2
A
A DA
Q2
B 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 Chuẩn Tối thiểu
VOL 0.2 0.4
VOH 2.4 3.4
VIL 0.8
VIH 2.0
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
VCC
R1 R2
A A
X
B
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.
A X A A X
X= A
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
CHƯƠNG 6.
GIAO TIẾP TƯƠNG TỰ - SỐ
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
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
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
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.
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.
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.
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.
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ä.
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 DB0
-IN DB1
DB2
VREF/2 DB3
DB4
CLKIN DB5
CLKR DB6
DB7
RD
WR INTR
CS
VCC/VREF
GND AGND
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
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
0 ≤ u ra ≤ U LSB (2 N − 1) = U ref = 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.
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 N −1
u ra = I ref ∑ S i Ri = ∑S R i i ,
i =0 Rref i =0
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 N −1
1
Δu ra = ∑ Si
Rref i =0 ∂Ri
ΔRi =
Rref
∑S
i =0
i Δ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 ref
U LSB = R
Rref
N −1
U ref 1 U ref
ruùt ra: Δu ra =
Rref
∑S
i =0
i ΔRi <
2 Rref
R
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
∑
i =0
ΔRi < R
2
.
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 ∑ 2i < R ,
i =0 2
ΔR 1
vaø < .
R (
2 2 −1
N
)
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 1
R11
=
(
2 2 −1 11
) = 0,00024 = 0,024% .
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:
2
ui = I i R = 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ò:
N −1
2
u ra = 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
Caùc thoâng soá vaø ñaëc tính kyõ thuaät SV töï tra taøi lieäu
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…
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
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…
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
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
Söû duïng 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
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
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)
/ NOT
* AND
+ OR
:+: XOR
:*: XNOR
1 Module mux12t4
2 title '12 to 4 multiplexer
3 Thi nghiem 1'
4 “Cac khai bao
5 mux12t4 device 'P16V8S';
11 H = [1,1,1,1];
12 L = [0,0,0,0];
13 X = [.x.,.x.,.x.,.x.];
14 select = [s1, s0];
15 y = [y3,y2,y1,y0];
16 a = [a3,a2,a1,a0];
17 b = [b3,b2,b1,b0];
18 c = [c3,c2,c1,c0];
19 equations
20 y = (select == 0) & a #
21 (select == 1) & b #
22 (select == 2) & c #
23 (select == 3) & c ;
- 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
U2
S1 1 12
2 I0 F0 13
S0 I1 F1
A2
3 14 A1
4 I2 F2 15
I3 F3
A0
5 16
GAL16V8 I4 F4
B2
6 17 B1
7 I5 F5 18
I6 F6
B0
8 19
9 I7 F7
11 I8
I9
16V8
B2 B1 B0 A2 A1 A0
8 Select = [S1,S0];
9 A = [A2,A1,A0];
10 B = [B2,B1,B0];
11 X,Z = .X., .Z.;
12 Equations
13 A = B;
14 B = A;
15 Enable A = (Select==1);
16 Enable B = (Select==2);
17 test_vectors
18 ([Select, A, B]-> [ A, B])
19 [ 0 , 0, 0]-> [ Z, Z];
20 [ 0 , 7, 7]-> [ Z, Z];
21 [ 1 , X, 3]-> [ 3, X];
22 [ 1 , X, 5]-> [ 5, X];
23 [ 2 , 3, X]-> [ X, 3];
24 [ 2 , 5, X]-> [ X, 5];
25 [ 3 , 0, 0]-> [ Z, Z];
26 [ 3 , 7, 7]-> [ Z, Z];
27 end
• Giaûi thích chöông trình
- 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.
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 Output 1
U2
12 Y32
G B A Y3 Y2 Y1 Y0 G1
A1
2
3
I0
I1
F0
F1
13
14
Y22
Y12
I2 F2
1 0 0 1 1 1 0 B1
G2
4
5 I3 F3
15
16
Y02
Y31
I4 F4
1 0 1 1 1 0 1 A2
B2
6
7 I5 F5
17
18
Y21
Y11
I6 F6
1 1 0 1 0 1 1 8
9 I7 F7
19 Y01
I8
1 1 1 0 1 1 1 11
I9
0 x x 1 1 1 1 16V8
• Chöông trình
1 Module decod2t4
2 Title 'giai ma 2 sang 4
3 Thi nghiem 3'
4
5 Decod2t4 device 'P16V8S';
6 G1,G2 pin 2,5;
7 A1,B1,A2,B2 pin 3,4,6,7;
8 Y01,Y11,Y21,Y31 pin 19,18,17,16;
9 Y02,Y12,Y22,Y32 pin 15,14,13,12;
10
11 H,L,X = 1,0,.x.;
12 inputs1 = [G1,B1,A1];
13 outputs1 = [Y31,Y21,Y11,Y01] ;
14 inputs2 = [G2,B2,A2];
15 outputs2 = [Y32,Y22,Y12,Y02];
16
17 Truth_table (inputs1->outputs1)
18 [1,0,0] -> [H,H,H,L];
19 [1,0,1] -> [H,H,L,H];
20 [1,1,0] -> [H,L,H,H];
21 [1,1,1] -> [L,H,H,H];
22 [0,X,X] -> [H,H,H,H];
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
U2
CK 1 12
2 I0 F0 13
CL I1 F1
3 14
4 I2 F2 15
5 I3 F3 16
I4 F4
Q0
6 17 Q1
7 I5 F5 18
I6 F6
Q2
8 19 Q3
9 I7 F7
11 I8
I9
16V8
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 Traïng thaùi keá
+
Q3 Q2 Q1 Q0 Q3 Q2+ Q1+ Q0+
0 0 0 0 0 0 0 1
0 0 0 1 0 0 1 0
0 0 1 0 0 0 1 1
0 0 1 1 0 1 0 0
0 1 0 0 0 1 0 1
0 1 0 1 0 1 1 0
0 1 1 0 0 1 1 1
0 1 1 1 1 0 0 0
1 0 0 0 1 0 0 1
1 0 0 1 1 0 1 0
1 0 1 0 1 0 1 1
1 0 1 1 1 1 0 0
1 1 0 0 1 1 0 1
1 1 0 1 1 1 1 0
1 1 1 0 1 1 1 1
1 1 1 1 0 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 module count4
2 title 'COUNTER MOD16
3 Bai so 1'
4 Counter device 'P16V8R';
5 CK,CL pin 1,2 ;
6 Q3,Q2,Q1,Q0 pin 19,18,17,16;
7 Count = [Q3,Q2,Q1,Q0];
8 C,H,L = .C.,1,0 ; "Xung CK tac dong canh len
9 Equations
10 Q0 := !Q0 & CL;
11 Q1 := (Q1$Q0) & CL;
12 Q2 := (Q2$(Q1&Q0))&CL;
13 Q3 := (Q3$(Q2&Q1&Q0))&CL;
• 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.