1.1 Mục đích Hiểu được cấu trúc, thiết kế một bộ xử lý So sánh với bộ xử lý đơn xung nhịp và đa xung nhịp Tìm hiểu và xử lý xung đột khi thiết kế MIPS pipeline Tăng khả năng l
Trang 1Bài tập lớn Kiến trúc máy tính
Giáo viên hướng dẫn: Th.S Tạ Thị Kim Huệ
Đề tài: Xây dựng bộ xử lý MIPS pipeline
Trang 41.1 Mục đích
Hiểu được cấu trúc, thiết kế một bộ xử lý
So sánh với bộ xử lý đơn xung nhịp và đa xung nhịp
Tìm hiểu và xử lý xung đột khi thiết kế MIPS pipeline
Tăng khả năng lập trình hợp ngữ MIPS
Phát triển kỹ năng làm việc nhóm
Trang 51.2 Yêu cầu đặt ra
Thiết kế bộ xử lý MIPS pipeline
Thực hiện các lệnh cơ bản
Tính số Clock, CPI, Tc
Trang 72.1 Cơ sở lý thuyết
2.1.1 Kiến trúc MIPS
2.1.2 MIPS pipeline
Trang 92.1.2 MIPS pipeline
a Kỹ thuật đường ống
b Hiệu năng đường ống hóa
c Các thanh ghi pipeline
d Đường dữ liệu MIPS pipeline
e Điều khiển pipeline
f Xung đột pipeline
Trang 10a Kỹ thuật đường ống
Trang 11b Hiệu năng đường ống hóa
Trang 12c Các thanh ghi pipeline
Trang 13d Đường dữ liệu MIPS pipeline
Trang 14e Điều khiển pipeline
Trang 15f Xung đột pipeline
Trang 16- Xung đột cấu trúc
Giải quyết xung đột như thế nào???
Trang 17Xảy ra khi hai câu lệnh cùng sử dụng 1 tài nguyên tại cùng 1 thời điểm
Giải quyết xung đột cấu trúc
Trang 18Giải quyết xung đột cấu trúc
Trang 19Xảy ra khi yêu cầu sử dụng dữ liệu trước khi nó
sẵn sàng
Giải quyết xung đột dữ liệu (Data Hazard) bằng
forwarding
Trang 21Giải quyết xung đột dữ liệu (Data Hazard) bằng
forwarding
Trang 22Giải quyết xung đột dữ liệu (Data Hazard) bằng
forwarding
Trang 23Xảy ra khi không thể chuyển tiếp dữ liệu
Trang 24Giải quyết xung đột dữ liệu (Data Hazard) xử lý bằng
stall
Trang 25Giải quyết xung đột dữ liệu (Data Hazard) xử lý bằng stall
Trang 26Giải quyết xung đột dữ liệu (Data Hazard) xử lý bằng
stall
Trang 27Giải quyết xung đột điều khiển(Control Hazard)
Trang 28Giải quyết xung đột điều khiển(Control Hazard)
Trang 29Giải quyết xung đột điều khiển(Control Hazard)
Trang 30Giải quyết xung đột điều khiển(Control Hazard)
Hàm logic của forwarding giai đoạn ID là:
Hàm logic phát hiện stall cho lệnh branch được cho ở dưới.Bộ xử lý phải thực hiện yêu cầu branch trong giai đoạn ID.Nếu 1 trong 2 toán hạng nguồn của branch phụ thuộc câu lệnh ALU trong giai đoạn EX hoặc lệnh lw trong giai đoạn MEM,thì bộ xử lý phải stall cho đến khi toán hạng nguồn sẵn sàng
Bây giờ bộ xử lý có thể stall bởi vì 1 trong 2 xung đột load hoặc branch
Trang 31Sơ đồ thiết kế sử dụng Hazard Unit
Trang 322.2 Thiết kế MIPS pipeline
Trang 332.2 Thực hiện bài tập lớn
Trang 353 Kết luận
MIPS pipeline có hiệu năng cao hơn so với đơn xung nhịp
và đa xung nhịp
Trang 36Thanks you!