Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 65;Đổi Giây trong DH từ số thập phân sang mã ASCII rồi ;cất vào Time_Buf.
Trang 4Các thành ph n c a kh i x lý ầ ủ ố ử
B vi x lý – CPUộ ử (Central Processing Unit): Là
b não c a máy tính, nó x lý các thông tin và đi u ộ ủ ử ềkhi n m i ho t đ ng c a máy tính.ể ọ ạ ộ ủ
B nh trong:ộ ớ Là b nh có kh năng liên l c tr c ộ ớ ả ạ ự
ti p v i b vi x lý,là n i l u tr d li u ph c v ế ớ ộ ử ơ ư ữ ữ ệ ụ ụcho quá trình x lý.ử
Các m ch vào ra:ạ Đ đi u khi n vi c giao ti p ể ề ể ệ ế
v i thi t b ngo i vi.ớ ế ị ạ
H th ng Bus:ệ ố K t n i các b ph n trên l i v i ế ố ộ ậ ạ ớ
nhau
Trang 5Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 5
Chi ti t: ế
Trang 6BUS: Là h th ng dây d n và cáp n i đ ệ ố ẫ ố ể
liên l c gi a CPU v i b nh và các vi ạ ữ ớ ộ ớ
m ch vào ra ạ
Có ba lo i BUS ạ : Bus đ a ch (Address ị ỉ
bus), Bus d li u (Data bus), Bus đi u ữ ệ ề
khi n (Control bus) ể
Trang 7Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 7
Bus Đ a ch : ị ỉ Dùng đ truy n đ a ch c a ô ể ề ị ỉ ủ
nh mà ớ CPU c n liên l c ầ ạ
Bus D li u: ữ ệ Dùng đ truy n d li u ể ề ữ ệ
Bus Đi u khi n: ề ể Dùng đ truy n các tín ể ề
hi u đi u khi n trong quá trình liên l c ệ ề ể ạ
(Ví d : tín hi u xác đ nh quá trình truy ụ ệ ị
nh p b nh là ậ ộ ớ Đ c ọ hay Ghi )
Trang 8Các m ch vào ra ạ
CPU không th liên l c tr c ti p v i các ể ạ ự ế ớ
thi t b ngo i vi mà ph i thông qua các ế ị ạ ả vi
m ch vào/ra ạ
M i vi m ch này ch a m t vài thanh ghi ỗ ạ ứ ộ
g i là ọ c ng vào/ra (Input/Output Port) ổ
T ươ ng t nh b nh , ự ư ộ ớ các c ng vào/ra ổ
cũng đ ượ c đánh đ a ch ị ỉ
Trang 9Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 9
Phân lo i vi x lý ạ ử
Multi chip: dùng 2 hay nhi u chip LSI (Large ề
Scale Intergration: tích h p t 1000 ÷ 10000 ợ ừ
transistor) cho ALU và control
Microprocessor: dùng 1 chip LSI/VLSI (Very
Large Scale Intergration: tích h p ÷ 10000 ợ
transistor) cho ALU và control
Single chip microprocessor (còn g i là ọ
microcomputer / microcontroller): là 1 chip
LSI/VLSI ch a toàn b các kh i nh slide ứ ộ ố ư ở
trước
Trang 11Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 11
Ki n trúc b vi x lý ế ộ ử
Xem s đ : ơ ồ
Trang 13Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 13
B vi x lý có 2 kh i ch c năng: ộ ử ố ứ
Kh i th c thi (EU - Execution unit): ố ự Đ m ả
nhi m vi c th c hi n l nh ệ ệ ự ệ ệ
Kh i giao ti p bus ố ế (BIU – Bus interface
unit): Liên l c gi a EU v i Bus ngoài ạ ữ ớ
Trang 14Kh i th c thi (EU) ố ự
ALU: Th c hi n các l nh s h c và logic ự ệ ệ ố ọ Các toán h ng đ ạ ượ c ch a trong các thanh ứ ghi d li u ( ữ ệ data register ) hay thanh ghi đ a ị
ch ( ỉ address register ), hay t bus n i ừ ộ
( internal bus ).
CU (Control Unit): Kh i đi u khi n ho t ố ề ể ạ
đ ng c a EU Trong kh i này có ộ ủ ố m ch ạ
gi i mã l nh (Instruction decoder) ả ệ
Trang 15Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 15
Quá trình thi hành l nh: ệ
L y l nh - Gi i mã – Th c hi n ấ ệ ả ự ệ
Trang 16s chu kỳ máy (ố machine cycle) tuỳ theo l nh ệ
Sau khi l nh đã th c thi, ệ ự b gi i mã l nhộ ả ệ s đ t ẽ ặ
Con tr l nhỏ ệ đ n đ a ch c a l nh k ế ị ỉ ủ ệ ế
Trang 17Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 17
Các chân tín hi u c b n c a CPU ệ ơ ả ủ
Trang 19Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 19
Read: Đi u khi n đ c ề ể ọ
Write: Đi u khi n ghi ề ể
Address: Các chân xác đ nh đ a ch khi c n ị ị ỉ ầ giao ti p v i b nh ế ớ ộ ớ
Data: Các chân dành cho d li u ữ ệ
Trang 20
H vi x lý Intel 8x86 ọ ử
4004 là b VXL đ u tiên c a Intel, ra đ i ộ ầ ủ ờ
năm 1971 Nó ch a ứ 2300 transitor :
Trang 21Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 21
B VXL ộ Pentium 4 hi n nay ch a ệ ứ 55 tri u ệ transistor :
Trang 23Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 23
Trang 27BIU, th c thi các l nh này và ch a các k t qu ự ệ ứ ế ả
trong các thanh ghi
Chú ý r ng ằ EU không có bus h th ng nên ph i ệ ố ả
th c hi n nh n và xu t t t c các d li u c a nó ự ệ ậ ấ ấ ả ữ ệ ủthông qua BIU
Trang 28l p v i nhau nên ậ ớ BIU có kh năng nh n m t ả ậ ộ
l nh m i trong khi ệ ớ EU đang th c thi l nh trự ệ ước
đó
Khi EU th c hi n xong l nh, nó s l y mã l nh ự ệ ệ ẽ ấ ệ
k ti p trong hàng đ i l nh.ế ế ợ ệ
Trang 29dài 4 byte trong khi c a ủ 8086 là 6 byte.
Tuy nhiên do EU c a hai b ủ ộ VXL này gi ng nhau ốnên các chương trình vi t cho ế 8086 có th ch y ể ạ
được trên 8088 mà không c n thay đ i gì c ầ ổ ả
Trang 30Các chân c a VXL 8086 ủ
Trang 31Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 31
Gi i thích: ả
8086 có bus đ a ch ị ỉ 20 bit , bus d li u ữ ệ 16
bit , 3 chân ngu n và ồ 17 chân dùng cho các
ch c năng đi u khi n ứ ề ể
Tuy nhiên m t chân có th đ m nhi m ộ ể ả ệ
nhi u ch c năng ta (nh k thu t phân ề ứ ờ ỹ ậ
kênh theo th i gian - time multiplexing) ờ
Trang 32C th : ụ ể
16 chân (AD0 ÷ AD15): v a là chân d li u, ừ ữ ệ
v a là chân đ a ch Các chân này s là các đừ ị ỉ ẽ ường
đ a ch trong tr ng thái ị ỉ ạ T1 và d li u trong các ữ ệ
Trang 33Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 33
Trang 34Ch c năng c a các chân ứ ủ
8086 có th ho t đ ng 2 ch đ : t i thi u ể ạ ộ ở ế ộ ố ể ( minimum mode ) và t i đa ( ố maximum mode )
Ch đ t i thi u ế ộ ố ể ch dùng cho các h th ng ỉ ệ ố VXL đ n gi n ơ ả
Ch đ t i đa ế ộ ố dùng cho các h th ng ph c ệ ố ứ
t p h n, giao ti p v i các b nh và I/O ạ ơ ế ớ ộ ớ
riêng.
Trang 35Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 35
Các chân dùng chung cho c hai ch đ ả ế ộ
t i đa và t i thi u: ố ố ể
Trang 36Các chân ch ỉ dùng cho ch đ t i thi u: ế ộ ố ể
Trang 37Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 37
Các chân ch dùng cho ch đ t i đa: ỉ ế ộ ố
Trang 39Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 39
Xung nh p: ị
8086 s d ng xung nh p d ng xung ch ử ụ ị ạ ữ
nh t có chu kỳ v i th i gian c nh lên và ậ ớ ờ ạ
xu ng nh h n ố ỏ ơ 10 ns (đi vào chân CLK ).
Trang 40Các chân tr ng thái bus (S0, S1, S2): ạ
Trang 41kh i b nh và I/O đ cho phép thi t b khác x ỏ ộ ớ ể ế ị ử
lý bus h th ng Quá trình này g i là truy xu t ệ ố ọ ấ
b nh tr c ti p (DMA – Direct Memory ộ ớ ự ế
Access)
HLDA (Hold acknowledge): Ghi nh n yêu c u ậ ầ
DMA đ i v i b đi u khi n DMA.ố ớ ộ ề ể
Trang 42hi u m c th p vào ệ ứ ấ chân yêu c uầ
+ Sau khi nh n yêu c u, 8086 s tr ng thái ậ ầ ẽ ở ạ
HOLD và g i tín hi u ch p nh n ra chân này ử ệ ấ ậ Ở
đây, chân RQ/GT0 có đ u tiên cao h n chân ộ ư ơ RQ/GT1
LOCK: báo cho các thi t b khác bi t không th ế ị ế ể
Trang 44Các chân đi u khi n bus (READY, IO/M, ề ể
RD, WR, DEN, DT/R ):
READY: Chân này m c th p s ng ở ứ ấ ẽ ứ
v i tr ng thái không s n sàng, còn m c ớ ạ ẵ ứ
cao thì ng v i tr ng thái s n sàng ứ ớ ạ ẵ
Chân IO/M (IO/Memory – Xu t nh p /B ấ ậ ộ
nh ): ớ xác đ nh chu kỳ bus hi n hành đang ị ệ
làm vi c v i b nh (m c th p) hay I/O ệ ớ ộ ớ ứ ấ
(m c cao) ứ
Trang 46DEN (Data Enable – cho phép d li u):ữ ệ Chân này
được dùng v i DT/R đ cho phép n i các b đ m ớ ể ố ộ ệhai chi u vào data bus Nó ngăn ng a s tranh ề ừ ự
ch p bus b ng cách c m các b đ m d li u cho ấ ằ ấ ộ ệ ữ ệ
đ n tr ng thái T2, khi các đế ạ ường d li u / đ a ch ữ ệ ị ỉkhông còn l u tr đ a ch c a b nh hay I/O n a.ư ữ ị ỉ ủ ộ ớ ữ
Chân DT/R (Data transmit/receive – truy n/nh n ề ậ
d li u):ữ ệ dùng đ đi u khi n chi u c a lu ng d ể ề ể ề ủ ồ ữ
li u qua các b đ m (n u có) vào bus d li u c a ệ ộ ệ ế ữ ệ ủ
h th ng Khi m c th p, nó ch th c hi n tác v ệ ố ở ứ ấ ỉ ự ệ ụ
đ c và khi m c cao nó ch th c hi n tác v ghi.ọ ở ứ ỉ ự ệ ụ
Trang 47khi chân INTR hay chân NMI c a nó nh n đủ ậ ược
tín hi u yêu c u ng t Sau đó nó trao quy n đi u ệ ầ ắ ề ề
khi n l i cho chể ạ ương trình x lý ng t.ử ắ
Tín hi u yêu c u ng t có th do m t thi t b ệ ầ ắ ể ộ ế ị
ph n c ng ho c do m t l nh INT trong chầ ứ ặ ộ ệ ương
trình sinh ra
Trang 48Lệnh 1 Lệnh 2
INT < >
Lệnh 1 Lệnh 2
Trang 49ng t ắ , đ ượ c đánh s l n l ố ầ ượ ừ t t 0, 1, 2, ,
FFh
D ướ i đây là b ng danh sách các ng t: ả ắ
Trang 52Phân lo i ng t: ạ ắ
Đ phân lo i c n d a trên m t tiêu chí nào ể ạ ầ ự ộ
đó, đây ta s phân lo i ng t d a trên cách ở ẽ ạ ắ ự
th c phát sinh ng t, t m chia làm hai lo i ứ ắ ạ ạ
sau:
Ng t m m ắ ề
Ng t c ng ắ ứ
Trang 54Các ng t đắ ược kích ho t t thi t b ngoài (bàn ạ ừ ế ị
phím, chu t ) gi ng nh ví d trên độ ố ư ụ ược g i là ọ
Ng t c ng ngoài ắ ứ Còn n u ng t phát sinh b i các ế ắ ở
kinh ki n b tr n m trên mainboard thì đệ ổ ợ ằ ược g i ọ
là Ng t c ng trong ắ ứ (hay ng t c ng n i b ắ ứ ộ ộ)
Trang 55Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 55
Ng t 17h – Vào/ra máy in: ắ
Đây là ng t do BIOS qu n lý, nó có ba ch c ắ ả ứ năng:
Ch c năng s 0: Đ a m t kí t ra máy in ứ ố ư ộ ự
Ch c năng s 1: Kh i t o c ng máy in ứ ố ở ạ ổ
Ch c năng s 2: Ki m tra tr ng thái máy in ứ ố ể ạ
Trang 58Ng t 21h ắ
Đây là ng t hay dùng nh t c a DOS, nó có r t ắ ấ ủ ấ
nhi u ch c năng ph n trề ứ Ở ầ ước ta đã s d ng ử ụ
b n ch c năng c a ng t này (ch c năng s 1, 2, ố ứ ủ ắ ứ ố
9 và 4Ch) Trong ph n này ta s tìm hi u thêm ầ ẽ ể
Trang 59đường d n (chu i này ph i có t n ẫ ỗ ả ậcùng là 0)
Ví d : ụ
T o th m c ASM trong đĩa C ạ ư ụ ổ
Trang 60INT 21h ;Gọi ngắt
MOV AH, 4Ch ;Kết thúc
INT 21h
MAIN ENDP
Trang 63MOV Time_Buf+1, AH
Trang 65Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 65
;Đổi Giây (trong DH) từ số thập phân sang mã ASCII rồi ;cất vào Time_Buf
Trang 66MOV AH, 9 ;Chức năng số 9
LEA DX, Time_Buf ;Lấy địa chỉ chuỗi kí tự đặt vào ;thanh ghi DX
Trang 67Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 4 67