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

Bài giảng Kiến trúc máy tính: Chương 11 - ThS. Nguyễn Thị Phương Thảo (tt)

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 (13.57 MB, 57 trang )

LOGO

KIẾN TRÚC MÁY TÍNH
Chương 11: BỘ XỬ LÝ TRUNG TÂM
(Central Processing Unit – CPU)

1/86


Chương 11. BỘ XỬ LÝ TRUNG TÂM

11.1

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

11.2

Chế độ địa chỉ

11.3

Hoạt động của CPU

11.4
11.5

Kiến trúc máy tính

Các kỹ thuật tiên tiến của bộ xử lý
Kiến trúc Intel


2/86


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

Nhiệm vụ của CPU










Nhận lệnh (Fetch Instruction): CPU đọc lệnh từ bộ
nhớ.
Giải mã lệnh (Decode Instruction): xác định thao tác mà lệnh yêu
cầu.
Nhận dữ liệu (Fetch Data): nhận dữ liệu từ bộ nhớ
hoặc các cổng vào-ra.
Xử lý dữ liệu (Process Data): thực hiện phép toán số học hay
phép toán logic với các dữ liệu.
Ghi dữ liệu (Write Data): ghi dữ liệu ra bộ nhớ hay
cổng vào-ra

Kiến trúc máy tính

3/86



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

Kiến trúc máy tính

4/86


11.1. Cấu trúc cơ bản của CPU
a. Đơn vị điều khiển (CU)

 Chức năng:






Điều khiển nhận lệnh từ bộ nhớ đưa vào thanh ghi lệnh và tăng nội dung của
PC để trỏ sang lệnh kế tiếp.
Giải mã lệnh nằm trong thanh ghi lệnh để xác định thao tác cần thực hiện và
phát ra tín hiệu điều khiển thực hiện lệnh đó.
Nhận tín hiệu yêu cầu từ bus hệ thống và đáp ứng với các yêu cầu đó.

Kiến trúc máy tính

5/86



11.1. Cấu trúc cơ bản của CPU
a.
khiển
(CU)(CU)
a. Đơn
Đơnvịvịđiều
điều
khiển

 Mô hình kết nối của đơn vị điều khiển:

Kiến trúc máy tính

6/86


11.1. Cấu trúc cơ bản của CPU
a.
khiển
(CU)(CU)
a. Đơn
Đơnvịvịđiều
điều
khiển

 Các tín hiệu đưa đến đơn vị điều khiển:


Mã lệnh từ thanh ghi lệnh đưa đến để giải mã




Các cờ từ thanh ghi cờ cho biết trạng thái của CPU





Xung clock từ bộ tạo xung bên ngoài cung cấp cho đơn vị điều khiển làm
việc
Các tín hiệu yêu cầu từ bus điều khiển

Kiến trúc máy tính

7/86


11.1. Cấu trúc cơ bản của CPU
a.
khiển
(CU)(CU)
a. Đơn
Đơnvịvịđiều
điều
khiển

 Các tín hiệu phát ra từ đơn vị điều khiển:





Các tín hiệu điều khiển bên trong CPU:


Điều khiển các thanh ghi



Điều khiển hoạt động của ALU

Các tín hiệu điều khiển bên ngoài CPU:


Điều khiển bộ nhớ chính



Điều khiển các module vào-ra

Kiến trúc máy tính

8/86


11.1. Cấu trúc cơ bản của CPU
b. Đơ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à các phép toán logic.



Số học: cộng, trừ, nhân, chia, tăng, giảm, đảo dấu, …



Logic: AND, OR, XOR, NOT, các phép dịch và quay bit

Kiến trúc máy tính

9/86


11.1. Cấu trúc cơ bản của CPU
Đơn vị số học và logic (ALU)
b.b. Đơn
vị số học và logic (ALU)

 Mô hình kết nối của ALU:

Kiến trúc máy tính

10/86


11.1. Cấu trúc cơ bản của CPU
c. Các thanh ghi

 Chức năng và đặc điểm:




Tập hợp các thanh ghi nằm trong CPU
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ớ



Tuỳ thuộc vào bộ xử lý cụ thể



Số lượng thanh ghi nhiều  tăng hiệu năng của CPU



Có hai loại thanh ghi:


Các thanh ghi lập trình được



Các thanh ghi không lập trình được

Kiến trúc máy tính

11/86



11.1. Cấu trúc cơ bản của CPU
c. Các thanh ghi

 Các thanh ghi địa chỉ


Bộ đếm chương trình (Program Counter – PC)



Con trỏ dữ liệu (Data Pointer – DP)



Con trỏ ngăn xếp (Stack Pointer – SP)



Thanh ghi cơ sở và thanh ghi chỉ số (Base Register & Index Register)

 Các thanh ghi dữ liệu
 Thanh ghi trạng thái
Kiến trúc máy tính

12/86


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

c. Các thanh ghi

Thanh ghi PC
 Còn gọi là con trỏ lệnh
(Instruction Pointer - IP)
 Là thanh ghi chứa đị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
thì nội dung của PC tự động tăng
để trỏ sang lệnh kế tiếp nằm ngay
sau lệnh vừa được nhận.
Kiến trúc máy tính

13/86


