利用XA提高数模混合电路仿真效率
邢 巍baoer.xing@sinowealth.com
中颖电子股份有限公司
摘要
随着半导体技术向深亚微米的不断发展,集成电路的规模和复杂度越来越高,同时time to market的压力也越来越大,对于大规模的数模混合电路,如何在保证仿真精度的前提下提高仿真速度给电路设计人员提出了很大的挑战。
本文介绍了Synopsys的Fast SPICE工具XA的特点,并详细对比了XA在高速ADC、高精度ADC、DC-DC、Oscillator等实际电路中与传统SPICE仿真器在仿真速度和仿真精度方面的差异,同时对评估过程中遇到的问题及解决方案做了详细说明,对比结果显示XA在保证精度的前提下仿真速度有2~100倍的提升。
Abstract
With continuous development of the deep sub-micron semiconductor technology,the scale and complexity of integrated circuit is getting higher and higher,and more pleasure facing “time to market”. For large-scale mixed-signal circuit, how to trade off between accuracy and performance suggests great challenges to circuit designers.
This paper introduces the characteristics of Synopsys Fast SPICE tools XA, and detailed in accuracy and performance comparison with XA and traditional SPICE simulator , in the application such as high-speed ADC、high resolution ADC、DC-DC and Oscillator circuit, meanwhile the problems and solutions in the evaluation process are recommended. The results show that with similar accuracy, XA gets 2 ~ 100 times efficiency improvement.
1. 概述
1.1 XA简介
XA是下一代高速、大容量、易用的晶体管级仿真器,通过合适的选项设置可以在仿真速度和精度间实现较好的折中。可用于从数字验证到SPICE加速仿真等领域,集合了NanoSim、HSIM、Star-SimXT等Fast-SPICE工具的优点。
1.2 XA基本流程
XA兼容SPECTRE、HSPICE和ELDO格式的网表,将网表、激励通过解析器优化产生内部的数据库,通过直流引擎(DC Engine)找到稳定的工作点,此信息传给瞬态引擎(Transient Engine)做瞬态仿真。输出资料包括FSDB/TR0/WDB等格式的图形文件、记录文件和测量文件等。

图1 – XA基本流程
1.3 XA的优势
XA主要有以下4点优势:
仿真速度:通过优化过的网表解析器、电路分割、多步长仿真和查找表等技术可以更好的在速度和精度间折中。
仿真精度:完全支持SPICE的仿真算法,可以实现同传统SPICE接近的仿真精度。
容量:层次化数据结构可以输入更大容量的网表文件,同时阵列式数据结构可以减小对仿真内存的需求。
易用性:XA兼容SPICE的常用命令,同时电路“自动识别技术”可以通过对仿真电路结构的智能分析自动设置误差容限等参数,通过简单设置“set_sim_level”选项可以适应绝大多数电路的仿真需求。
2. XA在带数字校准Pipeline ADC中的应用
带数字校准功能的Pipeline ADC是典型的数模混合电路,模拟部分包括前置采样保持器(SHA)、MDAC(Multiplying Digital-to-Analog Converter)、子ADC、基准电压模块等,数字部分包括时钟控制模块、数字校正电路和数字校准电路等。对于数模混合电路,不但设计流程比较复杂的,仿真验证也需要对数字电路部分和模拟电路部分分别进行不同抽象层次的仿真,集成之后再进行数模混合仿真。
在引入XA工具之前,模拟部分使用HSPICE或ELDO仿真,数字部分用NanoSim+VCS仿真,数模混合仿真验证时,只能使用NanoSim,对不同模块用不同的仿真精度处理,但对于14bit Pipeline ADC而言,NanoSim可以验证数模接口的连接正确性和电路基本功能,但是仿真精度总是不理想。
在评估XA在数字校准Pipeline ADC中的应用时,我们主要关注XA在三个方面的表现:
一是前置采样保持器(SHA)的仿真,对比验证XA是否可以达到接近HSPICE的仿真精度;
二是整个模拟模块的仿真,对比验证XA在较大规模模拟电路仿真中速度和精度的折中;
三是带数字校准模块的Pipeline ADC整体仿真,对比验证XA在数模混合电路仿真中相对NanoSim的优势。
下面就详细介绍整个评估过程中出现的问题、解决方案和最后的仿真结果。
2.1采样保持器(SHA)
SHA模块负责采样、保持端口的模拟信号用于后级Pipeline ADC转换,因此SHA的精度直接决定了整个ADC的性能。
2.1.1 SHA仿真电路原理图
SHA的仿真电路原理框图如下,包括SHA模块、时钟模块、基准电压模块、偏置电流模块、第一级MDAC和Sub-ADC。

