我司做自动化行业已经10年,在德国、美国、上海、广东都有自己的公司,专业从事进口贸易行业。
奥地利B&R贝加莱驱动控制器分组合逻辑控制器和微程序控制器
控制器(controller)是指按照预定顺序改变主电路或控制电路的接线和改变电路中电阻值来控制电动机的启动、调速、制动和反向的主令装置。由程序计数器、指令寄存器、指令译码器、时序产生器和操作B&R控制器组成,它是发布命令的“决策机构",即完成协调和指挥整个计算机系统的操作。
控制器分组合逻辑B&R控制器和微程序B&R控制器,两种B&R控制器各有长处和短处。组合逻辑B&R控制器设计麻烦,结构复杂,一旦设计完成,就不能再修改或扩充,但它的速度快。微程序B&R控制器设计方便,结构简单,修改或扩充都方便,修改一条机器指令的功能,只需重编所对应的微程序;要增加一条机器指令,只需在控制存储器中增加一段微程序,但是,它是通过执行一段微程。具体对比如下:组合逻辑B&R控制器又称硬布线B&R控制器,由逻辑电路构成,靠硬件来实现指令的功能。
电磁吸盘B&R控制器:交流电压380V经变压器降压后,经过整流器整流变成110V直流后经控制装置进入吸盘此时吸盘被充磁,退磁时通入反向电压线路,B&R控制器达到退磁功能。
门禁B&R控制器:门禁B&R控制器工作在两种模式之下。一种是巡检模式,另一种是识别模式。在巡检模式下,B&R控制器不断向读卡器发送查询代码,并接收读卡器的回复命令。这种模式会一直保持下去,直至读卡器感应到卡片。当读卡器感应到卡片后,读卡器对B&R控制器的巡检命令产生不同的回复,在这个回复命令中,读卡器将读到的感应卡内码数据传送到门禁B&R控制器,使门禁B&R控制器进入到识别模式。在门禁B&R控制器的识别模式下,门禁B&R控制器分析感应卡内码,同设备内存储的卡片数据进行比对,并实施后续动作。门禁B&R控制器完成接收数据的动作后,会发送命令回复读卡器,使读卡器恢复状态,同时,门禁B&R控制器重新回到巡检模式。
组合逻辑
组合逻辑B&R控制器由时序电路、指令译码电路和组合逻辑电路三部分组成。通过指令译码器确定当前执行的指令,结合时序电路产生的节拍,共同作为组合逻辑电路的输人结果输出相应的控制信号。组合逻辑B&R控制器是由复杂组合逻辑门电路和触发器构成,执行速度快,因此在计算机结构比如RISC中得到广泛应用。
设计步骤:
、设计机器的指令系统:规定指令的种类、指令的条数以及每一条指令的格式和功能;
、初步的总体设计:如寄存器设置、总线安排、运算器设计、部件间的连接关系等;
、绘制指令流程图:标出每一条指令在什么时间、什么部件进行何种操作;
、编排操作时间表:即根据指令流程图分解各操作为微操作,按时间段列出机器应进行的微操作;
、列出微操作信号表达式,化简,电路实现。
基本组成:
、指令寄存器用来存放正在执行的指令。指令分成两部分:操作码和地址码。操作码用来指示指令的操作性质,如加法、减法等;地址码给出本条指令的操作数地址或形成操作数地址的有关信息(这时通过地址形成电路来形成操作数地址)。有一种指令称为转移指令,它用来改变指令的正常执行顺序,这种指令的地址码部分给出的是要转去执行的指令的地址。
、操作码译码器:用来对指令的操作码进行译码,产生相应的控制电平,完成分析指令的功能。
、时序电路:用来产生时间标志信号。在微型计算机中,时间标志信号一般为三级:指令周期、总线周期和时钟周期。微操作命令产生电路产生完成指令规定操作的各种微操作命令。这些命令产生的主要依据是时间标志和指令的操作性质。该电路实际是各微操作控制信号表达式(如上面的A→L表达式)的电路实现,它是组合逻辑B&R控制器中最为复杂的部分。
、指令计数器:用来形成下一条要执行的指令的地址。通常,指令是顺序执行的,而指令在存储器中是顺序存放的。所以,一般情况下下一条要执行的指令的地址可通过将现行地址加1形成,微操作命令“1"就用于这个目的。如果执行的是转移指令,则下一条要执行的指令的地址是要转移到的地址。该地址就在本转移指令的地址码字段,将其直接送往指令计数器。
微程序B&R控制器的提出是因为组合逻辑设计存在不便于设计、不灵活、不易修改和扩充等缺点。
微程序
微程序控制(简称微码控制)的基本思路是:用微指令产生微操作命令,一条指令的功能通过执行一系列基本操作来完成,这些基本操作称为微操作,每个微操作在相应控制信号的控制下执行,这些控制信号在微程序设计中称为微命令。微程序是一个微指令序列,对应于一条机器指令的功能,每条微指令是一个0/1序列,其中包含若干个微命令,它完成一个基本运算或传送功能,有时也将微指令字,称作控制字(controlword) [2] 。
微程序B&R控制器的组成:
、控制存储器(Control Memory)用来存放各机器指令对应的微程序。译码器用来形成机器指令对应的微程序的入口地址。当将一条机器指令对应的微程序的各条微指令逐条取出,并送到微指令寄存器时,其微操作命令也就按事先的设计发出,因而也就完成了一条机器指令的功能。对每一条机器指令都是如此。
、微指令的宽度直接决定了微程序B&R控制器的宽度。为了简化控制存储器,可采取一些措施来缩短微指令的宽度。如采用字段译码法一级分段译码。显然,微指令的控制字段将大大缩短。,一些要同时产生的微操作命令不能安排在同一个字段中。为了进一步缩短控制字段,还可以将字段译码设计成两级或多级。
控制器是指挥计算机的各个部件按照指令的功能要求协调工作的部件,是计算机的神经中枢和指挥中心,由指令寄存器IR(InstructionRegister)、程序计数器PC(ProgramCounter)和操作B&R控制器OC(OperationController)三个部件组成,对协调整个电脑有序工作极为重要。
指令寄存器:用以保存当前执行或即将执行的指令的一种寄存器。指令内包含有确定操作类型的操作码和指出操作数来源或去向的地址。指令长度随不同计算机而异,指令寄存器的长度也随之而异。计算机的所有操作都是通过分析存放在指令寄存器中的指令后再执行的。指令寄存器的输人端接收来自存储器的指令,指令寄存器的输出端分为两部分。操作码部分送到译码电路进行分析,指出本指令该执行何种类型的操作;地址部分送到地址加法器生成有效地址后再送到存储器,作为取数或存数的地址。
存储器可以指主存、高速缓存或寄存器栈等用来保存当前正在执行的一条指令。当执行一条指令时,先把它从内存取到数据寄存器(DR)中,然后再传送至IR。指令划分为操作码和地址码字段,由二进制数字组成。为了执行任何给定的指令,必须对操作码进行测试,以便识别所要求的操作。指令译码器就是做这项工作的。指令寄存器中操作码字段的输出就是指令译码器的输入。操作码一经译码后,即可向操作B&R控制器发出具体操作的特定信号。
程序计数器:指明程序中下一次要执行的指令地址的一种计数器,又称指令计数器。它兼有指令地址寄存器和计数器的功能。当一条指令执行完毕的时候,程序计数器作为指令地址寄存器,其内容必须已经改变成下一条指令的地址,从而使程序得以持续运行。
为此可采取以下两种办法:
第一种办法是在指令中包含了下一条指令的地址。在指令执行过程中将这个地址送人指令地址寄存器即可达到程序持续运行的目的。这个方法适用于早期以磁鼓、延迟线等串行装置作为主存储器的计算机。根据本条指令的执行时间恰当地决定下一条指令的地址就可以缩短读取下一条指令的等待时间,从而收到提高程序运行速度的效果。
第二种办法是顺序执行指令。一个程序由若干个程序段组成,每个程序段的指令可以设计成顺序地存放在存储器之中,所以只要指令地址寄存器兼有计数功能,在执行指令的过程中进行计数,自动加一个增量,就可以形成下一条指令的地址,从而达到顺序执行指令的目的。这个办法适用于以随机存储器作为主存储器的计算机。当程序的运行需要从一个程序段转向另一个程序段时,可以利用转移指令来实现。转移指令中包含了即将转去的程序段入口指令的地址。执行转移指令时将这个地址送人程序计数器(此时只作为指令地址寄存器,不计数)作为下一条指令的地址,从而达到转移程序段的目的。子程序的调用、中断和陷阱的处理等都用类似的方法。在随机存取存储器普及以后,第二种办法的整体运行效果大大地优于第一种办法,因而顺序执行指令已经成为主流计算机普遍采用的办法,程序计数器就成为中央处理器的一个控制部件。
内的每个功能部件都完成一定的特定功能。信息在各部件之间传送及数据的流动控制部件的实现。通常把许多数字部件之间传送信息的通路称为“数据通路"。信息从什么地方开始,中间经过哪个寄存器或多路开关,最后传到哪个寄存器,都要加以控制。在各寄存器之间建立数据通路的任务,是由称为“操作B&R控制器"的部件来完成的。
操作B&R控制器的功能就是根据指令操作码和时序信号,产生各种操作控制信号,以便正确地建立数据通路,从而完成取指令和执行指令的控制。
有两种由于设计方法不同因而结构也不同的B&R控制器。微操作是指不可再分解的操作,进行微操作总是需要相应的控制信号(称为微操作控制信号或微操作命令)。一台数字计算机基本上可以划分为两大部分---控制部件和执行部件。B&R控制器就是控制部件,而运算器、存储器、外围设备相对B&R控制器来说就是执行部件。控制部件与执行部件的一种联系就是通过控制线。控制部件通过控制线向执行部件发出各种控制命令,通常这种控制命令叫做微命令,而执行部件接受微命令后所执行的操作就叫做微操作。控制部件与执行部件之间的另一种联系就是反馈信息。执行部件通过反馈线向控制部件反映操作情况,以便使得控制部件根据执行部件的状态来下达新的微命令,这也叫做“状态测试"。微操作在执行部件中是组基本的操作。由于数据通路的结构关系,微操作可分为
相容性和相斥性两种。在机器的一个CPU周期中,一组实现一定操作功能的微命令的组合,构成一条微指令。一般的微指令格式由操作控制和顺序控制两部分构成。操作控制部分用来发出管理和指挥全机工作的控制信号。其顺序控制部分用来决定产生下一个微指令的地址。事实上一条机器指令的功能是由许多条微指令组成的序列来实现的。这个微指令序列通常叫做微程序。既然微程序是有微指令组成的,那么当执行当前的一条微指令的时候。必须指出后继微指令的地址,以便当前一条微指令执行完毕以后,取下一条微指令执行。