The layout of the Dual Ported RAM is
determined by the uCode in the CPM
When the CPM is not in operation, it is
nothing more than internal memory
During the boot sequence, stack, global
data, and heap can reside in this memory
Initialization code can be written in C++!
A multi-layered boot process can be
used
First code resides in flash, uses
internal RAM to setup chip selects
Second code resides in another section
of flash and uses external RAM to load main application over a CPM channel
Third level is the main
application
Each level has its own crt0.s function
and initializes the EABI from scratch