This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Memory allocation for Cortex-M4

I know Cortex-M4 doesn't support virtual memory. Do you always have to load VA from some LA in flash? For instance you allocate empty value memory at compile time.

Parents
  • Hi jvanmont,

    we usually treat addresses as VA=LA, because almost applications are single task scheme. Do you ask how to realize a multi-task system using address translation from VA to LA? I think you can use PIC (position independent code) to make an address translation by using the following GCC options.

    -fpic

    -msingle-pic-base
    -mpic-register=reg

    The default base register is r10 (a.k.a. sll). By changing the base address value, you would able to realize an address translation.

    Best regards,

    Yasuhiko Koumoto.

Reply
  • Hi jvanmont,

    we usually treat addresses as VA=LA, because almost applications are single task scheme. Do you ask how to realize a multi-task system using address translation from VA to LA? I think you can use PIC (position independent code) to make an address translation by using the following GCC options.

    -fpic

    -msingle-pic-base
    -mpic-register=reg

    The default base register is r10 (a.k.a. sll). By changing the base address value, you would able to realize an address translation.

    Best regards,

    Yasuhiko Koumoto.

Children
No data