明德扬论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫一扫,快捷登录!

查看: 5410|回复: 0

问题定位方法-某信号一直为0的警告

[复制链接]
发表于 2020-2-23 09:19:39 | 显示全部楼层 |阅读模式

马上注册,看完整文章,学更多FPGA知识。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

    本文为明德扬原创文章,转载请注明出处!
     在综合时发现会有很多如下警告出现

1.png

    意思是该信号的值始终为0,在优化过程中可能被优化。

    但是该信号为数据输入,是不可以被优化的,所以找到该代码处查找问题。

2.png

    检查代码后,在此always块中并未发现f2p_data_in信号的书写有何问题。所以尝试查找是否是与f2p_data_in信号相关或者相连接的信号出现问题,导致该警告的出现。

3.png

    从代码可以分析,f2p_data_in一直为0,有可能是条件一直没满足,也有可能是条件满足的时候,data_out一直为0。

    情况不太明确,先排除是不是data_out的影响。方法如下:将图中1和2处的data_out信号改成固定输入值,16’hffff,和 16’h0000 ,修改后重新综合发现之前出现的警告并未出现。这说明了条件是有满足的时候的,问题应该出现在data_out信号上。

    然后找到data_out输出模块查看问题。

4.png

    此always块就是对data_out这个输入信号打2拍。按照前面的思路,将图中rx_done位置修改为1,查看情况是否与data_out有关(将之前给f2p_data_in赋固定值的操作取消)。

    重新综合后发现,警告也没有出现,说明该警告的生成和data_out无关,而是与条件rx_done信号有关,可能该信号一直为0。

    下一步找到rx_done信号模块查找问题。

5.png

    在检查该模块时发现,rx_done为1的条件并不成立,所以rx_done一直无法为1,导致后续data_out一直输出为0。

总结:

1. 对于警告等信息,一定要读懂,并理解其含义。例如本课说某信号一直为0,这是问题,那为什么?则是要根据这个含义去分析。

2. 对于难以分析的,可以尝试修改代码,以方便验证。注意,这只是为了验证某种设想,验证完后,代码要改回来。

FPGA视频课程  培训班 FPGA学习资料
吴老师 18022857217(微信同号) Q1241003385
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|MDYBBS ( 粤ICP备16061416号 )

GMT+8, 2024-11-26 15:14 , Processed in 0.055188 second(s), 24 queries .

Powered by Discuz! X3.4

本论坛由广州健飞通信有限公司所有

© 2001-2019 Comsenz Inc.

快速回复 返回顶部 返回列表