Bài giảng Vi xử lý nâng cao - Phần 2: Các hướng dẫn về RISC - Hướng dẫn 1: MIPS & SPIM

B.7 Hoạt động & Thiết lập
 Single-Stepping: Chạy chương trình
từng lệnh ở một thời điểm.
 Breakpoint: Bảo SPIM dừng trước khi
SPIM thực thi một lệnh cụ thể.
pdf 21 trang thamphan 27/12/2022 3080
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Vi xử lý nâng cao - Phần 2: Các hướng dẫn về RISC - Hướng dẫn 1: MIPS & SPIM", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • pdfbai_giang_vi_xu_ly_nang_cao_phan_2_cac_huong_dan_ve_risc_huo.pdf
  • pptHuongdan_01.ppt

Nội dung text: Bài giảng Vi xử lý nâng cao - Phần 2: Các hướng dẫn về RISC - Hướng dẫn 1: MIPS & SPIM

  1. Bài giảng “Vi xử lý nâng cao” Phần 2: Các hướng dẫn về RISC Hướng dẫn 1: MIPS & SPIM 1
  2. A.1 Các bước tổng quát . 1. Cấp phát thanh ghi cho các biến của chương trình.  n $a1 . 2. Tạo mã cho thân của thủ tục.  n = n + 1 addi $a1, $a1, 1 . 3. Bảo tồn các thanh ghi ngang qua lời gọi thủ tục. 3
  3. A.3 Thủ tục sort (1: Mã C) • sort (int v[], int n) •{ • int i, j; • for(i=0; i =0 && v[j]>v[j+1]; j=j-1) • {swap(v,j);} •} •} 5
  4. A.3 Thủ tục sort (3.1: Vòng lặp for ngoài cùng) • for(i=0; i =$a1 (i>=n) • beq $t0, $zero, exit1 • # đi đến exit1 nếu $s0>=$a1 (i>=n) • • addi $s0, $s0, 1 # i = i + 1 • j for1tst • Exit1: 7
  5. A.3 Thủ tục sort (3.2: Vòng lặp for trong cùng) • add $t1, $t1, $t1 # reg $t1 = j*4 • add $t2, $a0, $t1 # reg $t2=v+(j*4) • lw $t3, 0($t2) # reg $t3=v[j] • lw $t4, 4($t2) # reg $t4=v[j+1] • slt $t0, $t4, $t3 • # reg $tp=0 nếu $t4>=$t3 • beq $t0, $zero, exit2 • # đi đến exit2 nếu $t4>=$t3 • • addi $s1, $s1, -1 # j=j-1 • j for2tst # nhảy đến kiểm tra vòng lặp # bên trong • Exit2: 9
  6. A.3 Thủ tục sort (3.4: Truyền thông số trong sort) • Trước tiên, sao chép $a0 $s2, $a1 $s3 trong sort . • move $s2, $a0 # sao chép $a0 vào $s2 • move $s3, $a1 # sao chép $a1 vào $s3 • Kế đến, chuyển các thông số đến swap. • move $a0, $s2 • # thông số đầu tiên của swap là v • move $a1, $s1 • # thông số thứ hai của swap là j 11
  7. A.3 Thủ tục sort (3.6: Thủ tục sort đầy đủ) . Cất giữ các thanh ghi. . Thân của thủ tục. – Di chuyển các thông số. – Vòng lặp ngoài cùng . Vòng lặp trong cùng. – Tryền các thông số và lời gọi. . Vòng lặp trong cùng. – Vòng lặp ngoài cùng. . Khôi phục các thanh ghi. . Trở về từ thủ tục. 13
  8. B.1 Nạp SPIM 15
  9. B.3 Thiết lập tập tin ngoại lệ (nếu cần) . Bước này có thể được bỏ qua nếu không có các cửa sổ pop-up để thiết lập khi kích hoạt SPIM. 17
  10. B.5 Cửa sổ SPIM 19
  11. B.7 Hoạt động & Thiết lập . Single-Stepping: Chạy chương trình từng lệnh ở một thời điểm. . Breakpoint: Bảo SPIM dừng trước khi SPIM thực thi một lệnh cụ thể. 21