Bài giảng cấu trúc máy tính - P5 - Pdf 45


Bµi 5
Ng¾t vµ
Chip ®iÒu khiÓn ng¾t
8259
1. Giới thiệu
2. Tổ chức ngắt ở máy tính XT
3. Chip điều khiển ngắt 8259
4. Từ lệnh khởi tạo và Từ lệnh điều
khiển hoạt động của 8259
5. Nối ghép 8259 ở máy tính IBM PC XT
6. Ngắt ở máy tính 286 về sau
7. Minh họa hoạt động ngắt bàn phím
và nhập dữ liệu từ bán phím

BUS
Hình 1: Hệ thống hỗ trợ Vào/Ra
Hệ máy vi
tính
Bộ vi xử lý
Bộ nhớ
HT hỗ trợ I/O
PORT
Máy in
ổ đĩa
Bàn
phím
1. Giới thiệu

pháp thăm dò:

Chiếm nhiều thời gian của
bộ VXL.

Phục vụ thiết bị không
theo thứ tự ưu tiên mà theo
thứ tự định sẵn

Phương pháp ngắt:

Khi có một thiết bị cần được
phục vụ thì thiết bị sẽ báo cho bộ
VXL bằng cách gửi một tín hiệu
ngắt.

Khi nhận được tín hiệu này, bộ
VXL ngừng mọi công việc đang
thực hiện để chuyển sang phục vụ
thiết bị.

Mỗi ngắt có Chương trình con
phục vụ ngắt ISR (Interrupt
Service Routine) được đặt trong
bộ nhớ.

Ưu điểm của phương pháp
ngắt:

Bộ VXL phục vụ thiết bị dựa

IP
CS
IP
CS
IP
CS
IP
2. Tæ chøc Ng¾t cña m¸y tÝnh IBM
PC XT

Ngắt của máy tính XT

8088/86 có tất cả 256 ngắt được
đặt tên từ INT 00, INT 01, ... , INT
FFH.

Khi thực hiện một ngắt, CPU tự
động:

Lưu các thanh ghi cờ, con trỏ
lệnh và thanh ghi đoạn mã vào
ngăn xếp.

Chuyển điều khiển tới địa chỉ
xác định trong bộ nhớ để thực
hiện chương trình con phục vụ
ngắt gọi là ISR.

Chương trình con phục vụ
ngắt ISR (Interrupt Service

0000:0008
0000:000C
0000:0010
0000:0014
...
INT 00
INT 01
INT 02
INT 03
INT 04
INT 05
...
INT FF
Địa chỉ
logic ISR
Số hiệu
ngắt
Địa chỉ vật
lý ISR (H)
00000
00004
00008
0000C
00010
00014
...
003FC 0000:03FC
Bảng vectơ ngắt máy tính
XT


F000:E987




F000:EF57
F070:0147
F000:F065
F000:F84D
F000:F841
Địa chỉ VL
03EA2
068ED
FE2C3
068E6
07147
FFF54

FFEA5
FE987




FEF57
00847
FF065
FF84D
FF841
Chức năng

FE739
FF859
16
17
18
19
1A
1B
1C
1D
1E
1F
20
21
22
23
24
F000:E82E
F000:EFD2
F600:0000
F000:E6F2
F000:FE6E
0070:0140
F000:FF53
F000:F0A4
0000:0522
00E3:0B07
PSP:0000
Có thể đặt
lại

Gọi chức năng DOS
Địa chỉ kết thúc DOS
Địa chỉ thoát Ctrl-Brk DOS
Vec tơ xử lý lỗi
Vào/ra đĩa (BIOS)
Vào/ra RS-232 (BIOS)
Vào/ra cassette (BIOS)

40
41
42-
5F
60-
66
67
68-
7F
80-
85
86-
F0
F1-FF
25
26
27
28-
2E
2F
30-
3F

-----
-----
-----
-----
-----
-----
Vào/ra đĩa (XT)
Các tham số đĩa cứng
Dự trữ cho DOS
Người dùng định nghĩa
Quản lý bộ nhớ mở rộng
Không sử dụng
Dự trữ cho BASIC
Trình dịch BASIC
Không sử dụng
Đọc đĩa DOS
Viết đĩa tuyệt đối DOS
Kết thúc chương trình và thường
trú
Dự trữ cho DOS
Ngắt phép nhân
Dự trữ cho DOS

Phân loại ngắt
Ngắt được phân thành ngắt cứng và ngắt
mềm.
Ngắt cứng

Ngắt cứng là ngắt được kích hoạt bằng phần
cứng

Nhảy đến bảng véc tơ ngắt và gọi
CS:IP ISR của ngắt đó.

Khi kết thúc ISR, CPU sẽ lấy lại các
byte FR và CS:IP từ ngăn xếp và tiếp
tục thực hiện chương trình từ vị trí bị
ngắt.

Gán địa chỉ ngắt cứng

NMI được gán INT 02.

Mỗi khi NMI được kích hoạt, CPU sẽ
nhảy đến ô nhớ 08 lưu địa chỉ ISR của
NMI.

INTR có thể được dùng cho nhiều ngắt
cứng.

Sử dụng chip điều khiển ngắt 8259 có
thể mở rộng số ngắt cứng có thể lên
đến 64 ngắt.

Mỗi chip 8259 có thể nối 8 ngắt cứng.

2 chip 8259 có thể quản lý đến 16
ngắt cứng.

Ngắt mềm


Đặt IF=1 bằng lệnh STI (set
interrupt)

Mét sè ng¾t th­êng gÆp
INT 00 (phÐp chia 0)
Thuéc nhãm ng¾t ngo¹i lÖ (exception
interrupts).
Khi gÆp phÐp chia 0, CPU gäi INT 0.
INT0 hiÓn thÞ th«ng b¸o DIVIDE “
ERROR”
VÝ dô:
MOV AL,92
SUB CL,CL
DIV CL

INT 02 (ngắt không che được NMI)

Mỗi khi NMI được kích hoạt, CPU sẽ
nhảy đến ô nhớ 08 lưu địa chỉ ISR của
NMI và chạy ISR này.
INT 03 (điểm dừng)

Intel chỉ sử dụng mỗi ngắt INT 03
để thực hiện các điểm dừng.

ở chế độ chạy từng bước, thông
qua ngắt này có thể giám sát được
CPU và bộ nhớ hệ thống sau từng
lệnh được thực hiện.


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