CSR配置字典之PowerPoint类
更新时间: 2026/05/12
在Gitcode上查看源码

📋 文档信息

项目内容
文档标题PowerPoint类配置字典
版本v1.0
创建日期2026-05-12
最后更新2026-05-12
维护状态✅ 活跃维护

📋 变更历史记录

文档变更记录

版本发布日期变更类型变更内容影响范围维护人员
v1.02026-05-12初始版本创建PowerPoint类配置字典全新文档汪航

🎯 类概览

PowerPoint 类

属性
类名称PowerPoint
功能描述功耗点对象,即功耗封顶中功耗点数据信息管理类
所属SIG组hardware
所属组件power_strategy
责任人能效管理组
最后更新2026-05-12
状态🟢 正常运行

📊 属性定义详表

必选属性

属性名类型默认值取值范围动态关联描述使用场景举例来源分类
IdU640U64"${GroupId} |> expr($1 << 16 | 8 << 8 | 1)"功耗点Id,配置格式为:"GroupId << 16 | DeviceTypeId << 8 | Id",其中DeviceTypeId取值如下:
1: CPU, 2: NPU, 3: GPU, 4: DPU, 5: SDI, 6: Memory, 7: Fan, 8: Disk, 9: NPU_CPLD, 11: BOARD, 21: Power, 22: PowerSensor
部分模组不由电源进行供电,系统整机功耗组成需包含该模组,并且功耗封顶功能需计算此类模组功耗值后进行封顶"${GroupId} |> expr($1 << 16 | 8 << 8 | 1)"CSR配置软件
SystemIdU81U8-系统Id系统Id"${SystemId}"CSR配置软件
PowerTypeU801/2/3-功耗点类型:
1:功耗点的实时功耗;
2:功耗点额定功耗;
3:功耗点损失功耗;
整机功耗计算,功耗封顶值计算1CSR配置软件
PowerWattsDouble0Double"<=/Scanner_HddPower.Value"功耗点功耗值,单位:瓦特功耗点功耗值,单位:瓦特"<=/Scanner_HddPower.Value"CSR配置硬件
StatusU800/1/2/3/4"<=/Scanner_PowerGood.Value;<=/Scanner_HddPower.Status |> expr($1 == 1 ? ($2 == 0 ? 0 : 1) : 3)"功耗点状态:
0:正常获取值;
1:获取值失败;
2:获取值失败,正在进行防抖;
3:无效状态;
4:初始状态,暂未开始扫描
`"<=/Scanner_PowerGood.Value;<=/Scanner_HddPower.Status |> expr($1 == 1 ? ($2 == 0 ? 0 : 1) : 3)"CSR配置硬件

🔗 动态关联机制

语法规范

使用基础语法以及 <=/xxx 和表达式语法实现动态关联:

yaml
# 编号配置
Id: "$&#123;GroupId&#125; |> expr($1 << 16 | 8 << 8 | 1)"     # Disk类型功耗点
SystemId: $&#123;GroupId&#125;
PowerType: 1                                        # 额定功耗

# 功耗点功耗值动态关联
PowerWatts: "<=/Scanner_HddPower.Value"
# 功耗点功耗状态动态关联
Status: "<=/Scanner_PowerGood.Value;<=/Scanner_HddPower.Status |> expr($1 == 1 ? ($2 == 0 ? 0 : 1) : 3)"

关联说明

  • 传感器关联: 通过Scanner值获取功耗值和功耗点状态
  • 表达式计算: 使用expr函数计算功耗点状态值
  • 状态映射: 将传感器值映射为功耗点具体状态

📂 分类标准

硬件属性

  • 定义:与功耗点硬件直接相关的参数
  • 特点:可观测功耗点功耗值和状态
  • 示例:PowerWatts,Status

软件属性

  • 定义:由软件管理和维护的功耗点管理配置参数
  • 特点:静态配置,用于区分不同功耗点
  • 示例:Id,SystemId,PowerType

📝 配置示例

硬盘实时功耗点

json
{
  "PowerPoint_DiskReal": {
    "Id": "$&#123;GroupId&#125; |> expr($1 << 16 | 8 << 8 | 1)",
    "SystemId": "$&#123;GroupId&#125;",
    "PowerType": 1,
    "PowerWatts": "<=/Scanner_HddPower.Value",
    "Status": "<=/Scanner_PowerGood.Value;<=/Scanner_HddPower.Status |> expr($1 == 1 ? ($2 == 0 ? 0 : 1) : 3)"
  }
}

硬盘额定功耗点

json
{
  "PowerPoint_DiskReal": {
    "Id": "$&#123;GroupId&#125; |> expr($1 << 16 | 8 << 8 | 1)",
    "SystemId": "$&#123;GroupId&#125;",
    "PowerType": 2,
    "PowerWatts": 240,
    "Status": "<=/Scanner_PowerGood.Value |> expr($1 == 1 ? 0 : 3)"
  }
}

CPU实时功耗点

json
{
  "PowerPoint_CPUReal": {
    "Id": "$&#123;GroupId&#125; |> expr($1 << 16 | 1 << 8 | 1)",
    "SystemId": "$&#123;GroupId&#125;",
    "PowerType": 1,
    "PowerWatts": "<=/CPUMetrics_1.ConsumedPowerWatt",
    "Status": "<=/Scanner_PowerGood.Value |> expr($1 == 1 ? 0 : 3)"
  }
}

功耗传感器损失功耗点

json
{
  "PowerPoint_PowerSensorLoss": {
    "Id": "$&#123;GroupId&#125; |> expr($1 << 16 | 22 << 8 | 1)",
    "SystemId": "$&#123;GroupId&#125;",
    "PowerType": 2,
    "PowerWatts": 180,
    "Status": 0
  }
}

🔧 使用指南

配置步骤

  1. 功耗点设备类型: 根据功耗点设备类型确认Id适配
  2. 功耗点功耗值类型: 配置功耗点类型
  3. 功耗点功耗值和状态: 若为实时功耗点,明确功耗点对应Scanner值进行适配,否则为固定值

使用场景

  • 整机功耗: 部分模组不由电源进行供电,系统整机功耗组成需包含该模组
  • 功耗封顶: 功耗封顶功能需根据功耗点类型计算实际封顶值

注意事项

  • 功能依赖: 系统整机功耗受功耗点影响

📚 相关文档