Partition_Table中的*对齐*的含义是什么意思
拍摄4M \ partition_table.h。
#define nvms_firmware_part_start 0x002000 / *对齐至512kb是由默认flash_region_size指定的。* / #define nvms_firmware_part_size 0x07e000 / * + ---------------------------------- + * /#define nvms_generic_part_start 0x0e0000 #define nvms_generic_part_size 0x020000
固件部件从0x2000开始,未对齐至512kb,通用部分也不是。以及为什么通用部分突然跳到0xE0000,而固件部分的结束地址为0x80000?
另一个问题是,我可以安排一个较小的固件部件,即我的辅助引导加载程序约为128kb,并为我的应用程序同时安排大约2MB的更大分区部分?我应该如何修改partition_table.h?
谢谢!
关键词:
设备:
嗨kuanyu99,
默认情况下,SDK和芯片配置都支持运行高达512 kB的应用程序图像。为此,分别为nvms_firmware和nvms_generic_part的固件和通用分区条目,应为512 MB对齐。NVMS_Product_Header条目应始终在0x0000开始,其大小应为0x2000。可以根据用户的需求进行修改分区条目的其余部分。请从我们的支持网站查看以下教程:
http://lpccs-docs.dialog-seminiondiond.com/tutorial_da1469x_supporting_fw_images_bigger_than_512kb/index.html.
谢谢,PM_DIALOG.
嗨pm_dialog,
是的,我读过它,它也困惑了我。为什么它有时必须设置为512kb对齐,而有时可以设置为1MB对齐?什么是“偏移量高达0x4000.允许“意味着?
对于分区,我可以将分区设置为128kb对齐吗?这对我来说更灵活。
partition_table.h可能如下视图。
谢谢!
嗨kuanyu99,
分别对齐NVMS_Firmware和NVMS_GENERIC_PART,应与Flash_Region_size对齐。本教程旨在提供如何支持DA1469x上不同大小的FW图像的步骤。具体地,提供执行大小为1 MB的应用程序图像所需的步骤。请检查cache_flash_reg [flash_region_size],您将看到哪些可用选项。这就是为什么nvms_generic_part为1MB对齐。NVMS_Product_Header条目应始终在0x0000开始,其大小应为0x2000。可以根据用户的需求进行修改分区条目的其余部分。如果您有Suota功能。
谢谢,PM_DIALOG.
嗨,pm_dialog,
1.为了我的理解,我无法访问超过flash_region_size的地址,否则我会得到一个未定义的结果。因此,如果我的项目是制作能够跳转到应用程序的二级引导加载程序,我必须设置大于两个大小的总和的flash_region_size。是对的吗?
2.填充*对齐*和* flash_region_size *的要求,我必须将flash_region_size设置为2MB,并使NVMS_Firmware的结尾地址对齐至2MB。那是对的吗?
3.在该分区设置下,如果我只删除在2MB分区中分配的应用程序区域,它会影响该分区中的其他区域吗?
谢谢!
嗨kuanyu99,
为延迟道歉。哪个是您想要闪存的固件的大小?它有偶像实施吗?如果将Flash_Region_size设置为2MB,则分别为NVMS_Firmware和NVMS_GENERIC_PART的固件和通用分区条目,应为2 MB对齐。
谢谢,PM_DIALOG.
嗨pm_dialog,
我可以使用1MB或2MB,我可能理解分区结构。主要问题是Flash_Region_size应与内存访问问题的固件大小对齐。
我猜你的意思是nvms_fw_exec_part和nvms_fw_update_part应该具有相同的大小对齐,就像4m / suota / partition_table.h示例一样。但是,无论分区名称如何,Suota只查找更新的图像标题,右图?
嗨kuanyu99,
谢谢你接受我的答案。我的意思是NVMS_Firmware和NVMS_GENERIC_PART应该是Flash_Region_size对齐的。你能澄清你最后的问题吗?
谢谢,PM_DIALOG.