内部结构及引脚功能.ppt

上传人:牧羊曲112 文档编号:5929143 上传时间:2023-09-05 格式:PPT 页数:48 大小:392.50KB
返回 下载 相关 举报
内部结构及引脚功能.ppt_第1页
第1页 / 共48页
内部结构及引脚功能.ppt_第2页
第2页 / 共48页
内部结构及引脚功能.ppt_第3页
第3页 / 共48页
内部结构及引脚功能.ppt_第4页
第4页 / 共48页
内部结构及引脚功能.ppt_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《内部结构及引脚功能.ppt》由会员分享,可在线阅读,更多相关《内部结构及引脚功能.ppt(48页珍藏版)》请在三一办公上搜索。

1、,M/,微型计算机原理与接口技术第5版第2章 8086 CPU,本章主要内容2.1 8086 CPU的内部结构(内部组成、寄存器结构)2.2 8086/8088 CPU的引脚功能(引脚特性和作用)2.3 8086的存储器组织2.4 8086的工作模式和总线操作,3,典型微处理器的主要性能指标主频:CPU的时钟频率外频:系统总线的工作频率(系统时钟频率)倍频:主频与外频之比的倍数;主频=外频倍频内存总线速度:CPU与二级高速缓存和内存之间的通信速度扩展总线速度:CPU和外部设备交换数据的速度地址总线宽度:CPU可直接寻址的内存空间大小数据总线宽度:一次传输的数据位数高速缓存:介于中央处理器和主存

2、储器之间的高速小容量存储器。,微处理器性能简介,Intel系列的CPU采用向下兼容的策略,每一种新的CPU都对原有的系列产品保持兼容,从而使此前的软件都能继续运行。CPU的性能指标最主要有以下两个:1.字长:指CPU能同时处理的数据位数,也称为数据宽度。字长越长,计算能力越高,速度越快,但集成度也要求越高,工艺越复杂。8080(8位),8086(16位),80286/386/Pentium(32位),Itanium(64位)。2.主频:即CPU的时钟频率。主频越高,运算速度越快。8086(10MHz),P4(目前最高3GHz)。为了使大家深入了解CPU的基本原理和关键技术,并且了解CPU设计的

3、创新点,本课程先以8086为例,介绍 CPU的基本原理和关键技术,然后再介绍80386的主要技术,最后介绍Pentium 的技术要点。,16位和32位微处理器,5,微处理器的基本功能(1)指令控制(2)操作控制(3)时间控制(4)数据加工,微处理器性能简介,6,8086CPU的基本性能指标(1)16位微处理器;(2)采用高速运算性能的HMOS工艺制造,芯片上集成了2.9万只晶体管;(3)使用单一的+5V电源,40条引脚双列直插式封装;(4)时钟频率为5MHz10MHz,基本指令执行时间为0.3ms0.6ms(5)16根数据线和20根地址线,可寻址的地址空间达1MB(6)8086可以和浮点运算器

4、、输入/输出处理器或其他处理器组成多处理器系统,从而极大地提高了系统的数据吞吐能力和数据处理能力。Intel 8086微处理器内部组成结构 8086微处理器从功能上可以划分为两个逻辑单元:(1)执行部件EU(Execution Unit)(2)总线接口部件BIU(Bus Interface Unit),8086微处理器的寄存器结构 8086可供编程使用的有14个16位寄存器,按其用途可分为3类:(1)通用寄存器(2)段寄存器(3)指针和标志寄存器8088的内部结构与8086基本相同,不同点:(1)8086的指令队列为6字节,8088为4字节;(2)8086 BIU的外部数据总线为16位,而80

5、88为8位。8086的结构8086CPU内部结构框图如下页图2.1所示。,8.1.1 8086 CPU内部结构及工作过程,8086内部结构,8086 CPU由两部分组成:总线接口单元(Bus Interface Unit,BIU)BIU负责CPU与内存和I/O端口间的数据交换。BIU先从指定内存单元中取出指令,送到指令队列中排队,等待执行。执行指令时所需的操作数,也可由BIU从指定的内存单元或I/O端口中获取,再送到EU去执行。执行完指令后,可通过BIU将数据传送到内存或I/O端口中。,8086内部结构,BIU的特点:8086/8088的指令队列分别为6/4个字节,在执行指令的同时,可从内存中

