1 / 11

Amazon FreeRTOS, Heterogeneous cores and the all-new Apalis and Colibri iMX8

Recently Amazon acquired FreeRTOS and announced Amazon FreeRTOS and introduced FreeRTOS version 10, Toradex supports and maintains a FreeRTOS repository for its System on Modules, The microcontroller core Cortex-M4 present in most of the heterogeneous multi-core processor like Colibri iMX7, VF61 and Apalis iMX8QM can run bare-metal code or a real-time operating system like FreeRTOS/Amazon FreeRTOS. Read more @ http://bit.ly/2JdwWUf

Toradex
Download Presentation

Amazon FreeRTOS, Heterogeneous cores and the all-new Apalis and Colibri iMX8

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Amazon FreeRTOS, heterogeneous cores and the all-new Apalis and Colibri iMX8

  2. Amazon acquires FreeRTOS FreeRTOS is a real-time operating system kernel for embedded devices. In development since 2003, it is the market-leading real-time operating system, having been ported to more than 40 microcontroller architectures. On November 29, 2017, Amazon acquired FreeRTOS and announced Amazon FreeRTOS (or a:FreeRTOS), a real-time operating system kernel based on FreeRTOS and focused on low-power, connected devices. Amazon seems to be interested in integrating the most widely used real-time operating system — which, consequently, has a very broad user base — with their cloud services, like AWS IoT Core and AWS Greengrass. After the acquisition, Amazon introduced version 10 of FreeRTOS. Along with new features like cloud and edge connectivity libraries, the kernel license was changed from a modified version of the GNU General Public License (GPL), which the FreeRTOS project used previously, 2

  3. to the more permissive MIT license. This means that FreeRTOS is still a separate product and can be used freely, with or without Amazon services. Why this is relevant: Heterogeneous Multicore Processing (HMP) Toradex offers the Colibri iMX7 and Colibri VF61 System on Modules (SoMs) / Computer on Modules (CoMs). These products are based on the NXP® i.MX7 and VybridSoC respectively. The processors on these modules feature an Arm® Cortex-A core, usually running an operating system such as embedded Linux; and an Arm Cortex-M4 microcontroller core, which can run bare-metal code or a real-time operating system like FreeRTOS. Here's an outline of use cases: 3

  4. Real-time: If hard real-time is a requirement, this can be done on the Cortex-M4 core using FreeRTOS. • Control systems:The Cortex-M4 core can be used as a controller for a dynamic system, running, e.g., a PID controller, offloading the Cortex-A core running Linux, which, in turn, could be displaying a human-machine interface. • Data acquisition:On applications that make use of an analog-to-digital converter, the Cortex-M4 core can be employed to acquire data at a high sample rate more easily, also offloading the other core. • Low power: The Cortex-M4 core can be used as a low-power core to save energy in battery-powered applications. While the microcontroller core is running, the Cortex-A core may be shut down and then woken up as needed. An example application using the Toradex Colibri iMX7 System on Module is a self-balancing robot named TAQ. It was developed in partnership with Antmicro and Qt. The robot runs embedded Linux on the Cortex-A7 core, presenting 4

  5. the robot's face animations and sensor data received from the Cortex-M4 core. The Cortex-M4 core runs FreeRTOS, acquiring data from sensors such as an accelerometer and a gyroscope. It uses this data to control the dynamic system, employing a PID controller and a Kalman filter. The cores communicate via RPMsg. A kernel module on the Linux side creates a virtual serial interface which connects to the Cortex-M4; data exchange can be achieved by writing to or reading from this serial device, just as it would be done with a "real" serial device. The sources for this demo are open and can be found here (Linux side, user interface) and here (Cortex-M4 firmware). The Toradex Colibri iMX7 was also used on a tablet demonstrating some low-power applications. This video showcases the demo, which features sensor data acquisition and visualization while independently displaying power consumption on a separate LCD display. Toradex supports and maintains a FreeRTOS repository for its System on Modules. Many peripheral drivers and examples are included and ready to use. 5

  6. Some documentation is available at the Toradex Developer Center showing how you can get up and running with the built-in FreeRTOS examples. Watch our webinars for deeper insight into heterogeneous multicore systems development. First steps with Heterogeneous Multicore Processing on the NXP i.MX 7 How to perform advanced debugging on Heterogeneous ARM® Cortex Systems 6

  7. What about the future? On the software side There are many new players in the RTOS market. In 2016, Wind River Systems and the Linux Foundation launched Zephyr, a real-time operating system also focused on small, connected devices, targeting the IoT market. The Toradex Colibri iMX7 System on Module is officially supported by Zephyr, and development is ongoing. On the hardware side: the all-new NXP i.MX 8-based Apalis and Colibri SoMs Toradex has just launched the early access phase of its brand-new System on Module, the Apalis iMX8. This powerful SoM is based on the NXP i.MX 8QuadMax (i.MX 8QM) applications processor, featuring two Arm Cortex-A72 cores, four Cortex-A53 cores and two Cortex-M4 cores. Packed with 4 GB of LPDDR4 RAM and 16GB of eMMC flash storage, it also has built-in dual band Wi-Fi (802.11ac) and Bluetooth (Bluetooth 5-ready). This System on Module is ideal for computer vision applications: there are two integrated Vivante GC7000 GPUs, supporting Vulkan and OpenGL ES. 7

  8. The two Cortex-M4 cores open up many possibilities: as an example, you can run two different applications or real-time operating systems independently, to balance a data processing application; or use one core for sensor data acquisition and the other for post-processing. The microcontroller cores can also be used as a safety fallback for a graphical display, or to present early boot animations instead of static images. Toradex presented an Apalis iMX8 demo at Embedded World 2018. Watch this video to check it out, along with some other exciting partner demos. Soon: Colibri iMX8 The Colibri family is also slated to receive an update: Toradex will soon launch its Colibri iMX8 System on Module. Based on the NXP i.MX 8X, it will also feature a heterogeneous multicore architecture, with a Cortex-M4 core and a Cortex-A35 core running side by side. Stay tuned for more information on this upcoming System on Module! 8

More Related