什么是紧耦合存储器 (TCM)?
Source: Dev.to

在现代嵌入式系统——尤其是基于 Arm 核心如 Cortex‑M7 和 Cortex‑R 的系统中,可预测的低延迟内存访问对于实时控制回路、中断处理以及安全关键任务至关重要。紧耦合内存 (TCM) 是一种专门为这些需求设计的片上 RAM。
紧耦合内存 (TCM) 实际是什么
紧耦合内存 (TCM) 是一小块高速的片上 RAM,通过专用的低延迟接口直接连接到 CPU 核心——绕过了缓存和主 SRAM 所使用的共享系统互连。此直接连接实现了高度确定性的访问,通常只需极少的 CPU 周期,这对实时和控制应用至关重要。
TCM 的关键特性
- 专用路径直连 CPU 核心 – 内存访问不经过通用总线,避免了仲裁和争用带来的延迟。
- 可预测的访问延迟 – TCM 为指令和数据获取提供可重复、已知的周期数,不像缓存会因未命中而产生可变延迟。
- 显式管理 – 与自动存储最近使用数据的缓存不同,软件或链接脚本决定究竟哪些内容驻留在 TCM 中。
与缓存不同,TCM 是系统地址映射的一部分,开发者可以决定到底哪些代码和数据放在那里。而缓存则仅仅加速对主存的访问,且无法保证在任意时刻哪些数据驻留在缓存中。
工程师使用 TCM 的原因
1. 确定性时序(实时行为)
与基于缓存的内存不同,缓存未命中会导致若干不可预测的延迟周期,而 TCM 的访问延迟保持一致。这使其非常适合中断服务例程 (ISR)、控制回路以及对时序要求高于平均速度的安全关键代码。
2. 高性能且无缓存开销
在某些系统——尤其是面向安全认证或禁用缓存运行的系统——TCM 提供与缓存相当的性能,却无需处理缓存维护(刷新、失效等)的复杂性。
3. 与总线争用隔离
在复杂的 SoC 中,共享系统总线(如 AXI/AHB)可能因 DMA、显示、存储和外设流量而拥堵。TCM 通过为 CPU 核心提供更专属、直接的内存通道来规避这种情况。
紧耦合内存 (TCM) 是一种专用的片上存储区域,以可预测的低延迟和实时性能为代价,牺牲了更大的容量。通过为 CPU 核心提供直接通路并避免缓存的不确定性,TCM 成为嵌入式工程师工具箱中的强大工具——非常适合中断处理程序、控制回路以及其他对时序敏感的任务。
