第二章 80x86 微处理器 § 1 8086/8088 的结构

Post on 18-Mar-2016

133 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

第二章 80x86 微处理器 § 1 8086/8088 的结构 8086/8088CPU 是 Intel 公司于 1978 年推出的一种 16 位微处理器,是最早投入市场的 16 位 CPU 产品之一。其中 8086CPU 外部数据总线是 16 位的,而 8088CPU 外部数据总线是 8 位的。 主要特点如下: - PowerPoint PPT Presentation

TRANSCRIPT

第二章 80x86 微处理器§ 1 8086/8088 的结构 8086/8088CPU 是 Intel 公司于 1978 年推出的一种 16 位 微处理器,是最早投入市场的 16 位 CPU 产品之一。其 中 8086CPU 外部数据总线是 16 位的,而 8088CPU 外部 数据总线是 8 位的。 主要特点如下: 数据总线 16 位 , 能处理 16 位数据 , 也能处理 8 位数据。 地址总线 20 位 , 可寻址的地址空间为 1m 字节。 在汇编语言上与 8080/8085 兼容 时钟频率为 5mhz 具有一整套以之相配的外围接口芯片 采用单-5 V 电源

一、 8086 功能结构 8086CPU 从功能上来说可分成两大部分,即总线接 口单元和执行单元。功能结构框图如图示。 1、总线接口单元 BIU 总线接口单元由段地址寄存器,指令指针寄存器 ,20 位的地址加法器和 6 字节的指令队列等组成。 总线接口单元负责与存贮器, I/O 端口传送数据。如 取出指令,取 / 存操作数。 2 、执行单元 EU 执行单元 EU 由 4 个通用寄存器, 4 个专用寄存器,标 志寄存器和算术逻辑单元 ALU 组成。执行单元 EU 负责指令的执行。 3、指令的执行过程

二、 8086 中的寄存器 1、通用寄存器 4 个 16 位寄存器 : AX,BX,CX,DX 。其中 AX 是累加器。8 个 8 位寄存器: AH,AL,BH,BL,CH,CL,DH,DL 。 2、专用寄存器 SP :堆栈指针寄存器 , 用于确定堆栈在内存中位置 BP :基数指针寄存器 , 用于寄存器间接寻址中 SI :源变址寄存器 , 用于寄存器间接寻址中 DI :目的变址寄存器 , 用于寄存器间接寻址 3 、标志寄存器

A、状态标志 辅助进位标志AF:在字节操作中 , 低半字节向高半 字节有进位 , 则 AF=1, 否则 AF=0. 进位标志 CF : 当操作结果的最高位产生进位, 则 CF=1 ,否则 C=0 。 溢出标志 OF : 当操作结果超出了带符号数能表 达的范围,则 OF=1 ,否则 OF=0 符号标志 SF : 当操作结果为负, 则 SF=1 ,否则 SF=0 。 奇偶标志 PF : 当操作结果低 8 位中的1的个数 为偶数 , 则 PF=1 ,否则 PF=0 。 零标志 ZF : 当操作结果为零,则 ZF=1 ,否则 ZF=0 。

B、控制标志: ( 它能由程序置位或复位,以变更 CPU的 操作 ) 方向标志 DF : DF=1, 串操作指令为自动减量指令 DF=0, 串操作指令为自动增量指令 中断允许标志 IF :当 IF=1 ,则允许中断, 当 DF=0, 则禁止中断。 追踪标志 TF : 当 TF=1, 则 CPU 进入单步方式。 CPU 每 执行一条指令后 , 便产生一个内部 中断,允许程序在每条指令执行完 后进行检查。 C、例:

4、段地址寄存器 CS : 16 位的代码段寄存器;用来产生指令的 20 位地址 DS : 16 位的数据段寄存器;用来产生数据的 20 位地址 ES : 16 位的扩展段寄存器;用来产生数据的 20 位地址 SS : 16 位的堆栈段寄存器;用来产生 20 位的堆栈指针 5、指令指针寄存器 IP (类同于 PC) IP 用来存放下一次要取出的指令的偏移地址 指令的真正物理地址为:

CS 段寄存器内容左移 4 位+ IP 内容。 例:

