Bài giảng Kỹ thuật Vi xử lý - Chương 3: Vi xử lý 8088-Inte - Hồ Viết Việt

Bay giảng Kỹ thuật Vi xử lý  
Ngành Điện tử-Viễn thông  
Đại học Bách khoa Đà Nẵng  
của Hồ Viết Việt, Khoa ĐTVT  
Tài liệu tham khảo  
[1] Kỹ thuật vi xử lý, Văn Thế Minh, NXB Giáo  
dục, 1997  
[2] Kỹ thuật vi xử lý và Lập trình Assembly cho  
hệ vi xử lý, Đỗ Xuân Tiến, NXB Khoa học & kỹ  
thuật, 2001  
Chương 3  
Vi xử lý 8088-Intel  
3.1 Kiến trúc và hoạt động của 8088  
- Nguyên lý hoạt động  
- Sơ đồ khối chức năng  
3.2 Cấu trúc thanh ghi của 8088  
3.3 Phương pháp quản lý bộ nhớ  
3.4 Mô tả tập lệnh Assembly  
Nguyên lý hoạt động của một bộ vi xử lý  
Lấy - Giải mã - Thực hiện lệnh  
Tìm và copy  
các byte lệnh từ bộ nhớ  
Tạo ra các tín hiệu điều khiển  
để thực hiện lệnh  
Giải mã lệnh  
Chu kỳ lệnh và Chu kỳ máy  
• Chu kỳ lệnh: Tổng thời gian tìm lệnh, giải  
mã lệnh và thực hiện 1 lệnh  
• Nói chung, Chu kỳ lệnh của các lệnh khác  
nhau là khác nhau  
• Chu kỳ lệnh bao giờ cũng bằng một số  
nguyên lần chu kỳ máy  
• Chu kỳ máy bằng nghịch đảo của tần số  
hoạt động (tốc độ đồng hồ) của bộ vi xử lý  
3.1 Kiến trúc và Hoạt động của 8088  
Đơn vị giao tiếp Bus - BIU  
• Phát các tín hiệu địa chỉ đến bộ nhớ và các  
cổng I/O thông qua A-Bus  
• Đọc mã lệnh từ bộ nhớ thông qua D-Bus  
• Đọc dữ liệu từ bộ nhớ thông qua D-Bus  
• Ghi dữ liệu vào bộ nhớ thông qua D-Bus  
• Đọc dữ liệu từ các cổng I thông qua D-Bus  
• Ghi dữ liệu ra các cổng O thông qua D-Bus  
Đơn vị thực hiện - EU  
• Bao gồm CU và ALU  
• CU : Giải mã lệnh để tạo ra các tín hiệu  
điều khiển nhằm thực hiện lệnh đã được  
giải mã  
• ALU: thực hiện các thao tác khác nhau đối  
với các toán hạng của lệnh  
Tổ chức của microprocessor  
CPU  
Control  
registers  
Control  
ALU  
BIU  
Control  
General  
purpose  
registers  
Address  
Data  
Status  
Registers  
Xử lý lệnh của các vi xử lý trước 8086/8088  
• Một thủ tục đơn giản gồm 3 bước:  
– Lấy lệnh từ bộ nhớ  
– Giải mã lệnh  
– Thực hiện lệnh  
• Lấy các toán hạng từ bộ nhớ (nếu có)  
• Lưu trữ kết quả  
Microprocessor  
…...  
…...  
Fetch Decode  
Execute  
1
Fetch  
2
Decode  
2
Execute  
2
1
1
Bus  
Busy  
Idle  
Busy  
Busy  
Idle  
Busy  
Cơ chế Pipelining  
P ipelining  
B us  
… ...  
Fetch  
1
Fetch  
2
Fetch  
3
Fetch  
4
S tore  
1
Fetch  
5
Fetch  
6
Load  
2
Fetch  
7
Instruction  
U nit  
D ecode  
… ...  
D ecode D ecode D ecode D ecode Id le  
D ecode D ecode  
Id le  
7
1
2
3
4
5
6
E xecution  
U nit  
E xec.  
1
E xec.  
2
E xec.  
3
E xec.  
4
Idle  
E xec.  
5
E xec.  
6
Id le  
E xec.  
7
M em ory request  
M em ory request  
3.2 Cấu trúc thanh ghi của 8088  
8088 có 14 thanh ghi 16-bit  
Cấu trúc thanh ghi của họ x86  
General Purpose  
Special Registers  
AH  
BH  
CH  
DH  
AL  
BL  
CL  
DL  
Index Registers  
Accumulator  
AX  
BX  
CX  
DX  
Instr Pointer  
Flags  
IP  
EAX  
EIP  
Stack Pointer  
SP  
BP  
DI  
FLAG  
ESP  
Base  
Count  
Data  
EFLAG  
Base Pointer  
EBX  
ECX  
EDX  
EBP  
Dest Index  
Segment Registers  
EDI  
CS  
Code Segment  
Source Index  
SI  
DS  
ESI  
Data Segment  
ES  
Extra Segment  
SS  
Stack Segment  
FS  
GS  
Cấu trúc thanh ghi 8086/8088  
7
0 7  
0
0
0
Accumulator  
Base  
AL  
BL  
CL  
DL  
AH  
BH  
CH  
DH  
AX  
BX  
CX  
DX  
Counter  
Data  
15  
15  
Code Segment  
Data Segment  
Stack Segment  
Extra Segment  
CS  
DS  
SS  
ES  
}
Instruction Pointer  
Stack Pointer  
Base Pointer  
IP  
SP  
BP  
SI  
}
}
Source Index  
Destination Index  
DI  
Các thanh ghi đa năng  
7
0 7  
0
Accumulator  
Base  
AX  
BX  
CX  
DX  
AL  
BL  
CL  
DL  
AH  
BH  
CH  
DH  
Counter  
Data  
- Có thể truy cập như các thanh ghi 8-bit  
- Lưu trữ tạm thời dữ liệu để truy cập nhanh hơn  
và tránh khỏi phải truy cập bộ nhớ  
- Có công dụng đặc biệt đối với một số câu lệnh  
Các thanh ghi segment  
15  
0
Code Segment  
Data Segment  
Stack Segment  
Extra Segment  
CS  
DS  
SS  
ES  
- Lưu trữ địa chỉ segment của một ô nhớ cần truy cập  
- Kết hợp với các thanh ghi offset nhất định  
Các thanh ghi offset  
Instruction Pointer  
Stack Pointer  
Base Pointer  
IP  
SP  
BP  
SI  
Source Index  
Destination Index  
DI  
- Lưu trữ địa chỉ offset của một ô nhớ cần truy cập  
- Kết hợp với các thanh ghi segment nhất định  
Thanh ghi cờ  
15  
0
x x x x OF DF IF TF SF ZF x AF x PF x CF  
- Không phải tất cả các bit đều được sử dụng  
- Mỗi bit được sử dụng được gọi là một cờ  
- Các cờ đều có tên và có thể được Lập/Xoá  
riêng lẽ  
- Bao gồm các cờ trạng thái và các cờ điều  
khiển  
Flags register  
AC (Alignment check)  
(VM) Virtual mode  
(RF) Resume  
(NT) Nested task  
(IOPL) Input/output  
privilege level  
(O) Overflow  
(D) Direction  
(I) Interrupt  
(T) Trace  
(S) Sign  
(Z) Zero  
(A) Auxiliary Carry  
(P) Parity  
(C) Carry  
8086, 8088, 80186  
80286  
80386, 80486DX  
80486SX  
3.3 Phương pháp quản lý bộ nhớ  
- Bộ nhớ được xem là một tập hợp các ô nhớ  
- Mỗi ô nhớ được nhận dạng bằng một Địa chỉ  
vật lý duy nhất 20-bit  
- Trong hoạt động truy cập một ô nhớ, Địa chỉ  
vật lý của nó được tạo ra từ hai giá trị 16-bit:  
Địa chỉ segment và Địa chỉ Offset  
- Địa chỉ logic = Địa chỉ segment:Địa chỉ offset  
Mối liên hệ giữa ĐCVL và ĐCLG  
A=Bus  
19  
0
Địa chỉ vật lý  
15  
0
15  
0
Thanh ghi Segment  
0000  
Thanh ghi offset.  
Tải về để xem bản đầy đủ
pdf 122 trang baolam 25240 Free
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Kỹ thuật Vi xử lý - Chương 3: Vi xử lý 8088-Inte - Hồ Viết Việt", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_giang_ky_thuat_vi_xu_ly_chuong_3_vi_xu_ly_8088_inte_ho_v.pdf