专题:assign

assign,连续赋值语句,有些书称为数据流描述方式。
assign,顾名思义,分配、布置。
它是将一个表达式的值、数值(寄存器的值、固定电平)的输出电平,连接至信号线或输出引脚上。
举个例子:

假如信号定义:
wire  y;   // 或者output  y;
input a;
reg   b;

则以下描述都可以:
assign  y=a&b; //位运算
assign  y=1'b0; //连接到固定电平
assign  y=a+b+c;  //算术运算
assign  y=(a==0) ? b:c; // 条件运算

需要注意的是:
assign,我一般视其为“连线”语句。y只能是wire或output等导线型信号,不能是reg类型。因为寄存器的赋值是需要触发信号的,赋值时需要触发信号,而assign并不能提供触发信号,assign只能做导线连接操作。

由于assign描述了硬件连线,所以多个assign之间不存在先后顺序,也没有执行顺序。
assign只能单独使用,不能嵌套在任何行为块语句中。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 学号:16010199021 姓名:李若宇 转载自 http://blog.csdn.net/sun1991011...
    承瑜阅读 1,844评论 0 1
  • testbench 1. 激励的产生 对于testbench而言,端口应当和被测试的module一一对应。端口分为...
    Michael_Johnson阅读 2,723评论 0 1
  • 8086汇编 本笔记是笔者观看小甲鱼老师(鱼C论坛)《零基础入门学习汇编语言》系列视频的笔记,在此感谢他和像他一样...
    Gibbs基阅读 37,469评论 8 114
  • Verilog HDL 快速入门 Verilog HDL是一种硬件描述语言(HDL:Hardware Descri...
    海青简书号阅读 8,696评论 1 54
  • 突然厌倦了这个城市,刚下了火车,犹如走进人间仙境,只是接连不断的咳嗽的欲望提醒着造成这一切的元凶。刚从江南回来,这...
    尘世尘子阅读 207评论 0 0