首页> 中国专利> 可配置电路遥测系统

可配置电路遥测系统

摘要

本公开的多个方面提供电路(112),在一些示例中,其包括存储元件(118)、协处理器(122)和耦接到存储元件和协处理器的遥测定序器(120)。遥测定序器被配置为实现数字状态机以:接收指示用于产生的遥测数据的类型的配置信息;检索操作和运算对象,其中操作和运算对象限定用于执行以产生遥测数据的一系列顺序动作;通过将操作中的一些操作和运算对象中的一些运算对象传递到协处理器以供协处理器处理而用操作和运算对象来驱动协处理器;从协处理器接收并存储一系列动作的中间输出作为第一格式的遥测数据,并且从协处理器接收并存储一系列动作的最终输出作为第二格式的遥测数据。

著录项

  • 公开/公告号CN114902215A

    专利类型发明专利

  • 公开/公告日2022-08-12

    原文格式PDF

  • 申请/专利权人 德克萨斯仪器股份有限公司;

    申请/专利号CN202080091130.4

  • 申请日2020-12-21

  • 分类号G06F17/40(2006.01);

  • 代理机构北京纪凯知识产权代理有限公司 11245;

  • 代理人张颖

  • 地址 美国德克萨斯州

  • 入库时间 2023-06-19 16:20:42

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-12-23

    实质审查的生效 IPC(主分类):G06F17/40 专利申请号:2020800911304 申请日:20201221

    实质审查的生效

说明书

背景技术

遥测涉及监控系统的数据的测量、报告和/或收集。在电子系统中,遥测数据可以包括电压、电流、温度、功率或任何其他度量或数值的测量,对监控电子系统而言,这些度量或数值令人关注或为有益的。随着遥测数据量的增加,诸如当监控更多数量度量时,在有效地产生和/或处理遥测数据时会出现困难。

发明内容

本公开的至少一些方面提供电路。在至少一个示例中,电路包括存储元件、协处理器和耦接到存储元件和协处理器的遥测定序器。遥测定序器被配置为实现数字状态机以接收指示用于产生的遥测数据的类型的配置信息,并从存储元件检索与用于产生的遥测数据的类型相关联的操作和运算对象。操作和运算对象限定用于执行以产生遥测数据的一系列顺序动作。遥测系统还被配置为实现数字状态机以通过将操作中的至少一些操作和运算对象中的至少一些运算对象传递到协处理器以供协处理器处理来用与用于产生的遥测数据的类型相关联的操作和运算对象来驱动协处理器。遥测系统还被配置为数字状态机以从协处理器接收和存储一系列动作的中间输出作为第一格式的遥测数据。遥测系统还被配置为数字状态机,其从协处理器接收和存储一系列动作的最终输出作为第二格式的遥测数据。

本公开的其他方面提供一种系统。在至少一些示例中,系统包括多相电源、中央处理单元和耦接到多相电源和中央处理单元的遥测系统。遥测系统被配置为实现数字状态机以接收指示系统状况的测量值的数字格式的传感器数据。遥测系统还被配置为加载一起限定一系列动作的多个操作和多个运算对象,该一系列动作用于使用传感器数据作为运算对象中的一个运算对象确定遥测数据。遥测系统还被配置为实现数字状态机以执行一系列动作以产生作为一系列动作的最后操作的结果的最终输出并将最终输出存储为第一格式的遥测数据。系统被配置为至少部分地基于产生的最终输出来修改由多相电源输出的信号的值。

本公开的其他方面提供由数字状态机实现的方法。在至少一些示例中,方法包括接收指示电路状况的数字格式的传感器数据并加载一系列动作以利用传感器数据作为运算对象来确定遥测数据。一系列动作是根据多个操作和多个运算对象来限定的。加载一系列动作包括将多个操作加载到遥测序列时隙以供协处理器计算以及将多个运算对象加载到遥测序列时隙以供协处理器计算。方法还包括执行一系列动作以产生作为该系列动作的最后操作的结果的最终输出。执行一系列动作包括将多个操作中的至少一些操作和多个运算对象中的至少一些运算对象传递到协处理器以供协处理器处理。方法还包括将最终的一系列动作输出存储为第一格式的遥测数据。

附图说明

对于各种示例的详细描述,现在将参考附图,其中:

图1示出了根据各种示例的说明性服务器系统的框图;

图2示出了根据各种示例的用于产生遥测数据的时标序列的示意图;

图3示出了根据各种示例的用于产生遥测数据的示例操作序列的示意图;和

图4示出了根据各种示例的遥测数据产生的说明性方法的流程图。

具体实施方式

提供遥测数据的一些方法包括在某种程度上为特定客户应用程序或特定测量定制的硬件解决方案。例如,专用于特定参数(如电压、电流、温度等)的硬件为该特定参数产生遥测数据。硬件的一些示例还专用于特定格式,诸如符合特定标准、具有特定规模、具有由客户限定的自限定格式等。在监控多个指标以产生遥测数据的系统中,包括每个所需格式、测量值或其他标准的各硬件解决方案可导致遥测电路消耗的空间和/或功率增加。一种此类系统是多相直流(DC)到直流(DC-DC)功率转换器。

