【转】ARM指令集和X86指令集的区别

by admin on 2020年3月20日

美国当地时间8月30日,GCC
发布公告称,GCC
指导委员会已接受 OpenRISC 作为包含在 GCC 编译器的最新架构端口,并指派
Stafford Horne 为维护者。这个 OpenRISC
端口应该会在不久的将来落地使用,以便明年发布的 GCC 9
稳定版提供该功能。

在人工智能(AI)时代,此前物联网(IoT)领域的AI芯片往往身陷困局,传统CPU算力不足,AI协处理器的面积和功耗又偏大。为了打造一款高效率低功耗的AI芯片,创企们纷纷用起存储优先、存算一体等各种招式,还有一类招式是用RISC-V经开源设计打造的AI芯片,因其低功耗的优势迅速在IoT行业崭露头角。

当年面试华为,本来面的java岗,看到我简历上学过单片机,一个这个问题抛过来,基本让我招架不住。现在回想过去,还是经验不足啊,经验不足啊!血亏!

与 RISC-V 指令集架构相比,虽然 OpenRISC 对 GCC 的支持时间比它更长,但
OpenRISC 端口遇到了复杂的问题 —— 关于代码版权方面的问题。负责 OpenRISC
GCC
代码的原始开发者无法满足自由软件基金会代码所需的版权分配作为上游工作的要求。

近两年来,在ARM和Intel主导的竞争格局中,一个新的开源指令集架构RISC-V在芯片江湖声名鹊起。

以下为转载内容。

因此,开发者最终为 GCC 重写了 OpenRISC 编译器代码。该代码已经发布,GCC
指导委员会也已确认其将会成为 GCC 最新的处理器目标。

面对来势汹汹的AI和IoT浪潮,RISC-V提供了一种高能效低成本解决方案,吸引了谷歌、高通、IBM、镁光、西部数据、三星、英伟达、惠普、甲骨文、华为、比特大陆、加州大学伯克利分校、麻省理工学院、普林斯顿大学、新加坡南洋理工大学以及中科院计算所等国内外200家左右的企业和科研机构加盟。

 

OpenRISC 是 OpenCores 组织提供的基于 GPL 协议的开源
RISC(精简指令集计算机)处理器。有人认为其性能介于 ARM7 和 ARM9
之间,适合一般的嵌入式系统使用。最重要的一点是 OpenCores
组织提供了大量的开源 IP
核供研究人员使用,因此对于一般的开发单位具有很大的吸引力。 

阿里平头哥用其主攻IoT安全功能,华米用其造出全球首款支持AI的可穿戴设备芯片组,邻国印度将其确立为国家指令集……和其他传统架构相比,RISC-V具有低功耗、低成本、灵活可扩展、安全可靠等四大优势。据不完全统计,有5家科技老手和6家创业新秀的产品直接或间接的瞄准了基于RISC-V架构的AI芯片。

一、背景知识:

OpenRISC 具有以下特点:

图片 1

指令的强弱是CPU的重要指标,指令集是提高微处理器效率的最有效工具之一。从现阶段的主流体系结构讲,指令集可分为复杂指令集(CISC)和精简指令集(RISC)两部分。

  1. 采用免费开源的 32/64bit RISC/DSP 架构。

  2. 用 Verilog HDL(硬件描述语言)实现了基于该 RISC/DSP 架构的
    RTL(寄存器传输级)描述。

  3. 具有完整的工具链,包括:开源的软件开发工具、C 语言实现的 CPU
    仿真模型、操作系统,以及软件应用所需的函数库。

阿里平头哥蓄势待发,华米打响可穿戴AI芯片头炮

相应的,微处理随着微指令的复杂度也可分为CISC及RISC这两类。

(文/开源中国)    

RISC-V是一种基于精简指令集计算原理建立的开放指令集架构(ISA),由2017年新晋图灵奖得主、加州大学伯克利分校的Dave
Patterson教授带领团队设计研发。

 

阿里巴巴今年9月创建的平头哥半导体公司是由阿里巴巴全资收购的杭州中天微和阿里达摩院合并而成,主要发力于32位高性能和低功耗嵌入式CPU的IC设计。

