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.

Is it possible to make the CCS 6.1.3 expressions view select "Physical Memory View" .vs. "CPU Memory View"?

Other Parts Discussed in Thread: 66AK2H14

Using CCS 6.1.3.00033 to debug what appears to be cache-coherency issue with a Cortex-A15 core in a 66AK2H14.

Using the memory browser I can select either a "Physical Memory View" or "CPU Memory View", and see different values between the views if a memory address has a modified value in the Cortex-A15 cache.

However, using the Expressions view only appears to show the "CPU Memory View" and I can't find any Expression view option to select "Physical Memory View" .vs. "CPU Memory View".

Is there an attribute which can used in the Expression view to use the "Physical Memory View"?

[I tried the @PHY and @PA attributes which in some forum posts, but the Expression view still showed the same value as the "CPU Memory View" in the Memory Browser]

I also tried searching the CCS help and processors.wiki.ti.com but can't find a description of the available attributes in the CCS Expression view.

  • Hello Chester,
    That functionality is only supported in the Memory Browser view. Sorry.

    ki
  • Chester Gillon said:
    [I tried the @PHY and @PA attributes which in some forum posts, but the Expression view still showed the same value as the "CPU Memory View" in the Memory Browser]

    On further investigation using @PA in the Expression view does force the use of the "Physical Memory View", the issue is that can't seem to get the @PA suffix to work on the symbolic name. The following CCS 6.1.3 expression view was taken from a Cortex-A15 with the cache enabled,after the global variable named counter had been updated in the processor cache such that was the value 5 in the "CPU Memory View" in the memory browser and 3 in the "Physical Memory View" in the memory browser:

    The expression "counter" reports the value from the "CPU Memory View".

    The expression "counter@PA", which was an attempt to use the Physical Memory View", still showed the same value as from the "CPU Memory View". The address column isn't showing the @PA suffix.

    The expression "*(0x80019f78@PA)", which manually takes the address of the counter symbol and adds the @PA suffix, is showing the value from the "Physical Memory View".

    I haven't been able to find a way of applying the @PA suffix to a symbolic name which de-references the symbolic address via the Physical Memory View. E.g. attempting to use the expression "(&counter)@PA" results in a syntax error being reported.

  • On a related note, with a C66xx device found that the Registers view for the XMC registers was displaying all zeros.

    When the name of the XMC register "XMC_xmpax_xmpaxl" was added to the expressions view the displayed value was again zero. The address of the memory mapped XMC_xmpax_xmpaxl was displayed as "0x0008000000@PA" meaning the Physical Memory View is being used to display registers.

    When cast the name of the XMC register as "*(unsigned int *)&XMC_xmpax_xmpaxl" in the register view then the displayed address was "0x08000000", i.e. no @PA suffix meaning the CPU Memory View, and a non-zero value was displayed:

    From looking at the C66xx documentation the XMC registers are only visible to the CPU, so it understandable that the Physical Memory View doesn't display the XMC registers.

    I might be useful if the CCS Register View had the option of selecting to use the "CPU Memory View" in the odd cases where registers can't be accessed by the Physical Memory View.