Bài giảng Kiến trúc máy tính - Chương 3: Bộ xử lý

Thành phần cơ bản của bộ xử lý

– Lệnh truy cập

– Các toán tử ALU

– Toán tử bộ nhớ

Kết nối các thành phần

– Các tín hiệu điều khiển và bộ đồn kênh MUXes

– Các chỉ thị giải mã lệnh

 

Bài giảng Kiến trúc máy tính - Chương 3: Bộ xử lý trang 1

Trang 1

Bài giảng Kiến trúc máy tính - Chương 3: Bộ xử lý trang 2

Trang 2

Bài giảng Kiến trúc máy tính - Chương 3: Bộ xử lý trang 3

Trang 3

Bài giảng Kiến trúc máy tính - Chương 3: Bộ xử lý trang 4

Trang 4

Bài giảng Kiến trúc máy tính - Chương 3: Bộ xử lý trang 5

Trang 5

Bài giảng Kiến trúc máy tính - Chương 3: Bộ xử lý trang 6

Trang 6

Bài giảng Kiến trúc máy tính - Chương 3: Bộ xử lý trang 7

Trang 7

Bài giảng Kiến trúc máy tính - Chương 3: Bộ xử lý trang 8

Trang 8

Bài giảng Kiến trúc máy tính - Chương 3: Bộ xử lý trang 9

Trang 9

Bài giảng Kiến trúc máy tính - Chương 3: Bộ xử lý trang 10

Trang 10

Tải về để xem bản đầy đủ

pptx 69 trang Danh Thịnh 08/01/2024 960
Bạn đang xem 10 trang mẫu của tài liệu "Bài giảng Kiến trúc máy tính - Chương 3: Bộ xử lý", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Kiến trúc máy tính - Chương 3: Bộ xử lý

Bài giảng Kiến trúc máy tính - Chương 3: Bộ xử lý
Chương 3: Bộ xử lý 
Khối điều khiển và Đường dữ liệu 
Nội dung 
Thành phần cơ bản của bộ xử lý 
– Lệnh truy cập 
– Các toán tử ALU 
– Toán tử bộ nhớ 
Kết nối các thành phần 
– Các tín hiệu điều khiển và bộ đồn kênh MUXes 
– Các chỉ thị giải mã lệnh 
Material that is not in this lecture 
Readings from the book 
– ALU Function field (fig.4.13 in 4.4) 
– Some data path details 
– The book has excellent descriptions of this topic. 
Please read the book before watching this lecture. 
The reading assignment is on the website. 
Thực thi cơ bản của MIPS (from the book) 
Xem lại các tập lệnh cơ bản trong MIPS 
– Memory: lw, sw 
– Arithmetic: add,sub 
– Logic: and, or 
– Branch: beq 
Đọc thêm : 
– Multiply, divide 
– A bunch of logic operations 
– jump 
– jr and jal 
Các hoạt động chính của bộ xử lý? 
Nạp lệnh : tìm ra lệnh và tải lệnh 
Tính toán trên ALU : tìm ra toán tử và thực thi 
Truy nhập bộ nhớ : tìm ra địa chỉ và truy nhập 
Thiết kế đơn xung nhịp 
Thiết kế đầu tiên sẽ xử lý một lệnh trong một chu kỳ đồng hồ. Chia lệnh thành các pha và thực hiện trong một chu kỳ đồng hồ. 
Nhắc lại về thiết kế mức logic: 
Tổ hợp các mức logic tạo ra trạng thái kế tiếp 
Bộ nhớ (các mạch chốt, RAM) lưu trữ trạng thái 
Bộ đồng hồ chuyển đổi trạng thái kế tiếp 
Quy trình nạp lệnh 
Trạng thái kế tiếp : PC+4 (ngoại trừ các lệnh nhảy) 
Trạng thái : Program Counter (lệnh hiện tại) 
Thiết kế đơn xung nhịp 
Thiết kế xử lý một lệnh trong một chu kỳ đồng hồ 
Các khối xử lý cơ bản: 
– Combinational logic tạo ra next state 
– Memories (latches , RAM) lưu trữ trạng thái 
– Clock chuyển đổi next state thành current state . 
Sơ đồ khối 
HUST-FET, 14/02/2024 
8 
Triển khai các lệnh 
Lệnh truy cập bộ nhớ : lw, sw 
Lệnh số học và logic : add, sub, and, or, slt 
Lệnh điều khiển dòng chương trình : beq, j 
Triển khai các pha hoạt động 
Dùng thanh ghi PC để lưu địa chỉ lệnh 
	 Đọc lệnh từ bộ nhớ, và cập nhật giá trị PC 
Giải mã lệnh và đọc các thanh ghi 
Thực hiện lệnh 
Lưu kết quả 
Instruction 
Fetch 
Instruction 
Decode 
Operand 
Fetch 
Execute 
Result 
Store 
Next 
Instruction 
Fetch 
PC = PC+4 
Decode 
Exec, Store 
Stages of Execution on Datapath 
instruction 
memory 
+ 4 
rt 
rs 
rd 
registers 
ALU 
Data 
memory 
imm 
1. Instruction 
Fetch 
2. Decode/ 
 Register 
Read 
3. Execute 
4. Memory 
5. Register 
 Write 
