RISC 是增加指令数还是减少指令数?

RISC 是增加指令数还是减少指令数?,第1张

两个问题并没有矛盾,说是是一样的内容。

-------------------------------------------------------------------------------------------

RISC是精简指令集,也就是说指令集中的指令尽量的减少,也就是指令总数减少是指的指令集中的指令减少。当然指令集中指令总数的目的就是简化外围电路的设计。换句话来说RISC的提高运行速度提高的方法就是简化了外围电路,并减少指令集中指令总数。

程序中所需时间P中的I批的是编译程序集中所使用指令的数,也就是机器指令数。换句话来说,它与指令集中指令总数的区别就是,比如加法是一条指令,在指令集中显示是一条,而在程序中可能多次调用加法指令,所有程序中的指令数是调用的次数,所以这里边的I与指令集中的指令总数是有区别的。再一个例子你就清楚了,加减乘除是四则运算,这个相当于指令集,而4就是四则运行中的指令总数。而四则运行式只使用了多少次运行,那要具体的调用次数。我们把四则运算式看出是程序,则使用中的指令数就是四则运算中出现的次数。

理解完这个概念,那么答案就更好理解了,比如CISC(复杂指令计算机)如果遇到要计算乘方,则增加一个新的乘方指令,而如果是RISC,则设计电路时简化,则乘方被理解为多次相乘,很明显,它减少了程序集中的指令总数,增加了程序中机器指令数,目的就保证每条指令运行的机器周期数尽量少,这样就会出现程序中所用到程序平均的指信周期数尽量少。

所以答案是4没错,教材上说的也没有错。

RISC-V:读作risk-five,是一个开源的CPU指令集架构

zephyr:开源 *** 作系统

linux:没什么好说的。

risc-pk:The RISC-V Proxy Kernel。解释如下:is a lightweight application execution environment that can host statically-linked RISC-V ELF binaries.  It is designed to support tethered RISC-V implementations with limited I/O capability and and thus handles I/O-related system calls by proxying them to a host computer.

BBL :the Berkeley Boot Loader。

linux相关开源基础库对RISC-V的支持

binutils: upstreamed (2.28 is the first release with RISC-V support)

gcc: upstreamed (7.1 is the first release with RISC-V support)

glibc: upstreamed (2.27 is the first release with RISC-V support)

linux kernel: upstreamed (the architecture core code went into

kernel 4.15kernel 4.19 contains all drivers necessary for booting a

simulated system to userland)

gdb: upstreamed in master (in the release process)

qemu: upstreamed (2.12 is the first release with RISC-V support)

用来调试。

我们知道有些寄存器只能在m模式下设置和访问,如果s模式想要使用某个功能,只能先回到m模式然后再进行相应的设置。OpenSBI定义了s模式和m模式之间功能调用的接口,s模式通过执行“ecall”指令回到m模式使用相关功能,在本章节和下一章节我们将通过类似的方式来学习s模式下如何使用ecall和m模式下如何处理来自s模式的ecall异常。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11773695.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存