CSR 位字段

RISC-V dscratch1 CSR 寄存器详解

地址 0x7B3特权级 仅 Debug 模式访问 读写 / DXLENDebug、Trace 与 trigger CSR

dscratch1(地址 0x7B3)是可选的 Debug 模式 scratch CSR 1,供实现按其需要使用。

位作用速览
bit 3 = 只有第 3 位;bits 12..11 = 第 12 到第 11 位
高位 MSB低位 LSB
字段映射

按 bit 字段理解 dscratch1

1 个关键字段
DXLEN-1:0

VALUE

读写

dscratch1 的完整 DXLEN 宽读写 scratch 值。该寄存器是可选的,Debug Module 可能在内部使用它。

这个字段控制什么

  • - dscratch1 的完整 DXLEN 宽读写 scratch 值。该寄存器是可选的,Debug Module 可能在内部使用它。

常见取值

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

打开官方手册

读这个 CSR 时先看什么

  • - dscratch1 是可选寄存器;访问未实现的 Core Debug Register 会引发 illegal-instruction 异常。
  • - dscratch1 位于 0x7B0-0x7BF Debug-mode-only CSR 区间,只能从 Debug 模式访问。
  • - 调试器只有在 hartinfo 明确提到 dscratch1 时才可写入,因为 Debug Module 可能在内部使用它。

写入前的风险检查

  • - 仅当 hartinfo 明确提到 dscratch1 时,调试器才可写入它;Debug Module 可能在内部使用该寄存器。

放回真实流程里理解

1

确认 hart 的 Debug Module 是否通过 hartinfo 提供 dscratch1。

2

只从 Debug 模式访问 dscratch1。

3

只有在 hartinfo 明确提到 dscratch1 时才由调试器写入。