ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Cadence Virtuoso 高效使用技巧:原理图、版图、仿真与数据管理实战

Cadence Virtuoso 高效使用技巧:原理图、版图、仿真与数据管理实战 1. 为什么这些小技巧值得单独整理画版图、跑仿真、导数据Cadence Virtuoso 这套工具链用久了你会发现一个规律真正拉开效率差距的往往不是谁更懂电路原理而是谁更熟悉那些藏在菜单深处、快捷键背后、甚至需要写两行脚本才能搞定的小操作。我用了七八年 Virtuoso从早期做模拟电路到后来带团队做混合信号项目踩过的坑和攒下的技巧足够写满一个笔记本。这篇文章就是把这些年沉淀下来的实用技巧做一次系统梳理覆盖原理图编辑、版图操作、仿真调试、数据导入导出几个高频场景每个技巧都附带操作路径和背后的逻辑解释。先说说这篇文章适合谁看。如果你刚接触 Virtuoso还在为找不到某个功能菜单而抓狂那这些技巧能帮你少走很多弯路如果你已经用了一段时间但总觉得操作不够顺手那这里面关于快捷键定制、脚本自动化的内容应该能让你眼前一亮如果你是团队里的资深工程师需要给新人做培训那这篇内容可以直接当作参考材料。我不会只告诉你“点哪里”还会解释“为什么这样设计”以及“什么场景下用最合适”这样你遇到类似问题时能举一反三。整篇内容按使用频率和实用程度排序从最基础的界面操作到进阶的脚本技巧都有覆盖。每个技巧我都会标注适用版本范围因为 Virtuoso 不同版本之间菜单位置和功能名称确实有差异尤其是 IC6.1.7 和 ICADV12.3 之后的版本变化比较大。另外需要说明的是文中涉及的所有操作都基于合法合规的工程实践场景不涉及任何违规用途。2. 原理图编辑阶段的效率技巧2.1 快速调整字体大小与显示比例Virtuoso 默认的字体大小在 1080P 屏幕上还算能看但一旦换到 2K 或 4K 显示器那些细小的标注文字简直是在考验视力。很多人第一反应是去调系统缩放但那样会导致整个界面模糊。正确的做法是在 Virtuoso 内部调整。具体操作路径是在 CIW 窗口输入hiSetFont(label 12)这样的命令其中label是字体类别12是字号。常用的字体类别包括label标注文字、text普通文本、fixed等宽字体适合代码显示。如果你想让这个设置永久生效可以把它写进.cdsinit文件里这样每次启动都会自动加载。我实测下来在 27 寸 4K 显示器上把 label 设为 14、text 设为 13 是比较舒服的组合。但要注意字体调大之后原理图里的标注可能会互相重叠这时候需要配合调整标注的偏移量。在 Virtuoso 里可以用schSetEditorOption来批量调整不过更简单的办法是选中所有标注然后用Edit Move配合Snap功能统一微调位置。注意修改字体后如果发现某些文字显示不全检查一下hiSetFont的第二个参数是否超过了该字体类别的最大限制。不同版本的 Virtuoso 对字号上限有不同的约束IC6.1.8 之后一般支持到 20 左右。2.2 快捷键定制把常用操作压缩到一次按键Virtuoso 自带了一套快捷键但说实话默认的绑定逻辑有些反直觉。比如q是查看属性e是进入下一层这些还算好用但像创建连线、放置器件这些高频操作反而没有顺手的快捷键。我的做法是把自己最常用的二十来个操作全部重新绑定。绑定快捷键有两种方式。一种是在 CIW 里直接输入hiSetBindKey(Layout KeyF2 hiZoomIn())这样的命令另一种是写进.cdsinit文件实现永久生效。推荐后者因为一旦重装或者换机器直接拷贝配置文件就行。下面这张表是我个人常用的快捷键绑定方案供参考功能默认快捷键我的绑定使用场景创建连线无w原理图连线放置器件无i调用器件移动对象mm保持默认复制对象cc保持默认删除对象DeleteDelete保持默认查看属性qq保持默认进入下一层ee保持默认返回上一层CtrleCtrle保持默认全屏适配无F4快速查看全图保存CtrlsCtrls保持默认绑定的时候有个小技巧尽量把功能相近的操作放在相邻按键上。比如我把w设为连线、e设为进入下一层、r设为旋转这样右手在键盘上的移动范围最小。另外Shift和Ctrl组合键要留给那些不常用但重要的操作避免误触。2.3 快速画原理图封装的三个关键步骤画原理图封装symbol是每个模拟工程师都逃不掉的工作。很多人习惯手动一根一根画引脚效率极低。其实 Virtuoso 提供了从原理图自动生成 symbol 的功能只是藏得比较深。第一步确保你的原理图里所有引脚都用了pin类型的标注而不是普通的label。这个区别很关键因为自动生成功能只识别pin。检查方法是选中标注后按q看属性里的Type字段是不是pin。第二步在原理图编辑窗口选择Create Cellview From Cellview然后在弹出的对话框里选择Symbol作为目标视图。这时候 Virtuoso 会自动根据原理图的输入输出引脚生成一个矩形框和对应的引脚。第三步手动调整生成结果。自动生成的 symbol 通常比较丑引脚排列也不一定合理。这时候用m移动引脚位置用Edit Stretch调整矩形框大小。我一般会把电源和地引脚放在顶部和底部信号引脚按功能分组放在左右两侧这样可读性最好。实操心得自动生成 symbol 之前先在原理图里把引脚按功能分组排列好这样生成的 symbol 引脚顺序也会更合理。另外如果原理图里有总线bus自动生成功能会把总线展开成单根引脚这时候需要手动改回总线形式。2.4 利用脚本批量修改器件参数做 corner 仿真或者参数扫描的时候经常需要批量修改一批器件的参数。手动一个个改不仅慢还容易出错。这时候可以用 Virtuoso 的 SKILL 脚本批量处理。比如要把某个 cell 里所有 NMOS 的沟道长度从 0.18u 改成 0.15u可以这样写foreach(inst cv~instances when(inst~cellName nmos inst~l 0.15u ) )这段代码的意思是遍历当前 cellview 的所有实例找到 cellName 为nmos的实例把它的l属性改成0.15u。实际使用的时候需要根据你的 PDK 调整 cellName 和参数名。更复杂的场景比如按条件修改可以加上if判断。比如只修改宽度大于 10u 的管子foreach(inst cv~instances when(inst~cellName nmos inst~w 10u inst~w 5u ) )脚本执行方式是在 CIW 窗口直接粘贴运行或者存成.il文件用load命令加载。建议先在测试 cell 上验证脚本逻辑确认无误后再在正式项目里使用。3. 版图操作中的隐藏功能3.1 快速定位管子工作区域仿真跑完之后经常需要确认某个管子到底工作在饱和区还是线性区。常规做法是打开波形看vds和vdsat的关系但这样效率很低。其实 Virtuoso 的 ADE 里有个更直接的方法。在 ADE L 或 ADE XL 的结果窗口里选中管子对应的直流工作点参数然后右键选择Annotate DC Operating Points。这样在原理图上会直接显示每个管子的工作区域饱和区标sat线性区标lin截止区标off。这个功能在调试偏置电路的时候特别好用一眼就能看出哪个管子偏了。如果用的是 ADE Assembler还可以把工作区域信息导出成表格。在Results Print DC Operating Points里选择输出格式为 CSV然后用 Excel 打开按工作区域排序快速找出所有不在饱和区的管子。注意这个功能依赖 PDK 里对工作点参数的定义有些工艺库可能没有完整定义region参数。如果发现标注不显示检查一下模型文件里有没有region这个 output 参数。3.2 版图对称性检查的自动化方法做差分对或者电流镜的时候版图对称性直接影响匹配精度。手动检查对称性既费时又容易漏。Virtuoso 的 Layout Editor 里有个Symmetry Check功能但很多人不知道。操作路径是Tools Symmetry Check然后在弹出的对话框里选择对称轴。Virtuoso 会自动检查对称轴两侧的图形是否镜像匹配不匹配的地方会用高亮标出来。这个功能在完成差分对版图后跑一遍能快速发现遗漏的匹配问题。更进阶的用法是结合Markers功能。在Symmetry Check对话框里勾选Create Markers检查结果会生成一组 marker直接定位到不对称的位置。双击 marker 就能跳转到对应坐标省去了手动查找的时间。我一般会在以下几个时间点跑对称性检查完成差分对版图后、完成电流镜版图后、完成整个模块的布局后。每次检查大概花几十秒但能避免后期发现匹配问题导致的大改。3.3 版图与原理图一致性检查LVS的加速技巧LVS 是版图验证的必经步骤但跑一次大模块的 LVS 可能要几十分钟甚至几个小时。有几个技巧可以显著缩短这个时间。第一个技巧是分层跑 LVS。不要一上来就跑顶层先从最小的子模块开始逐层往上验证。这样一旦发现问题定位范围小修改后重新跑的时间也短。我通常会把模块分成三到四层每层单独跑 LVS全部通过后再跑顶层。第二个技巧是合理设置Compare选项。在 LVS 对话框的Comparison标签页里把Ignore选项里不需要检查的项目勾上。比如有些项目不关心寄生参数就可以把Parasitic相关的检查关掉。但要注意关掉的检查项要在最终验证时重新打开避免遗漏。第三个技巧是用Run in Background模式。在 LVS 对话框里勾选Run in Background这样 LVS 在后台跑的时候你可以继续做其他操作。虽然总时间没变但至少不用干等着。下面这张表总结了不同规模模块的 LVS 参考时间基于我用的服务器配置32 核128G 内存模块规模器件数量参考时间优化后时间小模块1002-5 分钟1-2 分钟中等模块100-100010-30 分钟5-15 分钟大模块1000-50001-3 小时30 分钟-1.5 小时顶层50003 小时以上1.5-2 小时3.4 快速调整版图图层显示版图里图层多了之后显示管理是个大问题。全部显示太乱全部隐藏又找不到东西。Virtuoso 的Layer Selection窗口快捷键F5可以快速切换图层可见性但默认的图层列表很长找起来费劲。我的做法是创建几套常用的图层显示方案存成Layer Set。比如“只看金属层”、“只看有源区”、“只看所有层”三套方案用的时候一键切换。创建方法是在Layer Selection窗口里调整好图层可见性然后点File Save As存成.lay文件。下次要用的时候File Load加载就行。更高效的做法是把常用的 Layer Set 绑定到快捷键上。在.cdsinit里加上hiSetBindKey(Layout KeyF6 hiLoadLayerSet(\metal_only.lay\)) hiSetBindKey(Layout KeyF7 hiLoadLayerSet(\active_only.lay\)) hiSetBindKey(Layout KeyF8 hiLoadLayerSet(\all_layers.lay\))这样按 F6 只看金属F7 只看有源区F8 恢复全部显示切换效率提升非常明显。4. 仿真调试中的实用技巧4.1 瞬态仿真不收敛的排查思路“瞬态仿真不收敛”大概是每个模拟工程师都遇到过的噩梦。Virtuoso 报的错误信息通常很模糊只告诉你某个时间点不收敛但不告诉你为什么。经过多次踩坑我总结了一套排查流程。第一步检查初始条件。在Simulation Options DC里把Initial Condition设为Node Set或者Converge。Node Set会尝试用节点电压作为初始值Converge会强制收敛。这两个选项能解决大部分因为初始状态不合理导致的不收敛。第二步放宽收敛精度。在Simulation Options Analog里把Rel Tol从默认的1e-3放宽到1e-2Abs Tol从1e-12放宽到1e-9。精度放宽后如果收敛了说明是数值精度问题可以逐步收紧精度找到临界值。第三步检查电路里有没有理想元件。理想电压源直接并联、理想开关瞬间切换、理想运放没有压摆率限制这些都会导致数值计算困难。解决办法是在关键位置串联小电阻比如 1mΩ或者并联小电容比如 1fF给仿真器一个缓冲。第四步分段仿真。把整个仿真时间切成几段先跑前 10%收敛后再跑 10%-20%以此类推。这样能定位到具体哪个时间段出问题缩小排查范围。下面这张表是我整理的常见不收敛原因和对应解决方案现象可能原因解决方案一开始就不收敛初始条件不合理设置 Node Set 或 Converge中途某个时间点不收敛电路状态突变检查开关、时钟边沿周期性不收敛振荡或反馈环路检查环路稳定性随机不收敛数值精度问题放宽 Rel Tol 和 Abs Tol大电路不收敛矩阵条件数差分段仿真或增加迭代次数4.2 参数扫描的高效设置方法参数扫描是模拟设计的日常操作但 ADE L 的扫描设置界面用起来不太顺手。几个提高效率的技巧。第一个技巧是用变量而不是具体数值。在原理图里把要扫描的参数设成变量比如w而不是10u然后在 ADE 里对变量做扫描。这样修改扫描范围的时候不用改原理图直接在 ADE 里改就行。第二个技巧是用Parametric Analysis的Design Variable功能做多参数扫描。比如同时扫描w和l生成一个二维的参数矩阵。设置方法是在Parametric Analysis窗口里添加两个Design Variable分别设置扫描范围和步长。跑完之后结果会以二维表格形式呈现方便找最优组合。第三个技巧是用Corners功能做工艺角扫描。在 ADE XL 里创建 corner 定义文件把 tt、ff、ss、fs、sf 五个工艺角都加进去一次跑完所有 corner。corner 文件可以复用下次做类似电路的时候直接加载就行。实操心得参数扫描的步长不要设得太细先用粗步长找到大致范围再用细步长精确定位。比如扫描w从 1u 到 20u先用 2u 步长跑一遍找到最优区间在 8u-12u再用 0.5u 步长细扫。这样能节省大量仿真时间。4.3 仿真结果的后处理技巧仿真跑完只是第一步从波形里提取有用信息才是关键。Virtuoso 的Calculator和Waveform工具功能很强但很多人只用到了皮毛。提取上升时间、下降时间、过冲、建立时间这些常规参数可以用Calculator里的riseTime、fallTime、overshoot、settlingTime函数。用法是在Calculator窗口里选中波形然后从函数列表里选对应的函数设置参考电平和百分比阈值点Evaluate就能得到结果。做 FFT 分析的时候Calculator里的dft函数比Waveform窗口的 FFT 功能更灵活。可以设置窗函数类型Hanning、Hamming、Blackman 等、采样点数、频率范围。做 ADC 的 SNR、SFDR 分析时我一般用dft函数配合db20函数先做 FFT 再转 dB最后用integ函数计算噪声功率。批量处理多个仿真结果的时候可以用Ocean脚本。比如要提取 100 个 corner 的某个参数手动一个个点太慢写个 Ocean 脚本自动遍历所有结果目录提取参数并输出到 CSV 文件。Ocean 脚本的基本结构是openResults(simulation_directory) selectResult(dc) vout v(/out) gain deriv(vout) printf(Gain: %g\n gain) closeResults()这段脚本打开仿真结果目录选择 DC 分析结果提取输出电压并计算增益最后打印结果。实际使用的时候需要根据你的仿真设置调整selectResult的参数和信号名称。4.4 仿真速度优化的几个关键设置仿真跑得慢是常态但有些慢是可以避免的。以下几个设置能显著提升仿真速度。第一个是Multi-Threading。在Simulation Options Analog里把Number of Threads设成 CPU 核心数的一半左右。设太多反而会因为线程调度开销导致速度下降。我一般在 32 核服务器上设 16 线程速度提升大概 3-5 倍。第二个是Accuracy设置。在Simulation Options Analog里把Method从gear2改成trapOrder从2改成1。这样精度会略有下降但速度能提升 2-3 倍。适合在前期探索阶段使用最终验证时再改回高精度设置。第三个是Save Options。默认情况下 Virtuoso 会保存所有节点的所有时刻数据数据量巨大。在Simulation Options Save里把Save模式改成Selected只保存你关心的节点。这样能减少 80% 以上的数据量后处理速度也会快很多。下面这张表对比了不同设置组合下的仿真速度基于一个包含 500 个管子的运放电路设置组合仿真时间精度适用场景默认设置45 分钟高最终验证多线程 默认精度12 分钟高常规验证多线程 trap 方法5 分钟中前期探索多线程 trap 选择性保存3 分钟中快速迭代5. 数据导入导出与跨工具协作5.1 CDL 文件导入的完整流程从其他工具或者从数字后端拿到的网表通常是 CDL 格式导入 Virtuoso 做模拟仿真需要几个步骤。很多人卡在导入后器件识别不了其实问题出在器件映射上。第一步准备 CDL 文件。确保文件里的器件名称和 PDK 里的 cell 名称对应。比如 CDL 里写的是nmos_rfPDK 里叫nch_rf那就需要做名称映射。映射文件是一个简单的文本文件格式是CDL名称 PDK名称每行一对。第二步在 Virtuoso 里选择File Import CDL。在弹出的对话框里选择 CDL 文件路径和映射文件路径。Import Mode选Flat还是Hierarchical取决于你的需求一般选Hierarchical保留层次结构。第三步检查导入结果。导入完成后 Virtuoso 会生成一个原理图但器件可能显示为空白框。这时候按q查看器件属性确认cellName是否正确映射到了 PDK 里的 cell。如果有问题检查映射文件里的名称是否和 PDK 完全一致包括大小写。注意CDL 导入对格式要求比较严格注释符号、续行符、参数分隔符都要符合规范。如果导入报错先用文本编辑器检查 CDL 文件的格式确保没有非法字符。5.2 导出 BOM 表的正确姿势做 PCB 设计或者物料采购的时候需要从原理图导出 BOM 表。Virtuoso 的 BOM 导出功能在Tools Bill of Materials里但默认导出的格式不太友好需要做一些配置。在 BOM 对话框里Output Format选CSV方便后续处理。Fields里勾选你需要的列一般包括RefDes位号、Value值、Part Number料号、Quantity数量。Group By选Value或者Part Number这样相同值的器件会合并成一行数量自动累加。导出之后用 Excel 打开通常需要做几步清理删除空行、按位号排序、检查有没有重复项。我一般会再加一列Comment手动填写一些备注信息比如“关键器件不可替代”或者“可替代型号XXX”。如果项目里用了层次化设计BOM 导出的时候要注意勾选Hierarchical选项否则只会导出当前层的器件。另外如果同一个器件在不同层里用了不同的位号前缀导出后需要手动统一避免采购时混淆。5.3 跨工具数据交换的注意事项Virtuoso 和 Allegro 之间的数据交换是混合信号设计的常见需求。从 Virtuoso 导出网表给 Allegro 做 PCB 设计或者从 Allegro 导入封装信息回 Virtuoso 做协同仿真都有一些容易踩的坑。从 Virtuoso 导出网表时Export Netlist对话框里的Netlist Format要选Allegro或者PCB。导出的网表里会包含器件连接关系和封装信息。封装信息需要和 Allegro 里的封装库对应如果对不上Allegro 导入后会报错。从 Allegro 导入封装信息回 Virtuoso 时通常是为了做封装寄生参数的协同仿真。导入的封装模型一般是 S 参数或者 SPICE 子电路形式。在 Virtuoso 里用File Import SPICE导入然后在原理图里用nport或者subckt调用。跨工具协作最关键的是版本一致性。Virtuoso 和 Allegro 的版本最好匹配比如 Virtuoso IC6.1.8 配 Allegro 17.4。版本不匹配可能导致网表格式不兼容或者封装库读取失败。如果确实需要跨版本协作建议先用一个小设计做验证确认流程通畅后再做正式项目。6. 常见问题速查与避坑指南6.1 仿真器件未定义的排查方法“器件未定义”是 Virtuoso 仿真报错里出现频率最高的之一。报错信息通常是Cannot find model for device XXX或者Undefined instance XXX。排查思路如下。先检查模型库路径。在 ADE 的Setup Model Libraries里确认模型文件路径是否正确文件是否存在。如果路径里有变量比如$PDK_ROOT确认变量是否已经定义。可以在 CIW 里输入getShellEnvVar(PDK_ROOT)查看变量值。再检查器件名称匹配。原理图里的器件cellName必须和模型文件里的.model名称一致。比如原理图里用的是nch模型文件里写的是nmos那就匹配不上。解决办法是在模型文件里加一行.model nch nmos做别名或者在原理图里把器件换成nmos。最后检查模型文件是否被正确加载。在 ADE 的仿真日志里搜索model关键字看模型文件有没有被读取。如果日志里没有模型加载记录说明模型库路径设置有问题。另外有些 PDK 的模型文件需要额外的.scs或者.lib文件配合确认这些文件也在模型库列表里。6.2 版图编辑中的常见误操作与恢复版图编辑最怕的就是误操作尤其是删除了不该删的东西还没保存。Virtuoso 提供了几层恢复机制用好了能避免很多悲剧。第一层是Undo。Virtuoso 默认支持多级撤销快捷键是Ctrlz。但要注意Undo只能撤销当前编辑会话里的操作如果已经保存并关闭了 cellviewUndo就无效了。第二层是Undo的历史记录。在Edit Undo History里可以看到最近的操作记录选择某一步直接跳回去。这个功能在做了很多步操作后想回到某个中间状态时特别有用。第三层是版本备份。Virtuoso 在保存 cellview 的时候会自动生成备份文件文件名通常是cellview.oa.bak或者类似格式。如果误操作后保存了可以从备份文件恢复。备份文件的位置在 cellview 所在目录下用ls -la能看到。最保险的做法是养成定期Save As的习惯。在做重大修改之前先Save As一个新版本比如opamp_v1、opamp_v2。这样即使改坏了也能回到之前的版本。我一般会在完成一个阶段性工作后做一次Save As版本号递增。6.3 字体显示异常的快速修复字体显示异常通常表现为文字变成方框、文字重叠、文字太小看不清。不同原因对应不同的修复方法。如果是文字变成方框说明系统缺少对应的字体。Virtuoso 默认使用Fixed和Courier字体如果系统里没有就会显示方框。解决办法是在系统里安装这些字体或者在 Virtuoso 里换成系统已有的字体。在 CIW 里输入hiSetFont(label 12 Arial)可以把 label 字体换成 Arial。如果是文字重叠说明字体太大或者标注位置太密。解决办法是调小字体或者调整标注位置。批量调整标注位置可以用Edit Move配合Snap功能或者用 SKILL 脚本批量偏移。如果是文字太小参考前面 2.1 节的字体调整方法。但要注意字体调大后可能会超出图形边界需要同步调整图形大小或者标注位置。实操心得在项目开始之前就把字体设置好写进.cdsinit文件避免做到一半再调整。另外如果团队协作把字体配置文件放在共享目录里确保所有人的显示效果一致。6.4 快捷键冲突的解决方法自定义快捷键多了之后难免会和 Virtuoso 默认快捷键冲突。冲突的表现是按了快捷键没反应或者触发了错误的功能。排查方法是在 CIW 里输入hiGetBindKey(Layout Keyw)查看w键当前绑定的是什么功能。如果显示的是你自定义的功能说明绑定成功如果显示的是默认功能或者其他功能说明有冲突。解决冲突有两种方式。一种是换一个不冲突的按键另一种是覆盖默认绑定。覆盖的方法是先hiUnsetBindKey解除默认绑定再hiSetBindKey设置新绑定。比如hiUnsetBindKey(Layout Keyw) hiSetBindKey(Layout Keyw hiCreateWire())这样就把w键从默认功能改成了创建连线。但要注意有些默认快捷键是系统级绑定的解除后可能影响其他功能修改前最好确认一下。我一般会把自定义快捷键集中写在一个.il文件里启动时用load加载。这样管理起来方便也便于在不同机器之间迁移。文件里按功能分组比如原理图快捷键一组、版图快捷键一组、仿真快捷键一组每组前面加注释说明。7. 一些提高日常效率的零碎经验前面按模块整理了主要技巧最后再补充一些零碎但实用的经验都是日常工作中积累下来的。关于文件管理我习惯在项目目录下建几个子目录schematic放原理图、layout放版图、simulation放仿真配置和结果、script放 SKILL 和 Ocean 脚本、doc放设计文档。这样找东西的时候不用满硬盘搜。另外仿真结果目录用日期命名比如sim_20240115_gain方便追溯。关于版本控制Virtuoso 的 cellview 是二进制格式用 Git 管理不太方便。我的做法是定期把整个项目目录打包备份文件名带日期和版本号。另外重要的 cellview 用Save As存多个版本比如opamp_v1、opamp_v2、opamp_final。虽然占空间但关键时刻能救命。关于团队协作如果多人同时编辑同一个 cellview一定要用Design Sync或者类似的版本管理工具。我见过太多因为同时编辑导致覆盖的案例。另外团队里最好统一快捷键配置和字体设置避免每个人看到的界面不一样导致沟通困难。关于学习资源Virtuoso 自带的帮助文档其实很全按F1就能打开。但文档是英文的而且组织方式不太友好。我的建议是遇到问题先搜文档搜不到再搜社区。社区里有很多实战经验是文档里没有的。另外Cadence 的官方培训视频质量不错有条件的话可以看看。关于脚本学习SKILL 语言入门不难但精通需要时间。我的建议是从简单的批量操作开始比如批量修改参数、批量导出数据。慢慢积累遇到重复性工作就想想能不能用脚本自动化。时间长了你会发现自己写脚本的速度比手动操作快十倍不止。最后说一个心态上的经验。Virtuoso 这套工具很庞大没有人能掌握所有功能。遇到不会的操作很正常关键是知道去哪里找答案。我用了这么多年到现在还会时不时发现新功能。保持好奇心多尝试菜单里的选项多看看别人怎么操作效率自然就上去了。
返回列表