在DC-DC功率转换器的至少一些实施方式中,多个参数被监控以产生遥测数据。在某些示例中,此遥测数据在DC-DC电源转换器内部使用,例如用于控制。在其他示例中,遥测数据在DC-DC功率转换器和/或产生遥测数据的电路之外使用。在其他系统中,可以监控更多或更少的参数以产生遥测数据。监控的数据可以各种格式报告。例如,监控的数据可以以整数格式、全精度格式、半精度格式、线性格式、百分比格式、电源管理总线(PMBUS)格式、串行电压标识(VID)(SVID)格式、SVID接口(SVI)格式、并行VID(PVID)格式、自适应电压缩放(AVS)格式、I2C格式、自限定格式等来处理和报告。在一些示例中,可需要多种格式的由原始格式处理的数据(例如,由传感器测量和输出,或从测量数据的模拟域转换为数字域)。例如,客户可希望以第一格式和第二格式报告数据,其中第二格式不同于第一格式。相同数据可由遥测系统需要而以第三种格式用于计算。例如,客户可希望以毫安(mA)为单位报告输出电流并报告为最大输出电流的百分比。然后,遥测系统还可需要以安培(A)为单位的输出电流,以用于确定输出功率。在其中这些格式中的每种格式都由特定硬件解决方案产生的遥测系统中,可需要三个单独的电路。例如,遥测系统可包括确定以mA为单位的输出电流的电路,确定以A为单位的输出电流的电流,以及确定输出电流占最大输出电流百分比的电路。

在现代服务器系统中且尤其是高性能的服务器系统中,可以监控许多不同标准并且这些标准中的至少一些标准可以由服务器系统以多种格式报告和/或使用。在至少一些示例中,此类高性能系统至少包括系统,该系统利用电源并且可以基于与该电源有关的遥测数据来调节处理单元(例如,中央处理单元(CPU))的性能。请求遥测数据的格式可随时改变,诸如在遥测系统开发周期的后期或在遥测系统的生命周期中。例如,如果遥测系统用特定硬件电路执行测量,如上所述,并且不包括专用于新格式要求的硬件电路,则遥测系统可在启动后不久就过时。为此,可希望遥测系统可配置为以很大程度上与产生遥测数据的硬件分离的方式提供遥测数据。例如,使得遥测系统使用相同硬件电路产生遥测数据以产生多种遥测数据参数(例如,电压、电流、功率、温度、效率等)且以多个格式来产生遥测数据参数。此外,在一些示例中,遥测系统可具有提供特定客户不关注或在特定时间不关注的遥测数据的能力,且因此在特定时间产生该遥测数据未能有效利用资源。然而,该遥测系统可以以顺序方式操作,使得它仍然产生和输出该遥测数据,从而导致处理效率降低和延迟增加。因此,还可需要遥测系统包括其中执行操作和/或产生哪些遥测数据的可配置性,诸如在非顺序方式下,而不是仅限于以顺序方式操作。

使用特定硬件解决方案来实现此类功能将导致大量电路。该电路中的至少一些电路可在很大程度上冗余,或者可不被一些客户使用,从而导致电路尺寸和成本增加。尽管有大量电路,但对于某些客户而言,当所需功能针对特定客户进行高度定制时,仍可能缺少所需功能。为了提供定制化,一些遥测系统可利用微控制器或其他形式的CPU来产生遥测数据。然而,遥测数据经常快速变化并且可具有相对较短的产生、报告和基于遥测数据采取行动的时间段,以防止损坏被监控以产生遥测数据的组件。例如,一些实施方式可需要在小于约一微秒内产生和报告遥测数据。在可以提供特定硬件解决方案所缺乏的可配置性的微控制器或CPU中,微控制器或CPU,尤其是在使用浮点运算时,可无法满足遥测数据产生和报告的时序要求。此外,遥测数据的产生和报告是持续过程,在许多实施方式中,在被监控的系统通电的持续时间内持续进行。让该系统的微控制器或CPU产生遥测数据将阻止该微控制器或CPU具有执行其他处理的能力,从而限制系统的性能。

本公开的至少一些方面提供遥测系统。在一些示例中,遥测系统包括多个可配置点。例如,遥测系统包括时间复用到遥测序列时隙中的并行操作,其中时隙被顺序执行。然而,与上面讨论的硬件特定解决方案不同,遥测系统的可配置性使得可以从遥测序列时隙中省略操作。例如,当操作对应于客户不关注或在特定时间(例如,在启动期间)不需要的遥测数据时,可以省略操作。遥测系统还可以以对传感器数据执行的操作来配置。例如,尽管上面讨论的硬件解决方案专用于产生和以特定格式的遥测数据的特定系列动作,但本文提供的遥测系统是动态的。如本文所用,动态可以指示遥测序列时隙可以基于期望操作模式而改变。动态还可指示运算对象可以在一系列动作中改变。例如,变化的运算对象诸如温度可以在一系列动作中改变,该动作利用温度作为运算对象,而不依赖于预编码的数据。此外,遥测序列时隙的动态特性可以允许基于产生遥测数据或测量或感测数据的一系列动作的一个或多个结果来选择不同运算对象。例如,给定运算对象在某些条件下(例如,当测量温度超过阈值时)可以具有第一值,而在其他条件下(例如,当测量温度不超过阈值时)可以具有第二值。在至少一些实施方式中,遥测定序器实施数字状态机,其执行多个动作以使用相同硬件组诸如协处理器来产生遥测数据。在至少一些示例中,协处理器是算术逻辑单元(ALU)或能够执行数学计算和/或逻辑运算以帮助遥测定序器产生遥测数据的其他组件。

