基于OPENACCESS的PCell缓存技术介绍
称为PCell「submaster」。所有的预设参数,或是被修改过的参数,都会储存为专属submaster的内容。给PCell赋值时,版图编辑器会运用这些专属参数来评估submasters,将版图写入内存,并在版图编辑器中呈现其版图以供查看或编辑。下次开启版图时,PCell将不得不重新赋值来建立新的版图。试想在拥有成千上万PCell的版图中,这一定会花费很多时间。
但是,如果工具将submasters储存到磁盘(缓存),那么就不需要每次都重新赋值了,可以大幅加速版图绘制时间。此外,每次建立submaster,在赋值PCell之前,工具都会先查看缓存是否含有同样的submaster,然后才建立新的版图。即使具有同样参数的同一PCell已经使用数千次(例如Contact),仍然只需缓存保存一个版图版本到缓存中,从而节省更多时间与磁盘空间。
基于PCELLS的缓存技术实现相互操作性
当没有相互操作性PCells可供选用,或者有庞大、既有的PCells库可供选用时,缓存功能对多重工具设计环境,或在转换到更新工具的过程中,是非常实用的。在这个领域内有两大选择:
ExpressPCells:当今的许多PCells都是以Cadence的专利SKILL脚本撰写语言来撰写的。即使是为了在更新的CadenceOA版本中使用,SKILLPCells也不是一定可以在其他工具看到的,因为并没有自动缓存。为了在其他工具中能够「看见」,CadenceExpressPCells可用来缓存OA数据库中的单元。这使得单元以–只读–的方式让其他非Cadence工具可以看见。
在某些工具,可以看见程序专属参数的属性表,但不可以在其他工具中修改PCells,除非先经过处理成为简单的版图。此外,stretchhandles、auto-abutment回呼(callbacks)在其他工具中是不可见的。(有关PCell功能的详情,请参照SpringSoft网站技术单元中的ASilicon-provenInteroperablePDK一文。)
例如,对于使用非CadenceDRC工具的使用者而言,需要ExpressPCells才能够直接从OA执行DRC。在多工具设计流程中,不同的版图模块有不同的版图编辑器完成,对于组合这些不同的模块,ExpressPCells是一个可行的方案。当然,进一步修改基于Cadence的模块,这些模块需要全部替换,或至少修改PCell实例。这就和典型的SOC流程没有什么不同了(SOC流程中,不同的模块有不同的团队甚至不同的公司设计完成)。
PCellXtreme:Ciranova的PCellXtreme™也能够搭配Cadence环境,就如同ExpressPCells缓存SKILLPCells一样,可以加速开启版图的时间。然而,与ExpressPCells不同的是,PCellXtreme服务除了可以看到缓存的PCell之外,还能够读取和修改PCell参数。PCellXtreme不转换PCell代码或赋值;如果没有第二个工具要读取PCell的参数,PCellXtreme会根据Cadence的SKILLPCell生成版图放进缓存中。所以新版图是可见的并且实时刷新。因此,被其他工具修改的参数可以被所有的工具承认。这种方法需要使用者至少拥有一套授权的Cadence工具,以便赋值SKILLPCells。
但是,需要注意的是PCellXtreme并不能实现回呼(callbacks)。回呼是许多PCell参数的关键元素,因为他们被用来通过输入的参数来计算相对值、逾限值(outofboundsvalues)等等。所以,单纯只有参数传递是不够的。若要实现在非Cadence工具中的回呼功能,对其他工具来说,必须要有与IPLAllianceReferenceflow1.0中定义的TCL回呼完全一样的可相互操作回呼功能,以供其他工具使用。对于Cadence环境,包括IPL库中运行的客户操作PCell,双重回呼是必须的,因此TCL回呼存在更多的互操作环境是值得期待的。这两个回呼只要适当的设置,所有参数的互操作都可以实现。
因为stretchhandles与auto-abutment是随着版图而缓存的OA内容,使用者可以TCL或其他可相互操作的脚本撰写语言来写入对等的stretchhandle与auto-abutment程序,以吻合SKILL功能。移动stretchhandle会导致版图编辑器更新相关的参数、触发相关的回呼。参数变更会导致PCellXtreme产生和缓存修改后的版图,如同前述手工输入的参数变更一般。Auto-abutment也会以同样的方式而实现。
总结
PCell缓存技术是在以OPENACCESS为基础的工具中重复利用原有版图数据的实用做法,为使用者提供更高的相互操作性,远胜过参数化单元的GDSII转换作法。
虽然具备最高相互操作性的解决方案就是使用IPLAlliance的可相互操作PyCells、回呼、CDF与stretchhandle/auto-abutment技术,PCell缓存技术在一个新的OA工具、混合设计环境中对于使用遗留的PCell是一个切实可行的方法;或者单纯以加速既有工具为目的,也是很好的解决方案。
介绍 技术 PCell OPENACCESS 基于 相关文章:
- RS232、RS485和RS422介绍与比较(12-14)
- ARM处理器模式介绍和模式切换(11-28)
- EZ-USB FX2单片机CY7C68013的特性介绍(10-15)
- MCS-51单片机的中央处理器CPU介绍(05-13)
- PIC12F683微控制器实验板介绍(11-10)
- 详细介绍用51单片机解密任何红外遥控器(10-23)