[go: up one dir, main page]

CN115053200B - 自适应上电复位发生器系统和用于可编程逻辑设备的方法 - Google Patents

自适应上电复位发生器系统和用于可编程逻辑设备的方法

Info

Publication number
CN115053200B
CN115053200B CN202080095801.4A CN202080095801A CN115053200B CN 115053200 B CN115053200 B CN 115053200B CN 202080095801 A CN202080095801 A CN 202080095801A CN 115053200 B CN115053200 B CN 115053200B
Authority
CN
China
Prior art keywords
ramp
voltage
supply voltage
signal
pld
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202080095801.4A
Other languages
English (en)
Other versions
CN115053200A (zh
Inventor
C-P·周
B·A·沙佩-盖斯勒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lattice Semiconductor Corp
Original Assignee
Lattice Semiconductor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lattice Semiconductor Corp filed Critical Lattice Semiconductor Corp
Publication of CN115053200A publication Critical patent/CN115053200A/zh
Application granted granted Critical
Publication of CN115053200B publication Critical patent/CN115053200B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/24Resetting means
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/28Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K17/00Electronic switching or gating, i.e. not by contact-making and –breaking
    • H03K17/22Modifications for ensuring a predetermined initial state when the supply voltage has been applied
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K17/00Electronic switching or gating, i.e. not by contact-making and –breaking
    • H03K17/22Modifications for ensuring a predetermined initial state when the supply voltage has been applied
    • H03K17/223Modifications for ensuring a predetermined initial state when the supply voltage has been applied in field-effect transistor switches
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/17772Structural details of configuration resources for powering on or off

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Logic Circuits (AREA)
  • Electronic Switches (AREA)

Abstract

公开了用于为可编程逻辑设备(PLD)和/或其他半导体设备提供自适应上电复位(POR)信号的系统和方法。示例自适应POR信号发生器包括逻辑设备,该逻辑设备被配置为检测跨越第一阈值斜坡电压的第一供应电压斜坡遍历,检测跨越第二阈值斜坡电压的第二供应电压斜坡遍历,并且至少部分地基于与所述电源和/或所述供应电压相关联的标称操作电压和/或与所述第一供应电压斜坡遍历和第二供应电压斜坡遍历跨越相关联的斜坡时间来生成POR信号。所述第二阈值斜坡电压高于所述第一阈值斜坡电压并且所述第一阈值斜坡电压和第二阈值斜坡电压低于所述标称操作电压。

Description

自适应上电复位发生器系统和用于可编程逻辑设备的方法
相关申请的交叉引用
本专利申请要求2019年12月6日提交的名称为“上电复位的斜坡率相关延迟”的美国临时专利申请号62/944,457的优先权和权益,该申请通过引用整体并入本文。
技术领域
本发明总体涉及可编程逻辑设备,并且更具体地,涉及用于此类设备的上电复位信号发生器。
背景技术
可编程逻辑设备(PLD)(例如,现场可编程门阵列(FPGA)、复杂可编程逻辑设备(CPLD)、片上现场可编程系统(FPSC)或其他类型的可编程设备)可以用各种用户设计来配置以实现期望的功能。通常,用户设计被综合并且映射到可配置资源(例如,可编程逻辑门、查找表(LUT)、嵌入式硬件或其他类型的资源)以及特定PLD中可用的互连。然后,可以确定用于综合和映射的用户设计的物理放置和路由,以生成针对特定PLD的配置数据。
PLD可以用于控制和/或集成不同类型的用户设备的大阵列,并且PLD和用户设备的其他电路和/或电路元件两者可以承受相对宽范围的不同供应电压(例如,VCC,一般在1.2v和3.3v之间,+/-10%)。此类供应电压在用户设备/PLD的操作期间通常是稳定的,但是在用户设备和/或PLD的典型上电序列期间,供应电压可以变化(例如,斜变,或最初被设置为一个上电值,然后斜变到操作值)。此外,使用先进的集成电路工艺(例如,28nm全耗尽绝缘体上硅FDSOI工艺)制造的PLD和/或其他逻辑设备可以用I/O晶体管(例如,相对厚的栅极晶体管)和/或其他电路元件来实现,该I/O晶体管和/或其他电路元件只能容许高达约1.8v+/-10%(例如,源极/漏极Vds、栅极/源极Vgs、栅极/漏极Vgd电压)的电压,并且保证至少10年的操作寿命而不会导致可靠性问题。因此,本领域需要为PLD提供供应电压保护的系统和方法,特别是在PLD和/或由PLD控制和/或与PLD集成的用户设备的上电期间。
附图说明
图1示出了根据本公开的实施例的可编程逻辑设备(PLD)的框图。
图2示出了根据本公开的实施例的针对PLD的逻辑块的框图。
图3示出了根据本公开的实施例的针对PLD的设计过程。
图4示出了根据本公开的实施例的包括PLD和一个或多个自适应上电复位(POR)信号发生器的用户设备的框图。
图5示出了根据本公开的实施例的自适应POR信号发生器的框图。
图6示出了根据本公开的实施例的自适应POR信号生成过程。
通过参考下面的详细描述,可以最好地理解本公开的实施例及其优点。应理解,相同的附图标记用于识别一个或多个附图中示出的相同元件,其中图中所示是为了说明本公开的实施例而不是为了限制本公开的实施例。
具体实施方式
本公开提供了用于提供自适应上电复位(POR)信号生成以保护可编程逻辑设备(PLD)和/或其他电路元件的系统和方法,以用于或与用于计算应用和架构的各种用户设备一起使用,如本文所描述的。例如,半导体电路通常位于开启和关闭的系统或其他设备中。尽管对于人来说,开启具有半导体电路的设备或系统中的电力(或向其提供电力)可以被视为瞬间事件,但在包含半导体电路的系统或设备的时间范围和功率域内,这并不完全正确。当系统或设备开启时,电力可能无法立即针对设备中的每个部件可用,或可能无法以期望的电平或稳定性而针对每个部件可用,以操作。设备和系统可以将半导体芯片或部件保持在复位状态,直到合适的电源可用。POR信号可以用于指示设备或系统中特定芯片或芯片组的适当供应电压的可用性。例如,如本文所描述的,给定的POR信号可以由特定芯片为其自身生成,或可以由多个芯片生成以供使用。
在本文描述的各种实施例中,期望允许芯片或芯片的某些部分或系统尽可能快地开启。然而,在芯片或其他电路具有合适的电源之前允许其开启会有导致该电路和/或芯片故障或损坏的风险。此外,特别是对于意图与多种不同的用户设备集成和/或根据多种不同的应用的PLD或其他电路元件,此类芯片可以被提供多个供应电压,并且在多种实施例中,本文描述的自适应POR信号发生器提供了针对芯片的某些部分(或芯片、设备或系统中的电路子集)的相对快速的开启。此类方面包括期望加速系统配置、实现I/O功能和/或开始设备配置或开始启动控制功能的情况。对于一些应用(诸如芯片的一些部分可能在其他部分之前(例如,诸如I/O电路在核心逻辑部分之前)开启),过早解除POR可能会导致电流涌入,而其他电源正在上升,这可能会损坏和/或以其他方式缩短电路的寿命。
在生成POR信号之前,从最初检测到向集成电路施加电压起提供相对简单的固定延迟(诸如基于最坏情况的预期电压斜坡)不准许对快速斜变和/或可变斜变电源的适应性。如果提供可以自适应地支持慢速斜变和快速斜变两者供应的POR信号,则具有电压轨或由快速斜变供应的电力的集成电路可能会更快地开启。然而,不一定期望将用户设备或芯片设计成总是需要快速斜变电源,因为此类电源可能更昂贵,需要更严格的设计规则,和/或可能具有其他相对复杂的设计约束。因此,根据本文描述的实施例,期望采用自适应POR信号发生器,其在生成POR信号时可以适应多种电源转换率/斜坡率。因此,包括自适应POR信号发生器的集成电路在通用系统设计约束(包括整体系统成本和性能两者)方面比常规电路元件灵活得多。
在一个实施例中,如本文所描述的,集成电路可以利用自适应POR信号发生器更快地开启某些输入/输出(I/O)电路,这一般可以提高整体系统性能、安全性(例如,通过确保安全措施在系统的元件被原位破坏之前起作用)和可靠性(例如,通过帮助确保电路不会由于上电事件而随着时间的推移而损坏或劣化)。根据本公开的此类集成/半导体电路可以是专用集成电路(ASIC)、片上系统(SOC)、PLD(包括现场可编程门阵列(FPGA))中的任一者或其组合。在各种实施例中,如本文所描述的的自适应POR信号发生器可以被配置为为集成电路的一部分(例如,一个芯片上的一个或多个电源或电压域)、位于一个衬底上的整个集成电路、或可以位于同一封装中的跨多个衬底的多个集成电路生成POR信号,诸如利用硅通孔(TSV)技术、经由互连连接的并排封装、或其他此类技术、或不同芯片中的多个集成电路。如本文所描述的,SOC中的多个功能元件可以接收根据本公开生成的POR信号。
例如,PLD可以被集成到和/或被配置为控制各种不同的用户设备,每个用户设备具有不同的供应电压要求,一般被选择为1.2v、1.5v、1.8v、2.5v和3.3v中的一个或多个。为了增加特定PLD的灵活性,每个用户设备或PLD可以用自适应POR信号发生器来实现,该自适应POR信号发生器被配置为防止PLD、PLD的元件和/或用户设备的其他元件在供应电压达到最小兼容操作电压之前(包括在上电状态期间)操作,其中向PLD和/或用户设备的其他元件提供的各种供应电压斜变到它们的操作电平。
一般来说,自适应POR信号发生器可以由逻辑设备/控制器来实现,该逻辑设备/控制器被配置为在供应电压达到其标称操作电压之前测量供应电压的斜坡率,并且至少部分地基于所测量的斜坡率和/或斜坡率特性来生成与供应电压达到其标称操作电压大致一致的POR信号。在特定实施例中,自适应POR信号发生器可以包括例如计数器或其他定时设备,并且逻辑设备可以被配置为使用计数器来测量供应电压的至少第一斜坡电压和第二斜坡电压之间的斜坡时间,并且至少部分地基于该斜坡时间测量来生成POR信号,其中供应电压的第一斜坡电压和第二斜坡电压被选择为低于标称操作电压。
如本文所描述的,POR信号发生器可以被耦接至PLD和/或与PLD集成,PLD本身可以包括各种电路元件和/或用户设计,该各种电路元件和/或用户设计被配置为便于POR信号发生器和/或耦接的用户设备的操作。根据本文阐述的实施例,提供了管理PLD中用户设计的实现的技术。在各种实施例中,用户设计可以被转换成一组PLD部件(例如,被配置用于逻辑、算术或其他硬件功能)和它们在PLD中可用的相关联互连,和/或由一组PLD部件(例如,被配置用于逻辑、算术或其他硬件功能)和它们在PLD中可用的相关联互连来表示。例如,PLD可以包括多个可编程逻辑块(PLB),每个PLB包括多个逻辑单元,以及可以用于互连PLB和/或逻辑单元的可配置路由资源。在一些实施例中,每个PLB可以用2到16个或2到32个逻辑单元来实现。
一般来说,PLD(例如,FPGA)结构包括一个或多个路由结构和布置在可编程功能块(例如,PFB和/或PLB)内的类似布置的逻辑单元的阵列。路由结构的目的是将逻辑单元/PLB的端口可编程地相互连接,以实现预期的功能。远程PLD可以包括各种另外的“硬”引擎或模块,该各种另外的“硬”引擎或模块被配置为提供一系列远程管理功能,该一系列远程管理功能可以链接到PLD结构的操作以提供可配置的计算功能和/或架构。当将用户设计综合、映射、放置和/或路由到多个PLD部件中时,可以使用路由灵活性和可配置功能嵌入。由于各种用户设计优化过程,可以相对高效地实现用户设计,从而解除可配置的PLD部件,否则这些部件将被另外的操作和路由资源占用。在一些实施例中,可以由识别由PLD提供的各种类型的部件及其相关联信号的网表来表示优化的用户设计。在产生转换的用户设计的网表的实施例中,可以在此类网表上执行优化过程。一旦被优化,此类配置可以被加载到PLD中,并且PLD可以引导和执行该配置,这可以包括使用各种I/O总线来与用户设备通信,如本文所描述的。
现在参考附图,图1示出了根据本公开的实施例的PLD 100的框图。PLD 100(例如,现场可编程门阵列(FPGA))、复杂可编程逻辑设备(CPLD)、现场可编程片上系统(FPSC)或其他类型的可编程设备)一般包括输入/输出(I/O)块102和逻辑块104(例如,也称为可编程逻辑块(PLB)、可编程功能单元(PFU)或可编程逻辑单元(PLC))。更一般地,PLD 100的各个元件可以称为PLD结构。
I/O块102为PLD 100提供I/O功能(例如,支持一个或多个I/O和/或存储器接口标准),而可编程逻辑块104为PLD 100提供逻辑功能(例如,基于LUT的逻辑或基于逻辑门阵列的逻辑)。串行器/解串器(SERDES)块150和物理编码子层(PCS)块152可以提供另外的I/O功能。PLD 100还可以包括硬知识产权核心(IP)块160以提供另外的功能(例如,在硬件中提供的基本上预定的功能,该基本上预定的功能可以用比逻辑块104更少的编程来配置)。
PLD 100还可以适当地包括存储器块106(例如,EEPROM块、SRAM块和/或快闪存储器)、时钟相关电路108(例如,时钟源、PLL电路和/或DLL电路)、和/或各种路由资源180(例如,互连和适当的开关逻辑,以提供用于在整个PLD 100中路由信号的路径,诸如用于时钟信号、数据信号或其他信号)。一般来说,PLD 100的各种元件可以用于执行它们对于期望应用的预期功能,如本领域技术人员将理解的。
例如,某些I/O块102可以用于对存储器106进行编程或向/从PLD 100传送信息(例如,各种类型的用户数据和/或控制信号)。其他I/O块102包括第一编程端口(其可以表示中央处理单元(CPU)端口、外围数据端口、SPI接口和/或sysCONFIG编程端口)和/或第二编程端口,诸如联合测试行动组(JTAG)端口(例如,通过采用诸如电气和电子工程师协会(IEEE)1149.1或1532标准的标准)。在各种实施例中,可以包括I/O块102来接收配置数据和命令(例如,通过一个或多个连接140)以配置PLD 100用于其预期用途,并且支持串行或并且行设备配置以及适当时与SERDES块150、PCS块152、硬IP块160和/或逻辑块104的信息传送。
应理解,各种元件的数量和放置不是限制性的并且可以取决于期望的应用。例如,对于期望的应用或设计规范(例如,对于选择的可编程设备的类型),可能不需要各种元件。此外,应理解,为了清楚起见,该元件以框图形式示出,并且该各种元件通常将分布在整个PLD 100中,诸如在逻辑块104、硬IP块160和路由资源(例如,图2的路由资源180)之中和之间,以执行它们的常规功能(例如,存储配置PLD 100的配置数据或在PLD 100内提供互连结构)。还应理解,本文公开的各种实施例不限于可编程逻辑设备(诸如PLD 100),并且可以应用于各种其他类型的可编程设备,如本领域技术人员将理解的。
外部系统130可以用于创建PLD 100的期望的用户配置或设计,并且生成对应的配置数据以对PLD 100进行编程(例如,配置)。例如,系统130可以向一个或多个I/O块102、SERDES块150和/或PLD100的其他部分提供此类配置数据。因此,PLD 100的可编程逻辑块104、各种路由资源和任何其他适当的部件可以被配置为根据用户指定的应用来操作。
在所示实施例中,系统130被实现为计算机系统。在此方面,系统130包括诸如一个或多个处理器132,该一个或多个处理器可以被配置为执行在一个或多个存储器134中提供的和/或以非暂时性形式存储在一个或多个非暂时性机器可读介质136(例如,其可以在系统130的内部或外部)中的指令,诸如软件指令。例如,在一些实施例中,系统130可以运行PLD配置软件,诸如可从Lattice Semiconductor Corporation获得的Lattice DiamondSystem Planner软件,以准许用户创建期望的配置并且生成对应的配置数据以对PLD 100进行编程。
系统130还包括,例如,向用户显示信息的用户接口135(例如,屏幕或显示器),以及一个或多个用户输入设备137(例如,键盘、鼠标、轨迹球、触摸屏和/或其他设备)来接收用户命令或设计输入以准备PLD 100的期望配置。
图2示出了根据本公开的实施例的PLD 100的逻辑块104的框图。如所讨论的,PLD100包括多个逻辑块104,该多个逻辑块包括提供逻辑和算术功能的各种部件。在图2中示出的示例实施例中,逻辑块104包括多个逻辑单元200,该多个逻辑单元可以在逻辑块104内部互连和/或使用路由资源180在外部互连。例如,每个逻辑单元200可以包括各种部件,诸如:查找表(LUT)202、模式逻辑电路204、寄存器206(例如,触发器或锁存器)、以及用于为逻辑单元200和/或逻辑单元200之间选择期望的信号路径的各种可编程多路复用器(例如,可编程多路复用器212和214)。在此示例中,LUT 202接受四个输入220a-220d,这使得它成为四输入LUT(可以缩写为“4-LUT”或“LUT4”),其可以由用于PLD 100的配置数据编程,以实现具有四个或更少输入的任何适当的逻辑运算。模式逻辑204可以包括各种逻辑元件和/或另外的输入,诸如输入220E,以支持各种模式的功能,如本文所描述的。在其他示例中,LUT 202可以是任何其他合适的大小,具有用于PLD的特定实现的任何其他合适数量的输入。在一些实施例中,可以为不同的逻辑块104和/或不同的逻辑单元200提供不同大小的LUT。
在一些实施例中,来自LUT 202和/或模式逻辑204的输出信号222可以通过寄存器206传递,以提供逻辑单元200的输出信号233。在各种实施例中,如图中示出的,来自LUT202和/或模式逻辑204的输出信号223可以被直接传递到输出端223。根据多路复用器210-214和/或模式逻辑204的配置,输出信号222可以根据控制信号230临时存储(例如,锁存)在锁存器206中。在一些实施例中,PLD100的配置数据可以配置逻辑单元200的输出端223和/或233,以作为分级或级联布置(例如,其包括多个级)中的另一个逻辑单元200(例如,在另一个逻辑块或同一逻辑块中)的一个或多个输入端,以配置不能在单个逻辑单元200中实现的逻辑操作(例如,具有太多输入而不能由单个LUT 202实现的逻辑操作)。此外,如本文所描述的,逻辑单元200可以用多个输出和/或互连来实现以便于可选择的操作模式。
模式逻辑电路204可以用于PLD 100的一些配置以高效地实现算术运算,诸如加法器、减法器、比较器、计数器或其他运算,以高效地形成一些扩展逻辑运算(例如,更高阶的LUT,对多位数据进行操作),以高效地实现相对小的RAM,和/或允许在逻辑、算术、扩展逻辑和/或其他可选择的操作模式之间进行选择。在此方面,跨越多个逻辑单元202的模式逻辑电路204可以链接在一起,以在相邻逻辑单元202之间传递进位输入信号205和进位输出信号207,和/或其他信号(例如,输出信号222),如本文所描述的。在图2的示例中,例如,进位输入信号205可以直接传递到模式逻辑电路204,或可以通过配置一个或多个可编程多路复用器传递到模式逻辑电路204,如本文所描述的。在一些实施例中,模式逻辑电路204可以跨多个逻辑块104链接。
图2所示的逻辑单元200仅是示例,并且根据不同实施例的逻辑单元200可以包括PLD部件的不同组合和布置。此外,尽管图2示出了具有八个逻辑单元200的逻辑块104,但是根据其他实施例的逻辑块104可以包括更少的逻辑单元200或更多的逻辑单元200。逻辑块104的中的每个逻辑单元200可以用于实现由PLD 100实现的用户设计的一部分。在此方面,PLD 100可以包括许多逻辑块104,该许多逻辑块中的每个可以包括逻辑单元200和/或用于共同实现用户设计的其他部件。
如本文进一步描述的,当PLD 100被配置为实现用户设计时,可以调整用户设计的部分以占用更少的逻辑单元200、更少的逻辑块104,和/或对路由资源180具有更少的负担。根据各种实施例的此类调整可以识别将在占据逻辑单元200和/或逻辑块104的多个实施例的布置中实现的某些逻辑、算术和/或扩展逻辑操作。如本文进一步描述的,优化过程可以路由与本文描述的算术/逻辑运算相关联的各种信号连接,使得逻辑、波纹算术或扩展逻辑运算可以被实现到与前面的算术/逻辑运算相关联的一个或多个逻辑单元200和/或逻辑块104中。
图3示出了根据本公开的实施例的针对PLD的设计过程300。例如,可以由运行Lattice Diamond软件来配置PLD 100的系统130来执行图3的过程。在一些实施例中,图3中引用的各种文件和信息可以存储在例如存储器134、机器可读介质136和/或其他装置中的一个或多个数据库和/或其他数据结构中。在各种实施例中,当存储和/或传送到PLD 100和/或其他设备或系统时,此类文件和/或信息可以被加密或以其他方式保护。
在操作310中,系统130接收指定PLD 100的期望功能的用户设计。例如,用户可以与系统130交互(例如,通过用户输入设备137和表示设计的硬件描述语言(HDL)代码)来识别用户设计的各种特征(例如,高级逻辑操作、硬件配置和/或其他特征)。在一些实施例中,可以在寄存器传送级(RTL)描述(例如,门级描述)中提供用户设计。系统130可以执行一个或多个规则检查以确认用户设计描述了PLD 100的有效配置。例如,系统130可以拒绝无效的配置和/或请求用户适当地提供新的设计信息。
在操作320中,系统130对设计进行综合以创建网表(例如,经综合的RTL描述),该网表将用户设计的抽象逻辑实现识别为多个逻辑部件(例如,也称为网表部件),其可以包括PLD 100的可编程部件和硬IP部件两者。在一些实施例中,网表可以以电子设计交换格式(EDIF)存储在本地通用数据库(NGD)文件中。
在一些实施例中,在操作320中将设计综合到网表中可以涉及将逻辑操作、硬件配置和/或用户设计中的其他特征的高级描述转换(例如,转译)为一组PLD部件(例如,逻辑块104、逻辑单元200和PLD 100的其他部件,该其他部件被配置用于实现用户设计的逻辑、算术或其他硬件特征)及其相关联的互连或信号。根据实施例,转换后的用户设计可以表示出为网表。
在一些实施例中,在操作320中将设计综合到网表中可以进一步涉及对用户设计(例如,被转换/转译成一组PLD部件及其相关联互连或信号的用户设计)执行优化过程,以减少传播延迟、PLD资源和路由资源的消耗,和/或当被配置为实现用户设计时优化PLD的性能。根据实施例,可以在表示转换/转译的用户设计的网表上执行优化过程。根据实施例,优化过程可以在网表中表示优化的用户设计(例如,以产生优化的网表)。
在一些实施例中,优化过程可以包括优化逻辑函数运算、波纹算术运算和/或扩展逻辑函数运算的一些示例,当PLD被配置为实现用户设计时,这些示例将占用多个可配置的PLD部件(例如,逻辑单元200、逻辑块104和/或路由资源180)。例如,优化过程可以包括检测实现逻辑函数运算、波纹算术运算、扩展逻辑函数运算的多模式或可配置逻辑单元,和/或用户设计中的对应路由资源,互换实现各种运算的逻辑单元的操作模式,以减少用于实现运算的PLD部件和/或路由资源的数量,和/或减少与运算相关联的传播延迟,和/或重新编程对应的LUT和/或模式逻辑以考虑互换的操作模式。
在另一个示例中,优化过程可以包括检测用户设计中的扩展逻辑功能操作和/或对应的路由资源,将扩展逻辑操作实现到具有单个物理逻辑单元输出的多模式或可转换逻辑单元中,将第一组逻辑单元的逻辑单元输出路由或耦接到第二组逻辑单元的输入,以减少用于实现扩展逻辑操作的PLD部件的数量和/或路由资源和/或减少与扩展逻辑操作相关联的传播延迟,和/或对对应的LUT和/或模式逻辑进行编程,以利用至少第一组逻辑单元和第二组逻辑单元实现扩展逻辑功能操作。
在另一个示例中,优化过程可以包括检测实现逻辑函数运算、波纹算术运算、扩展逻辑函数运算的多模式或可配置逻辑单元,和/或用户设计中的对应的路由资源,互换实现各种运算的逻辑单元的操作模式,以沿着PLD内的信号路径提供可编程寄存器,以减少与信号路径相关联的传播延迟,以及重新编程对应的LUT、模式逻辑和/或其他逻辑单元控制位/寄存器,以考虑互换的操作模式和/或编程可编程寄存器以存储或锁存信号路径上的信号。
在操作330中,系统130执行映射过程,该映射过程识别可以用于实现用户设计的PLD 100的部件。在此方面,系统130可以将优化的网表(例如,作为优化过程的结果在操作320中存储的)映射到由PLD 100提供的各种类型的部件(例如,逻辑块104、逻辑单元200、嵌入式硬件和/或PLD 100的其他部分)和它们的相关联信号(例如,以逻辑方式,但是还没有指定放置或路由)。在一些实施例中,映射可以在一个或多个先前存储的NGD文件上执行,映射结果存储为物理设计文件(例如,也称为NCD文件)。在一些实施例中,映射过程可以作为操作320中的综合过程的一部分来执行以产生映射到PLD部件的网表。
在操作340中,系统130执行放置过程以将映射的网表部件分配给驻留在PLD 100的特定物理位置的特定物理部件(例如,分配给PLD 100的特定逻辑单元200、逻辑块104、路由资源180和/或其他物理部件),从而确定用于PLD 100的布局。在一些实施例中,可以在一个或多个先前存储的NCD文件上执行放置,其中放置结果被存储为另一个物理设计文件。
在操作350中,系统130执行路由过程以基于在操作340中确定的放置布局在PLD100的部件之间路由连接(例如,使用路由资源180)以实现放置的部件之间的物理互连。在一些实施例中,路由可以在一个或多个先前存储的NCD文件上执行,路由结果存储为另一个物理设计文件。
在各种实施例中,在操作350中对连接进行路由可以进一步涉及对用户设计执行优化过程,以减少传播延迟、PLD资源和/或路由资源的消耗,和/或当PLD被配置为实现用户设计时优化PLD的性能。在一些实施例中,优化过程可以在表示转换/转译的用户设计的物理设计文件上执行,并且优化过程可以在物理设计文件中表示优化的用户设计(例如,产生优化的物理设计文件)。
在一些实施例中,优化过程可以包括优化逻辑函数运算、波纹算术运算和/或扩展逻辑函数运算的一些示例,当PLD被配置为实现用户设计时,这些示例将占用多个可配置的PLD部件(例如,逻辑单元200、逻辑块104和/或路由资源180)。例如,优化过程可以包括检测实现逻辑函数运算、波纹算术运算、扩展逻辑函数运算的多模式或可配置逻辑单元,和/或用户设计中的对应路由资源,互换实现各种运算的逻辑单元的操作模式,以减少用于实现运算的PLD部件和/或路由资源的数量,和/或减少与运算相关联的传播延迟,和/或重新编程对应的LUT和/或模式逻辑以考虑互换的操作模式。
在另一个示例中,优化过程可以包括检测用户设计中的扩展逻辑功能操作和/或对应的路由资源,将扩展逻辑操作实现到具有单个物理逻辑单元输出的多模式或可转换逻辑单元中,将第一组逻辑单元的逻辑单元输出路由或耦接到第二组逻辑单元的输入,以减少用于实现扩展逻辑操作的PLD部件的数量和/或路由资源和/或减少与扩展逻辑操作相关联的传播延迟,和/或对对应的LUT和/或模式逻辑进行编程,以利用至少第一组逻辑单元和第二组逻辑单元实现扩展逻辑功能操作。
在另一个示例中,优化过程可以包括检测实现逻辑函数运算、波纹算术运算、扩展逻辑函数运算的多模式或可配置逻辑单元,和/或用户设计中的对应的路由资源,互换实现各种运算的逻辑单元的操作模式,以沿着PLD内的信号路径提供可编程寄存器,以减少与信号路径相关联的传播延迟,以及重新编程对应的LUT、模式逻辑和/或其他逻辑单元控制位/寄存器,以考虑互换的操作模式和/或编程可编程寄存器以存储或锁存信号路径上的信号。
路由中的变化可以传播回先前的操作,诸如综合、映射和/或放置,以进一步优化用户设计的各个方面。
因此,在操作350之后,可以提供一个或多个物理设计文件,该一个或多个物理设计文件在用户设计已经为PLD 100综合(例如,转换和优化)、映射、放置和路由(例如,进一步优化)之后(例如,通过组合对应的先前操作的结果)指定用户设计。在操作360中,系统130为综合、映射、放置和路由的用户设计生成配置数据。在各种实施例中,作为此类生成过程的一部分,此类配置数据可以被加密、签名和/或以其他方式保护,如本文更全面描述的。在操作370中,系统130通过例如通过连接140将配置数据位流(例如,“配置”或“配置图像”)加载到PLD 100中来用配置数据配置PLD 100。例如,可以以加密、签名或不安全/未认证的形式提供此类配置,并且PLD 100可以被配置为不同地对待安全和不安全的配置,如本文所描述的。
图4示出了根据本公开的实施例的用户设备430的框图,其包括PLD 410和一个或多个自适应上电复位(POR)信号发生器500。在各种实施例中,用户设备430可以包括电源462、自适应POR信号发生器500和一个或多个便于用户设备430操作的电子部件,诸如PLD410、通信模块450和被配置为诸如便于PLD 410的远程管理或便于特定用户设备应用的其他用户设备模块460,如本文所描述的。在各种实施例中,用户设备430可以被实现为智能电话、膝上型计算机、平板计算机、台式计算机、智能环境传感器、家庭自动化设备(例如,传感器和/或致动器)、网络管理设备、智能显示器或电视、汽车用户接口和/或其他用户设备,如本文所描述的。更一般地,用户设备430可以被实现为嵌入式设备或可以与PLD 410中的一个或多个集成的任何其他计算设备或电子设备。
如图4中所示,电源462可以被配置为通过功率总线464向用户设备410的各种部件提供一个或多个供应电压(例如,一个或多个VCC、VAUX)。例如,电源462可以被实现为电池或电池组,例如,具有集成的充电和监测电子装置。在其他实施例中,电源462可以被配置为接收电网或其他外部电力并且包括各种电力调节、调整和/或转换部件,该各种电力调节、调整和/或转换部件被配置为使用一个或多个功率总线464为用户设备430的每个部件供应适当的操作电压。功率总线464可以包括一个或多个导线和/或迹线,该一个或多个导线和/或迹线被配置为将此类供应电压传输到各种部件,如图所示,并且在一些实施例中可以包括信令迹线,该信令迹线被配置为传输和接收逻辑信号/数据,以便于电源462、用户设备430和/或用户设备430的各种元件的操作。在一些实施例中,如图所示,功率总线464可以被配置为向一个或多个自适应POR发生器500提供相同的供应电压。
在各种实施例中,自适应POR信号发生器500可以被配置为通过功率总线464从电源462接收一个或多个供应电压,并且生成POR信号,该POR信号被配置为约在对应的供应电压达到对于一个或多个部件的最小兼容操作电压时解除用户设备430的一个或多个部件的重启状态。如图4中所示,在一些实施例中,此类POR信号可以经由POR信号总线580传送到每个部件,并且每个设备可以包括电路,该电路被配置为在经由POR信号总线580接收到POR信号以前保持部件的复位或电源安全状态。例如,POR信号可以是转变(例如,从高到低、从低到高、从低到高到低等)以解除此类重启状态的逻辑信号,并且接收此类信号的对应部件可以被配置在例如用户设备430和/或电源462被循环供电以前为锁存或存储此类重启解除状态,或自适应POR信号发生器500生成强制复位信号(例如,也通过POR信号总线580传送的单独的逻辑信号转变)被配置为强制对应的部件回到复位状态,如本文所描述的。
在一些实施例中,例如,每个部件可以包括其自己的可选自适应POR信号发生器500,以便增加单个部件在电源性能特性、操作电压和对应斜坡时间方面的设计灵活性。更一般地,用户设备430可以包括自适应POR信号发生器500的任意组合,该自适应POR信号发生器500被配置为例如保护用户设备430和用户设备430的元件的操作,并且同时通过最小化电源462的上电和用户设备430和/或用户设备430的各个元件的操作之间的延迟(例如,最小化可变条件下的引导时间)来保持相对高的系统性能。
如图4中所示,PLD 410可以由类似于针对图1中的PLD 100所描述的那些元件来实现,和/或具有另外的可配置的和/或硬IP元件,该另外的可配置的和/或硬IP元件被配置为便于PLD 410在特定计算应用和/或架构中的操作,如本文所描述的。特别地,PLD 410可以包括PLD结构400,该PLD结构通过各种总线链接到非易失性存储器(NVM)420、可编程I/O404和/或其他集成电路(IC)模块406,所有这些都在单片IC上实现,如图所示。一般来说,PLD结构400可以由针对PLD 100描述的各种元件中的任一种来实现,并且可以使用类似于针对图3描述的设计过程300的设计过程来配置,以根据期望的配置来生成和编程PLD结构400。在一些实施例中,PLD 410可以包括一个或多个自适应POR信号发生器500(例如,作为与PLD 410集成的一个或多个硬IP部件)。
NVM 420可以被实现为硬IP资源,其被配置为提供用于便于PLD410的操作的数据的安全和/或非易失性存储。NVM 420可以包括多个不同的扇区,诸如一个或多个配置图像扇区、设备密钥扇区(例如,AES密钥扇区和单独的公共密钥/密钥对扇区)、用户快闪存储器(UFM)扇区和/或其他限定的存储扇区。例如,配置图像扇区可以各自存储用于PLD结构400的配置,以便允许它们被选择(例如,基于版本或日期)并且用于对PLD结构400进行编程。装饰扇区可以用于存储制造商装饰、设备识别符、设备类别识别符和/或特定PLD410专用的其他数据,例如,诸如可修改的客户专用订购零件号和/或生成的客户ID号。设备密钥扇区可以用于存储加密/解密密钥、公共密钥/私有密钥和/或特定PLD 410专用的其他安全密钥。UFM扇区可以用于存储一般可由PLD结构400访问的用户数据,诸如配置或应用特定的安全密钥、证书和/或其他安全(d)用户数据。NVM 420的任一个或多个单独的元件、部分或扇区可以被实现为例如可配置存储器,或一次性可编程(OTP)存储器,如本文所描述的。
可编程I/O 404可以被实现为至少部分可配置的资源和/或硬IP资源,其被配置为提供或支持PLD结构400和外部控制器、存储器和/或其他设备(诸如通信模块450)之间的通信链路,例如跨越总线402(例如,其被配置为将PLD结构400的部分链接到可编程I/O 404和/或NVM 420的总线)并且根据一个或多个外部总线接口、协议和/或总线供应电压(例如,外部总线接口408)。可编程I/O 404还可以被配置为支持PLD结构400和/或NVM 420跨越总线402和/或外部总线接口408与通信模块450之间的通信,例如,作为外部系统130/机器可读介质136的补充或备选,如本文所描述的。
在一些实施例中,总线402和/或可编程I/O 404可以与PLD结构400集成在一起。更一般地,在图4中被示出为分离的PLD 410的一个或多个元件可以彼此集成和/或集成在彼此内。其他IC模块406可以被实现为硬IP资源和/或可配置的IP资源,该硬IP资源和/或可配置的IP资源被配置为便于PLD 410的操作。例如,其他IC模块406可以包括被实现为硬IP资源的安全引擎,其被配置为提供由PLD结构400和/或用户设备430使用的各种安全功能,被实现为硬IP资源的配置引擎,其被配置为管理PLD 410的各种元件的配置和/或它们之间的通信,包括管理或控制PLD 410的元件的配置、PLD结构400的引导以及整个PLD 410的流量控制,根据JTAG、I2C、SPI和/或其他外部访问总线或协议中的者个或多者实现的一个或多个另外的外部访问总线,例如,其被配置为提供去往和/或来自通信模块450和/或其他用户设备模块460的访问。
通信模块450可以被实现为网络通信IC,该网络通信IC被配置为形成到用于管理PLD 410的操作的远程外部设备的通信链路。例如,在一些实施例中,通信模块450可以被实现为无线通信模块,该无线通信模块被配置为支持到通信网络的有线和/或无线通信链路(例如,根据WiFi、蓝牙、Zigbee、Zwave、近场通信(NFC)、蜂窝、以太网和/或其他开放和/或专有的有线和/或无线通信协议形成),如本文所描述的。在此类实施例中,通信模块450可以被配置为管理此类有线和/或无线通信链路的各种安全特征(例如,建立通信链路证书,采用通信链路证书来建立通信链路,为通过此类通信链路建立的加密通信隧道协商加密密钥,诸如传输层安全性(TLS)),和/或可以被配置为由PLD 410和/或其他用户设备模块460控制来管理此类安全特征。
其他用户设备模块460可以包括各种计算、传感器和/或致动器元件,该计算、传感器和/或致动器元件被配置为实现特定用户设备应用,例如,如本文所描述的远程传感器应用、远程控制器应用和/或远程计算应用。其他用户设备模块460也可以包括各种其他通信总线、电力存储和输送元件、用户接口(例如,按钮、键盘、鼠标、跟踪板和/或显示器/触摸屏显示器)以支持此类用户设备应用。在一个实施例中,其他用户设备模块460包括电特性传感器,该电特性传感器被配置为检测和/或测量用于测量与用户设备430相关联的环境条件的换能器元件(例如,也是其他用户设备模块460的元件)的电状态。在另一个实施例中,其他用户设备模块460包括通常在智能电话、膝上型计算机、平板计算机和/或台式计算机内找到的各种电子设备。
图5示出了根据本公开的实施例的自适应POR信号发生器500的框图。图5中的自适应POR信号发生器500的操作将参考示例供应电压(或从供应电压得到的电压)来描述,该供应电压在完全斜变时标称值约为1.9v。然而,实施例适用于任何供应电压,并且任何特定值仅是示例,本领域普通技术人员可以从该示例理解如何将本公开的方面应用于其他实现方式。示例供应电压可以称为VCC。在一般操作中,当斜变的供应电压(例如,VCC)从相对较低的第一阈值斜坡电压(例如,Vl~1.38v)增加到相对较高的第二阈值斜坡电压(例如,Vh~1.58v)时,对其进行采样(例如,根据各种不同的采样技术,当在斜变期间采样时,本文也称为斜坡电压),以便表征斜变通过所监测的供应电压范围所需的斜坡时间。
一般来说,第一阈值斜坡电压Vl和第二阈值斜坡电压Vh两者都应小于期望的完全斜变的供应电压(例如,针对对应部件的最小兼容操作电压)。第一阈值电压电平v1可以被选择为足够高以避免电源462的过早开启时段,在该时段中可能存在瞬态或其他不期望的和/或不可靠的电源行为。在各种实施例中,斜坡时间可以通过对具有已知频率Fon的嵌入式振荡器/时钟源的转变进行计数来表征。可以基于已知的时钟频率Fon来确定针对每次转变的时间或基于此类转变的数量的计数。在一些实现方式中,如本文所描述的,为了表征斜坡时间和适当生成结果POR信号所需的任何延迟两者,可以做出或要求供应电压单调斜坡的假设。
在包括计数器作为定时设备的实施例中,为了适当地延后POR信号的生成,当VCC斜变到Vh时,计数器的值可以用作用于确定何时应生成POR信号的基础。在一些实施例中,如果计数从零开始以表示在Vl和Vh之间斜变的斜坡时间,则可以基于例如Vh与期望的完全斜变的操作电压差多少,或电路或其部分可以操作的值,来计算POR信号延迟到解除复位(例如,生成POR信号)。例如,如果供应电压VCC的操作电压值期望/预期为1.98v,则当VCC约为1.98v时,应生成POR信号(复位解除)。假设针对供应电压VCC的线性斜坡率,如果Vl=1.38v并且Vh=1.58v(意味着约0.2v的电压电平变化),那么Vh和VCC的最终值之间的电压变化约是0.4伏或两个阈值斜坡电压Vl和Vh之间的电压差的两倍。因此,在此类条件下,到达Vh和POR信号生成之间的POR信号延迟应是VCC到达Vl然后到达Vh之间的斜坡时间的约两倍。
在一个实施例中,当VCC达到Vh时计数器的值(例如,在给定的计数器频率Fon下的斜坡时间计数)可以用于实现POR信号延迟(例如,在此数字示例中,通过将计数值加倍或将Fon频率减半),并且可以用于精确地确定何时生成POR信号。例如,在一些实施例中,可以通过基于上述电压和线性斜变假设以Fon/2的频率从计数器值(例如,确定的斜坡时间计数)向下计数来生成POR信号。更一般地,可以选择用于Vl和Vh的其他值,和/或可以基于针对计数器要分配或可用的位数来选择Fon。此外,可以通过修改倒计数频率或修改计数值来调整POR信号生成的POR信号延迟。可以通过改变针对计数器和/或时钟源/振荡器的电阻器值来修改倒计数频率,这可以(例如,在制造时)通过从若干电阻器选择、通过改变金属层或其他适当的手段(例如,激光微调)、或通过实现可变电阻器或其他可编程电路元件(例如,其可以在自适应POR信号发生器500的操作期间被编程调整)来完成。在各种实施例中,可以修改POR信号延迟以考虑例如工艺和温度变化,该工艺和温度变化变化可以被监测并且通过电源总线464和/或POR信号总线580向提供给自适应POR信号发生器500。安全裕度或其他POR信号延迟调整可以基于观察到的或可能的VCC斜坡率的非线性在持续的基础上进行修改,并且POR信号延迟可以基于例如由电源462产生和/或从电源462预期的和/或由自适应POR信号发生器500测量的任何线性或非线性斜坡率曲线来确定,如本文所描述的。
在一些实施例中,自适应POR信号发生器500可以被实现为简单且稳健。图5中呈现的示例实现架构示出了本公开的各方面,其在相对简单、紧凑、可靠和低功率的实施例中基于电压斜坡率提供具有自适应时序的POR信号生成(复位解除)。例如,图5中所示的自适应POR信号发生器500的实施例可以与任何或多个供应电压一起使用——内部源和/或外部源或生成的,并且POR信号延迟的量可以取决于斜坡率。对于上面公开的示例电压值和快速斜变(20us/v),此示例中的POR信号延迟将接近30us(微秒),而对于慢速斜变(50ms/v),POR信号延迟将在20ms左右。可以通过改变振荡器频率来改变POR信号延迟。可以通过改变计数器的可用位数来改变所支持的POR信号延迟量。例如,可以通过修改电阻(金属选项)或焊接选项来改变可用的振荡器频率。POR信号总线580上的POR信号的输出可以根据所生成的POR信号的特定应用的需要被进一步处理(例如,与一个或多个其他信号进行或和/或与运算)。可以基于要支持的最大必要或期望或预期POR信号延迟来选择计数器中的位数。在一个示例中,17位计数器足以支持最小可允许斜坡率所需的最大POR信号延迟(例如,低于最小可允许斜坡率的斜坡率倾向于指示电源462故障)。可以包括超时特征,其中如果斜坡供应/斜坡电压在要求的时间段内没有达到第二阈值斜坡电压Vh(这可以由计数器翻转并且生成溢出逻辑信号来指示),则可以生成系统/电源/芯片/POR信号发生器重启信号以尝试系统/电源/芯片/POR信号发生器重启,生成警报和/或断电。在各种实施例中,假设被监测的供应电压中的单调电压斜变,但是在备选实施例中,可以通过在自适应POR信号发生器500内包括适当的滤波和/或监测电路(例如,AC电压峰值监测电路)来适应相对嘈杂的DC供应电压和/或AC供应电压。
图5描述了自适应POR信号发生器500的电路,其可以作为集成电路或集成电路的一部分形成在半导体中。此类集成电路可以是在此类半导体上形成的多个独立和/或互连电路中的一个集成电路。在图5所示的实施例中,在一般操作中,参考电压520由参考电压发生器510产生,然后可以供应给斜坡遍历检测器522。斜坡遍历检测器522然后可以生成斜坡遍历信号523,并且将其提供给控制器540,该控制器可以被配置为确定适当的POR信号延迟,利用该延迟在POR信号总线580上生成POR信号。
控制器540可以被实现为任何适当的逻辑设备(例如,处理设备、微控制器、处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、存储器存储设备、存储器读取器或其他设备或设备的组合),其可以适于执行、存储和/或接收适当的指令,诸如实现用于控制自适应POR信号发生器500的各种操作的控制回路的软件指令。此类软件指令还可以实现用于向设备查询操作参数、为设备选择操作参数或执行本文描述的各种操作中的任一种操作(例如,由自适应POR信号发生器500的各种设备的逻辑设备执行的操作)的方法。此外,控制器540可以用机器可读介质来实现,用于存储加载到控制器540中并且由控制器540执行的非暂时性指令。在这些和其他实施例中,控制器540可以在适当的情况下用其他部件来实现,诸如易失性存储器、非易失性存储器、一个或多个接口、和/或用于与自适应POR信号发生器500的设备和/或用户设备430接口的各种模拟和/或数字部件。
如图5中所示,参考电压发生器510可以由电流镜514和线性电阻器阵列516实现,电流镜514可以由带隙晶体管结构518和线性电阻器阵列516使能/开启,该线性电阻器阵列被配置为基于电流镜514的电流输出来提供选择的参考电压。在一些实施例中,电流镜514可以耦接到任何可用的供应电压和/或由任何可用的供应电压供电,诸如在输入端511和512处的VCC和/或VAUX,并且带隙晶体管结构518可以由输入端519处的带隙信号选通(例如,经由功率总线464和/或POR信号总线580传送),该带隙信号可以被配置为指示由电源462生成的供应电压(例如,并且被提供给输入端511和/或512)可用于为电流镜514供电并且生成稳定可靠的参考电压520。
在一些实施例中,参考电压发生器510由从另一个电路,诸如带隙或甚至另一个POR生成电路产生的电压信号开启。此类电压信号可以指示输入端511和/或512处的供应电压(例如,VCC)已经达到某个最小电压,诸如0.7伏、0.8伏或0.9伏。此后,电流镜514经由线性电阻器阵列516产生稳定可靠的参考电压520。在各种实施例中,可以使用其他电路元件和/或电路布置来实现参考电压发生器510。一般来说,参考电压发生器510可以是电路元件的任意组合,该电路元件被配置为在被监测的供应电压(例如,在斜坡电压选择器530的被监测的供应电压输入端531处提供的)斜变到其标称操作电压之前生成相对稳定和可靠的参考电压520,例如,其中参考电压520可以低于由自适应POR信号发生器500监测的供应电压的标称操作电压。在一些实施例中,参考电压发生器510可以通过与PLD 410集成的硬和/或软IP资源来实现。
如图5中所示,参考电压520可以被供应给斜坡遍历检测器522,在一些实施例中,斜坡遍历检测器522可以被实现为比较器。斜坡遍历检测器522可以耦接到斜坡电压选择器530并且被配置为当斜坡电压选择器530提供的斜坡电压530遍历参考电压520时(例如,当斜坡电压530变得等于和/或大于参考电压520时-这可以在指定的时间/电压容差或其他近似值内)生成斜坡遍历信号523。在各种实施例中,斜坡遍历检测器522可以包括可编程线性电阻器阵列/分压器532,该可编程线性电阻器阵列/分压器532可以包括电阻器533、534和535以及电阻器旁路开关536,该电阻器旁路开关536被配置为基于电阻器旁路开关536的开关状态从供应电压输入端531(例如被监测的供应电压VCC)生成斜坡电压538。例如,电阻器旁路开关536可以被配置为选择性地使电阻器535短路,并且由此改变由斜坡电压选择器生成并且作为斜坡电压538输出的电压范围。如图中示出的,可编程线性电阻器阵列/分压器532在输入端531处耦接到VCC,如上描述的,该输入端531是斜坡的。因此,斜坡电压530也随着VCC的增加而增加。
在一些实施例中,可以选择电阻器R1/533、R2/534、R3/535,使得当供应电压VCC约为1.38V时,斜坡电压538等于参考电压520,并且当VCC约为1.58v时(例如,当电阻器旁路开关536闭合时),斜坡电压538也等于参考电压520。特别地,当电阻器旁路开关536打开时,斜坡电压538可以被确定为(R2+R3)/(R1+R2+R3),并且当电阻器旁路开关536闭合时,斜坡电压538可以被确定为(R2/(R1+R2))。可以为R1-R3中的一个或多个选择合理的值,然后求解针对两种情况下的所得方程。注意,参考电压520不需要且通常不会等于1.38v或1.58v。
在各种实施例中,自适应POR信号发生器500可以包括电路(例如,POR使能器570),该电路被配置为在不需要时使能和禁用自适应POR信号发生器500的操作,诸如以节省电力。例如,信号输入571(例如,pmu_done)可以指示从自适应POR信号发生器500接收POR信号的电路已经成功开启,因此不再需要自适应POR信号发生器500的操作,而信号输入572(例如,bg_ready)可以指示参考电压520准备好被(或正在被)供应给斜坡遍历检测器522,使得自适应POR信号发生器500可以被用来生成POR信号。例如,信号输入572可以耦接到输入端519处的相同带隙信号。在一些实施例中,如果pmu_done在逻辑上为真,则计数器560应保持复位(例如,经由POR使能器570生成的复位信号574),而不管bg_ready如何,并且仅当bg_ready在逻辑上为真而pmu_done在逻辑上为假时,计数器560才应退出复位。在各种实施例中,POR使能器570可以被配置为实现此类逻辑,以便于自适应POR信号发生器500和/或自适应POR信号发生器500的各个元件的操作、使能和禁用,如图所示。
响应于斜坡遍历检测器522经由斜坡遍历信号523向控制器540指示输入端531处的供应电压VCC已经达到1.38V,控制器540经由包括时钟使能信号541在内的各种时钟控制信号启动振荡器550向计数器560的输出。如本文所描述的,控制器540还可以经由时钟控制信号(例如,慢速使能信号542)来调整振荡器550的频率。控制器540还可以经由各种计数器控制信号(例如,向上/向下信号544)使计数器560向上或向下计数,并且在此示例中,当斜坡电压选择器530指示输入端531处的供应电压VCC为1.38V时,计数器560开始以振荡器550输出到计数器560的时钟信号552的频率向上计数。当斜坡遍历检测器522向控制器540指示输入端531处的供应电压VCC已经达到1.58V时,控制器540禁止振荡器550向计数器560提供时钟信号552(例如,经由时钟使能信号541)。注意,振荡器可能仍然是活动的,但只是不输出时钟信号552。计数器560因此停止递增。
本公开的各方面提供了将POR信号的解除延迟一定量,该量取决于供应电压VCC在两个斜坡阈值电压之间斜坡的速度,本文称为斜坡时间。在某些方面,还基于Vh距离针对VCC的预期最终值和/或标称操作电压有多远来确定POR信号延迟。在Vl=1.38和Vh=1.58(差为0.2v)以及最终VCC值为1.98的示例中,对于VCC还有约0.4v可以增加,因此解除时间应是从Vl=1.38斜坡到Vh=1.58所需时间的约两倍。
尽管可以提供多种实现方式来提供POR信号延迟,但是在此示例中,通过将振荡器频率降低到用于向上计数的值的约一半来实现和/或调整POR信号延迟。然后,控制器540指示计数器560以现在降低的频率向下计数而不是向上计数。来自计数器560的当前计数可以被提供给控制器540,该控制器可以被配置为检测计数值何时已经达到零,并且作为响应在POR信号总线580上生成POR信号,该POR信号可以被用作POR信号或生成其他逻辑选通POR信号(即,解除复位或脱离复位)。例如,POR信号总线580上的POR信号可以直接用于解除复位,或它可以被另一个电路消耗,该另一个电路可以在POR解除之前进一步选通或使用POR信号总线580上的POR信号。
在一些实现方式中,计数器560还具有指示溢出的能力(例如,经由溢出信号564),这意味着斜坡遍历检测器522最终没有触发控制器540斜坡电压538达到指示VCC达到Vh的值。控制器540可以使用此溢出信号来采取行动,这可以取决于POR信号的预期用途。此类动作可以包括使整个芯片或集成电路的一部分复位并且重试,或无论如何都可以解除POR信号。在各种实施例中,POR信号总线580可以用于在控制器540和由自适应POR信号发生器500服务的任何其他电路元件之间传达POR信号和/或其他通信逻辑信号。其他实现方式可以包括计数器560,其本身可以在诸如零的重要值上触发另一个信号,并且不暗示或要求由控制器540和计数器560实现的这些功能的精确划分。
一般来说,可以调整Vl和Vh,并且可以提供延迟或振荡器频率的对应变化。此外,可以基于振荡器550的预期范围和期望分辨率来提供计数器560中的位数。例如,振荡器550可以在诸如1MHz或更高的值下操作。然后,来自振荡器550的时钟的每次转变表示1uS。最大位数可以由最大允许POR信号延迟来确定。例如,利用17位,计数器可以计数时钟信号552的2^17次转变,或约130ms的总时间(用于斜变)。可以分配更多或更少的位,允许更大的粒度和/或更大的范围。此外,一般来说,例如,可以由PLD 410的硬IP资源或软IP资源来实现振荡器550、计数器560、POR使能器570、控制器540和/或自适应POR信号发生器500的其他元件。
在备选或补充实施例中,自适应POR信号发生器500可以由控制器540和各种电路元件实现,该各种电路元件被配置为在电源462提供的供应电压达到其标称操作电压之前对该供应电压进行采样,其中控制器540被配置为确定适当的POR信号延迟,并且根据大致与达到其标称操作电压的供应电压一致的POR信号延迟来生成POR信号。在图5中示出的实施例中,控制器540使用在不同时间和电压电平下获取的供应电压的两个样本(例如,由斜坡电压选择器530选择的)来确定适当的POR信号延迟。在备选实施例中,控制器540和斜坡电压选择器530可以被配置为在两个以上不同的时间对供应电压进行采样,例如,或仅一次。例如,电源462可以适于根据特征斜坡曲线提供供应电压,并且控制器540可以被配置为使用单个样本来确定供应电压在斜坡曲线上的位置,然后使用斜坡曲线来基于单个样本推断适当的POR信号延迟(例如,斜坡电压538遍历单个阈值斜坡电压)。备选地,在电源462提供具有非线性和多变量变化/不可靠斜坡轮廓的供应电压的情况下,或在两个以上供应电压样本有利于确定可靠的POR信号延迟的情况下,控制器540可以被配置为基于两个以上供应电压样本来确定或表征非线性斜坡轮廓,然后基于供应电压样本和表征的非线性斜坡轮廓来确定POR信号延迟。
尽管图5中示出的自适应POR信号发生器500的实施例包括各种元件,但是自适应POR信号发生器500的其他实施例可以省略参考电压发生器510并且用其他模拟或数字电路来代替斜坡电压选择器530和斜坡遍历检测器522,该其他模拟或数字电路被配置为对供应电压进行采样,并且向控制器540提供采样和/或采样的定时。此外,振荡器550和计数器560可以被省略和/或用被配置为使能控制器540和自适应POR信号发生器500的操作的定时和/或时钟电路代替。更一般地,图5中示出的自适应POR信号发生器500的任何单个元件可以集成在一起,和/或它们的功能可以用不同的电路元件和电路元件的布置来实现。图5中示出的实施例的特别好处是振荡器550和计数器560可以用于斜坡时间表征和POR信号延迟实现两者,其中控制器540、振荡器550和计数器560之间的互连最少。此外,参考电压520被允许在斜坡表征和POR信号生成的整个过程中保持稳定,而斜坡电压538斜坡,从而确保在整个斜坡过程中对向输入端531提供的供应电压进行可重复且精确的采样。
图6示出了根据本公开的实施例的自适应POR信号生成过程600。在一些实施例中,图6的操作可以被实现为由与图1至图5中描绘的对应电子设备、模块和/或结构相关联的一个或多个逻辑设备执行的软件指令。更一般地,图6的操作可以用软件指令和/或电子硬件(例如,电感器、电容器、放大器、致动器或其他模拟和/或数字部件)的任意组合来实现。应理解,过程600的任何步骤、子步骤、子过程或框可以以不同于图6所示实施例的顺序或布置来执行。例如,在其他实施例中,可以从过程600省略一个或多个框,并且可以包括其他框。此外,块输入、块输出、各种传感器信号、传感器信息、校准参数和/或其他操作参数可以在移动到过程600的后续部分之前存储到一个或多个存储器中。尽管参考图1至图5的系统、设备和元件描述了过程600,但是过程600可以由其他系统、设备和元件来执行,并且包括电子系统、设备、元件、组件和/或布置的不同选择。在过程600的启动时,各种系统参数可以通过例如类似于过程600的过程的先前执行来填充,或可以被初始化为零和/或对应于从过程600的过去操作导出的典型值、存储值和/或学习值的一个或多个值,如本文所描述的。
在框610中,逻辑设备检测第一供应电压斜坡遍历。例如,控制器540可以被配置为检测跨第一阈值斜坡电压的第一供应电压斜坡遍历,该第一阈值斜坡电压经由斜坡电压选择器530的电阻器旁路开关536选择。例如,斜坡电压选择器530可以被配置为根据第一阈值斜坡电压或第二阈值斜坡电压来生成斜坡电压538,其中第一阈值斜坡电压或第二阈值斜坡电压基于输入端531处的被监测的供应电压以及供应电压如何被电阻器旁路开关536和线性电阻器阵列/电阻器分压器532的开关状态修改。在一些实施例中,控制器540可以被配置为通过例如监测由斜坡遍历检测器522生成的斜坡遍历信号来检测此类遍历,并且在检测到斜坡遍历信号中的逻辑信号转变时启动计数器560内的递增计数。控制器540可以被配置为通过生成计数器控制信号来控制计数器560递增计数并且生成时钟控制信号来使振荡器550和控制振荡器550能够向计数器560提供时钟信号552来启动递增计数。
一般来说,斜坡遍历检测器522可以被配置为从斜坡电压选择器530接收斜坡电压538,并且向控制器540提供斜坡遍历信号523,并且计数器550可以被配置为从控制器540接收计数器控制信号(例如,经由上/下信号544、POR复位信号574),并且至少部分地基于控制器540提供的计数器控制信号来递增和/或递减计数。振荡器550可以被配置为从控制器540接收时钟控制信号并且至少部分地基于由控制器540提供的时钟控制信号541、542,向计数器560提供时钟信号552。控制器540可以被配置为通过检测由斜坡遍历检测器522生成的斜坡遍历信号523中对应于第一供应电压斜坡遍历的第一逻辑信号转变并且启动计数器560的递增计数来检测第一供应电压斜坡遍历。
在各种实施例中,控制器540可以被配置为通过轮询斜坡电压选择器530的旁路开关536的状态和/或打开电阻器旁路开关536,在检测到第一供应电压斜坡遍历之前选择第一阈值斜坡电压。例如,此类选择可以在控制器540初始化时发生,或在检测到第一供应电压斜坡遍历之前的任何时间发生。更一般地,控制器540可以被配置为在检测第一供应电压斜坡遍历之前,通过轮询电阻器旁路开关536的开关状态和/或打开电阻器旁路开关536,来根据第一阈值斜坡电压配置斜坡电压选择器530。斜坡遍历检测器522可以被配置为通过确定由斜坡电压选择器530生成的斜坡电压538大于或等于由参考电压发生器510生成的参考电压520,其中参考电压530低于与电源462和/或供应电压相关联的标称操作电压,并且通过在斜坡遍历信号523中生成第一逻辑信号转变来生成斜坡遍历信号。
在框620中,逻辑设备检测第二供应电压斜坡遍历。例如,控制器540可以被配置为检测跨越第二阈值斜坡电压的第二供应电压斜坡遍历,该第二阈值斜坡电压经由斜坡电压选择器530的电阻器旁路开关536选择。在一些实施例中,控制器540可以被配置为通过例如监测由斜坡遍历检测器522生成的斜坡遍历信号来检测此类遍历,并且在检测到斜坡遍历信号中的逻辑信号转变时停止计数器560内的递增计数(例如,在框610中初始化)。在各种实施例中,控制器540可以被配置为通过闭合斜坡电压选择器530的电阻器旁路开关536,在检测到第一供应电压斜坡遍历之后选择第二阈值斜坡电压。此类选择可以在检测到第二供应电压斜坡遍历之前的任何时间发生。更一般地,控制器540可以被配置为在检测到第一供应电压斜坡遍历之后和/或在通过闭合电阻器旁路开关536检测到第二供应电压斜坡遍历之前根据第二阈值斜坡电压来配置斜坡电压选择器530。
在各种实施例中,控制器540可以被配置为通过生成计数器控制信号以控制计数器从斜坡时间计数启动递减计数,以及通过生成时钟控制信号以使振荡器550和控制振荡器550能够向计数器560提供修改的时钟信号552来启动递减计数,其中修改的时钟信号552包括至少部分地基于斜坡时间和标称操作电压电平的频率。例如,可以选择此类频率以将倒计数到零期望的持续时间设置为等于从斜坡时间和针对供应电压的标称操作电压电平得出的期望POR信号延迟。控制器540可以被配置为通过在由斜坡遍历检测器522生成的斜坡遍历信号523检测对应于第二供应电压斜坡遍历的第二逻辑信号转变,并且停止在框610中启动的计数器560的递增计数来检测第二供应电压斜坡遍历。
在框630中,逻辑至少部分地基于与第一供应电压斜坡遍历和第二供应电压斜坡遍历相关联的斜坡时间来生成POR信号。例如,控制器540可以被配置为至少部分地基于此类斜坡时间和电源462的标称操作电压来生成POR信号,如本文所描述的。在一些实施例中,控制器540可以被配置为至少部分地基于斜坡时间和标称操作电压来确定POR信号延迟,并且在检测到的第二供应电压斜坡遍历之后生成POR信号,并且根据POR信号延迟相对于检测到的第二供应电压斜坡遍历进行延迟。
在一些实施例中,控制器540可以被配置为至少部分地基于对应于第一供应电压斜坡遍历和第二供应电压斜坡遍历之间的斜坡时间的线性供应电压斜坡遍历率以及第一阈值斜坡电压和第二阈值斜坡电压之间的电压差来确定此类POR信号延迟。在此类实施例中,POR信号延迟可以通过基于线性供应电压斜坡率和标称操作电压与第二阈值斜坡电压之间的电压差的线性外插来确定,如本文所描述的。在其他实施例中,控制器540可以被配置为例如除了斜坡时间以及第一阈值斜坡电压和第二阈值斜坡电压之外,至少部分地基于与电源462和/或供应电压相关联的非线性斜坡曲线来确定POR信号延迟。在此类实施例中,POR信号延迟可以基于此类非线性斜坡轮廓通过非线性外插来确定。在各种实施例中,控制器540可以被配置为基于用户设备430的任何元件的温度、基于一个或多个先前存储的POR信号延迟、安全裕度延迟缓冲器和/或其他POR信号延迟调整来调整此类POR信号延迟,如本文所描述的。
在用如图5中所示的计数器560和振荡器550实现自适应POR信号发生器500的实施例中,控制器540可以被配置为经由由计数器560启动递减计数来生成POR信号,该递减计数从在块620识别的斜坡时间计数开始并且当递减计数达到零时生成POR信号(例如,如经由计数信号562传送到控制器540)。更一般地,控制器540可以被配置为通过至少部分地基于斜坡时间和标称操作电压电平来确定POR信号延迟,并且在检测到的第二供应电压斜坡遍历之后生成POR信号,并且根据POR信号延迟相对于检测到的第二供应电压斜坡遍历进行延迟来生成POR信号,如本文所描述的。在各种实施例中,控制器540可以被配置为通过例如至少部分地基于线性供应电压斜坡率和标称操作电压与第二阈值斜坡电压之间的电压差的线性外插法,或通过至少部分地基于与电源和/或供应电压相关联的非线性斜坡曲线的非线性外插法来确定POR信号延迟。
因此,通过采用本文描述的系统和方法,本公开的实施例能够在所有可能的功率斜坡电平和序列期间为PLD和/或用户设备的其他部件提供灵活和可靠的保护。
另外的实施例可以包括一种制品,该制品包括被耦接以接收POR信号的集成电路和具有标称操作电压(正常条件下在有界变化内的预期操作电压)的电源;自适应POR信号发生器,包括用于检测电源已经变为活动状态并且测量电源的供应电压(或者从电源电压得到的斜坡电压)从低的第一阈值斜坡电压斜坡到较高的第二阈值斜坡电压的斜坡时间的逻辑,其中低的第一阈值斜坡电压和较高的第二阈值斜坡电压两者都小于标称操作电压,并且该逻辑被配置为在基于斜坡时间的POR信号延迟之后生成POR信号以供集成电路接收。在一些实施例中,POR信号延迟可以基于较高的第二阈值斜坡电压和电源的标称操作电压之间的差。
另外的实施例还可以包括一种方法,该方法包括:由电压比较器比较从斜坡供应电压导出的斜坡电压,以检测斜坡电压何时达到较低的第一阈值斜坡电压和较高的第二阈值斜坡电压,这两个阈值斜坡电压都小于电源的标称操作电压;使用斜坡电压达到较低的第一阈值斜坡电压和达到较高的第二阈值斜坡电压之间的斜坡时间来调节POR信号的生成,该POR信号被提供给被耦接以接收供应电压的电路。
另外的实施例还可以包括集成电路,该集成电路包括对信号中的转变进行计数的计数器;振荡器,其被耦接以向计数器输出时钟信号;电压比较器,其耦接到电源,用于在第一时间点和第二时间点比较参考电压和与电源的瞬时供应电压相关的斜坡电压,以检测供应电压(或从供应电压导出的斜坡电压)何时达到低的第一阈值斜坡电压和高的第二阈值斜坡电压;控制逻辑,其耦接到该电压比较器和该计数器,该控制逻辑被配置为当该电源或斜坡电压达到低的第一阈值斜坡电压时,响应于向该计数器输出信号,使该计数器开始计数,并且当该电源或斜坡电压达到较高的第二阈值斜坡电压时,响应于向该计数器输出信号,使该计数器停止计数;并且使用计数器的结果值来将POR信号的解除延迟一段时间,该段时间是在电源或斜坡电压达到较高的第二阈值斜坡电压和供应电压达到标称操作电压之间预期经过的时间。
另外的实施例还可以包括执行一种方法的集成电路,该方法包括估计从初始电压斜坡到标称操作电压的供应电压的转换或斜坡率,该估计在供应电压已经达到标称操作电压之前执行;在基于估计的斜坡率和达到标称操作电压所需的电压增加的其余量确定的时间段过去之后,生成POR信号。另外的实施例还可以包括由集成电路执行的方法,该方法包括估计从初始电压斜变到标称操作电压的供应电压的斜坡率,该估计在供应电压已经达到标称操作电压之前执行;在基于估计的斜坡率和达到标称操作电压所需的电压增加的其余量确定的时间段过去之后,提供POR信号。
在适用的情况下,可以使用硬件、软件或硬件和软件的组合来实现本公开提供的各种实施例。此外,在适用的情况下,在不背离本公开的精神的情况下本文阐述的各种硬件部件和/或软件部件都可以组综合包括软件、硬件和/或两者的复合部件。在适用的情况下,本文阐述的各种硬件部件和/或软件部件可以在不背离本公开的精神的情况下被分成包括软件、硬件或两者的子部件。此外,在适用的情况下,设想软件部件可以被实现为硬件部件,反之亦然。
根据本公开的软件,诸如非暂时性指令、程序代码和/或数据,可以存储在一个或多个非暂时性机器可读介质上。还可以设想,可以使用一个或多个联网的和/或其他方式的通用或专用计算机和/或计算机系统来实现本文所识别的软件。在适用的情况下,本文描述的各种步骤的顺序可以改变、组综合复合步骤和/或分成子步骤以提供本文描述的特征。
上述实施例说明但不限制本发明。还应理解,根据本发明的原理,许多修改和变化是可能的。因此,本发明的范围仅由以下权利要求来限定。

