现在的位置: 首页 > 综合 > 正文

Verilog HDL数据类型

2012年11月27日 ⁄ 综合 ⁄ 共 762字 ⁄ 字号 评论关闭

Verilog HDL的数据类型分为两大类:线网类型和寄存器类型。线网类型主要表示Verilog HDL中结构化元件之间的物理连线,其数值由驱动元件决定。如果没有驱动元件接到线网上,则其默认值为高阻z。寄存器类型主要表示数据的存储单元,其默认值为不定x。二者最大的区别在于:寄存器类型数据保持最后一次的赋值,而线网类型数据则需要持续的驱动。

 

一、线网类型:

  1. wire:标准连线(默认为该类型);
  2. tri:具备高阻状态的标准连线;
  3. wor:线或类型驱动;
  4. trior:三态线或特性的连线;
  5. wand:线与类型驱动;
  6. triand:三态线与特性的连线;
  7. trireg:具有电荷保持特性的连线;
  8. tri1:上拉电阻(pullup);
  9. tri0:下拉电阻(pulldown);
  10. supply0:地线,逻辑0;
  11. supply1:电源线,逻辑1。

注意,其中只有wire、tri、supply0和supply1是可综合的,其余都是不可综合的,只能用于仿真。

Verilog HDL程序模块中输入、输出信号类型默认为wire型。

线网数据类型的通用说明语法为:net_kind [msb:lsb] net1,net2,…;

线网类型变量的赋值(也就是驱动)只能通过数据流assign操作来完成,不能用于always语句中。

二、寄存器类型:

  1. reg:常用的寄存器型变量,用于行为描述中对寄存器类的说明,由过程赋值语句赋值;
  2. integer:32位带符号整型变量;
  3. time:64位无符号时间变量;
  4. real:64位浮点、双精度、带符号实型变量;
  5. realtime:其特征和real型一致;
  6. reg的扩展类型--memory类型。

Verilog HDL通过对reg型变量建立数组来对存储器建模。其定义格式为:reg [m-1:0] mem [n-1:0]; 定义了一个存储位宽为m、存储深度为n的存储器。

抱歉!评论已关闭.