一种基于倒序树扫描线算法的边投影优化方法

文档序号:6471310阅读:491来源:国知局
专利名称:一种基于倒序树扫描线算法的边投影优化方法
技术领域
投影操作是IC CAD工具中层次版图验证中设计规则检查(DRC)中的一种基本操 作。本发明属于IC CAD工具中层次版图验证领域。
背景技术
集成电路(IC)设计的后期包括版图设计和版图验证,而这两项功能是EDA工具中 的重要环节;版图验证是根据版图设计规则,电学规则和原始输入的逻辑关系对版图设计 进行正确性的验证并且可以通过对电路和参数的提取,产生电路模拟的输入文件进行后模 拟,以进一部检查电学性能。 在设计规则检查(DRC)中,需要对多边形或者孤立的边进行处理,其中多边形又 分为需要了解图形全局的信息与只需了解图形局部信息两类。而相对于多边形来说,边是 孤立的,没有图形的概念。因此,边层命令计算过程中,无须保持基于图形封闭性的概念。
在目前的HDRC层次处理中,对于具体命令来说,输入数据分为两种一种中间命 令的输出结果作为后续命令的输入,称之为中间输入数据;一种是对原始版图中的数据进 行投影与逻辑或运算后的结果,称之为原始输入数据。对于中间输入数据,在计算过程中 进行了大量的提升操作,这就使得这些数据的层次与原始输入数据层次结构不一致。因此 要保持两个输入层的数据层次一致,就需要对经过提升的输入层进行投影操作(判断一个 中间输入数据层是否需要投影在具体的命令中进行),对于多边形来说,投影具有封闭性概 念,多边形投影考虑了这个因素,使用组合器进行投影,同时投影的复杂度不仅仅由多边形 中边的数目决定,也要受到多边形所有单元被调用次数的制约。因此多边形投影复杂度为 n*m,其中n是单元中边的数目,m是单元被调用次数。而新型边投影算法无须考虑封闭性概 念,只需要关心边是否投影到一个单元中,连续投影过程中也不需要关心边是Primitiver 边还是Halo边,只须在结果输出的时候拷贝原来边的ILT数据即可。复杂度仅与边的数目 有关,因此复杂度为线形的。本发明根据一条边要么是投影到一个单元中,要么是不能投影 到一个单元中,它原有的ILT数据是不会拆分的,因而设计了一种新的投影方法,且使用该 方法大大降低了复杂度,从而提高效率。

发明内容
本发明所提出的基于倒序树扫描线算法的边投影优化方法把输入层作为是 Layerl,输入层的instance边框作为layer2,在一次处理过程中同时处理not inside edge+inside edge操作,not inside edge的结果保留存到本层单元中,inside edge的结 果投影到下层单元中去。操作投影过程中状态值的计算无须关心边是Primitive边,还是 Halo边,只需要知道当前边的单状态值,而不需要计算出边的每一个分支的状态值,因为对 于一条Halo边,投影的固有特性决定了,一条边要么投影到下层单元中,要么保留在上层 单元中,使得它不需要分离ILT,节省了 ILT分离过程,同时也不需要记录不存在的ILT,以 及其状态,大大节省了过程,从而有效提高效率。
在原有系统多边形投影算法中状态值计算方法如下 a)通过前一条边存在状态和不存在状态的ILT与当前边的halo做逻辑"与"运算
得到当前边的存在状态; 当前边存在状态的ILT = 1)前一条边的存在状态"逻辑与"本边的halo element;
2)前一条边的不存在状态"逻辑与"本边的halo element ;
当前边存在状态的数值=前一条边的状态数值+/-1 b)通过前一条边存在状态和不存在状态的ILT与当前边ILT做逻辑"减"运算得
到当前边不存在的状态; 当前边不存在状态的ILT = 1)前一条边的ILT存在状态"逻辑非"当前边的halo element ;
2)前一条边的非ILT存在状态"逻辑非"当前边的halo element ;
当前边不存在状态的数值=前一条边的状态数值 在本发明所公开的新的投影方法中,考虑到投影时状态值计算的特殊性,针对状 态值计算方式发生了根本性改变,其实现方法如下 边数据中Halo信息由倒序树结构来记录,只是变化了状态值计算的方式。在计 算过程中,不需要区分前向边与当前边是否存在,这是因为在计算过程中,前向边只取属于 instance边框的边,这个边是primitive边,而当前边(可以是截断后生成的边,也可以是 完整的边)要么都是投影到一个单元中,要么不会投影到单元中,不会存在拆分ILT的情 况,因此在计算过程中都可以看成是primitive边,只是在输出过程中拷贝ILT数据即可。 因此计算方式如下 当前边存在状态的数值=前一条边的状态数值+/-1


图l命令序列图
图2Halo边连续投影图 图3扫描线算法状态值计算部分处理流程图
具体实施例方式
如图1所示,描述了规则文件中的用户命令序列与HDC系统对命令调度展开后的 序列,对于用户来说,只需要编写两条命令,即可求出LL1中的与LL2接触,且在LL3里面的 边。根据TOUCH EDGE命令的功能描述,输出LL1中与LL2接触的边是一条完整边,此时在 计算过程中需要对LL1,LL2的边进行大量的提升操作,才能得到完整的LL1满足条件的边。 结果层Tmp再与LL3计算内部边时,由于Tmp是经过大量提升的边,层次结构已经与原来的 层次不一样了,而LL3的层次是保持良好的,因此需要对Tmp进行投影,所以在调度序列中 需要加上一条命令Edge Project命令。 结合一个具体的实例说明基于倒序树扫描线算法的边投影优化方法的计算过程, 操作步骤可以参见图3:第一步,选择输入层作为layerl ,所有单元被调用的instance的边框作为
4layer2。 第二步,采用扫描线算法,选择当前扫描线; 第三步,对当前扫描线上的所有边进行排序,边排序策略是按照先Y大小,后斜率 大小方式进行; 第四步,对排序后的边计算状态值,自底向上逐个计算每条边的状态值,计算过程 中, 1)前向边只取instance边框,这些边为primitive边;当前边可會g为instance边 框,也可能为实际输入边数据。 2)如果当前边是instance边框,那么状态值为1 ;如果当前边是实际输入边,那么
前向边为primitive,当前边状态值在前向边状态值的基础上+/_1。 当前边方向为正当前边存在状态的数值=前一条边的状态数值+1, 当前边方向为负当前边存在状态的数值=前一条边的状态数值-I ; 第五步,重复第四步直到所有当前扫描线上所有边计算完毕,则处理当前扫描线
上的离开边 1)正向边状态值2,负向边状态值为l,则输出到子单元中。输出过程中Halo信息 也需要同时拷贝输出。 2)正向边状态值1,负向边状态值为0,则输出到本单元中。输出过程中Halo信息
也需要同时拷贝输出;与Layer2中边重合的边输出时,则输出到本单元中。 第六步,选择下一条扫描线,如果存在则重复(2) , (3) , (4) , (5)与(6)操作;否则
投影操作结束。 如图2描述了 Halo边连续投影。图中边1是Halo边,只投影到Al单元中,边2 投影到A2单元中,边3投影后是满树,因此规约为primitive边。边1在A单元中继续投 影时,它投影到A中的所有的B单元,因此它的ILT没有发生变化,只须要简单拷贝依次即 可。 本发明完善了层次设计规则检查工具(HDRC)的系统结构,使得原来存在的系统 性问题得到修复的同时,在原有的多边形投影算法基础上进行方法改进,使得新的投影方 法的复杂度从原来的Q(n*m)下降到Q(n)(其中n为单元中的边数目,m为单元被调用次 数),从而提高效率。
权利要求
一种基于倒序树扫描线算法的边投影优化方法,用于边层与图形层之间存在上下层逻辑关系不一致时进行投影操作,具体步骤如下(1)抽取输出层Layer1的instance边框作为输入层Layer2;(2)采用扫描线算法,选择当前扫描线;(3)对当前扫描线上的所有边进行排序,边排序策略是按照先Y大小,后斜率大小方式进行排序;(4)扫描线上自底向上逐个计算每条边的状态值,计算过程中,无须存储当前边存在状态与不存在的状态信息,其状态信息在输出边数据时由其自身的halo信息决定;(5)每条边的状态值仅取决于它的直接前驱边,与其它边的状态无关,当前边方向为正当前边存在状态的数值=前一条边的状态数值+1,当前边方向为负当前边存在状态的数值=前一条边的状态数值-1;(6)重复(4)与(5)直到所有当前扫描线上所有边状态计算完毕,则处理当前扫描线上的离开边正向边状态值2,负向边状态值为1,则输出到子单元中。输出过程中Halo信息也需要同时拷贝输出;正向边状态值1,负向边状态值为0,则输出到本单元中。输出过程中Halo信息也需要同时拷贝输出;与Layer2中边重合的边输出时,则把输出到本层单元中,输出过程中Halo信息也需要同时拷贝输出。(7)选择下一条扫描线,如果存在则重复(2),(3),(4),(5)与(6)操作;否则投影操作结束。
2. 根据权利l所述的基于倒序树扫描线算法的边投影优化方法,其特征在于通过对边 投影的特征进行分析,无须计算当前边的存在和不存在的状态信息。
全文摘要
本发明属于集成电路计算机辅助设计领域,尤其涉及版图验证领域。在HDRC中,对版图数据进行投影是一个重要的操作,由于原始版图中图形之间的层次关系并非严格一致,以及由于提升策略的因素,一些下层单元的边会提升到上层单元中,从而导致层次关系发生错位。通过对提升的layer进行投影,才能保证连续命令之间图形之间的拓扑关系的正确性。本文针对投影算法提出了一种优化方法。在DRC中,投影实质处理的是边,而不是多边形。基于上述思想新的投影方法减少了计算复杂度,解决了HDRC中的边层投影问题。
文档编号G06F17/50GK101751494SQ200810227988
公开日2010年6月23日 申请日期2008年12月4日 优先权日2008年12月4日
发明者侯劲松, 李兰辉, 谢光益 申请人:北京华大九天软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1