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.

AM572x EtherCAT Slave on M4 with Linux RT on A15

Other Parts Discussed in Thread: AM5728, AM3359

Is it possible/performant to run TI-RTOS on the CortexM4 and have the necessary computing power for an Ethercat Slave at 1khz with DC, while using RT-Linux on the A15 cores, doing IPC between them?

  • I will ask the RTOS team to comment.
  • So I've been looking a bit into this. The interconnect make it so that the M4 can access the PRU. If I install Linux RTOS on the A15, then I can launch a firmware ecat slave built for M4 on the IPU, then we can IPC stuff from the IPU to the A15.

    Any idea of the latencies involved? Latency between M4 and PRU, I would guess it is 100us for the ecat slave stack and latency of IPC between M4 and A15, I am not sure.

  • Hi Frederic, could you please share the reason of using M4? Instead of using only PRU + ARM? For your information, you can download PRU_ICSS EtherCAT slave for AM572x from: www.ti.com/.../pru-icss-industrial-sw

    thank you,
    Paula
  • Hi,

    We want the feature rich environment of linuxrt to do vision with opencl. And we want hard realtime with rtos ti. So the idea is to use the slave on rtos without having to code the driver in linux, and also to keep it realtime.

    Thus, the m4 looks like a nice alternative, the porting job looks easier.

    Also, I am familiar with the ethercat slave, we have one that runs on the AM3359 (another product) and it's perfect, so this is not new to me. What is new, is the am5728 and linux. Unless you tell me you have a ecat slave driver that communicates directly with the PRU in realtime with DC on linux, I'm all in!

  • Hi Frederic,

    clearly partitioning software on multi-core devices as you suggest is a great option. Unfortunately we are not there yet with delivering appropriate examples. Actually we have more options (e.g. using DSPs for the real time stuff). So the amount of possible system solutions is increasing and with that the test burden. Combine that with multiple instances of PRU-ICSS on AM57xx, multi-protocol capability and multi-OS requirements...
    We may release such examples in future but no promises. Until then you are free to port any drivers onto the M4 and evaluate the performance. There are IPC examples in RTOS and Linux SDK that you may combine with that to exchange data between the Linux and the real-time world. Results will be interesting to everyone I assume.
    We will try to help if you run into dedicated questions or issues. But don't expect full system solutions in the short term.
    We also need to leave some space for customer differentiation :-).

    Best regards,
  • Frederic,

    We have an implementation of using TI RTOS on Cortex M4 to load and run ICSS firmware stack with Linux running on the A15 communication with M4 using IPC. You can find the implementation details of this design and IPC benchmarks in the TI Design document here:

    www.ti.com/.../tidubo1.pdf

    The design uses an ICSS firmware for implementing a packet processing engine which you should be able to replace with the EtherCAT stack.
    Please review the document and let us know if you have any further questions regarding the design.

    Regards,
    Rahul