|
|
|
|
移动端

2.2.4 简洁的存储器访问指令

《手把手教你设计CPU——RISC-V处理器篇》第2章大道至简——RISC-V架构之魂,本章将对RISC-V架构的设计思想进行深入浅出的介绍。本节为大家介绍简洁的存储器访问指令。

作者:胡振波来源:人民邮电出版社|2018-05-23 13:15

技术沙龙 | 6月30日与多位专家探讨技术高速发展下如何应对运维新挑战!


2.2.4 简洁的存储器访问指令

与所有的RISC处理器架构一样,RISC-V架构使用专用的存储器读(Load)指令和存储器写(Store)指令访问存储器(Memory),其他的普通指令无法访问存储器,这种架构是RISC架构常用的一个基本策略。这种策略使得处理器核的硬件设计变得简单。存储器访问的基本单位是字节(Byte)。RISC-V的存储器读和存储器写指令支持一个字节(8位)、半字(16位)、单字(32位)为单位的存储器读写操作。如果是64位架构还可以支持一个双字(64位)为单位的存储器读写操作。

RISC-V架构的存储器访问指令还有如下显著特点。

为了提高存储器读写的性能,RISC-V架构推荐使用地址对齐的存储器读写操作,但是也支持地址非对齐的存储器操作RISC-V架构。处理器既可以选择用硬件来支持,也可以选择用软件来支持。

由于现在的主流应用是小端格式(Little-Endian),RISC-V架构仅支持小端格式。有关小端格式和大端格式的定义和区别,在此不做过多介绍。若对此不太了解的初学者可以自行查阅学习。

很多的RISC处理器都支持地址自增或者自减模式,这种自增或者自减的模式虽然能够提高处理器访问连续存储器地址区间的性能,但是也增加了设计处理器的难度。RISC-V架构的存储器读和存储器写指令不支持地址自增自减的模式。

RISC-V架构采用松散存储器模型(Relaxed Memory Model),松散存储器模型对于访问不同地址的存储器读写指令的执行顺序不作要求,除非使用明确的存储器屏障(Fence)指令加以屏蔽。有关存储器模型(Memory Model)和存储器屏障指令的更多信息,请参见附录A13。

这些选择都清楚地反映了RISC-V架构力图简化基本指令集,从而简化硬件设计的哲学。RISC-V架构如此定义是具有合理性的,能达到能屈能伸的效果。例如,对于低功耗的简单CPU,可以使用非常简单的硬件电路即可完成设计;而对于追求高性能的超标量处理器,则可以通过复杂设计的动态硬件调度能力来提高性能。

请参见附录A14.2节了解RISC-V架构存储器访问指令的细节。


喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书频道活动讨论群:365934973

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

软件架构设计

本书紧紧围绕“软件架构设计”这一主题,立足实践解析了软件架构的概念,阐述了切实可行的软件架构设计方法,提供了可操作性极强的完整的架...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