复杂指令集计算机
计算机处理器包含有实现各种功能的指令或微指令。指令集越丰富,为微处理器编写程序就越容易,但是丰富的微指令集会影响其性能。下面比较了微处理器的两种类别:
?CISC (复杂指令集计算机) 设计方案包括一个丰富的微指令集,这些微指令简化了在处理器上运行的程序的创建。指令由汇编语言所组成,把一些原来由软件实现的,常用的功能改用硬件的指令系统实现,就是硬件所提供的指令集较多,编程者的工作因而减少许多,在每个指令期同时处理一些低阶的操作或运算,以提高计算机的执行速度,这种系统就被称为复杂指令系统。在CISC指令集的各种指令中,其使用频率却相差悬殊,大约有20%的指令会被反复使用,占整个程序代码的80%。而余下的80%的指令却不经常使用,在程序设计中只占20%。
? RISC(精简指令集计算机) 设计方案,如它的名字所蕴涵的那样,有一个简化的指令集,该指令集提高处理器的效率但是需要有更复杂的外部程序。RISC结构优先选取使用频最高的简单指令,避免复杂指令;将指令长度固定,指令格式和寻地方式种类减少;以控制逻辑为主,不用或少用微码控制等措施来提高运算速度。
RISC设计方案是根据John Cocke在IBM所做的工作形成的。John Cocke发现大约20%的计算机指令完成大约80%的工作。因此,基于RISC的系统通常比CISC系统速度快。它的80/20规则促进了RISC体系结构的发展。
到目前为止,RISC体系结构也还没有严格的定义,一般认为,RISC体系结构应具有如下特点:
(1)采用固定长度的指令格式,指令归整、简单、基本寻址方式有2~3种。
(2)使用单周期指令,便于流水线操作执行。
(3)大量使用寄存器,数据处理指令只对寄存器进行操作,只有加载/ 存储指令可以访问存储器,以提高指令的执行效率。
除此以外,ARM体系结构还采用了一些特别的技术,在保证高性能的前提下尽量缩小芯片的面积,并降低功耗:
(1)所有的指令都可根据前面的执行结果决定是否被执行,从而提高指令的执行效率。
(2)可用加载/存储指令批量传输数据,以提高数据的传输效率。
(3)可在一条数据处理指令中同时完成逻辑处理和移位处理。
(4)在循环处理中使用地址的自动增减来提高运行效率。
当然,和CISC架构相比较,尽管RISC架构有上述的优点,但决不能认为RISC架构就可以取代CISC架构,事实上,RISC和CISC各有优势,而且界限并不那么明显。现代的CPU往往采用CISC的外围,内部加入了RISC的特性,如超长指令集CPU就是融合了RISC和CISC的优势,成为未来的CPU发展方向之一。
?CISC (复杂指令集计算机) 设计方案包括一个丰富的微指令集,这些微指令简化了在处理器上运行的程序的创建。指令由汇编语言所组成,把一些原来由软件实现的,常用的功能改用硬件的指令系统实现,就是硬件所提供的指令集较多,编程者的工作因而减少许多,在每个指令期同时处理一些低阶的操作或运算,以提高计算机的执行速度,这种系统就被称为复杂指令系统。在CISC指令集的各种指令中,其使用频率却相差悬殊,大约有20%的指令会被反复使用,占整个程序代码的80%。而余下的80%的指令却不经常使用,在程序设计中只占20%。
? RISC(精简指令集计算机) 设计方案,如它的名字所蕴涵的那样,有一个简化的指令集,该指令集提高处理器的效率但是需要有更复杂的外部程序。RISC结构优先选取使用频最高的简单指令,避免复杂指令;将指令长度固定,指令格式和寻地方式种类减少;以控制逻辑为主,不用或少用微码控制等措施来提高运算速度。
RISC设计方案是根据John Cocke在IBM所做的工作形成的。John Cocke发现大约20%的计算机指令完成大约80%的工作。因此,基于RISC的系统通常比CISC系统速度快。它的80/20规则促进了RISC体系结构的发展。
到目前为止,RISC体系结构也还没有严格的定义,一般认为,RISC体系结构应具有如下特点:
(1)采用固定长度的指令格式,指令归整、简单、基本寻址方式有2~3种。
(2)使用单周期指令,便于流水线操作执行。
(3)大量使用寄存器,数据处理指令只对寄存器进行操作,只有加载/ 存储指令可以访问存储器,以提高指令的执行效率。
除此以外,ARM体系结构还采用了一些特别的技术,在保证高性能的前提下尽量缩小芯片的面积,并降低功耗:
(1)所有的指令都可根据前面的执行结果决定是否被执行,从而提高指令的执行效率。
(2)可用加载/存储指令批量传输数据,以提高数据的传输效率。
(3)可在一条数据处理指令中同时完成逻辑处理和移位处理。
(4)在循环处理中使用地址的自动增减来提高运行效率。
当然,和CISC架构相比较,尽管RISC架构有上述的优点,但决不能认为RISC架构就可以取代CISC架构,事实上,RISC和CISC各有优势,而且界限并不那么明显。现代的CPU往往采用CISC的外围,内部加入了RISC的特性,如超长指令集CPU就是融合了RISC和CISC的优势,成为未来的CPU发展方向之一。