第2章 Pentium系列微处理器的基本结构

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

流水CPU的时空图
图(a)表示流水CPU中一个指令周期的任务分解。
图(b)表示非流水计算机的时空图。
图(c)表示流水计算机的时空图
图(d)表示超标量流水计算机的时空图。
(a)(b)(c)(d)的动态演示请看动画演示
(1)超标量流水线 超标量流水线是pentium系统结构的核心。 它由U和V两条指令流水线构成,每条流水线 都有自已的ALU、地址生成电路、与数据 cache的接口。 控制ROM属于微程序控制器,其中存放一 组解释指令操作顺序的微指令代码。 两个地址生成器用于计算存储器操作数地 址。各种模式下的逻辑地址最终要转换成物 理地址来访问数据cache,并用转换后援(旁 视)缓冲器TLB来加速这种地址转换过程。 寄存器堆有8个32位整数寄存器,用于地址计 算、保存ALU的源操作数和目的操作数。
紧缩字节类型:8个字节打包成一个64位数据
紧缩字类型:4个字打包成一个64位数据 紧缩双字类型:两个32位的双字打包成一个64位数据 四字类型:一个64位数。
2.MMX寄存器 8个MMX寄存器MM0—MM7的宽度为64位,但 它们没有单独设置,而是借用浮点处理单元中的8 个(80位)数据寄存器,它是通过使用“别名”的办 法来实现的。即浮点单元的8个数据寄存 器被浮点 指令看成ST0—ST7,被MMX指令看成是MM0— MM7。 这样,8个字节或4个字或2个双字被打包装入一 个64位的MMX寄存器,一旦执行一条MMX指令时, 将所有这些8个、4个或2个的数据同时取出,进行 数学运算或逻辑操作,最后结果写入MMX寄存器。 事实上,这种运算处理过程是一种并行处理过程, 故称为SIMD(单指令 多数据)的并行处理。
–(2)超流水线和超标量技术
超流水线是指CPU内部的流水线超过通常的5~6步。 流水线的步数越多,完成一条指令的速度就越快。超标 量(Super-Scalar)是指CPU中有一条以上的流水线,并且 每时钟周期可以完成一条以上的指令。
–3)乱序执行技术
乱序执行(Out-of-Order Execution)是指CPU采用了允 许将多条指令不按程序规定的顺序,分开发送给各相应 电路单元处理的技术。。。。。
1.多媒体增强技术 SIMD 新增57条MMX指令 2.动态执行技术 多分支跳转预测 数据流分析:处理顺序 推测执行 3.双重独立总线结构
控制寄 存器组
整数寄存器组 64 64位数 据总线 32 32位地 址总线 ALU(U流水) ALU(V流水) 32 32 TLB 32 数据高速缓存(8KB) 80 桶形移位器
加法 除法 80 乘法
2.1.1总线接口部件 1.地址收发器和驱动器 2.数据总线收发器 3.总线宽度控制
4.写缓冲
5.总线周期和总线控制
第二章 Pentium系列微处理器的基本结构 2.1Pentium微处理器的基本结构
分支目标 缓冲器 预取 地址 256 分支检验 与目标地址 预取缓冲器 指令译码器 控制ROM TLB 指令高速缓存(8KB)
64位数 据总线 32位地 址总线 控制总线 总 线 部 件
分 页 部 件
控制部件 浮点部件 地址通用器 (U流水) 地址通用器 (V流水)
RISC的三个要素是: (1)一个有限的简单的指令集;(2)CPU配备大量的 通用寄存器;(3)强调对指令流水线的优化。 基于三要素的RISC机器的特征是: (1)使用等长指令,目前的典型长度是4个字节。 (2)寻址方式少且简单,一般为2—3种,最多不超 过4种,绝不出现存储器间接寻址方式。 (3)只有取数指令、存数指令访问存储器。指令中 最多出现RS型指令,绝不出现SS型指令。
2.1.6指令译码部件
两条同时译码,同时传给两条流水线
2.1.7控制部件
微程序wk.baidu.com制的基本思想是将指令操作分解为微指令
序列,每一条微指令又包含若干可同时进行的微 操作。微程序被固化在ROM中,在操作时将根 据机器指令不断取出微指令并执行微指令,从而 实现指令规定的操作功能。
2.2Pentium Pro微处理器
(4)指令集中的指令数目一般少于100种,指令格式 一般少于4种。 (5)指令功能简单,控制器多采用硬布线方式,以 期更快的执行速度。 (6)平均而言,所有指令的执行时间为一个处理时 钟周期。 (7)指令格式中用于指派整数寄存器的个数不少于 32个,用于指派浮点数寄存器的个数不少于16个。 (8)强调通用寄存器资源的优化使用。 (9)支持指令流水并强调指令流水的优化使用。 (10)RlSC技术的复杂性于它的编译程序,因此软件 系统开发时间比CISC机器长。
2.3 Pentium MMX系列CPU
中文名为“多能奔腾”。它是为改善PC图形、音响, 加速多媒体视听和为通信应用软件开发的新型处理 器,实际上是带有多媒体扩展结构MMX(Multi Media eXtension)的奔腾CPU芯片。采用多媒体CPU 的微机在进行视频、音频处理时,具有很平滑的视 频播放能力、清晰逼真的画面、完美的音响效果。
Pentium Pro处理器中文名为“ 高能奔腾”,俗 称686,是第一个基于RISC内核和32位软件的微 处理器。
Pentium Pro CPU按双腔结构制作,含CPU和二级 Cache,使用Socket 8插座。主频150260 MHz。 该主频很容易采用多处理器结构,适用于服务器。 该芯片设计上注重了32位代码的优化,在网络服务 器系统上能充分发挥其性能;
3.MMX指令集 如果一条指令支持多种数据类型:字节(B)、字 (W)、双字(D)或四字(Q)的操作,则选用某一数据 类型时,相应的字母B,W ,D或Q列入指令助记符 的后面。对于转换指令要列入两个字母,例如WB 表示把字拆成字节,而BW表示把字节拼成字。 MMX指令的先进性体现在以下五个方面: SIMD结构 本节以前,我们遇到的计算机是SISD(单 指令单 数据)的系统结构。而SIMD结构则是单指令 多数据的系统结构。MMX指令充分利用CPU64位 带 宽的处理能力,一次可以并行处理8个8位数据, 或4个16位数据,或2个32位数据,因而成为提高计 算性能的最基本因素。
(3)控制相关:通常由转移指令引起,根据 转移条件来控制指令的执行顺序,而造成断 流。 解决方法:① 延迟转移法,由编译程序重 排指令序列,本思想是“先执行再转移”,即 发生转移取时并不排空指令流水线,而是让 紧跟在转移指令Ib之后已进入流水线 的少数 几条指令继续完成。如果这些指令是与Ib结 果无关的有用指令,那么延迟损失时间片正 好得到了有效的利用。 ② 转移预测法:由硬件方法来 实现,依据指令过去的行为来预测将来的行 为,通常设置顺序和转移两个指令预取队列。
(3)浮点流水线 奔腾CPU内部包含了一个8段的流水 浮点运算器。前4段为指令预取(PF)、 指令译码(D1) 、地址生成(D2)、取操 作数(EX),在U,V流水线中完成;后4 段为执行1(X1)、执行2(X2)、 结果写 回寄存器堆(WF)、错误报告(ER),在 浮点运算部件中完成。一般只能由U流 水线完成一条浮点数操作指令。
(2) cache部件 80486 CPU中有8KB的指令和数据共用的 cache。而奔腾CPU则分设指令cache和数据 cache,各8KB。指令cache是只读的,以单端 口256位(32B)向指令预取缓冲器提供超长指 令字代码。数据cache是可读可写的,双端口, 每个端口32位,与U,V两条流水线交换整数 数据,或组合成一个64位端口与浮点运算部 件交换浮点数据。两个cache与64位数据、32 位地址的CPU内部总线相连接。 两个cache都使用物理地址。每个cache都 有一个后援缓冲器TLB,负责将TLB命中的 线性地址转换成32位物理地址。
MMX技术集成到新一代pentium CPU时,主要体现在:
①采用4种新的数据类型,②使用8个64 位宽的MMX 寄存器,③增设57条新指令。 1.MMX数据类型
MMX技术定义了三种打包的数据类型及一种64位字 长的数据类型。打包数据类型中的每个元素以及64位数 都是带符号或不带符号的定点整数(字节、字、双字、 四字)。四种数据类型定义如下:
6.齐偶效验的生成和控制
7.Cache控制
2.1.2预取缓冲部件 指令预取技术 Pentium含有几个指令预取缓冲器,包 括指令预取和指令译码两部分。
2.1.3整数流水线
(1)流水线技术
为了提高微型计算机的工作速度,可以采用 某些功能部件分离的方法,使大的顺序操作分解 为由不同功能部件分别完成、在时间上重叠的子 操作,这种技术称为流水线技术。
流水工作方式:将一个计算任务细分成若干 个子任务,每个子任务由专门的部件处理,多 个计算任务依次进行并行处理。
流水线中主要存在三种相关冲突,会使流水线 发生断流,而不能充分发挥作用,因此需采 取 相应的技术对策。 (1)资源相关:指多条指令进入流水线后在 同一机器时钟周期内争用同一个功能部件所 发生的冲突。
并行性的两种含义: ① 同时性---两个以上事件在同一时刻发生。如 多机系统中,同一时刻多个进程在运行。 ② 并发性---两个以上事件在同一间隔内发生。 如并发程序,某一时刻CPU中只有一个进程在运 行,而在一个时间段内,多个进程同时运行。 并行性的三种形式: ① 时间并行---指时间重叠。实现形式即流水 线方式; ② 空间并行---指资源重复。实现形式主要为 多处理器系统和多计算机系统; ③ 时间并行+空间并行---时间重叠和资源重 复的综合应用,例:超标量流水技术。
解决方法:① 延迟等待,使指令推迟执行; ② 设置重复资源,将指令和数据分 别存放在两个存储器中。 (2)数据相关:在一个程序中,如果必须等 前一条指令执行完,才能执行后一条指令, 这两条指令即为数据相关。当多条指令重叠 处理时,可能发生冲突。 解决方法:① 采用定向传送技术; ② 编译优化。
A-B-C A-C
(4)动态转移预测技术
执行转移指令时为了不使流水线断流,pentium采用了动 态转移预测技术。转移目标缓冲器BTB一个小容量的cache。 当一条指令导致程序转移时,BTB便记录这条指令及其转移 目标地址。以后遇到这条转移指令时,BTB会依据前后转移 发生的历史来预测该指令这次是转移取还是顺序取。若预测 为转移取,则将BTB记录的转移目标地址立即送出可用。 两个指令预取缓冲器,每个容量为32字节,当前总是使用 其中一个(假设为缓冲器1)。当在指译码(D1)段译出一条转 移指令时立即检索BTB。若预测为“顺序取”,则继续从缓 冲器1取指令;若预测为“转移取”,则立即冻结缓冲器1, 启动另一个缓冲器2,由给出的转移目标地址处开始取分支 程序的指令序列。这样,保证了流线的指令预取步骤永远不 会空置。并且预测转移取错误时,正确路径的指令已经在另 一个冲器中,使流水线的性能损失减至最小。
2.4 Pentium PⅡ
Pentium PⅡ系列微处理器是在Pentium Pro CPU基础 上融入MMX技术,优化16位代码。PⅡ系列CPU采 用双重独立总线技术,芯片设计上把2级高速缓存 移至微处理芯片外,将CPU与L2装在同1块基块上, 然后封装在黑色卡匣里,构成1个完整的处理器插 件,L2容量为512KB,并以CPU主频的一半速度运 行,在结构上,采用Solt 1接口标准和单边接触盒 (SECC)封装技术,用新型Slot 1插头与主板相连。
饱和运算方式 这是运算发生溢出时使用的处理方法。 如果运算结果超过最大值,则将此值按最大值处理, 低于最小值时按最小值处理。由于不需要进行溢出 处理, 所以提高了处理能力。饱和运算适合于面向 像素数据的处理。 积和运算方式 MMX的乘法指令中,PMADDWD指令 是一条关键指令,它具有乘法-累加操作动能。下 图说明了它的操作功能,将两个紧缩字类型的数中 相应的元素(16位)相乘,生成4个32位的积,再将左 侧的两个积相加,得出一个结果;右侧的两个积相 加 ,得出另一个结果。这样便生成一个紧缩双字类 型的结果数据。积和运算方式特别适合于向量计算 与矩阵计算。
相关文档
最新文档