微机原理及应用-ch.ppt_第1页
微机原理及应用-ch.ppt_第2页
微机原理及应用-ch.ppt_第3页
微机原理及应用-ch.ppt_第4页
微机原理及应用-ch.ppt_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

第二章8086微处理器 2 18086微处理器的内部结构2 28086微处理器的引脚功能2 38086CPU的工作模式2 48086CPU的基本总线时序 同一时间处理二进制的位数 即主频 数字脉冲信号震荡的速度 2 18086微处理器的内部结构 8086是Intel系列的16位微处理器 有16根数据线和20根地址线 因为可用20位地址 所以可寻址的地址空间达220 1MB 时钟频率有5MHZ 8MHZ 10MHZ三种 有64KB个I O端口 并且两个编号相邻的端口可以组合成一个16位端口 CPU的工作由执行部件 EU 和总线接口部件 BIU 两部分组成 一 执行部件 EU EU ExecutiveUnit负责指令的执行 包括通用寄存器 专用寄存器 标志寄存器及运算器 ALU 等部分组成 通用寄存器组 AX BX CX DX 存放16位数据或地址 AH AL BH BL CH CL DH DL 8位寄存器 注意 1 用于8位寄存器使用时只可存放数据 不能存放地址 2 一般情况 这些寄存器是用在算术运算或逻辑运算指令中 以进行算术逻辑运算 在有些指令中 它们则有特定的用途 如AX作累加器用 BX作基址 Base 寄存器 如在查表指令XLAT中存放表的起始地址 CX作计数 Count 寄存器 如在数据串操作指令的REP中用CX存放数据单元的个数作为循环操作的次数 DX作数据 Data 寄存器 如在字的除法运算指令DIV中 存放余数 主要用于存放I O或存储器的端口地址 指针寄存器SP和BP用来存取位于当前堆栈段中的数据 但SP和BP在使用上有区别 入栈 PUSH 和出栈 POP 指令是由SP给出栈顶的偏移地址 故称为堆栈指针寄存器 BP则是用来存放位于堆栈段中的一个数据区基址的偏移地址的 故称作基址指针寄存器 变址寄存器SI和DI是用来存放当前数据段的偏移地址的 在字符串操作中 源操作数地址的偏置放于SI中 所以SI称为源变址寄存器 目的操作数地址的偏置放于DI中 所以DI称为目的变址寄存器 2 专用寄存器SP BP SI DI 3 算数逻辑单元ALU 主要是进行算数和逻辑运算的部件 4 状态标志寄存器FR 8086CPU的状态标志寄存器是一个16位的寄存器 9个位用作标志位 其中状态标志位有6个 控制标志有3个 状态标志 用来表示运算结果的特征 它们是 CF PF AF ZF SF和OF 这6位都是逻辑值 判断结果为逻辑真 true 时其值为1 判断结果为逻辑假 false 时 其值为0 控制标志 用来控制CPU的操作 它们是 IF DF和TF e g A 10110110 B 01101000则 A B 100011110 CF 1 有进位 PF 1 奇偶校验 运算结果中有偶数个 1 AF 0 辅助进位 低4位向高4位无借位 ZF 0 运算结果不为 0 SF 0 符号标志 运算结果最高位D7为 0 OF 0 溢出标志 运算结果没超过范围 128 127 10110110 01101000100011110 二 总线接口部件 BIU 的组成和工作特点 BIU BUSInterfaceUnit功能是负责与CPU外部即存贮器 I O端口传送数据和程序 BIU由四部分组成 1 四个16位的段地址寄存器 CS CodeSegment 代码段寄存器DS DataSegment 数据段寄存器ES ExtraSegment 附加段寄存器SS StackSegment 堆栈段寄存器 2 16位指令指针寄存器IP 3 20位的地址加法器 4 6字节的指令队列 提供段基址以构成物理地址 不能参与算术逻辑运算 BIU的工作特点 1 地址加法器用来产生20位地址 物理地址 根据指令和相关的16位寄存器提供的信息计算出20位的物理地址 2 6B指令队列缓冲器提高CPU效率 BIU从内存中取下一条 或几条 指令机器码放在指令队列中 提高了CPU的效率 三 存储器的分段和物理地址的形成1 存储器的分段 1MB 有20位地址线可直接寻址 空间分成若干段 每段 64KB 216 段与段之间能连续排列 部分重叠 完全重叠 断续排列 每个存储单元地址是20位二进制数 按00000H 0FFFFFH来编址 从0号地址开始 依次每16KB的存贮空间叫做一节 为了简化操作要求所有的段从节首开始 因此 段首地址的低四位一定都是0 低4位为0的共有2 20 4 64K个地址 段首地址的高16位叫 段基址 从段首起到该段某一存贮单元的地址数称为该单元的段内偏移量 根据段中存贮信息的种类 将段分为代码段 数据段 堆栈段和附加段 当前段的段基址放在相应的16位段寄存器中 偏移量可存放在IP SP或16位通用寄存器中 2 逻辑地址和物理地址 物理地址指某一个单元在存贮器中的20位绝对地址 单元的物理地址是唯一的 逻辑地址是指存贮单元的段基址和偏移量 单元的逻辑地址可能不是唯一的 物理地址 段基址 16 偏移量 二进制 段基址左移四位 低位填0 十六进制 段基址左移一位 低位填0 物理地址 段基址左移4位 低位补0 偏移量 注意 同一个物理地址可以有不同段基址和偏移量组合得到 如 CS 0000H IP 1051H 物理地址010510HCS 0100H IP 0051H 物理地址010510H e g CS 2000H IP 2200H 存储器的物理地址是 20000H 2200H 22200H 四 8086内存的组织和CPU对存储器的访问 1 内存的组织形式内存是按字节编址的 每个存储单元中存放一个8位二进制数 一个字节 1B 若一个数据长度为2B 一个字 则放在连续两个单元中 高字节放高地址单元 低字节放低地址单元 字的地址用低字节存储地址表示 CPU的地址线A0作为偶存储体的片选信号 BHE作为奇存储体的片选信号 2 CPU对内存的访问 存储器分成两个部分 每一部分为512K字节 一部分叫偶存储体 其中内存单元的地址码都是偶数如00000H 000002H等 该存储体的数据总线对应接CPU数据总线的低8位 另一部分叫奇存储体 其中内存单元的地址码都是奇数 如00001H 00003H等 该存储体的数据总线对应接CPU数据总线的高8位 3 CPU对数据字的访问 CPU如要访问一个偶地址的数据字 那么用D15 D016条数据总线可一次访问成功 若要访问一个奇地址的数据字到CPU 需要两次访问才能获得这个数据字 第一次用D15 D8访问奇存储体的低字节 第二次用D7 D0访问偶存储体的高字节 为了提高对数据字的访问速度 应将数据字的低字节放在偶存储体中 即使数据字的地址码为偶数 这样在存储器中存储的数据字叫对准字 而地址码为奇数的数据字叫未对准字 2 28086CPU的引脚功能 引脚的基本知识引脚的功能信号的流向有效电平三态能力引脚的复用 指引脚信号的定义 作用 通常采用英文单词或其缩写表示 信号从芯片向外输出 还是从外部输入芯片 或者是双向的 起作用的逻辑电平高 低电平有效上升 下降边沿有效 以少量的引脚提供更多的功能 输出正常的低电平 高电平外 还可以输出高阻的第三态 从引脚信号上看 8086和8088有什么不同 由于8088只能传输8位数据 所以8088只有8个地址 数据复用引脚 而8086是按16位传输数据的 所以有16个地址 数据复用引脚 8086和8088的控制线引脚定义中第28和34腿也不一样 在最小模式时 8088和8086的第28引脚的控制信号相反 而8086的第34腿为BHE S7 BHE 用来区分是传送字节 还是字 8088的第34腿为SS0 用来指出状态信息 不能复用 一 地址线 数据线和状态线 AD15 AD0 双向 三态 地址 数据分时复用总线 为低16位地址 数据的复用引脚线 采用分时的多路转换方法来实现对地址线和数据线的复用 在DMA方式时 这些引线被浮空 置为高阻状态 A19 S6 A18 S5 A17 S4 A16 S3 输出 三态 地址 状态复用线 BHE S7 输出 三态 为高8位数据总线允许 状态复用引脚 8086有16根数据线 可以用高8位数据线传送一个字节 也可以用低8位数据线传送一个字节 还可以一次传送一个字 BHE 是用来区分这几类传输的 通过硬件连接 可使8086CPU有两种工作方式 最大工作方式和最小工作方式 一种数据传输的控制方式 什么是分时复用 一个引脚在不同的时刻具有两个甚至多个作用最常见的总线复用是数据和地址引脚复用总线复用的目的是为了减少对外引脚的个数8086CPU的数据地址线采用了总线复用方法 二 控制线 1 RD 输出 三态 读信号线 与M IO 配合使用 2 WR 写信号线 3 M IO 存储器或I O端口访问信号 4 READY 输入 准备就绪信号 是由选中的存储器或I O端口送来的响应信号 当有效时 高电平 表示被访问的存储器或I O端口已准备就绪 可完成一次数据传送 5 INTR 输入 可屏蔽中断请求信号 6 INTA 输出 中断响应信号 CPU向外输出的中断响应信号 用于对外部中断源发出的中断请求的响应 7 NMI 输入 非可屏蔽中断请求信号 8 TEST 输入 测试信号 低电平有效 信号和WAIT指令配合使用 当CPU执行WAIT指令时 CPU处于等待状态 并且每隔5个T对该信号进行一次测试 一旦检测到TEST 信号为低 则结束等待状态 继续执行WAIT指令下面的指令 WAIT指令是使CPU与外部硬件同步的 TEST 相当于外部硬件的同步信号 9 RESET 输入 复位信号 输入 高电平有效 10 ALE 输出 地址锁存允许信号 ALE下降沿锁存地址 11 DT R 输出 三态 数据发送 接收控制信号 在使用8286或74LS245数据收发器的最小模式系统中 用DT R 来控制数据传送方向 DT R 为低电平 进行数据接收 CPU读 即收发器把系统数据总线上的数据读进来 当CPU处在DMA方式时 此线浮空 12 DEN 输出 三态 数据允许信号 在使用8286或74LS245数据收发器的最小模式系统中 允许收发器和系统数据总线进行数据传送 13 HOLD 输入 总线请求信号 当系统中CPU之外的总线主设备要求使用总线时 通过HOLD引脚向CPU发出请求 14 HLDA 输出 总线请求响应信号 当HLDA有效 高电平 时 表示CPU对总线请求主设备作出响应 同意让出总线 与CPU相连的三态引脚都被浮置为高阻态 15 MN MX 工作模式选择信号 三 其它 1 CLK 8086时钟信号 2 Vcc 电源 8086用单一的 5V电压 3 GND 地线 引脚 小结 CPU引脚是系统总线的基本信号可以分成三类信号 16位数据线 D0 D1620位地址线 A0 A19控制线 ALE IO M WR RD READYINTR INTA NMI HOLD HLDARESET CLK Vcc GND 2 38086CPU的工作模式 当把8086CPU与存储器和外设构成一个计算机系统时 根据所连的存储器和外设的规模 8086具有两种不同的工作模式 即最小模式和最大模式 8086到底工作在最大模式还是最小模式 由硬件设计决定 最小模式硬件连接特点 MN MX 接高电平 5V 决定了8086工作在最小模式有3片8282或74LS373 用来做地址锁存器当系统中所连存储器和外设较多时 需要增加数据总线的驱动能力 要用两片8286 8287作为总线 数据 收发器有一片8284A 作为时钟发生器 1 地址锁存器8282或74LS373 具有三态输出的TTL电平锁存器STB电平锁存引脚OE 输出允许引脚 8282 8282与8086的连接 74LS373 具有三态输出的TTL电平锁存器LE电平锁存引脚OE 输出允许引脚 2 数据收发器8286 8位双向缓冲器控制端连接在一起 低电平有效可以双向导通输出与输入同相 OE 0 导通T 1A BT 0A BOE 1 不导通 3 时钟发生器8284 最小模式的总线形成 1 20位地址总线 采用3个三态地址锁存器8282进行锁存和驱动 2 16位数据总线 采用2个数据收发器8286进行驱动 3 系统控制信号 由8086引脚直接提供 AD15 AD8 TOE 8286 D15 D8 BHE BHE 2 48086CPU的基本总线控制时序 指令周期执行一条指令所需的时间 一个指令周期由一个或几个总线周期组成 总线周期通过总线对存储器或I O接口进行一次访问所需要的时间 一般包括4个时钟周期 时钟周期一个时钟脉冲所持续的时间 4个时钟周期编号为T1 T2 T3和T4总线周期中的时钟周期也被称作 T状态 等待周期 是在一个总线周期的T3和T4之间 CPU根据Ready信号来确定是

温馨提示

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

评论

0/150

提交评论