Fundamentals 7 min read

Unlock Faster, Safer Embedded Systems with Asymmetric AMP Dual‑OS Architecture

This article explains the concept of asymmetric AMP dual‑system architecture, outlines its real‑time, stability, and cost advantages for industrial automation, and provides a step‑by‑step UART‑echo development example on the RK3568J SOM, including flashing commands and U‑Boot configuration.

Liangxu Linux
Liangxu Linux
Liangxu Linux
Unlock Faster, Safer Embedded Systems with Asymmetric AMP Dual‑OS Architecture

What Is Asymmetric AMP Dual‑System?

Asymmetric multiprocessing (AMP) allows different CPU cores to run independent operating systems or bare‑metal applications, such as Linux on one core and an RTOS or bare‑metal code on another. A designated master core controls the whole system while the slave cores operate autonomously, each with its own memory and optional inter‑core communication.

Benefits for Industrial Applications

Stronger real‑time performance : Fixed cores handle real‑time tasks, enabling complex industrial control functions without sacrificing deterministic response.

Higher system stability : Cores are isolated with separate memory, reducing cross‑core interference and lowering crash probability.

Lower hardware cost : A single shared hardware platform runs multiple OSes, eliminating the need for duplicate CPU/ROM/RAM/PMIC circuits.

Development Case on the RK3568J SOM

The Chuanglong Technology RK3568J industrial SOM (SOM‑TL3568) provides a ready‑made platform for asymmetric AMP development. All components—CPU, ROM, RAM, power, crystal, connectors—are domestically sourced, achieving 100% local component rate.

Step‑by‑Step UART Echo Demo

Copy the amp.img file supplied with the case to the board’s file system.

Flash the image to the Linux boot partition: dd if=amp.img of=/dev/mmcblk1p8 conv=fsync Synchronize and reboot the board:

sync
reboot

Before the Linux kernel boots, enter U‑Boot command mode (press space during the countdown) and disable the default UART nodes to free the RS485 UART7 port for the demo:

fdt set /serial@fdd50000 status "disable"
fdt set /serial@fe6b0000 status "disable"

Boot the system; the amp.img loads, launching Linux on three cores (CPU0‑CPU2) and a Baremetal/RT‑Thread RTOS on CPU3. The RS485 UART7 port echoes any characters entered, demonstrating inter‑core communication.

The following images illustrate the hardware board, U‑Boot prompt, and terminal output for both the Baremetal and RT‑Thread implementations.

RK3568J industrial core board
RK3568J industrial core board
Figure 1
Figure 1
Figure 2
Figure 2
U‑Boot command line
U‑Boot command line
Baremetal UART terminal
Baremetal UART terminal
RT‑Thread UART terminal
RT‑Thread UART terminal
Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

Real-TimeLinuxembeddedindustrial automationbaremetalasymmetric-ampdual-os
Liangxu Linux
Written by

Liangxu Linux

Liangxu, a self‑taught IT professional now working as a Linux development engineer at a Fortune 500 multinational, shares extensive Linux knowledge—fundamentals, applications, tools, plus Git, databases, Raspberry Pi, etc. (Reply “Linux” to receive essential resources.)

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.