用于SOC通电排序的系统和方法与流程

文档序号:28501798发布日期:2022-01-15 05:00阅读:247来源:国知局
用于SOC通电排序的系统和方法与流程
用于soc通电排序的系统和方法
技术领域
1.各种实施例大体涉及集成电路设备,并且更具体地,涉及包括电源管理电路的设备,该电源管理电路可以在通电期间管理提供给片上系统(soc)的多个电源。


背景技术:

2.可编程集成电路(ic)是指一种包括可编程电路的ic。可编程ic的一个例子是现场可编程门阵列(fpga)。fpga的特点是包含可编程电路块。可编程电路块的示例包括但不限于输入/输出块(iob)、可配置逻辑块(clb)、专用随机存取存储器块(bram)、数字信号处理块(dsp)、处理器、时钟管理器、和延迟锁定环路(dll:delay lock loop)。
3.通过将配置数据(有时称为配置位流)加载到设备中,电路设计可以在可编程ic的可编程电路中物理实现。配置数据可以被加载到设备的内部配置存储单元中。各个配置存储单元的集体状态决定了可编程ic的功能。例如,一旦加载了配置数据,各种可编程电路块执行的特定操作以及可编程ic的可编程电路块之间的连接性由配置存储单元的集体状态来确定。


技术实现要素:

