玄铁RISC-V处理器入门与实战-平头哥玄铁CPU 系统-Android

简介: 玄铁RISC-V处理器入门与实战-平头哥玄铁CPU 系统

1概述

安卓(Android)是全球主流移动设备操作系统,拥有丰富成熟的应用生态,其系统核心代码部分即AOSP(Android Open Source Project)。AOSP开源仓库对RISC-V移植补丁的合入,标志着Android应用生态与RISC-V国际生态的融合,也为RISC-V在高性能应用场景的商业落地打下基础。

 

平头哥在Android基础组件和框架、Chrome浏览器、安全、多媒体、视觉AI和诊断体系等方面做出了重要的贡献。

2RISC-V ISA的安卓软件栈支持

安卓软件栈主要包括系统内核、硬件抽象、运行时、框架层、应用五个层次的近千个软件包。其中作为基础的Linux内核、GCC工具链、Clang/LLVM工具链已经支持了RISC-V架构;因此对的主要支持工作集中于RISC-V ISA的编译框架支持、Bionic C库的ISA支持、ART JAVA运行时的ISA支持、RVB-ICE开发板板级的驱动对接、OPENGL的对接、Chromium webview浏览器几个部分;其他依赖包括NDK、VNDK、emulator、unwind解析库、编解码库等等。

 

3Android接收RISC-V补丁

由阿里巴巴平头哥贡献的RISC-V移植安卓的代码补丁集合,被安卓AOSP社区收录进系统源代码,成为全球首批RISC-V兼容安卓的正式补丁。这意味着谷歌安卓开启了对RISC-V架构的官方原生支持,RISC-V与安卓两大体系的融合驶入快车道。

 

image.png 

 

作为近年备受瞩目的新架构,RISC-V与安卓系统的适配,被业界普遍视为软硬件融合发展的新方向。但因RISC-V架构仍在演进,而安卓系统已成熟,打通两大体系的技术挑战十分艰巨,仅编译系统、LLVM编译工具链、C函数库等基础技术就需要大量的优化适配工作。

 

2021年10月,平头哥最早完成了安卓系统的整体移植,在玄铁C910处理器上首次兼容安卓10.0系统,并运行Chrome浏览器等应用;2022年4月,玄铁C910在安卓12.0系统上成功运行TensorFlow Lite,集成多项第三方关键组件,证明了RISC-V可兼容不断更新的安卓系统。

 

过去两年间,平头哥在RISC-V领域的系列技术突破及产业化落地,极大提振业界对RISC-V的信心,促成谷歌安卓对RISC-V架构提供官方支持。

 


 

2022年6月,谷歌与平头哥达成公司层面的贡献者许可协议(CLA,Contributor License Agreement),双方就安卓系统支持RISC-V架构等工作进行技术合作和分享。

 

9月30日,谷歌安卓AOSP社区开始接收RISC-V补丁。平头哥率先提交关于Bionic C库、模拟器、三方上游模块等76项基础代码补丁,其中,与AOSP社区合作直接并入官方补丁18项,拆分合入C库关键补丁12项,外部项目合入补丁4项,成为全球首批安卓系统吸纳的RISC-V补丁。

 

4RISC-V成功运行Android 12

2022 RISC-V国际峰会上,阿里平头哥展示了RISC-V架构与安卓体系融合的最新进展:基于SoC原型曳影1520,RISC-V在安卓12(AOSP)上成功运行多媒体、3D渲染、AI识物等场景及功能。这意味着安卓系统在RISC-V硬件上得到进一步验证,两大体系融合开始进入原生支持的应用新阶段。

 

在大部分基础功能成功实现后,RISC-V与安卓的融合进入应用验证领域,面临更多模块缺失、接口不一致等技术和系统挑战。比如在车载场景中,硬件层需重新设计总线以支持多路输入,系统层要兼容外设硬件、满足更高安全需求,应用层还需打通和协调多个车载子系统。

 

“为更好补齐两大系统融合的生态短板,平头哥着重在测试、性能优化及开源协作等方面推进根本问题的解决。”RISC-V国际基金会安卓技术组(Android SIG)主席、平头哥技术专家毛晗说。据他介绍,平头哥修复及澄清了28%的CTS和57%的VTS测试用例集,用例通过率大幅提升至更稳定的89%及78%,使得测试完成从单位模块到整体系统的飞跃;针对安卓系统里的Bionic、Art和图片编解码等关键原生功能,平头哥通过软硬一体优化,最高提升60%的性能。

 

基于曳影1520,平头哥实现了从底层硬件到安卓系统再到上层应用的完全打通,相关成果demo在2022 RISC-V国际峰会上首次演示:一个demo视频演示多路编解码能力,编码时长从每帧100ms大幅压缩到5ms;另一个demo演示高性能3D渲染,提升了两大体系融合的性能天花板。

“在完成RISC-V与安卓10系统的兼容、安卓12系统的深度验证后,平头哥推动两大体系融合挺进第三阶段:让RISC-V得到安卓原生支持,真正进入安卓系统上游代码,实现更多预编译组件和系统镜像的稳定编译和输出,推进两大体系的协同演化。”毛晗介绍说。据了解,目前,平头哥已提交80个RISC-V技术补丁,其中50个被吸纳入安卓AOSP原生系统中去,是两大体系融合的关键推动者。

相关文章
|
1天前
|
缓存 监控 Android开发
Android 应用性能优化实战
【4月更文挑战第27天】 在竞争激烈的移动应用市场中,性能优越的应用更能吸引和保留用户。针对Android平台,本文将深入探讨影响应用性能的关键因素,并提供一系列实用的优化策略。我们将从内存管理、UI渲染、多线程处理以及电池使用效率等方面入手,通过具体案例分析如何诊断常见问题,并给出相应的解决方案。文中所提技巧旨在帮助开发者构建更加流畅、高效的Android应用。
8 2
|
5天前
|
Android开发
Android构建系统:Android.mk(2)函数详解
Android构建系统:Android.mk(2)函数详解
12 1
|
5天前
|
存储 Java API
Android系统 文件访问权限笔记
Android系统 文件访问权限笔记
37 1
|
5天前
|
移动开发 Java Unix
Android系统 自动加载自定义JAR文件
Android系统 自动加载自定义JAR文件
23 1
|
5天前
|
Shell Android开发 开发者
Android系统 自定义动态修改init.custom.rc
Android系统 自定义动态修改init.custom.rc
23 0
|
5天前
|
测试技术 Android开发 开发者
RK3568 Android系统客制化动态替换ro任意属性
RK3568 Android系统客制化动态替换ro任意属性
27 1
|
5天前
|
存储 Linux Android开发
RK3568 Android/Linux 系统动态更换 U-Boot/Kernel Logo
RK3568 Android/Linux 系统动态更换 U-Boot/Kernel Logo
20 0
|
5天前
|
存储 缓存 安全
Android系统 应用存储路径与权限
Android系统 应用存储路径与权限
6 0
Android系统 应用存储路径与权限
|
5天前
|
存储 开发工具 Android开发
Android系统 权限组管理和兼容性
Android系统 权限组管理和兼容性
14 0
|
5天前
|
存储 安全 Android开发
Android系统 自定义系统和应用权限
Android系统 自定义系统和应用权限
19 0