《微型计算机原理与接口技术》第2章-微型处理器与总线课件.ppt

上传人(卖家):三亚风情 文档编号:3602353 上传时间:2022-09-23 格式:PPT 页数:117 大小:4.76MB
下载 相关 举报
《微型计算机原理与接口技术》第2章-微型处理器与总线课件.ppt_第1页
第1页 / 共117页
《微型计算机原理与接口技术》第2章-微型处理器与总线课件.ppt_第2页
第2页 / 共117页
《微型计算机原理与接口技术》第2章-微型处理器与总线课件.ppt_第3页
第3页 / 共117页
《微型计算机原理与接口技术》第2章-微型处理器与总线课件.ppt_第4页
第4页 / 共117页
《微型计算机原理与接口技术》第2章-微型处理器与总线课件.ppt_第5页
第5页 / 共117页
点击查看更多>>
资源描述

1、第2章 微型处理器与总线2.1 微处理器概述 微处理器是计算机的核心部件,具有下面几个特点:能够进行算术运算和逻辑运算;能对指令进行译码,寄存并执行指令所规定的操作具有与存储器和I/O接口进行数据通信的能力少量数据的暂存能够提供系统所需要的定时和控制信号能够响应输入输出设备发出的中断请求 人们常说的16位机,32位机是表示计算机中微处理器内部数据总线的宽度-CPU可以同时操作的二进制码的位数。现在的CPU都是32位的。一、运算器运算器运算器的组成算术逻辑单元:它的内部包括加、减、乘、除运算的加法器,及实现与、或、非、异或等逻辑运算功能的部件。通用或专用寄存器组:提供操作数和暂存中间运算结果及结

2、特征;内部总线:用于传送数据和指令运算器的结构按内部总线数量不同分为:1、单总线结构运算器寄存器组ABALU所有部件通过一条内部总线传递信息,任何时刻只有一组数据从源部件传送到目标部件。当要进行一次双操作数的运算时,首先通过总线将第一个操作数放入锁存器A或B中,然后现通过总线传送另一个操作数到另一个锁存器中,之后进入ALU进行运算。运算结果再通过总线送到内部通用寄存器。特点:结构简单,但速度比较慢。2、双总线结构运算器寄存器组缓冲区BUSBUSALU双总线结构在运算器内部用两条总线来传送数据,参加运算的操作数可以同时通过两条总线送到ALU进行运算,运算结果经缓冲器再通过任意一条总线送到通用寄存

3、器。特点:运算速度比单总线结构要快。3、三总线结构运算器寄存器组旁路器BUSALU它用两条总线来传送操作数,一条专门用于传送运算结果。特点:只要ALU运算速度足够快,全部操作可一步完成。二、二、控制器控制器的作用:控制程序的执行,必须具备以下几处功能1、完成指令控制 指令在存储器中是连续存放的,一般情况下,指令被按照顺序一条条取出执行,只有在碰到转移指令时才会改变顺序。控制器要能根据指令所在的地址按顺序或在遇到转移指令时按照转移地址取出指令,分析指令,传送必要的操作数,并在指令执行结束后存放运算结果。2、实现时序控制 指令的执行是在时钟信号的控制下进行的。一条指令的执行时间为指令周期。不同的指

4、令周期中所包含的机器周期数是不相同的。而一个机器周期中包含多少节拍也是不一样的。时序信号由控制器产生,使系统按一定的时序关系进行工作。3、完成操作控制、根据指令流程,确定在指令周期的各个节拍中要产生的微操作控制信号,以有效地完成各条指令的操作过程。、还要对异常情况及某些外部请求的处理能力。控制器的组成:程序计数器PC:用来存放下一条要执行的指令在存储器中的地址指令寄存器IR:用来存放从存储器中取出的待执行的指令。指令译码器ID:对指令寄存器中的指令进行“翻译”以确定进行什么操作;时序控制器:产生计算机工作中所要的各种时序信号;微操作控制部件:用于产生与各条指令相对应的微操作。一条指令的功能是通

5、过按一定次序执行一系列基本操作完成的。微操作控制指令译码指令寄存器地址加法器程序计数器时序逻辑自存储器至存储器各部件微操作控制信号:控制器结构示意图核心部件2.2 8088/8086微处理器主要内容:主要内容:1.8088CPU外部引线及功能;2.8088CPU的内部结构和特点;3.各内部寄存器的功能;4.8088的工作时序概述概述 8088、8086基本类似16位CPU、AB宽度20位差别:1.指令预取队列:8088为4字节,8086为6字节2.数据总线引脚:8088有8根,8086有16根3.控制线引脚:8088为IO/M,而8086为M/IO8088为准16位CPU,内部DB为16位,但

