第4章-CPU及其控制器.ppt
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CPU 及其 控制器
- 资源描述:
-
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第,4,章,CPU,及其控制器,4.2,4.1,作业,4.3,4.4,4.5,第,4,章,CPU,及其控制器,计算机组成与汇编语言,4.1,CPU,概述,4.2,指令周期,4.3,8086,微处理器,第,4,章,C,P,U,及,其,控,制,器,4.4,控制单元的设计,4.5,微处理器技术的发展,本章要点,CPU,的功能、组成和寄存器组,一条运算指令的完整执行过程,8086,微处理器的功能结构,,8086,的寄存器组,,8086,的存储器组织,组合逻辑控制器的结构和基本原理,微程序控制的基本原理,4.1 CPU,概述,4.1.1,CPU,的功能,4.1.3,CPU,的寄存器,4.1.2,CPU,的组成,4.1.1 CPU,的功能,程序是指令的有序集合。,程序被装入主存。,运行程序时,,CPU,自动地、逐条从内存取出指令并解释指令,形成一组控制信号,去指挥操作部件实现相应的操作,完成对数据的加工和处理。,同时,,CPU,自动修改指令地址,给出后继指令地址在内存中的位置,以便连续取指令并分析执行,直到该程序执行结束。,在运行过程中,CPU,还能自动处理某些紧急的异常事件。,CPU,在计算机系统中起着核心的作用,它的功能具体可归结为,5,个方面。,4.1.1 CPU,的功能,(1),指令控制:,严格控制程序的执行顺序,保证机器按照规定执行是,CPU,的首要任务。,(2),操作控制:,一条指令的执行,要涉及计算机中的若干个部件。,CPU,能够对指令进行译码产生一组控制和操作信号,传送给被控部件,并能检测各个部件发送的信号,从而协调各个工作部件实现指令所规定的操作。,4.1.2 CPU,的组成,传统,CPU,主要由控制器和运算器两大部件组成,为了配合这两部分工作,一般,CPU,内部还包含有一些寄存器。,控制器由程序计数器,PC,、地址寄存器,AR,、指令寄存器,IR,、指令译码器,ID,、时序产生器和操作控制器等部分组成。,运算器由算术逻辑部件,ALU,、累加器,AC,、数据缓冲寄存器、寄存器组和程序状态寄存器,PSW,组成,它是数据加工处理部件。运算器接受控制器的命令完成具体的数据加工任务。,算术逻辑部件,ALU,累加器,AC,寄存器组,状态寄存器,PSW,地址寄存器,AR,缓冲寄存器,DR,指令寄存器,IR,指令译码器,ID,操作控制器,时序产生器,C,C,C,C,C,C,程序计数器,PC,C,C,C,时钟,存储器,M,输入输出接口,数据总线,状态反馈,地址总线,微操作信号,图,4.2 CPU,主要组成部件逻辑结构示意图,(图中,C,为来自控制器的控制信号),CPU,4.1.3 CPU,的寄存器,寄存器用来保存运算和控制过程中的中间结果、最后结果、控制信息和状态信息。各种,CPU,的寄存器可能有所差异,一般,CPU,都具有数据缓冲寄存器、指令寄存器、程序计数器、地址寄存器、累加寄存器和状态寄存器等,6,种寄存器。,4.1.3 CPU,的寄存器,数据和指令缓冲寄存器,DR,用来存放,CPU,从主存读来的一个指令字或一个数据字,简称缓冲寄存器。当,CPU,要将数据传送给主存时,也先将数据保存到缓冲寄存器中,再通过,DR,将数据经数据总线送到内存储器中。,可见,缓冲寄存器作为,CPU,与主存、外围设备之间的信息中转,对数据起缓冲作用,平衡,CPU,与主存、外围设备之间的操作时间差异;同时,数据缓冲寄存器为算术逻辑部件,ALU,提供另一个操作数。,1.,数据和指令缓冲寄存器,DR,4.1.3 CPU,的寄存器,程序计数器,PC,存放要取的指令地址,它具有自动计数的功能。当,CPU,按照程序计数器的内容取来指令到指令缓冲寄存器中后,程序计数器,PC,自动修改计数,指出下一条要执行的指令在主存中的存放地址。有两种修改计数值的情况:,(,1,)当,CPU,顺序执行指令时,程序计数器根据当前已取指令的长度(字节数),自动计数。,(,2,)当,CPU,执行分支转移指令时,如果是相对寻址,程序计数器的值修改为当前地址加上一个偏移量(有符号数),得到转移目的指令在主存中的地址;如果是直接寻址,则将转移指令中的绝对转移地址送给程序计数器。这样,,CPU,便按照,PC,寄存器的内容去取得转移目标的第一条指令。,2.,程序计数器,PC,4.1.3 CPU,的寄存器,CPU,取得的指令经缓冲寄存器转送给指令寄存器,IR,,由指令寄存器保存当前,CPU,要执行的一条指令,为指令译码与分析作准备。一条指令由地址码和操作码两部分组成。指令寄存器中操作码部分送指令译码器,ID,译码,地址码部分送程序计数器(对程序转移指令)或地址寄存器(以便取操作数)。,3.,指令寄存器,IR,4.1.3 CPU,的寄存器,地址寄存器,AR,用来存放当前,CPU,所要访问的主存单元或,I/O,端口的地址。当,CPU,要对主存或外围设备的信息进行存取时,必须进行地址定位。地址定位是,CPU,将地址寄存器,AR,中的地址信息传送到地址总线上,再由主存中的地址译码电路实现对要访问的主存单元定位。在地址定位的过程中,地址信号必须稳定。因此,地址信息要由一个寄存器来保存,这个寄存器就是地址寄存器。在,CPU,访问外设的过程中,地址寄存器,AR,同样实现对,I/O,端口的定位。,4.,地址寄存器,AR,4.1.3 CPU,的寄存器,简称累加器。累加器的入口是从缓冲寄存器取得要运算的源数据,或者存放来自算术逻辑单元的运算结果数据。它的数据出口是算术逻辑单元,即为算术逻辑单元提供一个操作数。之所以命名累加器,是因为算术逻辑单元最基本的操作是加法。一个运算器至少有一个累加器。有的甚至更多,如采用,2,个、,4,个、,8,个等多累加器结构。在多累加器结构的运算器中,累加器也可作通用寄存器,这些寄存器都可以为算术逻辑单元提供操作数,或存放操作结果。,5.,累加寄存器,AC,4.1.3 CPU,的寄存器,状态寄存器用来反映执行算术逻辑运算指令及各类测试指令时的运算结果状态,这些结果状态主要包括运算结果进位标志、运算结果为零标志、运算结果溢出标志、运算结果符号标志、运算结果奇偶标志等。状态寄存器与运算器直接相连,自动产生并保存各类状态标志,这些标志为后续指令的执行提供判断条件。状态寄存器还保存一些控制标志,如中断允许标志、单步标志、方向标志等。控制标志是通过专用指令设置的。,6.,状态寄存器,PSW,(,1,)取指令,程序计数器,PC,存放要取的指令地址,经地址寄存器,AR,在地址总线上发出地址信号,存储器中的指令由数据总线进入,CPU,的缓冲寄存器,存放到指令寄存器,IR,中。同时,程序计数器,PC,自动修改计数,指出下一条要执行的指令在主存中的存放地址。,一条运算指令的完整执行过程,(,2,)分析指令,CPU,对指令译码器,IR,中的指令操作码进行识别和解释,通过操作控制器产生相应的微操作信号,并由时序产生器产生相应的时序信号,控制微操作信号的作用时序。同时指令中的操作数地址码被分离出,若是存储器操作数,则将操作数地址送地址寄存器,AR,,在地址总线上发出地址信号,存储器中的数据由数据总线进入,CPU,的缓冲寄存器,并送到,ALU,输入端的数据暂存器。若是寄存器操作数,则直接送到,ALU,输入端。,一条运算指令的完整执行过程,(,3,)执行指令,由微操作信号按照相应的时序,启动算术逻辑运算部件,ALU,,完成指令规定的动作,并建立相应的状态标志存放到状态寄存器中。如果结果是存储器操作数,还要将数据通过数据缓冲寄存器写回存储器。,CPU,就是这样不断地取指令、分析指令、执行指令,如此周而复始,除非遇到停机指令,否则直到执行完一个程序的指令序列的最后一条指令。早期的,CPU,就是这样以顺序解释方式来完成程序的执行的。现代,CPU,往往基于流水解释方式,,CPU,执行程序速度快。,一条运算指令的完整执行过程,4.2,指令周期,4.2.1,指令周期的基本概念,4.2.3,指令执行的微操作流程,4.2.2,几个典型的机器周期,4.2.1,指令周期的基本概念,时钟信号,CLK,的周期长度称为时钟周期,T,,一般是机器主频的倒数。,机器周期,又称为,CPU,周期,是微处理器完成各种类型操作所花费的时间,它由若干时钟周期,T,组成。因此,时钟周期是处理操作的最基本的时间单位,它又被称为节拍脉冲或,T,周期。通常用从主存中取出一条指令的最短时间来规定机器周期。,这就是说,取指所需的时间为一个机器周期。执行一条速度最快的指令的时间,也至少需要一个机器周期。对于一些操作相对复杂的指令,则需要更多的机器周期。,1.,微处理器的基本时序,8086,的一个典型的访存读机器周期,它需要,4,个,T,周期,(,1,),T,1,周期。地址线有效,,AD,0,AD,15,、,A,16,A,19,输出,20,位地址信号,并维持一个,T,周期。此时,ALE,有效,输出一个正脉冲,在其下降沿将地址信号锁存入地址锁存器。,(,2,),T,2,周期。地址信号消失,,CPU,发出,RD,有效信号,并一直保持到,T3,周期结束。,(,3,),T,3,周期。存储器在收到地址信号,并在,RD,信号作用下,内部对地址译码选中要访问的存储单元,并将访存的,16,位数据信号送到地址,/,数据复用总线,AD,0,AD,15,上。,CPU,在,RD,信号的上升沿将,16,位数据读入,CPU,内的数据缓存器。,(,4,),T,4,周期。完成读存储器数据的任务,所有信号恢复为无效状态。,1.,微处理器的基本时序,插入等待周期,TW,,平衡,CPU,和主存速度。,通过总线对存储器或,I,O,接口进行一次访问所需的时间也是一个机器周期,叫做总线周期。,CPU,每执行一条指令至少要访问一次存储器,(,取指令,),,即至少要进行一次读存储器操作,占用一个读总线周期。,总线操作主要有:存储器读和,I,O,读操作、存储器写和,I,O,写操作、中断响应操作、总线请求等。,1.,微处理器的基本时序,指令周期,就是,CPU,从取指令到执行完一条指令的时间,它包括取指周期和执行周期两部分。对于相同的,CPU,结构,各条指令的取指过程相同,都有访存周期。,一般地,,指令周期,包括若干个,机器周期,,而一个机器周期又由若干个,时钟周期,构成。但是由于各种指令操作功能不同,指令的操作数不同,使得指令周期长短不一,有的甚至没有执行周期。如无条件转移指令“,JMP Label”,指令执行如果涉及到访存操作,将使得指令的执行时间要比不需访存的指令长,如果操作数是寄存器操作数,几乎不要一个,T,就可以取得操作数进入运算;而对存储器操作数的读写访问要花费至少,4,个,T,的访存周期,时间要长得多。,CISC,(复杂指令计算机)指令指令周期较长,2.,指令周期的基本概念,4.2.2,几个典型的机器周期,取指令周期的操作过程是:,PC,AR,,,PC+n,PC,;,Read M,,指令,IR,。,其中,,PC+n,PC,表示,程序计数器,PC,自动修改计数,指出下一条要执行的指令在主存中的存放地址。,PC,总是指向下一条要执行的指令的地址。,1.,取指令周期,4.2.2,几个典型的机器周期,所谓间址,是指指令中只给出存储器操作数的地址的地址。也就是说,指令不直接给出操作数的地址,而是给出存放操作数地址的地方。例如存放在某个寄存器中,因此要取得这个操作数,必须先访问存放操作数地址的地方,即访问相关的寄存器,从而取得操作数的主存地址,这样才能访问主存取得真正的操作数。,寄存器间址周期的操作过程是:,R(IR(OPDAD),AR,;,Read M,,,M,DR,。,其中,,,R(IR(OPDAD),表示指令寄存器,IR,的操作数地址,OPDAD,所指示的寄存器。,2.,间址,周期,4.2.2,几个典型的机器周期,IR(OP),CU,ALU,ALU,R/M,其中,指令的操作码部分,OP,经译码后,启动算术逻辑运算部件,ALU,,完成运算后的结果送入到寄存器或者存储器。,例如,指令,ADD AL,10H;,它的功能是:将寄存器,AL,的内容与立即数,10H,相加,结果存入寄存器,AL,。即:,(AL)+10H,AL,。该加法指令的,指令周期由取指令周期和执指周期两个机器周期组成。,3.,执指,周期,在取指令周期,,CPU,将指令,ADD AL,10H,(其指令机器码为,00000100 00010000,,两个字节)取出,IR,,进行译码。在执指周期,,指令的操作码部分,00000100,经译码后,,启动算术逻辑运算部件,ALU,进行加法运算,此时两个加数,寄存器,AL,和,立即数,10H,(由指令,的操作数部分,00010000,分离出)已进入运算器的两个输入端,完成运算后的结果送入到寄存器,AL,中,同时对标志寄存器设置相应的标志位,3.,执指,周期,4.2.2,几个典型的机器周期,总之,指令周期由若干个机器周期组成,所有指令周期的第一个机器周期为取指周期,每个机器周期又由若干个,T,周期组成。根据指令操作的复杂程度不同,各个机器周期所需的,T,周期数也不相同。,每种指令所需的机器周期也不相同。,4.2.3,指令执行的微操作流程,每条指令的执行实际上是在时钟周期的节奏控制下,执行一组微操作序列。,一条指令的完整执行过程可分为取指令、分析指令和执行指令三个阶段。,下面结合,图,4.2,举例说明一条指令执行的微操作流程。设,R1 R2,为寄存器组中的寄存器,,M,为寻址的存储器单元。,4.2.3,指令执行的微操作流程,例,4.1,加法指令,ADD R1,R2,,功能为:,R1R1+R2,,该指令长度为,1,字节。,解,:,加法指令,ADD R1,R2,的操作流程如下:,取指令:,PC,AR,,,PC+1,PC,;,Read M,,指令,IR,。,分析指令,:,IR(OP),CU,IR(OPDAD),即,R1,R2,ALU,执行指令:,R1+R2,R1,4.2.3,指令执行的微操作流程,例,4.2,加法指令,ADD R1,(R2),,功能为:,R1R1+(R2),,,(R2),表示用,R2,间址,即,R2,的内容是存储器地址,该指令长度为,1,字节。,解:,加法指令,ADD R1,(R2),的操作流程如下:,取指令:,PC,AR,,,PC+1,PC,;,Read M,,指令,IR,。,分析指令,:,IR(OP),CU,IR(OPDAD),即,R1,ALU,R2,AR,;,Read M,,,M,DR,ALU,。,执行指令:,R1+(R2),R1,4.2.3,指令执行的微操作流程,例,4.3,加法指令,ADD(R1),100H,,功能为:,(R1)(R1)+100H,,,(R1),表示用,R1,间址,即,R1,的内容是存储器地址,该指令长度为,2,字节。,解,:,加法指令,ADD R1,(R2),的操作流程如下:,取指令:,PC,AR,,,PC+2,PC,;,Read M,,指令,IR,。,分析指令,:,IR(OP),CU,IR(OPDAD),即,100H,ALU,R1,AR,;,Read M,,,M,DR,ALU,。,执行指令:,(R1)+100H,DR,Write M,,,DR,M,。,4.3 8086,微处理器,4.3.1,8086,微型计算机系统的硬件结构,4.3.3,8086,的寄存器组,4.3.2,8086,微处理器的功能结构,4.3.4,8086,的存储器组织,4.3.5,8086,外部引脚及功能,4.3.1 8086,微型计算机系统的硬件结构,微型计算机系统包括硬件子系统和软件子系统。,CPU,总线控制逻辑,内,存储器,接口,接口,外存储器,I/O,设备,图,4.4,微型计算机系统的硬件结构,AB,DB,CB,系统总线,输入输出子系统,由于总线是共享的传输通道,任意时刻只能有一个器件负责发送数据,所以需要总线控制逻辑来控制总线上传输信号的时序。当发生多个设备需要使用总线时,总线逻辑应具有总线仲裁功能,。,总线控制逻辑,8086,总线,执行部件,EU,总线接口部件,BIU,状态标志寄存器,AH,BL,CL,DL,BH,CH,DH,AX,BX,CX,DX,SP,BP,SI,DI,ALU,数据总线(,16,位),暂存器,ALU,EU,控制电路,1,2,3,4,5,6,CS,DS,SS,ES,内部通用,寄存器,IP,地址加法器,指令队列,AL,图,4.5 8086CPU,功能结构框图,BIU,担承着,CPU,通过总线与存储器和外设接口的联系。它由四个段寄存器,CS,、,DS,、,SS,和,ES,,指令指针寄存器,IP,、指令队列、地址加法器以及总线控制逻辑组成,主要负责,CPU,与存储器及外设之间的信息传送。具体过程是,,BIU,发出地址信号,从内存的指定部分取出指令,送至指令队列中排队;在执行指令时所需要的操作数,也由,BIU,从内存的指定区域取出,送至,EU,部分去执行。,1.,总线接口单元,BIU,4.3.2 8086,微处理器的功能结构,8086 BIU,维护着长度为,6,个字节的指令队列,(8088,的指令队列是,4,个字节,),,该队列按照先进先出的方式工作。当指令队列中出现两个字节空缺时,,BIU,会自动通过总线取指令送入指令队列,当,EU,单元对一条转移指令进行译码执行跳转时,,BIU,会自动清空指令队列,通过重新读取指令来形成新的指令队列。在大多数情况下,指令队列中至少应有一个字节的指令,这样,EU,就不必等待,BIU,去取指令。,1.,总线接口单元,BIU,4.3.2 8086,微处理器的功能结构,EU,负责执行指令,它由算术逻辑单元,ALU,、通用寄存器组、,16,位标志寄存器,(Flag),、,EU,控制电路等组成。,EU,在工作时直接从指令队列中取指令代码,对其译码后产生完成指令所需要的控制信息。,ALU,进行数据的运算,运算结果的状态保留在标志寄存器,Flag,中。,算术逻辑单元,ALU,实际上是计算机的运算器,负责,CPU,所有计算任务,主要是算术运算和逻辑运算。,ALU,有两个操作数入口。通常由累加器提供一个操作数,暂存器提供另外一个操作数,运算结果返回到累加器,而反映运算结果状态的信息被记录在标志寄存器中。,2.,执行单元,EU,4.3.2 8086,微处理器的功能结构,8086,共有,14,个寄存器供系统使用,它们分为,通用寄存器,(,包括,AX,、,BX,、,CX,、,DX,等,4,个,16,位数据寄存器,),、,指针变址寄存器,(,包括,SP,、,BP,、,SI,和,DI,等,4,个,16,位寄存器,),、,控制寄存器,(,包括,IP,和,Flag,等两个,16,位寄存器,),、,段寄存器,(,包括,CS,、,DS,、,SS,、,ES,等,4,个,16,位段寄存器,),等四类。,4.3.3 8086,的寄存器组,AX,、,BX,、,CX,及,DX,等,4,个通用寄存器,用来暂存操作数。其中,每个寄存器可以作为一个,16,位的寄存器使用,也可以作为两个,8,位寄存器单独使用。,如,AX,寄存器的低,8,位寄存器的名称是,AL,,高,8,位寄存器的名称是,AH,。类推,,BX,寄存器可分为,BL,和,BH,寄存器,,CX,寄存器可分为,CL,和,CH,寄存器,,DX,寄存器可分为,DL,和,DH,寄存器。作为通用寄存器,这些寄存器以字节或字为单位参加算术运算或逻辑运算,而且这些寄存器又有各自的习惯用法。,4.3.3 8086,的寄存器组,1.,通用寄存器,AX(Accumulator),称为累加器,所有的,I/O,指令都使用该寄存器与外设接口传送信息。,BX(Base),称为基址寄存器,在计算机寻址时,常用来存放基地址。,CX(Count),称为计数寄存器,在循环和串操作指令中用作计数器。,DX(Data),称为数据寄存器,在寄存器间接寻址的,I/O,指令中,存放,I/O,端口的地址。在做双字长乘除法运算时,,DX,与,AX,合起来存放一个双字长数,(32,位,),,其中,DX,存放高,16,位,,AX,存放低,16,位。,4.3.3 8086,的寄存器组,1.,通用寄存器,指针与变址寄存器为,SP,、,BP,、,SI,、,DI,。虽然这组寄存器也可以用来存放数据,实际上常用来存放不同用途的地址信息,经常使用它们提供段内寻址的偏移地址。,SP(Stack Pointer),堆栈指针寄存器。用它指出当前堆栈的栈顶位置,必须与堆栈段寄存器,SS,联合使用才能确定堆栈的物理地址,进行堆栈操作。,BP(Base Pointer),为基址指针寄存器。与,SS,联用,确定堆栈段中某一存储单元的物理地址,用于堆栈区中的数据进行操作,即作为堆栈中的一个基地址,访问堆栈的任意位置的存储单元,然而它不具有,SP,始终指向堆栈顶的功能。,4.3.3 8086,的寄存器组,2.,指针与变址寄存器,SI(Source Index),为源变址寄存器,与数据段寄存器,DS,联用,用于确定数据段中某一存储单元的地址。,DI(Destination Index),为目的变址寄存器,与数据段寄存器,DS,或辅助段寄存器,ES,联用,用于确定数据段中某一存储单元的地址。对,SI,和,DI,这两个变址寄存器进行增量或减量计数,作为变址寻址很方便。,4.3.3 8086,的寄存器组,2.,指针与变址寄存器,BIU,中有,4,个,16,位段寄存器,即,CS(Code Segment,,代码段寄存器,),、,DS(Data Segment,,数据段寄存器,),、,SS(Stack Segment,,堆栈段寄存器,),ES(Extra Segment,,附加数据段寄存器,),。,CS,存放当前代码段,即程序所在段的首地址。,CS,内容左移四位,(,即乘,16),,再加上指令指针寄存器中的内容,即是下一条要取出的指令地址。,DS,保存当前程序所用数据段的首地址,数据段用来保存当前程序的操作数据和变量数据。,DS,内容左移四位,再加上操作数据或变量在数据段中的有效地址,(,即偏移地址,)EA,,即为数据段指定操作单元的地址。串操作处理时,DS,作为源串所在段的段基址。,3.,段寄存器,4.3.3 8086,的寄存器组,SS,存放当前程序所用堆栈段的首地址。,所谓“堆栈”是指这样一段指定的内存区域:其存取原则是“后进先出”,即先进栈的数据后出栈。堆栈是一种非常有用的数据结构,它为保护数据、调度数据提供了重要的手段。,SS,左移四位,再加上,SP,形成堆栈栈顶的物理地址。,ES,存放辅助数据所在段的首地址。附加段在进行串操作时,作为目的段地址使用。附加段是一种附加的数据区。在串操作时,若要将串从源数据区传送到目的数据区,则,DS,保存源数据段首地址,,SI,保存源数据段偏移地址;而目的数据区在附加段中,即,ES,保存附加段首地址,,DI,保存附加段偏移地址。,3.,段寄存器,4.3.3 8086,的寄存器组,指令指针寄存器,IP(Instruction Pointer),,它是取指令专用的,16,位地址寄存器,有时也被称为“程序计数器”,PC(Program Counter),,它存放下一条要执行指令的有效地址,EA(,即指令在代码段的偏移地址,),。,IP,内容由,BIU,自动修改,通常是进行加计数修改。当执行转移指令和子程序调用指令时,,BIU,将转移的目的地址装入,IP,中。,4.,指令指针寄存器,4.3.3 8086,的寄存器组,标志寄存器,(Flag Register),是一个,16,位的寄存器,用来存放程序状态字,PSW(Program Status Word),,所以该寄存器又称状态字寄存器。,PSW,中一共定义了,9,个有效位,用来存放状态标志和控制标志。,其中状态标志有,6,个,它们分别是:,CF,、,PF,、,AF,、,ZF,、,SF,和,OF,,用来反映运算结果的状态特征,它将影响后面的操作或者作为条件转移的依据。状态标志一般是算术或逻辑运算指令执行后根据运算结果设置的。,控制标志有,3,个,它们分别是:,IF,、,DF,、,TF,,用来控制,CPU,的操作。控制标志可以用指令设置,如,IF,、,DF,标志,也可以人为通过操作设置,如,TF,标志。控制标志一旦设置,便对处理器的操作产生控制作用。,5.,标志寄存器,4.3.3 8086,的寄存器组,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0,OF,DF,IF,TF,SF,ZF,AF,PF,CF,标志寄存器的具体格式,状态标志位:,CF,(,Carry Flag,)进位标志位:,加,/,减法运算时最高位产生了进位或产生了借位:,CF=1,,否则,CF=0,。,PF,(,Parity Flag,)奇偶标志位:,运算结果中的低,8,位含“,l”,个数为偶数时,,PF=1,;为奇数时,PF=O,。,AF,(,Auxiliary Flag,)辅助标志位:,运算过程中若第,3,位向第,4,位有进位或借位时,,AF=1,,否则,,AF=0,。该标志用于,BCD,运算中的十进制调整。,状态标志位:,ZF,(,Zero Flag,)零标志位:,运算结果为,0,时,,ZF=1,;否则,,ZF=0,。,SF,(,Sign Flag,)符号标志位:,运算结果的最高位为,1,,则,SF=1,;否则,,SF=0,。常用来表示带符号数本次运算结果的正负。,OF,(,Overflow Flag,)溢出标志位:,当带符号数运算结果超出了目标单元所能表示的数值范围时,,OF=1,,否则,,OF=0,。带符号数字节运算的结果超出了,-128,+127,的范围,或者字运算的结果超出了,-32768,+32767,的范围时称为溢出。,控制标志位:,IF,(,Interrupt Flag,)中断允许标志位:,这是控制可屏蔽中断的标志,,IF=1,,允许,CPU,响应可屏蔽中断;,IF=0,,,CPU,禁止可屏蔽中断。用,STI,指令可使,IF,置,1,,,CLI,指令可使,IF,清零。,DF,(,Direction Flag,)方向标志位:,若,DF=0,,使串操作自动按增地址方式进行;若,DF=1,,使串操作自动按减地址方式进行。用,STD,指令可使,DF,置,l,,,CLD,指令可使,DF,清零。,TF,(,Trap Flag,)单步跟踪标志位:,调试程序时,可将,CPU,设置为单步工作方式:,TF=l,,即每执行完一条指令就自动产生一次内部中断,使用户可跟踪程序进行调试。若,TF=0,时,,CPU,为连续工作方式。,例,4.1,将,63B5H,与,749CH,两数相加,并说明其标志位状态。,0110 0011 1011 0101 63B5H,+0111 0100 1001 1100 749CH,1101 1000 0101 0001 D851H,运算结果为:,D851H,。结果对状态标志的影响如下:,SF=1,;,ZF=0,;,PF=0,;,CF=O,;,AF=l,;,OF=1,。,大多数情况下,执行指令后,并不对所有标志位进行改变;程序也不需要对所有标志进行检测,一般只需对其中一个或几个进行检测。,5.,标志寄存器,4.3.3 8086,的寄存器组,8086,系统中存储器按字节编址,地址编号共有,20,位物理地址,可寻址的存储器空间为,2,20,=1MB,为了用,16,位地址表示整个,1MB,的存储空间,,8086,系统的,1MB,空间被分为若干个逻辑段,每个逻辑段容量为,64KB,,段内地址,也就是段内偏移地址可从,0,号开始,最高为,FFFFH,。各个逻辑段的起始地址的低,4,位默认为,0000,。这样就可以用,16,位信息表示,20,位逻辑段起始地址。,1.,存储器的分段,4.3.4 8086,的存储器组织,8086,对逻辑段按其存储内容和功能分为,4,类:,代码段:,存储程序代码。当前运行程序的代码段起始地址保存在,CS,中。,数据段:,存储数据。当前程序所读写的操作数的数据段起始地址,一般保存在,DS,中。,堆栈段:,存储以堆栈方式读取的数据。其起始地址保存在,SS,中。,附加段:,存储辅助当前程序所读写的操作数据。其起始地址保存在,ES,中。,逻辑段之间允许部分重叠(一个段的起始地址在另一个段中)、完全重叠(两个段起始地址相同)、连续排列(一个段的起始地址紧挨着在另一个段末地址)、分离排列(两个段既不重叠也不连续)。,1.,存储器的分段,4.3.4 8086,的存储器组织,某个存储单元在存储器中的位置可以用两种方法来表示。,:,一是逻辑地址,由,16,位段地址和,16,位段内偏移地址两部分组成,,表示为:,段地址:段内偏移地址,二是直接用,20,位物理地址表示。,二者之间的关系是:,物理地址,=,段地址,10H+,段内偏移地址,2.,存储器中的逻辑地址和物理地址,4.3.4 8086,的存储器组织,举例,程序中指令的逻辑地址,可用,CS:IP,表示。,数据段中操作数的逻辑地址,可用,DS:EA,表示。,堆栈段中数据的逻辑地址,可用,SS:SP,表示。,附加段中操作数的逻辑地址,可用,ES:EA,表示。,要注意的是,一个物理地址所对应的逻辑地址不是唯一的。例如物理地址为,217A8H,的存储单元的逻辑地址,也可以是:,2100H:07A8H,或者,1B6AH:6108H,等等。,2.,存储器中的逻辑地址和物理地址,4.3.4 8086,的存储器组织,这种采用段加偏移寻址的方法的优点,除了可用较短的地址位数来表示较长的地址位数外,就是允许程序在存储器内重定位。因为段内偏移总是相对段起始地址的,所以只要程序中不使用绝对地址(物理地址)访问存储器,就可以把一个程序作为一个整体移到另一个区域。在,DOS,系统中,程序载入到内存时由操作系统来指定段寄存器的内容,而程序中的代码和数据的地址只是偏移地址,因此很容易实现程序的重定位。,2.,存储器中的逻辑地址和物理地址,4.3.4 8086,的存储器组织,有效电平指引脚起作用时的逻辑电平。为了区别,低电平有效的引脚信号在其名字上加一条上划线。,三态是指引脚除了能正常的输入或输出高、低电平之外,还能输出高阻状态。,分时复用在不同时刻,引脚上的信号具有不同的意义。这样,部分引脚具有多种功能。,信号传输方向,分双向引脚和单向引脚两种。双向引脚指该引脚即可输入又可输出,如数据线引脚,单向引脚指该引脚上的信号只能输入或者只能输出。如地址线引脚是输出引脚。为了节省引脚的数目,有的双向引脚作输出时和作输入时的含义不一样。,1.,有关概念,4.3.5 8086,外部引脚及功能,2.8086,外部引脚及其功能,GND,AD,14,AD,13,AD,12,AD,11,AD,10,AD,9,AD,8,AD,7,AD,6,AD,5,AD,4,AD,3,AD,2,AD,1,AD,0,NMI,INTR,CLK,GND,Vcc,AD,15,A,16,/S,3,A,17,/S,4,A,18,/S,5,A,19,/S,6,BHE/S,7,MN/MX,RD,HOLD(RQ/GT,0,),HLDA(RQ/GT,1,),WR(LOCK),M/IO(S,2,),DT/R(S,1,),DEN(S,0,),ALE(QS,0,),INTA(QS,1,),TEST,READY,RESET,1 40,2 39,3 38,4 37,5 36,6 35,7 34,8 33,9 32,10 8086 31,11 30,12 CPU 29,13 28,14 27,15 26,16 25,17 24,18 23,19 22,20 21,图,4.8 8086,外部引脚图,(,1,),AD,0,AD,15,(,Address Data Bus,),这,16,个引脚为分时复用的地址,/,数据线。,(,2,),A,16,A,19,S,3,S,6,(,Address/Status,),分时复用的地址状态信号线,三态输出。,(,3,),RD,(,Read,),读信号,三态输出控制信号,低电平有效。,(,4,),WR,(,Write,),写信号,三态输出控制信号,低电平有效。,(,5,),IO/M,(,IO/Memory,),三态输出状态信号,表示,CPU,当前正在访问的对象。,2.8086,外部引脚及其功能,(,6,),INTR,(,Interrupt Request,),中断请求信号,外部输入,高电平有效。外部设备通过它向,CPU,请求中断。,(,7,),INTA,(,Interrupt Acknowledge,),中断响应输出信号,低电平有效。它作为对,INTR,的应答信号。,(,8,),NMI,(,Non-Maskable Interrupt request,),不可屏蔽中断请求信号,外部输入,高电平有效。,(,9,),RESET,复位信号,外部输入,高电平有效。,RESET,信号来到时(至少延续,4,个时钟周期),将使,系统复位到初始状态并重新启动。复位后的寄存器状态如下:,标志寄存器置成,0000H,,禁止中断和单步方式。,DS,、,SS,、,ES,和,IP,寄存器置成,0000H,CS,寄存器置成,FFFFH,2.8086,外部引脚及其功能,(,10,),HOLD,(,HOLD request,),总线请求信号,外部输入,高电平有效。,(,11,),HLDA,(,HOLD Acknowledge,),总线请求响应信号,,输出,高电平有效。,CPU,检测到,HOLD,有效后,在当前总线周期结束时,使,HLDA,有效,并立即让出总线使用权。这一过程直到,HOLD,无效,此时,CPU,收回总线控制权,并使,HLDA,无效。,(,12,)一些公用引脚的含义。,GND,:地线。,Vcc,:电源引线,(+510,)V,。,CLK,:用来同步所有,8086,逻辑的时钟信号。该信号一般由,8284,时钟发生器输出。,8086CPU,的时钟频率为,5MHz,。,2.8086,外部引脚及其功能,8086,具有两种工作模式:最小模式和最大模式。,最小模式又称为单微处理器模式。在这种模式下,,CPU,仅支持单微处理器系统而不支持多微处理器结构,所有的总线信号都由,8086,提供。前面介绍的引脚功能基本上都是最小模式下,,8086,引脚本身提供的功能。,最大模式又称为多微处理器模式。在最大模式下,,8086CPU,通过总线控制器,8288,来提供,8086,引脚本身提供的所有功能。主处理器不用耗时处理复杂运算和,I,O,操作,因此可以大大提高主处理器的运行效率。,两种工作模式可以通过在,MN,MX,输入引脚加上不同的电平来进行选择。,实际构成系统时,,IBM-PC,计算机是按最大模式来组织的。,3.8086,的工作模式,4.4,控制单元的设计,4.4.1,组合逻辑方式,4.4.2,微程序方式,控制器就是根据输入的时钟信号、指令信息以及各种状态信号,经过指令译码产生相应的微操作控制信号去控制各个部件完成特定的操作。控制器的设计包括时序逻辑(控制微操作的时序关系)、译码逻辑(对指令操作码进行译码分析)、执行逻辑(按一定的顺序执行微操作)和决策逻辑(根据,ALU,产生的标志信号来决定下一步的动作)。控制器的实现方法主要有两种:组合逻辑方式和微程序方式。近年来,又出现了综合这两种方式的门阵列实现方式。,4.4.1,组合逻辑方式,采用组合逻辑电路来产生各种微操作信号的部件称作组合逻辑控制器,它直接由各种类型的逻辑门、触发器和寄存器等构成,又称为硬布线逻辑控制器,。组合逻辑控制器包括组合逻辑电路,N,、模,k,时序计数器和,k,中取,1,译码器等部件。,1.,组合逻辑控制器的结构,4.4.1,组合逻辑方式,组合逻辑电路,N,1/k,译码器,模,k,时序计数器,指令译码器,指令寄存器,ALU,反馈信号,启动,停止,时钟,复位,I,1,I,m,B,1,B,n,T,1,.,.,T,2,T,k,.,.,微操作控制信号,图,4.9,组合逻辑控制展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




第4章-CPU及其控制器.ppt



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/12696930.html