发明名称 X结构下超大规模集成电路总体布线方法
摘要 本发明涉及一种X结构下超大规模集成电路总体布线方法,包括以下步骤:初始阶段,采用Steiner最小树方法将多端线网分解为多个两端线网,并对可连接的两端线网采用X结构边连接,即进行初始布线,得到近似的布线拥挤分布情况;主阶段,从所述近似的初始布线结果中选取最拥挤区域作为当前布线区域,为当前布线区域构建整数线性规划模型并求解;继而不断扩大布线区域并依次求解,直至布线区域扩张至整个芯片为止;后处理阶段,重新定义布线边代价,利用基于所述布线边代价的迷宫算法对尚未布通的两端线网进行布线,得到最终的总体布线结果。该方法有利于提高布线方案的质量,且易于实现,使用效果好。
申请公布号 CN103902774B 申请公布日期 2017.01.25
申请号 CN201410123885.4 申请日期 2014.03.31
申请人 福州大学 发明人 陈国龙;郭文忠;刘耿耿
分类号 G06F17/50(2006.01)I 主分类号 G06F17/50(2006.01)I
代理机构 福州元创专利商标代理有限公司 35100 代理人 蔡学俊
主权项 一种X结构下超大规模集成电路总体布线方法,其特征在于,包括以下步骤:(1)初始阶段,采用Steiner最小树方法将多端线网分解为多个两端线网,并对可连接的两端线网采用X结构边连接,即进行初始布线,得到近似的布线拥挤分布情况;(2)主阶段,从所述近似的布线拥挤分布情况中选取最拥挤区域作为当前布线区域,为当前布线区域构建整数线性规划模型并求解;继而不断扩大布线区域并依次求解,直至布线区域扩张至整个芯片为止;(3)后处理阶段,重新定义布线边代价,利用基于所述布线边代价的迷宫算法对尚未布通的两端线网进行布线,得到最终的总体布线结果;在主阶段中,所述整数线性规划模型为:<maths num="0001"><math><![CDATA[<mrow><mi>M</mi><mi>I</mi><mi>N</mi><mo>:</mo><mi>&beta;</mi><mo>*</mo><mrow><mo>(</mo><msub><mi>&alpha;</mi><mn>1</mn></msub><mo>*</mo><munderover><mo>&Sigma;</mo><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>t</mi></munderover><msub><mi>y</mi><mi>j</mi></msub><mo>*</mo><msub><mi>Wl</mi><mi>j</mi></msub><mo>+</mo><msub><mi>&alpha;</mi><mn>2</mn></msub><mo>*</mo><mi>s</mi><mi>t</mi><mi>d</mi><mo>(</mo><mrow><mi>c</mi><mi>o</mi><mi>n</mi><mi>g</mi><mrow><mo>(</mo><mrow><msub><mi>e</mi><mn>1</mn></msub><mo>,</mo><mo>...</mo><mo>,</mo><msub><mi>e</mi><mi>p</mi></msub></mrow><mo>)</mo></mrow></mrow><mo>)</mo><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001098444340000011.GIF" wi="1058" he="134" /></maths><maths num="0002"><math><![CDATA[<mrow><mi>S</mi><mo>.</mo><mi>T</mi><mo>.</mo><mo>:</mo><munder><mo>&Sigma;</mo><mrow><msub><mi>y</mi><mi>j</mi></msub><mo>&Element;</mo><msub><mi>N</mi><mi>k</mi></msub></mrow></munder><msub><mi>y</mi><mi>j</mi></msub><mo>=</mo><mn>1</mn><mo>,</mo><mi>k</mi><mo>=</mo><mn>1</mn><mo>,</mo><mn>2</mn><mo>,</mo><mo>...</mo><mo>,</mo><mi>n</mi></mrow>]]></math><img file="FDA0001098444340000012.GIF" wi="670" he="117" /></maths><maths num="0003"><math><![CDATA[<mrow><mi>&beta;</mi><mo>=</mo><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><mn>1</mn><mo>,</mo></mrow></mtd><mtd><mtable><mtr><mtd><mrow><mi>i</mi><mi>f</mi></mrow></mtd><mtd><mrow><munderover><mo>&Sigma;</mo><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mn>1</mn></munderover><msub><mi>a</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><msub><mi>y</mi><mi>j</mi></msub><mo>&le;</mo><mi>C</mi><mrow><mo>(</mo><msub><mi>e</mi><mi>i</mi></msub><mo>)</mo></mrow></mrow></mtd></mtr></mtable></mtd><mtd><mrow><mo>&ForAll;</mo><msub><mi>e</mi><mi>i</mi></msub><mo>,</mo><mi>i</mi><mo>=</mo><mn>1</mn><mo>,</mo><mn>2</mn><mo>,</mo><mo>...</mo><mo>,</mo><mi>p</mi></mrow></mtd></mtr><mtr><mtd><mrow><mn>1</mn><mo>,</mo><msup><mn>1</mn><mi>r</mi></msup><mo>,</mo></mrow></mtd><mtd><mrow><mi>e</mi><mi>l</mi><mi>s</mi><mi>e</mi></mrow></mtd><mtd><mrow></mrow></mtd></mtr></mtable></mfenced></mrow>]]></math><img file="FDA0001098444340000013.GIF" wi="1166" he="223" /></maths>y<sub>j</sub>∈{0,1},j=1,2,···,t其中Wl<sub>j</sub>表示候选解y<sub>j</sub>的线长;std()表示所有边拥挤度的标准差;cong()表示e<sub>1</sub>到e<sub>p</sub>的拥挤度集合,α<sub>1</sub>和α<sub>2</sub>分别表示两个优化目标的权重大小;β表示惩罚项,用以对违反布线边容量约束的方案进行一定程度的惩罚;y<sub>j</sub>表示候选解被选择与否,其取值为0或1,而<img file="FDA0001098444340000014.GIF" wi="211" he="111" />表示对于同一线网N<sub>k</sub>的候选解的取值之和为1,确保只有一个候选解被选取;n表示线网总数,e<sub>i</sub>表示总体布线网格边,a<sub>ij</sub>表示候选解j是否通过边e<sub>i</sub>,C(e<sub>i</sub>)表示边e<sub>i</sub>的最大允许走线数,p表示总体布线网格边数,r表示违反约束的边数,t表示候选解的总数。
地址 350108 福建省福州市闽侯县上街镇大学城学园路2号福州大学新区