微机原理及接口技术80486.ppt_第1页
微机原理及接口技术80486.ppt_第2页
微机原理及接口技术80486.ppt_第3页
微机原理及接口技术80486.ppt_第4页
微机原理及接口技术80486.ppt_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2019/7/26,1,8086微处理器按功能可分为执行部件和总线接 口部件。 执行部件负责指令执行,它由寄存器、算逻部 件、标志寄存器组成。 总线接口部件执行所有的总线操作,如20位地 址形成、与主存储器或I/O设备交换数据。,第一节 8086微处理器,第二章 80X86微处理器,2019/7/26,2,2019/7/26,3, 地址总线传输地址信息,用来寻址存储器单元和I/O接口。地址总线”宽度”决定系统内存的最大容量。 8086有20根地址线,可寻址1M内存。 80486有32根地址线,可寻址4G内存。 奔腾有64根地址线,可寻址内存。,存储容量单位 1TB=1024GB 1GB=1024MB 1MB=1024KB 1KB=1024字节 1字节=二进制8位,微处理器的三总线,2019/7/26,4, 数据总线传输数据,用来与存储器单元和I/O接口交换数据。 8086/80286CPU内/外数据线都是16位。 80386/80486CPU数据线是32位。 奔腾CPU数据线是64位。, 控制总线对于不同的CPU来讲,其条数是不一样控制线向系统各部件发出(或接收)控制信号。 的。控制线向系统各部件发出(或接收)控制信号。,2019/7/26,5, 通 用寄存器 有8个16位通用寄存器 AX、BX、CX、DX、SI、DI、BP、SP。这些寄存器可以存放数据和地址,并能进行16位运算。其中AX、BX、CX、DX的低位字节或高位字节也可作为独立的8位寄存器使用,低位字节的寄存器分别称作AL、BL、CL和DL,高位字节的寄存器分别称作AH、BH、CH和DH。,2019/7/26,6, 段寄存器 有4个16位段寄存器 CS、DS、ES、SS。段寄存器主要解决20位地址形成和程序中指令代码与数据分开存放。此4个段寄存器名称为代码段、数据段、附加数据段、堆栈段。除CS是用于指示指令代码的地址空间之外,其它段寄存器都用于指示数据的地址空间。 指令指针IP 16位的IP总是保存着下一次将要从主存中取出指令的偏移地址,其值为该指令到所在段首址的字节距离,2019/7/26,7, 标志寄存器FLAG 16位标志寄存器用来保存在一条指令执行之后,CPU所处状态的信息及运算结果的特征。如有进位/借位CF=1、运算溢出OF=1、运算结果为零ZF=1等9个标志。,2019/7/26,8,二。8086的物理地址的形成,(段寄存器) (CS) (DS) (SS ) (ES),16,偏移地址,20位物理地址,偏移地址由IP ,SP或寻址方式提供,2019/7/26,9,三。 80486 微处理器结构框图,2019/7/26,10, 基本部件 运算部分:进行定点运算时需要算术逻辑运算单元、移位器和寄存器组;进行浮点运算时需要浮点运算单元和浮点寄存器组。 高速缓存:用来存放最近运行程序所需要的指令代码和数据。减少访问内存次数从而提高CPU运行速度。 存储器段页管理:为实现虚以存储器而设置。 指令译码与控制:根据指令的信息产生微指令对CPU内部进行控制。 80486外部地址线有32根,主存空间为4GB。数据线有32根,同时可访问4个字节的内存数据。,2019/7/26,11, 基本结构寄存器 8个32位的通用寄存器,6个16位的段寄存器,1个32位的指令指针,1个32位的标志寄存器 80486的工作模式 80486有两种工作模式,一种是实地址模式,一种是保护虚拟模式。 80486实地址模式与它的前辈16位的8086完全兼容,在8086和80286编写的程序不需作任何修改,就可以在80486的实地址模式下运行。 保护虚拟模式为多用户操作系统的设计提供必要条件,在保护虚拟模式下,80486可为每一个任务提供4GB的物理空间,并允许程序在64TB的虚拟空间内运行。 80486虚地址、线性地址和物理地址的关系图:,2019/7/26,12,第二节 Intel80X86微处理器体系结构,继78年8086之后,Intel公司与81年推出了80286CPU,它也是16位微机,与8086向上兼容。 而在85年和89年,Intel又分别推出了80386和80486CPU,这两者均为32位微处理器。 80286CPU是在8086的基础上改进和发展而来,其主要特色是: 1. 片内具有存贮器管理和保护机构 2. 正式的在存贮器中引入虚拟地址的概念 3. CPU内部的硬件结构支持了CPU采用了快速的并行 流水线操作方式。,80286的这些特点在80386/80486中体现的更加完善和进一优化,而奔腾CPU的内部结构又是在80486的基础上有更进一步的发展。,13,80X86的体系结构特点,一。有关大型机的优化的体系结构 1。片内集成有存贮器管理部件(MMU) 可支持对存贮器进行分页管理:将指令指定的逻辑地址变换为线性地址。 (段长度可变,但不好管理。所以引入了分页管理),存贮器管理的具体含义: 80X86支持多任务、多道程序运行,每个任务、每道程序均需占用一定字节的存贮空间,如何将有限的物理空间有效地分配给多个任务 即实现虚、实空间的转换,这就是存贮器管理要解决的问题。,可支持对存贮器进行分页管理:将线性地址变换为物理地址。 由OS进行具体管理,但CPU内部有硬件支持这种管理。,2019/7/26,14,可用于进行快速的实、虚地址转换 一个段R(选择器),2.片上设有高速缓冲寄存器/存储器(CACHE),对应于一个64位(8个字节)的段描述符缓冲寄存器。 可用于暂时存放数据和指令于高速缓存中,以加快CPU执行指令的速度。,2019/7/26,15,3。采用高速流水线结构,CPU由多个部件组成,各部件在CPU内部分别同步的, 相互独立 的并 行 操作。 (实现了高效的流水作业,避免了顺序处理,最大限度地发挥了CPU的性能,是总线利用率达到最佳状态。, 指令流水线技术:总线接口、指令予取 、指令予译码。 地址流水线技术: 采用流水线地址寻址 两个连续的总线 周期部分重叠。 超标量流水线技术:多条指令并行执行。,BIU 总线接口部件 EU 执行部件 SU 段管理部件 CPU 代码予取部件 PU 页管理部件 IDU 指令译码部件,2019/7/26,16,二、80X86是灵活的全32位微处理器(MP VP),数据总线DB32位 可处理8位、16位和32位数据类型, 通用 寄存器及操作数为32位。,支持动态总线宽度控制(动态切换16/32位数据总线)通过引脚 BS16, 由 外部送来信号通知80X86总线改变情况: 0 以16位数据总线操作 1 以32位数据总线操作,2019/7/26,17,三、具有对存贮器及特权层的保护功能,CPU内部具有保护机构: 1。对特权层的保护功能:禁止程序的非法操作如:向代码段进行写入操作,访问段限以外的存贮区域等。 2。对特权层的保护功能: 特权层分为4级:,0级,1级,2级,3级,OS核,系统服务程序,应用服务程序,应用程序,应用程序,2019/7/26,18,四、80X86有大的存贮器空间:,实地址空间 可直接寻址的地址空间为2 =4千兆(4GB) 虚拟存贮空间 可直接寻址的地址空间为2 =64MM字节 (14+32= 2 =64MM),46,32,80286 68条 AB: 24条 DB:16条 80486 168条 AB: 32条 DB: 32条 Pentium 273条 AB: 32条 DB: 32条,46,2019/7/26,19,2 80X86的内部结构,80X86CPU由多个部件构成,多个部件在CPU内部分别同步 独立并行地进行操作,避免了顺序处理,实现了高效的流水化作业,最大限度地发挥了CPU的性能,使总线的利用率达到最佳状态。,一、80X86的内部各部件及其功能,2019/7/26,20,二、80X86的内部寄存器 1。通用R,D31 D0,EAX,EBX,ECX,EDX,ESP,EBP,ESI,EDI,“E” Expand 8086的16位 通用R扩展为32位,他们可 以按8 位、16位和32位使用。,2019/7/26,21,CS,DS,SS,ES,FS,GS,80386新增加了两个数据段,以满足程序和任务对多数据段的需要。,程序不可访问 (64位),注意:在进行8位或16位R运算操作时,只影响FR中的相应位,如8位加法进行,起进位不是送到第19位,而是送到FR中的CF位。 1。段位置:由16位的段R和64位的描述符在高速缓冲寄存器中构成。,高速缓冲寄器,(16位),2019/7/26,22,FR,IP,EFR,EIP,CPU可以使用它的低16位/32位。,3.标志寄存器 (EFR) 4。指令指示器(EIP) 31 15 0 31 15 0,2019/7/26,23,关于标志R(32位) 8086比8位微机,增加了3个控制标志和1个算术运算标志: 分别为DF、IF和OF。 80286比8086又增加了2个控制标志: NT 嵌套(14位) NE 1 表示当前任务嵌套于另一任务中,执行 完当前任务后需返回原任务。 0 表示无效。,有IOPL 特权标志(位12、13) 用以指定I/O操作处于03特权层中的那一层。 80386、80486公使用了15个标志,占用16位(IOPL占2位),2019/7/26,24,31 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0,AC,VM,RF,NT,IP,PL,OF,DF,IF,TF,SF,IF,AF,DF,C,S AF D4 S CF D0 S PF D2 S SF D7 S IF D6 C DF D10 C IF D9 S OF D11 X TF D8 X NT D14 X IOPL D12 X RF D16 X VM D17 X AC D18,8080所用标志,8086所用标志,80286所用标志,80386所用标志,80486所用标志,所有标志位分为三类: S 状态标志 C 控制标志 X系统标志,2019/7/26,25,4 。 系统表R: 用于进行从虚拟地址向实际物理地址的转换。 1。功能: 主要用于在保护模式下,管理 4个系统表,这4个系统表为: GDT(Global Descriptor Table)全局描述符表 LDT(Local Descriptor Table)局部描述符表 IDT(Interrupt Descriptor Table)中断描述符表 TSS(Task State Segment)任务状态段,2019/7/26,26,系统地址R:表R为 GDTR GDT LDTR 分别用来指定 LDT 的大小在M中的位 IDIR IDT 置。 TR 用以指定TSS任务状态段,只用来存放 任务环境的,其在M中的位置和大小 由TR指定。 其中: GDTR和IDTR共48位:32位的表基地址字段+16位的表 边界字段。,31 0 15 0,表基址,表限,2019/7/26,27,可在实模式方式下,通过编程对GDTR和IDTR加载,以实现对GDT和IDT在保护方式下的初始化操作。 15 0 15 0 31 0 15 0 选择器字段 属性字段 表基址字段 边界字段 LDTR和TSR共80位:32位的表基址字段+20位的边界字段 +12位的访问权字段 +16位的选择器字段。,对LDTR和TR的说明: 这两个寄存器只能在保护方式下使用。 在保护模式下程序可访问字段仅限于段选择器字段, 即只能用指令加载段选择器。,2019/7/26,28,用LLDT和LT指令可设置成改变相应的选择器字段,依选择器字段可 从全局描述符表中找到指定的基地址描述符和任务状态段描述符,在将描述符中的32位段基址和16位的段限及16位的属性字段加载到 LDTR和TR的64位高速缓冲寄存器中。,2019/7/26,29,5。控制R(CR0CR3)(32位)(8086CPU中无) 其中:CR1 备用 CR3 用于提供页目录的基地址 CR2 用于提供页故障线性地址。 CR0 其低16位与80286CPU中一样,是机器状态字R。 CR0功能:作为MSW用以表示比FLAG对CPU 影响更大的标志, 这些标志反映了系统 的工作状态。,2019/7/26,30,CR0的控制位分为如下五大类: 1。与CPU工作模式有关的控制位PG(分页)、PG(置CPU为 虚 拟地址保护方式) 2。与CPU片内的CACHE有关的控制位:CE、WT 3。与协处理器或浮点运算部件有关的控制位:TS、EM、MP NE。 4。对唯控制位:AM 5。页的写保护控制位:WP,2019/7/26,31,实模式REAL,PROTECTED 保护模式,VIRTUAL 虚拟8086,LMSW指令,修改CR0指令,RRESET位好修改CR0的PE=0,的PE位=1,通过中断,执行IRETD指令,RESET信号,RESET 对CPU复位,三种模式之间的转换见图:,Intel80X86微处器有三种工作模式:,实模式、保护模式和虚拟86模式,2019/7/26,32,4 . 80X86的存贮器布局,一、布局要点 1、80X86的存贮器有三种工作方式: 实地址方式 虚地址保护方式 虚拟86模式 所以其地址空间分为:物理存贮空间和虚拟存贮空间,实际物理地址空间是 CPU可直接访问存贮空间,其 存贮空间范围由CPU的地址总线位数决定。,虚拟存贮空间即程序占有的存贮空间,其存贮量由CPU的体系结构确定。,2019/7/26,33,任务N,任务N-1,任务X,(虚拟空间) 由磁盘等外 存支撑,任务1,任务2,存贮器管理部件,物理地 址空间 ROR .RAM,任务X,D15 D2 D1 D0,46: 索引值 TI RPL 偏移,2、二者存贮空间示意图如下: 每个任务使用64TB字节的存贮空间(2 ),索引值,TI,RPL,32位偏移地址,46,2019/7/26,34,3、存贮空间的划分: 在实模式下:与8086相同,以64KB为一个逻辑地址段,段长度固定。 在虚地址保护模式下:启动页功能时,一个逻辑段最大可分为2的32次 方个字节。 不启动页功能时,一个逻辑段最大可分为2的20 次方字节。,4、CPU在执行指令时,对存贮器操作数所在实际物理地址的求法: 段基址+偏移地址=PA(32位) 段基址的提供: 虚拟86模式:实地址方式 由段R提供 虚地址保护模式 由段选择器索引段,2019/7/26,35,二、虚地址保护方式 1、从实地址向虚地址保护模式的转换 使用“LMSW”指令置位控制寄存器CR。的D。位以后(即 PE位被置为“1”),由CPU内部的MMU(存储器管理部件)自 动完成转换。 由实地址 虚拟地址,2019/7/26,36,2、虚地址保护方式下CPU进行存贮器寻址时所采取的数据结构: 采用了段选择器与描述符的数据结构,使寻址过程有了一个间接层,为80386内部的MMU和保护机构有了一个活动的空间,使多任务在80X86中运行方便、灵活、可靠。 (1)80X86的段选择器 即8086中的段寄存器,亦是16位,由三个字段组成:,D15 D3 D2 D1 D0,索引值 TI RPL,14位,2019/7/26,37,指令操作:AX: 段R:FS,XX,选择器字段,描述符,描述表,描述符缓存器,M,(2)段选择器的加载及加载的具体操作 即段R的初始化操作 例:指令:MOV FS,AX;,2019/7/26,38,(3)80X86的段R的构成 15 0 63 0,段选择器 属性 段基址 段边界,描述符变速缓冲存贮器,2019/7/26,39,二、80X86在虚拟方式下的寻址过程:,示意图见下页,2019/7/26,40,段描述符,GDT,段描述符,LDT,基地址,边界,描述符高速缓冲器,描述符索引号,段选择器,TI,TI=0,TI=1,M,基地址,边界,15,32,1 0,段选择器和描述符缓冲器作用,2019/7/26,41,分 页,物理地址

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论