This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

General Feature of Cortex processors on cache coherency

Hi Experts,

Is there any general feature available in the cortex processors to realize the cache lines by DMA through AXI ?

I found some features like CCI module available to provide this feature in multi-core environment. Other than that, is it possible to connect the DMA engine alone with processor in realization of the same or it is a special feature provided by ARM ?

Regards,

Techguyz

Parents
  • For the Cortex-A, your choices are basically:

    • Cache coherent bus
    • ACP (Accelerator Coherency Port)
    • Software (as in, doing it manually)

    To use a Cache Coherent approach you need a processor that supports a suitable bus protocol, which for the Cortex processors means AMBA4 ACE or AMBA5 CHI.  You also need suitable interconnect fabric (such as CCI-400).  The other (non-processor) masters also need to suitable a protocol, maybe ACE-Lite.  In such a system the accesses by, for example, your DMA controller would be cache coherent with the processor(s).

    ACP allows you to connect a master to the memory system through the processor.  Meaning that all its memory access pass through the processor, and so are visible to the processor's cache coherency logic.  This approach doesn't need a cache coherent bus protocol or interconnect.  For more information see:

    Cortex-A9 MPCore Technical Reference Manual: 2.4. Accelerator Coherency Port

    (or the TRM of the processor you plan to use)

Reply
  • For the Cortex-A, your choices are basically:

    • Cache coherent bus
    • ACP (Accelerator Coherency Port)
    • Software (as in, doing it manually)

    To use a Cache Coherent approach you need a processor that supports a suitable bus protocol, which for the Cortex processors means AMBA4 ACE or AMBA5 CHI.  You also need suitable interconnect fabric (such as CCI-400).  The other (non-processor) masters also need to suitable a protocol, maybe ACE-Lite.  In such a system the accesses by, for example, your DMA controller would be cache coherent with the processor(s).

    ACP allows you to connect a master to the memory system through the processor.  Meaning that all its memory access pass through the processor, and so are visible to the processor's cache coherency logic.  This approach doesn't need a cache coherent bus protocol or interconnect.  For more information see:

    Cortex-A9 MPCore Technical Reference Manual: 2.4. Accelerator Coherency Port

    (or the TRM of the processor you plan to use)

Children