终于有人把RISC-V讲明白了(5)
RISC-V架构则放弃使用这种“Load Multiple”和“Store Multiple”指令。并解释,如果有的场合比较介意这种“保存现场”和“恢复现场”的指令条数,那么可以使用公用的程序库(专门用于保存和恢复现场)来进行,这样就可以省掉在每个子函数调用的过程中都放置数目不等的“保存现场”和“恢复现场”的指令。
此选择再次印证了RISC-V追求硬件简单的哲学,因为放弃“Load Multiple”和“Store Multiple”指令可以大幅简化CPU的硬件设计,对于低功耗小面积的CPU可以选择非常简单的电路进行实现,而高性能超标量处理器由于硬件动态调度能力很强,可以有强大的分支预测电路保证CPU能够快速的跳转执行,从而可以选择使用公用的程序库(专门用于保存和恢复现场)的方式减少代码量,但是同时达到高性能。
很多早期的RISC架构发明了带条件码的指令,譬如在指令编码的头几位表示的是条件码(Conditional Code),只有该条件码对应的条件为真时,该指令才被真正执行。
这种将条件码编码到指令中的形式可以使得编译器将短小的循环编译成带条件码的指令,而不用编译成分支跳转指令。这样便减少了分支跳转的出现,一方面减少了指令的数目;另一方面也避免了分支跳转带来的性能损失。然而,这种“条件码”指令的弊端同样会使得CPU的硬件设计变得复杂,增加硬件的开销,也可能损伤时序使得CPU的主频无法提高,笔者在曾经设计此类处理器时便深受其苦。
RISC-V架构则放弃使用这种带“条件码”指令的方式,对于任何的条件判断都使用普通的带条件分支跳转指令。此选择再次印证了RISC-V追求硬件简单的哲学,因为放弃带“条件码”指令的方式可以大幅简化CPU的硬件设计,对于低功耗小面积的CPU可以选择非常简单的电路进行实现,而高性能超标量处理器由于硬件动态调度能力很强,可以有强大的分支预测电路保证CPU能够快速的跳转执行达到高性能。
很多早期的RISC架构均使用了“分支延迟槽(Delay Slot)”,最具有代表性的便是MIPS架构,在很多经典的计算机体系结构教材中,均使用MIPS对分支延迟槽进行过介绍。分支延迟槽就是指在每一条分支指令后面紧跟的一条或者若干条指令不受分支跳转的影响,不管分支是否跳转,这后面的几条指令都一定会被执行。
早期的RISC架构很多采用了分支延迟槽诞生的原因主要是因为当时的处理器流水线比较简单,没有使用高级的硬件动态分支预测器,所以使用分支延迟槽能够取得可观的性能效果。然而,这种分支延迟槽使得CPU的硬件设计变得极为的别扭,CPU设计人员对此往往苦不堪言。
RISC-V架构则放弃了分支延迟槽,再次印证了RISC-V力图简化硬件的哲学,因为现代的高性能处理器的分支预测算法精度已经非常高,可以有强大的分支预测电路保证CPU能够准确的预测跳转执行达到高性能。而对于低功耗小面积的CPU,由于无需支持分支延迟槽,硬件得到极大简化,也能进一步减少功耗和提高时序。
很多RISC架构还支持零开销硬件循环(Zero Overhead Hardware Loop)指令,其思想是通过硬件的直接参与,通过设置某些循环次数寄存器(Loop Count),然后可以让程序自动地进行循环,每一次循环则Loop Count自动减1,这样持续循环直到Loop Count的值变成0,则退出循环。
之所以提出发明这种硬件协助的零开销循环是因为在软件代码中的for 循环(for i=0; i
然有得必有失,此类零开销硬件循环指令大幅地增加了硬件设计的复杂度。因此,零开销循环指令与RISC-V架构简化硬件的哲学是完全相反的,在RISC-V架构中自然没有使用此类零开销硬件循环指令。
在本章第2.1节中曾经提到RISC-V架构使用模块化的方式组织不同的指令子集,最基本的整数指令子集(I字母表示)支持的运算包括加法、减法、移位、按位逻辑操作和比较操作。这些基本的运算操作能够通过组合或者函数库的方式完成更多的复杂操作(譬如乘除法和浮点操作),从而能够完成大多数的软件操作。
相关文章:
- [体育头条]有关异界修真之巅峰到底是什么
- [体育头条]小破孩表情包又是什么梗?
- [体育头条]关于台风凡亚比网友关心什么?
- [体育头条]有关魔兽世界前锋胸甲消息可靠
- [体育头条]有关重生之掌控世界怎么回事?
- [体育头条]关于御龙在天巴士具体是什么原
- [体育头条]有关老唐造车记怎么上了热搜?
- [体育头条]你就是我的生命又是个什么梗?
- [体育头条]鸟笼里的暹罗猫到底是什么情况
- [体育头条]主持人胡晨具体是什么原因?
- [体育头条]白皮松育苗到底是什么情况?
- [体育头条]有关天涯赤子心剧情介绍又是什
- [体育头条]具人同行湖南站到底是什么原因
- [体育头条]种瓜南山下网友如何看?
- [体育头条]有关这支烟灭了以后到底是什么
- [体育头条]偷星九月天舞台剧是怎么回事?
- [体育头条]汤臣倍健左旋肉碱怎么样究竟怎
- [体育头条]快打旋风3出招究竟怎么回事?
- [体育头条]于丹被轰下台究竟什么情况?
- [体育头条]铃木美恵子网友是怎么说的!
- 值得但非首选]雷克萨斯NX200t两年详细使用感受
- 面瘫将军求子记具体内容是什么?
- 青海小西牛生物乳业股份有限公司
- 湖北奥运冠军谌龙喜获赛季首冠 感叹坚持终于有了回报
- 加盟商百万欠款难追回 鱼乐贝贝“加盟圈套”何时终结
- 易方达天天理财货币A
- 改装档案BMW R nine T真是怎么改都好看!看看印度改出
- 斧头男大砍麦当劳事后操作更令人脊背发凉
- 唇唇欲动无影有踪是真的吗?
- 有关五行带土的字的底层逻辑是什么?
- 4080显卡需要多少w电源笔记本什么时候出?
- b是什么车标
- ROG6天玑版成安卓旗舰手机性能第一?真实用户评价亮了
- 1~8月南通全市工业投资稳健增长 亿元以上工业项目产出
- 【雄关善治·五治融合】“五治融合”绘就和谐画卷——
- 华为美国子公司计划大规模裁员 中国雇员可回国并留在
- 淘宝分期付款(淘宝上如何分
- 第七届中国-亚欧博览会透露哪些积极信号?
- 关于魔少的逃跑俏新娘又是什么梗?
- 美格智能技术股份有限公司第二届监事会第十次会议决议
- 多多自走棋进入NEST电竞项目 已经跟V社彻底分家了
- 微信悄悄测试新功能:发语音可转文字网友直呼太方便!
- 女儿第一次来“大姨妈”妈妈一定要跟她说三句话关系她
- 小学数学趣味100题暑假在家也能边玩边学习(含答案)
- 搞笑段子:第一次去男朋友家没想到来了一大家子亲戚…
- 【安雷ABO】(R)抗拒从严【一发完】
- 更快更好更便捷
- 威海市统一路小学看看网友是如何评论的!
- 北理工:2019增设三大专业 继续推行0调剂 0退档
- 华怡:MVR蒸发器、三效多效蒸发器、升降膜蒸发器厂家
- 有关王若伊释小龙这是不是真相?
- 中建八局二公司与德州市建筑行业企业举行战略合作协议
- 第二届世界互联网大会
- 搞笑GIF图:看了一会儿才明白是啥
- 南京本地宝-爱上本地宝生活会更好
- 战舰少女r公式大全
- 中华人民共和国国防部
- 郭晨冬谈被解约的黑龙何以UFC一战成名但说黑人长相蠢
- 95开头的8位数骚扰电话越来越多 到底什么来头?
- 关于我要上春晚20110717背后的逻辑是什么?