注:本文来自英飞凌官网,原文链接:KBA236986
本文重点介绍 TRAVEO™ T2G 车身控制器 High 和 Cluster 器件中的一些 CPU 性能改进技术。
TRAVEO™ T2G 车身控制器 High 和 Cluster 器件基于 Arm® Cortex® -M7 CPU。在涉及多个 CPU 任务的复杂设计中,必须优化 CPU 负载,以便操作系统实现高效的任务调度方案。本文介绍了可能影响 CPU 速度性能的几个主要因素。
CM7 工作频率
CM7 的时钟来自 CLK_FAST。以允许的最高频率运行 CM7,可获得最佳 CPU 性能。有关 CLK_FAST 的最大频率,请参阅器件数据手册。
CLK_MEM 频率
内部 TRAVEO™ T2G 存储器(如 SRAM 和闪存)由 CLK_MEM 提供时钟。将 CLK_MEM 配置为允许的最大频率,以获得最佳性能。有关 CLK_MEM 的最大频率,请参阅器件数据手册。另外请注意,在某些条件下,需要为这些存储器插入必要的等待状态。详情请参见器件架构 TRM。
CM7 caches
CM7 缓存对 CPU 性能有很大影响。应启用 CM7 I 缓存(指令缓存)和 D 缓存(数据缓存)。但是,在启用缓存的同时,应考虑如何将各种存储器配置为可缓存,并处理缓存操作或缓存维护,特别是在多核设计的情况下。请参阅 AN224432 - Multi core handling in TRAVEO™ T2G family。
CM7 TCM
基于 CM7 内核的 TRAVEO™ T2G 器件为指令 (ITCM) 和数据 (DTCM) 提供了紧密耦合存储器 (TCM)。有时,优化使用 TCM 存储器可以提高 CPU 的整体性能。例如,堆栈可位于 DTCM 中,而最常访问的功能可在 ITCM 中执行。请注意,整合 TCM 内存使用后,整体性能的变化也可能取决于所使用的软件架构。集成人员必须首先分析 TCM 内存的最佳使用是否会对 CPU 的整体性能产生积极影响。
CPUSS_BUFF_CTL 寄存器中的 WRITE_BUFF 位
通过设置 CPUSS_BUFF_CTL 寄存器的 WRITE_BUFF 位,可以缓冲 CPU 向外设的写传输。默认情况下,该位为 "1",因此会对写传输进行缓冲。建议用户不要将该位更改为 "0"。
P-DMA 和 M-DMA 的用法
TRAVEO™ T2G 设备支持多个 DMA 控制器,用于存储器和外设之间的数据传输。通过尽可能优化使用 DMA 通道,可以大大减少 CPU 带宽。
中断管理
频繁发生 CPU 中断和嵌套中断执行会对 CPU 负载产生影响。用户可以使用设备跟踪功能分析这种情况,并尽可能优化中断的使用。
阻塞函数,如 "memcpy"、延迟/阻塞循环
使用循环实现 "memcpy "等函数或大型软件延迟可能会消耗巨大的 CPU 带宽。"memcpy "功能可由 DMA 通道取代。延迟可以使用硬件定时器来实现。
编译器优化设置
该配置取决于用于构建软件的编译器工具链。设置 "速度 "优化可以提高 CPU 的整体性能。
注:本 KBA 适用于以下系列的 TRAVEO™ T2G MCU:
CYT3 系列
CYT4 系列