嵌入式人工智能快速发展,对于高性能计算需求越来越大。为了应对日益复杂和不确定的外部环境,国产嵌入式智能系统更离不开兼顾强实时和高算力的异构多核国产智能芯片和国产基础软件。工业智能系统对基于智能芯片上的混合关键系统的需求尤为强劲。
本文引用地址:混合关键性系统是嵌入式系统未来技术演进的重要方向之一,目前在自主驾驶、服务机器人、汽车电子等领域已经看到一些典型应用,在工业和国防等领域呈现出积极发展态势。
为此,北京航空航天大学计算机学院、北京航空航天大学软件学院、北京航空航天大学杭州创新研究院、中国电子技术标准化研究院物联网研究中心、嵌入式系统联谊会、《单片机与嵌入式系统应用》杂志社,举办了“第五届国产嵌入式操作系统技术与产业发展论坛暨嵌入式系统联谊会主题讨论会(总第29次)”。 本届论坛聚焦“面向异构多核智能芯片的混合关键系统研究与应用” 这一会议主题。主办方邀请到来自华东师大、湖南大学、中山大学、复旦大学和北京航空航天大学等高校的学者,以及来自嘉楠科技、赛昉科技、华为和睿赛德电子等知名企业专家参与论坛主题演讲和嘉宾讨论,研讨异构多核智能芯片和混合关键系统等热点议题。本次论坛由北航软件学院院长胡春明致开幕词,上午会议由嵌入式系统联谊会秘书长何小庆主持,下午会议由北京航空航天大学计算机学院牛建伟教授主持。
论坛上午主题:嵌入式异构多核智能芯片产业发展
嘉楠K230异构多核AIOT芯片架构探索和应用
嘉楠科技软件部架构设计经理 胡锴
嘉楠科技是一家深耕AI边缘侧应用的公司,胡锴在报告中重点介绍了2023年公司新推出的一颗AI芯片K230,其应用场景主要有门锁、猫眼、词典笔、IPC等。胡锴表示,在芯片开发之前,公司对这些应用场景的特性就已经做过分析,并将这些共性-小核系统负责Linux生态,运行网络/存储/GUI和其他控制类业务;大核系统负责快速启动,运行多媒体(音视频及AI类)业务;低功耗系统负责待机低功耗,监控唤醒源,以及控制normal域电源融入芯片的开发理念,因此K230内集成了分工明确的双核CPU,并且外围设置了高速、低速和安全接口。
胡锴详细介绍了K230硬件各个部分的具体功能和软件架构,以及大小核之间是如何进行通信的,并且还详细介绍了处理大小核之间棘手的互斥问题的解决方案。
高性能RISC-V多核计算平台
上海赛昉科技资深销售总监 周杰
赛昉科技主要从事高性能应用场景下的RISC-V IP和芯片研发,以及和底层软件解决方案,可以提供支持多核的一致性NOC总线的整体解决方案,并实现在自研芯片中,为RISC-V芯片进入高性能场景提供全国产化的硬件核心技术。
周杰介绍,RISC-V机构相较于其他内核架构,具有商业上的自由和技术上的自由,因此采用其架构的厂商具有了创新的自由,而且适用于所有的计算系统。目前,大部分应用在物联网落地(嵌入式场景全球出货累计100亿颗),并且已经开始向高性能、多核或众核的计算领域渗透(预测2025年突破800亿颗)。赛昉科技成立5年,共推出了4个系列全自研产品—昉﹒天枢(RISC-V CPU IP)、昉﹒星链(Interconnect IP)、昉﹒惊鸿7110(芯片)和昉﹒星光2(单板计算机),周杰详细介绍了这些产品的特点和应用。周杰尤其跟大家分享了赛昉推出的在RISC-V领域的第一个真正意义上的大小核异构IP子系统平台,其最多可支持8个核的CPU系统,并且除了支持CPU的一致性,还可以支持I/O的一致性,此平台将会在惊鸿8100上做验证。
面向混合关键部署的嵌入式RTOS虚拟化技术
湖南大学教授、嵌入式与网络计算湖南省重点实验室主任 谢国琪
随着嵌入式设备性能的提升,当前复杂嵌入式开发存在富功能(数据可视化、场景可视化)与硬实时(精准控制)的双重需求,而基于操作系统虚拟化技术的混合关键部署是实现上述双重需求的方案之一。谢老师详细介绍了Zephyr RTOS,这是一款Linux基金会下的开源实时操作系统,支持超过13种硬件架构,是一个产品级应用,发布了40个release版本,具有良好的实时性和安全性,支持多种嵌入式场景下的物联网协议。谢老师认为Zephyr既可以是一个宏内核,也可以是一个微内核,这取决于客户在应用中的配置。
谢老师所在团队主要在以下几方面做了工作:Zephyr适配RK3568、Paddle Lite2.6适配Zephyr3.4、嵌入式实时虚拟机ZVM(Zephyr-based Virtual Machine)开发。ZVM是由湖南大学嵌入式计算省重点实验室设计并开发的虚拟化软件,该软件基于实时操作系统Zephyr开发,可同时启动Linux与Zephyr这2个Guest OS,从而在同一硬件平台上实现混合内核部署。谢老师还详细介绍了基于ARM64与Zephyr RTOS的ZVM关键核心技术实现与开发规划。
智能嵌入式系统软硬件优化配置方法
华东师范大学软件工程学院教授 陈仪香
智能嵌入式系统是将人工智能技术融入到嵌入式系统中,实现诸如识别、判断、推理、决策等智能功能。陈老师介绍,智能嵌入式系统除完成其功能外还需要实现其性能,如时间性能,规定必须完成其功能的时间是3 s还是3 ms。另外,嵌入式系统是将嵌入式软件复制到特定的芯片上运行,但芯片有面积大小等限制,而实现智能的软件本身又非常复杂甚至庞大。因而在特定芯片上实现智能功能和性能需要进行软硬件优化配置,分配和调度哪些任务由软件实现(即CPU实现),哪些任务由硬件实现(即IP核和FPGA上实现),通常情况下,软件实现慢但成本低,而硬件实现快但成本高,如何在一定约束条件下(如时间约束、硬件面积约束、产品成本约束)科学地配置软硬件资源实现智能嵌入式系统的性能优化,这是一个值得研究和实践的问题。
陈老师分享了团队十年来的一些研究成果,首先引进硬件实现(时间)增益概念,在此基础上分别设计了基于遗传算法的智能嵌入式系统多核调度算法;同时,以基于卷积神经网络的交通标识识别系统为例,介绍了在Xilinx公司开发的ZYNQ-7020可扩展处理器芯片上实现该交通标识识别系统。
智能工业机器人操作系统及应用探索
北航长聘教授、科技部重点研发计划首席专家 牛建伟
国外工业机器人操作系统相对成熟,在稳定性、实时性和控制精度方面处于领先地位,但存在各自为政、互不兼容的局面。近几年,国内工业机器人发展迅猛,但依然面临诸多挑战。牛老师首先从机器人操作系统发展及背景介绍了研发一套自主可控、实时性强的智能机器人操作系统对于我国机器人产业发展的重要意义。
接下来,牛老师详细分析了机器人为什么需要异构多核智能系统,原因有三点:提升基础算力,构建复杂应用;解决“智能”与“实时”的冲突问题;实现高集成度。异构多核智能系统发展中同时面临以下挑战:操作系统体系架构升级、稳定可靠的国产智能芯片、多核调度实时性保障技术、机器人智能算法库、深度学习编译框架、操作系统内生安全技术。然后,牛老师介绍了其团队在机器人智能操作系统的构建和应用方面所做的工作。最后,对下一代机器人操作系统进行了展望,要具有高实时性、高可靠性、高安全性、开放性、智能化、跨平台、组件化。牛教授认为,既轻量化又智能化是机器人未来的发展方向。
论坛下午主题:混合关键系统的操作系统技术与应用
面向自动驾驶的安全关键系统资源管理与调度技术研究
中山大学教授、人工智能与无人系统研究所所长 黄凯
自动驾驶的实现要求在有限的车载计算资源上部署复杂的传感器数据处理和驾驶决策,并满足驾驶系统的可靠性和稳定性。黄老师团队重点关注自动驾驶领域的系统资源设计、管理与调度问题。
黄老师认为自动驾驶面临两方面挑战:一是可靠性问题,安全对于汽车应用,是首先要考虑的因素,如果安全事故常有发生,那么围绕自动驾驶系统的诉讼和纠纷难以彻底理清;二是成本问题,高性能自动驾驶需要车载大量高精度传感器和配套的实时计算系统,但是车厂其实对成本非常敏感,这也为自动驾驶产品的商业化和大众化设置了非常高的经济门槛。
报告中,黄老师从以下3个方面进行了讨论:首先,探讨如何优化关键系统的冗余设计以提高系统的稳定性和鲁棒性;其次,探索如何优化计算资源的在线调度以缓解复杂场景中的系统服务退化并提高资源使用效率;最后,对安全关键系统在自动驾驶领域的应用进行了展望。
RT-Thread 在工业领域的混合部署实践
睿赛德科技联合创始人 邱祎
睿赛德是RT-Thread开源操作系统的贡献者和维护者,公司产品目前有两个方向:开源RT-Thread操作系统和针对安全关键领域的RT-Thread高安全实时操作系统专业版。邱祎介绍,RT-Thread是可以运行在低端MCU、中高端MCU、MPU、高性能MPU/SoC、众核异构SoC上的全栈计算平台,生态完善、适配范围广。
接下来,邱祎详细介绍了基于 RT-Thread 的混合部署方案,包括RT-Thread Fusion和vmRT-Thread Hyperviser。RT-Thread Fusion是基于OpenAMP的多OS混合部署方案,适用于多核异构处理器和多核同构处理器。邱祎认为,同时具备ARM核和RISC-V核的芯片正在逐步出现,因此OpenAMP是搭建起异构系统间软通信的一座桥梁,会让Cortex-A+Cortex-M/R或RISC-V处理器在使用上更便利,甚至感受不到异构的存在,可以在多系统间融合。vmRT-Thread Hyperviser是一个不同安全等级、实时性要求及用户体验与运算能力的集成平台,可以用于存储虚拟化、网络虚拟化、安全显示、图形虚拟化和虚拟机间通信, 适合于智能座舱、智能驾驶、智能网关等应用场景。邱祎表示两种方案都可以实现 RT-Thread+Linux在同一颗SoC芯片上的混合部署运行。
操作系统内生安全技术与应用
复旦大学大数据研究院高级工程师 蒋金虎
随着智能嵌入式设备日益广泛应用和联网互通,安全问题愈发凸显,尤其是系统安全。蒋老师认为,操作系统的内生安全是必不可少的一环。报告中,蒋老师详细介绍了内生安全的多内核操作系统设计,其通过构造内核级动态异构冗余实现拟态安全,能有效抵御功能故障和网络攻击。此架构可同时运行多个内核,内核可具备同构或异构属性,内核间通过共识机制协同工作,因此具有冗余性、异构性和动态性,蒋老师对这3种特性进行了详细讲解。
为了让听众知其然且知其所以然,蒋老师还从功能安全和网络安全原理及机制两方面详细介绍了多内核操作系统内生安全原理。最后以星载系统为例,介绍了内生安全的多内核操作系统的具体应用。
实时内核UniProton及其混合关键性部署的实践
华为嵌入式实时操作系统领域专家 余德钊
余德钊从运动控制系统和全球嵌入式OS实际情况出发,介绍了华为开发openEuler Embedded的背景:2019年发布第一个版本,经过几年发展,目前已经成为一个面向全场景的开源社区,在云计算、服务器和嵌入式领域都有应用。openEuler Embedded是将openEuler与嵌入式应用场景融合的一个以Linux为中心的综合嵌入式系统软件平台,其适用于任何需要Linux的嵌入式系统。余德钊介绍的UniProton是一款硬实时操作系统,具备极致的us级低时延和灵活的混合关键性部署特性,可以高效地与以openEuler Embedded为代表的通用OS混合部署,适用于工业控制场景,既能支持微控制器MCU,也支持算力强的多核CPU。
余德钊表示,多OS混合部署要解决如下几个问题:多OS统一构建、高效的基础通信机制、提供服务化部署。华为针对这些问题也做了很多工作,现在openEuler Embedded 能够接纳不同的RTOS,更好地帮助基础设施进行改造。
基于新型编程语言设计实现操作系统内核
清华大学计算机系长聘副教授 陈渝
陈老师指出操作系统是具有战略意义的关键信息系统的核心基础设施,陈老师研究操作系统多年,技术上侧重于操作系统的安全性,应用领域聚焦于汽车应用。作为CSAE-CCF-CICV车用操作系统与泛在操作系统联合实验室首席科学家的陈渝认为,目前操作系统大部分是采用C语言开发的,但是这么多年过去,C语言在开发操作系统应用中的弊端正逐渐显现,很多典型漏洞都是因为C语言,因此不断有新的编程语言尝试重构操作系统,比如Ocaml、C#、Go、Rust等,而安全是新一代编程语言试图代替C语言的重要因素。
近几年,陈老师一直致力于研究Rust语言,提出了基于Rust的可扩展操作系统安全架构,与现有的OS相比,能够提供更多层次的安全保障能力,为构建自主可控IT生态奠定OS基础。这个操作系统在设计时,细化了内核模块属性,形成单向依赖、独立存在的内核模块,因此具有以下特点:与OS无关的语言级核心库、独立OS的组件库、耦合OS的组件库、挂接组件的内核主干、独立OS的组件库无紧耦合依赖关系、基于配置和静态分析进行架构优化。最后,陈老师进一步分析了如何用Rust编程语言设计可灵活组合的组件化操作系统内核,并对研究计划和产业落地情况做了介绍。
讨论环节:思想碰撞,精彩纷呈
在讨论环节,主办方邀请到北航软件学院院长胡春明、华元创信高端装备系统部长黄河、科东软件研发副总经理殷灿菊、中科院沈阳自动化所副研究员张华良,嘉宾针对混合关键系统的工业应用以及参会者关心的研发混合关键系统的主要瓶颈和应用前景等问题进行了热烈的探讨,为国产嵌入式操作系统的发展献计献策。
华元创信、嵌入式与网络计算湖南省重点实验室(湖南大学)、麦克泰技术、嘉楠科技和北航杭州创新研究院等单位在会场展示他们的技术成果和产品,《单片机与嵌入式系统应用》杂志社、北航出版社、睿赛德科技、科东软件以及陈仪香和何小庆老师在会场展示了他们最新的图书、杂志和产品资料,供听众近距离交流。
嵌入式系统联谊会是为嵌入式系统不同学科领域专家、学者、工程技术和媒体人士提供技术与产业信息交流 的科技沙龙性质的机构。嵌入式系统联谊会定期组织学术交流、技术研讨和产业趋势等线下和线上会议,并积极参与行业科技交流活动。