1.1.2 IA-32处理器
IBM PC系列机的广泛应用推动了处理器芯片的生产。Intel公司在推出32位结构的80386处理器后,明确宣布80386芯片的指令集体系结构(Instruction Set Architecture,ISA)为以后开发的80x86系列处理器的标准,称为Intel 32位结构(Intel Architecture-32,IA-32)。现在,Intel公司的80386、80486以及Pentium各代处理器统称为IA-32处理器或32位80x86处理器。
1.80386
1985年,Intel 80x86处理器进入第三代80386。80386处理器采用32位结构,数据总线为32位,地址总线也是32位,可寻址4GB(1GB=230B=1024MB)主存,时钟频率为16MHz、25MHz和33MHz。IA-32指令系统在兼容原16位80286指令系统的基础上,全面升级为32位,还新增了有关位操作、条件设置等指令。
80386除保持与80286兼容外,还提供了虚拟8086工作方式(Virtual 8086 Mode)。虚拟8086工作方式是在保护方式下的一种特殊状态,类似于8086工作方式但又接受保护方式的管理,能够模拟多个8086处理器。32位PC的Windows操作系统采用保护方式,其MS-DOS命令行(环境)就是虚拟8086工作方式,而早期采用的DOS操作系统是以实方式为基础建立的。
2.80486
1989年,Intel公司推出80486处理器。它的内部集成了120万个晶体管,最初的时钟频率为25MHz,很快发展到33MHz和50MHz。从结构上来说,80486=80386+80387+8KB Cache,即80486把80386处理器与80387数学协处理器和8KB高速缓冲存储器(Cache)集成在一个芯片上,使处理器的性能大大提高。
传统上,中央处理单元主要是整数处理器。为了协助处理器处理浮点数据(实数),Intel公司设计了数学协处理器,后被称为浮点处理单元(Floating-point Processing Unit,FPU)。配合8086和8088整数处理器的数学协处理器是8087,配合80286的数学协处理器是80287,配合80386的数学协处理器是80387。而从80486开始,FPU已经被集成到处理器中。这样,IA-32处理器的指令系统也就包含了浮点指令,能够直接对浮点数据进行处理。
3.Pentium系列
Pentium芯片应该称为80586处理器,因为数字很难进行商标版权保护而特意取名。其实,Pentium是源于希腊文“pente”(数字5),再加上后缀-ium(化学元素周期表中命名元素常用的后缀)变化而来的。同时,Intel公司为其取了一个响亮的中文名称“奔腾”,并进行了商标注册。
Intel公司于1993年推出Pentium处理器,于1995年正式推出Pentium Pro处理器(原来被称为P6,中文名称为“高能奔腾”)。在处理器结构上,Pentium处理器主要引入了超标量(Superscalar)技术,Pentium Pro处理器主要采用了动态执行技术来提升处理器性能。它们增加了若干条整数指令,完善了浮点指令。
前面所述的各代IA-32处理器都新增了若干条实用指令,但非常有限。为了顺应微机向多媒体和通信方向发展,Intel公司及时在其处理器中加入了多媒体扩展(MultiMedia eXtension,MMX)技术。MMX技术于1996年正式公布,它在IA-32指令系统中新增了57条整数运算多媒体指令,可以用这些指令对图像、音频、视频和通信方面的程序进行优化,使微机对多媒体的处理能力较原来有了大幅度提升。带有MMX技术的Pentium处理器就是Pentium MMX(多能奔腾)。带有MMX技术的Pentium Pro处理器就是1997年推出的Pentium Ⅱ。
1999年,针对互联网和三维多媒体程序的应用要求,Intel公司在Pentium Ⅱ的基础上又新增了70条SSE(Streaming SIMD Extensions)指令(原称为MMX-2指令),开发了Pentium Ⅲ。SSE指令侧重于浮点单精度多媒体运算,极大地提高了浮点3D数据的处理能力。SSE指令类似于AMD公司发布的3D Now!指令。由于这些多媒体指令具有显著的单指令多数据(Single Instruction Multiple Data,SIMD)处理能力,即一条指令可以同时进行多组数据的操作,因此现在将其统称为SIMD指令。
2000年11月,Intel公司推出Pentium 4,它新增了76条SSE2指令集,侧重于增强浮点双精度多媒体运算能力。2003年,新一代Pentium 4处理器又新增了13条SSE3指令,用于补充、完善SIMD指令集。