您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > 微机原理与接口技术ppt 第2章 IA-32结构微处理器与8086
同济大学电信学院第2章IA-32结构微处理与80862.18086/8088CPU2.28086/8088外围电路2.380286CPU2.480386/80486CPU2.5PentiumCPU同济大学电信学院2.1IA-32微处理器是8086的延伸IA-32结构微处理器的增长基本上按摩尔定律发展,已经经历许多代。但从使用者(包括程序员)的角度来看,它是以8086处理器为基础,是一个兼容的微处理器系列,是8086在功能上和性能上的延伸。同济大学电信学院2.1.18086功能的扩展1.从16位扩展为32位8086是16位微处理器。它的内部寄存器的主体是16位的。它的主要用于存放操作数的数据寄存器是16位的。它的主要的用作为地址指针的指针寄存器也是16位的。依赖分段机制,用20位段基地址加上16位的偏移量形成了20位的地址,以寻址1MB的物理地址。同济大学电信学院1985年,Intel公司推出了第一个32位的微处理器--80386,开创了微处理器的32位时代。目前,计算机正从32位向64位转移。32位地址能寻址4GB物理地址。到目前,仍远大于主流计算机的实际内存配置,仍有广阔的应用余地。2.1.18086功能的扩展同济大学电信学院2.从实模式至保护模式当1981年,IBM公司刚推出IBM-PC时,主频是5MHz,内存是64KB-128KB,没有硬盘,只有单面单密度的软盘,到了PC/XT,才有10MB硬盘。在这样的硬件资源下,采用的操作系统是PC-DOS(MS-DOS)。这是单用户、单任务的磁盘操作系统。2.1.18086功能的扩展同济大学电信学院从80286开始,在80386中真正完善保护模式。在保护模式下,程序运行于四个特权级。这样,可以实现操作系统核心程序与应用程序的严格的隔离。保护模式支持多任务机制,任务之间完全隔离。2.1.18086功能的扩展同济大学电信学院3.片内存储管理单元-MMU32位地址,可寻址4GB物理地址。但应用程序却需要庞大的地址空间。因此,在操作系统中提供了虚拟存储器管理机制,而这要求硬件支持。因而,在80386中提供了片内的MMU。提供了4K页、页表等支持。2.1.18086功能的扩展以上三点是80386相对于8086的主要功能扩展。同济大学电信学院4.浮点支持工程应用、图形处理、科学计算等要求浮点支持(实数运算)。因此,自80486芯片开始,在IA-32微处理器中集成了x87(及其增强)浮点单元。2.1.18086功能的扩展同济大学电信学院5.MMX技术为支持多媒体技术的应用,如音乐合成、语音合成。语音识别、音频和视频压缩(编码)和解压缩(译码)、2D和3D图形(包括3D结构映像)和流视频等等。IA-32处理器中增加MMX技术及相应的指令。2.1.18086功能的扩展同济大学电信学院6.数据流SIMD扩展(StreamingSIMDExtensions-SSE)自PentiumIII处理器开始,在IA-32微处理器中引进了数据流SIMD(单指令多数据)扩展(SSE)技术。SSE指令集包括了70条指令,其中包含提高3D图形运算效率的50条SIMD浮点运算指令、12条MMX整数运算增强指令、8条优化内存中连续数据块传输指令。2.1.18086功能的扩展同济大学电信学院奔腾4处理器又进一步扩展为数据流SIMD扩展2(StreamingSIMDExtensions2-SSE2)。SSE2使用了144个新增指令,扩展了MMX技术和SSE技术,这些指令包含了128位SIMD整数算术指令和128位SIMD双精度浮点指令。2.1.18086功能的扩展同济大学电信学院在SSE2的基础上又增加了13个额外的SIMD指令。SSE3(StreamingSIMDExtensions3)中13个新指令的主要目的是改进线程同步和特定应用程序领域,例如媒体和游戏。这些新增指令强化了处理器在浮点转换至整数、复杂算法、视频编码、SIMD浮点寄存器操作以及线程同步等五个方面的表现,最终达到提升多媒体和游戏性能的目的。2.1.18086功能的扩展同济大学电信学院1.利用流水线技术提高操作的并行性提高性能的一个重要方面是利用超大规模集成电路的工艺与制造技术提高芯片的主频。即减少一个时钟周期的时间。提高性能的另一重要方面是缩短执行指令的时钟周期数。在8086中,利用流水线把取指令与执行指令重叠,减少了等待取指令的时间,从而使大部分指令的执行为四个时钟周期。2.1.28086性能的提高同济大学电信学院80386利用芯片内由6个能并行操作的功能部件组成,从而使执行一条指令缩短为两个时钟周期。2.1.28086性能的提高80486将80386处理器的指令译码和执行部件扩展成五级流水线,进一步增强了其并行处理能力,在五级流水线中最多可有五条指令被同时执行,每级都能在一个时钟周期内执行一条指令,80486微处理器最快能够在每个CPU时钟周期内执行一条指令。同济大学电信学院到了奔腾处理器增加了第二个执行流水线以达到超标量性能(两个已知的流水线u和v,一起工作能实现每个时钟执行两条指令)。2.1.28086性能的提高同济大学电信学院IntelPentium4处理器是第一个基于IntelNetBurst微结构的处理器。(1)它允许处理器能在比以前的IA-32处理器更高的时钟速度和性能等级上进行操作。(2)IntelPentium4处理器有快速的执行引擎、Hyper流水线技术与高级的动态执行。使指令执行的并行性进一步提高,从而做到在一个时钟周期中可以执行多条指令。2.1.28086性能的提高同济大学电信学院2.引入片内缓存(CACHE)随着超大规模集成电路技术的发展,存储器的集成度和工作速度都有了极大的提高。将CACHE集成到CPU内有利于速度的提高。2.1.28086性能的提高同济大学电信学院总之,IA-32系列处理器芯片就是沿着这样的思路发展的。因此,8086是IA-32系列处理器的基础。而且,任一种IA-32处理器芯片在上电后,就是处在8086的实模式。根据需要,用指令进入各种操作模式。所以,学习IA-32处理器必须学习掌握8086,也只能从8086入手。2.1.28086性能的提高同济大学电信学院2.1.38086/8088的功能结构CSDSSSESIP段寄存器内部寄存器I/O控制电路16位∑20位地址加法器图2.18086微处理器组成原理执行部件(EA)AHALAXBHBLBXCHCLCXDHDLDXSPBPDISI通用寄存器ALU指令缓冲队列运算寄存器状态寄存器执行部件控制电路12345616位总线接口部件(BIU)外部总线8位8086CPU的指令队列为6B8088CPU的指令队列为4B同济大学电信学院CSDSSSESIP段寄存器内部寄存器I/O控制电路16位∑20位地址加法器图2.18086微处理器组成原理执行部件(EA)AHALAXBHBLBXCHCLCXDHDLDXSPBPDISI通用寄存器ALU指令缓冲队列运算寄存器状态寄存器执行部件控制电路12345616位总线接口部件(BIU)外部总线8位8086/8088CPU从功能上来说分成两大部分:总线接口单元BIU(BusInterfaceUnit)和执行单元EU(ExecutionUnit)。BIU功能:BIU负责8086CPU与存储器之间的信息传送。具体地说,即BIU负责从内存的指定单元取出指令,送至指令流队列中排队(8086的指令流队列是6个字节,8088的指令流队列是4个字节);在执行指令时所需的操作数,也由BIU从内存的指定区域取出,传送给EU部分去执行。2.1.38086/8088的功能结构同济大学电信学院2.1.38086/8088的功能结构CSDSSSESIP段寄存器内部寄存器I/O控制电路16位∑20位地址加法器图2.18086微处理器组成原理执行部件(EA)AHALAXBHBLBXCHCLCXDHDLDXSPBPDISI通用寄存器ALU指令缓冲队列运算寄存器状态寄存器执行部件控制电路12345616位总线接口部件(BIU)外部总线8位当运算结束,BIU将运算结果送入指定的内存单元或外设。当队列空时,EU就等待,直到有指令为止。当8088队列空出一个字节,8086空出两个字节时,BIU就自动执行一次取指令周期,将新指令送入队列。若BIU正在取指令,EU发出访问总线的请求,则必须等BIU取指完成后,该请求才能得到响应。一般情况下,程序顺序执行,当遇到跳转指令时,BIU就使指令队列清空,从新地址取出指令并立即传给EU执行。同济大学电信学院2.1.38086/8088的功能结构CSDSSSESIP段寄存器内部寄存器I/O控制电路16位∑20位地址加法器图2.18086微处理器组成原理执行部件(EA)AHALAXBHBLBXCHCLCXDHDLDXSPBPDISI通用寄存器ALU指令缓冲队列运算寄存器状态寄存器执行部件控制电路12345616位总线接口部件(BIU)外部总线8位EU功能:指令的执行其中主要由数据寄存器、指针寄存器与算术逻辑单元(ALU)组成。EU从指令队列取出指令代码,将其译码,发出相应的控制信号,数据在ALU中进行运算,运算结果的特征保留在标志寄存器中。同济大学电信学院2.1.38086/8088的功能结构CSDSSSESIP段寄存器内部寄存器I/O控制电路16位∑20位地址加法器图2.18086微处理器组成原理执行部件(EA)AHALAXBHBLBXCHCLCXDHDLDXSPBPDISI通用寄存器ALU指令缓冲队列运算寄存器状态寄存器执行部件控制电路12345616位总线接口部件(BIU)外部总线8位EU和BIU之间的配合(1)当8088队列空出一个字节,8086空出两个字节时,BIU就自动执行一次取指令周期,将新指令送入队列。(2)每当EU准备执行一条指令时,总是到指令队列中取指令,在指令执行过程中,执行单元需要使用总线时,只有总线空闲时,即总线接口单元不取指令时,才能使用总线访问内存或外设。同济大学电信学院2.1.38086/8088的功能结构CSDSSSESIP段寄存器内部寄存器I/O控制电路16位∑20位地址加法器图2.18086微处理器组成原理执行部件(EA)AHALAXBHBLBXCHCLCXDHDLDXSPBPDISI通用寄存器ALU指令缓冲队列运算寄存器状态寄存器执行部件控制电路12345616位总线接口部件(BIU)外部总线8位(3)当指令队列满,且执行单元不使用总线时,总线进入空闲状态。(4)在执行转移指令、调用指令和返回指令时,指令队列中指令自动清除,BIU会接着往指令队列中装入另一个程序段中的指令。同济大学电信学院2.1.38086/8088的功能结构CSDSSSESIP段寄存器内部寄存器I/O控制电路16位∑20位地址加法器图2.18086微处理器组成原理执行部件(EA)AHALAXBHBLBXCHCLCXDHDLDXSPBPDISI通用寄存器ALU指令缓冲队列运算寄存器状态寄存器执行部件控制电路12345616位总线接口部件(BIU)外部总线8位取指部分与执行指令部分是分开的,于是在一条指令的执行过程中,就可以取出下一条(或多条)指令,在指令流队列中排队。在一条指令执行完以后就可以立即执行下一条指令,减少了CPU为取指令而等待的时间,提高了CPU的利用率,提高了整个运行速度。同济大学电信学院如前所述,在8080与8085以及标准的8位微处理器中,程序的执行是由取指和执行指令的循环来完成的。即执行的顺序为取第一条指令,执行第一条指令;取第二条指令,执行第二条指令;……直至取最后一条指令,执行最后一条指令。这样,在每一条指令执行完以后,CPU必须等待到下一条指令取出来以后才能执行。2.1.38086/8088的功能结构同济大学电信学院但在8086/8088中,由于BIU和EU是分开的,所以,取指和执行可以重叠进行。2.1.38086/8088的功能结构同济大学电信学院2.1.48086/8088微处理器的执行环境8086处
本文标题:微机原理与接口技术ppt 第2章 IA-32结构微处理器与8086
链接地址:https://www.777doc.com/doc-3971623 .html