前言

提取寄生参数以进行后仿真是电路设计的必由之路。


一、寄生参数提取的基本介绍

 在calibre PEX流程中,常见的输出方式有calibre view和spectre netlist。

calibre输出格式选择

 前者直接生成一幅直观的电路图,甚至器件的位置都和版图大致对应,非常方便观察内部的节点,但缺点是生成这么大一幅电路图,很容易卡顿;而仿真时要将这么大一幅电路图生成netlist,也会很卡顿。

 注:最重要的是很多low工艺不提供接口文件,无法生成calibre view。

 后者是以网表文件形式存储寄生参数,不是很直观,但是速度相对较快。以最复杂的r+c+cc为例,输出方式选取为spectre netlist时,会生成三个文件。top.pex.netlist, top.xxx.pxi, top.xxx.pex.

 其中netlist后缀的文件是顶层文件,列出了电路中用到的所有器件。

二、如何用生成的netlist仿真?

 和AMS混仿相似,需要为已有的仿真电路建立config,然后在config中将某个模块的view设置为spice文件:

config中调用含寄生参数的网表

 其后的流程和正常仿真相同。

三、常见的问题

3.1 生成的netlist端口不对应

 pex生成spectre netlist时,默认的端口顺序是按照字母进行排列的。这就会导致端口不对应的问题。按照下图方式进行设置即可:

设置网表端口的顺序

3.2 仿真时不支持总线

 有的电路中存在总线端口,例如test<3:0>,仿真时可能会出错。解决方法是先打开config的properties:

 然后在下图中输入-auto_bus:

四、屏蔽部分模块

 后仿真可能会看到性能的衰退,例如在一个SAR ADC中,电容阵列版图必然存在着不对称的寄生,导致后仿真性能下降。但是,电容阵列的失配将在测试时被校准,仿真时不必在意。因此,后仿时需要屏蔽掉电容阵列的寄生来评估性能。

 为了屏蔽某个模块的寄生参数,首先选择gate level格式:

 然后配置xcell文件,例如要屏蔽cellA这个模块,xcell文件里这样写即可:cellA cellA.

 此时,生成的netlist文件中,只会对cellA这个模块进行例化。注意此时并不能正常仿真,因为生成的netlist只是例化了cellA,并没有给出cellA内部的电路。为了正常仿真,在ADE窗口-setup-simulation file添加cellA的spectre网表

五、观测内部节点

 按照如上的方式进行后仿真时,所有的内部节点均被“埋在”了pex生成的netlist中,无法用ADE–>OUTPUT–>Saved这种方式直接保存。

 此时需要用到deepprobe来观测内部节点,具体用法不再赘述。

 如果采用AMS仿真,问题会稍麻烦。此时AMS仿真器生成的网表格式如下:

module top_testbench:
port:
I0
I1
...
I_pex(xxx xxx xxx)
...
endmodule
include I_pex.netlist

 概括来说就是:Verilog格式的网表调用spectre格式的网表。

 笔者目前使用的cadence版本中,deep probe不支持probe这种形式的内部节点。为解决这个问题,需要将I_pex.netlist中需要探测的节点做成端口,在顶层的top_testbench中增加一根线来连接到I_pex.netlist中新增的端口。

 例如要观测I_pex.netlist中的test001节点,此时需要在I_pex.netlist中手动增加一个test001端口,再将上述网表改为:

module top_testbench:
port:
wire test001;
I0
I1
...
I_pex(xxx xxx xxx test001)
...
endmodule
include I_pex.netlist

 此时,deepprobe即可探测test001节点的电压。

