用于调节可编程逻辑器件的性能特性的设备和方法

文档序号:6857203阅读:228来源:国知局
专利名称:用于调节可编程逻辑器件的性能特性的设备和方法
技术领域
本发明的构思大体上涉及调节可编程逻辑器件(PLD)的性能。更具体地说,本发明涉及调节PLD的供电电压/能耗以及在PLD中的降噪和隔离。
背景技术
PLD为用来不仅给设计者而且还有给终端用户提供灵活性的普遍存在的电子器件。在电子电路或系统的设计周期期间,设计者可以通过针对每个设计将PLD简单地重编程来进行相对大量的设计重复。因此,设计周期的长度和费用与其它可选方案相比降低。同样,终端用户可以在包括PLD的设计的功能性上具有所期望的控制水平。通过现场或者甚至在实时的基础上将PLD编程,用户可以改变电路或系统工作的方式。
为了适应日益复杂的设计,现代PLD包括比较多的晶体管。另外,用户永远要求更高的性能,这导致更大的操作频率。因此,PLD的能耗(power consumption)、能量散失(power dissipation)、模具温度以及因此功率密度(在各种电路或块中的能量散失)容易增大。但是功率密度的向上前进会使得PLD设计和实施不能实现或者容易出故障。目前存在对在各种PLD块和电路中具有可调节性能例如可调节能耗的PLD的需求。

发明内容
所披露的新颖构思涉及用于调节PLD的性能的设备和方法,包括调节PLD的供电电压(supply power)/能耗以及在PLD中的降噪和隔离。本发明的一个方面在于用于调节PLD的性能的设备。在一个实施方案中,PLD包括一电路,用来控制在PLD内的另一个电路的供电电压。控制电路还将在PLD的噪声过滤。
在另一个实施方案中,PLD包括一电路,它位于PLD中的深n井中。在深n井中的电路与可变阻抗器件耦接。该可变阻抗器件调节在深n井中的电路的供电电压,因此调节其性能。
本发明的另一个方面设计配置、操作和调节PLD的性能的方法。在一个实施方案中,配置PLD以实现一电子电路的方法包括将该电子电路映射为在PLD内的功能资源以产生出由该PLD实现的电路。该方法还包括识别出在由PLD实现的电路中的至少一个关键电路路径,并且设置该关键电路路径的至少一部分的供电电压电平。
在另一个实施方案中,操作PLD的方法包括将在PLD中的电路的供电电压电平设置至一电压电平,并且确定PLD的性能度量(performance measure)是否满足特定的标准。该方法还包括根据PLD的性能度量是否满足标准来调节电路的供电电压电平。
另一个实施方案涉及一种操作PLD的方法,该PLD配置成在所期望或规定的操作环境中运行。更具体地说,该方法包括将在PLD中的电路的供电电压电平设置至一电压电平,并且根据可编程逻辑器件(PLD)的操作环境的至少一个特性调节第一电路的供电电压电平。