三、 8086 中存贮器与 I/O 组织 由于 8086CPU 具有1 m 字节的存贮器地址空间 (00000H~ FFFFFH) ,而其内部寄存器都是 16 位 ,显 然用寄存器不能直接对1 m 的内存空间进行寻址。为 此引入了分段概念。 1、存贮器采用分段编址 A、 8086 中物理地址的形成

注:a . 取指令: 物理地址= CS * 16+IP b . 堆栈操作: 物理地址= SS * 16+SP c .存取操作数:物理地址= DS(ES)*16+BP(BX,SI,DI) B、采用分段编址的优点 2、数的存贮方式 通常一个基本存贮单元只能存放一个字节 (8 位 ) 数, 而 8086CPU 的基本 操作长度为一个字。为此 , 8086CPU提供了两条信号线 BHE 和 A0, 以决定是访问高 字节,还是低字节,还是整个字。BHE A0 性能 0 0 从偶地址开始访问字 1 0 从偶地址开始访问字节 访问字从奇 0 1 从奇地址开始访问字节 地址开始 1 1 无

实际上, 1m 字节存贮器分成两个体,偶数地址单元 形成一个体,其数据线连数据总线低 8 位 , 而奇数地 址形成一个体 , 其数据线连数据总线高 8 位。 3、 I/O 编址

8086 允许有 64k个 8 位 I/O 端口,两个编号相邻的 8 位 端口可以组合成一个 16 位端口, CPU设有访问 8 位 (16 位 ) 端口的 I/O 指令。 (0UT/IN)在系统设计时,也可通过硬件将 I/O 端口和存贮器放 在一起统一编址 ,这样可以用对存贮器的访问指令来 实现对 I/O 端口的读写。

§ 2 8086 的引脚信号与功能8086CPU 是有四十个引脚的器件 ,随使用场合不同, 可使它工作在最小模式和最大模式。当在系统中只有 8086 一个微处理器时,系统的所有 总线控制信号都直接由 8086 产生,系统较简单,此 时 8086 可连成最小模式。当在系统中除一个 8086 主处理器外 , 还有协助 8086 处理器工作的协处理器 , 如数值运算协处理器 8087 ,I/O协处理器 8089 。此时 ,8086 应连成最大模式。

一、两种模式下,通用引脚信号

1、 AD0-15 :地址/数据线,输出,双向,三态 总线周期T 1 :输出地址 总线周期T 2-4 :输出数据 2、 A16-19/ S3-6 :地址/状态线、输出、三态 总线周期T 1 :输出地址高 4 位 总线周期 2-4 :输出状态信息 S4 S3 0 0: 当前正在使用 ES 0 1: 当前正在使用 SS 1 0: 当前正在使用 CS, 或未用任何段寄存器 1 1: 当前正在使用 DS S5: 允许中断标志位 S6: 为低 (未用 )

3、 BHE/S7 :高 8 位数据总线允许/状态线,输出,三态 总线周期T 1 : BHE 有效,表高 8 位数据总线上的信 息有效 , 可使用。 总线周期T 2-4 :输出 S7信息, ( 在 8086 中,未被赋 于实际意义 ) 注: BHE 与 AO合起来告知连接在总线上的存贮器和接口 , 当前的数据在总线上将以何种格式出现。4、 RD :读选通信息、输出、三态、低电平有效 表示正在进行存贮器或 I/O读。5、 READY:准备就绪信息,输入,高电平有效 表示内存或 I/O设备准备就绪,马上可进行一次数据 传输。若 此信息无效 ( 为低 ), 则 CPU 在T 3 状态后自动 插入等待状态 TW,直到READY为高后,才进入T 4完成 一次数据传输。

6、 INTR:可屏蔽中断请求信号、输入、高电平有效 NMI :非屏蔽中断信号、输入、正跳沿有效7、 TEST :测试信号输入,低电平有效 TEST信号与指令WAIT 结合起来使用,以实现 CPU和外 部硬件的同步。 CPU 执行WAIT 指令时, CPU 处于空转状 态进行等待,当 TEST 有效时,则等待结束, CPU继 续往下执行指令。8、MN/MX :最小/最大模式控制信号、输入 MN/MX=1 最小模式 MN/MX=0 最大模式

