CSR配置字典之CpldChip类
更新时间: 2026/06/01
在Gitcode上查看源码📋 文档信息
| 项目 | 内容 |
|---|---|
| 文档标题 | CpldChip类配置字典 |
| 版本 | v1.0 |
| 创建日期 | 2026-06-01 |
| 最后更新 | 2026-06-01 |
| 维护状态 | ✅ 活跃维护 |
📋 变更历史记录
文档变更记录
| 版本 | 发布日期 | 变更类型 | 变更内容 | 影响范围 | 维护人员 |
|---|---|---|---|---|---|
| v1.0 | 2026-06-01 | 初始版本 | 创建CpldChip类配置字典 | 全新文档 | 系统管理员 |
🎯 类概览
CpldChip 类
| 属性 | 值 |
|---|---|
| 类名称 | CpldChip |
| 功能描述 | CpldChip对象 |
| 所属SIG组 | hardware |
| 所属组件 | 芯片访问 |
| 责任人 | 芯片访问组 |
| 最后更新 | 2026-06-01 |
| 状态 | 🟢 正常运行 |
📊 属性定义详表
必选属性
| 属性名 | 类型 | 默认值 | 取值范围 | 动态关联 | 描述 | 使用场景 | 举例 | 来源 | 分类 |
|---|---|---|---|---|---|---|---|---|---|
OffsetWidth | U8 | - | U8 | - | 偏移宽度,代表Offset字段专用的字节数 | 器件访问参数 | 1 | CSR配置 | 硬件 |
Address | U32 | - | U32 | - | 器件总线地址 十进制,如0xC8的地址对应十进制200 | 器件访问参数 | 200 | CSR配置 | 硬件 |
可选属性
| 属性名 | 类型 | 默认值 | 取值范围 | 动态关联 | 描述 | 使用场景 | 举例 | 来源 | 分类 |
|---|---|---|---|---|---|---|---|---|---|
AddrWidth | U8 | - | U8 | - | 地址宽度,单位Byte,该参数实际无使用,无需配置 | 器件访问参数 | 1 | CSR配置 | 硬件 |
WriteTmout | U32 | - | U32 | - | 器件的写超时(目前仅针对canbus chip) | 使用canbus器件的操作超时时间 | 100 | CSR配置 | 硬件 |
ReadTmout | U32 | - | U32 | - | 器件的读超时(目前仅针对canbus chip) | 使用canbus器件的操作超时时间 | 100 | CSR配置 | 硬件 |
HealthStatus | U8 | 0 | U8 | - | 硬件的健康状态,暂未使用 | 暂未启用 | 0 | 组件更新 | 软件 |
PowerStatus | U8 | 1 | U8 | - | 硬件的上电状态,暂未使用 | 暂未启用 | 1 | 组件更新 | 软件 |
SelfTestResult | U8 | 1 | U8 | - | 自检结果 | 暂未启用 | 1 | 组件更新 | 软件 |
WriteRetryTimes | U8 | - | U8 | - | 写失败重试次数 | 当器件写失败时,进行重试 | 2 | CSR配置 | 软件 |
ReadRetryTimes | U8 | - | U8 | - | 读失败重试次数 | 当器件读失败时,进行重试 | 0 | CSR配置 | 软件 |
DrvWriteDelay | Mixed | - | Mixed | - | 驱动写延时 | Riser卡MCU升级存在帧传输超时,MCU接收错误帧后导致升级失败的问题,在Hisport驱动中写一帧数据后增加1ms延时 | `"<=/RiserCard_1.MCUVersion | > string.sub($1, 1, 4) | > expr($1 >= '1.12' ? 0 : 1)"` |
🔗 动态关联机制
语法规范
使用多种动态关联语法:
yaml
# 基础配置
OffsetWidth: 1
AddrWidth: 1
Address: 200
# 动态延时控制
DrvWriteDelay: "<=/RiserCard_1.MCUVersion |> string.sub($1, 1, 4) |> expr($1 >= '1.12' ? 0 : 1)"关联说明
- 基础访问参数: Address、OffsetWidth、AddrWidth配置芯片的基本访问参数
- 动态延时: DrvWriteDelay支持基于版本的动态延时配置
- 表达式计算: 支持复杂的表达式计算和条件判断
📂 分类标准
硬件属性
- 定义:与芯片硬件访问直接相关的参数
- 特点:控制芯片的通信协议、地址配置和汇聚数据访问
- 示例:
OffsetWidth,AddrWidth,Address,WriteTmout,ReadTmout
软件属性
- 定义:由软件管理和维护的参数
- 特点:状态监控、重试机制和驱动控制
- 示例:
PowerStatus,SelfTestResult,HealthStatus,WriteRetryTimes,ReadRetryTimes,DrvWriteDelay
📝 配置示例
json
{
"CpldChip_1": {
"OffsetWidth": 1,
"AddrWidth": 1,
"Address": 200,
"WriteTmout": 100,
"ReadTmout": 100,
"PowerStatus": 1,
"SelfTestResult": 1,
"HealthStatus": 0,
"WriteRetryTimes": 2,
"ReadRetryTimes": 0,
"DrvWriteDelay": "<=/RiserCard_1.MCUVersion |> string.sub($1, 1, 4) |> expr($1 >= '1.12' ? 0 : 1)"
}
}🔧 使用指南
配置步骤
- 基础参数配置:设置OffsetWidth、AddrWidth、Address等基本访问参数
- 超时参数配置:设置WriteTmout和ReadTmout(主要用于canbus)
- 重试机制配置:设置WriteRetryTimes和ReadRetryTimes
- 特殊延时配置:如需要,配置DrvWriteDelay