一种芯片缓冲器的插入方法技术

技术编号:14984267 阅读:145 留言:0更新日期:2017-04-03 15:23
本发明专利技术涉及集成电路技术领域,尤其涉及一种芯片缓冲器的插入方法,所述方法包括:单元化所述芯片,以在所述芯片上形成若干均等的单元格;分别确定位于所述芯片上的所有门中每个门的可移动范围;基于所述每个门的可移动范围,在满足每个所述单元格至多被一个所述门或一个缓冲器覆盖的条件下,确定可插入在所述芯片内的所述缓冲器的数量。本发明专利技术通过将芯片单元化,在确定出芯片上的每个门的可移动范围之后,根据每个门的可移动范围可以确定出可插入在芯片内的缓冲器的数量,从而,不仅优化了芯片的布局,提高了芯片上可插入缓冲器的缓冲区的数量,还降低了芯片的互联延时。

【技术实现步骤摘要】

本专利技术涉及集成电路
,尤其涉及一种芯片缓冲器的插入方法
技术介绍
芯片上的gate是MOS管(MetalOxideSemiconductor)上的控制用的门。通常,芯片上会分布有多个门,门与门之间具有一定距离,当需要在两个门之间放置缓冲器(buffer),但是,两个门之间没有足够的位置时,只能将缓冲器移动到其他能够容纳该缓冲器的区域。如图1所示,假设需要在gate7和gate8之间插入一个缓冲器,但是,gate7和gate8之间没有足够大的位置放置缓冲器,缓冲器只能被移动到gate2和gate3之间进行放置。然而,在移动缓冲器的过程中,将会增加线长,当线长过大时,会增加芯片上的互联延时。综上所述,按照现有技术中的上述缓冲器插入方法,不仅芯片上可插入的缓冲器的数量有限,而且,在移动缓冲器的过程中容易造成缓冲区的总线长过大,从而增大芯片上的互联延时,降低缓冲器插入的效率。
技术实现思路
本专利技术通过提供一种芯片缓冲器的插入方法,解决了现有技术在芯片上可插入的缓冲器的数量有限,且缓冲器移动过程中线长过大所造成的芯片互联延时过长的技术问题。本专利技术实施例提供了一种芯片缓冲器的插入方法,所述方法包括:单元化所述芯片,以在所述芯片上形成若干均等的单元格;分别确定位于所述芯片上的所有门中每个门的可移动范围;基于所述每个门的可移动范围,在满足每个所述单元格至多被一个所述门或一个缓冲器覆盖的条件下,确定可插入在所述芯片内的所述缓冲器的数量。可选的,确定每个门的可移动范围,具体为:根据每个门在所述芯片上的初始位置,以及所述芯片的高度和宽度,确定每个门在所述芯片的垂直方向和水平方向上的可移动范围。可选的,所述芯片上的所述门或所述缓冲器逐行分布。可选的,一个所述门至少覆盖一个所述单元格,一个所述缓冲器至少覆盖一个所述单元格。可选的,当一个所述单元格或一组所述单元格被所述门覆盖时,一个所述单元格的顶点或一组所述单元格的顶点与所述门的顶点重合;当一个所述单元格或一组所述单元格被所述缓冲器覆盖时,一个所述单元格的顶点或一组所述单元格的顶点与所述缓冲器的顶点重合。可选的,所述基于所述每个门的可移动范围,在满足每个所述单元格至多被一个所述门或一个缓冲器覆盖的条件下,确定可插入在所述芯片内的所述缓冲器的数量,具体包括:根据整数线性规划,构建如下方程组:目标函数:其中,γi,j用于表示门是否被放置在顶点坐标为(i,j)的单元格内,βi,j用于表示缓冲器是否被放置在顶点坐标为(i,j)的单元格内,当门被放置在顶点坐标为(i,j)的单元格内,则γi,j为1,否则γi,j为0,当缓冲器被放置在顶点坐标为(i,j)的单元格内,则βi,j为1,否则βi,j为0,P为所述芯片上的任一单元格的顶点;求解所述方程组,从而确定可插入在所述芯片内的所述缓冲器的数量。本专利技术实施例中的一个或多个技术方案,至少具有如下技术效果或优点:本专利技术通过将芯片单元化,在确定出芯片上的每个门的可移动范围之后,根据每个门的可移动范围可以确定出可插入在芯片内的缓冲器的数量,从而,不仅优化了芯片的布局,提高了芯片上可插入缓冲器的缓冲区的数量,还降低了芯片的互联延时。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为现有技术中缓冲器插入方法的示意图;图2为本专利技术实施例中一种芯片缓冲器的插入方法的流程图;图3为本专利技术实施例中一个具体实施方式的示意图。具体实施方式为解决现有技术在芯片上可插入的缓冲器的数量有限,且缓冲器移动过程中线长过大所造成的芯片互联延时过长的技术问题,本专利技术提供一种芯片缓冲器的插入方法。为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例提供一种芯片缓冲器的插入方法,如图2所示,所述方法包括:步骤101:单元化芯片,以在芯片上形成若干均等的单元格。在具体实施过程中,首先将芯片按照事先定义好的一个单元的大小进行单元化,即,将芯片分为若干单元格,各个单元格的大小相同。一个门至少覆盖一个单元格,同样,一个缓冲器至少覆盖一个单元格。具体的,一个门可以覆盖一个单元格,一个门也可以覆盖多个单元格,当一个门覆盖多个单元格时,多个单元格即成为一组单元格。同样,一个缓冲器可以覆盖一个单元格,一个缓冲器也可以覆盖多个单元格,当一个缓冲器覆盖多个单元格时,多个单元格即成为一组单元格。其中,可以以每个单元格或每组单元格的左下角作为该一个单元格或该一组单元格的顶点,例如,对于一个单元格而言,该单元格的左下角作为该单元格的顶点,对于一组单元格而言,该组单元格中最左边的一个单元格的左下角作为该组单元格的顶点。进一步,当一个单元格或一组单元格被门覆盖时,一个单元格的顶点或一组单元格的顶点与门的顶点重合,同样,当一个单元格或一组单元格被缓冲器覆盖时,一个单元格的顶点或一组单元格的顶点与缓冲器的顶点重合。例如,当门覆盖在一个单元格上,则,门的顶点与该单元格的左下角重合,当门覆盖在一组单元格上,则,门的顶点与该组单元格中最左边的单元格的左下角重合,缓冲器具有同样的覆盖规则,此处不再赘述。在执行完步骤101之后,本申请执行步骤102:分别确定位于芯片上的所有门中每个门的可移动范围。在具体实施过程中,根据每个门在芯片上的初始位置,以及芯片的高度和宽度,给定每个门在芯片的垂直方向和水平方向上的可移动范围,即,每个门在芯片的x方向和y方向上的可移动范围。例如,如图3所示,在一具体实施例中,按照预定义好的一个单元的长度对芯片单元化之后,在一行芯片上形成6个单元格,该芯片上分布有2个门,分别为门1(gate1)和门2(gate2),gate1的初始位置位于第二单元格,gate2的初始位置位于第四单元格,gate1的顶点与第二单元格的顶点重合,gate2的顶点与第四单元格的顶点重合。给定的gate1的可移动范围为向左和向右移动1个单元格,则,gate1可以放置在第一单元格或第二单元格或第三单元格中。给定的gate2的可移动范围为向左和向右移动2个单元格,则,gate2可以放置在第二单元格或第三单元格或第四单元格或第五单元格或第六单元格中。在执行完步骤102之后,本申请执行步骤103:基于所述每个门的可移动范围,在满足每个所述单元格至多被一个所述门或一个缓冲器覆盖的条件下,确定可插入在所述芯片内的所述缓冲器的数量。在具体实施过程中,根本文档来自技高网...