CISC

就在合并的2周前,中天微宣布基于RISC-V的第三代C-SKY指令架构,同时发布基于RISC-V第三代指令架构处理器CK902,可灵活配置TEE引擎,支持IoT安全功能。

是一种为了便于编程和提高记忆体访问效率的晶片设计体系。在20世纪90年代中期之前,大多数的微处理器都采用CISC体系──包括Intel的80×86和Motorola的68K系列等。
即通常所说的X86架构就是属于CISC体系的。

图片 2

 

截至9月,中天微基于C-SKY CPU
IP核的SoC芯片累计出货量已经突破8亿颗。中天微还将针对不同的产品应用场景和客户设计需求,持续推出支持RISC-V的CPU
IP系列。

RISC

此外,中天微与小米旗下的松果电子在11月宣布就RISC-V达成全方位的战略合作伙伴关系并进行联合开发,以中天微RISC-V
CPU处理器为基础平台,松果电子提供极具市场竞争力的SoC智能硬件产品。

是为了提高处理器运行的速度而设计的晶片体系。它的关键技术在于流水线操作(Pipelining):在一个时钟周期里完成多条指令。而超流水线以及超标量技术已普遍在晶片设计中使用。RISC体系多用于非x86阵营高性能微处理器CPU。像HOLTEK
MCU系列等。

同样在今年9月,小米生态链首家在美国上市的公司华米科技推出了首款RISC-V架构的可穿戴设备黄山1号,并称是全球首款支持AI的可穿戴设备芯片组。

 

图片 3

ARM ( Advanced RISC
Machines ),既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。而ARM体系结构目前被公认为是业界领先的32 位嵌入式RISC 微处理器结构。 所有ARM处理器共享这一体系结构。

华米的这款可穿戴AI芯片由一颗主频可达240MHz的处理器和HeartID、ECG、ECG
Pro、Arrhythmia四个AI引擎组成,实现在本地端对心率、心电、心律失常等心脏问题进行24小时低功耗实时监测分析。

 

其创始人兼CEO黄汪在10月的采访中告诉智东西,和手机AI芯片不同,黄山1号可以在智能手表中作为一款协处理器芯片,配合主处理器工作,也可以在智能手环中扮演主处理的角色。

因此我们可以从其所属体系比较入手,来进行X86指令集与ARM指令集的比较。

阿里平头哥和华米瞄准的是IoT领域,而美国的老牌FPGA供应商美高森美(Microsemi)的RISC-V相关产品则主打高速增长的医疗、工业等机器视觉系统市场。该公司不仅为嵌入式设计提供RISC-V
IP内核,并为该系列产品提供完整的工具链和基于RISC-V+Linux+CNN加速器的AI解决方案。

 

美高森美与创企SiFive合作开发的RV32IM
RISC-V内核使客户能够利用开放式指令集架构(ISA)进行设计,通过许可的BSD授权,实现全面的移植性和更安全的处理器架构。

二、CISC和RISC的比较

设计人员可以将设计自由地从FPGA移植到ASIC,而无需支付权益金。此外,工程人员还可以针对其特定应用协作、修改和改编RISC-V内核,充分发挥创新水准。

(一)

图片 4

CISC

除了美高森美外,另一家IP公司台湾晶心科技在近日于美国硅谷举行的2018 ANDES
RISC-V CON大会上展示了基于RISC-V的产品。

 

晶心科技是第一家纳入RISC-V的商用主流CPU
IP公司,该公司在大会上详细介绍了使用开放来源指令集架构(ISA)的6颗内核以及开发中的4颗内核,截至上个月,晶心科技的RISC-V内核在全球拥有12家授权商,被广泛用于储存服务器、指纹辨识器以及几种AI应用中。

1.CISC体系的指令特征

除了上述提及的公司外,北京君正、中兴微、联发科等很多玩家的RISC-V计划正在进行中,西部数据、英伟达、三星等科技巨头也分别在公共场合表露将在旗下产品中用到RISC-V架构。

 

