介绍
统一功率格式(UPF)是IEEE发布的标准,由Accellera的成员开发。它旨在简化设计、模拟和验证具有多个电源状态和电源域的IC设计工作。该标准的IEEE 1801 -2009 版本基于Accellera(EDA组织)的捐赠。
UPF与RTL结合起来能完整描述芯片设计,可以一起用于设计过程的仿真阶段:
- RTL描述逻辑意图
- UPF描述电源意图
UPF能做什么
UPF的设计目的是在相对较高的水平上反映设计的电源意图。UPF脚本描述了哪些电源轨道应该被路由到单独的块,块预计何时被供电或关闭,当信号从一个电源域到另一个电源域时电压水平应该如何转移,以及如果一个域的主电源被移除,是否应该采取措施来保留寄存器和内存单元内容。
它是如何付诸行动的?
UPF以及类似的公共功率格式(Common Power Format, CPF)的基础是工具控制语言(Tool Control Language, Tcl),这是一种脚本语言,最初创建它是为了提供一种自动化控制设计软件的方法。
Tcl的吸引力在于,命令行命令可以作为脚本中的语句使用。大多数Tcl实现都是特定于单个工具的。然而,CPF和UPF定义不同寻常,因为它们是与电力感知流中的所有工具一起使用的——工具本身必须确定Tcl脚本中提供的命令是否与它们相关。
例如,感知upf的工具使用Tcl命令“create_power_domain”在设计中定义一组块,这些块被视为一个电源域,以不同的方式提供给同一芯片上的其他块。这类命令背后的思想是,电力感知工具读取设计中哪些块可以独立上电或下电的描述。这些工具可以使用这些信息来确定,例如,模拟在不同条件下的表现。
例如,用SystemVerilog编写的测试台可能会向模拟器标识某个特定的块应该关闭电源,以确保其他块在没有先检查电源状态的情况下不会访问它。
晶体管级模拟可以使用功率定义来观察当电源电压或衬底偏置电压改变时会发生什么。当一个模块的供电电压被降低以节省电力,而其他模块则以最大电压运行时,所有必要的逻辑路径是否满足预期的时间?类似地,静态分析工具可以检查正确的电平移位器是否到位,以确定不同功率域中的块是否可以通信。
世卫组织支持吗?
许多EDA供应商已经选择在他们的流程中支持UPF,包括Mentor Graphics和Synopsys。然而,支持并不是普遍的。Cadence Design Systems支持最初由公司开发的通用功率格式,但现在由Silicon Integration Initiative管理,但已宣布支持最新版本的IEEE 1801,该版本包含了来自CPF的许多特性。