微处理器及其系统(2010.9)

上传人:san****019 文档编号:71413400 上传时间:2019-01-20 格式:PPT 页数:86 大小:862.31KB
返回 下载 相关 举报
微处理器及其系统(2010.9)_第1页
第1页 / 共86页
微处理器及其系统(2010.9)_第2页
第2页 / 共86页
微处理器及其系统(2010.9)_第3页
第3页 / 共86页
微处理器及其系统(2010.9)_第4页
第4页 / 共86页
微处理器及其系统(2010.9)_第5页
第5页 / 共86页
点击查看更多>>
资源描述

《微处理器及其系统(2010.9)》由会员分享,可在线阅读,更多相关《微处理器及其系统(2010.9)(86页珍藏版)》请在金锄头文库上搜索。

1、第 2 章 8086微处理器及其系统,2.1 8086微处理器,1978年,Intel公司推出16位微处理器8086。,8086CPU具有16位数据总线和20位地址总线,数据总线与地址总线分时复用,寻址范围为1MB。,2.1.1 8086CPU的结构,8086的内部结构从功能分EU和BIU:,外部总线,EU(执行单元):负责指令的译码、执行和数据的运算 BIU(总线接口单元):管理8086与系统总线的接口,负责CPU对存储器和I/O进行访问 两个单元相互独立,分别完成各自操作 两个单元可以并行执行,实现指令取指和执行的流水线操作,EU组成: 内部寄存器(8个16位:AX、BX、CX、DX、SP

2、、BP、SI、DI) ALU和标志寄存器:FR EU控制电路,EU:内部寄存器, 8086共有8个16位的内部寄存器,分为两组:,SP(Stack Pointer Register) 堆栈指针寄存器 BP( Basic Pointer Register)基址指针寄存器 SI(Source Index Register) 源变址寄存器 DI(Destination Index Register)目的变址寄存器 BP、SP:指针寄存器,一般用于存放堆栈段 SI、DI:变址寄存器:SI一般用于数据段、DI一般用于数据段或附加段,4个16位通用寄存器 AX:累加器 (AH、AL) BX:基址寄存器(

3、BH、BL) CX:计数寄存器( CH、CL) DX:数据寄存器( DH、DL),EU:标志寄存器FR,标志寄存器(Flag Register)共有16位,其中7位未用。标志寄存器内容如图:,15 12 11 10 9 8 7 6 5 4 3 2 1 0,15 12 11 10 9 8 7 6 5 4 3 2 1 0, CF(Carry Flag)进位标志 -反映在运算结果的最高位有无进位或借位。,EU:标志寄存器,15 12 11 10 9 8 7 6 5 4 3 2 1 0, PF(Parity Flag)奇偶标志 -反映运算结果中“1”的个数的奇偶性,主要 用于判断数据传送过程中是否出错

4、。 若结果的低8位中有偶数个“1”,则PF=1, 否则PF=0。,EU:标志寄存器,15 12 11 10 9 8 7 6 5 4 3 2 1 0, AF(Auxiliary Flag)辅助进位标志 -加减运算时,若D3向D4产生了进位或借位则AF=1,否则AF=0。在BCD码运算时,该标志用于十进制调整。,EU:标志寄存器,15 12 11 10 9 8 7 6 5 4 3 2 1 0, ZF(Zero Flag)零标志 -反映计算结果是否为0。若结果为零则ZF=1,否则ZF=0。,EU:标志寄存器,15 12 11 10 9 8 7 6 5 4 3 2 1 0, SF(Sign Flag)

5、符号标志 -反映计算结果最高位即符号位的状态。如果运算结果的最高位为1则SF=1(对带符号数即为负数),否则SF=0(对带符号数即为正数)。,EU:标志寄存器,15 12 11 10 9 8 7 6 5 4 3 2 1 0, OF(Overflow Flag)溢出标志 -反映运算结果是否超出了带符号数的表数范围。,EU:标志寄存器,15 12 11 10 9 8 7 6 5 4 3 2 1 0, DF(Direction Flag)方向标志 - 用于串处理指令中控制串处理的方向。 DF=1:对SI、DI自动减量,高低地址 DF=0:对SI、DI自动增量,低高地址 DF标志可由STD置1,CLI

