ZHDA191 June   2026 TDA4VE-Q1

 

  1.   1
  2.   摘要
  3.   商标
  4. 1简介
  5. 2运行时代码覆盖后台
    1. 2.1 TDA4x 的存储器架构
    2. 2.2 静态代码分配的挑战
    3. 2.3 为什么选择运行时代码覆盖?
  6. 3运行时代码覆盖方法
    1. 3.1 概述
    2. 3.2 驻留运行时
    3. 3.3 覆盖有效载荷包
    4. 3.4 共享 SRAM 覆盖区域
    5. 3.5 运行时覆盖序列
  7. 4运行时代码覆盖架构
    1. 4.1 软件架构
    2. 4.2 覆盖包格式
    3. 4.3 存储器布局
    4. 4.4 运行时映像加载
    5. 4.5 运行时执行
  8. 5演示实现
    1. 5.1 软件组织
    2. 5.2 覆盖 SRAM 配置
    3. 5.3 有效载荷生成
    4. 5.4 有效载荷加载和执行
    5. 5.5 构建配置
  9. 6运行时代码覆盖验证
    1. 6.1 PayloadA 执行
    2. 6.2 PayloadB 执行
    3. 6.3 PayloadC 执行
    4. 6.4 共享 SRAM 覆盖槽重用
    5. 6.5 完整运行时验证
  10. 7总结
  11. 8参考资料

静态代码分配的挑战

共用软件部署模型将所有可执行模块静态链接到一个应用映像中。在系统初始化期间,整个可执行映像会加载到存储器中,并在整个运行时内保持驻留状态。

这种方法虽然简化了软件管理,但它会为每个软件功能永久分配存储,而无论实际使用情况如何。随着软件模块数量的增加,驻留运行时环境的存储占用空间也会增加。

可能不需要持续驻留的软件组件示例包括

• 诊断功能

• 恢复实用程序

• 工厂测试功能

• 维修工具

• 功能特定应用模块

同时驻留所有此类组件可能会导致存储器利用率低下。