关于分区头文件
“Partition Header”(分区头文件)为阵列结构,其中包含每个分区的相关信息。每个分区头文件表均由启动加载程序进行解析。该表中将包含分区大小、闪存中的地址、RAM 中的加载地址、已加密/已签名等信息。针对每个分区(包含 FSBL)均存在一个此类结构。表中最后一个结构将全部标记 NULL
值(校验和除外)。下表显示了有关 AMD Zynq™
UltraScale+™ MPSoC 的偏移、名称和注释。
偏移 | 名称 | 注释 |
---|---|---|
0x0 | Encrypted Partition Data Word Length | 已加密的分区数据长度。 |
0x04 | Un-encrypted Data Word Length | 未加密的数据长度。 |
0x08 | Total Partition Word Length (Includes Authentication Certificate)。请参阅 身份验证证书。 | 加密 + 填充 + 扩展 + 身份验证的总长。 |
0x0C | Next Partition Header Offset | 下一个分区头文件的位置(字偏移)。 |
0x10 | Destination Execution AddressLO
|
加载后此分区的低位 32 位可执行地址。 |
0x14 | Destination Execution Address HI
|
加载后此分区的高位 32 位可执行地址。 |
0x18 | Destination Load Address LO
|
此分区要加载到的 RAM 地址的低位 32 位部分。 |
0x1C | Destination Load Address HI
|
此分区要加载到的 RAM 地址的高位 32 位部分。 |
0x20 | Actual Partition Word Offset | 与启动镜像开始位置相关的分区数据的位置。(字偏移) |
0x24 | Attributes | 请参阅 Zynq UltraScale+ MPSoC 分区属性位 |
0x28 | Section Count | 与该属性关联的节数。 |
0x2C | Checksum Word Offset | 启动镜像中校验和表的位置。(字偏移) |
0x30 | Image Header Word Offset | 启动镜像中对应镜像头文件的位置。(字偏移) |
0x34 | AC Offset | 启动镜像中对应身份验证证书(如果存在)的位置(字偏移) |
0x38 | Partition Number/ID | 分区 ID。 |
0x3C | Header Checksum | “分区头文件”中先前字数总和。 |