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

📋 文档信息

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

📋 变更历史记录

文档变更记录

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

🎯 类概览

CoolingPolicy 类

属性
类名称CoolingPolicy
功能描述线性调速策略对象,提供基于环境温度的风扇线性调速策略配置,支持温度区间和转速区间的对应关系
所属SIG组thermal
所属组件散热策略
责任人热设计组
最后更新2025-01-27
状态🟢 正常运行

📊 属性定义详表

必选属性

属性名类型默认值取值范围动态关联描述使用场景举例来源分类
PolicyIdxU80U8-线性调速策略CoolingPolicy的ID环温调速策略配置:环温调速策略ID6CSR软件
ExpCondValString""String-调速策略生效的预期条件环温调速策略配置:环温调速策略生效条件"EnergySaving"CSR热设计
ActualCondValString""StringCoolingConfig_1调速策略实际条件环温调速策略配置:环温调速策略实际条件,当生效条件和实际条件相同时该调速策略生效且FanType满足时生效"<=/CoolingConfig_1.SmartCoolingMode"CSR热设计
TemperatureRangeLowS16[][]S16[]-线性调速策略温度区间低门限环温调速策略配置:环温调速策略温度区间和转速区间对应关系[-127, 20, 30, 40, 50]CSR热设计
TemperatureRangeHighS16[][]S16[]-线性调速策略温度区间高门限环温调速策略配置:环温调速策略温度区间和转速区间对应关系[20, 30, 40, 50, 127]CSR热设计
SpeedRangeLowS16[][]S16[]-线性调速策略转速区间低门限环温调速策略配置:环温调速策略温度区间和转速区间对应关系[20, 32, 70, 100]CSR热设计
SpeedRangeHighS16[][]S16[]-线性调速策略转速区间高门限环温调速策略配置:环温调速策略温度区间和转速区间对应关系[20, 32, 70, 100]CSR热设计
FanTypeString[][]String[]-风扇类型列表,环境风扇类型为列表之一时,风扇条件生效环温调速策略配置:风扇类型,当风扇类型与之相同时环温调速策略生效["02314BLG 8038+"]CSR热设计

可选属性

无可选属性


🔗 动态关联机制

语法规范

使用标准配置语法和动态关联:

yaml
# 调速策略基础配置
PolicyIdx: 6
ExpCondVal: "EnergySaving"
ActualCondVal: "<=/CoolingConfig_1.SmartCoolingMode"

# 温度区间配置
TemperatureRangeLow: [-127, 20, 30, 40, 50]
TemperatureRangeHigh: [20, 30, 40, 50, 127]

# 转速区间配置
SpeedRangeLow: [20, 32, 70, 100]
SpeedRangeHigh: [20, 32, 70, 100]

# 风扇类型配置
FanType: ["02314BLG 8038+"]

关联说明

  • 条件匹配: ExpCondVal和ActualCondVal必须匹配才能生效
  • 动态关联: ActualCondVal通过CoolingConfig对象获取实际调速模式
  • 温度转速对应: 温度区间和转速区间一一对应
  • 风扇类型匹配: 只有匹配的风扇类型才应用此策略

📂 分类标准

硬件属性

  • 定义:当前版本无硬件属性
  • 特点:所有属性都是热设计相关
  • 示例:无

软件属性

  • 定义:由软件管理的调速策略配置参数
  • 特点:策略ID、条件配置等
  • 示例PolicyIdx

热设计属性

  • 定义:与热设计和散热策略直接相关的参数
  • 特点:温度区间、转速区间、风扇类型等热管理参数
  • 示例ExpCondVal, ActualCondVal, TemperatureRangeLow, TemperatureRangeHigh, SpeedRangeLow, SpeedRangeHigh, FanType

📝 配置示例

节能模式调速策略

json
{
  "CoolingPolicy_EnergySaving": {
    "PolicyIdx": 6,
    "ExpCondVal": "EnergySaving",
    "ActualCondVal": "<=/CoolingConfig_1.SmartCoolingMode",
    "TemperatureRangeLow": [-127, 20, 30, 40, 50],
    "TemperatureRangeHigh": [20, 30, 40, 50, 127],
    "SpeedRangeLow": [20, 32, 70, 100],
    "SpeedRangeHigh": [20, 32, 70, 100],
    "FanType": ["02314BLG 8038+"]
  }
}

高性能模式调速策略

json
{
  "CoolingPolicy_HighPerformance": {
    "PolicyIdx": 7,
    "ExpCondVal": "HighPerformance",
    "ActualCondVal": "<=/CoolingConfig_1.SmartCoolingMode",
    "TemperatureRangeLow": [-127, 15, 25, 35, 45],
    "TemperatureRangeHigh": [15, 25, 35, 45, 127],
    "SpeedRangeLow": [40, 60, 80, 100],
    "SpeedRangeHigh": [40, 60, 80, 100],
    "FanType": ["02314BLG 8038+", "02314BLG 9038+"]
  }
}

低噪音模式调速策略

json
{
  "CoolingPolicy_LowNoise": {
    "PolicyIdx": 8,
    "ExpCondVal": "LowNoise",
    "ActualCondVal": "<=/CoolingConfig_1.SmartCoolingMode",
    "TemperatureRangeLow": [-127, 25, 35, 45, 55],
    "TemperatureRangeHigh": [25, 35, 45, 55, 127],
    "SpeedRangeLow": [15, 25, 45, 80],
    "SpeedRangeHigh": [15, 25, 45, 80],
    "FanType": ["02314BLG 8038+"]
  }
}

自定义模式调速策略

json
{
  "CoolingPolicy_Custom": {
    "PolicyIdx": 9,
    "ExpCondVal": "Custom",
    "ActualCondVal": "<=/CoolingConfig_1.SmartCoolingMode",
    "TemperatureRangeLow": [-127, 18, 28, 38, 48],
    "TemperatureRangeHigh": [18, 28, 38, 48, 127],
    "SpeedRangeLow": [25, 40, 65, 90],
    "SpeedRangeHigh": [25, 40, 65, 90],
    "FanType": ["02314BLG 8038+", "02314BLG 9038+", "02314BLG 7038+"]
  }
}

🔧 使用指南

配置步骤

  1. 策略ID配置:设置PolicyIdx为唯一的策略ID
  2. 生效条件配置:设置ExpCondVal和ActualCondVal
  3. 温度区间配置:设置TemperatureRangeLow和TemperatureRangeHigh
  4. 转速区间配置:设置SpeedRangeLow和SpeedRangeHigh
  5. 风扇类型配置:设置FanType支持的风扇类型列表
  6. 策略验证:验证策略配置的合理性和有效性

线性调速原理

  • 温度区间: 定义不同的温度范围
  • 转速区间: 对应每个温度区间的风扇转速
  • 线性插值: 在温度区间内进行线性插值计算转速
  • 分段控制: 不同温度段采用不同的转速控制策略

温度转速对应关系

  • 数组对应: 温度区间和转速区间数组一一对应
  • 区间定义: TemperatureRangeLow[i] <= 温度 < TemperatureRangeHigh[i]
  • 转速计算: 转速在SpeedRangeLow[i]和SpeedRangeHigh[i]之间线性插值
  • 边界处理: 超出范围的温度使用边界转速

调速模式说明

  • EnergySaving: 节能模式,优先降低功耗
  • HighPerformance: 高性能模式,优先保证散热
  • LowNoise: 低噪音模式,优先降低噪音
  • Custom: 自定义模式,用户自定义策略

风扇类型管理

  • 类型匹配: 只有匹配的风扇类型才应用策略
  • 型号识别: 通过风扇型号字符串进行匹配
  • 多类型支持: 支持多种风扇类型使用同一策略

注意事项

  • 区间合理性: 确保温度区间和转速区间配置合理
  • 数组长度: 温度区间和转速区间数组长度必须一致
  • 条件匹配: ExpCondVal和ActualCondVal必须匹配才能生效
  • 风扇兼容: 确保风扇类型配置与实际硬件匹配

故障排除

  1. 策略不生效

    • 检查ExpCondVal和ActualCondVal是否匹配
    • 确认风扇类型是否在FanType列表中
    • 验证CoolingConfig对象是否正确配置
  2. 转速异常

    • 检查温度区间和转速区间配置是否合理
    • 确认数组长度是否一致
    • 验证线性插值计算是否正确
  3. 温度响应异常

    • 检查温度传感器是否正常工作
    • 确认温度区间设置是否合理
    • 验证温度读取是否准确

性能优化

  • 策略切换: 优化不同调速模式的切换效率
  • 温度采样: 优化温度采样频率和精度
  • 转速控制: 优化风扇转速控制的响应速度

📚 相关文档