硬盘巨头西部数据在去年11月宣布,未来旗下硬盘处理器和控制器都逐渐转移至成RISC-V架构,一旦转型完成,预计每年将有20亿个基于RISC-V架构的内核出货。

使用微代码。

GPU王座英伟达表示将来会把旗下的GPU控制核心替换成RISC-V核,三星半导体也被指在其Exynos
8890处理器中首次采用基于开源的RISC-V架构的自主CPU内核M1。

指令集可以直接在微代码记忆体(比主记忆体的速度快很多)里执行,新设计的处理器,只需增加较少的电晶体就可以执行同样的指令集,也可以很快地编写新的指令集程式。

未来上述大公司或机构很有可能会将RISC-V运用到他们自己的云计算设施中,以摆脱对X86的依赖或是减少昂贵的ARM指令集授权费用。据悉欧盟超算机构EPI已经决定在规划中的两套下一代E级超算中的其中一套用上RISC-V处理器。

 

ARM小师弟?RISC-V的诞生史

庞大的指令集。

引得一众科技巨头为之站台的RISC-V,和当前移动终端的主流架构ARM却是师出同门。

可以减少编程所需要的代码行数,减轻程式师的负担。高阶语言对应的指令集:包括双运算元格式、寄存器到寄存器、寄存器到记忆体以及记忆体到寄存器的指令。

众所周知,芯片江湖有两大指令集架构纵横天下,复杂指令集(Complex
Intruction Set Computer,
CISC)的代表英特尔x86在PC市场无出其右,精简指令集(Reduced Intruction
Set Computer, RISC)的代表ARM则在移动终端独领风骚。

 

两类指令集的命名都相当“集”如其名:CISC指令集约有20%的指令会被反复使用,占全程序代码的80%,靠设计出尽可能复杂的指令来完成任务;而RISC的理念更加精简,会采用固定长度的指令格式和单周期指令,优先选用最高频使用的简单指令。

2.CISC体系的优缺点

上世纪80年代,加州大学伯克利分校的Dave Patterson教授主导了Berkeley
RISC项目并从零设计出第一代处理器RISC
I。因为当时市面的CPU价格太昂贵,英特尔又不肯给出x86的授权,英国Acorn公司的创始人Roger
Wilson和Steve Furber设计了第一款RISC微处理器——ARM(Advanced RISC
Machine)。

优点:

几乎是同一时间,曾斯坦福大学校长的John
Hennessy与其团队设计出MIPS处理器的早期雏形,并最终孵化出后来被Imagination收购的MIPS公司。

能够有效缩短新指令的微代码设计时间,允许设计师实现CISC体系机器的向上相容。新的系统可以使用一个包含早期系统的指令超集合,也就可以使用较早电脑上使用的相同软体。另外微程式指令的格式与高阶语言相匹配,因而编译器并不一定要重新编写。

随着智能手机时代的到来,ARM以其低功耗、低成本和高性能的特点攻破微软和英特尔打造的PC壁垒,迅速在移动互联网的狂潮中建立起自己的生态,将苹果、高通、三星等一大批巨头拢入麾下,共同颠覆了传统互联网时代。

缺点:

图片 5

指令集以及晶片的设计比上一代产品更复杂,不同的指令,需要不同的时钟周期来完成,执行较慢的指令,将影响整台机器的执行效率。

而如今AI、IoT等新兴技术的爆发,处理器指令集架构大有再有改朝换代之势。而这一轮新的变天风波的主角,正是ARM的同门师弟——第五代RISC处理器RISC-V芯片。

 

RISC-V是基于精简指令集(RISC)原理搭建的全新开源指令集架构(ISA),亦由David
Patternson教授带领完成。V既指第五代,又代表变化(variation)和向量(vectors)。

(二)RISC

秉承“大道至简”的设计哲学,RISC-V基础指令集只有40多条,加上其他的模块化扩展指令总共几十条指令。
RISC-V的规范文档仅有145页,而“特权架构文档”的篇幅也仅为91页。

1.RISC体系的指令特征