在一些示例中,一系列动作包括一个或多个数学运算,每个数学运算接受至少两个运算对象。在一些示例中,数学运算是级联的,使得遥测系统在一系列动作的最终数学运算之前提供一个或多个插入点或中间/附加输出。例如,在产生以mA为单位的输出电流遥测数据的过程中,遥测系统可以在将输出电流从A转换为mA的一系列动作之前提供插入点。以此方式,遥测系统可以存储以A为单位的输出电流以用于随后计算(诸如以瓦特为单位的功率),同时还使用相同硬件并且基本上同时提供以mA为单位的输出电流。此外,遥测系统的可配置性和可编程性使得用于产生所需类型或格式的遥测数据的一系列动作能够由客户随意添加。例如,如果在制造遥测系统时,不知道以后可需要特定类型的遥测数据,但仍需要特定类型的遥测数据,则遥测系统可编程以提供该遥测数据。相比之下,上面讨论的特定硬件解决方案将缺少提供本公开的遥测系统可提供的新特定类型遥测数据所必需的硬件配置和组件。

本公开的遥测系统的至少一些实施方式通过提供可编程性和可配置性以使用与在另一时间产生另一个遥测数据相同的硬件组件在特定时间产生特定遥测数据来改进产生遥测数据的特定硬件解决方案。此可编程性使本公开的遥测系统能够在启动期间、启动后、检测到故障时、校准期间等期间具有不同遥测数据产生序列。这改进了特定硬件解决方案,该方案遵循特定顺序的遥测数据生成,无论所产生遥测数据在给定时间是否有用或是否需要,从而浪费资源和时间。本公开的遥测系统还通过使用于产生遥测数据的一系列动作的中间结果和最终结果能够被输出来改进产生遥测数据的特定硬件解决方案,从而与每种解决方案产生一种类型遥测数据和一种格式的特定硬件方案相比减少冗余处理并节省时间。本公开的遥测系统通过提供制造后可配置性以支持产生新遥测数据或新格式遥测数据,还改进产生遥测数据的特定硬件解决方案,而特定硬件解决方案将由于其硬件性质而无法执行。

通过能够以更低功耗更快地为消耗更少面积的组件提供遥测数据,实现本公开的遥测系统而不是产生遥测数据的特定硬件解决方案或CPU的装置得到改进。特别地,本公开的遥测系统的至少一些实施方式具有比用于产生给定类型遥测数据(例如,一种或多种格式的电流)的特定硬件解决方案小约2平方毫米的管芯尺寸。例如,与消耗约3.2平方毫米管芯空间的硬件特定解决方案相比,本公开的遥测系统可以消耗约1.15平方毫米管芯空间。管芯表面积的减小引起本公开的遥测系统的制造成本降低以及本公开的遥测系统中的材料清单(例如,所需的组件)减少,进一步降低本公开的遥测系统的成本。

现在转向图1,示出了说明性服务器系统100。虽然被描述为服务器系统,但系统100可以代表其他系统的实施方式。例如,系统100通常可以代表实施和监控多相电源的其他系统或测量遥测数据的任何系统。在至少一个示例中,系统100包括电源102、电力供应104和CPU 106。电源102例如是市电或从将市电从交流电(交流)转换到DC的适配器接收的电力。在其他示例中,电源102是电池或其他电力存储装置。电力供应是104,在一些示例中,电力供应是从电源102接收电力并产生一个或多个电源信号以向CPU 106供电的组件。虽然仅示出电力供应104和CPU 106之间的一个耦接,但在各种示例中可以存在任何数量的耦接。此外,系统100可以包括一个或多个附加组件(未示出),其也接收来自电力供应104的一个或多个供电信号。

在至少一个示例中,电力供应104是多相电源。例如,电力供应104包括多个相位108A、108B、...108N,这些相位由多相控制器110选择性地控制为活跃/有效或不活跃/无效。基于由CPU 106和/或从电力供应104接收供电信号的任何其他组件施加在电力供应104上的负载来选择性地控制多个相位108A-108N。在至少一些示例中,多相控制器110耦接到CPU 106并且被配置为从CPU 106接收指令以控制多个相位108A-108N中的至少一些相位。多个相位108A-108N中的每个相位例如是功率调节器。电力供应104还包括遥测系统112。遥测系统112在至少一些示例中包括模数转换器(ADC)114和核心116。在一些示例中,遥测系统112还包括遥测系统的多个ADC并且每个ADC(包括遥测系统的ADC 114)可以具有一个或多个通道。ADC 114被配置为接收表示相位108A-108N中的至少一个相位的状态的模拟信号并将该模拟信号转换为数字信号。然后,ADC 114将该数字信号提供给核心116用于进一步处理。表示相位108A-108N中的至少一个相位的状态的模拟信号可以从任何合适的部件或传感器(未示出)接收,其范围不限于本文。

核心116被配置为接收由ADC 114输出的数字信号并且至少部分地基于该数字信号产生遥测数据。在一些示例中,遥测数据的产生至少部分地由从CPU 106接收的配置信息控制。在其他示例中,核心116被编程为具有可以由CPU 106修改的默认遥测数据产生操作。可替代地,可以从能够进行逻辑操作和/或处理的另一个装置(未示出)接收配置信息。例如,可以从CPU 106之外的装置(未示出)接收配置信息,该装置实现状态机以确定和输出配置信息。在至少一个示例中,核心116从CPU 106接收指示遥测数据的期望类型、遥测数据的期望格式等的配置信息。基于从CPU 106接收的配置信息,核心116产生时间复用的操作序列,以产生CPU 106所请求的遥测数据,该数据的格式也是CPU 106所请求的。在其他示例中,配置信息中的至少一些是存储在核心116内的默认遥测数据产生配置信息,而无需首先从CPU 106接收。

