【发布时间】:2016-03-31 08:43:30
【问题描述】:
由于嵌入在 CPU 内部,TCM 具有 哈佛架构,所以有一个 ITCM(instruction TCM) 和一个 DTCM(数据 TCM)。 DTCM 不能包含任何 指令,但 ITCM 实际上可以包含数据。 DTCM 或 ITCM 的大小最小为 4KiB,因此典型的 最低配置为 4KiB ITCM 和 4KiB DTCM。
看来 tcm 和缓存内存的用途一样。
没有。他们没有在解释中使用缓存这个词
【问题讨论】:
由于嵌入在 CPU 内部,TCM 具有 哈佛架构,所以有一个 ITCM(instruction TCM) 和一个 DTCM(数据 TCM)。 DTCM 不能包含任何 指令,但 ITCM 实际上可以包含数据。 DTCM 或 ITCM 的大小最小为 4KiB,因此典型的 最低配置为 4KiB ITCM 和 4KiB DTCM。
看来 tcm 和缓存内存的用途一样。
没有。他们没有在解释中使用缓存这个词
【问题讨论】:
缓存使用访问模式来填充缓存中的数据。它有额外的硬件来跟踪后备地址,并且可能与其他系统实体 (SMP) 通信以跟踪缓存行何时脏(其他人已将某些内容写入主内存)。
“TCM”(紧耦合存储器)速度很快,可能是 SRAM 多晶体管存储器,如缓存。两者都有与 CPU 的快速专用连接。但是,实现 TCM 的开销远小于缓存。 TCM 通常在低端(深度嵌入可能是 Cortex-M)ARM 设备上找到。
大多数 CPU 缓存都有一个锁定功能,使它们能够像 TCM 一样工作。但是,TCM 没有动态功能来缓冲高使用率的代码和数据。因此,TCM(和锁定的缓存)可能更具确定性,这可能有助于硬实时应用程序。
【讨论】:
memory command 或仅使用 AT 指定地址。它还取决于 MMU 或 LMA/VMA 问题。
cache 不同。
这是我发现我觉得更简洁和重点的。
高速缓存存储器通过片上存储器和控制逻辑实现。紧密耦合的内存是通过片上内存和专用连接实现的。
紧耦合内存在地址映射中具有固定的跨度。缓存并不存在于地址映射中(......好吧,它有点......只是不要将它视为物理内存),而是作为处理器和内存之间的中间体(希望)提供更高效的内存访问。
紧耦合内存具有确定的访问时间。通过缓存的访问不是确定性的,因为数据要么存在于缓存中(命中),要么必须从主内存中获取(未命中)。
另一个
虽然两者都是访问速度非常快的内存,但与连接到全局 Avalon 矩阵的标准内存相比,缓存动态存储最近用于提高访问速度的数据/代码。每次需要访问内存时,处理器都会检查所需的数据是否已经存在于缓存中,或者是否必须从内存中重新获取;与此同时,旧的未使用缓存数据不断被新数据替换。 紧耦合内存也是一种快速访问内存,因为它利用了一个专用端口,但它具有静态内容:您可以在那里决定您需要什么,并在链接描述文件中指定它。
【讨论】:
TCM 已分配地址空间,因此您可以在内存映射中找到它。您可以控制在链接时已经存储在那里的数据。只需将其视为具有与缓存相似的访问时间的普通系统内存。通常来自 TCM 的数据是不可缓存的。
【讨论】:
如果我们忽略双可配置缓存兼 TCM,缓存存储器应连接到总线接口 (BIU) 以连接外部存储器,而 TCM 则不是。原因是中医本身就有原始数据。而缓存是外部存储器内容的临时存储(为了速度)。
【讨论】: