The <placement_map> element describes the memory placement details of all named memory areas in the application, including unused spaces between logical groups that have been placed in a particular memory area.
The <memory_area> is a description of the placement details within a named memory area (container). The description consists of these items:
- The <name> names the memory area (string).
- The <page_id> gives the id of the memory page in which this memory area is defined (constant).
- The <origin> specifies the beginning address of the memory area (constant).
- The <length> specifies the length of the memory area (constant).
- The <used_space> specifies the amount of allocated space in this area (constant).
- The <unused_space> specifies the amount of available space in this area (constant).
- The <attributes> lists the RWXI attributes that are associated with this area, if any (string).
- The <fill_value> specifies the fill value that is to be placed in unused space, if the fill directive is specified with the memory area (constant).
- The <usage_details> lists details of each allocated or available fragment in this memory area. If the fragment is allocated to a logical group, then a <logical_group_ref> element is provided to facilitate access to the details of that logical group. All fragment specifications include <start_address> and <size> elements.
- The <allocated_space> element provides details of an allocated fragment within this memory area (container):
- The <start_address> specifies the address of the fragment (constant).
- The <size> specifies the size of the fragment (constant).
- The <logical_group_ref> provides a reference to the logical group that is allocated to this fragment (reference).
- The <available_space element provides details of an available fragment within this memory area (container):
- The <start_address> specifies the address of the fragment (constant).
- The <size> specifies the size of the fragment (constant).
Placement Map for the fl-4 Input File
<placement_map>
<memory_area>
<name>PMEM</name>
<page_id>0x0</page_id>
<origin>0x20</origin>
<length>0x100000</length>
<used_space>0xb240</used_space>
<unused_space>0xf4dc0</unused_space>
<attributes>RWXI</attributes>
<usage_details>
<allocated_space>
<start_address>0x20</start_address>
<size>0xb240</size>
<logical_group_ref idref="lg-7"/>
</allocated_space>
<available_space>
<start_address>0xb260</start_address>
<size>0xf4dc0</size>
</available_space>
</usage_details>
</memory_area>
...
</placement_map>