Search code examples
armembeddedcortex-m

How ARM cortex-M chip boot from 0x00000000?


My target is Atmel SAM4S series

Here is mapping table

1

internal Flash start address is 0x00400000 and internal ROM start address is 0x00800000

As I know, ARM chip always boot from address 0x00000000, and I can select boot from internal ROM or from internal Flash by controlling boot register.

But how arm chip load ROM / Flash data into 0x00000000 by my selection?


Solution

  • I found answer from YouTube

    https://www.youtube.com/watch?v=3brOzLJmeek&list=PLRJhV4hUhIymmp5CCeIFPyxbknsdcXCc8&index=16&t=3s

    Seems hardware will map internal flash/ROM by boot select.