iT邦幫忙

2021 iThome 鐵人賽

DAY 2
1
Software Development

猴子都寫得出來的 RISC-V CPU Emulator系列 第 6

RISC-V: 媽,我把髒髒的扣變成 CPU 的形狀了!

  • 分享至 

  • xImage
  •  

有看月球轉運站的夥伴應該有發現,
隨著開發的進展,程式碼已經變得有點不好看了。
今天就來對這段程式碼進行 Refactor,讓接下來的 CPU 開發能夠更輕鬆一點

目前參考了幾個專案,
NVDLA 設計上並沒有實作 CPU,是直接用 QEMU,
實作上 bridge pattern 把兩邊接起來,
並且把 QEMU 主程式變成一個 thread,
在 Elaboration Phase 的時候初始化,
並利用 pthread_cond_wait 的方式在 SystemC 與 QEMU 互相切換,非常值得參考。
可惜我這次是從 CPU 開始著手,所以無法借鏡。

RISC-V pipeline Core 在 pipeline 上的設計也很簡潔,
有用到 Sensative 的功能,大家有興趣可以自行研究。

為求精簡,這次架構上主要會參考 Single Cycle 的 RISC-V-TLM

修改之後分成多個檔案,貼在這邊比較不好閱讀,
我會放在我的 github 頁面 Tag: ITDay6。


上一篇
RISC-V: 介紹
下一篇
RISC-V: 在指令之前的 Register File
系列文
猴子都寫得出來的 RISC-V CPU Emulator31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言