在至少一些示例中,核心116包括存储元件118、遥测定序器120和协处理器122。存储元件118可以是能够存储数据的任何合适的(一个或多个)装置,诸如随机存取存储器(RAM),包括静态RAM(SRAM)、一个或多个寄存器等。在至少一些示例中,基于从ADC 114接收的数据、存储在存储元件118中的数据和/或存储在遥测定序器120的本地存储器(未示出)中的数据,遥测定序器120产生遥测数据。在至少一个示例中,遥测定序器120实现产生遥测数据的数字状态机。在至少一些示例中,状态机实现关于本公开的图4更详细示出和讨论的操作,以提供本公开的至少一些功能。至少在一些示例中,数字状态机提供优于其他类型的处理(诸如通用处理器、CPU或其他形式的处理)的优势。例如,当涉及多种数据格式时,CPU产生遥测数据的速度可非常慢。例如,示例性或通用CPU可需要约50-60个时钟周期来执行单精度格式的两个运算对象之间的单次乘法。例如,对于包括多个(例如,10-15个)数据格式转换和多个(例如,10-15个)操作的产生遥测数据的一系列动作,CPU可需要非常长时间来产生结果。相比之下,本公开的数字状态机驱动的遥测系统可以在总共约10-20个时钟周期中执行约10个操作。因此,在至少一些示例中,遥测定序器120实现数字状态机并在不使用CPU的情况下执行图4的方法400的动作,除了在一些示例中从CPU接收配置信息(例如,要产生的遥测数据的类型和/或格式、要执行的一系列动作、操作、运算对象和/或中间输出点)和/或向CPU提供中间和/或最终输出。例如,在至少一些实施方式中,根据本公开的遥测数据产生过程,遥测定序器120在产生遥测数据时不使用CPU。

在至少一个示例中,本地存储器可以是存储包含数据的寄存器文件的寄存器。例如,遥测定序器120可以包括实现为本地存储器的寄存器(未示出)。遥测定序器120还可以包括实现状态机以产生遥测数据的遥测引擎(未示出)。在一些示例中,协处理器122包括用于执行一个或多个数学计算的功能和/或电路。例如,在至少一些实施方式中,协处理器122是或包括算术逻辑单元(ALU)。例如,在各种实施方式中,协处理器122包括加法器、乘法器、除法器、(一个或多个)数据过滤器、(一个或多个)数据格式转换器等中的任何一个或多个。在至少一些示例中,协处理器122的组件可以是为执行特定任务而优化的硬件电路。例如,加法器被优化用于执行加法或减法运算,乘法器被优化用于执行乘法运算等。协处理器122的至少一些组件可以在协处理器122的硬件电路之间或之中共享。

为了产生遥测数据,遥测定序器120将操作和运算对象加载到本地存储器中并调用操作以供协处理器122执行。例如,基于从ADC 114接收的数字信号和从CPU 106接收的配置信息,遥测定序器120将一系列动作加载到本地存储器中。在至少一些示例中,加载一系列动作包括识别包括在一系列动作中的操作,并在遥测序列时隙中调用操作以供协处理器122顺序执行。

在加载一系列动作之后,遥测定序器120将一系列动作的运算对象加载到本地存储器中。运算对象包括以下中的任一个或多个:从ADC 114接收的数字信号、存储在存储元件118中的数据、从CPU 106接收的数据和/或存储在本地存储器中的数据。例如,遥测定序器120可以存储与一系列动作相关联的操作和/或至少一些运算对象的列表,以基于从CPU106接收的配置信息在遥测定序器120的本地存储器中产生遥测数据。在另一示例中,遥测定序器120可以将与产生遥测数据的一系列动作相关联的操作列表和/或至少一些运算对象存储在存储元件118中。在没有从CPU 106接收的特定配置信息的情况下,存储在存储元件118中的与一系列动作相关联的操作列表和/或至少一些运算对象可以提供遥测定序器120的默认操作。当遥测定序器120从CPU106接收请求遥测数据的配置信息时(该一系列动作针对该遥测数据而存储在遥测定序器120的本地存储器中),遥测定序器访问本地存储器,以将一系列动作的操作加载到遥测序列时隙中。在其他示例中,与产生遥测数据的一系列动作相关联的操作列表和/或至少一些运算对象被存储在存储元件118中并且由遥测定序器120从存储元件118加载到遥测序列时隙。

在至少一些示例中,遥测定序器120以并行方式将数据加载到遥测序列时隙。例如,在至少一些示例中,当正在执行与产生第一遥测数据的第一系列动作相关联的操作时,遥测定序器120向遥测序列时隙加载与产生第二遥测数据的第二一系列动作相关联的操作和/或运算对象。在至少一些示例中,通过减少产生遥测数据所消耗的时间量,此并行处理优化核心116的性能。例如,并行使得核心116能够为每个遥测序列时隙产生遥测数据,而不是在遥测序列时隙中产生的遥测数据与下一个遥测序列时隙中加载的一系列新动作之间交替。

在至少一些示例中,产生的遥测数据可以由遥测定序器120存储在存储元件118中或遥测定序器120的本地存储器中,并且被重新用作用于确定附加遥测数据的运算对象。例如,指示PMBUS格式的输出电流的遥测数据可以被存储和重新用作运算对象,用于确定另一种不同格式的输出电流,诸如SVID格式。以此方式,两种遥测格式共有的冗余处理被减少并且确定PMUS格式的输出电流的相同硬件也可以确定SVID格式的输出电流。与使用专门为每种类型遥测数据和/或将输出的格式定制的硬件解决方案的遥测系统相比,硬件的这种重新使用减小了核心116的物理尺寸。

