wire型数据常用来表示用以assign关键字指定的组合逻辑信号。verilog程序模块中输入、输出信号类型默认时自动定义为wire型。wire型信号可以用做任何方程式的输入,也可以用做assign语句或实例元件的输出。wire型信号的格式和reg信号的格式很相似。其格式如下
wire[n-1:0]数据名1,数据名2,…数据名i;//共有i条线,每条总线内有n条线路。
wire[7:0]b;//定义了一个8位的wire型数据。
reg型
寄存器是数据存储单元的抽象,寄存器数据类型的关键字是reg。通过赋值语句可以改变寄存器存储的值,其作用与改变触发器存储的值相当。verilogHDL语句提供了功能强大的结构语句,使设计者能有效地控制是否执行这些赋值语句。这些控制结构用来描述硬件触发条件,例如时钟的上升沿和多路器的选通信号。
reg型数据常用来表示always模块内的指定信号,常代表触发器。通常,在设计中要由always模块通过使用行为描述语句来表达逻辑关系。在always模块内被赋值的每一个信号都必须定义为reg型。
reg型数据的格式如下:
reg[n-1:0]数据名1,数据名2,…,数据名i;
reg[3:0] regb;//定义了一个4位的名为regb的reg型数据。