Tải bản đầy đủ (.pdf) (138 trang)

Bài giảng Kiến trúc máy tính (Computer Architecture) - Chương 4: Bộ xử lý trung tâm CPU

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.88 MB, 138 trang )

Chương 4

Bộ xử lý trung tâm
CPU
1


Mục tiêu






Nhận biết các thành phần cơ bản của đơn vị
xử lý trung tâm (CPU) và chức năng của
chúng.
Hiểu được vai trò mỗi thành của CPU trong
mối quan hệ với việc xử lý thông tin.
Kiến trúc tập lệnh của CPU

2


Nội dung





Cấu trúc cơ bản của CPU


Kiến trúc tập lệnh
Hoạt động của CPU

3


4.1 Cấu trúc cơ bản của CPU









Control Unit - CU
Arithmetic and Logic
Unit - ALU
Register File – RF
Bus Interface Unit BIU
Local Bus (Internal
Bus)
4


1. Đơn vị số học và logic (ALU)
 Chức năng: Thực hiện các phép toán số học
và phép toán logic:
 Số học: cộng, trừ, tăng, giảm, bù hai, so


sánh

 Logic: AND, OR, NOT, XOR, NOR, phép dịch

bit

5


Mơ hình kết nối ALU

6


Các khối bên trong ALU

=

Bộ cộng

Bộ trừ

Bộ dịch

<,>

Bù hai

Tăng


Giảm

OR

AND

NOT

XOR

NOR

7


Bộ cộng sử dụng trong máy tính điện
tử
Bộ cộng hai số nhị phân n bit:

8


Bộ cộng sử dụng trong máy tính điện
tử
Bộ bán tổng
a0
b0

Half-Adder


Bộ cộng đầy đủ 1 bit
S0
c1

9


2. Thanh ghi
Thanh ghi là bộ nhớ bên trong CPU
 Vùng nhớ được CPU nhận biết qua tên thanh
ghi
 Ví dụ: Bảng mã thanh ghi của VXL 8086


10


2. Thanh ghi
 Chức năng và đặc điểm
 Chứa các thông tin tạm thời phục vụ cho hoạt
động ở thời điểm hiện tại của CPU
 Được coi là mức đầu tiên của hệ thống nhớ, có tốc
độ truy xuất cực nhanh

11


Thanh ghi



Qn

Xây dựng từ các phần tử nhớ cơ bản:

D=0

D=1

Qn

T=0

T=1

0

0

1

0

0

1

1

0


1

1

1

0

JK=
00

JK=
01

JK=
11

JK=
10

0

0

0

1

1


1

1

0

0

1

Q

S

Q

SR =
00

SR =
01

SR =
11

SR=
10

0


0

0

-

1

1

1

0

-

1

Qn

Qn

R

12


Thanh ghi 8 bit song song


13


Thanh ghi dịch

14


Phân loại thanh ghi theo chức năng
 Thanh ghi địa chỉ: quản lý địa chỉ của ngăn nhớ
hay cổng vào/ra
 Thanh ghi lệnh: chứa lệnh đang được thực hiện
 Thanh ghi dữ liệu: chứa tạm thời các dữ liệu
 Thanh ghi trạng thái: chứa các thông tin điều
khiển của CPU và trạng thái kết quả phép toán
 Thanh ghi đa năng: có thể chứa địa chỉ hoặc dữ
liệu

15


Các thanh ghi điển hình trong CPU

16


Các thanh ghi địa chỉ
 Thanh ghi cơ sở (thanh ghi
đoạn)
 Ví dụ: CS (Code segment


 Thanh ghi chỉ số (thanh ghi
lệch)
 Ví dụ: PC (Program Counter)
Thanh ghi cơ sở:Thanh ghi chỉ sổ >
Lưu địa chỉ logic

 MAR (Memory Address
Register): Thanh ghi đệm địa
chỉ

17


Bộ đếm chương trình PC
 PC: Program Counter
 Cịn được gọi là con trỏ lệnh
IP (Instruction Pointer)
 Lưu địa chỉ của lệnh tiếp
theo sẽ được nhận vào
 Sau khi một lệnh được nhận
vào, nội dung PC tự động
tăng để trỏ sang lệnh kế
tiếp
18


Ngăn xếp (Stack)
 Ngăn xếp là vùng nhớ, thường dùng để
phục vụ cho chương trình con hoặc phục

vụ ngắt
 Truy cập theo kiểu LIFO (Last in – First
out)
 Đáy ngăn xếp là một ngăn nhớ xác định
 Đỉnh ngăn xếp là thơng tin nằm ở vị trí
trên cùng trong ngăn xếp
 Đỉnh ngăn xếp có thể bị thay đởi
19


Minh họa con trỏ ngăn xếp

SP

Đỉnh Stack

Đáy Stack

20


Cơ chế hoạt động của SP
 SP chứa địa chỉ của ngăn nhớ đỉnh ngăn xếp
 Khi cất một thông tin vào ngăn xếp:
 Nội dung của SP tự động giảm
 Thông tin được cất vào ngăn nhớ được trỏ bởi SP

 Khi lấy một thông tin ra khỏi ngăn xếp:
 Thông tin được đọc từ ngăn nhớ được trỏ bởi SP
 Nội dung của SP tự động tăng


 Khi ngăn xếp rỗng, SP trỏ vào đáy
21


Các thanh ghi dữ liệu
 Chứa các dữ liệu tạm thời hoặc các kết quả
trung gian
 Cần có nhiều thanh ghi dữ liệu
 Các thanh ghi số nguyên: 8, 16, 32, 64 bit
 Các thanh ghi số dấu phẩy động (ví dụ theo
tiêu chuẩn IEEE 754 là 32 bit, 64 bit, …)

22


Thanh ghi tích lũy A



Accumulator
Cất giữ toán hạng hoặc các kết quả
phép tính của ALU

23


Thanh ghi trạng thái
 Còn gọi là thanh ghi cờ (Flag Register)
 Chứa các thông tin trạng thái của CPU

 Các cờ phép toán: báo hiệu trạng thái của kết quả

phép toán
 Các cờ điều khiển: biểu thị trạng thái điều khiển
của CU

24


Ví dụ cờ phép toán
 Cờ Zero (cờ rỗng): được thiết lập lên 1 khi kết quả
của phép toán bằng 0
 Cờ Sign (cờ dấu): được thiết lập lên 1 khi kết quả
phép toán nhỏ hơn 0
 Cờ Carry (cờ nhớ): được thiết lập lên 1 nếu phép
tốn có nhớ ra ngoài bit cao nhất  cờ báo tràn với
số không dấu
 Cờ Overflow (cờ tràn): được thiết lập lên 1 nếu
cộng hai số nguyên cùng dấu mà kết quả có dấu
ngược lại  cờ báo tràn với số có dấu .
25


×