Verilog语法——按位取反“~“和位宽扩展的优先级
- 其他
- 2025-07-21 17:30:17
前言
先说结论,如下图所示,在Verilog中“~ ”按位取反的优先级是最高的,但是在等式计算时,有时候会遇到位宽扩展,此时需要注意的是位宽扩展的优先级高于“~”。
验证仿真代码,下面代码验证的是“~”按位取反和符号扩展的优先级。
module tb(); reg [7:0] a; reg b; wire [7:0] b1; wire [7:0] b2; wire [7:0] b3; initial begin a=0;b=0; repeat(10)begin #10 a={$random}%256; b={$random}%2; end end assign b1=a+~b; assign b2=a+~{7'b0,b}; assign b3=a+{~b}; endmodule仿真结果
如上所示,b1=a+ ~ b相当于b2=a+ ~ {7’b0,b}$,但是实际应该是按照逻辑b3=a+{~ b}或者是b2=a+{ 7’b0,~ b }逻辑才对。
Verilog语法——按位取反“~“和位宽扩展的优先级由讯客互联其他栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“Verilog语法——按位取反“~“和位宽扩展的优先级”
上一篇
全国火情预报卫星遥感应用方案