首 页 行业资讯 新车 试驾评测 养车用车 车型库

assign在verilog里是什么意思?

发布网友 发布时间:2022-04-21 14:32

我来回答

2个回答

热心网友 时间:2023-06-22 07:23

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赋值。

热心网友 时间:2023-06-22 07:24

assign相当于一条连线,将表达式右边的电路直接通过wire(线)连接到左边,左边信号必须是wire型。当右边变化了左边立马变化,方便用来描述简单的组合逻辑。
示例:
wire a, b, y;
assign y = a & b;

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com