相比传言要上千万美元的ARM指令集架构的许可证,RISC-V以其完全开源、短小精悍的模块化设计、没有过时定义的束缚、没有严重的指令冗余、没有专利问题等优势开始吸引全球初创公司和研究机构的目光。

精简指令集:

国内创企方兴未艾,国外创企产品已出

包含了简单、基本的指令,透过这些简单、基本的指令,就可以组合成复杂指令。

在科技巨头还在放话要支持RISC-V架构之时,国内外多家创企已经积极行动起来。

 

今年10月29日,2008年创立于上海的企业乐鑫收到一个好消息。乐鑫“基于RISC-V指令集架构的ESP32-Marlin物联网芯片”项目入选上海经信委对软件和集成电路产业发展专项资金拟支持项目名单。

同样长度的指令:

图片 6

每条指令的长度都是相同的,可以在一个单独操作里完成。

芯来科技比乐鑫的成立晚了10年,却是国内第一家专注于IoT和边缘计算领域的RISC-V处理器内核IP公司,该公司推出了用于IoT应用的N200系列超低功耗RISC-V核心IP,据称和国外公司处于同一起跑线。

 

芯来科技的COO徐来告诉智东西,RISC-V和ARM间存在客观差距,所以该公司选择了ARM立足不问的IoT等领域。传统的IoT领域比较封闭,不像传统的手机处理器应用那么依赖生态,从这个点开始逐步完善IoT领域是个不错的策略。

单机器周期指令:

其创始人胡振波是第一本RISC-V中文书《手把手教你设计CPU——RISC-V处理器篇》的作者,开发了中国第一款开放来源的RISC-V核心蜂鸟E203(Hummingbird
E203)。

大多数的指令都可以在一个机器周期里完成,并且允许处理器在同一时间内执行一系列的指令。

在蜂鸟E203面世时,胡振波目睹了国外很多专业RISC-V内核IP公司陆续出现并飞速发展,其中SiFive公司能运行Linux的四核RISC-V内核已在中国大陆市场推广,而国内CPU业界迟迟未见行动,“着急”的胡振波毅然决然的成立了芯来科技。

 

而把芯来科技“逼”出来的关键要素之一SiFive即是美国一家从RISC-V项目团队孵化出的基于RISC-V的定制半导体供应商,它通过开放式架构处理器核心及自主式开发基于RISC-V架构芯片来帮助SoC设计。

2.RISC体系的优缺点

该公司在今年5月就完成了5060万美元的C轮融资,华米科技也参与了该轮融资。今年6月,SiFive宣布推出其为嵌入式设备使用设计的可配置的小面积、低功耗微控制器(MCU)核心E2
Core IP系列。

 

除了SiFive之外,美国还有两家RISC-V创企的创始人都师从RISC-V的开创者David
Patterson,他们分别是OURS的创始人谭章熹博士和Esperanto的创始人Dave
Ditzel。

优点:在使用相同的晶片技术和相同运行时钟下,RISC系统的运行速度将是CISC的2~4倍。由于RISC处理器的指令集是精简的,它的记忆体管理单元、浮点单元等都能设计在同一块晶片上。RISC处理器比相对应的CISC处理器设计更简单,所需要的时间将变得更短,并可以比CISC处理器应用更多先进的技术,开发更快的下一代处理器。

OURS公司在深圳设立的中资公司睿思芯科,仅用7个月就设计出了一款基于64位RISC-V指令集的AI芯片Pygmy,采用台积电28nm制程工艺,具有12个高度可编程AI加速引擎,主要针对神经网络以及CNN算法进行了优化,能够支持AI图像和语音的应用,能耗和面积明显优于同级别Arm架构芯片。

 

根据睿思芯科的说法,Pygmy对比同级别的Arm芯片,能耗下降85%,面积减少80%,相当于用一般的32位处理器的面积和功耗就实现了64位处理器的性能。这款AI芯片一次性流片成功,并在11月初世界互联网大会上David
Patterson的演讲中首次亮相。

