1. 首页
  2. 文档大全

第2章 8086微处理器

上传者:7****0 2022-06-07 06:50:27上传 PPT文件 531.01KB
第2章 8086微处理器_第1页 第2章 8086微处理器_第2页 第2章 8086微处理器_第3页

《第2章 8086微处理器》由会员分享,可在线阅读,更多相关《第2章 8086微处理器(63页珍藏版)》请在文档大全上搜索。

1、第2章 8086微处理器n重点8086的结构特点、编程结构、引脚信号功能及总线时序。n2.1 8086 微处理器的结构n16位,约29000个晶体管,频率有5、8、10MHz。n2.1.1 执行部件EU和总线接口部件BIUn执行一条指令的过程n1、总线接口部件BIUn负责CPU与存储器、I/O端口传送数据。n组成:16位段寄存器(CS、DS、SS、ES)n 16位指令指针(IP)n 6个字节指令队列n 地址形成逻辑(20位地址加法器)n (I/O)总线控制逻辑n功能:n1)在EU执行指令的过程中,BIU始终能从存储器中预先取出一些指令送到指令队列中排队,遵从先进先出的次序。n2)根据EU的请求

2、,形成20位的内存物理地址,完成CPU与存储器或I/O设备之间的数据传送。n2、执行部件EUn负责指令的译码执行。n组成:16位的算术/逻辑单元ALUn 16位状态标志寄存器n 4个通用寄存器(AX、BX、CX、DX)n AH和ALn 4个专用寄存器(SP、BP、DI、SI)n 暂存(运算)寄存器n EU控制系统n注:n1)寄存器组和数据传输通路间可进行快速传输。n2)EU不与系统总线相联。n功能:n1)从BIU的指令队列中获取指令、译码执行指令。n2)向BIU发出请求,提供数据和所需访问的内存或I/O端口的地址信息。n3)对通用寄存器和标志寄存器进行管理,n主要操作类型:n1)算术/逻辑运算

3、、串处理、BCD码调整。n2)计算寻址要求的单元地址的位移量,EU将这个16位位移量送BIU。n二、工作方式 n微处理器通过总线和外部部件交换信息,当执行一条指令时,一般要占用二次总线,总线非常忙,要提高微处理器的利用率和整个系统的执行速度,必须充分利用总线。并行工作方式:BIU和EU处于并行工作状态,取指令与数据不占用额外时间,在执行指令时同时取下一条指令与数据,这样总线总不空闲。2.1.2 8086的编程结构n基本结构寄存器n系统级寄存器(主要用于简化设计)n调试和测试寄存器(主要用于对操作系 统进行调试)n浮点寄存器(80486用)基本结构寄存器n通用寄存器n专用寄存器n段寄存器1.通用

4、寄存器(8个)nAX 累加器(AH AL) 加减法,与外设传送信息nBX 基址寄存器 表起始地址,计算M地址nCX 计数寄存器 串个数,循环次数nDX 数据寄存器 与AX构成双字长数nSP 堆栈指针 栈顶偏移量nBP 基址指针 堆栈中数据区的基址偏移量nSI 源变址寄存器 串操作时,当前数据段、nDI 目的变址寄存器 附加段中数据的偏移量2.专用寄存器n1、指令指针IPn 指出下一条要执行的指令在当前代码段中偏移量nBIU从内存中取出一个字节后,IP自动加1n能对IP操作的只有转移指令、返回指令和中断处理专用寄存器n2、标志寄存器 有三种n状态标志 由EU设置n控制标志 可由指令设置n系统方式

5、标志状态标志n进位标志CF=1 表示高位有进位或借位n CF=0 表示高位无进位或借位n奇偶标志PF=1 低8位中1的个数为偶数n PF=0 低8位中1的个数为奇数n辅助进位标志AF=1 D3位有进位或借位n AF=0 D3位无进位或借位n零标志ZF=1 表示运算结果为0n ZF=0 表示运算结果非0状态标志n符号标志SF=1表示运算结果为负数n SF=0表示运算结果为正数n溢出标志OF=1运算结果超出机器所能表示的数值范围n OF=0运算结果无溢出 n 注意:溢出和进位不同n例:指出运算5439+456A后的状态标志控制标志n陷阱标志TF=1微处理器处于单步工作方式n TF=0微处理器执行正

6、常程序n中断允许标志IF=1 开中断n IF=0 关中断n方向标志DF=1地址递减n DF=0地址递增(用于字串操作)3.段寄存器(6个)n保存标志现行可寻址存储器段的段选择子值n只有16位n段长度与工作方式有关: 1)实地址方式:64KB 保存段的起始地址 物理地址=CS*16+IP 2)保护方式: 14GB 保存段的选择子n段寄存器与段描述子寄存器一一对应 段描述子:段基地址+段限+属性 段寄存器n段描述子寄存器-段高速缓存器(CACHE)nCS 当前代码段 (指令)nDS 当前数据段 (字符、数值)nSS 当前堆栈段 (保存返回地址和中间结果)nES 当前附加段 (字符、数值)nFS 当

7、前附加段 (用于数据通信)nGS 当前附加段 (用于数据通信)n取操作数的段: 1)默认的段; 2)在指令前加前缀指令指定,但偏移量由SP计算来的,用当前堆栈段,串操作目标操作数用当前附加段 2.1.3 8086系统中的存储器组织n1.存储器组织n1)存储器分段 地址只能为16位,所以1MB空间分成存储段。每段长度可达64KB,第一字节位置称”段起始地址“(段基址),必须能被16整除,高16位为”段基值“。段基值左移4位即成段起始地址。浮动装配时,只需确定段基址即可,程序中采用相对转移或相对调用。当程序超过64KB,则必须给段寄存器重新送新值。 几个段可互相重叠,也可指向同一个64KB,可进行

8、程序压缩,但要求不破坏数据。 2)物理地址的产生n物理地址:单元地址用20位二进制数表示,CPU与存储器间数据交换用,唯一的。范围:00000HFFFFFHn逻辑地址:由段基值和段内偏移量构成,以16位二进制数表示,编程时用,不唯一。偏移量范围:0000HFFFFHn例:01245H单元 n当段基值为 0123H 偏移量为15H n当段基值为 0124H 偏移量为5Hn即一个物理地址可由不同的段基值和段内偏移量构成。物理地址的产生n物理地址=段基址+段内偏移量(有效地址EA)n偏移量寄存器:SP、BP、SI、DI、IP。 BIU根据执行操作的种类和要取的数据类型分别从不同寄存器中取值。 指令

9、CS IP 堆栈操作 SS SP或BP 操作数(变量) DS BX、SI或DI(若段操作前缀n 指令指定可用CS、ES、SS) n串操作目的操作数 ES DIn逻辑地址来源见表2-202.2 8086微处理器的引脚功能n8086是16位CPU,40引脚,双列直插式2.2.1 引脚功能说明n分四部分: 地址总线 数据总线 控制和状态总线 其他(电源和定时线)n说明:1)某些引脚能传送多于一种类型的信n 息,叫分时复用n 2) MN/MX(最小/最大方式控制线)n +5V 最小方式,接地 最大方式 图2-6中括号内为最大方式1、地址和数据总线(1)地址总线 20位 单向三态 CPUM和I/O端口

10、数据总线 16位 双向三态 CPUM和I/O端口 为节省管脚,采用多路转换方法,即分时复用技术. (2)AD15AD0: T1时,作低16位地址;其余时间,为数据线;中断响应或DMA方式时,高阻。AD0作低8位数据的选通信号。地址和数据线nA19A16/S6S3: T1时,M操作作高4位地址,可寻址1M字节单元;I/O操作为低电平,可寻址64K端口n其余时间,提供状态信息 nS4,S3表示正在使用哪个段寄存器,见表2-4nS5反映IF的值nS6=0,8086正在控制总线地址和数据线nBHE-/S7:nT1时作总线高半部分允许信号,BHE-=0,8位数据与AD15AD8连通,与AD0配合决定是高