6、外部仅为8位,16位数据要分两次传送本课程主要介绍8088(IBM PC采用)一.8088/8086 CPU的的特点特点1、采用并行流水线工作方式2、对内存空间实行分段管理:每段大小为每段大小为16B16B64KB64KB用段地址和段内偏移实现对用段地址和段内偏移实现对1 1MBMB空间的寻址空间的寻址设置地址段寄存器指示段的首地址设置地址段寄存器指示段的首地址3、支持多处理器系统(最大模式);指令的一般执行过程:取指令 指令译码 读取操作数 执行指令 存放结果1.8088/8086的指令流水线串行和并行方式的指令流水线:串行和并行方式的指令流水线:串行工作方式:BIU(总线接口单元)和EU(

7、执行单元)交替工作,按顺序完成上述指令执行过程;并行工作方式:BIU和EU可同时工作。串行串行工作方式:工作方式:8088以前的CPU采用串行工作方式:1)CPU访问存储器(存取数据或指令)时要等待总线操作的完成 2)CPU执行指令时总线处于空闲状态 缺点:CPU无法全速运行 解决:总线空闲时预取指令,使CPU需要指令时能立刻得到取指令1执行1取操作数2执行2CPUBUS忙碌忙碌忙碌忙碌存结果1取指令2取指令和执行指令示意图(1)8位CPU(如8080)tnT 30tt忙忙忙总线BUSCPU取指1分析指令1执行指令1取指2分析指令2执行指令2取指3分析指令3执行指令3将指令的执行过程简化为三步

