0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

RISC-V是通用RISC处理器还是可定制的处理器?

我快闭嘴 来源:半导体行业观察 作者:半导体行业观察 2020-11-17 16:11 次阅读

随着这些年的发展,RISC-V的受重视程度与与日俱增。这主要因为它是免费的、灵活的,并且速度很快。这使RISC-V成为许多开发人员的安全便捷选择。但是您会认为RISC-V是通用RISC处理器还是定制的随心所欲处理器?

但答案是两者都是!然而这是一个悖论。

起初,RISC-V是一种温和的RISC方案,但是随着其发展,RISC-V演变成超级处理器!换而言之,它可以像您希望的那样平淡无奇或令人兴奋,这是其他CPU供应商也试图实现的一种技巧。

可定制的处理器似乎是世界上最愚蠢的想法。

一方面,处理器生态系统在兼容性方面蓬勃发展。如果每个CPU都不相同,则不能开发编译器、调试器、操作系统、应用程序和中间件,甚至不能生产高效的程序员。没有兼容性,我们最好通过焊接导线和换掉硬件来创建程序。CPU的指令集——固定的指令集其实就是软件的组成部分。这种兼容性推动了更多软件的成长,更多的工具推出和更多CPU销售的良性循环。

但从另一个角度看,通用CPU很无聊。负载会随着时间而变化,并非每个程序员都需要相同的功能集。我们很多人不需要浮点运算。有些需要位操作指令。其他人则需要Linux支持或矢量操作,或者需要进行奇怪的表查找和内插( interpolate )的东西。

古怪(Oddball)的指令可以有很大的不同,它在如何执行处理器方面拥有非常大的差异。游戏玩家在争论一个Intel CPU与另一个AMD处理器的相对优点时,这两者几乎是相同的芯片,相差仅百分之几。将如果将其与低端DSP、高端ARM、PowerPC或x86设计的方式进行比较,两者之间的差异非常明显。由此可见,架构和指令集确实很重要。

问题是,当您偏离通用路径时,将失去兼容性,并且失去软件支持。指令并不能被RISC编译器忽略,它们只是浪费多余的硬件。只有汇编语言程序员或愿意编写编译器内部函数的程序员才能利用这种额外的能力。除非您调整基准,但这又有什么意义?

RISC-V占据中间位置,并定义了所有处理器共享的基本指令集,以及一组可选的附加模块。您要浮点数吗?我们已经设计,定义,创建和提供了所有功能。在RISC-V上执行FP的每个人都以相同的方式进行操作,因此编译器编写者很高兴,因为您的代码或多或少具有可移植性。

除了这些半标准选项之外,您还可以分支并创建自己的完全自定义的指令。毕竟,这是一个开放源CPU规范,因此没有人可以阻止您。如果愿意,您甚至可以尝试将自己的作品卖回社区。

其实,可定制的指令集在之前已经完成,并且它们大部分都可以工作。例如Synopsys和Cadence的ARC和Tensilica都允许用户级定制。它们的工作方式是,当用户为特定的应用程序编写有用的新指令时,他们确实确实看到了性能的大幅提高或功耗的降低。虽然这并不总是一个简单的过程,但是它是有效的。但这种选择带来的缺点是自定义软件支持有限,并且与其他任何芯片都不兼容。

当然,后一个特征实际上可能是一个优势。因为也许你希望混淆你的代码并避免逆向工程。为此你只需在处理器中添加一些奇数指令,然后在整个软件中自由使用它们即可。自定义指令的功能甚至都无关紧要。关键是其他任何人都不知道。

当然,真正的重点是在代码中找到热点( hotspots )并创建自定义指令以加速它们。也许您在迈步时做了大量的存储工作;自定义加载/存储对可能会有所帮助。重复的比特旋转(bit twiddling)可能会压缩(condensed )为一个特殊用途的操作等等。

即使有可能,但删除指令也没有什么意义。每个CPU都需要基准指令才能进行操作。当然,您可以通过很少的指令来解决问题,但这主要是出于学术目的。RISC-V和其他设计在过去20年中使用的核心集包括基本加法,减法(有时只是负加法),逻辑运算和条件流控制(conditional flow control.)。所有这些都是有用的,并且在硬件中实现它们都不复杂。这意味着,它们从来都不是性能瓶颈,因此删除它们并不会带来任何的提升。

在另一个极端,你有一个像英特尔的疯狂的、复杂的Ice Lake 微架构,它拥有数以百计的指令,但很少会使用很多的。这种巴洛克式的指令集不仅使芯片变得臃肿。复杂的CPU具有复杂的互连,大型总线和多个时钟域。这与RISC-V相距甚远,即使安装了可选的增强功能也是如此。

MIPS架构允许用户自定义已有多年,但ARM坚决抵制这种趋势。其他一些则位于中间,大多数只允许非常有限的调整。从这个意义上讲,RISC-V是更为开放的处理器之一。

随着RISC-V的激增,确定CPU正在执行和未执行的操作将变得越来越困难。每个人都可以自由定制,并且许多RISC-V设计师已经拥有了这样的想法。除了核心指令集和一个或两个流行的扩展之外,我们还将看到库存CPU和自定义hot rods之间还有很大的差距。

它们在某种程度上都将是RISC-V,但却大不相同。
责任编辑:tzh

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    18250

    浏览量

    222075
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10434

    浏览量

    206522
  • RISC-V
    +关注

    关注

    41

    文章

    1897

    浏览量

    45044
收藏 人收藏

    评论

    相关推荐

    国产RISC-V MCU推荐

    ,CH583搭载32位青稞RISC-V处理器WCH RISC-V4A,低功耗两级流水线,高性能,拥有多档系统主频,最低32KHz ,拥有特有高速的中断响应机制。 单片搞定Wi-Fi和蓝牙 许多网友也
    发表于 04-17 11:00

    fpga和risc-v处理器的区别

    FPGA(现场可编程门阵列)和RISC-V处理器在多个方面存在显著的区别。
    的头像 发表于 03-27 14:21 202次阅读

    RISC-V 基础学习:RISC-V 基础介绍

    缩写 [###] 用于标识处理器位宽,取值[32, 64,128],也就是处理器的寄存位宽 [abc...xyz] 标识该处理器支持的指令模块集合 比如:RV64IMAC, 表示6
    发表于 03-12 10:25

    RISC-V处理器对应什么开发环境?

    RISC-V处理器是开源的,那开发环境需要厂商自己开发还是沿用传统的开发环境呢?比如keil
    发表于 01-13 19:18

    请问risc-v处理器在什么场景和行业应用比较多?

    如题,现在risc-v发展的如此迅猛,不知道这些处理器主要应用在哪些行业比较多呢?
    发表于 12-09 18:37

    开发出商用的RISC-V处理器还需要哪些开发工具和环境?

    开发出商用的RISC-V处理器还需要哪些开发工具和环境? 处理器是软硬件的交汇点,所以必须有完善的编译、开发工具和软件开发环境(IDE),处理器
    发表于 11-18 06:05

    青稞处理器资料分享

    简介 青稞处理器是沁恒微电子自研的32位微处理器,遵循和兼容开源的RISC-V指令集架构规范,并提供可选的功能扩展。支持IMAFC指令集和自定义压缩指令,并提供硬件压栈(HPE)、免表中断(VTF
    发表于 10-11 10:42

    读《玄铁RISC-V处理器入门与实战》

    是由美国伯克利大学的 Krest 教授及其研究团队提出的,当时提出的初衷是为了计算机/电子类方向的学生做课程实践服务的。由于这是伯克利大学研究并流片的第五代RISC架构处理器,因此就命名为RISC-V
    发表于 09-28 11:58

    RISC-V产业论坛召开,专利联盟正式成立

    基于RISC-V架构的CPU方面的研究,实际上我们投入了大量力量在做基于RISC-V的GPGPU(通用图形处理器)的设计。”清华大学集成电路学院副教授、上海清华国际创新中心副主任何虎表
    发表于 08-30 10:40

    RISC-V在快速发展的处理器生态系统中找到立足点

    但是开源处理器架构需要从软件开发社区获得更多支持,然后才能在数据中心与x86和ARM架构竞争:巴塞罗那RISC-V峰会的总结。 Developers have grown up hearing ARM
    发表于 08-11 18:20

    基于形式的高效 RISC-V 处理器验证方法

    RISC-V的开放性允许定制和扩展基于 RISC-V 内核的架构和微架构,以满足特定需求。这种对设计自由的渴望也正在将验证部分的职责转移到不断壮大的开发人员社群。然而,随着越来越多的企业和开发人员转型
    的头像 发表于 07-10 09:42 434次阅读
    基于形式的高效 <b class='flag-5'>RISC-V</b> <b class='flag-5'>处理器</b>验证方法

    两大架构RISC-V 和 ARM 的各种关系

    ,然后返回到内存中。RISC-V 和 ARM 都支持 32 位或 64 位指令集。 二、RISC-V 和 ARM 的区别 尽管 RISC-V 和 ARM 处理器技术的功能相似,但也有显
    发表于 06-21 20:31

    基于形式验证的高效RISC-V处理器验证方法

    随着RISC-V处理器的快速发展,如何保证其正确性成为了一个重要的问题。传统的测试方法只能覆盖一部分错误情况,而且无法完全保证处理器的正确性。因此,基于形式验证的方法成为了一个非常有前途的方法,可以更加全面地验证
    的头像 发表于 06-02 10:35 1017次阅读

    RISC-V,正在摆脱低端

    RISC-V创建了一个定制的1000多个核心系统,专门用于数据中心推理,加速许多并行化的工作负载,旨在与AI推荐系统中强大的GPU处理器竞争。 另一家初创公司Ventana Micr
    发表于 05-30 14:11

    Occamy RISC-V 前景如何

    由欧洲航天局支持,由苏黎世联邦理工学院和博洛尼亚大学的工程师开发的 Occamy 处理器现已流片。它使用了两个 216 个 32 位 RISC-V 内核的 chiplet 小芯片、未知数量的 64
    发表于 05-13 08:44