半导体芯片、宏摆置的方法、多向密集堆积宏摆置器与多尺寸混合摆置设计方法

文档序号:86542阅读:341来源:国知局
专利名称:半导体芯片、宏摆置的方法、多向密集堆积宏摆置器与多尺寸混合摆置设计方法
技术领域
本发明有关于集成电路的多尺寸混合设计,特别是有关于半导体芯片、宏摆置的方法、多向密集堆积宏摆置器与多尺寸混合摆置设计方法(semiconductorchip,method of macro placement,MPT macro placer,and mixed-size placementdesign method)。
背景技术
由于使用了智能财产(intellectual property;IP)模块以及内嵌式存储器,现代的超大规模集成电路(VLSI)芯片通常包括许多的宏,宏与标准单元(standardcell)的多尺寸混合摆置已在不同的应用中广受欢迎,于是不同的公开文献中揭露了许多多尺寸混合摆置算法。
第一种型式的多尺寸混合摆置算法同时摆置宏与标准单元,其通常不考虑宏的方向且需要强大的宏除错器(macro legalizer)于宏或单元未适当分布时将重叠移除,C.-C.Chang等人于2003年在Proceedings of ACM/IEEE Asia SouthPacific Design Automation Conference揭露了一种仿真退火(simulated annealing)式的多阶摆置器mPG-MS,其一层一层地由大宏至小宏依序摆置,A.Khatkhate等人于2004年在Proceedings of ACM International Symposium on Physical Design揭露了一种最少切割(min-cut)式摆置器风水,其使用部分切割(fractional cut)方式同时考虑标准单元与宏,使得水平切割线不会与列的边界切齐,此外,尚有数种分析方式被提出来达成多尺寸混合摆置。A.B.Kahng等人于2004年在IEEE/ACM International Conference on Computer-Aided Design揭露了APlace,其基于非线性规划(non-linear programming)使用一钟形(bell-shaped)位能函数(potential function)来考虑宏的高度/宽度,以决定可以适当摆置宏与单元的全面摆置,T.Chan等人于2005年在Proceedings of ACM International Symposium onPhysical Design揭露了mPL,其使用广义力度导向(generalized force-directed)方式来进行摆置,B.Yao等人于2005年在Proceedings of ACM InternationalSymposium on Physical Design揭露了UPlace,其使用二次规划(quadraticprogramming)以及一离散余弦转换方法来适当地进行摆置,且还使用区域改良(zone refinement)法来进行除错。
第二种型式的摆置法结合了平面规划(floorplanning)与摆置技术,一种于2004年在IEEE/ACM International Conference on Computer-Aided Design揭露的最少切割平面规划摆置器(floorplacer)Capo即为一例,当必要的时候,其在进行最少切割摆置时,会利用固定轮廓(fixed-outline)平面规划来找到宏的可用位置,平面规划摆置嵌入摆置流程中可以考虑到宏的摆置方向并可轻易地找到无误的摆置方案。
第三种型式的摆置法将多尺寸混合摆置分为两个阶段,其分别为宏摆置与标准单元摆置,宏的位置先决定后,标准单元再摆置于其余的区域,S.N.Adya于2005年在ACM Transactions on Design Automation of Electronic Systems揭露了此组合式的技术,一标准单元摆置器被用来得到初步的摆置,依据该初步摆置结果,标准单元分别群组为数个不定型宏(soft macro),然后再利用固定轮廓平面规划找到无重叠(overlap-free)的宏摆置,其后,宏的位置固定,而标准单元摆置器则将标准单元重新在其它的空间进行摆置,与其它的型式相较,由于只要可获得无重叠的宏摆置,两阶段的多尺寸混合摆置便可保证有可行的摆置方案,因此较为可靠,再者,宏方向与摆置的限制条件,如预先放置宏(pre-placed macro)与摆置挡块(placement blockage),可轻易地被处理。

发明内容依据本发明的一实施例的一种半导体芯片包括第一与第二群宏,该第一与第二群宏分别被往半导体芯片的第一与第二方向进行最密堆积。
依据本发明的另一实施例的一种半导体芯片包括第一与第二群宏,该第一与第二群宏分别被往半导体芯片的第一与第二边缘进行最密堆积。
依据本发明的另一实施例的一种半导体芯片包括第一与第二群宏,该第一与第二群宏分别被往半导体芯片的第一与第二角落进行最密堆积。
依据本发明的另一实施例的一种k阶二元多向密集堆积树包括k个分支节点以及k+1株子密集堆积树,每一分支节点都对应至多向密集堆积树的一阶,且每一子密集堆积树对应至一分支节点并包括一组宏。
依据本发明的又一实施例的一种宏摆置的方法包括产生一前述的k阶二元多向密集堆积树并将每一子密集堆积树的宏在一摆置区域中进行密集堆积。
依据本发明的又一实施例的一种多向密集堆积宏摆置器,包括读取LEF/DEF格式的输入文件、产生k阶二元多向密集堆积树以及k+1子密集堆积树、将多向密集堆积树依据密集堆积的结果予以最佳化以及产生DEF格式的输出文件,每一多向密集堆积树包括k个分别对应至各阶的分支节点,且每一子密集堆积树对应至一分支节点并包括一组宏。
依据本发明的又一实施例的一种多尺寸混合摆置设计流程包括读取LEF/DEF格式的输入文件、以一传统的宏摆置器进行初步的宏摆置、以本发明的多向密集堆积宏摆置器进行细部的宏摆置以及产生DEF格式的输出文件。
本发明提供一种多向密集堆积宏摆置器,其可将宏摆置在一摆置区域的边界附近,并将中央区域保留给标准单元,此多向密集堆积宏摆置器仅需要摊销式线性时间(amortized linear time)将多向密集堆积树转换成对应的宏摆置,因此在运算上以及将二元树进行密集堆积都很迅速,于是,由仿真退火可有效率地找寻到宏摆置方案,使得多向密集堆积宏摆置器可进行有巨大的宏以及多量宏的多尺寸混合摆置,由于宏的方向与宏间的间隔已被考虑,多向密集堆积宏摆置器可产生比传统多尺寸混合摆置器更短的线长且也不会过度拥挤,多向密集堆积宏摆置器可轻易地在不同的摆置限制条件(如预先放置区块、角落区块以及摆置挡块)下正常工作,多向密集堆积宏摆置器也可与当前的标准单元摆置器结合,并根据两阶段的多尺寸混合摆置流程得到较佳的多尺寸混合摆置方案。
图1所示为一多尺寸混合摆置流程图。
图2所示为一密集堆积树以及其所对应的四种型式的摆置。
图3所示为一般的多向密集堆积树。
图4所示为一具有左下密集堆积树与右下密集堆积树的多向密集堆积树进行密集堆积的范例。
图5A所示为具有4株子密集堆积树的多向密集堆积树。
图5B所示为所有的节点经过处理后的宏摆置示意图。
图6所示为群组矩阵的三种尺寸。
图7所示为处理摆置挡块的流程。
图8所示为切割为数个矩形区块的方矩形区块。
图9A所示为宏摆置的结果以及其上方轮廓与下方轮廓。
图9B所示为对应至图9A的宏摆置面积。
图10所示为宏摆置的流程图。
主要组件符号说明n0、n1、n2、n3、nk~节点;b0、b1、b2、b3、bk~区块;T0、T1、T2、T3、Tk~子密集堆积树。
具体实施方式为让本发明的上述和其它目的、特征、和优点能更明显易懂,下文特举出较佳实施例,并配合附图,作详细说明如下图1所示为多尺寸混合摆置流程图,依据本发明的设计策略的特点功能的一为将宏沿芯片的周围摆置并将芯片的中央保留给标准单元,由于宏通常很大且在宏里面有绕线挡块(routing blockage),假如宏被摆置在芯片的中央,会严重影响到绕线,由于传统的平面规划技术将所有的宏密集堆积于一个角落,因此无法直接适用于宏摆置的问题,为了克服此一问题,源于密集堆积树的一种新的多向密集堆积树的平面规划表示法被提出以将宏摆置在芯片的周围。
密集堆积树为一用以仿真切割或非切割(slicing or non-siicing)平片规划的二元树状图,密集堆积树的每一节点对应至一宏区块,密集堆积树有四种型式的密集堆积,BL、TL、TR、BR密集堆积分别将宏区块分别往左下、左上、右上、右下角落进行密集堆积。
图2为一密集堆积树以及其所对应的四种型式的摆置,假设(xcomer,ycomer)为角落所在的坐标,(xi,yi)为区块bi的左下坐标,且wi(hi)为区块bi的宽度与高度,密集堆积树的根坐标为左下密集堆积的(cx,cy);左上密集堆积的(cx,cyhroot);右上密集堆积的(cxWroot,cyhroot);以及右下密集堆积的(cxWroot,cy)。
假若节点nj为节点ni的右分支节点,则区块bj为右侧最低的相邻区块,且xj=xi+wi(左下密集堆积);右侧最高的相邻区块,且xj=xi+wi(左上密集堆积);左侧最高的相邻区块,且xj=xiwj(右上密集堆积);左侧最低的相邻区块,且xj=xiwj(右下密集堆积)。
假若节点nj为节点ni的左分支节点,则区块bj的x-轴坐标定义为xj=xi(左下密集堆积);xj=xi(左上密集堆积);xj=xi+wiwj(右上密集堆积);xj=xi+wiwj(右下密集堆积)。
对左下密集堆积与右下密集堆积而言,区块bj在区块bi之上,而对左上密集堆积与右上密集堆积而言,区块bj在区块bi之下,因此,对一密集堆积树而言,所有的区块的x轴坐标可由依线性时间将密集堆积树穿越一遍而决定,再者,y轴坐标可由依分期常态时间的轮廓数据结构(相似方法可见于2000年Proceedings of the ACM/IEEE Design Automation Conference第458-463页的Anew representation for non-slicing floorplans)计算而得,因此,将密集堆积树转换为对应摆置的复杂度为分期线性时间,需注意的是B*-tree平面规划表示为左下密集堆积树。
多向密集堆积树结合了数株位于不同角落的不同堆积型式的密集堆积树,图3所示为一般的多向密集堆积树的范例之一,在多向密集堆积树中有k个干节点(stem node)以结合k+1株子密集堆积树,为便利起见以及易于建构,一右出干(right-skewed stem)被使用来结合子密集堆积树,且子密集堆积树的顺序可依据其母节点(parent node)的阶层而决定,由于密集堆积树使用深度优先搜寻(depth-first search;DFS)顺序,阶层越小,子密集堆积树越早进行密集堆积,假若两子密集堆积树的母节点阶层相同,位于左侧的子株子密集堆积树会先进行密集堆积,一般的多向密集堆积树可用以仿真任何的方矩形(rectilinear)平面规划区域,且每一子密集堆积树会往一凸面角落(convex corner)进行密集堆积。
相同地,可使用多向密集堆积树的深度优先搜寻来决定各区块的x轴坐标,为了计算y轴坐标,下方轮廓跟上方轮廓固定,下方轮廓跟上方轮廓分别依据方矩形区域的下侧与上侧而定,所有的左下与右下密集堆积树使用一下方轮廓数据结构,而所有的左上与右上密集堆积树使用一上方部轮廓数据结构,图4所示为一具有左下密集堆积树与右下密集堆积树的多向密集堆积树进行密集堆积的范例,由于轮廓会保留空间给先进行密集堆积的区块,使用相同轮廓数据结构的密集堆积树可产生无重叠(overlap-free)的摆置,因此,左下/右下密集堆积树只会与左上/右上密集堆积树有所重叠,然而这种摆置方案是不可行的,因此需被舍弃。
对一般的矩形超大规模集成电路芯片区域而言,通常使用具有四株子密集堆积树的多向密集堆积树来处理,其范例如图5A所示,为了得到对应的宏摆置,多向密集堆积树从根部(root)n0依深度优先搜寻(depth-first search;DFS)顺序处理,由于n0为一干节点,因此不作处理而继续流程,接着下来,n0的左侧子节点n3为左下密集堆积树的根,所以区块b3被摆置在左下角落,由于节点n3并无左侧子节点,所以接着处理节点n4,并依此类推,在此范例中,所有子密集堆积树的处理顺序为左下密集堆积树、左上密集堆积树、右上密集堆积树、右下密集堆积树,当所有的节点经过处理后,宏摆置便如图5B所示。
此外摆置问题的难度可使用宏的分群群组来加以简化,在设计阶层架构(design hierarchy)中,相同群组内具有相同高度/宽度的宏可形成群组,这些宏通常具有密切的关联,使用宏的分群群组不仅可更有效地利用面积,也可以将密切关联的宏更紧密地进行摆置,只有不会有面积被浪费的群组维度(clusterdimension),图6为有四个区块的群组的范例,其有三种可能的群组矩阵1×4、2×2与4×1。
当去群组化(declustering)时,区块便依据现有的群组矩阵来摆置,同时分支界限(branch and bound)方法则被使用来依据摆置成本(placement cost)决定区块的最佳排序。
使用者会定义一些摆置挡块(placement blockage),任何宏都不得与这些挡块有所重叠,在进行密集堆积时,加入一新的宏区块时,需同时确认是否与挡块有所重叠,假若有重叠,则区块的y轴坐标需移动到不会重叠的位置,图7为一范例,一新的区块b2被加入,而且会与摆置挡块重叠,因此区块b2上移以避免重叠发生,而轮廓也依据区块b2的位置重新更新,预先放置宏(pre-placed macro)会被视为摆置挡块,因此不会有对应的节点产生于多向密集堆积树中,如此可确保预先放置宏的位置。
角落宏如后所述,模拟区块同常被固定在角落作为角落宏,对应于角落区块的节点会固定为子密集堆积树的根,如此,角落宏便固定在角落。
方矩形宏如后所述,针对树状平面规划(tree-based floorplanning),一已知的方法(可见G.-M.Wu,Y.-C.Chang,and Y.-W.Chang等人于2003年ACMTrans.on Design Automation of Electronic Systems的188-202页发表的Rectilinear block placement using B*-trees)可被采用来处理方矩形宏,一方矩形宏可被切割为数个矩形区块,依据树状拓朴(tree topology)产生位置限制(简写为LC),进行密集堆积时,未对齐(misalignment)的状况会被修正以维持方矩形区块的形状,如图8的范例所示,方矩形区块被切割为三个矩形区块,且节点n1、n2与n3维持了位置限制的关系。
多向密集堆积树的运算如下所述,多向密集堆积树可由下列的运算进行扰动而得到另一多向密集堆积树运算1将区决(群组)旋转;运算2将群组进行尺寸调整;运算3将子密集堆积树内的一节点移动到另一处;运算4将一或两株子密集堆积树的两节点互换;运算5将两株子密集堆积树互换。
运算1将一节点的区块(群组)旋转,运算2使得一群组的群组尺寸改变,运算1与运算2不会改变多向密集堆积树的结构,运算3使得一子密集堆积树内的一节点被选定并被移动到相同或相异子密集堆积树的另一处,运算4使一或两株子密集堆积树的两节点被选定并互换,运算5使两株子密集堆积树互换,也使得两株子密集堆积树进行密集堆积的顺序互换,需注意的是多向密集堆积树的干结构是固定的,且不受任一种运算的影响。
宏摆置的评估如后所述,为了分辨出宏摆置结果的品质,宏摆置的成本F定义如后Φ=αA+βW+γD+δO+εT,其中A为宏摆置的面积,W为总线长,D为总宏位移,O为垂直重叠长度,且α、β、γ以及δ为使用者定义的权重参数(weighting parameter),宏摆置的面积、线长、宏位移以及垂直重叠长度会在后续段落说明。
宏摆置的面积为下方轮廓以下的面积加上上方轮廓以上的面积,如图9A所示,轮廓以粗的虚线描绘,而对应的宏摆置面积如图9B所示,将宏摆置面积最小化可以必免产生太多被宏包围的岛状标准单元区域,这种区域的绕线很难绕往芯片的中央,其因为宏区块上有取多绕线的挡块,抑或者绕线会变得较为拥塞,再者,这种区域内的标准单元需要使用较长的绕线路径方能连接到位于芯片中央的标准单元,而使得速度劣化。
有关线长的部分,由于在摆置时只有宏被考虑到,电路的绕线表(netlist)无法直接使用,而使用设计阶层,且产生在同一设计阶层群组中的宏区块之间的虚拟网(pseudo net),因此,将总线长加以最短化可以使得同一设计阶层群组中的宏区块更加紧密。
宏摆置受到全面摆置(global placement)结果的导引,全面摆置并不需要完全无误,当已知宏的位置被萃取出来后,宏的位移被加入成本函数的负指针,使得可以得到有最小宏位移的最佳宏摆置。
多向密集堆积树表示法可以确保上方与下方密集堆积树之间没有重叠,但是在上方轮廓和下方轮廓之间可能有重直的重叠,将重直的重叠加入成本函数的负指针可以导引仿真退火找到没有重叠的摆置方案。
图10所示为一宏摆置流程范例图,当LEF/DEF格式的文件被读取后,位于相同设计阶层且具有相同高度与宽度的宏先分群群组,群组的尺寸以最接近方形的尺寸作为初始值,而最后的尺寸则在仿真退火的最佳化过程中选定。
然后便产生一具有已知数目的子密集堆积树的多向密集堆积树,每一宏/群组对应至一子密集堆积树的一节点,当有了初步的宏摆置,初步的子密集堆积树依据宏最近的角落而对应至其所属节点,否则,所属节点的初步的子密集堆积树便随机设定,每一子密集堆积树都初始化为一完整的二元树。
仿真退火被用来找寻最佳的宏摆置,而由前述的运算可以对一多向密集堆积树进行扰动并得到另一多向密集堆积树,在扰动之后,设计者可以修正树状结构以满足已知的宏摆置限制条件、将多向密集堆积树进行密集堆积、评估宏摆置、并依据宏摆置品质的差异以及仿真退火的现行温度决定新的摆置方案是否可以接受,其后,多向密集堆积树再度被扰动,仿真退火再次继续直到摆置方案够好或者没有更佳的摆置方案出现,然后所有的区块/群组的位置就此决定。
当所有的区块/群组的位置决定后,在一群组内的区块位置可以依据群组的矩阵尺寸来计算而得。
最后修正宏间的间隔,假若两宏间的绕线资源需求较两宏间的原始间隔高,则宏间的间隔加大,反之,宏间的间隔可以缩小以使宏摆置面积更小,宏的方向也可以透过水平或垂直翻转而决定,使得大部分的脚位较接近芯片的中心,然后,所有宏的状态便固定下来,并输出最终的宏摆置。
两组测试电路被使用来对多尺寸混合宏摆置进行比对验证,测试电路分别为S.N.Adya于2005年在ACM Transactions on Design Automation of ElectronicSystems提出的智原(Faraday)以及五种最近的大型实际设计组成的mchip套件,表I所示为智原(Faraday)的统计数据,要注意的是,DMA电路由于没有宏在内而未进行比对验证,在每一数字信号处理(DSP)以及精简指令集计算(RISC)电路中各有两个以及七个宏,在这些测试电路中,宏的面积从占总芯片面积的6.96%到41.99%。
表I
表II所示为风水5.1、Capo9.4、本发明的多向密集堆积宏摆置器与Capo的整合方案、mPL5、APlace2.0以及本发明的多向密集堆积宏摆置器与APlace的整合方案对智原(Faraday)测试电路进行多尺寸混合摆置以及绕线的结果,一先进的商用绕线器被用来对所有的摆置方案进行绕线,所有的摆置器于具有2GB容量的随机存取存储器的3.2GHz的Pentium 4处理器的Linux工作站上执行,半周线长(half perimeter wirelength)与绕线线长(routing wirelength)以数据库单位(database unit)报出,Viol则为绕线方案的违规数,由于宏的数量不多,多向密集堆积宏摆置器只需数秒钟便可完成,而单独进行宏摆置的执行时间则未有数据报导,表II中的星号*代表摆置的结果有许多重叠,或者区块已经落于摆置区域外且无法无误地进行摆置,表II中的NR则代表由于没有可接受的摆置所以没有摆置结果。
表II
从这些结果可知,最小切割的摆置器风水产生出有许多宏/单元落在芯片区域外的结果,尽管mPL5并未声称是多尺寸混合摆置器,但mPL5对于具有大量多尺寸混合宏以及标准单元的IBM-MS/IBM-MSw Pins测试电路可产生出高品质的摆置方案,因此,mPL5对智原(Faraday)测试电路进行摆置的结果也作为参考,结果mPL5可以找到可接受的摆置方案,但其品质则不甚理想,此外,APlace在DSP1、RISC1与RISC2之间产生许多重叠,且无法提供无误的摆置方案,因此,只有其全面摆置方案的半周线长数据报导,最少切割的平面规划摆置器Capo可找到无误的摆置方案,且其半周线长较风水与mPL5为佳。
使用本发明一实施例的多向密集堆积宏摆置器的两阶段多尺寸混合摆置方法可以对所有的电路找到可接受的摆置方案,相较于单独使用Capo,与Capo整合的多向密集堆积宏摆置器平均可缩短半周线长达8%以及绕线线长达12%,尤其,与APlace整合的多向密集堆积宏摆置器可以对所有的电路产生可行的摆置方案,且其品质较所有的多尺寸混合摆置器都好,相较于mPL5、风水与Capo,其半周线长分别缩短了63%、35%与15%,再者,相较于mPL5、风水与Capo,其绕线线长分别缩短了62%、68%与15%,同时可发现,当宏的面积增加时,使用本发明一实施例的多向密集堆积宏摆置器的摆置流程缩短半周线长的成效更加显著,线长缩短的成效总结于表III,其说明了多向密集堆积宏摆置器的效能。
表III
表IV显示mchip测试电路套件的统计数据,单元的数量由540k至1320k不等,且宏的数量由50至380不等,已知只有Capo能对多宏的多尺寸混合摆置决定出可接受的高品质摆置方案,因此只针对Capo来进行宏摆置的比较,实验于双Opteron 2.6GHz的机器上执行,并先分别以多向密集堆积宏摆置器以及Capo来决定宏的位置,其后,宏位置固定,且标准单元则以一商用的拥塞度导向(congestion-driven)的摆置器以快速原型模式(fast prototyping mode)来摆置,一商用绕线器则进行全面的绕线,为了公平比照起见,标准单元以相同的摆置器进行摆置。
表IV
表V所示为半周线长、绕线线长(WL)、GRC溢位(overlow)以及最大溢位,GRC溢位为全面绕线单元(global routing cell;GRC)有溢位的比例,其值越高,则摆置上越拥塞,最大溢位提供了被赋予有最大溢位的全面绕线单元的额外轨道数,表V中的NR表示由于Capo中的程序存储器区段错误(segmentation fault)而无法获得摆置结果。
表V
对五组mchip测试电路而言,多向密集堆积宏摆置器总是较Capo的宏摆置可以获得更佳的线长(半周线长与绕线线长),且对五组mchip测试电路而言,使用Capo会发生程序存储器区段错误且找不到摆置方案,再者,Capo的摆置结果会产生较多的GRC溢位以及最大溢位,并比多向密集堆积宏摆置器需要更多单元摆置与绕线的执行时间。
本发明提供一种多向密集堆积宏摆置器,其可将宏摆置在一摆置区域的边界附近,并将中央区域保留给标准单元,此多向密集堆积宏摆置器仅需要摊销式线性时间(amortized linear time)将多向密集堆积树转换成对应的宏摆置,因此在运算上以及将二元树进行密集堆积都很迅速,于是,由仿真退火可有效率地找寻到宏摆置方案,使得多向密集堆积宏摆置器可进行有巨大的宏以及多量宏的多尺寸混合摆置,由于宏的方向与宏间的间隔已被考虑,多向密集堆积宏摆置器可产生比传统多尺寸混合摆置器更短的线长且也不会过度拥挤,多向密集堆积宏摆置器可轻易地在不同的摆置限制条件(如预先放置区块、角落区块以及摆置挡块)下正常工作,多向密集堆积宏摆置器也可与当前的标准单元摆置器结合,并根据两阶段的多尺寸混合摆置流程得到较佳的多尺寸混合摆置方案。
权利要求
1.一种半导体芯片,其特征在于,所述半导体芯片包括第一群宏,其往半导体芯片的一第一方向进行最密堆积;以及第二群宏,其往半导体芯片的一第二方向进行最密堆积。
2.如权利要求
1所述的半导体芯片,其特征在于,所述第一或第二群宏包括一宏群组,所述宏群组包括复数个位于相同设计阶层群组且具有相同高度与宽度的宏。
3.如权利要求
1所述的半导体芯片,其特征在于,所述半导体芯片还包括一摆置挡块或预先放置宏为于所述无重叠的第一或第二群宏中。
4.一种半导体芯片,其特征在于,所述半导体芯片包括第一群宏,其往半导体芯片的一第一边缘进行最密堆积;以及第二群宏,其往半导体芯片的一第二边缘进行最密堆积。
5.如权利要求
4所述的半导体芯片,其特征在于,所述第一或第二群宏包括一宏群组,所述宏群组包括复数个位于相同设计阶层群组且具有相同高度与宽度的宏。
6.如权利要求
4所述的半导体芯片,其特征在于,所述半导体芯片还包括一摆置挡块或预先放置宏为于所述无重叠的第一或第二群宏中。
7.一种半导体芯片,其特征在于,所述半导体芯片包括第一群宏,其往半导体芯片的一第一角落进行最密堆积;以及第二群宏,其往半导体芯片的一第二角落进行最密堆积。
8.如权利要求
7所述的半导体芯片,其特征在于,所述第一或第二群宏包括一宏群组,所述宏群组包括复数个位于相同设计阶层群组且具有相同高度与宽度的宏。
9.如权利要求
7所述的半导体芯片,其特征在于,所述半导体芯片还包括一摆置挡块或预先放置宏为于所述无重叠的第一或第二群宏中。
10.如权利要求
7所述的半导体芯片,其特征在于,所述第一与第二群宏分别对应至一二元子密集堆积树,所述等二元子密集堆积树各包括一角落宏位于其根部。
11.一种宏摆置的方法,其特征在于,所述方法包括以下步骤产生一k阶二元多向密集堆积树;以及将每一子密集堆积树的宏在一摆置区域中进行密集堆积;其中,所述k阶二元多向密集堆积树包括k个分支节点以及k+1株子密集堆积树,每一分支节点都对应至多向密集堆积树的一阶,且每一子密集堆积树对应至一分支节点并包括一组宏。
12.如权利要求
11所述的宏摆置的方法,其特征在于,每一子密集堆积树的宏往所述摆置区域的一方向密集堆积,且每一子密集堆积树对应的所述方向与其它子密集堆积树不同。
13.如权利要求
11所述的宏摆置的方法,其特征在于,每一子密集堆积树的宏往所述摆置区域的一边缘密集堆积,且每一子密集堆积树对应的所述边缘与其它子密集堆积树不同。
14.如权利要求
11所述的宏摆置的方法,其特征在于,每一子密集堆积树的宏往所述摆置区域的一角落密集堆积,且每一子密集堆积树对应的所述角落与其它子密集堆积树不同。
15.一种多向密集堆积宏摆置器,其特征在于,所述多向密集堆积宏摆置器包括读取LEF/DEF格式的输入文件;产生k阶二元多向密集堆积树以及k+1子密集堆积树,其中,所述k阶二元多向密集堆积树包括k个分支节点以及k+1株子密集堆积树,每一分支节点都对应至多向密集堆积树的一阶,且每一子密集堆积树对应至一分支节点并包括一组宏;将多向密集堆积树依据密集堆积的结果予以最佳化;以及产生DEF格式的输出文件。
16.如权利要求
15所述的多向密集堆积宏摆置器,其特征在于,所述多向密集堆积宏摆置器还包括在进行宏的密集堆积后,调整宏之间的间隔。
17.如权利要求
15所述的多向密集堆积宏摆置器,其特征在于,所述多向密集堆积宏摆置器还包括在读取LEF/DEF格式的输入文件后,将位于相同设计阶层群组且具有相同高度与宽度的宏予以分群群组,并在产生DEF格式的输出文件前,将这些宏去群组化。
18.如权利要求
17所述的多向密集堆积宏摆置器,其特征在于,将所述多向密集堆积树予以最佳化包括重复进行仿真退火循环,所述仿真退火循环包括对所述多向密集堆积树进行扰动、将所述多向密集堆积树内的宏进行密集堆积、评估密集堆积的宏摆置以及接受或者拒绝所述宏摆置。
19.如权利要求
18所述的多向密集堆积宏摆置器,其特征在于,所述仿真退火循环更包括将所述多向密集堆积树的结构依据已知宏摆置的限制条件加以修正。
20.如权利要求
18所述的多向密集堆积宏摆置器,其特征在于,当一密集堆积方案为可接受时,或者没有更佳的密集堆积方案时,所述仿真退火循环的重复进行便结束。
21.如权利要求
18所述的多向密集堆积宏摆置器,其特征在于,对所述多向密集堆积树进行扰动包括旋转一宏区块或一宏群组、将宏群组进行尺寸调整、将子密集堆积树内的一节点移动到另一处、将一或两株子密集堆积树的两节点互换以及将两株子密集堆积树互换或前述组合。
22.一种多尺寸混合摆置设计方法,其特征在于,所述方法包括以下步骤读取LEF/DEF格式的输入文件;以一传统的宏摆置器进行初步的宏摆置;以如权利要求
15所述的多向密集堆积宏摆置器进行细部的宏摆置;以及产生DEF格式的输出文件。
23.如权利要求
22所述的多尺寸混合摆置设计方法,其特征在于,所述方法还包括在产生DEF格式的输出文件前,进行标准单元的摆置。
专利摘要
本发明提供一种半导体芯片、宏摆置的方法、多向密集堆积宏摆置器与多尺寸混合摆置设计方法。其中所述半导体芯片包括第一群宏,其往半导体芯片的一第一方向进行最密堆积;以及第二群宏,其往半导体芯片的一第二方向进行最密堆积。所述多向密集堆积宏摆置器,包括读取LEF/DEF格式的输入文件、产生k阶二元多向密集堆积树以及k+1子密集堆积树、将多向密集堆积树依据密集堆积的结果予以最佳化以及产生DEF格式的输出文件,每一多向密集堆积树包括k个分别对应至各阶的分支节点,且每一子密集堆积树对应至一分支节点并包括一组宏。本发明在运算上以及将二元树进行密集堆积都很迅速,并可得到较佳的多尺寸混合摆置方案。
文档编号G06F17/50GK1996318SQ200610156594
公开日2007年7月11日 申请日期2006年12月31日
发明者陈东杰, 喻秉鸿, 张耀文, 黄福助, 刘典岳 申请人:联发科技股份有限公司导出引文BiBTeX, EndNote, RefMan
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1