图2 – SHA仿真电路框图
2.1.2 SHA仿真电路模块说明
各模块描述、电路类型、精度要求描述如下:

2.1.3 SHA仿真调试
2.1.3.1 set_sim_level
“易用性”是XA的特色之一,“set_sim_level”是最常用的设置选项,功能是控制仿真速度和精度之间的折中,目前开放3-7 5种档位设置:

图3 -XA Set_sim_level应用领域介绍
选项定义中开始只针对整体电路设置set_sim_level,分别取4,5,6做了3组仿真,对应配置文件描述如下:
set_sim_level 6
set_message_limit 20
仿真结果如下:
表1 SHA只设置Set_sim_level仿真结果对比

可见对于SHA电路,XA相对ELDO仿真速度有50倍左右的提升,但是仿真精度THD(总谐波失真)指标却有20dB的差距。
但是不好解释的是设置全局选项set_sim_level =4仿真结果精度比设置set_sim_level =6还要高,后来通过向Synopsys工程师请教并反复尝试,发现set_sim_level针对大部分电路都直接适用,但是如果对仿真精度要求较高,需要针对具体电路特性做相应的选项设置。SHA是典型的开关电容电路,属于离散时间系统,其工作特点就是随着系统时钟会频繁经历大信号建立和小信号稳定过程,该电路对精度要求最高的点为稳定建立点A附近,因此如果仿真工具可以在此区域特别处理,就可以提高整体的仿真精度。

图4- SHA瞬态仿真波形图
针对此特点增加了专门针对开关电容电路的“set_sample_point”和仿真容差控制“set_tolerance_option”,对配置文件修改如下:
set_sim_level 6
set_sample_point -start 1.0u -period 100n
set_tolerance_option -tol 0.1 -tol_rule 1
从下面的仿真结果可以看出,随着set_sim_level的增加,仿真时间依次增加,仿真精度也有所改善。
表2 SHA设置sample_point后仿真结果对比

2.1.3.2 分割和局部定义
设置sample_point和tolorance_option后,XA仿真结果的THD特性相对ELDO还是有15.4dB的差异。XA可以实现更加接近ELDO的仿真精度嘛?答案是肯定的。
XA作为Fast SPICE工具,在仿真算法上做了很多优化,其中包括电路分割和局部设置命令。
首先介绍一下关于“分割”的概念:XA支持两级分割,静态分割和动态分割。静态分割采用成熟的算法加速电路收敛,找到初始工作点;动态分割采用更激进的电路分块算法,减小每个子块的大小以进一步加快仿真速度。但是只要做电路分块,“拼接”得再完美也一定会有“缝隙”,也就会影响最终的仿真精度,如果要得到最接近SPICE的仿真精度,可以通过屏蔽XA的动态分割功能实现,语法定义如下:
set_partition_option -ap 0
接着介绍一下“局部定义”。XA支持对不同电路模块设置不同的仿真精度,这样就可以通过给不同精度要求的模块设置不同选项级别,更加灵活的实现速度和精度之间更好的权衡,语法定义如下:
set_sim_level –level 7 –subckt op_sha
对于其它电路模块,设置局部 sim_level原则如下:

图5-局部Set_sim_level设置原则
2.1.4 配置文件设置
尝试在配置文件中加入以下命令:
set_sim_level 5
set_sample_point -start 1.0u -period 100n
set_tolerance_option -tol 0.1 -tol_rule 1
set_partition_option -ap 0
set_sim_level 7 -subckt op_sha
2.1.5仿真结果对比
采用此配置定义对应的SHA分析结果如下:
表3 SHA设置partition_option后仿真结果对比

