用于功率变换器的菊花链结构的制作方法

文档序号:14899408发布日期:2018-07-10 20:10阅读:217来源:国知局

本公开内容一般地涉及电源,并更具体地涉及使用串行总线监测并控制电源。



背景技术:

此处提供的背景技术描述用于一般性地呈现本公开内容的背景。当前所称的发明人所做的工作(就该背景技术部分所描述的程度而言)以及在提交的时间点上可能还不具备作为现有技术的资格的说明书的各方面,既未被明确地也未被隐含地承认是相对于本公开内容的现有技术。

诸如处理器之类的集成电路(IC)典型地需要来自多个电源的电能。因为在给定的设计中有多个处理器(和其他IC),所以在单个印刷电路板(PCB)上可以具有多个电源(导轨)。例如,在单个PCB上电源(导轨)的数量可以有60个之多。来自电源的电能通常需要监测及控制。监测及控制电源典型地包括监测诸如电源的输入/输出电压及输入/输出电流之类的参数和诸如排序之类的执行功能。对电源排序包括确定怎样接通电源、中断电源、监测、和重启该电源。排序同时包括故障管理。

一般地,该监测和控制使用集中化电源控制器、监测器、或排序IC来执行。该集中化控制器可包括现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、特定用途集成电路(ASIC)或微控制器(MCU)中的全部或部分。该集中化控制器可通过内置集成电路(I2C)或有时使用电源管理总线(PMBus)协议的系统管理总线(SMBus)来监测和控制该电源。

与这些系统相关的配线和成本开销导致他们不适用于低成本、小功率电源。例如当FPGA、PLD或排序/管理IC用于在电源子系统中管理各个导轨时,该系统不可缩放且不易改变设计。在特定设计中,一般根据电源导轨的数量来选择每个排序/管理IC。这种系统同样需要感测节点横跨印刷电路板(PCB)传送信号,这样易接收噪声并因此发生故障。



技术实现要素:

一种系统,包括多个电源和控制器。所述多个电源向一个或多个负载负载输出电能。例如,该系统可包括向单个负载(IC)供电的多个电源或向多个负载(IC)供电的单个电源。串行总线将多个电源连接成菊花链。通过该串行总线将定序器模块连接到所述电源中的第一个和最后一个。经由管理总线接口将该控制器连接到管理总线。例如,该管理总线可包括任何合适的总线,诸如系统管理总线(SMBus)、串行外围设备接口(SPI)总线、或内置IC(I2C)总线。据此,该管理总线接口可包括适合所使用的管理总线类型的接口。该控制器经由该串行总线监测所述多个电源。该控制器经由该控制器的管理总线接口将所述多个电源的状态信息传送到该管理总线。

一种方法,包括从由串行总线连接成菊花链的多个电源模块向负载供电。该方法进一步包括使用由该串行总线连接到所述电源中的第一个和最后一个的控制器监测所述多个电源。该方法进一步包括经由该控制器的管理总线接口将多个电源的状态信息从该控制器传送到管理总线。

进一步地,从下文详细的描述中,本公开内容的应用范围将变得显而易见。应该理解,详细的描述和具体的例子仅是出于例示的目的,并不意在限制本公开内容的范围。

附图说明

从详细的描述和附图中将会更加全面地理解本公开内容,其中:

图1是系统的功能框图,该系统用于监测和控制经由串行总线连接成菊花链的多个电源;

图2是图1的系统的实例,其包括不同类型的电源;

图3是系统的功能框图,该系统用于监测和控制电源,其中在该系统的负载中集成了该系统的定序器模块;

图4是系统的功能框图,该系统用于监测和控制电源,其中在该系统的一个电源模块中集成了该系统的定序器模块;

图5是系统的功能框图,该系统用于监测和控制电源,其中该系统的定序器模块包括多个串行端口;

图6是图1中的系统的定序器模块的功能框图;

