UDD是什么?在版图中如何使用呢?

电子说

1.2w人已加入

描述

UDD (User Defined Device)即用户自定义的器件,可以生成像pdk lib中提供的device pcell一样参数化可调节器件。UDD给用户提供了GUI平台下的编辑设计pcell的方式。GUI的平台对设计者的脚本能力要求不是很高。UDD还可以提供了一种hierarchy的design,如果想要做一些复杂嵌套结构device也是非常方便的。目前Laker 和custom compiler 工具都有提供UDD这样的功能。

如果有参考的版图那就更简单了,可以直接使用import layout添加大量的Distance就可以满足参数化device的效果。

下面演示个Laker 种udd的使用,做了一个粗糙的电感来演示UDD的使用介于篇幅不展示细节laker的reference.pdf有操作详细解释内容,把下面这个位置做了参数化。

电感器

电感器

我们首先来完成下面cross connect的底层udd cell.

第一步先创建cross connect 必要的参数

电感器

第二步使用Distance的操作把交叉线的相对位置进行参数化

电感器

第三步使用Align的功能把需要对齐的边或中心进行对齐,有些像在版图种直操作一样。

电感器

最后一步把直角走线通过CutCorner的操作倒角成45°走线

电感器

这样cross connect的udd 就完成了。

电感器

下面看怎么生成电感并在电感种使用:

第一步一样生成需要的parameter,这里可以从cross connect的udd 种导入进来再进行进一步添加需要的。编辑窗口种先画出需要用到的layer 与形状,后续操作都是基于这些参考layer 进行运算和拉伸对齐得到。比如下图来控制调用的cross connect的udd 具体放在什么位置,这里通过Distance来控制上边距与左边距。下面那个白色长方形layer是用来后期切断ring的中间运算层使用,最后会remove掉。

电感器

电感器

这里双环是基于上面正方形进行grow 和shrink然后NOT的布尔运算得到生成下图中outR inR两圈。然后再通过白色中间运算层来切掉双环下部的中间位置,方便用cross connect来替换连接。上面单环切口也是使用相同的操作。方便进行电感的输入 输出连接。最后把不相干的中间运算层次进行remove就完成了这个电感udd.

电感器

这里只是简单的示例,如果需要复杂的操作做些复杂的callback.可以接入UDD Procedure script来处理一些操作或运算。

如果有用过udd的对此有些基础的可以尝试尝试如何生成多圈非螺旋的圆形电感

这个是在custom compiler 的UDD Assistant与Laker中UDD界面略微不同:

电感器

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分