OpenHarmony适配移植:X86、ARM、RISC-V、MIPS、LoongArch芯片架构简析

时间:2022-10-01 11:51:27
  • 前言

基于OpenHarmony的开发相关工作,特别适配移植、设备开发这块,芯片的基础构架知识,是最初的学习起点。本文我们整理了几种常见的芯片构架的基础知识。

一、整体分析

序号

架构

特点

运营机构

1

X86

性能高,速度快,兼容性好

英特尔

2

ARM

成本低,低功耗

英国ARM公司

3

RISC-V

模块化,极简,可拓展

RISC-V基金会

4

MIPS

简洁,优化方便,高拓展性

MIPS科技公司

5

LoongArch

完全自主、技术先进、兼容生态

龙芯中科

二、简要介绍

1、X86架构

X86是微处理器执行的计算机语言指令集,指一个Intel通用计算机系列的标准编号缩写,也标识一套通用的计算机指令集合。1978年6月8日,Intel 发布了新款16位微处理器 8086,也同时开创了一个新时代:X86架构诞生了。

   X86指令集是美国Intel公司为其第一块16位CPU(i8086)专门开发的,美国IBM公司1981年推出的世界第一台PC机中的CPU–i8088(i8086简化版)使用的也是X86指令。随着CPU技术的不断发展,Intel陆续研制出更新型的i80386、i80486直到今天的 Pentium 4系列,但为了保证电脑能继续运行以往开发的各类应用程序以保护和继承丰富的软件资源,所以 Intel公司所生产的所有CPU仍然继续使用X86指令集。

2、ARM架构

ARM架构是一个32位 精简指令集处理器架构,其广泛地使用在许多嵌入式系统设计。由于节能的特点,ARM处理器非常适用于移动通讯领域,符合其主要设计目标为低耗电的特性。

如今,ARM家族占了所有32位嵌入式处理器75%的比例,使它成为占全世界最多数的32位架构之一。ARM处理器可以在很多消费性电子产品上看到,从可携式装置到电脑外设 甚至在导弹的弹载计算机等军用设施中都有它的存在。

ARM和X86架构最显著的差别是使用的指令集不同。ARM主要是面向移动低功耗领域,因此在设计上更偏重节能能效方面。X86主要面向家用商用领域,在性能兼容性方面做得更好。

3、RISC-V架构

RISC-V 架构是基于 精简指令集计算(RISC)原理建立的开放 指令集架构(ISA),RISC-V是在指令集不断发展和成熟的基础上建立的全新指令。RISC-V 指令集完全开源,设计简单,易于移植Unix系统,模块化设计,完整工具链,同时有大量的开源实现和流片案例,得到很多芯片公司的认可。

RISC-V 架构的起步相对较晚,但发展很快。它可以根据具体场景选择适合指令集的指令集架构。基于RISC-V 指令集架构可以设计服务器CPU,家用电器CPU,工控CPU和用在比指头小的传感器中的CPU。

4、MIPS架构

MIPS架构是一种采取 精简指令集(RISC)的处理器架构,1981年出现,由MIPS科技公司开发并授权,它是基于一种固定长度的定期编码指令集,并采用 导入/存储(Load/Store)数据模型。经改进,这种架构可支持高级语言的优化执行。其算术和逻辑运算采用三个操作数的形式,允许编译器优化复杂的表达式。

如今基于该架构的芯片广泛被使用在许多电子产品、网络设备、个人娱乐装置与商业装置上。最早的MIPS架构是32位,最新的版本已经变成64位。

5、LoongArch

2020年,龙芯中科基于二十年的CPU研制和生态建设积累推出了龙芯架构(LoongArch),包括基础架构部分和向量指令、虚拟化、二进制翻译等扩展部分,近2000条指令。2021年4月15日,龙芯自主指令系统架构(Loongson Architecture,以下简称龙芯架构或LoongArch)的基础架构通过国内第三方知名知识产权评估机构的评估,并在2021年信息技术应用创新论坛主论坛上正式对外发布。龙芯架构具有完全自主、技术先进、兼容生态三方面特点。

龙芯架构从整个架构的顶层规划,到各部分的功能定义,再到细节上每条指令的编码、名称、含义,在架构上进行自主重新设计,具有充分的自主性。

龙芯架构摒弃了传统指令系统中部分不适应当前软硬件设计技术发展趋势的陈旧内容,吸纳了近年来指令系统设计领域诸多先进的技术发展成果。同原有兼容指令系统相比,不仅在硬件方面更易于高性能低功耗设计,而且在软件方面更易于编译优化和操作系统、虚拟机的开发。

龙芯架构在设计时充分考虑兼容生态需求,融合了各国际主流指令系统的主要功能特性,同时依托龙芯团队在二进制翻译方面十余年的技术积累创新,不仅能够确保现有龙芯电脑上应用二进制的无损迁移,而且能够实现多种国际主流指令系统的高效二进制翻译。

CPU方面,龙芯产品实现了从嵌入式到桌面/服务器的全方位覆盖,还包括多种特种芯片。最新的桌面CPU型号是3A5000,使用境内的12nm工艺生产,集成4个核心,主频2.5GHz。依靠优秀的核心设计能力,其单核性能在国产CPU中达到了最高,整体性能大致有Intel/AMD当前的低压版4核CPU的水平。另外还有16核的3C5000及3C5000L服务器CPU等。与CPU配套的芯片组产品,有自主设计的7A1000等。除了中国国内,龙芯的产品也在跟随一带一路向国外推广使用。

                                            根据网络公开材料整理