当前位置:
文档之家› 第3讲 Verilog HDL常用建模方法汇总
第3讲 Verilog HDL常用建模方法汇总
在传输信号时没有延迟。但是,当开关值切换时有开 (turn-on)和关(turn-off)延迟。可以给双向开关指 定0个、1个或2个延迟,如下表所示。
specify块 也可以给使用开关设计的模块指定路径延迟(引脚到引
脚的延迟)以及时序检查。用specify块可以描述路径延 迟。在第10章中详细讨论了路径延迟说明,它在开关级 模型中也完全适用。
描述方式:
因为开关是用Verilog原语定义的,类似 于逻辑门,实例名称是可选项,所以调用 (实例引用)开关时可以不给出实例名称。
信号out的值由信号data和control的值确定。 out的逻 辑值如表11.1所示。 信号data和control的不同组合导致 这两个开关输出1,0或者z或x,逻辑值(如果不能确定 输出为1或0,就有可能输出z值或x值)。符号L代表0或 z,H代表1或z。
因此,NMOS开关在control信号是1时导通。如果 control信号是0,则输出为高阻态值。与此类似,如 果control信号是0,则PMOS开关导通。 具体的输入 输出参见下表:
CMOS开关用关键字cmos声明。CMOS开关的符号如下图所 示。
CMOS开关实例的引用: CMOS门本质上是两个开关(NMOS和PMOS)的组合体可
f=ab …
主讲 陈付
安徽师范大学 2015
第3讲 Verilog HDL常用建模方法
电路(开关级)级建模
门级(逻辑级)建模
数据流建模
行为级(RTL级)建模
Verilog模型可以是实际电路不同级别的抽象。这些抽象的级别和它们对应的模型 类型共有以下五种: (1)系统级(system) (2)算法级(algorithmic) (3)RTL级(Register Transfer Level): (4)门级(gate-level): (5)开关级(switch-level)
MOS,CMOS,双向开关和supply1,supply0源可用 于设计任意的开关级电路。CMOS开关是MOS开关的 一种组合;
延迟对开关元件来说是可选的。对于不同的双向器件, 有不同的延迟解释。
门级建模
当前的数字电路设计,绝大多数都是建立在门级或更 高的抽象层次上的。在门级抽象层次上,电路是用表 示门的术语来描述的,如用and(与门),nand(与 非门)等来描述。这种设计方法对于具有数字逻辑设 计基础知识的用户来说是很直观的,在Verilog描述和 电路的逻辑图之间存在着一一对应的关系。
源极supply1和supply0如下所示。
阻抗开关
前面所讨论的MOS,CMOS和双向开关可以用相应的 阻抗器件建模。阻抗开关比一般的开关具有更高的源 极到漏极的阻抗,且在通过它们传输时减少了信号强 度。在相应的一般开关关键字前加带r前缀的关键字, 即可声明阻抗开关。
在一般开关和阻抗开关之间有两个主要区别:源极到 漏极的阻抗和传输信号强度的方式。关于Verilog中的 强度级别参见书中附录A。
电源和地
计晶体管级电路时需要源极(Vdd,逻辑1)和地极 (Vss,逻辑0)。源极和地极用关键字supply1和 supply0来定义。
源极类型supply1相当于电路中的Vdd,并将逻辑1放在 网表中。源极类型supply0相当于地或Vss,并将逻辑0 放在网表中。在整个模拟过程中,supply1和supply0始 终为网表提供逻辑1值和逻辑0值。
3.1.2 举例— — CMOS或非门(nor)
二选一多路选择器
简单的CMOS锁存器
CMOS反向器
3.1.3 小结
开关级建模处于很低的设计抽象层次。只在很少的情 况下,比如在设计者需要定制自己的叶级元件(即最 基本的元件)时,才使用开关级建模。随着电路复杂 度的增加,这个级别的Verilog设计越来越少CMOS器件的模型。
NMOS,PMOS和CMOS门都是从漏极向源极导通,是单 向的。在数字电路中,双向导通的器件很重要。对双向导 通的器件而言,其两边的信号都可以是驱动信号。有三个 关键字用来定义双向开关:tran,tranif0和tranif1。
tran开关作为两个信号inout1和inout2之间的缓存。inout1 或inout2都可以是驱动信号。仅当control信号是逻辑0时 tranif0开关连接inout1和inout2两个信号。如果control信号 是逻辑1,则没有驱动源的信号取高阻态值z。有驱动源的 信号仍然从驱动源取值。如果control信号是逻辑1,则 tranif1开关导通。实例引用如下:
电路级建模
能够描述基本MOS开关:nmos,pmos和cmos。 理解双向传输开关、电源和地的建模方法。 识别阻抗MOS开关。 解释在基本MOS开关和双向传输开关上说明延迟的方
法。 在Verilog中,用所提供的开关建立基本开关级电路
3.1.1 开关级建模元件— — MOS开关
可以用关键字nmos和pmos定义两种类型的MOS开关 关键字nmos用于NMOS晶体管建模;关键字pmos用 于PMOS晶体管建模。NMOS和PMOS开关的符号如 下图所示。
开关中的延迟说明
MOS和CMOS开关
可以为通过这些开关级元件的信号指定延迟。延迟是 可选项,它只能紧跟在开关的关键字之后。延迟说明 类似于Rise,Fall和Turn-off延迟。可以为开关指定0个、 1个、2个或者3个延迟,如下所示。
双向传输开关 双向传输开关的延迟说明需要稍做区别解释。这种开关
3.2.1 门的类型
1.与/或门
Verilog语言中常用的门包括如下几种(以二输入为例):
在Verilog语言中,我们可以调用(实例引用)这些逻辑 门来构造逻辑电路。在门的实例引用中,输入端口的数 目可以超过两个,这时只需将输入端口全部排列在端口 列表中即可,Verilog会根据输入端口的数目自动选择引 用合适的逻辑门。注意,在门级原语实例引用的时候, 我们可以不指定具体实例的名字,这一点为设计师编写 需要实例引用几百个门的模块提供了方便。 格式: