本人实际测试了Cadence Virtuoso IC6.1.7以及Synopsys Custom Compiler 2022, 经历了不同工艺库适配兼容方面的波折, 新手只要依照步骤逐个进行操作, 便能够轻易躲开这类……
本人实际测试了Cadence Virtuoso IC6.1.7以及Synopsys Custom Compiler 2022, 经历了不同工艺库适配兼容方面的波折, 新手只要依照步骤逐个进行操作, 便能够轻易躲开这类常见问题。
版图设计哪个上手更快
卡登斯 virtuoso 的版图编辑器属于老资格的行业产品, 其操作路径具备显著直观性。开启之后, 直接点击 Launch – Layout XL, 菜单栏当中存在完整的 Create – Pin 以及 Create – Instance 选项。这步关键是要按住Shift键才能对齐栅极。
碰到“Mismatch between layout and schematic”这种常见报错, 新手要注意避开, 核心原因在于好不容易完成版图绘制后, 竟然没去做LVS检查, 解决办法是点击Calibre, 然后选择Run LVS, 接着输入rule file的具体路径, 等系统自动去对比节点连接情况。如果还报错,检查电源地线是不是都接了,别漏。
名称为Synopsys Custom Compiler的工具, 其版图相关部分称作ICV, 在操作逻辑上存在着更进一步趋向自动化的情况, 首先点击File选项且按下New按钮接着选择Layout Cellview, 随后在Assistants面板范围之内开启Device Generation功能。画运放之时, 直接去拖拽AnalogLib里的nmos18器件, 以及直接去拖拽AnalogLib里的pmos18器件, 如此软件便会自动生成版图。具有关键性质的参数乃是W/L比, 提出建议为, 假设NMOS设定为10/0.18, 并且假设PMOS设定为20/0.18, 通过如此这般的设定, 电流镜的匹配程度将会更高。
有关于新手需要避开的坑, 在这儿呀, 很容易遭遇到“Multiple drivers on net”这个错误, 它是因为在自动生成的版图里, 同一节点被多个相同类型的管子进行驱动, 解决的办法是在Constraints面板当中勾选Uniquify Net, 之后软件会自动去分配独立驱动。那操作的路径是, 先进行Setup, 接着是Constraints, 再然后是Uniquify Net, 最后去Apply。
如何对比两种工具的信号完整性
首先来讲Cadence的办法, 于Virtuoso之中开展信号完整性剖析时, 要将SpectreRF仿真器予以启动。用于关键参数推荐的情况, 将最大步长设定为周期的十分之一, 也就是0.1ns, 如此一来能够捕捉到振铃以及过冲的细节要点。关于设置该步长的理由是, 若步长过大将会遗漏高频噪声, 而步长过小则会致使仿真时间增长一倍。
针对新手避坑, 出现了这样的情况, 报错显示“PSS analysis failed due to time step too small”, 解决的办法是进行一个操作,即更改tstab时间, 把起初设置为默认的1us增加到10us, 以此达成让电路充分得以稳定的目的。操作的路径是, Analysis, 然后Choose, 接着是PSS, 再者是tstab, 最后是10u。
再去讲一下 Synopsys 的方案, 运用 Custom Compiler 来进行信号完整性方面的工作, 推进走 HSPICE 仿真流程这件事儿, 于 Simulation Manager 当中选择 Transient 分析, 设定其仿真时间为 20ns, 并且精度会选择 High。万一你有对时钟网络进行分析的需求, 那么就要采用Typical Corner方案以及Worst Corner方案来展开对比。在Typical的具体情形之下, 时钟抖动的数值是2ps, 而在Worst的情况出现的时候, 是会达到10ps的。关于取舍的逻辑是这样的: 要是去跑量产芯片, 那么建议采用Worst方案, 因为安全裕度比较高;要是跑样片验证, 那就用Typical方案, 其速度会快上一倍。
【新手避开陷阱】, 你有可能会瞧见“Convergence failure in HSPICE”, 这存在着节点电压没有达成收敛的状况。实现一站式解决进程的方式为, 于网表之中添加 .options post=2操作, 在完成 aforesaid 那一步之后, 点击 Simulation – Options – Convergence选项, 将 gmindc 的数值由 1e-12 修改为 1e-9, 完成上述调整之后再次运行, 如此一来即可达成收敛的效果。如若仍然不可以, 于网表之中手动去添加, 添加内容为.nodeset V(clock)=0.5。
混合信号设计怎么选
, Cadence于此处所具备的优势乃是Virtuoso ADE Assembler , 于Launch – ADE Assembler当中 , 你能够同步运行数字方面以及模拟部分的仿真。操作的实施途径是, Tests这个选项之下进行Create操作, 之后开展Test此项活动, 接着在Setup之中去选用ams模式来进行相关设置。其中关键的参数是, 将数字部分的逻辑阈值设定为0.5乘以VDD的值, 举例来说, 要是VDD的值为1.8V的话, 那阈值就要设定为0.9V。
菜鸟需防踩坑, 出现这样的情况, 报错为“AMS simulation fails with interface resolution”, 其缘由在于数模接口未被定义。
将仿真切换至 Synopsys 的 VCS 与 Custom Compiler 共同进行, 其操作存在一定程度的繁杂程度。于 VCS 当中撰写完毕 Verilog 代码, 随后在 Custom Compiler 里构建一个 ams 顶层单元格。重中之重的这一步是, 要去生成网表, 点击Create – Netlist – Mixed Signal这条选项路径, 从中挑选VCS当作数字装置的运作核心。要是项目当中数字逻辑多过50万门, 那么Synopsys方案会更快速, 这是由于VCS的编译效率比Cadence的IUS高出30%。
要避开新手常遇到的坑, 其中一个常见的问题是出现了“Mixed – signal netlist mismatch”这种情况。而导致于此的核心原因在于, 对于Verilog模块而言, 其端口名与模拟cell并不一致。速决办法为: 于VCS的compile.log之中搜寻mismatch, 寻找到进行报错的端口后, 回到Custom Compiler里重新命名。操作路径是: Edit – Hierarchical – 来Rename Port。
有着这样一套方法, 它适合大多数项目, 这些项目是基于FinFET工艺节点的, 像7nm工艺节点的设计, 还有5nm工艺节点的设计。不过呢, 要是你的项目乃是0.18um或者0.35um的那种老工艺,Cadence Virtuoso的成熟PDK支持更为全面, 而Synopsys在老工艺方面的库文件反倒更少。替代方案相当直白: 老工艺直接采用Cadence全套, 不去折腾Synopsys。
微信扫一扫
还没有评论呢,快来抢沙发~