The 64K memory map of the processor has been allocated to the three addressable resources as shown in the table.
The memory map must be allocated without overlapping the resources.
The ROM needs to be at address zero if this is the place the processor starts executing from when it is reset.
The memory map must be known at the time the code for the ROM is compiled. This requires agreement between the hardware and software engineers concerned.
In the early days, the memory map was written on a blackboard where both teams could see it.
For a modern SoC, there could be hundreds of items in the memory map. An XML representation called IP-XACT is being adopted by the industry and the glue logic may be generated automatically.