本帖最后由 存在感 于 2021-5-21 10:53 编辑
思路应该是这样的,假设有4个单元,分别是3种工艺 A B C。
工艺A 包含单元1,2
工艺B 包含单元3
工艺C 包含单元4
进行你所有要求的结果有一个前提,就是三种工艺DRC rule 上差异不多。
选取能兼容其他两个工艺DRC rule 的工艺作为最终转化的工艺,此用意是减少后期转好后的DRC 修改。如果项目Tapeout 有指定工艺,应先评估跟其他两工艺的兼容问题,如果差异交大的工艺就没必要做转换了(如目标工艺的well min间距 diff 的min 间距 大于需转工艺的尺寸,转换过来后想要修改DRC 几乎全部修改到器件的层,并要移动器件时就没必要转换了)
步骤1 转换
先假设工艺B 为目标工艺同时兼容工艺A C
建立:
layer map A -->B
layer map C -->B
使用 工艺B 的.tf 或pdk 建立3个library: libraryA libraryB libraryC
单元1,2 利用 layer map A -->B 导入libraryA
单元3 导入libraryB
单元4 利用 layer map C -->B 导入libraryC
使用B 工艺验证文件 DRC LVS 对 libraryA libraryC 验证及修改。
步骤2 合并
在libraryB 中建立一个cell (如 all_cell), 调用libraryA 单元 1 2 ,调用libraryB 单元 3, 调用libraryC 单元 4
再建立B 工艺libraryAll
copy libraryB 中的 all_cell 到 libraryAll
copy 时 option 选择 ‘Copy All Views’ ‘Update Instances of Entire Library’ 。
此时 所有器件模块都归到同一个库中libraryAll copy 过程中如果提示相同名字的cell 时 选择自动添加后缀。这样就不会因同名而冲突。
希望对你有帮助
[size=13.3333px]Best Regards,
[size=13.3333px]Thomas
|