RISC-V指令集架构优势

RISC-V架构以其开源、模块化和高效能脱颖而出。基础ISA RV32I提供稳定性,硬件可选择性扩展以适应不同应用需求,适合嵌入式系统。RISC-V在成本、简洁性和性能上优于其他架构,如ARM-32。模块化设计允许未来性能提升空间,且程序大小和编程友好性也是其优势之一。
摘要由CSDN通过智能技术生成

RISC-V的不同寻常之处,除了在于它是最近诞生和开源的以外,还在于和几乎所有以往的ISA不同,他是模块化的。他的核心是一个名为RV32I的基础ISA,运行一个完整的软件栈。RV32I是固定的,永远不会改变。这为编译器编写者,操作系统开发人员和汇编语言程序员提供了稳定的目标。模块化来源于可选的标准扩展,根据应用程序的需要,硬件可以包括或不包含这些扩展。这种模块特性使得RISC-V具有了袖珍化,低能耗的特点,而这对于嵌入式应用可能至关重要。

ISA设计

ISA的七种衡量标准

成本

处理器通过集成电路实现,通常称为芯片和晶粒。(晶粒是由单个圆形晶片被切割成许多单独的片得到)

使用相同大小缓存(16KB)的RISC-V Rocket处理器和采用相同技术(TSMC40GPLUS)的ARM-32 Cortex A5处理器进行比较。RISC-V晶粒的大小0.27mm²,而ARM-32晶粒的大小是0.53mm²。由于面积大一倍,ARM-32 Cortex A5的晶粒成本是RISC-V Rocket的约4(2²)倍。

注:cost≈f(die area²)

简洁性

ISA的简洁性不仅可以缩小芯片的面积,还能缩短芯片的设计和验证时间,而它们可能构成了芯片开发的大部分成本。

性能

性能可以分解为如下三个因素;

\frac{instructions}{program} \times \frac{averageclockcycles}{instruction} \times \frac{time}{clockcycle} = \frac{time}{program}

即使一个简单的ISA可能在每个程序执行的指令数方面多于复杂的ISA,但他可以通过更快的时钟频率或更低的平均单条指令周期数(CPI)来弥补。

架构和具体实现的分离

机器语言程序员了解架构后能写出正确的程序,但是却不一定能保证性能。为了在性能和成本上的对某一特定时间的某种实现进行优化,而在ISA中包含某些指令。

提升空间

随着摩尔定律的终结,对性价比进行重大改进的唯一途径是为特定领域(例如深度学习,增强显示,组合优化,图形等)添加自定义指令。这意味如今的ISA必须保留操作码以供未来的提升。

程序大小

程序越小,存储它所需要的芯片面积就越小。

当所有指令都是32位长是,ARM-32和RISC-V代码比x86-32长6%到9%。而x86-32代码比同时提供16位和32位指令的压缩版本(thumb-2和RV32C)大26%。

易于编程/编译/链接

由于寄存器中的数据访问起来要比存储器中快得多,编译器在寄存器分配方面一定要做的很好。鉴于这一点,ARM-32有16个寄存器,而x86-32只有8个。大多数现代ISA(包括risc-v)都有32个整形寄存器。有了更多寄存器,编译器和汇编程序员的工作会更加轻松。

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值