附图只是举例说明了本发明的示例性实施方案,并且因此不应该被认为是对其范围进行限制。本领域普通技术人员在本发明说明书的启示下将理解的是,所披露的发明构思具有其它等同的实施方案。在这些附图中,用在一幅以上的附图中的相同附图标记表示相同、类似或等同的功能、组件或块。
图1显示出根据本发明一示例性实施方案的PLD的总体方框图。
图2显示出根据本发明一示例性实施方案的PLD的平面布置图。
图3显示出在根据本发明的PLD中的可编程逻辑的示例性实施方案的方框图。
图4显示出用于调节在根据本发明一示例性实施方案的PLD中的所期望电路的供电电压的电路布置。
图5显示出用于调节在根据本发明一示例性实施方案的PLD中的所期望电路的供电电压的另一个电路布置。
图6显示出用于降低在根据本发明一示例性实施方案的PLD中的噪声水平的电路布置。
图7显示出用于降低在根据本发明一示例性实施方案的PLD中的噪声水平的另一个电路布置。
图8显示出用于提供用来调节根据本发明一示例性实施方案的PLD的各个块的性能的柔性机构的布置。
图9A-9C显示出用于分配并且产生出在根据本发明的示例性实施方案的PLD中的供电电压的电路布置。
图10显示出使用n井来隔离在根据本发明一示例性实施方案的PLD中的噪声敏感电路的实施例。
图11显示出使用根据本发明示例性实施方案的PLD计算机辅助设计(CAD)软件的各种软件模块。
图12显示出根据本发明一示例性实施方案的PLD CAD软件的流程图。
图13显示出在根据本发明示例性实施方案的PLD内的用于调节、编程或设置PLD的所期望块的供电电压电平的电路的方框图。
图14显示出用于根据外部信源调节在PLD内的供电电压电平的根据本发明示例性实施方案的电路布置。
图15显示出根据本发明示例性实施方案的用于调节在PLD内的供电电压电平的电路布置。
具体实施例方式
本发明的构思构想出用于具有供电电压可调(并且因此能耗和性能可调)、噪声水平降低并且隔离噪声的特征的PLD的设备和相关的方法。本发明的构思有助于克服传统PLD所存在的功率密度水平过大的问题。而且,人们可以根据本发明调节PLD的所需部分、电路或块(所有电路和块)的性能水平。换句话说,人们可以通过对在具有所要求的颗粒度水平(即从各个电路块一直到整个PLD电路)的PLD内的电路的供电电压和伴随的能量散失进行编程来调节性能。
更具体地说并且如下面所详细描述的一样,本发明的构思设想通过采用可变阻抗电路来控制在PLD内的一个或多个电路或电路块的供电电压和能耗。另外,人们可以使用可变阻抗电路来形成滤波器,它与能耗调节同时用来降低在PLD内的噪声水平。降低噪声水平有助于保护在PLD内的感测电路免受电噪声的负面效果。另外,人们可以通过使用在PLD内的深n井结构来保护在PLD内的噪声敏感电路,这有助于使敏感电路与电噪声的来源隔离。
本发明的构思具有以下优于传统方案的益处。首先,它们允许在性能和功率消耗之间进行折中(trade off)或者优化性能-功率消耗之间的折中。第二,可以在PLD的关键电路路径或者部分中可选择地设置、编程或者调整供应电压和功率消耗,从而如所需要的那样提高它们的性能。相反,可以在PLD的非关键电路路径或者部分中将供应电压和功率消耗可选择地设置、编程或者调整至与它们所需的性能相称的水平上。
也可以采用本发明的构思来防止热逸散(或者降低其可能性)。更具体的说,在传统的PLD中,以相对较高速度操作的电路容易消耗更多的功率,导致PLD温度升高。所增加的功率消耗反过来会导致那些电路消耗更多的功率。这种正反馈机制可能使功率密度增加至不安全或者破坏性的水平上。在本发明的PLD中,可以调整或者控制各块的供应电压和功率消耗水平,并因此减少热逸散的可能性。另外,本发明的构思有助于通过降低PLD内的噪声水平来提供更好的性能,以及将噪声敏感电路与不希望的噪声效果隔离开。
图1显示出根据本发明一示例性实施方案的PLD103的总体方框图。PLD103包括配置电路130、配置存储器133、控制电路136、可编程逻辑106、可编程互连109和I/O电路112。另外,PLD103可以根据需要包括测试/诊断电路115、一个或多个处理器118、一个或多个通信电路121、一个或多个存储器124、一个或多个控制器127。
要指出的是,图1显示出PLD103的简化方框图。因此,PLD103可以包括如本领域普通技术所理解的其它块和电路。这个电路的实施例包括时钟产生和分配电路、冗余电路等。另外,PLD103可以包括模拟电路、其它数字电路和/或混合模式电路。
可编程逻辑106根据需要包括可配置或可编程逻辑电路,例如查询表(LUT)、乘积项逻辑、多路复用器、逻辑门、寄存器、存储器等。可编程互连109与可编程逻辑106耦接,并且在可编程逻辑106内的各个块和在PLD103里面或外面的其它电路之间提供可配置互连(耦接机构)。
控制电路136控制着在PLD103内的各种操作。在控制电路136的监控下,PLD配置电路130使用配置数据(从外部源例如存储装置、主机等中获得)来编程或配置PLD103的功能。配置数据通常驻留在配置存储器133中。如本领域普通技术人员在本发明说明书的启示下所理解的一样,该配置数据通过将可编程逻辑106和可编程互连109编程来确定PLD103的功能。
如本领域普通技术人员在本发明说明书的启示下所理解的一样,I/O电路112可以由各种I/O器件或电路构成。I/O电路112可以与PLD103的各种部件例如可编程逻辑106和可编程互连109耦接。I/O电路112为在PLD103内的各个块提供了与外部电路或器件通信的机构和电路。
测试/诊断电路115便于对在PLD103内的各个块和电路进行测试和故障查找。测试/诊断电路115可以包括各种本领域普通技术人员在本发明说明书的启示下所知的各种块或电路。例如,根据需要,测试/诊断电路115可以包括用于在PLD103通电或重置之后进行测试的电路。测试/诊断电路115根据需要还可以包括编码和奇偶电路。
如上所述,PLD103可以包括一个或多个处理器118。处理器118可以与在PLD103内的其它块和电路耦接。处理器118可以接收来自PLD103内或者外的电路的数据和信息,并以如本领域技术人员通过本发明的描述所能理解的多种方式处理信息。一个或者多个处理器118可以构成数字信号处理器(DSP)。DSP允许按照需要执行多种信号处理任务,例如压缩、解压、音频处理、视频处理、过滤等。
PLD103也可以包括一个或者多个通信电路121。通信电路121可以便于在PLD103的内的各电路以及PLD103外的电路之间的数据和信息的交换,如本领域的普通技术人员通过本发明的描述所能理解的那样。例如,通信电路121可以按照需要提供各种协议功能(例如传输控制协议/因特网协议(TCP/IP),用户数据报协议(UDP)等。再例如,通信电路121可以按照需要包括网络(例如以太网、令牌环等)或者总线接口电路。
PLD103还可以包括一个或者多个存储器124和一个或者多个控制器127。存储器124允许在PLD103中存储各种数据和信息(例如用户数据、中间结果、计算结果等)。存储器124可以按照需要呈粒状或者块状。控制器127允许与PLD外的电路的操作和各种功能进行接口,并对它们进行控制。例如控制器127可以按照需要构成存储器控制器,它与外部同步动态随机存取存储器(SDRAM)进行接口并对其进行控制。
除了图1所示的电路之外,PLD103可以包括模拟或者混合模式的电路139,有时称之为模拟或者混合模式的知识产权(IP)块。例如,PLD103可以包括放大器、数字-模拟转换器、模拟-数字转换器、过滤器等。由于它们的性质,模拟/混合模式电路容易显示出对噪声的灵敏性。如以下详细所述,本发明的构思有助于将噪声敏感电路与噪声产生电路相隔离。另外,本发明的构思包括容易减少PLD中的噪声水平的技术。
图2显示了本发明示例实施方案的PLD103的平面图。PLD103包括被设置为二维阵列的可编程的逻辑电路106。可编程的互连109被设置为水平互连和垂直互连,将可编程逻辑106的块彼此耦接。
按照需要,可以调整可编程逻辑106的每个块、或者可编程互连109的每个段、或者这两者的供应电压,以及因此调整能量散失水平。另外,按照需要,可以调整可编程逻辑106的一个或者多个块的一部分、或者可编程互连109的一部分、或者这两者的供应电压和能量散失水平。
在所示的实施方案中,本发明的PLD具有分级的架构。换句话说,图2的可编程逻辑106的每个块可以包括较小的或者较成粒状的可编程逻辑块或者电路。可以按照需要调整PLD的每个分级构架中的每个供应电压和功率消耗或者能量散失。
图3显示了本发明的PLD中的可编程逻辑106的示例性实施方案的方框图。可编程逻辑106包括逻辑元件(Logical element)或者可编程逻辑电路250、局部互连253、接口电路256和接口电路259。逻辑元件250提供了可配置或者可编程的逻辑电路功能,例如LUT、寄存器、乘积项逻辑等,如本领域的普通技术人员通过本发明的描述所理解的那样。局部互连253提供了用于逻辑元件250的可配置或者可编程的机构,以彼此或者与可编程的互连部分109(有时称之为全局互连部分)耦接。
接口电路256和接口电路259为电路的可编程逻辑106块提供可配置和可编程的方式,以与可编程互连109耦接(并因此与其它可编程逻辑106耦接,如图2所示)。接口电路256和接口电路259可以包括多路复用器(MUX)、寄存器、缓冲器、驱动器等,如该领域的普通技术人员通过本发明的描述所理解的那样。
可以按照需要调整PLD103内的电路的每个部分或者块的供应电压和能量散失(见图1-3)。另外,可以按照需要以个体或者以全部为基础,彼此独立地调整电路的每个部分或者块的供应电压和功率消耗。在电路的每个部分或者块内,可以按照需要调整每个子块、或者子块组的供应电压和功率消耗。
例如,可以调整本发明示例性实施方案的PLD内的以下电路的全部或者一部分的供应电压和能量散失图1中的一个或者多个块(例如可编程逻辑106,可编程互连109等);一个或者多个可编程逻辑块106内的一个或者多个逻辑元件250;一个或者多个可编程逻辑块106内的一个或者多个接口电路256和/或259;一个或者多个可编程逻辑106内的一个或者多个局部互连;以及一个或者多个接口电路256和/或259内的一个或者多个MUX、驱动器、缓冲器等。
如上所述,可以按照任何所需的颗粒度水平来调整供应电压和功率消耗。换句话说,可以按照需要和应用来使得这种调整适用于子块、块、区、或者整个PLD。例如,可以按照需要对PLD中的一个或者多个这种元件进行与PLD中的一个或者多个其它元件相独立的供应电压和功率消耗的调整。如本领域的普通技术人员通过本发明的描述所能理解的那样,可以按照需要调整PLD某些部分的供应电压和功率消耗,并对PLD的其它部分提供固定的或者缺省的供应电压和功率消耗。
图4显示了用于调整本发明示例性实施方案的PLD中的所需电路的供应电压以及因此调整功率消耗的电路布置。更具体地说,在图4中的电路布置显示出一受控PLD电路300,它包括控制电路303、PLD电路306和可变阻抗器件309。
该电路如下操作根据没有在图4中明确显示出的一个或多个信号(例如,结合图13描述的偏置信号和配置信号),电路303施加相应的控制信号(或者根据可变阻抗器件309的特性的信号)以便对可变阻抗器件309提供给PLD电路306的供电电压进行调节。因此,控制电路303可以导致PLD电路306的功率消耗(以及其它的性能度量,例如操作速度)的调整。
可变阻抗器件309将供应电压VDD耦接至PLD电路306。当可变阻抗器件309具有相对较高的阻抗时,PLD电路306传导相对少的电流,并具有接近于0的供应电压。因此PLD电路306有效地关闭或者进入到OFF状态或者睡眠模式。在这种状态下,PLD电路306消耗基本为0的功率。
在另一个极端,当可变阻抗器件309具有相对低的阻抗,PLD电路306几乎接收了电压VDD作为其供应电压(减去在可变阻抗器件309上的任意压降)。在该状态中,PLD电路306通常具有更高的能耗,但是也具有更高的速度。因此,通过改变在接近零和接近VDD供电电压这两个极端之间的PLD电路306的有效供电电压,人们可以折中使用其各种性能度量,例如能耗和速度。
PLD电路306可以构成PLD的任意所期望的区域、块、电路、子块或那些部件的每一个的集合。例如,PLD电路306可以根据需要构成在图1-3中所示的元件的一个或多个,例如可编程互连109、逻辑元件250等。
如下面所详细描述的一样,根据需要,控制电路303可以在PLD的一个或多个其它部件的监控下或者在外部源或者内部和外部源的组合的控制下操作。控制电路303使可变阻抗器件的阻抗变化。因此,提供给PLD电路306的有效供电电压变化。PLD电路306的有效供电电压影响了其特性,例如操作速度、能耗等。通过调节PLD电路306的供电电压电平,人们可以折中使用其各种特性,例如速度对能耗。
如本领域普通技术人员在本发明说明书的启示下所理解的一样,可变阻抗器件309可以根据一些因素(例如特定的PLD实施、电路和工艺技术)构成所要求类型的器件。作为一个示例,可变电路器件309可以构成一晶体管。
图5显示出用于调节在根据本发明一示例性实施方案的PLD中的所要求电路的供电电压的另一种电路布置。在图5中的电路布置类似于在图4中的电路。但是,图5使用了晶体管320更具体地说为金属氧化物半导体场效应晶体管(MOSFET)作为特定类型的可变阻抗器件。
如本领域普通技术人员在本发明说明书的启示下所理解的一样,根据一些因素(例如特定的PLD实施、电路和工艺技术等),晶体管320可以构成多种器件,例如双极结晶体管、双极异质结晶体管(BHT)等。
在采用金属氧化物半导体(MOS)或互补MOS(CMOS)技术实现的一个实施方案中,根据需要晶体管320可以构成本地晶体管(nativetransistor)。本地晶体管可以具有负或较小的阈值电压VT,因此使得偏置或驱动晶体管320在其中相对较小的VDD导致在控制电路303的输出电压中的较小动态余量(headroom)的情况下比较方便。
如上所述,根据本发明的PLD可以包括噪声敏感模拟或混合模式电路。人们可以采用滤波技术来帮助降低在PLD中的整体噪声或者模拟或混合模式电路中所出现的噪声水平。
图6显示出用于降低在根据本发明一示例性实施方案的PLD中的噪声水平的电路布置。在图6中的受控PLD电路300与在图4中所示的电路类似,并且具有类似的好处。因此,如上面所详细描述的一样,在图6中的电路具有控制PLD电路306的供电电压并且因此控制其性能的能力。在图6的电路中,PLD电路306构成对噪声敏感度相对较高的电路,例如模拟或混合模式电路。
除了在图4中所示的元件之外,在图6中的电路布置包括电容器323和电容器326。与在该电路中的各种阻抗一起,那些电容器的每一个形成一滤波器。例如,电容器326与可变阻抗器件309和PLD电路306的并联阻抗一起形成一低通滤波器。通过过滤更高的频率,该低通滤波器趋向于降低PLD电路306所具有的整体噪声水平。要指出的是,如本领域普通技术人员在本发明说明书的启示下所理解的一样,人们可以根据一些因素(例如所要求滤波的程度、部件的尺寸和数值等)删除电容器323和326的一个。
图7显示出用于降低在根据本发明一示例性实施方案的PLD中的噪声水平的另一种电路布置。在图7中的电路布置构成在图6中的电路的更具体的实施方案。更具体地说,与在图6中的一般可变阻抗器件309不同,在图7中的电路布置采用了晶体管320。晶体管320通常可以根据需要构成上面参照图5所述的任意器件。如上所述,要指出的是,如本领域普通技术人员在本发明说明书的启示下所理解的一样,人们可以根据一些因素(例如所要求滤波的程度、部件的尺寸和数值等)删除电容器323和326的一个。
采用上述的受控PLD电路300,人们可以调节PLD的各个部件的供电电压和能耗并且因此控制其性能。图8显示出用于提供用来调节根据本发明一示例性实施方案的PLD103的各个部件的性能的灵活机智的布置。PLD103包括一个或多个PLD电路区域或“岛”400A-400C。如上所述,每个PLD电路区域400A-400C包括一个或多个受控PLD电路300。
PLD电路区域400A-400C的每一个可以接收标记为VDD1-VDDN的一个或多个供电电压。例如,PLD电路区域400A接收VDD1,而电路区域400B接收VDD1-VDD3,并且电路区域400C接收VDDN。如上面详细描述的一样,受控PLD电路300的每一个可以调节提供给其相应的PLD电路306(例如参见图4)的供电电压。
通过将所要求的一组供电电压分配给PLD电路区域400A-400C的每一个,人们可以调节在电路区域内的电路的供电电压和能耗。另外,通过在给定电路区域400A-400C内包括一组所要求的受控PLD电路300,人们可以将在每个电路区域400A-400C内中的供电电压调节类型与一个或多个合适的受控PLD电路300匹配。因此,在图8中的布置提供了一种灵活机智,用于分配各种PLD资源以实现用户设计或系统的适当部分,从而提供具有改善的性能调节能力和更好的整体性能(例如,速度-能耗折中)的有效实现方案。
要指出的是,除了接收外部供电电压(例如在图8中的VDD1-VDDN)之外,或者不接收外部供电电压(例如在图8中的VDD1-VDDN),PLD103可以根据需要在内部产生出供电电压。图9A-9C显示出用于在根据本发明示例性实施方案的PLD中分配和产生供电电压的电路布置。
在图9A中,PLD103简单地采用了它所接收的外部供电电压例如VDD1-VDDN。在该情况中,PLD103可以采用功率分布和供电电压调节方案,例如在图8中的布置。
在图9B中,PLD103接收供电电压VDD1-VDDN。PLD103可以调节供电电压的一个或多个以产生出一个或多个内部供电电压。PLD103然后可以采用在例如如图8所示的功率分布和供电电压调节方案中的外部和内部产生出的供电电压。在所示的特定实施例中,PLD103采用电压调节器450来从外部供电电压VDD2中产生出内部供电电压VDD2’。
在图9C中,PLD103接收供电电压VDD1-VDDN。PLD103可以使用一个或多个电荷泵453来产生出一个或多个内部供电电压。PLD103然后可以采用在例如如图8所示的功率分布和供电电压调节方案中的外部和内部产生出的供电电压。在所示的特定实施例中,PLD103采用电荷泵453来从外部供电电压VDD1中产生出内部供电电压VDD1’。内部供电电压VDD1’其电压电平高于VDD1。
如上所述,本发明的构思包括用于使噪声敏感电路与具有PLD的噪声产生电路隔离的技术。更具体地说,在采用CMOS技术构造出的PLD中,各种PLD电路通常位于多个深n井中。通过有策略地将噪声敏感电路设置在隔离的n井中,从而人们可以使噪声敏感电路与噪声源屏蔽或隔离。因此,人们可以在PLD内提供多个岛,每个具有其自身的供电电压、能耗、噪声产生和噪声隔离特性。这些岛在根据本发明的PLD中提供了用于提供用户设计或系统的灵活实现的机构。
图10显示出使用n井来隔离在根据本发明一示例性实施方案的PLD中的噪声敏感电路的实施例。PLD位于基板500中。基板500包括深n井503、506和509。这些深n井503、506和509的每一个可以包括多种PLD电路,例如在图1-3中所示的电路。
如所指出的一样,人们可以将各种电路安放在深n井503、506和509中以便降低干扰和噪声。例如,人们可以将具有相对较高的噪声敏感度的电路(标为506A)的电路安放在PLD中,该PLD包括产生出中等噪声的电路(标为506A)以及产生出相对高的噪声的电路(标为506C)。如在图10中的实施例所示一样,人们可以将电路506A、506B和506C分别安放在深n井503、506和509中。通过将噪声敏感电路506A设置在离电路506C所产生出的相对较高的噪声最远但是较靠近电路506B所产生出的中等噪声的地方从而可以降低干扰。
要指出的是,深n井表示在PLD制造技术中的示例性构造。如本领域普通技术人员在本发明说明书的启示下所理解的一样,根据许多因素,人们可以采用在当前和未来的制造技术中的其它结构和器件。这些因素包括技术的类型和特征以及可用的器件和结构、所要求的设计和性能规范、成本、复杂性、面积有效率等。
作为实施例,人们可以采用绝缘体上硅(silicon-on-insulatorSOI)技术来提供在PLD内的噪声隔离和控制。更具体地说,并且如本领域普通技术人员在本发明说明书的启示下所理解的一样,SOI电路由于绝缘体层(通常为二氧化硅)所以在晶体管之间提供隔绝。因此,SOI电路提供了用于使噪声敏感电路与PLD的噪声产生电路隔离的机构。
如上面所指出的一样,用户可以调节根据本发明的PLD的各个部分的供电电压和能耗以及噪声接触或性能。用户可以通过使用用来使设计与PLD对应的软件来这样做。图11显示出根据本发明示例性实施方案的PLD计算机辅助设计(CAD)软件所使用的各个软件模块。这些模块包括设计入口模块550、合成模块553、布局路线模块(place-and-route)556和验证模块559。
设计入口模块550允许集成多个设计文件。根据需要,用户可以通过使用设计入口模块550或者通过使用多种电子设计自动化(EDA)或CAD工具(例如工业标准EDA工具)来产生出设计文件。根据需要,用户可以输入采用图形格式、基于波形的格式、图解格式、文本或二进制格式或那些格式的组合的设计。
合成模块553接收设计入口模块550的输出。根据用户提供的设计,合成模块553产生出用来实现用户提供的设计的适当逻辑电路。一个或多个PLD(未明确显示出)实现了合成的整体设计或系统。
合成模块553还可以产生出任意胶粘逻辑(glue logic),它允许对在用户的设计中各个模块进行合成和正确操作以及接口。例如,合成模块553提供了适当的硬件,从而一个块的输出正确地与另一个块的输入耦接。合成模块553可以提供适当的硬件以便满足在整个设计或系统中的每个模块的规范。
另外,合成模块553可以包括用于优化所合成的设计的算法和程序。通过优化,合成模块553寻求更有效地使用实现整个设计或系统的一个或多个PLD的资源。在一些实施方案中,合成模块553可以识别出在所合成的设计或系统内的关键(critical)路径。合成模块553将其输出提供给布局路线模块556。
布局路线模块556使用设计者的时序规定来进行最优的逻辑映射和布局。逻辑映射和布局确定了路线资源在PLD内的使用。换句话说,通过针对特定的设计部分使用具有PLD的特定可编程互连,从而布局路线模块556有助于优化整个设计或系统的性能。
通过正确地使用PLD路线资源,布局路线模块556帮助满足整个设计或系统的关键时序路径。布局路线模块556优化了关键时序路径以帮助按照本领域普通技术人员在本发明说明书的启示下所知的方式提供更快的时序收敛(timing closure)。因此,整个设计或系统可以实现更快的性能(即,以更高的时钟速率操作或者具有更高的吞吐率)。
另外,布局路线模块556调节了实现该设计或系统的一部分或所有PLD的供电电压和能耗以及噪声性能或接触。布局路线模块556可以自动地或者根据用户规定的准则或者两者的组合来这样做。布局路线模块556可以使用用户指定的准则(例如,性能规定例如功耗、噪声接触或性能、速度和/或当前驱动能力)。另外,或者相反,布局路线模块556可以根据需要使用有关在设计或系统内的关键路径的信息来调节供电电压、物理布局以便降低部分或所有设计或系统的噪声产生和接触以及能耗。
例如,布局路线模块556可以调节该设计或系统的关键部分的供电电压和能耗以便实现更高的性能。布局路线模块556可以根据需要考虑能量散失标准(例如,最大功率密度)以便折中功率和性能。布局路线模块556将优化的设计提供给验证模块559。
验证模块559对该设计进行模拟和验证。模拟和验证部分设法来验证该设计是否符合用户的规定规范。模拟和验证目的也在于在原型化该设计之前检测和校正任意设计问题。因此,验证模块559帮助用户降低整个设计或系统的整体成本和进入市场的时机。
验证模块559可以根据需要支持并且进行多种验证和模拟选择。这些选择可以根据需要包括设计准则检查、功能验证、测试台产生、静态时序分析、时序模拟、硬件/软件模拟、系统内验证、插件板级时序分析、信号集成分析和电磁兼容性(EMC)、正式耦接表验证、噪声产生和接触(exposure)和能耗估计。要指出的是,人们可以根据需要并且如本领域普通技术人员在本发明说明书的启示下所理解的一样进行其它或另外的验证技术。
图12显示出根据本发明一示例性实施方案的PLD CAD软件的流程图。在图12中所示的PLD CAD将针对PLD的每个区域的供电电压和能耗的选项结合成时序驱动布局路线CAD系统。要指出的是,根据需要,人们可以通过做出落入在得到本发明说明书的启示的本领域普通技术人员的知识范围内的变型从而将用于噪声产生、噪声接触和/或噪声隔离的准则结合进在图12中的PLD CAD中。
开始该过程,在603处PLD CAD设置初始供电电压电平(与估计的能耗水平对应)。在606处,软件产生出一初始布局。然后,在609处,它采用反映出各种设置例如供电电压设置的延迟估计值来分析电路的时序。在612处,软件确定出它已经满足用户的各种标准例如时序和功率目标。如果这样,在615处,它记录了布局和供电电压选择。如果没有,则软件在618处检测以确定它是否到达重复极限。如果这样,则它前进至615以记录当前的布局和供电电压选择。
如果该软件没有到达重复极限,则它使重复计数(未明确显示出)递增,并且在621处改变PLD的至少一些区域、电路、块或部分的设置。在624处,它采用反应改变的设置的延迟估计来分析电路的时序。在356处,它改善了电路的布局,并且跳到612以确定它是否已经达到用户的时序和功率目标。一旦该PLD CAD已经实现了设计(即,合成、布局并且确定了该设计的路线),则CAD软件应该自动地提供用于将PLD编程的数据,从而设置PLD的各个部分的供电电压。
图13显示出根据本发明示例性实施方案的PLD内的电路的方框图,用来调节、编程或设置PLD的所要求部分的供电电压电平。该电路包括偏置电路703、多个配置存储器(配置随机存取存储器或CRAM或其它存储装置)单元709和受控的PLD电路300。
偏置电路703产生出一个或多个信号706,并且将那些信号提供给受控PLD电路300(更具体地说,提供给例如在图4中所示的控制电路303)。换句话说,偏置电路703将一个或多个目标偏置信号提供给受控的PLD电路300。另外,每个CRAM单元709提供给受控PLD电路300的相应一个(更具体地说,提供给控制电路303)。来自CRAM单元709的信号代表如由上述PLD CAD程序所提供的用于在PLD内的各个电路的配置数据。根据来自CRAM单元709的配置数据,在每个受控PLD电路300中的控制电路(未清楚示出)产生出一个或多个信号以作为信号706的函数控制可变阻抗器件(未清楚示出)的阻抗。
在其它变型中,每个CRAM单元709可以根据需要给一个以上的受控PLD电路提供配置数据。相反,人们可以根据需要修改在受控PLD电路300内的控制电路,使之响应于来自一个以上CRAM单元709的配置数据。
要指出的是,人们可以响应于PLD外部的源调节、编程或设置供电电压电平。例如,人们可以将供电电压电平传送给PLD以调节或改变其性能。图14显示出根据本发明一示例性实施方案的用于响应于外部源753调节在PLD103内的供电电压电平的电路布置。该电路布置包括外部源753、通信/接口电路762和偏置电路703(参见图13)。
通信/接口电路762提供用于外部源753和偏置电路703通信和交换信息的机构。外部源753可以给在PLD103内的通信/接口电路762提供一个或多个控制信号756。通信/接口电路762将从外部源753接收到的信息提供给偏置电路703。作为响应,偏置电路703产生出具有与控制信号756对应的电平的一个或多个信号706。通信/接口电路762可以将来自偏置电路703(或通常为PLD103)的信息例如状态信号提供给外部源753。
如本领域普通技术人员在本发明说明书的启示下所理解的一样,外部源753可以构成多种器件、结构和布置。例如,根据需要,外部源753可以构成计算机网络(例如,因特网)、电话线通信链路、无线通信链路、总线等。
要指出的是,人们可以在动态或时间变化的基础上根据需要调节、编程或设置在PLD中的供电电压电平以考虑或响应于变化的条件(例如,在性能规范中的变化)。作为一个实施例,参照图14,外部源753可以更新或改变提供给PLD103的控制信号756。偏置电路703因此响应于更新或改变的信号756。
作为另一个实施例,人们可以响应于在PLD103自身内的变化例如在PLD103的一个或多个电路或区域中的温度、噪声、能耗等的变化而改变或调节供电电平。图15显示出根据本发明示例性实施方案的用于改变在PLD内的供电电压电平的电路布置。
该电路布置包括一个或多个传感器803、一个或多个参考源806、减法器和偏置电路703。传感器803感测在PLD103内的一个或多个区域、电路或块中的所期望的参数(例如,温度、噪声等)并且将信号809提供给减法器818。参考信源806将参照信号812提供给减法器818。参考信号812可以具有与各种所感测的参数电平对应的数值。
减法器818从信号809中将参考信号812减去并且将差信号815提供给偏置电路703。差信号815可以由在PLD103的一个或多个部分中在实际所感测的数值和所期望的数值之间的差值构成。根据差信号815,偏置电路703产生出信号706(也参见图13)。
偏置电路703可以使用差信号815以产生出最终影响PLD103的性能的各个方面的信号706。例如,如果差信号815表示低于阈值或最大值的感测数值(如,速度),则偏置电路703可以产生出用来增大供电电压电平以提高PLD103的所需部分的操作速度的信号。相反,如果差信号815表示比安全或最大电平更高的感测电平,则偏置电路703可以产生出用来将供电电压电平降低至安全或所期望的水平的信号(伴随着所得到的速度降低)。
更通常的是,人们可以实现一反馈回路,用来产生出供电电压电平以便符合特定的性能准则。换句话说,人们可以将PLD的实际性能度量与所期望或规定的指标或准则比较并且因此调节、编程或设置供电电压电平。
要指出的是,根据需要并且如本领域普通技术人员在本发明说明书的启示下所理解的一样,人们可以将本发明的构思有效地应用于本领域所知的各种可编程逻辑电路或IC。这种电路包括被称为复杂可编程逻辑器件(CPLD)、可编程门阵列(PGA)和现场可编程门阵列(FPGA)的器件。
参照这些附图,本领域普通技术人员要理解的是,所示的各个块可以主要描述概念功能和信号流。实际的电路布置方案可以包含或可以不包含用于各种功能块的可单独识别的硬件并且可以使用或可以不使用所示的具体电路。例如,根据需要,人们可以将各个块的功能组成一个电路块。另外,根据需要人们可以在几个电路块中实现单个块的功能。如本领域普通技术人员在本发明说明书的启示下所理解的一样,电路布置方案的选择取决于各种因素,例如用于给定的实现方案的具体设计和性能规范。本发明的其它变型和可选实施方案对于得到本发明说明书的启示的本领域普通技术人员而言是显而易见的。因此,该说明书教导了本领域普通技术人员实施本发明的方式并且只是认为是举例说明。
所示并且所述的本发明的形式应该当作当前优选的或示例性的实施方案。本领域普通技术人员在不脱离在该文件中所述的本发明范围的情况下在部件的形状、尺寸和布置方面作出各种变化。例如,本领域普通技术人员可以用等同的元件代替在这里所示和所述的元件。而且,得到本发明该说明书的起始的本领域普通技术人员在不脱离本发明的范围的情况下可以使用其它特征无关地使用本发明的某些特征。
权利要求
1.一种可编程逻辑器件(PLD),它包括被配置为控制第二电路的供电电压的第一电路,所述第一电路还被配置为将在可编程逻辑器件(PLD)内的噪声过滤掉。
2.如权利要求1所述的可编程逻辑器件(PLD),其中所述第一电路包括一可变阻抗器件,该可变阻抗器件被配置为提供第二电路的供电电压。
3.如权利要求1所述的可编程逻辑器件(PLD),其中所述晶体管包括可编程逻辑器件的本地晶体管。
4.如权利要求2所述的可编程逻辑器件(PLD),其中所述可变阻抗器件还被配置为响应可编程逻辑器件(PLD)配置数据提供第二电路的供电电压。
5.如权利要求2所述的可编程逻辑器件(PLD),其中所述可变阻抗器件包括一晶体管。
6.如权利要求3所述的可编程逻辑器件(PLD),其中所述第一电路还包括与所述晶体管的栅极端子耦接的控制电路。
7.如权利要求6所述的可编程逻辑器件(PLD),其中所述晶体管响应控制电路的输出信号来调节第二电路的供电电压。
8.如权利要求4所述的可编程逻辑器件(PLD),其中所述第一电路还包括与所述晶体管的栅极端子耦接的第一电容器。
9.如权利要求4所述的可编程逻辑器件(PLD),其中所述第一电路还包括与所述晶体管的源极端子耦接的第二电容器。
10.如权利要求7所述的可编程逻辑器件(PLD),其中所述控制电路的输出信号源自从可编程逻辑器件(PLD)外部的信息源接收的信息。
11.如权利要求6所述的可编程逻辑器件(PLD),其中所述控制电路的输出信号取决于在可编程逻辑器件(PLD)内的电路的能耗。
12.如权利要求1所述的可编程逻辑器件(PLD),其中所述第二电路包括一可编程逻辑电路。
13.如权利要求12所述的可编程逻辑器件(PLD),其中所述可编程逻辑电路包括布置成一二维阵列的多个可编程逻辑电路之一。
14.如权利要求12所述的可编程逻辑器件(PLD),其中所述可编程逻辑电路包括一逻辑元件。
15.如权利要求14所述的可编程逻辑器件(PLD),其中所述可编程逻辑电路包括本地互连电路。
16.如权利要求1所述的可编程逻辑器件(PLD),其中所述第二电路包括可编程互连电路。
17.如权利要求1所述的可编程逻辑器件(PLD),其中所述第二电路包括被配置为存储可编程逻辑器件(PLD)的配置数据的配置存储器。
18.一种可编程逻辑器件(PLD),它包括一第一电路,该第一电路位于第一深n井中;以及与所述第一电路耦接的第一可变阻抗器件,该第一可变阻抗器件被配置为调节第一电路的供电电压。
19.如权利要求18所述的可编程逻辑器件(PLD),还包括与所述第一可变阻抗器件耦接的第一电容器。
20.如权利要求18所述的可编程逻辑器件(PLD),包括一第二电路,该第二电路位于第二深n井中;以及与所述第二电路耦接的第二可变阻抗器件,该第二可变阻抗器件被配置为调节第二电路的供电电压。
21.如权利要求20所述的可编程逻辑器件(PLD),还包括与所述第二可变阻抗器件耦接的第二电容器。
22.如权利要求20所述的可编程逻辑器件(PLD),其中所述第一电路对噪声相对敏感。
23.如权利要求20所述的可编程逻辑器件(PLD),其中所述第一电路包括模拟电路。
24.如权利要求20所述的可编程逻辑器件(PLD),其中所述第一电路包括混合模式电路。
25.如权利要求22所述的可编程逻辑器件(PLD),其中所述第二电路产生出相对高的噪声。
26.如权利要求20所述的可编程逻辑器件(PLD),其中所述第一可变阻抗器件从提供给可编程逻辑器件(PLD)的第一电压中获得第一电路的供电电压。
27.如权利要求20所述的可编程逻辑器件(PLD),其中所述第一可变阻抗器件从第一电压获得第一电路的供电电压,其中所述第一电压在可编程逻辑器件(PLD)内从提供给可编程逻辑器件(PLD)的第二电压获得。
28.一种配置可编程逻辑器件(PLD)以实现一电子电路的方法,该方法包括将该电子电路映射为在可编程逻辑器件(PLD)内的功能资源,以产生出要由所述可编程逻辑器件(PLD)实现的电路;识别出要由所述可编程逻辑器件(PLD)实现的电路中的至少一个关键电路路径;并且设置所述关键电路路径的至少一部分的供电电压电平。
29.如权利要求28所述的方法,其中设置所述关键电路路径的至少一部分的供电电压电平还包括对所述可编程逻辑器件(PLD)的配置存储器(CRAM)进行编程。
30.如权利要求29所述的方法,其中设置所述关键电路路径的至少一部分的供电电压电平还包括根据在配置存储器(CRAM)中编程的值调节可变阻抗器件的阻抗。
31.如权利要求28所述的方法,还包括调节所述关键电路路径的至少一部分的供电电压电平。
32.如权利要求31所述的方法,其中调节所述关键电路路径的至少一部分的供电电压电平还包括折中所述关键电路路径的至少一部分的速度和能耗。
33.如权利要求28所述的方法,其中设置所述关键电路路径的至少一部分的供电电压电平还包括使用控制电路的输出信号。
34.如权利要求33所述的方法,其中设置所述关键电路路径的至少一部分的供电电压电平还包括通过使用所述控制电路的输出信号来调节可变阻抗器件的阻抗。
35.一种操作可编程逻辑器件(PLD)的方法,该方法包括将在可编程逻辑器件(PLD)中的第一电路的供电电压电平设置为第一电平;确定该可编程逻辑器件(PLD)的性能度量是否符合标准;并且根据可编程逻辑器件(PLD)的性能度量是否符合标准来调节第一电路的供电电压电平。
36.如权利要求35所述的方法,其中确定可编程逻辑器件(PLD)的性能度量是否符合标准还包括获得所述性能度量。
37.如权利要求36所述的方法,其中获得所述性能度量还包括感测在可编程逻辑器件(PLD)内的量。
38.如权利要求37所述的方法,其中感测在可编程逻辑器件(PLD)内的量还包括感测温度。
39.如权利要求35所述的方法,其中调节所述第一电路的供电电压电平还包括在可编程逻辑器件(PLD)的性能度量符合标准的情况下让第一电路的供电电压电平保持不变;并且在可编程逻辑器件(PLD)的性能度量不符合标准的情况下将第一电路的供电电压电平改变成第二电平。
40.如权利要求35所述的方法,其中所述性能度量包括第一电路的操作速度。
41.如权利要求35所述的方法,其中所述性能度量包括第一电路的能耗。
42.如权利要求35所述的方法,其中将在可编程逻辑器件(PLD)中的第一电路的供电电压电平设置为第一电平还包括将供电电压设置为源自从可编程逻辑器件外部的源接收的信息的电平。
43.如权利要求35所述的方法,其中将在可编程逻辑器件(PLD)中的第一电路的供电电压电平设置为第一电平还包括将供电电压设置为由可编程逻辑器件(PLD)的配置数据规定的电平。
44.如权利要求35所述的方法,还包括使用反馈电路来确定可编程逻辑器件(PLD)的性能度量是否符合标准。
45.一种操作被配置为在操作环境中作用的可编程逻辑器件(PLD)的方法,该方法包括将在可编程逻辑器件(PLD)中的第一电路的供电电压电平设置为第一电平;并且根据可编程逻辑器件(PLD)的操作环境的至少一个特征调节第一电路的供电电压电平。
46.如权利要求45所述的方法,其中调节第一电路的供电电压电平还包括,在操作环境的至少一个特征表明应改变第一电路的性能的情况下,将第一电路的供电电压电平调节至第二电平。
47.如权利要求46所述的方法,其中调节第一电路的供电电压电平还包括,在操作环境的至少一个特征表明应提高第一电路的性能的情况下,增大第一电路的操作速度。
48.如权利要求47所述的方法,其中调节第一电路的供电电压电平还包括将第一电路的操作速度与第一电路的能耗折中。
49.如权利要求46所述的方法,其中调节至少一个晶体管的主体偏置电平还包括,在操作环境的至少一个特征表明应降低第一电路的性能的情况下降低第一电路的操作速度。
全文摘要
一种可编程逻辑器件(PLD),它包括用来控制在PLD内的电路的至少一部分的供电电压的电路(例如,块、子块或区域)。该电路还将在PLD内的噪声过滤掉。控制供电电压能够折中各种性能特征,例如速度和能耗。
文档编号H01L25/00GK1797951SQ200510131069
公开日2006年7月5日 申请日期2005年12月7日 优先权日2004年12月7日
发明者瑟戈雷·Y.·舒马雷夫, 雷克什·帕特尔 申请人:阿尔特拉公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1