Can cortexm4 be used for general purpose in imx8, imx8x?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Can cortexm4 be used for general purpose in imx8, imx8x?

Jump to solution
145 Views
yibhan
Contributor III

Dear NXP,

While running a Linux application with imx8x, I want to control real-time motors separately with cortex M4. I want to control the motor in real time using cortexM4 alone. Is this possible? If not, I would like to recommend a soc among the imx processors that would satisfy my needs. If it is not possible with a single processor, I am curious as to whether a combination of nxp chips is possible. We are planning a product that controls motor control in real time while processing camera images and images in the main program.
When using MCU in motor control, there are communication speed limitations with the imx processor and communication processing delays, so we want to secure real-time through data sharing using a shared memory method using cortexM4 within the same soc.
I would like to use OpenAMP (Open Asymemtric Multi-Processing), but would you like guidance on whether it is possible on an imx processor based on Linux?

I look forward to your helpful response.

 

 

0 Kudos
Reply
1 Solution
43 Views
Alejandro_Salas
NXP TechSupport
NXP TechSupport

Hello @yibhan 

 

You can have access to the LSIO Subsystem and configure it with the RDC. Please refer to the Cortex M SDK examples. Then you will be able to control the LSIO:

Alejandro_Salas_0-1725906319148.png

 

Best regards,

Salas.

View solution in original post

0 Kudos
Reply
4 Replies
124 Views
Alejandro_Salas
NXP TechSupport
NXP TechSupport

Hello @yibhan 

I hope you are doing well.

Yes, the i.MX8 processors have a combination of Cortex A and Cortex M cores, that you can use the Cortex A to handle an operating system as Linux, Android, etc. And the Cortex M can handle real time applications. NXP provide the SDK for the Cortex M cores.

For communication between cores, i.MX8 processors support RPMSG, you can find the information on the i.MX Linux Reference Manual, please refer to the chapter 2.8 Remote Processor Messaging.

 

I hope this information can helps to you.

 

Best regards,

Salas.

0 Kudos
Reply
118 Views
yibhan
Contributor III

Dear NXP,

Thank you for your response, but I have additional questions.

As shown in the block diagram below, there is a User CortexM4 complex, with one available UART/I2C/GPIO allocated to each. However, in my case, if you want to control a motor, you need PWM (4), GPIOs (10), and UART (1), which are lacking in the User CM4 complex. How to solve this?

yibhan_1-1725406310917.png

 

0 Kudos
Reply
44 Views
Alejandro_Salas
NXP TechSupport
NXP TechSupport

Hello @yibhan 

 

You can have access to the LSIO Subsystem and configure it with the RDC. Please refer to the Cortex M SDK examples. Then you will be able to control the LSIO:

Alejandro_Salas_0-1725906319148.png

 

Best regards,

Salas.

0 Kudos
Reply
12 Views
yibhan
Contributor III
Thank you for answering
0 Kudos
Reply