图7是图1中的系统的电源模块的功能框图;

图8是图6中的定序器模块的串行总线接口模块的功能框图;

图9是图7中的电源模块的串行总线接口模块的功能框图;以及

图10是方法的流程图,该方法用于监测和控制经串行总线连接成菊花链的电源。

具体实施方式

本公开内容涉及用于监测和控制电源的系统和方法,其允许通过在多个低成本电源之间使用菊花链串行总线连接共享单个串行总线,以将各个电源链接到集中化控制器。每个电源称为卫星(satellite),且该集中化控制器称为母舰(mothership)。该串行总线的使用使得该系统鲁棒、免受噪声影响,并且可缩放。母舰可由数字集成电路(IC)来实现,并且可结合到特定用途集成电路(ASIC)、现场可编程门阵列(FPGA)等等中。

现在参照图1和图2,示出了根据本公开内容的用于监测和控制电源的系统100的实例。该系统100包括多个负载ICs和多个电源。该多个负载IC可包括处理器102-1、102-2等等(统称为处理器102),专用IC(ASIC)110、现场可编程门阵列(FPGA)、和其他负载IC114,其从多个电源104-1、104-2、......、和104-6(统称为电源104)接收电能。虽然在该实例中仅示出了6个电源,该系统100可包括任何数量的电源。相似地,处理器102、ASIC110、FPGA112、和其他负载IC114仅是负载IC的实例。该负载IC可包括更少量的IC或可包括诸如存储器IC之类的附加IC。此外,多个负载IC可从单个电源接收电能或单个负载IC可从多个电源接收电能。

该电源104经由串行总线呈菊花链连接到控制器106。该控制器106连接到SMBus上,并经由SMBus接口将该电源模块104与SMBus相接合。据此,电源104都不需要包括与该SMBus分别通信的接口。仅是举例,该SMBus可使用PMBus命令集或PMBus协议。贯穿本公开内容,该SMBus和该SMBus接口仅用作管理总线和相应接口的实例。作为替代,可使用任何其他类型的管理总线和相应的接口。该管理总线的实例包括系统管理总线(SMBus)、串行外设接口(SPI)总线、或内置IC(I2C)总线。该控制器106如下所解释的那样监测和控制电源104。

电源104可包括不同种类的电源。例如,在图2中,该电源104-1至104-3可包括数字自动补偿直流至直流变换器,其通过启动时测量外部部件(例如电感、电容)来自动补偿。例如,电源104-1至104-3可分别提供3A、6A、及9A的电流。例如,电源104-5可包括能够提供从3A至12A的电流的模拟电源。例如,电源104-6可包括三个能够提供100mA、250mA、及500mA的电流的低压差(LDO)稳压器。一个或多个电源104可包括开关(例如晶体管)、时钟发生器、及用于产生PWM脉冲以驱动开关的脉宽调制(PWM)模块。

当开启系统100的电源,控制器106在向负载IC102发出上电复位(POR)之前可执行以下功能。例如,控制器106可在菊花链中对电源104进行计数。例如,控制器106可经由该串行总线向菊花链中的第一个电源,电源104-1传送信号。电源104-1可执行自检和经由该串行总线向控制器106传送一状态信号。该状态信号指示电源104-1的状态(例如,电源104-1是否通过了自检以及能否正常工作)。

在一些实施方式中,电源104-1可不向控制器106传送状态信号。作为替代,电源104-1可在一个信号中包含该状态,该信号由电源104-1经由该串行总线传送给电源104-2。

在一些实施方式中,电源104可自寻址。例如,电源104-1可在接收到来自控制器106的信号之后,为自己分配一个地址01。据此,由电源104-1向控制器106(和/或电源104-2)传送的状态信号可包括地址和/或电源104-1的状态。或者,由控制器106传送的该信号可向电源104-1分配一地址01。可以或可以不基于电源104-1是否通过了自检和能否正常工作来限定该分配。

