I recently work on Tricore Processor, but I have some problems. With reading memory value. I do not know if I am right or not, but I think a part of flash memory copied to RAM and now in my algorithm used of RAM cell. I have shown Code in below:
ld32.a a15, [a0]-0x7BA4 ; a0 = 0xD00032E0
As you see, a15 is an address that point to a constant value(store in RAM or FLASH) and a0
is the base address of RAM memory. To calculate a15
, I subtract a0
from 0x7BA4
but the result is 0xCFFFB73C. This Address is not a valid address of RAM.
EDITED:
I saw a freaky sentence in Tricore document.(I have shown in below)
As you see, A[0]
can be protected by user application.
Could it be protected in this case as well?
What is my wrong? What should I do? How can I get the correct value of a15
?
a0
is initialized? Maybe it's not 0xD00032E0.