ngatCoche,Kche
A. Ngắt che được là ngắt có thể cho phép hay không cho phép
thực thi bằng phần mềm thông qua cờ ngắt IF (Interrupt Flag): lệnh CLI (Clear Interrupt
Flag) sẽ cấm ngắt và lệnh STI (Set Interrupt Flag) sẽ cho phép các ngắt này hoạt động.
B. NGắt không che được là ngắt không kiểm soát được và luôn luôn hoạt động
C. Trong trường hợp yêu cầu ngắt được gửi tới CPU, xử
lý của CPU gồm các bước sau:
Quá trình thực hiện ngắt:
- CPU hoạt động bình thường
- Khi thiết bị vào/ra sẵn sàng chuyển số liệu sẽ gửi yêu ngắt tới CPU bằng tín hiệu IRQ
tới dầu vào INTR (Interrupt Request) của CPU
- CPU thực hiện nốt lệnh đang thực hiện trước khi trả lời chấp nhận ngắt
- CPU nhận và tìm cách xác định ngắt và trả lời thiết bị vào/ra bằng tín hiệu INTA
(Interrupt Acknowledgement)
- Đẩy PSW (Program State Word) và PC (Program Counter) vào ngăn xếp
- Xoá các cờ IF (Interrupt Flag) và cờ TF (Trap Flag)
- TB vào/ra thông qua bộ điều khiển ngắt cho biết địa chỉ của chương trình con phục vụ
ngắt ISR của ngắt đó. CPU nạp địa chỉ này vào PC.
- CPU nhảy đến chương trình con ISR và thực hiện xử lý
- Chương trình ISR sẽ đẩy các thanh sẽ bị thay đổi trong chương trình con vào ngăn xếp.
- Chương trình ISR sẽ thực hiện việc chuyển số liệu giữa thiết bị vào/ra và bộ nhớ qua
ACC của CPU.
- Sau khi chuyển số liệu xong, CPU khôi phục các thanh ghi
- Khôi phục PC và PSW từ ngăn xếp, trở về chương trình chính thực hiện tiếp nhiệm vụ
trước khi có ngắt.
D. Khi viết mã dịch vụ xử lí ngắt SRI cần lưu ý:
· Đẩy các thanh ghi của CPU vào STACK,
· Thực hiện việc cấm ngắt để tránh đệ qui ngắt nếu cần, hoặc cấm các
· Mã xử lý của ISR …
· Khôi phục các thanh ghi của CPU
· Khôi phục lại khả năng chấp nhận ngắt cho các ngắt tạm cấm
· Quay về (RETURN) chương trình bị gián đoạn trước đó.
Bạn đang đọc truyện trên: Truyen247.Pro