电源104-1可经由该串行总线将接收自控制器106的信号传递(或产生并传送一信号)给电源104-2。电源104-2可执行自检并经由该串行总线向电源104-1传送一状态信号。电源104-1可将从电源104-2接收到的状态信号传递给控制器106。该状态信号可指示电源104-2的状态(例如,电源104-2是否通过了自检和能否正常工作)。

在一些实施方式中,电源104-2可不向电源104-1传送一状态信号。作为替代,电源104-2可在信号中包括该状态,该信号由电源104-2经由该串行总线传送给电源104-3。

电源104-2在接收到由电源104-1传送的信号后为自己分配一地址02。据此,由电源104-2向电源104-1(和/或电源104-3)传送的状态信号可包括电源104-2的地址和状态。或者,由电源104-1传送的该信号可为电源104-2分配一地址02。可以或可以不基于电源104-2是否通过了自检和能否正常工作来限定该分配。

在菊花链中的剩余电源执行该过程。控制器106可在接收到来自于菊花链中最后一个电源的指示所有的电源104通过了自检并能正常工作的状态信号后为系统100产生一上电复位(POR)。

控制器106确定在菊花链中从向电源104-1传送该信号的时间点到接收到来自最后一个电源的状态信号的时间点之间的合计时间量。为了计数的便利,该时间可被称为最大回路时间。基于最大回路时间和从菊花链中的最后一个电源接收到的状态信号,控制器106可执行多种操作。一些操作实例在下面描述。

控制器106可确定在菊花链中的电源104的数量。控制器106可在一开关时钟周期中展宽每个电源104的开关时钟(例如,360°/N,其中N=电源104的数量。)

控制器106可基于最大回路时间确定超时周期(time-out period),并使用超时周期在菊花链中检测开路(例如,由于不良连接引起的)。例如,控制器106可设定超时周期大于或等于最大回路时间。控制器106可周期性地贯穿该菊花链传送ping信号。如果在该超时周期终止之前(即,在最大回路时间之内),没有收到来自在菊花链中最后一个电源的该ping信号,则控制器106可在菊花链中检测出一故障。

在一些实施方式中,控制器106可确定哪个电源104出现故障,并在备用电源可用的情况下激活备用电源。例如,备用电源可与电源104中的一个或多个并联连接。例如,如图1所示,备用电源104-S1可与电源104-2并联连接。对于主电源来说,与主电源并联连接的备用电源是多余的。例如,备用电源104-S1与电源104-2是相似的。在一些实施方式中,备用电源104-S1一直是运行状态,并提供一个或多个电压。在发生故障时该备用电源可从服务中移除。在图1中示出的仅有一个电源具有备用电源,附加的电源可具有相应的备用电源。当上电时,该备用电源可被检测,如果相应的主电源通过了自检则其被停用。当该主电源出现故障时,该备用电源可被激活。

控制器106可执行多个电源管理功能,包括以一顺序对电源104的开或关进行排序,所述顺序与以菊花链形式连接电源104的物理顺序无关。控制器106还可利用电源104的地址或部分地址,来指示高优先级(例如,故障),以在不需要高速串行总线的情况下使得遍历(through)菊花链的等待时间可以被最小化。在这个实例中,如果在消息的地址字段设置一个或多个高优先级比特,菊花链中后面的电源会忽略接收自电源的该消息,并将该消息传递给下一个电源。例如,为了指示高优先级消息,可将信息包的第一N比特设置为指示该消息是一条高优先级广播消息。接收到该消息的电源解码该第一N比特。如果该消息是一高优先级消息,则将该消息传递给下一个电源。

控制器106可远程监测电源104的输入电压(Vin),并且可通过该串行总线连接测量电源104的占空比(D)。控制器106还包括内部参考电压(voltage reference)或接收一外部参考电压。该参考电压提供独立于电源104产生的电压的电压的测量。控制器106可利用关系式Vout≈D×Vin×α计算电源104的输出电压(Vout),其中α为相应电源的效率。电源的效率可被表征、测量、或基于系统设计和测量假定。基于该信息,控制器106可以经由SMBus向系统监督器提供电源104的输出校准电压的独立的测量。

现在参考图3-5,示出了系统100的不同实施方式。例如,在一些实施方式中,可不使用单独的控制器106。作为替代,如图3所示,控制器106可并入负载IC102。或者,如图4所示,电源模块104中的一个可实现控制器106。

在图5中,控制器106可包括到模块的附加串行总线连接,所述模块不在包括电源104的菊花链中。附加串行总线中的一个或多个可与相应的菊花链相关联,并可用于与位于相应菊花链中的多个模块通信。控制器106仍然可仅包括一个与SMBus通信的接口。例如,控制器106可经由第一串行总线连接与电源104通信;经由第二串行总线连接与模块150通信;以及经由第三串行总线连接与向负载162供电的模块106-1和106-2通信。

每个串行总线连接利用控制器106的两个串行总线端口。例如,第一串行总线连接利用串行总线端口P1和P2;第二串行总线连接利用串行总线端口P3和P4;等等。在串行总线连接中的每个模块包括两个串行总线端口。例如,每个电源104包括串行总线端口P1和P2。在下文,参考图8和9,详细描述串行总线端口。

现在参考图6,详细示出了控制器106。控制器106包括串行总线接口模块200、SMBus接口模块202、初始化模块204、时钟模块206、故障检测模块208、监测模块210、和排序确定模块212。下面将明确定义本文使用的术语“模块”。串行总线接口模块200经由串行总线与电源104通信。串行总线接口模块200可包括多个串行总线端口。每个串行总线端口可与通过不同的菊花链中的串行总线连接的不同组的模块通信。

SMBus接口模块202与SMBus通信。SMBus接口模块202将电源104的状态(及经由串行总线端口连接的模块的状态)经由SMBus传送给系统监督器。SMBus接口模块202解释PMBus命令,并经由串行总线端口与不同的模块通信。据此,该不同的模块不需要单独包括SMBus接口。

初始化模块204遍历每一个串行端口传送初始化信号。该初始化信号被连接到每个串行端口的第一模块接收。该初始化信号触发该第一模块的自检。该第一模块可向初始化模块204返回该自检的状态及该第一模块的地址。或者,该第一模块可连同该第一模块的状态和/或地址向菊花链中的第二模块传送初始化信号,等等,直到最后一个模块向初始化模块204返回状态信号。在一些实施方式中,执行自检和传送状态是可选择的。

初始化模块204基于在状态信号中接收的信息确定菊花链中模块的数量。初始化模块204基于初始化信号传送到菊花链中第一模块与接收到来自菊花链中最后一个模块的状态信号之间的时间,为该菊花链确定超时周期。初始化模块204经由SMBus接口模块202向系统监督器报告菊花链中该模块的状态。

时钟模块206可基于菊花链中电源的数量,横跨开关时钟周期扩展菊花链中每个电源的开关时钟相位对准。时钟模块206经由串行总线端口向菊花链中的电源传送时钟数据。

故障检测模块208遍历菊花链周期性地传送ping消息。在菊花链中的每个模块将相应模块的地址和/或状态信息附加到该ping消息中,并向菊花链中的下一个模块传送该附加过的(appended)ping消息。如果该ping消息在超时周期中没有被菊花链中的最后一个模块返回,则故障检测模块208就会检测到菊花链中的故障。故障检测模块208经由SMBus接口模块202向系统监督器报告该故障,包括菊花链中故障模块的标识。此外,该故障检测模块208可通过该串行总线传送控制信号以停用该故障电源,并且如果与该故障电源并联连接有备用电源的话,激活该备用电源。