缺点:多指令的操作使得程式开发者必须小心地选用合适的编译器,而且编写的代码量会变得非常大。另外就是RISC体系的处理器需要更快记忆体,这通常都集成于处理器内部,就是L1
Cache(一级缓存)。

另外,提供Pygmy芯片的同时睿思芯科还开发了编译器、SDK、工具链,基于GCC、LLVM等开源实现,可以支撑Pygmy用户更好的进行二次开发。

 

图片 7

综合上面所述,若要再进一步比较CISC与RISC之差异,可以由以下几点来进行分析:

Esperanto Technologies的总裁兼CEO Dave
Ditzel从事芯片工作有40年了。他在大学期间就参与了RISC-V指令集的开发,曾在英特尔工作6年,并曾领导微软一个重要的项目团队。

 

2014年,Dave Ditzel成立Esperanto
Technologies公司,旨在要打造能够以超低功耗运行AI软件的芯片,并希望最终打造出基于RISC-V等开源标准的最强计算性能的机器学习计算系统。

1、指令的形成

目前,该公司正在设计一款单芯片上的超级计算机,采用台积电7nm制程技术,能在每个芯片上放置具有完整64位RISC-V处理器的一千个ET-Minion处理器内核。Dave
Ditzel向智东西透露,明年Esperanto将有新产品投入市场。

CISC

图片 8

因指令复杂,故采微指令码控制单元的设计,而RISC的指令90%是由硬体直接完成,只有10%的指令是由软体以组合的方式完成,因此指令执行时间上RISC较短,但RISC所须ROM空间相对的比较大,至于RAM使用大小应该与程序的应用比较有关系。

虽然同样是做基于RISC-V架构的处理器,法国创企Greenwaves
Technologies主要面向的是来自IoT等终端市场的边缘计算需求。

 

GreenWaves在今年3月推出了全球第一款RISC-V架构的超低功耗边缘计算处理器GAP8,采用台积电55nm
55LP制造工艺,旨在边缘端依赖电池做长期的复杂运算,可应用于噪音过滤、检测摄像头、纳米无人机等边缘设备,从而进一步扩展物联网市场。

2、定址模式

该公司CEO Loic
Lietar告诉智东西,GAP8的架构使它不仅拥有比竞争对少高20倍的计算能力,而且在成本系统解决方案所需的电力方面,较竞争对手低2到3倍。

CISC

图片 9

的需要较多的定址模式,而RISC只有少数的定址模式,因此CPU在计算记忆体有效位址时,CISC占用的汇流排周期较多。

他还介绍,GAP8计划在明年量产,而能效比GAP8提升6倍、浮点计算能力比GAP8提升2倍的GAP9将在明年12月份会进行出台,在2020年的一季度进行量产。

 

除了欧美国家之外,我们的邻国印度也推出了自研的基于RISC-V架构的芯片。

3、指令的执行

印度理工大学马德拉斯(IIT-M)研究团队推出了印度第一个自主微处理器Shakti。该项目始于2011年,该芯片的设计基于RISC-V指令集架构,使用180nm工艺,由印度空间研究组织(ISRO)的半导体实验室在昌迪加尔制造,可用于洗衣机、智能相机等智能设备中。
7月,英特尔位于美国俄勒冈州的工厂生产了300个Shakti的早期版本芯片“RISECREEK”。

CISC

图片 10

指令的格式长短不一,执行时的周期次数也不统一,而RISC结构刚好相反,故适合采用管线处理架构的设计,进而可以达到平均一周期完成一指令的方向努力。显然的,在设计上RISC较CISC简单,同时因为CISC的执行步骤过多,闲置的单元电路等待时间增长,不利于平行处理的设计,所以就效能而言RISC较CISC还是站了上风,但RISC因指令精简化后造成应用程式码变大,需要较大的程式记忆体空间,且存在指令种类较多等等的缺点。

从Shakti处理器研究团队独立出来的印度创企InCore
Semiconductors针对从超低功耗IoT到台式计算机的边缘系统应用,正在打造基于RISC-V的处理器内核,以及深度学习加速器和SoC设计工具,并预计将在今年年底之前推出其首款核心。

 

