This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM6442: Throughput between IPC memory and SRAM

Part Number: AM6442

Is there memory copy throughput between IPC memory and SRAM

customer test based on example:   C:\ti\mcu_plus_sdk_am64x_09_00_00_31\examples\drivers\ipc\ipc_rpmsg_echo\am64x-evm

change cmd file to allocate IPC memory to SRAM or DDR.

Uint8 gIpcShareMem[2248]  _attribute_((aligned(128),section(".bss.ipc_vring_mem")));

 SECTIONS
  {
     .bss.ipc_vring_mem (NOLOAD) :{} > RTOS_NORTOS_IPC_SHM_MEM
 }

 MEMORY
 {
  //allocate to SRAM
    RTOS_NORTOS_IPC_SHM_MEM :ORIGIN = 0x701D4000, LENGTH = 0x0000C000
 //Or allocate to DDR4
    RTOS_NORTOS_IPC_SHM_MEM :ORIGIN = 0x90004000, LENGTH = 0x0000C000
 }

 #define SIZE_TEST 512 //512byte, or 256,128

//read operation:

 memcpy(&gTest[0],&gIpcShareMem[0],SIZE_TEST);

//or
 for(int16 iTemp = 0; iTemp < SIZE_TEST; iTemp++)
 {
     gTest[iTemp] =gIpcShareMem[iTemp];
 }
//write operation memcpy(&gIpcShareMem[0],&gTest[0],SIZE_TEST);
 Or:

 for(int16 iTemp = 0; iTemp <SIZE_TEST; iTemp++)
 {
     gIpcShareMem[iTemp] = gTest[iTemp];
 }

toggle a GPIO before and after operation loop, get below result.

Read operation

item

source

destination

512byte

256byte

128byte

1

SRAM(IPC)

SRAM(none IPC)

36.5us

18.5us

9 us

2

SRAM(IPC)

DDR4(none IPC)

39us

18.7us

9.3us

3

SRAM(none IPC)

SRAM(none IPC)

4.2us

2.2us

1.2us

4

DDR4(IPC)

SRAM(none IPC)

115us

56us

27us

5

DDR4(IPC)

DDR4(none IPC)

122us

56.8us

28us

6

DDR4(none IPC)

DDR4(none IPC)

5.4us

2.6us

1.3us

Write operation

item

source

destination

512byte

256byte

128byte

1

SRAM(none IPC)

SRAM(IPC)

4.2us

2.2us

1.2us

2

SRAM(none IPC)

DDR4(IPC)

4.2us

2.2us

1.2us

3

SRAM(none IPC)

SRAM(none IPC)

4.2us

2.2us

1.2us

4

DDR4(none IPC)

SRAM(IPC)

5.6us

2.5us

1.4us

5

DDR4(none IPC)

DDR4(IPC)

5.4us

2.5us

1.3us

6

DDR4(none IPC)

DDR4(none IPC)

5.4us

2.6us

1.3us

Is the result expected?