When allocating processor address space, what is the difference between Device Memory and Application Memory?
Device Memory relates to blocks of memory that are mapped into the processor’s memory architecture (i.e. its address space) based on the physical memory defined in the system. From an OpenBus System document, this is handled automatically (and dynamically). From an Embedded Software project, this can be achieved by manually importing directly from the FPGA project, or by automatically importing from the FPGA project upon compilation. Application Memory relates to defined blocks of memory corresponding to the mapped blocks of device memory. Definable from the Embedded Software project only, these blocks enable you to handcraft exactly how the device memory is used by the embedded code. By default, an application memory block will be the same definition as its ‘parent’ device memory block. You might decide to define the application memory block to be smaller in size or maybe define multiple sub-blocks within the available application memory block.