Set Quartus 2 verliog使用卷曲克拉设置特定位

Set Quartus 2 verliog使用卷曲克拉设置特定位,set,verilog,bits,quartus,Set,Verilog,Bits,Quartus,嗨,我是verilog的新手,我尝试将一些特殊的位从一个reg变量设置为另一个reg,但对我来说不起作用。我做错了什么 reg [31:0] a; reg [31:0] b; initial begin a =32'b0; b =32'b1; $display("current value of a = %32b ",a); a ={b[5:0]}; $display("value of a %32b ",a); #10 $finish; end 从a[0]到a[5]的a位应该

嗨,我是verilog的新手,我尝试将一些特殊的位从一个reg变量设置为另一个reg,但对我来说不起作用。我做错了什么

reg [31:0] a;
reg [31:0] b;

initial begin
 a =32'b0;
 b =32'b1;
 $display("current value of a = %32b ",a);
 a ={b[5:0]};
 $display("value of a %32b ",a);
 #10 $finish;
 end

从a[0]到a[5]的a位应该是1,但在代码中只有a[0]变成了1,所以只有
b[0]
等于1

在SystemVerilog(检查:)中,您可以使用单个位值对常量文字数字进行自动左填充,即
b='1
b
的所有位设置为1

使用Verilog,只需将另一个值赋给
b
(即
b=32'b11111
)或将代码更改为以下值:

a[4:0] = {5{b[0]}}