自从1978年6月推出8086微处理器以后,到1999年初PentiumⅢ芯片问世,80x86系列微处理器不仅在PC机市场占有主流地位,同时正向计算机各个应用领域发展。本节简要介绍8086以后各种x86芯片的主要特点,使读者对整个80X86系列的发展有一个全面了解。前一单元fix = o ns = "urn:schemas-microsoft-com:office:office" />
一、Inel 80286 微处理器的基本情况
80286是美国Intel公司于1982年推出的一种高性能的16位微处理器。片内集成有存储管理和保护机构,能用四层特权支持操作系统和任务的分离,同时也支持任务中的程序和数据的保密。80286是8086向上兼容的微处理器,它有两种工作方式——实方式(又称实地址方式)和保护方式(又称保护虚地址方式)。在实方式中,80286兼容了8086的全部功能,8086的汇编语言源程序不做任何修改可以在80286中运行。在保护方式中,80286把实方式的能力和存储器管理,对虚拟存储器的支持以及对地址空间的保护集为一体,使80286能可靠地支持多用户和多任务系统。80286有24条地址线,在实方式下只使用20条地址线,有220字节(1MB)的寻址能力,这与8086相同;在保护方式下,使用24条地址线,有224字节(16MB)寻址能力,它能将每个任务的230字节(1024MB即1GB)的虚地址映射到224字节的物理地址中去。
二、Intel 80386微处理器的基本结构
80386是Intel公司于1985年1月推出的一种高性能的32位微处理器它与8086、80286相兼容,是为高性能的应用领域与多用户、多任务操作系统而设计的一种高集成度的芯片。80386具有片内集成的存储器管理部件和保护机构,它的数据线是32位,内部的寄存器结构和操作也是 32位,具有32位地址线,能直接寻址4GB(1GB为10243B )的物理地址空间。它的虚拟存储空间为64TB (1TB为10244B)。
三、Intel 80486微处理器的基本结构
Intel公司于1989年4月推出了一种新的32位微处理器80486(简称486),同 80386相比,在相同的工作频率下,其处理速度提高了2~4倍。80846采用了RISC(Reduced Instruction Set Computer,精简指令系统计算机)技术,降低了执行每条指令所需要的时钟数,使其能达到1.2条指令/时钟。486以前的处理器执行一条指令是取得一个地址,再进行一个数据的输入/输出,而486采用一种突发式总线(Burst Bus)的技术,使取得一个地址后、与该地址相关的一组数据都可以进行输入/输出,有效地解决了微处理器同内存储器之间的数据交换问题。加上486内部集成有FPU(Floating Point Unit,浮点部件)和Cache(超高速缓冲存储器),以及CPU和FPU、CPU和Cache之间都采用高速总线进行数据传送,使486CPU的处理速度,以及486系统的处理速度都得到了极大提高。
四、Intel Pentium微处理器
Pentium是Intel公司于1993年3月推出的第五代80x86系列微处理器、简称P5或80586,中文名为“奔腾”。
Pentium 芯片具有如下特点。
(一)超标量流水线
Pentium由“U”和“V”两条指令流水线构成超标量流水线结构,其中,每条流水线都有自己的 ALU、地址生成逻辑和Cache接口。在每个时钟周期内可执行两条整数指令,每条流水线分为指令预取、指令译码、地址生成、指令执行和回写等五个步骤。当一条指令完成预取步骤时,流水线就可以开始对另一条指令的操作,极大地提高了指令的执行速度。
(二)重新设计的浮点部件
Pentium的浮点部件在80486的基础上作了重新设计,其执行过程分为8级流水,使每个时钟周期能完成一个浮点操作(或两个浮点操作)。采用快速算法可使诸如 ADD、MUL和LOAD等运算的速度最少提高3倍,在许多应用程序中利用指令调度和重叠(流水线)执行可使性能提高5倍以上。同时,用电路进行固化,用硬件来实现。
(三)独立的指令Cache和数据Cache
Pentium片内有两个8KB的Cache——双路Cache结构,一个是指令Cache,一个是数据 Cache。TLB(Translation look-aside buffer,转换后备缓冲器)的作用是将线性地址转换为物理地址。这两种Cache采用32×8线宽,是对Pentium 64位总线的有力支持。指令和数据分别使用不同的Cache, 使Pentium中数据和指令的存取减少了冲突 提高了性能。
Pentium的数据Cache有两个接口,分别与U和V两条流水线相连,以便能在相同时刻向两个独立工作的流水线进行数据交换。当向已被占有满的数据Cache写数据时,将移走一部分当前使用频率最低的数据,并同时将其写回内存,这种技术称为Cache回写技术。由于CPU向Cache写数据和将Cache释放的数据写回内存是同时进行的,所以,采用Cache回写技术将节省处理时间。
(四)分支预测
Pentium提供了一个称为BTB(Branch Target Buffer,分支目标缓冲器)的小Cache来动态地预测程序的分支操作。当某条指令导致程序分支时,BTB记忆下该条指令和分支目标的地址,并用这些信息预测该条指令再次产生分支时的路径,预先从该处预取,保证流水线的指令预取步骤不会空置。这一机构的设置,可以减少每次在循环操作时对循环条件的判断所占用的CPU的时间。
五、Intel Pentium Pro 微处理器
Pentium Pro是Intel公司于1995年11月推出的80x86系列中又一个新品种,简称P6,中文名为“高能奔腾”。同 Pentium芯片相比,Pentum Pro芯片增加了如下新的内容:
(1)芯片中 CPU内核为 550万个晶体管,二级高速缓冲存储器(L2 Cache)为 1550万个晶体管;
(2)使用三条超标量流水线;
(3)有5个并行的执行部件 用于整型数运算的2个,用于装载、存储和浮点数运算的各1个;
(4)采用事务型的I/O总线和不分块的高速缓存体系;
(5)采用乱序执行、动态转移预测以及风险执行。
Pentium Pro微处理器的主要特点可以从下面 6个方面进行说明。
(一)一个封装内装有两个芯片
Pentium Pro的一个封装内有两个紧密耦合的底座。一个底座放CPU以及两个 8KB的一级(L1)高速缓存;另一个底座放 256KB SRAM二级(L2)高速缓存。两个底座放在同一个387针脚的陶瓷封装里,称为双穴PGA(针脚网格阵列)。把二级高速缓存同CPU封在一起的好处是;①Pentium Pro内藏二级高速缓存解决了同 CPU的协调,使个人机厂家更容易设计出搭载 Pentium Pro的系统;②用64 位宽的、时钟频率同CPU一样的专用总线连接CPU和二级高速缓存有助于提高系统的性能。
(二)精心设计的微结构
Pentium Pro对二级高速缓存使用专用总线(L2总线也称后台总线)它同外部 I/O总线(也称前台总线)完全分开,使得 Pentium Pro的二级高速缓存用不着同内存、外设分时访问总线。另外 为满足超标量 CPU对数据的极大需求,Pentium Pro采用使一级和二级高速缓存用无阻塞方法来提高其性能,设计了一种高速缓存体系,使得能从一个高速缓存流动到另一个高速缓存而不用阻塞执行。在CPU取数时,Pentium Pro采用二种措施来提高其效率,一是使前台总线和后台总线保持独立,因而可以同时工作,二是前台总线为事务处理型的(transctional)。当Pentium Pro在等待完成存储器访问时,它可以开始另一个访问,多达8个这样的事务处理,效果是非常明显的,事务处理可以是装载或存放,每一次事务处理都记录在MOB(存储器次序缓冲区)中,因此CPU不会把它们搞乱。为了保持高速缓存和存储器之间的协调,Pentium Pro采用 NESI(修改、排斥、共享和作废)一致性协议。这保证了在单个和多个处理器系统中的高速缓存协调,它还可以防止由于自修改码引起的潜在事故。
(三)指令分解为微操作
设计Pentium Pro时面临的最大矛盾是要提高性能就要采用RISC(精简指令系统计算机,Reduction Instruction Set Computer)方式使指令能在流水线上并行执行;而要保持同以往的x86微处理器兼容,就要采用CISC(复杂指令系统计算机,Complex Instruction Set Computer)指令,这样才能使x86的庞大软件资源能在 Pentium Pro上运行。为了解决这一矛盾,一方面采用CISC指令以保持兼容性;另一方面在执行时将指令分解为若干像RISC指令的微操作,使其能在流水线上并行地执行,以提高性能。
(四)乱序执行和推测执行
乱序(Out-of-order)执行是指不完全按程序规定的指令顺序依次执行。推测(SPeculative)执行是指遇到转移指令时,不等结果出来便先推测可能往哪里转移便提前执行,由于推测不一定全对故带有一定风险,又称风险执行。乱序执行是P6等具有RISC性能的芯片富有生命力的特点,当它同转移推测和推测执行结合在一起时,允许CPU使指令流最有效地利用内部资源。
(五)保留站的作用
Pentium Pro中的乱序执行由一个名为保留站(Reservation Station)的部件进行管理,保留站起交通警的作用 它调度微操作从ROB(重新排序缓冲器)中取出来分发到多个执行部件中的顺序,以充分发挥流水线的能力。
(六)退离部件的作用
当微操作执行完后 其状态标志便被改变以表示已经完成,执行完的微操作返回到ROB中,微操作在那里等待执行或退移(Retirement),使用退移部件的作用是保持程序的完整,该部件将执行完的微操作组合在一起使其退出,从外部看仍是在执行一条条的CISC指令。
六、Intel Pentium MMX微处理器
1997年1月9日,Intel P55C微处理器芯片正式推出,英文全名为 Pentium with MMX或Pentium MMX,中文名为“多能奔腾”。MMX是“Multi Media extension”的缩写,意为“多媒体扩展”。这是为提高PC机用软件来处理多媒体和通信能力而推出的新一代处理器技术,是对LA-32(Intel Architecture, 32位Intel体系结构)指令系统的扩展,它通过在奔腾处理器中增加4种新的数据类型、8个64位寄存器和57条新指令来实现的。
多能奔腾中的MMX技术是Intel x86微处理器体系结构的重大革新,增加了很多新的技术,主要是:
(一)引入新的数据类型
多能奔腾定义了4种新的64位数据类型及其紧缩(又称“压缩”)表示,它们是紧缩字节(8个字节紧缩在一个64位数据中)、紧缩字(4个字紧缩在一个64位数据中)、紧缩双字(2个双字紧缩在一个64位数据中)和4字(一个64位信息)。而新增加的8个64位通用寄存器能够保存各类紧缩的64位数据。这对多媒体处理十分有用,例如处理一幅256级灰度的图像,由于图像像素数据通常以8位整数的字节表示,用MMX技术,8个这样的像素将紧缩为一个64位值并可移入一个MMX寄存器。当一条MMX指令执行时,它将从MMX寄存器中一次对所有8个像素值并行地完成其算术或逻辑操作,并将结果写入一个MMX寄存器,这样用MMX指令进行一次紧缩型字节操作,一次就相当于处理了8个像素。而且能在一个时钟周期内能执行2条指令,使多能奔腾的性能大大超过奔腾。
实际上这是采用SIMD(单指令流多数据流)技术的结果。它能运用单条指令同时并行处理多个数据元素的特性,在一个周期内并行处理4种类型,最多8组的64位宽度的模拟/数字数据,诸如声音数据、图形和图像数据等模拟/数字的数据,使并行性进一步增强。
(二)MMX指令执行的数据紧缩和饱和运算两种新的运算原刚
饱和运算也是MMX支持的一种新的运算,与常用的环绕处理相对比,可见饱和运算的优点所在。
在常规的环绕处理中,上溢或下溢的结果均被截断,只有结果的低位(有效位)能被返回,忽略了进位。而在饱和运算中,上溢或下溢的结果被截取(饱和)至该类数据类型的最大值或最小值,如表2-9所示。例如,一个16位的大符号整数F000H+4000H,其和为13000H,由于保留结果的寄存器为16位,因此最高位 位“1”被截断。结果为3000H,小于任一个输入数。而饱和算法则不同,在饱和算法中若发生“上溢”,则保留结果为FFFFH(16位整数的最大值)若发生“下溢”则保留结果为0000H。这在图形学中很有用。比如,一个暗色多面体正在按黑色作浓淡处理,忽然间出现一个白色的像素,而饱和算法可以保证不会出现这样的问题。因为计算结果被限制在最大的黑色值,而不会溢出成白色。
表2-9 饱和数值范围
|
下 限 |
上 限 | |||
带符号数 |
字节 节 |
16进制 |
10进制 |
16进制 |
10进制 |
80H 8000H |
-128 -32768 |
7FH 7FFFH |
127 32767 | ||
无符号数 |
字节 节 |
00H 000H |
0 0 |
FFH FFFFH |
255 65535 |
(三)具有积和运算能力
在多媒体应用程序中,必须处理大量数据,矢量点积和矩阵乘法是处理图像、音频、视频数据的最基本算法,用多能奔腾中的PMADDWD指令(紧缩字相乘并加结果,即“积和运算”)可以大大提高矢量点积的运算速度。这在音频和视频图像的压缩和解压缩中是经常用到的。
七、Intel PentiumⅡ微处理器
1997年5月,Intel公司推出PentiumⅡ微处理器,简称PⅡ,中文名为“奔腾Ⅱ”。
“奔腾Ⅱ”是Intel公司的P6级微处理器的第二代产品,它把多媒体增强技术(MMX技术)融合入高能奔腾处理器之中,使“奔腾Ⅱ”芯片既保持了“高能奔腾”原有的强大处理功能,又增强了PC机在三维图形、图像和多媒体方面的可视化计算功能和交互功能。从系统结构角度看,“奔腾Ⅱ”芯片采用了如下几种先进技术,使它在整数运算、浮点运算和多媒体信息处理等方面具有十分优异的功能。
(一)多媒体增强技术(MMX技术)
在“奔腾Ⅱ” 中采用了一系列多媒体增强技术:①单指令、多数据流(SIMD,Singl Instruction Multiple Data)技术,使一条指令能完成多重数据的工作,允许芯片减少在视频、声音、图像和动画中计算密集的循环;②为针对多媒体操作中经常出现的大量并行、重复运算,新增加了57条功能强大的指令,以更有效地操作、处理声音、图像和视频数据。强大的MMX技术指令集充分利用了动态执行技术,在多媒体和通信应用中发挥了卓越的功能。
(二)动态执行技术
为了帮助微处理器更有效地处理多重数据,提升软件的速度,“奔腾” 采用了由三种创新处理技巧结合的动态执行技术。这三种技巧是:①多分支跳转预测。使用一种多分支跳转预测的算法。当处理器读取指令时,也同时查看那些以前的指令,该技术增加了传送到处理器的数据流,能对数据流向事先作出考虑。②数据流分析。按一种最佳的顺序执行,使用数据流分析,处理器查看被译码的指令,决定是否符合处理条件或它们决定于其他指令。处理器然后决定最佳的处理顺序,以最有效的方法执行指令。③推测执行。通过预先查找程序计数器和执行那些可能会运行的指令,来增加被执行指令的数量。当处理同时执行5条指令时,便要用到“推测执行”,这使得“奔腾” 微处理器的超计算能力能充分得到发挥,以最大限度地提高指令的并行程度,从而提高软件性能。动态执行技术允许微处理器预测指令的顺序,并排序。
(三)双重独立总线结构(DIB, Dual Independent Bus)
采用了上述二种技术后,使 “奔腾Ⅱ”处理器具有很高的处理能力 但要发挥这一高性能还要求有很快的吞吐能力。而传统的CPU数据总线(如图2-24所示)CPU通过1条数据总线同主在、二级Cache以及PCI相连。这里会出现二个问题,一是二级Cnche受到处理器外部总线速度的限制;二是在任一时刻系统总线只允许一个访问使用。而“奔腾” 处理器采用了双重独立总线结构,如图2-25所示。这是由两条总线组成的双重独立总线体系结构,一条是二级Cache总线,另一条是处理器至主存储器的系统总线,“奔腾Ⅱ”处理器可以同时使用这两条总线,使“奔腾Ⅱ” 处理器的数据吞吐能力是单一总线结构处理器的2倍。同时,这种双重总线结构使“奔腾Ⅱ” 处理器的二级Cache的运行速度达到奔腾处理器二级Cache的2倍多。随着“奔腾Ⅱ” 处理器主频不断提高,二级Cache的速度也会随之升高。另外,流水线系统总线实现了同时并行事务处理,以取代单一顺序事务处理,加速了系统中的信息流,使总体性能得到提升。总之,这一切同双重独立总线体系结构的改进结合起来,提供3倍于单一总线体系结构处理器的带宽性能。
此外,“奔腾Ⅱ” 处理器还采用了新的封装技术——SEC(Single Edge Contact,单边接触)插盒。SEC插盒技术是先将芯片固定在基板上,然后用塑料和金属将其完全封装起来,形成一个SEC插盒封装的处理器,插盒内的基板上固定的芯片包括PentiumⅡ处理器核心,以及二级静态突发高速缓存RAM(安排在处理器核心左右各1个),如图2-26所示。这一SEC插盒通过slot1插槽同主板相连,为PC系统带来了高性能——动态执行功能和双重独分总线结构。
八、Intel PentiumⅢ 微处理器
1999年2月,Intel公司发布了带有70条附加浮点多媒体指令的PentiumⅢ微处理器,简称PⅢ,中文名为“奔腾Ⅲ”。
(一)带SSE指令集的PentiumⅢ处理器
最早推出的PentiumⅢ的主频为450MHz和500MHz,系统总线频率为100MHz,采用P6微结构,一级缓冲存储器为16KB指令Cache和 6KB数据 Cache;二级缓冲存储器为512KB,速度相当于CPU核心速度的1/2。针对32位应用程序进行优化,采用双重独立总线,具有动态执行功能。其最大的特点是增加了70条SSE(Streaming SIMD Extensions,数据流单指令多数据扩展)指令集,原先称为“MMX2指令集”,即“第二代多媒体扩展指令集”。PetiumⅢ原先称为“Katmai” ,是属于PentiumⅡ中的一种新品种。
PentiumⅢ芯片中的70条SSE指令可分为3类:
(1)内在连续数据流优化处理指令8条;
(2)SIMD(单指令多数据)浮点运算指令50条;
(3)新的多媒体指令12条。
这些指令能增强音频、视频和3D图形处理能力。
为配合SSE指令集,PentiumⅢ芯片增加了8个新的128位单精度寄存器(4 × 32位),能同时处理4个单精度浮点变量,可达到每秒20亿次的浮点运算速度。使PentiumⅢ芯片在三维图像处理、语音识别和视频实时压缩等方面的应用得到长足的进步。
(二)新一代PentiumⅢ微处理器Coppermine
1999年10月25日,Intel公司又发布了基于0.18μm技术制造的新一代PentiumⅢ微处理器,开发代号为Coppermine,该芯片最高主频达733MHz,可工作在133MHz外频(外部时钟频率)。
Coppermine的主要特性为:
(1)内置工作在核心频率下的256 KB二级缓存;
(2)采用0.18μ的制造工艺,在106mm2芯片上,集成了2800万个晶体管,而最早推出的Katmai在128mm2芯片上,集成了900万个晶体管。Coppermine芯片可工作在1.1~1.7V的电压下,发热量小,功耗低。
(3)采用先进的缓存转换架构。内置的二级Cache使用一条256位的宽带数据通路,相当于采用64位数据通路的另外二级Cache的4倍,每个时钟能转换32字节的二级缓存,使在处理器核心与二级Cache之间的理论数据带宽达11.2GB/s。
(4)采用先进的系统缓冲器,用6个填充缓冲器代替原先的4个填充缓冲器用8条总线队列代替原先的4条总线队列,用4个回写缓冲器代替原先的1个,使Coppermine在133MHz时钟总线上运行时更具优势。
(5)采用适用于移动PC系统的Speedstep技术。这一技术可以使Coppermine降低运行速度和电压以降低电源功耗,延长运行时间,这对使用电池的移动式PC系统具有实用意义;而当使用外接电源时,可以全速与全电压方式运行,提高了系统的灵活性。
本文标签:广东自考 工学类 微型计算机原理及应用学习笔记 从8086到PentiumⅢ
转载请注明:文章转载自(http://www.gdzkw.net)
热点关注: