首页 > 解决方案 > Verilog中1和1'b1之间的区别

问题描述

在verilog代码中只给出1和给出1'b1有什么区别?

标签: embeddedverilogsystem-verilogiverilog

解决方案


1 是 32 位宽,因此相当于32'b00000000_00000000_00000000_00000001

1'b1 有点宽。


有几个地方你应该意识到长度的不同,但最有可能让你发现的地方是串联。{}

reg [ 7:0] A;
reg [ 8:0] B;
   assign A = 8'b10100101;
   assign B = {1'b1,A};  // B is 9'b110100101
   assign B = {1,A};     // B is 9'b110100101
   assign B = {A,1'b1};  // B is 9'b101001011
   assign B = {A,1};     // B is 9'b000000001 !!!!

推荐阅读