4. 模拟/混合信号模型准备
在混合信号验证中,模型准备往往比测试平台搭建更耗时。一个AMS验证环境里,模拟侧可能同时存在SPICE网表、Verilog-A模块、Verilog-AMS模块、行为级模型和晶体管级模型。它们不是互相替代的关系,而是按验证目标分层选用的。选错模型层级,轻则仿真跑不动,重则掩盖真实缺陷。
四类模型的本质差异
SPICE网表是晶体管级或器件级的电路描述,通常由原理图导出,包含MOS管、电阻、电容、寄生参数和工艺模型卡。它的精度最高,能反映偏置点、非线性、寄生效应和失配,但仿真速度最慢,适合小规模模拟模块的精细验证,例如带隙基准、LDO环路、比较器失调。
晶体管级模型在AMS环境中通常以SPICE子电路形式被调用,通过Xcelium的AMS接口与数字侧连接。它和SPICE网表本质相同,区别在于是否作为可复用子电路被例化。工程上常把关键模拟IP做成晶体管级子电路,其余部分用行为级替代。
Verilog-A/AMS模型是模拟行为建模的标准语言。Verilog-A适合描述连续时间模拟行为,如运放增益、滤波器传递函数、电流镜关系;Verilog-AMS可同时描述模拟和数字行为,支持connect module和混合信号接口。它的优势是仿真速度快、参数可配置、便于覆盖边界条件,但精度取决于建模质量。
行为级模型是更上层的抽象,可以用Verilog-AMS、SystemVerilog RNM或wreal实现。它不描述器件物理,只描述输入输出关系,例如用一阶传递函数代替运放、用查找表代替非线性增益。行为级模型适合系统级验证、长时间仿真和数字主导的混合信号场景。
选用原则:从验证目标反推模型层级
模型选用的第一步不是问“哪个模型好”,而是问“这次验证要证明什么”。如果目标是验证带隙基准的温漂和电源抑制比,晶体管级是唯一选择,因为行为级模型无法体现工艺角和寄生效应。如果目标是验证SoC中数字控制逻辑与模拟前端的接口时序,行为级模型配合wreal接口就足够,晶体管级反而会拖慢仿真。
工程上常用的判断路径是:先看验证对象是否包含非线性、失配、寄生或偏置依赖;再看仿真规模是否超过晶体管级可承受的范围;最后看模型是否已有可复用的行为级版本。三个条件中只要有一个指向行为级,就应优先考虑行为级或混合层级。
工程折中的具体做法
实际项目里很少全用晶体管级或全用行为级,更多是混合层级。典型做法是把模拟IP分成三类:关键精度模块用晶体管级,如ADC采样保持、PLL电荷泵、LDO功率管;功能模块用Verilog-A/AMS,如运放、比较器、滤波器;接口和数字控制用行为级或wreal,如SPI配置、使能逻辑、状态机。
以12位SAR ADC验证为例,电容DAC阵列和比较器用晶体管级,逐次逼近逻辑用Verilog数字模型,参考电压缓冲器用Verilog-A行为模型。这样既保留了电容失配和比较器噪声对INL/DNL的影响,又避免了数字逻辑的晶体管级仿真开销。仿真时间通常比全晶体管级减少一个数量级,而关键指标仍可观察。
模型准备中的常见问题
SPICE网表导入AMS环境时,最常见的问题是节点命名冲突和接口电平不匹配。数字侧是0/1逻辑,模拟侧是连续电压,需要通过connect module或接口单元转换。Verilog-A模型则要注意收敛性,避免在方程中使用不连续函数或理想开关,否则仿真器会反复切割时间步长。
行为级模型的精度验证常被忽略。一个用一阶传递函数代替运放的模型,在低频段可能很准,但在接近单位增益带宽时相位误差会明显增大。工程上应把行为级模型与晶体管级模型做一次小信号AC对比,确认在关注频段内增益和相位误差在可接受范围内,再投入大规模回归。
一个可参考的模型选用决策表
| 验证对象 | 推荐模型层级 | 关键理由 | 典型仿真时间量级 |
|---|---|---|---|
| 带隙基准温漂 | 晶体管级/SPICE | 需工艺角、失配、寄生 | 小时级 |
| LDO环路稳定性 | 晶体管级+Verilog-A负载 | 功率管需精度,负载可行为化 | 小时级 |
| SAR ADC静态指标 | 混合层级 | DAC阵列晶体管级,逻辑数字级 | 十分钟级 |
| PLL锁定过程 | Verilog-A/AMS | 环路行为可建模,速度优先 | 分钟级 |
| SoC数模接口时序 | 行为级/wreal | 关注接口协议,不关注模拟细节 | 秒级至分钟级 |
| 系统架构评估 | 行为级/RNM | 快速迭代,精度要求低 | 秒级 |
表中仿真时间量级为示例性估计,实际取决于电路规模、仿真器设置和服务器性能。但趋势是明确的:模型抽象层级越高,仿真越快,精度损失也越大。工程折中的核心不是追求最高精度,而是在验证目标允许的误差范围内,选择能最快给出可信结论的模型组合。
最后要强调的是,模型准备不是一次性工作。随着验证从模块级推进到系统级,同一个模拟IP可能需要从晶体管级逐步替换为行为级,或者反过来在发现异常时回退到晶体管级定位。保持模型层级可切换、接口一致、参数可追溯,是AMS验证工程化的重要基础。