6、取出后续的指令代码,放在指令队列中,可以提高CPU的工作效率。地址加法器用来产生20位物理地址。8086可用20位地址寻址1M字节的内存空间,而CPU内部的寄存器都是16 位,因此需要由一个附加的机构来计算出20位的物理地址,这个机构就是20位的地址加法器。例如:CS0FE00H,IP0400H,则表示要取指令代码的物理地址为0FE400H。,8086内部结构,指令执行单元(Execution Unit,EU)EU负责执行指令:指令执行部件完成指令译码和指令执行的工作。它先从BIU的指令队列中取出指令,送到EU控制器,经译码分析后执行指令。EU的算术逻辑单元(Arithmetic Logic

7、Unit,ALU)完成各种运算。BIU与EU的动作协调原则 总线接口部件(BIU)和执行部件(EU)按以下流水线技术原则协调工作,共同完成所要求的信息处理任务。,2.8086 CPU的工作过程,大致分以下几步:1)先执行读存操作,从给定地址单元中取出指令,送到先进先出的指令队列中等待执行。存储器的物理地址=CS16+IP,在地址加法器中形成。2)执行单元EU从指令队列中取走指令,经EU控制器译码分析后,向各部件发控制命令,以完成执行指令的操作。此时EU不需要使用外部总线,BIU可将6字节的后续指令送到指令队列,将指令队列填满。,8086工作过程,3)当指令队列已满,EU在执行指令,未向总线接口

8、单元BIU申请读/写内存或I/O操作时,BIU处于空闲状态。4)指令执行过程中,若需对存储器或I/O端口存取数据,EU就要求BIU去完成相应的总线周期。例如,EU执行从内存读1个数据的指令时,就经内部16位数据总线将操作数偏移地址送到BIU,与BIU中的段地址一起,由地址加法器形成存储单元的物理地址,再从指定单元取出数据送到控制器EU,由EU根据指令要求,发控制命令,完成存储器读总线周期。,8086工作过程,5)如遇到JMP或CALL指令,则指令队列中的内容作废,按新的转移地址取指令。6)算术逻辑部件ALU完成算术运算、逻辑运算或移位等操作。参加运算的操作数可从外存、I/O端口或EU内部的寄存

9、器等获取。运算结果送到EU或BIU的寄存器中,也可由BIU写入存储器或I/O端口。本次操作的状态反映在标志寄存器FLAGS中,如进位和溢出等。,8086工作过程,8086 CPU中,BIU和EU是分开的,取指令和执行指令可重叠进行(JMP、CALL指令除外),这种重叠的操作技术称为流水线(Pipeline),能用来提高程序的运行速度。在高档微处理器中有多条流水线。,BIU状态(1)将指令按序取入指令队列(指令队列中只要有两个以上空,就取指令)。(2)响应EU的总线周期,完成访问存储器、I/O口。(3)空闲状态(指令队列不空,也无EU的总线的请求)EU状态(1)从BIU指令队列前部取出指令,经指

10、令译码后,执行指令。(2)访问存储器、I/O口,向BIU提出总线周期申请。(3)BIU指令队列空时,EU处于等待状态。,2.1.1 8086 CPU内部结构及工作过程2.1.2 8086 CPU内部寄存器,2.1 8086 CPU的内部结构,2.1.2 8086 CPU内部寄存器,内部寄存器存放运算中的操作数、操作数地址、中间结果及最后结果。存取速度比存储器快许多。编程时须了解各寄存器的功能和用法。8088与8086内部寄存器完全相同。,8086寄存器,1.数据寄存器16位数据寄存器 AX、BX、CX、DX,存放16位数据信息或地址信息。每个16位寄存器也可分成2个8位寄存器来使用:AL、BL

11、、CL、DL,AH、BH、CH、DH。只能存放8位数据,不能存放地址。,8086寄存器,数据寄存器也可有专门用途(详见第3章)例如AX(Accumulator)累加器,在编程中用得最多;AX、AH和AL在乘、除法中有专门用途;BX(Base)基地址指针,可存放偏移地址;CX(Count)计数寄存器,在循环操作时作计数器用,用于控制循环程序的执行次数;DX(Data)数据寄存器,在乘、除法及I/O端口操作时有专门用途。,8086寄存器,2.地址指针和变址寄存器地址指针和变址寄存器SP、BP、SI、DI以及基址寄存器BX,可与段寄存器配合使用,一起构成内存的物理地址。这些寄存器存放段内地址的偏移量

12、(Offset),与段寄存器配合后,可实现灵活的寻址。主要在堆栈操作、字符串操作和访问存储器时使用。,8086寄存器,堆栈指针SP(Stack Pointer)和基址指针BP(Base Pointer)可与堆栈段寄存器SS(Stack Segment)联合使用,用于设置或访问堆栈段。源变址寄存器SI(Source Index)和目的变址寄存器DI(Destination Index)具有通用寄存器的功能,通过SI、DI以及基址寄存器BX,可在内存中灵活寻找存储器操作数。在字符串运算中,可由DS:SI指向源串数据,ES:DI指向目的串,实现串数据传送等操作。,8086寄存器,3.段寄存器8086