8、,并设这三步所要的时间完全相等都是执行n条指令所要的时间为:若不考虑取操作数和写结果,将指令的执行过程可简化为三步,并设这三步所要的时间完全相等,都为 ,采用顺序执行方式执行n条指令所要的时间为ttnT 30并行并行工作方式:工作方式:8088CPU采用并行工作方式忙碌并行执行n条指令所要的时间为:tntntT)2()1(30取指令2 取操作数BIU存结果取指令3 取操作数 取指令4执行1执行2执行3 EUBUS忙碌忙碌忙碌忙碌忙碌 CPU忙碌8088/8086的流水线操作1.8088 CPU包括两大部分:EU(执行单元)和BIU(总线接口单元)、BIU不断地从存储器取指令送入IPQ(指令预取

9、列(指令预取列队),队),EU不断地从IPQ取出指令执行、EU和BIU构成了一个简单的2工位流水线流水线、指令预取队列指令预取队列IPQ是实现流水线操作的关键(类似于工厂流水线的传送带)2.新型CPU将一条指令划分成更多的阶段,以便可以同时执行更多的指令例如,PIII为14个阶段,P4为20个阶段(超级流水线)结论结论指令预取队列IPQ的作用:使EU和BIU两个部分可同时进行工作,从而带来了以下两个好处:1、提高了CPU的效率2、降低了对存储器存取速度的要求2.内存的分段管理技术 8088的CPU的内部结构都是16位的,内部总线只能传送16位二进制码。如果用二进制码表示地址,8088就只能产生

10、64K个地址。为了提高系统的执行速度,8088将内存空间分为多个逻辑段,每个逻辑段最大为64K个单元,段内每个单元的地址码(偏移地址)长度为16位。再为每个段设置段地址(段基地址),以区分不同的逻辑段。8088CPU内部具有专门存放段地址的段寄存器和存放偏移地址的地址寄存器,将两类不同寄存器的内容送入地址加法器合成,形成了指向内存某一具体单元的地址(物理地址)3.支持多处理器系统支持多处理器系统 8088具有最小和最大两种工作模式及内置的多任务处理能力,可通过模式选择引脚进行选择。最小模式也称为单处理器模式。此时CPU仅支持由少量设备组成的单处理机系统而不支持多处理器结构。系统控制总线的信号由

11、8088CPU直接产生,且构成的系统不能进行DMA(直接存储器存取)传送。最大模式也称多处理模式,此时CPU能支持系统总线上的多个处理器,由总线控制器提供所有总线控制信号和命令信号。二、二、8088 CPU的引线及功能的引线及功能40引脚定义方法可大致分为:每个引脚只传送一种信息(RD等);引脚电平的高低不同的信号(IO/M等);CPU工作于不同方式有不同的名称和定义(WR/LOCK 等);分时复用引脚(AD7 AD0 等);引脚的输入和输出分别传送不同的信息(RQ/GT等)。地址地址/数据线数据线地址地址/状态线状态线非屏蔽中断非屏蔽中断可屏蔽中断请求可屏蔽中断请求最小最大模式控制最小最大模

12、式控制MN/MX=1,最小模式最小模式MN/MX=0,最大模式最大模式读信号读信号总线保持请求信号总线保持请求信号总线保持相应信号总线保持相应信号写信号写信号存储器存储器/IO控制信号控制信号M/IO=1,选中存储器选中存储器M/IO=0,选中选中IO接口接口数据发送数据发送/接收信号接收信号DT/R=1,发送发送DT/R=0,接收接收数据允许信号数据允许信号地址允许信号地址允许信号中断响应信号中断响应信号测试信号测试信号:执行执行WAIT指令,指令,CPU处于空转等待处于空转等待;TEST有效时有效时,结束等待状态。结束等待状态。准备好信号准备好信号:表示内存表示内存或或I/O设备准备好,设

13、备准备好,可以进行数据传输。可以进行数据传输。复位信号复位信号地址状态复用引脚地址地址/数据线数据线非屏蔽中断非屏蔽中断可屏蔽中断请求可屏蔽中断请求最小最大模式控制最小最大模式控制MN/MX=1,最小模式最小模式MN/MX=0,最大模式最大模式读信号读信号总线保持请求信号总线保持请求信号写信号写信号存储器存储器/IO控制信号控制信号M/IO=1,选中存储器选中存储器M/IO=0,选中选中IO接口接口数据允许信号数据允许信号测试信号测试信号:执行执行WAIT指令,指令,CPU处于空转等待处于空转等待;TEST有效时有效时,结束等待状态。结束等待状态。准备好信号准备好信号:表示内存表示内存或或I/

14、O设备准备好,设备准备好,可以进行数据传输。可以进行数据传输。复位信号复位信号地址状态复用引脚地址允许信号地址允许信号1、主要引线(、主要引线(最小模式最小模式下)下)8088是工作在最小还是最大模式由MN/MX端状态决定:MN/MX=0时工作于最大模式,反之工作于最小模式。数据信号线(DB)与地址信号线(AB):AD7AD0:地址、数据分时复用的双向信号线,三态。当ALE=1有效时为地址的低8位。当(数据允许信号)DEN=0时,传送数据信号,此时为双向。A19A16:地址、状态复用引脚,三态输出。在某一时刻输出高4位地址信号,另外时刻,送出状态信号S6-S3分时复用。S6恒等于0,S5为指示

15、中断允许标志IF状态,S4,S3组合指示CPU当前正使用的段寄存器。如表2-1。A15A8:中8位地址信号,三态输出。CPU寻址内存或接口时,输出中8位地址信号。主要的控制主要的控制(CB)和状态信号和状态信号WR:三态,输出。写命令信号,低电平有效;RD:三态,输出。读命令信号,低电平有效;IO/M:三态,输出。指出当前访问的是存储器还是I/O接口。高电平:I/O接口,低电平:内存 DEN:三态,输出。数据允许信号,低电平时,表示DB上的数据有效;RESET:输入,系统复位输入信号;为高时,CPU执行复位;复位后CPU内部寄存器状态如表2-3。ALE:三态,输出,地址锁存信号。高:AB地址有

16、效;DT/R:三态,输出。数据传送方向控制信号,高:CPU输出,低:CPU输入。例例:当WR=1,RD=0,IO/M=0时,表示CPU当前正在进行读存储器操作。READY信号信号(输入输入):T T1 1T T2 2T T3 3TwaitTwaitT T4 4用于协调用于协调CPU与存储器、与存储器、I/O接口之间的速度差异接口之间的速度差异READY信号由存储器或信号由存储器或I/O接口发出。它是高电平接口发出。它是高电平有效。有效。READY=0时,时,CPU就在就在T3后插入后插入TW周期,插入的周期,插入的TW个数取决于个数取决于READY何时变为高电平。何时变为高电平。中断请求和响应

17、信号中断请求和响应信号INTR:输入,可屏蔽中断请求输入端。高电平:有INTR中断请求 NMI:输入,非屏蔽中断请求输入端。低高(上升沿),有NMI中断请求 INTA:中断响应输出,对INTR信号的响应。总线保持信号 HOLD:输入总线保持请求信号输入端。当CPU以外的其他设备(如DMA)要求占用总线时,通过该引脚向CPU发出请求。HLDA:总线保持响应信号输出,对HOLD信号的响应。为高电平时,表示CPU已放弃总线控制权,所有三态信号线如读、写信号线,地址信号等均变为高阻状态。2、最大模式下的引脚1)、总线周期状态信号输出S2,S1,S0指出当前总线周期操作的类型,低电平有效。如,中断响应、

