赞
踩
想要弄清楚标量(Scalar)与向量(Vector),需要先回顾下Verilog中的变量!
Verilog 语言中主要的两种变量类型
线网型和寄存器类型具体又包含很多种变量,线网型变量最常用的变量就是 wire,而寄存器型最常用的变量是 reg。 wire 可以看成直接的连接,在可综合的逻辑中会被映射成一根真实的物理连线;而 reg 具有对某一个时间点状态进行保持的功能,如果在可综合的时序逻辑中表达,会被映射成一个真实的的物理寄存器, 而在 Verilog 仿真器中,寄存器类型的变量通常要占据一个仿真内存空间。
因此在设计逻辑的时候要明确定义每个信号是 wire 还是 reg 属性。凡是在 always 或initial 语句中被赋值的变量(赋值号左边的变量),不论表达的是组合逻辑还是时序逻辑,都一定是 reg 型变量;凡是在 assign 语句中被赋值的变量,一定是 wire 型变量。
如上所述,最常用的两种变量类型是wire和reg,这两种类型可以定义一位的变量也可以定义多位的变量,其中1位变量称之为标量(Scalar),多位变量称之为向量(Vector),类似于数组。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。