9、 RESET :复位信号、输入、高电平有效 复位信号有效时,将对 F,IP,DS,SS,ES及指令队列清 零, CS设置为 FFFFH 。当复位信号由高变低时,CPU 将从 FFFFOH开始执行程序。 CS FFFF0H + IP OOOOH ────── FFFF0H10、 CLK:时钟信号、输入 8086 要求 CLK信号的占空比为 33% , 即 1/3周期高 ,2/3 为低。其频率为 5MHZ 。1 1 、 VCC :+ 5V 电源 GND :+ 5V 地

二、最小模式下的专用引脚信号 1、 INTA :中断响应信号,低电平有效输出。此信号有 效可作为中断向量的读选通信号。 2、 ALE : 地址锁存允许信号输出,高电平有效 用于锁存 AD 线上的地址。 3、 DEN: 数据允许信号输出、三态、低电平有效。此 号表示 CPU 当前准备发送或接收一个数据。 用于接收和发送 AD 线上的数据。 4、 DT/R:数据发送/接收信号,输出,三态。此信号 作为数据收发方向的控制信号, DT/R为高表 数据发送,为低表数据接收。 5、M/IO :存贮器 /IO 控制信号输出。 M/IO=1 表示CPU 与 存贮器进行数据传输, M/IO=0 表示 CPU 与 I/O 设备进行数据传输。 8088 中该脚为 IO/M。

6、WR:写信号、输出、低电平有效 7、 HOLD :总线保持请求信号、输入、高电平有效。 此信号是 CPU 之外的其他主部件要求占用总线,向 CPU 发出的请求信号。 8、 HLDA :总线保持响应信号、输出、高电平有效。 此信号表示 CPU对其他主部件的总线请求作出响应, 与此同时,所有与三态门相接的 CPU 的引脚呈现高 阻,从而让出了总线。

三、最大模式下的专用引脚信号 1、 QS0,1 :指令队列状态信号、输出 QS0,1 两信号组合起来提供了前一个时钟周期中指令 队列的状态,以便于外部对 CPU 内部指令队列的动作 跟踪。 QS0,QS1 的代码组合所对应的含义如下表示: QS1 QS0 含义 0 0 无操作 0 1 从指令队列的第一个字节中取走代码 1 0 队列已空 1 1 除第一个字节外,还取走了后续字节 中的代码

2、 S2~ 0 :总线周期状态信号、输出 S2~ 0信号组合起来可以指出当前总线周期中所进行 的数据传输过程的类型。在最大模式系统中的总线控 制器 8288就是利用这些状态信号来产生对存贮器和 I/O 的控制信号。 S2 、 S1 、 S0 的代码组合所对应的操 作如下表所示: S2 S1 S0 操作过程泟 0 0 0 发中断响应信号 (INTA) 0 0 1 读 I/O 端口 (IOR) 0 1 0 写 I/O 端口 (IOW) 0 1 1 暂停 1 0 0 取指令 1 0 1 读内存 (MEMR) 1 1 0 写内存 (MEMW) 1 1 1 无源状态

3、 LOCK:总线封锁信号、输出、低电平有效。

此信号有效,表示系统中其它总线主部件不能占有总线 ,LOCK �信号由前缀指令“ LOCK”使其 有效,且 在下一条指令完成以前保持有效。 4、 RQ/GT1-0 :总线请求信号输入/总线请求允许信号 输出。

这些请求 / 允许信号是由外部总线主设备请求总线,促使 CPU 在现行总线周期结束后让出总线控制权用的。 RQ/GT0-1 每一脚为双向 ,且RQ/GT0比RQ/GT1 有 更高的优先权。四、最小/最大模式下, 8086 的典型配置

从图中,我们可以看到,最大模式配置和最小模式 配置的主要差别是 : 在最大模式中,采用 8288 总线控制器来对 CPU发出的 S0-2 控制信号进行变换组合,以得到对 存贮器, I/O 的读 /写信号,得到对地址锁存器 和收发器的控制信号。 附:1、 8284 :时钟发生器。 (16脚 ) 用于提供频率稳定的 CLK信号,实现与 READY和 RES信号同步。 2、 8282 : 8 位锁存器。 (20脚 )/三态输出, 8 位单向 . 用于锁存地址。 3、 8286 : 8 位总线收发器 (20脚 )/8 位双向,三态 . 用于数据总线接口。 4、 8288 :总线控制器。 对状态进行译码,产生相应控制信号。

§ 3 8086 的操作和时序 一、系统的复位和启动操作 8086 的复位和启动操作是通过在 RESET引脚上加复 位信号来实现的。 1、对复位信号的要求 上电复位:复位信号维持高电平时间≥ 50us 运行中复位:复位信号维持高电平时间≥ 4 个 T周期 2、复位时各内部寄存器的值 IF 清零 指令队列 空 IP 清零 其它寄存器 清零 DS.ES.SS 清零 CS FFFFH

3、复位后的启动操作 复位信号由高电平变低时, 8086CPU将从内存的FFFF0H 处开始执行指令: CS*16+IP=FFFFH*16+0000H =FFFF0H 通常一般在 FFFF0H 处存放一条无条件转移指令,转 移到系统程序的入口处。

二、总线周期 1、指令周期总线周期与时钟周期 A、指令周期:执行一条指令所需的时间。它由若干 个总线周期所组成 B、总线周期: CPU 通过总线与外部逻辑 ( 存贮器或外 设 )� 进行一次通信所需的时间。一个 总线周期由若干个 T� 状态组成 , 其基本 总线周期由 4 个 T 状态组成。 C、时钟周期:时钟周期又称 T 状态 , 它是 CPU 的基本 时间计量单位。它由主频决定, 8086 的主频为 5MHZ 。即一个时钟周期为 200ns。

2、基本总线周期完成的动作 T 1 :发地址信息 ,发M/IO,ALE,DT/R,BHE T 2 :撤消地址,通过 A16-19/S3-6发总线周期状态信息 ,发RD/WR,DEN T 3 :读/写数据 通过 READY可插入TW状态 T 4 :总线周期结束 三、总线操作 1、最小方式下的总线读 A、 8086读/写周期时序图

B、读/写周期时序分析 T 1 状态:M/IO 指出 CPU 是内存还是 I/O 进行读 /写 , ALE 有效指出 20 位地址有效 , BHE 有效指出高 8 位数据总线上信息可使用 DT/R有效指出数据传送方向 T 2 状态:输出状态信息 S3-6,DEN有效 , 从而获得数据 允许信号,它作为收发器的选通信号 RD 或 WR有效 . T 3 状态:读:内存或 I/O将数据送到数据总线上 写: CPU提供要写入的数据在数据总线上不变 T 4 状态:读: CPU对数据总线进行采样,从而获得数据 写: CPU认为数据已写入至存贮器或 I/O� 中 到此各控制信号和状态信息无效

2、最大方式下的总线读/写操作最大方式下的总线读/写操作在逻辑上是和最小模式下的读/写操作一样的,在时序分析上,最大方式下要考虑 CPU 和总线控制器两者产生的信号,在 此,请同学们自学。

3、总线空操作总线接口部件不与内存或 I/O 之间传输数据的总线周 期为总线空闲周期。在空闲周期中,状态信息 S3-6 和前一个总周期是一样的,实际上总线空操作是总线接口部件对执行部件的等待。

§ 4 从 80286到 Pentium系列 CPU 的发展 自从 1978 年推出 8086 之后, Intel 相继推出 80286 、80386 、 80486 和 Pentium 。 Intel系列的 CPU ,且采用向下兼容的策略,每一种新的 CPU都对原有的系列产品保持兼容,从而使此前的软件都能够继续运行。 微处理器的主要性能指标: 字长:指 CPU 能同时处理的数据位数。 8086/80286 字长为 16 位。 80386/80486/Pentium 字长为 32 位。 Itanium 字长为 64 位。 主频:即 CPU 的时钟频率,主频越高,运算速度越快。 8086 的主频为 5MHz 。 Pentium 主频高达 3.2GHz 。 随着 CPU 的升级,集成度越来越高、速度越来越快。在 CPU设计中采用了许多新的技术,下面将简要介绍80386 和 Pentium 的技术要点。

一、 Intel 80386 CPU 80386 是 Intel 公司于 1985 年 10月推出的 32 位微处理 器。它在一个芯片上集成了 275000 个晶体管,采 用 32 位数据总线, 32 位地址总线,直接寻址能力达 4GB 。其时钟频率为 16MHz 。 80386CPU 采用了流水线和指令重叠执行技术、虚拟 存储技术、片内存储管理技术、存储体管理分段分 页保护技术,这些技术为在 32 位微型机实现多用户 多任务操作系统提供了有力的支持。 1 、 80386 的功能结构: 80386 的功能结构如图所示 从功能上看, 80386 由 6 个功能部件组成。 指令预取部件 IPU 指令译码部件 lDU 执行部件 EU 分段部件 SU 分页部件 PU 总线接口部件 BIU

2 、 80386 的内部寄存器: 80386 有 32 个寄存器,分为 8类,即:通用寄存器、段 寄存器、指令指针、标志寄存器、控制寄存器、系统 地址寄存器、排错寄存器和测试寄存器。 A 、 80386 的通用寄存器和指令指针 EIP : 通用寄存器皆由 8086/8088 、 80286 的相应 16 位寄存器 扩展成 32 位而得。 由于 80386 地址线是 32 条, 故 EIP 中存放的是下一条 要取出的指令的偏移地址。 当然,这是相对于代码段 CS 的基址的偏移量。

B 、标志寄存器 EFLAGS : 标志寄存器是 32 位的, 80386比 8086多 4 个标志。增 加的 4 个标志位如下: IOPL 特权标志 NT 嵌套标志 VM 虚拟方式标志 RF 恢复标志 C 、 80386 的段寄存器: 段寄存器仍是 16 位。 80386 内存单元的地址仍是由段 基址和段内偏移地址组成。段内偏移地址是 32 位, 段基址也是 32 位,由各种寻址方式确定。

3 、虚拟储存技术: A 、虚拟存储技术的最终体现是建立一个虚拟存储器。 虚拟存储器由主存储器、辅助存储器和存储管理部 件共同组建。通过管理软件,达到主存和辅存密切 配合,使整个存储系统具有接近主存的速度和接近 辅存的容量。这种技术不断改进完善.就形成了虚 拟存储系统。 B 、程序运行时, CPU 用虚拟地址即逻辑地址访问主存, 在此过程中,先通过硬件和软件找出逻辑地址到物 理地址之间的对应关系,判断要访问单元的内容是 否已装入主存,如是,则直接访问,否则,存储器 管理软件和相应硬件会将要访问的单元及有关数据 块从辅存调入主存,覆盖掉主存中原有的一部分数 据,并且将虚拟地址变为物理地址。 C 、这种机制解决了存储器的大容量和低成本之间的矛 盾。有了虚拟存储器,用户程序不再受到主存容量 的限制。

4 、流水线技术: A 、指令流水线: 指令流水线由总线接口部件、指令预取部件、指令 译码部件和执行部件构成。 a、指令预取部件将存储器中的指令按顺序取到长度为 16B 的预取指令队列中。只要指令队列向指令译码部 件输送一条指令,从而使指令队列有部分空字节 时,指令预取部件就会向总线接口部件发出总线请 求,从存储器取指令填充到指令预取队列中。 b、指令译码部件中除了指令译码器外,还有译码指令 队列,此队列能容纳 3 条译好码的指令。只要译码指 令队列有剩余空间,译码部件就会从指令预取队列 取下一条指令进行译码。 c 、在指令流水线设计中,将访问存储器的一条指令和 执行前一条指令重叠起来,有效地提高了指令执行 速度。

B 、地址流水线: a、逻辑地址、线性地址和物理地址作 逻辑地址是程序员所看到的地址,也叫虚拟地址。 逻辑地址由 16 位的选择子和 32 位的偏移量指出,选 择子对应于一个段基地址,它指向一个逻辑地址空 间,偏移量(有效地址)则指向此逻辑空间中的一 个字节。 80386 的每个任务最多可拥有 16384(2l4B) 个段,每 段可长达 4GB( 即 232B) ,所以,一个任务的逻辑地址 空间可达 64TB( 即 246 B) 。 分段部件将包含选择子和偏移量的逻辑地址转换为 32 位线性地址,其空间的寻址能力也是 32 位。 分页部件将线性地址转换为物理地址,物理地址和 芯片引脚上的地址信号相对应,指出存储单元在存 储体中的具体位置。

