CSR 位字段

RISC-V tselect CSR 寄存器详解

地址 0x7A0特权级 M 模式/Debug 模式访问 读写 / XLEN调试触发器 CSR

tselect 是可选的 XLEN 位 WARL CSR,选择可通过其他 Trigger Module 寄存器访问的触发器。

字段映射

按 bit 字段理解 tselect

1 个关键字段
XLEN-1:0

INDEX

WARL

所选触发器索引。可访问索引从 0 开始且连续;写入不受支持索引可能读回不同值,或选择 type=0 的触发器。

这个字段控制什么

  • - 所选触发器索引。可访问索引从 0 开始且连续;写入不受支持索引可能读回不同值,或选择 type=0 的触发器。

常见取值

这个字段更适合结合上下文字段解释,不用按固定枚举背诵。

打开官方手册
官方依据与检索要点

tselect 选择由 tdata1、tdata2 和 tdata3 访问的触发器。

可访问的触发器索引必须从 0 开始且连续。
不受支持的索引可能读回不同值或指向 type=0。

读这个 CSR 时先看什么

  • - 若未实现任何触发器,tselect 为可选;访问未实现的 Trigger Module 寄存器会触发非法指令异常。
  • - tselect 仅可在 M 模式和 Debug 模式访问。

写入前的风险检查

  • - 外部调试器修改 tselect 后必须恢复它。
  • - 写后读回 tselect,并读取 tdata1 确认 type 非零。

放回真实流程里理解

1

写入索引。

2

读回 tselect。

3

读取 tdata1.type 确认选中的触发器存在。