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

一种基于权重的平面布图规划方法技术

技术编号:2857589 阅读:184 留言:0更新日期:2012-04-11 18:40
本发明专利技术属集成电路计算机辅助设计技术领域,具体为一种基于权重的平面布图规划方法。本发明专利技术根据不同模块由于其面积大小及较长边长度的不同,其位置确定性不一致的特性,引入了模块权重的概念和模型,然后根据权重的降序对模块重新排列,最后采用模拟退火算法完成布图规划。本发明专利技术可以在原有数据结构的基础上达到更好的优化效果,可广泛应用于集成电路计算机辅助设计中。

【技术实现步骤摘要】

本专利技术属于集成电路计算机辅助设计
,具体涉及一种新的布图规划方法,尤其涉及一种基于权重的平面布局布图规划方法。
技术介绍
随着集成电路工艺的飞速发展,集成电路的规模不断增大,IP复用已成为一种趋势,越来越多的IP被集成到同一块芯片上。同时伴随着集成电路的频率不断增大,关键路径上的时间延迟越来越重要。在这样的背景下,与关键路径上的时间延迟以及IP复用都密切相关的布图规划问题逐渐成为集成电路向更大规模,更高速度发展的瓶颈,极大的影响着集成电路的开发时间。布图规划(floorplan)作为超大规模集成电路的最初阶段对整个集成电路的设计有着非常大的影响。其主要原因是1)集成电路的规模越来越大,层次化设计与IP复用越来越多被采用以减少集成电路的开发时间,提高设计效率,因此对布图规划提出了新的要求。2)伴随着SOC(System on Chip片上系统)的出现,大量的RAM和ROM被集成在同一芯片中,而RAM和ROM的长度是可变的,因此布图规划问题更加复杂。3)同一芯片中集成了数字部分和模拟部分,布图规划需要考虑更多形状可变的模块,这也增大了布图规划的难度。现有的EDA(Electronic Design Automation电子设计自动化)工具布图规划的效果并不理想,大多数情况下需要手工调整,尤其当模块的数目比较多时,布图规划几乎全部由手工进行。而随着模块数目的不断增加,手工进行布图规划的难度也越来越大,甚至到了无法完成的程度。因此寻找更为合理的布图规划方法非常迫切。已证明布图规划的一些子问题如二维平面填充问题是NP完全问题,随着规模的增大,解空间将以指数增长,因此大量的随机优化算法如模拟退火算法,遗传算法成为解决这一问题的很好的选择。通常认为设计一种布局结果的表示方法是布图规划问题的核心,然后在该表示方法的基础上使用确定性方法或随机优化的方法进行不断优化以达到最终优化的目的。目前已有的表示方法有B*tree,O-tree,TCG(Transitive Closure Graph-Based),sequence pair,CBL(corner block list)等,并且新的表示方法还在不断被提出。在基于以上的数据结构的布图规划的方法中,模拟退火算法被大量采用,几乎所有的基于模拟退火的布图规划方法在调整模块的位置时各个模块被选择的概率都是一样的。而事实上,不同模块由于其大小及较长边的长度不同,其位置的确定性是不一致的。本专利技术根据这一事实提出权重的概念并利用模拟退火算法在不同的温度下使各个模块以不同的概率被选择,以达到更好的优化效果。
技术实现思路
本专利技术的目的是提出一种优化效果好的超大规模集成电路布图规划方法。超大规模集成电路布图规划问题描述如下给定一组由N个模块组成的集合B={b1,b2,...,bN},对bi∈B(i=0,1,...,N),有一组参数{hi,wi,ai}与其相对应,分别代表该模块的高度、宽度和面积,其中ai固定不变,τi=hi/wi可以在一定范围内变化,布图规划的目标是在使这些模块不相互重叠的前提下,使外包所有模块的最小矩形的面积最小,同时使模块间连线的总长度最短。本专利技术提出的布图规划方法,针对上述布图规划问题,根据模块的位置与其面积和较长边的长度有关的特性,引入权重模型mi对于硬核,权重为mi=ai·max(wi,hi)]]>(i=0,1,...,N)对于软核,权重为mi=max(ai/τi,aiτi)·ai]]>(i=0,1,...,N)在该模型中,一个模块的权重的平方与其面积的平方根成正比,与较长边的长度成正比。根据上述权重模型,计算出各模块的权重;然后按权重的降序对模块重新排列,最后采用模拟退火算法,完成布图规划。本专利技术的优点是使模块位置调整的次数与模块的权重相关联,在不增加时间复杂度的基础上达到了更好的布图效果。附图说明图1为对ami33只优化面积结果。图2为ami49只优化面积结果。具体实施例方式根据本专利技术提出的权重模型,具体实施步骤如下(1)计算每个模块的权重,并将模块b0,b1,...,bN-1按其权重的降序重新排列,对应b0',b1',...,bN-1',即0≤mb0′≤mb1′≤···≤mbN-1′,]]>其分别对应数据结构中的node(0),node(1),...node(N-1)。如果使用sequence pair的表示方法,则直接使用排序后的模块即b0',b1',...,bN-1'。(2)将各个模块的权重规一化,得到0<m0mN-1≤m1mN-1≤,···,≤mN-1mN-1=1]]>(3)计算规一化后权重的均值和方差μ=1NΣi=0N-1mimN-1]]>σm2=1NΣi=0N-1(mimN-1-μ)2]]>由于后面需要用到规一化后的σm,所以我们首先计算σm2的最大值和最小值。很显然,当m0mN-1=m1mN-1=···=mN-1mN-1]]>时,σm2取到最小值0,下面我们求σm2的最大值。σm2=1NΣi=0N-1(mimN-1-μ)2]]>=1N[Σi=0N-1(mimN-1)2-2μΣi=0N-1mimN-1+Nμ2]]]>=1N[Σi=0N-1(mimN-1)2-Nμ2]]]>≤1N[Σi=0N-1mimN-1-Nμ2]]]>=1N[Nμ-Nμ2]]]>=[μ-μ2]又因为μ-μ2-14=-(μ2-μ+14)=-(μ-12)2≤0]]>故σm2≤[μ-μ2]≤14]]>因此,我们取σ2=T/Tmax2σmN2]]>(0<k≤ 1)(4)构造初始布局,并用相应的数据结构如B*-tree、sequence pair(序列对)、O-tree等表不。(5)采用模拟退火算法,其操作过程如下产生一个[2],对MCNC标准电路的布图结果如图1-2和表1-5。包括对面积的优化、对线长的优化以及同时对面积和线长进行优化。其中线网长度的本文档来自技高网
...

