工具/软件:
尊敬的 TI 团队:
这是我当前针对 TMS570LS1224的存储器布局计划:
{
矢量(X):origin=0x00000000 length=0x00000020 /* 32 B→扇区0 (0x00000–0x0001F)*/
内核(RX):origin=0x00000020 length=0x00007FE0 /*→32 KB–32 B ~扇区0–1 (0x00000–0x07FFF)*/
BOOTLDR (RX):origin=0x00008000 length=0x00010000 /* 64KB→扇区2–5 (0x08000–0x17FFF)*/
配置(RWX):origin=0x00018000 length=0x00008000 /* 32KB→扇区6 (0x18000–0x1FFFF)*/
OTA_INFO (RX):origin=0x00020000 length=0x00004000 /* 16KB→扇区7 (0x20000–0x23FFF)*/
filesys (RWX):origin=0x00024000 length=0x0001C000 /*112KB→扇区7 (0x24000–0x3FFFF)*/
APP_A (RX):origin = 0x00040000 length = 0x00080000 /*512KB→扇区8–11 (0x40000–0xBFFFF)*/
APP_B (RX):origin=0x000C0000 length=0x00080000 /*512KB→扇区12–15 (0xC0000–0x13FFFF)*/
栈(RW):origin=0x08000000 length=0x00000800 /* 2 KB SRAM */
Kram (RW):origin=0x08000800 length=0x00000800 /* 2 KB SRAM */
RAM (RW):origin=(0x08000800+0x00000800) length=(0x0002F800 - 0x00000800)/* SRAM */
}
我目前正在设计一个系统、其中包括:
-
a. 引导加载程序
-
二 应用程序分区 (APP_A 和 APP_B)、都是使用 驱动程序 (FreeRTOS)
-
a 共享 内核 和 向量 部分
-
的共享区域 配置 和 文件
我有几个关键问题:
-
如何在运行基于 RTOS 的任务的系统上正确实现引导加载程序?
大多数 TI 示例(如 CAN 引导加载程序)都没有展示如何将引导加载程序与 RTOS 上下文切换相集成、或者如何在跳转到该应用之前准备 RTOS 环境。 -
是否可以让 APP_A 和 APP_B 共享相同的
VECTORS
KERNEL
存储器区域?
如果是、如何配置链接器和运行时、以避免重新初始化或损坏共享存储器区域? -
对于
CONFIG
和等区域FILESYS
、两个应用程序共享和访问它们是否有效和安全?
为避免在运行时或 OTA 更新期间发生冲突或损坏、您建议采取哪些预防措施或模式?