




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、.,8086微处理器,第二章 8086微处理器,.,指令执行过程,指令的执行过程 取指令 指令译码 指令执行 微型计算机的工作过程,也就是不断地取指令、译码和执行的过程,直到遇到停机指令时才结束机器的运行。,第2.1节 INTEL8086内部结构,.,8086的基本特征,8086CPU是1978年推出,第一代超大规模集成电路(VLSI)微处理器,采用NMOS工艺制造,内含2.9万晶体管。采用40引脚DIP封装。 数据总线宽度16位,地址总线宽度20位;可直接寻址空间2201M字节单元;16位数据总线与地址总线复用。 采用单一的+5V电源,一相时钟,时钟频率为5MHz(8086),10MHz(8
2、0861),8MHz(80862)。 133条指令,指令长度16字节,指令最短执行时间为0.4us(平均0.5us)。,.,8086微处理器内部结构,8086微处理器内部结构 8086微处理器内 部分为执行单元和总 线接口单元两部分。 执行单元(EU Execution Unit):负 责指令的译码和执行 总线接口单元 (BIUBus Interface Unit):与系统总线连 接,实现与存储器、 I/O口之间的数据传送,.,总线接口单元BIU,(一)总线接口单元(BIU) 4个16位段地址寄存器 CS (Code Segment) 代码段寄存器 DS (Data Segment) 数据段寄
3、存器 SS (Stack Segment) 堆栈段寄存器 ES (Extra Segment) 扩展段寄存器 8086对存储器采用分段管理,4个段寄存器分别用于存放4个当前段的起始地址,又称作段基址寄存器。 16位指令指针寄存器 IP (Instruction Pointer) IP始终指向当前代码段(CS)所要取出的下一条指令的地址。每取出一个字节指令后,IP自动加1。可以用转移指令、调用指令及中断和复位等改变IP值。,.,总线接口单元BIU,形成20位物理地址的加法器 段地址左移4位+段内偏移量20位实际物理地址 段地址*16+段内偏移量20位实际物理地址 例:CS的内容是CFFFH,IP
4、的内容是1234H, 则加法器生成的实际物理地址是 CFFF0+01234=D1224H 6个字节的指令队列(ISQ) 与EU通信的内部寄存器 总线控制逻辑,.,执行单元,(二)执行单元(EU) 16位算术逻辑单元ALU 完成算术和逻辑运算 4个16位数据寄存器 AX、BX、CX、DX,又可以分为8个8位寄存器使用 AH、AL、BH、BL、CH、CL、DH、DL 数据寄存器用于存放操作数及中间结果,AX和AL可用作累加操作,因此又可称作累加器。 4个16位地址指针寄存器 SP (Stack Pointer) 堆栈指针寄存器 BP (Base Pointer) 基址指针寄存器 SI (Sourc
5、e Index) 源变址寄存器 DI (Destination Index) 目的变址寄存器 地址指针寄存器用于存放操作数的地址,编程时通过修改寄存器的内容达到修改地址的目的。,.,寄存器使用特殊说明,寄存器使用特殊说明: SP 总是指示堆栈段中的栈顶位置,专门用于数据进 栈和出栈的位置指示,只能与SS配对使用。 BP 指示堆栈段中一个数据区的基址位置,通常与SS配 对使用。 SI 在串操作时用作指示源串地址。 DI 在串操作时用作指示目标串地址。 * BX 既可用作数据寄存器,也可用作基址指针寄存 器,此时通常与DS配对使用。 SP、BP、SI、DI既可指示地址,也可以用作数据寄存器,存放操
6、作数及中间结果。,.,执行单元,16位数据暂存器 EU控制电路 16位状态标志寄存器 FLAG 6个状态标志,3个控制标志IF、DF、TF,剩下7位保留 状态标志: CF 进(借)位标志,若运算结果最高位产生进 位或借位则CF置“1”,否则置“0” AF 辅助进位标志,若低字节的第4位向上产生一 个进位或借位,则AF置“1”,否则置“0”,.,标志寄存器,ZF 零标志位, 若运算结果为零, 则ZF置“1”,否则 置“0” SF 符号标志位,若算数运算的结果为负,SF置“1”, 否则置“0” OF 溢出标志位,有符号数算术运算结果产生溢出,OF 置“1”,否则置“0” PF 奇偶标志位,逻辑运算
7、中低8位所含1的个数为偶 数则PF置“1”,否则置“0” 控制标志: DF 方向标志位 DF=1 串操作指令以递减顺序处理数据串 DF=0 串操作指令以递增顺序处理数据串,.,标志寄存器,IF 中断允许标志 IF=1 CPU允许接收外部可屏蔽中断请求,即开中断 IF=0 关中断 TF 跟踪标志位 TF=1 处理器处于单步工作方式时,每执行完一条指令 产生一个软件中断 TF=0 正常工作,.,BIU和EU的功能,(三)总线接口部件(BIU)和执行部件(EU)的功能 指令队列中出现两个字节为空时自动按CS值和IP值组成20位实际物理地址到存储器中取指令,一次取两个字节指令存放到指令队列中 EU从B
8、IU指令队列中读取指令 由EU控制电路对指令进行译码分析,指出操作性质及操作对象 EU执行指令,如果执行指令时必需访问存储器或者I/O端口,则在EU中计算出操作数的16位地址偏移量送给BIU,由BIU的形成20位绝对地址 BIU根据EU请求,将操作数的20位物理地址传递给存储器 BIU取来操作数经总线控制逻辑传送到内部EU数据总线 EU将取来的操作数从内部总线送入ALU,进行指令指定的操作 EU运算出的结果,经内部总线送到指定的位置,若需要传送给存储器,则由EU请求BIU产生20位实际目标地址,将结果写入存储器,.,存储器和I/O管理,(四)存储器和I/O管理 Intel 8086为标准的16
9、位微处理器,20根地址总线管理1MB的存储空间,用低16根地址总线来管理64K的I/O端口地址。 存储器的分段管理,由于8086内部寄存器和ALU均是16位,为了方便20位地址管理,在8086对存储器的管理设计中,采用了分段管理技术。,分段管理技术 8086把1MB的存储器按照使用需要分成若干段,每段的大小不超过64K(216),把每段起始位置的20位实际物理地址中的高16位称为段地址(段基址),每段中某个存储单元距段起始位置的偏移量称为偏移地址。段地址和偏移地址合称为逻辑地址。,.,逻辑地址与物理地址,逻辑地址与实际物理地址 对存储器中任一位置的访问都是在该位置所属段的段基址下进行的: 逻辑
10、地址形式为 段基址:段内偏移 (物理地址)20 = (段基址)*16 + (段内偏移) (物理地址)20 = 段基址左移4位 + 段内偏移 同一个实际物理地址可以采取不同的逻辑地址形式表示,即不同段可以相互重叠或重合,但段内地址连续。,例1.设(CS)=4232H ,(IP)=66H,.,I/O端口地址管理,I/O端口地址管理 计算机“端口”是英文port的义译,可以认为是计算机与外界通讯交流的出口。其中硬件领域的端口又称接口。 8086对I/O端口操作,需要专门的IN、OUT指令,并且只能 通过累加器(AX/AL)来完成。 8086CPU的I/O端口寻址采用16位地址线,用16位数据线传送数
11、据,寻址64KB地址空间. 8086CPU的I/O端口的地址范围是0000 0FFFFH,.,段超越,(五)段超越 段寄存器(CS、DS、ES、SS)与地址指针寄存器(SP、BP、 SI、DI)默认是隐含配对使用,但也允许段超越。,.,8086引脚信号和工作模式,第2.2节 8086引脚信号和工作模式 8086引脚信号和功能 20根AB/16根DB分时复用;先传地址,后传数据 两种工作模式,由 引脚决定 最小模式:系统中只有一个处理器; 为高电平 最大模式:系统中包括两个或多个处理器; 为低电平 不同模式下,部分引脚定义不同,.,8086引脚图,(一)8086引脚图,8086 CPU为40引脚
12、 双列直插(DIP)封装,.,8086引脚分类图,.,最小模式引脚信号,(二)最小模式下引脚信号和功能 AD0 AD15: 地址数据复用总线 双向,三态,高电平有效。分时传送16位数据和地址的低16位。由ALE锁存地址信息。 A16/S3 A19/S6: 地址状态复用引脚 输出,三态,高电平有效。分时输出地址的高4位或CPU当前状态。地址信息由ALE锁存。 BHE/S7: 高8位数据总线允许/状态复用引脚 输出,三态,低电平有效。BHE为低电平表示高8位数据线D15D8上数据有效,BHE由ALE锁存。BHE和A0可用于分别选中奇偶地址,并控制读/写一个字或者字节。,.,引脚信号和功能,ALE:
13、 地址锁存允许信号 输出、高电平有效。表示总线上的信息是地址信息。 M/IO: 存储器/输入输出口控制信号 输出,三态。高电平表示当前的信息是存储器地址信 息;低电平表示当前的信息是I/O口地址信息。 RD: 读信号 输出,三态,低电平有效。表示CPU正在从存储器或I/O口读入信息。 WR: 写信号 输出,三态,低电平有效。表示CPU正向存储器或I/O口输出数据。,.,引脚信号和功能,DT/R: 数据收发信号 输出,三态,高电平表示CPU正在发送数据;低电平表示CPU接收数据 DEN: 数据允许信号 输出,三态,低电平有效。表示CPU正在进行数据收发操作 INTR: 可屏蔽中断请求信号 输入,
14、高电平有效。表示外部向CPU提出中断申请。 INTA: 中断响应信号 输出,低电平有效。表示外设的中断申请得到响应。 NMI: 非屏蔽中断申请信号 输入,上升沿有效。表示外部有非屏蔽中断申请。非屏蔽中断不受软件控制,CPU必须响应。,.,引脚信号和功能,HOLD: 总线保持请求信号 输入,高电平有效。表示其他模块(如DMAC)申请占用总线 HLDA: 总线保持响应信号 输出,高电平有效。表示CPU已让出总线。 READY:准备好信号 输入,高电平有效。高电平表示存储器或I/O口已准备好接 收数据,外部使READY为低电平CPU要插入等待周期。 TEST: 测试信号 输入,低电平有效。有效时CP
15、U退出WAIT指令。,.,引脚信号和功能,RESET: 复位信号 输入,高电平有效,至少保持4个时钟周期的高电平。复位时CPU停止现行操作,并开始进行初始化: 标志寄存器FLAG,IP,DS,SS,ES及指令队列均清零; CS设置为FFFFH,复位结束时CPU从FFFF0H开始执行程序 CLK: 时钟信号 8086 4.77MHZ T=210ns;单相,占空比为1/3。 VCC,GND: 电源及地 单+5V,满足TTL规范,.,最大模式引脚信号,(三)最大模式下引脚信号和功能 最大模式下8086有8个控制信号被重新定义,此时系统中可接入协处理器8087或8089。 S2,S1,S0:总线周期状
16、态信号 输出,三个信号组合产生系统控制信号,由总线控制器8288译码。,.,最大模式引脚信号,LOCK:总线封锁信号 三态,输出,低电平有效。有效时禁止其他部件占用总线。 RQ0/GT0,RQ1/GT1:总线请求/允许信号 双向,低电平有效。有两个总线请求与总线响应信号,支持多处理器工作。 QS1,QS0:指令队列状态信号 输出,两个信号组合指示指令队列状态。,.,最小和最大模式引脚对比,最小和最大模式下不同定义引脚对比 最小模式最大模式 HOLDRQ0/GT0 HLDARQ1/GT1 WRLOCK M/IOS2 DT/RS1 DENS0 ALEQS0 INTAQS1,.,8086与8088的
17、区别,8086与8088在引脚上的区别 8086微处理器 8088微处理器 16位AB复用 8位AB复用 BHE高八位数据允许 SS0/高电平 M/IO引脚选择存储器/IO口 M/IO引脚选择存储器/IO口,.,最小模式下系统总线连接,系统总线 (一)最小模式下系统总线 最小模式下的系统总线连接,.,Intel 8282 和 Intel 8286,最小模式系统总线连接说明 Intel 8282 把AD复用引脚连接到地址总线上的8位地址锁存器。 在最小系统中,由3片8282(低电平锁存,功能同 74LS373)锁存地址A0A19和BHE。ALE为锁存信号。 Intel 8286 把AD复用引脚连
18、接到数据总线上的8位数据缓冲器。在最小系统中,由2片8286(双向缓冲器,功能同74LS245)做数据总线D15D0的缓冲器,DT/R做方向选择,DEN为选通信号。,.,读/写控制,控制信号M/IO、RD和WR完成信息传递控制。组合起来完成右面的控制。 有时也作以下处理,.,中断申请和总线保持信号,中断控制信号INTR、INTA、NMI INTR: 外部可屏蔽中断请求引脚,高电平有效 INTA: 中断响应信号,低电平有效 NMI: 不可屏蔽中断请求引脚,上升沿有效 总线控制信号HOLD、HLDA HOLD:总线保持请求引脚,高电平有效 HLDA:总线保持响应引脚,高电平有效 HLDA控制828
19、2的OE,当CPU总线保持响应时让出总线,.,最大模式下系统总线连接,(二)最大模式下系统总线 最大模式下系统总线的连接,.,总线控制器8288,总线控制器8288 8288根据8086 CPU在最大模式的状态信号S2、S1、S0建立控制时序。,8288引脚图,.,8288内部功能框图,8288内部功能框图 8288共有2组输入信号和2组 输出信号。,.,8288引脚信号,8288引脚信号说明 状态输入信号:S2、S1、S0用于接收CPU的状态信息。 控制输入信号: CLK:系统时钟输入引脚,使得8288与CPU及整个系 统同步。 AEN:芯片工作允许,低电平有效。多处理器系统中 由总线仲裁器
20、控制8288工作。单处理器中, AEN直接接地。 CEN:片选信号,CEN为高电平允许8288工作,否则 禁止工作。 IOB:工作方式选择,IOB接地,8288为单处理器工 作方式;IOB接+5V为多处理器工作方式。,.,8288引脚信号,控制输出信号 ALE、DT/R、DEN 与最小模式下信号相同,仅DEN极性相反,用于锁存地址和数据总线缓冲。 MCE/PDEN 总线主模块允许/外设数据允许 单处理器工作时为MCE,用于控制主从方式时工作芯片间的协调工作。 多处理器系统中为PDEN,作数据总线收发器的开启信号。,.,8288引脚信号,输出命令信号 MRDC 读存储器 此信号用来通知存储器将所
21、寻址的存储器单元中的数据送到数据总线上。 MWTC 写存储器 此信号用来通知存储器接收数据总线上的数据,并将数据写入所寻址的单元中。 IORC 读I/O口 此信号用来通知I/O接口将所寻址的端口中的数据送到数据总线。,.,8288引脚信号,IOWC 写I/O 此信号用来通知I/O接口接收数据总线上的数据,并将数据送到所寻址的端口中。 AMWC 提前写存储器命令 功能与MWTC完全一样,只是比MWTC命令提前一个时钟周期发出。 AIOWC 提前写I/O口命令 功能与IOWC完全一样,只是比IOWC命令提前一个时钟周期发出。 AMWC和AIOWC命令是为了让一些较慢的设备或存储器能够得到一个额外的
22、时钟周期去执行写入操作。 INTA 可屏蔽中断响应信号 与最小模式下含义相同,.,最大模式下连接说明,最大模式下系统总线连接说明 8086的S0,S1,S2连接8288,由8288译码产生总线控制 MEMR: 存储器读信号 MEMW: 存储器写信号 IOR: I/O读信号 IOW: I/O写信号 INTA: 中断响应信号 由8288产生ALE信号,锁存地址A19A0和BHE信号 由8288产生的DT/R控制缓冲器8286的数据传输方向,由DEN和INTA任一有效打开三态门。 INTR和NMI与小模式相同,.,最大模式下连接说明,8288的AEN和IOB接地,CEN接+5V 三片8282的OE端
23、: 在有DMA芯片(8237)的系统中,接AEN_8237,DMA占用总线时,在AEN_8237上输出高电平,禁止CPU占用AB 在没有DMA芯片的系统中直接接地, 最小模式下的HOLD和HLDA信号在最大模式下变成了RQ0/GT0、RQ1/GT1。,.,最大模式下连接说明,8086和8088在工作电路上的区别 最小模式 M/IO和M/IO不同,前者为8086的信号,后者为8088的信号。 BHE引脚为状态引脚SS0; 8286用一片即可 最大模式 BHE不用,接为高电平 8286用一片即可,.,Intel 8284,第2.3节 8086操作时序 Intel 8284及系统时钟电路 (一)时钟
24、发生器Intel 8284 Intel 8284引脚图 8086/8088内部无时钟发 生器,所使用时钟由8284提供,.,8284内部逻辑图,8284内部逻辑图,.,8284引脚功能,8284引脚及功能 时钟信号 X1、X2:内部震荡器,外接晶体即可震荡。 EFI:外部时钟输入端 F/C:时钟选择端,高电平选择外时钟,低电平选择 内时钟 OSC: 内部时钟同频信号。 PCLK:输入时钟6分频信号,占空比1/2 CLK: 输入时钟3分频信号,占空比为1/3。为8086 提供时钟 CSYNC:外部时钟同频信号。使用内部时钟时, CSYNC接地;若CSYNC为高电平,则8284内部 逻辑停止输出。
25、,.,8284引脚功能,8284所产生的信号有三个:OSC、CLK、PCLK。在多CPU系统中,需要使所有的时钟同步,因此设置了CSYNC 复位逻辑 输入RES经斯密特触发器整形后,由系统时钟同步产生RESET信号,给计算机系统复位。 准备好控制逻辑(输出READY信号) 准备好控制电路有两组控制信号RDY1.AEN1和RDY2.AEN2,由ASYNC控制是否多插入一个时钟周期。ASYNC为低电平时,则多插入一个时钟周期。 RDY1、RDY2:外设准备好输入信号 AEN1、AEN2:允许外设工作信号 ASYNC:同步级数选择信号,.,8086时钟电路,(二)8086时钟电路 电路说明: 时钟使
26、用8284片内震荡器,晶振为14.31818MHZ。8086 CPU时钟为4.77MHZ。OSC和PCLK供系统其他部件使用,.,8086时钟电路,电源正常工作后给出PWRGOOD信号,使系统复位。若电源无此信号,则可使用阻容复位电路。 CPU的READY信号由8284给出,提供一个周期的延时。DMAWAIT和RDY/WAIT由接口和存储器读写逻辑产生。,.,微机启动过程,(三)微机启动过程 微处理器接收到(连续4个T)RESET信号,进行复位,开始执行初始化,CS置0FFFFH,IP置为0,ISQ清空,其余寄存器为0; 从存储器FFFFH:0000H取第一条指令,一般在此处放一条跳转指令,例
27、如JMP F000H:E05BH,跳转到系统复位程序开始的位置; 判断 0040H:0072H处的数据是否是1234H,如果是,则不进行硬件自检,否则进行硬件自检; 从磁盘的0面0道1扇区装入引导程序,装到0000H:7C00H,执行引导操作; 按引导程序的指令,顺序装入其他程序模块,完成操作系统的引导操作; 注:在3、4步之间微机还会检查在C0000H开始的扩展ROM空间中是否有程序,如果有,并且校验正确,则先执行这些程序,.,时钟周期,8086的操作和时序 (一)时钟周期、总线周期和指令周期 计算机是在时钟脉冲CLK统一控制下一个节拍一个节拍地工作。 时钟周期 T(T状态) 时钟脉冲的一个循环时间叫做一个时钟周期。每个时钟周期T又称为一个“状态”。它是CPU工作的最小时间单位,所有操作都以这个时钟周期为基准,是计算机系统工作速度的重要标志。 8086 CPU的F=4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 外研版八年级上英语学生评估计划
- 茶艺师线上培训教学大纲与计划
- 工业自动化项目实施的风险分析及对策措施
- 七年级书法教具准备计划
- 2025文化遗产保护资料保密计划
- 湘教版五年级下册音乐教学计划
- 上学期家长学校多元文化教育计划
- 机关作风与效能建设促进基层治理现代化的心得体会
- 以形致知:地貌模型在中学地理教学中的策略与实践
- 以应用案例教学为翼育初中生信息社会责任之魂
- 江苏省南京市六校联合体2024-2025学年高一下学期期末考试物理试卷
- DB64∕T 1914-2023 装配式混凝土结构技术规程
- 2025年黑龙江省龙东地区中考语文试卷真题(含标准答案解析)
- 冠心病不稳定型心绞痛护理查房讲课件
- 微风发电可行性研究报告
- 体育课期末课程总结汇报
- 新生儿呼吸机相关性肺炎的防控
- 儿童篮球教学课件视频
- 道路运输行业员工安全考试试卷及答案
- 注塑公司规章管理制度
- 汽车自适应前照等(AFS)系统
评论
0/150
提交评论