第2章 8086、8088微处理器的体系结构_第1页
第2章 8086、8088微处理器的体系结构_第2页
第2章 8086、8088微处理器的体系结构_第3页
第2章 8086、8088微处理器的体系结构_第4页
第2章 8086、8088微处理器的体系结构_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

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

文档简介

主讲:禹定臣微机原理及接口技术信息工程学院本章基本内容与教学要求1、8086微处理器基本结构2、8086芯片的主要引脚功能3、8086总线周期的基本概念4、8086微机系统的存储器组织5、8086/8088微机系统的I/O组织第2章8086/8088微处理器的体系结构微机原理与接口技术§2.18086/8088微处理器2.1.1 8086/8088的内部结构

图2.18086/8088CPU内部结构示意图从功能结构看,8086/8088CPU分两部分:

执行部件EU(ExecutionUnit)

总线接口部件BIU(BusInterfaceUnit)§2.18086/8088微处理器1.执行部件EU负责指令的执行:译码指令并利用内部寄存器和ALU来处理数据。§2.18086/8088微处理器组成及功能四个数据寄存器:AX,BX,CX,DX四个地址寄存器:BP,SP,SI,DI标志寄存器FR(PSW)算术逻辑单元ALU

存放数据或地址

存放不同寻址方式下的地址偏移量,也可作16位通用寄存器

存放ALU运算结果特征内部控制逻辑电路(EU)从指令队列取指令、译码、产生控制信号

算术逻辑运算§2.18086/8088微处理器2.总线接口部件BIU负责微处理器内部与外部(存储器和I/O接口)的信息传输:取指令、指令排队、传送数据(读/写操作数)、形成物理地址和总线控制。§2.18086/8088微处理器组成及功能四个段寄存器:CS,DS,SS,ES地址加法器指令队列总线控制逻辑

存放段地址,与偏移地址配合,寻址1MB空间

将16位逻辑地址变换成20位物理地址

预放指令代码:6字节/8086;4字节/8088

发出总线控制信号,控制CPU与外部数据的交换指令指针寄存器IP

存放下一条要取出指令的地址§2.18086/8088微处理器流水线操作BIU取指1取指2取指3取指4取数据取指5…EU等待执行1执行2执行3执行4…指令队列缓冲器存放预取指令,使CPU取指令与执行指令能并行工作,即在一条指令的执行过程中,可以取出下一条或多条指令,在指令队列中排队,减少微处理器的等待时间,提高运行效率。这种结构称为流水线结构。图2.2BIU与EU并行操作示意§2.18086/8088微处理器2.1.2 8086/8088的寄存器结构

15870AHBHCHDHALBLCLDLSPBPSIDIIPFRCSDSSSESAXBXCXDX代码段寄存器数据段寄存器堆栈段寄存器附加段寄存器段寄存器指令指针状态标志控制寄存器累加器基数寄存器计数寄存器数据寄存器堆栈指针基数指针源变址目的变址数据寄存器地址寄存器通用寄存器§2.18086/8088微处理器数据寄存器:AX,BX,CX,DX。四个数据寄存器AX,BX,CX,DX可以作为16位寄存器使用,也可以分别作为两个8位寄存器使用。内部设置较多通用数据寄存器的好处:①提高数据的处理速度;②减小指令存放的内存空间。BHAHCHDHALBLCLDLAXBXCXDX

隐含用途:AX—累加器;

BX—基址/变址;CX—

计数器;DX—字乘/除和

I/O的间址。1.通用寄存器组§2.18086/8088微处理器地址寄存器:BP,SP,SI,DI。BP、SP、SI和DI专门用于存放特定段的偏移地址,除此以外,还可作为通用数据寄存器用。SP堆栈指针寄存器:栈顶地址。

BP基数指针寄存器:间接寻址中的基址,也可用作堆栈的一个附加指针,访问堆栈中任意单元的数据。

