欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    微处理器及系统.ppt

    • 资源ID:6284375       资源大小:1.42MB        全文页数:115页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    微处理器及系统.ppt

    8086处理器80386处理器80486处理器Pentium处理器程序设计模型,本章要点,第2章 微处理器及系统,系统主要组成,80868088由两个独立的处理部件组成:执行部件EU(Execution Unit)总线接口部件BIU(Bus Interface Unit)设置了指令预取队列,支持以流水方式执行指令,2.1 8086处理器,处理器字长:处理8位或16位的数据,时钟频率为48MHz 直接寻址的存储空间为1M字节(220)中断源为256级,包括内部软件和外部硬件中断 支持最小方式(单CPU)和最大方式(多CPU)工作)独立的I/O端口地址寻址方式:I/O端口有64K个,主要性能指标,8086内部结构,BIU完成内外信息交换,即:取指令 传送数据 形成物理地址EU执行全部指令,即:指令译码 执行指令 向BIU传送偏移地址信息 管理通用寄存器和标志寄存器,1.BIU与EU的主要功能,BIU和EU并行操作示意图,通用寄存器 既可用作16位也可用作8位。AX作为累加器,在字(AL,AH字节)乘,除法运算中存放结果,I/O指令中传送数据.BX作为基址寄存器,CX作为计数寄存器(如循环、串操作)DX作为端口地址寄存器,2.8086/8088内部寄存器,地址指针寄存器SP,BP SP:堆栈指针寄存器 BP:基址指针寄存器变址寄存器SI,DI SI:源变址寄存器 DI:目的变址寄存器,段寄存器CS,DS,SS,ES CS:代码段寄存器 DS:数据段寄存器 SS:堆栈段寄存器 ES:附加段寄存器指令指针寄存器IP 存放预取指令的偏移地址.,D15,D0,OF DF IF TF SF ZF AF PF CF,进借位标志,奇偶标志,辅助进借位标志,全零标志,符号标志,单步中断,中断允许,方向标志,溢出标志,1-有进、借位0-无进、借位,1-低8位有偶数个10-低8位有奇数个1,1-低4位向高4位有进、借位0-低4位向高4位无进、借位,1-结果为00-结果不为0,标志寄存器FLAGS 记录算术和逻辑运算的一些状态标志,有16位,其中有7位未用。,控制标志(3个)DF(direction flag):方向标志.IF(interrupt enable flag):中断允许标志TF(trap flag):跟踪(陷阱)标志状态标志(6个)CF 进/借位标志(Carry Flag):有进/借位为1,无进借位为0。另循环指令也使CF=1。AF 辅助进位标志(Auxiliary Carry Flag):低4位向高位有进/借位(即第3位向第4位进位)为1,否则AF=0。PF 奇偶标志(Parity Flag):运算结果若低8位所含1的个数为偶数,则PF=1,否则PF=0。ZF 全零标志(Zero Flag):当运算结果使有效位数的各位全为零时ZF=1,否则ZF=0。SF 符号标志(Sign Falg):当运算结果为负时SF=1,否则SF=0。SF的值就是有符号数的最高位(符号位)。OF 溢出标志(Overflow Flag):当运算结果超出了机器所能表示的范围时,则OF=1,表示溢出,否则OF=0。溢出判断方法:OP=Cn-1异或 Cn-2,存储器组织,在8088/8086系统中,存储器是按字节编址的,其寻址空间为1MB,每个字节地址为20位,这20位的地址称为物理地址。,1.存储器的分段,为什么要分段?,物理地址:20位8086寄存器:16位,能处理的地址目标只能是16位(216=64KB)因此,把1MB存储空间分成若干个逻辑段,每个逻辑段的容量=64KB。段与段之间可以相互独立或首尾相连或相互重叠。对于任何一个物理地址,可以唯一的包含在一个逻辑段中,也可以包含在多个相互重叠的逻辑段中。,一种特殊的分段情况。,规定:段的首地址低4位为零,段首地址的高16位称为“段基址”,存放在段寄存器DS、CS、ES、SS中,段内的偏移地址存放在IP中。,物理地址(绝对地址):用20位二进制数表示 逻辑地址:程序员使用的地址,由段基址和偏移地址组成,它们都是用16位二进制数表示。每个存储单元对应一个20位的物理地址,它由逻辑地址变换而来。CPU自动将逻辑地址转换成相应的物理地址。,2.逻辑地址和物理地址,物理地址的形成,例:CS=FA00HIP=0300H物理地址=FA000H+0300H=FA300H,物理地址=段基址*16+偏移地址通过BIU的地址加法器实现。,段基址、段首址、段的起始地址之间的区别与关系?,段首址=段基址*10H,注意:A段既可作为代码段,也可作为数据段,还可作为堆栈段段,要把段基址赋值给相应的段寄存器。,用段来组织逻辑空间,每段最长可达64KB各段起始地址的低4位为0各段之间可以分开、部分或完全重叠、可首尾相接根据各段的用途将其定义为CS、DS、ES、SS段,并用偏移地址表示被访问单元 CS段中用IP表示偏移量 SS段中用SP、BP DS/ES段中用BX、SI、DI、数值,CS 0000,IP,DS或ES 0000,SI、DI或BX,SS 0000,SP或BP,段寄存器和偏移地址寄存器组合关系,例题,哪两种地址合成物理地址?下列合成物理地址是否正确?是发生在取指令或执行指令?1.CS:SP 2.DS:DI 3.DS:IP 4.SS:SP,已知CS=FA00H,IP=0300H,求当前指令的实际地址。指令的物理地址=FA000H+0300H=FA300H,计算下列地址 1.1000H:1234H=?2.A200H:12CFH=?3.A000H:?=A0123 4.?:CD21H=32D21H,2.1.4 8086/8088工作模式,最小模式:指在系统中只有一个微处理器,系统中的所有总线控制信号都直接由8086/8088产生,因此整个系统中的控制线路最简单,对应这种工作模式称为最小模式。最大模式:是相对于最小模式而言的,指系统中含有两个或两个以上微处理器,其中一个就是8086/8088为主处理器,其它都是协处理器。在8086/8088系统中与其配合的协处理器有数值运算协处理器8087和输入输出协处理器8089。处理器的最小定时单位,它由主频决定。模式由硬件决定:CPU引脚MN/MX_为“1”高电平,在最小模式;为“0”电平,在最大模式.,A.最小模式下的典型配置,B.最大模式下的典型配置,5.8086/8088引脚信号,8086,8088,40引脚集成芯片,引脚含义,NMI为硬件中断源中不可屏蔽中断输入信号,上升沿有效。INTR为硬件中断源中可屏蔽中断的输入信号,高电平有效。所有外部调设备的中断源均接至中断控制器,通过中断控制器输出再接入INTR引脚。实现中断管理AD15-AD0:地址/数据复用引脚,A19/S6A16/S3:地址/状态复用输出线BHE/S7:高8位数据总线允许/状态复用输出线RD:读信号输出线CLK:时钟输入线RESET:复位信号输入线READY:准备好信号输入线(由存储器和I/O设备发来)MN/MXGND和Vcc,第2431引脚的信号含义与工作模式有关。,S0S7含义,S7未定义S6始终为低S5与标志寄存器中的中断允许标志IF一致。S4、S3表示使用的段寄存器S2-、S1-、S0-组合确定最大模式下总线操作类型(见P13),QS1和QS0含义,QS1和QS0在最大模式下表示指令队列的使用情况,最小模式总线操作,最大模式总线操作类型,6.总线周期的概念,总线周期:CPU通过总线与存储器或I/O接口进行一次数据传输所需的时间。时钟周期:微处理器的最小定时单位,它由主频决定。8086/8088一个基本总线周期包括4个时钟周期的时间。习惯称为4个状态,分别记为T1、T2、T3和T4状态。T1状态:输出地址信息并锁存。T2状态:撤消地址,为传送数据作准备。T3状态:如果外部准备好,则数据稳定在总线上。T4状态:读写总线上的数据,总线周期结束。指令周期:在微机系统中,CPU是在时钟信号CLK控制下,按节拍有序地执行指令序列。从取指令开始,经过分析指令、对操作数寻址,然后执行指令、保存操作结果,这个过程称为指令执行周期.一条指令从取出到执行完毕所需要的时间。,8086/8088总线时序(读),(1)T1状态M/IO信号:从存储器读还是从I/O设备中读数据;AD15-AD0、A19/S7-A16/S3:确定20位地址;/BHE:选择奇地址存储体选择。ALE:地址锁存信号,以使地址/数据线分开。,(2)T2状态A19/S6-A16/S3:出现S6-S3状态信号。决定段寄存器、IF状态、8086CPU是否连在总线上。AD15-AD0:高阻状态。/RD:由高电平变为低电平,开始进行读操作。/DEN:变低电平,启动收发器8268,做好接收数据的准备。,(3)T3状态若存储器或I/O端口已做好发送数据准备,则在T3状态期间将数据放到数据总线上,在T3结束时,CPU从AD15-AD0上读取数据。,(4)TW状态在T3状态,存储器或外设没有准备好数据,不能在T3状态将数据放到总线上,使READY=0,则CPU在T3和T4之间插入一个或几个TW状态,直到数据准备好READY=1为止。TW状态时总线的动作与T3时相同。,(5)T4状态CPU对数据总线进行采样,读出数据。,总线时序(写),(1)T1状态M/IO信号:对存储器写还是对I/O设备中写数据;AD15-AD0、A19/S7-A16/S3:确定20位地址;/BHE:选择奇地址存储体选择。ALE:地址锁存信号,以使地址/数据线分开。DT/R:为高电平,指示收发器8286发送数据,写操作。(2)T2状态A19/S6-A16/S3:出现S6-S3状态信号。决定段寄存器、IF状态、8086CPU不否连在总线上。,AD15-AD0:发出16位数据。/WR:由高电平变为低电平,开始进行写操作。/DEN:变低电平,启动收发器8268,做好发送数据的准备。(3)T3状态若存储器或I/O端口已做好接收数据准备,则在T3状态期间将数据放到数据总线上,在T3结束时,CPU将AD15-AD0上数据写入到存储器或I/O设备中。(4)TW状态在T3状态,存储器或外设没有准备好接收数据,使READY=0,则CPU在T3和T4之间插入一个或几个TW状态,直到设备准备好READY=1为止。,(5)T4状态在T4状态,数据从数据总线上被撤除,各种控制信号和状态信号进入无效状态,CPU完成了对存储器或I/O设备的写操作。,2.2.1 主要特点80386微处理器 1时钟频率提高 20MHz以上,远远高于80286的时钟频率。2寻址能力增强 80386提供了32位地址总线,寻址能力提高到4096MB(232=4GB)。3增强内存管理 从80386开始,除了分段管理外,还增加了内存分页(Memory Paging)的技术。4增加了虚拟86工作方式 除了保持了80286的实地址方式和保护方式外,80386还增加了一种叫做保护方式下的虚拟8086方式(简称虚拟8086或虚拟86或V86方式)。,2.2 80386/80486微处理器,80486微处理器,特点:采用精简RISC指令技术芯片含有8K内部CACHE芯片含有80387协处理器采用猝发式总线(Burst Bus)技术性能:外部数据、地址总线:32位最大工作频率:133M流水线:5级逻辑地址空间:64T物理地址空间:4G,2.2.2 内部结构,80386的功能模块,80386内部结构图,80486的内部结构框图,ALU:定点数运算和逻辑运算部件(80386)FPU:浮点数运算部件(80387协处理器)PLA、TLB:面向多用户(虚地址)的存储器段管理和页管理部件CACHE:高速缓存其它与8086/8088部分相同 指令码流:CACHE(或内存)、指令队列、指令译码。物理地址:段址+偏址、由段管理产生线性地址。线性地址由页管理产生物理地址。数据流:CACHE(或内存)、直接进入运算器。,80486的内部结构,2.2.3 内部寄存器,1、寄存器特点,1.通用寄存器和标志寄存器都扩展到32位,在原16位基础上前面加E。数据寄存器可进行8位、16位和32位操作。2.段寄存器仍为16位,但增加两个数据段寄存器FS和GS。3.增加三个控制寄存器CR0、CR2和CR3(无CR1)。4.系统地址寄存器与80286类似。,2、386寻址方式,地址 内存 指令010008B MOV CX,1234H01001 0E 01002 34 下一指令01003 1202000 XX02001 XX.03234 ED 源操作数03235 BE,执行之后:CX=?,3)直接寻址方式,PA=段地址+直接地址(CS,DS,SS,ES),4)寄存器间接寻址方式,PA=CS,DS,SS,ES:BX,BP,SI,DI,PA=DS:SI=02000+1234=3234,3、系统表寄存器,作用:在保护模式下分别指出对应的表在存储器中的起始地址及占存储单元数。GDTR全局描述符表寄存器 作用:保存全局描述符表在存储器中的起始地址(32位)及所占存储单元数(16位)。LDTR局部描述符表寄存器 作用:保存局部描述符表在存储器中的起始地址及所占存储单元数。IDIR中断描述符表寄存器 作用:保存中断描述符表在存储器中的起始地址及所占存储单元数。TR任务寄存器 作用:保存任务状态段在存储器中的起始地址及所占存储单元数。,GDTR与GDT表,GDTR长度为48位的寄存器。其中32位用作指出表在存储器中的基地址,16位为该表所占的主存空间的大小。它们分别被称为基址字段和边界字段,GDTR,GDT表,4、标志寄存器,VM 虚拟方式位:VM=1使80386工作在虚拟8086方式。RF 恢复标志:RF标志位与调试寄存器的断点或单步操作一起使用。当调试失败后,利用RF标志(使RF=1)强迫使程序恢复执行,当程序顺序执行时该标志位自动清0(RF=0)。,5、控制寄存器,2.2.4 80386Pentium三种工作模式,1.实地址模式 系统启动后,80386/486自动进入实地址方式。在此方式下,采用类似于8086的体系结构,80386/486在实地址方式下的主要特点如下:寻址方式、存储器管理、中断处理与8086一样.操作数默认长度为16位,但允许访问32位寄存器(在指令前加前缀)。不用虚拟地址,最大地址范围仍限于1MB,只采用分段方式,每段最大64KB。80386的4特权级,在实地址方式下,程序在最高级0级上执行,80386指令集除少数指令外,绝大多数指令在实地址方式下都有效。存储器中保留两个固定的区域,一个是初始化程序区FFFF0HFFFFFH,另一个为中断向量表00000H003FFH。,10000H,00000H,10000H,1F000H,1FFFFH,F000H,段寄存器:CS,SS,DS,ES,偏移:(IP,BP,BX,DI,SI),逻辑地址:1000H:F000H物理地址=1000H*16+F000H=1F000H,实地址模式,最大地址范围:1MB,每段最大64KB,2.保护地址模式 所谓保护是指在执行多任务操作时,对不同任务使用的虚拟存储器空间进行完全的隔离,保护每个任务顺利执行。在保护方式下,80386/486具有如下特点:1存储器采用虚拟地址空间、线性地址空间和物理地址空间三种方式来描述。2强大的寻址空间。在保护方式下,可以寻址的空间大至64TB(246)(虚拟地址)。3使用4级保护功能,可实现程序与程序、用户与用户、用户与操作系统之间的隔离和保护,为多任务操作系统提供优化支持。4在保护方式下,80386/486既可以进行16位操作,又可进行32位操作。,3.虚拟8086方式,所谓虚拟8086模式是指一个多任务的环境,即模拟多个8086的工作方式。虚拟8086方式的主要特点如下:1可执行原来采用8086书写的应用程序。2段寄存器的用法与实地址方式一样。3可以使用分页方式,将1MB分为256个页面,每页4KB。4在虚拟8086方式中,应用程序在最低特权级3级上运行,因此80386指令系统中的特权指令不能使用。,4.实地址模式与V86模式区别,1内存管理方式不同:实地址方式只采用分段管理,而不采用分页管理,而虚拟8086方式既分段又分页。2存储空间不同:实地址下的最大寻址空间为1MB,而虚拟8086方式下每个任务尽管最大1MB,但可以在整个内存空间浮动,因此V86方式实际寻址空间为4GB。3保护机制不同:实地址方式下无保护机制,而虚拟8086方式既可以运行8086程序,又支持多任务操作,这就解决了80286保护方式既要维持保护机制,又要运行8086程序的矛盾。如在Windows 下多次双击MS-DOS即运行多个DOS程序(8086程序)。,2.2.5 80386Pentium存储器管理1、基本概念,1)虚拟存储器和物理存储器 一个程序在运行之前,没有必要全部被装入到内存,而是在运行程序之前只将那些马上要运行的部分先装入到内存运行,其余部分暂时留在外存上,待需要时再装入。这样便可以使一个较大的应用程序在较小的内存空间中运行,使内存资源的利用率提高。从用户角度看,系统当前使用的内存空间比实际的内存空间大得多,我们称这样的存储器为虚拟存储器。物理存储器是CPU可直接访问的存储器,即主存储器.,2)三种地址描述方法,1.线性地址空间:由段转换得到的地址。232字节=4GB2.物理地址空间:实际内存地址,其大小由CPU地址总线的位数决定。232字节=4GB3.虚拟地址空间:程序指定的、通过所有段描述符描述的整个地址空间(即程序可以使用的空间)。其大小由CPU的存储管理系统及体系结构确定。段描述符个数 最大段大小=214 232字节=246字节=64TB 如何把4GB的物理地址空间分配给64TB 的程序,是存储管理部件要解决的主要问题。,保护方式下80386物理地址形成分为两步进行,1.分段:首先将48位逻辑地址转换成32位线性地址,由分段部件SU完成,方法与80286同;2.分页:再将32位线性地址转换成32位物理地址,由分页部件PU完成。分页是32位处理器独有的。,2、物理地址的形成,一个程序由多模块组成,组成程序的模块大小可以各不相同,但每一个模块都是一个特定功能的独立的程序段,都以该段的起点为0相对编址。当某一程序段(模块)从辅存调入主存,只要由系统赋予该段一个基址,就可以把基址和每个单元在段内的相对位移量组合起来,形成这些单元在主存中各自的实际地址。段式存储器把虚拟空间按比例分配,各段的大小不定,因此特别适合这种编程方法。,3、分段管理1)地址映象与变换,2)段描述符,在保护模式下,段地址不再像实模式那样由段寄存器提供,而由段描述符提供。一个段描述符由8个字节组成,描述了某个存储器段的位置、长度和访问权限,其基本格式如图 所示。段描述符是位于主存中的一种数据结构,由系统程序创建,它为处理器提供段的基本信息。,段基址:2、3、4、7字节组成。段界限:0、1字节及第6字节的低4位共20位组成,该字段的值决定了段的长度,其单位由“G”位决定。访问控制:第5字节及第6字节的高4位共12位组成,段的所有属性信息都包含在这12个位中。,“G”位称作粒度位,用来确定段长度的单位。当G=0时,长度以字节为单位;当G=1时,长度以页为单位。(1页=4KB(212B)“P”位是存在位,P=0表示该段目前并不在内存中,而要从磁盘上调进来;P=1表示该段已装入内主存。“AVL”可用位:AVL=1,系统软件可以使用该段,AVL=0,系统软件不可以使用该段。,3、描述符表,位于主存中,内存放一系列段描述符。,GDT表,GDTR,RPL 请求特权级(0,1位共两位),构成了选择子的特权(03),其中0为最高级,3最低。TI 描述符表指示器,表示选择子选择了哪一个描述符表。TI=0,选择全局描述符表(GDT),TI=1,表示选择了局部描述符表(LDT)。索引 位153共13位形成描述符所在地址的索引,对于每一个描述符表可指示213(8K)个描述符。因此,80286的虚拟地址空间最大为213264KB=1GB。,4、段选择子,CS等6个段寄存器是段选择器,其内保存的是段描述符索引,用于选择描述符表内的段描述符。,已知:GDT和LDT的首地址分别为55600000H和00013000H,FS=000BH CR3=00013000H,ESI=0000125AH,内存有关数据如图所示。执行指令MOV EAX,FS:ESI,求:1.PE=0时源操作对应的物理地址及EAX中的值2.PE=1且PG=0时源操作对应的物理地址及EAX中的值3.PE=1且PG=1时源操作对应的物理地址及EAX中的值,例.32位处理器寻址,例图示:,分析:指令MOV EAX,FS:ESI指示的数据使用FS段,在保护方式下为 段选择子 FS=000BH=0000 0000 0000 1011B,即TI=0,因此选中GDT表,RPL=11,为用户程序请求段,索引值=0000000000001B,偏移地址=ESI=0000125AH。1.PE=0处理器工作在实地址方式,物理地址=段地址*16+偏移地址=000B0H+125AH=0130AH,EAX中的值即为该地址指示的4个单元中的数据,故EAX=49102512H。2.PE=1且PG=0即不分页的保护方式,因此,使用段描述符找段基地址:段描述符地址=GDT首地址(GDTR中)+索引值*8=55600000H+0008H=55600008H故:段描述符=014449 00700001FFH,其中段基地址=01007000H,因此物理地址=线性地址(PG=0)=段基地址+偏移地址=0100825AH,EAX=12009966H,例解,已知:GDT的首地址:55600000H,LDT的首地址00013000H,FS=000BH CR3=00013000H,ESI=0000125AH,5、分页管理,分段和分页的主要不同是,一个段的长短可变,而页则是使用存储器中固定尺寸的小块。页式存储器把主存空间和辅存空间都分别划分为多个相同尺寸的定长块。每块称作一页(又称页面、页框等),并按顺序编号。微处理器把页面尺寸定为4KB(212)。,页式存储器地址映象与变换,在页式存储器中,每个任务都由页表作为虚拟空间映像到物理空间的中介。如图所示,编写的程序A由4页组成组成页表的行称作页表项,页表项主要由页面基址和控制信息位组成,页式存储器通过页表项对页面进行管理。页表本身也是一页,且存储在主存中。,80386P4页式存储器的4GB(232)的线性空间被分为220个页面(页的起始地址总是安排在低12位为0的地址处),所以需要有220个页表项对其进行管理,显然,一张页表是无法容纳下这么多页表项的。80386P4微处理器采用二级页表方法对页面进行管理,第1级页表称作页目录表,页目录表的页表项指明第2级页表中各页表的地址。这样,虚页号就被分为页目录项和页表项两部分。页表和页目录表都存放在主存中,页目录表的基址由控制寄存器CR3的高20位(3112)*212指定,低12位默认为全0。,页目录表和页表:分页管理涉及的两个表,页目录表,页表0,页表1023,分别指示220页的基址,1.页表项由32位组成,其中高20位是页面基址,页表中的该字段就是实页号,在页目录表中,页面基址*212=相应页表的首址;2.低12位用来说明页(页表)的控制状态信息,“P”是存在位,当P=1时,表示该页在主存中。在地址变换过程中,若发现P=0,则表示需立即访问的页不在主存,这种情形称作页面失效(页面故障)。3.两级页表中的页表项的作用虽然不同,但格式却完全一样。,页表描述符和页描述符,线性地址分为三部分,页表项索引(10b),页目录项索引(10b),页内偏移量(12b),线性地址(32b),线性地址转化为物理地址,分为三步:找页目录描述符 找页描述符 合成物理地址,页式存储器的地址变换,线性地址=0100825AH=0000 0001 0000 0000 1000 0010 0101 1010 B,其中:页目录索引=0000 0001 00B,页索引=00 0000 1000B,页内偏移量=0010 0101 1010 B(1)找页目录描述符(目的求页表基地址)页目录描述符地址=页目录表基地址(CR3)+页目录索引*4=00013000H+0010H=000013010H,页目录项(描述符)=55600040H,因此页表基地址=55600000H。(2)找页描述符(目的求页的基地址)页描述符地址=页表基地址+页索引*4=55600000H+20H=55600020H页描述符=000060B6H,因此页基地址=00006000H(3)合成物理地址(页基地址+页内偏移量)物理地址=页基地址+页内偏移量=00006000H+25AH=0000625AHEAX=061A9936H(完),例解:,一、Pentium 主要特点1与X86兼容2RISC型超标量结构 即微处理器内具有多个指令单元,多条指令流水线。3高性能浮点运算部件4双重分离Cache5增加错误检测与报告分析功能6 64位外部数据总线7 分支指令预测8 常用指令固化及微代码改进9 增加系统管理方式,2.5 Pentium微处理器,Pentium微处理器是由总线接口部件、代码、数据Cache、分支目标缓冲器、控制ROM部件、预取缓冲存储器、指令译码部件、整数运算部件、整数和浮点数寄存器及浮点运算部件等11个功能部件组成(如图所示)。,二、Pentium处理器内部结构,Pentium微处理器逻辑框图,1、超标量与流水线 1)超标量和流水线的概念,超标量:配置多个执行部件和指令译码电路,能同时执行多条指令。Pentium由三个执行单元组织而成,一个执行浮点指令,另两个执行整型指令(U流水线和V流水线),这意味着Pentium同时可以执行三条指令。流水线:在CPU中把一条指令分解成多个可单独处理的操作,使每个操作在一个专门的硬件站(stage)上执行,这样一条指令需要顺序地经过流水线中多个站的处理才能完成,但是前后相连的几条指令可以依次流入流水线中,在多个站间重叠执行,因此可以实现指令的并行处理。,80486指令分PF、D1、D2、EX、WB五个操作步骤,0,1,2,3,4,5,6,8,7,时间,i1,i2,i3,i4,2)整数流水线 Pentium微处理器具有两条整数指令流水线,分别称为U流水线和V流水线。每条流水线分为5级,分别为:PF(预取):处理器从代码cache中预取指令 D1(译码阶段1):处理器对指令译码确定操作码和寻址信息。在这个阶段还进行指令的成对性检查和分支预测 D2(译码阶段2):产生访问存储器的地址 EX(执行):处理器或者访问数据cache,或者利用ALU、筒型移位器或其他功能单元计算结果 WB(写回):利用指令运行结果更新寄存器和标志寄存器 每条指令完成一个流水级后,就会进入下一级,以便让指令队列中的下一条指令进入该级。,时间,i1,i2,i3,i4,0,1,2,3,4,5,6,8,7,i5,i6,i7,i8,U,V,U,V,U,V,Pentium的超标量流水线,3)浮点流水线 浮点部件FPU拥有专用的加法单元、乘法单元和除法单元。微处理器中的浮点操作被高度流水线化,并与整数流水线集成在一起。浮点流水线由8个独立的流水级组成,即指令预取(PF)、指令译码1(D1)、指令译码2(D2)、取操作数(EX)、执行1(X1)、执行2(X2)、结果写回(WF)和错误报告(ER)。,2、分支预测,1)条件转移指令对流水线效率的影响,条件转移指令在D1阶段经过的指令译码即可被处理器所发现,但是转移的方向,则要等到其前面的指令经过WB步骤更新了标志寄存器后才能确定,所以通常情况下一旦处理器发现条件转移指令,则停止后续指令的预取,等到条件转移指令前面的指令执行完毕,更新了标志寄存器,确定了转移方向以后,再重新开始流水线操作,而这时流水线已经空置,等到指令再次流到执行部件,执行部件已经停顿了好几个周期,所以条件转移指令对流水线效率的影响很大。,2)Pentium微处理器的分支预测策略,Pentium处理器设置了一个分支目标缓冲器BTB(Branch Target Buffer)根据最近执行的分支指令的历史状况动态地预测程序分支。BTB中保持着最近所遇到的条件转移指令的信息,每当在指令流中遇到条件转移指令指令时,就对BTB进行检查,如果该指令的信息在BTB已经存在,那么就依据它的历史信息进行预测,并按预测的转移方向继续预取指令,如果预测正确,则可以保证流水线不会空置,如果预测错误,那么流水线只好刷新,重新按另一个方向读取指令,这样处理器要花费34个周期的延迟。,在BTB中,保存了条件转移指令2位的历史信息,所以有4种状态,11为最可能发生转移,00为最不可能发生转移。新进入BTB的指令其历史信息为11,此后出现一次未发生转移的情况,则将其减1,直到减为00,而发生一次转移,则将其加1,直到为11。如果状态为11或10,则预测为发生转移;如果状态为00或01,则预测为不发生转移 分支预测对循环的意义最为显著,只有在进入和退出循环时才会发生预测错误,而在循环中间过程中进行的分支预测都是正确的。,例:计算1+2+3+100,MOV AX,0MOV BX,1ADD AX,BXINC BXCMP BX,100JLE SUM,SUM:,3)、分离型Cache,486片内有8KB的Cache,Pentium则为2个8KB的Cache,一个作为代码Cache,一个作为数据Cache 指令和数据使用不同的Cache提高了Pentium的性能:对于Pentium而言,在流水线的指令预取阶段,指令从代码Cache中取出;对于486而言,由于数据和指令合用一个Cache,则指令预取很可能与前面指令的数据操作之间发生冲突。,三、Pentium的寄存器,1.通用寄存器,3.16位段寄存器CS,DS,SS,ES,FS和GS,2.指令指针寄存器,4.标志寄存器,5.控制寄存器 CR04,1)控制寄存器 CR0,2)控制寄存器 CR3,3)控制寄存器 CR4,四、Pentium 的工作模式,实地址模式-1MB空间,分段管理,全在0级保护模式-存储器采用虚拟地址空间、线性地址空间和物理地址空间,三种方式来描述-虚拟地址空间64TB(246)-4级管理,可以使用分页技术虚拟8086模式系统管理模式(电源管理及为操作系统和正在运行的应用程序提供安全),(1)Pentium Pro 主要特点1高度集成:核心550万只管子,Cache 1550万只管子2三条指令部件,14级超级流水线3双重分离Cache增大:8KB两路相关指令Cache,8KB四路相关数据Cache。4二级cache 达256KB与微处理器相联5 动态分支预测及推理执行6 工艺更加先进:2.9V,0.6微米结构注:Pentium Pro主要用于服务器,不用于PC,五、Pentium 处理器的主要特点,1双重独立总线结构2多重跳转分支预测3数据流分析4指令推测执行5集成MMX技术(含57条MMX指令)6内核采用P6结构(故内部有三条指令流水线,每要具有14级),一个时钟可执行三条简单指令7内部Cache增加:一级cache两个16KB大小 二级cache 512KB8 封装形式首次采用Slot1(之前全为Socket PGA式),(2)Pentium II 主要特点,1.主频450MHz以上1GHz2.总线频率100MHz/133MHz3.新增加70条SSE指令V供电,0.25微米工艺制造5.32KB128KB的L1以主频速度工作,512KB的L2以主频一半速度工作6.先采用Slot1,后改为Soket 370针,(2)Pentium III 主要特点,(3)Pentium 4 的主要特点(全新架构非P6):1.主频1.4GHZ10GHz,外频100MHz,前端系统总线频率400MHZ,使外部带宽达3.2GB/S,封装改回Socket:1.5GHz以下 423针(0.18um),1.7GHz开始采用478针(0.13um)2.具有20级超级流水线3.高效乱序执行4.内有高速执行引擎(ALU倍速工作),一个时钟可执行6条简单指令使1.4GHz的Pentium 4运算速度2.8GHz5.新型片上Cache:除了8KB/16KB数据L1和256KB L2外,还加12KB L1的Trace Cache存储X86解码后生成的微操作指令。6.在SSE基础上增加144条SIMD指令(SSE2)7.1.7V供电,0.18微米工艺制造,很快0.13微米8.CPU功耗52W(故原来设计的电源不能用)升级没戏,六.8086Pentium系列程序设计模型,一台实际的计算机虽然很复杂,但从程序设计的角度,并不需要了解处理器内部的复杂结构.8086Pentium系列程序设计模型,主要包括在编程时能够使用的CPU内部可见寄存器.可见寄存器是指直接被程序的指令访问的.不可见寄存器是指通过操作系统访问和处于保护模式下工作的存储器.,一、可见寄存器,808680286,80386Pentium可使用8,16,32位寄存器,二、标志寄存器FLAGS,

    注意事项

    本文(微处理器及系统.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开