BT-VXL-Ch 1 – trang 1
ĐHBK Tp HCM–Khoa ĐĐT–BMĐT
GVPT: H Trung M
Môn: Vi X Lý – AY1213
Bài tp – Chương 1. Gii thiu h VXL tng quát
Chú ý: Trong tt c các bài tp chương này chúng ta gi s là các chân chn chip ca b nh ROM, RAM, và
thiết b I/O là tích cc thp (/CS hay /CE) nếu không có qui định trước trong đề bài hay hình v.
1. Viết các “t điu khin” (control word) (hình 1.14 trong sách VXL) để thc hin các phép toán sau:
a) R3 2R1 – 3R2
b) R3 3R1 – 2R2
c) R5 4R1 – 2(R2 R4)
d) R1
Input/4 + (bù 1 ca R3)/2
e) Output (bù 2 ca R1) + (bù 2 ca R2)
f) R5 16R1 + 8R2 – 4R3–2R4
2. Hãy cho biết dung lượng b nh ln nht (tính theo byte và word) mà CPU có th qun lý được nếu nó có:
a) S đường địa ch là 16 và s đường d liu là 8.
b) S đường địa ch là 20 và s đường d liu là 8.
c) S đường địa ch là 20 và s đường d liu là 16.
d) S đường địa ch là 24 và s đường d liu là 32.
e) S đường địa ch là 32 và s đường d liu là 64.
3. Hãy cho biết giá tr ca các c trong thanh ghi trng thái sau khi CPU 8 bit thc thi lnh sau (gi s ban đầu
tt c các c có tr là 0 trước khi thc thi lnh)
a) Cng 2 s 8 bit: +125 vi –18
b) Cng 2 s 8 bit: –125 vi –18
c) Cng 2 s 8 bit: F5H vi 0BH
d) Tr 2 s 8 bit: 104 vi 12
e) Tr 2 s 8 bit: –118 vi –37
f) Tr 2 s 8 bit: –128 vi +57
4. Viết mã để tính biu thc F = A * (B + C) + D trên các CPU có lnh 3, 2, 1, và 0 địa ch. Không sp xếp
li biu thc và khi tính toán không làm thay đổi các biến A, B, C, và D.
5. Viết mã để tính biu thc F = (A + B) * C + D trên các CPU có lnh 3, 2, 1, và 0 địa ch. Không sp xếp
li biu thc và khi tính toán không làm thay đổi các biến A, B, C, và D.
6. Viết mã để tính biu thc F = A * C + (B + C)* D trên các CPU có lnh 3, 2, 1, và 0 địa ch. Không sp
xếp li biu thc và khi tính toán không làm thay đổi các biến A, B, C, và D.
7. Hãy đin vào các ch trng trong hình sau cho thy hiu ng ca các cách định địa ch
Hình 1. Các cách định địa ch
BT-VXL-Ch 1 – trang 2
8. Xét mt b nh có dung lượng 2M x 16, word đầu tiên ca b nh này có byte thp là EDH và byte cao là
05H. Hai byte này biu din giá tr ca 1 s nguyên có du 16 bit, hãy tìm giá tr thp phân ca s nguyên này
nếu:
a) B nh được lưu tr theo “little endian
b) B nh được lưu tr theo “big endian”
9. Xét mt b nh có dung lượng 2M x 16, word đầu tiên ca b nh này có byte thp là D3H và byte cao là
25H, và word kế tiếp có byte thp là 17H và byte cao là 36H. Bn byte này biu din giá tr ca 1 s nguyên
có du 32 bit, hãy tìm giá tr thp phân ca s nguyên này nếu:
a) B nh được lưu tr theo “little endian
b) B nh được lưu tr theo “big endian”
10. Xét các b nh 32K x 8, 64K x 4, 128K x 16, và 256K x 1, vi mi loi b nh hãy cho biết
a) S chân địa ch và s chân d liu ca b nh này?
b) Dung lượng ca b nh này tính theo bit, byte và word?
11. Gi s mt b nh 1M x 16 bit được xây dng t các chip SRAM 256K x 8 bit và word nh được t chc
định địa ch theo word 16 bit.
a) S SRAM cn dùng là bao nhiêu?
b) Mt word b nh cn truy cp bao nhiêu chip SRAM?
c) S bank b nh là bao nhiêu? (bank b nh là 1 vùng nh được xây dng t các b nh có cùng kết
ni địa ch)
d) S bit địa ch cn cho 1 chip RAM ?
e) S bit địa ch cn cho b nhy?
12. Thiết kế ROM 3K x 8 t các chip ROM 1K x 4.
13. Thiết kế ROM 2K x 8 t các ROM 256 x 4.
14. Thiết kế module ROM 64K x 8 t ROM 16K x 32
15. Thiết kế SRAM 8 x 32 t các SRAM 8 x 8.
16. Thiết kế SRAM 16 x 4 t các SRAM 4 x 4.
17. Thiết kế SRAM 16K x 8 t: a) Các SRAM 1K x 1; b) Các SRAM 2K x 4; c) Các SRAM 1K x 8
18. S dng các RAM 64K x 8 (hình 2) và 1 mch gii mã, xây dng sơ đồ khi cho RAM 256K x 32.
Hình 2. RAM 64K x 8 Hình 3. RAM
19. Cho mt chip b nh chun như hình 3.
a) Tính s ô nh ca chip này (theo K vi 1 K=1024)
b) Viết phương trình tính s đường địa ch khi biết s ô nh?
c) Hãy thiết kế b nh 40K t các chip b nh trên (có th s dng thêm các cng logic).
20. Hãy dùng các mch logic thích hp để thiết kế mch nhn d liu đơn v đích vi truyn d liu song
song bt đồng b dùng xung strobe (xung ly mu) xut phát t đơn v ngun.
21. Hãy dùng các mch logic thích hp để thiết kế mch phát d liu đơn v ngun vi truyn d liu song
song bt đồng b dùng xung strobe (xung ly mu) xut phát t đơn v đích.
22. V dng sóng ca khung truyn trong truyn d liu ni tiếp bt đồng b khi truyn 1 byte 57H vi LSB
được truyn đi trước cho các trường hp sau: (nếu biết tc độ truyn là 4800 bps)
a) D liu 7 bit, không có parity và 1 bit stop.
b) D liu 7 bit, có parity l và 2 bit stop.
c) D liu 8 bit, không có parity và 1 bit stop.
d) D liu 8 bit, có parity l và 1 bit stop.
BT-VXL-Ch 1 – trang 3
e) D liu 8 bit, có parity chn và 1 bit stop.
Chú ý: Phi ghi rõ chu k bit, tên ca các bit Start, Stop, Parity, và d liu (D0=LSB . . .)
23. Hãy lp bng b nh cho các tín hiu CS trong hình sau:
Hình 4.
24. Hãy lp bng b nh ca các mch hình 5 và 6, t đó suy ra dung lượng ca các h thng b nhy.
Các mnh này dùng kiu gii mã địa ch gì? (toàn phn hay 1 phn). Biết h thng này dùng CPU có 20
đường địa ch và có tín hiu IO/M để điu khin truy cp b nh hay I/O (0: b nh, 1: I/O)
Hình 5. Gii mã địa ch ch bng decoder.
Hình 6. Gii mã địa ch ch bng các cng logic.
BT-VXL-Ch 1 – trang 4
25. Hãy lp bng b nh ca hình sau, t đó suy ra dung lượng ca các h thng b nhy. Mnh này dùng
kiu gii mã địa ch gì? (toàn phn hay 1 phn).Biết h thng này dùng CPU có 16 đường địa ch và có tín
hiu IO/M để điu khin truy cp b nh hay I/O (0: b nh, 1: I/O)
Hình 7. Gii mã địa ch ch bng decoder.
26. Hãy tìm dung lượng ca mi SRAM và lp bng b nh ca mch sau: (74139 là mch gii mã 2 sang 4)
Hình 8. Gii mã địa ch ch bng decoder và các cng logic.
27. Thiết kế 1 module b nh ch bng các ROM 4K, SRAM 1K và các mch gii mã 74138 vi di địa ch
ca các các b nh như sau:
ROM 1: 0000H–0FFFH ROM 3: 2000H–2FFFH SRAM 2: 6400H–67FFH
ROM 2: 1000H–1FFFH SRAM 1: 6000H–63FFH
28. Thiết kế 1 module b nh ch bng ROM 4K, SRAM 1K và các mch gii mã 74138 vi di địa ch ca
các các b nh như sau:
ROM 1: 0000H–0FFFH ROM 3: 4000H–4FFFH SRAM 2: A000H–A3FFH
ROM 2: 2000H–2FFFH SRAM 1: 8000H–83FFH
29. Thiết kế mch gii mã địa ch dùng 74138 vi bng b nh sau
SRAM 1: 2000H–3FFFH ROM 2: 6000H–7FFFH ROM 3: C000H–DFFFH
ROM 1: 4000H–5FFFH SRAM 2: A000H–BFFFH
30. Xét 1 h VXL dùng CPU có 8 đường d liu và 16 đường địa ch. H này dùng 1 ROM 8K x 8 và 2
SRAM 8K x8 vi bng b nh sau:
ROM: 0000H–1FFFH SRAM 1: 2000H–3FFFH SRAM 2: 4000H–5FFFH
BT-VXL-Ch 1 – trang 5
Hãy thiết kế mch gii mã địa chi theo: a) gii mã toàn phn; b) gii mã mt phn.
31. Thiết kế mch gii mã địa ch cho CPU có 20 bit địa ch, 8 bit d liu để có th truy cp RAM 64KB vi
vùng địa ch là 00000H – 0FFFFH. Biết RAM có s hiu là HM62864 vi các đường tín hiu:
/CS1, CS2 là 2 đường chn chip
/OE cho phép xut
/WE cho phép ghi
16 đường địa ch A15...A0
8 đường d liu I/O7...I/O0
và CPU có các đường điu khin b nh là /MEMW và /MEMR.
32. Thiết kế mch gii mã địa ch cho CPU có 20 bit địa ch, 8 bit d liu vi bng b nh như sau:
00000 H – 3FFFFH : RAM 0 256 KB
40000 H – 7FFFFH : RAM 1 256 KB
80000 H – BFFFFH: RAM 2 256 KB
E0000 H – EFFFFH: ROM 0 64 KB
F0000 H – EFFFFH: ROM 1 64 KB
33. Hãy lp bng I/O cho các mch gii mã địa ch I/O sau:
Hình 9. Hình 10.
34. Vi mch gii mã địa ch thiết b I/O sau hình 11. Biết khi truy cp I/O thì tín hiu /IORQ = 0.
a) Hãy cho biết các PORT 1 và PORT 2 đóng vai trò gì? (cng xut hay nhp)
b) Tìm địa ch ca các PORT 1 và PORT 2. Mô tm cách nào CPU có th đọc vào hay xut ra qua các
chân IO ca mch.
Hình 11. Gii mã địa ch ca cng I/O.