virtuoso配合calibre进行电路后仿真相关推荐

  1. calibre版图验证及寄生参数的提取后仿真

    这一篇主要是说一下版图的Run DRC 和Run LVS验证和寄生参数的提取后仿真. 接反向器的版图设计后,开始Run DRC和LVS. 打开之前画好的layout,在菜单栏中点calibre-Run ...

  2. Calibre与netlist后仿网表的仿真。

    Cadence+Calibre后仿真(个人总结,欢迎交流讨论) 一.. 对于能快速产生calire view的小模块DUT,Calibre XRC输出calibre view: 1.Spectre s ...

  3. 对电路版图提取寄生参数进行后仿真 (最终使用第二种方法)

    第一种方法:建立calibre视图 打开Calibre下的"Run PEX" 加载Runset文件 加载完毕如下图,看到有PEX规则文件和PEX工作路径 输入设置保持默认,包括La ...

  4. 用matlab简单电路模型,基于MATLAB的电路模型仿真应用

    基于MATLAB的电路模型仿真应用实验指导书 一.实验目的 1.掌握采用M文件及SIMULINK对电路进行仿真的方法. 2.熟悉POWERSYSTEM BLOCKSET 模块集的调用.设置方法. 3. ...

  5. (129)FPGA面试题-FPGA前仿真与后仿真的区别?

    1.1 FPGA面试题-FPGA前仿真与后仿真的区别? 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)FPGA面试题-FPGA前仿真与后仿真的区别?: 5)结束语. 1 ...

  6. 【仿真】后仿真中的notifier是奏啥滴!

    在进行后仿真的时候,我们经常会发现有人在仿真命令中增加了"+no_notifier",从而使输出不定态导致的功能异常出现的情况神奇的消失了.那么,到底是为什么会出现这种情况呢?本文 ...

  7. 基于matlab的微分例题,基于MATLAB的rlc电路模型仿真例题.doc

    1.通过M文件实现电路仿真的一般仿真步骤为: 分析仿真对象--电路: 确定仿真思路--电路分析的方法: 建立仿真模型--方程: 根据模型编写出仿真程序: 运行后得到仿真结果. 2.采用SIMULINK ...

  8. multisim变压器反馈式_基于Multisim的电压串联型负反馈电路的仿真与分析

    脑 基于 Multisim 的电压串联型负反馈电路的仿真与分析 贾俊荣 ( 闽江学院物理学与电子信息工程系 福建 福州 350108 ) [ 摘 要 ]: 本文以电压串联型负反馈放大电路为例 , 采用 ...

  9. 三相SVPWM逆变器MATLAB仿真实验,三相SVPWM逆变电路MATLAB仿真.doc

    三相SVPWM逆变电路MATLAB仿真 基于电压空间矢量控制的三相逆变器的研究 1.SVPWM逆变电路的基本原理及控制算法 图1.1中所示的三相逆变器有6个开关,其中每个桥臂上的开关工作在互补状态, ...

  10. FPGA仿真--前仿真和后仿真

    初学者学习FPGA,必定会被它的各种仿真弄的晕头转向.比如,前仿真.后仿真.功能仿真.时序仿真.行为级仿真.RTL级仿真.综合后仿真.门级仿真.布局布线后仿真等. Quartus和Modelsim软件 ...

最新文章

  1. 基础篇-verilog-FPGA实现频率相位调制DDS信号
  2. could not create connection to database server.] with root cause
  3. hashCode()方法(覆盖hashCode()方法)
  4. python云计算面试题_云计算工程师面试问题及答案解析
  5. 16 代码分割之错误边界与Suspense和命名导出
  6. opencv2.4.9报错找不到opencv_video249d.dll
  7. 信奥中的数学:信息论基础
  8. 无线传感器网络 | 名词解释
  9. Linux环境使用命名空间编写一个简单的容器应用程序:namespace,container,cgroups
  10. 几种软件滤波算法的原理和比较(带源码)
  11. crontab自动执行任务,失败原因记录
  12. 美国NIST仍在与财政部和国防部就区块链支付跟踪项目合作
  13. odoo开发笔记 -- 翻译机制及导入.po文件
  14. 精品|从零开始-基于FPGA 的软核处理器设计实现
  15. HMI报表设计与打印,标签、账单、支票、条码数据打印与出版VC++源码解决方案2018!
  16. stm32使用AD采样需要注意的一些小问题
  17. Pycharm菜单栏消失,(File 、view消失)快速调出来的方法。(Professional Edition 2022版)
  18. 《5G应用“扬帆”行动计划(2021-2023年)》征求意见稿发布
  19. 线上线下结合的教育模式将成为主流趋势
  20. C语言中指向函数的指针(我见过的讲的最清晰的文章)

热门文章

  1. 谷歌翻译插件对大陆停止服务及其解决方案
  2. 数字信号处理matlab版答案,数字信号处理matlab版答案
  3. 干货分享 ▎软考论文怎么写?
  4. Web项目部署到阿里云
  5. 国二计算机资料,计算机国二MS_Office高级应用资料.doc
  6. sqluldr2导出过blob字段_转载:利用sqluldr2导出数据和sqlldr导入数据的方法
  7. 软件需求分析报告模板
  8. python 3.7 安装 win32 win32com win32ras模块
  9. uniapp的云购商城源码/java电商系统APP源码
  10. Excel 闪退及老是提示内存不足情况实测解决方法