一种用于Memory Compiler的netlist生成时进行连线的方法技术

技术编号:13290581 阅读:92 留言:0更新日期:2016-07-09 09:11
本发明专利技术叙述了一种在Memory Compiler的netlist生成时通过读取配置文件来对指定层次路径上的指定端口进行连线的方法。通常当需要在已有的netlist rule基础上增加连线的时,原来的做法是直接去修改相关的生成函数,这样做的缺点是:涉及的生成函数会比较多,改动量大,而且修改的部分难以维护和管理。本发明专利技术针对上面的情况,设计了一种通过配置文件来定义要添加的连线的方法,程序会在正常的拼接完成后,通过读取配置文件中的定义,在指定的层次路径上进行自动连线,并且可以对指定的子电路添加要连线的新端口。

【技术实现步骤摘要】

本专利是一种在MemoryCompiler的netlist生成时通过读取配置文件来对指定层次路径上的指定端口进行连线的方法,属于微电子
中的集成电路设计技术。
技术介绍
在MemoryCompiler的网表生成模块中,通常采用netlistrule来定义对LeafCellCDL的拼接方法,而该rule文件通常是以每一类子电路(subckt)定义一个生成函数的方式实现的。在实际设计rule文件时,经常会出现需要在已有的设计基础上增加连线的情况,原来的做法是直接去修改相关的生成函数,这样做的缺点是:涉及的生成函数会比较多,改动量大,而且修改的部分难以维护和管理。本专利针对上面的情况,设计了一种通过配置文件来定义要添加的连线的方法,程序会在正常的拼接完成后,通过读取配置文件中的定义,在指定的层次路径上进行自动连线,并且可以对指定的子电路添加要连线的新端口。
技术实现思路
通常MemoryCompiler的网表生成模块的基本流程是:1.读取netlistrule。2.读取leafcellCDL。3.根据netlistrule对leafcellCDL进行拼接,在内存中生成层次网表结构。4.输出成CDL网表。本方法是在上述第3,4步之间进行的操作(见图1),具体步骤如下:1.读取配置文件,得到要连线的所有定义。2.对上述每一条定义,检查其合法性,保留合法的定义,对于错误的定义进行报错。3.对每条合法的定义,修改内存中相关子电路的链接关系以及端口列表,并将可能产生连接冲突的情况报警。综上所述,本方法把进行层次连线的操作包装成了一个操作,使用者只需要定义好要连线的层次路径和端口即可,程序还会将定义中的错误和冲突报告出来以便使用者修改。附图说明下面结合附图和实施例对本方法进一步说明。图1为使用了本方法的netlist生成的基本流程。其中虚线部分为本方法增加的部分。图2为要进行连线的一个网表的引用层次。其中A调用B调用C。如果需要增加portTEST及连线,用原有方法,需要修改A,B,C三个拼接函数,在其函数中增加TESTport和连线。图3为用新的方法完成连线和增加port要做的工作。不用修改rule文件中生成函数,只需在配置文件中定义指定的层次路径上要进行的连线,即虚线部分。具体实施方式
技术实现思路
中的几个主要步骤如下:1.读取配置文件,假设其内容为:cells['A']=[['VSS','B;VSS','C;GND']],其含义就是要进行如图2的连线。2.根据运行后的内存中的层次网表结构,检查A->B->C路径是否存在等合法性。3.对要连线的路径上的子电路进行遍历,做相应的修改:a)A中,在调用子单元B时,在最后一位增加连线VSS。b)B中,在调用子单元C时,在其GND端口对应位置增加连线VSS;并且在B的端口列表的最后增加端口VSS。本文档来自技高网
...

【技术保护点】
本专利描述了一种在Memory Compiler的netlist生成时通过读取配置文件来对指定层次路径上的指定端口进行连线的方法,其具有以下特征:无需改变netlist的拼接规则即可实现增加连线,并且可以在指定的层次路径中的单元上添加指定port。

【技术特征摘要】
1.本专利描述了一种在MemoryCompiler的netlist生成时通过读取配置文件来对指定层次路径上的指定端口进行连线的方法,...

【专利技术属性】
技术研发人员:虞宙苏毅方伟张静窦江华
申请(专利权)人:北京华大九天软件有限公司中芯国际集成电路制造北京有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1