Cấu trúc máy tính P8
Trao đổi thông tin
Tổ chức cấu trúc máy tính C5 Vấn đề trao đổi thông tin / S81
CHƯƠNG 5
Trao đổi thông tin
Khoa Công nghệ thông tin Đại học Bách khoa tp.HCM Biên soạn : Nguyễn Xuân Minh
Tổ chức cấu trúc máy tính C5 Vấn đề trao đổi thông tin / S82
Tại sao phải trao đổi thông tin ?
CPU1 Bộ nhớ CPU2
Xuất / nhập
Xuất / nhập Xuất / nhập
Thiết bị
ngoại vi
Bằng cách nào ?
Khoa Công nghệ thông tin Đại học Bách khoa tp.HCM Biên soạn : Nguyễn Xuân Minh
Tổ chức cấu trúc máy tính C5 Vấn đề trao đổi thông tin / S83
Bộ nhớ dùng chung
1. Cả hai CPU đều truy xuất được vùng nhớ chung.
2. Một trong hai CPU (master) có quyền cấm CPU (slave) còn lại truy xuất.
3. Tốc độ trao đổi cao.
4. Cần có mạch chọn địa chỉ bộ nhớ.
5. Tầm địa chỉ truy xuất bộ nhớ của 2 CPU có thể khác nhau (tùy thuộc
mạch giải mã địa chỉ).
6. Mỗi CPU có thể có vùng nhớ riêng.
7. Cần phân định cấu trúc (khung) cho vùng nhớ chung.
Khoa Công nghệ thông tin Đại học Bách khoa tp.HCM Biên soạn : Nguyễn Xuân Minh
Tổ chức cấu trúc máy tính C5 Vấn đề trao đổi thông tin / S84
Màn hình máy IBM/PC
Tín hiệu
Card RGB
màn hình Màn hình
CPU Địa chỉ phân trang 64 KB
RAM
màn hình
Địa chỉ A0000 ÷ BFFFF
Khoa Công nghệ thông tin Đại học Bách khoa tp.HCM Biên soạn : Nguyễn Xuân Minh
Tổ chức cấu trúc máy tính C5 Vấn đề trao đổi thông tin / S85
Chớp Sáng
80 cột
(dòng 0,cột 0)
25 có địa chỉ
dòng B800:0000 Màu chữ
Màu nền
(dòng i,cột j) có địa chỉ B800:0000 + (i ∗ 160 + j ∗ 2)
- Mỗi ký tự lưu bằng 2 byte.
- Byte địa chỉ thấp chứa mã ASCII.
- Byte địa chỉ cao chứa mã màu
Khoa Công nghệ thông tin Đại học Bách khoa tp.HCM Biên soạn : Nguyễn Xuân Minh
Tổ chức cấu trúc máy tính C5 Vấn đề trao đổi thông tin / S86
Kiểm tra trạng thái
1. Dùng để trao đổi thông tin với I/O.
2. Phần điều khiển I/O phải có thanh ghi trạng thái để phản ánh tức thời trạng
thái hoạt động của thiết bị ngoại vi hoặc trạng thái hoạt động của bản
thân phần điều khiển I/O .
3. CPU cần kiểm tra thường xuyên và định kỳ thanh ghi trạng thái.
4. Hiệu suất thấp, lãng phí thời gian CPU.
5. Đoạn chương trình lặp vòng kiểm tra trạng thái không thể thiếu trong
chương trình.
6. Phương pháp này chỉ dùng tốt khi CPU không làm công việc gì khác.
Khoa Công nghệ thông tin Đại học Bách khoa tp.HCM Biên soạn : Nguyễn Xuân Minh
Tổ chức cấu trúc máy tính C5 Vấn đề trao đổi thông tin / S87
Lưu đồ kiểm tra trạng thái
Bắt đầu
công việc chính
nhập thanh ghi
trạng thái
Yếu tố thời
gian
(Time out)
S Kiểm tra
bit Ready
Đ
công việc I/O
Khoa Công nghệ thông tin Đại học Bách khoa tp.HCM Biên soạn : Nguyễn Xuân Minh
Tổ chức cấu trúc máy tính C5 Vấn đề trao đổi thông tin / S88
Interrupt Yêu cầu
ngắt quãng
Cần trao đổi
CPU Xuất thông tin
Chấp nhận
nhập
ngắt quãng
Thiết bị
ngoại vi
Chương trình chính Yêu cầu
ngắt quãng Chương trình phục vụ ngắt quãng
Khoa Công nghệ thông tin Đại học Bách khoa tp.HCM Biên soạn : Nguyễn Xuân Minh
Tổ chức cấu trúc máy tính C5 Vấn đề trao đổi thông tin / S89
Yêu cầu phần cứng
1. Phần điều khiển I/O phải có đường cung cấp tín hiệu yêu cầu ngắt quãng.
2. CPU phải có tín hiệu trả lời chấp nhận ngắt quãng cho phần điều khiển thiết
bị.
3. Khi phần điều khiển thiết bị nhận được tín hiệu chấp nhận ngắt quãng từ
CPU, nó phải cung cấp một thông tin lên tuyến dữ liệu có liên quan đến
cách truy xuất chương trình phục vụ ngắt quãng mà thường được gọi là
vector ngắt.
4. CPU lấy vector ngắt từ tuyến dữ liệu (cất tạm đâu đó nếu cần).
5. CPU đẩy giá trị bộ đếm chương trình và thanh ghi trạng thái chương trình
(PSW) vào stack.
6. CPU định vị chương trình phục vụ ngắt thông qua vector ngắt và chuyển
điều khiển đến đó.
Khoa Công nghệ thông tin Đại học Bách khoa tp.HCM Biên soạn : Nguyễn Xuân Minh
Tổ chức cấu trúc máy tính C5 Vấn đề trao đổi thông tin / S90
Yêu cầu phần mềm
1. Bảo vệ các thanh ghi có sử dụng trong chương trình phục vụ ngắt (thường
dùng stack).
2. Xác định chính xác thiết bị gây ra ngắt quãng trong trường hợp nhiều thiết
bị dùng chung vector ngắt.
3. Đọc nội dung các thanh ghi có liên quan đến thiết bị.
4. Nếu có lỗi xuất nhập thì xử lý trong chương trình phục vụ ngắt.
5. Xử lý nhập hoặc xuất dữ liệu.
6. Báo hiệu kết thúc ngắt cho phần điều khiển ngắt quãng nếu cần.
7. Phục hồi các thanh ghi đã bảo vệ.
8. Làm lệnh TRỞ VỀ TỪ NGẮT QUÃNG để trả điều khiển cho chương trình
đang bị ngắt.
Khoa Công nghệ thông tin Đại học Bách khoa tp.HCM Biên soạn : Nguyễn Xuân Minh
Tổ chức cấu trúc máy tính C5 Vấn đề trao đổi thông tin / S91
Hoạt động xuất nhập bình thường
Nhập
Byte thông
CPU Xuất Xuất/nhập tin nhập
Byte thông
tin xuất
Thiết bị
ngoại vi
Ghi Đọc
Quá trình chuyển ngoại vi - bộ nhớ
Bộ nhớ
Quá trình chuyển bộ nhớ - ngoại vi
Khoa Công nghệ thông tin Đại học Bách khoa tp.HCM Biên soạn : Nguyễn Xuân Minh
Tổ chức cấu trúc máy tính C5 Vấn đề trao đổi thông tin / S92
Lưu lượng thông tin lấy từ Sound card
U
Tín hiệu
Tần số lấy mẫu : 44100 Hz
Độ lớn lấy mẫu : 16 bit
Số kênh stereo : 2
t
Các điểm lấy mẫu
44100 mẫu / s
2 byte / kênh
4 byte / mẫu 44100 x 4 ≈ 150 KB / s
Tốc độ 1x của CDROM
Khoa Công nghệ thông tin Đại học Bách khoa tp.HCM Biên soạn : Nguyễn Xuân Minh
Tổ chức cấu trúc máy tính C5 Vấn đề trao đổi thông tin / S93
Lưu lượng thông tin lấy từ Video capture card
DVD Số điểm ngang : 800
Số điểm dọc : 600
Số bit màu : 32
Số hình trên s : 30 800 x 600 x 4 = 1.920.000 bytes / hình
1.920.000 x 30 = 55 MB / s
VCD
800 pixels
320 x 240 x 4 x 30 = 8.8 MB / s
600 pixels
32 bits màu / pixel
Khoa Công nghệ thông tin Đại học Bách khoa tp.HCM Biên soạn : Nguyễn Xuân Minh
Tổ chức cấu trúc máy tính C5 Vấn đề trao đổi thông tin / S94
Hoạt động xuất nhập dùng cơ chế DMA
Yêu cầu BUS
Chấp nhận
nhường BUS
CPU Xuất/nhập Cần trao
đổi thông
tin với lưu
BUS lượng lớn
DMAC Thiết bị
ngoại vi
DMAC chiếm BUS để điều khiển
Bộ nhớ
Khoa Công nghệ thông tin Đại học Bách khoa tp.HCM Biên soạn : Nguyễn Xuân Minh
Tổ chức cấu trúc máy tính C5 Vấn đề trao đổi thông tin / S95
Các thông tin mà DMAC cần giữ
1. Địa chỉ vùng nhớ sẽ làm DMA.
2. Số byte cần chuyển trong quà trình DMA.
3. Thiết bị xuất nhập dùng cơ chế DMA.
4. Chiều làm DMA.
Khoa Công nghệ thông tin Đại học Bách khoa tp.HCM Biên soạn : Nguyễn Xuân Minh
Tổ chức cấu trúc máy tính C5 Vấn đề trao đổi thông tin / S96
DMA theo trang
Trang i
DMAC chuyển tối đa 64 KB Bộ nhớ hệ thống
1
(DMAC 8237A) 1 MB
làm DMA 2 lần
2
Trang i + 1
Phân thành trang 64 KB
(16 trang)
Trang i + 2
làm DMA 1 lần
Thanh ghi chứa địa chỉ
trang DMA (4 bits)
Khoa Công nghệ thông tin Đại học Bách khoa tp.HCM Biên soạn : Nguyễn Xuân Minh