第3章微处理器

上传人:沈*** 文档编号:174335362 上传时间:2022-12-14 格式:PPT 页数:78 大小:672.52KB
返回 下载 相关 举报
第3章微处理器_第1页
第1页 / 共78页
第3章微处理器_第2页
第2页 / 共78页
第3章微处理器_第3页
第3页 / 共78页
点击查看更多>>
资源描述
1第第3 3章章 微处理器2主要内容n微处理器的一般结构;微处理器的一般结构;n8086微处理器的组成、引脚功能;微处理器的组成、引脚功能;n8086的内部寄存器和标志位;的内部寄存器和标志位;n8086的存储器组织;的存储器组织;n实模式和保护模式的存储器寻址;实模式和保护模式的存储器寻址;n80X86系列微处理器的结构特点。系列微处理器的结构特点。33.13.1 微处理器的一般结构运算器运算器 算术逻辑运算,由加法器和算术逻辑运算,由加法器和(ALU)一些辅助逻辑电路组成一些辅助逻辑电路组成 指令流控制指令流控制控制器控制器 时序控制,产生节拍定时信号时序控制,产生节拍定时信号 指令译码和操作控制指令译码和操作控制寄存器组寄存器组 存放临时数据、运算的中存放临时数据、运算的中 间结果、运算特征、操作数地址间结果、运算特征、操作数地址性能:性能:8位位16位位 32位位(主流主流)64位位(趋势趋势)主主要要部部件件43.2 80863.2 8086微处理器主要内容:主要内容:n8086外部引线及功能;外部引线及功能;n8086的内部结构和特点;的内部结构和特点;n8086的工作时序。的工作时序。58086的硬件特性n16位微处理器,位微处理器,CMOS型,型,40引脚引脚DIP封装封装n16位数据总线,位数据总线,20位地址总线位地址总线n功耗:功耗:5V,360mA(低功耗型(低功耗型80C86仅需仅需10mA)n输入特性:输入电流输入特性:输入电流0.01mAn逻辑0:0.8Vn逻辑1:2.0Vn输出特性:输出特性:n逻辑0:0.45V,最大2.0mAn逻辑1:2.4V,最大-0.4mAn输出引脚负载能力:n74HC、74ALS、74AS、74F负载10个n74LS负载5个n74、74S负载1个6一、指令流水线取指令取指令指令指令译码译码取操取操作数作数执行执行指令指令存放存放结果结果 CPU执行一条指令的过程类似于工厂生产流水线,被分 解为多个小的步骤,称为指令流水线。原料原料调度分配调度分配生产线生产线成品成品仓库仓库出厂出厂数据和程序指令控制器的调度分配ALU等 功能部件处理后的数据存储器输出7指令流水线n指令流水线有两种运作方式:指令流水线有两种运作方式:n串行方式:取指令取指令和和执行指令执行指令在不同的时刻按顺序执行。在不同的时刻按顺序执行。n并行方式:取指令取指令和和执行指令执行指令可同时执行,需要有能并行工作可同时执行,需要有能并行工作的硬件的支持。的硬件的支持。8串行工作方式n8088086 6以前的以前的CPUCPU采用串行工作方式采用串行工作方式取指令取指令1执行执行1取指令取指令2执行执行2CPUBUS忙忙 碌碌忙忙 碌碌取指令取指令3执行执行3忙忙 碌碌空闲空闲空闲空闲空闲空闲t1t0t2t3t4t56个周期执行了3条指令9并行工作方式n8086CPU采用并行工作方式采用并行工作方式取指令取指令1取指令取指令2取指令取指令3取指令取指令4执行执行1执行执行2执行执行3BUS忙碌忙碌执行执行4CPUt1t0t2t3t4t5取指令取指令5执行执行5忙碌忙碌忙碌忙碌忙碌忙碌忙碌忙碌忙碌忙碌6个周期执行了5条指令10并行操作的前提n取指令部件和指令执行部件要能够并行工作;取指令部件和指令执行部件要能够并行工作;n各部件执行时间基本相同,否则需再细分;各部件执行时间基本相同,否则需再细分;n取指令部件取出的指令要能暂存在取指令部件取出的指令要能暂存在CPU内部内部某个地方;某个地方;n指令执行部件在需要时总能立即获得暂存的指令执行部件在需要时总能立即获得暂存的指令;指令;n需要解决转移指令问题。需要解决转移指令问题。11*超级流水线和超标量结构n超级流水线超级流水线n指令的执行步骤分得更细,流水线长度更长 例如,PIII为14个阶段,P4为20个阶段n有利于提高主频n转移分支时的效率?n解决:分支预测、推测执行n超标量结构超标量结构n对流水线中的关键“岗位”设置多个相同的执行单元多个工人完成一道工序nP4:倍频ALU2,FPU2(其中一个为并行FPU)nAthlon XP:ALU6,并行FPU3组128086 CPU的特点n采用并行流水线工作方式:采用并行流水线工作方式:通过设置指令预取队列(IPQ)实现n对内存空间实行分段管理:对内存空间实行分段管理:将内存分段并设置地址段寄存器,以实现对1MB空间的寻址。n支持多处理器系统:支持多处理器系统:8087 FPU执行部件执行部件取指部件取指部件138086 CPU的两种工作模式n8086可工作于两种模式下,即:可工作于两种模式下,即:最小模式和最大模式。最小模式和最大模式。n最小模式不支持最小模式不支持8087。存储器和。存储器和I/O控制信控制信号全部由号全部由CPU产生。产生。n最大模式支持最大模式支持8087。CPU的部分信号线被用的部分信号线被用作作8087的控制,因此需要由的控制,因此需要由8288总线控制器总线控制器来产生这些控制信号。来产生这些控制信号。注:80286以后的CPU不再区分这两种工作模式。14最小模式下的连接示意图8086CPU控制总线控制总线数据总线数据总线地址总地址总线线地址地址锁存器锁存器数据总线数据总线缓冲器缓冲器ALE时钟发时钟发生生 器器8284A地址地址/数据数据82868282Vcc MN/MXDENDT/R15最大模式下的连接示意图8088CPU数据总线数据总线地址总线地址总线地址地址锁存器锁存器数据总线数据总线缓冲器缓冲器时钟发时钟发生生 器器总总 线线控制器控制器控制总线控制总线8284A8288ALECLK MN/MX82828286GND168288总线控制器n最大模式下,最大模式下,8288总线控制器产生某些总线控制器产生某些CPU不再提供的控制信号。不再提供的控制信号。n8288产生的信号包括:产生的信号包括:n独立的I/O控制命令:IORC、IOWCn独立的存储器控制命令:MRDC、MWTCn中断响应信号和总线控制信号n以上三组信号取代了最小模式的:以上三组信号取代了最小模式的:nALE、WR、IO/M、DT/R、DEN、INTA178288总线控制器逻辑框图控制逻辑命令信号产生器控制信号产生器状态译码器S0S1S2CLKAENCENIOBDT/RDENMCE/PDENALEMCE/PDEN:PIC主控级连/IO设备数据输出控制信号 IOB=0时,PIC主控级连;否则,用于允许I/O总线收发器MRDC(MEMR)MWTC(MEMW)AMWCIORC (IOR)IOWC(IOW)AIOWCINTA (INTA)18二、8086CPU的引线及功能引脚定义的方法可大致分为:n每个引脚只传送一种信息(如每个引脚只传送一种信息(如RDRD)n电平的高低代表不同的含义(如电平的高低代表不同的含义(如M/IOM/IO)n在不同模式下有不同的名称和定义(如在不同模式下有不同的名称和定义(如WR/LOCKWR/LOCK)n分时复用引脚(如分时复用引脚(如ADAD1515ADAD0 0)n引脚的输入、输出分别传送不同的信息(如引脚的输入、输出分别传送不同的信息(如RQ/GTRQ/GT0 0)19最小模式下的主要引线nMN/MX 工作模式控制工作模式控制n=0(接地):工作于最大模式;n=1(接Vcc):工作于最小模式。20最小模式下的主要引线地址总线、数据总线:地址总线、数据总线:nAD15AD0:三态三态n地址/数据复用引脚。ALE=1时作为地址线A16A0,ALE=0时作为数据线D16D0。n传送地址时为输出,传送数据时为双向。nA19-A16/S6-S3:输出,三态输出,三态n地址/状态复用引脚。ALE=1时作为地址线A19A16,ALE=0时作为控制信号。21最小模式下的主要引线控制信号:控制信号:nWRWR:输出,三态输出,三态n写选通信号,表示CPU正在写数据到MEM或I/O设备。nRDRD:输出,三态输出,三态n读信号,表示CPU正在从总线上读来自于MEM或I/O设备的数据。nM/IOM/IO:输出,三态输出,三态n区分是读写存储器还是读写I/O端口(即地址总线上的地址是存储器地址还是I/O端口地址)。22最小模式下的主要引线nDEN:输出,三态输出,三态n数据总线允许信号。用来打开外部数据总线缓冲器。nDT/R:输出,三态:输出,三态n表明CPU正在传送还是接收数据,用来作为外部数据总线缓冲器的方向控制;nALE:输出:输出n地址锁存允许信号,表示地址/数据总线上传输的是地址信号。以上三个信号的用法见下页图以上三个信号的用法见下页图23数据/地址分离电路(最小模式)8282或3738086BHE/S7A19-A16/S6-S3AD15-AD0OE8286或245OEDIRD15-D0DT/RALESTBA19-A0BHE地址总线数据总线DENCPU总线系统总线24最小模式下的主要引线nRESET:输入输入 n复位信号,保持4个以上时钟周期的高电平时将引起CPU进入复位过程(IF清0,并从存储单元FFFF0H开始执行指令);nBHE/S7:输出:输出n高8位数据总线允许。在读/写操作期间允许高高8 8位数据总线位数据总线D16D16D8D8有效(即读/写数据的高8位)。nREADY:输入:输入n准备就绪。用于与存储器或I/O接口的同步。n=0时CPU进入等待状态(插入1个或多个等待周期)。25READY引脚的作用总线周期总线周期T2T1T3T4时钟周期总线周期总线周期T2T1T3TwaitT4标准总标准总线周期线周期增加了等待增加了等待状态的总线状态的总线周期周期若在若在T3周期上升沿检测到周期上升沿检测到READY=0,将插入等待周期,插入的个数取决于,将插入等待周期,插入的个数取决于READY何时变为何时变为1。采样采样26中断请求和响应信号nINTR:输入输入n可屏蔽中断请求输入端,CPU要检查IF状态nNMI:输入输入n非屏蔽中断请求输入端,CPU不检查IF状态nINTA:输出输出n中断响应信号,表示CPU已进入中断响应周期。n此信号常用来选通中断向量号。27总线保持信号nHOLD:输入输入n总线保持请求。用来直接存储器存取(DMA)。当CPU以外的其他设备要求占用总线以便访问存储器时,通过此引脚向CPU发出请求。nHOLD=1时,CPU停止执行指令,并将地址/数据总线和控制总线中的所有三态控制线置为高阻状态。nHLDA:输出输出n总线保持响应。CPU对HOLD信号的响应信号。指示CPU已进入保持状态。28其他信号nTEST:输入:输入n测试信号。执行WAIT指令时将测试此引脚的状态。n=0时,WAIT指令相当于空操作(NOP)。n=1时,WAIT指令将重复测试直到它变为0。n通常此引脚与8087算术协处理器相连。nCLK:输入:输入n时钟引脚。为CPU提供基本的定时信号。n占空比必须为33(高1/3,低2/3)。29三、8086CPU的内部结构n8086内部由两部分组成:内部由两部分组成:执行单元(执行单元(EU)总线接口单元(总线接口单元(BIU)结结 构构30执行单元n功能:执行指令,具体操作如下功能:执行指令,具体操作如下 从从IPQ中取指令代码中取指令代码 译码译码 完成指定的操作完成指定的操作 结果保存到目的操作数结果保存到目的操作数 运算特征保存在标志寄存器运算特征保存在标志寄存器FLAGS(仅对影响标志的指令)(仅对影响标志的指令)31总线接口单元功能:功能:n从内存中取指令到指令预取队列从内存中取指令到指令预取队列IPQ;n负责与内存或负责与内存或I/O接口之间的数据传送;接口之间的数据传送;n在执行转移指令时,在执行转移指令时,BIU将清除将清除IPQ,然后,然后从转移的目的地址处开始取指令并重新填充从转移的目的地址处开始取指令并重新填充IPQ。328086结构特点小结n有有EU和和BIU两个独立的、同时运行的部件两个独立的、同时运行的部件n二者通过二者通过IPQ构成一个两工位流水线构成一个两工位流水线n指令被指令被EU和和BIU按流水线方式处理:按流水线方式处理:n提高了CPU的运行速度;n提高了CPU的执行效率;n降低了对存储器存取速度的要求。33四、8086的工作时序n工作时序分为很多小的时间片工作时序分为很多小的时间片:n时钟周期 一个时钟脉冲所持续的时间。时钟周期越短,一个时钟脉冲所持续的时间。时钟周期越短,CPU执行速度越快。执行速度越快。n总线周期 通过总线对存储器或通过总线对存储器或I/O接口进行一次访问所需接口进行一次访问所需要的时间。一般包括要的时间。一般包括4个时钟周期。个时钟周期。在在5MHz的工作频率时,一个标准总线周期为的工作频率时,一个标准总线周期为0.8s。34总线周期中各时钟周期的操作nT1周期周期nCPU向存储器或I/O发送地址nCPU向地址/数据分离器(地址锁存器)发送ALE信号nT2周期周期n给存储器或I/O发送写入的数据n测试READY引脚状态,以决定是否插入等待周期n发出RD或WR信号nT3周期周期n等待存储器或I/O存取数据完成n使数据在CPU与存储器或I/O之间传输nT4周期周期n写入数据 读读/写总线周期的信号波形见下页图。写总线周期的信号波形见下页图。35数据写入存储器时的总线操作写总线周期由ALE信号将地址锁存到地址锁存器DEN=0并且DT/R=1时打开总线缓冲器,将其放到系统数据总线上此信号与M/IO信号共同构成存储器写控制信号,将数据写入存储器36数据从存储器读出的总线操作读总线周期DEN=0并且DT/R=0时打开总线缓冲器,将其放到CPU总线上,供CPU读入 较完整较完整的读总线的读总线周期周期此信号与M/IO信号共同构成存储器读控制信号由ALE信号将地址锁存到地址锁存器373.3 3.3 8086内部寄存器组n8086寄存器组又称为寄存器组又称为8086的程序设计模型的程序设计模型n它是程序设计中惟一可见的CPU部件n它是系统程序设计员的操作对象n含含14个个16位寄存器,按功能可分为三类:位寄存器,按功能可分为三类:通用寄存器,通用寄存器,8个个 段寄存器,段寄存器,4个个 控制寄存器,控制寄存器,2个个388086寄存器概貌SPIPFLAGSAHALBHBLCHCLDHDLAXBXCXDXBPSIDICSDSESSS通用寄存器控制寄存器段寄存器16位16位39一、通用寄存器 数据寄存器(数据寄存器(AX,BX,CX,DX)地址指针寄存器(地址指针寄存器(SP,BP)变址寄存器(变址寄存器(SI,DI)40数据寄存器n用途:存放用途:存放临时数据临时数据和存放和存放运算操作数运算操作数。(例)。(例)n每个均为每个均为16位,但又可分为位,但又可分为2个个8位寄存器,即:位寄存器,即:nAX AH,ALnBX BH,BLnCX CH,CLnDX DH,DL例如:若例如:若(AX)1234H,则则(AH)12H,(AL)34H41数据寄存器特有的习惯用法nAX:累加器累加器n所有I/O指令都通过AX(AL)与接口传送信息;n中间运算结果也多放于AX(AL)中;n乘除法指令的一个操作数必须在AX(AL)中。nBX:基址寄存器基址寄存器n在间接寻址间接寻址中用于存放操作数的基地址。nCX:计数寄存器计数寄存器n用于在循环指令或串操作指令中存放计数值。nDX:数据寄存器数据寄存器n在间接寻址间接寻址的I/O指令中存放I/O端口地址;n在32位乘除法运算时,存放高16位数。42地址指针寄存器nSP:堆栈指针寄存器:堆栈指针寄存器n其内容为堆栈栈顶的偏移地址;n任何堆栈操作后,SP都会自动增/减量。nBP:基址指针寄存器基址指针寄存器n在间接寻址间接寻址中用于存放操作数的基地址;n常用于访问存放在堆栈中的数据。43BX与BP在应用上的区别n作为通用寄存器,二者均可用于存放数据;作为通用寄存器,二者均可用于存放数据;n作为基址寄存器,默认情况下:作为基址寄存器,默认情况下:n用BX作为指针所访问的数据在数据段(DS段);n用BP作为指针所访问的数据在堆栈段(SS段)。注:间接寻址时注:间接寻址时 仅仅BX、BP、SI、DI可用于存储器寻址;可用于存储器寻址;仅仅DX可用于可用于I/O寻址。寻址。44变址寄存器nSI:源变址寄存器,用于访问源操作数源变址寄存器,用于访问源操作数nDI:目标变址寄存器,用于访问目的操作数目标变址寄存器,用于访问目的操作数n常用于操作数的间接寻址间接寻址或变址寻址变址寻址。n在串操作指令中,SI存放源操作数的偏移地址,而DI存放目标操作数的偏移地址。45二、段寄存器用于存放逻辑段的段基地址(简称段地址)用于存放逻辑段的段基地址(简称段地址)nCS:代码段寄存器。代码段存放指令代码代码段寄存器。代码段存放指令代码nDS:数据段寄存器数据段寄存器 nES:附加段寄存器附加段寄存器nSS:堆栈段寄存器:指示堆栈区域的位置堆栈段寄存器:指示堆栈区域的位置这两个段存放操作数这两个段存放操作数堆栈段SS数据段DS/ES代码段CS46三、控制寄存器nIP:指令指针寄存器指令指针寄存器n其内容为下一条要执行的指令的偏移地址。nFLAGS:标志寄存器标志寄存器n存放指令执行结果的特征:n有些指令(如算术指令)要改变FLAGS的内容(影响FLAGS);n有些指令对FLAGS无影响。n6个状态标志位(CF,SF,AF,PF,OF,ZF)n3个控制标志位(IF,TF,DF)P71例例ODITSZAPC1502467891011FLAGS473.4 80863.4 8086的存储器组织n8086可访问可访问1MB的存储空间(的存储空间(为什么?为什么?)n哪个寄存器能够放得下20位的地址?n用分段分段的方法解决。n段是存储器中的一块区域段是存储器中的一块区域n段起始于存储器内16字节整倍数的边界处。n段首地址的最低4位一定为0n用用段段和和偏移偏移的组合访问存储单元的组合访问存储单元n每个段最大为64KB,最小为16B(为什么?)n所有存储单元的地址都由段地址加偏移地址组成n段地址被装入段寄存器中以供寻址使用n偏移地址用于在64KB存储器段内选择任一单元48段和偏移n设段起始地址设段起始地址=60000Hn段地址段地址n偏移地址偏移地址n0FFFFH6A000H12H60000H6 0 0 0段寄存器偏移地址A000H 0 0 0 0段地址段地址(16位位)段起始地址段起始地址 49物理地址和逻辑地址n物理地址物理地址:存储单元的硬件地址存储单元的硬件地址物理地址=段地址16(或段地址左移4位)+偏移地址n逻辑地址逻辑地址:段和偏移形式的地址段和偏移形式的地址n逻辑地址用于汇编语言程序设计n以下地址都是逻辑地址的例子:n2500H:0100Hn段地址A000Hn偏移地址0001H50例1:n已知已知CS=1055H,DS=250AH ES=2EF0H,SS=8FF0H 数据段中某操作数偏移地址数据段中某操作数偏移地址=0204Hn各段首地址=?n画出各段在内存中的分布n该操作数的物理地址=?n这个例子说明:这个例子说明:n段与段可以不连续n段之间可以重叠10550H250A0H2EF00H8FF00HDS段段ES段段SS段段 CS段段51默认段和偏移寄存器n8086规定了访问存储器段的规则:规定了访问存储器段的规则:n此规则定义了段地址寄存器和偏移地址寄存器的组合方式,其默认规则如下表:段地址段地址默认偏移地址默认偏移地址用于访问用于访问CSIP指令指令SSSP、BP堆栈中的数据堆栈中的数据DSBX、DI、SI、8位或位或16位数位数数据段中的数据数据段中的数据ES串指令的串指令的DI目标串操作数目标串操作数52例2:n设当前执行的程序中某条指令的物理地址为设当前执行的程序中某条指令的物理地址为5A1F6H,则程序所在的段的段地址,则程序所在的段的段地址=?当前?当前CS的内容为多少?的内容为多少?n解:(有多个解,求出任意一个即可)5A1F6H=5A10H10H+00F6H 所以,段地址=5A10H,CS的内容为5A10H 想一想,还有哪些解?想一想,还有哪些解?思考题:设当前数据段位于存储器的思考题:设当前数据段位于存储器的A8000H到到B7FFFH的地址空间,的地址空间,问问DS的内容应是什么才能访问该数据段的所有存储单元?的内容应是什么才能访问该数据段的所有存储单元?53堆栈及堆栈段的使用n堆栈:内存中一个特殊区域,用于存放需要保护的数据。堆栈:内存中一个特殊区域,用于存放需要保护的数据。n堆栈按后进先出后进先出方式工作n堆栈通过SS(段地址)和SP(偏移地址)来访问堆栈指针n堆栈的数据压入方向是从高地址到低地址从高地址到低地址,弹出方向则相反 (堆栈指针的变化举例)n常用于常用于n响应中断n子程序调用n参数传递54例3:n若已知(若已知(SS)=1000H (SP)=2000Hn则堆栈段的段起始地址=?n栈顶地址=?n若该段最后一个单元地址为若该段最后一个单元地址为10100Hn则栈底单元的偏移地址=?段起始栈底栈顶堆栈段 553.5 80X863.5 80X86微处理器了解:了解:n80X86存储器寻址方式存储器寻址方式n80386CPU的特点及存储管理的特点及存储管理n*Pentium 微处理器微处理器56一、80X86的存储器寻址方式n实地址模式实地址模式n用段地址和偏移地址的组合寻址内存的第一个1MB空间n段地址在段寄存器(CS、DS、ES、SS)中n保护虚地址模式保护虚地址模式n80286、80386、80486、PentiumPentium4 n寻址空间(每个段的大小):n80286:224(8MB)n80386以上:232(4GB)n虚拟地址空间64TB(8K+8K个描述符)n段地址在内存的描述符中,描述符由段寄存器的内容来选择(为什么这样做?)57保护模式的存储器寻址1MB实模式实模式存储器存储器 扩展扩展存储器存储器由段寄存器由段寄存器提供段信息提供段信息由描述符提由描述符提供段信息供段信息 FFFFFH00000H100000H两种方式中的偏移两种方式中的偏移地址的用法相同地址的用法相同58保护虚地址模式n描述符(描述符(Descriptor)n用于描述存储器段的位置、大小、访问权限n所有的描述符统一放在内存中的描述符表中n全局描述符表GDT(系统中只有一个)n中断描述符表IDT(系统中只有一个)n包含了指向256个中断处理程序入口地址的描述符n局部描述符表LDT(每个任务一个)nGDT和IDT的基地址由GDTR和IDTR给出nLDT的基地址由LDTR(16位选择子)间接给出n选择子(选择子(Selector,选择符),选择符)n指定描述符在描述符表中的位置(偏移量)59如何访问描述符段寄存器内容段寄存器内容(选择子)(选择子)全局描述符表全局描述符表局部描述符表局部描述符表描述符表描述符表GDTR15 0GDT描述符线性地址空间偏移当前访问的段存储器60描述符的格式(80386以上)访问权限访问权限段界限段界限(L19-L16)G(粒度粒度)G=1,界限要乘以,界限要乘以4KB,即段的大小为,即段的大小为4KB4GB;G=0,段的大小为,段的大小为01MB。D(16/32)D=1,寄存器和偏移地址均为,寄存器和偏移地址均为32位;位;D=0时均为时均为16位。位。AV(段有效段有效)AV=1,段有效;,段有效;AV=0,段无效。,段无效。访问权限访问权限:在保护方式下控制存储的访问。如:能否读写、优先:在保护方式下控制存储的访问。如:能否读写、优先 级别、段如何扩展等。级别、段如何扩展等。15 8 7 6 5 4 3 0段基址段基址(B31B24)DG0AV02461357段基址段基址(B23B16)段基址段基址(B15B0)段界限段界限(L15L0)61例:0008HDS描述符表描述符表 FF00000010000092段界限段界限段基地址段基地址00100000H001000FFH数据段数据段描述符描述符存储器存储器粒度粒度=0GDTR00000000HFFFFFFFFH62选择子的格式n选择子:加载到段寄存器中的内容选择子:加载到段寄存器中的内容选择子(Selector):13位TIRPL15 3 2 1 0从8192个全局描述符或8192个局部描述符中选择一个描述符=0 使用GDTR作为描述符表的段基址,即访问GDT=1 使用LDTR作为描述符表的段基址,即访问LDT请求者优先级别00 最高,11最低63访问局部描述符表LDTn将选择子装入将选择子装入LDTR(用(用LLDT指令):指令):n(以下操作由CPU自动完成)n根据LDTR中的选择子到GDT中选择一个LDT的描述符(即LDT的描述符在GDT中):n这个描述符给出了LDT的基地址和段界限;n它被自动复制到LDTR的高速缓冲区中。n可以看出,可以看出,LDTR是是GDT中的某个中的某个LDT描述符描述符的偏移地址,见下页图示。的偏移地址,见下页图示。n以后就可以用以后就可以用LDTR高速缓冲区中的基地址来高速缓冲区中的基地址来访问局部描述符表了。访问局部描述符表了。64访问局部描述符表LDT选择子选择子GDTR15 0GDTLDT描述符LDTR基地址基地址界限界限权限权限LLDT偏移量15 0LDT段寄存器段寄存器偏移量65二、80386CPU主要特性:主要特性:n全全32位结构位结构(ALU、BUS、Reg),可处理,可处理8/16/32位数据位数据n物理寻址空间物理寻址空间232字节(字节(4GB)n外部数据总线传输率为外部数据总线传输率为33MB/sn片内集成片内集成MMU,支持段式或页式虚拟存储管理和特权保护,支持段式或页式虚拟存储管理和特权保护n虚存空间64TB,1MB或4GB/段,16384段/任务n4级特权层:一般OS为0、1、2级,用户程序为3级n实地址方式、虚拟实地址方式、虚拟8086方式和保护方式方式和保护方式n硬件支持多任务,一条指令可完成任务转换,转换时间硬件支持多任务,一条指令可完成任务转换,转换时间17usn更先进的流水线结构:更先进的流水线结构:16字节指令队列字节指令队列n时钟速度:时钟速度:1633MHz661.内部结构分三个部分:分三个部分:n总线接口单元(总线接口单元(BIU)n与存储器和接口间的数据传送n中央处理单元(中央处理单元(CPU)n指令预取部件、指令译码部件、执行部件n指令译码和执行n存储器管理单元(存储器管理单元(MMU)n段管理部件、页管理部件n地址转换、虚存管理内部内部结构结构672.主要引线功能nD0D31:双向,:双向,32位数据总线位数据总线;nA2A31:输出,:输出,30位地址总线;位地址总线;nBE0BE3:字节选通输出,与:字节选通输出,与30位地址线结合可位地址线结合可 相当于相当于32位地址;位地址;nW/R:输出,写:输出,写/读控制信号;读控制信号;nD/C:输出,数据传送周期:输出,数据传送周期/控制周期;控制周期;nBS16:输入,有效则总线宽度为:输入,有效则总线宽度为16位;位;nADS:输出,地址信号有效;:输出,地址信号有效;nNA:输入,下一地址请求信号;:输入,下一地址请求信号;n其他信号与其他信号与8086基本一致基本一致683.内部寄存器组n共共34个内部寄存器个内部寄存器8个通用寄存器(个通用寄存器(32/16/8位)位)6个段寄存器(个段寄存器(16位)位)指令指针(指令指针(32/16位)位)标志寄存器(标志寄存器(32/16位)位)4个系统地址寄存器(个系统地址寄存器(32+20位位/16位)位)控制寄存器控制寄存器调试和测试寄存器调试和测试寄存器69通用寄存器组(32/16/8位)nEAXnEBXnECXnEDXnESInEDInEBPnESP低低16位可分为两个位可分为两个8位寄存器位寄存器低低16位可作为独立的寄存器位可作为独立的寄存器注:注:32位寻址时,这位寻址时,这8个个32位寄位寄存器全部可用于提供偏移地址。存器全部可用于提供偏移地址。70段寄存器(16位)nCSnDSnESnSSnFSnGS每个每个16位位段寄存器对应一个段寄存器对应一个64位位的高速缓冲段描述符的高速缓冲段描述符一旦选择子装入段寄存器,一旦选择子装入段寄存器,相应的段描述符立刻被自动相应的段描述符立刻被自动装入高速缓冲段描述符中装入高速缓冲段描述符中新增的新增的2个段寄存器个段寄存器71指令指针及标志寄存器(32位)n指令指针指令指针EIPn标志寄存器标志寄存器EFLAGS(增加了(增加了4个标志位)个标志位)IOPL指定指定I/0操作处于哪个特权级;操作处于哪个特权级;NT当前任务是否嵌套于另一任务;当前任务是否嵌套于另一任务;RF调试结束,下一条指令后恢复程序的执行;调试结束,下一条指令后恢复程序的执行;VM是否工作于虚拟是否工作于虚拟8086方式方式EFLAGS72系统地址段寄存器(程序不可见)nGDTR 48位全局描述符表寄存器位全局描述符表寄存器n指示全局描述符表的基地址基地址(32位位)和表的界限表的界限(16位位)nIDTR 48位中断描述符表寄存器位中断描述符表寄存器n指示中断描述符表的基地址基地址(32位位)和表的界限表的界限(16位位)nTR 16位任务状态寄存器位任务状态寄存器nLDTR 16位局部描述符表寄存器位局部描述符表寄存器以上这些寄存器不直接被程序访问。以上这些寄存器不直接被程序访问。73程序不可见的寄存器CSDSESSSFSGS基地址界限权限TRLDTR基地址界限GDTRIDTR基地址界限权限程序不可见区域程序不可见区域描述符(寄存器)高速缓冲区描述符(寄存器)高速缓冲区744.80386的工作模式小结n实模式实模式n只允许CPU访问第一个1MB存储器空间n实模式存储器/常规内存n每次加电/复位后默认的工作方式n存储单元的地址都由“段偏移”组成n保护模式保护模式n允许CPU访问所有存储器空间n段地址由描述符提供,描述符由选择子在描述符表中选择n分页机制n虚拟虚拟8086模式模式n在保护模式下模拟多个8086工作环境 地址转地址转换换75三、Pentium 4 CPU简介简介n物理特性(三个版本)物理特性(三个版本)n2000.8 Willametten0.18u铝工艺n1.4GHz 2.0GHznSocket 423/3400万晶体管,Socket 478/4200万晶体管nFSB 400/533MHzn12KOps+8KB L1+256KB L2n2001.2 Northwoodn0.13u铝/铜工艺n1.6GHz 3.06GHznSocket 478,5500万晶体管nFSB 533/800MHzn12KOps+8KB L1+512KB L2+2MB L3(XE版本)n2004.2 Prescottn0.09u铜工艺n2.8GHz?nSocket 478/SocketT,12500万晶体管nFSB 800MHzn16KOps+16KB L1+1MB L276Pentium 4 CPU简介简介nNetburst体系结构体系结构n2个2x ALU1个1x ALU,两个2x AGU(地址)n超级流水线,20级n高级动态执行n乱序执行:一条指令暂时不能执行时,后面的指令可继续执行n推测执行:为保证流水线不间断,先执行再判断,发现预测错误时再返回错误点重新开始n同时执行126条指令n同时执行48个读取操作和24个存储操作n增强的分支预测能力n分支目标缓存BTB,可追踪4096个分支目标地址n新型缓存体系结构n12K微指令追踪缓存,存放已执行过的指令,以便分支预测错误时能够立即恢复到错误的分支点n8KB L1数据缓存n256KB512KB L2高级传输缓存n4倍速总线接口n总线频率100MHz(133MHz)*4400MHz(533MHz)FSB77Pentium 4 CPU简介简介n增强的单指令多数据流指令集增强的单指令多数据流指令集SSE2n144条128位多媒体指令n128位整数运算、128位双精度浮点运算n改善了视频、音频、3D图形、网络等领域的数据处理能力n存储管理基本同存储管理基本同80386n基本运行环境基本运行环境78第3章作业:n 3.1n 3.5n 3.6n 3.10n 3.11n 3.13n 3.16n 3.20
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!