【技术保护点】
一种芯片缓冲器的插入方法,其特征在于,所述方法包括:单元化所述芯片,以在所述芯片上形成若干均等的单元格;分别确定位于所述芯片上的所有门中每个门的可移动范围;基于所述每个门的可移动范围,在满足每个所述单元格至多被一个所述门或一个缓冲器覆盖的条件下,确定可插入在所述芯片内的所述缓冲器的数量。

【技术特征摘要】
1.一种芯片缓冲器的插入方法,其特征在于,所述方法包括:
单元化所述芯片,以在所述芯片上形成若干均等的单元格;
分别确定位于所述芯片上的所有门中每个门的可移动范围;
基于所述每个门的可移动范围,在满足每个所述单元格至多被一个所述门或一个缓冲器覆盖的条件下,确定可插入在所述芯片内的所述缓冲器的数量。
2.如权利要求1所述的方法,其特征在于,确定每个门的可移动范围,具体为:
根据每个门在所述芯片上的初始位置,以及所述芯片的高度和宽度,确定每个门在所述芯片的垂直方向和水平方向上的可移动范围。
3.如权利要求1所述的方法,其特征在于,所述芯片上的所述门或所述缓冲器逐行分布。
4.如权利要求1所述的方法,其特征在于,一个所述门至少覆盖一个所述单元格,一个所述缓冲器至少覆盖一个所述单元格。
5.如权利要求4所述的方法,其特征在于,当一个所述单元格或一组所述单元格被所述门覆盖时,一个所述单元格的顶点...

【专利技术属性】
技术研发人员:黄晓辉吴伟宗
申请(专利权)人:宁波伟吉电力科技有限公司
类型:发明
国别省市:浙江;33

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

1