RISC-V正在采取行动,避免MIPS类的碎片化
来源:半导体行业观察
在技术重量级人物的支持下,RISC-V 不断增长,但也带来了挑战:鼓励 CPU 设计人员保持一致,并避免MIPS和Android中发生的那种碎片化。
考虑到这一点,协调开源指令集架构 (ISA) 开发的 RISC-V International 已向其社区寻求指导,并确定其未来几年的优先事项。
上周,该组织在其邮件列表上分享了一项调查,以收集反馈,以“帮助识别 ISA 差距,制定未来扩展计划,并保持 RISC-V 应用程序之间的兼容性。”
RISC-V International 首席技术官 Mark Himelstein 告诉The Register ,调查的目的是了解社区正在做什么,以及是否强烈希望将一些私人开发的非标准扩展标准化。
RISC-V 有时被称为芯片中的 Linux,全世界的工程师都在合作设计、设置和改进架构。
RISC-V 本质上是一组规范,从软件的角度定义了兼容的 CPU 内核应该如何运行:可用的指令类型、它们在内存中的格式以及其他核心功能。
然后,这些规范可免版税以在处理器和片上系统中实施:由半导体工程师决定如何在其芯片中构建管道和逻辑以运行为 RISC-V 机器构建的软件。
RISC-V 采用模块化方法:其 ISA 具有一组基本功能以及可选扩展,例如原子操作和浮点数学,可以根据需要在硅中实现。
一些扩展由社区公开发布和批准;工程师还可以自由地为他们的特定芯片提出他们自己的私人定制扩展。
根据设计,在 CPU 核心扩展级别添加功能(例如用于加速 AI 操作的指令)可以避免开发和连接单独的协处理器及其接口的需要。
因此,芯片开发人员可以为他们的 RISC-V CPU 内核创建和实施混合的开放和专有扩展。这就是可能发生碎片化的地方。
一家公司可以在其处理器系列中实现一组标准 RISC-V 扩展,并附加一些应用程序依赖的自定义、非标准扩展。
这些应用程序可能难以在另一家公司的未实现该扩展的 RISC-V 芯片上运行,因为无论出于何种原因,它都没有得到批准或无法实现。
RISC-V International 热衷于避免 ISA 的这种不受控制的扩展,方法是让团队以开放、协作的方式标准化他们的扩展,而这样做似乎很聪明。
“调查的部分原因是要弄清楚还有什么。如果有什么意义,那么我们可以让人们重新团结起来,减少这些不合格和非标准的扩展,”希梅尔斯坦说。
标准化将鼓励应用程序开发人员利用 RISC-V 功能,因为他们知道他们的代码将在众多兼容芯片上顺利运行。出于商业原因,一些组织可能仍然更喜欢私下开发自己的专有扩展,或者因为他们已经想到了其他人没有考虑过的添加,或者因为他们的芯片无论如何都只会运行他们的代码。
Himelstein 说得很好。
“这是一种贡献者文化。如果有足够多的人愿意[合作标准化扩展],那么它就会发生。如果没有,那么它就不会,人们可能会去做自己的事情,这对我们来说没关系, ”Himelstein 说。
例如,如果调查显示对支持 8 位浮点或 FP8 的热情足够高(英伟达上周吹嘘其作为其Hopper GPU的一项功能) ,RISC-V International 将开始讨论标准化此类扩展。如果没有,人们可以自由地为它提出自己的自定义扩展。
“还有其他浮点格式。去年我们做了……半角 IEEE 浮点。但另一种在嵌入式领域非常流行的特别是用于机器学习的 bfloat16。去年我们无法做到。我们“今年正在努力实现它,”Himelstein 说。
Imagination 将 GPU 蓝图授权给片上系统制造商,并拥有自己的兼容 RISC-V 的 CPU 设计,该公司表示,带有批准扩展的组件是建立强大的 RISC-V 生态系统的关键。
“市场上有许多未经批准的定制扩展将阻碍 RISC-V 的广泛采用,”Imagination 的计算副总裁 Shreyas Derashri 告诉The Register。“Imagination 从根本上想加强 RISC-V 生态系统。”
如果 Imagination 生产自定义扩展,该公司将与 RISC-V International 合作以使这些扩展获得批准。“这也包括围绕 RISC-V 图形扩展的工作,”Derashri 说。
RISC-V 去年发布了 16 个规范,今年还有更多:昨天封闭和定制的东西明天可以由社区开放和标准化。“就像在 Linux 中一样,今天可能专有的技术将在五、三年或两年内沉淀下来,”Himelstein 说。“每个人都理解这个游戏,因为我们已经在计算机中使用它很长时间了。”
RISC-V网站还对正在开发的规范状态进行了明确的命名:是否正在讨论、开发、公开审查、冻结以及是否已被批准。
“我们不会急于做某事,然后浪费操作码空间,以后不得不重做一些事情。我们可以创建一个新的扩展,但我们宁愿尝试把它做好,”Himelstein 说。
RISC-V 世界花了六年时间来标准化矢量规范。现在,RISC-V 的领导者正试图尽量减少与 ISA 专注于图形和机器学习的特殊兴趣小组相关的常见功能的扩展重叠,例如矩阵运算。
“vector 团队正在创建一个特殊的兴趣小组,将与这些人合并,然后决定这个东西的样子,因为不仅存在重叠,而且在计算机科学的其他一些地方也存在重叠,”Himelstein 说。
原文链接:
https://www.theregister.com/2022/04/01/riscv_fragmentation/
未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)大脑研究计划,构建互联网(城市)大脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。每日推荐范围未来科技发展趋势的学习型文章。目前线上平台已收藏上千篇精华前沿科技文章和报告。
如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”
RISC-V正在采取行动,避免MIPS类的碎片化相关推荐
- 计组学习笔记2(RISC v版)
指令集解释 (规定:R[r]表示通用寄存器r的内容,M[addr]表示存储单元addr的内容,SEXT[imm]表示对imm进行符号扩展,ZEXT[imm]表示对imm进行零扩展) 整数运算类 -U型 ...
- RISC V (RV32+RV64) 架构 整体介绍
文章目录 riscv 市场 芯片介绍 软件介绍 开发板介绍 PC介绍 riscv 架构 编程模型(指令集/寄存器/ABI/SBI) 运行状态 指令集 寄存器 riscv32和riscv64两者的区别 ...
- V.CodeGenerator WPF代码生成器--Model基类
V.CodeGenerator WPF代码生成器--Model基类 前言 一.引用Vampirewal.Core基础库 二.使用 NotifyBase(1.X和2.X通用) 版本1.X----适用于E ...
- 计算机 游戏化 论文,计算机程序设计类课程游戏化探究
摘要:围绕教育信息化应用背景,在分析目前计算机程序设计类课程教学满意度现状的基础上,探究计算机程序设计类课程游戏化教学的影响因素.经调查分析得出,大部分学生都有学计算机程序设计类课程的经历和玩电脑游戏 ...
- 安装Ubuntu RISC V toolchain失败(网速、git配置原因)
git获取大容量工程出错:RPC failed: curl GnuTLS recv error : Decryption has failed. error: RPC failed; curl 56 ...
- C++ Primer 5th笔记(chap 16 模板和泛型编程)类模板特例化
1. 定义一个特例化版本, 模板参数为 Sales data // 打开std 命名空间, 以便特例化 std::hash namespace std {template struct hash< ...
- php全局化标签,PHP – 在整个应用程序中使类对象全局化?
有没有一种简单的方法可以在 PHP中为整个应用程序创建一个全局类对象?我需要我的课程才能在整个应用程序中实例化一次并让它100%工作. 谢谢. 编辑 决定Singleton模式是我需要的最好的想法,并 ...
- 模板类的特例化(具体化)
模板的基础知识: 模板的实例化 模板并不是真正的函数或类,它仅仅是编译器用来生成函数或类的一张"图纸".模板不会占用内存,最终生成的函数或者类才会占用内存.由模板生成函数或类的过程 ...
- 动手实现天气预报App(一)——数据、工具类和碎片布局准备
文章目录 需求分析 数据来源 创建数据库和表 加载全国省市区数据 请求和解析数据工具类 碎片界面布局 加载数据碎片逻辑 测试 本系列记录一下跟随guolin大神学习的项目自己完成一个天气预报Andro ...
最新文章
- WPF Popup 相关内容
- 一加10 Pro首发定制X轴线性马达:Top级超大体积 安卓阵营马达天花板
- 三角函数公式总结(四)
- idea 新增html页面或者是修改html文件后,target不会同步更新
- 剑指offer——2.实现Singleton模式
- C++ 无限for循环的bug
- 去阿里面试被问:如果是MySQL引起的CPU消耗过大,你会如何优化?
- springcloud篇面试宝典
- 小米笔记本Pro 黑苹果10.15.2记录 不需要焊接,完美支持airdrop、接力、随航
- mysql 字符串有有乱码 转码_mysql字符转化以及乱码原因
- 怎么将PPT中的视频文件保存下来
- bose qc30 安静的城市是什么样子
- 跳槽遇到背景调查,你可以这样做!
- java毕业设计成都某4S店销售管理系统Mybatis+系统+数据库+调试部署
- stm32h7 串口idle_【STM32H7教程】第30章 STM32H7的USART应用之八个串口FIFO实现
- 硬盘柱面损坏怎么办_硬盘0柱面损坏数据恢复(老牌数据恢复)
- 12c及以上参数推荐设置
- 怎样记账家庭成员收支,搜索查看明细
- 【渝粤教育】广东开放大学 古代汉语 形成性考核 (28)
- ORACLE修改processes和sessions参数
热门文章
- ubuntu 14.04中文显示乱码问题
- linux内核下载 编译
- C语言到嵌入式Linux开发项目指导
- 检测ARM板的RTC
- javascript mysql php_HTML、CSS、JavaScript、PHP、 MySQL 的学习顺序是什么?
- 数据结构之堆:堆的排序,Python代码实现——13
- python开发出来的crm系统_用Python打造一个CRM系统(三)
- 升级 ubuntu_Ubuntu 19.04 已经到期!现有用户必须升级到 Ubuntu 19.10
- hadoop 多机全分布式安装步骤(虚拟机1master+2slave)
- LeetCode MySQL 1097. 游戏玩法分析 V