IPC模块介绍
=================

J6X IPC（Inter-Process Communication）模块是用于多核之间的通信，支持同构核和异构核之间的通信，软件上基于buffer-ring进行共享内存的管理，硬件上基于MailBox实现核间中断。IPCF具有多路通道，大数据传输，适用多种平台的特点。RPMSG基于开源协议框架，支持Acore与VDSP的核间通信。

IPCF软硬件组件框图
--------------------

Acore与MCU之间的核间通信，Acore侧主要使用IPCFHAL，MCU侧使用IPCF，其中IPCFHAL是基于IPCF封装了一层接口，用于用户态与内核态的数据传递。其中由于Acore侧有多套IPC接口，MCU侧只有一套IPC接口，因此IPCF在MCU侧文档统一描述为IPC。

.. image:: ./media/imagecpumcu.png
   :align: center
   :alt: 

Acore与VDSP之间的核间通信，Acore和VDSP支持使用IPCFHAL。

.. image:: ./media/imagecpuvdsp.png
   :align: center
   :alt: 

RPMSG软硬件组件框图
--------------------

Acore与VDSP之间的核间通信，Acore和VDSP支持使用RPMSG。

.. image:: ./media/imagerpmsg.png
   :align: center
   :alt: 