Cadence和Synopsys哪个好用?EDA工具对比实测与操作指南

发布于 更新于
2,221
详情介绍
智行者IC社区持续更新技术干货、实操教程、案例分享与常见问题解答,为学习者提供实用的学习参考资料。

我实际测过Cadence Virtuoso IC617以及Synopsys IC Compiler 2020,遭遇过工具混合使用期间数据转换出差错的情况,也碰到过库文件不兼容的情况。

操作前务必检查PDK库版本

不少新手一开始就急忙着手建工程,然而在画版图时却发觉管子调不出来。首要的实操步骤是确认PDK库与工具的版本相匹配。开启Cadence Virtuoso,在CIW窗口执行load”check_pdk.il”脚本,查看返回的版本号。要是PDK是2022年的,而工具是2018年的,极有可能报invalid technology file错误。

【新手避坑】

常见出现的报错情况为, Error get_cellView: file not found。其核心导致原因在于, PDK库当中的cell view版本处于过低的情况, Virtuoso新版本在进行读取操作时默认采用oa格式,而旧版本所采用的则是cdb格式。极速解决之道:在Library Manager内选定库,点击Edit,再点击Library Path,把techLibFile路径指向你已下载好的正确版本,别手动改名,直接复制路径粘贴。

紧接着开展第二个步骤,将数字网表导入至Virtuoso,在IC617的File -> Import -> Verilog里,挑选你综合后的.v文件,在Target Library Name填上你建好的库名。此处存在一个关键参数,那就是默认的Time Scale为1ns/1ps。然而要是你所进行的是高速RF设计,那就必须将其改换为1ps/1fs。不然的话,后续仿真的时序将会全部混乱。

【新手避坑】

导入的时候会报出 WARNING (LBR-4) 这样的提示,提示内容为 No view named ‘symbol’ found这种情况,原因在于你所导入的模块缺少symbol视图,解决的办法是,返回Library Manager,用右键点击该cell这一操作动作 ->;进行New -> View的步骤,选择symbol,然后从其他已经存在的symbol那里拷贝粘贴端口就行。千万不要重新去画,否则特别容易出现对不上pin顺序的情况。

关键参数推荐值与方案对比

排在第三位的步骤是去设定仿真环境方面的参数,在Analog Design Environment这个环境里,点击Setup之后再点击Simulator,从中挑选spectre。原因是, liberal模式,其速度快,然而会遗漏毛刺, moderate模式,处于低频时情况尚可,可到GHz级别,就直接报convergence failure,唯有conservative模式,能够于速度与精度之间达成平衡,使得后续LVS不会报误判。

在这个时候,将会碰到一个呈现高频状态且完整无缺的报错内容: Error: The simulator has reached a state of convergence failure. The last accepted point is at time=1.2345e-09。完成一整套完整且无其他途径仅一站即可搞定的解决流程:先的第一步,在ADE所对应的Options里的Analog那里,将Max Iterations这个项目从原本的50变更成为200;接着的第二步,把reltol改变成从1e – 3直至1e – 6;最后的第三步,在Simulation对应的Netlist and Run之前,要先凭借手动方式去删除掉~/simulation这个目录下的旧run目录。三步走完,基本能跑通。

最终对两组实操方案对比,方案A:全然采用Cadence工具链,自原理图直至版图,其优点在于工艺厂PDK支持最为出色、数据无需转换,不足之处是在开展数模混合时后端流程显得笨重,方案B:数字部分运用Synopsys的Design Compiler + IC Compiler,模拟部分采用Cadence,在交接时借助Milkyway库来实施数据转换。适合数字模块占比超70%项目的是方案B,适合纯模拟或者小规模混合信号的是方案A。要是新手仅进行模拟项目,切勿触碰方案B,因为数据转换一次就会丢失好些网表连接,排查时会让你对人生产生怀疑。

此工具所运用之对比方法,在纯数字后端项目而言并不适用,原因在于你全然无须开启Virtuoso的模拟仿真环境。其替代方案是直接运用Synopsys的VCS去运行功能验证,再与PrimeTime协同开展时序分析,整个流程连贯一体,省去了跨工具数据转换所带来的麻烦。

常见问题(FAQ)

画版图时管子调不出来、报技术文件无效,多半是什么问题?
多半是PDK库与工具版本不匹配,比如2022年的PDK配2018年的工具就会报无效技术文件。先在CIW窗口加载检查脚本查看返回的版本号,确认两者匹配。
仿真总是报收敛失败,有哪些参数需要调整?
在模拟设计环境里把仿真器选为spectre,仿真模式用conservative以兼顾速度与精度。再把最大迭代次数从50改为200,相对容差从1e-3调到1e-6,并手动删除旧的仿真运行目录后重跑。
数字和模拟混合的项目,工具链该怎么选?
数字模块占比超过70%的项目适合数字部分用综合与布局布线、模拟部分用Cadence、交接时借库转换数据。纯模拟或小规模混合信号则全套用Cadence更省事。
0 / 600
0 讨论
热门最新
总结
暂无总结