半导体芯片设计方法

文档序号:6891059阅读:300来源:国知局
专利名称:半导体芯片设计方法
技术领域
本发明一般涉及在半导体芯片上的计算机辅助电路布局(placement), 具体地涉及用于混合电源电压结构(design)的电压岛(voltage island)的 并行逻辑和物理结构。
背景技术
数字电路的转换功率随着电源电压的平方增加而增加。这样,为减小电 路功耗要求减小该电压。然而,减小电源电压也会降低电路性能。因此,要 求在同 一芯片上合并由较高电源电压驱动的电路和由较低电源电压驱动的 电路(以下分别称为高和低压电路)。在需要实现所需电路性能的地方使用高 压电路,在别处使用低压电路。当高和低压电路通过这种方式合并在一个半导体芯片上时,要求将低压 电路一起物理组合到低压岛,和分开地将高压电路一起组合到高压岛。这是 优选的方案,因为高和低压电源分布在独立的分配网络上,并且通过将电路 分组成岛,只有两个电源中之一需要分布在每个岛内。这就减小了为分配两 个电源所要求的额外的布线资源的量,由此留下更多布线资源用于信号布线 。主要优点是,这容许半导体芯片更小和/或需要更少的布线平面。当高和低压电路合并在一个芯片上时,必须注意驱动从一个类型的电路 到另一个类型电路的信号的网络(net)。通常,高压电路可直接驱动低压电 路而无须特别插入电路,但是馈送高压电路的低压电路必须通过特定电平移 位电路来驱动它们。这种电路增加了网络的面积、功率和延迟。因此,需要 使它们的使用最小化。在很多种电路中,高压锁存电路可以用做电平移位器 而不需要增加成本。因此,如果选择低压电路以使它们直接馈送给锁存电路, 则可减少所需电平移位器的数量。通常是通过将紧密连接的电路组赋予高或低电压来减少所需电平移位器的数量。总之,通常将高压电路放在高压岛上和将低压电路放在低压岛上可减少 使用的电平移位器的数量。这也减少了高和低压电源必须经历的位置数量, 由此减少了功率分配成本。然而,这些岛对好的逻辑布局并无好处。例如, 信号必须运行很长的距离才能到达高压岛,然后从高压岛返回使用该信号的 电路。这实际上降低了性能而不是提高了性能。这样,应该是很好的布局却 变成了很差的布局。构成高和低压电路的另一种方法是逻辑簇集(logical clustering)。在 逻辑簇集中,高和低压电路不被设计在以连通性为基础的电压岛中。将电路 中要求较快的元件变为较高电压,而较慢的、非关《建(non-critical)元件变 为较低电压。这就解决了由高和低压岛簇集引起的布局的问题,而数据的路 径没有移动。然而,必须到处分配不同的电源和逻辑簇集会大大增加电平移 位器的数量。这样,就需要限制电源路线和电平移位器的数量,并容许关键(critical) 数据路径来满足定时要求。发明内容通过提供电压岛的逻辑和物理结构,本发明的优选实施例解决了这些问 题。本发明的优选实施例合并了物理和逻辑合成以提供较少的电平移位器和 较少的电源路线,但是仍然满足定时和其它要求。此外,通过对电压岛结构 使用重复处理(iterative process),使电源使用最小化,同时,特别是满 足了速率限制。在本发明的一个方案中,半导体芯片结构(chip design)被分割成多 个仓室(bin),它们是设计的区域。通过这种方式,半导体芯片结构被切割 成各个区域,然后给这些区域加上各种电压电平。每个仓室可以被看作是一 个电压岛。可给各个仓室增加设计中的电路或从各仓室去掉这些电路,由此 提高或降低电路的速率和功率如果电路置于被加上较高电压的仓室中,则 速率和功率提高,如果电路放置到具有低电压的仓室中,则速率和功率降低。仓室的尺寸和位置也可以改变。通过重复这些步骤,可满足最佳功耗,同 时仍然满足速率约束和其它标准。这样,本发明不是只将电路加到电压岛上,或只确定哪些电路需要较高的电压并将这些电路变为较高电压电平,而是合并这两个原理。本发明使用 电压岛的物理和逻辑结构,以便符合预定标准。将半导体芯片结构分割成大量仓室只是在设计中安置电路的一种方法。本发明可适用于任何布局环境,即通过连续精心改进设计中的电路位置和为 了改变逻辑布局而中断布局工艺来适应任何布局环境。本发明提供一种用于进行半导体芯片设计的方法,其特征在于,该方法包括以下步骤给一组电路赋予多个电压电平的第一电压电平;从该组电路 中选择一籽晶电路;给该籽晶电路赋予多个电压电平的第二电压电平;和在 该籽晶电路周围建立第二电压岛。和其它特点更明显。


图1是根据本发明的最佳实施例提供电压岛的逻辑和物理结构的最佳方法;图2是在仓室之间移动电路以提高速率及降低功率和拥挤的最佳方法; 图3至图7是根据图1的方法在布局的各个阶段中的逻辑电路的例子; 图8和图9是在一示意布局上由本发明的最佳实施例实现的功率降低步 骤的例子;图10和图11是根据本发明的第二最佳方法的流程图;和 图12是本发明的计算机系统的框图。
具体实施方式
如上所述,本发明涉及在半导体芯片上的计算机辅助电路布局。对于不 熟悉这个主题的人员来说,下面的概要部分将简要介绍与布局工艺相关的某 些概念。在半导体芯片上的计算机辅助电路布局领域内的技术人员希望直接 进行详细介绍。综述在设计半导体芯片时,使用计算机设计工具。这些工具工作并产生称为 网表(netlist)的文件。这个网表包含所有门和它们之间的连接的说明。半 导体芯片设计者通常用芯片的模拟逻辑布图工作。换句话说,半导体芯片将执行某个功能,设计者确保模拟芯片实际逻辑地执行该功能。当准备制作实 际芯片时设计者使用采用原始网表并产生输出的布局工具。将网表、定时限 制、布局限制和转换信息给予布局工具。此外,还可以将描述布线和门的定 时及包含布局规则、门的尺寸和形状等的程序库给予布局工具。布局工具输 出修改的网表和布局信息。然后把它们输送给布线工具,产生用于在半导体 晶片上实际产生芯片的掩模和其它信息。有几种不同类型的布局系统。
一个重要的系统被称为布局驱动合成或PDS。对于PDS的参考文献是《用于Power PC微处理器的定时关闭的集成布局和合成方法》(An Integrated Placement and Synthesis Approach forTiming Closure of the POWER PC Microprocessor), S. Hojat andD.Vi1larrubia, pages 206-210, International Conference on ComputerDesign, 1997,这里引入供参考。PDS系统容许在布局过程中对要制作的网络作逻辑改变。PDS包括以切割为基础的布局程序和在切割之间进行的一系列操作。以切割为基础的布局程序将循环分割芯片区域和芯片上的电路。通常,首先将芯片分割成两部分(虽然将芯片分成四部分的四分法也是公知的),然后将每半个部分各再分割成两部分等等。开始并不知道芯片上的这些电路最终位置,但在每次切割之后就会精细调整该电路位置。在布局工艺中的任何点将芯片分割成的区域称为仓室。在PDS中,在系列布局切割之间进行各种逻辑合成行为(通常是修改网表的任何程序),容许在目前可得到的电路布局的精细调整基础上对网络进行修改。典型的行为包括緩冲、克隆(复制电路并在原始电路和复制品之间分配其扇出)、分解、管脚交换等。有时候,也可以在仓室之间移动电路。布局工具和方法的另一个例子是模拟退火安置器(placer)。这种布局工具是按照晶体的物理退火推论工作的,对布局做了很多试验性改变。这些试 验性改变可以保留或放弃,这取决于布局的质量因素(例如被评价的布线拥 挤情况)的某种量度的改进和有助于控制退火工艺的可变温度。该工艺在高 温下开始,并随着布局进行而持续到低温。总是保留改进该量度的变化,同 时也有可能保留劣化该量度的变化,这种保留的可能性将随着温度降低和布 局量度劣化量的增加而降低。随着布局的进行,电路在可接受的布局改变内 移动的平均距离减少。这样,芯片上的电路位置逐步更好确定。 详细it明本发明的优选实施例合并了物理和逻辑合成以提供更少的电平移位器 和更少的功率路线,但是仍然满足定时和其它要求。此外,使用重复工艺用 于构成电压岛,可使功率使用最小化同时仍可满足速率限制。在本发明的一个方案中,半导体芯片结构被分割成仓室,它们是设计区 域。通过这种方式,半导体芯片结构可以被切割为各种区域,然后给这些区 域赋予各种电压电平。每个仓室可以被看作是一个电压岛。设计中的电路可 以从各个仓室中去掉或加到各个仓室中,由此提高或降低电路的速率和功率如果电路放置到被赋予较高电压的仓室,则速率和功率提高,如果电路被放置到具有较低电压的仓室,则速率和功率降低。仓室的尺寸和位置也可 以改变。通过重复这些步骤,可满足最佳功耗,同时仍然满足速率限制和其它标准。这样,只将电路加到电压岛上,或者只确定哪个电路需要较高电压和将 这些电路变到更高电压电平,本发明组合了这两种概念。本发明使用电压岛 的物理和逻辑结构以满足预定的标准。将半导体芯片结构分割成多个仓室只是设计中安置电路的一种方式。本 发明适用于任何布局环境,这种布局环境是通过在设计上连续精细调整电路 位置而进行并且其中可以中断布局工艺以便改变逻辑布局。在更详细地介绍最佳实施例之前,讨论一下术语是有利的。作为这里使 用的,仓室是半导体芯片结构的一个区域。不必给每个仓室赋予特定电压。 电压岛也是设计区域,但给它赋予特定电压。电压岛中的所有电路将由赋予 电压岛的特定电压供电。可使用任何布局系统进行这里所述的物理和逻辑合成。通常,这种布局 系统将给一部分芯片结构上的一组电路赋予特定电压电平,选择芯片结构的 区域,并且给该区域内的电路赋予不同电压电平。在较高和较低(或者中间) 电压电平之间发生电路移动,以使设计最佳化。在本发明的最佳实施例中, 芯片结构被分割成仓室。每个仓室将是电压岛并被赋予给特定电压。 一些仓 室将被赋予较高电压, 一些仓室被赋予较低电压。这样进行物理合成。在这 些物理约束中,电路从较高电压区域移动到较低电压区域,或者反之,以便 满足功率、速率、和其它标准。这样也进行了逻辑合成。在本发明的其它实 施例中,使用退火布局系统。在这个方案中,电压岛将被赋予特定位置,并 且不使用仓室。物理和逻辑合成仍然进行。现在参见图12,图12表示本发明的计算机系统的方框图。本领域技术 人员都清楚,本发明的机构和装置同样适用于任何计算机系统,无论该计算机系统是否是复杂的多用户计算设备或单用户工作站。如图12的部件分解 图所示,计算机系统1100包括与主存储器112Q连接的主或中心处理单元 (CPU) 1110,大容量存储器接口 1130,终端接口 1140,和网络接口 1150。这 些系统部件通过使用系统总线1160互连。大容量存储器接口 1130用于将大 容量存储器件(如DASD器件1155)连接到计算机系统1100。 一种特殊类型的 DASD器件是软盘驱动器,可在软盘1195中储存数据和读取数据。主存储器1120包含有一个或多个应用程序1122、电路元件1124、数据 1126和操作系统112 8 。计算机系统110 0采用公知虚拟寻址机构,这种虛拟 寻址机构容许计算机系统1100的程序只对大的、单个存储实体进行存取, 而不对多个、小的存储机构如主存储器1120和DASD器件1155进行存取。 因此,在所示应用程序1122、电路元件1124、数据1126、和操作系统1128 保存在主存储器1120中时,本领域技术人员将了解到这些部分不必同时全 部包含在主存储器1120中。(还应当注意,这里使用的术语计算机系统存储 器一般指计算机系统100的整个虚拟存储器。)操作系统1128是任何合适的操作系统。本领域技术人员都清楚本发明 的精神和范围不限于任何一种操作系统。保存在主存储器112G中的是由 CPU1110执行的一个或多个应用程序1122。这些应用程序之一是根据本发明 的集成电路设计工具1134。包含在主存储器1120中的还有被设计工具1134 使用的电路元件1124的表达式(例如电和定时参数)。尽管所示的集成电路 设计工具1134和电路元件1124驻留在主存储器1120中,它们可以存在于 计算机1100的虚拟存储空间的任何位置。另外,在所示电路元件1124与设 计工具1134分开时,这些电路元件1124还可提供作为集成电路设计工具 1134的一个组成部分。如下面更详细的描述,集成电路设计工具1134最好 是进行电路元件1124的布局驱动合成(PDS)的设计工具。如综述部分所述, PDS将芯片结构分割成相对小的称为仓室的区域。在这个最佳实施例中,仓 室被用做电压岛,并且使用标准来确定何时该设计已经适当安置。虽然所示的计算机系统1100只包含单个主CPU和单个系统总线,但本 领域技术人员都清楚可使用有多个CPU和/或多条总线的计算机系统来实现 本发明。此外,用在优选实施例中使用的接口各包括用于从CPU111Q卸载强化计算处理的分开的、全编程微处理器。然而,本领域技术人员都清楚本发 明同样适用予简单使用1/0适配器以执行同样的功能的计算机系统。终端接口 114 0用于将一个或多个终端1165直接连接到计算机系统1100 。可以是非智能的或全编程工作站的这些终端1165用来容许系统管理人员 和用户与计算机系统1100通信。网络接口 1150将其它计算机系统和/或工作站(即图1中的1175和1185) 以联网形式连接到计算机系统1100。无论是否存在网络接口 1150,本发明 都适用。对于这里的最佳实施例的目的,存在网络接口 1150,无论这种连接 是否是使用目前模拟和/或数字技术或通过将来的某些联网机构实现的,本 发明都同样适用,而不管计算机系统1100是怎样连接到其它计算机系统和/ 或工作站的。而且重要的是应当指出计算机系统1100中存在网络接口 1150 意味着计算机系统1100可与一个或多个其它计算机系统或工作站配合协作 处理。当然,这还意味着主存储器1120中示出的程序不必都驻留在计算机 系统1100中。例如,应用程序1112的一个或多个程序可驻留于另一个系统 上并且与驻留在计算机系统1100上的一个或多个程序配合协作处理。这个 协作处理可通过使用诸如远程进程调用(RPC)之类的一种公知的客户机-服 务器机构来完成。关于这一点,重要的是应指出已经(并且将继续)在全功能计算机系统方 面介绍了本发明,本领域技术人员都清楚本发明能够作为各种形式的程序产 品来分销,并且无论是哪种特定类型的信号承载介质实际执行该分配,本发 明都同样适用。信号承载介质的例子包括可记录型介质,如软盘(即图12 的软盘1195)和CDROM;和传输型介质,如数字和模拟通信链路,包括无线 通信链路。现在回到图1,图1示出了一种使用电压岛的物理和逻辑结构安置电路 的方法。方法100最好用图12中所示的集成电路设计工具1134进行。当在 电路元件布局过程中用集成电路设计工具1134执行时,方法IOO便于电路 元件布局,结果导致功率和速率最佳组合并满足其它标准。当未安置设计105给予布局工具时开始执行方法100。未安置设计由网 表描述,它是所有门和门之间的连接的说明。随着未安置设计,也将一组定 时限制和/或功率和面积限制给予该工具。而且,在某位置需要某些电路(如 输入/输出电路)时,也可能需要某些位置限制。最后,将描述布线和门定时和包含布局规则、门的尺寸和形状等的程序库给予布局工具。首先,将所有电路设定到特定电压(步骤iio)。最好是.,所有电路将设定到低电压,因为这趋于降低整个功率要求。如果电路开始设定到较高电压, 则这些电路已经是很高的功率,而布局设计趋于为更高功率。如果使用两种 以上的电压,则在该步骤选择最低电压是可取的。如果使用两种(高和低)电 压,则选择低压作为电压岛的起始电压。在步骤120,未安置设计被分割成仓室。在方法100中,每个仓室和电压岛是等效的。换言之,每个电压岛将是一个仓室。在这个分割(或切割)工艺过程中,将使用正常PDS合成行为以尽量满足性能目的,以便通过其他措 施而不是建立电压岛来减小功率,并且满足其它设计目的。特别是,PDS系 统此时可以考虑全局路径限制。如果电压岛太小,功率路线的量增加。这可 能对系统空间考虑有不利影响。在步骤125,进行有关是否满足所有设计标准的判定。正常情况下,设 计标准主要是性能和功率的组合。例如,设计标准可以在满足性能限制基础 上使功率最小化。对于这些标准,必须满足性能限制,满足性能标准的各种 布局设计能导致不同的功耗。判断性能的一种方式是利用松弛(SLACK)。松 弛是在信号绝对必须处于 一个位置的时间和它实际到达那里的时间之间的 时间量。如果存在有一正松弛,则信号在它必须到达之前到达,在其路径中 可能有一个或多个电路是较低功率的。另一方面,如果存在有一负松弛,则 信号没有准时到达。 一般情况下,这意味着将路径中的一个或多个电路改变 到较高功率能增加性能。对于在满足性能限制前提下最小化功率的标准,满 足这些设计标准意味着满足了所有性能目标(即所有松弛是正的)并且布局 设计具有可能设计布局的最低功率。如果设计标准在满足功率限制前提下是最大化性能,满足这些标准意味 着给任何多个仓室赋予高压将引起超出功率限制。应该注意到功率和性能以外的标准可以在步骤125测试。例如,位置对 于某些电路是很重要的,如输入/输出电路。在步骤125中满足标准将确保 这些电路处于合适位置。此外,面积、噪声、可靠性和布线能力是可在步骤 125中测试的其它标准。如果满足了设计标准(步骤125=是),则在步骤150中完成布局。在该 步骤中,给PDS系统以限制,电路不可以从低压仓室转移到高压仓室,反之亦然。在该步骤期间,输出修改的网表和布局信息。在输出布局信息之前, PDS系统将在每个仓室中确定每个电路的精确位置,以便产生布局信息。最好是,在前面的步骤中,电路被简单地安置到特定仓室中。在步骤15Q期间, 确定仓室内的每个电路的精确X、 Y位置。 一旦输出修改的网表和布局信息, 该设计被布局并最佳化(步骤160)。该设计可以传送给布线工具以便产生实 际制作芯片需要的掩模等。如果一个或多个标准没有被满足(步骤125=否),则在步骤130中,PDS 系统给仓室赋予第二电压。所选择的仓室将变为处于第二电压的电压岛。最 好是,第二电压比第一电压高。如果使用两种电压,即高和低压,则最好是 给一仓室赋予高压。如果使用两种以上的电压,则最好是将次高电压赋予一 仓室。例如,如果有三个电压(低、中和高),则最好是开始给一仓室赋予中 间电压。在第二次通过步骤125时,如果例如仓室内的电路的松弛仍然是负 的,则给同一仓室赋予高压。给仓室赋予增加的电压,从低到高,通常可导 致比给仓室赋予降低的电压(从高到低)实现的功率低的功率的布局设计。在步骤13(J,也选择特定仓室作为赋予第二电压的仓室。有很多方法确 定哪个仓室被赋予第二电压。当第二电压是较高电压时, 一般所选择的仓室 将是含有在设计中的最差松弛路径上的电路的仓室。在这种情况下,增加电 压将提高电路速率,由此减小或消除松弛。也可以随机选择所选仓室。选择 仓室的另一方法(当第二电压是高压时)是选择低转换仓室,它含有不常用的 网络或转换相对少次数的电路。因为增加转换等于增加功率,所以现有方法 减少了功率。另外,确定哪个仓室赋予第二电压可以尽量找到很多滞后路径会聚的点 。下面文章中介绍了找到这些点的方法,这里引证供参考K. Usami, et al., 《利用加到媒质处理器的多个电源电压的自动低功率技术》电气电子工程师 协会固态电路杂志。(Automated Low-Power Technique Exploi t ing Mul t iple Supply Voltages Applied to a Media Processor, Institute of Electrical and Electronics Engineers J"ournal of Solid-State Circuits,) v. 33, no. 3, 463-472 (March, 1998);和L. Berman, et al.,《时间校正的有效 技术》电路和系统1990国际会议文集(EfHcient Techniques for Timing Correction, Proceeding of the 1990 International Symposium on Circuits and Systems) (May 1990)。此外,所选仓室可以是在关键路径中有大量电路的仓室。对于这个选择, 可以选择在关键路径中具有大量电路的仓室作为该仓室。或者,如果仓室包 含的电路被赋予第二(较高)电压,可通过确定哪个仓室能使关键路径得到最 大延迟改进来进行选择。最后,可通过选择具有直接馈送锁存电路的大量输 入的仓室来进行选择,因为这样的仓室将减少所需电平移位器。应该注意到在步骤130中可选择多个仓室。然而,为简化起见,这里讨论的是只选择一个仓室。而且,在步骤130,所选仓室和它的电路将被赋予 第二电压。给电路赋予第二电压容许PDS工具再计算延迟、功耗、松弛和其 它数据。然后使用这个信息确定是否满足标准。在步骤135,在需要的地方加上电平移位器。如果第二电压是较高.电压, 则所选仓室将被转换到高压岛。输出信号给高压岛(所选仓室)中的电路的低 压电路将具有被加上低压信号的电平移位器。如果第二电压是较低电压,则 在高压岛的电路和低压岛的电路之间不需要电平移位器。这是因为通常低压电路需要电平移位器以便给高压电路供电,但高压电路不一定需要电平移位 器给低压电路供电。在步骤140中,从不再需要电平移位器的电路输出去掉电平移位器。例 如,如果低压电路具有馈送给高压电路的输出信号,则用于低压电路的输出 信号将具有在它上的电平移位器。当含有该低压电路的仓室被制成高或更高 压岛时,在低压电路的输出上不再需要电平移位器。在步骤145中,电路在仓室之间移动以便提高速率及降低功率和拥挤。 电路可以移动到所选仓室以便提高速率(如果所选仓室是较高电压仓室),提 高占用率,或者在相邻仓室中让出位置。电路可以移动到所选仓室以外,以 便降低功率(如果所选仓室是较高电压仓室和电路移动到较低电压仓室),降 低拥挤,降低占用率,或者提高周围仓室占用率。除了图1以外现在还参见图2,图2更详细地描绘了步骤145。本例中 的步骤145中所选仓室是高或较高电压,并且一些周围仓室是较低电压。在 介绍图2之后介绍再讨论这种情况和当所选仓室是较低电压和某些周围仓室 是较高电压时的相反情况之间的不同。应该注意到即使方法和100中的 这些步骤是以特定顺序示出的,但这些步骤也可以不必按照这个顺序进行。在方法145的每个步骤或操作之后,可以检测该电路以便观察是否它们 违反定时限制、违反任何仓室容量、或违反仓室之间的切割线上的任何拥挤限制。如果是这样,将拒绝操作。可能由于电路移动而改变布线长度引起网 络上增加了负载而违反定时限制。如果将过多的电路安置到仓室中,以至于 电路和连接布线不能简单地与仓室面积相适应,则可能违反仓室容量。注意 到不同半导体技术可以有对电路的不同面积要求。如果由于过多的数据路径 进入一仓室而有过多个布线,则可能违反拥挤限制。如果有太多数据路径进入一仓室,则该仓室将不能布线。在方法145中,电路移动也可以包括电路 复制以减少对网络长度的影响。仍参见图2,当非关键电路从所选仓室移动到较低功率邻接仓室时,开 始执行方法145 (步骤210)。关键路径需要满足某些定时要求而且还趋于是 最严格的满足定时要求。PDS系统进行定时分析,并且从这个分析确定哪些 路径是关键的。非关键电路是不在关键路径中的电路。相反,关键电路是在 关键路径中的电路。步骤210通过将非关键电路移动到较低电源电压岛而减 低了功率。如果需要,这些非关键电路的输出端上的电平移位器可移动到它 们的输入端。对于该步骤,可以优先选择是给其它较低电压仓室中的电路馈 电的源仓室输出的所选仓室中的电路。另夕卜,在步骤210中,可以优先选择被其它低电压仓室中的电路馈电的 所选仓室中的电路。为减少所需电平移位器的数量,可以进行最大流量、最 小切割程序。描述最大流量、最小切割程序的参考文献是Graph Algorithms (图开》算法),Shimon Even, Co即uterScience Press, 1979, 在 这里引证供参考。在该程序中,流程图由被其它低压仓室中的电路供电的所 选高电压仓室上的所有非关键仓室输入系列和所选仓室扇出锥中的非关键 电路构成。通过流动网将确定最小切割。通过流动网确定最小切割中网络左 面的所有电路。将这些左面的或供电电路移动到相邻低压仓室,将最小化在 仓室输入端所需电平移位器的数量。实际上,这个程序试图产生从低电压到 高电压的最少信号转换数量和最小化布线长度。该流程图是确定哪些电路应 该移动到低电压的一种方式。步骤210也可以优选移动仓室外的高转换电路。高转换电路是转换相对 高次数的那些电路。这个相对高的转换量消耗更高的功率。这样,减少功率 的一种方法是将高转换电路从高压仓室移出到较低压仓室。注意如果这些电 路处于关键路径中,即使它们是高转换电路,这些电路也优选保留在高压仓 室中。在步骤220中,如果所选仓室下降到最小容量以下(步骤220=是),则 由所选仓室中的电路输出供电的低压电路将加到所选仓室中.(步骤24 0)。可 以优先选择通过这种方式移动的电路以便最小化由于这些电路是随着需要 电平移位器的输入端而要求添加的电平移位器数量。这个步骤试图通过给较 高电压仓室添加由关键网供电的电路以最快速率保持关键网。这样,当所选 仓室尺寸变小时,由关键网供电和处于较低功率仓室中的电路被加到较高功 率所选仓室,并且从所选仓室移去非关键电路。或者,这个步骤可以将低转 换电路从周围区域加到所选仓室中。这就使功率最小化,而且提高了所选仓 室的容量。如果所选仓室没有下降到最小容量以下(步骤220=否),判定是否所有 非关键电路已经移出(步骤225)。如果没有(步骤225=否),则该方法处理过 程返回到步骤210。如果所有关键电路已经被移动(步骤225=是),则给所选 仓室中的关键电路供电的低压仓室中的关键电路被移动到所选仓室中(步骤 230)。这样,如果所选仓室中的关键电路仍然不满足定时限制,则给这些关 键电路供电的电路从低功率移动到高功率。这加速了关键路径和提高定时。 如果有电平移位器,电平移位器将从新增加电路的输出端移动到新增加电路 的丰命入端。在步骤235中,如果所选仓室下降到最小容量以下,则由所选仓室中的 关键电路输出供电的低压电路将加到所选仓室中。步骤2 35与步骤24 G相似 。优先选择通过这种方式移动的电路,以便使需要添加的电平移位器的数量 最小化。步骤235试图通过将由关键网供电的电路加到较高电压仓室,以最 快速率保持关键网。这样,当所选仓室尺寸变小时,由关键网供电和处于低 压仓室中的电路被加到较高功率的所选仓室,并且从所选仓室移出非关键电 路。此外,在步骤235,可能需要在相邻仓室中为从所选仓室移出的电路让 出空间。为此,由所选仓室中的关键电路的输出供电的低压电路将被加到所 选仓室中。再一次,将优先选择通过这方式移动的电路以便最小化要求添加 的电平移位器的数量。在步骤255中,确定是否这个仓室满足所有标准。根据用于芯片结构的 性能和功率标准,这种标准最基本的是性能和功率标准。此外,可以检测其 它标准,如超过容量或低于容量、路线或位置标准等。如果没有满足所有标准(步骤255=否),则方法145继续进行;如果满足了所有标准(步骤255=是), 则在步骤250结束该方法。应该注意即使可能在步骤255之前满足性能和功 率标准,方法145也可以进行多次以便在满足其它标准的同时最大程度地减 少功率。满足其它标准(特别是性能标准)的最低功率构形是最佳方案。应注意到方法145可含有图2中所示的所有步骤或者只含有所示的某些 步骤。例如,方法145可能只使用了步骤210。最好是,使用所有步骤,这 能以最小功率量提供最大性能。另外,如果方法145的任何步骤增加拥挤超 出预定程度,电路可在仓室之间移动以便减少拥挤。如图2所示的方法145可适用于所选仓室被赋予比相邻仓室高的电压的 任何时候。如果所选仓室是低压,而相邻仓室是高压,方法145将稍有不同 。在该实施例中,在步骤210中更有利的是将非关键电路从相邻仓室移动到 所选仓室中并将关键电路移出所选仓室。在步骤240,是非关键的输出电路 优先移动到所选仓室中。这与步骤230和235相同实际上,来自周围较高 功率仓室的非关键电路被移动到较低功率仓室。方法100的步骤145之后,再次进行方法100的步骤125。方法100继 续进行直到满足标准或直到该方法没有会聚为止。通常,后者被置为时间限 制如果该方法超过特定时间,则假定该方法没有会聚到一个解决方案。例 如,如果为太高的性能标准选择太低的功率标准,就会这样。除了图l和2之外,现在回到图3-7,图3-7表示芯片结构的示意部分 。图3表示完全未安置芯片结构,这个设计将存在于方法100的步骤105中 。图4-7表示方法100和145的布局工艺的各个阶段中的同一芯片结构。在图3中,示出了完全未安置芯片结构。未安置芯片结构300包括各个 输入端310-316和输出端320。未安置芯片结构300也包括大量电路几个 NAND(与非)门331和332、逻辑块340和330、若千反相器350-355、和NOR (或 非)门360。未安置芯片结构300由网表描述。在图4中,示出了部分安置设计400。图中只示出了某些互连。在方法 100的步骤110和120之后示出部分布局设计400。每个仓室已经设定到低 电压,由此产生低电压仓室/岛410和420。边界430将两个岛410和420 分离。在步骤120中,将使用正常PDS合成行为以便满足性能目的,并通过 其它方式而不是建立岛来减少功率和满足其它设计目的。结果就产生了图4 所示的部分布局设计400。路径370是关键路径,网络44Q和46Q穿过边界430。在图5中,仓室410已经被赋予高电压仓室/岛510。在步骤125中, 没有满足所有标准(步骤125=否),因此在步骤130中选择仓室510作为高电 压仓室。仓室520 (图4中的420)未被改变并且仍然是低压仓室。仓室510 中的所有电路被赋予较高电压。选择仓室510作为高压仓室,是因为它在这 个小设计(方法100的步骤130)中的最坏松弛路径(路径370)上有最多电路 。电平移位器470、 480、和490分别加到网络370、 370和440上,以便将 这些信号转变到更高电压(步骤135)。没有给网络460和路径370添加电平 移位器,因为该路径370离开反相器353并连到反相器354,因为这些是高 压信号。这些信号应该能驱动低压电路。在步骤140中,没有去掉电平移位 器。可在这些步骤的任一个之后检测部分安置设计400,以便确定是否满足 功率、性能和其它标准。在仓室或高压岛510的情况下,网络相当拥挤输 入端310-314非常需要在仓室一侧的一位布线。此外,非关键电路(NAND门 332)和非关键网络450、 440和460是在高压仓室510中。而且,可假设关 键路径370也没有满足定时要求,意味着松弛是负的。在下面描述图2的方法145的步骤顺序过程中应当参照图5和6。因为 仓室510没有被最佳化,因此在方法145的步骤210中,输入端314、电路 332和网络460被移动到低压仓室/岛520。不再需要电平移位器490,因此 去掉它。在步骤220中,所选仓室不低于最小容量,并且在步骤224中,已 经移动所有低压电路。在步骤230中,关键电路354和360被移动到高压仓 室/岛510。不再需要电平移位器470,但是增加了电平移位器610以便增加 来自网络620的电压。在步骤255中确定功率和性能标准。在本例中,假设满足功率和性能标 准。但是,为了确定通过不同布局是否可产生功率和性能的更好组合,还进 行方法145以便重复预定次数。除了图1和2之外,还参见图6和7,在重 复方法145之后,所得结果是图7的安置设计700。应该注意到关键路径370 的图6的布局在该路径正向产生松弛。因为满足了定时要求,因此在图7中 路径370不再是关键的。然而,应该检测对该路径的任何改变以便确定与定 时一致。在步骤210中,关键电路350从高压仓室/岛510移动到低压仓室/ 岛520。这样的结果是有最低数量的电平移位器和最低功率,同时仍满足性能标准。在这个重复工艺过程中,关键电路351、 352等也从仓室510移动 到仓室520。然而不满足性能标准。这样,布局设计700满足性能和功率标 准。如果功率不作为标准,则电路350和或许电路340可加到高压仓室510 上(假设没有违反容量要求)。步骤145之后,在步骤125-145中将选择附加仓室并被最优化,直到最 优化整个设计为止。在图7的简单例子中,仓室520可以被赋予高压。这将 提供性能改进。然而,功率也提高了。因为被安置设计700满足了性能和功 率要求,因此步骤125将表示满足所有标准。在步骤150中结束布局,并输 出网表和布局信息。结果布局的、最优化的设计(步骤160)。方法100和145还可包括正常合成操作,如克隆和緩冲,以便进一步减 小功率。图8和9表示在方法145过程中进行的克隆操作以便减小功率(通 过最小化布线长度和消除电平移位器)。在图8中,部分安置设计100Q包括 通过边界1040与低压仓室1030分离的高压仓室1020。在边界1040上的是 两个电平移位器1055和1060。电平移位器1060将电压从仓室1030的低压 转变为仓室1020的较高电压,同时电平移位器1055倒置。依据所实施的技 术,可以不需要电平移位器1055。对于在图8中使用的特定技术,使用电平 移位器1055。路径1090是满足图8中的定时要求的关键路径。高压仓室1020包括输入端1010-1013、反相器1070、 1075 、 1080和1085、 逻辑块1050和输出端1091。低压仓室1030包括输入端1014-1016、逻辑块 1 045 、 NOR门1086和反相器1087。当在部分安置设计1000上运行方法145 时,确定布线长度正好为高(特别是网络1093和1094)并可去掉电平移位器 1 055 。为此,克隆反相器G1 1070和反相器G2 1075,变为反相器Gl Clone 1 097和反相器G1 Clone 1096 (见图9)。这就减小了线长,因而该线长现在 是网络1091。另外,因为不需要电平移位器1 055 ,因此减少了电平移位器 的数量。使用PDS或布局驱动合成描述了前面的方法。还有其它布局工具和方法 。本发明适用于通过在设计上连续细化电路位置而进行并且可中断布局工艺 以便改变逻辑布局的任何布局环境。下面的论述集中在布局工具,并且方法 是模拟的退火安置器。如在综述部分所述,这种布局工具是通过用晶体的物 理退火模拟操作的,对布局做了很多试验性改变。现在参见图10,该图表示使用模拟的退火安置器的用于电压岛的并行逻辑和物理结构的方法800。因为方法800与方法100非常相似,因此这里 只介绍不同点,同时参见方法800。在讨论过程中,参见图l用于对比是有利的。两种方法之间的一个不同点是在方法800的步骤820中。PDS系统,如 用于方法100的PDS系统,将芯片结构分成称为仓室的区域。模拟退火布局 系统不用仓室。在步骤820中,代替分割芯片结构和在芯片上进行合成行为, 进行正常退火布局工艺,直到电路移动的平均距离小于最小建议电压岛尺寸 为止。这容许在增加电压岛的并行逻辑和物理结构之前完成正常退火布局工艺在步骤830中,选择一个电路作为籽晶电路。如上所述,最好是开始将 所有电路设定为低电压。然后该籽晶电路被赋予高压并在籽晶电路周围产生 高压岛。高压岛的尺寸增加或减小取决于岛中的电路数量。作为籽晶电路, 可以优选选择靠近现有高压岛的电路。因此,移动物理上与现有高压岛相邻 的籽晶电路将增加现有高压岛的尺寸。这样,代替有其中整个仓室所选为电 压岛的仓室,方法800选择一个电路并在该电路周围产生电压岛。在步骤845中,电路在区域之间(岛之间)移动,以便提高速率和降低功 率和拥挤。步骤845在图11中作为方法845被具体公开,并且与图2的步 骤230-255相似。对于步骤930,给所选岛中的电路供电的低压岛中的关键 电路移动到所选岛中。如果需要,可增加岛的尺寸。这样,如果所选岛中的 关键电路和路径仍然不满足定时限制,则给这些关键电路供电的电路从低功 率移动到高功率。这将加速关键路径和提高定时。如果可能,电平移位器将 从新添加的电路的输出端移动到新增加电路'的输入端。在步骤935中,如果含有所选籽晶电路的岛下降到低于最小容量,则将 所选岛中的关键电路输出供电的低压电路加到所选岛。按照这种方式移动的 电路将被优选以便最小化要求的所加电平移位器的数量。步骤940试图通过 给高压岛添加由关键网络供电的电路而以最快速率保持关键网络。这样,当 所选岛尺寸变小时,由关键网络供电和处于低功率岛中的电路被添加给更高 功率的所选岛,并且从所选岛移去非关键电路。此外,在步骤935中,需要在相邻岛中为移出所选岛的电路让出位置。 为此,由所选岛中的关键电路输出供电的低压电路将加到所选岛上。将优先 选择按照这种方式移动的电路以便使所要求的附加的这种电平移位器的数量最小化。在步骤955中,确定是否该岛满足所有标准。根据为芯片结构设定的性 能和功率标准,这些标准最基本的是性能和功率标准。另外,可以检查其它 标准,如超过容量或低于容量,路线或位置指标等。如果没有满足所有标准 (步骤955=否),则再次进行方法845;如果满足了所有标准(步骤955=是), 则在步骤950结束该方法。应该注意到即使在步骤955之前满足性能和功率 标准,也可以进行多次方法945,以便最大程度地减小功率,同时仍然满足 其它标准。满足其它标准的最低功率构形(特别是,性能标准)是最佳方案。还应该注意到,如果该岛小于优选容量,步骤955可以给该岛添加附加 电路。如果步骤930和935没有给该岛添加足够电路(是因为关键输入锥很 小,或因为实现物理相邻要求的电路移动违反了其它限制),则可选择其它 邻近关键电路,它被赋予高电压并移动到该岛中。然后在新加电路的输入和 输出端继续步骤930和935。注意,如参照图2的方法145所述,可以进行其它工作以便在步骤845 中满足预定标准。例如,可使用緩冲或克隆以便提高速率,降低功率和/或 降低拥挤。作为另外的例子,也可以在步骤845中使用下列最优法(参照方 法145讨论的)高转换电路可以移出高压岛并进入低压岛以便降低功率; 如果电压岛太小,由所选高压岛中的关键路径或网络供电的周围低压岛中的 电路可以移动进入高压岛(提高速率);在最小化电平移位器的基础上,电路 可以移动到所选电压岛中。在图10的步骤850中,不允许使已经被确定的高压岛变得物理断开的 改变。继续完成布局工艺,但是遵守不在高压岛之间产生物理断开的改变的 规则。也在该步骤中确定电压岛内的电路的精确X, Y位置。方法800和845同样适用于为低压岛选择籽晶电路。在这种情况下,给 低压岛添加非关键网络和电路,并且关键网络和电路被传送到高压岛。总之,提供电压岛的逻辑和物理构形的方法适合于各种布局算法。根据 该方法,选择电压岛和向该岛添加电路或移出电路,以便最佳分析设计标准 。两个基本标准是功率和性能标准。由于逻辑结构保持在岛内和周围岛上, 因此产生岛的逻辑构形。因为电路移动到(或移出)物理电压岛,因此产生物 理构形。当电路和物理电压布图的逻辑关系合并以便在需要时提高性能和在 需要时降低功率时,产生最佳布局。该方法的重复性质可发现这种组合相对答易。已经示出的是提供电压岛的逻辑和物理构形的方法。本发明的优选实施 例合并物理和逻辑合成以便提供最少的电平移位器和最少功率路线,但是仍 然满足定时和其它要求。此外,使用用于电压岛结构的重复工艺,可以最小 化功率使用,同时满足特别是速率限制。这里列举的实施例和例子是为了最好地解释本发明及其实际应用,并由 此使本领域技术人员制造和使用本发明。但是,本领域技术人员将认识到前 面的说明和例子只是示意的和举例而已。前面的说明不是穷举的或将本发明 限制到所公开的精确形式。同样,除非特殊说明,附图中或说明书中示出的 方法的任何步骤顺序是作为可能的顺序例子给出的,不作为限制。鉴于上述 教导,在不脱离所附权利要求书的精神和范围的情况下可以作出很多修改和 改变。
权利要求
1、一种用于进行半导体芯片设计的方法,其特征在于,该方法包括以下步骤给一组电路赋予多个电压电平的第一电压电平;从该组电路中选择一籽晶电路;给该籽晶电路赋予多个电压电平的第二电压电平;和在该籽晶电路周围建立第二电压岛。
2、 如权利要求l的方法,其特征在于第二电压电平高于第一电压电平。
3、 如权利要求l的方法,其特征在于第二电压电平低于第一电压电平。
4、 如权利要求1的方法,其特征在于,还包括在被赋予第一电压电平 的该组电路的一电路周围建立第一电压岛的步骤和在第一电压岛和第二电 压岛之间移动至少 一 个电路以便满足预定标准的步骤。
5、 如权利要求4的方法,其特征在于为满足预定标准而在第一电压岛 和第二电压岛之间移动至少一个电路的步骤包括緩冲该至少一个电路的步 骤。
6、 如权利要求4的方法,其特征在于为满足预定标准而在第一电压岛 和第二电压岛之间移动至少一个电路的步骤包括克隆该至少一个电路的步骤。
7、 如权利要求4的方法,其特征在于第二电压高于第一电压,并且所 述至少一个电路是非关键的高转换电路,所述至少一个电路从第二电压岛移 动到第一电压岛。
8、 如权利要求4的方法,其特征在于预定标准包括在性能限制下的功率。
9、 如权利要求4的方法,其特征在于预定标准包括在功率限制下的性台匕
10、 如权利要求4的方法,其特征在于所述至少一个电路从第一电压岛 移动到第二电压岛中,第二电压高于第一电压,并且所述至少一个电路是关 键电路。
11、 如权利要求4的方法,其特征在于,还包括重复以下步骤直到满足 预定标准为止的步骤从一组电路中选择一籽晶电路;给该籽晶电路赋予多个电压电平的第二电压电平;在籽晶电路周围建立第二电压岛;和在第一电 压岛和第二电压岛之间移动至少一个电路以便满足预定标准。
12、 如权利要求11的方法,其特征在于选择与被赋予第二电压电平的 现有电压岛相邻的 一个籽晶电路,在所述一个籽晶电路周围建立附加电压 岛,并且该附加电压岛和现有电压岛合并构成更大的电压岛。
13、 如权利要求11的方法,其特征在于重复权利要求35中的步骤使一 个第二电压岛下降容量。
14、 如权利要求13的方法,其特征在于第二电压高于第一电压,并且 该方法还包括将一相邻关键电路移到所述第二电压岛中的步骤。
15、 如权利要求13的方法,其特征在于第二电压高于第一电压,并且 该方法还包括将相邻低转换电路移到所述第二电压岛中的步骤。
全文摘要
公开一种用于进行半导体芯片设计的方法,其特征在于,该方法包括以下步骤给一组电路赋予多个电压电平的第一电压电平;从该组电路中选择一籽晶电路;给该籽晶电路赋予多个电压电平的第二电压电平;和在该籽晶电路周围建立第二电压岛。通过重复这些步骤,可满足最佳功耗,同时满足速率限制和其它标准。本发明可适用于诸如退火布局工具之类的任何布局环境,它是通过在设计上连续精细调整电路位置而进行的,并且该布局处理可被中断以改变逻辑布局。
文档编号H01L21/70GK101241518SQ20081000490
公开日2008年8月13日 申请日期2001年11月15日 优先权日2000年11月15日
发明者塞巴斯蒂安·T·文特伦, 戴维·E·拉基, 戴维·J·哈萨卫, 托马斯·M·莱普西克, 斯科特·A·泰特劳尔特, 约翰·M·科恩, 苏珊·K·利希滕斯泰格, 阿尔瓦·A·迪安 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1