SI源变址寄存器:间接寻址/变址;串操作中源地址。

DI目的变址寄存器:间接寻址/变址;串操作中目的地址。§2.18086/8088微处理器标志寄存器FR(PSW)FR共有16位,其中7位未用,各位的定义如下:1501413121110987654321DFIFTFSFZFAFPFCFOF两类标志状态标志:CF/PF/AF/ZF/SF/OF控制标志:DF/IF/TF状态标志反映EU执行算术/逻辑运算后结果的状态;控制标志控制CPU操作。2.控制寄存器§2.18086/8088微处理器存放下一条要取出的指令的偏移地址。16位指令指针寄存器IP

中断或调用子程序时,IP内容(断点地址)自动入栈保护;返回时,断点地址弹出到IP,继续主程序运行。

跳转指令时,新的跳转目标地址送入IP,原指令队列内容作废。§2.18086/8088微处理器CS:代码段寄存器

DS:数据段寄存器SS:堆栈段寄存器

ES:附加段寄存器8086最大寻址空间达1MB(20位地址)8086内部寄存器均为16位,16位地址只可寻址64KB8086采用分段技术解决16位地址寄存器寻址1MB存储空间的问题:①一个逻辑地址由两部分组成:段地址、段内偏移量②段地址存放在段寄存器中③实际地址(20位物理地址)=段地址×16+偏移量3.段寄存器§2.18086/8088微处理器20位物理地址的形成1200H(CS)2450H(IP)+14450H20位物理地址=段地址(CS)×16+偏移量(IP)§2.18086/8088微处理器2.1.48086/8088的工作模式及引脚功能

根据不同的应用环境,8086可以工作在两种模式:1.工作模式系统中只有8086一个微处理器,所有的总线控制信号均由8086产生,系统的总线控制信号被减至最少。

最小模式

最大模式系统中除8086作为主微处理器以外,还有其它的微处理器协助工作:数值运算的协处理器8087,输入/输出(I/O)协处理器8089。最大模式用于中规模或大型的8086系统中。8086工作在何种模式,完全由硬件决定:MN/MX。§2.18086/8088微处理器图2.4 8086最小模式系统典型配置最小模式系统§2.18086/8088微处理器最大模式系统图2.58086最大模式系统典型配置图2.6 总线控制器8288与8086的连接图2.7 多处理器系统2.引脚功能

地址/数据总线

地址/状态总线

控制总线

电源/地线

其它控制线五类引脚线图2.58086引脚图2.68088引脚(1)地址/数据总线AD15

~AD0(双向/三态)分时复用:在一个总线周期的第一个时钟周期,AD15

~AD0

传送地址信号,在其它的时钟周期,作数据总线使用。地址

锁存器

STBABDBAD15~AD0ALE§2.18086/8088微处理器(2)地址/状态线A19/S6~A16/S3(输出/三态)在一个总线周期的T1,输出地址信号的最高4位A19~A16,在其他的时钟周期,输出状态信号S6~S3。同样,这4个引脚信号也要用外电路将地址信号锁存。§2.18086/8088微处理器S4、S3

的组合指出当前使用的段码寄存器情况1S4S3意义100当前正在使用ES附加段01当前正在使用SS堆栈段10当前正在使用CS或者未使用任何寄存器当前正在使用DS数据段S6为低,表示8086当前与总线相连S5=IF系统处于DMA,CPU让出总线,A19/S6~A16/S3进入浮空状态。(3)控制总线②BHE/S7高8位数据总线允许/状态线(输出/三态)在其他的总线周期,为S7状态信号,8086中S7未作定义。

①CLK系统时钟输入信号最大时钟频率为8MHZ,占空比1/3。在总线周期的T1,为BHE信号,表示高8位数据线D15~D8

上的数据有效。

