Xilinx ISE WARINING 小结

前言

对常见的WARNING进行整理汇总。

缓更。

汇总表
WARNINGs:
Xst:647Xst:2677Xst:1336Xst:1898Xst:2211Xst:1710Xst:1780Xst:646Xst:XXXXXst:XXXX
          
          
          
Infos:
Xst:2261         
          
ERRORS:
Xst:872         
          

 

在功能仿真之前,建议消除Warrning;

Infos,可以看一看是报的哪些信息,也会有助于代码逻辑检查。

Warrning,Infos能够在功能仿真之前协助检查逻辑问题,如位宽不对、状态跳转等问题。

 

一、Warrnings

 

1、WARNING:Xst:647 - Input <xx> is never used.

这个问题是说该输入管脚未被使用。造成该问题的原因:

原因一:该输入管脚未被使用。

原因二:或者,由于相关信号的“位宽不对”等原因,导致该管脚未被使用。仔细检查相关信号,如相关信号的位宽等。

 

2、WARNING:Xst:2211 - "../../../rtl/XX.v" line 123: Instantiating black box module <ARAM_XX_D4K>.

如果是因为添加RAM,导致综合产生一些WARNING,可以在RAM IP最后添下面几行注释,如下图所示

// synthesis translate_on

// XST black box declaration

// box_type "black_box"

// synthesis attribute box_type of  ARAM_I32O32_D1K is "black_box"

注:上面红色字体 “ARAM_I32O32_D1K” 需要替换为例化的RAM IP名。

 

 

3、WARNING:Xst:2677 - Node<XX> of sequential type is unconnected in block <*>.

警告说明:因为某些条件使得这些节点与模块的连接无效(即未连接)

举例说明:比如XX信号虽然使用always语句块定义了,但使用该XX信号的地方,由于条件没有满足、导致该XX信号没有被使用,即没有满足XX信号的使用条件,从而导致该警告提示。可以检查使用该信号的地方,检查XX信号的使用条件的使用条件是否存在错误或遗漏的地方。

 

4、WARNING:Xst:1336 -  (*) More than 100% of Device resources are used

警告说明:该芯片资源用超了。

举例说明:比如,仅对一个小模块进行综合,该模块并非一个完整工程的顶层,仅是工程中的一个小的子模块。该子模块逻辑并不复杂,但该子模块的输入输出信号比较多。而在综合的时候,仅在工程中添加了该子模块,没有添加其他模块。综合报这个问题的话,可能就是综合器将该子模块的输入输出与芯片的管脚进行比较,超过了芯片的管脚数量,从而引起该警告提示。

 

5、WARNING:Xst:1898 - Due to constant pushing, FF/Latch <XX/xx/signal> is unconnected in block <module TOP>.

警告说明:signal信号,在module TOP未连接

举例说明:XX/xx模块的signal信号输出到顶层TOP,在TOP层与XX[6]信号做“与”操作、之后在TOP层输出;但由于失误,XX信号位宽仅有3位,不存在XX[6],从而导致XX/xx模块的signal信号输出到顶层TOP,综合器综合时未进行连接,导致综合警告Xst:1898。

 

6、WARNING:Xst:1710 - FF/Latch <XX> (without init value) has a constant value of 0 in block <TOP>. This FF/Latch will be trimmed during the optimization process.

警告说明:XX 信号值恒为0。

举例说明:检查XX信号及相关信号,相关信号值出现恒0情况。可能的原因是,该信号或相关信号的赋值条件没有得到满足,从而使该XX值出现恒0现象。建议,检查该XX信号及相关信号的赋值条件,比如定义的状态机state的位宽与p_IDLE/p_NEXT等状态位宽是否一致,导致状态机不能跳转下一状态(下一状态有对XX信号的赋值语句)。

比如下面的代码,如果state的位宽是1,但p_IDLE/p_NEXT的位宽是4,状态机由于位宽不对、不能跳转到p_NEXT状态,则XX就会出现恒0现象,导致出现该警告WARNING:Xst:1710

always @ (posedge clk)begin

     if(rst)begin
            XX   <= 1'b0 ;
     end else begin
         case(state)
              p_IDLE:begin
                     .............
                     end
              p_NEXT:begin
                     XX   <= 1'b1 ;
                     end
              ....................

          endcase
      end
end 

 

 

7、WARNING:Xst:1780 - Signal <XX> is never used or assigned. This unconnected signal will be trimmed during the optimization process.

 

8、WARNING:Xst:646 - Signal <XXX<9>> is assigned but never used. This unconnected signal will be trimmed during the optimization process.

 

 

 

 

二、Infos

2.1  Xst:2261 - The FF/Latch <XX_xx_0> in unit  <XX> is  equivalent to the following FF/Latch,which will be removed :<X_x>

说明:

(1)模块XX里的信号XX_xx数据位宽与相关信号X_x位宽不一致,导致该消息提示。检查该信号以及相关信号的数据位宽,修改一致后,即可消除该INFOS。

(2)如果定义了一个信号XX_xx[9:0],又定义了信号X_x[31:0],而信号XX_xx[9:0]==X_x[9:0],在这种情况下,ISE综合会提示INFOS Xst:2261

 

三、ERROR

3.1、 ERROR:Xst:872 - "XX" line 99 : Unsupported target

错误分析:

引发该错误的地方是在工程顶层模块例化里,相关代码如下:

正确代码如下:

 

 

 

 

  • 4
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值