calibre lvs rule 的更改(添加器件)

大概回顾一下 目前的工作 是更改一版 lvs rule 用来识别我们自己设计的器件,目的是可以替换pdk中的某个器件。

例如我的pdk中给了 A 器件 ,我想用手里的 1 的layout去替换 A的layout ,前提是 1和A 两个器件是有关联的 不能差别太大,要不然没有参考的东西我也没试过。

好啦 进入正题 可能是太闷了 总是想说说废话。

  1. 看A 里面的信息。

习惯使我先看已知的东西,所以create 一个testBench 库 里面调用 A 的cell 做一个schematic 以及layout 先过一遍 lvs 看会报什么。

OK A 器件 过程很顺利 基本上没有问题。

当然了 之前会报

纯属是因为 我懒 没有将label 放到 对应的层上面,

怎么确定label 用的哪层,又打到那层呢? 很简单 他自己生成的layout 时候 会产生label ,以及PIN ,你对应放进版图中 且 Q 一下 就知道用的什么层 打的label 放到哪层了。

比如我这个 label 那么就是 可以看到是 用 MET1 text 层打的 。

后面添加的器件 1 中 也要对应的label 层打。

2.开始了 添加器件 1

目前给我一份 GDS ,我可以生成1 的layout;

这个原始1 器件 cell 保存。

1.避免有错误 我新建一个cell 调用两个 A 的symbol 打Pin ,用这个schematic 生成layout 因为会生成两个 A 的layout 所以我将其中一个A删掉, 换成1 的layout 并添加好label Pin .

2.后面再说怎么改的lvs rule,先说一下页面 简单的东西。

3.修改后好 lvs rule 打开 calibre run lvs 看结果

注意 :会导出两个 A 那么我们需要将其中一个 A 的名字换成 1 的名字。

虚拟连接 连接一下。

剩下的 应该是面积的问题了 ,但是不在我替换的考虑范围内,因为我只想让 lvs 能够识别1 且替代 A 就可以了。

  1. 更改rule

一直不想动手 太多 又简单又麻烦。

首先 将A 1 两个layout 放在一起 ,便于比较

其次打开 LVS rule找到 ERC rule 的地方 可以用ERC 便于我们对比(在 LVS 验证中,ERC 用于补充设计规则检查(DRC),确保电路不仅几何正确,电气上也合理。)

添加两句 :框住的地方

在 lvs rule 找到 A器件的定义

因为1 器件是与A 有联系且准备替换成A 的 所以我将A 器件的层次 与1 器件进行比对,删减更改

更改好后去

为了直观看到我们更改的是否有问题,在下一行加入

copy_xx { copy xx}

接着

run lvs > ERC Results 查看 如果带有 x 说明已经被识别; ✔则是没有被抓到 在进行Highlight

如果直接点击 右键 highlight 则 layout 可能只放大局部

所以要点击 菜单栏上的 Highlight > No View Change

如果抓取正确 那么可以继续按照这个思路进行更改。

相关推荐
柠檬叶子C3 天前
【云计算】利用 LVS 构建集群实现负载均衡 | 集群的概念 | 单服务器性能瓶颈验证例子 | LVS 基础 | LVS 构建负载均衡集群实操步骤
服务器·负载均衡·lvs
源远流长jerry6 天前
DPVS 深度解析:基于 DPDK 的高性能四层负载均衡器
运维·负载均衡·lvs
遇见火星6 天前
LVS+Keepalived+Nginx 高可用架构揭秘
nginx·架构·lvs·keepalived
rain bye bye12 天前
修改 LVS 报错
lvs
小宇的天下15 天前
Calibre nmDRC 高级边缘处理与输出控制(17)
linux·运维·lvs
小宇的天下17 天前
Calibre DESIGNrev DRC/LVS启动和准备文件(10-2)
linux·运维·lvs
yunson_Liu19 天前
EC2创建逻辑卷lvs
lvs
yunson_Liu19 天前
分别从横向和纵向两种方法扩充lvs空间
lvs
yunson_Liu19 天前
彻底删除逻辑卷lvs
lvs
Hui Baby20 天前
LVS+Nginx实现高负载均衡框架(四层负载LVS+七层应用负载Nginx)
nginx·负载均衡·lvs