在Verilog里边 always@(*)语句是什么意思?
就是一种时序语句 根据括号里面的敏感信号 改变系统输出。
always块语句有两种触发方式,一种是延触发一种是电平变化触发,沿触发就是相当于posedge之类的语言约束的信号,如果没有如posedge之类的约束的话就是电平变化触发,就是说你always快语句里面的所有输入信号只要有其中一个发生变化就能触发always块语句,你问的那个只是触发信号的缺省模式,功能一样的。
Verilog HDL是一种硬件描述语言(HDL:Hardware Description Language),以文本形式来描述数字系统硬件的结构和行为的语言,用它可以表示逻辑电路图、逻辑表达式,还可以表示数字逻辑系统所完成的逻辑功能。
always块语句有两种触发方式,一种是延触发一种是电平变化触发,沿触发就是相当于posedge之类的语言约束的信号,如果没有如posedge之类的约束的话就是电平变化触发,就是说你always快语句里面的所有输入信号只要有其中一个发生变化就能触发always块语句,你问的那个只是触发信号的缺省模式,功能一样的
电平变化触发,这语句一般连着一个if语句用,使用起来其实相当于一个assign
举个例子,比如
always@(*)
if(a)
b=c;
if a==1,b=c;
相当于assign b=(a)?b:c;
广告 您可能关注的内容 |