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 3340
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