微处理器课件_第1页
微处理器课件_第2页
微处理器课件_第3页
微处理器课件_第4页
微处理器课件_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

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

文档简介

80486是Intel1989年4月推出的32位微处理器。在Intel32位微处理器的体系演化过程中,具有承上启下的地位。

32位微处理器是指在微处理器内部以32位寄存器为单位进行数据处理。 而在数据传送时,根据发送端与接受端处理数据的速度不同,可能在128位、64位、32位、16位或8位二进制位为单位,进行数据的传送。 但在内存中总是以8位二进制位为单位来存放数据。第三章80486微处理器1本章内容3.180486的内部结构3.280486的工作模式介绍3.380486的外部引脚介绍23、180486的内部结构

3、1、1基本结构介绍7大部分组成:总线接口部分指令预取部分译码部分运算部分存储管理部分高速缓冲存储器3①②③④⑤⑥⑦执行部件浮点数部件4包括执行部件或称定点运算部件(算术逻辑单元ALU、移位器和寄存器组)和浮点运算部件(浮点运算单元PLU、浮点寄存器组)。执行部件负责从译码器队列取出指令的微指令地址,并解释执行该指令的微指令。1、运算部分——核心部件5组成:分段部件和分页部件(1)分段部件提供对内存分段管理的硬件支持,可直接把指令指定的逻辑地址变换为物理地址,只实现对内存分段管理。也可以把指令指定的逻辑地址变换为线性地址,传送到分页部件,实现对内存的分段分页管理。它包含有CS,DS,SS,ES,GS,FS共6个段寄存器。 分段部件在地址变换过程中实现任务间的隔离保护以及虚拟内存技术。2、存储管理部分——为实现虚拟存储器而设置。64、指令预取部件——对代码做取入、排队分析、分解等译码的前期准备工作。

代码预取操作是利用总线空闲周期,不断将后续指令从高速缓存中或内存中取入,放置在指令队列中,直到装满为止。

该部件有两个16字节的队列寄存器,它与Cache之间有一条128位(8*16)宽度的通道,因此,每次从cache最多可取16字节的信息。

这种指令的取入和分析执行的并行操作,避免了译码部件因总线忙碌不能及时取入后续指令,而暂时停机的可能性。95、指令译码部件——把指令含义转换成相应的内部控制总线信号,指挥各部件协同工作。从指令预取队列中取出指令进行译码。

将指令转换成微指令入口地址。而将指令寻址信息送存储器管理部件,指挥各部件协同工作。106、控制部件——产生微指令,对运算部件、存储管理部件、指令译码器发控制信号。

微处理器的每一条指令都有一组相应的微指令,存放在控制ROM中,它们作为可以为机器识别的命令,用来产生对各部件实际操作所需的一系列控制信号。译码器产生的微指令入口地址就是指向该组命令的地址。117、总线接口部件——实现内部总线与外部总线的联系。在内部时序信号控制下,将内部总线上的数据、控制信号或者地址送到外部总线;

接收外部数据总线上的数据、控制信号,并可根据接收到的控制信号,产生总线周期输出相应的外部控制信号,又称握手联络信号。支持突发总线控制,对主存中进行连续多个数据单元的传输加快数据的读写。

所谓突发总线控制是指在一个总线传送周期只进行一次寻址,然后连续传送多个数据单元的方式。12下图描述了32位微处理器内部的基本逻辑部件之间的基本联系、各部件的主要功能、数据在微处理器中的主要流动趋向。 所有部件都挂接在内部总线上,通过内部总线交换数据,也可以按粗尖头所示方式与相邻部件交换数据。每个部件都有自己的寄存器。133.1.2寄存器组分4类: 基本结构寄存器

浮点寄存器

系统级寄存器 调试和测试寄存器应用程序可访问

系统可访问141.

基本结构寄存器(1)通用寄存器——用于存放数据或地址,可进行32位、16位、8位、1位运算。8个32位的:EAX,EBX,ECX,EDX,ESI,EDI,EBP,ESP其低16位可独立使用,称:AX,BX,CX,DX,SI,DI,BP,SP。可作为8位寄存器使用是:AH,AL,BH,BL,CH,CL,DH,DL。它们之间的关系如图3.2(a)

158位8位累加器基址计数数据源变址目标变址基址指针堆栈指针返回返回返回16(2)段寄存器——指出代码和数据所用的存储空间。有6个16位的。

代码段CS——指示存放程序代码的地址空间

数据段

DS,ES,FS,GS——指示数据的地址空间

堆栈段SS——指示存放程序执行的中间结果的地址空间见图3。2(b)17(3)指令指针——放相对于代码段基址的偏移量,指向计算机即将执行的指令。 32位的寄存器,称EIP,其低16位可独立使用,称IP。 在实模式下,IP与CS组合后,形成20位的物理地址。

图3。2(C)(4)标志寄存器 EFLAGS:32位,各位可分为:(具体的在4.3节介绍) 标志位——指明程序执行时微处理器的实时状态。如:进位、溢出等。 控制位——由程序设计者设置,以控制8048进行某种操作。 其低16位可独立使用,称FLAGS,实模式下很有用。

图3。2(d)182、系统级寄存器

控制着80486微处理器的片内cache、运算部分的浮点部件以及存储管理部件。含有4个控制寄存器和4个系统地址寄存器。(系统程序使用)。19(1)控制寄存器——CR0,CR1,CR2,CR3为32位的。见书P.20如图3.3(a)CR0——保存系统的控制和状态信息。CR1——Intel为以后开发保留CR2——保留了所检测到的上一个页面故障的32位线性地址。CR3——保留页目录表的物理基址。(2)系统地址寄存器——又称保护方式寄存器(仅在保护模式下使用)。见书P.20图3.3(b) 全局描述符表寄存器——GDTR 中断描述符表寄存器——IDTR 局部描述符表寄存器——LDTR 任务状态寄存器——TR203、调试与测试寄存器见图3.4(P.22)

调试寄存器DR0~DR3——用于设置数据存取断点和代码执行断点。调试断点寄存器:DR6——指明断点的当前状态。

调试控制寄存器DR7——选择调试功能和设置断点。DR4,DR5保留。

测试寄存器TR3~TR7(5个)——用于测试片内cache和用旁视缓冲区TLB。(P.317)213.1.380486微处理器的地址空间1.

存储地址空间分为: 虚拟空间(又称逻辑空间),其地址为虚拟地址或逻辑地址,可达246字节(64TB) 线性空间:通过分段部件把虚拟空间变换为32位的线性空间。若分页部件未被选用,线性地址就是物理地址。 物理空间(又称主存空间):主存的实际空间,其地址称作物理地址或主存地址。可达232字节(4GB)。地址变换如图3。5

(P。22)222.I/O地址空间由216(64K)个地址(0000,0000H~0000,FFFFH)组成。与存储地址不重叠。由M/IO(80486微处理器芯片)引脚区分。233.280486的工作模式介绍

二种工作模式:实地址模式保护虚拟模式三种工作方式实地址方式(REAL)保护方式(PROTECTED)虚拟8086方式(VIRTUAL8086)243.1.1实地址模式

80486在加电和复位后就进入实地址方式,使80486与8086有相同的基本体系结构,功能增强。1.

存储空间及实地址模式下的编址 存储空间为220字节,即1M字节,线性地址就是物理地址。采用分段方式,每段大小固定为64K字节,存储段可以彼此覆盖,即一个64K字节的段如未用完,另一个段可以覆盖未用的存储区 (1)物理地址的形成:25

物理地址=段基址*16+偏移地址

左移4位

有效地址例:CS内容为1000H,IP为8888H,则实模式下的物理地址是10000H+8888H=18888H段基址:CS、DS、ES、SS。偏移地址:IP、DI、SI、BP、SP等。段寄存器值偏移量+物理地址16位4位16位20位存储器物理地址的计算方法26CS0000IP代码段DS或ES0000SI、DI或BXSS0000SP或BP数据段堆栈段存储器(2)段寄存器和偏移地址寄存器组合关系272.

保留的地址空间

(1)中断向量区:地址为0000,0000H~0000,03FFH,每一个中断向量占4个字节。(2)系统初始化区:

地址为FFFF,FFF0H~FFFF,FFFFH。

