5.1 Verilog 程序描述方式
Verilog HDL模型可以是实际电路中不同级别的抽象,即对同一物理电路可以使用Verilog在不同层次上对其进行描述。
模块抽象级别分为:行为模块、结构模块。
行为模块:只是从行为和功能的角度来描述某个电路模块,如:1)、2)、 3)。
结构模块:只是从电路结构的角度来描述某个电路模块,如:4) 。
Verliog HDL支持数字电路系统的5种不同描述方法:
1). 系统级 (system)
2). 算法级 (algorithmic)
3). RTL级 (Register-Transfer-Level)
4). 门级 (gate-level)
5). 开关级 (switch-level)
5.2 门级结构描述
一个逻辑电路是由许多逻辑门和开关组成,它表示的是电路结构,它是电路布线的依据。
门级电路的描述是由基本逻辑门(and、or、not、xor等)互连而成的具有一定功能的电路模块。
一些常用门级结构以及关键字如下(Verliog HDL共提供26个门类型):
门类型及其关键字:
and ———— 与门
nand ———— 与非门
nor ———— 或非门
or ———— 或门
xor ———— 异或门
xnor ———— 异或非门
buf ———— 缓冲器
not ———— 非门
门与开关的说明语法可以用标准的声明语句格式和一个实例引用加以说明。其中门的类型是门声明语句所必需的,驱动能力和延时是可选项,门实例1是在本模块中引用的第一个该类型的门。
门申明语句:
<门的类型>[<驱动能力><延时>]<门实例1>[,<门实例2>,...,<门实例n>];
eg:
nand #10 nd1(a,data,clock,clear),
nd2(b,data,clock,clear);
该例在模块中使用了2个名为nd