Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 15

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN


KHOA KỸ THUẬT MÁY TÍNH

BÁO CÁO BÀI THỰC HÀNH


THIẾT KẾ LUẬN LÝ SỐ

Giảng viên hướng dẫn:

Sinh viên:
MSSV:

BÀI THỰC HÀNH LAB 6.(2):


I. Bài tập thực hành

1.Thực hành
1.1 Yêu cầu
Chạy và quan sát quá trình xử lý các lệnh sau thông qua datapath trên MARS.
• add $t1,$t2,$t3.
• addi $t1,$t1,5
• sub $t1,$t2,$3
• lw $t1,4($t2) ; # $t2 = 0x10010000
• sw $t1,8($t2); #$t2 = 0x10010020
• J label Label: exit
• slt $t1,$t2,$t3

2. Thực hiện
• add $t1,$t2,$t3:
- Thuộc lệnh R-type, thực hiện phép tính cộng rồi lưu trên thanh ghi $t1do đó không
có thao tác lưu kết quả vào Memory.
Control

Register
ALU control

• addi $t1,$t1,5
- Thuộc lệnh I-type nên đi qua SIGN EXTEND, thực hiện phép tính với số
immediate rồi lưu trên thanh ghi $t1 nên cũng không có thao tác lưu kết quả
vào Memory.
Control

Register
ALU control
• sub $t1,$t2,$3
- Thuộc lệnh R-type, thực hiện phép tính trừ và lưu kết quả trên thanh ghi,
không có thao tác lưu kết quả vào Memory.

• lw $t1,4($t2) ; # $t2 = 0x10010000


- Thuộc lệnh I-type nên đi qua SIGN EXTEND, dùng để lấy dữ liệu từ
Memory nên Control sẽ đưa tín hiệu READMEM đến Memory.
Control
Register

ALU control
• sw $t1,8($t2); #$t2 = 0x10010020
- Thuộc lệnh I-type nên đi qua SIGN EXTEND, dùng để lưu dữ liệu vào
Memory nên Control sẽ đưa tín hiệu WRITEMEM đến Memory.
Control
• J label Label: exit
- Thuộc lệnh I-type, dùng để nhảy đến lệnh nằm trong Label, do đó không có
tín hiệu nào từ control đến ALU, register,…

Control
Register

ALU control

• slt $t1,$t2,$t3
- Thuộc lệnh R-type, dùng để so sánh giá trị hai thanh ghi $t2 và $t3 sau đó lưu
vào thanh ghi $t1.
II. Bài tập làm thêm

1. Yêu cầu
1.1 Chuyển chương trình sau sang MIPS:
int a,b,c,d; a=6; b=5; c=a-b; d=a+b;
• Các biến được lưu trong memory.
• Xác định các lệnh tương ứng là loại lệnh nào (R-type, I-Type, J-Type)? Giải thích?
• Kết nối chương trình với MIPS X-Ray trong MARS. Chạy từng bước các lệnh và ở
mỗi lệnh giải thích quá trình thực thi lệnh đó trên datapath trong MARS.

1.2 Chuyển chương trình sau sang MIPS:

• I được lưu trong $s3, j trong $s4, f trong $s0, g trong $s1, h trong $s2.
• Phải sử dụng lệnh bne và j trong chương trình.
• Kết nối chương trình với MIPS X-Ray trong MARS. Chạy từng bước các lệnh và ở
mỗi lệnh giải thích quá trình thực thi lệnh đó trên datapath trong MARS.
2. Thực hiện
2.1
2.2

You might also like