基于知晓封装状态的泄漏功耗减少的制作方法

文档序号:11864918阅读:156来源:国知局
基于知晓封装状态的泄漏功耗减少的制作方法与工艺

本发明涉及集成电路,并且更特别地涉及具有设置为低泄漏状态的禁止模块的集成电路。



背景技术:

已知的,设计多模块集成电路(IC)以用于在各种不同类型的IC封装(也叫做芯片或封装的半导体装置)中使用,其中特定的封装类型可能不使用所有可用的模块。在这种封装类型中,不使用的模块被禁止。即使不使用的模块被禁止,它们可能仍然具有显著水平的漏电功耗,在一些应用中,诸如在便携消费电子装置中,其可不期望地限制在充电期之间的电池寿命。

附图说明

从以下详细的描述、附加的权利要求,以及相应附图中本发明的实施例将变得更明显,附图中相似的附图标记代表类似的或同样的元件。

图1是常规的逻辑NAND单元的电路原理图;

图2是代表了通用的、常规的具有多个输入的组合逻辑电路的高级框图;

图3是包括模块A和B的集成电路的简化框图;

图4是图3的集成电路的一部分的原理图;

图5是根据本发明的一个实施例的知晓封装逻辑NAND单元的晶体管级图,其中在知晓封装控制信号pkgb无效时,知晓封装NAND单元的输出f被强制为逻辑-1;

图6是根据本发明的另一个实施例的知晓封装逻辑NAND单元的晶体管级图,其中在知晓封装控制信号pkg有效时,知晓封装NAND单元的输出f被强制为逻辑-0;

图7A是根据本发明的一个实施例的知晓封装寄存器的晶体管级图,其中在知晓封装控制信号pkgb无效时,知晓封装寄存器的真寄存器输出q被强制为 逻辑-1;

图7B是根据本发明的一个实施例的知晓封装寄存器的晶体管级图,其中在知晓封装控制信号pkg有效时,知晓封装寄存器的真寄存器输出q被强制为逻辑-0;

图8是一个可能的用于设计本发明的集成电路的方法的流程图;

图9A是通用的常规逻辑单元的电路原理图;

图9B是图9A的逻辑单元的知晓封装版本的电路原理图,其输出x在知晓封装控制信号(pkgb)无效时被强制为逻辑-1;以及

图9C是图9A的逻辑单元的知晓封装版本的电路原理图,其输出x在知晓封装控制信号有效时被强制为逻辑-0。

具体实施方式

这里公开了本发明的详细说明性实施例。然而,这里公开的特定结构和功能细节仅是代表性的为了描述本发明的示例性实施例。本发明可以以许多替换形式实现并且不应当理解为仅限于这里给出的实施例。此外,这里使用的术语仅是为了描述特定的实施例而不是意图限制本发明的示例性实施例。

如这里所使用的,单数形式“一个”和“一个(特指)”也意图包括复数形式,除非上下文明确给出相反的指示。进一步应当理解术语“包含”、“包含着”、“包括”和/或“包括着”指示存在表述的特征、步骤或者组件,但是并不排除存在或者附加一个或多个其他特征、步骤或者组件。还应当注意的是在一些替代实现中,表述的功能/动作可能不是以附图中表述的顺序出现。例如,连续出现的两张图实际上可能大体上同时执行或者可能有时以相反的顺序执行,取决于包含的功能/动作。

在一个实施例中,本发明是用于在多个不同封装类型中的任意一种中使用的集成电路。该IC包括多个模块和知晓封装控制器。当在第一封装类型的封装中使用时,使能IC的第一模块,以及当在第二封装类型的封装中使用时,禁止第一模块。第一模块包括(i)第一被驱动电路集合,被配置为接收输入值的输入向量,其中低功耗输入向量具有将第一被驱动电路集合设置为低泄漏功耗状态的输入值的集合,和(ii)第一驱动电路集合,被配置为产生用于第一被驱动电路集合的输入向量,其中第一驱动电路集合包括一个或多个知晓封装单元。 知晓封装控制器被连接,以产生用于一个或多个知晓封装单元的知晓封装控制信号。当IC被组装在第一模块被禁止的第二封装类型的封装中时,知晓封装控制器被配置为产生用于一个或多个知晓封装单元的知晓封装控制信号以使得第一驱动电路集合产生低功耗输入向量,该输入向量将禁止的第一模块设置为其低泄漏功耗状态。

在另一个实施例中,本发明是一种方法,该方法包括(a)生成初始IC设计,其用于在多种不同的封装类型中的任意一种中使用,IC包括第一模块,所述第一模块具有第一被驱动电路集合,被连接以被IC的第一驱动电路集合所产生的第一输入向量所驱动;(b)执行功率分析以确定低功耗输入向量,其将第一被驱动电路集合设置为低泄漏功耗状态;以及(c)通过将第一驱动电路集合中的一个或多个单元修改为知晓封装单元来更新IC设计,知晓封装单元被配置为从IC的知晓封装控制器接收知晓封装控制信号。当IC被组装到其中第一模块被禁止的封装中时,知晓封装控制器被配置为产生到第一驱动电路集合中的一个或多个知晓封装单元的知晓封装控制信号,以使得第一驱动电路集合产生低功耗输入向量,该输入向量将第一被驱动电路集合设置为其低泄漏功耗状态。

图1是常规逻辑NAND单元100的晶体管级图,NAND单元100包括两个p-型晶体管P1和P2以及两个n-型晶体管N1和N2。NAND单元100接收两个输入a和b,并产生输出f,输出f的逻辑值是对输入a和b的逻辑值应用逻辑NAND操作的结果。在NAND单元100的一个可能的实现方式中,当a和b都是逻辑-0(即,低电压)时,从电源Vdd到地Vss的泄漏功耗大约为12皮瓦(pW)。当a是逻辑-0且b是逻辑-1时,泄漏功耗大约为58pW;当a为逻辑-1且b为逻辑-0时,泄漏功耗大约为54pW;以及当a和b都是逻辑-1时,泄漏功率大约为152pW。这个相对简单的例子代表以下一般原理:泄漏功耗可以高度依赖于施加到组合逻辑电路的输入值。

图2是代表了通用的、常规的具有多个输入的组合逻辑电路200的高级框图。如在图1的NAND单元100的情况下,逻辑电路200对于不同的逻辑电路输入{A,B,C,......,N}值的集合将典型地具有不同等级的泄漏功耗,所述集合包括将逻辑电路200中的泄漏功耗最小化的特定的输入值集合(或可能地两个或更多不同输入值集合)。存在用于寻找将逻辑电路200的泄漏功耗最小化的特定输入值集合的已知技术,包括穷举搜索,其顺序模拟每个不同可能的输入 值集合。

图3是包括模块A和B,以及多个图3没有明确示出的其它模块的集成电路300的简化框图。集成电路300可被配置为(至少)4种不同的封装类型。在第一封装类型中,使能包括模块A和B的所有模块;在第二封装类型中,禁止模块B,但是使能包括模块A的其余模块;在第三封装类型中,禁止模块A,但是使能包括模块B的其余模块;以及在第四封装模块中,禁止模块A和B两者,但是使能其余模块。

根据本发明的特定实施例,集成电路被设计为包括知晓封装驱动电路,其被设计为对其它被驱动电路产生输入集合,将被驱动电路设置为对其可用的低(如果不是最低的话)泄漏功耗状态。特别地以及如下面关于图4进一步描述的,图3的集成电路300具有第一知晓封装驱动电路集合,其被设计为产生输入集合,该输入集合对于在其中模块A被禁止的第三和第四封装类型,将模块A设置为其低泄漏功耗状态。此外,集成电路300具有第二知晓封装驱动电路集合,其被设计为产生输入集合,该输入集合对于在其中模块B被禁止的第二和第四封装类型,将模块B设置为其低泄漏功耗状态。注意,在一些情况下,电路集合可以既是关于其它上游电路的被驱动电路,又是关于其它下游电路的驱动电路。

图4是根据本发明的一个相对简单示例的、图3的集成电路300的一部分的原理图。特别地,图4示出与图3的模块A和B相联系的知晓封装电路。

在该相对简单示例中,模块A包括由逻辑AND单元404和逻辑NOR单元406驱动的逻辑OR单元402。NOR单元406自身是由AND单元404驱动并且也由逻辑NOT单元(也叫做反相器)408驱动的。AND单元404由两个寄存器410和412驱动,而NOT单元408由寄存器414驱动。

在常规、现有技术实现方式中,当模块A被禁止时,寄存器410、412和414将全部具有特定值(即,逻辑-0或逻辑-1)。在该示例中,当模块A被禁止时,寄存器410、412和414全部具有值逻辑-0。在这种情况下,AND单元404的输出也将为逻辑-0,NOT单元408的输出将为逻辑-1,以及NOR单元406的输出将为逻辑-0。

然而,在这个特定示例中,先验地知道OR单元402在其输入值a和b都为逻辑-1时处于其最低泄漏功耗状态。同样地,相据图4的实施例,模块A被 特别设计为使得NOR单元406和AND单元404都是知晓封装电路,接收除其“常规”输入之外的第一互补知晓封装控制信号pkgb1。如以下进一步描述的,当模块A被禁止时(例如,对于第三和第四封装类型),译码器416使控制信号pkgb1无效(即,设置为逻辑-0)。当使能模块A时(例如,对于第一和第二封装类型),译码器416使控制信号pkgb1有效(即,设置为逻辑-1)。

当控制信号pkgb1有效时,由AND单元404产生的输出值由它的其它两个输入确定,并且相似地,由NOR单元406产生的输出值由它的其它两个输入确定。然而,当控制信号pkgb1无效时,由AND单元404产生的输出值将被强制为逻辑-1,并且相似地,由NOR单元406产生的输出值也将被强制为逻辑-1。用这种方式,知晓封装AND单元404和知晓封装NOR单元406(即,知晓封装驱动电路)的输出被强制为具有保证OR单元402(即,被驱动电路)处于其低泄漏功耗状态的值(即,在这种情况下,都为逻辑-1)。

注意,由于AND单元404产生到NOR单元406的输入,因此NOR单元406其本身是被驱动电路,其由AND单元404和NOT单元408的驱动电路驱动。同样地,当模块A被禁止时,存在设计NOR单元406处于其低泄漏功耗状态的可能性。在这种情况下,当模块A被禁止时,AND单元404将为知晓封装驱动电路,其将被驱动的OR单元402和被驱动的NOR单元406都设置为它们各自的低泄漏功耗状态。

现在参考图4的模块B,模块B包括由逻辑NOR单元420和逻辑NAND单元422驱动的逻辑AND单元418。NAND单元422其本身由NOR单元420和寄存器424驱动,而NOR单元420由两个寄存器426和428驱动。

在常规、现有技术实现方式中,当模块B被禁止时,寄存器424、426和428将全部具有特定值(即,逻辑-0或逻辑-1)。在该示例中,当模块B被禁止时,寄存器424、426和428全部具有值逻辑-0。在这种情况下,NOR单元420的输出将为逻辑-1,以及NAND单元422的输出将为逻辑-1。

然而,在这个特定示例中,先验地知道AND单元418在其输入值a和b都为逻辑-0时处于其最低泄漏功耗状态。同样地,根据图4的实施例,模块B被特别设计使得寄存器426和428都是知晓封装电路,其接收第二互补知晓封装控制信号pkgb2。此外,NAND单元422也是知晓封装电路,其接收真知晓封装控制信号pkg2,其中互补控制信号pkgb2是真控制信号pkg2的互补 (complement)。如以下进一步描述的,当模块B被禁止时(例如,对于第二和第四封装类型),译码器416使控制信号pkgb2无效,且反相器430使控制信号pkgb2反相以使互补控制信号pkg2有效。当使能模块B时(例如,对于第一和第三封装类型),译码器416使控制信号pkgb2有效,且反相器430使控制信号pkg2无效。

当控制信号pkgb2有效且控制信号pkg2无效时(即,当模块B被使能时),由寄存器426和428提供的值基于它们的正常寄存器编程(normal register programming),并且由NAND单元422产生的输出值由它的其它两个输入确定。然而,当控制信号pkgb2无效且控制信号pkg2有效时(即,当模块B被禁止时),由寄存器426和428提供的值将被强制为逻辑-1,且由NAND单元422产生的输出值将被强制为逻辑-0。用这种方式,NOR单元420的输出被知晓封装寄存器426和428强制为逻辑-0,以及知晓封装NAND单元422的输出被强制为逻辑-0,其确保AND单元418处于其低泄漏功耗状态。这里,AND单元418被NAND单元422的知晓封装驱动电路所驱动,且NOR单元420被寄存器426和428的知晓封装驱动电路所驱动。

注意,知晓封装寄存器426和428是用于NOR单元420和NAND单元422的(间接)驱动电路。同样地,当模块B被禁止时,存在设计NOR单元420和/或NAND单元422处于其低泄漏功耗状态的可能性。在这种情况下,寄存器426和428将为知晓封装驱动电路,其当模块B被禁止时,将被驱动的AND单元418和被驱动的NOR单元420和/或被驱动的NAND单元422设置为它们各自的低泄漏功耗状态。

如图4所示,译码器416通过译码存储在寄存器432中的值PKG产生知晓封装控制信号pkgb1和pkgb2。如表I所示,在译码器416的一个相对简单的实现方式中,0PKG值相应于模块A和B都被使能的第一封装类型。在该情况中,译码器416译码值PKG=0以产生pkgb1=1和pkgb2=1,并且模块A和B的知晓封装电路中没有一个被强制输出任何特定值。

类似地,1PKG值相应于在其中模块A被使能且模块B被禁止的第二封装类型。在该情况中,译码器416译码值PKG=1以产生pkgb1=1和pkgb2=0,寄存器426和428的知晓封装电路都被强制为输出逻辑-1,且NAND单元422被强制为输出逻辑-0,以确保AND单元418和可能地其它单元被设置为它们的低泄漏功耗状态,而模块A的知晓封装电路中没有一个被强制为输出任何特定值。

2PKG值相应于在其中模块A被禁止且模块B被使能的第三封装类型。在该情况中,译码器416译码值PKG=2以产生pkgb1=0和pkgb2=1,AND单元404和NOR单元406的知晓封装电路都被强制为输出逻辑-1,以确保OR单元402和可能地其它单元被设置为它们的低泄漏功耗状态,而模块B的知晓封装电路中没有一个被强制为任何特定值。

最后,3PKG值相应于在其中模块A和模块B都被禁止的第四封装类型。在该情况中,译码器416译码值PKG=3以产生pkgb1=0和pkgb2=0,且模块A和B的所有知晓封装电路都被强制输出它们相应的特定值。

译码器416、,反相器430以及寄存器432作为用于集成电路300的知晓封装控制器。

图5是根据本发明的一个实施例的知晓封装逻辑NAND单元500的晶体管级图,在其中当知晓封装控制信号pkgb无效时,知晓封装NAND单元500的输出f被强制为逻辑-1。NAND单元500是图1的NAND单元100的知晓封装版本。当包括NAND单元500的模块被使能时,控制信号pkgb有效,晶体管P3关闭,晶体管N3开启,且输出f为输入值a和b的函数。当包括NAND单元500的模块被禁止时,控制信号pkgb无效,晶体管P3开启,晶体管N3关闭,且输出f独立于输入值a和b被强制为逻辑-1。

图6是根据本发明的另一个实施例的知晓封装逻辑NAND单元600的晶体管级图,在其中当知晓封装控制信号pkg有效时,知晓封装NAND单元600的输出f被强制为逻辑-0。NAND单元600是图1的NAND单元100的第二、不同的知晓封装版本,且可以用于实现图4的知晓封装NAND单元422。当包括NAND单元600的模块被使能时,控制信号pkg无效,晶体管P3开启,晶 体管N3关闭,且输出f为输入值a和b的函数。当包括NAND单元600的模块被禁止时,控制信号pkg有效,晶体管P3关闭,晶体管N3开启,且输出f独立于输入值a和b被强制为逻辑-0。

本领域技术人员应当理解如何去实现(i)其它逻辑单元的知晓封装版本,诸如图4中“强制为逻辑-1”的知晓封装AND单元404和“强制为逻辑-1”的知晓封装NOR单元406。

图7A是根据本发明的一个实施例的知晓封装寄存器700A的晶体管级图,在其中当知晓封装控制信号pkgb无效时,知晓封装寄存器700的真寄存器输出q被强制为逻辑-1。寄存器700可用于实现图4中的知晓封装寄存器426和428中的每一个。当包括寄存器700A的模块被使能时,控制信号pkgb有效,晶体管P1关闭,晶体管N1开启,且真寄存器输出q由图7所示的寄存器700A的电路的通常操作确定,其将被本领域技术人员所理解。当包括寄存器700A的模块被禁止时,控制信号pkgb无效,晶体管P1开启,晶体管N1关闭,且真寄存器输出q被强制为逻辑-1,独立于寄存器电路的其余部分的操作。

图7B是根据本发明的一个实施例的知晓封装寄存器700B的晶体管级图,在其中当知晓封装控制信号pkg有效时,知晓封装寄存器700B的真寄存器输出q被强制为逻辑-0。当包括寄存器700B的模块被使能时,控制信号pkg无效,晶体管P2开启,晶体管N2关闭,且真寄存器输出q由图7B所示的寄存器700B的电路的通常操作确定,其将被本领域技术人员所理解。当包括寄存器700B的模块被禁止时,控制信号pkg有效,晶体管P2关闭,晶体管N2开启,且真寄存器输出q被强制为逻辑-0,独立于寄存器电路的其余部分的操作。

尽管在图7A和7B中没有示出,如果需要强制互补寄存器输出qb的值为逻辑-0或逻辑-1,则可在寄存器电路的相应部分增加两个被控制信号pkgb或相应的真控制信号pkg驱动的晶体管。这将依赖于任何下游电路是否被互补寄存器输出qb所驱动以及是否需要该输出信号具有特定值以便将下游被驱动电路设置为其低泄漏功耗状态。

图8是用于设计本发明的集成电路的一个可能的方法的流程图。在步骤802和804中,执行常规RTL(寄存器传输级)编码和综合处理以产生用于集成电路的初始(即,现有技术)设计。在步骤806和808中,对于将在至少一个封装类型中被禁止的每个IC模块,对初始IC设计执行泄漏功耗分析,以确定模 块输入值集合(也叫做低功耗输入向量),该模块输入值集合将模块设置为其低泄漏功耗状态。在步骤810中,当相关模块被禁止时,识别需要被知晓封装(“强制为逻辑-0”或“强制为逻辑-1”)版本所取代的标准逻辑单元和寄存器,以提供所确定的低功耗输入向量,并且相应地更新用于原始IC设计的RTL和网表以反映所选择的设计修订来提供知晓封装电路。作为结果的IC设计将具有一个或多个模块,所述模块具有知晓封装驱动电路,其将确保当在IC的特定封装类型中相应模块被禁止时,那些模块中的被驱动电路将被设置为其低泄漏功耗状态。

图9A是通用的常规逻辑单元900A的电路原理图,该逻辑单元900A包括上拉逻辑电路902和下拉逻辑电路904。逻辑单元900A的输出x由施加到上拉和下拉逻辑电路902和904的输入值(未示出)决定。

图9B是图9A的逻辑单元900A的知晓封装版本900B的电路原理图,其输出x在知晓封装控制信号pkgb无效时被强制为逻辑-1。在这种情况下,晶体管P1开启,晶体管N1关闭,且输出x将为逻辑-1,独立于施加到上拉和下拉逻辑电路902和904的输入值(未示出)。当知晓封装控制信号pkgb有效时,则晶体管P1关闭,晶体管N1开启,且知晓封装逻辑单元900B的操作和图9A的常规逻辑单元900A相同。

图9C是图9A的逻辑单元900A的知晓封装版本900C的电路原理图,其输出x在知晓封装控制信号pkg有效时被强制为逻辑-0。在这种情况下,晶体管P2关闭,晶体管N2开启,且输出x将为逻辑-0,独立于施加到上拉和下拉逻辑电路902和904的输入值(未示出)。当知晓封装控制信号pkg无效时,则晶体管P2开启,晶体管N2关闭,且知晓封装逻辑单元900C的操作和图9A的常规逻辑单元900A相同。

另外,为了该描述的目的,术语“耦接”、“耦接的”、“相耦接”、“连接”、“连接的”或“相连接”适用于本领域已知的或随后发展的任何方式,在其中允许能量在两个或更多元件之间传输,并且一个或多个附加元件的插入是预期的,尽管没有要求。相反地,术语“直接相耦接”、“直挂相连接”等等暗示不存在这样的附加元件。

另外,为了该公开的目的,应当理解,从一个(或多个)固定电压电源域和地对所有的门进行供电,除非另外示出。相应地,所有的数字信号通常具有从大约地电位变化到电源域中的一个的电压,且迅速地转换(摆动(slew))。 然而以及除非另外说明,地可被认为是具有大约0伏特的电压的电源,以及具有任意期望电压的电源可代替地。因此,所有的门可被至少两个电源供电,伴随的来自于该电源的数字信号具有范围在电源的近似电压之间的电压。

可以由相同的名称指代信号和相应的节点、端口或路径,并且出于在此的目的所述名称是可互换的。

出于说明的目的,晶体管典型地被显示为单一器件。然而本领域技术人员理解,晶体管将具有各种尺寸(例如,栅极宽度和长度)和特性(例如,阈值电压、增益等),并且可包括多个并联耦接的晶体管以从该组合获得期望的电特性。此外,示出的晶体管可以是复合晶体管。

如在本说明书和权利要求中使用的,术语“沟道节点”一般地指代金属氧化物半导体(MOS)晶体管器件(也称为MOSFET)的源极或漏极,术语“沟道”指在源极和漏极之间穿过器件的路径,以及术语“控制节点”一般地指MOSFET的栅极。类似地,如权利要求中所使用的,当使用双极晶体管技术实现本发明的一个实施例时,术语“源极”、“漏极”和“栅极”应当被理解为指代MOSFET的源极、漏极和栅极,或者双极器件的发射极、集电极和基极。

除非明确地另外声明,每个数字值和范围应当理解为是大概的,就像词“约”或“近似地”在该值或范围前面。

应进一步理解,在不背离由下面的权利要求所包括的本发明的实施例的情况下,本领域技术人员可对已经被描述和说明以解释本发明的实施例的细节、材料和部分的排列作出各种改变。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1