基于图形处理单元的布线方法及其系统的制作方法

文档序号:6401880阅读:112来源:国知局
专利名称:基于图形处理单元的布线方法及其系统的制作方法
技术领域
本发明涉及集成电路设计领域,特别涉及集成电路的布线方法及其系统。
背景技术
在专用集成电路布线系统,以及可编程逻辑器件布线系统中,由于需要处理的器件数目可高达上千万,因此布线通常是整个集成电路物理设计流程中最耗时的一部分。在实际应用中,布线系统常常要用几天的时间才能完成一个几百万根线网的布线。在目前所有的布线技术中,单一线网的连线速度与集成电路芯片的布线资源图的大小相关,越大型、越复杂的电路,布线速度越慢。集成电路的连线方案中,最广泛被应用的是李氏迷宫布线系统(Lee’s Maze)和基于李氏方法改进的k*布线系统,并且在不丢失最优解的前提下,A*是目前所知的最快的布线方法。但是本发明的发明人发现,A*方法使用优先队列对结点的费用进行管理,这使得布线搜索是一个串行过程,最终的布线时间不仅与包含起点、终点的搜索空间(三维)大小有关,也与搜索过程中结点的实际费用和期望费用之误差有关。此外,当前的集成电路布线方法都是基于计算机中央处理单元的串行处理特性来设计,中央处理单元是计算机中处理基本算术、逻辑和输入输出的硬件结构,它是当前计算机系统的最核心的单元。虽然最新的中央处理单元具有多线程的特性,但是设计一个多线程的布线方法并不容易。现知的各种多线程布线方法都是在不同电路线网上进行并行计算,同一线网的布线仍然交与同一计算机处理单元进行串行处理。比如当有1000根线网需要布线,而中央处理单元可以同时开启8个线程,那么在同一时间,每个线程仍然只处理一根线网,总共有8根线网可以被同时布线。对于每根线网来说,它的布线速度并没有加快。而且由于中央处理单元的并行计算的能力相当有限,所以集成电路布线用多线程进行加速的效果也是有限的。

发明内容
本发明的目的在于提供一种基于图形处理单元的布线方法及其系统,利用图形处理单元的超并行处理能力进行布线,大大缩短了布线时间,获得比传统布线快一个量级以上的布线速度,并且不牺牲整个系统的结果性能。为解决上述技术问题,本发明的实施方式公开了一种基于图形处理单元的布线方法,包括以下步骤:信息输入步骤输入逻辑连接信息;总体布线资源图构造步骤总体布线单元根据该逻辑连接信息构造总体布线资源图;总体布线步骤超并行布线器根据该逻辑连接信息和该总体布线资源图进行布线并输出布线结果,其中该超并行布线器包括图形处理单元,上述图形处理单元同时监控该总体布线资源图中每个结点的状态进行布线搜索,从而完成布线连接;
详细布线资源图构造步骤详细布线单元根据该逻辑连接信息在经过布线的该总体布线资源图基础上构造详细布线资源图;详细布线步骤该超并行布线器根据该逻辑连接信息和该详细布线资源图进行布线并输出布线结果,其中该超并行布线器包括图形处理单元,上述图形处理单元同时监控该详细布线资源图中每个结点的状态进行布线搜索,从而完成布线连接;输出步骤输出完成布线的详细布线资源图。本发明的实施方式还公开了一种基于图形处理单元的布线系统,包括:输入单元,用于输入逻辑连接信息;

总体布线单元,用于根据该逻辑连接信息构造总体布线资源图并调用超并行布线器进行布线;详细布线单元,用于根据该逻辑连接信息在经过布线的该总体布线资源图基础上构造详细布线资源图并调用该超并行布线器进行布线;输出单元,用于输出完成布线的上述详细布线资源图;以及超并行布线器,用于根据该逻辑连接信息和上述布线资源图进行布线并输出布线结果,其中该超并行布线器包括图形处理单元,上述图形处理单元同时监控上述布线资源图中每个结点的状态进行布线搜索,从而完成布线连接。本发明实施方式与现有技术相比,主要区别及其效果在于:本发明利用图形处理单元的超级并行处理能力,将传统集成电路布线方法中最核心的优先队列去除,改以同时监控布线资源图中每个结点的状态来进行布线搜索,通过这种做法,布线的时间只与布线路径的长度有关,与布线空间的大小无关,并且能对单一连线使用成百上千的处理单元进行同时布线,布线速度要远快于当前已知的任何其他方法,且不牺牲整个系统的结果性能。进一步地,在布线前检查上述布线资源图的线网是否已布且无布线冲突,并将需要布线的线网拷贝入上述图形处理单元中,进一步提高图形处理单元的处理速度。进一步地,上述图形处理单元内存中的数据只是原布线资源图数据的一个精简子集,其中只包含结点编号和边费用,进一步提高图形处理单元的处理速度。进一步地,将整个布线分为总体布线和详细布线,加快了整个布线速度并且使上述图形处理单元的内存足以负荷当前超大规模集成电路的应用需要。


