問題
在FPGA編碼中,經(jīng)常會(huì)遇到一些信號(hào)、模塊等被綜合工具優(yōu)化,而有些信號(hào)恰恰是我們需要的,或者需要觀測的,針對(duì)這種情況,DONT TOUCH可以滿足我們的需求,該屬性的使用頻率也較高。
屬性說明
DONT TOUCH可以用于替代屬性KEEP和KEEP HIERARCHY,與兩者僅作用于綜合階段相比,DONT TOUCH可以作用范圍包括布局和布線階段,依舊可以保持不被優(yōu)化。
當(dāng)和其他屬性沖突時(shí),DONT TOUCH的優(yōu)先級(jí)最高。
屬性用法
DONT TOUCH作用對(duì)象包括信號(hào)、模塊、網(wǎng)標(biāo),格式為(*DONT TOUCH=VALUE*),屬性值VALUE可設(shè)置為TRUE/FALSE或者yes/no。
作用于信號(hào):
(*DONT TOUCH= “YES“*)wire signal;
作用于模塊:
(*DONT TOUCH= “YES“*)module module_test(in,out);
作用于例化單元:
(*DONT TOUCH= “YES“*)Inst Inst_example(.in(in),.out(out));
通常,DONT TOUCH屬性不建議使用在XDC文件中,因?yàn)閷?duì)于信號(hào)來說,通常優(yōu)化是發(fā)生在讀取XDC前,因此設(shè)置屬性可能導(dǎo)致無效。
唯一一種推薦使用到XDC中的場景,是當(dāng)RTL代碼中使用了DONT TOUCH屬性并設(shè)置為YES時(shí),想讓該屬性不生效但又不想改變RTL設(shè)計(jì)時(shí),可以在XDC文件中再次進(jìn)行DONT TOUCH屬性設(shè)置為NO的設(shè)置,此時(shí)后者設(shè)置生效,信號(hào)將會(huì)被優(yōu)化。
審核編輯:劉清
-
FPGA
+關(guān)注
關(guān)注
1630文章
21796瀏覽量
606011 -
Vivado
+關(guān)注
關(guān)注
19文章
815瀏覽量
66889
原文標(biāo)題:Vivado中DONT TOUCH的使用
文章出處:【微信號(hào):FPGA通信小白成長之路,微信公眾號(hào):FPGA通信小白成長之路】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論