PC 
Nạp lệnh 
Theo dõi địa chỉ lệnh hiện tại tên thanh PC. 
– Tăng PC lên 4 trong mỗi chu kỳ 
– Tải lệnh tại địa chỉ được xác định bởi PC 
Nạp lệnh 
HUST-FET, 14/02/2024 
11 
Đọc lệnh tại địa chỉ (lưu trong) PC từ bộ nhớ lệnh ( eng. Instruction Memory ) 
Cập nhật giá trị PC tới địa chỉ của lệnh kế tiếp 
Read 
Address 
Instruction 
Instruction 
Memory 
Add 
PC 
4 
PC được cập nhật ở mọi chu kỳ không cần tín hiệu điều khiển ghi PC. 
Đọc từ bộ nhớ lệnh được thực hiện bằng logic tổ hợp 
Instruction 
Fetch 
Instruction 
Decode 
Operand 
Fetch 
Execute 
Result 
Store 
Next 
Instruction 
Giải mã lệnh 
HUST-FET, 14/02/2024 
12 
Chuyển các bit thuộc trường mã lệnh và trường mã chức năng tới khối điều khiển 
Instruction 
Control 
Unit 
Instruction 
Fetch 
Instruction 
Decode 
Operand 
Fetch 
Execute 
Result 
Store 
Next 
Instruction 
Giải mã lệnh (lệnh R) 
Giải mã lệnh (Lệnh trực tiếp) 
Giải mã lệnh (các tín hiệu điều khiển) 
Giải mã lệnh (R-format ) 
Giải mã lệnh (load) 
Nạp toán hạng 
HUST-FET, 14/02/2024 
18 
Đọc 2 giá trị toán hạng nguồn từ tệp thanh ghi 
Chỉ số các thanh ghi nằm trong lệnh 
Mở rộng dấu cho toán hạng trực tiếp I 
Write Data 
Read Addr 1 
Read Addr 2 
Write Addr 
Register 
File 
Read 
 Data 1 
Read 
 Data 2 
Instruction 
Fetch 
Instruction 
Decode 
Operand 
Fetch 
Execute 
Result 
Store 
Next 
Instruction 
Thực hiện lệnh 
HUST-FET, 14/02/2024 
19 
Thực hiện phép toán (mã hóa bới op và funct ) trên giá trị toán hạng opA và opB 
Các phép toán của lệnh R và I 
Phép toán tính địa chỉ trong lệnh lw, sw 
Phép toán so sánh trong lệnh beq, bne 
Instruction 
Fetch 
Instruction 
Decode 
Operand 
Fetch 
Execute 
Result 
Store 
Next 
Instruction 
opB 
ALU 
overflow 
zero 
ALU control 
opA 
result 
Tính toán trên ALU (các chỉ thị lệnh dạng R-type) 
Các bước thực hiện? 
– Đ ọc dữ liệu từ tệp thanh ghi (specify rs and rt ) 
– Thực thi tính toán ALU 
– Ghi dữ liệu về tệp thanh ghi (specify rd ) 
Tính toán trên ALU 
Các bước thực hiện? 
– Đ ọc dữ liệu từ tệp thanh ghi (xác định rõ rs và rt ) 
– Thực hiện tính toán ALU 
– Ghi dữ liệu trở lại tệp thanh ghi (xác định rõ rd ) 
Ghi kết quả 
HUST-FET, 14/02/2024 
22 
Từ ALU với các lệnh tính toán 
Từ bộ nhớ với các lệnh truy cập bộ nhớ 
Write Data 
Read Addr 1 
Read Addr 2 
Write Addr 
Register 
File 
Read 
 Data 1 
Read 
 Data 2 
RegWrite 
Instruction 
Fetch 
Instruction 
Decode 
Operand 
Fetch 
Execute 
Result 
Store 
Next 
Instruction 
Truy cập bộ nhớ 
HUST-FET, 14/02/2024 
23 
MemWrite 
MemRead 
Data 
Memory 
Address 
Write Data 
Read Data 
Địa chỉ theo byte 
Dữ liệu từ thanh ghi rt 
Instruction 
Fetch 
Instruction 
Decode 
Operand 
Fetch 
Execute 
Result 
Store 
Next 
Instruction 
Truy cập bộ nhớ 
Các bước thực hiện? 
– Tính toán địa chỉ 
– Gửi địa chỉ đến bộ nhớ dữ liệu (write: data) 
– Đọc: nhận kết quả trả về và đưa vào tệp thanh ghi 
Q: Điều gì xảy ra nếu đọc ghi vào bộ nhớ cùng một thời điểm 
1/ không thể xảy ra 
2/ dữ liệu sẽ bị sai lệch hoặc không hợp lệ 
3/ không có vấn để gì cả vì có đầu ra đọc dữ liệu và đầu vào ghi dữ liệu 
A: 2 
Hoạt động của RAM: kích hoạt một hàng đọc/ghi dữ liệu. Nếu thực hiện cả 2 cùng lúc sẽ làm các bit bị xáo trộn. Ngoài ra cần phải 2 địa chỉ cho quá trình ghi đọc 
Kết nối các thành phần 
• Bộ tính toán ALU 
– tải lệnh 
– tính toán giá trị tiếp theo của PC 
– đọc từ tệp thanh ghi 
– thực thi tính toán 
– ghi lại tệp thanh ghi 
• Truy nhập bộ nhớ (load/store) 
– tải 

File đính kèm:

  • pptxbai_giang_kien_truc_may_tinh_chuong_3_bo_xu_ly.pptx