18、读写存贮器或IO端口等。此信号送至总线控制器8288,以产生相应的总线控制信号。2)、总线请求/总线响应信号RQ/GT1,RQ/GT0提供2路其他主控设备发出总线请求信号和CPU的响应信号。当其它设备的总线控制设备要使用系统总线时,产生一个总线请求信号,并送到RQ/GT引脚,类似最小模式下的HOLD信号。CPU检测到请求后,在下一个T4或T1期间在RQ/GT送出一个总线响应信号。4、指令队列状态信号输出QS1,QS0提供当前的指令队列状态。QS1 QS0 含义0 0 无操作0 1 取走指令第1字节代码1 0 队列空(取完)1 1 取走指令后续字节代码3、总线封锁信号输出LOCK当LOCK=0(

19、有效)时,CPU封锁总线不允许其他总线部件占用总线。三、8088CPU的功能结构8088内部由两部分组成:执行单元(EU)总线接口单元(BIU)CXAXDXFLAGS暂存寄存器ALUSPDIBHBLAHALDHCHCLDLBPSIEU控制部件1 2 3 4总线控制逻辑SS内部通信寄存器ESDSCSIP地址加法器BX通用寄存器组ALU数据总线16位指令列队地址总线20位数据总线16位8080总线8位Q总线1.8088CPU内部结构EUBIU执行单元执行单元EU功能:执行指令 从指令队列中取指令代码 译码 在ALU中完成数据的运算 运算结果的特征保存在标志寄存器FLAGS中。执行单元执行单元EU包

20、括包括 算术逻辑单元(运算器ALU)8个通用寄存器(通用Regs)1个标志寄存器(Flags)EU部分控制电路(部分CU)总线接口单元总线接口单元BIU功能:1 1、从内存中、从内存中取指令取指令送入指令预取队列送入指令预取队列IPQIPQ2 2、负责与内存或输入、负责与内存或输入/输出接口之间的输出接口之间的数据数据传送传送 在执行转移程序时,BIU使指令预取队列IPQ复位,从指定的新地址取指令,并立即传给执行单元执行。总线接口单元总线接口单元BIU的组成 段寄存器 指令指针寄存器 指令队列 地址加法器 总线控制逻辑2.8088的内部寄存器的内部寄存器含14个16位寄存器,按功能可分为三类

21、8个通用寄存器(通用Regs)4个段寄存器 (Seg Regs)2个控制寄存器(Con Regs)专用专用Regs通用寄存器通用寄存器(通用Regs)数据寄存器(AX,BX,CX,DX)地址指针寄存器(SP,BP)变址寄存器(SI,DI)数据寄存器数据寄存器 8088含4个16位数据寄存器,它们又可分为8个8位寄存器,即:AX AH,AL BX BH,BL CX CH,CL DX DH,DL作用:常用来存放参与运算的操作数或运算结果数据寄存器特有的数据寄存器特有的习惯用法习惯用法 AX:累加器。多用于存放中间运算结果;所有I/O指令必须都通过AX 与接口传送信息.BX:基址寄存器。在间接寻址中

22、用于存放基地址;CX:计数寄存器。用于在循环或串操作指令中存放 循环次数或重复次数.DX:数据寄存器。在32位乘除法运算时存放高16位数;在间接寻址的I/O指令中存放I/O端口地址。地址指针寄存器地址指针寄存器SP:堆栈指针寄存器.其内容为栈顶的偏移地址;BP:基址指针寄存器.常用于在访问内存时存放内存单元的偏移地址。BX与与BP在应用上的区别在应用上的区别相同点:作为通用寄存器,二者均可用于存放数据;不同点:作为基址寄存器,BX通常用于寻址数据段;BP通常用于寻址堆栈段。BX一般与DS或ES搭配使用;BP一般与SS拾配.注:注:间接寻址时间接寻址时 仅仅BX、BP、SI、DI可用于存储器寻址

23、;可用于存储器寻址;仅仅DX可用于可用于I/O寻址。寻址。变址寄存器变址寄存器SI:源变址寄存器DI:目标变址寄存器作用:变址寄存器常用于指令的间接寻址或变址寻址。特别是在串操作指令中,用SI存放源操作数的偏移地址,而用DI存放目标操作数的偏移地址。段寄存器段寄存器(专用Seg Regs)作用:用于存放逻辑段的段基地址 (逻辑段的概念后面将要介绍)CS:代码段寄存器 代码段用于存放指令代码 DS:数据段寄存器 ES:附加段寄存器 数据段和附加段用来存放操作数 SS:堆栈段寄存器 堆栈段用于存放返回地址,保存寄存器内容,传递参数数据段DS/ES代码段CS堆栈段SS控制寄存器控制寄存器(专用Con

24、 Regs)IP:指令指针寄存器,其内容为下一条 要执行的指令的偏移地址FLAGS:标志寄存器状态标志状态标志:存放运算结果的特征 6个状态标志位(CF,SF,AF,PF,OF,ZF)控制标志控制标志:控制某些特殊操作 3个控制标志位(IF,TF,DF)ODITSZAPC1502467891011FLAGS四、存储器四、存储器的的寻址寻址物理地址8088:20根地址线,可寻址220=1MB个存储单元CPU送到AB上的20位的地址称为物理地址物理地址 物理地址物理地址物理地址.60000H 60001H 60002H 60003H 60004H.12HF0H1BH08H存储器的操作完全基于存储器

