SPRUJ79 November 2024 F29H850TU , F29H859TU-Q1
Table 6-7 lists the memory-mapped registers for the PIPE_REGS registers. All register offset addresses not listed in Table 6-7 should be considered as reserved locations and the register contents should not be modified.
| Offset | Acronym | Register Name | Protection |
|---|---|---|---|
| 0h | RTINT_THRESHOLD | Interrupt threshold register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, LOCK: LOCK.GLOBAL_LOCK,, PARITY |
| 4h | INT_GRP_MASK | Interrupt group mask register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK,LOCK: LOCK.GLOBAL_LOCK, PARITY |
| 8h | GLOBAL_EN | Global enable for INT and RTINT | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK,LOCK: LOCK.GLOBAL_LOCK,KEY:KEY=0xface, PARITY |
| Ch | REVISION | Reserved | PARITY |
| 20h | CPU_INT_STS | CPU interrupt status | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, PARITY |
| 24h | RST_VECT | Reset vector register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK,LOCK: LOCK.GLOBAL_LOCK, PARITY |
| 28h | RST_LINK_OWNER | Reset link owner register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, PARITY |
| 2Ch | NMI_STS | Non Maskable Interrupt status register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, PARITY |
| 30h | NMI_VECT | Non Maskable Interrupt vector register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK,LOCK: LOCK.GLOBAL_LOCK, PARITY |
| 34h | NMI_LINK_OWNER | Non Maskable Interrupt link owner register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, PARITY |
| 40h | MEM_ECC_DIAG | ECC diagnostics register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, KEY:KEY=0x5a5a, PARITY |
| 44h | MEM_INIT | PIPE vector memory initialization register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, KEY:KEY=0x5a5a |
| 48h | MEM_INIT_STS | PIPE memory initialization status register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, PARITY |
| 4Ch | INT_SEC_STS | Interrupt security status register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, PARITY |
| 50h | INT_SEC_CLR | Interrupt security clear register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK |
| 60h | RTINT_SP_L | RTINT stack limit register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK |
| 64h | RTINT_SP_H | RTINT stack limit register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, PARITY |
| 68h | RTISP_STS | RTINT Stack pointer violation status register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK |
| 6Ch | INTSP | INT stack pointer | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, PARITY |
| 80h | LOCK | PIPE lock register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, KEY:KEY=0x5a5a, PARITY |
| 84h | COMMIT | PIPE commit register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, KEY:KEY=0x5a5a, PARITY |
| 90h | TASK_CTRL | Task control register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, KEY:KEY=0xcafe, PARITY |
| 94h | BOOT_LINK_CTRL | Boot Link control to lock out BOOT_LINK | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, KEY:KEY=0xface, PARITY |
| 98h | INT_VECT_MAPPING | Interrupt vector mapping for LFU, FOTA, and INT vector swapping support | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, KEY:KEY=0xcafe, PARITY |
| A0h | MMR_CLR | PIPE MMR clear register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK |
| A4h | ALL_FLAG_CLR | PIPE flag clear register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, KEY:KEY=0xfeed, PARITY |
| B0h | REG_PARITY_DIAG_DATA | Register parity Diagnostic data | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK |
| B8h | REG_PARITY_DIAG_PARITY | Register parity Diagnostic Parity | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK |
| C0h | REG_PARITY_DIAG_ASSERT | Register parity Assert diagnostic | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK, KEY |
| C8h | REG_PARITY_CHECK | Enabling the Parity check | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK,KEY, PARITY |
| CCh | REG_PARITY_READ | Enabling the Parity read | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK,KEY, PARITY |
| 1000h + formula | INT_CTL_L_y | Interrupt low flag and status control register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK,, PARITY |
| 2000h + formula | INT_CTL_H_y | Interrupt high flag and status control register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK,, PARITY |
| 3000h + formula | INT_CONFIG_y | Interrupt configuration register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK,LOCK: LOCK.CONFIG_LOCK , PARITY |
| 4000h + formula | INT_LINK_OWNER_y | Interrupt link ownership config register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK,LOCK: LOCK.LINK_LOCK |
| 5000h + formula | INT_VECT_ADDR_y | Interrupt vector address | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK,LOCK: LOCK.VECT_LOCK |
| 6000h + formula | INT_LINK_OWNER_LFU_y | Interrupt link ownership config register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK,LOCK: LOCK.LINK_LOCK |
| 7000h + formula | INT_VECT_ADDR_LFU_y | Interrupt vector address | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK,LOCK: LOCK.VECT_LOCK |
| 8000h | SELFTEST_DIAG_DATA0 | Diagnostics data register 0 | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK |
| 8004h | SELFTEST_DIAG_DATA1 | Diagnostics data register 1 | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK |
| 8020h | SELFTEST_DIAG_ECC | Diagnostics ECC | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK |
| 8028h | SELFTEST_DIAG_CONTROL | Diagnostic test enable. | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK |
| 802Ch | SELFTEST_DIAG_STATUS | Diagnostic status register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK |
| 8030h | SELFTEST_DIAG_STATUS_CLR | Diagnostic status clear register | SROOT_LINK_RW, BOOT_LINK_RW: BOOT_LINK_CTRL.BOOT_LINK_LOCK |
Complex bit access types are encoded to fit into small table cells. Table 6-8 shows the codes that are used for access types in this section.
| Access Type | Code | Description |
|---|---|---|
| Read Type | ||
| R | R | Read |
| R-0 | R -0 | Read Returns 0s |
| Write Type | ||
| W | W | Write |
| W1C | W 1C | Write 1 to clear |
| W1S | W 1S | Write 1 to set |
| WSonce | W Sonce | Write Set once |
| Reset or Default Value | ||
| -n | Value after reset or the default value | |
| Register Array Variables | ||
| i,j,k,l,m,n | When these variables are used in a register name, an offset, or an address, they refer to the value of a register array where the register is part of a group of repeating registers. The register groups form a hierarchical structure and the array is represented with a formula. | |
| y | When this variable is used in a register name, an offset, or an address it refers to the value of a register array. | |
RTINT_THRESHOLD is shown in Figure 6-5 and described in Table 6-9.
Return to the Summary Table.
Interrupt threshold register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||||||||||
| R-0h | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | INT_RTINT_THRESHOLD | ||||||||||||||
| R-0h | R/W-0h | ||||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-8 | RESERVED | R | 0h | Reserved |
| 7-0 | INT_RTINT_THRESHOLD | R/W | 0h | Interrupt threshold value to assign an incoming interrupt as a RTINT, INT, or Supervisor INT interrupt. If INT_CONFIGx.PRI_LEVEL < INT_RTINT_THRESHOLD, the incoming interrupt is a RTINT. If INT_CONFIGx.PRI_LEVEL >= INT_RTINT_THRESHOLD, the incoming interrupt is an INT. If INT_CONFIGx.PRI_LEVEL == INT_RTINT_THRESHOLD and TASK_CTRL.SUP_IGN_INTE_EN is set, the incoming interrupt is a Supervisor INT. Reset type: SYSRSn |
INT_GRP_MASK is shown in Figure 6-6 and described in Table 6-10.
Return to the Summary Table.
Interrupt group mask register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||||||||||
| R-0h | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | INT_GRP_MASK | ||||||||||||||
| R-0h | R/W-FFh | ||||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-8 | RESERVED | R | 0h | Reserved |
| 7-0 | INT_GRP_MASK | R/W | FFh | Interrupt group mask bits. 0xFF: All interrupts can nest in one another. All interrupt levels are in individual groups, so 256 configurable priorities are available with 1 interrupt level in each. 0xFE:128 priority groups with 2 interrupt levels in each, hence the number of priorities reduce to 128 for preemption. 0xFC: 64 priority groups with 4 interrupt levels in each, hence the number of priorities reduce to 64 for preemption. 0xF8: 32 priority groups with 8 interrupt levels in each, hence the number of priorities reduce to 32 for preemption. 0xF0: 16 priority groups with 16 interrupt levels in each, hence the number of priorities reduce to 16 for preemption. 0xE0: 8 priority groups with 32 interrupt levels in each, hence the number of priorities reduce to 8 for preemption. 0xC0: 4 priority groups with 64 interrupt levels in each, hence the number of priorities reduce to 4 for preemption. 0x80: 2 priority groups with 128 interrupt levels in each, hence the number of priorities reduce to 2 for preemption. 0x00: No interrupts can nest in one another. All interrupt levels are in one group, so configurable priorities are used for the highest priority interrupt. There is no nesting of interrupt levels regardless of INT or RTINT status. All other values: If any other value is used, the mask value defaults to 0xFF which correlates to no group mask. Reset type: SYSRSn |
GLOBAL_EN is shown in Figure 6-7 and described in Table 6-11.
Return to the Summary Table.
Global enable for INT and RTINT
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| KEY | |||||||||||||||
| R-0/W-0h | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | ENABLE | ||||||||||||||
| R-0h | R/W-0h | ||||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-16 | KEY | R-0/W | 0h | Write Key. 0xFACE Writes to all bits in this register are enabled. Other Values: Writes to any bits in this register are ignored, including separate 16-bit writes. NOTE: The key is cleared immediately after writing, so it must be written again for every change to this register. Reset type: SYSRSn |
| 15-2 | RESERVED | R | 0h | Reserved |
| 1-0 | ENABLE | R/W | 0h | Global enable bit to disable forwarding of INT and RTINT interrupts to CPU. Write of '11' will enable INT & RTINT. Note: 1. Does not impact arbitration. 2. Enables/disables should be within the ATOMIC block of CPU to have predictable behavior of PIPE and CPU interrupt response. Reset type: SYSRSn |
REVISION is shown in Figure 6-8 and described in Table 6-12.
Return to the Summary Table.
Reserved
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | RESERVED | MAJREV | MINREV | ||||||||||||||||||||||||||||
| R-0h | R-0h | R-0h | R-0h | ||||||||||||||||||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-24 | RESERVED | R | 0h | Reserved |
| 23-16 | RESERVED | R | 0h | Reserved |
| 15-8 | MAJREV | R | 0h | This hardcoded field defines the major revision of the IP. Reset type: SYSRSn |
| 7-0 | MINREV | R | 0h | This hardcoded field defines the minor revision of the IP. Reset type: SYSRSn |
CPU_INT_STS is shown in Figure 6-9 and described in Table 6-13.
Return to the Summary Table.
CPU interrupt status
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| LAST_RTINT_PRIOLVL | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| LAST_INT_PRIOLVL | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | LAST_INTSTS | ||||||
| R-0h | R-0h | ||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-24 | RESERVED | R | 0h | Reserved |
| 23-16 | LAST_RTINT_PRIOLVL | R | 0h | Priority level of the last RTINT interrupt in service captured when DSTS.INTS='10'. Reset type: SYSRSn |
| 15-8 | LAST_INT_PRIOLVL | R | 0h | Priority level of the last INT interrupt in service captured when DSTS.INTS='01'. Reset type: SYSRSn |
| 7-2 | RESERVED | R | 0h | Reserved |
| 1-0 | LAST_INTSTS | R | 0h | Captures the DSTS.INTS values when INTS = '01' or '10' to track the last serviced interrupt type as either INT or RTINT. NOTE: For current status of the CPU, check DSTS.INTS Reset type: SYSRSn |
RST_VECT is shown in Figure 6-10 and described in Table 6-14.
Return to the Summary Table.
Reset vector register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| VECT | |||||||||||||||||||||||||||||||
| R-Xh | |||||||||||||||||||||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-0 | VECT | R | Xh | Reset vector location where the CPU branches on reset de-assertion. For CPU1, this field is set as 0x0 as input from BOOTROM. For CPU2/3, this field is input from the SSU. Reset type: SYSRSn |
RST_LINK_OWNER is shown in Figure 6-11 and described in Table 6-15.
Return to the Summary Table.
Reset link owner register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||||||||||
| R-0h | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | LINK_OWNER | ||||||||||||||
| R-0h | R-Xh | ||||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-4 | RESERVED | R | 0h | Reserved |
| 3-0 | LINK_OWNER | R | Xh | Reset vector link owner. For CPU1, this field is set as 0x0 as input from BOOTROM. For CPU2/3, this field is input from the SSU. Reset type: SYSRSn |
NMI_STS is shown in Figure 6-12 and described in Table 6-16.
Return to the Summary Table.
Non Maskable Interrupt status register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | NMI_CLR | NMI_FLAG | |||||
| R-0h | R-0/W1C-0h | R-0h | |||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-2 | RESERVED | R | 0h | Reserved |
| 1 | NMI_CLR | R-0/W1C | 0h | Clear active status of NMI_FLAG. Reset type: SYSRSn |
| 0 | NMI_FLAG | R | 0h | Indicates when the NMI interrupt line is active to the CPU. This field is automatically cleared when the CPU enters the NMI ISR (ACK from the CPU). NMI behaves similar to a pulse interrupt. Reset type: SYSRSn |
NMI_VECT is shown in Figure 6-13 and described in Table 6-17.
Return to the Summary Table.
Non Maskable Interrupt vector register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| VECT | |||||||||||||||||||||||||||||||
| R/W-Xh | |||||||||||||||||||||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-0 | VECT | R/W | Xh | NMI vector location. This field can be written by SW. For CPU1, this field is set as 0x40 as input from BOOTROM. For CPU2/3, this field is input from the SSU. Reset type: SYSRSn |
NMI_LINK_OWNER is shown in Figure 6-14 and described in Table 6-18.
Return to the Summary Table.
Non Maskable Interrupt link owner register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||||||||||
| R-0h | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | LINK_OWNER | ||||||||||||||
| R-0h | R/W-Xh | ||||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-4 | RESERVED | R | 0h | Reserved |
| 3-0 | LINK_OWNER | R/W | Xh | NMI vector link owner. For CPU1, this field is set as 0x0 as input from BOOTROM. For CPU2/3, this field is input from the SSU. Reset type: SYSRSn |
MEM_ECC_DIAG is shown in Figure 6-15 and described in Table 6-19.
Return to the Summary Table.
ECC diagnostics register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | MEM_SIC_DIAG_EN | ECC_VIEW | |||||
| R-0h | R/W-0h | R/W-0h | |||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-16 | KEY | R-0/W | 0h | Write Key. 0x5A5A: Writes to all bits in this register are enabled. Other Values: Writes to any bits in this register are ignored, including separate 16-bit writes. NOTE: The key is cleared immediately after writing, so it must be written again for every change to this register. Reset type: SYSRSn |
| 15-2 | RESERVED | R | 0h | Reserved |
| 1 | MEM_SIC_DIAG_EN | R/W | 0h | 0x0: Memory safe interconnect diagnostics disabled. Access to Memory will be normal. 0x1: Memory safe interconnect diagnostics enable. When enabled user can write to vector memory without altering ECC fields to insert single bit/ double bit errors. This enables to insert errors in fields. Reset type: SYSRSn |
| 0 | ECC_VIEW | R/W | 0h | 0x0: Read on INT_{#}_VECT_ADDR address will return 32 bit vector address 0x1: Read on INT_{#}_VECT_ADDR will reflect ECC value on [6:0] and remaining bits will be Zero Reset type: SYSRSn |
MEM_INIT is shown in Figure 6-16 and described in Table 6-20.
Return to the Summary Table.
PIPE vector memory initialization register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| KEY | |||||||||||||||
| R-0/W-0h | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | INIT | ||||||||||||||
| R-0h | R-0/W-0h | ||||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-16 | KEY | R-0/W | 0h | Write Key. 0x5A5A: Writes to all bits in this register are enabled. Other Values: Writes to any bits in this register are ignored, including separate 16-bit writes. NOTE: The key is cleared immediately after writing, so it must be written again for every change to this register. Reset type: SYSRSn |
| 15-2 | RESERVED | R | 0h | Reserved |
| 1-0 | INIT | R-0/W | 0h | Memory initialization start. 2'b11: Triggers vector memory initialization which is done by BOOTROM. NOTE: By default memory initialization is not asserted on reset de-assertion. SW needs to initiate by writing 2'b11 to this field. Reset type: SYSRSn |
MEM_INIT_STS is shown in Figure 6-17 and described in Table 6-21.
Return to the Summary Table.
PIPE memory initialization status register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | INIT_STS | ||||||
| R-0h | R-0h | ||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-2 | RESERVED | R | 0h | Reserved |
| 1-0 | INIT_STS | R | 0h | Memory initialization. 2'b00 : Reset value 2'b01 : Memory initialization is ongoing. 2'b10 : Memory initialization completed. 2'b11 : Reserved Reset type: SYSRSn |
INT_SEC_STS is shown in Figure 6-18 and described in Table 6-22.
Return to the Summary Table.
Interrupt security status register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | SEC_FAIL_FLAG | ||||||
| R-0h | R-0h | ||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-1 | RESERVED | R | 0h | Reserved |
| 0 | SEC_FAIL_FLAG | R | 0h | VBUSP security fail status flag outputs an error when access permissions to PIPE memory mapped registers and vector tables are violated. Check the details of security privileges for different register types. Reset type: SYSRSn |
INT_SEC_CLR is shown in Figure 6-19 and described in Table 6-23.
Return to the Summary Table.
Interrupt security clear register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | SEC_FAIL_FLAG_CLR | ||||||
| R-0h | R-0/W1C-0h | ||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-1 | RESERVED | R | 0h | Reserved |
| 0 | SEC_FAIL_FLAG_CLR | R-0/W1C | 0h | Clear bit for SEC_FAIL_FLAG status bit. Reset type: SYSRSn |
RTINT_SP_L is shown in Figure 6-20 and described in Table 6-24.
Return to the Summary Table.
RTINT stack limit register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||||||||||
| R-0h | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | MAXRTISP | RESERVED | RTISP | ||||||||||||
| R-0h | R-Fh | R-0h | R-0h | ||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-13 | RESERVED | R | 0h | Reserved |
| 12-8 | MAXRTISP | R | Fh | Maximum Real Time Interrupt Stack Pointer comparison point to stop RTINT nesting and issue an NMI. Reset type: SYSRSn |
| 7-5 | RESERVED | R | 0h | Reserved |
| 4-0 | RTISP | R | 0h | Real Time Interrupt Stack Pointer. Reset type: SYSRSn |
RTINT_SP_H is shown in Figure 6-21 and described in Table 6-25.
Return to the Summary Table.
RTINT stack limit register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||||||||||
| R-0h | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| WARNRTISP_PRIO_LEVEL | RESERVED | WARNRTISP | |||||||||||||
| R/W-0h | R-0h | R/W-Fh | |||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-16 | RESERVED | R | 0h | Reserved |
| 15-8 | WARNRTISP_PRIO_LEVEL | R/W | 0h | RTINT Stack Pointer warning priority level to be used as a threshold for forwarding RTINT upon RTINT stack pointer reaches warning level. Only interrupts of higher priority than this level are sent to CPU. Reset type: SYSRSn |
| 7-5 | RESERVED | R | 0h | Reserved |
| 4-0 | WARNRTISP | R/W | Fh | Warning Real Time Interrupt Stack Pointer comparison point to slow down RTINT nesting and stack growth as a warning for application. NOTE: With the default value of 0xF, PIPE does not generate an interrupt as a warning and will directly generate an interrupt with MAXRTISP. Reset type: SYSRSn |
RTISP_STS is shown in Figure 6-22 and described in Table 6-26.
Return to the Summary Table.
RTINT Stack pointer violation status register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | MAXRTISP_STS | WARNRTISP_STS | |||||
| R-0h | R-0h | R-0h | |||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-2 | RESERVED | R | 0h | Reserved |
| 1 | MAXRTISP_STS | R | 0h | RTINT Stack Pointer max breach status. Reset type: SYSRSn |
| 0 | WARNRTISP_STS | R | 0h | RTINT Stack Pointer warning status. Reset type: SYSRSn |
INTSP is shown in Figure 6-23 and described in Table 6-27.
Return to the Summary Table.
INT stack pointer
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||||||||||
| R-0h | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | INTSP | ||||||||||||||
| R-0h | R/W-0h | ||||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-4 | RESERVED | R | 0h | Reserved |
| 3-0 | INTSP | R/W | 0h | This register provides the stack pointer for INT. CPU will only acknowledge the INT when its current execution stack matched with INTSP. Reset type: SYSRSn |
LOCK is shown in Figure 6-24 and described in Table 6-28.
Return to the Summary Table.
PIPE lock register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | VECT_LOCK | GLOBAL_LOCK | CONFIG_LOCK | LINK_LOCK | |||
| R-0h | R/W-0h | R/W-0h | R/W-0h | R/W-0h | |||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-16 | KEY | R-0/W | 0h | Write Key. 0x5A5A: Writes to all bits in this register are enabled. Other Values: Writes to any bits in this register are ignored, including separate 16-bit writes. NOTE: The key is cleared immediately after writing, so it must be written again for every change to this register. Reset type: SYSRSn |
| 15-4 | RESERVED | R | 0h | Reserved |
| 3 | VECT_LOCK | R/W | 0h | Lock bit for all INT_{#}_VECT_ADDR registers. 0x0: Writes are allowed to all INT_{#}_VECT_ADDR registers with appropriate permissions. 0x1: Writes are not allowed to any INT_{#}_VECT_ADDR. Reset type: SYSRSn |
| 2 | GLOBAL_LOCK | R/W | 0h | Lock bit for following registers: 1. RTINT_THRESHOLD 2. INT_GRP_MASK 3. GLOBAL_EN 4. NMI_VECT 5. NMI_LINK 0x0: Writes are allowed to above registers. 0x1: Writes are not allowed to above registers. Reset type: SYSRSn |
| 1 | CONFIG_LOCK | R/W | 0h | Lock bit for all INT_{#}_CONFIG registers 0x0: Writes are allowed to all INT_{#}_CONFIG registers with appropriate permissions. 0x1: Writes are not allowed to any INT_{#}_CONFIG. Reset type: SYSRSn |
| 0 | LINK_LOCK | R/W | 0h | Lock bit for all INT_{#}_LINK_OWNER registers. 0x0: Writes are allowed to all INT_{#}_LINK_OWNER registers with appropriate permissions. 0x1: Writes are not allowed to any INT_{#}_LINK_OWNER. Reset type: SYSRSn |
COMMIT is shown in Figure 6-25 and described in Table 6-29.
Return to the Summary Table.
PIPE commit register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | VECT_COMMIT | GLOBAL_COMMIT | CONFIG_COMMIT | LINK_COMMIT | |||
| R-0h | R/WSonce-0h | R/WSonce-0h | R/WSonce-0h | R/WSonce-0h | |||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-16 | KEY | R-0/W | 0h | Write Key. 0x5A5A: Writes to all bits in this register are enabled. Other Values: Writes to any bits in this register are ignored, including separate 16-bit writes. NOTE: The key is cleared immediately after writing, so it must be written again for every change to this register. Reset type: SYSRSn |
| 15-4 | RESERVED | R | 0h | Reserved |
| 3 | VECT_COMMIT | R/WSonce | 0h | Commit bit for LOCK.VECT_LOCK. 0x0: Writes to LOCK.VECT_LOCK register bit is allowed. 0x1: Writes to LOCK.VECT_LOCK register bit is not allowed. Reset type: SYSRSn |
| 2 | GLOBAL_COMMIT | R/WSonce | 0h | Commit bit for LOCK.GLOBAL_LOCK. 0x0: Writes to LOCK.GLOBAL_LOCK register bit is allowed. 0x1: Writes to LOCK.GLOBAL_LOCK register bit is not allowed. Reset type: SYSRSn |
| 1 | CONFIG_COMMIT | R/WSonce | 0h | Commit bit for LOCK.CONFIG_LOCK. 0x0: Writes to LOCK.CONFIG_LOCK register bit is allowed. 0x1: Writes to LOCK.CONFIG_LOCK register bit is not allowed. Reset type: SYSRSn |
| 0 | LINK_COMMIT | R/WSonce | 0h | Commit bit for LOCK.LINK_LOCK register bit. 0x0: Writes to LOCK.LINK_LOCK register bit is allowed. 0x1: Writes to LOCK.LINK_LOCK register bit is not allowed. Reset type: SYSRSn |
TASK_CTRL is shown in Figure 6-26 and described in Table 6-30.
Return to the Summary Table.
Task control register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | SUP_IGN_INTE_EN | ||||||
| R-0h | R/W-0h | ||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | ACTIVE_CONTEXT_ID | ||||||
| R-0h | R/W-0h | ||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-16 | KEY | R-0/W | 0h | Write Key. 0xCAFE: Writes to all bits in this register are enabled. Other Values: Writes to any bits in this register are ignored, including separate 16-bit writes. NOTE: The key is cleared immediately after writing, so it must be written again for every change to this register. Reset type: SYSRSn |
| 15-9 | RESERVED | R | 0h | Reserved |
| 8 | SUP_IGN_INTE_EN | R/W | 0h | This field enables the highest priority INT interrupt to be used without regard to DSTS.INTE enable within the CPU. Reset type: SYSRSn |
| 7-2 | RESERVED | R | 0h | Reserved |
| 1-0 | ACTIVE_CONTEXT_ID | R/W | 0h | This field acts as a mask for enabling the interrupt in arbitration participation or not. Each interrupt line has CONTEXT_ID in its configuration register. Interrupts for which this field matches the corresponding CONTEXT_ID participate in interrupt arbitration with this decoding: '00' - Context 0 - Default context where all interrupts are in this context. '01' - Context 1 '10' - Context 2 '11' - Reserved Reset type: SYSRSn |
BOOT_LINK_CTRL is shown in Figure 6-27 and described in Table 6-31.
Return to the Summary Table.
Boot Link control to lock out BOOT_LINK
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | BOOT_LINK_LOCK | ||||||
| R-0h | R/WSonce-0h | ||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-16 | KEY | R-0/W | 0h | Write Key. 0xFACE: Writes to all bits in this register are enabled. Other Values: Writes to any bits in this register are ignored, including separate 16-bit writes. NOTE: The key is cleared immediately after writing, so it must be written again for every change to this register. Reset type: SYSRSn |
| 15-1 | RESERVED | R | 0h | Reserved |
| 0 | BOOT_LINK_LOCK | R/WSonce | 0h | This register when set, locks any further write access from BOOT LINK to the PIPE configuration registers. Once the bit is set, it has no effect of any write or any other change till the next reset. Reset type: SYSRSn |
INT_VECT_MAPPING is shown in Figure 6-28 and described in Table 6-32.
Return to the Summary Table.
Interrupt vector mapping for LFU, FOTA, and INT vector swapping support
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | LFU_INT_VECT_MAPPING | ||||||
| R-0h | R/W-0h | ||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-16 | KEY | R-0/W | 0h | Write Key. 0xCAFE: Writes to all bits in this register are enabled. Other Values: Writes to any bits in this register are ignored, including separate 16-bit writes. NOTE: The key is cleared immediately after writing, so it must be written again for every change to this register. Reset type: SYSRSn |
| 15-2 | RESERVED | R | 0h | Reserved |
| 1-0 | LFU_INT_VECT_MAPPING | R/W | 0h | This field controls the selection between PIPE_VECT_MEM and PIPE_VECT_LFU_MEM to support live firmware update (LFU) operation to get vector values. This value doesn't have any impact on direct CPU access to PIPE vector addresses and registers through VBUSP interface. 2'b11: Configured as PIPE_VECT_LFU_MEM to support LFU operation Other Values: Configured as PIPE_VECT_MEM by default Reset type: SYSRSn |
MMR_CLR is shown in Figure 6-29 and described in Table 6-33.
Return to the Summary Table.
PIPE MMR clear register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | MMR_CLR | ||||||
| R-0h | R-0/W-0h | ||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-2 | RESERVED | R | 0h | Reserved |
| 1-0 | MMR_CLR | R-0/W | 0h | This field resets all the registers when configured: 0x3 : Clears registers. Other value : No impact. List of registers which are impacted by this field are: 1. RTINT_THRESHOLD 2. INT_GRP_MASK 3. LOCK 4. COMMIT 5. TASK_CTRL 6. ALL_FLG_CLR 7. MEM_ECC_DIAG 8. GLOBAL_EN 9. INT_CTL_L 10. INT_CFG 11. INT_VECT_MAPPING 12. REG_PARITY_DIAG_DATA 13. REG_PARITY_DIAG_PARITY_DATA 14. REG_PARITY_DIAG_ASSERT 15. REG_PARITY_CHECK 16. REG_PARITY_READ Reset type: SYSRSn |
ALL_FLAG_CLR is shown in Figure 6-30 and described in Table 6-34.
Return to the Summary Table.
PIPE flag clear register
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | ALL_FLAG_CLR | ||||||
| R-0h | R/W-0h | ||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-16 | KEY | R-0/W | 0h | Write Key. 0xFEED: Writes to all bits in this register are enabled. Other Values: Writes to any bits in this register are ignored, including separate 16-bit writes. NOTE: The key is cleared immediately after writing, so it must be written again for every change to this register. Reset type: SYSRSn |
| 15-2 | RESERVED | R | 0h | Reserved |
| 1-0 | ALL_FLAG_CLR | R/W | 0h | This register clears the flags bit fields for all the interrupts in the INT_{#}_CTL_REG_L register. 2'b11: Enable, clears flags. Other values: No impact. Note: This is a R/W type register. User needs to explicitly write back '0' to start capturing interrupts. Reset type: SYSRSn |
REG_PARITY_DIAG_DATA is shown in Figure 6-31 and described in Table 6-35.
Return to the Summary Table.
Register parity Diagnostic data
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| DIAG_DATA | |||||||||||||||||||||||||||||||
| R/W-0h | |||||||||||||||||||||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-0 | DIAG_DATA | R/W | 0h | Diagnostics data This register is used to specify the [31:0] bits of the data to perform parity diagnostics. Reset type: SYSRSn |
REG_PARITY_DIAG_PARITY is shown in Figure 6-32 and described in Table 6-36.
Return to the Summary Table.
Register parity Diagnostic Parity
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | DIAG_PARITY_DATA | ||||||
| R-0h | R/W-0h | ||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-4 | RESERVED | R | 0h | Reserved |
| 3-0 | DIAG_PARITY_DATA | R/W | 0h | Diagnostics parity data This register is used to specify the [31:0] bits of the parity data to perform parity diagnostics. Reset type: SYSRSn |
REG_PARITY_DIAG_ASSERT is shown in Figure 6-33 and described in Table 6-37.
Return to the Summary Table.
Register parity Assert diagnostic
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | DIAG_ASSERT | ||||||
| R-0h | R-0/W1S-0h | ||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-16 | KEY | R-0/W | 0h | Write Key. 0x5A5A: Writes to all bits in this register are enabled. Other Values: Writes to any bits in this register are ignored, including separate 16-bit writes. NOTE: The key is cleared immediately after writing, so it must be written again for every change to this register. Reset type: SYSRSn |
| 15-1 | RESERVED | R | 0h | Reserved |
| 0 | DIAG_ASSERT | R-0/W1S | 0h | Diagnostics assert This register is used to assert parity diagnostics. Reset type: SYSRSn |
REG_PARITY_CHECK is shown in Figure 6-34 and described in Table 6-38.
Return to the Summary Table.
Enabling the Parity check
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| KEY | RESERVED | MODE | |||||||||||||||||||||||||||||
| R-0/W-0h | R-0h | R/W-0h | |||||||||||||||||||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-16 | KEY | R-0/W | 0h | Write Key. 0x5A5A: Writes to all bits in this register are enabled. Other Values: Writes to any bits in this register are ignored, including separate 16-bit writes. NOTE: The key is cleared immediately after writing, so it must be written again for every change to this register. Reset type: SYSRSn |
| 15-4 | RESERVED | R | 0h | Reserved |
| 3-0 | MODE | R/W | 0h | 0000: Disabled 1010: One Shot mode All other values: Continuous mode Note: In One Shot mode, HW will clear this register ('0000') once it completed the parity check of all the registers (counter reaches it's maximum value). SW needs to write into this field again for next check. Reset type: SYSRSn |
REG_PARITY_READ is shown in Figure 6-35 and described in Table 6-39.
Return to the Summary Table.
Enabling the Parity read
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| KEY | |||||||
| R-0/W-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | PARITY_READ_EN | ||||||
| R-0h | R/W-0h | ||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-16 | KEY | R-0/W | 0h | Write Key. 0x5A5A: Writes to all bits in this register are enabled. Other Values: Writes to any bits in this register are ignored, including separate 16-bit writes. NOTE: The key is cleared immediately after writing, so it must be written again for every change to this register. Reset type: SYSRSn |
| 15-4 | RESERVED | R | 0h | Reserved |
| 3-0 | PARITY_READ_EN | R/W | 0h | 1010: Parity read is enabled All other values : Parity read is disabled. Note: When the parity read is enabled, actual registers are not accessible for read in the memory map. Instead, the parity values are accessible. Reset type: SYSRSn |
INT_CTL_L_y is shown in Figure 6-36 and described in Table 6-40.
Return to the Summary Table.
Interrupt low flag and status control register
Offset = 1000h + (y * 4h); where y = 0h to FFh
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | OVERFLOW_FLAG | FLAG | EN | ||||
| R-0h | R-0h | R-0h | R/W-0h | ||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-3 | RESERVED | R | 0h | Reserved |
| 2 | OVERFLOW_FLAG | R | 0h | Interrupt overflow flag status. This will be set when there is an new interrupt request from peripheral before an ACK from the CPU. Note: This flag is only set if the FLAG is already set and another interrupt occurs and applicable for pulse interrupts Reset type: SYSRSn |
| 1 | FLAG | R | 0h | Interrupt active register. This field will be set on either an active interrupt from peripherals or SW write to FLAG_FRC bit. Reset type: SYSRSn |
| 0 | EN | R/W | 0h | Interrupt enable bit. Interrupt line will participate in priority arbitration only when this bit is set. Reset type: SYSRSn |
INT_CTL_H_y is shown in Figure 6-37 and described in Table 6-41.
Return to the Summary Table.
Interrupt high flag and status control register
Offset = 2000h + (y * 4h); where y = 0h to FFh
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | OVERFLOW_FLAG_CLR | FLAG_CLR | FLAG_FRC | ||||
| R-0h | R-0/W1C-0h | R-0/W1C-0h | R-0/W1S-0h | ||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-3 | RESERVED | R | 0h | Reserved |
| 2 | OVERFLOW_FLAG_CLR | R-0/W1C | 0h | Clear bit for overflow flag status bit. Reset type: SYSRSn |
| 1 | FLAG_CLR | R-0/W1C | 0h | Clear Active status of interrupt. SW Clear will have priority over SW force. Reset type: SYSRSn |
| 0 | FLAG_FRC | R-0/W1S | 0h | Force set active flag of interrupt. SW Clear will have priority over SW force. Reset type: SYSRSn |
INT_CONFIG_y is shown in Figure 6-38 and described in Table 6-42.
Return to the Summary Table.
Interrupt configuration register
Offset = 3000h + (y * 4h); where y = 0h to FFh
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | CONTEXT_ID | ||||||
| R-0h | R/W-0h | ||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| PRI_LEVEL | |||||||
| R/W-FFh | |||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-18 | RESERVED | R | 0h | Reserved |
| 17-16 | CONTEXT_ID | R/W | 0h | Interrupt Context-ID. When this field associated with an individual interrupt matches the ACTIVE_CONTEXT_ID field at the PIPE module level, the interrupt is raised in that specific context. '00': Context-0 - Used for default context and all interrupts. '01': Context-1 '10': Context-2 '11': Used for interrupts which are context-agnostic and those participate in arbitration regardless of active context-id. Reset type: SYSRSn |
| 15-8 | RESERVED | R | 0h | Reserved |
| 7-0 | PRI_LEVEL | R/W | FFh | Priority level for INT_{#}_. Reset type: SYSRSn |
INT_LINK_OWNER_y is shown in Figure 6-39 and described in Table 6-43.
Return to the Summary Table.
Interrupt link ownership config register
Offset = 4000h + (y * 4h); where y = 0h to FFh
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | API_LINK_EN | ||||||
| R-0h | R/W-0h | ||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| API_LINK | OWNER_LINK | ||||||
| R/W-0h | R/W-0h | ||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-9 | RESERVED | R | 0h | Reserved |
| 8 | API_LINK_EN | R/W | 0h | Access protection inheritance link for INT_{#}_ enable. When API_LINK_EN = 0, check only the OWNER_LINK for writes to INT_{#}_CTL_REG. The API_LINK is not allowed to access PIPE resources associated with interrupt line. When API_LINK_EN = 1, check both the OWNER_LINK & API_LINK for writes to INT_{#}_CTL_REG. The API_LINK is allowed to access PIPE resources associated with interrupt line. Reset type: N/A |
| 7-4 | API_LINK | R/W | 0h | Access protection inheritance link for INT_{#}_. Reset type: N/A |
| 3-0 | OWNER_LINK | R/W | 0h | Link owner for INT_{#}_. Reset type: N/A |
INT_VECT_ADDR_y is shown in Figure 6-40 and described in Table 6-44.
Return to the Summary Table.
Interrupt vector address
Offset = 5000h + (y * 4h); where y = 0h to FFh
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| VECT_ADDR | |||||||||||||||||||||||||||||||
| R/W-Xh | |||||||||||||||||||||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-0 | VECT_ADDR | R/W | Xh | Vector address location of INT_{#}_. For memory initialization, the VECT_ADDR value will be the same as the NMI vector address. For CPU1, this field is set as 0x40 as input from BOOTROM. For CPU2/3, this field is input from the SSU. Reset type: N/A |
INT_LINK_OWNER_LFU_y is shown in Figure 6-41 and described in Table 6-45.
Return to the Summary Table.
Interrupt link ownership config register
Offset = 6000h + (y * 4h); where y = 0h to FFh
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | API_LINK_EN | ||||||
| R-0h | R/W-0h | ||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| API_LINK | OWNER_LINK | ||||||
| R/W-0h | R/W-0h | ||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-9 | RESERVED | R | 0h | Reserved |
| 8 | API_LINK_EN | R/W | 0h | Access protection inheritance link for INT_{#}_ enable. When API_LINK_EN = 0, check only the OWNER_LINK for writes to INT_{#}_CTL_REG. The API_LINK is not allowed to access PIPE resources associated with interrupt line. When API_LINK_EN = 1, check both the OWNER_LINK & API_LINK for writes to INT_{#}_CTL_REG. The API_LINK is allowed to access PIPE resources associated with interrupt line. Reset type: N/A |
| 7-4 | API_LINK | R/W | 0h | Access protection inheritance link for INT_{#}_. Reset type: N/A |
| 3-0 | OWNER_LINK | R/W | 0h | Link owner for INT_{#}_. Reset type: N/A |
INT_VECT_ADDR_LFU_y is shown in Figure 6-42 and described in Table 6-46.
Return to the Summary Table.
Interrupt vector address
Offset = 7000h + (y * 4h); where y = 0h to FFh
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| VECT_ADDR | |||||||||||||||||||||||||||||||
| R/W-Xh | |||||||||||||||||||||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-0 | VECT_ADDR | R/W | Xh | Vector address location of INT_{#}_. For memory initialization, the VECT_ADDR value will be the same as the NMI vector address. For CPU1, this field is set as 0x40 as input from BOOTROM. For CPU2/3, this field is input from the SSU. Reset type: N/A |
SELFTEST_DIAG_DATA0 is shown in Figure 6-43 and described in Table 6-47.
Return to the Summary Table.
Diagnostics data register 0
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| SELFTEST_DIAG_DATA0 | |||||||||||||||||||||||||||||||
| R/W-0h | |||||||||||||||||||||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-0 | SELFTEST_DIAG_DATA0 | R/W | 0h | Self test Diagnostics data 0. This register is used to specify the [31:0] bits of the data to perform self-test ECC checker diagnostics. Reset type: SYSRSn |
SELFTEST_DIAG_DATA1 is shown in Figure 6-44 and described in Table 6-48.
Return to the Summary Table.
Diagnostics data register 1
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | SELFTEST_DIAG_DATA1 | ||||||||||||||||||||||||||||||
| R-0h | R/W-0h | ||||||||||||||||||||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-20 | RESERVED | R | 0h | Reserved |
| 19-0 | SELFTEST_DIAG_DATA1 | R/W | 0h | Self test Diagnostics data 1. This register is used to specify the [19:0] bits of the data to perform self-test ECC checker diagnostics. Reset type: SYSRSn |
SELFTEST_DIAG_ECC is shown in Figure 6-45 and described in Table 6-49.
Return to the Summary Table.
Diagnostics ECC
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||||||||||
| R-0h | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | SELFTEST_DIAG_ECC | ||||||||||||||
| R-0h | R/W-0h | ||||||||||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-7 | RESERVED | R | 0h | Reserved |
| 6-0 | SELFTEST_DIAG_ECC | R/W | 0h | Self test Diagnostics ECC. This register is used to specify the ECC to perform self-test ECC checker diagnostics. Reset type: SYSRSn |
SELFTEST_DIAG_CONTROL is shown in Figure 6-46 and described in Table 6-50.
Return to the Summary Table.
Enable diagnostic test
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| DIAG_DATA_WIDTH | |||||||
| R/W-34h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | DIAG_ECC_WIDTH | ||||||
| R-0h | R/W-7h | ||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | RESERVED | ||||||
| R-0h | R-0h | ||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | DIAG_TEST_EN | ||||||
| R-0h | R/W-0h | ||||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-24 | DIAG_DATA_WIDTH | R/W | 34h | PIPE ECC data width needs be configured to 52 (0x34). Reset type: SYSRSn |
| 23-20 | RESERVED | R | 0h | Reserved |
| 19-16 | DIAG_ECC_WIDTH | R/W | 7h | PIPE ECC bit width needs to be configured to 7 (0x7). Reset type: SYSRSn |
| 15-12 | RESERVED | R | 0h | Reserved |
| 11-4 | RESERVED | R | 0h | Reserved |
| 3-0 | DIAG_TEST_EN | R/W | 0h | Enable self test mechanism 0011 : Enable self test Any other value will disable self-test This field will be '0000' once test done. User needs to write into this register again for next test. Reset type: SYSRSn |
SELFTEST_DIAG_STATUS is shown in Figure 6-47 and described in Table 6-51.
Return to the Summary Table.
Diagnostic status
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| DIAG_FAIL_BIT_INDEX | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | DIAG_FAIL_CHECK_TYPE | DIAG_FAIL_UC_ERROR | DIAG_FAIL_C_ERROR | DIAG_TEST_FAIL | DIAG_TEST_DONE | RESERVED | |
| R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | R-0h | |
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-16 | RESERVED | R | 0h | Reserved |
| 15-8 | DIAG_FAIL_BIT_INDEX | R | 0h | This field is used to specify the position of the flipped bit when test failed. For 2 bit flips, this field points the bit position of the first bit. The second bit will be always adjacent to the first bit. This field will clear when next test configured. Reset type: SYSRSn |
| 7 | RESERVED | R | 0h | Reserved |
| 6-5 | DIAG_FAIL_CHECK_TYPE | R | 0h | 00 : Positive check 01 : Flips one bit 10 : Flips two bit 11 : Reserved Reset type: SYSRSn |
| 4 | DIAG_FAIL_UC_ERROR | R | 0h | This field is used to specify the diagnostic uncorrectable error when Test failed. Reset type: SYSRSn |
| 3 | DIAG_FAIL_C_ERROR | R | 0h | This field is used to specify the diagnostic correctable error when Test failed. Reset type: SYSRSn |
| 2 | DIAG_TEST_FAIL | R | 0h | 1 : Test failed (Unexpected error events(C_ERROR/UC_ERROR) occurred during self test) 0 : Test passed Reset type: SYSRSn |
| 1 | DIAG_TEST_DONE | R | 0h | Completed self test. Reset type: SYSRSn |
| 0 | RESERVED | R | 0h | Reserved |
SELFTEST_DIAG_STATUS_CLR is shown in Figure 6-48 and described in Table 6-52.
Return to the Summary Table.
Diagnostic status clear
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| RESERVED | |||||||
| R-0h | |||||||
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| RESERVED | |||||||
| R-0h | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
| RESERVED | |||||||
| R-0h | |||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RESERVED | DIAG_TEST_FAIL | DIAG_TEST_DONE | RESERVED | ||||
| R-0h | R-0/W1S-0h | R-0/W1S-0h | R-0/W1S-0h | ||||
| Bit | Field | Type | Reset | Description |
|---|---|---|---|---|
| 31-3 | RESERVED | R | 0h | Reserved |
| 2 | DIAG_TEST_FAIL | R-0/W1S | 0h | Clear Test failed status flags 0: Writing a 0 has no effect. 1: Writing a 1 will clear the following bits: 1. SELFTEST_DIAG_STATUS[DIAG_TEST_FAIL], 2. SELFTEST_DIAG_STATUS[DIAG_FAIL_C_ERROR], 3. SELFTEST_DIAG_STATUS[DIAG_FAIL_UC_ERROR], 4. SELFTEST_DIAG_STATUS[DIAG_FAIL_CHECK_TYPE], 5. SELFTEST_DIAG_STATUS[DIAG_FAIL_BIT_INDEX]. Reset type: SYSRSn |
| 1 | DIAG_TEST_DONE | R-0/W1S | 0h | Clear self test done status flag 0: Writing a 0 has no effect. 1: Writing a 1 will clear the SELFTEST_DIAG_STATUS[DIAG_TEST_DONE] bit. Reset type: SYSRSn |
| 0 | RESERVED | R-0/W1S | 0h | Reserved |