在芯片设计的流程当中,Skill脚本的定制,身为提升Cadence工具使用效率的关键举措。相当多的工程师,对于Skill语言,呈现出既熟悉又陌生的状况,熟悉源于天天于命令行里……
在芯片设计的流程当中,Skill脚本的定制,身为提升Cadence工具使用效率的关键举措。相当多的工程师,对于Skill语言,呈现出既熟悉又陌生的状况,熟悉源于天天于命令行里进行调用,陌生在于不清楚怎样依据自身需求对脚本予以修改或者编写。事实上,掌握Skill脚本定制,能够协助你将大量重复性、机械性的操作予以自动化,把精力投放至更富创造性的工作里头。
如何快速入门Skill脚本编写
走入门道的Skill脚本,实际上并非如预想那般困难。我的提议是,起始于录制环节,借助Cadence自身所带的Log功能,将你手动开展操作的进程记录下来,随后去查看生产出来的Skill代码。通过如此方式,你能够迅速领会基本函数的对应关联。紧接着要寻觅一个简易的实例,像是对某个CDF参数作出修改,亲自动手撰写几行代码并使其运行成功。关键之处在于要明白Skill的基本语法架构,它与C语言颇为相似,倘若具备基础,上手速度会很快。最为重要的是一边学习一边实践,切莫仅仅局限于看书。
Skill脚本能自动实现哪些版图操作
于实际项目里头,Skill脚本具备的自动化能力相当强大,像金属走线的自动重绕,过孔的批量阵列添加,MIM电容的自动生成,这些均可借由定制脚本达成,我曾目睹有的团队撰写出能依据原理图网表自动辅助布局的脚本,将器件依照模块分组摆放妥当且条理清晰,更有甚者,像是自动查验版图里有无断开的线头,或者自动为特定网络添加上shielding,只要能够明晰逻辑步骤,Skill差不多能够协助你完成所有重复性的图形编辑工作,助力达成相应任务达成,促进工作高效完成。
定制脚本时最容易踩的坑有哪些
跟据我多年累积的经验而言,针对于新手来讲实施定制式脚本案情极容易碰到的状况总共存在三种。其一为坐标进行了计算却并不精准有效且并未将当下格点所设定的内容纳入全盘考量范畴之内,从而触发了致使所生成的图形产生位置偏移的后果。其二为并未施行针对错误情况的处置举措,举例而言在开展相关操作之前并未针对当前所选中的究竟是何种对象予以查验,当脚本运行期间一旦遭遇意料之外的状况便会出现程序崩溃的现象。其三为兼容性方向凸显的问题,在以老版本CDB工艺为基础撰写而成的脚本,于新版本OA工艺环境之下却无法运作。所以在撰写脚本期间务必要对各类可能性予以更为周全的思考,增添一些具备判断作用的语句设置,唯有如此这般才能确保脚本具备足够的稳定性与可靠性。
去哪里找现成的Skill脚本参考学习
有关学习资源,除官方文档外,可多去Cadence官方社区以及像EETOP这样的论坛逛逛,其上有诸多热心人所分享的实用脚本。GitHub上也存在一些可供学习的开源Skill项目。然而看他人代码或许会较痛苦,因Skill代码的可读性一般不太好。我的建议是带着问题去找,像若想实现自动打孔,就去搜相关代码,看懂核心算法,而后自己加以改写并整合到自身脚本里。
于你运用Skill脚本期间,所碰到的最令你感到头疼的问题究竟是什么,欢迎于评论区去分享你的经历,要是觉得文章有作用的话可别忘了进行点赞以及转发!
微信扫一扫