您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > 第2章微处理器与指令系统.
2-1第二章微处理器和指令系统2.1Intel系列微处理器概述2.28086/8088微处理器2.3Pentium微处理器2.4Pentium微处理器指令系统2-22.1.18086/8088微处理器2.1.280486微处理器2.1.3Pentium微处理器(80586)2.1.4PentiumPro微处理器2.1.5PentiumⅡ微处理器2.1.6PentiumⅢ微处理器2.1.7Pentium4微处理器2.1Intel系列微处理器概述2-32.1.18086/8088微处理器8086是1978年推出的全16位微处理器,8088是1978年推出的准16位微处理器。二者除外数据总线位数(8086为16位,8088为8位)及与此相关的部分逻辑稍有差别外,内部结构和基本性能相同,指令系统完全兼容。在8086/8088的设计中,引入了两个重要的结构概念:指令流水线存储器分段这两个概念在以后升级的Intel系列微处理器中一直被沿用和发展。正是这两个概念的引入,使8086/8088比原来的8位MPU在运行速度、处理能力和对存储空间的访问等性能方面有很大提高。2-42.1.280486微处理器1.内部寄存器的容量都扩充到了32位或以上,具有全32位数据处理能力,并可进行64位的数据运算。2.片内存储管理部件可实现段页式存储管理,比80286可提供更大的虚拟存储空间和物理存储空间。3.新增了一种保护模式下的工作方式,即虚拟8086方式。4.指令流水线增加到了6级。5.提供了32位外部总线接口,最大数据传输速率显著提高。80486是继80386之后推出的第二代32位高性能微处理器,它以提高性能和面向多处理器系统为主要目标。80486继承了80386的各种优点,表现在以下几方面:2-52.1.280486微处理器1.片内集成了一个浮点运算单元FPU。2.内含一个8KB的数据与指令合用的Cache。3.采用RISC技术。使芯片内的不规则控制部分减少,同时常用基本指令采用硬件逻辑控制执行,使基本指令可以用一个时钟周期完成。4.采用一种突发总线(BurstBus)的技术。使取得一个地址后,与该地址相关的一组数据可以连续输入/输出,有效地解决了微处理器同内存储器之间的数据交换问题。5.面向多处理器结构,增加了支持多机操作的指令。除以上80386、80486共有的特点之外,80486也采用了许多新技术:2-62.1.3Pentium微处理器(80586)1.采用超标量体系结构。2.内置的浮点运算部件采用超流水线技术。3.增加了分支指令预测。4.内置了指令和数据两个独立的超高速缓存器,避免了预取指令和数据可能发生的冲突。Pentium是一种高性能的32位微处理器。其对80486作了下列重大改进:2-75.采用64位外部数据总线。6.引入了大型机中采用的内部错误检测、功能冗余检验和错误报告等自诊断功能。7.进行了更多的可测性设计。8.提供了独特的性能监察功能,以利于软、硬件产品的优化和升级。9.提供了灵活的存储器页面管理。2.1.3Pentium微处理器(80586)2-8精简指令集技术。二级缓冲结构。乱序执行和预测执行技术。三级超标量和14级超流水线结构。寄存器重命名技术2.1.4PentiumPro微处理器简称P6,中文名为“高能奔腾”。在体系结构中采用了许多新的思想和新的技术:2-92.1.5PentiumⅡ微处理器P6级微处理器的第二代产品,从系统结构角度看,主要采用了以下几种先进技术:采用了由三种创新处理技巧结合的动态执行技术,即:多分支预测、数据流分析和推测执行。双重独立总线技术(DIB,DualIndependentBus)■多媒体增强技术(MMX技术)采用单指令流多数据流SIMD技术新增加了57条功能强大的MMX指令2-102.1.6PentiumⅢ微处理器PentiumⅢ是第三代P6级微处理器产品。与PentiumⅡ相比,有如下改进:前端总线的时钟频率为100MHz(采用0.18μm新工艺的PentiumⅢ,其前端总线达到133MHz)。将256KB的L2Cache集成到了芯片内。增加了70条流式单指令多数据扩展SSE指令。首次设置了处理器序列号PSN。2-112.1.7Pentium4微处理器1.采用了超级管道技术,使用长达20级的分支预测/恢复管道,而P6只有10级。2.它的简单算术逻辑单元(ALU)采用2倍的处理器核心频率运行。3.动态执行技术中的指令池能容下126条指令。4.内含一个4KB的分支目标缓冲。5.增加了由144条新指令组成的SSE2。它是第一个非P6核心结构的全新32位微处理器,与P6级微处理器相比,主要结构特点如下:2-122.28086/8088微处理器内部结构指令流水线存储器分段8086是全16位微处理器,8088是准16位微处理器。二者除了外数据总线位数及与此相关的部分逻辑稍有差别外,内部结构和基本性能相同,指令系统完全兼容。2-131.内部结构2.28086/8088微处理器20位ABEU控制电路总线控制电路通用寄存器累加器基址寄存器计数寄存器数据寄存器堆栈指针基址指针目的变址源变址指针寄存器变址寄存器地址加法器运算暂存器ALU标志寄存器指令指针内部暂存器指令队列总线接口单元(BIU)执行单元(EU)外部总线8086/8088DB8088:8位8086:16位∑CSDSSSESIP1234568位80888086AXAHALBXBHBLCXCHCLDXDHDLSPBPDISIALUDB16位2-142.指令流水线指令队列的存在使EU和BIU并行工作,取指令和分析、执行指令操作可重叠进行,形成了两级指令流水线结构,减少了CPU等待时间,提高了CPU的利用率,加快了整机运行速度,降低了对存储器存取速度的要求。取指令1取指令2取数据1取指令3存结果1取指令4取指令5…等待译码1执行1译码2执行2译码3…BIUEU8086/8088的指令“流水”操作2.28086/8088微处理器2-15将1MB的物理存储空间分成若干个逻辑段,每段大小为64KB。64KB30000H(段基址)段的起始单元地址叫段基址,存放在段寄存器中。通过4个段寄存器,CPU每次可同时对4个段进行寻址。3.存储器分段2.28086/8088微处理器内存00000H00001H00002H00003HFFFFFH2-16分段方式不唯一,各段之间可以连续、分离、部分重叠或完全重叠,这主要取决于对各个段寄存器的预置内容。2.28086/8088微处理器1000H2000H3100H3100H代码段(64KB)堆栈段(64KB)数据段与附加数据段重叠(64KB)CS10000H20000H31000HSSDSES1FFFFH2FFFFH……40FFFH……………存储器分段结构示例2-17物理地址是1MB存储空间中的某一单元地址,用20位地址码表示,CPU访问存储器时,地址总线上送出的就是物理地址。逻辑地址在编程时采用,由段基址和偏移地址组成,两者均为16位。内存20000H20A00H0A00H物理地址20A00H逻辑地址2000物理地址和逻辑地址2.28086/8088微处理器2-18逻辑地址与20位物理地址的变换关系:物理地址=段基址×16+偏移地址偏移地址段基址段基址000020位物理地址逻辑地址150150左移四位190∑地址加法器逻辑地址与物理地址的变换2.28086/8088微处理器2-192.3Pentium微处理器2.3.1内部结构与外部引脚2.3.2内部寄存器2.3.3Pentium的四种工作方式2-20Pentium在结构上由如下功能部件组成:整数执行单元浮点单元指令Cache和数据Cache指令预取单元指令译码单元地址转换与管理单元总线接口单元控制单元这些功能部件除地址转换与管理单元与80386/80486保持兼容外,其他都进行了重新设计。2.3.1内部结构和外部引脚2-211.内部结构地址转换与存储管理单元APICDP逻辑控制ROM浮点单元8KB指令高速缓存TLB预取地址指令预取单元指令译码单元总线单元8KB数据高速缓存TLB控制单元地址生成U流水线地址生成V流水线整数寄存器组ALUU流水线ALUV流水线控制寄存器组加法除法乘法桶形移位器控制指令指针分支检验与目标地址32位地址总线323232326464位数据总线数据控制控制64位数据总线32位地址总线分支目标缓冲器32323280802.2.1内部结构和外部引脚1)总线接口单元主要用于管理访问外部存储器和I/O端口必须的地址、数据和控制总线,完成预取指令、读/写数据等总线操作。2)整数执行单元由“U”和“V”两条指令流水线构成超标量流水线结构,其中每条流水线都有自己的ALU、地址生成逻辑和Cache接口。3)预取缓冲单元预取缓冲单元在总线接口单元空闲时,负责提前去内存或指令Cache预取指令。其指令预取缓冲器在前一条指令执行结束之前可以预取多达94个字节的指令代码。4)指令译码单元将预取的指令译成Pentium可以执行的控制信号并送控制单元。对绝大多数指令来说,Pentium微处理器可以做到每个时钟周期以并行方式完成两条指令的译码操作。5)控制单元负责解释来自指令译码单元的指令字和控制ROM的微代码。控制部件的输出直接控制两条指令流水线和浮点单元。6)地址转换与存储管理单元Pentium的地址转换与存储管理单元与80386/80486保持完全兼容,由分段和分页部件组成。Pentium除继续支持4KB大小的页面外,还允许使用高达4MB的页面,从而减少了页面切换的频率,并加快了某些应用程序的执行。7)独立的指令Cache和数据CachePentium片内有两个8KB的超高速缓存器,一个是指令Cache,一个是数据Cache。指令和数据分别使用不同的Cache,使Pentium中数据和指令的存取减少了冲突,提高了性能。8)浮点运算单元2-222.Pentium的外部引脚InterPentiumCPU写顺序控制总线地址总线CLKPRDYR/SHLDAIBTIVIU模式探针执行跟踪TDITMSTRSTRESETTCKTDOBUSCHKFRCMCSMINMIIERRFREEIGNNESMIACTBREQHOLDBOFFINITINTREWBEWB/WTFLUSHKENPWTPCDNAINVAPCHKPCHKPENW/RM/IOADSD/CSCYCLOCKCACHEBRDYAHOLDEADSHITHITMAP时钟初始化中断控制缓存高速内部出错浮点错余检测功能冗理模式系统管测试访问期定义总线周总线仲裁总线周期错数据总线偶校验数据奇地址屏蔽偶校验地址奇断点/性能检测A31~A3BE7~BE0A20MD63~D0DP7~DP0BT3~BT0BP3BP2PM1/BP1PM0/BP02-23基本寄存器系统级寄存器调试和模型专用寄存器浮点寄存器Pentium的内部寄存器,按功能可分为4类:2.3.2Pentium内部寄存器2-242.3.2Pentium内部寄存器标志寄存器指令指针寄存器EFLAGSFLAGSEIPIP311503115031161570通用寄存器EAXAHAXALEBXBHBXBLECXCHCXCLEDXDHDXDLEDIDIESISIEBPBPESPSP1.基本寄存器选择器CSSSDSESFSGS150630描述符高速缓存器段寄存器EIP用于保存下一条待预取指令相对于代码基址的偏移量。它的低16位也可单独访问,称之为IP。2-25标志寄存器位定义2.3.2Pentium内部寄存器CFEFLAGSFLAGS313029282726252423222120191817161514131211109876543210ACVMRF0NTIOPLOFDFIFTFSFZF0AF0PF0X对准检查标志X虚拟86模式标志X恢复标志X嵌套标志X特权级标志S溢出标志C方向标志X中断允许标志X自陷标志S符号标志S零标志S
本文标题:第2章微处理器与指令系统.
链接地址:https://www.777doc.com/doc-2154986 .html