RISC-V如何在IoT领域比传统CPU+AI引擎做的更好?

(三)X86指令集和ARM指令集:

今年6月底,ARM曾开设了一个“质疑”RISC-V架构的网站riscv-basics.com,从成本、生态系统、碎片化风险、安全性和设计保证上对
RISC-V
进行攻击。这一举动被许多人解读为ARM已经感受到来自RISC-V的威胁。在遭到了RISC-V建网站反怼并引起众多厂商和软件社区的不满后,ARM在7月10日关掉该网站。

 

图片 11

(1) X86指令集:

然而众所周知,ARM在移动终端的地位稳如泰山、坚若磐石,“后来者居上”的可能性极低。那么为什么RISC-V这几年发展速度远超过其他处理器?它又为什么会被称为是IoT领域最适合的处理器架构呢?

X86指令集是Intel为其第一块16位CPU(i8086)专门开发的,后来的电脑中为提高浮点数据处理能力而增加的X87芯片系列数学协处理器另外使用X87指令,以后就将X86指令集和X87指令集统称为X86指令集。虽然随着CPU技术的不断发展,Intel陆续研制出更新型的i80386、i80486,但为了保证电脑能继续运行以往开发的各类应用程序以保护和继承丰富的软件资源,所以Intel公司所生产的所有CPU仍然继续使用X86指令集,所以它的CPU仍属于X86系列。由于Intel
X86系列及其兼容CPU都使用X86指令集,所以就形成了今天庞大的X86系列及兼容CPU阵容。

总的来说,RISC-V指令集架构具有低功耗、低成本、开源开放、可模块化、简洁、面积小、速度快等优点,与IoT场景需求碎片化的、可定制化的特性十分契合。

 

1、低功耗

除了具备上述CISC的诸多特性外,X86指令集有以下几个突出的缺点:

通常每个AI芯片在CPU上的耗能非常高,会致使整个续航能力下降。而RISC-V适合用于高效设计实现,开发者可根据应用需求灵活剪裁,再加上其全部RISC-V指令不超过50个,因此其内核面积更小,相应的功耗越低,能以极低的能耗来实现高效的AI元器件的运行。

华米创始人兼CEO黄汪告诉智东西,手机芯片需要不断使用最新的制程,而IoT芯片使用55nm/40nm非常成熟的半导体工艺就可以制作,55nm流片的工艺成熟度使得代工厂商的可选性很多,大陆、台湾、新加坡的均可,这就降低了依赖性。

 

2、低成本

l         通用寄存器组————对CPU内核结构的影响

RISC-V允许任何人免费设计、制造和销售RISC-V芯片和软件,无需像ARM那样购买昂贵的架构许可证。

据黄汪介绍,市面上不具备AI而只具备同样主频的芯片成本一般在2美金左右,而具备AI功能的芯片成本少于1美金,RISC-V在成本和功能上都大大跃进了一步。不同于手机芯片动则需要投入几亿美金,做颗芯片流片量产几千万人民币,不会太费钱。

GreenWaves创始人兼CEOLoic
Lietar也提到,其GAP8产品在成本系统解决方案所需要的电力方面,比它的同等其他的替代竞争对手要低2到3倍。

做处理器不仅要考虑硬件设计,还要考虑用它来进行编程的用户,所以也包含了工具链和相关生态建设。芯来科技COO徐来还提供了另一个角度,如果由一家公司承担这些建设,时间和资金投入的成本都会非常高,比如英特尔就花了几十年来做生态建设,而由于RISC-V是一个标准化指令集架构,很多不同公司和个人会参与到生态建设,均摊了研发成本。

 

3、灵活可扩展

X86指令集只有8个通用寄存器。所以,CISC的CPU执行是大多数时间是在访问存储器中的数据,而不是寄存器中的。这就拖慢了整个系统的速度。

RISC-V是一个模块化的架构,其不同部分能以模块化的方式串在一起,从而试图通过一套统一的架构满足各种不同的应用。

