Cortex-M0 initialization | Minimum requirements

Hi there,

I am on the learning curve of embedded software development with the Cortex-M0. I have a question that has no practical application but for learning purpose. I am interested in the minimal SW requirements to initialize the Cortex-M0 core.

For this question, I define the minimum requirements as those that get the core to a state where the clock tree is running at target frequencies and the core is ready to start configuring the rest of the microcontroller.

Is the following sufficient to get to this stage?

1. Vector table
2. Reset handler

With these two, the stack pointers MSP, PSP, and the clock tree can be initialized.

Is there a case, at this stage, when the NMI or Hard fault handlers or other system handlers may be needed?


Any recommendations for reading on this topic?

Thank you.