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.

C2000 devices: CLA Non Master Access Issue



Hi all,

I have an issue with a code part running on the CLA. I have a function, which accesses the PWM module and forces a Trip Zone event. When one Trip Zone Module is forced for PWM1 there is no problem with the CLA run-time. When I add a code line accessing also the PWM2 module the CLA stops and reports a Non Master Access in the AccessProtectionRegs, NMAVFLG register is set for CLA1FETCH and CLA1Write. 

Does anyone have any clue why this is happening?

Regards

Gradev

  • Hi Gradev,

    The TRM should have information on when CLA1 access protection is triggered - this is typically when memory is not configured correctly for CLA access. Check to see if you are getting a CLA1 FETCH or CLA1WRITE error. Once you know this, you can get the address that triggered the violation by reading the "Non-Master CLA1 Read Access Violation Address"  or "Non-Master CLA1 Fetch Access Violation Address" register. It could be that the opcode or variable falls in memory that has not been configured as CLA code/data.

    Also - is the Task writing to the PWM2 register? If so, please check that the register is writable by CLA.

    Thanks,

    Ashwini

  • Hi Athaley,

    Thanks for the fast reply. I have to correct my statement. The access to pwm is working for both. However the error is there.


    Yes there is a non-master access violation, however CLA seems to be configured correctly according to our intentions. We configure CLA to access data from LS2, however there are read errors at address ( NMCLA1RDAVADDR 0000966B - which is in LS2).  There are two  more errors write and fetch(NMCLA1WRAVADDR 00008000, NMCLA1FAVADDR 00008000), which is LS0. I can't configure why or which functions is trying to write to these addresses.

    I am trying to use nested non-inline functions with return arguments. I have read that this should be possible. May this be the reason? Do I have to configure the compiler somehow to handle nested functions?

    Best Regards

    Stanko

  • Hi Stanko,

    Please could you let me know the device number and the CCS+compiler version you are using? This will help me follow up with the right team.

    Thanks,
    Ashwini