计算机硬件技术基础 (Pentium概述)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
§ 2.1.1 80X86及Pentium简述
3、三种工作方式
为了在保护方式下能运行8086的程序,80386 /80486新增了一种方式,使得80386/80486的存 储管理具有三种工作方式:实地址方式、保护虚 拟地址方式、和保护虚拟8086方式(简称虚拟 8086方式)。 4、 32位外部总线
§ 2.1.2 Pentium的内部结构
Pentium 指令流水线操作示意图
T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 T11
时钟 指令1 指令2 指令3 指令4 指令5 指令6 PF D1 D2 EX PF D1 D2 PF D1 PF WB EX D2 D1 PF
WB EX D2 D1 PF
EAX EBX ECX EDX ESI EDI EBP ESP
AX BX CX DX SI DI BP SP
19
§ 2.1.3 Pentium的内部寄存器
注意:
8个32位通用寄存器是在8086的8个16位 寄存器的基础上扩展位数而来的。为了与 8086兼容,它们的低16位可以单独访问,
且仍以8086相同名称命名。其中AX、BX、
80486的内部结构图:(见下页)
6
§ 2.1.1 80X86及Pentium简述
32位数据总线 32位数据总线 32位线性地址总线 32 指令 执行 单元 1
32
段管理 单元
页管理 20 单元
高速 缓存 单元 128
32 32
总线 接口 单元
外 部 总 线
偏移量总线
浮点 运算 单元
指令 指令总线 指令 执行 译码 单元 单元 2
4、分支指令预测
Pentium片内另设有一个小Cache,称为分支目 标缓存器BTB。当某条指令导致程序分支(即转移) 时,将该条指令及分支的目标地址记入BTB,依据 此信息预测该条指令再次产生分支时的路径并预 取指令,保证流水线不中断。这一功能很适合循 环指令。
5、采用64位外部总线
Pentium的ALU和通用寄存器仍是32位,还是32 位CPU,但同内存进行数据交换的外部数据总线为 64位,提高了二者之间的数据传输速率。
§ 2.1.3 Pentium的内部寄存器
溢出标志OF(位11):为1表示运算结果的数值超过 了可表示的范围,出错。 方向标志DF(位10):为1表示在串操作过程中地址 指针EDI(DI)和ESI(SI)作减值变化,否则为增值。 自限标志TF(位8):又称单步标志,为1表示CPU将 进入单步工作方式,即每执行一条指令后都产生一 个内部中断。常用于单步调试。 中断允许标志IF(位9):为1表示CPU允许外部可屏 蔽中断。注意:该标志对内部中断和外部非屏蔽中 断(NMI)不起作用。 以上是最常用的标志,其它还有I/O特权级、任 务嵌套、恢复、虚拟86模式、对准检查、虚拟中断、 虚拟中断挂起、标识等标志,不一一说明。
12
§ 2.1.2 Pentium的内部结构
1、超标量体系结构和指令流水线
Pentium设计了“U”和“V”两条指令流水线, 每条流水线都有自己的ALU、地址生成逻辑和 Cache接口,这种双流水线的超标量体系结构可 以使两条指令在不同的流水线中并行执行。 每条流水线又可顺序分解成五个相对独立的 部分,对应指令预取PF、指令译码(一次译码) D1、地址生成(二次译码)D2、指令执行EX和结果 回写WB的五个步骤,实现一条流水线中的并行操 作。 具体操作过程见示意图: 13
§ 2.1.2 Pentium的内部结构 Pentium 内部结构的主要组成部件:执行单 元、指令Cache、数据Cache、指令预取单元、指 令译码单元、地址转换与管理单元、总线单元及 控制器等。 核心部件是执行单元ALU,功能是高速完成算 术和逻辑运算。其内部含两个整数ALU和一个浮 点ALU,分别执行整数和实数的各种运算。 上述功能部件除地址转换与管理单元与80386 /80486(段管理单元和页管理单元)保持兼容外, 其他都进行了重新设计。
17
§ 2.1.3 Pentium的内部寄存器
一、基本寄存器
包括:通用寄存器、指令指针寄存器、 标志寄存器和段寄存器四种,是最常用的 寄存器。
基本寄存器
通用寄存器 指令指针 标志寄存器 段寄存器
18
§ 2.1.3 Pentium的内部寄存器
1、通用寄存器
31 15
AH BH CH DH
7
0
AL BL CL DL
16
§ 2.1.3 Pentium的内部寄存器
Pentium的内部寄存器是在8086内部寄存器的 基础上扩充而来的,除将原来的16位寄存器扩展 成32位外,还新增了一些新的寄存器,并与 80X86保持兼容。
Pentium的寄存器按功能可分为四类:基本寄 存器、系统级寄存器、测试与模型专用寄存器、 浮点寄存器。 只讨论基本寄存器和简述系统级寄存器。
2
§2.1 Pentium 概述
§ 2.1.1 80X86及Pentium简述 § 2.1.2 Pentium的内部结构 § 2.1.3 Pentium的内部寄存器 § 2.1.4 Pentium的工作方式
3
§ 2.1.1 80X86及Pentium简述 一、Intel 80286 80286是继8086、80186之后的一种增强型标 准16位CPU。与8086比较,结构上有很大改进, 性能明显提高,主要体现在以下几方面: 1、内部结构上设计了四个独立单元:执行单 元(EU)、总线单元(BU)、指令单元(IU)、地址单 元(AU),它们可以并行操作,实现四级流水线作 业,使数据吞吐率大大提高。 2、地址总线和数据总线完全分开,改变了 8086/8088采用数据总线和低16位/8位地址线分 时复用的方式。(引脚分时复用)
CX、DX也保留了原有特性,可分别再分成
两个8位寄存器单独访问。
20
§ 2.1.3 Pentium的内部寄存器
2、指令指针寄存器 (EIP)
31 15 7 0
EIP
IP
EIP用于保存下一条待预取指令相对于代码段 基址(由CS提供)的偏移量。它的低16位即IP寄存 器可以单独访问。当工作在32位方式时,采用32 位的EIP;工作在16位方式时,采用16位的IP。 (E)IP的值,用户不能直接修改,只能通过转移、 调用及返回类指令间接修改。
§ 2.1.3 Pentium的内部寄存器
进位标志CF(位0):为1表示运算结果的最高位产 生了进位或借位。主要用于多字节数的加减法运 算,移位和循环指令也用。 奇偶标志PF(位2):为1表示运算结果中有偶数个 1。常用于数据传输检错。 辅助进位标志AF(位4):为1表示运算导致了低4 半字节向高半字节的进位或借位。常用于BCD码 运算。 零标志ZF(位6):为1表示运算结果为零,常用 于转移指令。 符号标志SF(位7):SF=1表示运算结果的最高位 为1。对于用补码表示的有符号数,表示结果为 负数。 23
指令 预取 队列
代码流 24
7
80486的内部结构图
§ 2.1.1 80X86及Pentium简述
80386/80486的主要优点有:
1、6级流水线结构和32位数据处理 它们将指令分解成:取指令、指令译码、地 址生成、取操作数、执行指令和回写结果6个步 骤,由内部总线接口单元、指令预取单元、指令 译码单元、指令执行单元、段管理单元、页管理 单元对应独立支持,构成6级流水线结构,实现 并行处理。同时,内部寄存器数量增加且容量均 扩充为32位或以上,具有全32位数据处理能力。 2、支持段页式存储管理 新增了一个页管理部件,可实现段和页式存 储管理。物理地址空间扩为4GB(即232B),虚拟 8 存储空间扩为64TB(246B)。
3、独立的指令Cache和数据Cache
Pentium在片的指令Cache和数据Cache的容量 均为8KB,二者完全分离,使Pentium中指令和数 据的存取减少冲突,提高了处理速度。其中数据 Cache有两个接口,分别对应U和V两条流水线, 各自进行数据交换,互不影响。 15
§ 2.1.2 Pentium的内部结构
提供了32位外部总线接口,最大数据传输率 显著提高。总线接口能在16位和32位数据总线间 自动切换,以适应不同位数的存储器和I/O设备。
9
§ 2.1.1 80X86及Pentium简述
80486的新技术主要有:
1、内含一个8KB的数据和指令合用的Cache。 2、首次提出RISC(Reduced Instruction Set Computing)技术。 3、采用总线突发(Burst Bus)技术,使取得 一个地址后,与该地址相关的一组数据都可以 进行输入、输出,有效解决微处理器同内存之 间的数据交换问题。 4、片内集成了一个浮点运算单元FPU。
第二章 Pentium处理器和指令系统
§2.1 Pentium 概述
§2.2 Pentium 的数据类型 与寻址方式 §2.3 Pentium 的指令系统
1
第二章 Pentium处理器和指令系统
§2.1 Pentium 概述
§2.2 Pentium 的数据类型 与寻址方式 §2.3 Pentium 的指令系统
21
§ 2.1.3 Pentium的内部寄存器
3、标志寄存器 (EFLAGS)
31 15 7 0
EFLAGS
FLAGS
32位标志寄存器中包含三种标志:状态标志 (S)、控制标志(C)和系统标志(X)。状态标志报 告算术/逻辑运算指令执行后的状态;控制标志 DF用于控制串操作的地址改变方向;系统标志 (10种)用于控制I/O、屏蔽中断、调试、任务转 换和控制保护方式与虚拟8086方式的转换。 22
4
§ 2.1.1 80X86及Pentium简述
3、存储器操作分为:实地址方式和保护虚拟 地址方式(保护方式),均继续采用分段管理,段 的最大长度仍为64KB。地址总线扩充为24根,在 实地址方式下,只用20位,寻址1MB;在保护方 式下,24位全用ห้องสมุดไป่ตู้实地址空间为16MB。 4、在保护方式下,首次引入虚拟存储器的概 念,使每个用户或任务所拥有的虚拟存储空间达 1GB。设置特权系统和保护机构保证了虚拟空间 到实址空间的安全转换。
注: 现今RISC处理器的主要特征:更多的通用寄存器,操作 数预取结构,统一的指令长度,内置高性能浮点运算部件,内 置大容量指令/数据Cache,采用超标量和超流水线技术,采用 分支预测和乱序执行技术。
10
§ 2.1.1 80X86及Pentium简述 三、Pentium 系列 Intel公司从1993年3月至2000年底,陆续推 出了Pentium、 Pentium Pro、PentiumⅡ、 PentiumⅢ、Pentium 4处理器,在结构和性能上 各自都有一些特点: Pentium的超标量结构,有两条指令流水线; Pentium Pro的在片二级Cache、3路超标量和 14级超流水线结构; PentiumⅡ的MMX指令集、双重独立总线结构; PentiumⅢ的单指令多数据扩展指令集SSE; Pentium 4的20级计算管线的超标量设计。 11
80286最具特色的是增加了多用户、多任务系 统所必需的任务转换功能、虚拟存储器管理功能 和多种保护功能。 5
§ 2.1.1 80X86及Pentium简述
二、80386/80486
80486是继80386之后,针对多用户、多任 务的应用而推出的第二代32位CPU。80486基 本沿用了80386的体系结构,将80386、80387 和8KB Cache及相关硬件集成在一个芯片上, 在目标代码级向上完全兼容。
WB EX WB D2 EX WB D1 D2 EX WB
14
§ 2.1.2 Pentium的内部结构
2、重新设计的浮点运算部件
Pentium的浮点运算部件在486的基础上,采 用了超流水线技术,由8个独立执行部件进行流 水线作业,使每个时钟周期能完成一个或两个浮 点操作。将一些采用快速算法的运算指令用电路 进行固化,用硬件实现,执行速度大大提高。
24
§ 2.1.3 Pentium的内部寄存器
4、段寄存器
有6个段寄存器(CS/SS/DS/ES/FS/GS),用于决定程序 使用存储器区域块。比8086多两个,即FS、GS,用作数 据段。 段的定义变化:在保护方式下,Pentium的段长度为1 至4GB(232);在实地址方式下,段长度为64KB,与8086 相同。 段寄存器的结构变化:由16位的段选择器和64位的描 述符高速缓存器组成。前者用户可访问,后者不可。 在实地址方式和虚拟8086方式下,16位的段选择器就 是段寄存器,功能与8086一样。 在保护虚拟地址方式下,为每个段定义了一个描述符, 用于描述段的基址、属性和边界。