ZHCAB93 July   2021 DRA821U , DRA829J , DRA829V , TDA4VM-Q1

 

  1.   商标
  2. 引言
    1. 1.1 SYSFW
    2. 1.2 TISCI
    3. 1.3 TISCI 客户端或 SciClient
    4. 1.4 TISCI 服务器或 SciServer
    5. 1.5 本文档中使用的首字母缩写词
  3. 目标受众
  4. Jacinto7 SDK V7.1+ 中 MCU1_0 的作用
  5. TI-RTOS 上的 TISCI 客户端和服务器
    1. 4.1 J7 SDK 下载
    2. 4.2 SciClient 驱动程序位置
    3. 4.3 TISCI 服务器初始化示例
    4. 4.4 集成指南
      1. 4.4.1 信标
      2. 4.4.2 中断注册
      3. 4.4.3 中断处理
      4. 4.4.4 用户任务注册
      5. 4.4.5 用户任务处理
  6. DaVinci 中的配置
    1. 5.1 DaVinci Developer
    2. 5.2 DaVinci Configurator Pro
    3. 5.3 资源
    4. 5.4 活动
      1. 5.4.1 高优先级请求事件
      2. 5.4.2 正常优先级请求事件
    5. 5.5 SciServer 用户任务
      1. 5.5.1 高优先级用户任务
      2. 5.5.2 正常优先级用户任务
    6. 5.6 同步 Sciserver 用户任务
      1. 5.6.1 为高优先级用户任务配置资源
      2. 5.6.2 为正常优先级用户任务配置资源
    7. 5.7 Sciserver 中断
      1. 5.7.1 MCU 域导航系统高优先级中断
      2. 5.7.2 主域导航系统高优先级中断
      3. 5.7.3 MCU 域导航系统正常优先级中断
      4. 5.7.4 主域导航系统正常优先级中断
  7. AUTOSAR TISCI 客户端
    1. 6.1 AUTOSAR 中的 TISCI 客户端注册
  8. AUTOSAR TISCI 中断处理
    1. 7.1 MCU 域导航系统高优先级中断
    2. 7.2 主域导航系统高优先级中断
    3. 7.3 MCU 域导航系统正常优先级中断
    4. 7.4 主域导航系统正常优先级中断
  9. AUTOSAR TISCI 用户任务处理
    1. 8.1 高优先级用户任务初始化
    2. 8.2 高优先级用户任务可运行文件
    3. 8.3 正常优先级用户任务初始化
    4. 8.4 正常优先级用户任务可运行文件
  10. AUTOSAR 中的 TISCI 服务器验证
    1. 9.1 Boot App
    2. 9.2 引导任务配置
    3. 9.3 AUTOSAR 中的 Boot App
      1. 9.3.1 Boot App 启动
      2. 9.3.2 Boot App 实现
  11. 10AUTOSAR 中使用的 PDK 库
  12. 11AUTOSAR 所需的 R5F 配置
    1. 11.1 Cortex-R5F 的存储器布局
    2. 11.2 R5F 缓存配置

Cortex-R5F 的存储器布局

表 11-1 显示了 Cortex-R5F 中的 ATCM 和 BTCM。

表 11-1 Cortex-R5F 中的 ATCM 和 BTCM
区域名称 起始地址 终止地址 大小
ARMSS_ATCM 0x0000 0000 0x0000 7FFF 32KB
ARMSS_BTCM 0x4101 0000 0x4101 7FFF 32KB

在 Cortex-R5F 上运行 AUTOSAR 时,这里有多个检查点。

  • ATCM 使用情况:R5 SPL 默认不启用 MCU1_0 的 ATCM,因此如果在 MCU1_0 内核上从 R5 SPL 引导 AutoSAR 应用程序,那么不应在存储器布局中使用 ATCM。
    • 在这种情况下,Startup_Code 应该置于 BTCM 中。
  • Startup_Code 对齐方式:应该为 256 字节对齐。

示例如下所示:

MEMORY
{
  OCMCRAM_Common : ORIGIN = 0x41C50000 , LENGTH = 0x00004000 /* 48 KiB */
  OCMCRAM_Common_NonCache : ORIGIN = 0x41C54000 , LENGTH = 0x00000400 /* 1024 Byte */
  OCMCRAM_Core0 : ORIGIN = 0x41C54400 , LENGTH = 0x00000800 /* 2048 Byte */
  OCMCRAM_Core1 : ORIGIN = 0x41C54C00 , LENGTH = 0x00000400 /* 1024 Byte */
  OCMCRAM_Core2 : ORIGIN = 0x41C55000 , LENGTH = 0x00000400 /* 1024 Byte */
  OCMCRAM_Core3 : ORIGIN = 0x41C55400 , LENGTH = 0x00000400 /* 1024 Byte */
  OCMCRAM_Core4 : ORIGIN = 0x41C55800 , LENGTH = 0x00000400 /* 1024 Byte */
  OCMCRAM_Core5 : ORIGIN = 0x41010000 , LENGTH = 0x00000400 /* 1024 Byte */
  DDR0 : ORIGIN = 0x41C55C00 , LENGTH = 0xA5000 /* 16 MiB */
}

  .Startup_Code : ALIGN(256)
  {
    _Startup_Code_START = .;
    *(.brsStartup)
    .= ALIGN(256);
    _Startup_Code_END = .- 1;
    _Startup_Code_LIMIT = .;
  } > OCMCRAM_Core5