AMP(Asymmetric Multi-Processing),即非对称多处理架构。“非对称AMP”双系统是指多个核心相对独立运行不同的操作系统或裸机应用程序,如Linux + RTOS/裸机,但需一个主核心来控制整个系统以及其它从核心。每个处理器核心相互隔离,拥有属于自己的内存,既可各自独立运行不同的任务又可多个核心之间进行核间通信。
随着对嵌入式系统要求的不断提高,非对称AMP架构如今已成为一种新选择,主要应用于工业领域,如工业PLC、运动控制器、机器人控制器、继电保护装置、小电流选线设备等。
非对称AMP架构拥有更强的系统实时性,原因在于可使用固定的核心进行实时任务处理。因此在工业自动化控制领域中采用非对称AMP架构时,兼顾了工业系统控制设备需要的复杂功能和实时性。AMP架构能够极大地提高系统实时性,从而提高系统执行效率、计算能力及响应外部事件速度等。非对称AMP架构拥有更高的系统稳定性,是因为无需多个分立CPU之间进行频繁数据交互。AMP架构中,每个处理器核心又相互隔离,拥有属于自己的内存,核心之间互不干扰。开发者可根据开发需要灵活指定某个任务仅某个核心上运行,亦可指定不同核心系统之间进行通信,因此系统稳定性将大大提高,有效地降低系统崩溃概率,从而保证数据信息完整性。内部通信的方式决定了仅需一套硬件电路即刻实现复杂的功能,使得非对称AMP架构方案拥有更低的系统硬件成本。AMP架构中各核心可运行不同的操作系统,可并行执行多个任务,在开发中不需额外搭建其他系统硬件设备支持,在提高效率的同时大大降低系统硬件成本。而采取分立CPU方案,需要两套硬件电路(CPU/ROM/RAM/PMIC),系统硬件成本成倍增加。创龙科技RK3568J工业核心板(SOM-TL3568)已提供了非对称AMP开发案例,并继续快速完善中。目前提供了GPIO、UART控制功能案例,同时计划在近1~2个月陆续提供基于AMP架构的SPI、I2C、CAN、PCIe等案例。SOM-TL3568核心板CPU、ROM、RAM、电源、晶振、连接器等所有器件均采用国产工业级方案,国产化率100%。(1分钟解锁国产化率100%的RK3568J工业核心板)下面以串口回显功能演示非对称AMP案例的开发基本流程。案例功能:CPU0、CPU1、CPU2核心运行Linux系统;CPU3核心运行Baremetal、RT-Thread(RTOS)程序,实现RS485 UART7串口的回显功能。请将案例产品资料案例提供的amp.img镜像拷贝至评估板文件系统,执行如下命令将其固化至Linux系统启动卡对应分区。备注:如需固化至eMMC,请将设备节点修改为"/dev/mmcblk0p8"。Target# dd if=amp.img of=/dev/mmcblk1p8 conv=fsync将评估板上电启动,在U-Boot倒计时结束之前按下空格键进入U-Boot命令行模式,执行如下命令关闭设备树uart0和uart7配置,避免Linux内核占用案例的外设资源。U-Boot# fdt set /serial@fdd50000 status "disable"U-Boot# fdt set /serial@fe6b0000 status "disable"U-Boot启动后,将加载运行amp.img镜像,RS232 UART0串口终端将打印程序运行信息。图 5 RT-Thread(RTOS)程序串口终端在RS485 UART7串口终端输入8个字符后按回车,串口终端将回显接收到的字符。同时RS232 UART0串口终端打印如下程序运行信息。
图 8 RT-Thread(RTOS)程序串口终端店铺链接:https://tronlong.tmall.com瑞芯微RK3568J、RK3588J技术交流QQ群:567208221,欢迎加入!创龙科技(Tronlong)始创于2013年,是国内领先的嵌入式产品平台提供商,业务主要涵盖工业核心板、工业评估板、工业单板机、项目服务,总部位于广州科学城,下设独立运营的教仪事业部,在北京、天津、上海、南京、深圳、西安、成都等地设有业务及技术服务中心。创龙科技10多年来一直专注于ARM、FPGA、DSP异构多核技术开发,坚持“国产 + 进口”双引擎产品战略,是全志、瑞芯微金牌合作伙伴,以及TI、NXP、Xilinx、紫光同创中国官方合作伙伴,为实时系统、现场总线、物联网、人工智能等技术提供应用平台,产品广泛应用于工业自动化、能源电力、仪器仪表、医疗、通信、安防等行业。技术邮箱:support@tronlong.com官方商城:https://tronlong.tmall.com