Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the difference in cache memory and tightly coupled memory

Tags:

cpu-cache

arm

Due to being embedded inside the CPU The TCM has a Harvard-architecture, so there is an ITCM (instruction TCM) and a DTCM (data TCM). The DTCM can not contain any instructions, but the ITCM can actually contain data. The size of DTCM or ITCM is minimum 4KiB so the typical minimum configuration is 4KiB ITCM and 4KiB DTCM.

It looks like tcm have same purpose as cache memory.

No. They didn't used the word cache in explanation

like image 546
mrigendra Avatar asked Mar 31 '16 08:03

mrigendra


People also ask

What is the difference between TCM and cache?

The TCM memory is directly accessible to software. During program execution, cache is stored with instructions or data fetched from memory to the CPU. TCM can be accessed both by CPU and by DMA. Cache cannot be accessed by DMA.

What is tightly coupled memory?

Tightly Coupled Memory (TCM) provides low-latency memory accesses that the core can use without the unpredictability of access time that is a feature of caches.

What is the difference between cache and memory?

Cache is a high-speed storing mechanism used by the CPU to provide faster access to frequently used program instructions or data likely to be requested by the CPU for its next operation. RAM is a form of computer memory used to temporarily store all the information your computer is actively using for faster access.


1 Answers

This is what I found that I feel is more concise and to the point.

Cache memory is implemented with on-chip memory and control logic. Tightly coupled memory is implemented with on-chip memory and a dedicated connection.

Tightly coupled memory has a fixed span in the address map. Cache does not live in the address map (.... well it kinda does.... just don't think of it as a physical memory) but instead serves as an intermediate between the processor and the memory to (hopefully) provide more efficient memory accesses.

Tightly coupled memory has deterministic access time. Accesses through the cache are not deterministic since the data will either live in the cache (hit) or the data must be fetched from main memory (miss).

Another

While both are very fast accessed memories, cache stores dynamically data/code which has been lately used in order to improve access speed, compared to standard memory connected to the global Avalon matrix. Every time a memory access is required, the processor checks if the required data is already present in the cache or must be newly fetched from memory; in the meantime, old unused cache data is being continously replaced with new data. Tightly coupled memory is also a fast access memory, since it exploits a dedicated port, but it has static content: you decide what you need there and you specify it in the linker script.

like image 176
mrigendra Avatar answered Nov 13 '22 13:11

mrigendra