This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[FAQ] TMS570LS1224: After RAM groups self-test is executed using pbistRun() routine generated by HALCOGen, I am not able to access DMA RAM and SRAM. What causes this problem?

Part Number: TMS570LS1224
Other Parts Discussed in Thread: HALCOGEN

The PBIST DMA RAM test and PBIST SRAM test pass without any issue. The application is not able to access the SRAM or DMA RAM some times.

  • The pbistStop() function generated by HalCoGen is missing a reset for the PBIST controller. The PBIST engine doesn't release the SRAM or DMA RAM, so that other bus master (CPU, DMA, etc) can not access it. 

    Please change the pbistStop() function to be as below (the code in BLUE is added):

    void pbistStop(void)
    {
    /* USER CODE BEGIN (20) */
    /* USER CODE END */
    
    pbistREG->PACT = 0x0U; systemREG1->MSTGCR &= 0xFFFFFFF0U; systemREG1->MSTGCR |= 0xAU; systemREG1->MSTGCR &= 0xFFFFFFF0U; systemREG1->MSTGCR |= 0x5U;
    /* USER CODE BEGIN (21) */ /* USER CODE END */ }