THD性能指针虽然还有3dB左右的差异,但是满足对此模块的仿真精度要求,而且仿真效率有16倍左右的提升,对于Fast SPICE工具能提速的同时做到同传统SPICE工具接近的精度,此表现已非常优秀。
综上可知对于开关电容电路,通过区分设置全局和局部set_sim_level,再辅以set_sample_point 、set_partition_option 等选项设置,不但可以达到HSPICE相近的仿真精度,同时仿真速度也有16倍左右的提高。
2.2 Pipeline ADC (Without Digital Calibration Block)
通过对SHA特性的验证,已经对XA仿真精度有一定信心,下面通过整个Pipeline ADC模拟模块的仿真,评估XA在以模拟模块为主的大规模数模混合电路的整体仿真中表现如何。
2.2.1.Pipeline ADC框图
Pipeline ADC的模拟模块框图如下:

图6-流水线ADC结构框图
2.2.2.模块说明

2.2.3 配置文件设置
结合SHA的调试经验,全局设置set_sim_level为5,模拟模块设置set_sim_level为6,核心的OP设置set_sim_level为7,同时加入 Set_partition_option,Set_sampling_option,set_tolerance_option等定义,配置文件如下:
set_sim_level 5
set_message_limit 20
set_sample_point -start 1.0u -period 100n
set_tolerance_option -tol 0.1 -tol_rule 1
set_partition_option -ap 0
set_sim_level 7 -subckt op_sha1
set_sim_level 6 -subckt op_md1
set_sim_level 6 -subckt op_md2
set_sim_level 6 -subckt op_md4
set_sim_level 6 -subckt ibias2
set_sim_level 6 -subckt refb3
2.2.4仿真结果对比

图7 -Pipeline ADC模拟部分仿真FFT波形图
表4 Pipeline ADC模拟部分仿真FFT分析结果对比

可见对于较大规模的模拟电路整体仿真,如果用传统的SPICE工具,需要一周多的时间,但用XA只需要4小时,速度提升达到40 倍,而且可以达到与传统SPICE相近的仿真精度,这对于加快仿真效率,缩短产品研发周期具有非常重要的意义。
2.3 Whole Pipeline ADC with Digital Calibration Block
为了进一步验证XA在较大规模数模混合电路仿真中的表现,以带数字校准的Pipeline ADC作为评估对象。该系统除Pipeline ADC 模拟模块外,还加入了数字校准算法,整个系统规模有20万门左右。
2.3.1电路结构

图8- Pipeline ADC仿真框图
2.3.2.模块说明

2.3.3 配置文件设置
结合SHA的调试经验,全局设置set_sim_level为5,数字部分设置set_sim_level为3,模拟模块设置set_sim_level为6,核心的OP设置set_sim_level为7,同时加入Set_partition_option,Set_sampling_option,set_tolerance_option等定义,配置文件如下:
set_sim_level 5
set_sim_level 3 -inst xi_496.XIBFHB*
set_sim_level 3 -inst xi_496.XIBFHC*
set_sim_level 3 -inst xi_496.XINVH*
……
set_sample_point -start 1.0u -period 100n
set_tolerance_option -tol 0.1 -tol_rule 1
set_sim_level 7 -subckt op_sha1
set_sim_level 6 -subckt op_md1
2.3.4仿真结果对比

对于电路规模超过20万门的数模混合电路的整体仿真,既要保证模拟模块的仿真精度,同时又要权衡数字电路的仿真速度,采用 传统的SPICE工具,根本不能完成这样规模电路的整体仿真。原来整体仿真采用NanoSim工具,模拟/数字模块采用不同的仿真精 度,但是反复修改选项设置都不能满足系统精度的要求,只能做功能验证。
XA的仿真结果显示,利用同NanoSim接近的仿真时间,可以实现更接近设计指标要求的仿真精度,因为可以仿真验证到该类电路 的实际性能,XA可以为提高大规模数模混合电路的设计成功率提供可靠保障。
3. XA在其它模拟模块中的应用
前面的评估工作已经看到XA在开关电容类模拟电路和大规模数 模混合电路中的良好表现,但XA是否针对各种常用模拟电路 都适用呢?下面针对公司常用模拟模块分别对XA做了验证工 作,模拟模块包括高精度Signal-Delta ADC、DC-DC、PLL、 LDO、Bandgap、RC-OSC、Crystal OSC等。
3.1 High definition Sigma-Delta ADC
高精度Sigma-Delta ADC也是典型的数模混合电路,包括模拟 调制器和数字滤波器。
3.1.1电路结构

