峰会回顾第31期 | OpenHarmony生态共建:多种指令集架构芯片适配

描述

演讲嘉宾 | 连志安

回顾整理 | 廖   涛

排版校对 | 李萍萍

芯片

嘉宾简介

连志安,江苏润开鸿数字科技有限公司生态技术总监、OpenHarmony龙芯架构SIG组长、《物联网——嵌入式开发实战》作者、华为技术开发专家认证(HDE)、广鸿会创始人、龙芯俱乐部OpenHarmony首席专家。研究领域为:操作系统、嵌入式、物联网、OpenHarmony、内核技术等。 技术经历:最早一批OpenHarmony开发者,一直热衷于OpenHarmony社区布道,为开发者答疑解惑,相关文章累计阅读量超过400万;最早移植MQTT,OneNET等三方组件并开源,移植OpenHarmony到龙芯1C300芯片,2K0500、GD32,STM32等芯片;主导成立OpenHarmony龙芯SIG,推动南向芯片生态的建设。

内容来源

第一届开放原子开源基金会OpenHarmony技术峰会——生态与互联分论坛

视频回顾

打开 哔哩哔哩APP 搜索 OpenHarmony-TSC 视频更清晰

正 文 内 容

基于OpenHarmony行业发行版的芯片适配是点亮亿级行业设备的关键一环,如何进行芯片适配,如何基于芯片拓展OpenHarmony硬件生态?江苏润开鸿数字科技有限公司生态技术总监、OpenHarmony LoongArch SIG组长连志安在第一届OpenHarmony技术峰会上分享了几点思路。

芯片

01►

架构设计

耦合,也就是各模块之间存在依赖关系。解耦,能够降低模块之间的依赖关系,把关系密切的功能放在同一个模块中,尽量不暴露模块内部的细节给其他模块,让各个模块的设计更加独立,而模块之间的关联更加清晰。一般而言,解耦后模块设计复杂度更低,鲁棒性更高,IP能力(可复用性和可移植性)更强。同时,基于解耦的思想,会让芯片适配的工作量大大降低。

OpenHarmony的架构设计基于解耦的思想:按照硬件将层次划分为芯片架构层、片上系统层和单板层,代码设计采用Board和SoC、Arch(架构)。

芯片

基于解耦思想,代码目录结构可以相应设计为:board(存放开发板相关代码)、soc(存放soc芯片相关代码)、kernel(存放内核代码)、liteos_m(存放LiteOS-M内核代码)、arch(存放ARCH相关代码)以及vendor(存放厂商相关配置)。

02►

芯片适配

操作系统移植之前,首先需要确定移植的系统类型:OpenHarmony分为L0、L1、L2的3个级别,对应的,移植的系统类型也主要有以下3个:ARCH级别的移植(全新的架构级别的移植)、SOC级别的移植(已支持的架构做SoC级别的移植)、Board级别的移植(只针对开发板做少量移植适配)。

移植的主要步骤可以概括为:(1)移植准备:搭建编译环境,获取源码,并搭建编译框架;(2)移植内核:移植芯片架构,移植芯片厂商SDK,并添加内核子系统;(3)移植子系统:移植启动、文件、安全、通信、外设驱动以及其他子系统;(4)移植验证:进行OpenHarmony兼容性测试和厂商SDK功能性测试。

其中,SOC级别的移植:如果所选主板的芯片架构在OpenHarmony的ARCH中已有,则只需要移植BSP即可。BSP系统移植主要包含板级驱动适配、HAL层实现、XTS测试套以及业务功能验证4个操作。

芯片

ARCH级别的移植:对于轻量系统现在不支持架构的芯片,则需要移植ARCH。ARCH系统移植主要包含芯片初始化、任务调度、终端管理、MPU移植以及系统定时器设置等。在ARCH级别的移植中,liteos-m中主要分为ARCH、Components、Kernel、Utils等模块,硬件相关的代码放在arch目录中,其余为硬件无关的代码。

芯片

适配案例可参考OpenHarmony官方gitee主页:https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/Readme-CN.md

03►

硬件生态

硬件生态是整个OpenHarmony基石。要做到生态的繁荣,首先需要支持足够多的设备和更多的用户参与。用户的需求可能是千差万别的,OpenHarmony需要支持更多的适配,包括支持更多的指令集、支持更多的芯片、提供更多的开发板以及提供更多的设备等。

芯片

截止至2023年2月,已经有包括轻量系统、小型系统以及标准系统在内的80+商用设备、40+开发板以及40+芯片通过了兼容性测评。同时,在轻量系统方面,OpenHarmony支持的主流架构包括ARM、RISC-V、MIPS、csky、xtensa等,计划适配LoongArch;在小型系统方面,OpenHarmony支持的主流架构包括ARM、MIPS以及LoongArch;在标准系统方面,OpenHarmony支持的主流架构包括ARM、RISC-V等,计划适配X86和LoongArch。

在硬件生态中,芯片生态是关键一环。如下芯片生态作战地图所示,芯片生态涵盖了驱动框架、开发板、驱动外设、芯片厂商、编译构建、芯片指令集以及芯片架构等领域,需要适配更多驱动框架,建立开发板标准,支持更多驱动外设,吸引更多的芯片厂商,并优化和改进编译构建、芯片指令集以及芯片架构等,以此促进芯片生态发展。

芯片

在OpenHarmony生态委员会的指导下,已经成立了芯片&开发板工作组,旨在制定OpenHarmony芯片适配标准,制定OpenHarmony芯片适配规划路标、积极与各厂商进行洽谈合作,拓展南向生态,为南向生态中各环节企业提供技术赋能和技术支持。此外,OpenHarmony也成立了OpenHarmony Dev-Board-SIG,旨在组织输出《OpenHarmony富设备/瘦设备核心板规范》,并支持包括润和、软通、深开鸿、九联等在内的多家厂商共计发布的40+款社区OpenHarmony开发板。

芯片

目前,基于已适配芯片的OpenHarmony商业产品已覆盖多个主流行业。如教育行业实现了应用开发实验箱、电子学生证以及教育AI主机等;金融行业实现了扫码支付终端、电子签名柜、云音响、智能收款音响以及无线POS终端等;智能家居行业实现了破壁机、加湿器、取暖器、蒸箱、冰箱以及净水器等;交通行业实现了枪机摄像头、交流控制器等;数字政务行业实现了智能零钱宝、智行电子哨兵、广告机以及商务平板等;工业实现了边缘计算小站、智能网关、可燃气体探测器以及ZigBee网关等。OpenHarmony商业产品正在快速迭代,将更广泛、更高效、更高质量的赋能各行各业。

OpenHarmony旨在面向全场景、全连接、全智能时代,基于开源的方式,搭建一个智能终端设备操作系统的框架和平台,促进万物互联产业的繁荣发展。在硬件方面,后续OpenHarmony将支持更多主流芯片,促进硬件生态繁荣。

E N D

点击下方阅读原文获取演讲PPT。

关注我们,获取更多精彩。

审核编辑 黄宇

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分