我們?cè)谑褂胿ivado的時(shí)候,做完了一些模塊以后,進(jìn)行仿真的時(shí)候會(huì)出現(xiàn)以下錯(cuò)誤:
[USF-XSim-62] 'compile' step failed with error(s). Please check the Tcl console output or 'C:/Users/gongdell/ddc/ddc.sim/sim_1/behav/xsim/xvlog.log' file for more information.
在正常情況下,vivado會(huì)指出你的代碼錯(cuò)誤的那一行,你可以直接點(diǎn)擊,然后直接對(duì)錯(cuò)誤的哪一行進(jìn)行修改。但是有的時(shí)候是沒有指出那一行錯(cuò)誤,這就需要下面的解決辦法了。
樓主也是郁悶了很久,因?yàn)閷懲瓿绦虻臅r(shí)候,沒有報(bào)錯(cuò),但是仿真就是轉(zhuǎn)不動(dòng)。于是按照錯(cuò)誤提示當(dāng)中的路徑去打開了對(duì)應(yīng)的文檔一看,如下圖所示:
?
?可以看到我們這里的文檔已經(jīng)指出了錯(cuò)誤,凡是ERROR的選項(xiàng),都是需要糾正的。錯(cuò)誤有什么呢?原來是重復(fù)定義了,上面定義過了,后面再定義一次,在寫完.v文件時(shí)不會(huì)報(bào)錯(cuò),但是仿真時(shí)就會(huì)報(bào)錯(cuò),需要修改。這是代碼不規(guī)范引起的錯(cuò)誤。
不規(guī)范的行為有:
1.先使用了,但是在后邊才定義。(雖說verilog是并行語言,但這么寫會(huì)有警告)
2.重復(fù)定義一個(gè)wire或者reg,在一個(gè)文件里,反復(fù)定義,仿真會(huì)報(bào)錯(cuò),文件里面是警告。
3.未定義,直接使用,會(huì)報(bào)警告。
4.定義錯(cuò)誤,把一個(gè)變量即定義為reg,又定義為wire。
等等,不再贅述。
樓主給uu們的建議是打開你提示的路徑里面的文檔,看看里面有那些ERROR,在對(duì)癥下藥。文章來源:http://www.zghlxwxcb.cn/news/detail-510165.html
親測(cè)可用,蟹蟹朋友們。文章來源地址http://www.zghlxwxcb.cn/news/detail-510165.html
到了這里,關(guān)于vivado報(bào)錯(cuò):USF-XSim-62的常見解決辦法的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!