Thông tin tài liệu
Bài giảng
Kiến trúc của hệ vi xử lý
OPEN.PTIT.EDU.VN
LỜI NÓI ĐẦU
Các bộ vi xử lý ra đời đem lại bước ngoặt trong khoa học kỹ thuật, các thiết bị trở nên
thông minh hơn nhờ sự điều khiển theo chương trình. Vi xử lý đang dần có mặt trong hầu hết các
máy móc thiết bị dân dụng cũng như công nghiệp. Vì vậy việc học tập nghiên cứu ứng dụng vi xử
lý trong trường học là một nhu cầu hết sức cần thiết.
Để phục vụ cho nhu cầu giảng dạy môn học Kỹ thuật vi xử lý cho các lớp đại học từ xa
chuyên nghành điện tử viễn thông, bài giảng vi xử lý được biên soạn với mục đích cung cấp cho
sinh viên các kiến thức cơ sở cần thiết sử dụng cho việc nghiên cứu ứng dụng các hệ thống vi xử
lý trong kỹ thuật và đời sống. Bài giảng bao gồm 8 chương với các nội dung chính như sau:
Chương 1 cung cấp các khái niệm cơ bản về vi xử lý và hệ thống của nó.
Chương 2 mô tả cấu trúc, các khối chức năng trong các bộ vi xử lý họ Intel 80x86, mà chủ
yếu là CPU 80286. Ngoài ra trong chương này còn giới thiệu về các tính năng của các bộ vi xử lý
thế hệ sau 80286 như 80386, 80486, Pentium.
Chương 3 mô tả về cấu trúc lệnh, các chế độ định vị địa chỉ và tập lệnh chi tiết của vi xử
lý 80286. Cho phép sinh viên rút ra được các kiến thức chung nhất về các lệnh vi xử lý và cách
tiếp cận trong việc lập trình bằng các lệnh hợp ngữ. Ngoài ra chương này còn đề cập tới các vấn
đề về lập trình hợp ngữ trên máy vi tính bao gồm: cấu trúc câu lệnh, cách khai báo dữ liệu, khung
chương trình hợp ngữ, các cấu trúc lập trình cơ bản, và các ví dụ cơ bản rèn luyện kỹ năng lập
trình bằng các lệnh gợi nhớ của vi xử lý.
Chương 4 cung cấp các kiến thức về việc thiết kế các hệ thống vi xử lý chuyên dụng bao
gồm cả việc thiết kế hệ thống phần cứng và phần mềm vi xử lý.
Chương 5 mô tả về cấu trúc hoạt động của các vi mạch hỗ trợ vào ra song song 8255 và
vào ra nối tiếp 8251.
Chương 6 mô tả về vi điều khiển 8051 bao gồm về cấu trúc các khối mạch phần cứng, về
tập lệnh và lập trình cho vi điều khiển 8051.
Chương 7 mô tả việc thiết kế hệ thống đo độ rộng xung và truyền dữ liệu nối tiếp bằng
8051. Với các ví dụ này sinh viên có thể tiếp cận về việc thiết kế các ứng dụng nhỏ dùng vi điều
khiển.
Chương 8 là các giới thiệu về bộ vi điều khiển 32 bit của Motorola MC68332. Đây là bộ
vi điều khiển có các tính năng rất mạnh được ứng dụng nhiều trong các thiết bị điều khiển hiện
nay.
Mong rằng tập bài giảng này đáp ứng được nhu cầu giảng dạy môn học kỹ thuật vi xử lý
tại học viện, và kích thích được sự hứng thú của học sinh – sinh viên trong việc nghiên cứu ứng
dụng vi xử lý trong kỹ thuật và đời sống hàng ngày. Rất mong nhận được nhiều ý kiến đóng góp
để bài giảng ngày càng được hoàn thiện hơn.
Tác giả
OPEN.PTIT.EDU.VN
MỤC LỤC Trang
Chương 1 : Kiến trúc của hệ vi xử lý (2 tiết)
1.1 Tổ chức chung của hệ vi xử lý
1.1.1. Công nghệ LSI và sự ra đời của bộ vi xử lý.
1.1.2. Phần cứng và phần mềm của hệ thống vi xử lý.
1.1.3. Tổng quan về phần cứng hệ thống vi xử lý.
1.1.4. Tổng quan về phần mềm và sự phát triển của ngôn ngữ phần mềm.
1.2 Tổ chức bộ nhớ của hệ vi xử lý
1.2.1 Cấu trúc và nguyên tắc làm việc của bộ nhớ ROM , EPROM .
1.2.2 Cấu trúc và nguyên tắc làm việc của bộ nhớ SRAM , DRAM .
1.2.3 Tổ chức bộ nhớ
1.3 Vào ra trong hệ thống vi xử lý.
1.3.1 Cấu trúc và nguyên tắc làm việc của cổng vào / ra.
1.3.2 Mạch ba trạng thái và mạch cài
1.3.3 Các cổng vào / ra đơn giản.
Chương 2 : Nguyên tắc làm việc của bộ vi xử lý họ 80X86 Intel (6 tiết)
2.1 Cấu trúc của bộ vi xử lý 80286 Intel
2.1.1 Sơ đồ khối của bộ vi xử lý 80286 Intel
2.1.2 Khối tạo địa chỉ (AU)
2.1.3 Khối ghép kênh (BU)
2.1.4 Khối lệnh (IU)
2.1.5 Khối thực hiện lệnh (EU)
2.2 Các thanh ghi của bộ vi xử lý 80286 Intel .
2.2.1 Chức năng và nhiệm vụ của các thanh ghi đa năng .
2.2.2 Các thanh ghi quản lý đoạn
2.2.3 Thanh ghi cờ trạng thái
2.2.4 Các thanh ghi đặc biệt
2.3 Nguyên tắc làm việc của bộ vi xử lý 80286 Intel .
2.3.1 Định nghĩa chu kỳ lệnh và chu kỳ máy
2.3.2 Quản lý bộ nhớ thực và bộ nhớ ảo
2.3.3 Trạng thái bộ vi xử lý khi khởi động
2.3.4 Chế độ ngắt và các đầu ngắt của bộ vi xử lý
2.4 Các bộ vi xử lý cấp cao của Intel
Chương 3 : Lập trình Assembly cho hệ vi xử lý Intel (6 tiết)
3.1 Cấu trúc của hợp ngữ.
3.1.1 Bộ ký tự từ khóa của hợp ngữ
3.1.2 Các lệnh chỉ dẫn trong hợp ngữ
3.1.3 Khung của file chương trình nguồn Assembly
3.2 Tập lệnh của bộ vi xử lý 80X86 Intel
3.2.1 Nhóm lệnh chuyển dữ liệu
1
1
1
2
3
4
4
5
7
7
10
10
10
11
14
14
15
15
15
15
15
15
16
17
18
20
21
21
25
35
36
40
43
43
44
44
48
50
54
OPEN.PTIT.EDU.VN
3.2.2 Nhóm lệnh xử lý dữ liệu.
3.2.3 Nhóm lệnh chuyển điều khiển
3.3 Lập trình hợp ngữ cho hệ vi xử lý Intel
3.3.1 Lập trình chuyển mảng dữ liệu
3.3.2 Lập trình chuyển đổi mã (nhị phân , hexa , thập phân , ascii)
3.3.3 Lập trình điều khiển thiết bị ngoại vi
Chương 4 : Thiết kế hệ vi xử lý chuyên dụng (6 tiết)
4.1 Trình tự thiết kế hệ vi xử lý chuyên dụng
4.2 Tổ chức phần cứng cho hệ vi xử lý chuyên dụng .
4.2.1 Lựa chọn bộ vi xử lý
4.2.2 Tổ chức không gian nhớ thực và định vị ROM , RAM
4.2.3 Thiết kế các ngoại vi theo yêu cầu
4.3 Xây dựng phần mềm cho hệ vi xử lý
4.3.1 Xây dựng thuật toán và lưu đồ thuật toán cho hệ vi xử lý
4.3.2 Viết chương trình nguồn bằng Assembly cho hệ vi xử lý
4.4 Dịch và nạp chương trình vào ROM cho hệ vi xử lý
Chương 5 : Các chip IC hỗ trợ cho hệ vi xử lý (4 tiết)
5.1 Chip vào / ra lập trình 8255
5.1.1 Cấu trúc của chip 8255
5.1.2 Các chế độ làm việc của chip 8255
5.1.3 Kết nối 8255 với hệ thống vi xử lý
5.1.4 Lập trình khởi tạo chế độ làm việc cho chip 8255
5.2 Chip truyền tin nối tiếp USART 8251
5.2.1 Chế độ truyền tin đồng bộ và cận đồng bộ
5.2.2 Cấu trúc của chip USART 8251
5.2.3 Các chế độ làm việc của chip USART 8251
5.2.4 Ghép chip USART 8251 với hệ vi xử lý
5.2.5 Lập trình khởi tạo chế độ làm việc cho chip USART 8251
Chương 6 : Vi điều khiển 8 bit 8051 (8 tiết)
6.1 Cấu trúc và chức năng của vi điều khiển 8051.
6.1.1. Giới thiệu về các bộ vi điều khiển.
6.1.2. Cấu trúc tổng quát của các bộ vi điều khiển.
6.1.3. Mô tả phần cứng các bộ vi điều khiển họ MSC-51
6.2 Giao tiếp với bộ nhớ ngoài cho vi điều khiển 8051.
6.2.1. Truy xuất bộ nhớ chương trình bên ngoài.
6.2.2. Truy xuất bộ nhớ dữ liệu bên ngoài.
6.2.3. Bộ nhớ ngoài sử dụng chung cho chương trình và dữ liệu
6.3 Hoạt động timer của 8051
6.3.1. Giới thiệu.
6.3.2. Các chế độ timer và cờ báo tràn.
6.3.3. Nguồn xung nhịp.
6.3.4. Cho chạy, dừng và điều khiển các timer.
6.3.5. Khởi động và truy xuất các thanh ghi timer.
56
61
62
63
64
67
72
72
74
74
74
78
82
82
87
87
92
92
92
93
98
99
101
101
104
106
107
110
120
120
120
120
121
130
131
131
134
134
134
136
137
138
139
OPEN.PTIT.EDU.VN
6.4 Bộ điều khiển truyền tin nối tiếp UART của 8051.
6.4.1 Giới thiệu.
6.4.2 Thanh ghi điều khiển cổng nối tiếp.
6.4.3 Các chế độ hoạt động
6.4.4 Khởi động và truy xuất các thanh ghi cổng nối tiếp
6.4.5 Truyền thông tin trong hệ thống đa xử lý.
6.4.6 Tốc độ cổng nối tiếp.
6.5 Ngắt của vi điều khiển 8051.
6.5.1. Giới thiệu.
6.5.2. Tổ chức ngắt của 8051.
6.5.3. Các vector xử lý ngắt.
6.5.4. Thiết kế chương trình dùng các ngắt.
6.5.5. Các ngắt của 8051
6.6 Tập lệnh và hướng dẫn lập trình trên 8051.
6.6.1 Các chế độ địa chỉ.
6.6.2 Tập lệnh của 8051.
6.6.3 Chương trình hợp ngữ 8051.
6.7 Bộ nhớ ROM của vi điều khiển 8051.
Chưong 7 : Thiết kế hệ thống chuyên dụng trên on – chip 80C51 (4 tiết)
7.1 Thiết kế hệ đo thông số tín hiệu xung
7.1.1 Nguyên tắc đo độ rộng xung
7.1.2 Sơ đồ phần cứng của hệ đo
7.1.3 Xây dựng chương trình điều khiển
7.2 Thiết kế hệ truyền tín hiệu nối tiếp
7.2.1 Sơ đồ kết nối phần cứng hệ thống vi điều khiển truyền dữ liệu nối tiếp.
7.2.2 Xây dựng chương trình điều khiển.
Chương 8 : Vi điều khiển 32 bit MC68332 (9 tiết)
8.1 Cấu trúc và chức năng thành phần của on – chip 32 bit MC68332
8.2. Mô đun tích hợp hệ thống SIM.
8.2.1. Khối định cấu hình và bảo vệ hệ thống.
8.2.2. Khối tạo clock cho hệ thống.
8.2.3. Khối giao tiếp BUS bên ngoài.
8.2.4. Khối tạo tín hiệu chọn mạch.
8.2.5. Các ngõ vào ra đa dụng.
8.2.6. Reset
8.2.7. Ngắt
8.2.8. Khối kiểm tra phần cứng
8.3 Bộ vi xử lý
8.3.1. Các mô hình lập trình.
8.3.2. Thanh ghi trạng thái chương trình
8.3.3. Chế độ gỡ rối.
8.4 Khối xử lý thời gian TPU
8.4.1. Các khối chức năng trong TPU.
8.4.2. Các chức năng thới gian của TPU.
8.5 Mô đun nối tiếp theo hàng đợi QSM
140
140
140
141
143
145
145
147
147
148
149
151
152
153
153
157
159
168
173
173
173
174
175
181
181
181
189
189
191
195
195
195
196
197
198
199
200
200
201
202
203
203
204
206
210
OPEN.PTIT.EDU.VN
8.6 TRURAM
8.6.1. Khối thanh ghi của TPU RAM.
8.6.2. Hoạt động của TPURAM
8.7 Lập trình hợp ngữ cho vi điều khiển MC68332
8.7.1 Các chế độ địa chỉ trong chương trình hợp ngữ MC68332.
8.7.2 Tập lệnh của MC68332
8.7.3 Khuôn dạng chương trình nguồn.
8.7.4 Lập trình khởi động SIM.
8.7.5 Lập trình định cấu hình cho RAM nội.
8.7.6 Lập trình cho QSM.
8.7.7 Lập trình cho TPU.
HƯỚNG DẪN VÀ ĐÁP SỐ BÀI TẬP
CÁC CHỮ VIẾT TẮT
TÀI LIỆU THAM KHẢO
212
213
214
214
214
215
225
227
229
229
232
237
246
251
OPEN.PTIT.EDU.VN
Chương 1: Kiến trúc của hệ thống vi xử lý
CHƯƠNG 1: KIẾN TRÚC CỦA HỆ THỐNG VI XỬ LÝ
Giới thiệu:
Trước hết trong chương này sinh viên cần nắm được các khái niệm về bộ vi xử lý như :
mục đích sự ra đời của bộ vi xử lý, các khối chức năng cơ bản của bộ vi xử lý, nguyên tắc xử lý
các công việc và bài toán của bộ vi xử lý, lệnh của bộ vi xử lý, chương trình mà các bộ vi xử lý
thực hiện, chức năng của phần cứng và phần mềm trong hệ thống vi xử lý, các khối chức năng
phần cứng trong hệ thống vi xử lý và chức năng của chúng, các tín hiệu kết nối các khối chức
năng phần cứng, phần mềm phát triển của ngôn ngữ phần mềm hệ thống vi xử lý, lệnh mã máy,
lệnh gợi nhớ, nguyên tắc hình thành ngôn ngữ cấp cao, các chương trình hợp ngữ, các chương
trỉnh ngôn ngữ cấp cao và việc thực hiện các chương trình này trong hệ thống vi xử lý.
Tiếp theo chương này cung cấp các kiến thức về bộ nhớ bán dẫn. Sinh viên cần nắm được
nguyên tắc hoạt động của bộ nhớ bán dẫn, sự khác nhau giữa các bộ nhớ ROM và các bộ nhớ
RAM, giữa các loại bộ nhớ ROM và giữa các loại bộ nhớ RAM, và quan trọng nhất là các tổ chức
các bộ nhớ trong hệ thống vi xử lý, phương pháp giải mã địa chỉ bộ nhớ trong các hệ thống vi xử
lý.
Phần cuối cùng sinh viên cần nắm được các kiến thức về vào ra, cấu trúc của các vi mạch
số đệm, cài và nguyên tắc làm việc của chúng trong các hệ thống vi xử lý, trạng thái trở kháng cao
và ý nghĩa của chúng trong kết nối hệ thống vi xử lý. Và cũng giống như bộ nhớ cần nắm rõ
nguyên tắc giải mã địa chỉ vào ra trong các hệ thống vi xử lý.
1.1. TỔ CHỨC CHUNG CỦA HỆ THỐNG VI XỬ LÝ
1.1.1. Công nghệ LSI và sự ra đời của các bộ vi xử lý
Trong kỹ thuật số, chúng ta đã được làm quen với công nghệ chế tạo bán dẫn cho phép đặt
nhiều cổng logic trong một vi mạch (hay một mạch tích hợp IC – Integrated Circuits) với diện tích
khoảng vài mm
2
. Nếu số cổng nhỏ hơn 15 đơn vị cổng, chúng được gọi là mạch tích hợp mật độ
nhỏ SSI (Small Scale Integration). Từ 15 tới 100 đơn vị cổng được gọi là mạch tích hợp mật độ
vừa MSI, trên 100 cổng là mạch tích hợp mật độ cao LSI và hàng triệu đơn vị cổng được gọi là
mạch tích hợp mật độ rất cao VLSI.
Với công nghệ chế tạo bán dẫn trên, hàng ngàn loại IC số khác nhau ra đời với các chức năng
khác nhau, nhưng chúng đều có các tính chất chung như:
- Đều được kết nối từ các cổng logic cơ bản.
- Dữ liệu số đưa tới các ngõ vào sẽ được biến đổi theo một hàm số nhất định thành dữ liệu trên
các ngõ ra.
Với cấu hình nối cứng các cổng logic cơ bản để tạo thành một IC số với một chức năng cụ
thể như trên, làm việc sử dụng các IC số có các nhược điểm như: cùng một chức năng nhưng sử
dụng nhiều lần trong mạch, sẽ phải sử dụng nhiều IC số. Khi muốn thực hiện các công việc khác
nhau, cần thực hiện các mạch số khác nhau. Ví dụ, một công việc yêu cầu hai phép cộng nhị phân
sẽ phải sử dụng hai IC cộng khác nhau. Nếu có nhiều hơn một phép tính so với mạch đã thực hiện
sẽ cần phải làm một mạch khác.
Với sự ra đời của công nghệ LSI, cho phép tích hợp rất nhiều cổng logic trong một vi mạch
nhỏ, người ta nghĩ đến chuyện thiết kế một IC số có thể thực hiện mọi chức năng số mà không cần
phải thay đổi mạch điện. Nguyên tắc thực hiện của loại IC số này có thể biểu diễn trong sơ đồ
khối hình 1.1.
1
OPEN.PTIT.EDU.VN
Chương 1: Kiến trúc của hệ thống vi xử lý
Sơ đồ bao gồm khối các hàm số cơ bản và các bộ đệm được kết nối với nhau thông qua
các mạch kiểm soát (không kết nối cố định, mà chỉ kết nối khi có các tín hiệu cho phép). Dữ liệu
có thể di chuyển từ bộ đệm này tới bộ đệm khác và từ các bộ đệm tới xử lý tại các hàm cơ bản khi
có các tín hiệu cho phép thích hợp. Một chức năng số phức tạp (một bài toán hay một công việc
nào đó), thay vì phải thực hiện bằng một mạch số nối cứng, có thể thực hiện từng bước bằng cách
tuần tự thực hiện các hàm số cơ bản trong IC này. Với cấu hình này, sơ đồ có thể thực hiện mọi
chức năng số phức tạp mà không cần thay đổi mạch kết nối các IC số. Đây là cấu hình cơ bản nhất
của một bộ vi xử lý.
Chọn hàm
xử lý dữ
liệu
Chọn bộ đệm
cung cấp dữ
liệu
Các hàm số cơ bản
Bộ đệm Bộ đệm Bộ đệm Bộ đệm
…
Hình 1.1: Sơ đồ khối cấu tạo cơ bản của vi xử lý.
Như vậy vi xử lý là một IC số có tất cả các hàm số cơ bản, để thực hiện một chức năng số
phức tạp nó sẽ tuần tự thực hiện các chức năng số cơ bản theo một trình tự thích hợp. Để thực
hiện một chức năng số cơ bản, cần phải cung cấp cho vi xử lý các tín hiệu chọn dữ liệu trong các
bộ đệm và tín hiệu chọn hàm số xử lý dữ liệu đó. Công việc này được gọi là cung cấp một lệnh
cho vi xử lý. Để thực hiện một bài toán hay một công việc nào đó, cần phải thực hiện tuần tự các
hàm số cơ bản theo một trình tự nhất định, có nghĩa là phải cung cấp cho vi xử lý một tập hợp các
lệnh sắp xếp theo một giải thuật hợp lý gọi là một chương trình.
1.1.2. Phần cứng và phần mềm của hệ thống vi xử lý
Với cấu tạo bao gồm các hàm số cơ bản và các bộ đệm như đã mô tả ở trên, các bộ vi xử
lý không thể hoạt động một mình, mà chúng cần được kết nối ghép với các mạch phụ cận như:
mạch cung cấp xung nhịp, bộ nhớ lưu trữ chương trình, các giao tiếp để liên lạc với người sử dụng
hay thiết bị điều khiển. Nguyên tắc cấu tạo và cách thức kết nối giữa vi xử lý và các mạch phụ cận
cần thiết của nó được gọi là công nghệ phần cứng của hệ thống vi xử lý (Hardware).
Hệ thống mạch
điện tử số
Các thiết bị xuất
nhập và chấp hành
điều khiển
Các chương trình
phần mềm
Hình 1.2: Sơ đồ khối mô tả hoạt động của hệ thống vi xử lý.
Để hệ thống mạch phần cứng đã được kết nối đúng có thể thực hiện một bài toán, một
công việc, cần cung cấp cho vi xử lý một chương trình thích hợp. Công việc tạo ra các chương
2
OPEN.PTIT.EDU.VN
Chương 1: Kiến trúc của hệ thống vi xử lý
trình cung cấp cho các hệ thống vi xử lý hoạt động được gọi chung là công nghệ phần mềm
(Software). Có thể mô tả cơ chế của một hệ thống vi xử lý trên hình 1.2.
1.1.3. Tổng quát về phần cứng hệ thống vi xử lý
Phần cứng một hệ thống vi xử lý bao gồm 3 khối mạch chính trên hình 1.3 bao gồm:
- Bộ vi xử lý, hay còn được gọi là đơn vị xử lý trung tâm CPU (Central Processing Unit) có
nhiệm vụ thực hiện tất cả các lệnh mà chương trình yêu cầu. Nó đóng vai trò là chủ trong hệ
thống, quyết định sự hoạt động của các linh kiện khác trong mạch.
- Khối bộ nhớ lưu trữ các chương trình cung cấp cho vi xử lý thực hiện, ngoài ra nó còn sử
dụng lưu trữ các biến trung gian cũng như cuối cùng trong các quá trình tính toán.
- Các bộ vào ra kiểm soát việc truyền dữ liệu giữa CPU và các thiết bị ngoại vi như bàn phím,
màn hình,…. Các thiết bị ngoại vi có thể là các thiết bị cho phép hệ thống vi xử lý và người
sử dụng có thể liên lạc với nhau, hoặc các thiết bị thực hiện một công việc nào đó theo sự
điều khiển của vi xử lý.
Trong hệ thống vi xử lý, CPU đóng vài trò là thành phần điều khiển kiểm soát mọi hoạt
động của các vi mạch phụ trợ (bộ nhớ và vào ra) khác. Vì vậy, các mạch phụ trợ sẽ được kết nối
với CPU bằng một hệ thống đường dẫn điện gọi là BUS. BUS được chia thành 3 loại: BUS dữ
liệu, BUS địa chỉ và BUS điều khiển.
BUS dữ liệu có nhiệm vụ truyền dữ liệu giữa CPU và các bộ nhớ hoặc vào ra để các thành
phần trong hệ thống có thể hiểu được nhau. Ví dụ như: các lệnh được CPU lấy từ bộ nhớ qua BUS
dữ liệu, hoạt động của các thiết bị ngoại vi được CPU điều khiển và kiểm soát bằng BUS dữ liệu.
Các CPU truyền thống sử dụng một BUS dữ liệu duy nhất để truyền dữ liệu với tất cả mọi nơi
trong hệ thống, vì vậy để điều khiển được từng thành phần một cách độc lập, tại một thời điểm
thông thường CPU chỉ truyền dữ liệu với một vị trí duy nhất, vị trí này được xác định bằng trạng
thái của BUS địa chỉ. Hệ thống phải được kết nối sao cho ứng với một địa chỉ mà CPU tạo ra, chỉ
có một vị trí duy nhất được xác định tới, công việc này được gọi là giải mã địa chỉ trong hệ thống
vi xử lý. Ngoài ra bộ nhớ hoặc vào ra, (xác định bằng BUS địa chỉ) có thể có nhiều chế độ hoạt
động khác nhau với CPU, các chế độ này được thông báo qua lại với CPU thông qua BUS điều
khiển. Ví dụ, khi đọc dữ liệu từ bộ nhớ CPU thông báo bằng tín hiệu MEMRD (memory read)
tích cực, còn khi ghi dữ liệu tới bộ nhớ nó thông báo bằng tín hiệu MEMWR.
CPU
Bộ
nhớ
I/O
Thiết
bị
ngoại
vi
Chương
trình
Hình 1.3: Sơ đồ khối hệ thống vi xử lý
3
OPEN.PTIT.EDU.VN
Chương 1: Kiến trúc của hệ thống vi xử lý
1.1.4. Tổng quát về phần mềm và sự phát triển của các ngôn ngữ phần mềm
Như đã biết, hệ thống vi xử lý là một hệ thống mạch điện tử số hoạt động theo chương
trình. Vì là hệ thống mạch điện tử số, nên các chương trình cung cấp cho vi xử lý hoạt động phải ở
dưới dạng 0, 1 gọi là chương trình mã máy. Nhưng do ngôn ngữ máy chỉ đơn giản là tổ hợp của
các bit 0 và 1 nên rất khó nhớ, khó kiểm tra đối với người sử dụng. Để khắc phục nhược điểm
này, người ta đặt cho mỗi lệnh mã máy thực hiện một chức năng số cơ bản một tên dễ nhớ hơn gọi
là mã gợi nhớ. Khi lập trình người ta sử dụng các lệnh gợi nhớ này, tạo thành chương trình hợp
ngữ (assembly), để vi xử lý thực hiện được chương trình cần phải dịch nó ra chương trình mã
máy. Quá trình dịch một chương trình hợp ngữ thành một chương trình mã máy, được gọi là quá
trình hợp dịch (assembler). Hợp dịch có thể thực hiện bằng cách tra bảng tập lệnh, khi có máy vi
tính và các công cụ soạn thảo lưu trữ, người ta thực hiện các chương trình hợp dịch để quá trình
hợp dịch nhanh chóng và chính xác hơn.
Do chỉ đơn giản là tên của một lệnh cơ bản của vi xử lý, nên các mã gợi nhớ vẫn chưa
thực sự dễ dàng khi lập trình, các chương trình hợp ngữ thường không có cấu trúc và rất khó kiểm
tra phát hiện lỗi cũng như lưu trữ sử dụng lâu dài. Cũng theo cách trên, người ta viết ra các
chương trình con hợp ngữ thực hiện một chức năng thông dụng rồi đặt thành một lệnh ngôn ngữ
cấp cao. Có rất nhiều ngôn ngữ cấp cao khác nhau ra đời như Pascal, C, basic …. Để thực hiện
các chương trình ngôn ngữ cấp cao, cũng cần phải dịch chúng về dạng mã máy. Quá trình này
được gọi là thông dịch hoặc biên dịch. Thông dịch là quá trình dịch từng lệnh ngôn ngữ cấp cao ra
một chuỗi lệnh mã máy để vi xử lý thực hiện, sau đó mới tiếp tục với lệnh cấp cao kế tiếp. Còn
biên dịch là dịch đồng thời chương trình ngôn ngữ cấp cao ra chương trình mã máy, sau đó mới
cung cấp cho vi xử lý thực hiện chương trình mã máy đó.
Chương trình ngôn
ngữ cấp cao
Hệ thống mạch
điện tử số
Chương trình hợp
ngữ
(các lệnh gợi nhớ)
Chương trình mã
máy
(tập hợp các bit 0
và 1
)
Hình 1.4: Sự phát triển của ngôn ngữ phần mềm.
1.2. TỔ CHỨC BỘ NHỚ CỦA HỆ THỐNG VI XỬ LÝ
Trong hệ thống mạch điện tử phần cứng của hệ thống vi xử lý mô tả trên hình 1.3, bộ nhớ
là các IC nhớ được gọi là bộ nhớ bán dẫn hay bộ nhớ chính của hệ thống vi xử lý. Ngoài bộ nhớ
bán dẫn, hệ thống vi xử lý còn có các thiết bị khác sử dụng để lưu trữ dữ liệu và chương trình, đó
là các thiết bị nhớ ngoài như: ổ đĩa cứng, ổ đĩa mềm, ổ đĩa quang học …. Chúng đóng vai trò là
các thiết bị ngoại vi của hệ thống. Phần này chỉ mô tả về cấu tạo và nguyên tắc hoạt động của các
loại bộ nhớ bán dẫn.
Bộ nhớ bán dẫn được chia thành hai loại chính: bộ nhớ chỉ đọc ROM (Read Only
Memory) và bộ nhớ có thể đọc ghi được hay còn gọi là bộ nhớ truy cập ngẫu nhiên RAM
(Random Access Memory). Tuy nhiên các tên gọi trên chỉ mang tính chất tương đối, bộ nhớ ROM
cần phải được ghi dữ liệu trước khi đọc, mỗi loại ROM khác nhau sẽ có cách ghi dữ liệu khác
nhau. Bộ nhớ truy cập ngẫu nhiên, khác với bộ nhớ truy cập tuần tự là có thể truy cập bất kỳ dữ
liệu nào một cách tức thời, mà không phải truy cập tuần tự. Các bộ nhớ ROM và RAM đều có thể
truy cập tuần tự.
4
[...]... : C00000H FFFFFH 9 Chương 1: Kiến trúc của hệ thống vi xử lý Công vi c xác định vùng địa chỉ cho từng IC nhớ trong một hệ thống vi xử lý được gọi là lập bản đồ bộ nhớ 1.3 VÀO RA TRONG HỆ THỐNG VI XỬ LÝ P TI T ED U V N 1.3.1 Cấu trúc và nguyên tắc làm vi c của cổng vào ra Trong hệ thống vi xử lý, thông thường sử dụng nhiều thiết bị ngoại vi khác nhau, các thiết bị ngoại vi này sử dụng để giao tiếp với... hai cổng vào sử dụng các bộ đệm cài 8 bit 13 Chương 2: Nguyên tắc làm vi c của bộ vi xử lý họ Intel 80x86 CHƯƠNG 2: NGUYÊN TẮC LÀM VI C CỦA BỘ VI XỬ LÝ HỌ INTEL 80X86 CẤU TRÚC CỦA BỘ VI XỬ LÝ 80286 INTEL TI 2.1 T ED U V N Giới thiệu: Nội dung chương này trước hết giới thiệu về cấu trúc của bộ vi xử lý 80286 và chức năng các khối mạch của nó như: khối giao tiếp BUS (BU) tác động mọi tín hiệu để giao tiếp... hiện được tất cả các chức năng của các vi mạch số khác bằng cách thực hiện tuần tự các chức năng số cơ bản • O • Một lệnh của bộ vi xử lý là chuỗi các bit 0, 1 cung cấp để vi xử lý thực hiện được một chức năng số cơ bản của nó • Một chương trình vi xử lý là một chuỗi các lệnh được sắp xếp theo giải thuật của bài toán hay công vi c cần thực hiện • Để có hệ thống vi xử lý hoạt động được cần có kết nối...Chương 1: Kiến trúc của hệ thống vi xử lý U V N Trong các hệ thống vi xử lý, bộ nhớ ROM được sử dụng để ghi các chương trình và dữ liệu cố định như: chương trình khởi động hệ thống, chương trình ROM BIOS của máy tính, các chương trình điều khiển hoạt động của các hệ thống vi xử lý không có bộ nhớ ngoài … Các loại bộ nhớ ROM bao gồm: Mask ROM là ROM được ghi dữ liệu ngay từ khi sản xuất... hiệu của hệ thống, các tín hiệu được chia thành 03 nhóm 11 Chương 1: Kiến trúc của hệ thống vi xử lý chính gọi là ba BUS: BUS địa chỉ, BUS dữ liệu và BUS điều khiển BUS dữ liệu để truyền dữ liệu giữa các khối CPU sử dụng một BUS dữ liệu để truyền dữ liệu với mọi nơi nên nó cần BUS địa chỉ để xác định vị trí nào sẽ truyền dữ liệu với nó BUS điều khiển sẽ xác định các chế độ làm vi c khác nhau của hệ thống... EXECUTION UNIT (EU) INSTRUCTION UNIT (IU) 3 DECODER INSTRUCTION INSTRUCTION DECODER QUEUE Hình 2.1: Sơ đồ khối bộ vi xử lý 80286 14 Chương 2: Nguyên tắc làm vi c của bộ vi xử lý họ Intel 80x86 2.1.1 Sơ đồ khối của vi xử lý 80286 Intel Bộ vi xử lý 80286 được cấu tạo từ 4 khối chức năng có thể làm vi c song song: - Khối giao tiếp BUS : BU (Bus Unit) - Khối giải mã lệnh : IU (Instruction Unit) - Khối thực... bộ vi xử lý Bộ điều khiển BUS 82288 cung cấp các tín hiệu điều khiển để giao tiếp với bộ nhớ và vào ra Sơ đồ kết nối chi tiết cho hệ thống mô tả trên hình 2.8 Khi truyền dữ liệu với bộ nhớ và vào ra, các tín hiệu địa chỉ, điều khiển và dữ liệu được bộ vi xử lý tác động tuần tự theo thời gian theo một quy luật định trước được gọi là một chu kỳ máy của bộ vi xử lý Để thực hiện xong một lệnh bộ vi xử lý. .. được 214 = 16384 mảng nhớ khác nhau 25 O PE N P TI T ED U V N Chương 2: Nguyên tắc làm vi c của bộ vi xử lý họ Intel 80x86 26 O PE N P TI T ED U V N Chương 2: Nguyên tắc làm vi c của bộ vi xử lý họ Intel 80x86 27 Chương 2: Nguyên tắc làm vi c của bộ vi xử lý họ Intel 80x86 PE N P TI T ED U V N Dung lượng nhớ lớn nhất của một mảng nhớ là 64KB nên không gian nhớ ảo dành cho một nhiệm vụ sẽ có dung lượng... tác động của các tín hiệu trong hệ thống, và chức năng của chúng sử dụng làm gì trong hệ thống Ngoài ra cũng cần chú ý tới trạng thái của các cả các thanh ghi của 80286 sau khi khởi động và cơ chế ngắt của CPU Cơ chế ngắt được sử dụng rất phổ biến trong các hệ thống vi xử lý trong các ứng dụng thực tế, đặc biết là đối với các hệ thống điều khiển hoạt đông của máy móc thiết bị Các cơ chế quản lý bộ nhớ... (512KB) EPROM (512KB) 12 Chương 1: Kiến trúc của hệ thống vi xử lý O PE N P TI T ED U V N Cho biết vùng địa chỉ của từng bộ nhớ trong các bản đồ (các bộ nhớ đều có 8 bit dữ liệu) Bài 4: Thực hiện cổng ra điều khiển tám LED đơn có địa chỉ là F000H Bài 5: Thực hiện cổng vào nhận dữ liệu từ 8 phím nhấn có địa chỉ là F000H Bài 6: Thực hiện mạch giải mã địa chỉ vào ra trong hệ thống có 2 cổng ra và hai cổng . bộ vi xử lý như :
mục đích sự ra đời của bộ vi xử lý, các khối chức năng cơ bản của bộ vi xử lý, nguyên tắc xử lý
các công vi c và bài toán của bộ vi xử.
OPEN.PTIT.EDU.VN
Chương 1: Kiến trúc của hệ thống vi xử lý
CHƯƠNG 1: KIẾN TRÚC CỦA HỆ THỐNG VI XỬ LÝ
Giới thiệu:
Trước hết trong chương này sinh vi n cần nắm được
Ngày đăng: 24/02/2014, 19:20
Xem thêm: Tài liệu Bài giảng Kiến trúc của hệ vi xử lý docx, Tài liệu Bài giảng Kiến trúc của hệ vi xử lý docx