Claims (20)

1.一种自适应上电复位(POR)信号发生器,包括:
斜坡电压选择器,被配置为监测由电源提供的供应电压并且至少部分地基于所监测的所述供应电压来生成斜坡电压;以及
逻辑设备,被配置为:
至少部分地基于由所述斜坡电压选择器提供的所述斜坡电压,检测跨第一阈值斜坡电压的第一供应电压斜坡遍历;
检测跨第二阈值斜坡电压的第二供应电压斜坡遍历,其中所述第二阈值斜坡电压高于所述第一阈值斜坡电压并且所述第一阈值斜坡电压和所述第二阈值斜坡电压低于与所述电源和/或所述供应电压相关联的标称操作电压;
至少部分地基于所述第一供应电压斜坡遍历与所述第二供应电压斜坡遍历之间的时间的量,确定生成POR信号的时间;以及
基于所述时间来生成所述POR信号。
2.根据权利要求1所述的自适应POR信号发生器,其中:
所述斜坡电压选择器包括电阻器旁路开关并且被配置为基于所述电阻器旁路开关的开关状态、根据所述第一阈值斜坡电压或所述第二阈值斜坡电压,来生成所述斜坡电压;以及
所述逻辑设备被配置为:
在检测所述第一供应电压斜坡遍历之前,通过轮询所述电阻器旁路开关的所述开关状态和/或打开所述电阻器旁路开关,来根据所述第一阈值斜坡电压配置所述斜坡电压选择器;以及
在所述检测到所述第一供应电压斜坡遍历之后和/或在所述检测到所述第二供应电压斜坡遍历之前,通过闭合所述电阻器旁路开关,来根据所述第二阈值斜坡电压配置所述斜坡电压选择器。
3.根据权利要求1所述的自适应POR信号发生器,还包括:
斜坡遍历检测器,被配置为从所述斜坡电压选择器接收所述斜坡电压并且向所述逻辑设备提供斜坡遍历信号;以及
计数器,被配置为从所述逻辑设备接收计数器控制信号,并且至少部分地基于由所述逻辑设备提供的所述计数器控制信号来递增和/或递减地计数;
其中所述检测所述第一供应电压斜坡遍历包括:
检测由所述斜坡遍历检测器生成的所述斜坡遍历信号中的对应于所述第一供应电压斜坡遍历的第一逻辑信号转变;以及
由所述计数器启动递增计数;以及
其中所述检测所述第二供应电压斜坡遍历包括:
检测由所述斜坡遍历检测器生成的所述斜坡遍历信号中的对应于所述第二供应电压斜坡遍历的第二逻辑信号转变;以及
在对应于所述第一供应电压斜坡遍历与所述第二供应电压斜坡遍历之间的所述时间的量的斜坡时间计数处,停止所述计数器的所述递增计数。
4.根据权利要求3所述的自适应POR信号发生器,还包括参考电压发生器,所述参考电压发生器被配置为向所述斜坡遍历检测器提供参考电压,其中由所述斜坡遍历检测器生成所述斜坡遍历信号包括:
确定由所述斜坡电压选择器生成的所述斜坡电压大于或等于由所述参考电压发生器生成的所述参考电压,其中所述参考电压低于与所述电源和/或所述供应电压相关联的所述标称操作电压;以及
生成所述斜坡遍历信号中的第一逻辑信号转变。
5.根据权利要求3所述的自适应POR信号发生器,其中所述生成所述POR信号包括:
由所述计数器从所述斜坡时间计数开始,启动递减计数;以及
当所述递减计数达到零时生成所述POR信号。
6.根据权利要求5所述的自适应POR信号发生器,还包括:
振荡器,被配置为从所述逻辑设备接收时钟控制信号,并且至少部分地基于由所述逻辑设备提供的所述时钟控制信号向所述计数器提供时钟信号;
其中由所述计数器启动所述递增计数包括:
生成所述计数器控制信号以控制所述计数器递增地计数;以及
生成所述时钟控制信号以使能所述振荡器并且控制所述振荡器向所述计数器提供所述时钟信号;以及
其中由所述计数器启动所述递减计数包括:
生成所述计数器控制信号以控制所述计数器从所述斜坡时间计数开始递减地计数;以及
生成所述时钟控制信号以使能所述振荡器并且控制所述振荡器向所述计数器提供修改的时钟信号,其中所述修改的时钟信号包括至少部分地基于所述标称操作电压和所述第一供应电压斜坡遍历与所述第二供应电压斜坡遍历之间的所述时间的量的频率。
7.根据权利要求1所述的自适应POR信号发生器,其中生成所述POR信号的时间的确定,还基于所述第二阈值电压与所述标称操作电压之间的电压差。
8.根据权利要求1所述的自适应POR信号发生器,其中生成所述POR信号的时间在所述供应电压在所述第二阈值斜坡电压与所述标称操作电压之间的电压电平处时被确定,并且其中所述逻辑设备被配置为:
通过至少部分地基于线性供应电压斜坡率以及所述标称操作电压与所述第二阈值斜坡电压之间的电压差的线性外插、或通过至少部分地基于与所述电源和/或所述供应电压相关联的非线性斜坡曲线的非线性外插,来确定生成所述POR信号的时间。
9.一种可编程逻辑设备(PLD),包括根据权利要求1所述的自适应POR信号发生器,其中:
所述PLD包括PLD结构、可编程输入/输出(I/O)接口和/或配置引擎,所述可编程输入/输出(I/O)接口被配置为通过耦接到所述PLD的外部总线与用户设备和/或与所述PLD分离的半导体设备接口连接,所述配置引擎被配置为管理所述配置引擎、所述PLD结构和/或所述可编程I/O接口的配置和/或它们之间的通信;
所述PLD被配置为接收通过耦接在所述PLD与所述电源之间的功率总线提供的所述供应电压;
所述自适应POR信号发生器与所述PLD集成,并且被配置为接收通过所述功率总线向所述PLD提供的所述供应电压,并且将所生成的对应的所述POR信号提供给所述PLD结构、所述可编程I/O接口和/或所述PLD的配置引擎,并且解除所述PLD结构、所述可编程I/O接口和/或所述PLD的配置引擎的一个或多个复位状态。
10.一种用户设备,包括根据权利要求1所述的自适应POR信号发生器,其中:
所述用户设备包括所述电源、可编程逻辑设备(PLD)、通信模块、计算元件和/或被配置为实现用于以下项的用户接口、传感器或换能器和/或通信总线的至少一部分的设备模块:智能电话、膝上型计算机、平板计算机、台式计算机、智能环境传感器、家庭自动化设备、网络管理设备、智能显示器或电视和/或汽车用户接口;
所述自适应POR信号发生器与所述用户设备和/或所述用户设备的元件集成,并且被配置为接收通过耦接在所述自适应POR信号发生器与所述电源之间的功率总线提供的所述供应电压,以及向所述PLD、所述通信模块、所述计算元件和/或所述设备模块提供所生成的所述POR信号,以及解除所述PLD、所述通信模块、所述计算元件和/或所述设备模块的一个或多个复位状态。
11.一种半导体设备,包括根据权利要求1所述的自适应POR信号发生器,其中:
所述半导体设备包括由所述电源服务的一个或多个功率域;
所述一个或多个功率域被配置为接收通过耦接在所述半导体设备和所述电源之间的功率总线提供的所述供应电压;
所述自适应POR信号发生器与所述半导体设备集成,并且被配置为接收通过所述功率总线向所述半导体设备提供的所述供应电压,并且向所述半导体设备的所述一个或多个功率域提供所生成的所述POR信号,并且解除所述半导体设备的所述一个或多个功率域的一个或多个复位状态。
12.一种方法,其包括:
至少部分地基于斜坡电压,检测跨第一阈值斜坡电压的第一供应电压斜坡遍历,所述斜坡电压由斜坡电压选择器至少部分地基于供应电压来生成,所述供应电压由电源提供并且由所述斜坡电压选择器监测;
检测跨第二阈值斜坡电压的第二供应电压斜坡遍历,其中所述第二阈值斜坡电压高于所述第一阈值斜坡电压,并且所述第一阈值斜坡电压和所述第二阈值斜坡电压低于与所述电源和/或所述供应电压相关联的标称操作电压;以及
至少部分地基于所述第一供应电压斜坡遍历与所述第二供应电压斜坡遍历之间的时间的量,确定生成POR信号的时间;以及
基于所述时间来生成所述POR信号。
13.根据权利要求12所述的方法,其中:
所述斜坡电压选择器被配置为基于向所述斜坡电压选择器提供的斜坡电压选择信号、根据所述第一阈值斜坡电压或所述第二阈值斜坡电压,来生成所述斜坡电压;以及
所述方法包括:
在检测到所述第一供应电压斜坡遍历之前,根据所述第一阈值斜坡电压配置所述斜坡电压选择器;以及
在所述检测到所述第一供应电压斜坡遍历之后和/或在所述检测到所述第二供应电压斜坡遍历之前,根据所述第二阈值斜坡电压配置所述斜坡电压选择器。
14.根据权利要求12所述的方法,其中所述检测所述第一供应电压斜坡遍历包括:
由斜坡遍历检测器至少部分地基于由所述斜坡电压选择器生成的所述斜坡电压来生成斜坡遍历信号;
检测由所述斜坡电压选择器生成的所述斜坡遍历信号中的对应于所述第一供应电压斜坡遍历的第一逻辑信号转变;以及
由计数器启动递增计数。
15.根据权利要求14所述的方法,其中所述生成所述斜坡遍历信号包括:
确定由所述斜坡电压选择器生成的所述斜坡电压大于或等于由耦接到所述斜坡遍历检测器的参考电压发生器生成的参考电压,其中所述参考电压低于与所述电源和/或所述供应电压相关联的所述标称操作电压;以及
生成所述斜坡遍历信号中的所述第一逻辑信号转变。
16.根据权利要求14所述的方法,其中所述检测所述第二供应电压斜坡遍历包括:
检测由所述斜坡遍历检测器生成的斜坡遍历信号中的对应于所述第二供应电压斜坡遍历的第二逻辑信号转变;以及
在对应于所述第一供应电压斜坡遍历与所述第二供应电压斜坡遍历之间的所述时间的量的斜坡时间计数处,停止所述计数器的所述递增计数。
17.根据权利要求16所述的方法,其中所述生成POR信号包括:
由所述计数器从所述斜坡时间计数开始并且根据修改的时钟信号启动递减计数;以及
当所述递减计数达到零时生成所述POR信号。
18.根据权利要求12所述的方法,其中生成所述POR信号的所述时间还基于所述第二阈值电压与所述标称操作电压之间的电压差来确定。
19.根据权利要求12所述的方法,其中生成所述POR信号的时间在所述供应电压在所述第二阈值斜坡电压与所述标称操作电压之间的电压电平处时被确定,并且其中确定生成所述POR的时间包括:
通过至少部分地基于线性供应电压斜坡率、和标称操作电压与第二阈值斜坡电压之间的电压差的线性外插、或者通过至少部分地基于与所述电源和/或所述供应电压相关联的非线性斜坡曲线的非线性外插,确定生成所述POR信号的时间。
20.根据权利要求12所述的方法,还包括:
经由耦接在所述电源和可编程逻辑设备(PLD)、通信模块、计算元件、设备模块和/或半导体设备之间的功率总线接收所述供应电压;以及
向所述PLD、所述通信模块、所述计算元件、所述设备模块和/或所述半导体设备的一个或多个功率域提供所述生成的POR信号,并且解除以下项的一个或多个复位状态:所述PLD、所述通信模块、所述计算元件、所述设备模块和/或所述半导体设备的一个或多个功率域。
CN202080095801.4A 2019-12-06 2020-12-05 自适应上电复位发生器系统和用于可编程逻辑设备的方法 Active CN115053200B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962944457P 2019-12-06 2019-12-06
US62/944,457 2019-12-06
PCT/US2020/063508 WO2021113787A1 (en) 2019-12-06 2020-12-05 Adaptive power-on-reset generator systems and methods for programmable logic devices