§2.18086/8088微处理器BHEA0数据传送格式00110101同时传送高、低字节(AD0~AD15)奇数地址的高位字节(AD8~AD15)偶数地址的低位字节(AD0~AD7)无效BHE和

A0结合控制CPU与存储器之间数据传送的格式(因为存储器是按字节组织的)。§2.18086/8088微处理器③MN/MX最大/最小模式控制信号④RD读信号(输出/三态,低电平有效)RD=0,读存储器或I/O,DMA时浮空。⑤INTR可屏蔽的中断请求信号(输入/高电平有效)外设向CPU提出的中断请求信号,若FR中IF=1,CPU在当前指令后即响应。不受FR中IF的影响,CPU在当前指令后响应。⑥NMI非屏蔽中断请求信号(输入/上升沿有效)§2.18086/8088微处理器⑦READY准备就绪信号(输入,高电平有效)CPU访问存储器或外设时,READY有效,表示存储器或外设已准备好传送数据。⑧TEST测试信号

(输入,低电平有效)WAIT指令TEST有效?执行后续指令YesNo与等待指令WAIT配合使用。§2.18086/8088微处理器4T复位重新启动后,第一条指令地址FFFF0H。⑨RESET系统复位信号(输入,高电平有效)RESET使CPU复位结束现行操作,初始化内部寄存器。复位信号必须保持4个时钟周期高电平。CPU中的部分内容标志位清除指令指针(IP)0000HCS寄存器FFFFHDS寄存器0000HSS寄存器0000HES寄存器0000H指令队列空(4)电源和地线VCC电源+(+5V±10%)

GND地线(两条)§2.18086/8088微处理器①

M/IO存储器/输入输出控制信号(输出/三态)RD与M/IO组合对应的操作M/IORD操作1000读存储器读I/O端口(5)其它控制总线24~31#引脚信号的定义依8086的工作模式而定,以下是在最小模式配置时这些引脚的定义。§2.18086/8088微处理器②WR写信号(输出/三态,低电平有效)WR与M/IO组合对应的操作M/IOWR操作1000写存储器写I/O端口③INTA中断响应信号(输出/三态,低电平有效)CPU响应INTR后,用INTA读取外设提供的中断类型号,以取得中断服务程序的入口地址。§2.18086/8088微处理器在每一总线周期的T1状态,ALE都输出有效电平,表示当前地址/数据复用总线上输出的是地址信息,供地址锁存器对地址进行锁存。④ALE地址锁存允许信号(输出/三态,高电平有效)⑤DEN数据允许信号(输出/三态,低电平有效)控制CPU外接的数据收发器。§2.18086/8088微处理器⑥DT/R数据收发方向控制信号(输出/三态)DT/R=1,即T=1,AB(CPU内存或外设)DT/R=0,即T=0,BA(内存或外设CPU)82862

A

OE

TAD0~AD15D0~D15DENDT/RB控制数据总线驱动器的数据传送方向。DMA方式下,DT/R浮空§2.18086/8088微处理器⑦HOLD总线保持请求信号(输入,高电平有效)⑧HLDA总线保持响应信号(输出,高电平有效)系统中其它总线主设备(如DMA)通过该总线向CPU申请对总线的控制权。CPU响应HOLD信号,让出总线控制权。§2.18086/8088微处理器2.1.58086/8088的操作和时序

CPU为完成预定功能的操作是在时钟节拍的同步下,按时序一步一步执行的,这就构成了CPU的操作时序。了解CPU的操作时序,是设计微机系统的重要基础,也有助于进一步了解系统总线的功能。§2.18086/8088微处理器8086CPU的主要操作有:

系统的复位和启动

总线读/写操作

中断操作

总线保持或总线请求/允许/释放操作

