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.

Question about C6670 FFTC data buffer

Guru 15520 points

Hi,

I have a question about C6670 FFTC.

We are using MCSDK FFTC sample program and having a problem.
When executing Fftc_txGetRequestBuffer() API which is defined in fftc.c,
sometime "Supervisor write violation" error occur ( displayed at CCS console).
The problem occur not periodic, but suddenly.

When we debug the program, we found that address 0x00000000 which is reserved area for C6670
was given to the data buffer pointer from host descriptor in cppi_getData()API.
(cppi_getData() is called inside the Fftc_txGetRequestBuffer().)
We allocate buffer in Core1 L2RAM so when this problem doesn't occur,
address 0x108xxxxx are given to the data buffer pointer in cppi_getData().

The following is my question:
1.In what situation address 0x00000000 will be given to
  the data buffer pointer in cppi_getData()?
  And is there workaround for this problem?

2.Is "supervisor write violation" error related to Memory protection?
  I checked the following register from CCS just after the error occured.
  It seem that "supervisor write fault" occur when Core0 accessed to QMSS_CFG area.
 
  <Memory Protection Unit 2 > Fault Address Register = 0x02A02A0C
  <Memory Protection Unit 2 > Fault Status Register = 0x0C080010
 
  Other Memory Protection Unit's Fault register was 0.

Please give me an advise.
If my information is not enough please let me know.

best regards,
g.f.

  • Hi,

      By default the memory protection unit is disabled. The violation is that you are trying to access address 0x0.

       When everything is setup and working correctly there should be no situation where cppi_getData() returns 0x0 address. Are you running the example as is or did you make any changes to it? I would give it a try on a different board to see if the problem is reproducible.

  • Hi,

    Thank you for the reply.

    Actually this question was from my customer.
    Some change is added to the example, but I don't know the details.

    If the problem is reproducible, and if a solution is known,
    please let me know.

    best regards,
    g.f.