We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
A new chip has ARM926EJ-S core and the reset vector is located from 0xffff0000 instead of 0x00000000 many other ARM7/9 MCU have used. I can build simple project to target generic ARM9 core and little-endian. BTW, I am using J-Link with RDI option.
But when I start debugging/downloading image, uVision has error message as follow:
---------------------------------------------------- *** error 122: AGDI: memory read failed (0x00000074) RDI-Error 5: RDIError_DataAbort ----------------------------------------------------
I suppose uVision debugger try to read or write something from 0x00000000 and it fails since there is not a valid address.
How can I force uVision not touching memory from 0x00000000 during downloading image?
Thanks,
Jack Lim
Let me add more information to this porblem.
1)I use the same hardware setup with ARM RVDS and GHS Multi tools, and they are working fine.
2)After power-on-reset, the reset vector at 0xffff0000 are initialized to branch to itself. The software can always modify it as jump table pointing to new ISR in RAM or flash. Nothing is mapped to 0x00000000 memory region as specification, so any reading is unknown from there.
4)In the uVision target panel, I configure IROM1 to be 0x10260000 which is internal RAM region of new chip.
5)In uVision linker panel, I add "--entry Reset_Vector" which is same location as 0x10260000.
But it seems to me that uVision AGDI interface still accesses 0x00000000 region during image loading and debugging.
Thanks for help,