Set Quartus 2 verliog使用卷曲克拉设置特定位
嗨,我是verilog的新手,我尝试将一些特殊的位从一个reg变量设置为另一个reg,但对我来说不起作用。我做错了什么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位应该
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]}}