CSR配置字典之NPUCardPowerDevice类
更新时间: 2025/07/22
在Gitcode上查看源码

📋 文档信息

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

📋 变更历史记录

文档变更记录

版本发布日期变更类型变更内容影响范围维护人员
v1.02026-06-22初始版本创建NPUCardPowerDevice类配置字典全新文档系统管理员

🎯 类概览

NPUCardPowerDevice 类

属性
类名称NPUCardPowerDevice
功能描述NPU卡电源器件配置和状态管理
所属SIG组system
所属组件NPU卡管理
责任人系统架构组
最后更新2026-06-22
状态🟢 正常运行

📊 属性定义详表

必选属性

属性名类型默认值取值范围动态关联描述使用场景举例来源分类
IdU80~255-电源器件逻辑Id
从0开始
标识NPU卡电源器件的编码0CSR配置硬件
TemperatureCelsiusS1632767-32768~32767-电源器件温度
0x7FFF(32767)表示当前状态不支持读取温度值
0x7FFE(32766)表示读取温度值失败
电源器件温度显示与告警配置32767CSR配置硬件
TypeString"MOS"、"DrMOS"、"PSiP"-电源器件类型标识NPU卡电源器件的类型"DrMOS"CSR配置硬件

可选属性

当前NPUCardPowerDevice类的所有CSR属性均为必选属性,暂无可选属性。


🔗 动态关联机制

语法规范

使用 #/xxx<=/xxx 格式实现属性间的动态关联:

yaml
# 语法格式
属性名: "#/目标类.属性名"     # 直接关联
属性名: "<=/目标类.属性名"    # 条件关联

# NPUCardPowerDevice 当前无动态关联属性
# 所有属性均为静态CSR配置值

关联说明

  • 父类关联: NPUCardPowerDevice的父类为NPUCard,路径模板为:parent/PowerDevices/${Id}
  • 路径规则: 实例路径由父类路径和Id组合生成,如NPUCard1/PowerDevices/0
  • 权限要求: 所有属性权限为ReadOnly,仅支持读取操作

📂 分类标准

硬件属性

  • 定义:直接从硬件获取或控制硬件的参数
  • 特点:实时反映硬件状态,支持硬件控制操作
  • 示例Id, TemperatureCelsius, Type

软件属性

当前NPUCardPowerDevice类暂无软件属性分类。


📝 配置示例

单电源器件配置(DrMOS类型)

json
{
  "NPUCardPowerDevice": {
    "Id": 0,
    "TemperatureCelsius": 32767,
    "Type": "DrMOS"
  }
}

多电源器件配置(器件0 - MOS类型)

json
{
  "NPUCardPowerDevice_0": {
    "Id": 0,
    "TemperatureCelsius": 32767,
    "Type": "MOS"
  }
}

多电源器件配置(器件1 - DrMOS类型)

json
{
  "NPUCardPowerDevice_1": {
    "Id": 1,
    "TemperatureCelsius": 32767,
    "Type": "DrMOS"
  }
}

多电源器件配置(器件2 - PSiP类型)

json
{
  "NPUCardPowerDevice_2": {
    "Id": 2,
    "TemperatureCelsius": 32767,
    "Type": "PSiP"
  }
}

嵌套在NPUCard中的完整配置

json
{
  "NPUCard1": {
    "PowerDevices": {
      "0": {
        "Id": 0,
        "TemperatureCelsius": 32767,
        "Type": "DrMOS"
      },
      "1": {
        "Id": 1,
        "TemperatureCelsius": 32767,
        "Type": "MOS"
      }
    }
  }
}

🔧 使用指南

配置步骤

  1. 设置基本标识:配置Id,从0开始编号电源器件
  2. 配置器件类型:设置Type,指定电源器件类型(MOS/DrMOS/PSiP)
  3. 设置温度默认值:TemperatureCelsius默认设为32767,表示不支持读取温度值

注意事项

  • ID编号:Id从0开始编号,在同一NPU卡内的PowerDevices中唯一
  • 温度特殊值:32767(0x7FFF)表示不支持读取温度值,32766(0x7FFE)表示读取失败
  • 类型限定:Type仅支持"MOS"、"DrMOS"、"PSiP"三种枚举值
  • 父类依赖:NPUCardPowerDevice必须关联父类NPUCard,路径遵循:parent/PowerDevices/${Id}模板
  • 只读权限:所有属性权限为ReadOnly,不支持通过北向接口修改

性能建议

  • 温度监控:合理设置温度告警阈值,关注0x7FFE(读取失败)状态的异常处理
  • 器件识别:根据实际硬件类型正确配置Type枚举值
  • 资源优化:仅配置实际在位的电源器件,避免冗余配置

路径体系说明

  • 父类路径: NPUCard实例路径,如NPUCard1
  • 子类路径: :parent/PowerDevices/${Id},如NPUCard1/PowerDevices/0
  • Id从0开始: 与CPU的Id(从1开始)不同,NPUCardPowerDevice的Id从0开始

温度状态机制

  • 32767 (0x7FFF): 当前状态不支持读取温度值,为默认值
  • 32766 (0x7FFE): 读取温度值失败,表示异常状态
  • 其他值: 正常温度读数(摄氏度),可为负数表示零下温度

常见问题

  • Q: 为什么TemperatureCelsius默认值为32767?
    • A: 32767对应0x7FFF,表示当前状态不支持读取温度值,是S16类型的特殊标记值
  • Q: Type的三种枚举值分别代表什么?
    • A: MOS为普通MOS管,DrMOS为集成驱动MOS,PSiP为电源系统集成封装,代表不同集成度的电源器件
  • Q: NPUCardPowerDevice与NPUCard的关系是什么?
    • A: NPUCardPowerDevice是NPUCard的子对象,路径为:parent/PowerDevices/${Id},属于NPU卡的电源器件管理
  • Q: 为什么所有属性都是ReadOnly权限?
    • A: 电源器件属性主要用于状态监控和显示,不支持通过北向接口进行修改操作