Nguyen Thanh Tung THPT QUY H
OP I
1
KiÕn tróc m¸y tÝnh
Ch¬ng 6
HÖ thèng vµo/ra
2
Nội dung bài giảng
Chương 1: Giới thiệu chung
Chương 2: Biểu diễn DL & số học máy tính
Chương 3: Bộ xử lý
Chương 4: Kiến trúc tập lệnh
Chương 5: Hệ thống nhớ
Chương 6: Hệ thống vào/ra
3
Nội dung chương 6
Tổng quan về hệ thống vào/ra
Các phương pháp địa chỉ hóa cổng vào/ra
Các phương pháp điều khiển vào/ra
Nối ghép thiết bị ngoại vi.
4
§å häa
M¹ng
C¸c ng¾t
6
Tại sao cần Modul vào/ra?
Không thể nối trực tiếp các thiết bị ngoại với
bus hệ thống, vì:
BXL không thể điều khiển được tất cả TBNV
Tốc độ trao đổi dữ liệu khác nhau
Khuôn dạng dữ liệu khác nhau
Tất cả có tốc độ chậm hơn BXL và RAM
Chức năng của Modul vào/ra:
Nối ghép với BXL và hệ thống nhớ
Nối ghép với một hoặc nhiều TBNV
7
Các thiết bị ngoại vi
Chức năng: chuyển đổi dữ liệu giữa bên trong
và bên ngoài máy tính
Phân loại:
Bộ chuyển đổi tín hiệu (transducer): chuyển
đổi dữ liệu từ dạng tín hiệu điện thành dạng
năng lượng khác và ngược lại
Logic điều khiển (control logic): điều khiển
hoạt động của TBNV đáp ứng theo yêu cầu từ
Modul vào/ra
Bộ đệm (buffer): chứa dữ liệu tạm thời khi trao
đổi dữ liệu giữa Modul vào/ra và TBNV
11
Modul vào/ra
Chức năng:
Điều khiển và định thời gian
Trao đổi thông tin với BXL
Trao đổi thông tin với TBNV
Bộ đệm dữ liệu
Phát hiện lỗi
12
Sơ đồ khối của Modul vào/ra
Các đường
dữ liệu
Nối ghép với
có một địa chỉ xác định
Thanh ghi điều khiển/trạng thái: lữu giữ thông
tin điều khiển, trạng thái cho các cổng vào/ra
Logic điều khiển: điều khiển Modul vào/ra
14
Các PP địa chỉ hóa cổng vào/ra
Vào/ra cách biệt (isolated IO)
Vào/ra theo bản đồ bộ nhớ
(memory mapped IO)
15
Vào/ra cách biệt
Đặc điểm:
Không gian địa chỉ cổng vào/ra nằm ngoài không
gian địa chỉ bộ nhớ
Cách truy nhập:
Cần có tín hiệu phân biệt truy nhập cổng vào/ra
hay truy nhập bộ nhớ
Sử dụng lệnh vào/ra chuyên dụng: IN, OUT.
16
VÝ dô ®èi víi BXL 8088
Bé nhí ThiÕt bÞ vµo ThiÕt bÞ ra
MOV
IO/M = 0
00000H
FFFFFH
Vµo/ra
Bé nhí
19
C¸c ph¬ng ph¸p ®iÒu khiÓn vµo/ra
Vµo/ra b»ng ch¬ng tr×nh (Programmed IO)
Vµo/ra b»ng ng¾t (Interrupt Driven IO)
Vµo/ra b»ng DMA (Direct Memory Access)
20
Vµo/ra b»ng ch¬ng tr×nh
Nguyªn t¾c chung:
•
Sö dông lÖnh vµo/ra trong ch¬ng tr×nh ®Ó trao
®æi d÷ liÖu víi cæng vµo/ra
•
Khi BXL thùc hiÖn ch¬ng tr×nh, gÆp lÖnh vµo/ra
th× BXL ®iÒu khiÓn trao ®æi d÷ liÖu víi thiÕt bÞ
ngo¹i vi
21
Hoạt động vào/ra bằng chương trình
BXL yêu cầu thao tác vào/ra
VD: điều khiển quay đĩa
Kiểm tra: kiểm tra trạng thái
VD: nguồn? lỗi?
Đọc/ghi
Modul truyền DL qua bộ đệm từ/tới thiết bị
24
§Æc ®iÓm
BXL trùc tiÕp ®iÒu khiÓn vµo/ra
•
NhËn biÕt th«ng tin tr¹ng th¸i tõ TBNV
•
Ph¸t tÝn hiÖu ®iÒu khiÓn Read/Write
•
Trao ®æi d÷ liÖu
BXL chê ®Õn khi Modul vµo/ra hoµn thµnh
thao t¸c
Tèn thêi gian cña BXL
25
Phân loại ngắt
Ngắt cứng (Hard Interrupt): yêu cầu ngắt do
mạch phần cứng bên ngoài gửi đến