開發環境: Ubuntu 64 16.04.6
- 1. 配置GCC編譯器
首先使用gcc -v以及g++ -v檢查版本号是否高于4.8
sudo apt-get build-dep gcc
sudo apt-get build-dep gcc-c++
完成後使用gcc -v以及g++ -v檢查版本及是否成功
-
RISCV-Tools
安裝git
sudo apt install git
擷取wujian源碼
git clone [email protected]:T-head-Semi/wujian100_open.git
擷取riscv-tool
Link
解壓工具鍊到riscv_toolchain目錄下
- EDA開發工具
sudo apt-get install iverilog verilator gtkwave
切換工作路徑至 wujian100_open/tools
修改setup.csh中的相關軟體路徑(可用whereis xxx指令查詢軟體路徑)并運作
source setup.csh
可能會有報錯:“No command ‘setenv’ found”
這是因為ubuntu環境下終端模拟器預設為bash,需要将.csh檔案中對應的setenv name value更改為export name=value即可。
切換工作路徑至…/wujian100_open/workdir
運作相應軟體
../tools/run_case -sim_tool iverilog ../case/timer/timer_test.c
此時可能會運作失敗,是因為筆者所用ubuntu版本号較低,對應安裝的iverilog相應軟體版本不夠,需手動安裝新版 本,或更新ubuntu至18以上的版本。
通過指令解除安裝掉老版
sudo apt-get –purge remove iverilog
下載下傳10.0以上版本,筆者此處選擇10.1,下載下傳位址
下載下傳後解壓并進入檔案
./configure
make
自主配置
sh autoconf.sh
make install
使用iverilog -v檢視版本,如下圖所示

回到路徑…/wujianopen_100/workdir再次運作
../tools/run_case -sim_tool iverilog ../case/timer/timer_test.c
則可見以下界面
- Modelsim仿真
對應建立工程,添加對應的檔案至工程中,需要注意的是tb, busmnt兩個檔案的書寫中用到的systemverilog相關文法,是以在win的modelsim環境下需要将兩個檔案的字尾更改為.sv即可
在linux環境對應路徑…/wujian100_open/workdir中找到test.pat檔案,拷貝至modelsim工程下,并将檔案tb.sv中的259行指令
$readmemh(“inst.pat”, temp_mem);中的inst.pat更改為test.pat即可
如下圖所示為對應pwm的仿真波形
原文作者:RickyChen
點選檢視原文