LPC55s69 - Use shared memory

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

LPC55s69 - Use shared memory

768件の閲覧回数
malo_mabon
Contributor I

Hello,

We try to use RPMSG lite in order to send data from core0 to core1. We would like ton send two tables of data :

  • one of 1024 uint16_t (2048 bytes),
  • one of 112 uint16_t (224 bytes).

But with RPMSG lite we had to divide the first buffer in two and the transfer time is too long for our application (typically 102us).

We would like to know if there is a way to define variables in the shared memory. The core 0 will modify the variables and the core 1 will read those variables when they are ready.

Thanks,

Malo

0 件の賞賛
返信
4 返答(返信)

760件の閲覧回数
ZhangJennie
NXP TechSupport
NXP TechSupport

Hi 


the LPC55xx/LPC55Sxx provides a simple hardware means called Inter-CPU Mailbox mechanism for communication. On the software, many methods can help to implement communications with both cores. The software methods could be simple or complex. The shared memory is the common base in the methods. Here, the hardware Inter-CPU Mailbox communication mechanism will be introduced.

For detail, I recommend you refer AN12335 LPC55xx/LPC55Sxx Dual Core Communication, Chapter 2.3.

it's simple and readable.

You can also refer "mailbox" demo inside MCUXpresso SDK package.

 

Have a nice day,

Jun Zhang

0 件の賞賛
返信

752件の閲覧回数
malo_mabon
Contributor I

Hello,

Thanks for the reply.

Is the mailbox data length transfer limited to 32bits ? In this case, we have to make (2048+224)/4 = 568 mailbox transfer and I am afraid that this will take too long time for my application.

Have a nice day,

Malo

0 件の賞賛
返信

735件の閲覧回数
ZhangJennie
NXP TechSupport
NXP TechSupport

Yes, with mailbox mechanism, we can only send maximal 32 bit non-zero data to each other each time.

0 件の賞賛
返信

728件の閲覧回数
malo_mabon
Contributor I

Hello,

And this is the fastest way to send lots of data from core 0 to core 1 ?

Thanks,

Malo

0 件の賞賛
返信