当加电和复位时,物理地址自动置为FFFF,FFF0H,程序就从此地址开始执行。当首次遇到段间转移或调用指令时,物理地址又自动置为000X,XXXXH,进入实地址方式下的物理地址空间。283、在实地址方式下,运行的程序不分特权等级,实际上,实地址方式下的程序相当于工作在特权级0,除保护虚地址方式下的一些专用指令外,所有其他指令都能在实地址方式下运行。4、在实地址工作方式下,将CR0中PE位置1,80486就转移到保护模式。293.2.2保护虚拟地址模式(简称保护模式) 特点——支持多用户操作系统,能快速的进行任务切换和任务保护环境,同时也向下兼容。1.

保护概念目的——避免程序间的相互干扰。存储器分段分页管理机制不仅为存储保护和共享提供了硬件支持,而且,为实现虚拟存储器提供了硬件支持。多种保护方式,最突出方式为环保护方式——在程序间及操作系统间实现隔离,即分配不同的虚地址空间。实现方法——设立特权级。特权级分为4级(0~3),值越小,特权越高。图3。6特权规则:

特权级P存储的数据,由≥P级的特权级进行访问

具有特权级P的程序和过程,只能由≤P级上执行的任务调用。30应用程序3级常用扩展程序内核0级2级系统服务程序1级系统和应用程序分离返回31(1)物理空间:在保护方式下,全部32根地址有效,可寻址达4G字节。

(2)虚拟存储地址空间:在物理上是由外存与内存结合提供,最大为246=64TB的逻辑空间(编程空间)即允许程序在246字节(64TB)的逻辑空间内运行。(一个任务可运行多达16KB个段,每个段最大可为4G字节,故一个任务最大可达64MM(TB)字节的虚拟地址)2.

存储空间

32段寄存器不再直接存放段基址,而是存放指示段基址的选择符。段寄存器中的T1位决定一个任务(程序)可以拥有一个全局描述符表和一个局部描述符表。选择符用于选择某个描述符表中的描述符。13位选择码决定了每个描述符表中最多有213个描述符。因此一个任务可拥有的描述符数目最多为2×213个(即16KB个段)。每个描述符指示存储器的位置、长度和访问权限等。当描述符中的G位为1时,相应的段长度为220×212(即4GB)字节故一个任务最多可拥有的编程空间为:

2×213×220×212=246=64TB33在保护方式下,一个存储单元的地址也是由段基地址和段内偏移量两部分组成。在保护方式下,段基地址也是32位的,所以就不能由段寄存器的内容直接形成32位的段基地址,而是要经过转换。于是在内存中就有一个表,每一个内存段对应着表中的一项,此项中包含32位的段基址。在80x86中,一个段用一个8字节的描述符来描述,多个描述符构成一个表,称为描述表。

由描述符中所规定的段基地址加上32位的段内偏移量就可以寻址一个存储单元,如图所示:3、保护方式下的物理地址形成

用户使用的逻辑地址由一个16位的段选择符和一个32位的段偏移量(由指令寻址方式决定)组成。34段寄存器偏移量访问权界限基地址存储器操作数段内基址段界}选择段大到4GB353.2.3虚拟8086方式当标志寄存器中位VM置1时,进入虚拟8086方式。CPU的工作过程与保护方式下的工作过程相同。允许同时执行8086的操作系统及应用程序以及486的操作系统及486应用程序,因此,多用户可同时使用一台486微处理器,用32位机的代码去模拟运行16位机的程序。与实方式相同的形式使用段寄存器,以形成线性基地址(即寻址的地址空间为1MB,段长64KB,段寄存器存放段基址)。通过分页功能,可把虚拟86下的1MB地址空间映象到486微处理器的4GB的物理空间的任意位置。363.2.4三种工作方式的状态转变

373.380486的外部引脚介绍 80486有168条引脚,采用网格阵列(PGA)封装,根据功能分为三大类: 数据线类 地址线类和 控制线类。如图3.8

383932位(4个字节)双向和三态特性:

D0~D8是最低字节

D24~D31是最高字节。可用BS8和BS16信号控制,可实现8位或16位的数据传送。3.3.1数据线类(D0~D31)403.3.2地址线类(A2~A3,A4~A31,BE0~BE3)

