作业帮 > 数学 > 作业

assign在verilog里是什么意思?

来源:学生作业帮 编辑:作业帮 分类:数学作业 时间:2024/05/13 07:00:43
assign在verilog里是什么意思?
reg a;
assign a=20'a10;

reg a;
a=20'a10;
有什么区别?
初学者~请多多指教~
assign表示连续赋值,且被赋值的变量只能是wire型的.
如果变量是reg型的,则只能用在always块内部赋值,例如:
wire [19:0] a;
assign a = 20'b10;
reg [19:0] b;
always@(*)
begin
b = 20'b10;
end
再问: reg型能在initial中赋值吗?例如: reg[19:0] b; initial begin b = 20'b10; end 这样对吗?
再答: 在initial中赋值的,就是要用reg型的。wire型的要在initial块外部用assign赋值。