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.

TMS320F28035: CCS cannot observe variables in CLA RAM

Part Number: TMS320F28035

Hi team,

Supporting my customer to debug CLA on F28035, noticed following result:

We are trying to read ADC results with CLA:

cla2cpumsg.U = AdcResult. ADCRESULT1;

Axis1cla.test = AdcResult. ADCRESULT2;

cla2cpumsg is a structure in cla 2 cpu msg ram and axis1cla is a structure in CLA RAM. When oberseve both viarables with CCS, the cla2cpumsg.U is the right value while Axis1cla.test always reads back all 0.

According to my understanding, this seems because of the access priority of RAM and CPU. Can we only reads CLA viarables via another viarable in CLA2CPU MSG RAM?

Regards,

Brian

Regards,

Brian

  • Brian Wang0 said:
    cla2cpumsg is a structure in cla 2 cpu msg ram and axis1cla is a structure in CLA RAM. When oberseve both viarables with CCS, the cla2cpumsg.U is the right value while Axis1cla.test always reads back all 0.

    Brian,

    Can you confirm that both variables are defined in the C28x code? (global shared variables have to be defined on the C28x side).

    Is CCS halted when the variables are viewed?  Arbitration will only happen if the CPU(s) are running and reading the variables.  Even then, it is unlikely that the CLA would continuously block the C28x CPU debug reads.  The arbitration scheme is detailed in the device technical reference manual (TRM). 

    -Lori

  • Hi Lori,

    Went through the whole code with customer again.

    And found out the reason is customer forgot the EALLOW when allocating RAM to CLA. Problem has been solved.

    Thank for your support!

    Regads,

    Brian

  • Thank you, Brian.  I appreciate the feedback. 

    Best Regards

    Lori