第二章8086微处理器.ppt_第1页
第二章8086微处理器.ppt_第2页
第二章8086微处理器.ppt_第3页
第二章8086微处理器.ppt_第4页
第二章8086微处理器.ppt_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

第二章8086微处理器 8086微处理器采用HMOS工艺技术制造 外型封装为双列直插式 有40个引脚 主时钟频率有5MHz 8MHz和10MHz几种 内部采用16位数据通路和流水线结构 从而允许其在总线空闲时预取指令 使取指令与执行指令实现了并行操作 8086有20位地址线 可直接寻址的空间达1MB Intel公司为了与一整套外围设备兼容推出准16位CPU8088 内部结构和8086相同 但对外数据总线只有8位 2 18086 8088微处理器的内部结构 微处理器执行一条指令的过程 取指令取操作数执行指令传送结果在8086 8088内部分两大部件 执行部件 EU 负责指令的执行总线接口部件 BIU 负责与存储器 I O端口传送数据这两大部件构成两级流水线 使取指和执行可并行完成 并成为后续CPU的基本技术 8086 8088结构图 举例 8086的内部寄存器 含14个16位寄存器 按功能可分为三类 数据寄存器 AX BX CX DX 地址指针寄存器 SP BP 变址寄存器 SI DI 8个通用寄存器4个段寄存器2个控制寄存器 CS 代码段寄存器DS 数据段寄存器ES 附加段寄存器SS 堆栈段寄存器 IP 指令指针寄存器PSW 状态寄存器 数据寄存器用于存放各种数据 8086含4个16位数据寄存器 它们又可分为8个8位寄存器 即 AXAH ALBXBH BLCXCH CLDXDH DL AX Accumulator 累加器在乘法和除法指令中作累加器 所有I O指令都使用该寄存器与外设端口传送数据 BX Base 基址寄存器在计算内存地址时 常用来存放偏移地址 CX Count 计数器在循环和串操作指令中用作计数器 DX Data 数据寄存器在寄存器间接寻址的I O指令中存放端口地址 在做双字长乘除法运算时 与AX配合使用 指针寄存器可存放各种数据SP Stackpointer 堆栈指针寄存器用来确定堆栈在内存中的地址 BP Basepointer 基址指针寄存器在计算内存地址时 常用来存放偏移地址 SI SourceIndex 源变址寄存器可存放各种数据及偏移地址 在串操作中 用于指向源串首地址 DI DestinationIndex 目的变址寄存器可存放各种数据及偏移地址 在串操作中 用于指向目的串首地址 段寄存器用来识别当前可寻址的四个段CS CodeSegmentRegister 代码段寄存器指示当前执行的程序所在存储器中的区域 DS DataSegmentRegister 数据段寄存器指示当前程序所用的数据在存储器中的区域 SS StackSegmentRegister 堆栈段寄存器指示当前程序所用的堆栈在存储器中的区域 ES ExtraSegmentRegister 附加段寄存器指示当前程序所用的数据在存储器中的另外区域 在字符串操作中常用到 标志寄存器 FLAG 唯一能按位操作的寄存器只定义了其中9位 另外7位未定义 保留 6位状态标志 OF Overflow SF Sign ZF Zero AF Auxiliary PF Parity CF Carry 3位控制标志 DF Direction IF Interrupt Enable TF Trap 例1 例2 运算结果最高位为1 SF 1 第三位向第四位有进位 AF 1 根据双高判别法C14 C15 1 0 1 OF 1 最高位没有进位 CF 0 低8位中1的个数为偶数个 PF 1 运算结果本身 0 ZF 0 返回 运算结果最高位为0 SF 0 第三位向第四位没有借位 AF 0 最高位没有借位 CF 0 低8位中1的个数为奇数个 PF 0 运算结果本身 0 ZF 0 根据双高判别法C14 C15 0 0 0 OF 0 返回 IP指令指针寄存器用来存放下一条将要执行的指令在当前代码段中的偏移地址 在程序运行中 IP的内容能够自动修改 使之总是指向下一条要执行的指令地址 总线控制逻辑电路总线控制逻辑电路将8086微处理器的内部总线和外部总线相连 是8086微处理器与内存单元或I O端口进行数据交换的必经之路 地址加法器 左移4位 20位 物理地址 20位 0000 指令队列8088为4字节 8086为6字节 存取为FIFO 先进先出 指令队列至少保持有一条指令 且只要有一条指令 EU就开始执行 指令队列只要有空 BIU自动执行取指操作 直到填满为止 若EU要进行M IO存取数据 BIU在执行完现行取指操作周期后进行 当执行转移指令时 EU要求BIU从新的地址中重新取指 队列中原有指令被清除 新取得的第一条指令直接送EU执行 随后取得的指令填入队列 ALU ArithmeticandLogicUnit 算术逻辑单元进行所有的算术和逻辑运算 计算寻址单元的十六位偏移地址EA EffectAddress EU控制器作用是从BIU的指令队列中取指令 并对指令进行译码 根据指令要求向EU内部各部件发出相应的控制命令以完成每条指令所规定的功能 2 28086 8088微处理器的引脚信号与工作模式 一 工作模式最小模式 系统只有8086或8088一个微处理器 所有控制信号直接由CPU提供 因此系统中的总线控制电路被减到最小 一般CPU与小容量的存储器及少量的外设接口相连时 可连成最小模式 最大模式 在中等规模或大型8086 8088系统中使用最大模式 可含有一个或多个微处理器 主处理器8086 8088和协处理器8087 8089 组成中 大 规模系统 CPU并不直接向外界提供全部控制信号 而由S0S1S2通过Intel8288总线控制器提供 1 地址 数据信号 AD0 AD15地址 数据复用引脚 双向 三态 A16 S3 A19 S6地址 状态复用引脚 输出 三态 2 控制信号BHE S7数据总线高8位允许 状态 输出 三态 WR写信号 输出 低电平有效 三态 RD读信号 输出 低电平有效 三态 M IO存储器 IO控制信号 输出 三态 TEST测试信号 输入 低电平有效 READY准备就绪 输入 高电平有效 二 8086 8088的引脚信号 最小模式 MN MX 5V ALE地址锁存允许信号 输出 DT R数据发送 接收控制信号输出 输出 三态 DEN数据允许信号 输出 三态 低电平有效 HOLD总线保持请求信号 输入 高电平有效 HLDA总线保持响应信号 输出 三态 高电平有效 INTR可屏蔽中断请求信号 输入 高电平有效 INTA中断响应信号 输出 三态 低电平有效 NMI非屏蔽中断请求 输入 上升沿触发 RESET复位信号 输入 高电平有效 MN MX最小 最大模式控制输入端 1234567891011121314151617181920 4039383736353433323130292827262524232221 GNDA14A13A12A11A10A9A8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGND VCCA15A16 S3A17 S4A18 S5A19 S6SS0MN MXRDHOLD HLDA WR IO M DT R DEN ALE INTA TESTREADYRESET 8088 AD0 AD7 数据 低8位地址复用线SS0 状态信号IO M存储器 地址选择线 二 8086 8088的引脚信号 最大模式 MN MX 0 S2S1S0总线周期状态信号 输出 三态 RQ GT0RQ GT1总线请求 输入 总线请求允许信号 输出 双向 均为低电平有效 LOCK总线封锁信号 输出 三态 低电平有效 QS0QS1指令队列状态信号 输出 三 8086 8088的系统配置 1 最小模式配置系统中所有的控制信号由8086本身提供 它的基本配置为 除使用8086 8088作为微处理器外 还需配有时钟发生器8284A 三片地址锁存器 8282 8283 两片总线驱动器 8286 8287 才能构成系统总线 最小模式总线形成 Intel产品手册推荐电路 2 最大模式配置除最小模式配置外 需外加总线控制器8288对CPU发出的控制信号进行变换和组合 以获得对存储器 I O端口的读写信号和对锁存器8282 总线驱动器8286的控制信号 另外在多处理器中还需加入总线仲裁器8289解决主处理器和协处理器之间协调工作和对总线的共享控制等问题 RESETS2S1S0 READYCLK RDY1RDY2 MN MX 控制总线 地址总线A19 A0 数据总线D15 D0 A19A16AD15AD0 8086CPU STB8282 OE TOE 8286 8284A 系统总线 RESEFIF CPCLK BHE INTAMRDCMWTCIOWCIORCMCE PDEN CLKAENIOBCENDENDT RALE TESTNMIINTR 8288 5V 3 最小模式配置与最大模式配置的比较 1 不同之处最小模式下系统控制信号直接由8086CPU提供 最大模式下因系统复杂 芯片数量较多 为提高驱动能力和改善总线控制能力 系统的控制信号由总线控制器8288提供 最小模式下8086的31 30脚提供一组总线请求 响应信号 HOLD HLDA 而最大模式下8086的31 30脚将提供两组总线请求 响应信号 RQ GT0 RQ GT1 2 相同之处 8086的低位地址线与数据线复用 为保证地址信号维持足够的时间 需使用ALE信号将低位地址线锁存 通过锁存器8282 以形成真正的系统地址总线 8086的数据线通过数据收发器8286后形成系统数据总线 以增大驱动能力 数据收发器主要由DEN和DT R两个信号控制 存储器中的数据存放规则 8086有20条地址线 寻址能力为1MB存储单元中可以存放的内容包括 数据 地址指针 偏移地址和段地址 程序代码 字节的存储 存储在1个存储单元中 字的存储 占用2个连续的字节单元 低字节在较低地址单元中 高字节在较高地址单元中 字的地址为低字节地址 较低的地址 字地址为偶数 规则存放的字 简称规则字 字地址为奇数 非规则存放的字 简称非规则字 字符串的存储 按字符顺序依次连续存放 整个串的地址为存放第一个字符的最低地址 地址指针 双字数据 的存储 地址偏移量存放在低地址字单元 段基址在较高地址单元 2 38086微处理器的存储组织 信息存放方式示意图 地址内容19H0CH1AH1FH1BH01H1CH23H1DH74H1EHABH1FH41H20H42H21H43H22H44H23H45H 存储空间与存储结构 存储体与总线的连接 存储器分段 分段原因 8086有20根地址线 但其内部可以表示的地址最多只能是16位 为了能寻址1MB空间 8086对存储器进行逻辑分段 段内地址16位 每个段最大为64KB 最小为16B 此时最多64K个段 IBMPC机对段的起始地址有限制 即段不能从任意地址开始 每个段起始地址 20位 的最低4位必须为0 存储器的逻辑地址和物理地址 逻辑地址来源 I O端口组织 I O端口地址 8086系统和外部设备之间进行数据传输时 各类信息在接口中将进入不同的寄存器 一般称这些寄存器为I O端口 每个端口分配一个地址号 称为端口地址 CPU通过指令对它们进行访问 I O端口分 数据端口 状态端口和命令端口 接口电路占用的I O端口有两类编址形式I O端口独立编址I O地址空间独立于存储地址空间如8086 8088I O端口与存储器统一编址它们共享一个地址空间如M6800 优点 I O端口的地址空间独立控制和地址译码电路相对简单专门的I O指令使程序清晰易读缺点 I O指令没有存储器指令丰富 1 I O端口独立编址 8086CPU最大可用地址总线的低16位作为对8位I O端口的寻址线 所以可访问的8位I O端口有64K个 优点 不需要专门的I O指令I O数据存取与存储器数据存取一样灵活缺点 I O端口要占去部分存储器地址空间程序不易阅读 不易分清访存和访问外设 内存部分 I O部分 存储器空间 00000H FFFFFH 2 I O端口与存储器统一编址 2 48086 8088微处理器的总线时序 时序图 描述某一操作过程中 芯片 总线上有关引脚信号随时间发生变化的关系图 总线操作 指CPU通过总线对外的各种操作 总线周期 执行一个总线操作所需要的时间 一个基本的总线周期通常包含4个T状态4个时钟周期编号为T1 T2 T3和T4总线周期中的时钟周期也被称作 T状态 时钟周期的时间长度就是时钟频率的倒数要延长总线周期时需要插入等待状态Tw CLK 外RESET 内RESET 三态门输出信号 系统的复位和启动操作 系统复位之后再重新启动时 RESET由高变低 经过7个时钟周期之后被启动而恢复工作 便从内存的FFFF0H处开始执行指令 T4 T3 T2 T1 ALE CLK A19 S6 A16 S3 AD15 AD0 A15 A0 输出数据 A19 A16 S6 S3 READY 高电平 IO M WR 存储器写总线周期 DEN DT R T4 T3 T2 T1 ALE CLK A1

温馨提示

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

评论

0/150

提交评论