图9 -Signa-Delta ADC Modulator仿真框图
3.1.2模块说明

3.1.3 配置文件设置
set_sim_level 4
set_sample_point -start 5.0u -period 12.5u
set_tolerance_option -tol 0.1 -tol_rule 1
set_sim_level 6 -subckt int1
set_sim_level 6 -subckt int2
3.1.4仿真结果对比

图10- Sigma-Delta ADC仿真FFT分析波形
表6 Sigma-Delta ADC仿真结果对比

仿真结果显示,XA仿真结果HD3(三阶谐波) -110dB、HD7 (七 阶谐波) -110dB左右,低频段噪声在-130dB。从结果比较来 看,噪声性能上接近ELDO,同时仿真速度有37.5倍的提升。
3.2 DC-DC
3.2.1.DC-DC原理框图

图11- DC-DC原理框图
3.2.2模块说明

3.2.3仿真结果对比
3.2.3.1 Bandgap输出
不同仿真精度下的Bandgap输出电压如下图,截取了相同时间 段的平均值

图12 -XA不同Sim_level VREF仿真波形对比
表7 XA不同Sim_level VREF仿真结果对比

3.2.3.1 DCDC输出电压纹波

图13- XA不同Sim_level DC-DC纹波仿真波形对比
表8 XA不同Sim_level DC-DC纹波仿真结果对比

DC-DC纹波误差在level=4就可以达到小于0.1mV的精度, 满足 系统精度要求。
3.2.3.1斜坡补偿电压与补偿斜率

图14 -XA不同Sim_level DC-DC补偿斜率波形对比
表9 XA不同Sim_level DC-DC补偿斜率结果对比

仿真结果显示level=6时斜坡补偿电压的精度在1mV之内, 斜坡 补偿斜率偏差接近0.5%,满足系统精度要求,但仿真速度却有接近99倍的提升。
3.3各种常用模拟模块的仿真对比
表10 XA在各种常用模拟模块的仿真结果对比

注:“/”表示该模块仿真时间很短
以上统计结果都是在满足相应模拟模块电路精度前提下的仿真 时间对比,可见针对不同类型的模拟电路,XA都可以在仿真速 度和仿真精度间实现较好的折中,针对PLL和Crystal OSC仿真 速度提升不如预期,可能是没有找到合适的选项设置,后续可 以做进一步改进工作。
4. 结论与建议
本文介绍了导入XA仿真工具的整个评估过程,首先通过对高 精度SHA电路的仿真验证,了解到对于开关电容电路,通过区分设置全局和局部set_sim_level,再辅以set_sample_point 、 set_partition_option等选项设置,不但可以达到HSPICE相近 的仿真精度,同时仿真速度也有16倍左右的提高;接着对带数 字校准的Pipeline ADC做整体仿真验证,结果显示XA可以实现 更接近设计指标要求的仿真精度,可以为提高大规模数模混合电路的设计成功率提供可靠保障;最后评估了XA在各种常用 模拟模块中的应用,包括高精度Signal-Delta ADC、DC-DC、 PLL、LDO、Bandgap、RC-OSC、Crystal OSC等,证明了XA普遍适用于各种数模混合电路,在保证精度的前提下仿真速度 有2~100倍的提升。
针对PLL和Crystal OSC仿真,XA的仿真速度提升不如预期,可 能是没有找到合适的选项设置,相信在后续的XA使用过程中可以逐步改善。
5. 致谢
在整个XA工具的评估过程中,得到Synopsys技术支持团队的支持和公司内同事的大力配合。
感谢钟晓林老师给予的督促和指导!
感谢虎聪、唐俊、徐建、李茂旭等在评估过程中的配合和帮助!
6. 参考文献
1. XA Command Reference .Synopsys Inc.Version D-2010.03, March 2010
2. XA User Guide. Synopsys Inc.Version D-2010.03, March 2010
3. XA Quick Start .Synopsys Inc. Sep 2007
4. Liu Xuhui, Li Guang, Cai Jing, Accelerated Mixed-signal Full Chip Verification with XA-VCS, SNUG China 2009
5. Allen Qiu, XA-VCS co-simulation of Mixed Signal designs, SNUG China 2009



