CPU設計——CPU核解析——cv32e40p
詳細文件參考連結:https://core-v-docs-verif-strat.readthedocs.io/projects/cv32e40p_um/en/latest/pipeline.html
本文圖片均歸摘自OpenHW相關文件。
1. CPU核概述
該CPU由OpenHW組織開發的用於MCU的32bit處理器。該專案起源於PULPissimo,現由OpenHW持續開發和維護。
- 共享記憶體,指令資料統一編址
- HWloop加速部件
- IO子系統的直接儲存訪問(uDMA)
- 可以用作大系統的控制器
2. 流水線結構
1 取指
在匯流排空閒的情況下,每個時鐘週期可以從Icache或指令儲存器預取一個指令
取指階段可以對指令進行預譯碼
- 預取指部件
獲取指令,並進行快取
預取指部件包含預取指器和一個四埠的FIFO
- OBI介面
加速取指
2 譯碼
對指令進行譯碼,並讀取需要的暫存器檔案
- 跳轉指令從這裡開始執行
3 執行
執行執行,該部分部件包括加法器,乘法器,除法器以及load/store的地址產生部件(AGU)等
- 分支指令在該階段執行
- 多週期指令將在該階段延遲,知道它們完成
4 寫回
將load指令的結果寫回到暫存器檔案
相關文章
- cpu、核與執行緒執行緒
- win10 如何看cpu 幾核的_win10cpu怎麼看幾核幾代Win10
- CPU單核多核區別【轉載】單核
- 根據CPU核數合理設定執行緒池大小執行緒
- 在 Linux 中查詢 CPU 的核數Linux
- 對多執行緒程式,單核cpu與多核cpu如何工作相關的探討執行緒單核
- 檢視伺服器CPU的個數、CPU的核數、多核超執行緒數伺服器執行緒
- CPU明明8個核,網路卡為啥拼命折騰一號核?
- GPU程式設計--CPU和GPU的設計區別GPU程式設計
- 數位電路之CPU設計一
- MIPS指令的CPU實現:ALU設計
- 4核8執行緒和6核6執行緒的CPU哪個好?電腦CPU核數多和執行緒多的區別執行緒
- Centos 檢視 CPU 核數 和 型號 和 主頻CentOS
- 單週期cpu設計程式碼解讀
- Mips單週期CPU設計(logisim實現)
- linux下把程式繫結到特定cpu核上執行Linux
- 聊聊CPU的發展歷程之單核、多核、超執行緒單核執行緒
- Rust中獲得CPU核數與列印日誌到控制檯?Rust
- 如何檢視CPU核數和執行緒數?CPU的核心數、執行緒數的關係和區別執行緒
- win10最大優化cpu設定_win10如何優化cpuWin10優化
- 1、多執行緒同步——CPU、core核、執行緒、記憶體執行緒記憶體
- 程式設計師需要了解的硬核知識之CPU程式設計師
- JVM CPU Profiler技術原理及原始碼深度解析JVM原始碼
- [20190821]關於CPU成本計算.txt
- win10最大最佳化cpu設定_win10如何最佳化cpuWin10
- 散片CPU為什麼比盒裝CPU便宜很多?CPU散片靠譜嗎?
- CPU-Z
- CPU簡介
- native到CPU
- CPU快取快取
- CPU效能分析
- AMD新一代移動處理器爆料:16核CPU,效能對標RTX3060核顯
- 當多核變單核:破解CPU核心神秘失蹤的終極指南!單核
- 伺服器CPU比家用CPU更有哪些優勢伺服器
- Linux之CPU排程策略和CPU親和性Linux
- CentOS:作業系統級監控及常用計數器解析---除CPU以外CentOS作業系統
- CPU散片是什麼意思?盒裝CPU和CPU散裝的區別知識科普
- DirectX11--CPU與GPU計時器GPU