custom compiler Design Retargeting/Migration flow
工作中一定会遇到design porting的问题,当项目需要从一个process 切换到另一个process时候. Schematic 和layer 如何来快速完成迁移呢?同一foundry下的不同process 或许pcell 对应的cdf 还可以map上,通过replace 方式完成对应器件替换。但是对于不同foundry以及不同的process 之间迁移就不是那么容易了,device model name,cdf ,limit size,symbol结构等都不一致。这时候传统手动方式就不是那么容易做到了。
这里介绍下custom compiler Design Retargeting Flow 这也是个隐藏的gift:
l对于schematic design,可以根据各自的对应symbol完整porting过去,而不会因为pcell symbol 不一致导致连接上问题。
l对于layer design,这个flow只会将对应的instance/pcells 迁移过来。其实我们也知道对应不同工艺版图porting是没有多少意义的,因为pcell的形状大小,以及对应drc要求都不同,porting过来也会是一堆的问题。相同的工艺节点,可能还是有些用处。
先看这个tool在哪里:
上图中画出的两份pdf是flow的介绍与step by step的使用方
法。
Configuring the setup tab:
主要设置design 信息,reference libraries,mapping 等信息,mapping可以在后面两个tab中详细设置。
Mapping Classes 对于相似类型的devices可以创建group来设置对于parameter mapping的信息。针对group里的device map可以在cell mapping中设置。这里的override target value和condition功能是非常有用的,可以根据不同条件来对应定制的mapping.
Callback option需要注意打开对应callback 会增加migration 的时间。
后面更详细的内容可以查看上面那两份pdf。
下面是我做的case,是一个从平面工艺porting到finfet的case,我们可以看到效果symbol不一致不影响连接正确性,这里因为fin的原因width上是不能完全一致的。从效率与质量上看已经是非常好了。
这个也顺便介绍下custom compiler的Compare Design的功能。可以高亮两份电路的差别。这个功能对应版图工程师来说也是个福利,RD版本迭代改了什么内容可以快速get到,不用通过lvs 去debug。