11、字节还是低字节n其余时间提供状态信息,暂不用n在DMA方式时,高阻2、控制和状态总线n有些输出,有些输入;还受MN/MX上电平的影响,以控制最小方式和最大方式。n最小方式用于单处理机系统n最大方式用于多处理机和协处理机结构受MN/MX影响的信号线nMN/MX=0 最大方式:nS2-,S1-,S0-总线周期状态信号(输出,三态,低电平有效):表示8086外部总线周期的操作类型,送到总线控制器8288,由8288产生相应的控制信号。表2-5(P22)nMN/MX=+5V 最小方式:nM/IO-存储器/IO控制信号(输出,三态) M/IO-=1,访问存储器M/IO-=0,访问I/O设备nDT/R-数

12、据发送/接收信号(输出,三态):控制8286的数据传送方向最大方式 最小方式nS2-区分M和I/O的标志nS1-指示操作是输入还是输出n在T3或TW返回无效状态nDT/R-=1,数据放到系统总线 DT/R-=0,从系统总线上取进数据nDEN-数据允许信号(输出,三态,低电平有效):控制8286收发器,允许缓冲器(数据总线)连到系统总线或局部总线上。n这3个在DMA方式高阻最大方式 最小方式nRQ/GT0-、RQ/GT1-总线请求/允许访问控制(双向):时序分为3个阶段(请求、允许、释放)需要3个低电平脉冲序列。当总线主模块要求总线控制权发RQ-=0;若8086允许响应发GT-=0;交出总线控制

13、权,成三态输出;总线主模块使用完,交出总线控制权发RQ-=0。见图2-7.nHOLD保持请求(输入):8086在机器周期的最后一个T采样HOLD=1总线主模块向8086请求总线控制权。nHLDA保持响应(输出):8086响应,使系统总线高阻。n这时,DEN-、DT/R-等高阻。最大方式 最小方式n在T4或下一个T1里n两条控制线同时接两个协处理器nRQ/GT0-优先权高nQS0、QS1指令队列状态(输出):见表2-6n此方式的ALE、DEN、DT/R、INTA的功能由8288提供。nALE地址锁存允许(输出):=1,表示有效地址在总线上,下降沿锁存地址信息。nINTA-中断响应(输出,三态):

14、=0,表示8086正执行中断响应。最大方式 最小方式nLOCK-总线优先权锁定信号(输出,三态):=0,阻止8086失掉总线控制权;在DMA方式高阻。n指令LOCK由程序设置,做前缀,并保持到该条指令执行结束。nWR-写控制(输出,三态):数据在总线上稳定时,=0,执行写操作;在DMA方式高阻不受MN/MX影响的信号线nRD-读控制(输出,三态): T2T3、TW时,=0,8086从M或IO设备读数据;在DMA方式高阻nREADY等待状态控制(输入): =1,表示被选中的M或IO准备就绪; =0,使8086处于等待状态(插入1或几个TW)nTEST-等待测试控制(输入): =1,8086等待,

15、停止操作; =0,脱离WAIT指令的等待状态,继续执行指令。 (CPU每5T采样TEST-)不受MN/MX影响的信号线nINTR可屏蔽中断请求(输入):=1且IF=1,8086执行中断响应; 其它,继续执行指令。 (CPU在指令周期的最后一个T采样INTR)nNMI不可屏蔽中断请求(输入):上升沿触发,8086执行不可屏蔽中断服务程序,不能被软件禁止。nRESET系统复位(输入):=1(刚加电要大于4T),8086停止正在运行的操作,做初始化:A、FR=0000H,为禁止中断和单步方式; B、DS、SS、ES和IP=0000H,CS=FFFFH; C、指令队列复位。 然后从FFFF0H开始执行