11.1. Cấu trúc cơ bản của CPU
c. Các thanh ghi
Thanh ghi con trỏ dữ liệu (DP)
 Chứa địa chỉ của ngăn nhớ dữ liệu
mà CPU muốn truy cập.
 Thường có một số thanh ghi con trỏ
dữ liệu.

Kiến trúc máy tính

14/86


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

c. Các thanh ghi

Con trỏ ngăn xếp (SP)

 Ngăn xếp là vùng nhớ có cấu trúc









 SP chứa địa chỉ của ngăn nhớ đỉnh ngăn
xếp
LIFO (Last In - First Out)
 Khi cất một thông tin vào ngăn xếp:
Ngăn xếp thường dùng để phục vụ
 Nội dung của SP tự động giảm
cho chương trình con
 Thông tin được cất vào ngăn nhớ được
trỏ bởi SP
Đáy ngăn xếp là một ngăn nhớ xác
 Khi lấy một thông tin ra khỏi ngăn xếp:
định
 Thông tin được đọc từ ngăn nhớ được
trỏ bởi SP
Đỉnh ngăn xếp là thông tin nằm ở
 Nội dung của SP tự động tăng

vị trí trên cùng trong ngăn xếp
 Khi ngăn xếp rỗng, SP trỏ vào đáy
Đỉnh ngăn xếp có thể bị thay đổi

Kiến trúc máy tính

15/86


11.1. Cấu trúc cơ bản của CPU
c. Các thanh ghi

Kiến trúc máy tính

Minh họa hoạt động của SP

16/86


11.1. Cấu trúc cơ bản của CPU
c. Các thanh ghi

Thanh ghi cơ sở và thanh ghi chỉ số

 Thanh ghi cơ sở: chứa địa chỉ của ngăn nhớ cơ sở (địa chỉ cơ sở).
 Thanh ghi chỉ số: chứa độ lệch địa chỉ giữa ngăn nhớ mà CPU cần
truy cập so với ngăn nhớ cơ sở.
 Địa chỉ của ngăn nhớ cần truy cập = địa chỉ cơ sở + chỉ số

Kiến trúc máy tính


17/86


11.1. Cấu trúc cơ bản của CPU
c. Các thanh ghi

Kiến trúc máy tính

Thanh ghi cơ sở và thanh ghi chỉ số

18/86


11.1. Cấu trúc cơ bản của CPU
c. Các thanh ghi

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 phục vụ cho
việc xử lý dữ liệu của CPU
 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 chấm động

Kiến trúc máy tính

19/86



11.1. Cấu trúc cơ bản của CPU
c. Các thanh ghi

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: biểu thị trạng thái của kết quả phép toán



Các cờ điều khiển: điều khiển chế độ làm việc của CPU

Kiến trúc máy tính

20/86


11.1. Cấu trúc cơ bản của CPU
Ví dụ cờ phép toán

 Cờ Zero (ZF - cờ rỗng): được thiết lập lên 1 khi kết quả của phép toán vừa thực
hiện xong bằng 0.
 Cờ Sign (SF - cờ dấu): được thiết lập lên 1 khi kết quả của phép toán vừa thực
hiện nhỏ hơn 0, hay nói cách khác, cờ Sign nhận giá trị bằng bit dấu của kết quả.
 Cờ Carry (CF - cờ nhớ): được thiết lập lên 1 nếu phép toán xảy ra hiện tượng
carry-out.
 Cờ Overflow (OF - cờ tràn): được thiết lập lên 1 nếu phép toán xảy ra hiện tượng

overflow.

Kiến trúc máy tính

21/86


11.2. Các chế độ địa chỉ

a.
b.
c.
d.
e.
f.
g.

Chế độ địa chỉ tức thì
Chế độ địa chỉ trực tiếp
Chế độ địa chỉ gián tiếp
Chế độ địa chỉ thanh ghi
Chế độ địa chỉ thanh ghi gián tiếp
Chế độ địa chỉ dịch chuyển
Chế độ địa chỉ ngăn xếp


Các chế độ định địa chỉ cơ bản


a. Định địa chỉ tức thì

 Dạng đơn giản nhất của định địa chỉ
 Toán hạng = A
 Chế độ này có thể được sử dụng để định nghĩa và sử
dụng các hằng số và thiết lập các giá trị ban đầu của biến



Các số thường được lưu trữ dưới dạng số bù
Bit ngoài cùng bên trái của trường toán hạng được sử dụng như
bit dấu

 Ưu điểm:


Chỉ cần truy xuất bộ nhớ một lần (để lấy lệnh), do vậy tiết kiệm
một chu kỳ cache hoặc bộ nhớ trong chu kỳ lệnh.

 Nhược điểm:


Kích thước của số bị giới hạn bởi kích thước của trường địa chỉ
vì thông thường kích thước của trường này nhỏ hơn kích thước
từ


b. Định địa chỉ trực tiếp
 Trường địa chỉ chứa địa chỉ
hiệu dụng của toán hạng
 Địa chỉ hiệu dụng (Effective
address (EA)) = trường địa chỉ

(Address field (A))
 Phổ biến trong các thế hệ máy
tính trước đây
 Tham chiếu bộ nhớ một lần để
lấy dữ liệu toán hạng
 Hạn chế: chỉ cung cấp một
không gian địa chỉ hạn chế


×