为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

第02章 中央处理器

2011-10-05 50页 ppt 2MB 26阅读

用户头像

is_545438

暂无简介

举报
第02章 中央处理器null第2章第2章第2章:中央处理器第2章:中央处理器教学重点 IA-32的概要历史 8086的功能结构 8088/8086的基本引脚 8088/8086的总线时序第2章:2.1 IA-32的概要历史第2章:2.1 IA-32的概要历史什么是IA-32? 所谓IA,指的是Intel Architecture,即Intel 体系结构。 IA-32主要指的是从80386开始的32位CPU,但同时也包括了之前的8086/8088、80286等16位的CPU; 目前,Intel正在推出它的64位的IA-64结构的CPU,微机也正在...
第02章 中央处理器
null第2章第2章第2章:中央处理器第2章:中央处理器教学重点 IA-32的概要历史 8086的功能结构 8088/8086的基本引脚 8088/8086的总线时序第2章:2.1 IA-32的概要历史第2章:2.1 IA-32的概要历史什么是IA-32? 所谓IA,指的是Intel Architecture,即Intel 体系结构。 IA-32主要指的是从80386开始的32位CPU,但同时也包括了之前的8086/8088、80286等16位的CPU; 目前,Intel正在推出它的64位的IA-64结构的CPU,微机也正在向64位发展;null 从8086到Pentium处理器:在计算机领域, 遵守“产品过时, 技术不过时”Intel 8086802868038680486Pentium….叠 加 功 能2.1.1 Intel 8086和802862.1.1 Intel 8086和802868086/8088可以说是现代微处理器的“开山鼻祖”,今天的P4以及今后的IA-64,其基本架构都来自于它,并仍在延续。 8086发布于1978年,初始频率8MHz,有着16位的数据总线及20位的寻址能力。 8088于1981年推出,除外部数据总线是8位的之外,其它与8086基本完全相同(内部指令队列为4个字节)。第2章: 2.1.2 8086的功能结构 第2章: 2.1.2 8086的功能结构 8086的内部结构从功能上分成两个单元 1. 执行单元EU 负责指令的译码、执行和数据的运算 包括ALU、通用寄存器组、状态标志寄存器等 2. 总线接口单元BIU 管理8088与系统总线的接口 负责CPU对存储器和外设进行访问 包括地址加法器(形成20位地址)、指令队列缓冲器(8088为4个字节,8086为6个字节)、总线控制电路等8088的内部结构8088的内部结构地址总线数据总线第2章: 2.1.3 8086的功能结构 第2章: 2.1.3 8086的功能结构 两个单元相互独立,分别完成各自操作,还可以并行执行,实现指令预取(指令读取和执行的流水线操作) 在8086/8088CPU中,采用二级并行流水线,即在EU单元执行指令时,BIU可以到存储器中去预取下一条指令。其过程如下图所示。8088的指令执行过程8088的指令执行过程2.1.5 8088的两种组态模式2.1.5 8088的两种组态模式8088/8086具有两种组态,构成两种不同规模的应用系统 最小组态模式 构成小规模的应用系统,如系统中只有一个8086 8088本身提供所有的系统总线信号 最大组态模式 构成较大规模的应用系统,例如与数值协处理器8087一起构成系统时 此时,8088和总线控制器8288共同形成系统总线信号图示图示最小工作模式下硬件逻辑图最小工作模式下硬件逻辑图+5V读写控制读写控制读写控制最大工作模式下硬件逻辑图最大工作模式下硬件逻辑图2.1.5 8088的两种组态模式(续)2.1.5 8088的两种组态模式(续)两种组态通过MN/MX*引脚来设置 MN/MX*接高电平为最小组态模式 MN/MX*接低电平为最大组态模式 两种组态下的内部操作并没有区别 IBM PC/XT采用最大组态2.1.6 8086的引脚图2.1.6 8086的引脚图2.1.6 :8088的引脚图2.1.6 :8088的引脚图2.1.6 8088的引脚信号2.1.6 8088的引脚信号外部特性表现在其引脚信号上,学习时请特别关注以下几个方面:指引脚信号的定义、作用;通常采用英文单词或其缩写表示信号从芯片向外输出,还是从外部输入芯片,或者是双向的起作用的逻辑电平高、低电平有效上升、下降边沿有效输出正常的低电平、高电平外,还可以输出高阻的第三态⑶ 有效电平⑷ 三态能力⑵ 信号的流向⑴ 引脚的功能2.1.6 最小组态的引脚信号2.1.6 最小组态的引脚信号分类学习这40个引脚(总线)信号 数据和地址引脚 读写控制引脚 中断请求和响应引脚 总线请求和响应引脚 其它引脚 注: 在以下表述中,引脚名称用红色表示该引脚在最大模式下用法不同!1. 数据和地址引脚1. 数据和地址引脚AD0 ~ AD15(Address/Data) 地址/数据分时复用引脚,双向、三态 在访问存储器或外设的总线操作周期中,这些引脚在第一个时钟周期输出存储器或I/O端口的低16位地址A15 ~ A0 其他时间用于传送16位数据D15 ~ D0 在DMA方式时,这些信号线处于浮空(第三态)1. 数据和地址引脚(续1)1. 数据和地址引脚(续1)A19/S6 ~ A16/S3(Address/Status) 地址/状态分时复用引脚,输出、三态 这些引脚在访问存储器的第一个时钟周期输出高4位地址A19 ~ A16 在访问外设的第一个时钟周期全部输出低电平无效,其他时间输出状态信号S6 ~ S3 ,用于表示CPU当前的状态 S3、S4用于指示当前正在使用的寄存器 S5用于表示中断允许标志IF的状态 S6始终为0,表示8086 CPU与总线相连1. 数据和地址引脚(续2)1. 数据和地址引脚(续2)S0、S1、S2 S0、S1、S2为在最大模式下的输出信号,为CPU提供给总线控制器8288的控制信号,包括存储器读/写,IO读/写等。2. 读写控制引脚2. 读写控制引脚RD*(Read) 读控制,输出、三态、低电平有效 有效时,表示CPU正在从存储器或I/O端口读入数据 WR*(Write) 写控制,输出、三态、低电平有效 有效时,表示CPU正在写出数据给存储器或I/O端口2. 读写控制引脚(续1)P212. 读写控制引脚(续1)P21M/IO*(Input and Output/Memory) I/O或存储器访问,输出、三态 该引脚输出高电平时,表示CPU将访问存储器,这时地址总线A19 ~ A0提供20位存储器地址 该引脚输出低电平时,表示CPU将访问I/O端口,这时地址总线A15 ~ A0提供16位I/O口地址2. 读写控制引脚(续2)2. 读写控制引脚(续2)M*/IO、WR*和RD*是最基本的控制信号 组合后,控制4种基本的总线周期2. 读写控制引脚(续3)P272. 读写控制引脚(续3)P27ALE(Address Latch Enable) 地址锁存允许,输出、三态、高电平有效 ALE引脚高有效时,表示复用引脚:AD15 ~ AD0和A19/S6 ~ A16/S3正在传送地址信息 由于地址信息在这些复用引脚上出现的时间很短暂,所以系统可以利用ALE引脚将地址锁存起来2. 读写控制引脚(续4)2. 读写控制引脚(续4)DT/R*(Data Transmit/Receive) 数据发送/接收,输出、三态 该信号用于控制数据收发器74LS245的数据的流向 高电平时表示数据自CPU输出(发送) 低电平时数据输入CPU(接收) DEN*(Data Enable) 数据允许,输出、三态、低电平有效 作用于数据收发器74LS245,有效时,数据收发器与数据总线连通,可以传送数据。2. 读写控制引脚(续5)2. 读写控制引脚(续5)READY 存储器或I/O口就绪,输入、高电平有效 用于低速的主存和IO设备与CPU之间的速度匹配。 总线操作周期中,CPU会测试该引脚 如果测到高有效,CPU直接进入下一步 如果测到无效,CPU将插入等待周期(Tw) 等待周期中仍然要监测READY信号,确定是否继续插入等待周期2. 读写控制引脚(续6)2. 读写控制引脚(续6)BHE*/S7(Bus High Enable/Status) 仅用于8086 在总线周期的T1状态,输出BHE信号,表示高8位数据线AD15~AD8上的数据有效 在T2、T3、T4及Tw状态,输出状态信号S7(在8086中,S7并未赋予任何实际意义)2. 读写控制引脚(续6)2. 读写控制引脚(续6)SSO*(System Status Output) 最小组态模式下的系统状态输出信号 它与IO/M*和DT/R*一道,通过编码指示CPU在最小组态下的8种工作状态(参见教材P21表2-3): 1. 取指 5. 中断响应 2. 存储器读 6. I/O读 3. 存储器写 7. I/O写 4. 过渡状态 8. 暂停3. 中断请求和响应引脚3. 中断请求和响应引脚INTR(Interrupt Request) 可屏蔽中断请求,输入、高电平有效 有效时,表示请求设备向CPU申请可屏蔽中断 该中断请求是否响应受控于IF(中断允许标志)、可以被屏蔽掉3. 中断请求和响应引脚(续1)3. 中断请求和响应引脚(续1)INTA*(Interrupt Acknowledge) 可屏蔽中断响应,输出、低电平有效 有效时,表示来自INTR引脚的中断请求已被CPU响应,CPU进入中断响应周期3. 中断请求和响应引脚(续2)3. 中断请求和响应引脚(续2)NMI(Non-Maskable Interrupt) 不可屏蔽中断请求,输入、上升沿有效 有效表示外界向CPU申请不可屏蔽中断 该中断请求不能被CPU屏蔽,所以优先级别高于INTR(可屏蔽中断)主机与外设进行数据交换通常采用可屏蔽中断 不可屏蔽中断通常用于处理掉电等系统故障4. 总线请求和响应引脚4. 总线请求和响应引脚HOLD 总线保持(即总线请求),输入、高电平有效 有效时,表示总线请求设备向CPU申请占有总线 该信号从有效回到无效时,表示总线请求设备对总线的使用已经结束,通知CPU收回对总线的控制权4. 总线请求和响应引脚(续1)4. 总线请求和响应引脚(续1)HLDA(HOLD Acknowledge) 总线保持响应(总线响应),输出、高电平有效 有效表示CPU已响应总线请求并已将总线释放 此时CPU的地址总线、数据总线及具有三态输出能力的控制总线将全面呈现高阻,使总线请求设备可以顺利接管总线 待到总线请求信号HOLD无效,总线响应信号HLDA也转为无效,CPU重新获得总线控制权5. 其它引脚5. 其它引脚TEST*(测试) 测试,输入、低电平有效 使用协处理器8087时,通过该引脚和WAIT指令,可使8088与8087的操作保持同步5. 其它引脚(续1)5. 其它引脚(续1)RESET(复位) 复位请求,输入、高电平有效 该信号有效,将使CPU回到其初始状态;当他再度返回无效时,CPU将重新开始工作 8088复位后CS=FFFFH、IP=0000H,所以自启动程序入口在物理地址FFFF0H5. 其它引脚(续2)5. 其它引脚(续2)CLK(Clock) 时钟输入 系统通过该引脚给CPU提供内部定时信号 8088的标准工作时钟为5MHz IBM PC/XT机的8088采用了4.77MHz的时钟,其时钟周期约为210ns 8086采用8MHz的时钟,故其时钟周期为125ns5. 其它引脚(续3)5. 其它引脚(续3)Vcc 电源输入,向CPU提供+5V电源 GND 接地,向CPU提供参考地电平 MN/MX*(Minimum/Maximum) 组态选择,输入 接高电平时,8088引脚工作在最小组态;反之,8088工作在最大组态8086最大组态下的引脚8086最大组态下的引脚当8086处于最大组态时,脚24~31的含义与最小组态不同。 S0*、S1*、S2*(状态输出) 这些信号由总线控制器8288来产生有关存储器访问或IO访问的总线周期和所需要的控制信号。 在时钟周期T4状态期间,它们有任何变化,指示一个新的总线周期开始;而当其在T3或Tw期间返回到无源(111),则表示一个总线周期的结束; 当处于DMA时,这些线浮空; 它们的功能如P20 表2-1所示:最大组态下的总线周期最大组态下的总线周期8086最大组态下的引脚(续1)8086最大组态下的引脚(续1)RQ*/GT0*、RQ*/GT1* (Request/Grant,输入/输出) 这些信号是由外部的总线主设备(如DMA)请求并促使CPU在当前总线周期结束后让出总线。 每一个引脚是双向的; 所以,在最大组态下,8086可以提供两组总线请求/响应信号)8086最大组态下的引脚(续2)8086最大组态下的引脚(续2)LOCK*(输出、三态) 当其有效时,禁止其它总线主设备获得系统总线的控制; QS0、QS1(Queue Status,输出) 这两个引脚提供的状态可以检查8086CPU内部的指令队列的状态;其组合功能如下图所示:“引脚” 小结“引脚” 小结CPU引脚是系统总线的基本信号 可以分成三类信号 16位数据线:D0 ~ D15 20位地址线:A0 ~ A19 控制线: ALE、IO/M*、WR*、RD*、READY INTR、INTA*、NMI,HOLD、HLDA MN/MX*、RESET、CLK、Vcc、GND8086最小组态和最大组态的比较8086最小组态和最大组态的比较不同之处: 最小模式下系统控制信号直接由8086CPU提供;最大模式下因系统复杂,芯片数量较多,为提高驱动能力和改善总线控制能力,大多数的系统控制信号由总线控制器8288提供 最小模式下8086的31、30脚提供一组总线请求/响应信号(HOLD、HLDA),而最大模式下8086的31、30脚将提供两组总线请求/响应信号(RQ/GT0、RQ/GT1)8086最小组态和最大组态的比较8086最小组态和最大组态的比较相同之处: 8086的低位地址线与数据线复用,为保证地址信号维持足够的时间,需使用ALE信号将低位地址线锁存(通过锁存器8282),以形成真正的系统地址总线; 8086的数据线通过数据收发器8286后形成系统数据总线,以增大驱动能力,数据收发器主要由DEN和DT/R两个信号控制。 2.1.7 存储器组织2.1.7 存储器组织实地址方式: 8086有20条地址线,其寻址能力为1MB(220)。因此,当访问一个存储器地址时,应为20位的,但是8086内部的寄存器均为16位,即对8086而言,各种寻址方式其寻找的操作数的范围最多只能有216即64KB,那么如何形成20位并访问8086的1MB地址? 解决:采用将1MB存储器以64KB为单位划分为若干的段。在寻址一个物理单元时,必须由一个基地址再加上一个段地址共同形成20位的地址。 表示方法:1234:0010 前面表示段地址,后面表示段内偏移地址。在开成20位地址时,先将段地址左移4位,再加上偏移地址,即得到了20位的实际物理地址。 问:是否存在地址空间的重叠?或者说,多个地址表示一个地址空间?图示20位地址的形成20位地址的形成2.2.1 时钟发生器82842.2.1 时钟发生器82848284时钟发生器是每个8086微计算机系统都要用到的标准器件。其功能是为系统提供统一的时钟信号,以使系统中各器件在统一的“口令”下协同工作。 2.2.2 总线控制器82882.2.2 总线控制器82888288内部逻辑框图 状态译码电路 命令信号发生器 控制信号发生器 控制逻辑电路 2.2.2 总线控制器82882.2.2 总线控制器8288当8086工作于最大模式下时,就必须使用总线控制器8288来“翻译”S0、S1、S2三个引脚形成的总线控制信号null2.2.5 8086工作时序1.时序的概念1.时序的概念计算机的工作是在时钟脉冲CLK的统一控制下,一个节拍一个节拍地实现的。 时序(Timing)就是描述某一操作过程中,芯片或总线上有关引脚信号随时间(时钟脉冲)发生变化的关系图 描述总线操作的微处理器时序有三级 指令周期 → 总线周期 → 时钟周期8088的总线时序(续1)8088的总线时序(续1)指令周期是指一条指令经取指、译码、读写操作数到执行完成的过程。若干总线周期组成一个指令周期 总线周期是指CPU通过总线操作与外部(存储器或I/O端口)进行一次数据交换的过程 8088的基本总线周期需要4个时钟周期 4个时钟周期编号为T1、T2、T3和T4 总线周期中的时钟周期也被称作“T状态” 时钟周期的时间长度就是时钟频率的倒数 当需要延长总线周期时插入等待状态Tw CPU进行内部操作,没有对外操作时,其引脚就处于空闲状态Ti演示等待状态Tw等待状态Tw同步时序通过插入等待状态,来使速度差别较大的两部分保持同步 在读写总线周期中,判断是否插入Tw 在T3的前沿检测READY引脚是否有效 如果READY无效,在T3和它T4之间插入一个等效于T3的Tw ,转1 如果READY有效,执行完该Tw状态,进入T4状态演示8086典型的总线时序8086典型的总线时序本节展开微处理器最基本的4种总线周期 存储器读总线周期 存储器写总线周期 I/O读总线周期 I/O写总线周期(1)存储器/IO读时序(1)存储器/IO读时序在T1周期开始后一段时间(在T1状态)CPU把地址信息在A19~A16、AD15~AD0上输出,并立即发出ALE,将地址锁存。另外,M/IO*也是在这一时间发出的!在T2周期,CPU发出RD*(如果使用数据收发器8286,则同时发出的还有DT/R*和DEN*)。存储器/IO在收到这些信号时,则开始准备数据null在T3周期,存储器/IO将数据发送至D15~D0;在T4周期开始的下降沿。CPU采样数据总线D0~D15以获取数据;(2)具有Tw状态的存储器读时序(2)具有Tw状态的存储器读时序(3)存储器/IO写时序(3)存储器/IO写时序(4)8086最大模式下的读总线周期时序(4)8086最大模式下的读总线周期时序由总线控制器8288产生根据其组合判断是何操作2.(2)最大模式下的写总线周期2.(2)最大模式下的写总线周期(5)8086最大模式下的读写I/O时序(5)8086最大模式下的读写I/O时序在T3的下降沿采样READY信号线为低电平,表示数据未准备好,插入一个Tw时序小结:时序小结:T1:发出地址及相关的控制信号(如RD*、M/IO*等); T2:存储器或外设进行数据准备,同时CPU进行地址线到数据线的转换; T3:采样READY信号线,如无效,则插入Tw; T4:从数据总线上读取数据,完成后撤消相应信号;null2.3 80X86系列 的其它CPU2.3 Intel 80186和802862.3 Intel 80186和8028680286于82年推出,24位AB,16位DB,时钟8~20MHz,集成度13.5万,为满足多任务系统的需要而,采用了两种新的内存管理技术(虚拟内存和保护模式)以使用和管理更多资源。 与8086的显著的区别: 地址线和数据线不再分时复用, 简化了硬件设计; 引入存储管理中的虚存管理机制。通过“虚地址”和“保护”两重功能对存储器管理提供了支持, 加强了对多用户/多任务运行的管理能力。2.3 803862.3 8038680386 划时代的产品,开创了32位微机的先河。 85年推出,32位内外DB,32位AB,16~50MHz,27.5万集成度,132脚4列直插,直接寻址能力4GB,并可管理64TB的虚存(通过虚地址方式)。 存储器管理:在286基础上增加了虚拟8086方式,使其能更好地执行多任务处理。 结构特点:包括EU、BIU、指令预取部件、指令译码部件IU、存储器管理部件等六部分组成图 80386的功能结构图 80386的功能结构第2章:2.3 80486第2章:2.3 8048680486 89年推出,标准32位机,时钟40~100MHz,168脚PGA封装,120万集成度。 从结构组成上看,486相当于以386为核心,增加了8K的CACHE和相当于80387的片内浮点协处理器,以及增加了面向多处理机的机构。但从程序设计角度来看,其体系结构几乎没变。  结构特点:在386的6个功能部件基础上,增加了Cache和FPU两部分,其中多个部分都可以独立并行工作,构成流水线。 第2章: 2.2.3 IA-32的功能结构 - 80486第2章: 2.2.3 IA-32的功能结构 - 80486相对于386,486主要是增加了8K的Cache及将FPU集成到CPU中第2章:2.3 Pentium第2章:2.3 Pentium Pentium 93年推出,时钟60~200MHz,内部DB 32位,外部DB 64位,AB 32位,296引脚,是Intel为迎接Windows 95和多媒体时代而全新设计的。 结构特点: 超标量流水线:内部包括两条5级指令流水线,各有独立的ALU、地址生成逻辑和Cache接口,其中U线负责所有整数和浮点数指令,V线则负责简单的整数指令,这样在最佳状态下,P5可在一个时钟周期内执行二条指令。 双重分离式Cache:拥有独立的8KB指令Cahce和数据Cache,其中数据Cache有两个端口,分别用于U线和V线。 64位外部数据总线:配合PCI局部总线,64位外部DB可大幅度提高数据传输速度,有效解决阻塞问题。 分支指令预测:执行的一些指令,最大限度地提高指令的并行性。 第2章:2.3 Pentium Pro 第2章:2.3 Pentium Pro Pentium Pro 95年推出,用于服务器,为第六代X86,称为P6或高能奔腾。 结构特点: 三路超标量体系:12级流水线;而P5是2路5级。 AB 36位 数据流分析技术:指令译码产生的微动作在执行以前经过整理,然后才能动态地执行。这些微动作并非按指令在程序中的顺序执行,而是乱序(错序)执行,其目的为提高执行的并行性。 增强的分支预测:采用多项转移预测,使CPU可以跟踪多个转移指令,并对转移的结果进行预测,同时超越这些转移,以推测将要执行的一些指令,最大限度地提高指令的并行性。 第2章: PⅡ第2章: PⅡ PⅡ 与Pentium Pro同属P6系列,在后者的基础上增加了MMX功能,采用0.35um/0.25um工艺,750万集度。 结构特点: 将MMX技术加至P6中并采用新的包装; 使用单边接触盒式封装SEC:即Slot 1。 双16KB的一级Cache Celeron:Intel为抵制K6占领低端市场而推出的低价CPU,最初只是简单地将PⅡ中的二级Cache去掉。因此性能较低。 XEON:98年6月开始推出,用于服务器,拥有512KB~2MB的二级Cache,且与CPU同频。第2章:2.3 PⅢ第2章:2.3 PⅢ PⅢ 在PII基础上增加了70条SSE(Streaming SIMD Extension)指令,让CPU可对多个数据同时进行浮点运算(4个32位浮点数); 片内有128位序列号,以标识每一部电脑,以用于电子商务的安全认证。 什么是SIMD? 即单指令多数据,也就是一条指令同时处理多个数据,主要用于处理多媒体数据。第2章:2.3 P4第2章:2.3 P4P4 P4是最新的IA-32结构的微处理器,主要有以下特性: 第一个基于NetBurst微结构的CPU,该结构允许CPU运行在更高的时钟速度上;(400MHz的前端总线) 支持超线程技术; 注意:超线程不同于超标量。 超标量是指CPU内部有两条以上的流水线,这样,CPU在一个指令周期内可以执行一条以上的指令; 超线程则是指CPU内部可以同时运行两个线程; 支持SSE280X86处理器功能扩展及性能提升80X86处理器功能扩展及性能提升从16位扩展到32位 从实模式到保护模式 片内增加存储器管理单元(MMU) 浮点支持 MMX技术 流SIMD扩展 利用流水线提高操作的并行性 增加片内Cache 多核技术教学要求教学要求1. 了解8088的两种组态形式 2. 掌握最小组态下的 引脚定义、工作方式和总线时序 3. 理解总线及其层次结构 什么是分时复用?什么是分时复用?分时复用就是一个引脚在不同的时刻具有两个甚至多个作用 最常见的总线复用是数据和地址引脚复用 总线复用的目的是为了减少对外引脚个数 8088 /8086CPU的数据地址线采用了总线复用方法一个基本的周期时序图一个基本的周期时序图null第5章:等待状态Tw的插入第5章:等待状态Tw的插入
/
本文档为【第02章 中央处理器】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索