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

下载本文档

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

文档简介

1、第二章 8086微处理器n8086微处理器采用微处理器采用HMOS工艺技术制造,外型工艺技术制造,外型封装为双列直插式,有封装为双列直插式,有40个引脚。个引脚。n主时钟频率有主时钟频率有5MHz,8MHz和和10MHz几种。几种。n内部采用内部采用16位数据通路和流水线结构,从而允位数据通路和流水线结构,从而允许其在总线空闲时预取指令,使取指令与执行许其在总线空闲时预取指令,使取指令与执行指令实现了并行操作。指令实现了并行操作。n8086有有20位地址线,可直接寻址的空间达位地址线,可直接寻址的空间达1MB。nIntel公司为了与一整套外围设备兼容推出准公司为了与一整套外围设备兼容推出准16

2、位位CPU8088,内部结构和,内部结构和8086相同,但对外数相同,但对外数据总线只有据总线只有8位。位。 微处理器执行一条指令的过程: 取指令 取操作数 执行指令 传送结果 在8086/8088内部分两大部件: 执行部件(EU):负责指令的执行 总线接口部件(BIU):负责与存储器、I/O端口传送数据 这两大部件构成两级流水线,使取指和执行可并行完成,并成为后续CPU的基本技术。2.1 8086/8088微处理器的内部结构内部总线内部总线1616位位8位队列总线位队列总线总总线线控控制制逻逻辑辑 地址加法器地址加法器2020位地址总线位地址总线 16 16位(位(8 8位)位) 数据总线数

3、据总线总总线线接接口口部部件件BIU1 2 3 4 5 6 指令队列指令队列CSDSSSESIP暂存器暂存器 总线总线EU控控制制单单元元ALU暂存器暂存器标志寄存器标志寄存器执执行行部部件件EU 通用寄存器通用寄存器AX AH ALBX BH BLCX CH CLDX DH DL SP BP DI SI8086/8088结构图结构图举例段寄存器段寄存器 用来识别当前可寻址的四个段CS (Code Segment Register) 代码段寄存器 指示当前执行的程序所在存储器中的区域。DS (Data Segment Register) 数据段寄存器 指示当前程序所用的数据在存储器中的区域。S

4、S (Stack Segment Register) 堆栈段寄存器 指示当前程序所用的堆栈在存储器中的区域。ES (Extra Segment Register) 附加段寄存器 指示当前程序所用的数据在存储器中的另外区域,在字符串操作中常用到。指令指针寄存器指令指针寄存器 用来存放下一条将要执行的指令在当前代码段中的偏移地址。在程序运行中,IP的内容能够自动修改,使之总是指向下一条要执行的指令地址。总线控制逻辑电路总线控制逻辑电路 总线控制逻辑电路将8086微处理器的内部总线和外部总线相连,是8086 微处理器与内存单元或I/O端口进行数据交换的必经之路。地址加法器地址加法器左移左移4位位20

5、位+地址加法器地址加法器段寄存器段寄存器16位物理地址物理地址20位 偏移地址偏移地址 0 0 0 0指令队列指令队列8088为4字节,8086为6字节;存取为FIFO(先进先出);指令队列至少保持有一条指令,且只要有一条指令,EU就开始执行;指令队列只要有空,BIU自动执行取指操作,直到填满为止;若EU要进行M/IO存取数据,BIU在执行完现行取指操作周期后进行;当执行转移指令时,EU要求BIU从新的地址中重新取指。队列中原有指令被清除。新取得的第一条指令直接送EU执行,随后取得的指令填入队列。 通用寄存器通用寄存器 用于存放各种数据AX (Accumulator) 累加器 在乘法和除法指令

6、中作累加器, 所有I/O指令都使用该寄存器与外设端口传送数据。BX (Base) 基址寄存器 在计算内存地址时,常用来存放偏移地址。CX (Count) 计数器 在循环和串操作指令中用作计数器。DX (Data) 数据寄存器 在寄存器间接寻址的I/O指令中存放端口地址,在做双字长乘除法运算时,与AX配合使用。专用寄存器专用寄存器 可存放各种数据SP (Stack pointer) 堆栈指针寄存器 用来确定堆栈在内存中的地址。BP(Base pointer) 基址指针寄存器 在计算内存地址时,常用来存放偏移地址。SI (Source Index) 源变址寄存器 可存放各种数据及偏移地址,在串操作

7、中,用于指向源串首地址。DI( Destination Index) 目的变址寄存器 可存放各种数据及偏移地址,在串操作中,用于指向目的串首地址。 ALU (Arithmetic and Logic Unit) 算术逻辑单元 进行所有的算术和逻辑运算; 计算寻址单元的十六位偏移地址EA(Effect Address)。 EU控制器控制器 作用是从BIU的指令队列中取指令,并对指令进行译码,根据指令要求向EU内部各部件发出相应的控制命令以完成每条指令所规定的功能。标志寄存器标志寄存器 (FLAG) 唯一能按位操作的寄存器 只定义了其中9位,另外7位未定义(保留) 6位状态标志:OF(Overfl

8、ow)、SF(Sign)、ZF(Zero)、 AF(Auxiliary) 、 PF(Parity)、CF(Carry) 3位控制标志:DF(Direction)、IF(Interrupt-Enable)、TF(Trap)OF DF IF TF SF ZF AF PF CF D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0例例1 1例例2 20 01 11 10 00 01 11 10 01 10 01 10 01 10 00 01 1运算结果最高位为运算结果最高位为1SF=1;第三位向第四位有进位第三位向第四位有进位 AF=1; 根据双

9、高判别法根据双高判别法C14 C15 = 1 0 =1 OF=1最高位没有进位最高位没有进位 CF=0;低低8位中位中1的个数为偶数个的个数为偶数个 PF=1;运算结果本身运算结果本身0 ZF=0;1 10 00 00 01 11 10 01 10 00 01 11 10 01 11 10 00 00 01 11 10 00 01 10 00 00 00 01 11 10 00 01 1+ +例例1:2个数相加后,分析各标志位的值个数相加后,分析各标志位的值返回0 00 01 10 01 11 10 00 01 10 00 00 01 11 10 00 01 10 00 00 01 11 10

10、 01 10 00 01 11 10 01 11 10 00 00 01 11 10 00 01 10 00 00 00 01 11 10 00 01 1- -例例2:2个数相减后,分析各标志位的值个数相减后,分析各标志位的值运算结果最高位为运算结果最高位为0SF=0;第三位向第四位没有借位第三位向第四位没有借位 AF=0;最高位没有借位最高位没有借位 CF=0;低低8位中位中1的个数为奇数个的个数为奇数个 PF=0;运算结果本身运算结果本身0 ZF=0; 根据双高判别法根据双高判别法C14 C15 = 0 0 =0 OF=0返回返回一、工作模式一、工作模式n最小模式:系统只有8086或808

11、8一个微处理器。所有控制信号直接由CPU提供,因此系统中的总线控制电路被减到最小。 一般CPU与小容量的存储器及少量的外设接口相连时,可连成最小模式。n最大模式:在中等规模的或大型8086/8088系统中使用最大模式,可含有一个或多个微处理器(主处理器8086/8088和协处理器8087、8089)组成中(大)规模系统,CPU并不直接向外界提供全部控制信号,而由S0S1S2通过Intel 8288总线控制器提供。2.2 8086/8088微处理器的引脚信号与工作模式微处理器的引脚信号与工作模式1、地址、数据信号:地址、数据信号:nAD0AD15 地址/数据复用引脚(双向、三态)nA16/S3A

12、19/S6 地址/状态复用引脚(输出、三态)2、控制信号、控制信号nBHE/S7 数据总线高8位允许/状态(输出,三态)nWR写信号(输出,低电平有效,三态)nRD读信号(输出、低电平有效、三态)nM/IO 存储器/IO控制信号(输出、三态) nTEST 测试信号(输入、低电平有效)nREADY 准备就绪(输入、高电平有效)12345678910111213141516171819204039383736353433323130292827262524232221GNDAD14AD13AD12AD11AD10AD9AD8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGND

13、VCCAD15A16/S3A17/S4A18/S5A19/S6BHE/S7MN/MXRDHOLD*HLDA*WR*M/IO*DT/R*DEN*ALE*INTA*TESTREADYRESET8086二、二、8086/8088的引脚信号(最小模式)的引脚信号(最小模式) MN/MX = 5V nALE 地址锁存允许信号(输出)nDT/R 数据发送/接收控制信号输出(输出、三态)nDEN 数据允许信号(输出、三态、低电平有效)nHOLD 总线保持请求信号(输入、高电平有效)nHLDA 总线保持响应信号(输出、三态、高电平有效)nINTR 可屏蔽中断请求信号(输入、高电平有效)nINTA 中断响应信号

