2017-02-15 142 views
0

我想弄清楚yosys對我的verilog源做什麼,所以我已經將轉儲過程插入到我的腳本中。我認爲這些在手冊中描述爲ILANG?讀完Verilog後立即翻閱翻轉文件,在我看來,重要的東西已經丟失。例如,我有一組映射ascii字母代碼的參數定義。這些被列在ILANG中,但沒有任何價值。yosys rtlil轉儲不完整

是否有描述此輸出格式和解釋的文檔? Yosys似乎放棄了我的代碼的大部分內容,到目前爲止,我還無法確定它丟棄的內容與我的源代碼的關係。

回答

1

參數被HDL前端替代。在ILANG裏面,我們只記得一個參數的存在,而不是它的值。

Yosys似乎放棄了我的代碼

我懷疑大部分。除非你的意思是在它處理了零件之後丟棄它,並且在進一步的步驟中不再需要它。在這種情況下,你當然是正確的,但我沒有看到這種行爲的任何問題。例如,C編譯器在代碼生成步驟中也會忘記關於原始C代碼的許多細節。

不幸的是,你不提供一個演示你的觀點的例子。請參閱Yosys F.A.Q.mcve howto中的問題1,瞭解如何編寫一個好問題。

+0

我的代碼非常豐富,可能包含導致大部分代碼被丟棄的錯誤,但由於我不知道錯誤在哪裏,並且迄今爲止無法將丟棄的位與我的來源我無法使用Yosys取得任何進展。我確實發過一份我的源代碼給你發電子郵件,但由於你顯然是一個忙碌的人,我猜它會被當作垃圾郵件跳過。我重新使用Altera開發板上的Quartus開發軟件。比Yosys慢,但消息更有幫助。 –

+0

我在看你的項目。 (對不起,不回覆您的電子郵件。)您的測試平臺在哪裏? – CliffordVienna

+0

我現在已經使用Quartus開發軟件在Altera電路板上運行了它。修復了錯誤,並將verilog轉移回Icestick版本,對頂級內容稍作修改。再次,它只是在移至S_CLEAR_1狀態後掛起。我沒有使用Verilog仿真器的經驗,但很高興知道您是否可以推薦一款仿真器。 –

0

我已解決我的問題。我不明白爲什麼,但似乎在芯片初始化時,無論是通電,還是重新編程,第一個字符(可能是前兩個字符)都是腐敗的。我已經設法在代碼中編寫額外的狀態來處理這個問題,所以這不是一個真正的答案,而是一種解決方法。我想知道IceStick板上的復位信號是否會引起正確的初始化?如果不是,那麼這可能是腐敗的原因。一旦垃圾字符消失了,它似乎都可以正常工作。