參數 | 參數名稱 | 說明 |
t | enable test mode | 進入固件測試模式<br>當出現下面的狀態會結束運行并且打印出通過還是失敗的字樣,x3_gp寄存器的值為1 和 x17_a7寄存器的值為93時,進入了ecall異常就會觸發。x10_a0 寄存器的值為 0時打印pass字樣,否則打印fail字樣 |
T | enable trap debug mode | 使能異常調試模式,出現異常時會打印當前異常的調試信息 |
d | enable debug mode | 打開虛擬機內所有的調試選項,輸出最詳細的調試信息,包括指令譯碼,處理執行,當前寄存器列表,csr列表等 |
c | print cst operation msg | 打開虛擬機的csr寄存器讀寫調試信息。讀寫csr寄存器的時候都會打印對應的csr寄存器的值 |
a | diable all debug msg | 關閉所有調試選項,譯碼調試默認打開 |
x | enable test mode for exception | 打開異常測試模式,當出現異常時結束運行 |
g | enable better readability printing | 使用可讀性更好的方式打印信息 |
e | disable all error msg | 關閉所有的錯誤信息打印 |
i | enable all instr debug msg | 打開所有指令調試信息打印 |
m | enable mmu debug msg | 打開mmu的遍歷調試信息 |
p | print mmu page 8 byte data | hexdump打印mmu頁表里的8字節數據 |
P | print mmu page 4K Byte data | hexdump打印mmu頁表里的4K字節數據 |
s | uart addr not use mmu translation | 啟用mmu翻譯時,忽略uart的外設地址,在啟用了mmu的時候也可以直接通過uart原始物理地址來操作uart外設 |
S | switch mode debug info | 打開切換mode時的調試信息,m-mode,s-mode和u-mode切換的時候都會打印調試信息 |
M | disable mmu err msg | 關閉mmu缺頁異常,訪問異常,加載異常的錯誤信息 |
r | enable trap debug msg | 打印更詳細的進入中斷的調試信息 |
A | enable addr translation debug print | 打印地址轉換的調試打印 |
L(n) | log mode | output_mode_sel n = 0 -> stdout<br> 1 -> log_buf UNIX SYS ONLY(buf_size:2900)<br> 2 -> none<br> 選擇虛擬機輸出的方式,1,直接標準輸出。2,使用一個buf先緩存,退出的時候再輸出bug大小2900Byte。3,不輸出。<br> |
l | enable endless loop check (RV_ENDLESS_LOOP_CHECK_EXIT_CNT:3) | 啟用死循環監測機制,當有連續3次出現同樣的指令執行流程(包括寄存器和csr寄存器的值都沒有改變),結束虛擬機的運行。可以搭配-L參數使用,方便調試固件。一般assert都是直接死循環。 |