14、(输出、三态、低电平有效)nNMI 非屏蔽中断请求(输入,上升沿触发)nRESET 复位信号(输入,高电平有效)nMN/MX 最小/最大模式控制输入端12345678910111213141516171819204039383736353433323130292827262524232221GNDAD14AD13AD12AD11AD10AD9AD8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGNDVCCAD15A16/S3A17/S4A18/S5A19/S6BHE/S7MN/MXRDHOLD*HLDA*WR*M/IO*DT/R*DEN*ALE*INTA*TESTREAD

15、YRESET808612345678910111213141516171819204039383736353433323130292827262524232221GNDA14A13A12A11A10A9A8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGNDVCCA15A16/S3A17/S4A18/S5A19/S6SS0MN/MXRDHOLD*HLDA*WR*IO/M*DT/R*DEN*ALE*INTA*TESTREADYRESET8088AD0-AD7: 数据/低8位地址复用线SS0:状态信号IO/M 存储器/地址选择二、二、8086/8088的引脚信号(最大模式)的

16、引脚信号(最大模式) MN/MX = 0nS2 S1 S0 总线周期状态信号(输出、三态)nRQ/GT0 RQ/GT1 总线请求(输入)/总线请求允许信号(输出)(双向、均为低电平有效)nLOCK 总线封锁信号(输出、三态、低电平有效)nQS0 QS1指令队列状态信号(输出)12345678910111213141516171819204039383736353433323130292827262524232221GNDAD14AD13AD12AD11AD10AD9AD8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGNDVCCAD15A16/S3A17/S4A18/S5

17、A19/S6BHE/S7MN/MXRDRQ/GT0*RQ/GT1*LOCKLOCK*S2*S1*S0*QS0*QS1*TESTREADYRESET80861、最小模式配置 系统中所有的控制信号由8086本身提供,它的基本配置为:除使用8086/8088作为微处理器外,还需配有时钟发生器8284A、三片地址锁存器(8282/8283)、两片总线驱动器(8286/8287)才能构成系统总线。三、三、8086/8088的系统配置的系统配置最小模式总线形成(Intel产品手册推荐电路)RESET TEST HOLD HLDA NMI INTR INTA M / IO WR RD READY CLK R

18、DY1RDY2MN / MX+5V控制总线控制总线地址总线地址总线A19 A0数据总线数据总线D15D0 ALE A19A16 AD15AD 0 DT / R DEN8086CPUSTB 8282OETOE82868284A系统总线系统总线RESEFIF/CPCLK BHE 2、最大模式配置 除最小模式配置外,需外加总线控制器8288对CPU发出的控制信号进行变换和组合,以获得对存储器、I/O端口的读写信号和对锁存器 8282、总线驱动器8286的控制信号,另外在多处理器中还需加入总线仲裁器8288解决主处理器和协处理器之间协调工作和对总线的共享控制等问题。RESET S2 S1 S0 REA

19、DY CLK RDY1RDY2MN / MX控制控制总线总线地址总线地址总线A19 A0数据总线数据总线D15D0 A19A16 AD15AD 0 8086CPUSTB 8282OETOE82868284A系统总线系统总线RESEFIF/CPCLK BHE INTA MRDC MWTC IOWC IORCMCE/PDEN CLK AENIOBCENDENDT/RALETEST NMI INTR 8288+5V3、最小模式配置与最大模式配置的比较1)不同之处 最小模式下系统控制信号直接由8086CPU提供;最大模式下因系统复杂,芯片数量较多,为提高驱动能力和改善总线控制能力,系统的控制信号由总线

20、控制器8288提供。 最小模式下8086的31、30脚提供一组总线请求/响应信号(HOLD、HLDA),而最大模式下8086的31、30脚将提供两组总线请求/响应信号(RQ/GT0、RQ/GT1)。2)相同之处: 8086的低位地址线与数据线复用,为保证地址信号维持足够的时间,需使用ALE信号将低位地址线锁存(通过锁存器8282),以形成真正的系统地址总线; 8086的数据线通过数据收发器8286后形成系统数据总线,以增大驱动能力,数据收发器主要由DEN和DT/R两个信号控制。 一、 存储器分段存储器分段分段原因分段原因: 8086有有20根根地址线,但其地址线,但其内部可以表示内部可以表示的