16、,无条件转移到系统初始化和引导及装配程序。3、其他(电源和定时线)nCLK时钟信号(输入):同步所有8086的时钟信号,由8284时钟发生器输出nVcc电源(输入):+5V10%nGND地线(输入):两条(1和20脚)2.2.2 8086与8088引脚的区别n 8086nAD15AD0:16位复用nM/IO-nBHE-/S7:与A0组合来区分高8位,低8位还是1个字。n8088(准16位处理器)nAD7AD0:8位复用;A15A8单用nIO/M-nSS0:最小方式下等效于8086的DEN-(或最大方式下的S0),与DT/R-、IO/M-组合确定当前的总线周期,见表2-7。最大方式下为高电平。

17、8086微处理器的系统配置n一、8086基本系统概念 8086只有40引脚,所以采用以下系统结构: 1)地址线和数据线采用分时复用; 2)地址锁存器(74LS373、273或INTEL 8282/8283)记录地址,防止丢失 。 8086把地址送上总线时,使ALE=1。 20位地址加BHE-用3片。8086的ALE接74LS的G(或8282的STB);当OE-=0时送出数据; 3)数据总线收发器(74LS245或8286/8287)提供缓冲和驱动,并控制数据传送和接收的方向。2片,最小系统可不用,8088用1片。8086基本系统概念n8086的DT/R-接74LS245的DIR(或8286的T

18、,=1输入;=0输出);8086的DEN-接74LS245的G-(或8286的OE-)。T2后开始工作。 4)时钟信号发生器(8284A):产生时钟脉冲频率是振荡源频率的1/3。提供: CLK, 接8086CPU的CLK; PCLK外部设备时钟,频率是CLK频率的1/2;READY等待状态请求,要求同步增加TW周期;RESET复位,和8086的RESET同步。9-28086基本系统概念n5)复位:当8086接受复位时,有关寄存器初始化,多路转换总线信号线浮空,其它可浮空的进入三态或不作用状态。二、最小方式nMN/MX=+5V,构成单处理机系统,系统配置图如图9-1。状态译码和命令输出: n M

19、/IO- RD- WR- 总线周期(命令)n 0 0 1 I/O读(IOR)n 0 1 0 I/O写(IOW)n 1 0 1 M读(MRD)n 1 1 0 M写(MWT) 9-1三、最大方式nMN/MX=0,构成多处理机和协处理机系统,系统配置图如图9-3,比最小方式系统增加一个转换控制信号的8288总线控制器(图9-4)和中断优先权管理器8259A。n1、总线控制器8288 (1)状态译码和命令输出: 见表9-1 (2)控制逻辑 1)IOB(输入输出总线方式): IOB=0,8288处于系统总线方式,总线仲裁逻辑发AEN=0,表示总线可供使用。用于多处理器共用一组总线系统。 9-39-4最大

20、方式nIOB=1,8288处于I/O总线方式工作,与AEN-状态无关。此时,对M访问的命令无效。允许8288管理两组外部总线:访问I/O总线无需等待;访问M之前需AEN-=0。用于多处理器系统而外设不共享的系统。 2)AEN-(地址使能): =1,8288各种命令无效,高阻。 =0,对系统总线方式,在115ns后8288才输出命令,在这段时间进行总线切换;对I/O总线方式,不起作用,不影响I/O命令的发出。最大方式n3)CEN命令使能: =1,命令有效; =0,各命令和DEN、PDEN-等输出无效。 4)CLK时钟:同步8288产生命令和控制信号。(3)控制信号发生器 提供ALE、DEN、DT