25、的操作完全基于物理地址。物理地址。问题:问题:80888088的内部总线和内部的内部总线和内部寄存器均为寄存器均为1616位,如何位,如何生成生成2020位地址位地址?解决:解决:存储器分段存储器分段存储器分段高地址低地址段基址段基址段基址段基址最大最大64KB,最小,最小16B段i-1段i段i+1逻辑地址逻辑地址段基地址和段内偏移组成了逻辑地址 段地址段地址 偏移地址偏移地址(偏移量偏移量)格式为:段地址:偏移地址 物理地址=段基地址16+偏移地址60002H00H12H60000H0 0 0 0段基地址(段基地址(16位)位)段首地址段首地址 偏移地址=0002HBIU中的地址加法器用来实

26、现逻辑地址到物理地址的变换8088 可同时访问4个段,4个段寄存器中的内容指示了每个段的基地址段基址段基址段内偏移段内偏移物理地址物理地址+16位20位0000默认段和偏移寄存器8086规定了访问存储器段的规则:此规则定义了段地址寄存器和偏移地址寄存器的组合方式,其默认规则如下表:段地址默认偏移地址用于访问CSIP指令SSSP、BP堆栈中的数据DSBX、DI、SI、8位或16位数数据段中的数据ES串指令的DI目标串操作数已知CS=1055H,DS=250AH,ES=2EF0H,SS=8FF0H,DS段有一操作数,其偏移地址=0204H,1)画出各段在内存中的分布 2)指出各段首地址 3)该操作

27、数的物理地址=?10550H250A0H2EF00H8FF00HCSSS CSDSES解:解:各段分布及段首址见右图所示。各段分布及段首址见右图所示。操作数的物理地址为:操作数的物理地址为:250AH16H+0204H=252A4H这个例子说明:这个例子说明:段与段可以不连续段与段可以不连续 段之间可以重叠段之间可以重叠堆栈及堆栈段的使用堆栈及堆栈段的使用操作规则:内存中一个按FILO方式(先进后出)操 作的特殊区域。两种操作:每次压栈和退栈均以WORD(16位)为 单位,先进高位,再入栈低8位。操作指示:SS存放堆栈段地址,SP存放段内偏 移,SS:SP构成了堆栈指针。作用:堆栈用于存放返回

28、地址、过程参数或需要 保护的数据;常用于响应中断或子程序调用。堆栈操作示例SPSSSS压栈前压栈前退栈后退栈后高低低高高12HSSF0HSP压栈后压栈后低高SPSPSPF0H12HSP例:(1)若已知(SS)=1000H(SP)=2000H 则堆栈段的段首地址=?栈顶地址=?(2)若现在把1234H送入堆栈,则它所在的存储单元地址=?(3)若该段最后一个单元地址为12FFFH,则栈底地址=?段首栈底栈顶堆栈段解解:(1)段首地址段首地址=10000H,栈顶地址栈顶地址=10000+2000=12000H(2)低低8位数据位数据34H在在11FFEH地址中地址中,而高而高8位数据位数据12H在在

29、11FFFH中中 (3)栈底地址栈底地址=13000H12H34H五、五、8088CPU的工作时序的工作时序时序的概念:CPU各引脚信号在时间上的关系。时钟周期:每个时钟脉冲的持续时间成为一个时钟周期,用Ti表示,由时钟发生器产生,是CPU工作的基本时间单位。PC/XT时钟频率4.77MHz,时钟周期是210ns。总线周期:CPU完成一次访问内存(或接口)操作所需要的时间。8088执行存储器读或存储器写操作需用4个时钟周期。8088的总线周期由4个时钟周期组成,称为T1、T2、T3、T4状态;指令周期P:由若干个总线周期组成。是从取指令开始到指令执行完毕所需要的时间。一个总线周期时钟发时钟发生

30、器生器RES8284CLKRESET8088IO/MRDWRALEA19A16A15A8n+5VMN/MX l一个典型的总线周期一个典型的总线周期T1T2T3T4地址输出地址输出状态输出状态输出地址输出地址输出地址输出地址输出数据输入数据输入低电平低电平=读存储器,高电平读存储器,高电平=读读I/O接口接口CLKA19S6A16S3A15A8AD7AD0ALEIO/MDT/RDEN图 2-11 8088读总线周期RDT1T2T3T4低电平,CPU从存储器或接口读数据一个总线周期一个总线周期地址输出地址输出状态输出状态输出地址输出地址输出地址输出地址输出数据输入数据输入低电平低电平=写存储器,高

31、电平写存储器,高电平=写写I/O接口接口T1T2T3T4CLKA19S6A16S3A15A8AD7AD0ALEIO/MWRDT/RDEN一个总线周期一个总线周期地址输出地址输出状态输出状态输出地址输出地址输出地址输出地址输出数据输入数据输入低电平低电平=写存储器,高电平写存储器,高电平=写写I/O接口接口T1T2T3T4CLKA19S6A16S3A15A8AD7AD0ALEIO/MWRDT/RDEN图 2-12 8088写总线周期利用READY信号,使CPU达到可靠地读写内存和I/O接口的目的 2.3 80386微处理器微处理器 80386是32位微处理器,分为80386SX 和80386DX