21、地址最多只的地址最多只能是能是16位。位。 为了能寻址为了能寻址1 M B 空 间 ,空 间 ,8086对存储器对存储器进行逻辑分段进行逻辑分段,每个段最大,每个段最大为为64KB,最小最小为为16B(此时最此时最多多64K个段)。个段)。 连续连续逻辑段逻辑段A段段B段段C段段D段段E段段00000H10000H20000H30000H40000H实际(物理)实际(物理)存储器存储器分离分离部分重叠部分重叠完全完全重叠重叠2.3 8086微处理器的存储组织微处理器的存储组织8086物理地址物理地址PA的形成,的形成,其中的其中的16位偏移量也称为位偏移量也称为有有效地址效地址EA(出现在指令

22、中出现在指令中)加法器加法器 段寄存器段寄存器 000015016位偏移量位偏移量01520位物理地址位物理地址019段基址段基址1123H偏移量偏移量13H段基址段基址1124H偏移量偏移量03H存储单元存储单元 物理地址物理地址 11230H 11231H 11232H 1123FH 11240H 11241H 11242H 11243H逻辑地址逻辑地址LA=段基值段基值 :偏移量偏移量存储器操作默认段基址可使用段基址 偏移地址取指令 CS IP堆栈操作 SS SP变量 DSCS、ES、SS EA源数据串 DSCS、ES、SS SI目的数据串 ES DI堆栈中的变量 SS BP逻辑地址来源

23、逻辑地址来源 地址地址 内容内容内容内容地址地址 00000H 00001H 00002H 00003H FFFFEH偶地址存储体偶地址存储体512K*8bitA00奇地址存储体奇地址存储体512K*8bitBHE0 FFFFFHBHEA0读/写的字节00高低两个字节01奇数地址的高位字节10偶数地址的低位字节11不传送三、存储空间与存储结构D7 D0D15 D8A0DBAB存储体与总线的连接存储体与总线的连接BHED7 D0奇地址存储体奇地址存储体SEL A18 A0D7 D0偶地址存储体偶地址存储体SEL A18 A0A19 A1I/O端口地址:8086系统和外部设备之间进行数据传输时,各

24、类信息在接口中将进入不同的寄存器,一般称这些寄存器为I/OI/O端口端口;每个端口分配一个地址号,称为端口地址端口地址,CPU通过指令对它们进行访问;I/O端口分:数据端口、状态端口数据端口、状态端口和命令端命令端口口。接口电路占用的I/O端口有两类编址形式nI/O端口独立编址nI/O地址空间独立于存储地址空间n如8086/8088nI/O端口与存储器统一编址n它们共享一个地址空间n如M6800内存内存空间空间I/O空间空间FFFFFH0FFFFHn优点:nI/O端口的地址空间独立n控制和地址译码电路相对简单n专门的I/O指令使程序清晰易读n缺点:nI/O指令没有存储器指令丰富I/OI/O端口

25、独立编址端口独立编址808086CPU86CPU最大可用地址总最大可用地址总线的低线的低1616位作为对位作为对8 8位位I/OI/O端口的寻址线,所以端口的寻址线,所以可访问的可访问的8 8位位I/OI/O端口有端口有6464K K个,个,1616位位I/OI/O端口端口3232K K个。个。n优点:n不需要专门的I/O指令nI/O数据存取与存储器数据存取一样灵活n缺点:nI/O端口要占去部分存储器地址空间n程序不易阅读(不易分清访存和访问外设)内存内存部分部分I/O部分部分存储器空间存储器空间00000HFFFFFHI/OI/O端口与存储器统一编址端口与存储器统一编址时序图:描述某一操作过程中,芯片/总线上有关引脚信号随时间发生变化的关系图;总线操作:指CPU通过总线对外的各种操作;总线周期:执行一个总线操作所需要的时间,一个基本的总线周期通常包含 4 个T状态n4个时钟周期编号为T1、T2、T3和T4n总线周期中的时钟周期也被称作

温馨提示

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

评论

0/150

提交评论