Tài liệu Thiết bị ngoại vi và ghép nối . chương 3 - Pdf 92

1
P&I Ch3: Methodes 1
Ch. 3. c¸c ph−¬ng ph¸p
trao ®æi th«ng tin
• Polling - Th¨m dß
• Interrupt - ng¾t &
• DMA - truy nhËp trùc tiÕp mem - IO
P&I Ch3: Methodes 2
3.1. Phương pháp thăm dò (polling)
• K/n Polling: Dùng phần mềm để kiểm tra
các cờ trạng thái @ IO Ports => quyết định
trao đổi số liệu hay không.
• Nhanh, đơn giản, thường dùng trong các hệ
nhỏ hoặc đơn nhiệm - ít thiết bị IO,
• Tốt cho việc thử nghiệm,
• Dùng với các thiết bị ngoại vi tần suất truy
nhập thấp, tốc độ chậm, ví dụ các kênh đo
nhiệt độ,
• Không phù hợp với ‘đa nhi
ệm’, đặc biệt
trong máy tính
2
P&I Ch3: Methodes 3
Ví dụ về PP polling
•Cổng Comm (RS232) của máy tính PC:
– Thanh ghi Line Status Register có các bit:
• b0 – Char received, đã thu xong 1 char,
• b1 – Overrun Error, char bị xóa đè
• b3 – Parity Error
• b4 – Framing Error
• B5 – TxHR Empty, thanh ghi phát rỗng, gửi tiếp

• Là sự dừng thực hiện CTC để thực hiện
ctc, thường là do TBNV yêu cầu thông
qua port.
• Khi CPU đang thực hiện CTC, đến
dòng lệnh thứ n, ngẫu nhiên, ngoại vi
thứ i xin phục vụ bằng cách phát ra tín
hiệu IRQ(i) (Interrupt Request) đến
CPU. Nói chung, CPU sẽ ngừng xử lý
CTC và cất ngữ cảnh (flags và địa chỉ
của lệnh tiếp theo) vào Stack Mem, rồi
tìm địa chỉ của ctc phục vụ ngắt tương
ứng (Interrupt Service Routine - ISR)
để
thực hiện.
• Sau khi thực hiện xong ISR, gặp lệnh
iret (reti...), CPU khôi phục lại ngữ
cảnh (từ Stack Mem) của CTC và tiếp
tục thực hiện.
3.2. Phương pháp ngắt (Interrupt):
3.2.1. Khái niệm
H×nh 3.2. K/n
ng¾t
4
P&I Ch3: Methodes 7
• Đặc điểm:
– Là phương pháp vào/ra kết hợp tín hiệu và phần
mềm, để thực hiện đa nhiệm.
– Đối tượng bị ngắt: CTC bị dừng xử lý để thực hiện
ctc.
– Là chế độ hoạt động riêng cho các Vi xử lý/ máy

Gåm: Hardware, software, internal, exception, NMI...
P&I Ch3: Methodes 10
• Do Ports phát tín hiệu NMI/ IRQ đến CPU.
• Chia thành 2 loại: Maskable & Non Maskable
9 Maskable Interrupt: là các ngắt thông thường, có thể
cấm (disable) bởi lệnh CLI hay cho phép (enable) bởi
lệnh STI (Intel vs Moto!).
Các ngắt sẽ bị cấm (tại CPU) - IF disabled: sau khi CPU
reset, trước đó đã có IRQ khác, sau khi th/h lệnh CLI.
9Non Maskable Interrupt, NMI là ngắt có mức ưu tiên cao
nhất, thường cho các việc: mất điện, sai số liệu (DRAM
parity)... PC hiện nay, thường không dùng NMI.
3.2. Interrupt: 3.2.2. ph©n lo¹i: b. Hardware:
6
P&I Ch3: Methodes 11
Trong mt s CPU, by/ x lý cỏc s kin trong khi
thc hin, nh Intel x86:
- Divide by zero: tng ng thc hin lnh, Int 0,
- Trap - Single Step: thc hin tng lnh, debugger, Int 1,
dựng cựng vi Trap Flag (Trace).
- Break Point: to im dng, debugger, Int 3,
- Overflow: (trn s nguyờn), Int 4
- ...
3.2. Interrupt: 3.2.2. phân loại: c. Internal:
P&I Ch3: Methodes 12
Là vấn đề hay điều kiện để CPU dừng công việc
đang t/h, tìm địa chỉ và thực hiện 1 ctc, đợc thiết kế
để xử lý sự kiện này.
Exception giống Interrupt, thực hiện lệnh riêng.
Trong PC, Exp khác Intr qua 2 điểm:

INTA đến port1,
Nếu Port1 Resq, sẽ phát m
Addr lên data bus, nếu không
Chuyển INTA đến Port 2...
Ưu tiên cố định/ jumper.
3.2. Interrupt: 3.2.3. Case study:
ngắt các hệ VXL/Máy tính
8
P&I Ch3: Methodes 15
c. x86 & PC interrupt : Real & Protected modes
REAL MODE: Bảng vector ngắt IVT - Interrupt
Vector Table: 1
st
kilo byte (RAM) bảng vector ngắt
1 KB = 256 elements of 4 bytes
Chứa địa chỉ đầu của ISR tơng ứng CS:IP. Khi khởi
tạo, BIOS nạp vào IVT đcđ của các ISR ứng với IO.
Đổi vector ngắt: đổi nội dung các vector này
Các ngắt cứng, NMI và Internal đều tơng ứng với 1
lệnh ngắt mềm có cùng vector type, tức có vector
trong bảng IVT.
3.2. Interrupt: 3.2.3. Case study:
ngắt các hệ VXL/Máy tính
P&I Ch3: Methodes 16
3.2. Interrupt: 3.2.3. Case study: x86 & pc IVT


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status