CPU指令集

cpu作为一台电脑中的核心,它的作用是无法替代的。而cpu本身只是在块硅晶片上所集成的超大规模的集成电路,集成的晶体管数量可达到上亿个,是由非常先进复杂的制造工艺制造出来的,拥有相当高的科技含量。

CPU指令集 - 概念

  CPU依靠指令来计算和控制系统,每款CPU在设计时就规定了一系列与其硬件电路相配合的指令系统。指令的强弱也是CPU的重要指标,指令集是提高微处理器效率的最有效工具之一。从现阶段的主流体系结构讲,指令集可分为复杂指令集和精简指令集两部分,而从具体运用看,如Intel的MMX(MultiMediaExtended)、SSE、SSE2(Streaming-Singleinstructionmultipledata-Extensions2)和AMD的3DNow!等都是CPU的扩展指令集,分别增强了CPU的多媒体、图形图象和Internet等的处理能力。我们通常会把CPU的扩展指令集称为"CPU的指令集"。

CPU指令集 - 简介

  然而如此一颗精密的芯片为什么能够控制一个庞大而复杂的电脑系统呢?这就是cpu中所集成的指令集。所谓指令集,就是cpu中用来计算和控制计算机系统的一套指令的集合,而每一种新型的cpu在设计时就规定了一系列与其他硬件电路相配合的指令系统。而指令集的先进与否,也关系到cpu的性能发挥,它也是cpu性能体现的一个重要标志。
  再强大的处理器也需要指令集的配合才行(图片出自电影《机械公敌》)
  cpu的指令集从主流的体系结构上分为精简指令集和复杂指令集,而在普通的计算机处理器基本上是使用的复杂指令集。在计算机早期的发展过程中,cpu中的指令集是没有划分类型的,而是都将各种程序需要相配合的指令集成到cpu中,但是随着科技的进步,计算机的功能也越来越强大,计算机内部的元件也越来越多,而且越来越复杂,cpu的指令也相应的变得十分复杂,而在使用过程中,并不是每一条指令都要完全被执行,在技术人员的研究过程中发现,约有80%的程序只用到了20%的指令,而一些过于冗余的指令严重影响到了计算机的工作效率,就这一现象,精简指令集的概念就被提了出来。
  精简指令集risc就是(Reduced Instruction Set Computing)的缩写,而复杂指令集cisc则是(Complex Instruction Set Computing)的缩写。它们之间的不同之处就在于RISC指令集的指令数目少,而且每条指令采用相同的字节长度,一般长度为4个字节,并且在字边界上对齐,字段位置固定,特别是操作码的位置。而cisc指令集特点就是指令数目多而且复杂,每条指令的长度也不相等。
  在操作上,risc指令集中大多数操作都是寄存器到寄存器之间的操作,只以简单的load(读取)和sotre(存储)操作访问内存地址。因此,每条指令中访问的内存地址不会超过1个,指令访问内存的操作不会与算术操作混在一起。在功能上,risc指令集也要比复杂指令集具有优势,精简指令集可以大大简化处理器的控制器和其他功能单元的设计,不必使用大量专用寄存器,特别是允许以硬件线路来实现指令操作,从而节约的处理器的制造成本。
  而采用cisc指令集的处理器是使用微程序来实现指令操作,在执行速度上不如risc指令集。另外,risc还加强了并行处理能力,非常适合于采用处理器的流水线、超流水线和超标量技术,从而实现指令级并行操作,提高处理器的性能。而且随着vlsi(Very Large Scale Integration超大规模集成电路)技术的发展,整个处理器的核心甚至多个处理器核心都可以集成在一个芯片上。risc指令集的体系结构可以给设计单芯多核处理器带来很多好处,有利于处理器的性能提高。
  由于risc指令集自身的优势,在处理器的高端服务器领域的处理器上得到了广泛的运用,而cisc指令集主要运用桌面领域的处理器产品中,比如intel的pentium系列和amd的k8系列处理器。然而现在risc指令集也不断地向桌面领域渗入,相信以后的处理器指令集会慢慢的向risc体系靠拢,使得处理器的指令集结构更加完善,功能更为强大,技术也越来越成熟。
  RISC指令集有许多特征,其中最重要的有:
  指令种类少,指令格式规范:RISC指令集通常只使用一种或少数几种格式。指令长度单一(一般4个字节),并且在字边界上对齐。字段位置、特别是操作码的位置是固定的。
  寻址方式简化:几乎所有指令都使用寄存器寻址方式,寻址方式总数一般不超过5个。其他更为复杂的寻址方式,如间接寻址等则由软件利用简单的寻址方式来合成。
  大量利用寄存器间操作:RISC指令集中大多数操作都是寄存器到寄存器操作,只以简单的Load和Store操作访问内存。因此,每条指令中访问的内存地址不会超过1个,访问内存的操作不会与算术操作混在一起。
  简化处理器结构:使用RISC指令集,可以大大简化处理器的控制器和其他功能单元的设计,不必使用大量专用寄存器,特别是允许以硬件线路来实现指令操作,而不必像CISC处理器那样使用微程序来实现指令操作。因此RISC处理器不必像CISC处理器那样设置微程序控制存储器,就能够快速地直接执行指令。
  便于使用VLSI技术:随着LSI和VLSI技术的发展,整个处理器(甚至多个处理器)都可以放在一个芯片上。RISC体系结构可以给设计单芯片处理器带来很多好处,有利于提高性能,简化VLSI芯片的设计和实现。基于VLSI技术,制造RISC处理器要比CISC处理器工作量小得多,成本也低得多。
  加强了处理器并行能力:RISC指令集能够非常有效地适合于采用流水线、超流水线和超标量技术,从而实现指令级并行操作,提高处理器的性能。目前常用的处理器内部并行操作技术基本上是基于RISC体系结构发展和走向成熟的。
  正由于RISC体系所具有的优势,它在高端系统得到了广泛的应用,而CISC体系则在桌面系统中占据统治地位。而在如今,在桌面领域,RISC也不断渗透,预计未来,RISC将要一统江湖

原文地址:https://www.cnblogs.com/carl-angela/p/5407162.html