分区表h中的*对齐*的含义是什么?
拍摄4M \ partition_table.h。
#定义NVMS_固件_部件_开始0x002000/*与512KB的对齐由默认闪存_区域_大小决定。*/#定义NVMS_固件_零件_尺寸0x07E000/*+------------512KB-------------------+*/#定义NVMS_通用_零件_开始0x0E0000#定义NVMS_通用_零件_尺寸0x020000
固件部分从0x2000开始,未与512KB对齐,通用部分也未对齐。为什么通用部分突然跳到0xE0000,而固件部分的结束地址是0x80000?
另一个问题是,我是否可以为我的辅助引导加载程序安排一个较小的固件部分(约128KB),同时为我的应用程序安排一个较大的分区部分(约2MB)?我应该如何修改分区_表.h?
谢谢
关键词:
设备:
关羽99你好,
默认情况下,SDK和芯片配置都支持运行最大512 kB的应用程序映像。为此,固件和通用分区条目(分别是NVMS_固件和NVMS_通用_部分)都应该是512 MB对齐的。NVMS_PRODUCT_标题项应始终从0x0000开始,其大小应为0x2000。其余的分区条目可以根据用户的需要进行修改。请从我们的支持网站查看以下教程:
http://lpccs-docs.dialog-semiconductor.com/tutorial_da1469x_supporting_fw_images_bigger_than_512kb/index.html
谢谢,下午好
你好,下午对话,
是的,我读过它,它也困惑了我。为什么它有时必须设置为512kb对齐,而有时可以设置为1MB对齐?什么是“偏移量高达0x4000允许“意味着?
对于分区,我可以将分区设置为128kb对齐吗?这对我来说更灵活。
分区_表.h可能如下所示。
谢谢
关羽99你好,
NVMS_固件和NVMS_通用_部件应分别与闪存_区域_大小对齐。本教程旨在提供有关如何在DA1469x上支持不同大小的FW图像的步骤。具体而言,提供了执行1 MB大小的应用程序映像所需的步骤。请检查CACHE\u FLASH\u REG[闪存区域大小],您将看到哪些选项可用。这就是为什么NVMS_通用_部分是1MB对齐的。NVMS_PRODUCT_标题项应始终从0x0000开始,其大小应为0x2000。其余的分区条目可以根据用户的需要进行修改。如果你有索塔功能。
谢谢,下午好
嗨,下午好,
1.据我所知,我无法访问超过FLASH_REGION_大小的地址,否则我将得到一个未定义的结果。因此,如果我的项目是制作一个能够跳转到应用程序的辅助引导加载程序,我必须将FLASH_REGION_大小设置为大于两个大小之和。是这样吗?
2.填充*对齐*和* flash_region_size *的要求,我必须将flash_region_size设置为2MB,并使NVMS_Firmware的结尾地址对齐至2MB。那是对的吗?
3.在该分区设置下,如果我只擦除在该2MB分区内分配的应用程序区域,它会影响该分区内的其他区域吗?
谢谢
关羽99你好,
对耽搁表示歉意。您希望闪存的固件大小是多少?它有索塔实现吗?如果将FLASH_REGION_大小设置为2MB,则固件和通用分区条目(即分别为NVMS_固件和NVMS_通用_部件)都应对齐2MB。
谢谢,下午好
你好,下午对话,
我可能使用1MB或2MB,我可能理解分区结构。主要的问题是闪存_区域_大小应与内存访问问题的固件大小一致。
我猜您的意思是NVMS_FW_EXEC_部分和NVMS_FW_UPDATE_部分应该具有相同的大小对齐,就像4M/suota/partition_table.h示例一样。但是不管分区名是什么,SUOTA只会查找更新的映像头,对吗?
关羽99你好,
谢谢你接受我的回答。我的意思是NVMS_固件和NVMS_通用_部件都应该与闪存_区域_大小对齐。你能澄清你的最后一个问题吗?
谢谢,下午好