1、A2~A31具有三态特性。2、A2~A31和BE0~BE3(字节使能)构成32位的地址线。指明某一个4字节(32位)存储单元地址或I/O端口(可寻址4GB的物理存储空间和64KB的I/O地址空间)。其中:A0,A1由BE0~BE3的组合得到。见表3.1 BE0~BE3指明是访问该4字节中那些字节,他们分别对应数据线:BE0——D0~D7 BE1——D8~D15 BE2——D16~D23 BE3——D24~D31见表3.241返回4280486对应的数据线D0~D7D8~D15D0~D15D16~D23D8~D23D0~D23D24~D31D16~D31D8~D31D0~D318086对应的数据线D0~D7D8~D15D0~D15D0~D7D8~D15D0~D15D8~D15D0~D15D8~D15D0~D1543与8086的兼容性:

8086的两个引脚A0、BHE(数据线高位D8~D15的使能引脚),二者的组合确定存取数据线D0~D15的信息:(A0BHE)8086存储(L,L)D0~D15(L,H)D0~D7(H,L)D8~D15(H,H)不使用n

80486由BE0~BE3的组合状态产生A0,A1及BHE。见表3.2443、3、3控制线类

1.

时钟(CLK)是CPU的主频,为CPU提供基本的定时和内部工作频率。所有外部的定时参数都是以CLK的上升沿为基准而确立的。输入信号为TTL电平。2、数据奇偶校验位组(DP0~DP3,PCHK)

(1)DP0~DP3为“数据奇偶校验位”输入输出引脚,分别对应数据线的4个字节。

当数据写入存储时,分别对每个字节加入偶校验位(有偶数个“1”为高电平);

当从存储器读出数据时,自动对每个字节的数据进行偶校验。

45

3、数据线宽度的控制组(BS16,BS8)为输入引脚

BS8位低电平时,32位——>8位数据线。BS16为低电平,BS8为高电平时,数据线宽度为16位。此时,80486微处理器将数据变换为宽度比较小的数据多次传送。同时,BE0~BE3也会作出相应变化,以适应所确定的数据线宽度。(2)PCHK为“奇偶校验状态”输出,用于指示奇偶校验是否出错,该引脚为低电平时表示数据线有奇偶校验错。464、总线周期定义组(M/IO,D/C,W/R,LOCK,PLOCK)

(1)总线周期——CPU对存储器或I/O端口完成一次读/写操作所需的时间。一个总线周期至少由两个CLK(时钟周期)组成。(2)W/R:用来区别读还是写周期

(3)D/C:用来区别数据和控制周期

(4)M/IO:用来区别内存和IO周期

(5)LOCK:“总线锁定”输出,有效时,80486独占系统总线,不允许外信号打断当前总线周期的操作。

(6)PLOCK:“锁定”信号。有效时,微处理器可自动读、写大于32位的存储器操作(如访问浮点长字和对cache的操作),可由多个总线周期完成交换。

三者的组合决定当前的总线周期见表3.3

下一页47返回485、总线控制组(ADS,RDY)和基本时序

(1)ADS,RDY信号指明总线周期从何时开始,到何时结束

ADS:“地址状态”输出。有效时,标志着一个总线周期的开始。该信号在本周期的第一个时钟被激活,后续时钟变为无效。

RDY:“已准备”输入,低电平指明当前的总线周期已结束

响应读请求时,该信号有效表明外部设备已在数据引脚上放好了数据。

响应写请求时,该信号有效表明外部设备已收到了80486的数据。

49(2)基本时序

总线时序——指完成总线操作有关的地址线、数据线、读写控制线和时钟线等总线信号相互间的定时关系。

无等待状态的时序(2-2周期)

在T1期间,CPU发出ADS为低电平时,表示开始了一个总线周期,此时地址线及周期定义信号生效。如果外部已把有效数据放在数据线上以响应CPU的读请求,或者外部已接收了一个数据以响应CPU的写请求,则会在T2结束前发RDY信号。如图3.9(a)

插入等待状态的时序(3-3周期) 当存储器或I/O的速度跟不上总线操作速度时,就不发出RDY信号,此时,CPU自动插入等待状态。如图3.9(b)50返回516、总线仲裁信号组(HOLD,HLDA,BOFF,BREQ)——决定总线的控制权

主设备与从设备——谁控制总线,谁为主设备

80486微处理器访问存储器或I/O设备时,总线由80486控制。

I/O设备直接访问存储器,总线由I/O设备控制。

当非微处理器设备请求系统总线的控制权时,需要一个仲裁机构确定总线的控制全交给谁。

52

HOLD:“总线请求”输入。表示

温馨提示

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

评论

0/150

提交评论