简述CISC、RISC、RISC-V、MIPS

参考网站:https://my.oschina.net/u/3374461/blog/1930279
https://qiaodahai.com/cisc-risc-arm-mips.html
https://blog.csdn.net/qq_41394155/article/details/88595775
https://zhuanlan.zhihu.com/p/311359454

1 引入

来源:https://zhuanlan.zhihu.com/p/311359454

CPU发明到现在,有非常多种架构涌现出来,目前市场上主流的芯片架构有 X86、ARM、RISC-V和MIPS四种:
知乎
但是CPU的架构从最基本的逻辑角度来分类的话,它们可以被分为两大类,即所谓的“复杂指令集”与“精简指令集”系统,也就是经常看到的“CISC”与“RISC”。

x86是CISC的代表架构,占领了95%以上的桌面计算机和服务器市场。Arm作为RISC的一种,在智能手机、可穿戴设备等移动处理器市场占领主要地位。

RISC-V 架构是基于精简指令集计算(RISC)原理建立的开放 指令集架构(ISA),RISC-V是在指令集不断发展和成熟的基础上建立的全新指令。基于RISC-V 指令集架构可以设计服务器CPU,家用电器CPU,工控CPU和用在比指头小的传感器中的CPU。

MIPS架构是一种采取精简指令集(RISC)的处理器架构,1981年出现,由MIPS科技公司开发并授权,它是基于一种固定长度的定期编码指令集,并采用 导入/存储(Load/Store)数据模型。经改进,这种架构可支持高级语言的优化执行。其算术和逻辑运算采用三个操作数的形式,允许编译器优化复杂的表达式。如今基于该架构的芯片广泛被使用在许多电子产品、网络设备、个人娱乐装置与商业装置上。


2 CISC和RISC

  • CISC(Complex Instruction Set Computer),设计思路是用一条指令完成一个复杂的基本功能;

  • RISC(Reduced Instruction Set Computer),设计思路是一条指令完成一个基本“动作”,多条指令组合完成一个复杂的基本功能。

比如说,现在如果我们需要设计一套能输出单词的指令集。

CISC的思路是每个单词的输出由一条指令完成,并且一条指令可以由一个专门的电路完成(往往采用“存储程序”的设计思想,由一个比较通用的电路配合存储部件完成一条指令);

RISC的思路是每个字母的输出由一条指令完成,多条指令组合完成一个单词。

关于CISC和RISC具体指标的对比见下图:

在这里插入图片描述

对于通用寄存器数量,RISC的数量多,而CISC的数量少的原因是:RISC在处理一个任务时往往会拆分成几个部分的指令,每个部分的指令往往需要多个通用寄存器来存储中间结果;而CISC则往往一条指令把一个任务都做完了,无需太多的通用寄存器。

对微程序控制的解释:复杂指令直接用硬件实现的话,需要的硬件数量会过多,故往往需要一些存储的部件来辅助实现,而微程序控制器就是这一类部件。百度百科解释:微程序控制的基本思想,就是仿照通常的解题程序的方法,把操作控制信号编成所谓的“微指令”,存放到一个只读存储器里.当机器运行时,一条又一条地读出这些微指令,从而产生全机所需要的各种操作控制信号,使相应部件执行所规定的操作 。

在这里插入图片描述

  • 硬件角度来看:
    CISC处理的是不等长指令集,它必须对不等长指令进行分割,因此在执行单一指令的时候需要进行较多的处理工作。而RISC执行的是等长精简指令集,CPU在执行指令的时候速度较快且性能稳定。因此在并行处理方面RISC明显优于CISC,RISC可同时执行多条指令,它可将一条指令分割成若干个进程或线程,交由多个处理器同时执行。由于RISC执行的是精简指令集,所以它的制造工艺简单且成本低廉。

  • 软件角度来看:CISC运行的则是我们所熟识的DOS、Windows操作系统。而且它拥有大量的应用程序。因为全世界有65%以上的软件厂商都理为基于CISC体系结构的PC及其兼容机服务的,象赫赫有名的Microsoft就是其中的一家。而RISC在此方面却显得有些势单力薄。虽然在RISC上也可运行DOS、Windows,但是需要一个翻译过程,所以运行速度要慢许多。


3 RISC-V

在英伟达要收购ARM的消息确认后,基于ARM的CPU设计公司担心未来架构授权问题,开源的RISC-V走向了CPU的舞台,成为了各家IC设计公司的新宠。

RISC-V 指令集完全开源,设计简单,易于移植Unix系统,模块化设计,完整工具链,同时有大量的开源实现和流片案例,得到很多芯片公司的认可。RISC-V 架构的起步相对较晚,但发展很快。它可以根据具体场景选择适合指令集的指令集架构。

但RISC-V目前还处于早期的阶段,没有太多的实现和验证,先行者需要承担更多的验证,测试等工作。此外,RISC-V还存在自身的短板——生态破碎化和不完善,目前真正宣布基于RISC-V指令集开发IP核的企业仍是凤毛麟角。因此目前RISC-V架构虽然吸引不少一线厂商采用,但现阶段要成为市场主流,似乎还需要更多时间投入发展。

值得一提的是,2018年9月,中国RISC-V产业联盟在上海张江成立,由上海芯原、芯来科技、上海赛昉科技(SiFive China)、杭州中天微、北京君正、兆易创新、致象尔微电子、乐鑫科技、时芯电子、展讯通信、地平线、晶晨半导体、华大半导体、格易电子、上海高性能集成电路设计中心、上海集成电路行业协会、上海物联网行业协会等单位共同发起,上海芯原担任联盟首任理事长单位。


4 MIPS

MIPS是高效精简指令集计算机(RISC)体系结构中最优雅的一种,最早诞生于斯坦福大学的一项科研项目(这也是MIPS公司学院派思想的由来),该项目的目的是设计一种高性能简化指令处理器。最终的产物便是MIPS处理器,也便是第一代RISC系统芯片。

与当前商业化最成功的ARM架构相比,MIPS的优势主要有以下几点:

1、MIPS支持64bit指令和操作,ARM目前只到32bit;
2、MIPS有专门的除法器,可以执行除法指令;
3、MIPS的内核寄存器比ARM多一倍,所以同样的性能下MIPS的功耗会比ARM更低,同样功耗下性能比ARM更高;
4、MIPS指令比ARM稍微多一点,稍微灵活一点;
5、有观点认为MIPS的bank寄存器性能也要好于ARM,不过没见过能反映出来的测试。

与ARM架构相比,MIPS架构也存在着以下几点不足:

1、MIPS的内存地址起始有问题,这导致了MIPS在内存和cache的支持方面都有限制,现在的MIPS处理器单内核面对高容量内存时有问题;
2、MIPS今后的发展方向是并行线程,类似INTEL的超线程,而ARM未来的发展方向是物理多核,目前看来物理多核占优。由此来看,我国的龙芯向多核发展还是颇具远见的;
3、MIPS虽然结构更加简单,但是到现在还是顺序单发射,ARM已经进化到了乱序双发射,甚至NV的丹佛已经是乱序三发射了。

值得一提的是,MIPS拥有博通、Cavium、英特尔(Mobileye)、龙芯、炬力、君正等行业领军角色的支持。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值