第二章 微处理器及系统结构_第1页
第二章 微处理器及系统结构_第2页
第二章 微处理器及系统结构_第3页
第二章 微处理器及系统结构_第4页
第二章 微处理器及系统结构_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

第二章微处理器及系统结构 张培 第2章微处理器及系统结构 2 1Intel8086 8088CPU主要特性及内部结构 2 28086 8088CPU工作模式和引脚功能 2 38086 8088的存储器组织 目录 内容简介 8086 8088微处理器系统特性及结构 内部寄存器的结构特点 8086 8088微机系统的存储器组织 2 1Intel8086 8088CPU主要特性及内部结构 第2章微处理器及系统结构 CPU是微机的核心部件 它的功能和特点基本上决定了微机的性能 Intel系列CPU一直占着主导地位 Intel8086 8088 Z8000和MC68000为代表的16位微处理器是第3代产品 其性能已达到中 高档小型计算机的水平 8086 8088后续的80286 80386 80486以及Pentium系里CPU结构与功能已经发生很大变化 但从基本概念与结构以及指令格式上来讲 仍然是经典8086 8088CPU的延续与提升 其它系列流行的CPU 如AMD公司的6X86MX MII等 也与8086CPU兼容 2 1 18086 8088CPU主要特性Intel8086是16位微处理器 采用HMOS工艺40条引脚封装 使用5V电源 时钟频率5MHz 主要特性如下 1 8086CPU数据总线为16位 8088CPU数据总线为8位 2 地址总线都是20位 低16位与数据总线分时复用 可直接寻址1MB的存储空间 3 有16位的端口地址 可以寻址64KB的I O端口 4 有99条基本指令 指令功能强大 5 有8种基本寻址方式 6 可处理内部和外部中断 外部中断源多达256个 7 兼容性好 与80X86 8085在源程序一级兼容 8 8086可与协处理器 8087 8089 组成多处理器系统 第2章微处理器及系统结构 2 1 28086 8088CPU内部结构从功能上讲 可分为两个独立的部分 并行重叠操作 第2章微处理器及系统结构 总线接口单元 BusInterfaceUnit BIU 负责完成CPU与存储器或I O设备之间的数据传送 即BIU从内存预取指令送到指令队列缓冲器 CPU执行指令时 BIU配合EU对指令的内存单元或I O端口存取数据 执行单元 ExecutionUnit EU 负责执行指令 即执行的指令从BIU的指令队列缓冲器中取得 指令执行的结果或所需要的数据 由EU向BIU发出请求 再由BIU对存储器或I O端口进行存取 第2章微处理器及系统结构 总线接口单元组成4个16位段地址寄存器代码段寄存器 CodeSegment 取得CPU所执行的指令 数据段寄存器 DataSegment 存放程序所使用的数据 堆栈段寄存器 StackSegment 堆栈操作的执行地址在此段中 附加段寄存器 ExtraSegment 也用来存放数据 16位指令指针寄存器IP InstructionPointer 6字节指令队列缓存器20位地址加法器总线控制器 第2章微处理器及系统结构 1 指令队列缓冲器用于存放预取的指令 8086指令队列为6个字节 而8088指令队列为4个字节 在执行指令的同时 从内存中取下面一条或几条指令 取来的指令依次放在指令队列中 采用 先进先出 的原则 先进先出 原则 按顺序存放 并按顺序取到EU中去执行 取址时 当指令队列缓冲期中存满1条指令 EU开始执行 指令队列缓冲期中只要空出2个 8088空出1个 指令字节时 BIU便自动执行取址操作 直到填满时为止 EU执行指令时 如需对M或I O设备存储数据时 BIU将在执行完现行取址的存储器周期后的下一个存储器周期 对内存单元或I O设备进行存取操作 交换的数据经BIU由EU进行处理 当EU执行完转移 调用和返回指令时 要清除指令队列缓冲器 并要求BIU从新的地址重新执行 第2章微处理器及系统结构 2 地址加法器和段寄存器8086有20根地址线 内部寄存器只有16位 段加偏移 技术 段寄存器存放确定各段起始地址的16位段基址信息 由IP提供或由EU按寻址方式计算出寻址单元的16位偏移地址 也称为逻辑地址或简称偏移量 将偏移地址与左移4位后的段寄存器内容同时送到地址加法器 相加后形成20位实际地址 第2章微处理器及系统结构 3 16位指令指针 InstuctionPointer IP IP中含有BIU要取的下一条指令 字节 的偏移地址 IP在程序运行中自动加1 指向要执行的下一条指令 字节 有些指令能使IP值改变或使IP值压进堆栈 或由堆栈弹出恢复原址 第2章微处理器及系统结构 执行单元组成 16位算术逻辑单元 ALU 算术 逻辑运算 计算16位偏移量16位标志寄存器FCPU的运算状态特征或存放控制标志通用寄存器组4个16位数据寄存器 4个16位指针与变址寄存器EU控制电路控制 定时与状态逻辑电路 第2章微处理器及系统结构 从CPU的内部结构来看 8088CPU与8086CPU很相似 区别仅表现在以下两个方面 1 8088BIU中指令队列长度只有4B 8086BIU指令队列长度有6B 只要队列中出现一个空闲字节 BIU就会自动地访问存储器 取指令来填满指令队列 2 8088BIU通过总线控制电路与外部交换数据的总线宽度是8位 总线控制电路与专用寄存器组之间的数据总线宽度也是8位 而EU内部总线仍是16位 所以把8088称为准16位微处理器 第2章微处理器及系统结构 2 1 38086CPU的寄存器结构8086CPU中有13个16位的寄存器和1个只用了9位的16位标志寄存器 8086 8088CPU的内部寄存器如图2 2所示 第2章微处理器及系统结构 1 通用寄存器组 1 数据寄存器4个16位 AX BX CX DX8个8位 AH AL BH BL CH CL DH DL多数情况下 用于存放算术 逻辑运算操作数 中间结果和地址 有些指令中 有特定的用途 第2章微处理器及系统结构 1 通用寄存器组 2 指针和变址寄存器 16位 存放偏移地址 指针寄存器组 P组 堆栈指针寄存器 StackPointer SP 存放的是当前堆栈中栈顶的偏移地址 基址指针寄存器 BasePointer BP 存放的是堆栈中某一存储单元的偏移地址 BP和SP通常与SS连用为访问当前堆栈段提供方便 变址寄存器组 I组 源变址寄存器 SourceIndex SI 在串操作指令中 存放源操作数的偏移地址 目的变址寄存器 DestinationIndex DI 在串操作指令中 存放目的操作数的偏移地址 SI和DI通常与DS联用 为访问当前数据段提供段内偏移地址 第2章微处理器及系统结构 2 段寄存器段寄存器是为实现 段加偏移 寻址基址而设置的 4个16位段寄存器 8086 8088指令可直接访问 代码段寄存器 CodeSegment CS 用于存放当前代码段的段地址 数据段寄存器 DataSegment DS 用于存放当前数据段的段地址 附加段寄存器 ExtraSegment ES 用于存放当前附加段的段地址 堆栈段寄存器 StackSegment SS 用于存放当前堆栈段的段地址 用于存放处理后的数据 这些段寄存器彼此不能互换 每个段寄存器只能寻址64KB 第2章微处理器及系统结构 3 标志寄存器FLAGS8086 8088CPU中设置了一个16位标志寄存器FLAGS 用来存放运算结果的特征和控制标志 其格式如下 标志寄存器FLAGS中存放的9个标志位可分成两类 6个状态标志位 CF PF AF ZF SF OF3个控制标志位 IF DF TF 第2章微处理器及系统结构 3 标志寄存器FLAGS 各标志位的定义说明如下 1 CF 进位标志位 CF 1 表示本次运算中最高位 第7位或第15位 有进位 加法运算时 或有借位 减法运算时 注 CF 1表示二个无符号数加法或减法运算的结果超出了该字长能够表示的数据范围 例如 执行8位数据运算后 CF 1表示加法结果超过了255 或者是减法得到的差小于零 2 PF 奇偶标志位 PF 1 表示本次运算结果的低八位中有偶数个 1 PF 0 表示有奇数个 1 3 AF 辅助进位标志位 AF 1 表示8位运算结果 限使用AL寄存器 中低4位向高4位有进位 加法运算时 或有借位 减法运算时 这个标志位只在BCD数运算中起作用 4 ZF 零标志位 ZF 1 表示运算结果为0 各位全为0 否则ZF 0 5 SF 符号标志位 SF 1 表示运算结果的最高位 第7位或第15位 为 1 否则SF 0 第2章微处理器及系统结构 6 OF 溢出标志位 OF 1 表示算术运算结果产生溢出 否则OF 0 溢出标志位是根据操作数的符号及其变化情况设置的 例如 加法运算时 两个操作数符号相同 而结果的符号与之相反 则OF 1 否则OF 0 减法运算时 两个异号操作数相减 若差的符号与理论上结果的符号相反 则OF 1 否则OF 0 注 OF 1表示二个用补码表示的有符号数的加法或减法结果超出了该字长所能表示的范围 例如 字长为8位时 OF 1表示运算结果大于127或小于 128 此时不能得到正确的运算结果 7 IF 中断允许标志位 IF 1 表示允许CPU响应可屏蔽中断 IF标志可通过STI指令置位 也可通过CLI指令置位 8 DF 方向标志位 在串操作指令中 若DF 0 表示串操作指令执行后地址指针自动增量 串操作由低地址向高地址进行 DF 1 表示地址指针自动减量 即串操作由高地址向低地址进行 DF标志位可通过STD指令置位 也可通过CLD指令复位 9 TF 单步标志位 TF 1 表示控制CPU进入单步工作方式 在这种工作方式下 CPU每执行完一条指令就会自动产生一次内部中断 这在程序调试过程中很有用 第2章微处理器及系统结构 例1若AL 3BH AH 7DH 试指出AL中的内容和AH中的内容相加 相减后 标志CF AF PF SF OF和ZF的状态 解 1 AL AH00111011AL 01111101AH10111000由运算结果可知 CF 0 无进位 AF 1 有辅助进位 PF 1 有偶数个1 SF D7 1 运算结果符号位为1 OF 1 同号相加 结果的符号与两操作数符号相反 有溢出 ZF 0 运算结果不为0 2 AL AH00111011AL 01111101AH10111110由运算结果可知 CF 1 有借位 AF 1 有辅助借位 PF 1 有偶数个1 SF 1 符号位为1 OF 0 同号相减 无溢出 ZF 0 运算结果不为0 第2章微处理器及系统结构 4 指令指针寄存器IP8086 8088CPU中有一个16位指令指针寄存器IP 用来存放将要执行的下一条指令在代码段中的偏移地址 在程序运行过程中 BIU自动修改IP中的内容 使它始终指向将要执行的下一条指令 程序不能直接访问IP 但是可通过某些指令修改IP的内容 例如 执行转移指令时 会将转移的目标地址送入IP中 以实现程序的转移 第2章微处理器及系统结构 总线周期的概念 时序 三种总线上出现的信息不但有严格的顺序 而且有准确的时间 称为定时或时序 时钟 时钟脉冲发生器产生具有一定频率和占空比的脉冲信号 称之为机器的主脉冲或时钟 主频 时钟的频率 是机器的一个重要指标 时钟周期 时钟周期就是系统主时钟一个周期信号所持续的时间 大小等于它频率的倒数 它是CPU的基本时间计量单位 指令周期 CPU的一切操作都是在系统主时钟CLK的控制下按节拍有序地进行的 CPU执行一条指令的时间 包括取指令和执行该指令所需的全部时间 称为指令周期 总线周期 在一个指令周期内 常常需要对总线上的存储器或I O端口进行一次或多次读写操作 CPU通过外部总线对存储器或I O端口进行一次读写操作的过程称为总线周期 显然 一个指令周期应由若干个总线周期组成 而一个总线周期由若干个时钟周期 T 组成 第2章微处理器及系统结构 2 28086 8088CPU工作模式和引脚功能 2 2 18086 8088CPU引脚功能 1 8086 8088CPU的主要引脚及功能8086 8088CPU是十六位的微处理器 它向外的信号至少应包含16条数据线 20条地址线 再加上其他一些必要的控制信号 为了减少芯片引脚数量 对部分引脚采用了分时复用的方式 构成40条引脚的双列直插式封装 8086CPU封装外形与内部各功能部件之间的相互连接如图2 3a 所示 图2 38086CPU封装外形与实物图a 封装外形 第2章微处理器及系统结构 1 AD15 AD0 分时复用地址数据线 在T1期间做地址线A15 A0 单向 三态输出 在T2 T4期间做数据线D15 D0 双向 三态输入 输出 第2章微处理器及系统结构 2 A19 S6 A16 S3 分时复用的地址 状态线 输出 三态 在T1期间做地址线A16 A19 输出地址的最高四位访问存储器时 A19 A16与AD15 AD0一起构成20位的物理地址 访问I O端口时 不使用这4条引线 A19 A16 0 在T2 T4期间做状态总线S6 S3 输出状态信息S6恒保持为 0 以表示CPU当前连接在总线上 S5用来表示中断标志状态线 当IF 1时 S5置 1 S4和S3表示当前使用的段寄存器 第2章微处理器及系统结构 3 电源线和地线1个电源线Vcc 输入电压 5V2个地线GND 接地 0V 第2章微处理器及系统结构 数据 地址 状态 地址分时复用线的特点减少了8086CPU的引脚线需解决数据 地址线的分离控制线的特点功能各异 不同控制线具有不同的作用方向确定 仅为单向输入或输出电平触发 不同控制线有不同的电平触发方式 高电平有效还是低电平有效 电源线Vcc 5VGND 接地 第2章微处理器及系统结构 3 控制总线 8根 BHE S7 高8位数据总线允许 状态分时复用 三态 输出 BHE S7 0 时 用来表示当前高8位数据线上的数据有效 8086CPU有16根数据线 低8位数据线总是和偶地址的存储器 I O接口相连接 这些存储器I O接口称为偶体 高8位的数据线则与奇地址的存储器 I O接口相连 这些存储器I O接口称为奇体 BHE用作奇体的选体信号 利用地址线的A0作为偶体的选体信号 即A0 0则选中偶体 BHE与A0配合表示当前总线使用情况 见表2 2 非数据传送期间 S7状态信息 在CPU处于保持响应期间被设置为高阻抗状态 第2章微处理器及系统结构 3 控制总线 8根 RD 读信号 三态 输出当RD 0 时 表示当前CPU正在读存储器或I O端口 对存储器还是I O端口读取数据 取决于M IO 第2章微处理器及系统结构 3 控制总线 8根 READY 准备就绪信号 输入 高有效 由所寻址的存储器或I O端口发出 当READY 1 时 表示CPU访问的存储器或I O端口已准备好传送数据 当READY无效时 要求插入一个或多个等待周期TW 直到READY信号有效为止 第2章微处理器及系统结构 3 控制总线 8根 TEST 测试信号 输入 低有效 CPU执行WAIT指令时 进入空转等待状态 每隔5个时钟周期对TEST进行一次测试 若TEST 1 则CPU将停止取下条指令 处于踏步等待状态 重复执行WAIT指令 直到TEST 0时 CPU才继续执行被暂停的指令 第2章微处理器及系统结构 3 控制总线 8根 INTR 可屏蔽中断请求信号

温馨提示

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

评论

0/150

提交评论