32、两种型号。80386DX是标准32位微处理器,80386SX是“准32位”微处理器。80386有以下特点:80386由6个逻辑单元组成,按流水线方式工作,运行速度4MIPS,与CPU之间的数据传输速度为32MB/S。多任务处理更容易,硬件支持多任务。硬件支持段式管理和页式管理,易于实现虚拟存储系统。硬件支持DEBUG功能,并可设置数据断点和ROM断点。4级特权级别:0级的优先级最高,其次为1、2、3级。具有自动总线功能,CPU读/写数据的宽度可以在32位和16位之间自由进行转换。地址信号线扩充到32根,可以寻址4GB空间。采用高性能协处理器80387,具备了很强的浮点运算能力和很高的运算速度。

33、在每条指令执行期间,CPU需要进行类型、内存越界等保护特性检查。8038680386的逻辑部件:的逻辑部件:80386内部分为三大部分:总线接口部件、中央处理部件和存储器管理部件。中央处理部件又分成指令预取部件、指令译码部件和指令执行部件。控制 部件 测试部件 分段描述符 超高速 缓存器 分段部件 分页描述符 超高速缓存器分页部件 总线 接口部件 预取 队列 预取 单元 32位寄存器组 桶形移位器 ALU指令译码 指令队列 32 位地 址总线 32 位数 据总线 控制总线NPX 接口 中断复位CPUMMU BIU 1 1总线接口部件总线接口部件控制 部件 测试部件 分段描述符 超高速 缓存器

34、分段部件 分页描述符 超高速缓存器分页部件 总线 接口部件 预取 队列 预取 单元 32 位寄存器组 桶形移位器 ALU指令译码 指令队列 32 位地 址总线 32 位数 据总线 控制总线NPX 接口 中断复位CPUMMU BIU 80386的总线接口部件BIU的作用和8086的BIU基本相同,控制进出CPU的所有数据、地址及控制信号。BIU中含有16字节指令预取队列。总线周期仅为2个时钟周期。控制 部件 测试部件 分段描述符 超高速 缓存器 分段部件 分页描述符 超高速缓存器分页部件 总线 接口部件 预取 队列 预取 单元 32 位寄存器组 桶形移位器 ALU指令译码 指令队列 32 位地

35、址总线 32 位数 据总线 控制总线NPX 接口 中断复位CPUMMU BIU 2 2中央处理部件中央处理部件(1)指令预取部件 指令预取部件包括16字节的预取队列寄存器,可存放5条左右的指令。指令代码预取不再由BIU负责,而是由一个独立的指令预取部件完成。当预取队列有空单元或发生一次控制转移时,预取部件便通过分页部件向BIU发出指令预取请求。分页部件将预取指令指针送出的线性地址变为物理地址,再由BIU及系统总线从内存单元中预取指令代码,放入预取队列中。(2)指令译码部件 80386采用微程序控制技术,指令的执行过程实际是通过执行由微指令组成的微程序来实现的。所有指令对应的微程序存放在其内部的

