I'm using the soft-core Cortex-M0,keil uvision 5,vivado 14.4 i interfaced an accelerator with my arm architecture,
when i do this ,everything was alright in the vivado simulator
volatile signed int *rega = (volatile signed int *) 0x59000000; *rega=45;
but when i try this
volatile signed int *rega = (volatile signed int *) 0x59000000; int A[]={45,45}; *rega=A[0];
the simulation doesn't work,ther's no access to the register:0x59000000
why if i do like that the HWDARA= 129??
void kalman(int a){
volatile signed int *rega = (volatile signed int *) 0x59000000; *rega=a;
} int main(void){ static int b; b=4;
kalman(b); }
Why? Do you not understand what you are being told or observing? Is there someone in your project group that has some more experience and insight? Your manager perhaps, or the person assigning the project?
You need to evaluate ALL the code being run in your system, and very specifically the startup and system code, the code unpacking the runtimes load region, the functionality of the RAM, and how the memory is described in the scatter file.