Verilog基本知识

Reg寄存器

reg型数据常用来表示用于 “always”模块内的指定信号, 常代表触发器。 通常, 在设计中要由“always”
块通过使用行为描述语句来表达逻辑关系。 **在“always”块内被赋值的每一个信号都必须定义成reg
型。**reg型只表示被定义的信号将用在“always”块内,理解这一点很重要。并不是说reg型信号一定是寄
存器或触发器的输出。虽然reg型信号常常是寄存器或触发器的输出,但并不一定总是这样。

移位运算符

在Verilog HDL中有两种移位运算符:
<< (左移位运算符) 和 >>(右移位运算符)。
其使用方法如下:
a >> n 或 a << n
a代表要进行移位的操作数,n代表要移几位。这两种移位运算都用0来填补移出的空位

赋值语句

在Verilog HDL语言中,信号有两种赋值方式:

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

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

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

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

猜你喜欢

转载自blog.csdn.net/lichao_ustc/article/details/48401575