36、控制存储器中。指令译码部件从BIU的指令预取队列中取指令,将操作码译成与该指令操作码相对应的控制ROM的入口地址,存入译码指令队列中。该队列可容纳3条已译码指令。(3)执行部件 该部件从译码指令队列中取出已译码指令并执行完成所规定的操作。3 3存储器管理部件(存储器管理部件(MMUMMU)控制 部件 测试部件 分段描述符 超高速 缓存器 分段部件 分页描述符 超高速缓存器分页部件 总线 接口部件 预取 队列 预取 单元 32 位寄存器组 桶形移位器 ALU指令译码 指令队列 32 位地 址总线 32 位数 据总线 控制总线NPX 接口 中断复位CPUMMU BIU 存储器管理部件MMU(Mem

37、ory Management Unit)分为分段部件和分页部件。其中分段部件用来实现逻辑地址到线性地址的转换,分页部件用来实现线性地址到物理地址的转换。若分页部件处于允许状态,则分页部件在操作系统的控制下,便产生线性地址到物理地址的转换;若分页部件处于禁止状态,线性地址即为物理地址。取第n+2条指令取第n+1条指令取第n+6条指令取第n+5条指令取第n+4条指令取第n+3条指令总线接口部件译码n+2条指令译码n+1条指令译码n+5条指令译码n+4条指令译码n+3条指令指令译码部件执行n+2条指令执行n+1条指令执行n+4条指令执行n+3条指令指令执行部件地址&MMU地址&MMU存储管理部件(M

38、MU)4 48038680386指令流水线指令流水线总线接口部件、指令预取部件、指令译码部件和存储器管理部件构成了80386CPU指令流水线。2.3.4 803862.3.4 80386内部寄存器内部寄存器AH ALBH BLCH CLDH DLSPBPSIDIIPFLAGESCSFSDSGSSS累加器基址寄存器计数器数据寄存器堆栈指针基址指针源变址目的变址附加段堆栈段代码段标志寄存器指令指针数据段附加段附加段段寄存器通用寄存器EAXEFLAGSEIPEDIESIEBPESPEDXECXEBX0311580386寄存器组是8086寄存器组的超集。除了将原有寄存器扩展为32位外,还增加了许多新的

39、寄存器,同时对段寄存器作了较大变动。原8086寄存器组16位扩展为32位寄存器新增寄存器指令指针标志寄存器段寄存器通用寄存器控制寄存器系统段寄存器系统地址寄存器80386微处理器的寄存器结构1 1通用寄存器组通用寄存器组80386的通用寄存器为EAX、EBX、ECX、EDX、ESI、EDI、EBP及ESP。其低16位AX、BX、CX、DX、SI、DI、BP、SP可单独使用,AX、BX、CX、DX的高、低8位也可以单独使用。2 2段寄存器段寄存器80386增加了FS和GS两个新的段寄存器,在非实模式下段寄存器内容不再是段的基地址,而是指向全局与局部描述符表的段选择子。在80386微机系统中编程,

40、必须在存储器中建立四种系统表:(1)GDT全局描述符表共1个;(2)局部描述符表若干个;(3)IDT中断描述符表共1个;(4)TSS任务状态段若干个。描述符表描述符表TIRPL012315描述符表分为全局描述符表GDT和局部描述符表LDT,容量64KB。存有若干种描述符,段描述符由8个字节组成,用来描述段的基地址、大小和属性,因此可存放8192个描述符。索引号用来指示段描述符在描述符表中位置索引号用来指示段描述符在描述符表中位置TI=0TI=0表示选择表示选择GDTGDT,TI=1TI=1表示选择表示选择LDTLDT申请者特权级别申请者特权级别0n321GDT或LDT选择器CS、DS、ES、S

41、S、FS或GS寄存器中的数每个项目被称为一个描述符因为它描述一部分内存(保存在内存中的某个地方)内存描述符表描述符表当指令将一个16位的值赋给段选择器时,CPU将其索引号部分所对应的段描述符自动加载到描述符寄存器中。每个段描述符由三部分组成:基地址字段用来描述所对应段在物理存储器中的起始地址;边界字段用来描述所对应段的大小;属性字段用来描述所对应段的属性。3系统地址寄存器系统地址寄存器8038680386设置了设置了4 4个系统地址寄存器:个系统地址寄存器:GDTRGDTR、LDTRLDTR、IDTRIDTR和和TSSRTSSR(或(或称称TRTR),分别用来管理四种系统表,即),分别用来管理

42、四种系统表,即GDTGDT、LDTLDT、IDTIDT和和TSSTSS。GDTRGDTR和和LDTRLDTR为为4848位宽,而位宽,而IDTRIDTR和和TSSRTSSR为为8080位宽。位宽。(1 1)GDTRGDTR和和GDTGDT的关系的关系GDT是一个特殊段,所有任务共用,系统中只需建立一个,没有必要设置描述符,直接由GDTR决定它的基地址和大小。(2 2)IDTRIDTR和和IDTIDT的关系的关系IDT中存放中断门描述符/陷阱门描述符,系统只需建立一个。(3 3)LDTRLDTR和和LDTLDT的关系的关系一个任务需要建立一个LDT,LDT段描述由选择器字段来选择,因此LDTR中

43、需要有段选择器字段。LDTR指出当前进程的LDT描述符在全局描述符表GDT中的位置。(4 4)TSSRTSSR和和TSSTSS的关系的关系和LDT一样,一个任务需要建立一个TSS。TSSR和TSS与IDTR和IDT的关系相类似。4指令指针、标志寄存器指令指针、标志寄存器(1 1)指令指针)指令指针指令指针EIP存放下一条指令的偏移量,该偏移量是相对于现行代码段(CS)基址的偏移。EIP的低16位称为IP,用于16位寻址。(2 2)标志寄存器)标志寄存器标志寄存器低12位与8086相同,新增加了四种标志。31-18在80386中保留未用17VM16RF1514NT13 12IOPL11OF10D

44、F9IF8TF7SF6ZF54AF32PF10CFIOPL分4级:03,0级级别最高,3级级别最低嵌套任务标志为1说明当前任务嵌套在另一个任务内恢复标志为1时,遇到断点或调试故障,继续执行下面的指令。在成功执行每条指令时,RF将自动被复位。虚拟8086模式标志,该位为1表示80386工作于虚拟86模式30-5在80386中保留未用4ET3TS2EM1MP0PE31PG5控制寄存器控制寄存器80386内部有4个32位控制寄存器CR0CR3,用来保存各种全局性状态,CR0的低16位称为机器状态字MSW,格式如图所示。PE保护模式允许位,PE=1时CPU处在保护模式。MP协处理器监控位,MP=1表示

