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

基于无网格模型的集成电路模块到模块的布线方法技术

技术编号:4078310 阅读:210 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开一种基于无网格模型的集成电路模块到模块的布线方法,主要是为了找出集成电路布线的最短路径和提高布线效率而设计。本发明专利技术依据读入的障碍信息建立障碍列表,并将该障碍列表中的每一个多边形障碍都转化为矩形障碍,同时扩展矩形障碍边界,构造二维不均匀网格阵列;然后,将起始模块和终止模块分别转化为起始点集和终止点集;并采用A*算法进行路径搜索;最后,输出搜索结果。本发明专利技术能够找出集成电路布线的最短路径,且布线效率高。

【技术实现步骤摘要】

本专利技术涉及一种超大规模集成电路物理设计
,尤其涉及一种基于无网格 模型的集成电路模块到模块的布线方法。
技术介绍
随着集成电路的规模越来越大、集成度越来越高,专用集成电路(ASIC, Application Specific Integrated Circuit)已经向系统集成的方向发展,这类系统在一 个芯片上集成了数字电路、模拟电路以及数模混合电路。数字电路的集成规模已经到达了 百万门级,对设计工具的效率和速度是很大的挑战。模拟电路和数模混合电路的设计规模 比数字电路规模要小很多,但是其设计复杂性非常高,需要考虑更多的电路性能,满足更多 的设计约束,因而对设计自动化以及工具开发带来一定的难度。目前的数字电路设计工具已经成为了一个系统化的工具,可以实现从高层次综合 到低层次版图布局布线设计的自动化过程。在布线设计过程中,数字电路一般需经过总体 布线和详细布线两个阶段来完成。总体布线指导布线的大致走向并减小详细布线的规模。 详细布线在每个总体布线网格(区域)中完成布线的具体的连线和几何位置。近几年很多 布线器在详细布线中采用无网格布线来提高布线效率。与之相比,模拟电路设计基本上多 采用手工设计的方法进行版图编辑。模拟集成电路设计规模较小、电路性能要求高,布线设 计过程中,通常直接采用详细布线。为了满足模拟电路的性能要求,模拟电路布线的线宽变 化很大,无网格模型处理变线宽有着得天独厚的优势,适合模拟电路自动布线算法开发。集成电路布线算法根据布线区域的表示以及走线位置是否受限制分为两类模型 有网格布线模型(如图1所示)和无网格布线模型(如图2所示)。在有网格的布线模型 中,整个布线区域划分为等距离的方形网格,并规定走线位置只能在网格上;在无网格的布 线模型中,走线可以放置在空间区域中满足设计规则及连通性的任意位置。无网格布线相对于有网格布线对不同线宽和不同线间距的布线问题处理非常方 便,即连线的线宽和线间距不是固定而是可变的;同时无网格布线的布线效率也比有网格 模型高很多。但是无网格模型在管理布线区域和布线资源方面非常复杂,首先,无网格模型 的数据结构非常复杂,布线资源和已布线网不能简单地用一个网格点或者一个网格点阵来 表示,往往需要比较复杂的描述;其次,无网格模型在表示和处理模拟电路的性能要求和各 种约束条件方面比较复杂。在实际的版图设计中,布线的“源点,,和“目标点,,通常会是具有一定面积的几何 图形,而不是一个点。将源点和目标点视为具有一定面积的模块,即几何图形,布线过程就 变成了模块到模块的布线。对于模块到模块的布线,目前学术界已经有一些研究论文发表,主要是通过将模 块转化为一个包含有限个点的点集,从而将模块到模块的布线转化为点集到点集的布线来 完成布线过程的。但是现有研究主要针对有网格的布线模型,在有网格的布线模型中,模 块到点集的转化过程是比较容易实现的,只需要将模块覆盖的所有网格点加入到点集中即可。但是在无网格的布线模型中,可以认为一个模块内部有无穷多个点,选取哪些点作为布 线的起始和终止点就需要考虑布线目标和可能的走线路径,简单地选取一两个点来代表一 个模块,很可能导致最终的布线结果不能获得最短路径。对无网格模型的模块到模块的布 线方法的研究目前还没有见到有相关报道。
技术实现思路
针对上述问题,本专利技术提供一种能够快速找到布线最短路径的,且布线效率高的 。为达到上述目的,本专利技术所述基于无网格模型的集成电路模块到模块的布线方 法,包括以下步骤(1)读入布线区域内的障碍信息、待布线网信息和工艺信息;(2)依据上述障碍信息建立障碍列表;(3)将障碍列表中的每一个多边形障碍都转化为矩形障碍;(4)将障碍列表中的每个矩形障碍的边界进行扩展;(5)依据步骤⑷构造二维不均勻网格阵列;(6)将起始模块和终止模块分别转化为起始点集和终止点集;(7)采用k*算法进行路径搜索;(8)输出搜索结果。进一步地,步骤(1)中,所述待布线网信息包括该待布线网的起始模块和终止模 块;所述工艺信息包括该布线区域的最小线宽和最小线间距。进一步地,步骤(2)中,所述障碍列表中的每个列表元素由该障碍的顶点坐标表7J\ ο进一步地,步骤(3)的具体实现步骤如下3. 1遍历障碍列表,调用多边形到矩形的转化程序将每一个多边形障碍都转化为 矩形障碍;3. 2将障碍列表中存储的原多边形障碍删除,并将转化得到的矩形障碍添加到障 碍列表中。进一步地,步骤(4)具体包括以下步骤4. 1遍历步骤(3)得到的障碍列表,从当前遍历的障碍列表中读取矩形障碍的左 边界,右边界,下边界和上边界,并依据步骤(1)读入的工艺信息将每一个障碍边界按照 “线宽/2+线间距”的距离进行扩展;4. 2将左边界和右边界的扩展边界添加到横坐标集合中,将下边界和上边界的扩 展边界添加到纵坐标集合中。进一步地,步骤(6)具体包括以下步骤6. 1调用多边形到矩形的转化程序分别将起始模块和终止模块转化为至少一个矩 形模块,并分别添加到起始矩形链表和终止矩形链表中;6. 2分别遍历起始矩形链表和终止矩形链表,从当前遍历的矩形的属性中读取矩 形的左边界,右边界,下边界和上边界,并依据步骤(1)读入的工艺信息将每一个边界按照 “线宽/2”的距离进行收缩;6. 3将左边界和右边界的收缩边界列入到纵坐标集合中更新其内存储的纵坐标, 将下边界和上边界的收缩边界列入到横坐标集合中更新其内存储的横坐标;6. 4分别对更新后纵坐标集合和横坐标集合中的坐标进行排序,并分别对纵坐标 集合和横坐标集合去重;6. 5将横坐标集合中与各横坐标对应的垂直线与起始模块和终止模块的上下边界 的交点分别列入到起始点集合和终止点集合中,将纵坐标集合中与各纵坐标对应的水平线 与起始模块和终止模块的左右边界的交点分别列入到起始点集合和终止点集合中。进一步地,步骤(7) A*算法进行路径搜索的具体实现步骤如下7. 1创建待扩展点的链表,保存所有已生成而未考察的点;以及封闭链表,记录已 访问过的点;7. 2将起始点集合中的所有点按照该点到终止点集合中点的最短距离有序地列入 待扩展点的链表中;7. 3在上述待扩展点的链表中读取估价值最小的点n,并判断点η是否是终止点集 合中;是,结束搜索,不是,继续下面的步骤;7. 4对点η进行扩展,并对扩展后得到的点χ进行判断若点χ在待扩展点的链表中,比较点χ的不同路径的估价值,若该估价值小于待扩 展点的链表中的估价值,用该估价值更新待扩展点的链表中的估价值;若点χ在封闭链表中,比较点χ的不同路径的估价值,若该估价值小于封闭链表中 的估价值,用该估价值更新封闭链表中的估价值,并将点X放入待扩展点的链表中;若点χ既不在待扩展点的链表中,也不在封闭链表中;求解点χ的估价值,并将点 X放入待扩展点的链表中;7. 5将点η放入到封闭列表中;7. 6按照估价值将待扩展点的链表中的各点进行排序,重复步骤7. 3 7. 6。进一步地,步骤(8)依据步骤(7)的搜索结果;搜索成功,输出搜索到的路径,搜索 失败,输出布线失败。本专利技术在已有的基于隐式连接图的无网格布线算法的基础上,提出了一种基于无 网格模型的集成电路模块到模块的布线方法。本专利技术有以下几点有益的效果(1)本专利技术提出了一种将布线起始本文档来自技高网
...

【技术保护点】
一种基于无网格模型的集成电路模块到模块的布线方法,其特征在于,包括以下步骤:(1)读入布线区域内的障碍信息、待布线网信息和工艺信息;(2)依据上述障碍信息建立障碍列表;(3)将障碍列表中的每一个多边形障碍都转化为矩形障碍;(4)将障碍列表中的每个矩形障碍的边界进行扩展;(5)依据步骤(4)构造二维不均匀网格阵列;(6)将起始模块和终止模块分别转化为起始点集和终止点集;(7)采用A↑[*]算法进行路径搜索;(8)输出搜索结果。

【技术特征摘要】
一种基于无网格模型的集成电路模块到模块的布线方法,其特征在于,包括以下步骤(1)读入布线区域内的障碍信息、待布线网信息和工艺信息;(2)依据上述障碍信息建立障碍列表;(3)将障碍列表中的每一个多边形障碍都转化为矩形障碍;(4)将障碍列表中的每个矩形障碍的边界进行扩展;(5)依据步骤(4)构造二维不均匀网格阵列;(6)将起始模块和终止模块分别转化为起始点集和终止点集;(7)采用A*算法进行路径搜索;(8)输出搜索结果。2.根据权利要求1所述基于无网格模型的集成电路模块到模块的布线方法,其特征在 于,步骤(1)中,所述待布线网信息包括该待布线网的起始模块和终止模块;所述工艺信息 包括该布线区域的最小线宽和最小线间距。3.根据权利要求1所述基于无网格模型的集成电路模块到模块的布线方法,其特征在 于,步骤(2)中,所述障碍列表中的每个列表元素由该障碍的顶点坐标表示。4.根据权利要求1所述基于无网格模型的集成电路模块到模块的布线方法,其特征在 于,步骤(3)的具体实现步骤如下3. 1遍历障碍列表,调用多边形到矩形的转化程序将每一个多边形障碍都转化为矩形 障碍;3.2将障碍列表中存储的原多边形障碍删除,并将转化得到的矩形障碍添加到障碍列 表中。5.根据权利要求1或2所述基于无网格模型的集成电路模块到模块的布线方法,其特 征在于,步骤(4)具体包括以下步骤4.1遍历步骤(3)得到的障碍列表,从当前遍历的障碍列表中读取矩形障碍的左边界, 右边界,下边界和上边界,并依据步骤(1)读入的工艺信息将每一个障碍边界按照“线宽 /2+线间距”的距离进行扩展;4. 2将左边界和右边界的扩展边界添加到横坐标集合中,将下边界和上边界的扩展边 界添加到纵坐标集合中。6.根据权利要求1或2所述基于无网格模型的集成电路模块到模块的布线方法,其特 征在于,步骤(6)具体包括以下步骤6. 1调用多边形到矩形的转化程序分别将起始模块和终止模块转化为至少一个矩形模 块,并分别添加到起始矩形链表和终止矩形链表中;6. 2分别遍历起始矩形链表和终止矩形链表,从当前遍历的矩形的...

【专利技术属性】
技术研发人员:周强姚海龙蔡懿慈杨帆
申请(专利权)人:清华大学
类型:发明
国别省市:11[中国|北京]

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

1