主权项 |
1、一种多时钟系统集成电路平面布局规划方法,其特征在于考虑电路各个不同的时钟区域之间的连接关系,建立合适的约束模型,并采用模拟退火和线性规划相结合的算法,实现满足要求的布局,具体步骤如下:(1)对于具有N个模块的集成电路,采用序列对表示法来表示各个模块的相互关系,提取并存储各个模块的面积、长宽、类型、连线和时钟信息;(2)按时钟顺序取模块序号构成序列对,其中,将连线和时钟问题抽象成对应的几何约束进行处理:①将各个具有相同时钟的模块放置在一起,以保证同一区域内部连线最短和各个时钟树产生便利;②不同时钟区域存在信号交互时,则在最终布局中,存在交互的时钟区域要相互临近;(3)采用模拟退火的优化方法,以步骤(2)中的序列对作为初始序列对,以具有惩罚项的函数(1)式作为模拟退火优化的目标函数;<math> <mrow> <mi>cos</mi> <mi>t</mi> <mo>=</mo> <mi>α</mi> <mo>·</mo> <mfrac> <mi>S</mi> <mrow> <mi>average</mi> <mo>_</mo> <mi>S</mi> </mrow> </mfrac> <mo>+</mo> <mi>β</mi> <mo>·</mo> <mfrac> <mi>L</mi> <mrow> <mi>average</mi> <mo>_</mo> <mi>L</mi> </mrow> </mfrac> <mo>+</mo> <mi>γ</mi> <mo>·</mo> <mfrac> <mrow> <mi>D</mi> <mo>_</mo> <mi>total</mi> </mrow> <mrow> <mi>average</mi> <mo>_</mo> <mi>D</mi> </mrow> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </math> 其中S,L,D_total分别表示布局的面积、线长、交互模块中心距离总和,aversge_S,average_L,average_D分别表示面积、线长、交互模块中心距离总和的平均值;α、β、γ分别是面积、线长和所有交互模块中心折线距离总和在目标函数的权重;各个分量在目标函数中都用随机搜索中得到的平均值进行了归一化处理;当搜索不再收敛或已经达到终止温度时,停止进一步搜索,记录最优布局结果;本步骤中,模拟退火算法采用快速模拟退火算法,模拟退火算法的起始温度和终止温度,根据实际计算情况确定;(4)根据模拟退火算法获得的信息,计算各个模块的坐标以及各个模块的优化的面积、连线长度、交互模块中心折线长度;(5)采用线性规划算法,进一步对电路的各模块面积进行优化处理,线性规划的优化目标是在不改变原来相对位置条件下总面积最小,目标函数为f=λ1·hc+λ2·wc,其中λ1,λ2分别是模拟退火得到的布局结果长宽比例,hc,wc为总体布局的长度和宽度;线性规划的变量是所有模块的位置坐标(xi,yi),长、宽(hu,wi)及总体布局的长、宽(hc,wc);线性规划约束条件有四种:模块自身长宽比的范围:λmin<hi/wi<λmax,模块之间的位置约束:xi+wi<=xj和yi+hi<=yj,布局范围约束:xi+wi<=wc和yi+hi<=hc,参数范围约束:xi,yi,wi,hi,wc,hc>=0,λmin和λmax根据实际情况要求设定;(6)得到线性规划的目标函数和约束条件后,求解线性规划问题,得到满足所有约束条件下面积最优时所有参数的数值:各个模块位置xi,yi,长宽hi,wi及总体长宽hc,wc,即最终的布局结果。 |