在至少一些示例中,遥测定序器120将一对运算对象和操作传递到协处理器122进行处理。在至少一些示例中,向协处理器122提供运算对象和操作被称为驱动协处理器122。例如,遥测定序器120驱动协处理器122,以通过提供要对协处理器122执行的一对运算对象和操作来产生输出。然后,协处理器122将输出提供回遥测定序器120,其要么存储输出,要么将输出作为另一个用于处理的运算对象返回给协处理器122。例如,在将一系列动作调用到遥测序列时隙之后,遥测定序器120在协处理器122的帮助下执行操作。例如,对于一系列动作的每个操作,遥测定序器120将运算对象以及要执行的操作类型的标识传递到协处理器122。然后,协处理器122使用接收的运算对象来执行标识的操作并将结果返回到遥测定序器120。然后,遥测定序器120存储结果在本地存储器或存储元件118中,报告结果(例如向CPU 106),或将结果与另一运算对象和另一操作的标识一起提供回协处理器122以供协处理器122执行。在至少一些示例中,协处理器122是能够执行算术运算的任何装置,至少包括加法、减法、除法和乘法。在一些示例中,协处理器122是执行操作的硬件解决方案的集合。例如,协处理器122可以包括硬件加法器、硬件乘法器等。在其他示例中,协处理器122可以包括执行本文讨论的操作中的至少一些操作的可编程元件。例如,协处理器122可以是算术逻辑单元(ALU)、现场可编程门阵列(FPGA)和/或具有执行算术运算或归因于在本文讨论的协处理器122的其他操作的能力的任何其他结构。在至少一些示例中,协处理器122包括通过硬件或软件实现的另外功能,诸如格式转换和/或数据过滤。

在至少一些示例中,遥测定序器120通过执行一系列操作来实现用于产生遥测数据的一系列动作,其中每个操作接受两个运算对象作为输入。在一些示例中,执行操作序列包括将运算对象传递到协处理器122以供协处理器122执行以及从协处理器122接收结果。在一些示例中,可以多种格式需要遥测数据(例如,如确认信息中所指示的)。可替代地或另外地,在一些示例中,可期望在确定其他遥测数据时使用操作的结果,该操作不是由遥测定序器120实施的全系列动作的结果。在此类示例中,可以在操作之间指定一系列动作。例如,对于包括用于产生遥测数据的九个操作的用于产生遥测数据的一系列动作,在至少一些示例中,可以指定一系列动作以在该一系列动作的第九个操作之前产生一个或多个中间输出。例如,九个操作和十个运算对象的一系列动作可以产生指示第一格式(诸如SVID格式)的输出电流的遥测数据。然而,通过在第六次操作(或除最终操作之外的一些操作)之后指定一系列动作,产生指示另一种不同格式(诸如PMBUS格式)的输出电流的遥测数据。以此方式,如上所述,使用基本相同硬件资源并在相同遥测序列时隙期间产生两种不同格式的遥测数据。在执行的一系列动作的所有操作之前对一系列动作的这种指定通过减少冗余操作和以并行方式(例如,基本上同时)确定多种遥测格式来实现更有效处理。

现在转向图2,示出用于产生遥测数据的示例时标序列200的示意图。在至少一些示例中,时标序列200由遥测定序器120产生并且控制由协处理器122执行的操作的顺序,每个操作如上面关于图1所讨论的。例如,当遥测定序器120接收产生遥测数据的请求时,遥测定序器120将用于产生该遥测数据的一系列动作插入或调用到遥测序列时隙中。在其他示例中,遥测定序器120被配置为在遥测定序器120通电的任何时间操作,诸如根据默认或预编程遥测数据产生过程或进度。在此类示例中,当遥测定序器120接收产生遥测数据的请求时,在根据默认或预编程遥测数据产生过程或进度而产生遥测数据之后,遥测定序器120输出所请求的遥测数据。在至少一些示例中,在协处理器122的帮助下,遥测序列时隙中调用的一系列动作由遥测定序器120顺序地执行。在一些示例中,相比于其他一系列动作,某些一系列动作可以在遥测序列时隙中以更高频率重复。例如,可以更频繁地在遥测序列时隙中调用需要保持更有及时性、更重要、以更快方式被需要等的遥测数据。相比之下,可更不频繁地在遥测时隙中调用不需要那么快或不太重要的遥测数据。此外,通常或在特定时间(诸如系统启动期间)能够产生但客户不希望的某些遥测数据可不在遥测序列时隙中被调用以防止不必要处理。这是对利用硬件特定解决方案来产生遥测数据的遥测系统的至少一些示例的改进。例如,这些硬件特定解决方案中的至少一些以顺序方式产生遥测数据,从一个遥测参数移动到另一个遥测参数,直到产生所有遥测数据并且然后重新开始。这浪费产生客户不关注的遥测数据的处理能力和功率,并且不包括改变产生特定遥测参数的频率以适合特定实施方式的灵活性。

