
微机原理与接口技术第9章IntelIA-32处理器结构与原理
微机原理与接口技术 / 1 第9章 Intel IA-32处理器结构与原理

微机原理与接口技术2.1Pentium处理器2.1.1Pentium处理器的特性·80x86系列微处理器兼容·有64位数据总线、32位地址总线,寻址空间4GB。·RISC型超标量结构两个5级整数指令流水线,一个8级浮点流水线。具有超级流水线技术的高性能浮点运算器,数据-代码分离式高速缓存,符合MESI协议。·增强的错误检测和报告功能·利用片上分支目标缓冲器提高分支指令预测准确性,常用的指令不采用微程序设计,而改用硬件实现。·支持64位外部数据总线突发传输方式·通过APIC总线支持多处理器系统
微机原理与接口技术 / 2 2.1 Pentium处理器 • 80x86系列微处理器兼容 • 有64位数据总线、 32位地址总线,寻址空间4GB。 • RISC型超标量结构 - 两个5级整数指令流水线,一个8级浮点流水线。 • 具有超级流水线技术的高性能浮点运算器。 • 数据-代码分离式高速缓存,符合MESI协议。 • 增强的错误检测和报告功能。 • 利用片上分支目标缓冲器提高分支指令预测准确性。 • 常用的指令不采用微程序设计,而改用硬件实现。 • 支持64位外部数据总线突发传输方式 • 通过APIC总线支持多处理器系统 2.1.1 Pentium处理器的特性

2.1.2 Pentium处理器的内部结构与工作原理里与接口技术①=指令预取②=首次译码预取分支目标TLB代码地址缓冲器Cache 8KB③=二次译码分支检测和目标地址256位1④=指令执行预取缓冲存储器控制指令指令译码部件ROM2指针?=写回R总线接口部件64位数控制部件据总线地址生成地址生成32位地?浮点部件分页部件(U流水线V流水线)址总线控制寄存器组控制整数寄存器组ALUALU加法器4(U流水线V流水线)桶形移位器除法器?64位数32位32位32位地80据总线数据Cache址总线乘法器位8KB32位32位80位TLB32位32位31
微机原理与接口技术 / 3 分支目标 缓冲器 代码 Cache 8KB TLB 指令 指针 预取缓冲存储器 指令译码部件 256位 总 线 接 口 部 件 分 页 部 件 64位数 据总线 预取 地址 32位地 址总线 控制 控 制 部 件 地址生成 (U流水线) 地址生成 (V流水线) 控制 ROM ALU (U流水线) ALU (V流水线) 整数寄存器组 桶形移位器 数据 Cache 8KB TLB 浮点部件 控制 寄存器组 加法器 除法器 乘法器 80位 80 位 分 支 检 测 和 目 标 地 址 64位数 据总线 32位地 址总线 32位 32位 32位 32位 32位 32位 ① ② ③ ④ ⑤ ①=指令预取 ②=首次译码 ③=二次译码 ④=指令执行 ⑤=写回R 2.1.2 Pentium处理器的内部结构与工作原理

微机原理与接口技术指令配对规则配对的指令必须是简单指令两条指令之间不可存在“写后读”或“写后写”这样的寄存器相关性一条指令不能同时既包含位移量又包含立即数带前缀(JCC指令的OF除外)的指令只能出现在U流水中浮点运算指令不能和任何指令配对(FCXH除外)下面两条指令是否可配对?200MOV AX,M0V AX, 200AXMOVCX,MOV AX, 41211写后读写后写
微机原理与接口技术 / 4 指令配对规则 • 配对的指令必须是简单指令 • 两条指令之间不可存在“写后读”或“写后写”这 样的寄存器相关性 • 一条指令不能同时既包含位移量又包含立即数 • 带前缀(JCC指令的OF除外)的指令只能出现在U 流水中 • 浮点运算指令不能和任何指令配对(FCXH除外) MOV AX, 200 MOV CX, AX MOV AX, 200 MOV AX, 412

微机原理与接口技术2.2P6微结构的处理器L2 Cache后端总线2.2.1P6微结构概述Pentium Il采用12级3流水超标量结构多路分支预测FSB前端总线预测分支未来的方向,为处理器预内存北桥先译码分支之后的指令提供依据·动态数据流分析-处理器分析几条指令的数据相关性和资源可用性-以优化的执行顺序高效地乱序执行这些指令·推测执行在假设分支走向基础上,执行其中一路指令流·双独立总线结构-后端总线连接到L2Cache上-前端总线FSB主要负责主存储器的信息传送操作5
微机原理与接口技术 / 5 2.2 P6微结构的处理器 2.2.1 P6微结构概述 • 采用12级3流水超标量结构 • 多路分支预测 -预测分支未来的方向,为处理器预 先译码分支之后的指令提供依据 • 动态数据流分析 - 处理器分析几条指令的数据相关性和资源可用性 - 以优化的执行顺序高效地乱序执行这些指令 • 推测执行 - 在假设分支走向基础上,执行其中一路指令流 • 双独立总线结构 - 后端总线连接到L2 Cache上 - 前端总线FSB主要负责主存储器的信息传送操作 Pentium II 北桥 内存 FSB 前端总线 L2 Cache 后端总线

