电源排序是数字电源架构的关键组件。在这篇文章中,我们将介绍几种构建排序的方法及其后果。特别是,我们将看到设计选择如何影响设计过程后期的灵活性。
电源转换的构建模块
让我们来看看我们的电源构建块和工具,看看我们可以为自己制造什么样的麻烦。为了简单起见,让我们假设我们有一个通用电源模块(UPB),以及所有常见的罪魁祸首,如FPGA和微控制器以及逻辑。我们的UPB有一个简单的界面:
图1.电源块
我们简单的电源转换器具有单V在/V外、一个 PMBus 接口、一个输入信号:控制,以及两个输出信号:电源良好和故障/。
控制
控制信号打开和关闭输出。它是高电平有效,具有内部上拉。
电源良好
当输出通电时,电源良好信号为高电平,并且在有效范围内。
故障/
FAULT/信号为低电平有效,漏极开路,并在电源模块发生故障时置位。如果存在故障,则断言 ALERT/,并且可以通过 PMBus 读取故障。并非所有电源转换器都会同时具有电源良好和故障/,我们不需要两者。在几乎所有情况下,FAULT/都可以成为POWER GOOD的特技替身。
设计一
现在让我们构建一些东西,这样我们就可以拆除它并构建另一个,每次都变得更好。
假设我们有一个带有中间总线控制器 (IBC) 和以下导轨的系统:
785
295
5.0V
3.3V
1.2V
0.8V
我们决定将轨道构建为层次结构。但是,我们需要不同的上电控制结构。
图2.简单的电源结构
不要担心权力层次结构是否正确,或者逻辑对于任何实际设计是否正确。重要的是这种“类型”结构的影响。让我们考虑一下这样做的利弊。
在专业方面,这很简单,无论是在概念上还是在实现上。使用 FPGA 或 uP 的 GPIO 添加 LED 指示灯或读取电源良好非常容易。如果出现问题,电源良好会让系统知道轨道出现故障。
在缺点方面,如果发生故障,并且系统必须关闭所有电源,则别无选择,只能按照上电的顺序关闭它们。这意味着大多数下游电源轨将因断电而不是控制引脚而断电。
没有时序控制,因此必须添加额外的电路以在电源轨之间产生延迟。如果在电源轨之间添加了延迟,则该延迟仅适用于通电,因为在断电时,馈线导轨上的断电将在 POWER GOOD 将其断开之前将其从属电源轨断开。
如果你对这种“类型”的结构犯了任何错误, PCB将需要重新布局, 当你在等待的时候, 你别无选择,只能在你的设计上破解电线, 或者去喝一个很长的咖啡休息时间.
设计二
如果我们集中逻辑,我们可以做得更好。可编程器件(如FPGA或uP)可以管理所有逻辑。
带控制器的电源结构
由于所有逻辑线都路由到 GPIO,控制器可以完全控制排序顺序(打开和关闭),并完全控制时序。只要愿意更改Verilog或C代码,就可以更改它。我已经在控制器上指示了 PMBus,但没有绘制所有连接,但使用 PMBus,控制器现在还可以控制电平和故障行为。
在专业方面,这种设计很灵活,你不会被困住。如果在控制结构中出错,可以在不重新布局的情况下修复它。
在缺点方面,您必须更改Verilog或C,并可能重新测试和重新鉴定固件。这种设计还需要大量的路由。每个 POL 需要 5 条控制线,它们分别路由到控制器。假设我们有一个 20 个轨道系统,考虑到 PMBus,它需要 42 个 GPIO 引脚。
所以这种设计是灵活的,但需要大量的GPIO和大量的PCB空间。
设计三
当与 PMBus 和智能数字电源 POL 结合使用时,我们可以通过使用开漏控制的特性来简化控制器。
简化的控制器
所有控制引脚都连接在一起,所有故障/引脚连接在一起。这意味着一个 20 个轨道系统只需要 5 个连接。IO 引脚数量减少了 8 倍。
让我们看看这是如何工作的。控制引脚为高电平有效。它由 GPIO0 控制,GPIO0 设置为“漏极开路”。由于控制引脚为漏极开路,这意味着POL也可以将其拉低。
当POL复位时,它将控制引脚拉低,直到它准备好响应外部信号。这意味着,如果控制器速度太快,则在全部正确复位之前,所有 POL 都不会打开,最慢的 POL 复位确定系统何时通电。如果控制器速度较慢,则在释放控制线时控制电源启动。
您可能想知道排序。我们是否失去了对它的控制?否,因为 PMBus 具有TON_DELAY命令,其值通常存储在 POL 的 NVM 中。它可以由控制器设置,也可以使用外部工具存储在 NVM 中。
故障/引脚也是漏极开路,由GPIO1控制,它们既是输入又是输出。这意味着当任何电源轨发生故障时,当FAULT引脚被拉低时,所有电源轨都会得到通知。此外,当故障/被拉低时,警报/断言。因此,控制器知道存在故障。每个人都知道,这是这个设计的关键。
现在,您可以选择几个有关故障处理的选项。PMBus 可以使用警报响应地址 (ARA) 响应 ALERT/,该地址获取具有故障的所有 POL 的地址,然后查询每个 POL 以获取故障信息。然后,它可以使用决策树,并根据需要以任何顺序关闭轨道。或者它可以一次关闭所有电源轨,让PMBus TOFF_DELAY管理时序。
许多POL具有增强的故障管理功能,可以直接响应故障(请记住,FAULT/也是一个输入)。典型的响应是:
重试
立即关闭
斜坡关闭
当POL具有这些高级功能时,它减轻了Verilog或C代码的负担,因为POL可以使用外部工具(通过PMBus和外部接口和软件)进行编程。此外,当使用FAULT/引脚时,对故障的响应比处理ALERT/的响应要快得多。
设计三的权衡
如果您有增强的 POL,则可以进行权衡。如果故障逻辑对于共享故障/线路来说太复杂,只需添加一个控制器。如果故障逻辑很简单,则可以使用工具配置故障行为,而无需控制器。或者,您可以使用控制器进行遥测和其他功能,但使用 FAULT/ 引脚进行故障处理,如果您发现它无法处理所有情况,您可以随时添加用于故障处理的代码并进行更改。
控制引脚也有类似的权衡。您也可以使用 PMBus 来代替它。在这种情况下,CONTROL引脚仍会保持导通状态,直到所有POL完成复位。
当控制引脚和故障引脚共享时,最大的灵活性,并且PMBus有一个控制器。通过这种设计, PCB制造后具有完全的灵活性.
电源良好
如果你没有注意到,我没有使用电源好。在打开另一个轨道之前,您不需要知道一条轨道何时良好。如果一个轨道都由TON_DELAY控制,而a没有及时准备好,就会出现故障。PMBus 定义了TON_MAX_FAULT_LIMIT,它定义了钢轨必须爬坡并在公差范围内的时间。如果此时某个导轨不在规格范围内,则会发生故障,这将阻止其他导轨打开。
设计原则是:没有消息就是好消息。如果系统需要知道所有电源轨何时启动,您只需要一个简单的计时器,设置为所有TON_DELAYs定义的最长时间。或者,控制器可以对最后一个 POL 的状态等进行 PMBus 查询。
在某些器件中,故障/引脚可以重新配置为电源良好引脚。这允许您在确实需要时拥有电源良好,但故障共享引脚丢失。因此,您可能需要控制器来响应警报/。或者在更简单的系统中,ALERT/可以抓住控制引脚并在出现故障时关闭所有电源轨。
在实践中,电源良好通常不是必需的。但是,如果您真的想要一个,您通常可以重新配置 FAULT/。毕竟,总有特殊情况。也许总有空间容纳“通用适配器套件”。
审核编辑:郭婷
全部0条评论
快来发表一下你的评论吧 !