图1是本发明第一实施方式中一种基于图形处理单元的布线方法的流程示意图;图2是本发明第一实施方式中一种基于图形处理单元的布线方法中的布线步骤的流程示意图;图3是本发明第一实施方式中图形处理单元的并行搜索方法示意图;图4是本发明第三实施方式中一种基于图形处理单元的布线系统的结构示意图;图5是本发明第三实施方式中一种基于图形处理单元的布线系统的结构示意图;图6是本发明第三实施方式中一种基于图形处理单元的布线系统中的超并行布线器的结构示意图。
具体实施例方式在以下的叙述中,为了使读者更好地理解本申请而提出了许多技术细节。但是,本领域的普通技术人员可以理解,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方案。为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的实施方式作进一步地详细描述。本发明第一实施方式涉及一种基于图形处理单元的布线方法。图1是该基于图形处理单元的布线方法的流程示意图。如图1所示,该基于图形处理单元的布线方法包括以下步骤:信息输入步骤输入逻辑连接信息。在本实施方式中,该逻辑连接信息包括电路网表、工艺参数和器件位置信息等。可以理解,在本发明的其他实施方式中,还可以包括其他布线需要的信息,不限于上述的信
肩、O总体布线资源图构造步骤总体布线单元根据该逻辑连接信息构造总体布线资源图。在专用集成电路和可编程逻辑器件电路中,根据集成电路生产的工艺参数,不同的区域具有不同的布线容量。将电路中所有区域的布线容量计算出来,并根据区域的具体物理位置构造的图称为布线资源图,在该图中,结点是不同的布线区域,边是连接不同布线区域的布线资源,边的费用是布线资源的数量多少,布线资源少的边所对应的费用较高。总体布线步骤超并行布线器根据该逻辑连接信息和该总体布线资源图进行布线并输出布线结果,其中该超并·行布线器包括图形处理单元,上述图形处理单元同时监控该总体布线资源图中每个结点的状态进行布线搜索,从而完成布线连接。根据电路的逻辑网表,从某一器件的输出端口所在的布线资源图结点,通过一系列的布线资源图的边,到达网表制定的其他器件输入端口所在的结点的路径被称为集成电路布线。实现逻辑网表的物理布线方案可能有很多,每一方案中涉及的布线边的费用总和被定为该方案的费用。在所有方案中,费用最小的方案是该逻辑线网的最优布线。详细布线资源图构造步骤详细布线单元根据该逻辑连接信息在经过布线的该总体布线资源图基础上构造详细布线资源图;详细布线步骤该超并行布线器根据该逻辑连接信息和该详细布线资源图进行布线并输出布线结果,其中该超并行布线器包括图形处理单元,上述图形处理单元同时监控该详细布线资源图中每个结点的状态进行布线搜索,从而完成布线连接;其中,总体布线和详细布线的区别在于相应布线资源图的精度:总体布线资源图的结点是集成电路中的不同布线区域,边是区域间的分割线,边的费用决定于区域之间的布线资源数;详细布线资源图的结点是集成电路的预规划的布线格点、或者可编程逻辑器件中预制的线轨和连接器件,边是布线格点之间的金属连线,边的费用为该金属连线的相关属性(如导电性等)。总体布线和详细布线都调用相同的超并行布线器来进行线网连接。总体布线基于简化的信息进行布线,速度较快;详细布线在总体布线的基础上进行布线,可大大加快其布线速度。并且对于超大集成电路中的全局大线网,由于我们将布线方法分为总体布线和详细布线,因此将这些全局大线网划分为了一段一段的小线网,从而几乎不存在一个线网的覆盖区域不能完整传入图形处理单元内存的情况。但是作为系统的应急方案,当出现图形处理单元内存不足以覆盖待布线网的情况时,我们就运用中央处理单元来连接该线网。可以理解,在本发明的其他实施方式中,可以不分为总体布线和详细布线,也能实现本发明的方案。输出步骤输出完成布线的上述详细布线资源图。具体地说:如图2所示,上述布线步骤包括以下步骤:步骤a上述超并行布线器检查该布线资源图的线网是否已布且无布线冲突,若是,则结束布线,若否,则确定待布线网。该待布线网包括未布线网和有布线冲突的线网,该超并行布线器将确定的相应有布线冲突的线网进行拆线重布。步骤b上述超并行布线器将确定的待布线网覆盖的布线区域拷贝入上述图形处
理单元中。在本实施方式中,优选地,线网覆盖区域是一个矩形区域,能够覆盖线网的所有端点。可以理解,在本发明的其他实施方式中,可根据实际情况采用其他形状的线网覆盖区域。步骤c上述图形处理单元同时监控该布线区域中每个结点的状态进行布线搜索,从而完成布线连接。步骤d上述超并行布线器输出布线结果并更新该布线资源图,即将上述布线区域的新线网替换原线网,返回步骤a。
`
在步骤c中,上述图形处理单元同时监控布线区域中每个结点状态,并同步处理。在布线前检查上述布线资源图的线网是否已布且无布线冲突,并将需要布线的线网拷贝入上述图形处理单元中,进一步提高了图形处理单元的处理速度。可以理解,在布线前不经检查,直接将整个线网拷贝入上述图形处理单元中,也能实现本发明的技术方案。初始时,上述图形处理单元设置起始结点的费用为O、结点状态为搜索边缘状态,设置其余结点费用为无穷大、结点状态为未搜索状态。当结点的状态为搜索边缘状态时,上述图形处理单元计算该结点的相邻结点费用,若计算的相邻结点费用比原相邻结点费用小,则更新该相邻结点费用并将该相邻结点状态设置为搜索边缘状态,在处理完该结点后,将该结点状态设置为搜索完成状态。上述图形处理单元重复处理结点状态为搜索边缘状态的结点,直到发现终点结点。由上可以看到,本发明提出的超级并行处理器的核心是基于图形处理单元的超并
行搜索布线方法,在一个优选的例子中,该超并行搜索布线方法用伪语言描述如下:
权利要求
1.一种基于图形处理单元的布线方法,其特征在于,包括以下步骤: 信息输入步骤输入逻辑连接信息; 总体布线资源图构造步骤总体布线单元根据所述逻辑连接信息构造总体布线资源图; 总体布线步骤超并行布线器根据所述逻辑连接信息和所述总体布线资源图进行布线并输出布线结果,其中该超并行布线器包括图形处理单元,所述图形处理单元同时监控所述总体布线资源图中每个结点的状态进行布线搜索,从而完成布线连接; 详细布线资源图构造步骤详细布线单元根据所述逻辑连接信息在经过布线的所述总体布线资源图基础上构造详细布线资源图; 详细布线步骤所述超并行布线器根据所述逻辑连接信息和所述详细布线资源图进行布线并输出布线结果,其中该超并行布线器包括图形处理单元,所述图形处理单元同时监控所述详细布线资源图中每个结点的状态进行布线搜索,从而完成布线连接; 输出步骤输出完成布线的所述详细布线资源图。
2.根据权利要求1所述的基于图形处理单元的布线方法,其特征在于,所述布线步骤包括以下步骤: 步骤a所述超并行布线器检查所述布线资源图的线网是否已布且无布线冲突,若是,则结束布线,若否,则确定待布线网; 步骤b所述超并行布线器将确定的待布线网覆盖的布线区域拷贝入所述图形处理单元中;· 步骤c所述图形处理单元同时监控所述待布线网覆盖的布线区域中每个结点的状态进行布线搜索,从而完成布线连接; 步骤d所述超并行布线器输出布线结果并更新所述布线资源图,返回步骤a。
3.根据权利要求2所述的基于图形处理单元的布线方法,其特征在于,在步骤c中,所述图形处理单元同时监控所述布线区域中每个结点状态,并同步处理; 初始时所述图形处理单元设置起始结点的费用为O、结点状态为搜索边缘状态,设置其余结点费用为无穷大、结点状态为未搜索状态; 当所述结点的状态为搜索边缘状态时,所述图形处理单元计算该结点的相邻结点费用,若计算的相邻结点费用比原相邻结点费用小,则更新该相邻结点费用并将该相邻结点状态设置为搜索边缘状态,在处理完该结点后,将该结点状态设置为搜索完成状态; 所述图形处理单元重复处理结点状态为搜索边缘状态的结点,直到发现终点结点。
4.根据权利要求2或3所述的基于图形处理单元的布线方法,其特征在于,所述待布线网覆盖的布线区域精简后拷贝入所述图形处理单元,精简后的布线区域由结点编号和边的费用信息组成。
5.根据权利要求1至3中任一项所述的基于图形处理单元的布线方法,其特征在于,所述总体布线资源图的结点是布线区域,边是布线区域间的分割线,边的费用决定于布线区域间的布线资源数; 所述详细布线资源图的结点是预规划的布线格点,边是布线格点间的连线,边的费用为所述连线的相关属性。
6.根据权利要求1至3中任一项所述的基于图形处理单元的布线方法,其特征在于,所述逻辑连接信息包括电路网表、工艺参数和器件位置信息。
7.一种基于图形处理单元的布线系统,其特征在于,包括: 输入单元,用于输入逻辑连接信息; 总体布线单元,用于根据所述逻辑连接信息构造总体布线资源图并调用超并行布线器进行布线; 详细布线单元,用于根据所述逻辑连接信息在经过布线的所述总体布线资源图基础上构造详细布线资源图并调用所述超并行布线器进行布线; 输出单元,用于输出完成布线的所述详细布线资源图;以及 超并行布线器,用于根据所述逻辑连接信息和所述布线资源图进行布线并输出布线结果,其中该超并行布线器包括图形处理单元,所述图形处理单元同时监控所述布线资源图中每个结点的状态进行布线搜索,从而完成布线连接。
8.根据权利要求7所述的基于图形处理单元的布线系统,其特征在于,所述超并行布线器包括: 检查单元,用于检查所述布线资源图的线网是否已布并且无布线冲突; 确定单元,用于若所述线网未布或有布线冲突,则确定待布线网; 拷贝单元,用于将确定的待布线网覆盖的布线区域拷贝入所述图形处理单元中;图形处理单元,用于同时监控所述待布线网覆盖的布线区域中每个结点的状态进行布线搜索,从而完成布线连接; 输出更新单元,用于输出布线结果并更新所述布线资源图。
9.根据权利要求8所述的基于图形处理单元的布线系统,其特征在于,所述超并行布线器还包括精简单元,用于精简所述待布线网覆盖的布线区域,精简后的布线区域由结点编号和边的费用信息组成,所述拷贝单元将该精简后的布线区域拷贝入所述图形处理单元中; 所述图形处理单元用于同时监控每个结点状态,并同步处理; 所述图形处理单元初始时设置起始结点的费用为O、结点状态为搜索边缘状态,设置其余结点费用为无穷大、结点状态为未搜索状态; 当所述结点的状态为搜索边缘状态时,所述图形处理单元计算该结点的相邻结点费用,若计算的相邻结点费用比原相邻结点费用小,则更新该相邻结点费用并将该相邻结点状态设置为搜索边缘状态,在处理完该结点后,将该结点状态设置为搜索完成状态; 所述图形处理单元重复处理结点状态为搜索边缘状态的结点,直到发现终点结点。
10.根据权利要求7至9中任一项所述的基于图形处理单元的布线系统,其特征在于,所述逻辑连接信息包括电路网表、工艺参数和器件位置信息; 所述总体布线资源图的结点是布线区域,边是布线区域间的分割线,边的费用决定于布线区域间的布线资源数; 所述详细布线资源图的结点是预规划的布线格点,边是布线格点间的连线,边的费用为所述连线的相关属性。
全文摘要
本发明涉及集成电路设计,公开了一种基于图形处理单元的布线方法及其系统。本发明中,利用图形处理单元的超级并行处理能力,将传统集成电路布线方法中最核心的优先队列去除,改以同时监控布线资源图中每个结点的状态来进行布线搜索,通过这种做法,布线的时间只与布线路径的长度有关,与布线空间的大小无关,并且能对单一连线使用成百上千的处理单元进行同时布线,布线速度要远快于当前已知的任何其他方法,且不牺牲整个系统的结果性能。此外,将整个布线分为总体布线和详细布线,进一步加快了整个布线速度并且使图形处理单元的内存足以负荷当前超大规模集成电路的应用需要。
文档编号G06F9/46GK103246554SQ201310124138
公开日2013年8月14日 申请日期2013年4月10日 优先权日2013年4月10日
发明者陈利光, 王元, 赵永胜, 徐春华 申请人:上海安路信息科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1