由于IoT场景非常广泛和碎片化,需要为数千种以多种不同方式连接世界的应用案例来设计芯片,因此可扩展的架构成为终端运算的关键。

和不同系列相互不兼容的ARM相比,RISC-V具有能够灵活地扩展指令集的优势,可以新增专用指令,也可以扩充边缘运算装置所需的运算资源,不仅能实现超低功耗的复杂AI计算,而且有助于推动架构创新以达到更高的能效。a

另外,x86、ARM、MIPS等架构的知识产权都属于某个特定的外国公司,无法在指令集架构上按自己的想法做修改和扩展,而且在工具链做的修改是没有人维护的。

特别是在IoT领域,徐来认为,比如在智能传感器等设备,只需要有限指令集,芯片面积又要求尽可能小,在这种情况下需要对现有处理器进行剪裁。相对于不能修改的x86、ARM等传统指令集架构,RISC-V因其开放性可以做一些剪裁。

而且IoT设备会长时间重复运行几个应用,不会像PC或手机那样需要安装和卸载不同应用,因此不存在对软件兼容性的依赖问题。

因其可扩展性,RISC-V的应用范围非常广阔。Loic
Lietar表示,RISC-V指令集设计的目标是能够满足从微控制器到超级计算机各种尺寸处理器的需求,不过目前看到的更多的是RISC-V
IoT终端处理器。

 

4、安全可靠

RISC系统往往具有非常多的通用寄存器,并采用了重叠寄存器窗口和寄存器堆等技术使寄存器资源得到充分的利用。

采用ARM等封闭式架构内核的平台,开发者看不到源代码,所以无法了解门级电路设计细节。一旦出现问题,开发者将不得不给原架构提供商打电话派人来解决问题。

 

不过RISC-V可以解决这一问题。RISC-V的用户可以查看内核的所有细节,可以全面检查每一行代码以确定系统的安全,甚至根据需要定制化自己的安全模块。相对于ARM,对产品安全要求高的人可能会更能接受RISC-V。

l         解码————对CPU的外核的影响

结语:RISC-V有望加强中国处理器IP的话语权

 

尽管从市场的实际情况来看,RISC-V取代ARM在移动终端等核心业务中的地位基本无望。但业界普遍认为,在IoT等新兴的边缘领域,RISC-V与ARM处于同一起跑线,两者将形成正面竞争,RISC-V在成本等方面具有优势,Arm在生态等方面具有优势。因此,RISC-V是很有希望促使中国加强处理器IP的话语权,推动产品创新和差异化,建立自主可控的产业生态。

解码器(Decode
Unit),这是x86CPU才有的东西。其作用是把长度不定的x86指令转换为长度固定的类似于RISC的指令,并交给RISC内核。解码分为硬件解码和微解码,对于简单的x86指令只要硬件解码即可,速度较快,而遇到复杂的x86指令则需要进行微解码,并把它分成若干条简单指令,速度较慢且很复杂。Athlon也好,PIII也好,老式的CISC的X86指令集严重制约了他们的性能表现。

如今国内的RISC-V生态建设正在快速推动中,从5月,上海发布国内首个明确表示支持RISC-V的政策,到9月,中国RISC-V产业联盟在上海成立,再到11月,中国开放指令生态(RISC-V)联盟在乌镇宣布成立。

 

产业联盟的多家企业表示,RISC-V的开源将大大降低指令集修改的门槛,有利于中国发展自主可控的处理器,摆脱国外的制约。

l         寻址范围小——约束了用户需要

不过,技术的先进性不代表商业就能成功,生态问题始终是制约一个架构发展的最大瓶颈。ARM之所以能制霸移动终端,除了它在技术上的优势外,抓住时机、迅速建立起生态亦是关键。但生态建设并非一蹴而就,隐藏在生态问题背后的政策、资金、人才等多方面的压力都在制约着RISC-V在国内的发展。

即使AMD研发出X86-64架构时,虽然也解决了传统X86固有的一些缺点,比如寻址范围的扩大,但这种改善并不能直接带来性能上的提升。

