当前位置: 首页 > 专利查询>清华大学专利>正文

三维芯片热通孔和性能优化的空白区重分配方法组成比例

技术编号:2819450 阅读:329 留言:0更新日期:2012-04-11 18:40
三维芯片热通孔和性能优化的空白区重分配方法,其特征在于,依次含有以下步骤:计算每个格子所需要的热通孔数目;把对热通孔数目的需求转化为对空白区的需求;建立基本拓扑逻辑约束和空白区分配约束以及目标函数,建立芯片线长优化的线性规划模型;建立微体系结构下芯片性能的优化模型;设立权重,进行热通孔数目,线长和性能的多目标优化模型;用单纯型法求解各个模型,求得在性能优化条件下热通孔数目及其最佳分配区域。在芯片性能保持不变的前提下,可减少14%-65%的热通孔数目。

【技术实现步骤摘要】

三维芯片热通孔和性能优化的空白区分配方法属于集成电路计算机辅助设计领域,尤其涉及布图规划后处理领域。
技术介绍
随着芯片设计需求的提高与制造工艺的发展,为了进一步降低互连线延迟,,提高芯片性能,“三维芯片”的设计技术应时而生,并逐步成为集成电路设计领域的研究热点。三维芯片设计是将多层器件层集成到同一个芯片中,形成一种多个二维芯片的垂直叠放结构。利用芯片之间的垂直互连,三维芯片结构能够有效地缩短器件之间的互连线长度,避免水平面上的绕线,从而降低连线复杂度以及拥挤度。此外,三维芯片也能够有效地提高晶体管的集成度,降低芯片的面积和功耗。通过在不同器件层实现不同类型的电路模块,设计师可以把光电器件等功能器件和硅集成电路集成在一起,形成新的功能系统。但是,三维芯片的设计却面临着诸多的挑战,其中的一个严重挑战是它带来的热问题。在深亚微米工艺下,由于芯片集成度的迅速增加,芯片单位面积上功耗密度也飞速增长,从而使得热优化问题成为当前集成电路设计中非常重要的研究热点。而三维芯片由于自身具有的多器件层结构,导致相同工艺下单位面积上的功耗密度成倍增长,同时由于器件层之间介质的低导热性,使得三维芯片相对于传统二维芯片,热问题进一步加剧。局部区域温度过高形成的热点hotspot会严重影响芯片的可靠性。采取有效措施来降低三维芯片的片上温度和消除热点已成为三维芯片设计的核心技术。 就物理设计阶段而言,目前的热优化主要集中在布图规划和布线阶段。然而实验结果表明,这些方法很难把芯片上的最高温度降低到一个满意的水平,热点依然存在。通过插入热通孔,则可以明显改善芯片的温度场分布和降低片上最高温度。热通孔是一种特殊的穿越器件层的金属通孔,它能够促进上层芯片层的器件产生的热量向下层芯片层传导。不过,在当前的工艺下,热通孔的制造费用昂贵。同时,芯片层之间的通孔具有较大的物理尺寸,插入过多的热通孔必然导致布线资源的减少。所以,热通孔插入方法的使用受到一定的限制。 人们针对此问题,已经提出了一些解决办法。例如建立热通孔优化问题的非线性规划模型,然后此问题被简化为垂直和水平方向上两个独立的子问题来求解。单元级的热通孔规划方法则将热通孔规划作为一个布局后处理过程来实现,同时该方法假定热通孔只能放置在某些预先指定的处于单元行之间的区域中。也有部分方法在布图规划过程中集成热通孔的优化问题,但是在大多数布图规划方案中,最高温度约束经常得不到满足。这是因为在这些布图规划方案中,尽管经过空白区重分配,热点区域仍然缺乏足够的空白区域来插入足够的热通孔。同时在目前所有这些热通孔优化方法中,没有一种算法能够考虑芯片性能即芯片每秒执行的指令数目的优化。热通孔数目优化和性能优化的空白区重分配问题可以简单描述为 给定一个多层垂直叠放的芯片布图以及相关的模块信息和线网信息,我们要在此布图基础上,不改变模块之间的相对位置而进行空白区域重新分配,使得插入比较少的热通孔就可以满足温度约束,同时总线长或者芯片性能即每秒执行的指令数目没有明显恶化。
技术实现思路
本专利技术的目的在于提出一种比迄今为止该领域的其它方法更为稳定、高效,且能够在布图规划过程中减少三维芯片热通孔数目和优化芯片性能的工业工具。一般而言,温度比较高的热点区域需要插入比较多的热通孔,而热点区域往往堆积了大量的电路模块,这就使得热通孔因为空白区不足而无法插入到热点区域。所以,很多时候尽管整个芯片的空白区域充足,但是却没有能够得到有效地利用。在设计过程中,我们可以在热通孔插入之前,先进行空白区的重新分配,使得需要热通孔数目较多的热点区域能够有更多的空白区,而需要较少通孔数目的低温区域可以分配较少的空白区或者不分配空白区。 本专利技术的特征在于,它是在计算机中依次按照以下步骤实现的 步骤(1),初始化 输入三维芯片的初始布图信息,利用热阻模型计算每个格子tile所需要的热通孔数目VNtile,其中包括温度最高的格子所需要的热通孔数目; 步骤(2),按照以下步骤把对热通孔的需求转化为对空白区的需求,根据格子tile和模块block之间的覆盖情况,把格子tile所需要的空白区域面积转化为模块所需要的空白区域面积 步骤(2.1),定义模块blocki和格子tilej之间的重叠面积area_budgetij Δx=min(xj+wj,xi+wi)-max(xj,xi) Δy=min(yj+hj,yi+hi)-max(yj,yi) 步骤(2.2),把格子需求的热通孔数目转移到覆盖该格子tile的模块block i上,格子tile j的空白区转移到block i的部分的大小为reqij,该reqij为格子j的热通孔重分配的面积大小占总的重分配面积的百分比 其中,via_area是每个热通孔的横截面积; 其次,在模块中,确定只有与格子tile有相交的边界才参与到每个格子tile中空白区的分配问题,并依据下式计算分配给模块的该相交边界的对应的空白区的大小 left_reqij=reqij*Δy/(Δx+Δy) bottom_reqij=reqij*Δx/(Δx+Δy) 其中,模块左边界与格子相交时,用left_reqij表示, 模块下边界与格子相交时,用bottom_reqij表示 步骤(2.3),对每个格子tile都进行每个模块最终空白区需求大小的计算,用LAi,RAi,TAi和BAi分别代表模块i的四个方向的空白区域需求量 其中,right_reqij分给模块i右边界的面积 top_reqij分给模块i上边界的面积 步骤(3),建立各个优化对象的线性规划的约束和目标 步骤(3.1),按照下式建立几何位置约束,防止同层模块重合和移出芯片边界 如果模块i在模块i+1的左边:xi+wi≤xi+1 如果模块i在模块i+1的右边:xi+1+wi+1≤xi 如果模块i在模块i+1的上方:yi+hi≤yi+1 如果模块i在模块i+1的下方:yi+1+hi+1≤yi 同时,为防止模块移出原有布图的边界,建立如下约束 xi≥0,yi≥0,xi+wi≤W,yi+hi≤H 步骤(3.2),建立空白区分配的约束关系和目标函数 设,Li为模块i左边界空白区的宽度 Ri为模块i右边界空白区的宽度 Ti为模块i上边界空白区的高度 Bi为模块i下边界空白区的高度 li,ri是与Li,Ri对应的最终分配的空白区宽度 ti,bi是与Ti,Bi对应的最终分配的空白区高度 则,空白区重分配的目标函数为 同时,新的几何约束关系为 如果模块i在模块i+1的左边:xi+wi+ri≤xi+1-li+1 如果模块i在模块i+1的右边:xi+1+wi+1+ri+1≤xi-li 如果模块i在模块i+1的上方:yi+hi+ti≤yi+1-bi+1 如果模块i在模块i+1的下方:yi+1+hi+1+ti+1≤yi-bi 芯片的面积约束为 xi≥li,yi≥bi,xi+wi+ri≤W,yi+hi+ti≤H 步骤(3.3),用最小约束矩形的半周长HPWL表示芯片线长,建立芯片本文档来自技高网
...

【技术保护点】
三维芯片热通孔和性能优化的空白区重分配方法,其特征在于,它是在计算机中依次按照以下步骤实现的: 步骤(1),初始化 输入三维芯片的初始布图信息,利用热阻模型计算每个格子tile所需要的热通孔数目VN↓[tile],其中包括温度最高的格子所需要的热通孔数目; 步骤(2),按照以下步骤把对热通孔的需求转化为对空白区的需求,根据格子tile和模块block之间的覆盖情况,把格子tile所需要的空白区域面积转化为模块所需要的空白区域面积: 步骤(2.1),定义模块block i和格子tile j之间的重叠面积area_budget↓[ij]: *** Δx=min(x↓[j]+w↓[j],x↓[i]+w↓[i])-max(x↓[j],x↓[i]) Δy=min(y↓[j]+h↓[j],y↓[i]+h↓[i])-max(y↓[j],y↓[i]) 步骤(2.2),把格子需求的热通孔数目转移到覆盖该格子tile的模块block i上,格子tile j的空白区转移到block i的部分的大小为req↓[ij],该req↓[ij]为格子j的热通孔重分配的面积大小占总的重分配面积的百分比: req↓[ij]=VN↓[j]*via_area*area_budget↓[ij]/*area_budget↓[ij] 其中,via_are a是每个热通孔的横截面积; 其次,在模块中,确定:只有与格子tile有相交的边界才参与到每个格子tile中空白区的分配问题,并依据下式计算分配给模块的该相交边界的对应的空白区的大小: left_req↓[ij]=req↓[ij]*Δy/(Δx+Δy) bottom_req↓[ij]=req↓[ij]*Δx/(Δx+Δy) 其中,模块左边界与格子相交时,用left_req↓[ij]表示, 模块下边界与格子相交时,用bottom_req↓[ij]表示 步骤(2.3),对每个格子tile都进行每个模块最终空白区需求大小的计算,用LA↓[i],RA↓[i],TA↓[i]和BA↓[i]分别代表模块i的四个方向的空白区域需求量: LA↓[i]=*left_req↓[ij],BA↓[i]=*bottom_req↓[ij] TA↓[i]=*top_req↓[ij],RA↓[i]=*right_req↓[ij] 其中,right_req↓[ij]分给模块i右边界的面积 top_req↓[ij]分给模块i上边界的面积 步骤(...

【技术特征摘要】

【专利技术属性】
技术研发人员:马昱春洪先龙蔡懿慈李欣
申请(专利权)人:清华大学
类型:发明
国别省市:11[中国|北京]

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

1