Secure Memory Specifications
Figure 1 shows the Memory slot usage of CPU 0. The Kunpeng server has two CPUs, that is, socket 0 and socket 1 (not shown in the figure). Each CPU has two Totem dies, as highlighted by the red boxes in the figure.
Each die can have eight DIMMs across four channels. By default, intra-die memory interleaving is enabled and inter-die memory interleaving is disabled. If you need to enable inter-die memory interleaving, manually enable it in the BIOS. When inter-die interleaving is enabled, the memory channel configurations and memory capacities used by both dies must be identical..
Note the following restrictions on secure memory:
- The secure memory must be smaller than the total physical memory, as a portion of the physical memory needs to be reserved for the REE (for the BIOS and OS).
- The secure memory must be smaller than the size of a memory space decoder (MSD) window.
- If 3-way or 6-way memory interleaving is enabled, the BIOS requests 3 secure memory segments of equal size. Each secure memory segment must be less than one-third of the MSD window.
- Due to the performance impact of inter-socket interleaving, secure memory should be allocated exclusively within the memory space of a single CPU.
The MSD window size varies depending on the DIMM population configuration. Taking a single die with 32 GB DIMMs as an example, the mapping relationships are outlined in Table 1.
Number of DIMMs |
MSD Window Size |
Description |
|---|---|---|
x |
x × 32 GB |
Where x = 1, 2, 3, 4, 6, or 8 |
5 |
2 × 32 GB and 3 × 32 GB |
It can be understood as 2-way interleaving + 3-way interleaving. Therefore, there are two MSD windows. |
7 |
3 × 32 GB and 4 × 32 GB |
It can be understood as 3-way interleaving + 4-way interleaving. Therefore, there are two MSD windows. |
When multiple MSD windows exist, the system prioritizes allocating secure memory from the smallest MSD window, and falls back to the next available window if allocation fails. You should avoid 3-way or 6-way memory interleaving as it leads to certain memory waste; instead, 2-way, 4-way, or 8-way memory interleaving configurations are highly recommended.
- The TEE OS supports a maximum of 512 GB memory. The iTrustee version must be 1.6.2 or later (CCOS 2.2.0) and the BIOS version must be 7.12 or later.
- Since a single die has only eight memory slots, supporting 512 GB requires fully populating one die with eight 64 GB DIMMs, and installing at least one 64 GB DIMM in each of the other dies.
