CHƢƠNG 2
TỔNG QUAN VỀ HỆ VI XỬ LÝ
1
Mục lục
2.1. Giới thiệu chung
2.2. Cấu trúc một hệ Vi xử lý điển hình
2.3. Chu kỳ trong Vi xử lý
2.4. Tập lệnh của Vi xử lý
2.5. Ghép nối bộ nhớ
2
2.1. Giới thiệu chung
2.1.1. Định nghĩa Vi xử lý
– Là mạch bán dẫn tích hợp trên một chip (IC) có nhiệm vụ
thực hiện các công việc xử lý tín hiệu hoặc điều khiển các
thành phần trong hệ thống
– Vi xử lý thực hiện công việc của nó theo chƣơng trình,
thuật toán do ngƣời dùng đặt ra
– Ký hiệu: P hoặc uP
3
2.1. Giới thiệu chung
• Phân loại Vi xử lý
• Hoặc phân loại theo số lƣợng bit: Vi xử lý 4bit, 8bit, 16bit, 32
bit và bây giờ là 64bit.
• Chip của Intel dùng nhiều trong máy tính còn của Motorola
dùng nhiều trong viễn thông
Vi xử lý
Loại đa năng:
Phục vụ cho nhiều mục đích khác
nhau
Ví dụ: 8080, 8085 … của Intel
6800, 6802… của Motorola
Loại chuyên dụng:
Phục vụ một mục đích
cụ thể
Ví dụ: các IC trong đồ
chơi của trẻ em
4
2.1. Giới thiệu chung
• Lịch sử ra đời và phát triển của Vi xử lý
1960
Fairchild
Semiconductor:
Chip bán dẫn đầu tiên
1971
Intel:
4004, 8008,
8080
1976
Zilog: Z-80
TI: VXL 16bit
1982
32 bit
AT&T: BELLMAC-32A
1985
Motorola: 680xx
ARM I
1990
Power PC (IBM)
64bit
1993
1999
Intel: Pentium,
Xeon, Celeron
2005
Intel: Multi Core
Thương mại hóa
chip bán dẫn
Tăng mật độ,
Máy tính trên chip
VLSI
và 32 bit
32bit nhường chỗ
64bit
Kỷ nguyên đa lõi
5
2.1. Giới thiệu chung
2.1.2. Hệ Vi xử lý
• Định nghĩa:
– Là hệ thống số làm việc theo chƣơng trình đƣợc lƣu giữ
trong bộ nhớ, xử lý dữ liệu bằng vi xử lý và đƣa ra các
quyết định liên lạc với thế giới bên ngoài thông qua các
cổng vào ra
– Một hệ Vi xử lý luôn bao gồm 2 thành phần: Phần cứng và
phần mềm
6
2.1. Giới thiệu chung
2.1.3. Các thành phần trong hệ Vi xử lý
7
2.1. Giới thiệu chung
2.1.4. Các kiến trúc thông dụng của Vi xử lý
• Kiến trúc Von Neumann
– Chỉ có một bộ nhớ chung cho dữ liệu và chƣơng trình
– Đọc dữ liệu và đọc lệnh không diễn ra đồng thời
8
2.1. Giới thiệu chung
• Kiến trúc Von Newmann
9
2.1. Giới thiệu chung
• Kiến trúc Harvard
– Có các bus độc lập cho bộ nhớ chƣơng trình và dữ liệu
– Đọc dữ liệu và đọc chƣơng trình diễn ra đồng thời
10
2.1. Giới thiệu chung
• Kiến trúc Harvard
11
2.1. Giới thiệu chung
• Kiến trúc SHARC – Super Harvard Architecture
– Thêm vào một số đặc trƣng để cải thiện băng thông dữ liệu
12
2.1. Giới thiệu chung
• Kiến trúc DSP – Digital Signal Processing
13
2.2. Cấu trúc của một hệ VXL điển hình
2.2.1. Cấu trúc chung của một hệ VXL điển hình
14
2.2. Cấu trúc của một hệ VXL điển hình
• Cấu trúc rút gọn
– uP: Vi xử lý
– M: Bộ nhớ (Memory)
– I: Cổng vào/Thiết bị vào dữ liệu (Input)
– O: Cổng ra/Thiết bị xuất dữ liệu (Output)
uP
M I O
Address Bus
Data bus
Control bus
15
2.2. Cấu trúc của một hệ VXL điển hình
2.2.2. Các thành phần cơ bản trong hệ VXL
1. Hệ thống Bus
Khái niệm
Kết nối kiểu kinh điển
A B
C D
Bus
Kết nối kiểu Bus
16
2.2. Cấu trúc của một hệ VXL điển hình
– Bus là nút dùng chung của cả hệ thống, dùng để truyền dữ
liệu giữa các thành phần với nhau
– Bus có thể nằm trong hoặc nằm ngoài Vi xử lý
– Truyền thông song song: Bus là dải (tape) dây dẫn, mỗi dây
truyền 1 bit.
– Truyền thông nối tiếp: Bus có thể là cáp đồng trục, xoắn
đôi, quang…
17
2.2. Cấu trúc của một hệ VXL điển hình
Tổ chức và quản lý Bus
• Bus sử dụng phần tử 3 trạng thái để cách ly các phần
tử trong hệ thống
• Các phần tử trong hệ thống Bus đƣợc quản lý bằng
địa chỉ.
– Mỗi thành viên trong hệ đều đƣợc xác định 1 địa chỉ duy
nhất
– Quản lý địa chỉ bằng phần cứng (mỗi đầu dây, I/O có 1 địa
chỉ xác định) hoặc bằng phần mềm (địa chỉ IP)
18
2.2. Cấu trúc của một hệ VXL điển hình
• Truy cập Bus:
– Phƣơng pháp ngẫu nhiên: thời điểm truy cập bus của các
phần tử là ngẫu nhiên. Dùng trong quảng bá
• Tốc độ chậm
• Quản lý số lƣợng phần tử lớn
• Cần giải quyết vấn đề xung đột
– Phƣơng pháp tiền định: xác định trƣớc quy luật, thời gian
truy nhập
• Tốc độ cao
• Số phần tử ít
19
2.2. Cấu trúc của một hệ VXL điển hình
Ưu nhược điểm
• Ƣu điểm:
– Tiết kiệm, đơn giản hóa hệ thống
– Làm hệ có tính mở. Có thể thêm hoặc bớt phần tử dễ dàng
• Nhƣợc điểm:
– Tốc độ bị hạn chế do Bus là đƣờng truyền chung
20
2.2. Cấu trúc của một hệ VXL điển hình
2. Tổ chức cổng vào ra
Thiết bị cơ bản
• IC 8282 – Tích hợp mạch 3 trạng thái và chốt dữ liệu
D
STB
D
0
Q
0
OE
D
STB
D
7
Q
7
OE
STB
OE
D0 – D7: 8 đường dữ liệu vào
Q0 – Q7: 8 đường dữ liệu ra
STB: chốt tín hiệu
STB = 1: cho phép đưa dữ liệu ra
STB = 1->0: chốt dữ liệu đầu ra
/OE: Cho phép xuất tín hiệu
21
2.2. Cấu trúc của một hệ VXL điển hình
Tổ chức cổng vào
8282
Data bus
Address bus
Control bus
D
0
… D
7
I
O
/M
RD
Ax
STB
OE
+5V
- Ax: Địa chỉ của thiết bị (Tín hiệu sau
giải mã địa chỉ)
- IO/M: Tín hiệu chọn thiết bị:
IO/M = 1 chọn cổng vào ra
IO/M = 0 chọn bộ nhớ
- /RD: Lệnh chỉ thao tác đọc thiết bị
22
2.2. Cấu trúc của một hệ VXL điển hình
Ax = 1
IO/M = 1
RD = 0
Data từ bên ngoài
Address Bus
Control Bus
Data Bus
23
2.2. Cấu trúc của một hệ VXL điển hình
• Tổ chức cổng ra
8282
Data bus
Address bus
Control bus
Q
0
… Q
7
I
O
/M
WR
Ax
STB
OE
24
2.2. Cấu trúc của một hệ VXL điển hình
Ax = 1
IO/M = 1
WR = 0
Data đưa ra ngoàii
Address Bus
Control Bus
Data Bus
25