【问题标题】:How do I keep Xilinx XST from merging nets from my design?如何防止 Xilinx XST 从我的设计中合并网络?
【发布时间】:2012-06-20 17:41:41
【问题描述】:

我正在询问并回答这个问题,以便我以后可以再次找到它......

如何防止 XST 将两个逻辑等效的网络合并为一个(这通常是节省资源的好主意,但从时序角度看可能不是一个好主意)?

我有一个设计有 2 个由同一个 clk 驱动的计数器。 XST 将计数器的最低位合并为一个计数器,但这是一个问题,因为在设计中,由于 IOB 布局限制,需要将这些计数器分开。我需要计数器(特别是计数器的最低位)是不同的。

【问题讨论】:

    标签: vhdl verilog xilinx


    【解决方案1】:

    您需要在 RTL 中的网络上设置 2 个约束。检查您的网络的综合报告,以确保 XST 符合您的要求。

    在 Verilog 中

    (* equivalent_register_removal="no" *)
    (* keep="true" *)
    reg  signal_name ;
    

    在 VHDL 中

    signal signal_name  : std_logic;
    attribute equivalent_register_removal: string;   
    attribute equivalent_register_removal of signal_name : signal is "no";
    attribute keep:string;
    attribute keep of signal_name :signal is "true";
    

    【讨论】:

    • 作为重要说明,不同的合成工具具有不同的属性名称来执行相同的功能。因此,例如,如果您使用 Synopsys Synplify 进行综合,您将需要不同命名的属性。这里的答案适用于 XST。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-26
    • 2022-10-08
    • 1970-01-01
    相关资源
    最近更新 更多