4.装置和相关联的方法涉及片上系统(soc)级别的整合通电复位系统(pors)。在说明性示例中,集成电路可以包括第一电源域和第二电源域。电平移位电路可以被耦接以将数据从第一电源域转换到第二电源域。pors包括电压检测电路、毛刺滤波器电路和逻辑门,pors可以被配置为在第一电源域和第二电源域之间产生隔离信号。启用电平移位电路以响应产生的隔离信号。通过使用隔离信号,可以在通电期间对ic上的多个电源域进行综合管理,以避免运行不稳定。
5.各种实施例可以实现一个或多个优点。例如,在通电期间,可以控制具有不同斜坡率的电源,这可以显著地减少或消除芯片上的争用电流(contention current)和/或不同电源域之间的噪声耦接。在一些实施例中,可以显著地减少或消除由多个电压跨域不足和巨大电流浪涌引起通电期间芯片的损坏。在一些实施例中,在可编程逻辑(pl)获得通电复位(por)信号之前,隔离信号可以达到高可用性无缝冗余协议(hsr)。当意外的por/复位事件发生时,可通过相对于隔离信号延迟por信号来防止io毛刺。在一些实施例中,pl和片上网络(noc)块电源之间的隔离信号可能由于pl断电而延迟(例如,100ns),这可以显著地降低耦接到noc块的噪声。一些实施例可以对用于寄存器传输级(rtl)验证增强的por电压检测模型提供电源感知支持。一些实施例可以减少总的通电时间,并且一些实施例可以通过片上电压的生成来提高pl结构的性能。一些实施例还可提供pmc深度睡眠模式以降低系统级功耗。在一些实施例中,在知道所有pl电源(vccint、vccint_ram、vccaux)在正常模式期间从系统监控(sysmon)/模拟混频器信号(ams)启动之后,可以使用跳过26ms计数器的依赖于固件(fm)的skip_por_cnt来生成por_pl_b信号以最小化总通电时间。一些实施例可以提供跨越多个电源域的平滑边界扫描链。
6.在一个示例性方面,集成电路(ic)包括由第一电源域供电的第一区域、由第二电源域供电的第二区域。第一电平移位电路被耦接以将第一数据从第一电源域转换到第二电源域,并且第二电平移位电路被耦接以将第二数据从第二电源域转换到第一电源域。该ic还包括通电复位系统(pors)。pors包括电压检测电路,用于检测第一电源域和第二电源域的电压。控制电路被耦接到第一电平移位电路和第二电平移位电路,并且被配置成响应于检测到的第一电源域和第二电源域的电压,产生用于控制第一电平移位电路的第一隔离信号和用于控制第二电平移位电路的第二隔离信号。
7.在一些实施例中,pors还可以包括耦接到电压检测电路以指示第二电源域的电压变化的毛刺滤波器电路。当第二电源域的电压变化超过预定时间段时,控制电路可以被配置为在禁用第一电平移位电路之后的第一预定延时禁用第二电平移位电路。在一些实施例中,控制电路还可以被配置为在禁用第二电平移位电路之后的第二预定延时释放通电复位信号以复位第二电源域。
8.在一些实施例中,控制电路可以被配置为在禁用第二电平移位电路之后的第二预定延时释放通电复位信号以复位第二电源域。第二区域可以设置在ic不与第一区域重叠的部分中。第一区域可以包括平台管理控制器(pmc),其被配置为作为主电源并提供ic的电源管理。第二区域可以包括可编程逻辑(pl)块。第二区域可以包括处理器系统(ps)。在一些实施例中,集成电路还可包括由第三电源域供电的第三区域。第三电平移位电路可以被耦接以将第三数据从第二电源域转换到第三电源域,以及第四电平移位电路可以被耦接以将第四数据从第三电源域转换到第二电源域。电压检测电路还可以用于检测第一电源域、第二电源域、和第三电源域的电压。控制电路还可以被耦接到第三电平移位电路和第四电平移位电路,并且被配置为响应于检测到的第一电源域、第二电源域和第三电源域的电压,产生用于控制第三电平移位电路的第三隔离信号和用于控制第四电平移位电路的第四隔离信号。在一些实施例中,第三区域可以包括数据处理引擎(dpe)阵列。
9.在另一个示例性方面,方法包括由第一电源域为第一区域供电并且由第二电源域为第二区域供电。第一电平移位电路被耦接以将第一数据从第一电源域传输到第二电源域,以及第二电平移位电路被耦接以将第二数据从第二电源域传输到第一电源域。该方法还包括检测第一电源域和第二电源域的电压,并响应于检测到的第一电源域和第二电源域的电压产生用于控制第一电平移位电路的第一隔离信号和用于控制第二电平移位电路的第二隔离信号。
10.在一些实施例中,当第二电源域的电压变化超过预定时间段时,该方法可以包括使用第一隔离信号来禁用第一电平移位电路,在禁用第一电平移位电路之后的第一预定延时,使用第二隔离信号来禁用第二电平移位电路,以及在禁用第二电平移位电路之后的第二预定延时,释放通电复位信号以复位第二电源域。
11.在一些实施例中,第二区域被设置在ic不与第一区域重叠的部分中。第一区域可以包括平台管理控制器(pmc),其被配置成作为主电源并提供ic的电源管理。在一些实施例中,第二区域可以包括处理器系统。在一些实施例中,第二区域可以包括扩展性能i/o块(xpio)。第二区域可以包括可编程逻辑(pl)块。
12.在一些实施例中,该方法还可以包括(1)由第三电源域为第三区域供电,第三电平移位电路被耦接以将第三数据从第二电源域传输到第三电源域,以及第四电平移位电路被
耦接以将第四数据从第三电源域传输到第二电源域,(2)检测第一电源域、第二电源域和第三电源域的电压,以及(3)响应于检测到的第一电源域、第二电源域和第三电源域的电压,产生用于控制第三电平移位电路的第三隔离信号和用于控制第四电平移位电路的第四隔离信号。
13.在一些实施例中,当第三电源域的电压变化超过预定时间段时,该方法还可以包括(4)使用第三隔离信号禁用第三电平移位电路,(5)在禁用第三电平移位电路之后的第三预定延时,使用第四隔离信号禁用第四电平移位电路,以及,(6)在禁用第四电平移位电路之后的第四预定延时,释放通电复位信号以复位第三电源域。在一些实施例中,第三区域可以包括数据处理引擎(dpe)阵列。
14.在附图和下面的描述中阐述了各种实施例的细节。其他特征和优点在描述和附图以及权利要求中是显而易见的。
附图说明
15.图1描述了可在其上实现所公开的电路和过程的示例性可编程集成电路;
16.图2描述了具有片上系统(soc)级别的通电复位系统(pors)示例性集成电路;
17.图3a描述了在ic上不同电源域的示例性示意图;
18.图3b描述了可编程逻辑(pl)的互连块电源域和xpio电源域之间的示例性接口架构;
19.图4描述了在ic上通电复位系统的示例性架构;
20.图5描述了与pors生成的示例性隔离信号相关的数据表;
21.图6描述了在ic电源域之间协调电源转换示例性方法的流程图;
22.各图中相同的参考符号表示相同的元件。
具体实施方式
23.为了便于理解,本文组织如下。首先,参考图1简要介绍了一种示例性平台(例如,fpga),用于在通电瞬态条件下,全面管理跨电源域的信号隔离。其次,参考图2-4,本文转而介绍示例性通电复位系统(pors)如何用于在不同电源域之间生成隔离信号。然后,参考图5,本文公开了由通电复位系统(pors)生成的示例性隔离信号。最后,参考图6,本文公开了一种示例性方法,用于在ic的电源域之间协调电源转换。通过使用通电复位系统(pors),可以在通电期间管理片上系统(soc)的多个电源,从而可以显著减少或消除芯片上的争用电流。
24.图1描绘了可在其上实施所公开的电路和过程的示例性可编程集成电路(ic)。可编程ic 100包括fpga逻辑。可编程ic 100可以用各种可编程资源来实现并且可以被称为片上系统(soc)。fpga逻辑的各种示例可以包括阵列中的几种不同类型的可编程逻辑块。
25.例如,图1示出了可编程ic 100,其包括大量不同的可编程单元块(programmable tile),可编程单元块包括多千兆位收发器(mgt)101、可配置逻辑块(clb)102、随机存取存储器块(bram)103、输入/输出块(iob)104、配置和时钟逻辑(config/clocks)105、数字信号处理块(dsp)106、专用输入/输出块(i/o)107(例如,时钟端口)和其他可编程逻辑108(例如,数字时钟管理器、模数转换器、系统监控逻辑)。可编程ic 100包括专用处理器块(proc)
110。可编程ic 100可以包括内部和外部重新配置端口(未示出)。
26.在各种示例中,串行器/解串器(serializer/deserializer)可以通过使用mgt 101来实现。mgt 101可以包括各种数据串行器和解串器。数据串行器可以包括各种多路复用器实现例。数据解串器可以包括解复用器的实现。
27.在fpga逻辑的一些示例中,每个可编程单元块包括可编程互连元件(int)111,该可编程互连元件111具有去往和来自每个相邻单元块中的对应互连元件的标准连接124。因此,可编程互连元件一起实现用于示出的fpga逻辑的可编程互连结构。可编程互连元件int111包括去往和来自相同单元块中的的可编程逻辑元件的内部连接(intra-connection)120,如包括图1中的示例所示。可编程互连元件int 111包括去往和来自相同单元块中的可编程互连元件int 111的int之间的互连122,如图1中的示例所示。
28.例如,clb 102可以包括可配置逻辑元件(cle)112,该可配置逻辑元件112可以被编程以连同单个可编程互连元件int 111实现用户逻辑。bram 103可以包括bram逻辑元件(brl)113和一个或多个可编程互连元件。在一些示例中,单元块中包括的互连元件的数量可以取决于单元块的高度。在图示的实施方案中,bram单元块具有与五个clb相同的高度,但也可以是其他数量(例如,四个)。dsp单元块106可以包括dsp逻辑元件(dspl)114和一个或多个可编程互连元件。例如,iob 104可以包括输入/输出逻辑元件(iol)115的两个实例和可编程互连元件int 111的一个实例。例如,被连接到i/o逻辑元件115的实际上的i/o焊盘可以使用金属制造,该金属层叠于各种所示的逻辑块上方,并且可以不限于输入/输出逻辑元件115的区域。
29.在图示的实现方案中,靠近管芯中心的柱状区域(图1中的阴影所示)被用于配置、时钟和其他控制逻辑。从列延伸的水平区域109在可编程ic 100的宽度上分配时钟和配置信号。注意,对“柱状”和“水平”区域的引用是相对于以纵向方向查看图形的。
30.利用图1示出的架构的一些可编程ic可包括其他的逻辑块,该其他逻辑块会破坏构成可编程ic的规则的柱状结构。其他逻辑块可以是可编程块和/或专用逻辑。例如,图1所示的处理器块proc 110横跨几列clb 102和bram 103。
31.图1示出了可编程ic架构的示例。列中逻辑块的数量、列的相对宽度、列的数量和顺序、列中包含的逻辑块类型、逻辑块的相对大小以及互连/逻辑实现例仅作为示例提供的。例如,在实际可编程ic中,无论clb 102出现在哪里,都可以包括多于一个相邻列的clb102,以促进用户逻辑的有效实现。
32.可编程逻辑(pl)和处理器系统(ps)可以集成在单个芯片中以具有全面的功能。例如,单个芯片可以在通信系统、医疗设备和视觉领域中实现。单个芯片可以具有多个电源域。例如,任何/所有电源的不同斜坡率可能导致耦接噪声和争用电流。通电复位系统(pors)可以在通电期间用于管理不同电源域之间的信号传输,不同电源域由单个芯片的多个电源可操作地供电。
33.图2描述了具有片上系统(soc)级别的通电复位系统(pors)的示例性集成电路。在所描述的示例中,通信系统200包括基站205。基站205可以用于从手机210发送和接收模拟信号。基站205包括集成电路(ic)215,以便在基站205和手机210之间进行数据通信。ic 215还可以用于通过使用由多个电源域分别供电的独立电路来进行数据处理。在各种实施例中,例如,多个电源域可以由单独的、独立的电压调节器供电。例如,各种实施例可以是由公
共调节器通过独立电路路径供电的单独域,并且可以具有单独的电感滤波或电容滤波。
34.在所描述的示例中,ic 215被实现为片上系统(soc)类型的设备。一般而言,soc是指包含两个或多个能够相互交互的子系统的ic。作为示例,soc可以包括执行程序代码的处理器和一个或多个其他电路。其他电路可以被实现为硬连线电路、可编程电路、其他子系统和/或它们的任何组合。这些电路可以相互协作和/或与处理器协作。在所描述的示例中,soc包括数据处理引擎(dpe)阵列220。dpe阵列220可以包括一个或多个dpe。例如,dpe可以包括数学引擎(me)。
35.出于说明的目的,ic 215包括可编程逻辑(pl)230。pl 230是可以被编程以执行特定功能的电路。作为示例,pl 230可以被实现为现场可编程门阵列(fpga)电路。pl 230可以包括可编程电路块阵列。pl 230内的可编程电路块的示例包括但不限于互连块231、pl接口块232、可配置逻辑块(clb)、专用随机存取存储器块(bram)、数字信号处理块(dsp)、时钟管理器和/或延迟锁定循环(dll)。在图2的例子中,pl 230被显示为两个单独的部分。在另一个示例中,pl 230可以被实现为可编程电路的统一区域。在又一示例中,pl 230可以被实现为多于两个不同的可编程电路区域。pl 230的特定组织并非旨在作为限制。在一些实施例中,pl 230可以包括一些可编程电路块。pl 230内的每个可编程电路块可以包括可编程互连电路(例如,互连块231)和可编程逻辑电路。可编程互连电路可以包括通过可编程互连点(pip)互连的大量不同长度的互连线。互连线被配置(例如,以每条线为基础)提供以每位(bit)为基础的连接性(例如,其中每条线传送一位信息)。可编程逻辑电路使用可编程元件实现用户设计的逻辑,可编程元件可以包括例如查找表、寄存器、算术逻辑等等。可编程互连(例如,互连块231)和可编程逻辑电路可以通过将配置数据加载到定义可编程元件如何配置和操作的内部配置存储单元中来编程。
36.在一些实施例中,可能需要多个电源来为ic 215中的不同pl资源供电。不同的资源可以在不同的电压电平下操作以提高性能或信号强度,同时保持对噪声和寄生效应的增强的抗扰度。例如,互连块231可以在v
ccint
电源域下运行。因此,pl接口232可用于在不同电压域之间进行接口。参考图3b,更详细地描述pl接口架构的示例。
37.ic 215还包括被实施为硬连线电路的处理器系统(ps)235,该硬连线电路被制造为ic215的一部分。ps 235可以被实现为,或包括,多种不同处理器类型中的任何一种。例如,ps 235可以被实现为单独的处理器,例如能够执行程序代码的单核。在另一示例中,ps 235可以被实现为多核处理器。在又一示例中,ps 235可以包括一个或多个核、模块、协处理器、接口和/或其他资源。ps 235可以通过使用多种不同类型的架构中的任何一种来实现。可用于实现ps 235的示例架构包括但不限于arm处理器架构、x86处理器架构、risc架构、gpu架构、移动处理器架构、dsp架构、能够执行计算机可读指令或程序代码的其他适合的架构。在一些实施例中,ps 235可以具有低电源域(lpd)和全电源域(fpd)。
38.ic 215还包括子系统,例如片上网络(noc)225,和/或任何硬连线电路块240、245、250、255和/或260。通过noc 225,dpe阵列220中的一个或多个dpe能够与ps和/或硬连线电路块255和260通信。例如,在一些实施例中,硬连线电路块255和260可以包括i/o(例如,扩展性能i/o(xpio)256)或存储器控制器(mc)。在一些实施例中,dpe阵列220中的一个或多个dpe能够经由片上系统(soc)接口块和pl 230而与硬连线电路块240、245、250通信。在一些实施例中,soc接口块可以直接耦接到ic 215的一个或多个子系统。例如,soc接口块可以直
接耦接到ps 235和/或其他硬连线电路块。在特定实施例中,硬连线电路块240-260可以被认为是asic的示例。
39.在描述的示例中,ps 235还包括平台管理控制器(pmc)265。pmc 265被设计为负责电源管理(例如,通电/断电、复位、隔离、iro时钟)的主电源。在一些实施例中,pmc 265本身可以是电源域,必须启动并且可用于启动ic 215和ic 215上的所有其他功能。其他电源域可以被设计为pmc电源域的从属电源域。例如,pl 230的电源(例如,互连块231的电源域)被设计为pmc 265电源的子集。在一些实施例中,例如,pl 230可以在与dpe阵列220和/或ps 235不同的参考电压和不同的时钟速度下运行。
40.pmc 265还包括通电复位系统(pors)270。pors 270被配置为电源域交叉生成多个隔离信号。pors 270还被配置为在检测到所有电源后,生成通电复位(por)信号和用于不同电源的电源状态信号。不同电源的电源状态信号可以指示不同电源域(例如,pl电源域、pmc电源域)的稳定性。参考图3a更详细地描述了在斜升和/或斜降期间控制ic中电源域之间的排序的pors的示例。
41.尽管在所描述的示例中,pors 270被布置在pmc 265中,但是在各种实施例中,pors270可以在不同的地方实现(例如,在可编程逻辑pl中)。
42.在一些实施例中,pors 270可以被实现为硬块固定电路。例如,专用集成电路(asic)可以提供pros 270,用于生成隔离信号和por信号。
43.在一些实施例中,pors 270的一些或全部功能可以在处理器(例如,ps 235)中实现,该处理器被配置为执行存储在数据存储器中的一组指令,以控制隔离信号和/或por信号的生成。处理器(例如,ps 235)和数据存储器可以与pl 230布置在相同的集成电路215上。在一些实施例中,处理器(例如,ps 235)和数据存储器可以在片上系统(soc)的可编程逻辑块(例如,pl 230)中或通过使用soc的固定电路在硬电路块中实现。
44.图3a描绘了ic上不同电源域的示例性示意图。在ic 215上的不同功能块可以在不同电压下操作,因此,ic 215可以包括几个电源域。例如,ps 235可以包括低电源域(lpd)和/或全电源域(fpd),noc 225可以具有不同的电源域,dpe阵列220可以具有另一个不同的电源域。在所描述的示例中,pmc 265本身就是一个电源域,必须启动并可用以启动ic 215和ic 215上的所有其他功能。
45.在该描述的示例中,ic 215包括第一电源域300a(由第一电压供电)和第二电源域300b(由第二电压供电)。第一电源域300a和第二电源域300b可以供电给一个或多个功能块。例如,在一些实施例中,dpe阵列220可由第一电源域300a供电。在一些实施例中,ps 235可由第一电源域300a供电。在一些实施例中,pl 230可由第一电源域300a供电。在一些实施例中,xpio 256可由第一电源域300a供电。在一些实施例中,noc 225可由第二电源域300b供电。在一些实施例中,dpe阵列220可由第二电源域300b供电。ic 215还包括接口电路300c,(例如,pl接口232),用于在pmc电源域300和第一电源域300a之间进行接口。在所描述的示例中,接口电路300c,(例如,pl接口232),还用于在第一电源域300a和第二电源域300b之间进行接口。在一些实施例中,其他接口电路可以用于在第一电源域300a和第二电源域300b之间进行接口。在一些实施例中,ic 215可以包括多个接口块,用于在相应的不同电源域之间进行接口。例如,图2中的dpe阵列220可以包括与noc 225通信的第一接口块和与互连块231通信的第二接口块。在其他示例中,ic 215可以包括许多不同的电源域(例如,超过
五个电源域)。
46.为了控制不同电源域之间的排序,pors 270可以接收不同电源域的电源状态(例如,电压)并处理以生成隔离信号从而应用于接口块,和/或生成电源-复位信号以复位一个或多个不同的电源域。例如,pors 270接收pmc电源域300的电源状态301(例如,电压)和第一电源域300a的第一电源状态302。接收的电源状态可由pors 270处理以生成隔离信号304a。隔离信号304a可以启用或禁用接口电路300c以开始两个电源域300、300a之间的数据传输。接口电路300c可包括多个电平移位电路,其可通过隔离信号304a禁用或启用以将数据从pmc电源域300转换到第一电源域300a或将数据从第一电源域300a转换到pmc电源域300。例如,当隔离信号处于高电平(例如,数字1)时,pmc电源域300和第一电源域300a之间的接口电路300c可以被启用。当隔离信号处于低电平(例如,数字0)时,两个电源域300、300a之间的接口电路300c可以被禁用。通过控制不同隔离信号之间的时延,可以控制不同电源域的通电和/或断电顺序。因此,可以有利地减少不同电源域之间的争用电流和/或噪声耦接。在该描述的示例中,pors 270还接收pmc电源域300的电源状态301(例如,电压)、第一电源域300a的第一电源状态302、和第二电源域300b的第二电源状态303。接收的功率状态可由pors 270处理以生成隔离信号304b。隔离信号304b可以启用或禁用接口电路300c以开始两个电源域300a、300b之间的数据传输。例如,当隔离信号处于高电平(例如,数字1)时,可以启用两个电源域300a、300b之间的接口电路300c。当隔离信号处于低电平(例如,数字0)时,可以禁用两个电源域300a、300b之间的接口电路300c。通过控制不同隔离信号之间的时延,可以控制不同电源域的通电和/或断电顺序。因此,可以有利地减少不同电源域之间的争用电流和/或噪声耦接。pors架构的示例将参考图4更详细地描述。
47.图3b描述了在可编程逻辑(pl)中的互连块电源域和xpio电源域之间的示例性接口架构。更具体地,在所描述的示例中,pl接口232能够在两个不同的电源域(例如,v
ccint
域和v
ccint_soc
域)之间进行接口。在这种情况下,pl接口232能够提供在互连块231的工作电压v
ccint
和ic 215中的其他电路(例如,noc 225和/或xpio 256)的工作电压v
ccint_soc
之间转换的接口。例如,其他电路可以包括noc、数学引擎(me)、低电源域(lpd)中的功能块和/或全电源域(fpd)中的功能块。在该描述的示例中,pl接口232包括第一电平移位器305,其被配置为将信号从soc电源域(例如,noc和xpio的电源域)转换为pl电源域并允许在soc电源域和pl电源之间的兼容性。第一电平移位器305由隔离信号iso_soc_pl_b 310控制。例如,可以基于隔离信号iso_soc_pl_b 310是数字1还是数字0来启用或禁用第一电平移位器305。
48.pl接口232包括第二电平移位器315,其被配置为将信号从pl电源域转换到soc电源域并允许pl电源域和soc电源域之间的兼容性。第二电平移位器315由隔离信号iso_pl_soc_b 320控制。隔离信号iso_soc_pl_b 310和iso_pl_soc_b 320可用作横跨芯片上pl电源域和soc电源域的电平移位器305/315中的门信号。隔离信号可以由pors 270生成。参考图4更详细地描述pors的示例。在一些实施例中,pl接口232和pl 230之间的连接在宽度上是可编程的(例如,可配置的)。例如,pl接口232和pl 230之间的连接可以被配置为宽度为32位、64位或128位。在该描述的示例中,pors 270还响应于预定的阈值(例如,v
ccint
域具有不小于例如40ns的电压变化(例如,毛刺))生成por信号por_pl_b复位v
ccint
域。pors 270还产生por信号por_int_b以复位互连块231。在一些实施例中,por信号por_int_b可晚于por信号por_pl_b产生(例如,大约3us)以保持在互连块231中的数据有足够的时间被其他功能
块接收。
49.图4描绘了ic上的通电复位系统的示例性架构。在该描述的示例中,pors 270包括第一电路405被配置为生成通电复位信号(例如,生成用于pl 230中的互连块的第一通电复位信号por_int_b、用于在pmc 265中存在的pl相关逻辑的第二通电复位信号por_pl_pmc_b,以及用于pl 230的第三通电复位信号por_pl_b)。
50.第一电路405包括第一电压检测电路410。第一电压检测电路410包括检测pl 230、ps 235和pmc 265的电源的通电检测器。在描述的例子中,第一电压检测电路410检测pl(例如互连块231)的内核供电电压v
ccint
、块bram的供电电压v
cc_ram
、pl辅助逻辑的辅助供电电压v
ccaux
、pmc 265的内核供电电压v
ccint_pmc
、以及pmc辅助逻辑的辅助供电电压v
ccaux_pmc
。然后,检测到的电压由第一毛刺滤波器电路415滤波以滤除例如大约40ns或更短的任何断电电源毛刺。然后,滤波后的电压由第一逻辑电路420a处理以生成通电复位信号por_int_b、por_pl_pmc_b和por_pl_b。por信号por_int_b可用于复位互连块231,并且por信号por_pl_b可用于复位整个v
ccint
域。
51.在所描述的示例中,第一逻辑电路420a包括第一逻辑与电路425。滤波后的电压全部由第一逻辑与电路425接收以产生第一与信号por_1。第一与信号por_1延时26ms或1us。选择电路(例如,双输入多路复用器)430用于接收26ms延时信号和1us延时信号。选择信号skip_por_cnt用于输出26ms延时信号或1us延时信号。用户可以通过使用选择信号skip_por_cnt在两个延时信号之间进行选择。然后,输出信号延时2ms以产生第一中间信号por_pl_pmc_b_src。2ms的延时可以帮助v
gg
稳定,v
gg
可以是互连块231的配置存储单元调节的供电电压。第一中间信号por_pl_pmc_b_src和硬件相关信号pl_ipor_b由双输入与门435接收以生成por_pl_pmc_b_buf_int信号。硬件相关信号pl_ipor_b是外部信号ext_por_b和外部测试信号(例如,联合测试动作组(jtag)模式)的函数。信号pl_ipor_b可以通过边界扫描来门控,并且边界扫描链可以跨越许多电源域。在一些实施例中,许多电源域的隔离控制可以由软件控制,并且pl和soc电源域可以与por_pl_b信号耦接。por_ipor_b信号可以控制por_pl_b信号以满足jtag要求。
52.然后处理por_pl_pmc_b_buf_int信号以产生通电复位信号por_int_b、por_pl_pmc_b和por_pl_b。更具体地,por_pl_pmc_b_buf_int信号由第一缓冲器440接收。第一缓冲的por_pl_pmc_b_buf_int信号在电源斜降期间延时3us。第一缓冲的por_pl_pmc_b_buf_int信号和3us延时的por_pl_pmc_b_src信号被第一双输入或门445接收以产生第一通电复位信号por_int_b。由第二缓冲器450接收por_pl_pmc_b_buf_int信号。例如,第二缓冲的por_pl_pmc_b_buf_int信号在电源斜降期间被延时大约200ns。第二缓冲的por_pl_pmc_b_buf_int信号和200ns延时的por_pl_pmc_b_buf_int信号由第二双输入或门455接收以产生第二通电复位信号por_pl_pmc_b。第二通电复位信号por_pl_pmc_b是在pmc电源域300中使用的内部por信号。然后第二通电复位信号por_pl_pmc_b由第三缓冲器460缓冲以产生第三通电复位信号por_pl_b。第三通电复位信号por_pl_b是内部por,它在所有内部pmc和pl检测器跳闸并且互连和配置存储单元准备好进行配置后释放。第三通电复位信号por_pl_b还可以确保存储单元的内部稳压电源(v
gg
)处于上升和稳定状态。
53.第一通电复位信号por_int_b是por_pl_b的延时版本,可用于避免断电期间的互连争用。
54.第二通电复位信号por_pl_pmc_b可以具有与第三通电复位信号por_pl_b相同的功能。
55.在这个描述的示例中,pors 270还包括第二电路465,其被配置为生成用于pl接口232的隔离信号。第二电路465包括第二电压检测电路470a。第二电压检测电路470a检测pmc的内核供电电压v
ccint_pmc
和pmc辅助逻辑的辅助供电电压v
ccaux_pmc
。然后第二检测电压由第二毛刺滤波器电路475a滤波。经滤波的第二电压然后由第二双输入与门480a处理以产生第二与信号por_2。第二与信号por_2由v
ccaux_pmc
电平移位器485a接收以产生第二中间信号init_pmc_aux_lvish_aux_n。然后,第二与信号por_2和外部通电复位信号ext_por_b由第三双输入与门480b接收以产生第三与信号pmc_raw_por_n。第三与信号pmc_raw_por_n可以用作整个ic 215的主通电复位信号。外部通电复位信号ext_por_b由用户释放以确认pmc电源是否斜升。在释放实际的内部por信号之前可能需要用户确认。在一些实施例中,第一与信号por_1和第二与信号por_2可由看门狗电路监控。当第一电压检测电路410和/或第二电压检测电路470a发生故障时,看门狗电路可以检测到故障并在外部强制第一与信号por_1和第二与信号por_2绕过第一电压检测电路410和/或第二电压检测电路470a以确保隔离信号的产生,第一与信号por_1和第二与信号por_2可以作为故障保护选项。
56.第二电路465还包括第三电压检测电路470b。第三电压检测电路470b检测ic 215中除pmc电源域300外所有电源域的电源状态。在该描述的示例中,第三电压检测电路470b检测noc 225或xpio 256的内核供电电压v
ccint_soc
、ps 235的低电源域v
cc_psintlp
、ps 235的全电源域v
cc_psintfp
、pl 230的内核供电电压v
ccint
、块bram的内部核心供电电压v
ccint_ram
和pl辅助逻辑的辅助供电电压v
ccaux
。例如,第三电压检测电路470b还可以检测dpe阵列220的供电状态。在该描绘的示例中,由第三电压检测电路470b检测的电压由第三毛刺滤波器电路475b滤波。所有滤波后的第三检测电压作为电源状态信号输出。滤波后的第三检测电压、第三与信号pmc_raw_por_n、第一控制信号ctrl_iso_pmc_pl、第二控制信号ctrl_iso_pl_soc和第一中间信号por_pl_pmc_b_src由第二逻辑电路420b处理以产生不同电源域之间的隔离信号。第一控制信号ctrl_iso_pmc_pl和第二控制信号ctrl_iso_pl_soc可以存储在片上控制寄存器中。例如,第一控制信号ctrl_iso_pmc_pl可以是基于寄存器的控制信号,以释放或隔离从pmc电源域(v
ccint_pmc
)到pl电源域(v
ccint
)的信号。例如,当控制信号ctrl_iso_pmc_pl处于高电平(例如,数字1),从pmc电源域(v
ccint_pmc
)到pl电源域(v
ccint
)的信号可以被隔离。当控制信号ctrl_iso_pmc_pl处于低电平(例如,数字0)时,从pmc电源域(v
ccint_pmc
)到pl电源域(v
ccint
)的信号可以被释放。第二控制信号ctrl_iso_pl_soc也可以是基于寄存器的控制信号以释放或隔离从pl电源域(v
ccint
)到noc/xpio电源域(v
ccint_soc
)的信号。可以类似地为在图4中未示出但在图5中列出的各种电源域交叉生成各种控制信号ctrl_iso_*。
57.在所描述的示例中,滤波的v
ccint
、第三与信号pmc_raw_por_n和反相的第一控制信号ctrl_iso_pmc_pl由三个输入的与门480c接收,以产生第四与信号。第四与信号是隔离信号iso_pl_pmc_b。隔离信号iso_pl_pmc_b可用于启用将数据从pl 230转换到pmc 265的电平移位器。隔离信号iso_pl_pmc_b也由第一v
ccint
电平移位器485b接收以产生隔离信号iso_pmc_pl_b。隔离信号iso_pmc_pl_b可通过启用将数据从pmc 265转换到pl 230的电平移位器。四输入与门480d接收经滤波的v
ccint
、经滤波的v
ccint_soc
、和反相的第二控制信号ctrl_iso_pl_soc以产生第五与信号。第五与信号由第二v
ccint
电平移位器485c接收以产生隔离信
号iso_soc_pl_b。隔离信号iso_soc_pl_b可用于启用将数据从soc 215转换到pl 230的电平移位器。例如,第五与信号也由v
ccint_soc
电平移位器485d处理,在电源斜降期间延时约100ns,并由或门490处理,以产生隔离信号iso_pl_soc_b。隔离信号iso_pl_soc_b可用于启用将数据从pl 230转换到soc 215的电平移位器。由第二逻辑电路产生的隔离信号的示例性数据表是参照图5描述的。
58.例如,在一种模式下,pmc域中的所有电压(例如v
ccint_pmc
,v
ccaux_pmc
)和pl的v
ccint
都可能处于高电平。通过控制ctrl_iso_pmc_pl信号,可以由高电平(例如,数字1)生成隔离信号iso_pmc_pl_b和iso_pl_pmc_b。因此,由隔离信号控制的布置在pmc和pl之间的相应电平移位器可以启用。在另一种模式下,当pmc域中的所有电压(例如,v
ccint_pmc
,v
ccaux_pmc
)都处于高电平,并且pl域中的电压v
ccint
、noc/xpio域中的电压v
ccaux_soc
处于高电平时,通过控制ctrl_iso_pl_soc信号,可以在高电平处(例如,数字1)生成隔离信号iso_soc_pl_b 310和iso_pl_soc_b 320。因此,可以启用由隔离信号控制的相应的电平移位器。
59.在一些实施例中,例如,响应于任何pmc电源域或soc电源域中的一个小于大约40ns干扰(例如,断电毛刺),第一毛刺滤波器电路415、第二毛刺滤波器电路475a和/或第三毛刺滤波器电路475b可以被配置为保持所生成的隔离信号被启用。干扰可以是在小于预定时间阈值的时间内跌落到低于预定最小操作电压阈值的电压。当在pl电源(例如,v
ccint_ram
、v
ccint
、v
ccaux
)上存在大于40ns的毛刺断电时,与隔离信号iso_soc_pl_b 310相比,可以延时生成隔离信号iso_pl_soc_b 320。例如,隔离信号iso_pl_soc_b 320可以比隔离信号iso_soc_pl_b 310晚大约100ns产生。因此,第二电平移位器315可以比第一电平移位器305晚大约100ns被启用。然后pors 270产生与隔离信号iso_soc_pl_b 310相比,具有200ns延时的por_pl_b信号以复位v
ccint
域。这种对隔离信号进行排序的方式可以避免在断电期间噪声或毛刺传播到xpio 256。从互连(pl域)到xpio(soc域)的电平移位器(例如,第二电平移位器315)在通过将por_pl_b置为低电平来关闭pl域前,固定(clamp)100ns(iso_pl_soc_b=0)。然后,互连块232可以在3us内由por_int_b信号稍后复位到por_pl_b以避免互连中由于v
gg
存储单元引起的任何争用。
60.图5描述了与由通电复位系统产生的示例性隔离信号相关的示例性数据表。数据表包括不同电源域之间的隔离信号。例如,数据表包括隔离信号iso_soc_pmc_b和隔离信号iso_pl_pmc_b。数据表还包括数学引擎和pl之间的隔离信号(例如,iso_1_me_pl、iso_1_pl_me、iso_2_me_pl等),以及数学引擎和soc之间的隔离信号(例如,iso_1_me_soc、iso_1_soc_me、iso_2_me_soc等)。拆分por的一部分以满足数学引擎(me)的需求可以显著减少或消除缓冲/加载要求。
61.图6描述了在ic中的电源域之间协调电源转换的示例性方法的流程图。电源转换可以包括在ic 215中的电源域通电和/或断电。在方法600中,在605,控制器(例如,ps 235)检测pmc电源域300(例如,主电源)是否通电。如果pmc电源域300还没有通电(例如,v
ccint_pmc
和v
ccaux_pmc
处于低电平),则控制器持续监控pmc电源域300的状态。如果pmc电源域300已经通电(例如,v
ccint_pmc
,v
ccaux_pmc
处于高电平),然后,在该描述的示例中,在610,控制器指示电压检测电路检测pmc电源域300的电源状态s0(例如,电压),第一电源域(例如,300a)(例如,辅助电源)的电源状态s1(例如,电压),和第二电源域(例如,300b)(例如,辅助电源)的电源状态s2。例如,电压检测电路检测xpio域的电源v
ccint_soc
和互连域的电源v
ccint
。在一些实施
例中,第一电源域和第二电源域可以是除了pmc电源域之外的ic 215中任何电源域(例如,pl、ps、noc、xpio或me)。在一些实施例中,控制器可以指示电压检测电路检测pmc电源域300的电源状态s0(例如,电压)和第一电源域(例如,300a)的电源状态s1(例如,电压)并产生隔离信号和/或根据需要用于pmc电源域和/或第一电源域300a的por信号。
62.在615,控制器确定pmc电源域、第一电源域、和/或第二电源域是否具有不小于预定阈值(例如,40ns)的毛刺。例如,在该说明性实施例中,控制器确定第二电源域是否具有大于或等于40ns的毛刺。
63.如果毛刺小于40ns,则在620,控制器指示pors 270生成第一隔离信号(例如,310)以允许第一电平移位器(例如,电平移位器电路305)将数据从第一电源域(例如,第一电源域300a)传输到第二电源域(例如,第二电源域300b),并且在625,控制器指示pors270生成第二隔离信号(例如,第二隔离信号320)以允许第二电平移位器(例如,电平移位器电路315)将数据从第二电源域传输到第一电源域。并且该方法循环回到615以继续监视第二电源域是否具有大于或等于40ns的毛刺。
64.如果毛刺大于或等于40ns(例如,毛刺在40ns和80ns之间),则在630处,控制器指示pors 270生成第一隔离信号以禁用第一电平移位器,该第一电平移位器将数据从第一电源域传输到第二电源域,并且在635和640,控制器指示pors 270生成第二隔离信号,以禁用第二电平移位器,该第二电平移位器在第一隔离信号产生之后的第一预定延时(例如,100ns)将数据从第一电源域传输到第二电源域。在645和650,控制器指示pors 270产生por信号以复位具有第二预定延时的第二电源域(例如,在产生第一隔离信号之后的200ns,或在产生第二隔离信号之后的100ns)。
65.在一些实施例中,当第一电源域或pmc电源域具有大毛刺(例如,具有大于40ns的电压扰动)时,pors 270可产生por信号以复位第一电源域或pmc电源域。
66.不同的子系统(例如,pl(互连)、noc(soc)、xpio、me和/或ps)可以针对不同的隔离信号进行控制。通过产生具有不同预定延时(例如,大约100ns延时、3us延时、200ns延时)的隔离信号和por信号,平滑的电源排序可以被控制以避免各种电源在通电和/或断电期间的争用。例如,当pl电源之一斜降时,可以控制pl和soc之间的隔离信号的排序,以避免在pl电源之一斜降时毛刺传播到xpio。避免毛刺的事件顺序可包括:首先,通过使用iso_soc_pl_b将xpio/soc与pl隔离。然后,通过使用在断电期间延时约100ns的iso_pl_soc_b信号将pl与soc隔离,然后释放与在断电期间从xpio/soc到pl的隔离相比被延时了大约200ns的信号por_pl_b。因此,通过将por_pl_b置为低电平,在关闭pl域之前,固定从pl域中的互连模块到xpio的soc域的电平移位器。
67.尽管已经参考附图描述了各种实施例,但其他实施例也是可能的。例如,可以在添加新电源域时使用小型pors。在一些实施例中,pl接口232(例如,电平移位器305、320)可以被布置在ps 235或pl 230上。
68.在一些实施例中,部分或全部电压检测电路410、470a、470b可被布置在ps 235或pl 230上。在另一实施例中,第一电路405和第二电路465中的部分或全部逻辑门(例如,与门、或门)可以被布置在ps 235或pl 230上。
69.模块的各种示例可以通过使用电路来实现,包括各种电子硬件。作为示例而非限制,硬件可以包括晶体管、电阻器、电容器、开关、集成电路和/或其他模块。在各种示例中,
模块可以包括:在包括各种集成电路(例如,fpga、asic)的硅衬底上制造的模拟和/或数字逻辑、分立部件、走线和/或存储器电路。在一些实施例中,模块可以涉及由处理器执行的预编程指令和/或软件的执行。例如,各种模块可能涉及硬件或软件。
70.在各种实施方案中,通信系统可以使用合适的通信方法、设备和技术进行通信。例如,系统可以使用点对点通信与兼容设备(例如,能够向系统传输数据和/或从系统传输数据的设备)进行通信,其中消息通过专用物理链路(例如,光纤链路、红外链路、超声波链路、点对点布线、菊花链)直接从源传输到接收器。系统的组件可以通过任何形式或介质的模拟或数字数据通信来交换信息,包括通信网络上的基于分组的消息。通信网络的示例包括例如lan(局域网)、wan(广域网)、man(城域网)、无线和/或光网络,以及形成互联网的计算机和网络。其他实施方案可以通过向所有或基本上所有通过通信网络耦接在一起的设备广播来传输消息,例如,通过使用全向射频(rf)信号。其他实施方式可以传输具有高方向性特征的消息,例如使用定向(即,窄波束)天线传输的射频信号或可选地与聚焦光学器件一起使用的红外信号。使用适当的接口和协议的其他实施方式也是可能的,例如,作为示例而非限制,usb2.0、firewire、ata/ide、rs-232、rs-422、rs-485、802.11a/b/g/n、wi-fi、wifi-direct、li-fi、蓝牙、以太网、irda、fddi(光纤分布式数据接口)、令牌环网络或基于频率、时间或码分的多路复用技术。一些实施方式可以选择性地包含诸如用于数据完整性的错误检查和纠正(ecc)之类的功能,或诸如加密(例如wep)和密码保护之类的安全措施。
71.已经描述了许多实施方式。然而,应当理解,可以进行各种修改。例如,如果所公开的技术的步骤以不同的顺序执行,或者如果所公开的系统的组件以不同的方式组合,或者如果这些组件补充有其他组件,则可以实现有利的结果。因此,其他实施方式在以下权利要求的范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1