首页 > 技术文章 > verilog基础知识

ArChieve 2019-11-14 15:15 原文

------1、

在数值运算语句中, 如“+”号两边,数值的进制要一样,比如只能八进制+八进制,不可以二进制加二进制

------2、阻塞赋值与非阻塞赋值

(1).非阻塞(Non_Blocking)赋值方式( 如 b <= a; )

  • 块结束后才完成赋值操作。
  • b的值并不是立刻就改变的。
  • 这是一种比较常用的赋值方法。(特别在编写可综合模块时)

这种方式的赋值并不是马上执行的,也就是说"always"块内的下一条语句执行后,b并不等于a,而是保持原来的值。"always"块结束后,才进行赋值

(2).阻塞(Blocking)赋值方式( 如 b = a; )

  • 赋值语句执行完后,块才结束。
  • b的值在赋值语句执行完后立刻就改变的。
  • 可能会产生意想不到的结果

这种赋值方式是马上执行的。也就是说执行下一条语句时,b已等于a

推荐阅读