自检测导致的位宽不匹配问题

【Verilog】表达式位宽与符号判断机制_51CTO博客_verilog 按位与

未闻verilog---表达式的赋值即位宽和符号的确定 - 孤独野猪骑士 - 博客园 (cnblogs.com)

 

self-determined 情况:

c=$signed(a*b) 会出现自检测

if(a+b)>c 会出现自检测机制

z=(a+b)>(c*d) 会出现自检测

c=(a*b)+(c*d)应该也会出现自检测

 

c=a*b+c*d没问题

 

目前结论:()会导致原表达式进行分级运算,导致中间步骤出现自检测,所以推荐分开写,避免自检测引起的位宽不匹配

posted @ 2023-07-13 19:54  xkxxxxzzz  阅读(102)  评论(0)    收藏  举报