2015-11-14 28 views
2

當然,定義順序可能會影響綜合結果,這是不可能的。但是我遇到了這個錯誤。在Modelsim中測試MIPS ISA的「MTC0」指令時。定義的次序影響綜合結果嗎?

enter image description here

這些不同的順序的定義有不同的波形。左邊的是錯的(開頭都是錯的),而右邊的是正確的。

我沒有改變任何代碼,除了這些。

我是個新人,所以我的聲望太低,無法上傳更多圖片,這可能會讓您感到困惑。我很抱歉,但我沒有任何想法。

Full code is posted on Github。對於這個問題,「wishbone」文件夾沒用,只是忽略它。

+0

對不起,我不知道那時候,我剛剛在提問之前註冊了幾分鐘。我會在下一次做。感謝您的回答和建議。 –

回答

0

InstInvalid在定義文件的兩個定義之間有不同的值。

1'b0 on the left (incorrect waveform) 
1'b1 on the right (correct waveform) 

改變不正確的(左版)到1'b1的值,然後重新運行,這是否正確運行時間的問題!

+0

是的。那就是問題所在。但是,你能解釋一下嗎?我不知道爲什麼這會導致不同的波形。 –

+0

這似乎是來自id.v的靜態信號輸出。它是[outputtypetype_o]的一部分(https://github.com/Wyp184800/restart/blob/12a327154245aa2b35f3a84612581748eba25503/OpenMipsFromBook/id.v#L108)。 – Morgan

+0

謝謝!!!!!!!! –