AB罗克韦尔进口控制器代购现货微程序控制(简称微码控制)的基本思路是:用微指令产生微操作命令,用若干条微指令组成一段微程序实现一条机器指令的功能(为了加以区别,将前面所讲的指令称为机器指令)。设机器指令M执行时需要三个阶段,每个阶段需要发出如下命令:阶段一发送K1、K8命令,阶段二发送K0、K2、K3、K4命令,阶段三发送K9命令。当将第一条微指令送到微指令寄存器时,微指令寄存器的K1和K8为1,即发出K1和K8命令,该微指令指出下一条微指令地址为00101,从中取出第二条微指令,送到微指令寄存器时将发出K0、K2、K3、K4命令,接下来是取第三条微指令,发K9命令。
微程序控制器的组成:
1、控制存储器(Control Memory)用来存放各机器指令对应的微程序。译码器用来形成机器指令对应的微程序的入口地址。当将一条机器指令对应的微程序的各条微指令逐条取出,并送到微指令寄存器时,其微操作命令也就按事先的设计发出,因而也就完成了一条机器指令的功能。对每一条机器指令都是如此。
2、微指令的宽度直接决定了微程序控制器的宽度。为了简化控制存储器,可采取一些措施来缩短微指令的宽度。如采用字段译码法一级分段译码。显然,微指令的控制字段将大大缩短。,一些要同时产生的微操作命令不能安排在同一个字段中。为了进一步缩短控制字段,还可以将字段译码设计成两级或多级。
折叠CPU 控制器是指挥计算机的各个部件按照指令的功能要求协调工作的部件,是计算机的神经中枢和指挥中心,由指令寄存器IR(InstructionRegister)、程序计数器PC(ProgramCounter)和操作控制器OC(OperationController)三个部件组成,对协调整个电脑有序工作极为重要。
指令寄存器:用以保存当前执行或即将执行的指令的一种寄存器。指令内包含有确定操作类型的操作码和指出操作数来源或去向的地址。指令长度随不同计算机而异,指令寄存器的长度也随之而异。计算机的所有操作都是通过分析存放在指令寄存器中的指令后再执行的。指令寄存器的输人端接收来自存储器的指令,指令寄存器的输出端分为两部分。操作码部分送到译码电路进行分析,指出本指令该执行何种类型的操作;地址部分送到地址加法器生成有效地址后再送到存储器,作为取数或存数的地址。
AB罗克韦尔进口控制器代购现货可以指主存、高速缓存或寄存器栈等用来保存当前正在执行的一条指令。当执行一条指令时,先把它从内存取到数据寄存器(DR)中,然后再传送至IR。指令划分为操作码和地址码字段,由二进制数字组成。为了执行任何给定的指令,必须对操作码进行测试,以便识别所要求的操作。指令译码器就是做这项工作的。指令寄存器中操作码字段的输出就是指令译码器的输入。操作码一经译码后,即可向操作控制器发出具体操作的特定信号。
程序计数器:指明程序中下一次要执行的指令地址的一种计数器,又称指令计数器。它兼有指令地址寄存器和计数器的功能。当一条指令执行完毕的时候,程序计数器作为指令地址寄存器,其内容必须已经改变成下一条指令的地址,从而使程序得以持续运行。
为此可采取以下两种办法:
第一种办法是在指令中包含了下一条指令的地址。在指令执行过程中将这个地址送人指令地址寄存器即可达到程序持续运行的目的。这个方法适用于早期以磁鼓、延迟线等串行装置作为主存储器的计算机。根据本条指令的执行时间恰当地决定下一条指令的地址就可以缩短读取下一条指令的等待时间,从而收到提高程序运行速度的效果。
第二种办法是顺序执行指令。一个程序由若干个程序段组成,每个程序段的指令可以设计成顺序地存放在存储器之中,所以只要指令地址寄存器兼有计数功能,在执行指令的过程中进行计数,自动加一个增量,就可以形成下一条指令的地址,从而达到顺序执行指令的目的。这个办法适用于以随机存储器作为主存储器的计算机。当程序的运行需要从一个程序段转向另一个程序段时,可以利用转移指令来实现。转移指令中包含了即将转去的程序段入口指令的地址。执行转移指令时将这个地址送人程序计数器(此时只作为指令地址寄存器,不计数)作为下一条指令的地址,从而达到转移程序段的目的。子程序的调用、中断和陷阱的处理等都用类似的方法。在随机存取存储器普及以后,第二种办法的整体运行效果大大地优于第一种办法,因而顺序执行指令已经成为主流计算机普遍采用的办法,程序计数器就成为中央处理器*一个控制部件。
CPU内的每个功能部件都完成一定的特定功能。信息在各部件之间传送及数据的流动控制部件的实现。通常把许多数字部件之间传送信息的通路称为"数据通路"。信息从什么地方开始,中间经过哪个寄存器或多路开关,最后传到哪个寄存器,都要加以控制。在各寄存器之间建立数据通路的任务,是由称为"操作控制器"的部件来完成的。
操作控制器的功能就是根据指令操作码和时序信号,产生各种操作控制信号,以便正确地建立数据通路,从而完成取指令和执行指令的控制。设计步骤:
1、设计机器的指令系统:规定指令的种类、指令的条数以及每一条指令的格式和功能;
2、初步的总体设计:如寄存器设置、总线安排、运算器设计、部件间的连接关系等;
3、绘制指令流程图:标出每一条指令在什么时间、什么部件进行何种操作;
4、编排操作时间表:即根据指令流程图分解各操作为微操作,按时间段列出机器应进行的微操作;
5、列出微操作信号表达式,化简,电路实现。
基本组成:
1、指令寄存器用来存放正在执行的指令。指令分成两部分:操作码和地址码。操作码用来指示指令的操作性质,如加法、减法等;地址码给出本条指令的操作数地址或形成操作数地址的有关信息(这时通过地址形成电路来形成操作数地址)。有一种指令称为转移指令,它用来改变指令的正常执行顺序,这种指令的地址码部分给出的是要转去执行的指令的地址。
2、操作码译码器:用来对指令的操作码进行译码,产生相应的控制电平,完成分析指令的功能。
3、时序电路:用来产生时间标志信号。在微型计算机中,时间标志信号一般为三级:指令周期、总线周期和时钟周期。微操作命令产生电路产生完成指令规定操作的各种微操作命令。这些命令产生的主要依据是时间标志和指令的操作性质。该电路实际是各微操作控制信号表达式(如上面的A→L表达式)的电路实现,它是组合逻辑控制器中最为复杂的部分。
4、指令计数器:用来形成下一条要执行的指令的地址。通常,指令是顺序执行的,而指令在存储器中是顺序存放的。所以,一般情况下下一条要执行的指令的地址可通过将现行地址加1形成,微操作命令"1"就用于这个目的。如果执行的是转移指令,则下一条要执行的指令的地址是要转移到的地址。该地址就在本转移指令的地址码字段,将其直接送往指令计数器。
微程序控制器的提出是因为组合逻辑设计存在不便于设计、不灵活、不易修改和扩充等缺点。
|