要实现国产RISC-V自主可控发展,不仅要迅速行动抓住时机,还应以市场为导向,找准适合的市场定位和客户群。在真正对ARM造成威胁之前,RISC-V距离成为主流架构还有很长的路要走。

 

PC时代成就了英特尔x86,移动时代成就了ARM,而在科技巨头以及一大批创企对RISC-V的发展和生态建设的推动之下,或许RISC-V能够成为AI和IoT时代足以与ARM匹敌的新一代主流架构。

 

图片 12

(2) ARM指令集:

 

相比而言,以RISC为架构体系的ARM指令集的指令格式统一,种类比较少,寻址方式也比复杂指令集少。当然处理速度就提高很多。ARM处理器都是所谓的精简指令集处理机(RISC)。

其所有指令都是利用一些简单的指令组成的,简单的指令意味着相应硬件线路可以尽量做到最佳化,而提高执行速率,相对的使得一个指令所需的时间减到最短。

 

而因为指令集的精简,所以许多工作都必须组合简单的指令,而针对较复杂组合的工作便需要由『编译程式』(compiler)来执行,而 CISC 体系的X86指令集因为硬体所提供的指令集较多,所以许多工作都能够以一个或是数个指令来代替,compiler 的工作因而减少许多。

 

除了具备上述RISC的诸多特性之外,可以总结ARM指令集架构的其它一些特点如下:

 

l         ARM的特点

 

1.  体积小,低功耗,低成本,高性能

2.  支持 Thumb ( 16 位) /ARM ( 32 位)双指令集,能很好的兼容 8 位 /16 位器件;

3.  大量使用寄存器,指令执行速度更快;

4.  大多数数据操作都在寄存器中完成;

5.  寻址方式灵活简单,执行效率高;

6.  指令长度固定;

7.  流水线处理方式

8.  Load_store结构

 

l         ARM的一些非RISC思想的指令架构:

 

1.  允许一些特定指令的执行周期数字可变,以降低功耗,减小面积和代码尺寸。

2.  增加了桶形移位器来扩展某些指令的功能。

3.  使用了16位的Thumb指令集来提高代码密度。

4.  使用条件执行指令来提高代码密度和性能。

5.  使用增强指令来实现数据信号处理的功能。

 

(四)小结:

 

因此,大量的复杂指令、可变的指令长度、多种的寻址方式这些CISC的特点,也是CISC的缺点,因为这些都大大增加了解码的难度,而在现在的高速硬件发展下,复杂指令所带来的速度提升早已不及在解码上浪费点的时间。除了个人PC市场还在用X86指令集外,服务器以及更大的系统都早已不用CISC了。x86仍然存在的理由就是为了兼容大量的x86平台上的软件,同时,它的体系结构组成的实现不太困难。

 

而RISC体系的ARM指令最大特点是指令长度固定,指令格式种类少,寻址方式种类少,大多数是简单指令且都能在一个时钟周期内完成,易于设计超标量与流水线,寄存器数量多,大量操作在寄存器之间进行。优点是不言而喻的,因此,ARM处理器才成为是当前最流行的处理器系列,是几种主流的嵌入式处理体系结构之一。

RISC目前正如日中天,Intel似乎也将最终抛弃x86而转向RISC结构。

 

而实际上,随着RISC处理器在嵌入式领域中大放异彩,传统的X86系列CISC处理器在Intel公司的积极改进下也克服了功耗过高的问题,成为一些高性能嵌入式设备的最佳选择,发展到今天,CISC与RISC之间的界限已经不再是那么泾渭分明,RISC自身的设计正在变得越来越复杂(当然并不是完全依着CISC的思路变复杂),因为所有实际使用的CPU都需要不断提高性能,所以在体系结构中加入新特点就在所难免。另一方面,原来被认为是CISC体系结构的处理器也吸收了许多RISC的优点,比如Pentium处理器在内部的实现中也是采用的RISC的架构,复杂的指令在内部由微码分解为多条精简指令来运行,但是对于处理器外部来说,为了保持兼容性还是以CISC风格的指令集展示出来。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图