Instances
| Instance | Domain | Base address | TrustZone | Split access | Description | ||
|---|---|---|---|---|---|---|---|
| Map | Att | DMA | |||||
|
VPR00 : S |
GLOBAL |
0x5004C000 |
US | NS | NA | No |
FLPR - VPR peripheral registers |
Configuration
| Instance | Domain | Configuration |
|---|---|---|
|
VPR00 : S |
GLOBAL |
VEVIF indexes 16 through 19 maps onto DPPI channels 0 through 4 Supports RV32E (Base Integer Instruction Set embedded) Supports M extension (Integer Multiplication and Division) Supports C extension (compressed instructions) Supports Zba extension (Bit Manipulation - Address generation instructions) Supports Zbb extension (Bit Manipulation - Basic bit manipulation) Supports Zbc extension (Bit Manipulation - Carry-less multiplication) Supports Zbs extension (Bit Manipulation - Single bit instructions) Supports Zcb extension (code-size saving instructions) Does not support FENCE.I instruction (use FENCE instruction instead) Supports CSR (Control and Status Register) instructions Does not support CNTR (base counter) instructions Supports M-mode CLIC (interrupt controller) Supports MCLICCFG register Supports external debugger Debugger supports triggers (breakpoints) Boot vector (INIT_PC_RESET_VALUE): 0x00000000 Self-booting (VPR_START_RESET_VALUE): 0 VPR RAM base address (RAM_BASE_ADDR): 0x20000000 VPR RAM size (RAM_SZ): 20 (Value in bytes is computed as 2^(RAM size)) Retain registers in Deep Sleep mode: 0 Restore VPR context at VPR reset using register [NRF_MEMCONF->POWER1.RET].MEM[0] VPR context save address: 0x2007FD40 VPR context save size: 512 bytes VPR remap address: 0x00000000 VEVIF tasks: 16..22 Mask of supported VEVIF tasks: 0x007F0000 VEVIF DPPI indices: 16..19 Mask of supported VEVIF DPPI channels: 0x000F0000 VEVIF events: 16..22 Mask of supported VEVIF events: 0x00100000 Debugger interface register offset: 0x5004C400 New RTP features |
Register overview
| Register | Offset | TZ | Description |
|---|---|---|---|
| TASKS_TRIGGER[n] | 0x000 |
VPR task [n] register |
|
| SUBSCRIBE_TRIGGER[n] | 0x080 |
Subscribe configuration for task TASKS_TRIGGER[n] |
|
| EVENTS_TRIGGERED[n] | 0x100 |
VPR event [n] register |
|
| PUBLISH_TRIGGERED[n] | 0x180 |
Publish configuration for event EVENTS_TRIGGERED[n] |
|
| INTEN | 0x300 |
Enable or disable interrupt |
|
| INTENSET | 0x304 |
Enable interrupt |
|
| INTENCLR | 0x308 |
Disable interrupt |
|
| INTPEND | 0x30C |
Pending interrupts |
|
| DEBUGIF.DATA0 | 0x410 |
Abstract Data 0. Read/write data for argument 0 |
|
| DEBUGIF.DATA1 | 0x414 |
Abstract Data 1. Read/write data for argument 1 |
|
| DEBUGIF.DMCONTROL | 0x440 |
Debug Module Control |
|
| DEBUGIF.DMSTATUS | 0x444 |
Debug Module Status |
|
| DEBUGIF.HARTINFO | 0x448 |
Hart Information |
|
| DEBUGIF.HALTSUM1 | 0x44C |
Halt Summary 1 |
|
| DEBUGIF.HAWINDOWSEL | 0x450 |
Hart Array Window Select |
|
| DEBUGIF.HAWINDOW | 0x454 |
Hart Array Window |
|
| DEBUGIF.ABSTRACTCS | 0x458 |
Abstract Control and Status |
|
| DEBUGIF.ABSTRACTCMD | 0x45C |
Abstract command |
|
| DEBUGIF.ABSTRACTAUTO | 0x460 |
Abstract Command Autoexec |
|
| DEBUGIF.CONFSTRPTR[n] | 0x464 |
Configuration String Pointer [n] |
|
| DEBUGIF.NEXTDM | 0x474 |
Next Debug Module |
|
| DEBUGIF.PROGBUF[n] | 0x480 |
Program Buffer [n] |
|
| DEBUGIF.AUTHDATA | 0x4C0 |
Authentication Data |
|
| DEBUGIF.HALTSUM2 | 0x4D0 |
Halt Summary 2 |
|
| DEBUGIF.HALTSUM3 | 0x4D4 |
Halt Summary 3 |
|
| DEBUGIF.SBADDRESS3 | 0x4DC |
System Bus Addres 127:96 |
|
| DEBUGIF.SBCS | 0x4E0 |
System Bus Access Control and Status |
|
| DEBUGIF.SBADDRESS0 | 0x4E4 |
System Bus Addres 31:0 |
|
| DEBUGIF.SBADDRESS1 | 0x4E8 |
System Bus Addres 63:32 |
|
| DEBUGIF.SBADDRESS2 | 0x4EC |
System Bus Addres 95:64 |
|
| DEBUGIF.SBDATA0 | 0x4F0 |
System Bus Data 31:0 |
|
| DEBUGIF.SBDATA1 | 0x4F4 |
System Bus Data 63:32 |
|
| DEBUGIF.SBDATA2 | 0x4F8 |
System Bus Data 95:64 |
|
| DEBUGIF.SBDATA3 | 0x4FC |
System Bus Data 127:96 |
|
| DEBUGIF.HALTSUM0 | 0x500 |
Halt summary 0 |
|
| CPURUN | 0x800 |
State of the CPU after a core reset |
|
| VPRSTATUS | 0x804 |
VPR state information. |
|
| INITPC | 0x808 |
Initial value of the PC at CPU start. |