b、地址流水线就是由分段部件、分页部件和总线接口 部件组成的。 c、在 80386 的程序中,一个偏移量可能由立即数和另外 一两个寄存器给出的值构成,分段部件把各地址分 量送到一个加法器中,形成有效地址,然后,再经 过另一个加法器和段基址相加,得到线性地址,同 时还要通过一个 32 位的减法器和段的界限值比较, 检查是否越界。接着,分段部件把线性地址送到分 页部件,由分页部件将线性地址转换为物理地址, 并且负责向总线接口部件请求总线服务。 d、在 80386 中,地址流水线技术具体体现在有效地址的 形成、逻辑地址往线性地址的转换、线性地址往物 理地址的转换这三个动作的重叠进行,通常,当前 一个操作还在总线上进行时,下一个物理地址就已 经算好了。

二、 Pentium CPU 1993 年 3月 Intel 公司推出了 64 位 Pentium CPU ,中文 名为“奔腾”。它在一个芯片上集成了 310万个晶体 管,采用 32 位数据总线(外部数据总线为 64 位), 36 位地址总线,直接寻址能力达 64GB 。其时钟频率 为 66-200MHZ 。 Pentium CPU 采用了 CISC 和RISC 相结合的技术、超标 量流水线技术、分支预测技术,并且设置了独立的 指令 Cache 和数据 Cache ,从而使CPU 的性能得到了进 一步提高。 1 、内部功能结构: Pentium 的结构框图如图示。从功能上看, Pentium 由 10 个功能部件组成: 总线接口部件, U流水线和 V流水线,指令 Cache ,数 据 Cache ,指令预取部件,指令译码器,浮点处理部 件 FPU ,分支目标缓冲器 BTB ,控制ROM,寄存器组。

2 、 CISC 和 RISC 相结合的技术: CISC 和 RISC 相结合的技术是指复杂指令集计算机技 术和简化指令集计算机技术。 Intel 公司在 Pentium 之前的 CPU均属于 CISC体系,从 Pentium开始,将 CISC 和 RISC 结合。 Pentium 的大多数指令是简化指 令,但仍然保留了一部分复杂指令,而对这部分指 令采用硬件来实现, Pentium吸取了两者之长。 3 、超标量流水线技术: 所谓超标量,就是一个处理器中有多条指令流水 线。在 Pentium 中,采用 U 和 V 两条流水线,每条流水 线均含有独立的 ALU 地址生成电路和连接数据 Cache 的接口,由此可通过各自的接口对 Cache 存取数据, 这称为 Cache双端接口。双端接口使 Pentium 具有更 高的速度。超标量流水线机制使得 Pentium 能够对应 一个时钟周期执行两条整数运算指令,这样,比相 同频率的前一代 CPU实际速度提高一倍。

4 、分支预测技术: Pentium提供了一个称为分支目标缓冲器 BTB 的小型 Cache 来动态地预测程序的分支操作。当某条指令导 致程序分支时, BTB记下该条指令和分支目标的地 址,并用这些信息预测该条指令再次产生分支时的 路径,预先从该处预取,保证流水线的指令预取步 骤不会空置。这一机构的设置,可以减少每次在循 环操作时,对循环条件的判断所占用的 CPU 的时间。 5 、增强型浮点运算器 FPU : 在 FPU 中,采用快速硬件来实现浮点加、乘、除运 算,使其浮点运算速度比前一代 CPU快三倍以上。 6 、独立的指令 Cache 和数据 Cache : Cache 是指速度非常高、容量较小的存储器。 Cache技术通过一种映像机制,使 CPU 在运行程序 时,将原先需要访问主存储器的操作大部分转换为 访问高速 Cache 的操作,有效减少了 CPU访问相对速 度较低的主存储器的次数,因此提高了速度。

