Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >为什么要有 RISC-V

为什么要有 RISC-V

作者头像
刘盼
发布于 2023-12-26 07:02:27
发布于 2023-12-26 07:02:27
2480
举报
文章被收录于专栏:人人都是极客人人都是极客

• 它要适合设计各种规模的处理器,包括从最小的嵌入式控制器到最快的高性能计算机。

• 它要兼容各种流行的软件栈和编程语言。

• 它要适用于所有实现技术,包括 FPGA(Field-Programmable Gate Array,现场可编程逻辑门阵列)、ASIC(Application-Specific Integrated Circuit,专用集成电路)、全定制芯片,甚至未来的制造元件技术。

• 它能用于高效实现所有微体系结构,包括微程序或硬连线控制,顺序、解耦或乱序流水线,单发射或超标量等。

• 它要支持高度定制化,成为定制加速器的基础,以应对摩尔定律的放缓。

• 它要稳定,基础 ISA 不会改变。更重要的是,它不能像以往的公司专有 ISA 那样消亡,包括 AMD 的 Am29000、Digital 的 Alpha 和 VAX、Hewlett Packard1 的 PARISC、Intel 的 i860 和 i960、Motorola 的 88000,以及Zilog 的 Z8000。

RISC-V 是一款与众不同的 ISA,不仅因为它年轻(它诞生于 2010 年,而其他 ISA 大多诞生于 20 世纪 70 年代或 80年代),而且因为它开放。与过去几乎所有的架构不同,其未来不受任何一家公司的兴衰或心血来潮的决策所影响(过去许多 ISA 因此消亡)。相反,RISC-V 属于一个开放的、非营利性质的基金会。RISC-V 国际基金会的目标是维护 RISC-V 的稳定性,仅出于技术原因而缓慢谨慎地改进 RISC-V,并推动RISC-V 在硬件中流行起来,犹如 Linux 在操作系统中流行一般。图 1.1 列出了 RISC-V 国际基金会最大的企业会员,展示了 RISC-V 的繁荣。

模块化ISA和增量型ISA

Intel 曾将其未来押在高端微处理器上,但这还需要很多年时间。为与 Zilog 公司抗衡,Intel 开发了一款名为8086 的过渡产品。它本该朝生暮死,无任何后续产品,但事实并非如此。高端处理器姗姗来迟,等它最终面世时,性能却不如人意。因此,8086 架构得以延续——它演化为 32 位处理器,最终又演化为 64 位。其名称不断更替(80186、80286、i386、i486、Pentium),但底层指令集丝毫未减。 ——Stephen P. Morse,8086 架构师 (Morse, 2017)

计算机体系结构的传统发展方式是增量型 ISA,这意味着新处理器不仅需要实现新的 ISA 扩展,还必须实现过去的所有扩展。其目的是保持向过去的二进制兼容性,使数十年前的二进制程序仍可在最新处理器上正确运行。出于市场营销的目的,新一代处理器的发布通常伴随着新指令的发布。这两点需求共同导致 ISA 的指令数量随时间流逝而大幅增长。图 1.2 展示了当今主流 ISA x86 的指令数量增长过程。x86 的历史可追溯到 1978 年,在漫长的生命周期中,它每个月大约增加 3 条指令。

x86 在 1978 年诞生时有 80 条指令,2015 年增长到 1 338 条,翻了 16 倍,并且仍在增长。但图中数据仍偏保守。一篇 2015 年的 Intel 博客指出,统计结果为 3600条指令 (Rodgers et al. 2017)。按这个数据,在 1978 年到 2015 年期间,x86 指令平均每 4 天增长 1 条。我们统计的是汇编语言指令,他们统计的也许是机器语言指令。增长的主要原因是 x86 ISA 通过 SIMD 指令实现数据级并行。

这种约定意味着 x86-32(我们用它表示 32 位地址版本的x86)的每款处理器都必须实现过去扩展的错误设计,即便它们已无意义。例如,图 1.3 列出了 x86 的 aaa(ASCII Adjustafter Addition)指令,该指令早已失去用处。

