在FPGA開發(fā)中,我們經常遇到因為管腳忘記約束,導致最后生成bit的時候報錯。
1.管腳電平未約束
像上面這個圖中,由于在約束中忘記指定mdc和mdio的電平,再經過了長時間的綜合和實現后,最后的Generate Bitstream報錯了。
這種情況下,如何才能不重新Implementation的情況下生成bit呢?
打開實現后的routed.dcp文件:
open_checkpoint ./Work/eth_demo.runs/impl_1/top_routed.dcp
然后通過下面指令設置這兩個管腳的電平:
set_property IOSTANDARD LVCMOS15 [get_ports mdc] set_property IOSTANDARD LVCMOS15 [get_ports mdio]
設置完成后,可以在I/O Ports窗口中看到這兩個管腳的電平已經改了過來
然后再點左側的生成bit:
提示生成文件的位置和名字:
在正確生成后,可以看到tcl中提示write_bitstream completed successfully:
管腳電平修改后由于跟布局布線都沒有關系,因此直接生成bit是可以的。
2.管腳位置未約束
如果是管腳位置未約束,那我們就不能在dcp中修改位置然后直接生成bit了,因為位置變了,布局布線也需要改變。如果這個管腳的功能的需要的,那我們只能重新Implementation,如果這個管腳功能是不需要的,
那如果這個管腳的功能我們可以先不用,就想把經過了長時間的Synthsis和Implentation后的工程生成bit文件。
還是像上面一樣,打開route.dcp文件,然后點擊坐標的Report DRC
可以看到有兩個問題,一個是NSTD-1,一個是UCIO-1
我們只需要把這兩個DRC的問題設成warning,不讓工具在生成bit的時候報錯,也是可以生成bit的。執(zhí)行tcl腳本如下:
set_property SEVERITY {Warning} [get_drc_checks UCIO-1] set_property SEVERITY {Warning} [get_drc_checks NSTD-1]
然后再Generate Bitstream。
審核編輯:劉清
-
FPGA
+關注
關注
1626文章
21678瀏覽量
602018 -
電平
+關注
關注
5文章
360瀏覽量
39858 -
管腳
+關注
關注
1文章
226瀏覽量
32002
發(fā)布評論請先 登錄
相關推薦
評論