震惊~Signal <XXX> missing in the sensitivity list is added for synthesis purposes在verilog中警告的解决方法

这篇博客解决了在FPGA设计中遇到的HDLCompiler:91警告问题。警告指出在always @(敏感列表)块中缺少了'symbol'变量。通过检查代码,发现在always块的敏感列表中未包含'datain'和'symbol'变量,导致编译警告。修正方法是在always块的敏感列表中添加缺失的变量,如`always @(state, datain, symbol)`。这样做将消除警告并确保仿真与综合的一致性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

你是否还在为秃头而烦恼?
你是否还在通宵为了赶项目而焦急?
朋友,你不是 一个人!
看看吧,下面是这个bug的描述:

WARNING:HDLCompiler:91 - "F:\FPGA_Doc\AD_test\uart.v" Line 56: Signal <symbol> missing in the sensitivity list is added for synthesis purposes. HDL and post-synthesis simulations may differ as a result.

warning这条警告是由于在always@列表中没有出现模块中使用到的变量

always @(state,datain)
begin 
	if(state == 3'b000)
	begin
		uart_data[0] <= 73;//word I;
		uart_data[1] <= 78;//word N;
		uart_data[2] <= 80;//word P;
		uart_data[3] <= 85;//word U;
		uart_data[4] <= 84;//word T;
		uart_data[5] <= 32;//space;
		uart_data[6] <= 86;//word V;
		uart_data[7] <= 79;//word O;
		uart_data[8] <= 76;//word L;
		uart_data[9] <= 84;//word T;
		uart_data[10] <= 65;//word A;
		uart_data[11] <= 71;//word G;
		uart_data[12] <= 69;//word E;
		uart_data[13] <= 58;//symbol :;
		uart_data[14] <= symbol;//symbol;
		uart_data[15] <= datain[15:12] +48; //individual;
		uart_data[16] <= 46;//symbol .;
		uart_data[17] <= datain[11:8] +48;//first digit after dot; //////////////////Zero drift recorrection/////////
		uart_data[18] <= datain[7:4] +48;//second digit after dot;
		uart_data[19] <= datain[3:0] +48;//third digit after dot;
		uart_data[20] <= 86;//word V;
		uart_data[21] <= 13;//symbol /r;
		uart_data[22] <= 10;//symbol /n;
	end
end

那么我们现在添加变量到always@后面的括号中就可以解决问题啦:

always @(state,datain,symbol)

问题解决!
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值