21、/R-(作用同最小方式,但DEN相位相反)和MCE/PDEN-。 MCE/PDEN-主设备使能/外设数据允许: 当IOB=0,为MCE(输出,高电平有效),接8259A,允许设备级联,MCE锁存级联地址;无8259,浮空。而用DEN控制总线收发器使局部数据总线接通系统数据总线。最大方式n当IOB=1,为PDEN -(输出,低电平有效),作用同DEN,做总线收发器的开启信号,用于多总线结构的多处理机系统。nCEN、AEN-、IOB供多处理机系统用。 2、其他信号 RQ/GT0-同8087(协处理器)连; RQ/GT1-同8089(I/O处理器即双通道处理器)连。 INTA-:n当系统是两个以上主

22、CPU的多处理器系统,要接到总线仲裁器8289,再与DEN与非后接74LS245的G-(或8286的OE-)。2.3 8086微处理器的基本时序n2.3.1 指令周期、总线周期和时钟周期 指令周期:执行一条指令所需时间 总线周期:取指令和数据传送,由CPU的BIU执行所需时间 时钟周期:同步所有操作的时钟脉冲周期 时钟周期=1/主频n一个指令周期由一个或几个总线周期组成n基本总线周期由4个时钟周期组成,分别叫T1、T2、T3、T4状态。8指令周期、总线周期和时钟周期n若外设或存储器速度较慢,在T3之前发出“数据未准备就绪”信号(READY=0),CPU在T3下降沿采样READY,若READY

23、=0则在T3之后插入1个或多个Tw,在Tw下降沿,采样READY,当READY =1,则结束Tw进入T4。Tw和T3总线控制信号一样。n若一个总线周期后不执行下一个总线周期,执行空闲周期Ti。EU仍执行,BIU等待,此时,AB线高4位 仍驱动状态信息; 低16位 在写周期,驱动数据信息;在读周期,高阻。2.3.2几种基本时序的分析n8086CPU的操作:内操作,与用户无关;外操作,系统对CPU控制或CPU对系统的控制。8086CPU的外部操作n存储器读/写nI/O端口读/写 总线操作n中断响应n总线保持与响应n总线请求/允许(最大方式)n复位和启动n暂停1、总线读操作n从存储器或I/O端口读取

24、数据时序如图2-9nM/IO-有效nT1时,A19A16、AD15AD0、BHE-/S7由ALE锁存,地址撤消后一段时间为高阻,T3开始数据有效;nT2开始RD-=0,若用数据总线收发器,则DT/R-=0,DEN-=0;2、总线写操作n往存储器或I/O端口写入数据时序如图2-10n地址等基本与读操作相同,只是地址有效撤消后马上AD15AD0数据有效,并保持到T4,WR-=0,DT/R-=1。103、中断响应操作n当INTR=1且IF=1,CPU执行两个中断响应周期n第一个的T2T4,INTA-=0n第二个的T2T4,INTA-=0 通知外设送中断类型号到数据总线低8位AD7AD0n两个中断响应

25、周期间插入3个Ti124、总线保持与响应n其它总线主设备(如DMAC)请求 HOLD=1nT4或下一个Ti的后沿HLDA=1nDMA传送结束HOLD=0n下一个T下降沿HLDA=0135、系统复位n外部RESET引脚=1后,在T上升沿,内部RESET=1 总线先变高后浮空,驱动输出为无效状态最大方式时序与最小方式时序的区别n1、最大方式下的总线读操作 n 和最小方式相同,但要考虑CPU和总线控制器产生的信号。n由于ALE、MRDC-或IORC-、DT/R-、DEN由S2-S0-经总线控制器8288产生的,所以在T1T3间S2-S0-有效,在T3T4无效,以便于启动新总线周期nDEN是高电平(要经与非后接OE-)n不用M/IO-和RD-,而用MRDC-/IORC-14CPU子系统n以IBM PC/XT为例n一、8288必须工作于系统总线方式,即IOB-=0、CEN=1、AEN-=0。(因带协处理器,且允许处理器之间进行存储器和设备共享)n二、CPU子系统构成 8088(或加8087) 工作于最大方式 8284A 、 8288 数据收发器74LS245 地址锁存器74LS373


文档来源:https://www.renrendoc.com/paper/212536321.html

文档标签:

下载地址