您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > 微机原理与接口技术第2章 微处理器系统结构
2.1Intel8086/8088微处理器2.280X86高档微处理器思考与练习题第2章Intel80X86微处理器掌握16位微处理器的内部结构,基本工作过程;•熟悉和理解16位微处理器的封装引脚及其功能作用;•理解16位CPU的最大工作方式和最小工作方式的含义;•掌握各种寄存器的用途,能熟练地运用各种寄存器编程;•理解指令预取和指令流水线作业的意义。本章重点提示:微处理器(Microprocessor),是采用大规模或超大规模集成电路技术做成的半导体芯片,上面集成了计算机的主要部件:运算器、控制器、寄存器组、总线和总线缓冲器。整个微型计算机硬件系统的核心就是微处理器,所以它又称为中央处理器(CentralProcessingUnit),即CPU。高性能的CPU还有:指令预取部件,指令译码部件、地址形成部件、存储器管理部件等。若字长8位,即一次能处理8位数据,则称为8位CPU,如Z80的CPU;若字长为16位,则称为16位CPU,如8086/8088、80286的CPU等。图3-1是一个典型的8位微处理器的内部结构,它一般由算术逻辑运算单元、寄存器组和指令处理单元等几个部分组成。图3-18位微处理器内部结构负责CPU进行各种运算,包括算术运算和逻辑运算。算术逻辑运算单元(ALU,ArithmeticLogicUnit)是运算器的核心,累加器是CPU中工作最频繁的寄存器。一.运算器ALU的基本组成是一个加法器。ALU所进行的运算中,多数操作需要两个操作数,比如“加”和“逻辑与”运算。但是,也有些运算只要一个操作数,比如“增量”和“逻辑非”运算。1.算术运算:可进行无符号数和带符号数的加、减、乘、除运算,符号数采用补码表示,减法通过求负数的补码而变成加法运算。还可进行BCD码运算。乘、除可以通过多次重复加、减和移位实现。1101采用部分积左移和加法1011可完成二进制乘法。————11011101←部分积左移0000+.1.1.0.1————————10001111例如:1311=143=8FH浮点数运算可以用软件实现。也可以专门生产浮点运算部件和浮点微处理器,并设有专门的浮点运算指令,可进行32位或64位浮点加、减、乘、除运算。Pentium处理器已把浮点处理器与主处理器集成到一个芯片上。早期的浮点处理器有:8087、80287、80387协处理器。2.逻辑运算:指逻辑与、逻辑或、逻辑非、逻辑异或,以及移位、循环移位等运算和操作。3.浮点运算:浮点数可以看作是由两个定点数组成,尾数与阶码。在对阶后可以对尾数进行运算。对8位CPU来说,由累加器提供其中一个操作数,而另一个操作数通过暂存器来提供。运算后,运算结果被返回到累加器,而运算中状态的变化和运算结果的数字特征则被记录在标志寄存器中。程序根据运算后各个标志位的情况来决定下一步走向。运算器是完成算术或逻辑运算的部件。运算器由累加器、暂存寄存器和算术逻辑单元(ALU)组成,其结构框图所示:暂存器累加器锁存器ALU标志寄存器数据总线DAA部件FlagRALU框图:3、微操作控制部件可采用组合逻辑控制,微程序控制和可编程逻辑阵列(PLA)来实现。二、控制器CTRLCTRL是发布操作命令的部件,操作的顺序需要精确的定时,其内部主要组成如下:1、指令部件包括程序计数器(PC),指令寄存器(IR),指令译码器(ID)。2、时序部件包括时钟系统,脉冲分配器。控制器的组成框图:指令周期:一条指令(的取出和)执行所需的时间称为指令周期(InstructionCycle),一条指令执行需1~5个M周期。时钟周期(Tstate):主时钟的两个脉冲前沿的时间间隔称为一个时钟周期,又称为T状态。它CPU操作的最小时间单位。机器周期:由2~5个T状态组成一个机器周期(MachineCycle),称为M周期,又叫做总线周期,用来完成一个基本操作,如MEM读/写,I/O读/写等。∬∬M2M5CLKT4T3T1T2M1机器周期指令周期(包括1~5个机器周期)指令周期、机器周期与时钟周期的关系如下图:三、总线与总线(缓冲器)部件片外总线:CPU与外部部件之间传送信息的总线。又称为系统总线,通常系统总线分为地址总线、数据总线、控制总线,即所谓三总线结构。所谓总线是指计算机中传送信息的一组通信线,将多个部件连成一个整体。可以简单分为:片内总线:在CPU内部或部件内部各单元之间传送信息的总线(又可细分为单总线、双总线(输入/输出BUS)、多总线结构);所以同一时刻只允许一个部件向BUS发送信息。而接收数据就没有上述限制,同一时刻可允许多个部件接收数据。因为多个部件均挂在总线上,但各部件工作情况并非完全一样(有的作为信源发,有的作为接收器收)。由于数据或信息代码是用电位高低来表示,若某一时刻有几个部件同时向BUS发送数据,则BUS上的情况就成为不确定的了,电路也可能被烧毁。三态缓冲器(3态BUF)处于:低阻(高低电平)→挂BUS上;高阻→逻辑上脱开。总线缓冲器:在工作过程中,常常要求挂在BUS上的某些部件在电气连接上与BUS“脱开”,使这些部件对BUS上其它部件的工作不产生影响,为此,可在部件内部设置三态缓冲器。DATA→3态BUF→BUS;双向三态缓冲器,如数据总线缓冲器,既可发又可收数据(数据BUS是双向的)。“脱开”状态:处于高阻状态,开路状态,浮空状态;逻辑上“脱开”,物理上仍连在一起。单向三态缓冲器,如地址总线缓冲器只发地址信息,(地址BUS是单向的);总线缓冲器分为:采用总线结构的优点是:※减少信息传输线数目;※提高系统的可靠性;※增加系统灵活性;※便于实现系统标准化。寄存器阵列大致分为以下四组:1.存放待处理数据的寄存器;2.存放地址码的寄存器;3.存放控制信息的寄存器;4.起数据或地址缓冲器作用的寄存器。四、寄存器阵列(RegisterArray)在CPU内部,有一个临时存放地址和数据的寄存器阵列,是CPU内部的高速存储单元。这个阵列因CPU的不同而不同,有的称寄存器堆,寄存器多少有差别,但其功能相似。累加器(AC:Accumulator);通用REG组,A,B,C,D等。指令指针(IP)或程序计数器(PC:ProgramCounter);堆栈指示器(SP:StackPointer);其它可存放地址的寄存器(Register)例如变址REG、基址REG。1.存放地址的寄存器2.存放数据的REG数据总线缓冲REG(DBUF:DataBUSBuffer);地址总线缓冲REG(ABUF:AddressBUSBuffer)。三态,单向,内外部地址BUS之间缓冲。指令寄存器(IR:InstructionRegister)指令代码;标志寄存器(FR:FlagRegister),通常设有SF、ZF、AF、PF、CF、OF、IF、DF等标志。3.存放控制信息的REG4.起数据缓冲作用的REG2.1Intel8086/8088微处理器数据总线:16位端口地址线:16位地址总线:20位时钟频率:5MHz内存空间:CPU可直接寻址1MB内存空间指令系统:90多条指令寻址方式:7种基本寻址方式中断功能:内部中断、外部中断,256级中断工作模式:单处理器工作模式、多处理器工作模式流水线工作方式:取指令、执行指令并行进行兼容性:与8080、8085兼容2.1.18086微处理器的主要特征8088是一种准16位微处理器内部寄存器、内部运算部件以及内部操作都是按16位设计的。但对外的数据总线只有8位。8086与8088的区别3.2.18086微处理器的主要特征3.2.28086微处理的内部结构执行单元(EU)总线接口单元(BIU)①总线控制逻辑②指令指针寄存器IP③段寄存器④地址加法器⑤指令队列缓冲器1、BIU2.一部分为EU(ExecutionUnit)。专门负责分析指令与执行指令。它不与系统BUS打交道。8086CPU按功能可分为两大部分:1.一部分为BIU(BUSInterfaceUnit);专门负责取指令和存取操作数。它与BUS打交道。BIU的功能:是8086CPU与存储器或I/O设备之间的接口部件,负责全部引脚的操作。①BIU负责产生指令地址,根据指令地址从存储器取出指令,送到指令队列中排队或直接送给EU去执行;②BIU也负责从存储器的指定单元或外设端口中取出指令规定的操作数传送给EU,或者把EU的操作结果传送到指定的存储单元或外设端口中。1.总线接口单元BIUBIU内部设有4个16位的段寄存器:代码段寄存器CS(CodeSegment)数据段寄存器DS(DataSegment)堆栈段寄存器SS(StakeSegment)附加段寄存器ES(ExtraSegment)1.总线接口单元BIUBIU内部设有一个16位的指令指针寄存器IP(InstructionPointer)6字节指令队列缓冲器20位地址加法器总线控制电路1.总线接口单元BIU2.1.28086微处理的内部结构执行单元(EU)总线接口单元(BIU)①算术逻辑单元(ALU)②EU控制电路③寄存器组2.EU2.执行单元EUEU的功能:是从BIU的指令队列中取出指令代码,然后执行指令所规定的全部功能。在执行指令的过程中,如果需要向存储器或I/O传送数据,则EU向BIU发出访问存储器或I/O的命令,并提供访问的地址和数据。CPU取指过程执行单元(EU)总线接口单元(BIU)存储器DBCBABCPU向内存写数过程执行单元(EU)总线接口单元(BIU)存储器DBCBABEU取指、译码过程执行单元(EU)总线接口单元(BIU)存储器DBCBAB…取指令与执行指令操作是并行的,提高了CPU的利用率,这种重叠操作技术,提高了整个系统的运行速度。BIU与外部总线打交道,负责取指令、读写操作数、地址转换与总线控制;EU负责指令译码与执行指令的工作。8086EUBIUBUS取指1忙取指2忙执指1取指3忙执指2取指4忙执指3取指5忙执指4ttt3、8086的内部结构特点:指令的提取与执行分别由BIU和EU两部件完成,二者既独立又相互配合——并行同时工作。执指5忙3、8086的内部结构特点:EU和BIU的流水线操作:EU与BIU可独立工作,BIU在保证EU与片外传送操作数的前提下,可进行指令预取,与EU可重叠操作,它们的操作具有并行性。1、通用寄存器AX、BX、CX、DX(16位)AX(累加器)用于完成各种运算和传送移位等操作,在乘法、除法指令中约定使用AX、AH、AL存放相关数据,在I/O指令中约定使用AX、AL存放I/O数据。BX(基址寄存器)在存储器间接寻址时用于存放段内偏移地址2.1.38086微处理的内部寄存器CX(计数寄存器)在循环处理指令和串处理指令中约定使用CX存放循环次数,实现计数控制,在移位指令中约定使用CL存放移位次数DX(数据寄存器)在间接寻址的I/O指令中用于存放端口地址,在字乘法、字除法指令中也约定使用DX存放双字数据的高位部分1、通用寄存器AX、BX、CX、DX(16位)1、通用寄存器SP、BP、SI、DI(16位)用来存放操作数或偏移地址SP(堆栈指针寄存器)用来指示栈顶的偏移地址,一般用于访问堆栈的栈顶单元BP(基址指针寄存器)用来指示堆栈段某一操作数所在单元的偏移地址,一般用于访问堆栈段内任意单元SP、BP一般与SS寄存器联用以确定堆栈段中某一存储单元的地址1、通用寄存器SP、BP、SI、DI(16位)SI(源变址寄存器)用来存放源操作数偏移地址DI(目的变址寄存器)用来存放目的操作数偏移地址SI、DI一般与DS联用,用来确定数据段中某一存储单元的地址,在串操作指令中DI默认与ES联用用来存放代码段(CS)、数据段(DS)、堆栈段(SS)、附加段(ES)的段基址.2、段寄存器CS、DS、SS、ES(16位)用来存放代码段中指令的偏移地址3、指令指针寄存器IP(16位)在程序运行的过程中,IP自动加“1”,始终指向下一条指令首字节,它与CS寄存器联用确定下一条指令的物理地址,是用来控制指令序列的执行流程的寄存器6
本文标题:微机原理与接口技术第2章 微处理器系统结构
链接地址:https://www.777doc.com/doc-3358118 .html