它以二进制编码十进制数(Binary Coded Decimal,BCD)的形式进行算术运算,但它已化为信息技术的历史尘埃。x86 还有 3 条类似的指令,分别用于减法(aas)、乘法(aam)和除法(aad)。它们都是单字节指令,因此一共占用宝贵操作码空间的 1.6%(4/256)。

打个比方,假设一家餐馆只提供价格固定的套餐,最开始只有汉堡加奶昔的小餐。随着时间的推移,套餐中加入了薯条,然后是冰淇淋圣代,还有沙拉、馅饼、葡萄酒、素食意大利面、牛排、啤酒,无穷无尽,最后变成饕餮盛宴。食客能在这家餐馆找到他们过去吃过的任何一种食物(尽管这样没什么意义)。然而,这对食客来说是一个坏消息,他们每次的餐费将随盛宴加量而不断上涨。

除年轻和开放之外,RISC-V 还是模块化的,这与过去几乎所有 ISA 都不同。其核心是一个名为 RV32I 的基础 ISA,可运行完整的软件栈。RV32I 已冻结,永不改变,这为编译器开发者、操作系统开发者和汇编语言程序员提供了稳定的指令目标。模块化特性源于可选的标准扩展,硬件可根据应用程序的需求决定是否包含它们。利用这种模块化特性能设计出面积小、能耗低的 RISC-V 处理器,这对于嵌入式应用至关重要。RISC-V 编译器得知当前硬件包含哪些扩展后,便可为该硬件生成最优代码。一般约定将扩展对应的字母加到指令集名称之后,以指示包含哪些扩展。例如,RV32IMFD 在必选基础指令集(RV32I)上添加了乘法(RV32M)、单精度浮点(RV32F)和双精度浮点(RV32D)扩展。如果软件使用了一条未实现的可选 RISC-V 扩展指令,硬件将发生自陷,并在软件层执行该指令的功能。此特性属于标准库的一部分。

继续用我们刚才的比方,RISC-V 提供的是一份菜单,而不是一顿应有尽有的自助餐。主厨只需烹饪食客需要的食物,而不是每次都烹饪一顿大餐,食客也只需为他们点单的食物付费。RISC-V 无须仅为市场营销的热闹而添加新指令。RISC-V国际基金会决定何时往菜单中添加新的选择,经过由软硬件专家组成的委员会公开讨论后,他们才会出于必要的技术原因添加指令。即使这些新的选择出现在菜单上,它们仍是可选的,不像增量型 ISA 那样成为未来所有实现的必要组成部分

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-12-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 人人都是极客 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
四大主流芯片架构(X86、ARM、RISC-V和MIPS)
X86是微处理器执行的计算机语言指令集,指一个Intel通用计算机系列的标准编号缩写,也标识一套通用的计算机指令集合。1978年6月8日,Intel 发布了新款16位微处理器 8086,也同时开创了一个新时代:X86架构诞生了。 X86指令集是美国Intel公司为其第一块16位CPU(i8086)专门开发的,美国IBM公司1981年推出的世界第一台PC机中的CPU–i8088(i8086简化版)使用的也是X86指令。
全栈程序员站长
2022/09/01
10.6K0
优秀的 Verilog/FPGA开源项目介绍(二)-RISC-V
RISC-V(跟我读:“risk----------------five”)是一个基于精简指令集(RISC)原则的开源指令集架构(ISA)。
碎碎思
2021/10/18
4K0
优秀的 Verilog/FPGA开源项目介绍(二)-RISC-V
《手把手教你设计CPU——RISC-V处理器》读书笔记
首先感谢面包板社区提供这本《手把手教你设计CPU——RISC-V处理器篇》书籍的试读机会。这本书和另外一本《 RISC-V架构与嵌入式开发 》是国内最先出版的两本关于RISC-V处理器的书籍,作者是胡振波先生,这里还要感谢胡老师。胡振波先生是国内最早开始研究RISC-V架构的,有超过8年的CPU以及超过10年的ASIC设计与验证经验,历任Marvell CPU高级设计工程师,Synopsys ARC系列处理器内核研发经理等职务,有着近20年的行业积累。
单片机点灯小能手
2020/07/16
2.7K0
优秀的 Verilog/FPGA开源项目介绍(三十六)-RISC-V(新增一)
RISC-V(跟我读:“risk----------------five”)是一个基于精简指令集(RISC)原则的开源指令集架构(ISA)。
碎碎思
2023/02/14
6.9K0
优秀的 Verilog/FPGA开源项目介绍(三十六)-RISC-V(新增一)
RISC-V 简介(1)RISC-V的由来
指令集架构(Instruction Set Architecture, ISA),是一种抽象模型,包括指令集,寄存器,内存处理,寻址模式,中断和异常处理,以及外部的I/0接口。指令集包括一系列的操作码(opcode),或机器码(machine code),以及特定处理器执行的基本命令。ISA以不依赖于其实现特性方式,指定了在其实现上运行机器码的行为。中央处理器(central processing unit, CPU)可以看作是ISA的实现。
IC知识库
2021/07/28
1.3K0
RISC-V 简介(1)RISC-V的由来
RISC-V 简介(2)RISC-V指令集的特点及分类
上一篇RISC-V 简介(1)RISC-V的由来对RISC-V发展的背景进行了描述,通过与CISC架构的比较,以及与其他RISC架构的比较,将RISC-V的重要性和优势简单列了出来。本文将简单介绍RISC-V的指令集特点及分类。
IC知识库
2021/07/29
2K0
RISC-V 简介(2)RISC-V指令集的特点及分类
NXP恩智浦VEGA织女星开发板免费申请!
大概两周前申请了一块NXP恩智浦的开发板,今天终于收到了!在这里推荐给大家,官方网站刚上线一个月左右,目前申请的人还不算多,感兴趣的朋友可以申请一个,体验一下这个四核性能怪兽。大厂就是大气,包装盒,开发板,Micro USB数据线,跳线帽一应俱全,全国包邮!
单片机点灯小能手
2020/07/17
1K0
NXP恩智浦VEGA织女星开发板免费申请!
芯来科技彭剑英:打造全栈CPU IP,助力RISC-V「中国芯」生态成长
当下的芯片行业,英特尔的x86架构与ARM的Arm架构各立山头。前者早已在通用处理器市场称霸多年,后者随着移动互联网大潮崛起,成为当下移动端最主流的处理器架构。
镁客网
2023/01/04
7210
芯来科技彭剑英:打造全栈CPU IP,助力RISC-V「中国芯」生态成长
Linux 基金会与 RISC-V 基金会合作推广开源芯片
Linux是全球最重要的开源软件,RISC-V则是近年来兴起的一个开源CPU指令集,现在这两个阵营宣布达成合作——Linux基金会与RISC-V基金会将共同合作加速推广RISC-V ISA的开发及采用,Linux基金会还将为RISC-V生态系统提供大量资源,包括培训计划、基础工具以及社区扩展、营销和法律专业知识。
Debian中国
2018/12/21
5820
时代变了?英特尔加入RSIC-V组织:入董事会,直升高级会员,投10亿美元支持代工扩张
2 月 7 日,全球开放硬件标准组织 RISC-V International 宣布了英特尔正式加入的消息,后者成为了 Premier 级别会员。与此同时,英特尔代工服务客户解决方案工程副总裁 Bob Brennan 将加入 RISC-V 董事会和技术指导委员会。
机器之心
2022/02/23
2700
时代变了?英特尔加入RSIC-V组织:入董事会,直升高级会员,投10亿美元支持代工扩张
RISC-V架构系列之1:指令集和特权模式
从2010年开始的RISC-V 项目,已经有10年的时间,RISC-V基金会先后批准了RISC-V Base ISA, Privileged Architecture,Processor Trace等规范。RISC-V对Linux的基本支持也已经完成。本文尝试通俗易懂的介绍RISC-V对于Linux的基本支持,包括指令集和异常处理。内存管理,迁移到RISC-V,UEFI,KVM等支持,欢迎继续关注本公众号。
Linux阅码场
2021/02/24
2.8K0
RISC-V架构系列之1:指令集和特权模式
开源的胜利!RISC-V与AI今日全面「会师」
DeepSeek 的爆火震撼 AI 行业后,也带动相关行业余震不断。其中,达摩院玄铁在春节期间宣布适配 DeepSeek-R1 系列蒸馏模型,引发半导体行业高度关注,新兴的开源指令集 RISC-V 在 AI 方向展现出强劲的动力。
机器之心
2025/02/28
920
开源的胜利!RISC-V与AI今日全面「会师」
科技巨头欲转向开源架构 RISC-V,因 ARM 授权费用太贵
不久前,特斯拉加入 RISC-V 基金会,并考虑在新款芯片中使用免费的 RISC-V 设计。至此,已有 IBM、NXP、西部数据、英伟达、高通、三星、谷歌、华为等 100 多家科技公司加入 RISC-V 阵营。
顶级程序员
2018/07/23
7810
英特尔加注RISC-V:砸10亿投资,还加入其国际基金会
丰色 发自 凹非寺 量子位 | 公众号 QbitAI 英特尔大力扶植RISC-V——以Premier(高级会员)的身份,加入了RISC-V International基金会。 与此同时,它还设立了10亿美元 (约合人民币64亿)的IFS基金,用于扶持初创和成熟企业进行代工生态的创新,其中很大一部分用于RISC-V。 IFS指英特尔代工服务(Intel Foundry Services),唯一支持x86、Arm和RISC-V三大ISA架构。 RISC-V International则成立于2015年,负责R
量子位
2022/03/04
2390
进军服务器市场,RISC-V能否与X86一战?
众所周知,目前X86架构处理器统治着PC和服务器市场,而Arm架构处理器则统治着移动市场,并在IoT市场占据着较大的市场份额。但是,近年来RISC-V架构则凭借着开源、指令精简、可扩展等优势,在注重能效比的物联网领域大受追捧。但是,在RISC-V International及相关芯片厂商的推动下,RISC-V也开始进入更高性能需求的服务器市场。
芯智讯
2023/09/20
5950
进军服务器市场,RISC-V能否与X86一战?
里程碑:RISC-V 基金会批准基础指令集架构与特权架构规范
近日,RISC-V 基金会宣布批准 RISC-V 基础指令集架构 与 特权架构 规范,为 RISC-V 的可扩展性进一步奠定了基础。
Debian中国
2020/01/21
9070
Arm和AMD“熄火”后,高通大力投入的RISC-V 能否给华为托底?
对于想要破局的国内科技公司来说,积极发挥对这一架构的影响,依托市场走势去做深入改进以使其找到自己独有的应用方向,或是更加需要考虑的事。
镁客网
2019/06/20
8360
Arm和AMD“熄火”后,高通大力投入的RISC-V 能否给华为托底?
arm架构和riscv架构_开源芯片架构
第一个区别就是所谓的“复杂指令集”与“精简指令集”系统,也就是经常看到的“CISC”与“RISC”。 Intel和ARM处理器,前者使用复杂指令集(CISC),而后者使用精简指令集(RISC)。属于这两种类中的各种架构之间最大的区别,在于它们的设计者考虑问题方式的不同。
全栈程序员站长
2022/10/04
1.6K0
arm架构和riscv架构_开源芯片架构
RISC-V 学习笔记:由来、基础整数指令集、汇编语言、特权架构
github地址:https://github.com/yunwei37/os-summer-of-code-daily
云微
2023/02/11
1.1K0
RISC-V 函数调用约定和Stack使用
不同的处理器指令集不一样,而汇编语言中都是一条条指令,所以不同处理器对应的汇编语言必然不一样。
大忽悠爱学习
2023/10/11
1.2K0
RISC-V 函数调用约定和Stack使用
推荐阅读
相关推荐
四大主流芯片架构(X86、ARM、RISC-V和MIPS)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档