1. Verilog开关级建模概述
在数字电路设计中,Verilog提供了从行为级到开关级的多层次抽象建模能力。开关级建模作为最底层的抽象层次,直接使用晶体管作为基本构建模块,为设计者提供了对电路行为的精细控制。这种建模方式虽然在实际工程中应用场景有限,但在某些特殊场合(如IO pad设计、模拟混合信号电路接口等)仍然具有不可替代的价值。
开关级建模的核心思想是将MOS晶体管视为受控开关,通过控制信号的通断来实现逻辑功能。与门级建模相比,开关级建模能够更精确地反映晶体管的电气特性,包括信号强度、阻抗变化等。Verilog提供了丰富的开关级原语,包括:
- 单向开关:nmos、pmos及其高阻版本(rnmos、rpmos)
- CMOS开关:cmos、rcmos
- 双向开关:tran、tranif0、tranif1及其高阻版本
- 电源网络:supply1、supply0
实际工程中,开关级建模主要用于芯片IO单元设计、特殊功能单元实现以及某些需要精确控制信号强度的场合。大多数数字设计仍推荐使用更高抽象层次的门级或RTL级建模。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. MOS开关建模详解
2.1 基本MOS开关类型
Verilog提供了四种MOS开关原语,可分为两组:
-
标准MOS开关:
nmos:N型MOS管pmos:P型MOS管
-
高阻MOS开关:
rnmos:带高阻抗的N型MOS管rpmos:带高阻抗的P型MOS管
这些开关的端口连接方式完全一致:
- 第一个端口:输出端(漏极)
- 第二个端口:输入端(源极)
- 第三个端口:控制端(栅极)
verilog复制// 标准实例化方式
nmos n1(out, in, ctrl); // 带实例名称
pmos (out, in, ctrl); // 不带实例名称(匿名实例化)
2.2 MOS开关行为特性
MOS开关的行为可以通过真值表完整描述。以nmos为例:
| 输入 | 控制=0 | 控制=1 | 控制=x | 控制=z |
|---|---|---|---|---|
| 0 | z | 0 | 0/z | 0/z |