三、 Pentium系列微处理器的技术发展 在 1993 年推出 Pentium 以后, Intel又相继推出 PentiumⅡ、 PentiumⅢ和 PentiumⅣ。在此过程中, CPU 的集成度和主频不断提高,其 PentiumⅣ内部含 有 4 200万个晶体管时钟频率高达 3.06GHz 。 PentiumⅣ采用如下一系列新技术来面向网络功能和 图像功能。 1 、超级流水线技术: 将指令流水线划分为 20级,指令流水线的级数越 多,会使每级的执行过程越简单,每一步可以更 快完成,对应电路结构也更简化。这样,有利于提 高时钟频率。 2 、跟踪性指令 Cache技术: 这种技术将指令 Cache 和数据 Cache彻底分开,并且 只把数据 Cache 作为一级 Cache 。将指令 Cache 作为二 级 Cache ,并采用一种跟踪性机制,在分支预测出错 时,由于是跟踪性的,所以,可很快从指令 Cache 取 指重建指令流水线。

3 、采用双沿指令快速执行机制: PentiumⅣ采用时钟缓 冲电路,使 ALU-在时钟的上升沿和下降沿都可进行 运算,即采用双沿机制,从而对应半个时钟周期就 可以完成一次算术运算,使总体运算速度显著高。 4 、能执行 SSE2 指令集: SSE2 指令集含 144 条指令,在 SSE 指令集基础上进一步提升了多媒体性能。 四、 Itanium 微处理器概述 Itanium 是 Intel 公司推出的具有超强处理能力的微 处理器,其数据总线为 64 位,地址总线也为 64 位。 Itanium 在 Pentium 基础上又引入了多个新技术,从 各方面提高了性能,综合起来有如下几方面。 1 、可拥有三级 Cache : ItaniumⅠ片内含二级 Cache ,一级 Cache包括 16KB 的 指令 Cache 和 16KB 的数据 Cache ,二级 Cache 容量为 96KB ,此外,还可外接 4MB 的三级 Cache 。 ItaniumⅡ则把 3MB 的三级 Cache 也容纳在片内。

2 、多个执行部件和多个通道: Itanium将指令流水线分为 10级,从而可同时执行 6 条指令,此外 , 内部有 4 个整数执行部件 ALU 和 4 个浮 点执行部件 FMAC ,并有 9 个功能通道,这使 Itanium 在 1 个时钟周期中的峰值能力达到可执行 20 个操作, 从而特别适用于密集型浮点运算和三维图形处理。 3 、数量众多的寄存器: 内部含有 128 个通用寄存器 ,128 个浮点寄存器和 64 个 属性寄存器。众多寄存器使在峰值操作状态也能保 证内部寄存器充足够用,从而减少了等待与传输, 提高了效率,并且适用于多任务操作。 4 、采用完全并行指令计算 EPIC技术: EPIC技术的特点是指令的长度长,指令功能复杂, 指令中除了包含操作码以及和操作数据有关的信息 外,还包含并行执行的方法等信息。在运行程序 时,由编译器在编译过程中将程序编译成几组机器 代码,并进行分组和打包,多条指令打成一个包。 几组指令并行地在不同的执行部件中执行。

5 、采用新机制的分支预测技术: Itanium 通过编译软件预先将分支结构的程序段分成 几个指令序列,然后利用 Itanium本身具有的很强的 并行处理能力同时执行这些指令序列,执行之后, 再舍弃其中的一部分,这样,所有的流水线分支总 是不会停顿和反复,客观上起到了消除分支预测出 错的效果。

小 结 一、 CPU 结构 1 、通用寄存器: AX,BX,CX,DX/AH,AL,BH,BL,CH, CL,DH,DL 专用寄存器: SP,BP,SI,DI 。 标志寄存器: F,(AF,CF,OF,SF,PF,ZF//DF,IF,TF,) 段地址寄存器: CS,DS,ES,SS 指针寄存器: IP 2 、一个 20 位的物理地址可表示成段地址:偏移地址, 其计算方法如下: 物理地址= ( 段地址 X10H )+偏移地址

3 、一个程序可包括四个段 代码段:包括可执行的指令 堆栈段:包括一个后进先出的数据区,用它保存返 回地址,数据及寄存器内容。 数据段:是程序的数据区。 附加段:也是一个数据区。它通常和数据段定义在 同一存贮区。 4 、字数据在存贮器中存放的顺序: 高地址字节存放高 8 位 低地址字节存放低 8 位 5 、存贮器分为两个体,即偶体, ( 低 8 位数据 ) 与奇体 ( 高 8 位据数 ) 。 8086 允许有 64k个 8 位 I/O 端口

top related