暂停操作§2.18086/8088微处理器1.系统的复位和启动图2.78086复位操作时序7T复位操作CPU开始执行程序CPU经总线接口部件BIU,读/写存储器或访问I/O接口,称为总线操作;执行一次总线操作所花的时间,称为一个总线周期。图2.3 典型的BIU总线周期波形图2.总线读/写操作§2.18086/8088微处理器①最小模式下的总线读操作②最小模式下的总线写操作③最大模式下的总线读操作④最大模式下的总线写操作

8086的总线读/写操作有以下四种:§2.18086/8088微处理器图2.8最小模式下总线读操作时序图2.9最小模式下总线写操作时序图2.10最大模式下总线读操作时序图2.11最大模式下总线写操作时序3.暂停操作当CPU执行一条暂停命令HLT时,就停止一切操作,进入暂停状态。暂停状态一直保持到发生中断或对系统进行复位为止。在暂停状态下,CPU可接收HOLD线上(最小模式)或RQ/GT线上(最大模式)的保持请求。当保持请求消失后,CPU仍回到暂停状态。§2.18086/8088微处理器4.中断响应操作图2.12中断响应周期时序5.最小模式下的总线保持操作图2.13最小模式下总线保持请求/保持响应时序6.最大模式下的总线请求/允许/释放操作图2.14最大模式下总线请求/允许/释放时序§2.18086/8088微处理器2.1.68086/8088的存储器及I/O组织

1.8086的存储器组织(1)存储器地址8086/8088CPU由20条地址线,存储器地址的编址范围:00000H~FFFFFH(1MB)§2.18086/8088微处理器(2)存储器结构8086系统将1MB存储空间分成两个512KB存储体(库),一个只包含偶数地址,与数据总线D7~D0相连,所以又称低位库;另一个只包含奇数地址,与数据总线D15~D8相连,所以又称高位库。地址A0和控制线BHE用于库选择,其余19位地址码(A19~A1)用于访问任何一个库(219=512K)。§2.18086/8088微处理器图2.7存储体地址空间分配图2.8存储体与总线的连接§2.18086/8088微处理器(3)对存储器中数据的操作

字节数据按序存放

字数据:高位字节放高地址 低位字节放低地址规则字:字数据的低位字 节从偶地址开始非规则字:字数据的低位 字节从奇地址 开始图2.9CPU往存储器写一个字或一个字节过程示意图

对规则字的存取可在一个总线周期内完成,对非规则字的存取则需两个总线周期才能完成。8088因外部数据总线为8位,其1MB存储空间不分高低位库。每个总线周期均只能完成一个字节的存取操作。§2.18086/8088微处理器(4)存储器分段1MB存储空间分成

若干个逻辑段,每

一段

64K(216)。逻辑段1

64KB逻辑段2

64KB逻辑段3

64KB逻辑段4,5

64KB00000逻辑段1起点逻辑段2起点逻辑段3起点逻辑段4,5起点FFFFF

每个段的起始地址

称为段基址(首址),

由软件设定。

段与段之间可以连续排列,部分重叠,断续排列。图2.10存储器段结构§2.18086/8088微处理器

逻辑段首地址由段码寄存器确定64KB64KB64KB64KB堆栈段0000010550250A08FFB0EFF00FFFFF代码段数据段附加段EFF08FFB250A1055CSDSESSS§2.18086/8088微处理器(5)堆栈

可以有多个堆栈同时存在,由各自的段名区分,但只有一个堆栈段为当前堆栈段。

堆栈深度最大64KB。

堆栈操作均为字操作,SP始终指向实栈顶。§2.18086/8088微处理器

操作数地址:DS(ES)16+偏移地址

(其中的偏移地址取决于指令的寻址方式)

堆栈操作地址:SS16+SP(6)存储器(内存)地址的一般情况

指令地址:CS16+IP§2.18086/8088微处理器2.8086的I/O组织I/O端口地址

两种I/O端口编址方式8086采用独立编址方式

专用的输入/输出指令:IN/OUT

独立编址

统一编址

端口地址空间:64KB(0

温馨提示

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

评论

0/150

提交评论