2.2 连续赋值、过程赋值

4、赋值

Verilog HDL有两种为变量赋值的方法

一种叫做连续赋值(Continuous Assignment),另一种叫做过程赋值(Procedural Assignment)。

过程赋值又分为阻塞赋值(Blocking Assignment)和非阻塞赋值(Nonblocking Assignment)。

4.1 连续赋值

连续赋值是为线网型变量提供驱动的一种方法,它只能为线网型变量赋值,并且线网型变量也必须用连续赋值的方法赋值。

最基本的格式:assign # [延时量] 线网型变量名 =赋值表达式

赋值表达式可以是 a.标量   b.向量线网  c.向量寄存器    d.函数调用;

执行过程:连续赋值语句总是处于激活状态,只要右侧表达式中的任意一个操作数发生变化,表达式就会被立即重新计算,并且将结果赋值给对象。

wire a,b;
assign a = b;

wire [7:0] a,b;
assign a = b;

wire [7:0] a,b;
assign a[3] =b[1];

wire [7:0] a,b;
assign a[3:0] =b[3:0];

wire a,b;
wire [1:0]c;
assign c = {a,b};

 

4.2 过程赋值

过程赋值提供了为寄存器型变量赋值的方法,出现的位置是在各种块结构中,例如always块、 initial块等。

经过赋值后,变量(reg,integer,real,time)的取值

  • 11
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值