6、清0,EU:标志寄存器,15 12 11 10 9 8 7 6 5 4 3 2 1 0, IF(Interrupt Flag)中断允许标志 - 用于控制CPU是否允许相应可屏蔽中断请求。 - IF=1:允许响应可屏蔽中断 - IF=0:禁止响应可屏蔽中断 - IF标志可由STD置1,CLI清0,EU:标志寄存器,15 12 11 10 9 8 7 6 5 4 3 2 1 0, TF(trap flag)陷阱标志 - 用于单步操作。 TF=1:单步运行 TF=0:连续运行,EU:标志寄存器,2.1.1 8086CPU的结构,8086的内部结构从功能分EU和BIU:,外部总线,BIU组成: 段地址

7、寄存器:CS、DS、SS、ES 指令指针寄存器:IP 地址加法器 指令队列缓冲器 输入/输出电路(总线控制逻辑),段地址寄存器 CS:代码段寄存器(存放代码存储区的起始地址) DS:数据段寄存器(存放数据存储区的起始地址) SS:堆栈段寄存器(存放堆栈存储区的起始地址) ES:附加段寄存器(存放附加数据段存储区的起始地址),段地址:,段基地址:每一节的起始地址00000H,00010H,00020HFFFF0H。,段地址:段基地址的高16位地址,即0000H,0001H,0002HFFFFH。,BIU:,物理地址 =段地址16(左移4位)+偏移地址,偏移地址(逻辑地址,有效地址):对段地址的偏

8、移量。 偏移地址从0000HFFFFH。,也可表为0102H:0003H PA=0102H10H+0003H =01023H,17. 以下寄存器中,用于寻址数据段和堆栈段的分别是 。(2003年三级) A. BP,SI,DI和BX,SP B. BX,BP,SI和SP C. BX,SI,DI和BP,SP D. BX,BP,SI,DI和SP,答案:C,BIU,IP:指令指针寄存器(16位) 又称程序计数器; 存放将要执行指令的地址。每取一条指令IP自动增量,指向下一条指令。 地址加法器 用于产生20 位物理地址。段地址CS左移4位IP(或内部暂存器) 指令队列缓冲器: 是一个与CPU速度相匹配的高

9、速缓冲寄存器。 8086缓冲器有6字节 输入/输出控制电路(总线控制逻辑) 是CPU外部三总线(AB、DB、CB)的控制电路,它控制CPU与其他部件交换数据、地址、状态及控制信息。,11.下列不属于8086总线接口部件BIU的是 11 。(2004年三级) A.地址加法器 B.段寄存器CS、DS、ES、SS C.变址寄存器SI、DI D.指令队列缓冲器,答案:C,11.指令队列缓冲器的构成是 。(2003年三级) A. 寄存器,采用后进先出方式(LIFO) B. 三态门,采用先进先出方式(FIFO) C. 寄存器,采用先进先出方式(FIFO) D. 三态门,采用后进先出方式(LIFO),12.

10、8086中,下列不属于执行部件EU的是 。 A. AX,SP B. SI,BP C. BX,DI D. ES,IP,答案:C,答案:D,指令译码,CS:IP=F0300H IP指下条指令,ADD指令,指令队列,8086指令的执行,执行指令ADD AL,100H,AH,12H,CS,DS,SS,ES,IP,标志寄存器,总线 控制 逻辑,指令队列,EU 控 制,ALU,AX,2AH,BFH,34H,ADD,指令,00000H,20100H,00001H,FFFFFH,FFFFEH,20位地址,F0300H,寄存器组,2000H,总线接口部件和执行部件的管理,当8086指令队列缓冲区中有2字节空闲时

11、,总线接口部件就自动将指令从内存中预取到指令队列缓冲器中。 每当EU部件要执行一条指令时,它就从指令队列头部取出指令,后续指令自动向前推进。EU要花几个时钟周期执行指令,指令执行中若需要访问内存或I/O设备,EU就向BIU申请总线周期, 若BIU总线空闲,则立即响应; 若BIU忙,则待取指令操作完成后再响应EU的总线请求。 当指令队列已满,EU又没有申请总线时,则总线空闲。 遇到转移、调用及返回指令时,原先预取到指令队列中的指令已不再有用,BIU就自动清除指令队列中已有内容,从转移、调用或返回的新地址开始,重新从内存中预读取指令并填充指令队列。,2.1.2 8086引脚的功能,8086总线周期

12、,时钟周期:CPU的基本时间计量单位(一个T状态:T1、T2、T3、TW、T4、TI),它由计算机的主频决定; 总线周期:由若干个时钟周期组成,完成一个基本的操作 。典型总线周期(操作): 存储器读总线周期 存储器写总线周期 I/O读总线周期 I/O写总线周期 指令:由若干总线周期组成。,8086总线周期,8086一个基本总线周期由4个时钟周期(T状态)组成: T1状态: 总线输出地址(存储器或I/O口)。 T2状态: 总线上撤消地址 输入时:使总线低16位呈现高阻状态,为数据传输作准备 输出时: 直接输出数据。 T3状态:总线低16位传输写出或输入的数据。 T4状态:总线周期结束,若为总线读

13、周期则在T4前沿将数据读入CPU。,TW等待状态(WAIT),当内存或外设来不及与总线进行数据交换时,需要在T3和T4之间插入若干个Tw。通过查询READY(准备好引脚,输入,高有效)信号以确定Tw状态个数。判断依据: 1. 在T3的前沿检测READY引脚是否有效 2. 如果READY无效,在T3和它T4之间插入一个等效于T3的Tw ,转1 3. 如果READY有效,执行完该T状态,进入T4状态,TI空闲状态(IDLE),当BIU不执行任何读写总线操作时,系统总线上插入TI,形成空闲周期(状态)。,16. 以下关于8086总线周期的叙述中,不正确的是_。 A. 完成一次读/写操作所需的时间为一

14、个读/写总线周期 B. 读/写总线周期从T1开始到T4结束 C. 空闲总线周期为若干个TI D. 读/写总线周期总是T1,T2,T3,T4,答案:D,17. 若在一个总线周期中,8086对READY进行了5次采样,那么该总线周期共包含的时钟周期个数为_。(2002年三级) A. 4 B. 5 C. 8 D. 9,答案:C,16.8086中设某个总线周期需插入4个Tw(等待状态),则该总线周期内对READY信号检测的次数是 。(2003年三级) A. 6 B. 5 C. 4 D. 3,答案:B,8086引脚的功能,2.1.2,引脚的学习应注意 引脚的功能 信号的流向(输入、输出) 有效电平:高、

15、低、上升沿、下降沿 三态能力:高电平、低电平、高组态,8086引脚的功能,2.1.2,引脚包括 1.数据和地址引脚 2.读写控制引脚 3.中断请求和响应引脚 4.总线请求和响应引脚 5.其它引脚,1. 数据和地址引脚,AD15AD0(Address/Data) 地址/数据分时复用引脚,双向、三态 这些引脚在访问存储器或I/O时 T1状态:输出地址A15A0 T2、T3状态: 读周期:T2先浮空(高组态),T3读入数据D15D0 写周期:写出数据D15D0 总线请求响应执行时前,三态总线浮空,1. 数据和地址引脚(续2),A19/S6A16/S3(Address/Status):地址/状态分时复用引脚,输出、三态 这些引脚在访问存储器时 T1状态输出高4位地址A19A16 在访问外设时 T1状态全部输出无效电平(低电平) 其他时间

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号