微机原理与接口技术关于乱序执行技术为了提高指令流的执行效率,乱序执行核心监视很多条指令,然后在不损失数据完整性的前提下,采用能充分发挥多个处理部件并行工作的指令顺序来执行。这个指令顺序可能和原始程序的不一样。1) A=B+C2) P=A*23) Q=D-E1)和3)可配对同时执行6
微机原理与接口技术 / 6 关于乱序执行技术 为了提高指令流的执行效率,乱序执行核心监视很 多条指令,然后在不损失数据完整性的前提下,采用 能充分发挥多个处理部件并行工作的指令顺序来执行 。这个指令顺序可能和原始程序的不一样。 1)A=B+C 2)P=A*2 3)Q=D-E 1)和3)可配对同时执行

微机原理与接口技术2.2.2PentiumIⅢ处理器内部结构及工作原理动态分支预测器L1指令含Cache16KB.4路相联,32项TLP系统总线(分支目标缓冲器BTB)+↑预取译码控制1IFU3路并行x86指令译码器静态分支预测器微指令ROM译码器2译码器 0译码器1总线接微指令序列器口单元MISBIU整型浮点寄存器别名表分配器RAT结构寄存器文件133MHz+真+64 位保留站RS1GB/s41++存储数AGUAGUIEUFPU存储地加载地据单元移位SSEIEUSSEMMXVIVXL2址单元址单元Mul执行CacheDIV+单元L2存储重排缓冲器MOBCache12项存,16项取控制单元L1数据Cache,16KB,4路相联,72项TLB指令重排缓冲器ROB(40项7
微机原理与接口技术 / 7 2.2.2 Pentium III处理器内部结构及工作原理

微机原理与接口技术2.3NetBurst微结构的处理器2.3.1NetBurst微结构概述1.超级流水线技术衡量CPU的性能指标是CPU完成应用程序所需的总时间。其计算公式如下:CPU性能-CPU的主频XIPCIPC是每时钟执行的指令条数。要提高CPU性能,可采用提高CPU主频和提高IPC。要提高主频一减少每个流水级的执行周期一要减小每个流水级的任务量一将任务再分解一增加流水线深度8
微机原理与接口技术 / 8 2.3 NetBurst微结构的处理器 2.3.1 NetBurst微结构概述 1. 超级流水线技术 衡量CPU的性能指标是CPU完成应用程序所需的总 时间。其计算公式如下: CPU性能=CPU的主频×IPC IPC是每时钟执行的指令条数。 要提高CPU性能,可采用提高CPU主频和提高IPC。 要提高主频→减少每个流水级的执行周期→要减小每 个流水级的任务量→将任务再分解→增加流水线深度

微机原理与接口技术2.快速执行引擎NetBurst微结构中配置了一种时钟缓冲器电路,可以使该结构下2个执行简单指令的ALU和2个存储地址AGU运行在两倍的CPU核心频率下3.高级动态执行·一个高达126条指令的超大指令窗口,避免了处理器为了等待配对指令而出现暂时的停顿,也减少了因Cache没命中,到主存中获取数据而产生等待的次数。一个4KB的分支目标缓冲器BTB记录更多的过去分支的历史细节,再配以改进的分支预测算法,使分支预测失误率比PentiumⅢl下降了33%。9
微机原理与接口技术 / 9 2.快速执行引擎 NetBurst微结构中配置了一种时钟缓冲器电路,可 以使该结构下2个执行简单指令的ALU和2个存储地址 AGU运行在两倍的CPU核心频率下 3.高级动态执行 • 一个高达126条指令的超大指令窗口,避免了处理器 为了等待配对指令而出现暂时的停顿,也减少了因 Cache没命中,到主存中获取数据而产生等待的次 数。 • 一个4KB的分支目标缓冲器BTB记录更多的过去分 支的历史细节,再配以改进的分支预测算法,使分 支预测失误率比Pentium III下降了33%

微机原理与接口技术4.执行跟踪Cache(executiontraceCache)放弃L1指令Cache的设计,采用执行跟踪Cache,它在译码器的后面,按程序流顺序存放已经译码好的最多12.000条微指令,5.高速系统总线采用了一种“四倍速”技术一quadpumping,使得前端总线能很方便的工作再4倍于系统总线的频率上。6.高级传输Cache采用8路相联的片内L2Cache,与核心同频工作,与CPU核心的专用总线宽度为256位,是过去的4倍,这样主频为2.8GHz的Pentium4其数据带宽将为89.6GBpsO10
微机原理与接口技术 / 10 4. 执行跟踪Cache(execution trace Cache) 放弃L1 指令Cache的设计,采用执行跟踪Cache,它 在译码器的后面,按程序流顺序存放已经译码好的最 多12,000条微指令, 5. 高速系统总线 采用了一种 “四倍速”技术—quad pumping,使得 前端总线能很方便的工作再4倍于系统总线的频率上。 6. 高级传输Cache 采用8路相联的片内L2 Cache ,与核心同频工作,与 CPU核心的专用总线宽度为256位,是过去的4倍,这 样主频为2.8GHz的Pentium 4其数据带宽将为89.6GBps