收藏 分销(赏)

计算机的控制器部件.ppt

上传人:s4****5z 文档编号:13990676 上传时间:2026-05-23 格式:PPT 页数:88 大小:2.27MB 下载积分:10 金币
下载 相关 举报
计算机的控制器部件.ppt_第1页
第1页 / 共88页
计算机的控制器部件.ppt_第2页
第2页 / 共88页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第,6,章,计算机的控制器部件,本章主要内容,控制器的功能组成与指令执行步骤,微程序控制器部件,组合逻辑控制器部件,控制器的功能与组成,1.,控制器的功能,:,控制执行指令,控制各部件协调运行,即为各部件提供控制信号。,2.,控制器的组成:,程序计数器 指令寄存器,指令步骤标记线路 提供控制信号的部件,分类,:,微程序的控制器,硬布线的控制器,控制器的功能,计算机的功能是执行程序,程序是依次排列起来的指令代码,控制器的功能就在于,:,正确地分步完成每一条指令规定的功能,正确且自动地连续执行指令,;,再进一步说,就是向计算机,各功能部件,提供 协调运行,每一个步骤所需要的,控制信号,。,控制器的组成,程序计数器,PC,:,存放指令地址,有,+1,或接收新值功能。,指令寄存器,IR,:,存放指令内容:操作码与操作数地址。,主脉冲源与启停控制线路,,按需要给出主脉冲信号。,指令执行步骤标记线路:,指明每条指令的执行步骤。,控制信号记忆或产生线路,:,给出计算机各功能部件部件协同运行所需要的控制信号。,运算器部件,主存储器部件,总线及输入,/,输出接口,(,输入,/,输出设备,),控制器部件,各部件包括,也包括,设计中的难点,在于解决对运算器、控制器的控制,控制器的组成,控制信号提供方法,生成法,将操作码和微操作序号作为输入,写出控制信号和下一微操作序号的逻辑表达式,然后,用相应的逻辑器件实现。,组合逻辑控制器,也称硬布线控制器,查表法,将每一操作码的每个微操作对应的全部控制信号和下一操作步骤事先存储在控制存储器中,需要的时候从控存中读出。,微程序控制器,时序控制,信号,形成部件,译码,IR,PC,输出,设备,输入,设备,主,存,运算器,部件,时序,启停,地址寄存器械,数据总线,地址总线,控制总线,.,控制条件,控制器信号,主振,组合逻辑,方案的,控制器,控制,存储器,映射,IR,PC,输出,设备,输入,设备,主,存,运算器,部件,下地址,启停,地址寄存器械,数据总线,地址总线,控制总线,.,控制条件,微指令寄存器,主振,微程序,方案的,控制器,微程序控制器基本原理,微程序控制器指令执行流程,读当前指令到,IR,,且,PC=PC+1,;,根据指令的操作码,得到该指令的微程序入口地址;,读取该指令的微指令,并送到相应的计算机部件,完成微操作,同时,得到下一微指令的地址;,重复上一步,直到本条指令执行完毕;,判中断标志,如有,则进行中断处理;,转取指令,执行下一条指令,微程序控制器的运行原理,每条指令一个执行步骤用到的全体控制信号组成一微指令,每条指令可以包括一到多个微操作,用多条微指令解释每条指令的整个执行过程,全部微指令的集合叫做微程序,执行一条微指令所用的时间被称为一个微周期。,微指令的格式和内容:,下地址字段 控制命令字段,微程序控制器组成,clock,微程序控制器设计,定序器,根据指令操作码、指令当前步骤以及条件码,确定下一步骤的微程序地址,微指令,给出当前指令的当前步骤要完成指令规定的功能,各功能部件所需要的控制信号。对控制器本身而言,则是要给出下一步骤的微程序地址。,水平,垂直,下地址,顺序执行下一条微指令,无条件转移到某条微指令,根据微指令的某一状态结果,选择顺序执行或转向某一地址,微子程序调用,要使用到微堆栈,多路转移,根据指令操作码,转移到指令的入口地址,定序器组成,微指令设计,微指令字长,缩短控制存储器的字长,微程序的长度,控制存储器的容量,提高性能,提高整个计算机指令执行性能,微指令设计,直接控制法,直接给出各部件需要的控制信号(,0,或,1,),字段直接编译法,将某些互斥信号进行编码,由译码器给出这些信号,可缩短微指令字长,垂直型微指令,采用对微操作码译码的方式给出控制信号,可进一步缩短微指令字长,微程序控制器特点,采用,ROM,存储控制信号的方式,可扩展性好,兼容性实现比较容易,容易实现复杂的指令系统,性能比较低,并行性不好,主要用在,CISC,中,组合逻辑控制器,采用逻辑电路直接提供全部控制信号,输入,操作码,指令状态字,指令步骤编码(节拍),外部信号(,Reset,等),输出,全部控制信号,主要解决的问题,节拍转换,控制信号生成,节拍发生器,控制每条指令的执行步骤,用触发器实现,有限状态自动机,用触发器状态表示当前执行步骤,状态自动机自动转入下一状态,节拍发生器设计举例,我们假定某机器的指令系统有两条指令,A,和,B,,其中,A,指令需要,4,个步骤完成,而,B,指令只需要,3,个步骤。为此,节拍发生器需要有,2,个触发器,用它形成的,4,个状态来标记不同的步骤。如给,A,指令分配的节拍状态是,00011011,,,B,指令分配的节拍状态为,001011,。,T,0,T,1,A,B,T,0,T,1,0,0,1,0,0,1,0,0,0,1,1,0,0,1,1,0,1,0,1,0,1,0,1,1,1,0,0,1,1,1,1,1,1,0,0,0,1,1,0,1,0,0,T0=/T0*/T1*/A*B+/T0*T1*A*/B+T0*/T1,T1=/T0*/T1*A*/B+T0*/T1,控制信号生成,直接利用逻辑电路生成控制信号,大规模集成电路,现场可编程器件,输入,节拍状态,条件码,指令操作码,输出,控制信号,组合逻辑控制器特点,直接用逻辑电路实现,用节拍标记指令步骤,性能良好,可扩展性差,兼容性不好,适合实现比较精简的指令系统,较容易实现并行,常用于实现,RISC,指令的执行过程,冯,.,诺依曼 结构的计算机,即存储程序的计算机,设置内存,存放程序和数据,在程序运行之前存入。,执行程序:正确从程序首地址开始;,正确分步执行每一条指令,,并形成下条待执行指令的地址;,正确并自动地连续执行指令,,直到程序的最后一条指令。,每条指令的执行步骤,读取指令,指令地址送入主存地址寄存器,读主存,读出内容送入指定的寄存器,分析指令,按指令规定内容执行指令,不同指令的操作步骤数,,和具体操作内容差异很大,检查有无中断请求,若有,则响应中断并转中断处理,若无,则转入下一条指令的执行过程,形成下一条指令地址,R_R,类型指令,读写内存类型指令,输入输出类型指令,其他类型指令,可能执行 一次或多次,是一次读,内存操作,公共操作,公共操作,是每一条指令的特定操作,典型指令的执行过程举例,2000 0001 ADD r0,r1 ;,加法指令,2001 0790 MVRR r9,r0 ;,传送指令,2002 E709 STRA 2007,r9 ;,写内存指令,这是一条双字指令,2007 ;,第二个字中的,807,是直接地址,2004 8280 IN 80 ;,读串行口数据到,R0,低,8,位,2005 44FA JRC 2000 ;,若,C,为,1,转移到,2000,否则顺序执行,2006 8F00 RET ;,子程序返回指令,其他一些指令与这里的几条指令有相当多的共同特性,属于,同一组的指令的执行步骤非常类似。,读取指令,AR,PC,(注),读主,存,,IR,读出内容,PC,PC+1,执行指令,ALU,R0,ALU,R1,执行,+,R0,ALU,,,记忆结果特征,结束,判中断,指令执行步骤简单的文字描述,加法指令,ADD R0,,,R1,形成下条指令地址,寄存器内容传送指令,MVRR R9,,,R0,读取指令,AR,PC,(注),读主,存,,IR,读出内容,PC,PC+1,执行指令,ALU,0,ALU,R0,执行,+,R9,ALU,结束,判中断,形成下条指令地址,写寄存器内容到主存,STRA 2007,,,R9,读取指令,AR,PC,读主存,,IR,读出内容,PC,PC+1,执行指令,AR,PC,,,PC,PC+1,读主存,,AR,读出内容,ALU,0,ALU,R9,,,+,写主存,总线,ALU,,,结束,判中断,(地址,2007,存在指令的第二个字中),形成下条指令地址,输入指令,IN 80,形成下条指令地址,读取指令,AR,PC,(注,),读主,存,,IR,读出内容,PC,PC+1,执行指令,AR,I/O,Port,读外设,,ALU,读出数据,ALU,0,执行,+,R0,ALU,结束,判中断,形成下条指令地址,相对转移指令,JRC 2000,读取指令,AR,PC,(注),读主,存,,IR,读出内容,PC,PC+1,执行指令,若,c=1,则:,ALU,PC,ALU,offset,(,IR,低字节),二者相加,,,结果送,PC,否则,,PC,不接收二者之和,结束,判中断,形成下条指令地址,子程序返回指令,RET,读取指令,AR,PC,读主存,,,IR,读出内容,PC,PC+1,执行指令,AR,SP,SP,SP+1,读主存,PC,读出内容,结束,判中断,形成下条指令地址,PC,0,AR,PC,PC,PC+1,IR(AR),寄存器之间,运算与传送,读、写内存,AR,地址,AR,地址,读、写内存,或,I/O,接口,读、写内存,PC,地址,16,位机的基本指令、扩展指令执行流程图,A,组,B,组,C,组,D,组,/Reset,B,、,C,、,D,组,TEC-2000,教学机系统的组成,计算机,终端,PC,机,微程序,控制器,运算器,(8/16,位,),主存储器,(,8/16,位),按键 开关 指示灯,串行接口,接口实验 中断实验,内存扩展实验,电 源,+5V,硬布线,控制器,控制器应提供的控制信号,Y15Y0,用16个指示灯显示结果,D15D0,RAM15,Q15,RAM0,Q0,Cin,Cy,F=0,Over,F15,运 算 器 部 件,(4,片,Am2901),A30,B30,I86,用,16,个数据开关提供输入数据,C,Z,V,S,SSH,SST,SCI,I53,I20,SCI SSH,A,口,B,口,I86,I53,I20,SST,通过,24,位微型开关,提供控制信号,各用,四个,指示灯显示状态,Gal,20V8,Gal,20V8,(,1,),对运算器的控制,24,位控制信号,同,24,位微型开关内容,,A3A0,,,B3B0,,,I8I6,,,I5I3,,,I2I0,SST20,,,SSH10,,,SCI10,寄存器分配:,R4,:,SP R5,:,PC,约定用法:,R0,:,I/O,指令约定使用,也是通用累加器,(,2,),读写主存储器或,I/O,接口,从学习指令执行步骤考虑,理解对,主存储器,读写的控制,分成两步:,1.,传送,主存地址,,以选择被读写的存储单元;,2.,给出读写命令,,读操作时,把读出数据保存起来,,写操作时,还要给出写入的数据。,从学习指令执行步骤考虑,理解对,接口电路,读写的控制,分成两步:,1.,传送,IO,端口地址,,以选择被读写的芯片;,2.,给出读写命令,,读操作时,把读出数据保存起来,,写操作时,还要给出写入的数据。,对内存和,I/O,接口的读写,/MIO,(,0,:,有内存或串口读写,,1,:无),REQ,(,0,:,读写内存,,1,:读写串行口),/WE,(,0,:,写操作,,1,:读操作),0,0,0,写内存,0,0,1,读内存,0,1,0,写串口,0,1,1,读串口,1,X,X,无内存和串口的读写操作,(,3,),对总线的控制,总线是用于连接计算机各个功能部件的线路和连接线,通常由具有三态输出功能的器件构成,以便用分时地方式,在不同时刻把不同的数据发送到总线上,任何时刻仅能有一个数据发送到总线上;,总线上的数据可以被送到需要接收数据的部件或者线路,多个线路可以同时接收同一个来源数据。,计算机中总要使用,3,种类型的总线:,数据总线,,地址总线,,,控制总线,(,4,),对内部总线和特定寄存器的控制,选择送内部总线的信息来源,DC1,20,信号名称 注释,000 /SWTOIB,来自开关,001 /RTOIB,ALU,的输出,010 /ETOIB,符号扩展,16,位,011 /FTOIB,状态位输出,100 /STOIB,符号扩展,8,位,101 /INTVH,中断向量的,110 /INTVL,高、低,8,位,110 NC,不用,控制指定寄存器接收信息,DC2,20,信号名称 注释,000 NC,不用,001 /GIR,指令寄存器,010 /GARL,地址寄存器低位,011 /GARH,地址寄存器高位,100 /INTR,取原中断优先级,101 /INTN,置新中断优先级,110 /EI,开中断,110 /DI,关中断,本章主要内容,控制器的功能组成与指令执行步骤,微程序控制器部件,组合逻辑控制器部件,微程序控制器组成与设计,(,1,)微程序控制器的运行原理,(,2,)教学计算机的微程序控制器的实际组成,(,3,)微程序解释的基本指令执行流程图,(,4,)微指令的格式设计,(,5,)指令执行流程举例与说明,(,1,)微程序控制器的运行原理,每条指令一个执行步骤用到的全体控制信号组成一微指令,每条微指令可以包括一到多个微操作。,用多条微指令,(,一个微程序,),解释每条指令的执行过程。,全部的微程序有机地组合在一起,被保在控制存储器中。,执行一条微指令所用的时间被称为一个微周期。,微指令的格式和内容:,下地址字段 控制命令字段,执行第,i,条微指令,读出第,i+1,条微指令,读与执行微指令的,并行流水技术,形成第,i+1,条微指令地址,一个微周期,接收微指令,下地址字段的内容,得到下地址的方法:,1.,由指令操作码得到,2.,微指令顺序执行,3.,微指令必转或条件转移,多路微地址转移,4.,微子程序调用和返回,5.,按次数循环一段微程序,6.,其他:如特定入口微地址,在微指令下地址字段中表示清楚:,使用哪种方法,,哪个,(,些,),判断条件,,要用的有关地址等,,并用专门电路完成必要支持和处理,,微指令的下地址是微程序设计中要重点解决的问题之一,,技术、技巧性强,,应学得好些。,在教学计算机中,解决下地址使用了,Am2910,器件,微堆桟指针,SP,5,字*,12,位,微堆桟,F,微程序计数器,PC,寄存器,/,计数器,R/C,D R F,PC,多路选择器,命令译码器,增 量 器,零检,测,D11D0,Y11Y0,CP,/FULL,CI,/CC,/CCEN,I3I0,/PL /MAP /VECT,/RLD,/OE,出栈,/,入栈,保持,/,清零,装数,减量,保持,清零,选择,R,为零,Am2910,器件,非零循环 零,/PL,PC,弹出,PC,弹出,4,入栈与装数 注,1 /PL,PC,压入,PC,压入,6,读手拨开关,/VECT,PC D,3,条件微转移,/PL,PC D,2,功能分支,/MAP D D,1,条件转微子,/PL,PC D,压入,完成,R/C R/C,使能,/CC=,高,/CC=,低,功能 内容 操作 信号,Y,输出 堆栈,Y,输出 堆栈,0,初始化,/PL 0,清除,0,清除,8 R/C,非零,减,1 /PL F F,10,微子返回,/PL,PC F,弹出,14,顺序执行,/PL,PC,PC,15,三路转移 非零 减,1 /PL F,PC,弹出,零,/PL D,弹出,PC,弹出,微命令字段的编码译码方法,1.,直接控制法,直接用微指令字的一位作一个控制信号则简单且速度快,但会使微指令字变得很长。,2.,字段直接编译法,把互斥的命令分在一组加以编码,经译码器给出命令,,速度会稍慢,但可大大减短微指令字长度,确保互斥。,3.,字段间接编译法,是对直接译码的的一种改进,可进一步缩短微指令字长度,即一个字段的某些微命令还受另一字段的制约。,4.,常数源字段,微指令中分配几位,用于给出特定用途的有关数值,。,(2),微程序控制器组成,56,位的微指令字长,,微下地址字段,16,位,,控制命令字段,40,位,,7,片,28C64,组成控存。,1,片,28C65,,,从指令操,作码产生微地址,,1,片,374,存,8,位下地址,,1,片,273,存,8,位条件码,,1,片,377,存,8,位现微地址。,1,片,Am2910,给出下一条,微指令地址,,1,片,GAL,按判断条件产,生微指令转移信号,/CC,;,5,片,GAL,用作为,5,片,8,位,的,D,触发器的寄存器,,2,片,GAL,实现两个,4,位的,2,选,1,芯片功能。,8,或,16,位的指令寄存器。,微程序控制器,Am2910,MAPROM,微下地址,CI SCC,30,30,SCC Gal,控制存储器(,ROM,),指令操作码,微指令转移的控制条件,/SCC,微指令寄存器,0MRW SA I86 B,口,0SST DC2,0 I20 SB I53 A,口,SSHSCI,DC1,CP,/G,读命令,1.,确定指令功能与格式,2.,划分指令执行步骤,3.,分配微指令地址,4.,设计微指令内容,5.,把新微指令写入控存,6.,需要时修改,MAPROM,和,SCC Gal,等,7.,调试并且运行,B,口二选一,A,口二选一,IR.SR,IR.DR,TEC-2000,教学机系统的组成,计算机,终端,PC,机,微程序,/,硬布线,控制器,运算器,(16,位,),主存储器,(,16,位),按键 室开关 指示灯,串行接口,中断实验 接口实验,内存扩展实验,电 源,+5V,每条指令的执行步骤,读取指令,指令地址,(,在程序计数器,PC,中,),送入主存地址寄存器,读主存,读出内容送入指令寄存器,IR,分析指令,按指令规定内容执行指令,不同指令的操作步骤数,,和具体操作内容差异很大,检查有无中断请求,若有,则响应中断并转中断处理,若无,则转入下一条指令的执行过程,形成下一条指令地址,R_R,类型指令,读写内存类型指令,输入输出类型指令,其他类型指令,可能执行 一次或多次,可以复合,是一次读,内存操作,公共操作,公共操作,是每一条指令的特定操作,PC,0,AR,PC,PC,PC+1,IR(AR),/MAP,寄存器之间,运算与传送,读、写内存,AR,地址,AR,地址,读、写内存,或,I/O,接口,读、写内存,PC,地址,(,3,)基本指令、扩展指令执行流程图,A,组,B,组,C,组,D,组,/Reset,B,、,C,、,D,组,加电启动时,,执行,0,PC,接下来的两步,,完成取指操作,按指令操作码,,读出相应微指令,按指令具体功能,再分别用,1,、,2,、,3,、,4,步完成不同,指令组的中各条,指令的执行过程,最后检查中断请,求信号,有请求,时则响应中断,,否则开始下一条,指令的执行过程,9,位微下地址字段用于直接给出下一条微指令的地址,常用,8,位,使用微指令字中最高,8,位编码。,最高一位用于扩展功能,单独接线。,(,4,),TEC-2000,教学机微指令格式设计,微下地址,2910,的命令码 微转移条件,8,位,4位,4位,分成,3,个子字段,总共使用,17,位码,(,微指令中用,16,位,),。,4,位的命令码,用于选择,Am2910,的,16,个命令,如前一页的表格内容所示。,4,位的微转移条件给出微指令转移所依据的条件,与教学机具体设计有关。,1,位,微指令的下地址字段,控制命令字,段,给出计算机各功能部件协同运行所需要的控制信号,划分成若干字段,分别用于控制各部件,控制运算器部件,如:运算功能,数据来源,结果处理等,控制总线 主存 入出接口,(,设备,),如,:,指出是主存读、写还是入出设备读、写,把什么数据送到有关总线等,控制控制器部件,(下地址字段),主要是正确给出下条微指令的地址,为每一条微指令分配微地址,需要为每一条微指令在控存中分配一个合适的地址,这是合理地组织微程序的重要工作;,1.,首先确定微指令中下地址字段的组成;,2.,再按每一条微指令在控存中的位置,来安排下地址字段各部分的编码,,这与控制器的,具体线路与方案,有关。,微指令控制信号字段编码,为每一条微指令各项微操作确定,其所要求的控制信号,如,:,使,IR,,,AR,等寄存器接收的信号,控制,PC,增量和接收的信号,读写主存,读写外设的信号,控制运算器操作的信号 等,这要看,被控制的具体对象的具体要求,下址,CI30 SCC30 0MRW,0 I20,SA,I86,SB,I53 B,口,A,口,0 SST SSH SCI,DC2 DC1,00 E 0 4 3 2 0 5 5 0 1 3 0,00 E 0 1 0 1 0 0 0 0 0 1 0,00 2 0 4 0 1 0 0 0 0 0 0 0,30 3 0 4 1 B 8 0 0 1 0 0 0,3 0 4 4 B 8 0 0 0 0 0 0,3 6 4 7 1 0 0 0 0 0 3 2,30 3 0 3 7 3 0 0 0 0 0 0 0,00 E 0 4 3 2 0 5 5 0 1 3 0,00 E 0 1 7 0 0 0 0 0 0 0 0,00 E 0 4 3 3 1 4 0 0 0 3 0,30 3 0 0 2 2 0 5 5 0 0 0 1,(5),指令执行流程举例,ADD DR,SR,MVRR,DR,SR,IN IO-PORT,CALA ADR,下址,CI30 SCC30 0MRW,0 I20,SA,I86,SB,I53 B,口,A,口,0 SST SSH SCI,DC2 DC1,00 E 0 4 3 2 0 5 5 0 1 3 0,00 E 0 1 0 1 0 0 0 0 0 1 0,00 2 0 4 0 1 0 0 0 0 0 0 0,指令执行流程举例,ADD DR,SR,MVRR,DR,SR,IN IO-PORT,CALA ADR,第,1,条微指令,和,第,2,条微指令,用于完成读取指令,具体操作功能是:,PC,AR,,,PC+1,PC,;,PC,是,R5,,,A,口 和,B,口 均选,5,,,B,口内容,+1,送,B,口;输出,A,口的内容送,AR,寄存器。,读主存,,读出内容,IR,;,微指令都是,顺序执行,故,2910,选,14#,命令。,第,3,条微指令按读出的指令的操作码,形成相应微指令的地址,读出该条微指令并将其写入微指令寄存器,,2910,选,2#,命令,控制运算器的,I8I6,选,001,码,保证运算器的各寄存器内容不变化。无存储器和,IO,读写,故,/MIO REQ/WE,选,100,码。,下址,CI30 SCC30 0MRW,0 I20,SA,I86,SB,I53 B,口,A,口,0 SST SSH SCI,DC2 DC1,00 E 0 4 3 2 0 5 5 0 1 3 0,00 E 0 1 0 1 0 0 0 0 0 1 0,00 2 0 4 0 1 0 0 0 0 0 0 0,30 3 0 4 1 B 8 0 0 1 0 0 0,3 0 4 4 B 8 0 0 0 0 0 0,指令执行流程举例,ADD DR,SR,MVRR,DR,SR,IN IO-PORT,CALA ADR,第,3,条微指令,和,第,4,条微指令,用于完成两个累加器之间的,相加,和,传送,操作。具体操作是:,2,累加器相加,,DR+SR,DR,,,A,口和,B,口 编码来自指令寄存器,故,SA,和,SB,都给,1,值;下微指令转判中断请求,故,2910,选,3#,命令且,SCC,为,0000,必转,30,。,第,4,条微指令,,完成两个累加器之间的数据传送,,累加器,SR,的内容和,0,相加,存入,DR,寄存器中,不保存标志位的值,故,SST,为,000,,无存储器和,IO,读写。这两条微指令内容有些类似。,下址,CI30 SCC30 0MRW,0 I20,SA,I86,SB,I53 B,口,A,口,0 SST SSH SCI,DC2 DC1,14 3 6 4 7 1 0 0 0 0 0 3 2,30 3 0 3 7 3 0 0 0 0 0 0 0,指令执行流程举例,ADD DR,SR,MVRR,DR,SR,IN IO-PORT,CALA ADR,第,5,、,6,两条微指令完成读串行接口,,具体操作是:先送,IO,端口地址(在,IR,的低,8,位,)到地址,寄存器,AR,,,DC1,为,2,选,IR,的低,8,位送内部总线,经,ALU(,送出,D+0),到,AR,(,DC2,为,3,是,AR,接收);,IN,指令时转,14#,微指令(下地址,3,个字段为,14 3 6,);,下一微指令完成读串口输入到内部总线,把,D+0,送到,ALU,并写进,R0,(,B,口选,0000,);转判中断请求,故,CI,选,3#,且,SCC,为,0000,必转,30,。,下址,CI30 SCC30 0MRW,0 I20,SA,I86,SB,I53 B,口,A,口,0 SST SSH SCI,DC2 DC1,00 E 0 4 3 2 0 5 5 0 1 3 0,00 E 0 1 7 0 0 0 0 0 0 0 0,00 E 0 4 3 3 1 4 0 0 0 3 0,3 0 0 2 2 0 5 5 0 0 0 1,指令执行流程举例,ADD DR,SR,MVRR,DR,SR,IN IO-PORT,CALA ADR,后,4,条微指令,之间顺序执行,前,3,条的,CI,都是,E,,依次,完成:,1.PCAR,,,PC+1 PC,;,(,控制命令同读取指令的第,1,步,);,2.,读内存,(MRW=001),送,Q(D+0 Q)(,子程序入口,),;,3.,修改堆栈指针并送,AR,,,SP-1 SP,AR,;,SP,是,R4,,即,R4,的内容,-1 R4,和,AR(DC2,为,3,是,AR,接收,);,4.,写断点(,PC,的内容)到堆栈,即,A,口指定的寄存器,(R5),的内容经数据总线送到内存并写入;子程序的入口地址,(,在,Q,中,),(,Q,的内容,+0,)送入,PC,(,B,口指定,R5,)。下地址控制完成转向判中断请求的微指令的地址,30,处。,教学计算机的微程序控制,器,信息流图示部分,典型指令的执行过程举例:,2000 0001 ADD r0,r1,2001 0790 MVRR r9,r0,2002 8800 MVRD r0,2100,2100,8309 STRR R0,R9,(写内存),8280 IN 80,(读串行口,),2006 44FB JRC 2002,2007 8F00 RET,程序 计数器,运算器,控制器,控制 存储器,用于运算器,输入,/,出设备,主存储器,控制总线,0 001,8F00,0790,C,Z,V,S,接口,.,PC,AR,IR,数据总线,地址总线,ALU,乘商寄存器,6688,1234,R9,操作数,地址,操作码,寄存器组,映射,地址寄存器,指令寄存器,微程序定序器,主振 脉冲,微指令寄存器,下地址字段内容,2000,8800,2100,8309,8280,44FB,3041,2000,2007,0001,4275,42 75,AR,PC,读内存,,IR,读出内容,R0,R0+R1,PC,PC+1,+,ADD R0,R1,2001,2000,0001,程序 计数器,运算器,控制器,控制 存储器,用于运算器,输入,/,出设备,主存储器,控制总线,0001,8F00,0790,C,Z,V,S,接口,.,PC,AR,IR,数据总线,地址总线,ALU,乘商寄存器,6688,1234,R9,操作数,地址,操作码,寄存器组,映射,地址寄存器,指令寄存器,微程序定序器,主振 脉冲,微指令寄存器,下地址字段内容,2000,8800,2100,8309,8280,44FB,4725,2001,2007,2001,0790,4275,4275,AR,PC,读内存,,IR,读出内容,R9,R0+0,PC,PC+1,0,+,MVRR R9,R0,2002,0790,程序计数器,运算器,控制器,控制 存储器,用于运算器,输入设备,主存储器,控制总线,0 001,78BD,0790,C,Z,V,S,接口,.,PC,AR,IR,数据总线,地址总线,ALU,乘商寄存器,6688,1234,R9 4275,操作数,地址,操作码,寄存器组,映射,地址寄存器,指令寄存器,微程序定序器,主振 脉冲,微指令寄存器,下地址字段内容,2000,8800,2100,8309,8280,44FB,2100,802,2007,2002,8800,2003,78BD,0,8F00,AR,PC,PC,PC+1,读内存,,IR,读出内容,读内存,,R0,D+0,AR,PC,PC,PC+1,2100,+,MVRD R0,2100,2004,2003,程序计数器,运算器,控制器,控制 存储器,用于运算器,输入设备,主存储器,控制总线,0 001,78BD,0790,C,Z,V,S,接口,.,PC,AR,IR,数据总线,地址总线,ALU,乘商寄存器,6688,1234,R9 4275,操作数,地址,操作码,寄存器组,映射,地址寄存器,指令寄存器,微程序定序器,主振 脉冲,微指令寄存器,下地址字段内容,2000,8800,2100,8309,8280,44FB,2100,802,2007,2004,8309,2005,78BD,0,8F00,AR,PC,PC,PC+1,读内存,,IR,读出内容,写内存,总线,R9+0,AR,R0+0,2100,+,STRR R0,R9,2100,程序 计数器,运算器,控制器,控制 存储器,用于运算器,输入,/,出设备,主存储器,控制总线,C,Z,V,S,接口,.,PC,AR,IR,数据总线,地址总线,ALU,乘商寄存器,6688,1234,R9,操作数,地址,操作码,寄存器组,映射,地址寄存器,指令寄存器,微程序定序器,主振 脉冲,微指令寄存器,下地址字段内容,2000,3041,2006,2007,2005,8280,A,AR,PC,读内存,,IR,读出内容,读设备,,R0,读出内容,PC,PC+1,AR,I/O port,IN 80,0 001,0790,8800,2100,8309,8280,44FB,8F00,80,程 序计数器,运算器,控制器,控制 存储器,用于运算器,输入,/,出设备,主存储器,控制总线,C,Z,V,S,接口,.,PC,AR,IR,数据总线,地址总线,ALU,乘商寄存器,6688,1234,R9,操作数,地址,操作码,寄存器组,映射,地址寄存器,指令寄存器,微程序定序器,主振 脉冲,微指令寄存器,下地址字段内容,2000,A,805,2007,2006,806,44FB,AR,PC PC,PC+1,若,C=1,则,PC,PC+offset,读内存,,IR,读出内容,否则,do nothing,2007,JRC 2002,0 001,0790,8800,2100,8309,8280,44FB,8F00,本章主要内容,控制器的功能组成与指令执行步骤,微程序控制器部件,组合逻辑控制器部件,组合逻辑(硬连线)控制器设计,组合逻辑控制器的组成和运行原理,组合逻辑控制器的设计过程与技术,(,1,)指令系统与指令编码设计,(,2,)控制器应提供的控制信号,(,3,)指令执行步骤划分和功能确定,(,4,)节拍发生器,(,TIMING,),设计与实现,(,5,)时序控制信号产生部件的设计与实现,组合逻辑控制器的组成与运行原理,在讲解过微程序的控制器之后,再来讨论组合逻辑控制器的组成和运行原理就变得容易了,因为二者有很多共同点。,它们都用于控制指令的执行过程,并且使用几乎相同的执行步骤和几乎完全相同的控制信号,来完成对控制器之外的其他各功能部件的控制作用,因此可以简化对这些内容设计原理和方法的论述。,两种控制器实质性的差别,表现在处理指令各执行步骤的接续关系的方案和给出时序控制信号的办法完全不同,从而造成控制器的具体组成和运行原理、运行性能上的一些差异。比较它们的逻辑图可看出两种控制器组成的主要差异:,微程序控制器中的控存变成这里的时序信号产生部件,还取消了微指令寄存器;原来的下地址部件变成了这里的节拍发生器;原来的微地址映射部件变成这里的操作码译码器;一些信号连接关系也有某些变化。,组合逻辑控制器的组成与运行原理,(,1,)组合逻辑控制器用节拍发生器(,Timing,,,几个触发器构成的时序逻辑电路)不同的状态组合来区分一条指令不同的执行步骤,指令执行步骤的接续是通过变换节拍发生器的状态组合完成的,不同于微程序控制器中通过下地址部件给出不同的微指令地址来实现。这里用节拍发生器取代了原来的下地址部件。,(,2,)组合逻辑控制器是通过由,“与,或”,两级逻辑关系构成的时序控制信号产生部件来直接给出全部的时序控制信号。送到第一级各,“与门”,的输入信号是指令操作码和节拍发生器的节拍状态,(,可能还有控制条件,),,每个与门产生一个与项输出,相关的与项输出信号送到第二级的,“或门”,,,每个或门输出的就是一个时序控制信号,。全部的时序控制信号由许多个“与,或”逻辑门给出。与用控制存储器存放全部控制信号的微程序控制方案不同,这里用时序控制信号产生部件取代了原来的控制存储器,还取消了那里的微指令寄存器线路,把控制信号直接送到被控制的部件。,时序控制,信号,形成部件,译码,OP IR,PC,输 出,设 备,输 入,设 备,主存储器,部件,运算器,部件,启停,地址寄存器,数据总线,地址总线,控制总线,.,控制条件,主振,组合逻辑控制器的组成和运行原理,节拍发生器,程序计数器,指令寄存器,教学机的组合逻辑控制器,8,或,16,位的指令寄存器,,1,片,100,引脚的,MACH,,,5,片,8,输出引脚的,GAL,,,二者互斥运行,构成时序控制信号形成部件,提供,35,位的控制信号。,2,片,GAL,与,GAL3,共同提供运算器,A,、,B,口信号。,节拍发生器,(1,片,GAL),,,产生,4,位节拍状态信号,。,2,片,GAL,用于启动、停止等控制电路。,GAL1GAL7,公用于组合和微程序两种控制器。,TEC-2000 16,位机指令与执行流程设计,TEC-2000,分为,16,位和,8,位字长的两种型号。,16,位机与,8,位机,从其指令格式、指令系统和运行的软件来看,是完全不同的两种机型,但是从整体硬件组成和使用的器件来看,又有相当多的类似之处。再从设计与实现的基本原理来看,二者同样有许多类似或相同之处,例如各自对组合逻辑和微程序两种控制器使用几乎完全相同的执行步骤。,关于,16,位机组合逻辑控制器设计过程中,可以直接跳过对指令执行步骤的划分和功能确定,对使用的控制信号的选择等内容的详细讨论,直接引用微程序控制器的设计结果即可;针对两种控制器的区别,重点讲解节拍发生器的设计与实现,时序控制信号产生部件的设计与实现,并强调设计中有关的原理性知识,顺便提到一些实现中对所用电路的选择原则。,PC,0,AR,PC,PC,PC+1,IR(AR),寄存器之间,运算与传送,读、写内存,AR,地址,AR,地址,读、写内存,或,I/O,接口,读、写内存,PC,地址,16,位机的基本指令、扩展指令执行流程图(组合逻辑方案),A,组,B,组,C,组,D,组,/Reset,B,、,C,、,D,组,1000,0000,0010,0011,0110,0100,0111,0101,加电启动时,,执行,0,PC,接下来的两步,,完成取指操作,按指令具体功能,再分别用,1,、,2,、,3,、,4,步完成不同,指令组的中各条,指令的执行过程,最后检查中断请,求信号,有请求,时则响应中断,,否则开始下一条,指令的执行过程,1000,0000,0010,0011,0110,0100,0101,0111,指 令 操 作 码,指令操作码,指 令 操 作 码,16,位机组合逻辑控制器的指令执行流程设计,XXXX,XXXX,XXXX,指 令 操 作 码,(,1,),节拍发生器的设计原理,TEC-2000 16,位机实现了,29,条指令,使用了,8,个节拍(不含响应中断的步骤)
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服