1 / 50

第二章 8086系统结构

第二章 8086系统结构. 第一节 8086 CPU 的结构 第二节 8086 CPU 引脚功能 第三节 8086/8088存储器组织 第四节 8086系统配置. 第一节 8086 CPU 的结构. 执行部件( EU) 和总线接口部件( BIU) 寄存器结构. 执行部件( EU) 和总线接口部件( BIU). 8086 CPU 的内部结构由两部分组成: 总线接口部件 BIU、 执行部件( EU), 采 用流水线工作方式 总线接口部件 BIU: 负责取指令;存、取操作数 执行部件( EU): 负责分析指令、执行指令. EU. BIU. 段寄存器 指令指针.

Download Presentation

第二章 8086系统结构

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第二章 8086系统结构 • 第一节 8086CPU的结构 • 第二节 8086CPU引脚功能 • 第三节 8086/8088存储器组织 • 第四节 8086系统配置

  2. 第一节 8086CPU的结构 • 执行部件(EU)和总线接口部件(BIU) • 寄存器结构

  3. 执行部件(EU)和总线接口部件(BIU) 8086CPU的内部结构由两部分组成: 总线接口部件BIU、执行部件(EU),采 用流水线工作方式 总线接口部件BIU:负责取指令;存、取操作数 执行部件(EU):负责分析指令、执行指令

  4. EU BIU 段寄存器 指令指针 通用寄存器 地址生成和总线控制 操作数 指令队列 ALU 标志

  5. BIU 总线接口部件 组成:段寄存器 16位 CS SS DS ES 指令指针(IP)存放指令的偏移地址 地址形成逻辑完成逻辑地址到物理地址转换 指令队列 采用FIFO结构,预取指令 总线控制逻辑 发出总线控制信号

  6. 任务: 把段寄存器和IP相加形成20BIT有效地址 16*CS+IP 取指令 8086 如果队列中有2字节以上空格,EU不要求总线,则BIU预取指令 8088 如果队列中有1字节以上空格,EU不要求总线,则BIU预取指令 EU要求总线周期,有EU提供信号和地址来源,BIU进入总线,存取数据

  7. EU执行部件 组成:ALU算术逻辑运算单元 PSW标志寄存器 存放运算结果特征 寄存器组存放中间结果 EU控制器取指令控制、时序控制 任务:从队列中取指令控制 访问M和I/O 由EU通知BIU提供信号和地址来源 内部:根据指令要求对寄存器和标志管理

  8. 寄存器结构 • 通用寄存器 • 指针和变址寄存器 • 段寄存器 • 指令指针 • 标志寄存器

  9. 通用寄存器组 EAX AX AH AL EBX BX BH BL ECX CX CH CL EDX DX DH DL • 可8位、16位使用 用于存放数据或地址 • 专用功能 BX——基址寄存器 AX——累加器 CX——计数器 AX,DX——用于乘、除

  10. 指针和变址寄存器 ESP EBP ESI EDI SP 堆栈指针 BP 基址寄存器 SI 源变址寄存器 DI 目的变址寄存器 用于堆栈操作 用于变址操作 这四个寄存器只能按16位操作 用于堆栈和变址操作计算操作数的有效地址

  11. 段寄存器 存放每一段的起始地址 用于存放程序 CS*16+IP——取指 用于存放堆栈 SS*16+SP——堆栈 用于存放数据 DS*16+SP,BP,SI 用于存放数据 ES*16+BP,DI CS 代码段寄存器 SS 堆栈段寄存器 DS 数据段寄存器 ES 附加段寄存器

  12. 指令指针IP • 每执行一条指令,IP自动加1 • IP指向偏移地址,有效地址16*CS+IP • 程序员不能直接修改IP,(通过转移、调用、中断、中断返回)

  13. 标志寄存器PSW 标志寄存器用来存放运算结果的特征 • 6位状态位 • 3位控制位

  14. 若最高位产生进位或借位,则CF置1 若最高位无进位或借位,则CF清0 状态位: CF进位标志: 若运算结果中“1”的个数为偶数个,PF置1 若运算结果中“1”的个数为奇数个,PF清0 PF奇偶标志: 第3位向第4位有进位或借位 AF置1 第3位向第4位无进位或借位 AF清0 AF辅助进位标志: ZF 零标志: 若运算结果为0,则ZF为1,否则ZF为0 若运算结果为正,SF为0 若运算结果为负,SF为1 SF符号标志: OF溢出标志:若运算结果产生溢出OF为1,否则OF为0

  15. DF=0,地址指针自动增加(由低到高) DF=1,地址指针自动减少(由高到低) 控制位: DF方向标志 TF 陷阱标志 若TF=1,CPU出单步工作方式,每执行一条指令,产生一次单步中断 IF中断标志 当IF=1时,允许中断, 当IF=0时,禁止中断

  16. 第二节 8086CPU引脚功能 8086芯片共计40个引脚,主要分成三类:地址线 数据线和控制线。外加电源。CPU芯片的引脚完 全反映了该芯片的内部功能以及和外界部件的交 互方式。学习这部分内容着重考察CPU内部的功 能模块以及输入输出需求,掌握引脚的功能定义。 学习要求: 信号名称 信号含义 有效电平 输入/输出 状态(两态/三态) 信号来源

  17. 一、8086 CPU引脚及功能 • 地址总线和数据总线 *AD15~AD0: 地址/数据总线 双向 三态 注:8086/8088地址线,数据线分时使用 总线的第一周期作地址线(16bit宽A15~A0) 其余周期 作数据线 (8086 16bit/8088 8bit) *A19~A16/S6~S3:地址/状态 三态 输出 注:这四条线分时使用复用 总线的第一周期作地址线A19~A16 (与A15~A0构成20bit) 其余周期 作状态线 S6~S3 注:8086访问存储器,使用20条地址线 8086访问I/O , 使用16条地址线

  18. S6~S3:状态线 S6:为低电平 S5指示中断允许IF状态 S4 S3指示哪一个段寄存器 S4 S3 段寄存器 0 0 ES 0 1 SS 1 0 CS或非存储器操作 1 1 DS

  19. 控制总线 控制总线是传送控制信号的一组信号线,有 输入,输出。

  20. *MN/MX线:最小/最大方式控制线 若MN/MX=1,8086处于最小方式 若MN/MX=0,8086处于最大方式 8086具有两种系统配置方式:最小模式和最大模式,分 别对应单机系统和多机系统。 最小模式:由8086提供全部控制信号 最大模式:由专用总线控制器8288提供总线控制信号 在不同模式 8086的有些引脚不完全相同

  21. 受MN/MX影响的控制信号 脚 最大 最小 脚 最大 最小 28 S2 IO/M 27 S1 DT/R 26 S0 DEN 30 RQ/GT0 HOLD 24 QS1 INTA 31 RQ/GT1 HLDA 25 QS0 ALE 29 LOCK WR

  22. *S2~S0:总线周期状态信号 S2 S1 S0 操作类型 0 0 0 中断响应 0 0 1 读I/O端口 0 1 0 写I/O端口 0 1 1 暂停 1 0 0 取指 1 0 1 读存储器 1 1 0 写存储器 1 1 1 无效

  23. 最小方式: *IO/M 存储器/输入输出请求信号 *DT/R 数据发送/接受端 *DEN 数据允许端

  24. *RQ/GT0 *RQ/GT1 在最大方式下:这两条信号为总线的请求和回答 信号 、两信号功能相同 、RQ/GT0 优先、 双向 /RQ /GT 释放 在T4或下一个T1输出/GT

  25. 在最小方式 *HOLD 总线请求信号、 输入 、高电平有效 *HLDA 总线响应信号、输出、高电平有效

  26. 最大方式: QS1 QS0 为指令队列状态信号、输出、高电平 有效 QS1 QS0 队列状态 0 0 无操作 0 1 取指令队列第一字节 1 0 队列空 1 1 取指令队列后续字节

  27. 最小方式: INTA 中断响应信号、输出、低电平有效 ALE 地址锁存允许信号、输出、高电平 有效

  28. LOCK 最大方式有效、总线优先封锁信号 三态、输出、低电平有效 WR 最小方式有效、写信号、三态、输 出、低电平有效

  29. 不受MN/MX影响的控制信号 *RD读信号 三态 输出 、低电平有效 *READY 准备就绪信号 、输出、 高电平有效 *INTR 中断请求信号、输入、高电平有效 *NMI 非屏蔽中断请求信号、 输入 、正沿触发 *TEST 测试信号 、输入 、低电平有效 *RESET 复位信号、 输入、 高电平有效

  30. 复位后,8086CPU的状态: 寄存器 状态 PSW 0000H CS FFFFH DS 0000H SS 0000H ES 0000H IP 0000H 指令队列 清空

  31. 其它 CLK:时钟信号,由8284时钟产生 VCC:电源 5V(5%) VSS: 地

  32. 二、8086与8088引脚不同 • 数据线(8086:AD15~AD0,8088:AD7~AD0) • 存储器/输入输出控制线不同(8086:M/IO,8088 M/IO) • BHE/S7不同( BHE是总线高允许)

  33. 第三节 8086/8088存储器组织 • 一、存储器分段管理 • 二、物理地址的计算方法 • 三、逻辑地址来源 • 四、8086/8088存储器分体结构 • 五、堆栈的概念

  34. 一、存储器分段管理 • 20根地址线可寻址1MB地址空间,而实际寄存器 是16位,只能寻址64KB空间。于是采用分段管理 方式,每个段不超过64KB。段之间可连续,可分 离,可重叠。 • 段的首地址有限制,必须能被16整除。即低四位全为0。 1 Paragraph = 16 Bytes 每个存储单元由段地址和偏移地址组成

  35. 二、物理地址的计算方法 • CPU内部寄存器是16位,给出的地址也是16位,不 能直接用于20位地址空间的寻址,因此必须寻求一种 将16位逻辑地址转换成20位物理地址的方法。 • 逻辑地址:段基址和偏移地址组成,无符号16位二进 制数,是程序设计是采用的地址。 • 物理地址:存储器绝对地址。 物理地址=16*段地址+偏移地址

  36. 三、逻辑地址来源 常用搭配关系: (CS, IP), (DS, SI/DI/BX), (SS, SP/BP) 等等。

  37. 四、8086/8088存储器分体结构 • 8086 A1~A19 A0 BHE SEL A0~A18 SEL A0~A18 奇地址512K*8 偶地址512K*8 D7~D0 D7~D0 D7~D0 D15~D8

  38. 8088 A0~A19 A19~A0 1M*8 D7~D0 D7~D0

  39. 五、堆栈的概念 • 专用存储区域,暂时保存数据。“后进先出”(LIFO) • SS—段基址,SP—栈顶单元地址 • 堆栈生长方向:由高地址区向低地址区增长。 • 用途:中断,子程序调用,暂存或交换数据。

  40. 例如:SS=C000H,SP=1000H,则 C0000H SP C1000H 〈64k 栈底

  41. 第四节 8086系统配置 8086具有两种系统配置方式:最小模式和最大模 式,分别对应单机系统和多机系统。 注意学习一般的计算机系统的基本配置方式,配 置的策略,建立微型机系统的基本配置模型。

  42. 一、基本总线接口部件 • 地址锁存器8282/8283 • 数据总线缓冲器8286/8287 • 时钟发生器8284 • 总线控制器8288 • 总线裁决器8289

  43. 1. 地址锁存器8282/8283 • 8282(不反相)和8283(反相)具有三态输出的锁存缓冲器,用于锁存、缓冲、多路输出 • 8282的逻辑图 • 8086系统中,8282(8283)用于地址锁存器 • 连接: ALE——STB OE——接地 DI——AD DO——A(地址)

  44. DI0 DO0 D Q CLK DO1 DI1 DO2 DI2 DO7 DI7 OE STB

  45. 2、数据总线缓冲器8286/8287 • 8286(不反相)8287(反相)具有8路双向缓冲电路,可实现8位数据的双向传送,8286/8287具有很强总线驱动能力,可作为总线驱动器 • 8286逻辑图 • 8086系统中,8286(8287)为总线驱动器 • 连接:T——DT/R OE——DEN A——AD B——D(数据)

  46. A0 B0 B1 A1 A2 B2 B7 A7 或 或 OE T

  47. 3、时钟发生器8284 • 提供整个CPU芯片的时钟控制信号,是实现精确控制的必要条件。 • 三大功能模块: • 时钟信号发生器 OSC:14.318MHz CLK: 4.77MHz, 占空比1/3,供CPU PCLK: 2.385MHz,占空比1/2,供外设 • 复位生成电路 • 就绪控制电路

  48. 4、总线控制器8288 由于8086系统配置为多处理器系统,有多个具有自主性 的总线控制设备,原先的一些引脚用来传送其他控制信 号,因此需要增加独立的总线控制器来输出总线控制命 令。 引脚功能: • 总线状态信号 • 控制输入信号 • 总线命令信号 • 总线控制信号 两种工作方式: I/O总线方式:局部总线方式 系统总线方式

  49. 5、总线裁决器8289 当系统中存在多个对总线具有主控权的设备时,每个主 控设备需要增设8289来对总线进行合理分配,将总线使 用权赋给优先权最高的设备。 引脚功能: • 状态信号:8086CPU输出 • 控制信号 • 多总线命令信号 • 系统信号

  50. 二、最大方式和最小方式基本配置 • 最小配置:1片8284、3片8282、2片8286 • 最大配置:除最小配置,外加8288、8289

More Related