第二章微处理器 8086微处理器 ■IA微处理器的进化 ■ Pentium微处理器
第二章 微处理器 ◼ 8086 微处理器 ◼ IA 微处理器的进化 ◼ Pentium 微处理器
23 Pentium微处理器 ◆ Pentium的结构特点 超标量流水线 ◆指令的分支与预测 ◆ Pentium的工作模式
2.3 Pentium 微处理器 ◆ Pentium 的结构特点 ◆ 超标量流水线 ◆ 指令的分支与预测 ◆ Pentium的工作模式
2.3.1 Pentium Data Control Address Bus Unit 的结构特点 ddress 1、 Pentium的 Data Cache Code Cache 功能单元 256 bits )总线单元 Prefetcher c4 bytes)(64 bytes) 2)数据 Cache 3)代码 Cache 4)指令预取器 5)预取缓冲器 Address Generation has↓ Plpeline Pipeline 6)指令译码单 i Conrol LROM 7)控制单元 ALU Pipeline "ur" Control 8)整数执行单元 9)寄存器组 10)地址产生器 ALU Pipeline M FPU 1)分页单元 12)浮点单元 Multipl h
1)总线单元 2)数据Cache 3)代码Cache 4)指令预取器 5)预取缓冲器 6)指令译码单元 7)控制单元 8)整数执行单元 9)寄存器组 10)地址产生器 11)分页单元 12)浮点单元 1、Pentium的 功能单元 2.3.1 Pentium 的结构特点
1、 Pentium的功能单元 1)总线单元 地址发送接收器 Address Drlvers and Receivers 写缓冲器 Write Buffers Data bus 数据总线收发器 Transceivers 线控制逻辑 Bus Contr。l Logic 总线主控制 Bus Master Contr。l 第二级 Cache控制 Level 2 Cache Control 内部 Cache控制 Internal Cache Contr。l Parit 奇偶校验码生成和 Generati。n and 控制 Contr。l
1、Pentium的功能单元 1)总线单元 l 地址发送接收器 l 写缓冲器 l 数据总线收发器 l 总线控制逻辑 l 总线主控制 l 第二级Cache控制 l 内部Cache控制 l 奇偶校验码生成和 控制
1、 Pentium的功能单元 2)数据 Cache ◆8K字节 ◆每行32字节 ◆两路组相联结构组织的高速缓存 ◆ Cache目录为三端口结构 ◆允许两条流水线同时访问并支持监听功
1、Pentium的功能单元 2)数据Cache ◆ 8K字节 ◆ 每行32字节 ◆ 两路组相联结构组织的高速缓存 ◆ Cache目录为三端口结构 ◆ 允许两条流水线同时访问并支持监听功 能
1、 Pentium的功能单元 3)代码 cache 8K字节 ◆每行32字节 ◆两路组相联结构组织的高速缓存 ◆ Cache目录为三端口结构 ◆允许两条流水线同时访问并支持监听功 能
1、Pentium的功能单元 3)代码Cache ◆ 8K字节 ◆ 每行32字节 ◆ 两路组相联结构组织的高速缓存 ◆ Cache目录为三端口结构 ◆ 允许两条流水线同时访问并支持监听功 能
1、 Pentium的功能单元 4)指令预取器 将所需要的指令从代码 cache读到指令预 取器,如果所需要的指令行不在代码 Cache 中,它启动一个总线的猝发周期,CPU从外 部存储器取指进行 Cache行填充操作
1、Pentium的功能单元 4)指令预取器 将所需要的指令从代码Cache读到指令预 取器,如果所需要的指令行不在代码Cache 中,它启动一个总线的猝发周期,CPU从外 部存储器取指进行Cache行填充操作
1、 Pentium的功能单元 5)预取缓冲器 ◆包含两组指令预取缓冲器,两组之间相互独立。 ◆指令预取器从指令 Cache中取出指令,将它们顺 预取缓冲器中,另一组缓冲器 处于空闲状态 ◆当预测分支指令会发生转移时,预取器将从转 移目标地址开始取出指令,放入 组空闲的 预取缓冲器中 ◆之后,预取器一直使用第二组缓冲器直到另 支指令被预测,再换回第一组缓冲器 ◆在线性取指和执行指令时,预取缓冲器将二对 指令分别送到 流水线U和V的指令译码器, 进行指令配对分析
1、Pentium的功能单元 5)预取缓冲器 ◆ 包含两组指令预取缓冲器,两组之间相互独立。 ◆ 指令预取器从指令Cache中取出指令,将它们顺 序存放在一组预取缓冲器中,另一组缓冲器则 处于空闲状态。 ◆ 当预测分支指令会发生转移时,预取器将从转 移目标地址开始取出指令,放入第二组空闲的 预取缓冲器中。 ◆ 之后,预取器一直使用第二组缓冲器直到另一 条分支指令被预测,再切换回第一组缓冲器。 ◆ 在线性取指和执行指令时,预取缓冲器将一对 指令分别送到两条流水线U和V的指令译码器, 进行指令配对分析
1、 Pentium的功能单元 6)指令译码单元 ◆两级指令译码单元,译码级1( Decoded)和译 码级2( Decode2) ◆译码级1除了包含指令配对检查逻辑以外,还包 含分支目标缓冲器BTB( Branch Target Buffer BTB具有分支预测功能。 ◆译码级2包貪流水线U和Ⅴ的存储器操作数产生逻 辑、分段逻辑以及期望检测逻辑 在 Decode 1中,检查在两条流水线中操作码是否 满足 Pentium指令的配对规则,如果满足,两条 指令同时被送到 Decode2。(功能) ◆如果指令是分支指令,则由BTB检查预测该指令 是 发生分支转移。在 Decode2中,计算指令 的操作数在存储器中的地址。(功能
1、Pentium的功能单元 6)指令译码单元 ◆ 两级指令译码单元,译码级1(Decode1)和译 码级2(Decode2)。(组成) ◆ 译码级1除了包含指令配对检查逻辑以外,还包 含分支目标缓冲器BTB(Branch Target Buffer)。 BTB具有分支预测功能。(结构) ◆ 译码级2包含流水线U和V的存储器操作数产生逻 辑、分段逻辑以及期望检测逻辑。(结构) ◆ 在Decode1中,检查在两条流水线中操作码是否 满足Pentium指令的配对规则,如果满足,两条 指令同时被送到Decode2。(功能) ◆ 如果指令是分支指令,则由BTB检查预测该指令 是否会发生分支转移。在Decode2中,计算指令 的操作数在存储器中的地址。(功能)
1、 Pentium的功能单元 7)控制单元 ◆包含微代码序列器和微代码控制ROM(成 ◆进行解释指、令控制断点、控制中断 ◆控制整数流水线和浮点流水线的操作(功能
1、Pentium的功能单元 7)控制单元 ◆ 包含微代码序列器和微代码控制ROM(组成) ◆ 进行解释指、令控制断点、控制中断(功能) ◆ 控制整数流水线和浮点流水线的操作(功能)