监测模块210监测输入电压(Vin)并通过串行总线连接测量菊花链中电源的占空比(D)。监测模块210可包括内部参考电压或接收外部参考电压,其提供了独立于电源产生的电压的电压的测量。监测模块210利用关系式Vout≈D×Vin×α计算电源的输出电压(Vout),其中α是相应电源的效率。电源的效率可被表征、测量、或基于系统设计和测量假设。基于该信息,监测模块210经由SMBus接口模块202向系统监督器提供电源的校正电压的独立的测量。

排序确定模块212以一顺序对电源的开或关进行排序,所述顺序与以菊花链形式连接电源的物理顺序无关。排序确定模块212也可使用电源的地址或部分地址指示高优先级(例如,故障),以在不需要高速串行总线的情况下,使得遍历该菊花链的等待时间可以被最小化。

现在参考图7,详细示出了电源104。电源104包括电源电路250、串行总线接口模块252、自检模块254、状态模块256、和配置模块258。电源电路250可提供一种或多种电压/电流。串行总线接口模块252经由串行总线与邻近的模块通信。据此,串行总线接口模块252包括两个串行总线端口。该邻近的模块可包括任意两个电源或一个电源和控制器106。

当接收到来自控制器106的初始化信号后,自检模块254执行电源电路250的自检。当接收到来自控制器106的初始化信号后,配置模块258为电源104分配一地址。自检模块254向串行总线接口模块252返回该自检的结果。串行总线接口模块252将电源104的状态和地址附加到该初始化信号,并向邻近的模块传送该附加过的信号。

状态模块256向接收自控制器106的该ping消息附加电源电路250的状态。状态模块256也向控制器106提供其他数据,诸如输入/输出电压和电流、和电源电路250的开关的时钟信号的占空比。ping消息独立于任何其他通信。在正常稳定状态的运行中,在串行总线上不会有流量。这就是使用ping消息以使该串行总线通常是待用的,且仅当周期性地使用ping消息或从SMBus接收命令时才被占用的原因。该ping消息在需要报告任何将来可能发生的故障之前测试该待用总线。由于即使由该串行总线形成的环路失效了该系统依然能工作,就没有必要在该串行总线上具有正在行进的流量以检查故障和/或正常的运行。据此,使用ping消息并保持该串行总线通常待用节省了电能。

配置模块258根据接收自控制器106的信号配置参数,诸如电源250的开关的时钟信号的占空比。配置模块258还可以基于接收自控制器106的信号激活/停用电源250。例如,当电源250发生故障时,配置模块258基于接收自控制器106的控制信号停用电源250。当备用的电源104并联连接到被确定为发生故障的电源中的一个时,配置模块258基于接收自控制器106的控制信号激活电源250。

现在参照图8,详细示出了控制器106的串行总线接口模块200。串行总线接口模块200包括多个串行总线端口300-1、......、和300-N(统称为串行总线端口300),其中N是大于1的整数。每个串行总线端口300包括收发器,其又包括发送器模块和接收器模块。例如,串行总线端口300-1包括收发器模块302-1,其又包括发送器模块304-1和接收器模块306-1。串行总线端口300可与任何合适的串行总线兼容,诸如I2C、SMBus、SPI,等等。串行总线端口300可传送并接收包括信息包的信号。该信息包可包括已调制的、编码的、加密的数据,等等。

现在参照图9,详细示出了电源104的串行总线接口模块252。串行总线接口模块252包括两个串行总线端口350-1和350-2(统称为串行总线端口350)。每个串行总线端口300包括收发器,其又包括发送器模块和接收器模块。例如,串行总线端口350-1包括收发器模块352-1,其又包括发送器模块354-1和接收器模块356-1。串行总线端口350可与任何合适的串行总线兼容,诸如通用串行总线I2C、SMBus、SPI等等。串行总线端口350可传送和接收包括信息包的信号。该信息包可包括已调制的、编码的、加密的数据,等等。

现在参照图10,示出了根据本公开内容的用于监测和控制电源的方法400。在402,控制器经由串行总线初始化连接成菊花链的多个电源。一个电源接收到该初始化信号,为其自身分配地址、执行自检、将地址和自检的结果附加到该初始化信号中,并将该附加过的信号传送给下一个电源。菊花链中的剩余电源执行该过程,且菊花链中的最后一个电源传送附加过的信号。

在404,控制器确定是否接收到来自菊花链中最后一个电源模式的附加过的信号。在406,如果没有接收到来自菊花链中最后一个电源模式的附加过的信号,则控制器经由SMBus向系统监督器报告故障。例如,控制器向连接到SMBus的远程设备报告该故障。

在408,如果接收到来自菊花链中最后一个电源的附加过的信号,则控制器根据包含在附加过的信号内的地址确定菊花链中电源的数量。此外,控制器横跨一时钟周期扩展电源的开关时钟,并确定用于ping信号的超时周期。

在410,控制器向菊花链中的电源发出ping信号。在412,控制器基于菊花链中最后一个电源返回的ping是否小于或等于该超时周期,来确定菊花链中的任意电源是否有故障。

在414,如果菊花链里中的任意电源有故障,则控制器确定是否有任一备用电源与该故障电源并联连接。控制器可根据在初始化时接收自菊花链中最后一个电源模式的附加过的信号内的地址确定该事项。如果没有备用电源与该故障电源并联连接,则控制器返回406。在416,如果备用电源与该故障电源并联连接,则控制器经由串行总线传送一信号以停用该故障电源,并启用该备用电源,以及控制器返回410。

在418,如果菊花链中的电源没有故障,则控制器经由串行总线测最电源的占空比并监测输入电压,并且基于输入电压和占空比计算电源的输出电压。在420,控制器经由SMBus向系统监督器报告电源的状态。例如,控制器向连接到SMBus的远程设备报告状态。

前面的描述仅是从本质上进行阐释,而绝不意在限定本公开内容、其应用、或使用。本公开内容宽泛的教导可以以多种形式实现。因此,虽然本公开内容包括特殊的实例,然而本公开内容真正的范围并不如此限定,因为基于对附图、说明书、和以下的权利要求的研究,其他的变形将变得显而易见。出于清楚性的目的,在附图中使用相同的附图标记来标识相似的元件。如本文所用的那样,用语A、B、和C中的至少一个应该被解释为意味着使用非排斥性的逻辑OR的逻辑(A or B or C)。应当理解,在不改变本公开内容的原理的情况下,在一方法中的一个或多个步骤可以以不同的顺序(或并行)执行。

如本文所用的那样,术语模块可以指的是部分或包括特定用途集成电路(ASIC);电子电路;组合逻辑电路;现场可编程门阵列(FPGA);执行代码的处理器(共享的、专用的、或集群的);其他提供上述功能的合适的硬件;或上面这些部分或全部的组合,例如在片上系统内。术语模块可包括存储由处理器执行的代码的存储器(共享的、专用的、或集群的)。

如上文使用的术语代码,可包括软件、固件、和/或微码,且可以指的是程序、例程、函数、类、和/或对象。如上文使用的术语共享的,含义是可使用单独的(共享的)处理器执行的来自多个模块的部分或全部代码。此外,来自多个模块的部分或全部代码可由单独的(共享的)存储器存储。如上文使用的术语集群的,含义是可使用一组处理器执行的来自单个模块的部分或全部代码。另外,可使用一组存储器存储来自单个模块的部分或全部代码。

本文描述的装置和方法可由一个或多个处理器执行的一个或多个计算机程序来实现。该计算机程序包括存储在非临时性有形计算机可读介质上的处理器可执行指令。计算机程序还可包括存储的数据。非临时性有形计算机可读介质的非限制性实例是非易失性存储器、磁存储器、和光学存储器。

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