Bài giảng Vi xử lý nâng cao - Phần 2: Các hướng dẫn - Hướng dẫn 5: CPU đơn chu kỳ & ModelSim

Tổng quan
CPU là máy trạng thái đơn giản.
Một thực thi đơn thuần:
– đọc nội dung từ phần tử trạng thái.
– truyền các giá trị ngang qua mạch logic tổ hợp.
– ghi các nội dung đến phần tử trạng thái
pdf 27 trang thamphan 27/12/2022 3280
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 - Hướng dẫn 5: CPU đơn chu kỳ & ModelSim", để 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_huong_dan_5.pdf
  • pptHuongdan_05.ppt

Nội dung text: Bài giảng Vi xử lý nâng cao - Phần 2: Các hướng dẫn - Hướng dẫn 5: CPU đơn chu kỳ & ModelSim

  1. Bài giảng “Vi xử lý nâng cao” Phần 2: Các hướng dẫn Hướng dẫn 5: CPU đơn chu kỳ & ModelSim 1
  2. Tổng quan . CPU là máy trạng thái đơn giản. . Một thực thi đơn thuần: – đọc nội dung từ phần tử trạng thái. – truyền các giá trị ngang qua mạch logic tổ hợp. – ghi các nội dung đến phần tử trạng thái. State Element State Element Combinational Logic #1 #2 3
  3. Tổng quan . Hệ phương pháp kích cạnh (chỉ cập nhật trên cạnh của clock) cho phép phần tử trạng thái được đọc hoặc ghi trong cùng một chu kỳ. Phần tử Mạch logic tổ hợp trạng thái 5
  4. Đường dữ liệu cơ bản . CPU đơn chu kỳ Phần tử Mạch logic tổ hợp trạng thái Data Thanh ghi Register # P Address Instruction ALU Address C Register # Bộ nhớ lệnh Bộ nhớ dữ liệu Register # Data 7
  5. Đường dữ liệu cơ bản . Thực thi 0x4000 addi $s0, $zero, 5 0x4004 and $s0, $s0, $zero 0x4008 addi $s0, $s0, 1 0x4004 0x4000 ALU 4 Read P Address Instruction C PC cập nhật khi addi $s0, $zero, 5 Bộ nhớ lệnh clock tăng. 9
  6. Đường dữ liệu cơ bản . Thực thi 0x4000 addi $s0, $zero, 5 0x4004 and $s0, $s0, $zero 0x4008 addi $s0, $s0, 1 5 được sao chép vào $s0 0 được sao chép vào $s0 PC = 0x4000 PC = 0x4004 PC = 0x4008 $s0= ?? $s0=5 $s0=0 Evaluating Evaluating Evaluating 0x4000 0x4004 0x4008 1 được sao chép vào $s0 11
  7. Đường dữ liệu cơ bản add $s1, $s2, $s3 PCSrc 0 M Add u x 4 Add ALU 1 result RegWrite Shift $s2 left 2 Instruction [25-21] Read ($s2) MemWrite Read register 1 Read PC data 1 address Instruction [20-16] Read ALUSrc MemToReg Instruction register 2 ($s3) Zero [31– 0] $s3 1 Write Read 0 ALU ALU Read M register data 2 result Address data 1 Instruction u M Instruction [15-11] Write u Data M memory x Registers x u data Memory x 0 1 $s1 Write 0 RegDst data Instruction [15-0] 16 Sign 32 extend ALU MemRead control Instruction [5-0] ALUOp[2-0] ($s2)+($s3) 13
  8. Đường dữ liệu cơ bản beq $s0, $s1, 2500 PCSrc 0 M Add u x 4 Add ALU 1 result RegWrite Shift $s0 left 2 Branch Instruction [25-21] Read ($s0) MemWrite Read register 1 Read PC data 1 address Instruction [20-16] Read ALUSrc MemToReg Instruction register 2 ($s1) Zero [31– 0] $s1 1 Write Read 0 ALU ALU Read M register data 2 result Address data 1 Instruction u M Instruction [15-11] Write u Data M memory x Registers x u data Memory x 0 1 Write 0 RegDst data Instruction [15-0] 16 Sign 32 extend ALU MemRead control Instruction [5-0] ALUOp[2-0] 15
  9. Cài đặt phần mềm . Chép phần mềm và tài liệu sử dụng. . Cài đặt phần mềm lên máy tính. 17
  10. Modelsim – Bắt đầu đề tài . Cửa sổ Pop-up sẽ được hiển thị. Lựa chọn tùy chọn mà ta ưa chuộng. – E.g. “Add Existing File” để thêm tập tin (file) VHDL đã chuẩn bị của ta vào đề tài. 19
  11. Modelsim – Dịch . Chọn Compile Compile All . . Nhấp đôi chuột vào đường màu đỏ nếu lỗi hiện diện và sửa lỗi. 21
  12. Modelsim – Mô phỏng thiết kế . Chọn view All Windows từ cửa sổ main để mở tất cả cửa sổ của ModelSim. . Định vị cửa sổ signals và lựa chọn các tín hiệu mà ta muốn giám sát đối với mục đích mô phỏng. Với bài thực tập này, chọn tất cả tín hiệu được trình bày ở trên. . Kéo các tín hiệu ở trên bằng cách sử dụng nút trái của chuột vào trong cửa sổ wave. Ta cũng có thể sử dụng: add wave Selected signals . . Thực hiện giống như bước ở trên với cửa sổ list (i.e. kéo các tín hiệu được chọn vào trong cửa sổ list hoặc sử dụng add list Selected signals ). 23
  13. Modelsim – Mô phỏng thiết kế . Gõ run 40 ns trên cửa sổ main rồi chọn enter. Điều này sẽ chạy mô phỏng trong 40 ns. . Thay đổi giá trị của D là 1 bằng cách gõ: force d 1 và chọn enter. . Một lần nữa, gõ run 40 ns trên cửa sổ main, dạng sóng dưới đây sẽ được hiển thị. 25
  14. Modelsim – lưu danh sách dạng sóng . Sau khi ta đã thiết lập danh sách dạng sóng của ta, ta có thể lưu danh sách này để lần mô phỏng thiết kế tiếp theo, ta có thể nạp lại. . Trong thực đơn File, chọn ‘Save Format’ – Danh sách sẽ được lưu dưới dạng file .do . – Để nạp lại danh sách này khi khởi động lại ModelSim, trong cửa sổ main, ta gõ do .do. 27