To initiate the PBIST test of the H/W IP modules, follow the below programming
sequence.
- PBIST_PACT – Set PACT[1:0] to turn on internal PBIST clocks. While this bit is
0, any access to PBIST will not go through.
- PBIST_CMS – PBIST Clock Mux Select Register, program to select between clock
inputs.
- Set PBIST_CMS[1:0] to 1 to enable internal PBIST controller clock. When
this bit is 0, any access to PBIST will not go through.
- PBIST_MARGIN_MODE - Safety enable
and algorithm subset select register. This register is repurposed on the TDA4VH
device.
- PBIST_MARGIN_MODE [2:0]
are safety enable bits, set all bits 1.
- PBIST_MARGIN_MODE [3]
selects algorithm subset #0 or #1
- MARGIN_MODE[3]
should be programmed to 0 for software based PBIST.
- PBIST_L0 - Variable loop count register
- PBIST_ALGO - Algorithm mask register
- The default value of this register is all 1s.
- To meet the safety coverage requirements, TI will run a subset of all of
the available algorithms.
- Use TI recommended values from Section 5. Device Configuration -> Module
Integration -> PBIST -> Positive Test Data to program this
register.
- PBIST_RINFOL - RAM info mask register (lower)
- The default value of this register is all 1s.
- To meet the safety coverage requirements, TI will run a subset of all of
the available algorithms.
- Use TI recommended values from Section 5. Device Configuration -> Module
Integration -> PBIST -> Positive Test Data to program this
register.
- PBIST_RINFOU - Ram info mask register (upper)
- PBIST_OVER - Override register
- PBIST_OVERRIDE [3] is the PBIST_ALGO override bit.
- To meet the safety coverage requirements, TI will run a subset
of all available algorithms. To run this subset, set this bit to
0.
- PBIST_OVERRIDE[0] is PBIST_RINFO override bit
- To meet the safety coverage requirements, TI will run a subset
of all available algorithms. To run this subset, set this bit to
0.
- PBIST_SCR0 - Address scrambling register (lower)
- The PBIST_SCR0 programmed value is not used on TDA4VH device.
- PBIST_SCR4 - Address scrambling register (upper)
- Upper bits for address scrambling programmability.
- The PBIST_SCR4 programmed value is not used on TDA4VH device.
- PBIST_DLR - Datalogger register
- Put PBIST controller into the appropriate modes and start the test.
- Use rom-based config
mode: set bit [2], DLR0_ROM to 1 for PBIST test for ROM mode and set bit
[4], DLR_CAM0 to 1 for config mode.
- Wait for PBIST Module StatusWait for PBIST controller interrupt.
- Upon completion of the test, an interrupt will be generated and the
system interrupt handler will read the pbist_fail register to confirm
pass/fail status of the test.
- If the NUM_TEST_VECTORS entry, in Device Configuration->Module Integration 0
-> PBIST Positive Test Data is greater than one, run the test again,
with the next set of PBIST_AGLO and PBIST_INFO values.