> Another question: are CSRs also memory mapped? In debug mode?
No, CSRs are not specified as memory-mapped (an implementation may choose to do so), even in Debug Mode.
The Debug Module (not the CPU) has an 'Access Register' abstract command (see Sec. 3.6.1 "Access Register" section of the Debug Module Spec) where it uses an Abstract Register Number to name all GPRs, FPRs and CSRs (see Table 3.3 in the Debug Spec). 0x0000-0x0FFF are used for CSRs, 0x1000-0x101F for GPRs, and 0x1020-103F for FPRs. This is not a 'memory-mapping' of CSRs, just the internal Debug Module (and GDB's) convention on how to name all registers.