《微型计算机原理与接口技术》课件第2章.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《《微型计算机原理与接口技术》课件第2章.ppt》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微型计算机原理与接口技术 微型计算机 原理 接口 技术 课件
- 资源描述:
-
1、第2章 微处理器与系统总线 2.1 Intel 8086/8088微处理器的结构微处理器的结构2.1.1 8086的基本结构与功能的基本结构与功能8086的结构由总线接口单元(Bus Interface Unit,BIU)和执行单元(Execution Unit,EU)组成。BIU主要负责CPU内部与存储器和I/O接口之间的信息传送,包括取指令、传送指令时将执行所需的操作数传送到EU,以及将EU的执行结果传送到内存或I/O接口。EU则主要负责分析和执行指令,并产生相应的控制信号。8086的基本结构如图2.1所示。第2章 微处理器与系统总线 图2.1 8086的基本结构第2章 微处理器与系统总线
2、 1.总线接口单元总线接口单元总线接口单元(BIU)的功能是负责CPU与存储器、I/O端口之间的信息传送。总线接口单元负责从内存中取指令送到指令队列。CPU执行指令时,总线接口单元从指定的内存单元或者外设端口中取数据,将数据传送给执行单元,或者把执行单元的操作结果传送到指定的内存单元或外设端口中。BIU根据执行单元EU得到的16位偏移地址和16位段寄存器提供的16位段地址,通过地址加法器产生20位物理地址,然后对存储器或I/O端口进行读/写操作。第2章 微处理器与系统总线 总线接口单元由下列各部分组成:(1)4个16位段地址寄存器。代码段寄存器CS(Code Segment)存放程序代码段起始
3、地址(20位物理地址)的高16位;数据段寄存器DS(Data Segment)存放数据段起始地址的高16位;堆栈段寄存器SS(Stack Segment)存放堆栈段起始地址的高16位;附加段寄存器ES(Extra Segment)存放附加数据段起始地址的高16位。(2)16位的指令指针寄存器IP。16位指令指针寄存器IP用于存放下一条预取指令的偏移地址。其基本工作过程是:取指令时,IP将其中的值作为指令的偏移地址,该地址与CS寄存器中的值组合生成指令的物理地址,然后CPU按照该物理地址读取指令,同时IP本身自动加1。第2章 微处理器与系统总线(3)20位的地址加法器。20位的地址加法器用于将段
4、地址(16位)与偏移地址(16位)合成为20位的物理地址。(4)指令队列。指令队列用来存放预先从主存取出的指令。通过总线接口单元中的指令队列可实现流水操作。2.执行单元执行单元执行单元(EU)主要由算术逻辑单元(ALU)、通用寄存器、指令指针寄存器、标志寄存器、暂存寄存器、指令译码器和控制电路等部分组成。其主要功能就是执行指令。执行指令的过程首先是指令译码,即从BIU的指令队列中取出指令码,在执行单元EU中翻译成可直接执行的微指令码,然后根据对指令译码后所得到的微指令码,向各有关部件发出相应的控制信号,完成指令规定的功能。指令要完成的各种运算处理由算术逻辑单元(ALU)和有关的寄存器实现。第2
5、章 微处理器与系统总线 在指令的执行过程中如果需要和存储器交换数据,那么就要向BIU发出总线请求,同时将指令直接提供的或者计算出来的逻辑地址中的偏移量送往BIU,由BIU计算出相应的物理地址。在执行指令时不仅要使用算术逻辑单元(ALU),同时还要配合使用相关的通用寄存器和标志寄存器,来提供操作数、存放运算的中间结果、反映运算结果的状态标志等等。因此,对通用寄存器的使用管理也是EU的任务。第2章 微处理器与系统总线 总线接口单元和执行单元大部分的操作是可以并行的,可以同时进行读/写操作和执行指令操作。这样就减少了微处理器取指令所需要等待的时间,从而提高了微处理器执行指令的速度,这便是流水线结构的
6、雏形。例如总线接口单元从存储器中预先取出一些指令存放在指令队列中,这样执行单元就不必等待总线接口单元去取指令,从而实现了流水线操作,如图2.2所示。流水线工作方式减少了CPU的等待时间,提高了微处理器的利用率和整个系统的效率。第2章 微处理器与系统总线 图2.2 流水线工作方式第2章 微处理器与系统总线 2.1.2 8086的内部寄存器的内部寄存器寄存器是CPU内部的重要组成部分,寄存器具有非常高的读/写速度,所以寄存器之间的数据传送非常快。CPU对存储器中的数据进行处理时,通常需要先把数据取到内部寄存器中再作处理。8086 CPU中有14个十六位的寄存器。这14个寄存器按用途可分为通用寄存器
7、、控制寄存器和段寄存器三大类。8086寄存器的结构如图2.3所示。第2章 微处理器与系统总线 图2.3 8086寄存器结构第2章 微处理器与系统总线 1.通用寄存器通用寄存器通用寄存器共8个16位的寄存器:AX、BX、CX、DX、SP、BP、SI及DI。其中包括四个数据寄存器,两个地址指针寄存器和两个变址寄存器。1)通用数据寄存器AX、BX、CX、DX通用数据寄存器既可以用作16位的寄存器,也可分为8位的独立寄存器AL、AH、BL、BH、CL、CH、DL和DH使用。通用数据寄存器既可以存放指令所需的操作数,也可存放运算后的结果,具有通用性,使用灵活。8086/8088 CPU的14个寄存器中除
8、了这4个16位寄存器能分别当做两个8位寄存器来用之外,其他寄存器都不能如此使用。第2章 微处理器与系统总线 这4个通用数据寄存器除通用功能外,还有如下专门用途。AX(Accumulator)累加器,主要用于算术逻辑运算。用该寄存器存放运算结果可使指令简化,提高指令的执行速度。此外,所有的I/O指令都使用该寄存器与外设端口交换信息。BX(Base)基址寄存器,8086/8088 CPU中有两个基址寄存器BX和BP。BX用来存放内存数据段中操作数的偏移地址,BP用来存放堆栈段中操作数的偏移地址。第2章 微处理器与系统总线 CX(Counter)计数寄存器,常用来保存计数值,在移位指令、循环指令和串
9、操作指令中作计数器使用。在设计循环程序时使用该寄存器存放循环次数,可使程序指令简化,有利于提高程序的运行速度。DX(Data)数据寄存器,在寄存器间接寻址的I/O指令中存放I/O端口地址。在做双字长乘除法运算时,DX与AX一起存放一个双字长操作数,其中DX存放高16位数据,AX存放低16位数据。第2章 微处理器与系统总线 2)地址指针寄存器SP、BPSP(Stack Pointer)堆栈指针寄存器,和堆栈段寄存器SS一起用来确定栈顶的地址。在使用堆栈操作指令(PUSH或POP)对堆栈进行操作时,每执行一次进栈或出栈操作,系统会自动将SP的内容减2或加2,以使其始终指向栈顶。BP(Base Po
10、inter)基址寄存器,作为通用寄存器,它可以用来存放数据,但更重要的用途是存放操作数在堆栈段内的偏移地址,和堆栈段寄存器SS一起用来确定堆栈段中的任意存储单元的地址。第2章 微处理器与系统总线 3)变址寄存器SI、DISI(Source Index)源变址寄存器,用来存放源操作数的偏移地址,与数据段寄存器DS联用,以确定源操作数在数据段中的存储单元地址。在串操作指令中SI拥有自增和自减的变址功能。DI(Destination Index)目的变址寄存器,用来存放目的操作数的偏移地址,与附加段寄存器ES联用,以确定目的操作数在附加段中的存储单元地址。在串操作指令中DI拥有自增和自减的变址功能。
11、第2章 微处理器与系统总线 2.控制寄存器控制寄存器1)指令指针IP指令指针IP(Instruction Pointer)是一个16位的专用控制寄存器,用来存放下一条预取指令的偏移地址,与代码段寄存器CS联用。CS存放代码段的基地址,IP存放段内偏移量。当BIU从内存中取出一个字节后,IP自动加1,指向下一条指令代码。用户程序不能直接访问IP。2)标志寄存器FR标志寄存器FR(Flags Register)是一个按位定义的16位寄存器。在8086中只使用了FR中的9位,其中6位是状态标志,3位是控制标志,如图2.4所示。第2章 微处理器与系统总线 图2.4 8086状态标志寄存器各位含义第2章
12、 微处理器与系统总线 3.段寄存器段寄存器为了对1 M个存储空间进行管理,8086/8088对存储器进行分段管理,即将程序代码和数据分别放在代码段、数据段、堆栈段或附加数据段中,每个段最多可达64K个存储单元。段地址分别放在对应的段寄存器中,代码或数据在段内的偏移地址由有关的寄存器或立即数给出。8086 CPU共有4个16位的段寄存器,用来存放每一个逻辑段的段起始地址。1)代码段寄存器CSCS用来存储程序当前使用的代码段的段地址。CS的内容左移4位再加上指令指针寄存器IP的内容就是下一条要读取的指令在存储器中的物理地址。第2章 微处理器与系统总线 2)数据段寄存器DSDS用来存放程序当前使用的
13、数据段的段地址。DS的内容左移4位再加上按指令中存储器寻址方式给出的偏移地址即可得到对数据段指定单元进行读/写的物理地址。3)堆栈段寄存器SSSS用来存放程序当前所使用的堆栈段的段地址。堆栈是存储器中开辟的按先进后出原则组织的一个特殊存储区,主要用于调用子程序或执行中断服务程序时保护断点和现场。4)附加数据段寄存器ESES用来存放程序当前使用的附加数据段的段地址。附加数据段用来存放字符串操作时的目的字符串。第2章 微处理器与系统总线 2.1.3 8086/8088存储器与存储器与I/O组织组织1.内存地址分段与合成内存地址分段与合成8086/8088系统的20位地址线可寻址1 MB字节的存储空
14、间,其中任何一个内存单元都有一个20位的地址,称为内存单元的物理地址。访问的内存单元在多数情况下都要通过寄存器间接寻址,而8086/8088 CPU内部寄存器只有16位,可寻址216=64KB。为了解决这一矛盾,8086/8088 CPU采用了将存储器地址空间分段的方法,即将1MB空间划分成若干个逻辑段,每个逻辑段的最大长度为64KB,然后用段起始地址加上偏移地址来访问物理存储器。段基址放在段寄存器中,因为8086/8088 CPU中有4个段寄存器,所以它可以同时访问4个存储段。段与段之间可以重合、重叠、紧密连接或间隔分开。分段示意如图2.5所示。第2章 微处理器与系统总线 图2.5 内存分段
15、示意图第2章 微处理器与系统总线 把段起始地址的高16位称为段基址,相对于段起始地址的一个偏移量称为偏移地址(也叫有效地址)。把“段基址:偏移地址”的表示形式称为存储单元的逻辑地址,逻辑地址也是编程时采用的地址形式。物理地址是内存的绝对地址,为00000HFFFFFH,是CPU访问内存的实际寻址地址。物理地址和逻辑地址的关系为:物理地址=段基址16+偏移地址物理地址在BIU的地址加法器中形成。“段基址16”相当于段基址左移4位(或在段基址后面加4个0),然后再与偏移地址相加,得到20位的物理地址。物理地址的计算如图2.6所示。第2章 微处理器与系统总线 图2.6 内存物理地址的计算第2章 微处
16、理器与系统总线【例例2.1】若CS=2000H,IP=003AH,求下条指令的物理地址。CS存放当前代码段基地址,IP存放了下一条要执行指令的段内偏移地址,则下条指令的物理地址=CS16+IP=2000H10H+003AH=2003AH。存储器采用分段寻址的好处是允许程序在存储器内重定位(浮动),可重定位程序是一个不加修改就可以在任何存储区域中运行的程序。这是因为段内偏移总是相对段起始地址的,所以只要在程序中不使用绝对地址访问存储器,就可以把一个程序作为一个整体移到一个新的区域。在DOS中,程序载入到内存时由操作系统指定段寄存器的内容,以实现程第2章 微处理器与系统总线 序的重定位。存储器采用
17、分段编码使得程序中的指令只涉及16位地址,缩短了指令长度,提高了程序执行的速度。尽管8086的存储器空间多达1 MB,但在程序执行过程中,不需要在1 MB空间中去寻址,多数情况下只需在一个较小的存储器段中运行。大多数指令运行时,并不涉及段寄存器的值,只涉及16位的偏移量。第2章 微处理器与系统总线 2.逻辑地址来源逻辑地址来源由于访问内存的操作类型不同,BIU所使用的逻辑地址来源也不同,如表2.1所示。取指令时,自动选择CS值作为段基址,偏移地址由IP来指定,计算出取指令的物理地址;当进行堆栈操作时,段基址自动选择SS值,偏移地址由SP来指定;当进行读/写内存操作数或访问变量时,则自动选择DS
18、或ES值作为段基址(必要时修改为CS或SS),此时,偏移地址要由指令所给定的寻址方式来决定,可以是指令中包含的直接地址,可以是地址寄存器中的值,也可以是地址寄存器的值加上指令中的偏移量;当用BP作为基址寻址时,段基址由堆栈寄存器SS提供,偏移地址从BP中取得;在字第2章 微处理器与系统总线 符串寻址时,源操作数放在现行数据段中,段基址由DS提供,偏移地址由源变址寄存器SI取得,而目标操作数通常放在当前ES中,段基址由ES寄存器提供,偏移地址从目标变址寄存器DI取得。段寄存器与其他寄存器组合寻址存储单元的示意图见图2.7。表表2.1 逻辑地址的来源逻辑地址的来源第2章 微处理器与系统总线 图2.
19、7 存储单元寻址示意图第2章 微处理器与系统总线 2.1.4 8086/8088 CPU的引脚功能的引脚功能8086 CPU是40脚双列直插式芯片,其引脚排列如图2.8所示。为了减少芯片引脚的数量,对部分引脚进行了双重定义,采用分时复用方式工作,即一个引脚有多个功能,在不同的时刻,引脚上的信号是不同的。正是由于这种分时复用的方法,才使得8086/8088 CPU可用40条引脚实现20位地址、16位数据(8位数据)及许多控制信号和状态信号的传输。第2章 微处理器与系统总线 图2.8 8086 CPU的引脚排列第2章 微处理器与系统总线 1.数据总线和地址总线 在 8086 中,数据总线和地址总线
20、共占 20 条引脚。这组引脚采用分时复用的方式传送数据或者地址。AD15AD0地址/数据总线,为三态双向信号。这组引脚通过分时复用的方法传递数据或者地址。在每个总线周期开始(T1)时,用于输出地址总线的低 16 位(A15A0),其他时间为数据总线(D15D0)。第2章 微处理器与系统总线 A19/S6A16/S3地址/状态线,为三态输出信号。这组引脚通过分时复用的方法传递地址或状态。其中 A19A16为 20 位地址总线的高 4 位,S6S3为状态信号。作地址线用时,在存储器操作的T1状态下,输出 20 位地址总线的高 4 位地址信号(A19A16)。作状态线用时,输出状态信号 S6S3。这
21、时 S6始终为 0;S5指示状态寄存器中中断允许标志(IF)的当前值,S5=IF;而 S4和 S3表示正在使用哪个段寄存器,如表 2.2 所示。表表2.2 状态位与所用段寄存器关系状态位与所用段寄存器关系第2章 微处理器与系统总线 2.控制总线 控制总线是传送控制信号的一组信号线。其中的输出线用来传输 CPU 发出的控制命令(如读、写命令等),输入线用于由外部向 CPU 输入状态或请求信号(如复位、中断请求等)。8086 的控制总线中有一条MXMN/输入引脚,称为工作方式选择控制线,用来决定8086 CPU的工作方式。当MXMN/接+5 V电压时,8086 处于最小工作方式,此时微机系统中只包
22、含一个 8086 CPU,其提供系统所需要的全部控制信号;当MXMN/接地时,8086处于最大工作方式,微机系统除 8086 CPU 以外还可以包含其他CPU,该方式用于多处理机系统。8086 的 16 条控制总线分为两类,每类包含 8 条控制总线。其中一类的功能与工作方式无关,而另外一类的功能随工作方式的不同而不同。第2章 微处理器与系统总线 1)与工作方式无关的控制总线 RD读控制信号,三态输出,低电平有效。当其有效时,表示 CPU 正从存储器或 I/O 端口读取信息。READY准备就绪信号,输入,高电平有效。当 READY信号为高电平时,表示存储器或 I/O 端口传送数据完成;当READ
23、Y 信号为低电平时,表示被访问的存储器或 I/O 端口无法在规定的时间内完成数据传送,此时插入一个或多个等待周期,使8086 处于等待状态,直到 READY 信号为高电平,表示数据传输完毕。第2章 微处理器与系统总线 RESET复位信号,输入,高电平有效。当RESET信号为高电平时,8086 CPU停止正在运行的操作,系统处于复位状态,并将标志寄存器FR、指令指针IP、段寄存器DS、SS、ES清零以及指令队列清空,同时将代码段寄存器CS置为FFFFH;当RESET信号变为低电平时,CPU再次启动,开始执行程序。INTR可屏蔽中断请求信号,输入,高电平有效。当INTR有效时表示外部有可屏蔽中断请
24、求。CPU在当前指令的最后一个时钟周期对INTR进行检测,如果INTR为高电平,并且FR寄存器的IF=1,那么CPU在当前指令执行完后响应中断请求。第2章 微处理器与系统总线 NMI非屏蔽中断请求信号,输入,上升沿有效。当 NMI有效时表示外部有非屏蔽中断请求,CPU 在当前指令执行完后,立即进行中断处理。CPU对非屏蔽中断的响应不受中断允许标志IF 的影响。TEST等待测试信号,输入,低电平有效。只有 CPU执行 WAIT 指令时才使用该信号。8086 CPU 每隔 5 个时钟周期对TEST 引脚进行检测。若TEST 为高电平,则 CPU 进入等待状态;若为低电平,则 CPU 继续执行后续指
25、令。7/SBHE数据总线高 8 位允许/状态 S7信号,输出。在总线周期 T1状态,如果该信号为低电平,表示数据总线高 8位有效,否则数据总线高 8 位无效。其他时刻,该引脚用作状态 S7信号线。第2章 微处理器与系统总线 MXMN/工作方式选择信号,输入。MXMN/高电平时,8086 处于最小工作方式;MXMN/接地时,8086 处于最大工作方式。2)最小工作方式下的控制总线 8086处于最小工作方式时,CPU 仅支持由少量设备组成的单处理器系统,而不支持多处理器系统,其基本配置如图 2.9 所示。第2章 微处理器与系统总线 图2.9 CPU处于最小工作方式时的基本配置图第2章 微处理器与系
展开阅读全文