KEEP_HIERARCHY的用法


KEEP_HIERARCHY是一種對綜合和實現過程的約束。

 一般而言,一個HDL設計的頂層包含好幾個底層子模塊。XST在綜合過程中為了得到更好的結果,一般打平設計的層次。但是也可以在綜合的過程中通過添加KEEP_HIERARCHY約束來使綜合的過程保持設計的層次。

添加KEEP_HIERARCHY約束后,綜合和實現的結果表現的以下2方面:

在實現的過程中保持設計層次。

生成仿真需要的保持設計層次的網表。

 

例子:以上圖為例,如果對整個模塊或I2添加約束:

       1  在最后的生成網表中,I2模塊的層次被保持下來。

       2  I2模塊中的I4 I5模塊的層次被打平。

       3  I1 I3 I6、 I7的層次也被打平。

 

KEEP_HIERARCHY支持XILINX所有的FPGA CPLD器件,對FPGA默認的約束是FALSE,對CPLD默認的約束是TURE

KEEP_HIERARCHY用法:

KEEP_HIERARCHY的約束值可以設置成FALSETURE

添加約束分2中情況:

在模塊里面的verilog代碼里面添加只需將約束添加

      在需要保持層次的模塊或實例的前面即可。

      例如:(* KEEP_HIERARCHY  = “{TURE|FALSE}” *

UCFNCF里面添加

      INST “instance_name”  KEEP_HIERARCHY = { TURE|FALSE };


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM