用于减少集成电路中的非均匀老化的技术的制作方法

文档序号:17298080发布日期:2019-04-03 04:37阅读:106来源:国知局
用于减少集成电路中的非均匀老化的技术的制作方法

本公开涉及电子电路,并且更具体地涉及用于减少电子集成电路中的非均匀老化的技术。



背景技术:

在用于制造电子半导体集成电路的现代过程技术中,存在随时间使集成电路内的晶体管的性能退化的各种过程。这些过程的示例包括热载流子注入(hci)、负偏压温度不稳定性(nbti)以及电迁移(em)。这些过程在不同情形中发生并具有对电路的不同后果。作为示例,这些过程中的一个或多个可以改变集成电路中的一些晶体管的阈值电压和/或漏极电流。

附图说明

图1图示了根据一个实施例的可以用于在未被针对集成电路的用户设计使用的电路中生成转换活动的电路的示例。

图2图示了根据一个实施例的示例性集成电路中的电路的进一步细节。

图3图示了根据一个实施例的可以用于实现图2的集成电路的示例性可编程集成电路。

图4图示了根据一个实施例的4到1路由复用器电路的示例。

图5图示了根据一个实施例的具有路由复用器电路以及两个互斥模式的可配置电路块。

图6图示了根据一个实施例的可编程集成电路(ic)中的配置电路可以如何在多个配置之间切换用户设计以便将转换活动散布到ic中的更多电路的示例。

图7图示了根据一个实施例的被部分地重新配置以便将转换活动散布在更大数目的电路之间以激发老化影响的针对可编程ic的用户设计的示例。

图8图示了根据一个实施例的可被执行以重新配置可编程集成电路(ic)以便使老化过程的影响遍及ic更均匀地分布的操作的示例。

具体实施方式

如上面所讨论,hci、nbti和em是可使半导体集成电路中的晶体管的性能退化的过程的示例。这些过程被称为老化过程。频繁地,由电路中的老化过程导致的退化影响的进展与该电路的电活动有关。典型地,如果电活动更均匀地分布在集成电路内,则由老化过程导致的退化影响的进展跨该集成电路更均匀地分布。

作为示例,在诸如现场可编程门阵列(fpga)之类的可编程逻辑集成电路中,大多数资源未被使用在任何具体用户配置中。典型地,fpga被过度供给有虑及大量不同用户设计以适合于少量fpga设备的电路。一些用户设计在fpga中仅需要小百分比的存储器、逻辑元件和/或数字信号处理电路块。在更精细的颗粒处,fpga内的电路资源的利用率也低。fpga中的路由资源和逻辑元件两者的放置对性能和效率具有大的影响。因此,存在这些资源的某种过度供给以允许不同位置在不同情形下可用。

因为由老化过程导致的退化影响与电路的活动相关联,并且因为fpga的大部分可能在针对该fpga的用户设计中不活动,所以fpga中的每一个资源理想地具有定时表征,该定时表征领会退化影响的完全范围。典型地,fpga可以在其寿命中的任何点处被重新配置。针对现有fpga的重新配置的用户设计可以例如是:使用到目前为止在fpga存在的情况下未使用的一些资源以及已经在fpga的有用寿命内以最大活动使用的其他资源。如果fpga被重新配置,则老化过程的退化影响可以使fpga内的电路块的定时特性显著改变。虑及该可能性,fpga中的资源中的每一个具有宽定时范围,这降低了系统性能。

用于制造半导体集成电路的现代过程技术中的老化过程与电路活动相对应,但是这些老化过程的退化影响的进展与电路活动不呈线性关系。因此,通过在集成电路内的未使用的电路中创建某种转换活动来减小退化影响中的差异是可能的。

本文中公开了用于激活未被针对集成电路(ic)的用户设计激活的该ic的不同部分的多种技术。作为示例,可编程ic的未使用的可配置电路资源可以被耦合以创建生成转换活动的变化信号。作为另一个示例,ic中的一个或多个信号发生器电路可以生成一个或多个低频信号,该一个或多个低频信号被用于在ic中的未使用的电路资源中创建活动。下面提供了这些示例性实施例和其他实施例的进一步细节。

图1图示了根据一个实施例的可以用于在未被针对集成电路的用户设计使用的电路中生成转换活动的电路的示例。图1图示了集成电路(ic)中的电路101-118和配置电路120。电路101-118可以是任何类型的电路。作为不意图进行限制的示例,电路101-118可以是可编程逻辑电路(例如,其包括组合和时序电路)、存储器电路、数字信号处理电路或其任何组合。本文中关于图3公开了这些类型的电路中的一些的示例。图1的电路可以例如处于可编程逻辑集成电路、微处理器、图形处理单元(gpu)或者这些类型的集成电路中的两个或更多个的混合物中。

针对ic的用户设计由电路150实现。在ic的正常操作(例如,用户模式)期间,电路101-118未被针对ic的用户设计使用(即,未被激活)。如果电路101-118在ic的使用期间不受制于任何电转换活动,则电路101-118不会经历与由针对ic的用户设计使用的ic中的电路相同的由老化过程导致的退化影响。

图1图示了用于通过将电路101-107耦合在一起作为第一环形振荡器电路和/或将电路108-110耦合作为第二环形振荡器电路来在电路101-118中创建电转换活动的技术。变化的低频信号在ic的正常操作期间传播通过环形振荡器电路,以在电路101-118中创建转换活动。转换活动(或电转换活动)指代电路中的晶体管接通和关断。变化的信号可以被提供到未在环形振荡器中耦合的其他电路111-118,以在这些电路111-118中创建转换活动。由环形振荡器电路在电路101-118中创建的电转换活动激发老化过程,以导致与由用户设计在ic的正常操作期间使用的集成电路(ic)中的电路类似的电路101-118中的退化影响。

配置电路120将电路101-118耦合在一起,如图1中所示。本文中关于图2公开了配置电路120的示例。配置电路120将电路101-107耦合在第一环形电路中和/或将电路108-110耦合在第二环形电路中。第一环形电路可以耦合到第二环形电路或从第二环形电路解耦。配置电路120将电路101-107中的每一个配置成对通过第一环形电路传输的信号进行反相。因为第一环形电路具有奇数数目的反相电路,所以第一环形电路被配置成充当第一环形振荡器电路。配置电路120还可以将电路108-110中的每一个配置成对通过第二环形电路传输的信号进行反相。如果电路108-110被耦合在具有奇数数目的反相电路的第二环形电路中,则第二环形电路被配置成充当第二环形振荡器电路。配置电路120将电路111-118耦合到电路101-110,如图1中所示。

配置电路120可以如图1中所示的那样对电路101-118进行耦合,例如通过可编程逻辑集成电路、微处理器或其混合物中的导体的可编程路由网络。本文中关于图3公开了导体的这种可编程路由网络的示例。作为另一个示例,配置电路120可以使用固件通过导体的配置网络来如图1中所示的那样对电路101-118进行耦合。在可编程ic的配置模式期间,导体的配置网络用于将配置数据路由到ic中的可编程逻辑电路。该配置数据可以用于将电路101-118中的可编程逻辑电路配置成例如实现第一和/或第二环形振荡器电路。导体的配置网络不在ic的正常操作期间使用以对配置数据进行路由。因此,导体的配置网络可以用于在电路101-118之间对信号进行路由以实现如下面所描述的转换活动。

在ic的正常操作期间,当电路101-118未被针对ic的用户设计使用时,配置电路120将电路101-107耦合在环形振荡器电路配置中,如图1中所示。配置电路120将电路101-107中的每一个配置成对在环形振荡器的环路中经过该电路的信号进行反相。因为奇数数目的反相器电路被耦合在环路中,所以逻辑状态转变传播通过环形振荡器电路内的电路101-107。因此,电路101-107中的每一个包括反相器,该反相器对在第一环形电路中接收到的信号进行反相以生成传播通过第一环形振荡器电路的连续切换的逻辑信号。例如,逻辑状态转变可以从电路101传播通过第一环形振荡器电路到电路102、103、104、105、106、107(按该次序)且然后传播回到电路101。当切换信号到达电路101的输入时,电路101对其输出信号进行反相,并且切换信号继续传播通过第一环形振荡器电路,只要向集成电路供给电力即可。切换信号可以是低频信号,其在电路101-107中的晶体管中创建低频转换活动,以在不消耗大量电力的情况下激发由老化过程导致的退化影响。可以通过将若干个电路(例如,数十、数百或数千个电路)耦合在第一环形振荡器电路中来创建低频信号,只要在该环形振荡器电路的一个环路内存在奇数数目的反相即可。仅作为示例,七个电路101-107被示为在第一环形振荡器电路中耦合。

附加电路111、112、113、114、115和116分别耦合到电路101、102、103、104、106和107。由第一环形振荡器电路生成的电路101、102、103、104、106和107的切换输出信号还可以分别被提供到电路111、112、113、114、115和116的输入。切换输出信号在电路111、112、113、114、115和116中的晶体管中创建转换活动,以激发由老化过程导致的退化影响。

在一个实施例中,当电路101-118未被针对ic的用户设计使用时,配置电路120在ic的正常操作期间将电路108-110耦合在第二环形振荡器电路配置中,如图1中所示。配置电路120将电路108-110中的每一个配置成对在环形振荡器的环路中经过该电路的信号进行反相。因为奇数数目的反相器电路被耦合在环路中,所以逻辑状态转变传播通过第二环形振荡器电路内的电路108-110。因此,电路108-110中的每一个包括反相器,该反相器对在第二环形电路中接收到的信号进行反相以生成传播通过第二环形振荡器电路的连续切换的信号,只要向集成电路供给电力即可。切换信号可以是低频信号,其在电路108-110中的晶体管中创建低频转换活动,以在不消耗大量电力的情况下激发由老化过程导致的退化影响。可以例如通过将若干个电路(例如,数十、数百或数千个电路)耦合在第二环形振荡器电路中来创建低频信号,只要在该环形振荡器电路的一个环路内存在奇数数目的反相即可。仅作为示例,三个电路108-110被示为在第二环形振荡器电路中耦合。

在另一个实施例中,电路105的输出信号中的逻辑状态转变被提供到电路108的输入,以在电路108-110内生成信号振荡,以便在这些电路中激发转换活动。在该实施例中,可以将电路110从电路108解耦。

电路117-118分别耦合到电路109-110的输出,如图1中所示。电路109-110的切换输出信号还被提供到电路117-118的输入。电路109-110的切换输出信号在电路117-118中的晶体管中创建转换活动,以激发由老化过程导致的退化影响。

根据进一步的实施例,集成电路(ic)可以包括附加环形振荡器电路,该附加环形振荡器电路将未被针对ic的用户设计使用的附加电路耦合在一起。附加环形振荡器电路生成变化信号(例如,低频信号),该变化信号在ic的正常操作期间在以其他方式未使用的电路中导致转换活动,以便激发上面所讨论的老化过程的退化影响。

图2图示了根据一个实施例的示例性集成电路200的进一步细节。集成电路(ic)200包括硬处理控制器电路201、安全设备管理器电路202、多个逻辑扇区电路210以及多个本地扇区管理器电路212。每一个逻辑扇区210可以由本地扇区管理器(lsm)212中相应的一个来管理。本地扇区管理器212可以由安全设备管理器202来管理。硬处理控制器201可以从主机处理器接收配置数据(例如,配置比特流)、请求和/或命令。安全设备管理器(sdm)202可以从硬处理控制器201接收配置数据、请求和命令。硬处理控制器201可以例如是微处理器。安全设备管理器202可以通过总线214向本地扇区管理器212提供命令、配置数据和请求。总线214可以是导体的配置网络的一部分。

在一些实例中,可选地,可以对配置数据进行压缩和认证。因此,安全设备管理器202可以包括用于对通过硬处理控制器201从主机处理器接收到的数据进行解压缩和认证的解压缩引擎204和认证引擎206。

逻辑扇区210可以是单独可配置/可编程的。因此,逻辑扇区210中的每一个可以并行地独立处理不同功能。可以利用由逻辑扇区210实现的并行处理,以通过将逻辑扇区的不同子集重新配置成执行多种功能来同时执行这些功能。

控制器201、sdm202和/或lsm212中的一个或多个可以是本文中关于图1所公开的配置电路120。sdm202或lsm212可以存储下述固件,该固件将逻辑扇区210中的未使用电路和总线214中的可编程连接配置成形成并实现一个或多个环形振荡器电路,如本文中关于图1所公开。可以使用总线214(和/或其他导体)将未被针对ic200的用户设计使用的逻辑扇区210内的电路耦合在一起,以形成一个或多个环形振荡器电路,该一个或多个环形振荡器电路生成变化/切换信号以向这些以其他方式未使用的电路提供转换活动,如上面所讨论。

根据其他实施例,sdm202或者lsm212中的一个或多个可以生成被传输到未被针对ic200的用户设计使用的一个或多个电路的一个或多个变化的低频信号,以便在这些以其他方式未使用的电路中生成转换活动。sdm202和/或lsm212中的一个或多个可以包含被用于生成这些低频信号(例如,使用定时器电路)的固件。由sdm202或者lsm212中的一个生成的每一个低频信号可以通过导体网络而被传输到ic中的众多电路以生成转换活动。作为示例,sdm202或者lsm212中的一个可以生成低频信号,该低频信号通过总线214中的导体而被传输到未被针对ic200的用户设计使用的图2中所示的逻辑扇区210中的一个或多个。接收低频信号的逻辑扇区210不需要被耦合在环路或环形振荡器配置中,这是因为sdm202或者lsm212中的一个切换低频信号。sdm202中或者lsm212中的一个或多个中的固件可以生成甚低频信号,该甚低频信号可以具有比由环形振荡器电路生成的信号更低的频率。该甚低频信号可以用于在以其他方式未使用的电路中生成低功率转换活动。

集成电路200可以是例如可编程集成电路。在图3中示出了可以用于实现ic200的说明性可编程逻辑集成电路10。可编程逻辑集成电路(ic)10可以是例如可编程逻辑设备(pld)或现场可编程门阵列(fpga)。如图3中所示,可编程逻辑ic10可以具有用于驱动信号离开ic10并用于经由输入-输出管脚14从其他设备接收信号的输入-输出电路12。诸如全局和局部垂直和水平导电线路和总线之类的导体的可编程路由网络16可以被用于在ic10中对信号进行路由。网络16包括固定互连件(导电线路)和可编程互连件(即,相应的固定互连件之间的可编程连接)。可编程逻辑18可以包括组合和顺序逻辑电路。可编程逻辑18可以被配置成执行用户设计的定制逻辑功能。

可编程逻辑ic10包含可使用管脚14和输入-输出电路12而加载有配置数据的存储器元件20。一旦被加载,存储器元件20就均可以提供对应的静态控制输出信号,该对应的静态控制输出信号控制可编程逻辑18中的关联逻辑部件的状态。典型地,存储器元件输出信号被用于控制金属氧化物半导体(mos)晶体管的栅极。在可编程集成电路的情境中,存储器元件20存储配置数据且因此有时被称为配置随机存取存储器(cram)单元。

诸如路由复用器电路之类的可编程资源的配置可以创建正在进行转换的晶体管以及未在进行转换(例如,在从被禁用的输入起的路径中)的一个或多个晶体管。因此,可编程资源的一个配置可以仅在ic的部分中创建转换活动。该问题在未被用户设计使用的ic中的电路以及由用户设计使用的电路的部分这两者中显现。

图4图示了根据一个实施例的4到1路由复用器电路400的示例。可以任何一次使用路由复用器电路400的仅一个输入,以将输入信号路由到复用器电路400的输出out。在图4的示例中,复用器电路400被配置成将输入信号in1路由到其输出out。响应于输入信号in1切换,从in1到out的信号路径中的晶体管生成转换活动。然而,从输入信号in2-in4到out的信号路径中的晶体管可以不生成转换活动,并且因此,这些晶体管可以不经历与上面所讨论的老化过程相关联的影响,即使在用户设计中使用复用器电路400。

图5图示了根据一个实施例的具有路由复用器电路510以及两个互斥模式501-502的可配置电路块500。在图5的示例中,从复用器电路510的一个所选择的输入到复用器的输出的路径被激活,但在其他输入路径中存在未被转换且因此看不到与老化过程相关联的影响的晶体管515。两个排斥模式501-502由块500中的不同电路实现。在图5中针对可配置电路块500而示出的示例中,从共享输入in起通过模式1501和信号路径m1的信号路径被用于将来自in的信号路由到输出out。共享输入in处的输入信号的切换在模式1501中的晶体管中创建转换活动。in处的输入信号的切换还可以在模式2502中的晶体管中创建激发老化过程的转换活动。然而,从模式2502的输出到电路块500的输出out的信号路径m2(由虚线示出)包含未被转换的晶体管515。图5图示了用户设计中的电路块中的晶体管可以如何不被转换的仅一个示例。用户设计中的众多且更复杂的电路块还可以包含在ic的正常操作期间未被转换的晶体管。

根据一些实施例,可编程集成电路(ic)可以被重新配置成激活ic内的不同电路,以便使老化过程的影响遍及ic更均匀地分布。在一个实施例中,针对可编程ic的用户设计的多个配置可以在ic的正常操作期间使用,以改进转换活动在未被用户设计的初始配置使用的电路(诸如,复用器、查找表电路、存储器电路以及数字信号处理单元)中的覆盖。在该实施例中,可以将用户设计从ic中的一个配置移动到ic中的另一个配置。

为了实现该实施例,可以将未被用户设计使用的ic中的所有电路块添加到集合。需要与转换活动一起运用的不同输入和输出路径被添加到数据库。路由器将树从任何频率源向外路由,以试图仅使用在针对用户设计而生成的初始放置且路由的配置中未使用的ic中的电路块来覆盖尽可能多的输入和输出信号路径。一旦该树不再能够进展到附加的未使用的电路块,路由器就从任何其他频率源开始,以试图通过附加的未使用的电路块来最大化其到达范围以便生成另一个树。路由器可以使用供可编程逻辑ic生成这些树的放置和路由技术。一旦已经完全穷尽该过程,树的集合就被编译为将用于使ic老化的用户设计的配置集合中的一个配置。然后从数据库移除由该配置切换的路径。然后,路由器使用放置和路由技术来执行另一系列的树路线以创建用户设计的另一个配置。该过程重复,直到所有的信号路径被覆盖,或直到存在一些电路块为不可访问的证据。包括路由器功能的这些功能可以例如由在计算机上或在ic中操作的设计工具软件来执行。

该过程的结果是由未被用户设计的初始配置使用的电路块组成的许多配置,其可以被重新配置到ic中以在尽可能多的晶体管上生成更均匀的切换活动。这些配置中的每一个实现了用户设计并满足了用户的针对用户设计的定时约束。理想地,用户设计的最少数目的配置尽可能地生成ic中电路块的最高利用率。这些配置中的两个或更多个可以在一些实施例中使用相同电路块中的一些,但优选地具有尽可能小的重叠。配置电路在这些配置之间切换用户设计(例如,当ic空闲时),以便使转换活动遍及ic更均匀地分布。

图6图示了根据一个实施例的可编程集成电路(ic)中的配置电路可以如何在多个配置之间切换用户设计以便将转换活动散布到ic中的更多电路块的示例。在图6的示例中,ic600包括12个可编程电路块601-612。针对ic600的用户设计的两个配置a和b由在计算机上操作的设计工具620生成。针对ic600的用户设计的第一配置a被放置在电路块601-606中。针对ic600的用户设计的第二配置b被放置在电路块607-612中。当相应配置a或b被激活时,配置a和b中的每一个执行用户设计的相同基本功能。ic600中的配置电路在配置a和b之间切换用户设计,以便在电路块601-606与电路块607-612之间传播转换活动。当用户设计空闲时,可以在配置a和b之间转换用户设计。散布由用户设计生成的转换活动使本文中所讨论的老化过程的退化影响跨ic更均匀地散布。可以例如在系统重启之后在配置a和b(以及可能地附加的配置)之间切换用户设计。

根据另一个实施例,可编程ic中的配置电路可以在利用相同电路块内的不同电路或其他资源的两个或更多个不同配置之间切换针对ic的用户设计。例如,配置电路可以在第一配置a1与第二配置a2之间切换用户设计,第一配置a1利用电路块601-606内的第一组电路,第二配置a2利用电路块601-606内的第二组电路。用户设计的功能可以如何不同地放置在相同电路块内的示例是:本文中关于图5所公开的排斥模式1和2在不同时间处实现不同配置的不同功能。当用户设计空闲时,可以在配置a1和a2之间转换用户设计。当相应配置a1或a2被激活时,配置a1和a2中的每一个执行用户设计的相同基本功能。在配置a1和a2之间切换用户设计可以将转换活动散布在第一组和第二组电路之间,以在电路块601-606内的更多晶体管中激发老化过程。配置a1和a2可以由设计工具620生成。

根据又一个实施例,针对可编程集成电路(ic)的用户设计可以被部分地重新配置成改进转换活动在未被用户设计的初始配置使用的电路上的覆盖。未使用的电路可以包括例如复用器、查找表电路、存储器电路以及数字信号处理单元。可以执行针对可编程ic的用户设计的部分的部分重新配置,以在ic内重新定位用户设计的该部分,以便允许老化过程发生在由用户设计的一个配置阻止的晶体管中。

可以在具有不同电路块或相同电路块的不同利用率的多个配置之间移动用户设计。用户设计的该多个配置中的每一个可以具有不同的老化配置集合。配置电路可以迭代通过用户设计的该多个配置。尽管特定用户配置正在操作,但可以使用部分重新配置以生成对未使用的电路的老化影响。用户设计的大配置集合的目的可以是:针对运行用户设计的每一个ic创建均匀的老化简档。

针对可编程ic的用户设计可以例如在ic重启之后被完全重新配置或部分重新配置。保持几乎不持续存在的状态的用户设计、或者其中可以耗尽状态的用户设计、或者被周期性地使用且与其他用户设计掉换的用户设计可以使重新配置的应用在不完全重启ic的情况下发生。然而,如果用户设计包含大量状态信息,或者如果用户设计不能出于某种其他原因而停止或重启,则用户设计可以被分段成不同段,并且这些段中的一个或多个可以在不影响用户设计的其他段的情况下被部分重新配置。用户设计的不同段可以例如在比每一个段内的电路更有限的基础上仅彼此通信。

图7图示了根据一个实施例的被部分地重新配置以便将转换活动散布在更大数目的电路之间以激发老化影响的针对可编程ic的用户设计的示例。图7图示了包含至少5个不同部分的针对可编程ic的用户设计700。用户设计700的这5个不同部分可以是分段的或不分段的。可以通过将用户设计的第一部分从包含第一组电路块的ic的区701中的第一配置a移动到包含第二组电路块的ic的区702中的第二配置a',来部分地重新配置用户设计700。当相应配置a或a'被激活时,配置a和a'中的每一个执行用户设计的相同功能。

还可以通过在利用ic的区705中的相同电路块内的不同电路或其他资源的两个或更多个不同配置d和d'之间切换用户设计的第四部分,来部分地重新配置用户设计700。当相应配置d或d'被激活时,配置d和d'中的每一个执行用户设计的相同功能。这两个不同配置d和d'中的每一个利用区705中的相同电路块内的至少一些不同电路。作为示例,配置d和d'可以利用电路块内的不同模式以激活复用器内的不同晶体管(例如,包括晶体管515),如本文中关于图5所公开。作为其他示例,配置d和d'可以利用相同电路块内的不同查找表或不同寄存器。

在图7的实施例中,在配置a和a'以及配置d和d'之间的每一次部分重新配置之前和之后,用户设计的配置b、c和e分别保持被配置在ic的区703、704和706中的电路块中。在其他可替换实施例中,配置b、c和e中的一个或多个还可以被部分地重新配置成在不同电路块或相同电路块内的不同晶体管中激发老化影响。配置a-e可以例如由设计工具生成。

在一些实施例中,对于需要无限期地持续存在于可编程ic中的相同电路中的一些用户设计而言,在不同配置之间均匀分布切换的复杂度可能过大。在这些实施例中,如果设计工具认识到用户设计的区持续存在达如ic处于服务中那样长或者用户设计的区持续存在达无限期的时间段(但在该时间段中,未来可能存在一些用户改变),则设计工具可以防止用户设计的这些区被重新配置。可由用户指定的ic的这些区具有不同老化特性。由用户设计的这些区中的不同老化特性导致的不同退化影响可以被设计工具忽略,这是因为假定用户设计的这些区在未来的时间处不会被移动(或不太可能被移动)到ic中的不同电路。因此,对于被保证持续存在达ic寿命的用户设计或其部分而言,设计工具不必考虑未使用的资源与所使用的资源之间的老化差异。未来可能具有一些改变的用户设计的部分可以使用本文中所公开的技术来虑及由用户设计使用的电路中的老化差异。

图8图示了根据一个实施例的可被执行以重新配置可编程集成电路(ic)以便使老化过程的影响遍及ic更均匀地分布的操作的示例。在操作801中,针对可编程ic的设计工具生成针对ic的用户设计的多个配置。设计工具可以例如在计算机上实现。用户设计的配置中的每一个在使用ic中的至少一些不同电路时实现了ic中的用户设计的相同基本功能。用户设计的该多个配置可以包括整个用户设计的不同配置和/或用户设计的部分的部分重新配置。不同配置可以包括部分或全部用户设计的不同放置。不同配置中的两个或更多个可以包括ic中的相同电路块内的电路的不同利用率。

在操作802中,配置电路在操作801中生成的配置中的第一个中实现用户设计。在操作803中,配置电路将用户设计从配置中的第一个移动到在操作801中生成的配置中的第二个。操作803可以在操作802之后相当长的时间段内被执行,使得配置中的第一个和第二个之间的转换不中断用户设计的执行。在配置中的第二个中实现用户设计在未被配置中的第一个老化的晶体管中导致老化过程的影响。在决策操作804中,配置电路确定是否在操作801中生成了用户设计的附加配置。如果未在操作801中生成用户设计的附加配置,则图8的过程返回到操作802。

如果在操作801中生成了用户设计的第三配置,则配置电路在操作805中将用户设计从配置中的第二个移动到第三配置。在第三配置中实现用户设计在未被配置中的第一个和第二个老化的晶体管中导致老化过程的影响。可以在操作805之后的附加操作中实现在操作801中生成的用户设计的附加配置。在已经在ic中实现在操作801中生成的用户设计的所有配置之后,图8的过程返回到操作802。用户设计的配置中的每一个可以被实现达任何合适时间段。

本文中所公开的实施例可以被并入到任何合适集成电路中。例如,实施例可以被并入到众多类型的设备(诸如可编程逻辑集成电路、专用标准产品(assp)以及专用集成电路(asic))中。可编程逻辑集成电路的示例包括:可编程阵列逻辑(pal)、可编程逻辑阵列(pla)、现场可编程逻辑阵列(fpla)、电可编程逻辑设备(epld)、电可擦除可编程逻辑设备(eepld)、逻辑单元阵列(lca)、复杂可编程逻辑设备(cpld)以及现场可编程门阵列(fpga),仅列举几个。

本文中在一个或多个实施例中描述的可编程逻辑集成电路可以是数据处理系统的一部分,该数据处理系统包括以下部件中的一个或多个:处理器;存储器;io电路;以及外围设备。数据处理可以被用在许多种应用中,该许多种应用诸如是计算机联网、数据联网、仪表化、视频处理、数字信号处理、或者其中使用可编程或可再编程逻辑的优势合期望的任何合适的其他应用。可编程逻辑集成电路可以用于执行多种不同逻辑功能。例如,可编程逻辑集成电路可以被配置为与系统处理器协作地工作的处理器或控制器。可编程逻辑集成电路还可以被用作用于仲裁对数据处理系统中的共享资源的访问的仲裁器。在又一个示例中,可编程逻辑集成电路可以被配置为处理器与系统中的其他部件中的一个之间的接口。

以下示例涉及进一步的实施例。示例1是一种集成电路,包括:第一电路,其被配置成实现针对所述集成电路的用户设计;第二电路,其未被所述用户设计使用;以及配置电路,其通过导体网络将所述第二电路耦合在一起,其中所述第二电路中的晶体管响应于下述变化信号而接通和关断,该变化信号在所述第一电路实现所述用户设计时继续传播通过所述第二电路且通过所述导体网络。

在示例2中,示例1所述的主题可以可选地包括:其中所述配置电路将所述第二电路耦合为环形振荡器电路。

在示例3中,示例1-2中任一项所述的主题可以可选地进一步包括:第三电路,其未被所述用户设计使用,其中所述配置电路通过所述导体网络将所述第三电路耦合在一起,并且其中所述第三电路中的晶体管响应于下述变化信号而接通和关断,该变化信号在所述第一电路实现所述用户设计时继续传播通过所述第三电路。

在示例4中,示例3所述的主题可以可选地包括:其中所述配置电路将所述第三电路耦合为环形振荡器电路。

在示例5中,示例1所述的主题可以可选地包括:其中所述配置电路包括控制器电路,所述控制器电路生成所述变化信号,并通过所述导体网络将所述变化信号从所述配置电路提供到所述第二电路,以在所述第一电路实现所述用户设计时在所述第二电路中的晶体管中生成转换活动。

在示例6中,示例1-5中任一项所述的主题可以可选地包括:其中所述集成电路是可编程集成电路,其中所述第一和第二电路包括可编程逻辑电路,并且其中所述第一电路中的可编程逻辑电路被配置成实现所述用户设计。

在示例7中,示例1-4中任一项所述的主题可以可选地包括:其中所述集成电路是可编程集成电路,其中所述第一和第二电路包括可编程逻辑电路,并且其中所述第一电路中的可编程逻辑电路被配置成实现所述用户设计,其中所述配置电路将所述第二电路中的可编程逻辑电路配置成充当具有耦合在环形电路中的奇数数目的反相器电路的环形振荡器电路。

示例8是一种存储用于减少可编程集成电路中的非均匀老化的可执行指令的计算机可读非暂时性介质,所述可执行指令包括:可由设计工具执行以生成针对所述可编程集成电路的用户设计的配置的指令,其中所述配置中的每一个使用所述可编程集成电路中的至少一些相对于所述配置中的其他配置独特的电路来实现所述用户设计;可由所述可编程集成电路中的配置电路执行以在所述配置中的第一个中实现所述用户设计的指令;以及可由所述配置电路执行以将所述用户设计从所述配置中的第一个移动到所述配置中的第二个以便在未被所述配置中的第一个老化的所述可编程集成电路中的电路中导致老化过程的影响的指令。

在示例9中,示例8所述的主题可以可选地进一步包括:可由所述配置电路执行以将所述用户设计从所述配置中的第二个移动回到所述配置中的第一个的指令。

在示例10中,示例8-9中任一项所述的主题可以可选地进一步包括:可由所述配置电路执行以将所述用户设计从所述配置中的第二个移动到所述配置中的第三个以便在未被所述配置中的第一个和第二个老化的电路中导致所述老化过程的影响的指令。

在示例11中,示例10所述的主题可以可选地进一步包括:可由所述配置电路执行以将所述用户设计从所述配置中的第三个移动回到所述配置中的第一个的指令。

在示例12中,示例8-11中任一项所述的主题可以可选地包括:其中可由所述配置电路执行以在所述配置中的第一个中实现所述用户设计的指令进一步包括可由所述配置电路执行以将所述可编程集成电路中的第一可编程电路块配置成实现所述配置中的第一个的指令,并且其中可由所述配置电路执行以将所述用户设计从所述配置中的第一个移动到所述配置中的第二个的指令进一步包括可由所述配置电路执行以将所述可编程集成电路中的第二可编程电路块配置成实现所述配置中的第二个的指令,其中所述第二可编程电路块中的至少一些与所述第一可编程电路块不同。

在示例13中,示例8-11中任一项所述的主题可以可选地包括:其中可由所述配置电路执行以在所述配置中的第一个中实现所述用户设计的指令进一步包括可由所述配置电路执行以将所述配置中的第一个放置在所述可编程集成电路中的可编程逻辑电路块的子集中的第一电路中的指令,并且其中可由所述配置电路执行以将所述用户设计从所述配置中的第一个移动到所述配置中的第二个的指令进一步包括可由所述配置电路执行以将所述配置中的第二个放置在所述可编程逻辑电路块的所述子集中的第二电路中的指令,其中所述第二电路与所述第一电路不同。

在示例14中,示例8-11中任一项所述的主题可以可选地包括:其中可由所述配置电路执行以将所述用户设计从所述配置中的第一个移动到所述配置中的第二个的指令进一步包括可由所述配置电路执行以执行下述操作的指令:部分地重新配置所述用户设计的部分,使得所述配置中的第二个的第一部分与所述配置中的第一个的第一部分由相同电路实现,并且所述配置中的第二个的第二部分与所述配置中的第一个的第二部分由不同电路实现。

示例15是一种用于减少集成电路中的非均匀老化的影响的方法,所述方法包括:将第一电路配置成实现针对所述集成电路的用户设计;使用配置电路通过导体网络将第二电路耦合在一起,其中所述第二电路未被所述用户设计使用;以及响应于下述变化信号而在所述第二电路中生成转换活动,该变化信号在所述第一电路实现所述用户设计时传播通过所述第二电路且通过所述导体网络。

在示例16中,示例15所述的主题可以可选地包括:其中使用所述配置电路通过所述导体网络将第二电路耦合在一起进一步包括将所述第二电路耦合在一起以充当环形振荡器电路。

在示例17中,示例15-16中任一项所述的主题可以可选地进一步包括:使用所述配置电路通过所述导体网络将第三电路耦合在一起,其中所述第三电路未被所述用户设计使用;以及响应于下述变化信号而在所述第三电路中生成转换活动,该变化信号在所述第一电路实现所述用户设计时传播通过所述第三电路。

在示例18中,示例17所述的主题可以可选地包括:其中将所述第三电路耦合在一起进一步包括使用所述配置电路将所述第三电路耦合为环形振荡器电路。

在示例19中,示例15所述的主题可以可选地包括:其中响应于所述变化信号而在所述第二电路中生成转换活动进一步包括:使用控制器电路生成所述变化信号;以及通过所述导体网络将所述变化信号从所述控制器电路提供到所述第二电路,以在所述第一电路实现所述用户设计时在所述第二电路中生成转换活动。

在示例20中,示例15-19中任一项所述的主题可以可选地包括:其中所述集成电路是可编程逻辑集成电路,并且其中所述第一和第二电路包括可编程逻辑电路。

示例21是一种用于减少可编程集成电路中的非均匀老化的方法,所述方法包括:使用设计工具生成针对所述可编程集成电路的用户设计的配置,其中所述配置中的每一个利用所述可编程集成电路中的至少一些相对于所述配置中的其他配置独特的电路来实现所述用户设计;利用所述可编程集成电路中的配置电路在所述配置中的第一个中实现所述用户设计;以及利用所述配置电路将所述用户设计从所述配置中的第一个移动到所述配置中的第二个,以在未被所述配置中的第一个老化的电路中导致老化过程。

在示例22中,示例21所述的主题可以可选地进一步包括:利用所述配置电路将所述用户设计从所述配置中的第二个移动回到所述配置中的第一个。

在示例23中,示例21-22中任一项所述的主题可以可选地进一步包括:利用所述配置电路将所述用户设计从所述配置中的第二个移动到所述配置中的第三个,以在未被所述配置中的第一个和第二个老化的电路中导致所述老化过程。

在示例24中,示例21-23中任一项所述的主题可以可选地包括:其中在所述配置中的第一个中实现所述用户设计进一步包括利用所述配置电路将所述可编程集成电路中的第一电路块配置成实现所述用户设计的所述配置中的第一个,并且其中将所述用户设计从所述配置中的第一个移动到所述配置中的第二个进一步包括利用所述配置电路将所述可编程集成电路中的第二电路块配置成实现所述用户设计的所述配置中的第二个,其中所述第二电路块中的至少一些与所述第一电路块不同。

在示例25中,示例21-23中任一项所述的主题可以可选地包括:其中将所述用户设计从所述配置中的第一个移动到所述配置中的第二个进一步包括:利用所述配置电路来部分地重新配置所述用户设计的部分,使得所述配置中的第二个的第一部分与所述配置中的第一个的第一部分由相同电路实现,并且所述配置中的第二个的第二部分与所述配置中的第一个的第二部分由不同电路实现。

已经出于说明的目的呈现了本发明的示例性实施例的以上描述。以上描述不意图是穷尽的或将本发明限于本文中所公开的示例。在一些实例中,可以采用本发明的特征,而不对应地使用如所阐述的其他特征。在不脱离本发明的范围的情况下,鉴于以上教导,许多修改、替代以及变型是可能的。

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