语法回顾-《Verilog编程艺术》之赋值操作

目录

Verilog 赋值操作

连续赋值

过程赋值


参考《Verilog 编程艺术》魏家明著

Verilog 赋值操作

1.连续赋值(Continuous assignment),用于对线网Nets的赋值

2.过程赋值(Procedural assignment),用于对变量variables的赋值

3.过程连续赋值:assign/deassign 和 fork/realease

赋值由两部分构成:左手端LHS和右手端RHS,它们由 = 或 <= 分开。

连续赋值

当RHS发生变化时,连续赋值就会发生。连续赋值可以模拟组合逻辑,不需要使用逻辑门,直接使用逻辑表达式驱动线网。

例子:

assign {carry_out, sum_out} = ina + inb + carry_in;
assign mynet = {enable ? data : 1'b0};

在声明线网时也可以赋值,但是这个线网就不能被多驱动了

wire mynet = {enable ? data : 1'b0};

我们可以针对下面这些类型线网的连续赋值指定驱动强度:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值