13、/8088用分段技术寻址,用一组段寄存器将1MB空间分成若干逻辑段,每段64KB,段内设偏移地址。8086/8088内部设置了4个16位的段寄存器:代码段寄存器CS(Code Segment)数据段寄存器DS(Data Segment)堆栈段寄存器SS(Stack Segment)附加段寄存器ES(Extra Segment)段寄存器存放各段始址的高16位,称为段基地址或段基址。段基址与段内偏址Offset(SP、BP、SI、DI、BX)组合可形成20位物理地址。,8086寄存器,4.指令指针IP(Instruction Pointer)IP指向将要执行的下条指令的偏移地址。下条将要执行指令的

14、地址由CS:IP决定。程序运行时,每当CPU从代码段中取出1字节指令代码后,IP就自动+1。用户程序不能对IP进行存取,只能由BIU自动修改。,8086寄存器,5.标志寄存器标志寄存器FLAGS设置了9个标志位,格式:,CF、PF、AF、ZF、SF和OF为状态标志,用来表示指令执行后的结果或状态特征,转移指令根据它们来控制程序走向;TF、IF和DF为控制标志,由程序设置或清除。,1)进位标志CF(Carry Flag)最高位向前一位产生进位或借位时,CF=1,否则CF=0。只有在两个无符号数进行加减运算时,CF标志才有意义;移位操作将影响CF标志;执行STC指令可使CF置1,CLC指令使CF清

15、0,CMC指令使CF标志取反。2)奇偶校验标志PF(Parity Flag)PF标志也称为偶标志。若本次运算结果低8位有偶数个1(如01101010B),则PF=1,否则PF=0。,8086寄存器,3)辅助进位标志AF(Auxiliary Flag)AF标志也称为半进位标志。在8位加减运算中,低4位向高4位有进位或借 位,AF=1,否则AF=0只有在BCD数运算时AF才有意义。利用调整 指令可对运算结果进行调整。,8086寄存器,例2.1 设 AL=BCD数14,BL=BCD 数9,用减法指令求两数之差。,低4位向高4位有借位,AF=1,需用减法调整指令 DAS进行“减6”调整。BCD数进行加

16、法运算时,用加法调整指令DAA,自动进行“加6”调整运算。,8086寄存器,4)零标志ZF(Zero Flag)运算结果为0,则ZF=1,否则ZF=0。5)符号标志SF(Sign Flag)也称负标志。运算结果最高位为1,则SF=1,表示该数为负数;否则SF=0,表示该数为正数。6)溢出标志OF(Overflow Flag)带符号数运算时,结果超出了机器能表示的范围,称为溢出。溢出时OF=1,否则OF=0。字节数据的范围为-128+127,字数据范围为-32768+32767。OF标志只有在带符号数运算时才有意义。,8086寄存器,例2.2 两个带符号数(+105+50=155)相加,如何影响

17、各标志位?,运算后各标志位状态如下:CF=0,无进位PF=0,结果有奇数个1 AF=0,无半进位ZF=0,结果非0 SF=1,结果为负数 OF=1,溢出(两个正数相加,结果变成了负数-101)如果把数当成无符号数,则不考虑SF和OF标志,运算结果为155,是正确的。假如两个无符号数相加后CF=1,则进位也应算作结果,不能丢掉。,例2.3 溢出与自然丢失之间的区别。求(-50)和(-5)之和:,运算结果:两数之和为-55,SF=1(负数),OF=0(无溢出),结果正确。虽然CF=1,但它会“自然丢失”,带符号数相加时,判断 CF=1?是没有意义的。8位寄存器或存储器位数不够用时,可用16位运算,

18、数字较大时还可采用双字运算。,什么数是正数、负数、带符号数、无符号数和BCD数?实际由编程人员确定;如果你把参加运算的数当成带符号数,运算后可去查SF、OF标志;如果当成无符号数,运算后就去查CF标志;如果当成BCD数,运算后就去查AF标志;不管参加运算的数是什么类型,都可查ZF、PF标志。,8086寄存器,7)陷阱标志TF(Trap Flag)若TF=1,CPU处于单步工作方式。每执行完一条指令,自动产生一次单步中断,将寄存器、存储器等内容显示在屏幕上。程序员可查看本条指令执行后的结果,以便逐条检查指令执行结果。若TF=0,则程序正常运行。8)中断标志IF(Interrupt Flag)IF