【技术保护点】
一种集成电路计算机辅助设计中的布图规划方法,其规划问题的描述如下:给定一组由N个模块组成的集合B={b↓[1],b↓[2],…,b↓[N]},对b↓[1]∈B,有一组参数{h↓[i],w↓[i],a↓[i]}与其相对应,分别代表该模 块的高度、宽度和面积,其中a↓[i]固定不变,τ↓[l]=h↓[i]/w↓[i]可以在一定范围内变化,布图规划的目标是在使这些模块不相互重叠的前提下,使外包所有模块的最小矩形的面积最小,同时使模块间连线的总长度最短,其特征在于对模块 引入权重模型m↓[i]:对于硬核,权重为:m↓[i]=***(i=0,1,…,N)对于软核,权重为m↓[i]=***(i=0,1,…,N)根据该权重模型计算出各模块的权重,然后按照权重的降序, 对模块重新排序,最后采用模拟退火算法完成布图规划。

【技术特征摘要】
1.一种集成电路计算机辅助设计中的布图规划方法,其规划问题的描述如下给定一组由N个模块组成的集合B={b1,b2,...,bN},对bi∈B,有一组参数{hi,wi,ai}与其相对应,分别代表该模块的高度、宽度和面积,其中ai固定不变,τi=hi/wi可以在一定范围内变化,布图规划的目标是在使这些模块不相互重叠的前提下,使外包所有模块的最小矩形的面积最小,同时使模块间连线的总长度最短,其特征在于对模块引入权重模型mi对于硬核,权重为mi=ai·max(wi,hi)---(i=0,1,···,N)]]>对于软核,权重为mi=max(ai/τi,aiτi)·ai---(i=0,1,···,N)]]>根据该权重模型计算出各模块的权重,然后按照权重的降序,对模块重新排序,最后采用模拟退火算法完成布图规划。2.根据权利要求1所述的布图...

【专利技术属性】
技术研发人员:赵长虹陈建周晓方周电
申请(专利权)人:复旦大学
类型:发明
国别省市:31[中国|上海]

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

1