电源监控器的作用是控制系统的负载点(POL)以使电源轨满足规范要求。POL可以是模拟也可以是数字的,这取决于输出信号的类型。本文描述了如何使用SoC实现电源监控的基本实现方法。为更好地说明关键实现原理,我们以采用赛普拉斯片上可编程系统(PSoC)的应用为例。PSoC可与模拟/数字POL协同工作。电源监控器的主要特性包括如下:
1、启用稳压器/电源
2、监控电压或电流的电源轨
3、 调节(修整)电源电流
4、故障处理与记录
5、主机通信
整个系统的方框图包含图1所示的如下功能。
让我们看一下简单的电源监控结构并在此基础上了解整个系统。在简单的电源监控结构中,微控制器负责监控Power-Good(PGood)输出并决定应该启用还是禁用DC-DC转换器。微控制器可以监控多个输出并按顺序适当地启用(上电)或禁用(断电)转换器。该功能由PSoC中的电压定序器(VS)组件执行。该组件位于PSoC Creator IDE内部,可对硬件和固件进行分组以实现特定功能。PSoC组件在本文中被多次提到,可被视为大芯片中的“虚拟芯片”。
图1给出了仅含电压定序功能的基本电源监控结构,大部分微控制器都提供这层功能。电压定序还包括根据多个先决条件和时序来实现电源轨等更多功能。要实现这些更别的功能,需要采用额外设计进行时序分析。为了便于理解,图2中的实例只显示了一条电源轨。需注意的是当前系统中的每个电路板可能需要20多条电源轨。每个SoC芯片可支持多达32条电源轨,是专用标准产品(ASSP)当前专用电源监控结构的3倍以上。
图2.电源轨的使能与排序大部分设计人员都不希望仅仅依靠简单的、具有硬编码阈值的DC-DC转换器PGood信号。因此通常需要根据不同电源轨的电压和/或电流情况控制DC-DC转换器的使能引脚。这就要求使用ADC和相关逻辑来控制使能引脚。为了实现这一功能,我们使用电源监控器(PM)组件来监控不同线路的电压和电流,并为每条线路提供状态输出。这些状态线路与控制使能信号的电压定序器相连接。该设计的方框图如图3所示,其中包含了电源监控器。具备ADC并能够使用数字逻辑的SoC能够实现这种功能。ADC可用来捕获电压值,然后根据固件中预先设定的电压电平来生成PGood信号。
既可利用支持电流测量的微控制器来实现电流监控,又可采用分流电阻并测量电阻电压的方法来推导出电流值,进而实现电流监控。对于PSoC器件而言,电流测量实际上就是测量分流电阻上的电压,PM电压和电流测量的度为0.26%。由于电压输出已经通过PM测得,因此电流测量只需添加一个引脚,这些引脚被称为电流测量引脚。
带有ADC和固件的电源监控器可提供众多特性,诸如记录在发生故障时EEPROM中的电压和电流值等等。然而实现这些功能会引起CPU时延,需在任务关键型应用中引起重视。为了解决这个问题,可以利用比较器和DAC等硬件模块实现完整的硬件电压故障检测(VFD)组件。可以采用电压数模转换器(VDAC)来设置硬件中的过压(OV)和欠压(UV)阈值。如果SoC有多个支持硬件故障检测的DAC,那么可通过专用硬件完成每个电源轨的设置。在可编程微控制器(如PSoC)中,同一硬件经过配置后也能实现这种功能,方法是通过直接存储器访问(DMA)组件并用所需的连接和参数值设置DAC和比较器。
硬件故障检测器和电源监控器的Pgood信号可以通过整合得到电压定序器的Pgood信号,如图4所示。
目前讨论的所有模块都可打开或在偏离所需电压或电流时关闭电源线。有些情况下(例如调试或针对新要求进行调整),DC-DC转换器的电压输出需要调整到新的水平。这个功能被称为电源轨的修整或微调(TM)。修整功能主要用于那些生产后需要进行现场调整的系统。产品生产完成后可能需要实时使用该功能。微调功能则用于在开发过程中或生产前对系统本身进行测试。该功能可用来在不同电压极限下对系统性能进行测试、特性描述或验证。
为实现这些功能,需根据要求将DC-DC转换器的Vadj(电压调整或电压反馈)升高或降低。电源监控器负责测量当前电压值,而修整或微调电路则负责对新的电压值进行调整。PWM-DAC可获得修整电压输出,例如使用低通RC电路(外部)对PWM输出进行滤波。假如我们想让Vout低于其当前值,可以增加PWM占空比,从而增大Vadj值。这会导致DC-DC转换器根据其Vadj引脚电压情况降低其输出电压Vout。该功能既可以使用DAC来实现(如果有),也可以通过PMW并添加外部RC滤波器的方法来实现,如图5所示。通过PWM-DAC实现该功能所获得的度是0.60%。
图5.添加修整和微调可将系统检测到的故障存储在非易失性存储器中,以便于使用。本例中采用EEPROM存储所有故障记录,而采用闪存来保存用户设置。
目前讨论的所有数据和设置都能通过不同的通信形式供主机设备所用或进行配置。在电源监控领域的协议当属电源监控总线(PMBus)协议。PMBus是一种建立在I2C通信接口上的系统管理通信协议。PMBus可用于获得有关不同电力线的状态、DC-DC转换器的设置,以及由协议预先设定的众多其它详细指令等的信息。如需使用预定义PMBus协议以外的附加命令,还可以添加额外的自定义命令。PMBus可用于读取全部状态与组件参数,并重写任意其它组件参数。这样可便于客户利用任何重编程技术对系统进行实时升级。在本实例中,PMBus协议构建在现有的I2C模块之上,如图6所示。除了PMBus组件外,完整的电源监控解决方案还可配套提供PMBus主机仿真器GUI,用以支持系统设计与调试工作。
所有模块都以组件形式提供,如图7所示。
本文介绍了构建电源监控器系统所需的构建块。应根据终应用的不同,选择使用所有或者部分模块。您可以利用所选SoC以及本文所提到的模块来构建自己的电源监控器系统。使用基于SoC的系统所能实现的功能包括:温度测量、风扇控制、单粒子翻转(SEU)处理以及引导加载程序等。