19、=1时,允许CPU响应可屏蔽中断,IF=0时,禁止响应该中断。执行STI指令可使IF置1,CLI指令使IF清0。,8086寄存器,9)方向标志DF(Direction Flag)控制字符串操作指令中地址指针变化的方向。若DF=0,串操作时地址指针SI、DI自动递增;若DF=1,SI、DI自动递减。CLD指令使DF=0,STD指令使DF=1。,8086寄存器,2.2 8086 CPU的引脚功能,()最大模式信号,数据传输方向,低电平有效,1.AD15AD0(Address Data Bus)地址/数据总线,双向、三态、分时复用。CPU访向内存或I/O设备时,先在AD线上传送地址信号,并锁存起来,

20、再传送数据信号,在时间上把地址/数据信号分开。8088只需传送8位数据,只有AD7AD0为地址/数据线,A15A8上只传送地址信号。,2.A19/S6A16/S3(Address/Status)地址/状态线,先传送高4位地址A19A16,后传送状态信号S6S3。在T1周期用作高4位地址A19A16,存储器操作时需锁存;I/O操作时,高4位无效,仅用A15A0寻址。在T2T4周期,用作状态信号S6S3。其中S60;S5=1允许可屏蔽中断,S5=0禁止;S4S3指出当前使用的段寄存器:,3.(Read)读信号。当=0时,允许CPU从存储器或I/O端口读出数据。4.(Write)写信号。当=0时,允

21、许CPU向存储器或I/O端口写入数据。5.M/(Memory/Input and Output)存储器或I/O端口控制信号。它为高电平时访问内存,低电平时访问I/O端口。8088该引脚为IO/=1 访I/O端口,IO/=0 访存。,6.CLK时钟信号,是外部时钟产生器8284A提供的基本定时脉冲。8086:fCLK=5MHz8086-1:fCLK=10MHz,8086-2:fCLK=8MHz7.RESET复位信号,至少要维持4个时钟周期。复位后CPU停止所有操作,总线无效;使DS、ES、SS、FLAGS、IF清0,CS:IP=FFFF:0000H;使指令队列变空,禁止中断。复位结束后,CPU执

22、行重启动过程。,8.与中断有关的信号1)INTR(Interrupt Request)可屏蔽中断请求信号当INTR=1时,若FLAGS的IF=1,则允许CPU响应可屏蔽中断;若IF=0,则不能响应。2)NMI(Non-Maskable Interrupt)不可屏蔽中断请求信号这类中断不能用软件屏蔽,也不受IF标志的影响。3)(Interrupt Acknowledge)中断响应信号。是在CPU响应外部可屏蔽中断请求后,向外设发出的回答信号。,9.HOLD(Hold Request)HLDA(Hold Acknowledge)总线保持请求/总线保持响应信号,这两个信号在DMA操作时使用。10.A

23、LE(Address Latch Enable)地址锁存允许信号。11.DT/(Data Transmit/Receive)数据发送/接收信号,用来控制数据传送的方向:,CPU用写操作向外部发送数据;,CPU读取外部传送过来的数据。,12.(Data Enable)数据允许信号。=0才允许CPU发送或接收数据。13.READY准备就绪信号。READY=0,被访问的存储器或I/O端口还未准备好,T3周期结束后自动插入等待周期Tw。READY=1,已准备好,则进入T4周期,完成数据传送。14.测试信号。,15.最小模式/最大模式复用信号图2.1中,2431引脚为最小/最大模式复用信号,下面是带()

24、的最大模式信号。1)QS1、QS0(Instruction Queue Status)指令队列状态信号。指示CPU中指令队列的当前状态组合功能:,2)(Bus Cycle Status)总线周期状态信号。CPU将它们传送给8288总线控制器,经8288译码后产生CPU的总线周期类型信号:,3)总线封锁信号。4)、(Request/Grant)总线请求信号输入/总线请求允许信号输出。,16./S7(Bus High Enable/Status)高8位总线允许/状态信号,它用在8086中。低电平时,高8位数据总线D15D8有效。状态位S7始终为1。17.8088最小模式信号,相当于最大模式下的S0信号。、组合产生的总线类型与 组合产生的信号一样,见表2.3。,18.MN/(Minimum/Maximum)最小/最大模式选择信号。MN/接+5V,CPU工作于最小模式,组成单处理器系统。MN/接地,CPU工作于最大模式,支持构成多处理器系统。19.Vcc和GNDVcc电源输入,为CPU提供+5V电源。GND是接地引脚。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号