45、有协处理器。EM仿真协控制位,EM=1表示用软件仿真协处理器。TS任务转换控制位,当任务转换时该位自动地将该位置1。协处理器类型位,系统配接80387时RT=1,配接80287时,ET=06.调试寄存器和测试寄存器调试寄存器和测试寄存器80386有8个32位的调试寄存器DR7DR0。DR3DR0用来存放断点地址。DR5和DR4是Intel保留未作定义。DR6调试状态寄存器,存放所有引起类型l异常中断的事件标志。DR7为调试控制寄存器,高16位分成4个字段,分别用来规定4个断点的长度是一个字节还是4个字节以及引起断点的访问类型;低16位用来允许/禁止4个断点以及选择断点的条件。80386有8个3

46、2位的测试寄存器TR7TR0,用户只能访问2个转换旁路缓冲器的测试寄存器TR6和TR7。TR6为测试命令寄存器,存放测试时使用的标记信息和控制信息。TR7为测试数据寄存器,存放TLB测试的数据。3.3.5 80386存储器管理 80386具有三种存储器管理模式:实地址模式、虚拟8086模式和保护模式。物理空间的分配和虚拟地址到物理地址的转换,通常是由操作系统完成的,80386系统结构中专门设置了用于实现虚拟存储技术的硬件机制。80386把虚拟地址空间分成不同性质的两部分:全局地址空间和局部地址空间。全局地址空间为所有任务共享;局部地址空间是每一个任务占有的独立地址空间,存放每个任务代码和数据。

47、80386的段选择子字段是从全局描述符表GDT或局部描述符表LDT中选择一个段。虚拟存储器中可包含有214个段。由段选择器的T1位来决定全局地址空间或局部地址空间。虚拟地址到物理地址的转换虚拟地址由段管理部件转换成线性地址,再由页管理部件将线性地址转换成物理地址。如不启用分页功能,线性地址直接作为物理地址。逻辑地址线性地址物理地址分段机制分页机制转换转换48位32位32位SIDS寄存器64KBSIDS寄存器可变描述符表GDTR三种模式下的地址转换(1)实模式的地址转换(2)虚拟8086模式的地址转换增加了可选的分页功能2.2.5 5 系统总线系统总线 主要内容:总线的基本概念和分类;总线的工作

48、方式;常用系统总线标准。总线结构的优点1、便于采用模块结构设计,简化系统设计2、可以得到多厂商支持,提高兼容性3、便于扩充升级4、便于故障诊断和维修,减低生产成本一、概述一、概述 1.总线的概念 一组导线和相关的控制、驱动电路的集合。它由一组导线和相关的控制、驱动电路组成,是计算机系统各部件之间传输地址、数据和控制信息的公共通道。总线特点在于公用性,可同时挂接多个部件或设备。总线一般由多条通信线路组成,每一路信号线能传送一位二进制0或1,8条信号线就能在同一时间并行传送一个字节的信息。2.总线的分类总线的分类 前端总线:前端总线:CPU 其他部件其他部件系统总线:主机系统总线:主机I/O接口接

49、口外部总线:微机外部总线:微机外设外设 按传送信息的类型按层次 结构地址总线(地址总线(AB)数据总线(数据总线(DB)控制总线(控制总线(CB)按传送类型分按传送类型分数据总线(数据总线(DB)数据总线是计算机系统内部之间进行数据传送的路径。数据总线的传送方向是双向的,可以由处理器发向其他部件,也可以由其他部件将信号送向处理器。数据总线一般由8条、16条、32条或更多条数据线组成,因此,数据线的条数称为数据总线的宽度。由于每一条数据线一次只能传送一位二进制数,因此数据结的条数决定了每一次能同时传送的二进制位数。地址总线(地址总线(AB)地址总线用于传送地址信息,也就是这类总线上所传送的一组二

50、进制0或1表示的是一个内存单元地址或I/O端口地址。它规定了数据总线上的数据来自何处或被送到何处。因地址信息均由系统产生,所以它的传送方向是单向的。地址总线的宽度决定了能够产生的地址码的个数,从而也决定了计算机系统能够管理的最大存储容量。另,在进行输入输出操作时,地址总线还要传送I/O端中的地址。而I/O端口的容量远低于内存容量,所以在寻址时,只用地址总线的低位。控制总线(控制总线(CB)控制总线用于传送各种控制信号,以实现对数据总线,地址总线的访问及使用情况进行控制。控制信号的作用是在系统内各部件之间发送操作命令和定时信号。控制信号的类型有:控制信号的类型有:写存储器命令;读存储器命令;I/

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(《微型计算机原理与接口技术》第2章-微型处理器与总线课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|