本文主要是介绍PSCA电源控制集成之隔离和复位控制注意事项,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
当组件更改电源模式时,隔离可以被应用或移除,并且重置可以被断言。隔离控制和重置是异步控制的。因此,组件输出需要被处理,以便任何潜在的异步变化不会影响它们通信的功能域。
隔离单元在断电或保留电源域的输出上提供恒定值,以防止未知值传播到运行域。隔离控制是异步应用的,以消除对控制信号传播的时序约束。
复位断言是异步的,以确保所有寄存器在系统时钟的可用性下正确重置。
为了防止在重置和隔离断言和释放期间输出发生变化,强烈建议应用以下规则:
• 复位值 = 空闲值 = 隔离值。
必须注意,特别是在复位值方面,因为一个输出可能通过组合逻辑由多个寄存器驱动。在这种情况下,必须确保所有源寄存器的输出都可以被重置,而不会改变它们的个别输出,以确保在下游逻辑中不会产生毛刺。
在某些情况下,空闲值可能与隔离和重置值不同,这是由于域保持导致的。必须谨慎评估这些信号的异步变化是否会引起其他域的问题。这样的影响通常是微妙的,比如直接用于解码选择的地址信号,或者可能在下游寄存器中引起临界态的信号。
只有那些可能影响系统行为的信号才需要考虑下面描述的事项。
在所有情况下,都应该小心,因为未实现隔离的 RTL 仿真可能与实际实现隔离的实际行为不同。建议进行考虑这些方面的功耗感知仿真。
输出隔离和保持
对于保持模式,可以通过两种方式来管理输出和隔离值之间的差异:
• 使用“clamp last”隔离单元。
-这种解决方案仅适用于隔离场景。
-这些是特殊的隔离单元,它们锁定输出的值并将其应用为隔离值。这样的单元可能并非所有技术库都提供。
• 在应用隔离或复位之前,将输出值在域外部捕获,并在再次捕获输出值之前释放隔离或复位。
-可以使用由适当 PPU 驱动的 LPI 轻松控制这种行为。
-此功能通常在系统级别考虑,其中了解电源域的范围和输出信号的影响。
【注意】:当域处于保持状态时,必须启用隔离。虽然寄存器的值被保留,但通常寄存器输出没有驱动,并且寄存器输出和域边界之间的任何缓冲器仍处于断电状态。
输出隔离和 PACTIVE
当组件进入 FULL_RET、LOGIC_RET 或 MEM_RET 电源模式时,与之对应的电源模式的 PACTIVE 位可能会由组件设为高电平,但会被隔离为低电平,因为这是复位值。
在这种情况下,系统需要在包含该组件的电源域之外维持所需的电平,否则可能向电源控制器发出错误的指示,表明组件不再需要该电源模式作为最低要求。这可以通过上述描述的技术来实现。
类似的考虑可能适用于组件特定的操作模式 PACTIVE 输出。
【注意】:与电源模式相关联的 PACTIVE 在组件进入相应的电源模式时可能不会处于高电平。PPU 可能会选择请求将电源模式转换,即使这并不是组件所需的最低要求,这可能是由于 PPU 编程或来自组件外部源的 PACTIVE 贡献。
在这些电源模式下的组件 PACTIVE 行为在 8.3.5 PACTIVE 和隔离中进行了讨论。
输出隔离和非默认值
在输出空闲值与隔离值不同时,
• 同步隔离使能。
-这种解决方案仅适用于隔离场景。
-这允许隔离使能到达端点寄存器的时序路径,以便不会导致任何建立和保持问题。
-这种情况是非最佳的,应尽可能避免,因为它对设计的某些方面增加了额外的要求和约束。 • 在应用隔离之前,在域外部捕获输出值,并在再次捕获输出值之前释放隔离。
-可以使用由适当 PPU 驱动的 LPI 来控制这种行为。
-这种功能通常在已知电源域范围和输出信号影响的系统级别进行考虑。
这篇关于PSCA电源控制集成之隔离和复位控制注意事项的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!