如图2所示,以并行方式调用遥测序列时隙。例如,在遥测定序器120执行一系列动作A之前,遥测定序器120将用于实现一系列动作A的操作序列和运算对象加载到遥测序列时隙中。在执行一系列动作A时,遥测定序器120加载用于实现一系列动作B的操作序列和运算对象。以上重复,其中在当前遥测序列时隙的一系列动作正在执行时,在下一个遥测序列时隙中加载用于实现一系列动作的操作序列和运算对象。如图2另外所示,调用是动态或可配置的。例如,在第一和第二操作周期(分别为202和204)期间,对应于一系列动作C的遥测数据是不被关注的并且因此该一系列动作没有被在遥测序列时隙中调用以供协处理器122执行。然而,从操作206的第三循环开始,对应于一系列动作C的遥测数据变得受关注并且在遥测序列时隙中调用一系列动作以供协处理器122执行。此外,虽然对应于一系列动作D的遥测数据对于操作202-206的第一至第三周期受关注,但是对应于一系列动作D的遥测数据在从操作208的第四周期开始的任何期望时间段内变得不再受关注。因此,从操作208的第四周期开始在遥测序列时隙中不再调用一系列动作D并一直持续到对应于一系列动作D的遥测数据再次变得受关注为止。虽然关于图2示出一系列动作A、B、C和D,但在各种示例中,可以在操作周期中调用和执行任意数量的一系列动作。此外,可以在单个操作周期中不止一次地调用和执行一系列动作。

现在转向图3,示出了用于产生遥测数据的示例操作序列300的示意图。在至少一些示例中,序列300由遥测定序器120产生,如上面关于图1所讨论的。例如,基于遥测定序器120接收的配置信息,或默认操作序列,遥测定序器120确定对应于遥测参数的操作和运算对象。遥测定序器120将这些操作和运算对象加载到遥测序列时隙中。在至少一些示例中,这些操作和运算对象由遥测定序器120顺序地加载到遥测序列时隙。然后,通过将一对运算对象(并且在一些示例中,至少一个运算对象的数据类型)和操作传递到协处理器122以供协处理器122处理,遥测定序器120执行序列300中所示的操作。为了说明的目的,将使用确定输出电流的示例来描述图3。然而,图3和本公开不限于此,并且图3的教导和本公开适用于多个系列动作和多个遥测参数。另外,图3的至少一些示例对应于图2的时标序列200的一个遥测序列时隙。例如,序列300中所示的操作将由遥测定序器120通过在一个遥测序列时隙中将运算对象和操作标识符传递到协处理器122(例如,作为如图2所示的一系列动作A、一系列动作B、动作系列C或动作系列D中的一个)来执行。此外,序列300的操作和运算对象将在遥测序列时隙期间由遥测定序器120加载到遥测序列时隙中,该遥测序列时隙是顺序地在遥测序列时隙之前的一个遥测序列时隙,其中序列300将由遥测定序器120执行。

在至少一个示例中,可以根据一系列动作IOUT_1=(RawData1–RawData2)*NumberOfPhasesOfPowerConverter*Coefficient1*Coefficient2+Coefficient3,确定第一格式的特定装置的输出电流。然后可以根据一系列操作IOUT_2=IOUT_1*Coefficient4/Coefficient5*Coefficient6,确定第二格式的装置的输出电流。

对于操作和运算对象的选择,可以为上述一系列动作分配运算对象标识符,使得IOUT_1=I1,I1=((A-B)*C*D*E)+F,IOUT_2=I2,并且I2=I1*G/H*I。在上面,A=RawData1,B=RawData2,C=NumberOfPhasesOfPowerConverter,D=Coefficient1,E=Coefficient2且F=Coefficient3。此外,G=Coefficient4、H=Coefficient 5和I=Coefficient 6。在至少一些示例中,系数中的每个可以是固定或可变系数。如图3所示,遥测定序器120依次加载操作和运算对象以实现上述一系列动作。例如,用于确定IOUT_2的一系列动作包括八个操作,其中前五个与用于确定IOUT_1的一系列动作依次共享。因此,用于确定IOUT_2的第五操作的输出是IOUT_1。通过在产生IOUT_2同时产生IOUT_1,可以防止冗余处理(例如,前五个操作)。此外,基本相同的硬件用于产生IOUT_2和IOUT_1,与使用专用于产生IOUT_2的硬件和专用于产生IOUT_1的单独硬件的硬件特定解决方案相比,减少了空间。

虽然图3中示出八种操作,但在各种示例中,可以基于系统限制和设计权衡来加载任何合适数量的一系列动作。例如,当大多数系列动作将是X个或更少的操作时,其中X是任何非零整数,系统可被设计为支持单个系列动作的最大X次操作。在至少一些示例中,这可以优化系统的大小(例如,通过防止消耗额外空间来支持不经常使用的额外操作)。在至少一个示例中,当需要超过X个操作来确定特定遥测参数时,包含X个操作的一系列动作的输出可以用作包含X或更少操作的另一系列动作的输入(例如,运算对象)。在本公开的系统的至少一个示例中,X是9。

作为另一示例,可以根据一系列动作确定PMBUS格式的装置的输出电流IMON_PMBUS=(((V

对于操作和运算对象的选择,可以为上述一系列动作分配运算对象标识符,使得IMON_PMBUS=I1,I1=A-B*C-D*E/F+G,IMON_SVID=I2,并且I2=I1*H*I。在上面,A=V

因此,用于确定IMON_SVID的第六操作的输出是IMON_PMBUS。通过在产生IMON_SVID的同时产生IMON_PMBUS,可以防止冗余处理(例如,前六个操作)。此外,基本相同的硬件用于产生IMON_SVID和IMON_PMBUS,与使用专用于产生IMON_SVID的硬件和专用于产生IMON_PMBUS的单独硬件的硬件特定解决方案相比,减少了空间。

作为另一示例,可以根据一系列动作V_PMBUS=((V

对于操作和运算对象的选择,可以为上述一系列动作分配运算对象标识符,使得V_PMBUS=V1,V1=A-B*C-D-E,Vv_SVID=V2和V2=V1/F*G。在上面,A=V

通常,在至少一些示例中,用于以特定格式产生遥测参数和/或遥测数据的一系列动作可以被拆分为客户或用户经由配置信息可编程或者在系统制造时预先进行编程的一系列级联操作。例如,每个遥测参数(有时可称为遥测通道或简称为通道)可以具有相应存储位置,其存储用于该遥测参数的配置设置,包括至少一系列动作,和在一些示例中,至少一些运算对象。在一些示例中,存储位置是存储元件118,而在其他示例中,存储位置是能够存储数据的另一个装置。在至少一些示例中,在遥测定序器120根据配置设置产生遥测数据之前,将配置设置从存储位置传送(例如,复制)到遥测定序器120的存储元件。为了产生特定遥测参数,遥测定序器120访问对应存储位置以获取与用于确定遥测参数的一系列动作相关联的操作和/或至少一些运算对象。随后,遥测定序器120将操作和/或至少一些运算对象连同ADC 114输出的数据(其可先前已被存储)加载到遥测序列时隙中,以执行一系列动作。

此外,虽然在图3中示出一个插入点或中间输出,并且该插入点在操作六和操作七之间,但是在其他示例中,可以存在任意数量的插入点并且在一系列动作的任何期望操作之前或之后。例如,基于请求的遥测参数和/或遥测格式,一系列动作可没有插入点,具有1个插入点、2个插入点、3个插入点等。

现在转向图4,示出了遥测数据产生方法400的说明性流程图。在至少一些示例中,方法400至少部分地由图1的核心116实施并且在描述方法400时参考图1的元件。在至少一些示例中,方法400是用于通过不使用专用于每个遥测参数或支持的遥测格式的硬件的可配置或可编程遥测系统来产生遥测数据的方法。相反,可根据用于产生请求的遥测参数和/或遥测格式的一系列动作来编程遥测系统。在至少一些示例中,这种对用于遥测数据产生的硬件特定解决方案的不依赖,以及进一步不使用CPU核心来产生遥测数据使得根据方法400的更快和更灵活的操作。例如,方法400能够在100兆赫系统中在约300-400纳秒内产生遥测数据(例如,在约30-40个时钟周期内产生遥测数据)。与CPU产生遥测数据的至少一些示例相比,这使得遥测数据的产生速度更快。此外,在制造实施方法400的系统之后,方法400有助于限定附加遥测参数或格式,或修改现有遥测参数或格式,从而改进本文别处讨论的硬件特定解决方案。

在操作402,存储原始数据。在至少一些示例中,原始数据是传感器数据(例如,由传感器测量产生的数据)。在一些示例中,传感器数据是由ADC 114以数字格式输出的测量值。在至少一些示例中,测量值关于电路诸如功率转换器的状况。在一些示例中,功率转换器是多相电力供应的组件。在其他示例中,电路是任何被监控的并且请求遥测数据的电路。在一些示例中,数据被存储在短期(例如,易失性)存储器中,诸如SRAM、寄存器、非易失性存储器,或以后可访问以用于确定和/或报告遥测数据的其它合适存储元件或位置。

在操作404,确定是否需要对传感器数据进行预处理。当需要预处理时,方法400进行到操作406。在操作406,执行预处理。预处理可以包括确定传感器数据的有限脉冲响应(FIR)、确定传感器数据的平均值、确定传感器数据的偏移等。在操作408,存储预处理的数据。预处理的数据可以以任何合适的方式存储在任何合适的位置,诸如在关于传感器数据所讨论的操作402。

现在返回到操作404,当不需要预处理时,方法400进行到操作410。在操作410,加载一系列动作。在至少一些示例中,一系列动作由遥测定序器120加载到遥测序列时隙中,作为其运算对象根据后续操作而被加载的一系列操作。在一些示例中,从存储器访问该一系列动作并限定一个或多个操作和运算对象以用于产生特定格式的特定遥测参数和/或遥测数据。在至少一些示例中,遥测序列时隙存储在遥测定序器120的本地存储元件中。在一些示例中,核心116先前经由处理器或配置核心116的其他装置从用户接收一系列动作,并且然后由核心116将其存储在存储器中。遥测定序器120将一系列动作加载到遥测序列时隙,在一些示例中,作为级联的一系列操作,其中先前操作的输出是后续操作的输入,直到确定最终结果。如本文所用,一系列动作的最终结果或输出是根据一系列动作的最后操作执行和/或计算得到的值。例如,对于(A+B)*C=D的一系列动作,D是一系列动作的最终结果。如本文所使用的,一系列动作的中间结果或输出是值,该值根据不是一系列动作的最后操作的一系列动作中的操作进行的执行和/或计算而产生。例如,对于一系列动作(A+B)*C=D,中间结果可为A和B相加得到的值,然后将该值乘以C以确定一系列动作的最终结果。在至少一些示例中,遥测定序器120调用或插入多个一系列动作以便以诸如本文别处所讨论的并行方式执行。

在操作412,加载固定系数。在至少一些示例中,固定系数由遥测定序器120加载到遥测序列时隙中,作为一系列动作的运算对象。在一些示例中,固定系数是存储器存取并且是用于以由一系列动作限定的特定格式产生特定遥测参数的一个或多个运算对象。在一些示例中,固定系数先前由核心116经由处理器或配置核心116的其他装置从用户接收并且然后由核心116存储在存储器中。

在操作414,加载动态系数。在至少一些示例中,动态系数由遥测定序器120加载到遥测序列时隙中,作为一系列动作的运算对象。在一些示例中,动态系数是先前在操作402存储的传感器数据和/或先前在操作408存储的预处理数据。

在操作416,执行一系列动作的操作。例如,遥测定序器120在协处理器122的帮助下执行一系列动作的操作。例如,遥测定序器120可以发送一对运算对象和待执行的操作的标识到协处理器122进行处理。在至少一些示例中,基于先进先出方法,基于遥测序列时隙来选择一对运算对象和待执行的操作的标识。在各种示例中,操作可以是算术操作,例如乘法、除法、加法或减法。在其他示例中,操作可以是用于改变、处理(例如,平均、滤波等)或以其他方式操纵固定系数和/或动态系数以用于产生由一系列动作限定的遥测数据的任何合适操作。

在操作418,确定是否已经执行一系列动作的所有操作。当一系列动作的所有操作都没有被执行时,方法进行到操作420。在操作420,确定插入点是否跟随最后执行的操作。当插入点跟随最后执行的操作时,方法进行到操作422。在操作422,存储最后执行的操作的输出值或结果(例如,中间输出值)。例如,遥测定序器120将最后执行的操作的输出值存储在存储位置中,以供稍后输出到用户、输出到另一个电子组件,或用作用于产生遥测数据的另一系列动作中的运算对象。现在返回到操作420,当插入点没有跟随上一次执行的操作时,方法返回到操作418。现在返回到操作418,当已经执行一系列动作的所有操作时,方法进行到操作424。在操作424,存储一系列动作的输出值(例如,最终输出值)。一系列动作的输出值例如是上一次执行操作的输出值或结果。在至少一个示例中,遥测定序器120将一系列动作的输出值存储在存储位置中,以供稍后输出给用户、输出给另一个电子组件,或用作另一系列动作中的运算对象以产生遥测数据。

在至少一些示例中,针对由实施方法400的系统(诸如遥测系统112)产生的每个遥测参数,执行方法400。例如,遥测系统112实施方法400的新实例以用于遥测系统112的每个遥测序列时隙(例如,如上面关于图2所示)。

虽然方法400的操作已被讨论并用数字参考标记,但在各种示例中,方法400包括本文未列举的附加操作。在一些示例中,本文所述的操作中的任一个或多个操作包括一个或多个子操作(例如,诸如中间比较、逻辑操作、诸如经由多路复用器的输出选择、格式转换等)。在一些示例中,省略本文所述的操作中的任一个或多个操作。在一些示例中,本文所述的操作中的任一个或多个操作以不同于本文所呈现的顺序(例如,以相反的顺序、基本上同时、重叠等)来执行。这些替代方案中的每个旨在落入本公开的范围内。

在前述讨论中,术语“包含”和“包括”以开放式方式使用,因此应解释为表示“包括但不限于……”。在整个说明书中使用术语“耦接”。该术语可以涵盖实现与本公开的描述一致的功能关系的连接、通信或信号路径。例如,如果装置A产生信号以控制装置B执行动作,则在第一示例中,装置A耦接到装置B,或者在第二示例中,装置A通过介入组件C耦接到装置B,如果介入组件C基本上不改变装置A和装置B之间的功能关系,从而装置B由装置A经由装置A产生的控制信号控制。被“配置为”执行任务或功能的装置可以在制造商制造时被配置(例如编程和/或硬连线)以执行该功能和/或在制造之后可由用户配置(或可重新配置)以执行该功能和/或其他附加或替代功能。配置可以通过装置的固件和/或软件编程,通过硬件组件的构造和/或布局以及装置的互连,或它们的组合。此外,据说包括某些组件的电路或装置可以替代地被配置为耦接到那些组件以形成所描述的电路或装置。例如,描述为包括一个或多个半导体元件(诸如晶体管)、一个或多个无源元件(诸如电阻器、电容器和/或电感器)和/或一个或多个源(诸如电压和/或电流源)的结构可以替代地仅包括单个物理装置(例如,半导体管芯和/或集成电路(IC)封装)内的半导体元件并且可以被配置为耦接到无源元件和/或源中的至少一些,以由最终用户和/或第三方在制造时或制造后形成所述结构。

尽管本文将某些组件描述为具有特定工艺技术,但这些组件可以替换为实现与本文所述功能等效的其他工艺技术的组件。本文所述的电路可以至少部分地重新配置以包括被替换组件以提供至少部分类似于在组件替换之前可用的功能的期望功能。除非另有说明,否则图示为电阻器的组件通常代表串联和/或并联耦接以提供由图示电阻器表示的阻抗量的任何一个或多个元件。此外,在前述讨论中使用短语“地电压电位”旨在包括底盘接地、地面接地、浮动接地、虚拟接地、数字接地、公共接地和/或适于或适用于本公开的教导的接地连接的任何其他形式的接地。除非另有说明,值之前的“约”、“大约”或“基本上”是指所述值的+/-10%。

以上讨论旨在说明本公开的原理和各种示例。一旦充分理解上述公开内容,许多变化和修改对于本领域技术人员将变得显而易见。旨在将本公开解释为包含所有这些变化和修改。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号