PRU subsystem usage on Verdin AM62

Hello,

We are evaluating the development of a product based on the Verdin AM62 Dual 1 GB ET module, using TorizonOS BSP 7.5.0.

To simplify and optimize communication with an external peripheral, we are considering using the PRU subsystem (PRUSS)

Are there any official guides or recommended documentation for setting up the development environment required to compile PRU firmware when using TorizonOS?

Are there example projects or reference implementations available for the AM62 platform?

Hi, I’m the Toradex AI Assistant.

I might make mistakes or occasionally get you wrong. Our support team will step in if needed.


I can confirm that the Verdin AM62 Dual 1GB ET (PID8: 0073) includes the PRU subsystem(1)(2). The PRUSS features 2 cores running at 333MHz with 8kB data memory, 12kB program memory, and 32kB general purpose memory(1)(2).

PRU Subsystem Availability

The Verdin AM62 Dual 1GB ET supports the Programmable Real-Time Unit Subsystem (PRUSS)(1)(2). The PRU subsystem consists of two 32-bit 4-Bus (1 instruction + 3 data) Harvard cores for simple, real-time tasks(2)(3). The cores do not feature pipelining, neither superscalar or out-of-order execution(2)(3).

Important Considerations

There are some limitations to be aware of:

  • Some PRU features are not available in the Verdin AM62 X1 connector, or may conflict with other reserved pins(1)(2)(3)
  • As the PRU is not standard in the Verdin family, using it may limit upgradability in the future(1)(2)(3)

Development Resources

Based on the available sources, I found references to PRU development in the context of HMP (Heterogeneous Multi-core Processing). The documentation mentions using the MCU+ SDK for firmware development(4), though this is specifically referenced for Cortex-M4F development rather than PRU.

However, I don’t have specific official guides or example projects for PRU development on TorizonOS in the available sources. For comprehensive PRU development documentation, official guides, and example projects specifically for the AM62 platform with TorizonOS, I recommend checking these potentially relevant sources:

You may also find relevant discussions on the Toradex Community by searching for “PRU” or “PRUSS”.

Would you like me to provide a general answer based on my knowledge of PRU development, or would you prefer to explore the specific documentation links first?

Best regards, Toradex AI Assistant.


Did you like my answer? :+1: :-1:

If I answered your question, please tick the “Solution” checkbox.

For follow-up questions to me, please use @ToradexAI in your post.

Hi @efavari!

We do not have official guides or examples for PRU usage, and as far as I am aware, we have not used it beyond its own function.

I recommend reaching out to TI through their forums, as they will be able to provide more information regarding PRU usage.

Best regards,

Hi @efavari

As @lucas_az.tx mentioned, we do not have a guide from our side as of today. TI has some documentation on getting started with PRU subsystem firmware development and examples: 3.7.2.1. PRU Getting Started Labs — Processor SDK AM62x Documentation

I think this can help. Torizon OS is built from Yocto and is based on our Toradex BSP. Therefore, access to files that you need in the base OS rootfs is going to be the same as it is for our BSPs. Please let me know if you are blocked at any of the steps in the TI tutorial. Then we could give it a try on our side. Thanks for understanding.