MIPS的指令的CPU(14條指令)logisim仿真軟件編寫


一、課程設計題目

基於FPGA(或者Logisim 軟件仿真)實驗平台,完成16位單周期CPU設計。

二、課程設計的目的與意義

本課程設計綜合利用計算機組成原理課程所學的理論知識,並結合其單元實驗中所積累的計算機部件設計和調試方法,設計出一台具有自定義指令系統的簡單計算機系統。所設計的系統能在基於FPGA(或者Logisim)平台上運行一段用戶程序,通過檢查程序結果的正確性來判斷所設計的計算機系統的正確性。

三、課程設計的內容

設計模型機系統的指令系統、總體結構和時序信號。要求所設計的整機系統能支持自動和單步運行方式,能正確地執行存放在主存中的用戶程序,並且對主要的數據流和控制流通過適當方式顯示;驗證實驗結果。
① 該單周期CPU實現的指令如下:(從中至少選取10條指令,其余指令可以自己設計;至少要選擇1條R-型指令、1條立即數運算指令、Load指令(讀)、Store指令(寫)、1條分支指令和無條件轉移指令;)
表1選取指令及格式
指令 15~12 11~10 9~8 7~6 5~3 2~0 指令功能
1 or 0 rs rt rd 0 0 $rd = $rs | $rt
2 and 0 rs rt rd 0 1 $rd = $rs & $rt
3 add 0 rs rt rd 0 2 $rd = $rs + $rt
4 sub 0 rs rt rd 0 3 $rd = $rs - $rt
5 sllv 0 rs rt rd 0 4 $rd = $rs << $rt 邏輯左
6 srlv 0 rs rt rd 0 5 $rd = $rs >> $rt 邏輯右
7 srav 0 rs rt rd 0 6 $rd = $rs >> $rt 算術右
8 slt 0 rs rt rd 0 7 $rd = ($rs < $rt) ? 1 :0

10 lui 2 0 rt immediate-u $rt = imm << 8
11 ori 3 rs rt immediate-u $rt = $rs | imm
12 andi 4 rs rt immediate-u $rt = $rs & imm
13 addi 5 rs rt immediate-s $rt = $rs + imm
14 lw 6 rs rt immediate-s $rt = MEM[$rs + imm]
15 sw 7 rs rt immediate-s MEM[$rs+imm] = $rt
16 beq 8 rs rt offset-s beq =?
17 bne 9 rs rt offset-s bne != ?
18 bgt 10 rs rt offset-s bgt >?(有符號比較)
19 jump 11 jump address jump
20 halt 12 0 halt (時鍾暫停)
②編寫一段包含所有指令的測試程序,將測試程序的機器語言存入ROM,運行測試程序,並對運行結果與理論運算結果對比(用表格對比), 判斷每一步對錯。

四、課程設計步驟說明

  1. 指令系統的確定;
    (按自己實際選擇的指令系統,用表格表示)
    R形指令
    立即數liu形指令
    讀寫lw,sw形指令

  2. 子電路設計圖

    譯碼器電路圖


寄存器圖


擴展器圖


主譯碼器圖


ALU圖


74ls181


下地址器圖


輔助譯碼器


主譯碼器2


OF電路


ZF電路

CF電路
3) 繪制主電路
(包括數據通路、控制單元、指令存儲器、數據存儲器等);(按自己實際完成的系統畫出主電路圖)

主電路
4) 用戶程序編寫,機器語言存入ROM;
 用戶程序清單(包括每一條指令的功能說明)

  1. 功能測試——裝入原始數據,運行並記錄每一條指令的執行結果,形成驗證表格,判斷。
     預先存入R中的數據:全為0
     預先存入RAM中的數據:
    0到3分別存入00H,05H,03H
     指令運行和驗證(如下表,按自己實際情況設置)

六、實驗結果與分析

  1. 實驗結果和分析

  2. 錯誤或異常現象分析

七、總結體會


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM