“国产双系统”出炉,RK3568J非对称AMP:Linux+RTOS/裸机
“非对称AMP”双系统是什么
AMP(Asymmetric Multi-Processing),即非对称多处理架构。“非对称AMP”双系统是指多个核心相对独立运行不同的操作系统或裸机应用程序,如Linux + RTOS/裸机,但需一个主核心来控制整个系统以及其它从核心。每个处理器核心相互隔离,拥有属于自己的内存,既可各自独立运行不同的任务又可多个核心之间进行核间通信。
随着对嵌入式系统要求的不断提高,非对称AMP架构如今已成为一种新选择,主要应用于工业领域,如工业PLC、运动控制器、机器人控制器、继电保护装置、小电流选线设备等。
“非对称AMP”对工业有何意义
更强“系统实时性”
非对称AMP架构拥有更强的系统实时性,原因在于可使用固定的核心进行实时任务处理。因此在工业自动化控制领域中采用非对称AMP架构时,兼顾了工业系统控制设备需要的复杂功能和实时性。AMP架构能够极大地提高系统实时性,从而提高系统执行效率、计算能力及响应外部事件速度等。
更高“系统稳定性”
非对称AMP架构拥有更高的系统稳定性,是因为无需多个分立CPU之间进行频繁数据交互。AMP架构中,每个处理器核心又相互隔离,拥有属于自己的内存,核心之间互不干扰。开发者可根据开发需要灵活指定某个任务仅某个核心上运行,亦可指定不同核心系统之间进行通信,因此系统稳定性将大大提高,有效地降低系统崩溃概率,从而保证数据信息完整性。
更低“系统硬件成本”
内部通信的方式决定了仅需一套硬件电路即刻实现复杂的功能,使得非对称AMP架构方案拥有更低的系统硬件成本。AMP架构中各核心可运行不同的操作系统,可并行执行多个任务,在开发中不需额外搭建其他系统硬件设备支持,在提高效率的同时大大降低系统硬件成本。而采取分立CPU方案,需要两套硬件电路(CPU/ROM/RAM/PMIC),系统硬件成本成倍增加。
RK3568J非对称AMP开发案例
创龙科技RK3568J工业核心板(SOM-TL3568)已提供了非对称AMP开发案例,并继续快速完善中。目前提供了GPIO、UART控制功能案例,同时计划在近1~2个月陆续提供基于AMP架构的SPI、I2C、CAN、PCIe等案例。
SOM-TL3568核心板CPU、ROM、RAM、电源、晶振、连接器等所有器件均采用国产工业级方案,国产化率100%。
下面以串口回显功能演示非对称AMP案例的开发基本流程。
实现串口回显功能案例
案例功能:CPU0、CPU1、CPU2核心运行Linux系统;CPU3核心运行Baremetal、RT-Thread(RTOS)程序,实现RS485 UART7串口的回显功能。

图 1
请将案例产品资料案例提供的amp.img镜像拷贝至评估板文件系统,执行如下命令将其固化至Linux系统启动卡对应分区。
备注:如需固化至eMMC,请将设备节点修改为"/dev/mmcblk0p8"。
Target# dd if=amp.img of=/dev/mmcblk1p8 conv=fsync
Target# sync
Target# reboot

将评估板上电启动,在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# boot

U-Boot启动后,将加载运行amp.img镜像,RS232 UART0串口终端将打印程序运行信息。


在RS485 UART7串口终端输入8个字符后按回车,串口终端将回显接收到的字符。

同时RS232 UART0串口终端打印如下程序运行信息。


“国产双系统”出炉,RK3568J非对称AMP:Linux+RTOS/裸机的更多相关文章
- MVC5+EasyUI+EF6+Linq通用权限系统出炉(1)
1.先晒一下结构吧,
- Windows 7硬盘安装CentOS 6.4 双系统 (WIN7下硬盘安装Linux(Fedora 16,CentOS 6.2,Ubuntu 12.04))
WIN7下硬盘安装Linux(Fedora 16,CentOS 6.2,Ubuntu 12.04) 最近在看<鸟哥私房菜:基础学习篇>,觉得很不错,想要用U盘装个windows 7 和 ...
- 双系统下利用MbrFix.exe卸载LINUX系统
前言: 不少同学笔记本都装的有双系统,一般都是LIUNX和WINDOWS的两个系统(由于以前对电脑各种无知)装了双系统,再次,小编就不在阐述双系统地各种不便,再次就强调一下,假若要卸载LINUX的话 ...
- MVC5+EasyUI+EF6+Linq通用权限系统出炉--登录(2)
1.输入验证码后 自动识别验证码并登录.
- 从零开始安装搭建win10与ubuntu20.04双系统开发环境——集安装、配置、软件、美化、常见问题等于一体的——超详细教程
目录 **前言 ** 关于系统安装配置与软件安装 一.Win10安装ubuntu20.04双系统 1.按照自己的需求分区 2.配置软件镜像源 软件包管理工具介绍 更换APT源--使用国内镜像 3.解决 ...
- 双系统下,Windows如何正确删除Linux系统
一般电脑装了双系统,特别是Windows加Linux的电脑,不可以在Windows中直接删了linux,因为一般安装linux的时候,grub都写进了mbr,直接删了Windows就进不了了,除非原来 ...
- 【Linux-CentOS】CentOS安装Win双系统后Win启动项丢失及默认启动项修改
转载自:搁浅bky,有部分更正,建议看此文. 1.Windows启动项消失的原因: 在安装Win7.8/10系统+CentOS7双系统后,默认会将mbr(Main Boot Record)改写为g ...
- CentOS 7与 Windows双系统丢失Windows启动项及默认启动项修改
1.Windows启动项消失的原因: 在安装Win7.8/10系统+CentOS7双系统后,默认会将mbr(Main Boot Record)改写为grub2,默认的CentOS7无法识别Wind ...
- ARM开发板实现双系统引导的一种方法——基于迅为iTOP-4412开发板
前言 本文所用的uboot代码为迅为官方提供,开发板是迅为iTOP-4412开发板.本文如有错误,欢迎指正. 首先,我们确定一下系统启动的流程:首先启动uboot,uboot启动内核并挂载rootfs ...
- Windows 10下使用U盘安装Ubuntu双系统
问题描述:在Windows10下安装Ubuntu. 使用工具:Windows10.Ubuntu16.04 LTS安装包.UltraISO.easyBCD. 操作步骤: 1.安装之前要给Ubuntu分出 ...
随机推荐
- Ubuntu开启root账户登陆
Ubuntu开启root账户登陆 设置 root 密码:sudo passwd root sudo chmod 777 /usr/share/lightdm/lightdm.conf.d/50-xx ...
- rpc 和 http的区别
- .NET 缓存:内存缓存 IMemoryCache、分布式缓存 IDistributedCache(Redis)
.NET缓存里分了几类,主要学习内存缓存.分布式缓存 一.内存缓存 IMemoryCache 1.Program注入缓存 builder.Services.AddMemoryCache(); 2.相关 ...
- WordPress 整合Bootstrap制作分页代码
1.整合Bootstrap分页代码 * 因为wordpress默认仅仅提供简单分页, 所以要实现数字分页,需要自定义函数,wordpress可以结合bootstrap制作分页,bootstrap提供了 ...
- postgresql 自动类型转换
一.错误案例 1.赋值错误: ERROR druid.sql.Statement:149 - {conn-10005, pstmt-20005} execute error. UPDATE sys_p ...
- 鸿蒙HarmonyOS实战-Stage模型(服务卡片介绍和运行机制)
一.服务卡片介绍 1.服务卡片的概念 在HarmonyOS中,服务卡片是一种提供即时信息和快速操作的小组件,类似于Android中的通知栏.服务卡片可以显示各种类型的信息,包括通知.天气.日历事件.音 ...
- java学习之旅(day.07)
面向对象编程(oop) 面向过程思想:线性思维 步骤清晰简单,每一步做什么很明确 适合处理较为简单地问题 面向对象思想:总分 抽象 属性+方法=类 分类的思维模式,思考问题首先会解决问题需要哪些分类, ...
- Three加载3D模型贴图
Three加载3D模型贴图 准备阶段 3D模型 three 库文件 纹理图片 相关资料 官方开发文档: https://threejs.org/docs 官网编辑3D模型:https://threej ...
- QGIS开发笔记(二):Windows安装版二次开发环境搭建(上):安装OSGeo4W运行依赖其Qt的基础环境Demo
前言 使用QGis的目的是进行二次开发,或者说是融入我们的应用(无人车.无人船.无人机),本片描述搭建QGis二次基础开发环境,由于实在是太长了,进行了分篇: 上半部分:主要是安装好后,使用QtC ...
- Vue cli之使用Vue-CLI初始化创建前端项目
1.生成项目目录 使用vue自动化工具可以快速搭建单页应用项目目录. 该工具为现代化的前端开发工作流提供了开箱即用的构建配置.只需几分钟即可创建并启动一个带热重载.保存时静态检查以及可用于生产环境的构 ...