1. Trang chủ
  2. » Giáo Dục - Đào Tạo

PIPELINE GIẢI QUYẾT XUNG đột

2 206 1

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

[CHIA SẺ] MÔN KTMT - CHƯƠNG IV - PIPELINED ^^ Đối với phần Pipelined KTMT, có ý với kỹ thuật cho phép gửi vượt trước : Forwarding ko cho gửi Non - forwarding sau - Non - forwarding: Khi có lệnh chu kỳ sử dụng chung ghi (1 lệnh đọc lệnh ghi) thì: Chỉ lệnh trước tới cơng đoạn WB (nửa đầu WB dc ghi) lệnh dc phép thực thi công đoạn ID (giải mã lệnh nửa sau ID) => Kết luận: cần ý đặt NOP cho WB lệnh trước thẳng hàng với ID lệnh (tham khảo thêm hình) - Forwarding: với lệnh thuộc kiểu R-Format (add, sub ) EX lệnh trước cần thẳng hàng với ID lệnh sau (đảm bảo EX sau cho KQ truyền thẳng tới ALU lệnh sau nó), lệnh LW MEM lệnh trước thẳng hàng với ID lệnh sau (đảm bảo sau đọc/ ghi DL công đoạn MEM xong dc truyền xuống ALU lệnh kế tiếp) Chia sẻ bỏ qua lệnh ss nhảy beq (vì vướng điều kiện tiên đốn) ^^ Bạn có kinh nghiệm làm dạng cmt chia sẻ với người ^^ p/s: lệnh SW xảy theo trình tự code: lw để load DL từ ô nhớ ghi, thực thi lệnh add, sub cuối lưu lại giá trị ghi xuống nhớ => sw lệnh cuối ko lệnh thực thi sau ^^ TĨM LẠI NHỚ NHƯ VẦY: Giải xung đột: - Non – Forwarding: thêm nop lệnh (thêm nop, vẽ hình WB lệnh trước tự thẳng hàng ID lệnh sau thơi  ) Chu kì Lệnh Nop Nop Lệnh - IF ID O EX O O MEM O O IF WB O O ID O O EX O MEM WB Forwarding: dòng lệnh xung đột, dòng lệnh là: + R-Format (add, sub ): ko cần thêm nop (EX lệnh trước tự thẳng hàng ID lệnh sau rồi) Chu kì Lệnh Lệnh IF ID IF EX ID MEM EX WB MEM WB + Lệnh Lw: thêm nop (thêm nop, vẽ hình MEM lệnh trước tự thẳng hàng ID lệnh sau) Chu kì Lệnh Nop Lệnh IF ID O EX O IF MEM O ID WB O EX O MEM WB CHÚ Ý VỀ CÁCH THỨC HOẠT ĐỘNG CỦA CÁC LỆNH ADD, SUB, LW, SW … Để nhìn xung đột Ví dụ: Lw $t0, 12($S0) => Nạp từ nhớ có d0ịa ( 12 + $S0) vào ghi $t0 Sw $t0, 12($S0) => Lưu giá trị ghi $t0 vào vùng nhớ có địa (12 + $S0) ... MEM O ID WB O EX O MEM WB CHÚ Ý VỀ CÁCH THỨC HOẠT ĐỘNG CỦA CÁC LỆNH ADD, SUB, LW, SW … Để nhìn xung đột Ví dụ: Lw $t0, 12($S0) => Nạp từ nhớ có d0ịa ( 12 + $S0) vào ghi $t0 Sw $t0, 12($S0) => Lưu

Ngày đăng: 25/10/2019, 11:18

Xem thêm:

TỪ KHÓA LIÊN QUAN

w