實驗分析報告---流水線cpu(處理器)的實現_第1頁
實驗分析報告---流水線cpu(處理器)的實現_第2頁
實驗分析報告---流水線cpu(處理器)的實現_第3頁
實驗分析報告---流水線cpu(處理器)的實現_第4頁
實驗分析報告---流水線cpu(處理器)的實現_第5頁
已閱讀5頁,還剩5頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、實驗報告-流水線cpu(處理器) 的實現作者:日期:2本科實驗報告實驗名稱:流水線機制CPU的實現3一、實驗內容和原理實驗內容:1、分析ARM指令集,明確指令功能、指令在CPU中執行各階段中的行 為;2、設計ARM處理器的數據通路和控制通路,畫出指令描述表和指令的 狀態轉換圖;3、4、5、利用Vivado軟件,用Verilog硬件描述語言描述處理器中的各個分部 件,每個分部件通過功能仿真;利用Vivado軟件,用Verilog硬件描述語言實現分部件的互連,即實 現數據通路和控制通路;編寫測試用的匯編指令,并將匯編指令轉換為二進制的指令編碼,并 且加載到處理器中的指令存儲器中。6、將ARM處理器

2、編程下載至FPGA實驗板,運行測試程序,并通過開 發板上的led或數碼管顯示執行結果。二、實驗步驟與實驗結果寫出實驗操作的總體思路、操作規范和主要注意事項;按順序記錄實驗中每一個環節和實驗現象。畫出必要的實驗裝置結構示意圖,并配以相應文字說明;CP U; 共實現了(一)說明你所實現的ARM處理器是多周期還是流水線多少條指令?測試通過了多少條指令?測試通過了 10條指CPU,請分別描述我實現的處理器是流水線的,一共實現了 10條指令, 令。(二)描述你的設計思路,如果你實現了多周期和流水線 多周期CPU設計思路:流水線處理器設計思路:由于將多周期的階段分成五級流水,無法設置統一的控制信號,而是讓

3、每一級 流水段根據自己輸入的指令產生控制信號,即將各個控制信號分屬到兩級流水之 間的寄存器當中。本想設計一個移位寄存器來將指令分別送入各級寄存器,但是1發現不是特別有必要這樣做,因為可以將指令一級一級傳遞下去可以實現同樣的 功能。總共分五級流水,取指,譯碼,執行,存儲,寫回。如果指令之間出現相 關則設置空指令,如果遇到空指令則所有控制信號為0,不產生任何有影響的操作。(三)對于實現的多周期處理器,為你所實現的指令畫出指令描述表,和指 令的狀態轉換圖,一類指令可以畫一個表或一個狀態轉換圖助記符功能操作描述LDR加載字RFrd = MemAddrSTR存儲字MemAddr = RFrdADD加RF

4、rd = RFrn+Src2SUB減RFrd = RFrn-Src2AND與RFrd = RFrn &Src2ORR或RFrd = RFrn|Src2EOR異或RFrd = RFrnFSrc2MOV移動RFrd = Src2CMP比較Set flags based onRFrn - Src2B轉移PC = PC + 4 + Bran chAddr(四)畫出你設計的處理器(多周期和流水線)的數據通路和控制通路的合成圖,要求為viso圖或其他可再次修改的圖,不能僅用無法修改的圖片流水線數據通路(viso圖雙擊用viso打開)(一)如果你設計的是流水線CPU,描述你的設計思路,實現方法,和多

5、周 期實現時的異同。流水線實現的時候與多周期的相同之處在于各級部件均相同, 控制信號也相似,不同之處在于多周期是狀態機轉換,控制信號統一生成,而流水線是(二)你的驗證程序,匯編形式,帶注釋分段處理,流水作業,各級流水線寄存器產生控制該級流水的控制信號。將 一個指令分成5個相同階段執行,可以提高并行性,充分利用硬件資源。指令功能描述結果E3A01001MOV RF1, 1RF1 = 1E3A02001MOV RF2, 1RF2 = 1E3A06002MOV RF6, 2RF6 = 2E3A07005MOV RF7, 5RF7 = 5E1560007CMP RF6, RF7Z=(RF 6=RF7?

6、)1:008000003B, 3Z=1,跳至 E5801000E0811002RF1 = RF1+RF2RF1 = RF1+RF2E0412002RF2 = RF1-RF2RF2 = RF1-RF23E2866001RF6 = RF6+1RF6 = RF6+1E8FFFFF9B, -7跳至E1560007執行E5801000MEMO = RF1MEM0 = RF1(七)你的實驗結果見實驗結果分析。三、實驗結果分析說明分析方法(邏輯分析、系統科學分析、模糊數學分析或統計分析的方法 等),對原始數據進行分析和處理,寫出明確的實驗結果,并說明其可靠程度;icfc0R|如怛卩閩ccooDoaof 1

7、1 rVTIII rii宅廿M31洞;L r 丿 111 BX11L BXl0!期00005 RFIMR 卻血 00005 RF師閣1000003 RfM問>1000005« DWMISI'O(EOODOaS MJ)10 WJ1 W_30JaneVflLe我將斐波那契數列計算到了 5,結果應該顯示1,2,3,5最終結果為5mmmmmmOaiODKSmm八、問題與建議對實驗過程中出現的問題進行描述、分析,提出解決思路和方法,無法解決 的,要說明原因;記錄實驗心得體會,提出建議。流水線實現起來較多周期要容易一些,也可能是已經對軟件操作比較熟練,差錯的能力也提高了,所以將多周

8、期改造成流水線的時候沒花太多功夫,主要就 是將控制信號分屬到各個寄存器當中去,并對 RF單獨開一個讀口給Rd字段,因4為要在一拍讀出三個寄存器的值較為困難。還將RF的讀功能取消時鐘上升沿觸發而是改成只要地址改變就讀,這樣可以節省在兩個流水段之間的時鐘周期數為1,取消ALUout寄存器以及CPSR,而將其結果直接輸入下一個流水段之間的寄存器, 目的同樣是為了減少兩個流水段之間的時鐘周期為 1。但是要保留PC的寄存器功能。四、實驗總結本次實驗我學會了使用Verilog硬件描述語言,通過軟件設計的形式來設計硬 件電路。Verilog語言不難學,類似于C語言,可以類比學習。數據通路以及 CPU 的設計都是數字電路基礎以及計算機原理知識的綜合運用。本次實驗提升了我綜 合運用所學知識,分析,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論