SPRUJ55D September 2023 – July 2025 AM263P2 , AM263P2-Q1 , AM263P4 , AM263P4-Q1
This section describes the sequence to be followed for enabling memory self-test on any intended memory group.
Before re-programming PBIST registers to target test for a different memory group, the Self-Test Key and Reset register bits [7:0] should be reset to reset the PBIST controller and hence clear the status of PBIST internal registers.
MSS_CTRL.TOP_PBIST_KEY_RST[7:0]=0x0
| Step # | Step | Register/Bitfield/Programming | Value |
|---|---|---|---|
| 1 | Enable the Top PBIST Self-Test Key | MSS_CTRL.TOP_PBIST_KEY_RST[3:0] | 0x5 |
| 2 | Bring PBIST controller and MDP logic out of reset | MSS_CTRL.TOP_PBIST_KEY_RST[7:4] | 0xA |
| 3 | Enable the PBIST internal clocks and ROM interface clock | TOP_PBIST.PBIST_PACT | 0x1 |
| 4 | Ensure the Loop count register is at its reset value | TOP_PBIST.PBIST_L0 TOP_PBIST.PBIST_L1 TOP_PBIST.PBIST_L2 TOP_PBIST.PBIST_L3 |
0x0 |
| 5 | Program Override register to allow configuration of memory group and algorithm group registers | TOP_PBIST.PBIST_OVR | 0x9 |
| 6 | Program DLR register | TOP_PBIST.PBIST_DLR | 0x10 |
| 7 | Clear the memory group registers | TOP_PBIST.PBIST_RINFOL TOP_PBIST.PBIST_RINFOU | 0x0 |
| 8 | Clear the algorithm register | TOP_PBIST.PBIST_ALGO | 0x0 |
| 9 | Program the algorithm register for the intended algorithm (Refer to PBIST RAM-ROM Memory and Algorithm Group Configuration) | TOP_PBIST.PBIST_ALGO | *Values mentioned in PBIST RAM-ROM Memory and Algorithm Group Configuration |
| 10 | Program the memory group number on which selected algorithm is to be run. (Refer PBIST RAM-ROM Memory and Algorithm Group Configuration) | TOP_PBIST.PBIST_RINFOL TOP_PBIST.PBIST_RINFOU | *Values mentioned in PBIST RAM-ROM Memory and Algorithm Group Configuration |
| 11 | Re-Program the Override register to mask overwriting of RINFOL, RINFOU, ALGO registers from PBIST ROM after PBIST execution starts | TOP_PBIST.PBIST_OVR | 0x0 |
| 12 | Ensure ROM MASK Register is set to ensure both Algorithm and memory information is picked from PBIST ROM. | TOP_PBIST.PBIST_ROM | 0x3 |
| 13 | Kick off PBIST test | TOP_PBIST.PBIST_DLR | 0x021C |
| 14 | Wait for Interrupt (Refer to Section ‘Top PBIST Interrupt signal Integration’ for interrupt mapping) | ||
| 15 | Read Fail Status Register to check the status of the test | TOP_PBIST.PBIST_FSRF0 TOP_PBIST.PBIST_FSRF1 | (READ) 0x0 - Test Pass Non-zero value - Test Fail |
| 16 | Read Address registers to ensure Test has been indeed run |
TOP_PBIST.PBIST_CA1 TOP_PBIST.PBIST_CA2 |
(READ)0x0- test has not been runNon- zero – test is correctly run |
| 17 | Program PACT back to reset value (Gating PBIST internal clocks – test exit sequence ) | TOP_PBIST.PBIST_PACT | 0x0 |
| 18 | Disable the Top PBIST Self-Test Key and assert reset to PBIST controller and MDP logic | MSS_CTRL.TOP_PBIST_KEY_RST[7:0] | 0x0 |