Publications (2)

Publication Number Publication Date
CN115053200A CN115053200A (zh) 2022-09-13
CN115053200B true CN115053200B (zh) 2025-10-28

Family

ID=76222682

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080095801.4A Active CN115053200B (zh) 2019-12-06 2020-12-05 自适应上电复位发生器系统和用于可编程逻辑设备的方法

Country Status (4)

Country Link
US (1) US11907033B2 (zh)
EP (1) EP4070175B1 (zh)
CN (1) CN115053200B (zh)
WO (1) WO2021113787A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113556111B (zh) * 2021-09-15 2024-07-05 浙江威固信息技术有限责任公司 基于fpga的上电复位电路及上电复位方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103677189A (zh) * 2012-09-25 2014-03-26 瑞萨电子株式会社 半导体装置
CN109906556A (zh) * 2019-01-22 2019-06-18 香港应用科技研究院有限公司 具有校准电路的占空比控制器

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5675824A (en) * 1992-09-30 1997-10-07 Intel Corporation Programmable logic having selectable output voltages
US5602502A (en) 1995-09-29 1997-02-11 Intel Corporation Circuit for detecting when a supply output voltage exceeds a predetermined level
US5774733A (en) * 1995-10-03 1998-06-30 Microchip Technology Incorporated Microcontroller with analog front-end for providing intelligent battery management
KR100253076B1 (ko) 1997-05-02 2000-05-01 윤종용 순차 로직들을 위한 파워-온 리셋 회로(power-on reset circuit for sequential logics)
US7015732B1 (en) * 2004-01-05 2006-03-21 National Semiconductor Corporation Power-on reset circuit with low standby current and self-adaptive reset pulse width
US7268598B2 (en) 2004-09-30 2007-09-11 Broadcom Corporation Method and system for providing a power-on reset pulse
KR100636933B1 (ko) 2004-11-15 2006-10-19 주식회사 하이닉스반도체 파워 온 리셋 회로
US7295051B2 (en) * 2005-06-15 2007-11-13 Cypress Semiconductor Corp. System and method for monitoring a power supply level
US7403051B1 (en) * 2006-01-26 2008-07-22 Xilinx, Inc. Determining voltage level validity for a power-on reset condition
US7348815B2 (en) 2006-05-01 2008-03-25 Taiwan Semiconductor Manufacturing Co., Ltd. All-digital power-on reset device
US7873854B2 (en) * 2007-10-01 2011-01-18 Silicon Laboratories Inc. System for monitoring power supply voltage
US8198925B1 (en) 2008-12-12 2012-06-12 Marvell International Ltd. Digital power on reset
JP4866929B2 (ja) * 2009-03-11 2012-02-01 ザインエレクトロニクス株式会社 パワーオンリセット回路
US9515648B2 (en) * 2010-03-26 2016-12-06 Sandisk Technologies Llc Apparatus and method for host power-on reset control
US8410833B2 (en) 2011-02-28 2013-04-02 Advanced Micro Devices, Inc. On-chip power-up control circuit
US8604847B2 (en) * 2012-05-03 2013-12-10 Texas Instruments Incorporated Detection of fast supply ramp in reset circuit
JP6392593B2 (ja) * 2014-09-04 2018-09-19 ローム株式会社 保護スイッチ回路、充電回路、電子機器
US10193545B1 (en) * 2017-08-28 2019-01-29 Silicon Laboratories Inc. Power-on reset system for secondary supply domain
US10651840B2 (en) * 2018-04-16 2020-05-12 Analog Devices Global Unlimited Company Low quiescent current power on reset circuit

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103677189A (zh) * 2012-09-25 2014-03-26 瑞萨电子株式会社 半导体装置
CN109906556A (zh) * 2019-01-22 2019-06-18 香港应用科技研究院有限公司 具有校准电路的占空比控制器

Also Published As

Publication number Publication date
CN115053200A (zh) 2022-09-13
US20220291731A1 (en) 2022-09-15
EP4070175A1 (en) 2022-10-12
US11907033B2 (en) 2024-02-20
EP4070175B1 (en) 2025-05-14
WO2021113787A1 (en) 2021-06-10
EP4070175A4 (en) 2024-01-03

Similar Documents

Publication Publication Date Title
US7937601B2 (en) Programmable system on a chip
TWI619012B (zh) 溫度管理電路、包含該電路的系統晶片以及管理溫度的方法
US7521960B2 (en) Integrated circuit including programmable logic and external-device chip-enable override control
US20080030235A1 (en) Clock-generator architecture for a programmable-logic-based system on a chip
US9407264B1 (en) System for isolating integrated circuit power domains
CN101192825A (zh) 半导体装置
US11316521B2 (en) Power supply regulation for programmable logic devices
CN115053200B (zh) 自适应上电复位发生器系统和用于可编程逻辑设备的方法
CN108121224B (zh) 用于集成电路的电压调节控制的装置以及方法
CN115428340B (zh) 用于可编程逻辑器件的输入/输出总线保护系统和方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant