在ARM处理器中,TCM内存是什么,它是专门的内存还是只是配置为TCM的RAM区域?如果它是专用内存,为什么我们可以配置它的位置和大小?
TCM,即 Tight Coupling Memory,是一个(或多个)小的、专用的内存区域,顾名思义,非常靠近 CPU。其主要好处是,CPU 每个周期都可以访问 TCM。与普通内存相反,没有缓存参与,使得所有内存访问可预测。
TCM 的主要用途是存储性能关键数据和代码。中断处理程序、实时任务的数据和操作系统控制结构都是常见例子。
如果它是专用内存,为什么我们可以配置它的位置和大小
如果让它可配置,会使所有内存访问的地址解码变得更加复杂,而且在固定地址范围上使用没有任何真正的好处。因此,将 TCM 绑定到固定地址可能更容易和更快速。
顺便说一下,如果您正在处理具有 TCM 的系统,并且尚未使用它,请尝试将您的堆栈放在那里。这通常会为您提供一些免费的性能提升,因为所有堆栈内存访问现在都是单周期的,不再污染数据缓存。