结构化asic器件的时钟信号网络的制作方法

文档序号:6558645阅读:130来源:国知局
专利名称:结构化asic器件的时钟信号网络的制作方法
背景技术
0001本发明涉及一种时钟信号分配电路,该电路用于有时被通称为结构化专用集成电路(结构化ASIC)的那种类型的集成电路器件。
0002结构化ASIC是具有一些预定电路特征的器件,但它们在某种程度上也是可定制的。例如,结构化ASIC可包括许多相对小的逻辑元件(在此称为混合逻辑元件或HLE)的二维阵列。这些HLE的基本电路总是相同或者基本相同的,并且是由用于制造结构化ASIC的一个掩模子集提供的。因此,这个子集中的掩模可以总是相同或者基本相同的。通过定制一个或多个用以制造特定的结构化ASIC产品的附加掩模,就能在某种程度上定制HLE所执行的全部功能(一个或多个)。类似地,通过定制用于制造所述产品的附加掩模,即能够定制到HLE、来自HLE和/或在HLE之间的连接。由于结构化ASIC总是具有相同的基本电路,所以设计它来执行特定任务的任务被极大地简化、加速,增加了可靠性并减少了成本。不需要“从草稿”(也就是从头进行)开始设计整个ASIC。相反,只需要设计可定制的掩模。
0003结构化ASIC技术的一个可能应用是生产功能等同于被编程的现场可编程门阵列(FPGA)的ASIC。在逻辑设计已经在FPGA中被充分“证明”之后,这个设计就可被“移植”到结构化ASIC。参考文献,比如Chua等人2004年7月2日提交的美国专利申请10/884460以及Schleicher等人2005年4月1日提交的美国专利申请11/097633示出了结构化ASIC技术的这类应用。
0004在上述Chua等人和Schleicher等人的参考文献中示出的结构化ASIC的类型中,在结构化ASIC上的电路功能(例如逻辑功能)的配置(位置或安排)能够非常不同于这些功能在这样的FPGA上的的配置结构化ASIC被假设与该FPGA在功能上等同。因此,简单地在结构化ASIC上复制在相关FPGA上设置的电路的架构是不可能的,该电路用于将时钟信号路由或者说分配到功能电路。另一方面,出于多种原因,比如设计任务的成本和复杂性,以及良好设计的时钟网络对结构化ASIC的最佳性能的极大重要性,所以不认为针对可能希望使用结构化ASIC来实现的每个逻辑设计而设计完全定制的时钟电路是个好方法。

发明内容
0005根据本发明,结构化ASIC器件的时钟分配电路包括一个确定部分和多个可配置部分。所述确定部分利用预定布置的导线段和缓冲器电路,将时钟信号分配到器件上的多个预定位置。时钟分配电路的各个可配置部分是与每个预定位置相关联的,并且服务于位于结构化ASIC中、与所述预定位置相邻的区域内的任何时钟利用电路。特别是,如果与一个预定位置关联的区域包括时钟利用电路,那么与这个预定位置关联的可配置电路就被配置成只要所述时钟利用电路位于所述区域内,即在该预定位置将从所述确定部分接收的时钟信号传给所述时钟利用电路。
0006每个可配置部分可包括可配置导线和可配置部分缓冲器电路。每个可配置部分可包括多个可配置子部分,所述可配置子部分服务于该可配置部分所服务的区域的各自的子区域。
0007结构化ASIC的逻辑元件电路可被用于设置任意或全部上述缓冲器电路。所述逻辑元件电路可利用结构化ASIC相对低的金属层。一个或多个较高的金属层可被用于上述的可配置导线。一个或多个更高的金属层可被用于上述的确定部分的导线段。
0008可仅仅按实际需要设置时钟分配电路。例如,上述缓冲器电路所不需要的任何逻辑元件电路可被用于其他目的(例如在结构化ASIC的逻辑电路中)。不需要的任意上述确定部分的导线段可用于其他目的(例如作为附加的功率分配导线)。在每个可配置部分中仅仅提供实际必要的电路(如果有的话)。
0009本发明的其他特征、其本性和各种优点从附图和以下的详细描述将变得更明显。


0010图1是根据本发明的说明性结构化ASIC电路的代表部分的简化示意框图。
0011图2是图1所示电路的某些方面的代表部分的一个说明性实施例的简化示意框图。
0012图3是图1所示电路的某些方面的另一个代表部分的一个说明性实施例的简化示意框图。
0013图4是图1电路的某些方面的代表部分的一个说明性实施例的简化示意框图。
0014图5是图1电路的其他方面的代表部分的一个说明性实施例的简化示意框图。
具体实施例方式
0015图1示出了根据本发明的说明性结构化ASIC器件10的一个代表象限。具体的说,图1示出了器件10的左上象限。其他三个象限一般来说可能是类似的。例如,右上象限可以近似是关于图1电路的右边缘的一般邻近地区中的垂直线的图1所示内容的镜像。左下象限可以近似是关于图1电路的底边缘的一般邻近地区中的水平线的图1的镜像。右下象限可以近似是关于穿过图1电路的右下角的线条的图1的镜像,该线条在别的地方处于所述电路之外,并与水平或垂直线成45°角。
0016图1示出了以下组件宏电路(macro)20a、20b、20c、20d和20e;混合逻辑元件(HLE)组30;时钟信号分配导线40;时钟信号缓冲器50;和从导线40到HLE组30中电路的连接60。
0017宏电路20对于本发明相对而言是不重要的。宏电路20的例子是锁相环电路、存储器电路和专用于执行特殊类型电路功能的其他电路。和HLE的数量相比,这些宏电路的数量是相对少的。它们处于预定的位置。它们可能需要连接到时钟分配电路,但是因为多种因素,比如它们相对少的数量和预定位置,这不是主要的难题。
0018对时钟分配来说,更困难的问题是使时钟信号到达海量的HLE。这是本发明的一个重要方面。
0019应该预先注意以下内容。在说明性实施例中,HLE利用金属层1-4。导线40利用金属层7和8(水平导线40位于金属层7中而垂直导线40位于金属层8中)。尤其是金属层5和6被用于从连接60到关联的HLE组30的另外的时钟分配电路。图1中的每条导线40实际上可表示能够传送不同时钟信号的几条平行导线。例如,可以存在几个这样的所谓全局时钟信号这些全局时钟信号可在遍布器件的导线40上获得。作为另一例子,可存在各种这样的所谓局部时钟信号仅仅一个象限或者可能两个边缘相邻的象限能够得到它们。正像每条线40可表示几条平行导线,每个缓冲器50可表示缓冲器电路的几个实例,每个实例服务于进入和离开缓冲器位置的相应导线40。
0020根据本发明,图1所示的导线40(和缓冲器50)的结构(总体布置)优选是预定的。换句话说,对于正在讨论的说明性实施例,图1示出了总是被用于将时钟信号从其源位置分配到连接60、再到HLE组30的时钟分配资源(导线40和缓冲器50)的布局。因此,这有时被称为本发明的时钟分配电路的确定部分。使用“确定”一词,是因为时钟分配电路的这个部分具有图1所示的预定结构或排列。使用本说明书中的这种确定电路有许多重要的优点。例如,它简化了设计时钟电路的任务,所述时钟电路可能需要将时钟信号发送到实际在海量HLE中任意位置的一个HLE。仅仅时钟分配电路的最后的、相对小和短的部分(从连接60到关联HLE组30中的一个或多个HLE)需要以更特殊而不那么确定的方式来设计。作为另一例子,可以预先设计所述确定时钟分配电路,以满足各种与可允许时钟信号延迟、可允许时钟信号相位差(到时钟分配网络的不同部分的差值延迟)等等问题(举例来说)相关的目的。时钟分配电路最后的、不太确定(或者说可配置)的部分,即从连接60到相关联组30中各个HLE的部分,则例如通过限制每个组30的尺寸,单独地被保持成相对的小,所以这些部分并不显著改变通过使用确定电路所能达到的结果。(前一句子中的“结果”指的是前述操作特征,比如可允许时钟信号延迟、可允许相位差等等)。
0021关于诸如延迟和相位差之类问题,应该注意的是,图1中的确定电路被布置得,使通过这个电路从任何时钟信号源到任何连接60的距离近似相同并且包括大致相同数目的缓冲器50。
0022应该理解的是,图1仅仅示出了确定电路的一个说明性实施例,而其它实施例(结构或排列)也是可能的。但是,基于所描述的说明性结构的所有结构化ASIC产品均利用了具有图1所示总体布置或排列的确定电路40/50/60。
0023还应该理解的是,虽然图1所示的电路40/50/60基本是确定的,但是它对于实现不同的时钟分配网络是有用的。例如,在所示确定性网络的各部分中的不同导线40可通过各种方式彼此连接,从而以许多不同的方式来分配各种时钟信号。作为这方面的一个例子,在其中一个引线上的(该引线由图1中最下面的水平导线40来表示)特殊全局时钟信号可能不需要在所示象限中。因此,那个全局时钟信号就不需要被接到图1所示的另外的时钟分配电路中。通过选择如何在金属层7和金属层8中的各种导线40之间进行通路连接,可作出这些路由选择。作为另一例子,如果在确定性网络中的某个点之外不需要全局或局部时钟信号,那么通过不将传送那个信号的导线40连接到缓冲器50,该信号在那个点之外的分配就能够被切断(否则就应在那个点提供信号分配)。(局部时钟信号可在图1中由相对长的、最右边的垂直线所表示的引线上进入。)如果需要,不用于时钟分配的导线段40可代之以被用于其他目的,如功率分配。作为选择,不用于时钟分配的导线段40和关联的缓冲器50可用于高扇出数据信号(high fanoutdata signal)分配。作为另一可能,不用于时钟分配并且在HLE(见下面)中的缓冲器50可被用于其他目的,比如用于逻辑电路中。
0024根据本发明的另一方面,某些或全部缓冲器50优选是使用HLE电路实现的。图2示出了HLE 200的一个说明性实施例。这里图2和上述Schleicher等人的参考文献中的图2相同。它也类似于上述Chua等人的参考文献中的图3。这些参考文献完整描述了这个电路,所以本说明书能够在某种程度上简化其描述。电路200的组件包括多路复用器210;与非门(NAND)220;反相驱动器或缓冲器230;垂直互连导线240、250、260和270;水平互连导线310、312、314、316、320、322、330、340、350、360、370;可选择的内部连接位置410和430;可选择的邻近HLE的连接位置430;以及可选择的更高级别的连接位置460。
0025例如,缓冲器230可被(尤其)用于缓冲HLE 200的输出信号。作为选择,缓冲器230可被用于提供图1所示的部分或全部缓冲器50。在后一情况中,举例来说,待缓冲的时钟信号可从金属层7或金属层8导线40下移,通过插入层而到达端口460,端口460处于那个HLE中的缓冲器230的相邻HLE上游。如果有必要,就在HLE200内进行任何必要连接,以将该信号提供给那个缓冲器230。缓冲器的输出信号(即提供给缓冲器的缓冲版信号因此也是加强版信号)就能够随后被返回到相关的金属层7或金属层8导线40的下一段。
0026上述Chua等人的参考文献示出了HLE 200的缓冲强度能够被有选择地改变的几种方式。在本发明中,可用任何这类技术来提供具有不同强度的缓冲器50。
0027如果被用于提供缓冲器50的HLE 200具有缓冲中不被涉及的组件(例如多路复用器210),那些组件就能够用于其他目的(例如执行逻辑)。
0028图3示出了两个相邻的HLE(200e和200f)可被一起使用,充当触发器或寄存器。这里图3和上述Chua等人的参考文献中的图3相同,因此本说明书不需要再次广泛讨论。但是应注意,图3是HLE 200e和200f的简化展示。这些HLE(和所有HLE一样)实际包括图2所示的所有电路。但是为了简化描述,图3倾向于仅仅显示实际被用来实现触发器或寄存器的HLE元件和元件互连部分(粗线)。图3所示的电路需要时钟信号,以作为触发器或寄存器工作。这个电路因此是有时被称为时钟利用电路的那种电路的一个例子。
0029包括图4是为了强调结构化ASIC 10包括海量的HLE 200。(图2类似于上述Chua等人的参考文献中的图16)。此外,图4(通过不同的截面线)显示了几个相邻或靠近的HLE如何被一起使用,以执行用户所需的各种逻辑功能。HLE的这种组或群被称为CHLE。(图4的这些“组”和图1中的组30不相同。联系图4讨论的组的类型倾向于相对小(例如每组不超过6个HLE),而图1中的每个组30可包含数百个HLE)。使用图4中示出的行和列标记,以下是在图4中所示每个CHLE中利用的HLE 200的列表
CHLE1A1,A2,B1CHLE2A3,A4CHLE3B2,C1,C2,C3CHLE4B3,B4CHLE5D1,E1,E2,F1CHLE6D2,D3,D4CHLE7F2图4所示的CHLE边界仅仅是许多可能的CHLE边界排列其中之一。这确实是HLE 200的海洋,其能够以大量的不同方式被分组成CHLE,以便执行用户想要执行的任何逻辑。此外,寄存器(类似于图3所示)可在这个HLE海洋中的任何地方实际出现。因此图4指出了在不受益于本发明的条件下,设计良好的时钟网络以便使时钟信号到达这些寄存器的困难。
0030图5示出了每个连接60之外的电路的说明性实施例。每个HLE组30中的HLE 200(未个别示出)被分成这种HLE的16个子组100。组30中的子组100被排列成二维阵列,该二维阵列由子组的相交的行和列(每行每列中包括4个子组)构成。每个子组100包括多个HLE 200(也未个别示出)。每个子组100中的HLE 200最好被排列成由相交HLE行和列构成的二维阵列(例如图4所示的阵列)。子组100中HLE的数目最好不大至发生这样的情况在这种子组中可能出现的寄存器的最大数目,将会超过该子组中最后一个驱动器(缓冲器)110能够充分支持的数目。例如,子组100的大小可以使得可能出现在子组100中的寄存器的最大数目是大约65。
0031图5示出了图1所示确定性时钟分配电路的代表部分中的最后导线段40和最后的缓冲器50。位于缓冲器50的输出端的连接60将缓冲器输出信号向下送到金属层5和/或6,金属层5和/或6被用于把缓冲器50的输出信号分配给每个子组100,各子组100包括至少一个寄存器140,寄存器140需要由所示缓冲器50输出的时钟信号输出。特别是,在金属层5和/或金属层6中设置有从连接60到每个子组100中的缓冲器110的导线120,缓冲器110需要缓冲器50的输出信号。与缓冲器50类似,缓冲器110优选是用子组100内的一个HLE 200的电路实现的,子组100包括缓冲器110。如果子组100不需要所示缓冲器50的输出信号,那么这个子组中的缓冲器HLE 200就能够被完全释放,用于其他服务(例如在逻辑中使用)。图5中子组100的左列中可能的缓冲器110是这样的HLE缓冲器的实例这些HLE缓冲器是不需要的,并因此而能够被用于其他目的。每个缓冲器110的输出信号被施加到关联子组100中每个寄存器140的时钟输入终端,该关联子组100需要那个缓冲器110所输出的时钟信号输出。导线130(还是位于金属层5和/或金属层6中)提供从缓冲器110到关联寄存器140的这些连接。
0032如上所述,图1所示本发明的时钟分配电路部分在此有时被称为该电路的确定部分。与图5所示相同处于连接60右边的电路在此有时被称为本发明的时钟分配电路的可配置部分。所述电路的确定部分(图1)被称为是确定的,原因在于它通常符合预定的图案(例如关于导线段40和缓冲器50的位置)。这并非意味着所谓的确定部分在某些方面是不可配置的。例如,在根据这些总体设计的某些结构化ASIC中可省略某些导线段40。类似地,可省略某些缓冲器50。但是,对于所有具有这种说明性总体设计的结构化ASIC产品,通常所述电路的确定部分总是遵循相同的图案或图1所示类型的图案。换言之,就需要并因此而使用导线段40这方面来看,它是如图1概括所示那样被设置的。类似地,只要用于时钟分配的导线段40在这样的缓冲器50位置是彼此连接的,缓冲器50就是如图1概括所示那样设置的。
0033和图5所示一样的电路被称为是可配置的,因为仅仅在特定的结构化ASIC产品中,按实际需要的时间、位置和数量来设置缓冲器110与导线120和130。例如,导线120的路由选择在不同产品之间能够变化(虽然在图5中示为单条直线,但每条导线120实际可由彼此间构成直角的两段或更多段导线组成)。对于导线130这点相同。可能存在图5所示电路的次要方面,这些方面在一定程度上是确定性的。例如,连接60相对于组30的位置可以是预定的,和/或子组100中缓冲器110的位置可以是预定的。但通常来说,图5所示电路主要是可配置的(即不是预定的),且因此即使所有这些产品在其确定部分遵循相同的总体设计,但是从一个结构化ASIC产品到下一个结构化ASIC产品至少是可能有相当大差别。
0034应该理解的是,前面仅仅是本发明原理的说明,本领域技术人员可进行各种修改而不偏离本发明的范围和精神。例如,图1所示的时钟分配电路的总体设计仅仅是说明性的,如果希望的话,可使用其他的总体设计。另一例子,组30中子组100的数量可不同于图5所示的数量。在具有不同总体布置的结构化ASIC中的每个子组100中可包括不同数量的HLE。每个HLE 200的电路可以不同于图2所示的说明性实施例。
权利要求
1.一种用于结构化ASIC的时钟分配电路,包括一确定部分,其可用于将时钟信号分配到所述结构化ASIC上彼此间隔的多个预定位置中的任何预定位置;和多个可配置部分,每个可配置部分与相应一个所述预定位置相关联,用于将从位于所述关联预定位置的所述确定部分接收到的时钟信号分配到时钟利用电路,该时钟利用电路可处于预定区域内的多个位置中的任何位置,该预定区域与所述关联预定位置相邻。
2.根据权利要求1所述的电路,其中所述确定部分包括预定布置的导线段;和多个缓冲器电路,其位于连续的各个所述导线段之间。
3.根据权利要求2所述的电路,其中所述结构化ASIC包括逻辑元件的二维阵列,且其中所述逻辑元件的电路被用于提供所述缓冲器电路。
4.根据权利要求3所述的电路,其中所述逻辑元件利用所述结构化ASIC的相对低金属层,且其中所述导线段利用在所述相对低金属层之上的至少一个金属层。
5.根据权利要求1所述的电路,其中每个所述预定区域包括多个预定的子区域,每个子区域可在所述子区域内的多个位置中的任何位置包括时钟利用电路,且其中一可配置部分与一区域相关联,该区域包括至少一个具有时钟利用电路的子区域,所述可配置部分包括和包括时钟利用电路的每个子区域相关联的一个可配置子部分。
6.根据权利要求5所述的电路,其中与包括时钟利用电路的子区域相关联的每个所述可配置子部分包括子部分缓冲器电路;和可配置子部分导线,其从所述子部分缓冲器电路连到处于与所述可配置子部分相关联的子区域中的每个时钟利用电路。
7.根据权利要求6所述的电路,其中与包括时钟利用电路的区域相关联的每个可配置部分包括可配置导线,其从与所述可配置部分相关联的所述预定位置连到属于该可配置部分的一部分的每个子部分缓冲器电路。
8.根据权利要求7所述的电路,其中所述结构化ASIC包括逻辑元件的二维阵列,且其中所述逻辑元件的电路被用于提供所述缓冲器电路。
9.根据权利要求8所述的电路,其中所述逻辑元件利用所述结构化ASIC的相对低金属层,且其中所述可配置导线和所述可配置子部分导线利用在所述相对低金属层之上的至少一个金属层。
10.根据权利要求9所述的电路,其中所述确定部分包括预定布置的导线段;和多个缓冲器电路,其位于连续的各个所述导线段之间。
11.根据权利要求10所述的电路,其中所述逻辑元件的电路被用于提供所述确定部分的所述缓冲器电路。
12.根据权利要求11所述的电路,其中所述导线段利用至少一个金属层,该金属层在被用于所述可配置导线和所述可配置子部分导线的所述至少一个金属层之上。
13.结构化ASIC电路,包括逻辑元件的阵列,所述逻辑元件被分成多个组,每个组包括所述逻辑元件的相应子组,而且每个所述组与所述结构化ASIC上各自的预定位置相邻近;时钟分配电路的预定图案,其用于至少潜在地将至少一个时钟信号分配到每个所述预定位置;和可配置时钟分配电路,其与包括时钟利用电路的每个所述组相关联,用于将至少一个时钟信号从位于与该组关联的预定位置的所述预定图案分配到该组中的所述时钟利用电路。
14.根据权利要求13所述的电路,其中所述预定图案包括导线段;和缓冲器电路,其使连续的各个所述导线段互连。
15.根据权利要求14所述的电路,其中所述逻辑元件的电路被用于提供所述缓冲器电路。
16.根据权利要求13所述的电路,进一步包括缓冲器电路,其在与包括时钟利用电路的组相关联的每个所述预定位置,使所述预定图案与所述可配置的时钟分配电路互连。
17.根据权利要求16所述的电路,其中所述逻辑元件的电路被用于提供所述缓冲器电路。
18.根据权利要求13所述的电路,其中每个所述组包括所述逻辑元件的多个子组,且其中所述可配置的时钟分配电路包括缓冲器电路,其用于包括时钟利用电路的每个所述子组;第一导线段,其从与包括时钟利用电路的所述组关联的所述预定位置连到包括时钟利用电路的该组中的每个子组的所述缓冲器电路;和第二导线段,其从每个所述缓冲器电路连到与所述缓冲器电路关联的所述子组中的每个时钟利用电路。
19.根据权利要求18所述的电路,其中所述逻辑元件的电路被用于提供所述缓冲器电路。
20.结构化ASIC电路,包括逻辑元件的二维阵列,所述逻辑元件被分成二维阵列的逻辑元件组;时钟分配电路的预定图案,其用于至少潜在地将至少一个时钟信号分配到每个所述组;和可配置时钟分配电路,其与包括时钟利用电路的每个所述组关联,用于将至少一个时钟信号从位于与该组相邻的预定位置的所述预定图案分配到该组中的所述时钟利用电路。
全文摘要
结构化ASIC器件的时钟分配电路包括一个确定部分和多个可配置部分。所述确定部分利用预定布置的导线段和缓冲器,用于将时钟信号分配到器件上的多个预定位置。从每个预定的位置,时钟分配电路的关联的可配置部分将时钟信号分配给任何时钟利用电路,该时钟利用电路在结构化ASIC的预定区域需要这个时钟信号,该结构化ASIC由那个预定的位置提供服务。
文档编号G06F17/50GK1873579SQ20061008093
公开日2006年12月6日 申请日期2006年5月23日 优先权日2005年5月31日
发明者林翠佩, 杜如敏, 郭耀发, 蔡家庆 申请人:阿尔特拉公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1