Application Development

The AM6442 processor from Texas Instruments has a heterogenous, multi-core architecture consisting of 1x dual-core ARM Cortex-A53 cluster, 2x dual-core ARM Cortex-R5F MCU clusters, 1x single-core ARM Cortex-M4F MCU and an advanced gigabit industrial communication subsystem giving you access to as many as 12x PRU RISC cores.

The big advantage of such a feature-rich application processor, such as the AM6442, is that you can run a high-level operating system such as Linux on the dual-core Cortex-A cluster while offloading computationally heavy or critical, real-time tasks to the MCU co-processors. Taking advantage of the various compute clusters can yield far simpler hardware designs when developing complex embedded systems (since you can consolidate a lot of functionality into one chip). There are many ways to structure your application software to leverage these compute clusters and you will want to choose what makes the most sense for your use case.

Tip

If multi-core application development is a new concept, here is a hypothetical example that could help clear up confusion:

You might leverage Linux to connect your embedded system to your cloud infrastructure via a TCP/IP network while offloading time-critical motor-control and sensor data-collection to a MCU co-processor. The MCU core could pass sensor data to Linux on some interval, where it can be buffered and sent to the cloud. By structuring your application in this hypothetical way you can ensure your time-critical task continues to run with the lowest possible latency without regards to the network being available or not, and at the same time take advantage of the rich networking support available in Linux.

There are two primary routes for application development when it comes to the AM6442 processor:

Applications intended to run within Linux (the Cortex-A53 cluster) can be built using a cross-compilation toolchain generated with the Yocto Linux BSP (or natively from within Linux running on the AM6442 itself). Checkout the Linux Application Development guide for more information on Linux application development.

Applications intended to run on the MCU co-processors (Cortex-R5F, Cortex-M4F, etc) are provided in a separate BSP known as the MCU+ SDK. Checkout the MCU+ SDK Application Development guide for more information on MCU Applications.