CN1040588C - 适用于实现顺序控制和伺服控制的计算机控制系统和方法 - Google Patents
适用于实现顺序控制和伺服控制的计算机控制系统和方法 Download PDFInfo
- Publication number
- CN1040588C CN1040588C CN 86105135 CN86105135A CN1040588C CN 1040588 C CN1040588 C CN 1040588C CN 86105135 CN86105135 CN 86105135 CN 86105135 A CN86105135 A CN 86105135A CN 1040588 C CN1040588 C CN 1040588C
- Authority
- CN
- China
- Prior art keywords
- directive
- program
- address
- instruction
- cpu
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
在一种用于实现顺序控制和伺服控制的计算机系统和方法中,利用三种类型的并行处理指令来编制程序,此三种不同类型指令包括打开指令、关闭指令和暂停指令。来自第一程序的打开指令用来并行地处理第二程序。从第一程序发出的关闭指令终止第一或第二程序。从第一程序发出的暂停指令使第一程序停止执行一个限定的时间间隔。用此系统后,就不必用系统语言作为编程语言,而可用像BASIC和FORTRAN那样一类的语言。
Description
本发明涉及一种用于实现顺序控制和伺服控制的计算机控制系统和方法。
已经用可编程控制器(PC)或计算机化数字控制器(CNC)实现了顺序控制和伺服控制。然而,这些控制系统在程序设计时牵涉到某些问题。例如,在用PC的情况下,因为程序是用梯形图来编制的,这就存在着一个巨大的缺点,即不能按照与通用计算机同样的方法来编制该程序。更具体地说,当使用梯形图来编制程序时,要象顺序线路那样的流程来编制程序是困难的,在顺序线路中其结果随线路的过去或先前状态而有所不同。即使能编制这样的程序,象计算机程序那样,包括有许多内容的复杂程序的编制会碰到多得多的困难。此外,为自动地编制程序段的辅助装置以及编程技术比在高级通用计算机中的那些要低劣得多,所以这样的一些装置和技术不能用于PC。
由于PC的控制速度受到循环时间的限制,所以不能获得低于几毫秒的高响应速度。还有,因为PC的输入/输出接口数还受到限制,在许多场合下,不可能输入和输出数字的数据。另外,以PC来判断包括算术运算的条件是有困难的。结果,用PC去直接控制顺序系统或伺服系统存在着困难。
在CNC场合下,因为它利用了计算机,所以系统的硬件和软件都变得很复杂。基于这一原因,对于不熟悉软件的机械工程师或安装工程师来说,编制程序或变动顺序是有困难的。为了避免由使用系统语言所引起的困难,虽然已经提出在系统中利用专门适用于顺序控制的宏指令组,但是现有技术的宏指令组都是解释程序,以致存在着顺序的执行速度低和性能受到限制这样一些问题。
因此,本发明的一个目的是要提供一种新颖的计算机系统,这种系统能够以诸如BASIC和FORTRAN那样的语言,而不是常规的系统语言来实现顺序控制或伺服控制。
本发明的另一个目的是要提供一种能够减少标记、定时器等的数目,从而使程序简化的、新颖的计算机系统。
根据本发明,提供了一种用于实现顺序控制和伺服控制的计算机系统,此系统包括:第一和第二程序,从第一程序发出一个打开指令以启动第二程序的并行处理的装置;从所述第一程序发出一个关闭指令以终止第一或第二程序,以及发出一暂停指令以使得在一限定的时间间隔内停止执行第一程序的装置。打开指令、关闭指令和暂停指令用作并行处理指令。
根据本发明的一个实施方案,提供了一种用以执行包括:打开指令、关闭指令和暂停指令三种型式并行处理指令的计算机系统,此计算机系统包括:一个中央处理单元(CPU);一个由一计数器组成的定时器,此计数器在每一预定时间被一限定的计数所更新,它还被连接到该CPU并借此读出它的内容;程序存储装置,以存储由CPU所执行的顺序控制和伺服控制的程序;一个程序计数器,它连接到CPU和程序存储装置,以指定程序存储装置的一个地址,在此地址处存储有一条下一步将要执行的指令,根据CPU所执行指令的类型去更新此程序计数器的内容;一个地址表,它连接到CPU和程序计数器,用于寄存由打开指令和暂停指令所指定的程序地址,寄存的地址表的地址根据关闭指令被检索和擦除;一个时间表,它连接到CPU并写有预定开始执行寄存于地址表内程序的时间;一个指示字,它连接在地址表和时间表之间,并且连接到CPU,用以扫描地址表和时间表的相应部分。
根据本发明的一个修改了的实施方案,提供了一种适用于顺序控制和伺服控制的计算机系统,它包括一个中央处理单元(CPU);一个中断信号时钟,它可在一预定的时间间隔内把中断加于CPU;程序存储装置,用以存储由CPU执行的顺序控制和伺服控制程序;一个程序计数器,它连接到CPU和程序存储装置,以指定程序存储装置的一个地址,在此地址处存储有一条下一步执行的指令,根据CPU所执行指令的类型去更新此程序计数器的内容;许多服务电路,每一电路包括一个地址表、一个服务指示字、一个顶部指示字和一个编目指示字;一个暂停指示字,它由CPU控制,用以在初始状态下选择一个具有最短暂停时间的服务电路,地址表连接到程序计数器,用于寄存由打开指令和暂停指令所指定的程序地址;寄存的地址表地址根据关闭指令被检索和擦除;服务指示字指定地址表的位置,此地址表存储有当前正在使用的一个程序的地址;顶部指示字指示一个打算使用并存储在存储表内的程序的前导地址;编目指示字指示由一打开指令写入的地址表的位置。
在附图中:
图1是表示打开指令工作情况的流程图;
图2和3是阐明关闭指令工作情况的流程图;
图4是阐明暂停指令工作情况的流程图;
图5和6的流程图分别表示利用打开指令、关闭指令和暂停指令的一些实例;
图7是表示实施本发明的一种计算机系统的方框图;
图8是表示本发明的一种变型的实施方案的方框图。
在本发明中,对于顺序控制和伺服控制,不是把系统语言用作为编程语言,而用象BASIC和FORTRAN那样能容易地被不熟悉计算机系统软件技术的人所使用的语言。应该说明,如果需要,系统语言也可与这些语言一起使用。
当使用这样的一些语言时,因为机械设备比计算机的工作速度低,当编制程序时会引起一个问题。更详细地说,当程序中有着许多等待时间时,在等待期间,计算机被迫执行循环,以致计算机成为空闲。为了精确地决定等待时间,必须使用许多标记和定时器,因而使程序复杂化。
为解决这一问题而提出的利用并行处理的程序能够通过系统语言来编制,但象BASIC和FORTRAN那样的语言却不能使用。本发明用包括打开指令、关闭指令和暂停指令三种类型的并行处理指令就能解决这一问题。
打开指令“OPEN β(打开β)”的工作情况示于图1的流程图中。打开指令“OPEN β”使一不同于正在执行的程序α的程序β开始执行。在执行这一指令后,程序α和β同时并行执行。尽管是在顺序控制下,但是许多序列在同时被并行执行,而且在此场合利用打开指令来执行并行处理。
关闭指令“CLOSE β(关闭β)”的工作情况示于图2和3。根据程序α,关闭指令强迫目前在并行执行的程序β终止。在关闭指令已执行后,程序β的停止强迫目前正在执行的一条指令终止。在同一程序执行多任务之处,例如并行处理多元程序β之处,所有这些程序都被强迫终止。在使用“CLOSE β”之处,处理完成和处理终止的监控是通过一专为此目的而用的程序来实现的。关闭指令“CLOSEα”也可用来终止自己的程序。
暂停指令“PAUSE t(暂停t)”的工作情况示于图4。在执行这一指令时,程序α的执行被中断一个由参量t决定的、毫秒量级的时间间隔,后恢复顺序的处理。假定参量t为“35”,则在执行进程r后,程序α被中断执行35毫秒,然后程序α恢复执行,从而去执行过程δ。在执行暂停指令“PAUSE t”期间,其它程序还是没有中断地被继续执行。借助于中断指令“PAUSE t”,可以提供等待完成机械操作和输入/输出所需时间,而不需设置专门的定时器。因为并行的一组程序中的单个程序的暂停与利用循环来造成处理等待的情况不同,在中断期间,不需使其他序列的处理等待。
参阅图5所示的流程图,叙述一种利用三种并行处理指令来实现顺序控制和伺服控制的方法,这三种并行处理指令包括上面所述的打开指令、关闭指令和暂停指令。
一个示于流程图中的子程序“ALARM(报警)”通常用来检测程序“SERVO(伺服)”中的故障标记,当此程序中发生故障时,就能提供一个作息。当在程序“SERVO”中发生故障时,根据故障的类型,把排列“ERROR(故障)”中的一个元素的值设置成“1”。要显示的排列“ERROR”中的元素的各自的故障信息被存储在排列“TABLE(表格)”的相应元素内。用一在主程序内的打开指令“OPEN ALARM(打开报警)”来启动子程序“ALARM”,并与程序“伺服”并行执行。启动后,在SI步 1处变量R1被设置为“O”。此后,在S2步处作一判别,看排列“ERROR”内的一个元素“ERROR(R1)”是否已被置“1”。当此判别的结果为“否”时,在S3步处,为了重复同样的操作以校验排列“ERROR”中的下一个元素,变量R1递增1。在步骤S4做出判断,在排列“ERROR”中的多少元素已经被校验。如果64个排列“ERROR”的所有元素都不是“1”,即意味着没有发现故障,则在S5步处,按照暂停指令“PAUSE50(暂停50)”等待50毫秒后,同样的过程被重复。
在S2步处,如果判别出故障(R1)已被置“1”,则在S6步处,在排列“TABLE(表格)”中相应于在排列“ERROR”中已被变换成“1”的一个元素,根据指令“MESSAGE=TABLE(R1)”,去替代变量“MESSAGE”。于是在S7步处,通过打开显示指令“OPEN DISPLAY”去启动一显示程序,以显示存储在排列“VARIABLE(变量)”中的一个信息。通过关闭指令“CLOSE SERVO(关闭伺服)”,在S8步处使已发生故障的程序“SERVO”被终止。利用包括打开指令、关闭指令和暂停指令的并行处理程序,则在时间间隔为50毫秒内的故障校验、故障显示以及已发生故障程序的终止能够不依赖于程序“SERVO”而被实现。
现通过参考图6所示流程图来描述控制伺服系统和顺序系统的一个程序的实例。
在此程序中,在S10和S11步处,一个启动信号经常是在时间间隔30毫秒被校验。当在S10步处检测到一个启动信号时,在S12步处指定伺服系统的速度为每分钟200转。在S13和S14步处,每5毫秒打开伺服程序一次。在S15和S16步处,判别停止信号是否已输入以及限位开关是ON(接通)还是OFF(切断)。如果没有停止信号且限位升关是切断的,则程序返回到S13步,从而重复S13、S14、S15和S16步。如果检测到停止信号或限位开关是接通的,则在S20步处,指定伺服系统的速度为零。此后,在S21和S22处,每5毫秒打开伺服程序一次。于是在S23处,判别电源是切断还是接通。
如上所述,象BASIC和FORTRAN这样一类的语言,通过加上打开指令、关闭指令和暂停指令,可以很容易地实现顺序控制和伺服控制。现在将参照图7所示的方框图来描述引入这些并行处理指令的一种计算机系统。
中央处理单元(CPU)2连接到程序计数器3和程序存储装置4。程序计数器3指定一个存储着下一步即将执行的程序的程序存储器4的地址,而此CPU2处理一个由程序计数器3的内容指定的、在程序存储器中的地址,根据执行指令的类型更新程序计数器的内容。更详细地说,在用通常的指令情况下,此程序计数器的工作情况与通常的通用计算机中的程序计数器的工作方式相同。对于打开指令,程序计数器的内容被更新成在打开指令后的一条指令的地址。为了终止一个包含执行的关闭指令的程序,程序计数器的内容被更新成一个从地址表5选出的地址。在其它情况下此内容被更新成在关闭指令后的一条指令的地址。在暂停指令的情况下,此内容被更新成选自地址表5的一个地址。程序存储装置4存储要执行的顺序控制、伺服控制或类似控制的程序。地址表5存储由一打开指令和一暂停指令指定的程序地址。更具体地说,(1)在打开指令的情况下,把由一变量指定的程序地址,写入通过扫描找出的表的闲置或空位里。在扫描时间内利用指示字6指定表的空位部分。(2)在暂停指令情况下,把跟随在此暂停指令后的一条指令的地址写入或寄存在地址表中。通过关闭指令检索和擦除写入的地址。(3)在关闭指令场合下,通过扫描来查找和擦除由一变量指定的程序地址。此寄存的地址在被关闭指令或暂停指令参照后就被擦除。(4)在关闭指令的场合下,执行完第(3)点的操作后,以及在暂停指令情况下执行完第(2)点操作后,通过CPU,由于扫描的结果把由指示字6指定的时间表7的内容转移到程序计数器3中,而由指示字6指定的地址表的内容被擦除。
定时器1连接到CPU2,并且它是由一计数器构成的,此计数器通过在每一限定的时间间隔处的一个限定的计数所更新。通过CPU2可读出此计数器的内容,读出的内容相当于读时的计数。
在扫描地址表5和时间表7时,利用了指示字6,表5和表7有着一一对应的关系。因此,指示字6为两个表所公用,并指定两个表的相应部分。此外,指示字6用以读写两表。
时间表7是在寄存在地址表内的程序开始执行时被写的。被写的位置由指示字6指定,并对应于地址表寄存程序的部分。更具体地说,(1)在打开指令情况下,定时器1的读数对应于一预定时间,在此时间开始执行。(2)在暂停指令情况下,定时器的时间和由暂停指令变量指定的暂停时间之和成为预定时间,在此时间,开始执行。
根据本发明,下面将叙述图7中所示的计算机系统执行通常的指令、打开指令、关闭指令和暂停指令的方法。
在初始状态下,一种要执行的顺序控制、伺服控制或类似的控制被存储于程序存储器4内,而程序计数器3保存有一程序的起始执行地址。定时器1用信号“O”来复位。在指示字6被设定在指示着地址表5和时间表7的前端或顶部地址时,地址表5和时间表7是空着的CPU2在存于程序计数器内的地址处重复取出和执行指令的操作。如果已写入的指令是通常的指令而不是打开指令、关闭指令和暂停指令,则此指令按着与通常计算机内同样的方式来执行,去更新程序计数器3的内容。如果已写入的指令是一打开指令,则时间表7首先被指示字6所扫描,以找出一个地址的空位部分。然后,由CPU2把定时器1的值写入时间表7的空位部分,把要打开的程序的起始或前端地址写入与地址表5相同的部分。此后,程序计数器3的内容被用来更新跟随在打开指令后面的一条指令的地址,用以开始执行下一条程序。
当已写入的指令是一条关闭指令,用以终止包含有此关闭指令的一个程序时,定时器1的值被写入CPU2中,而指示字6扫描时间表7,用以检索一个小于定时器1的值。如果找不到这样一个值,则定时器1的值被再次写入,以重复同一操作。当寄存的值小于定时器1的值时,把由指示字6所指明的地址表5的内容转移到程序计数器3中,以便擦除掉由指示字6指出的时间表7和地址表5的内容,从而开始执行一条由程序计数据器3的内容所示的指令。照此方式,原来的程序被终止,而开始了其它的程序。
在已写入的是关闭指令但不象上述那样的关闭指令的场合,指示字6扫描地址表5,以擦除要关闭的一个程序以及在同一位置处时间表7的内容,从而由一关闭指令引起一程序的终止。
在已写入的指令是一暂停指令的情况下,指示字6造成对时间表7的扫描,以从它那里寻找一个空闲部分。然后CPU2取入时间表1的值,并把此值与暂停时间相加,再把其和写入时间表7的空闲部分。并且把此暂停指令后的一条指令的地址也写入时间表5的同一位置。在此暂停期间,该程序被上述操作暂停执行后,另一能执行的程序被检索。因而,CPU2取入定时器1的值,并且用指示字6扫描此时间表,以查找一个小于定时器1值的值。如果没有这样的值,则定时器1的值被再度读入,以重复同样的操作。如果寄存了一个小于定时器1值的值,则把指示字6指出的地址表5的内容转移到程序计数器3,把指示字6指出的时间表7和地址表5的内容擦除,从而开始执行程序计数器读数所示的一条指令。照此方式,暂停了原来的程序,执行其它的程序。
以这种方式,上述计算机系统不但可执行常的指令,而且可执行打开指令、关闭指令和暂停指令。
如上所述,打开指令、关闭指令和暂停指令能够根据定时器1的值来执行。如图8所示,对各个暂停指令提供大量的服务电路9能够有效地完成相似的操作。
如图所示,CPU2连接到程序计数器3和程序存储器4,而存储在连接到程序存储器4的程序计数器内的一个地址的指令被读出并供给CPU2执行。中断时钟11连接到CPU2,在一限定的时间间隔处给CPU2加一中断。此外,CPU2连接到大量的服务电路9,再连接到用来选用服务电路9中的一个电路的暂停指示字71。每一服务电路9包括一个地址表5、一个服务指示字61、一个顶部指示字62和一个编目指示字63,如图8中所示把这些指示字加到地址表5。与一暂停时间相对应的暂停指示字71,对这些服务电路进行选择。在一限定的时间隔处中断时钟11把中断加于CPU2。CPU2决定中断申请的时间,并更新暂停指示字71的内容,这样相应于此决定的时间,选出服务电路9中的一个电路。
服务指示字61的用途是指明地址表5中存储着现在正被使用的程序的地址的位值。在初始状态下,服务指示字61指明地址表5的前端位置。用一关闭指令或暂停指令结束现在正在使用的程序后,此服务指示字被更新至下一个位置。当更新了的内容与顶部指示字62的内容一致时,程序将不执行,而服务指示字61的内容被更新。
顶部指示字62的用途是指明地址表5中要用程序的前端地址的位置。因此,在初始状态下,顶部指示字62指明地址表的前端位置。当选定一个包括一顶部指示字62的服务电路9时,把顶部指示字62的内容转移到服务指示字61。
编目指示字63的用途是指明地址表5中的,按照一打开指令和一暂停指令来写入一条指令的位置。因此,在初始状态下,编目指示字63指明地址表5的前端位置。在执行完打开指令后,地址表的位置被更新成下一个位置。当选择一包括编目指示字63的服务电路时,把编目指示字63的内容转移到顶部指示字62。
暂停指示字71的用途是要选择服务电路9中的任一个。因此,在初始状态下,它选择一个有着最短暂停时间的底务电路。当由中断时钟11加上中断时,或当服务指示字61和顶部指示字62的内容相一致时,暂停指示字71被更新。虽然有许多更新的方法,但下面的方法是较好的。更具体地说,当应用一中断时,暂停指示字71的内容被更新以选择一个有着最短暂停时间的服务电路9。当服务指示字61和顶部指示字62的内容相互一致时,会选择这样一个服务电路,此服务电路相应的暂停时间长度仅次于已被选定的一个服务电路9的暂停时间长度。
一种利用图8所示的计算机系统来执行本发明的常规指令、打开指令、关闭指令和暂停指令的方法叙述如下。
启动CPU2后,暂停指示字71选择相应于一个暂停时间的服务电路9中的一个。暂停指示字71由CPU2所设置,使相应于一些预定的暂停时间来选择伺服电路9,这些暂停时间是用中断时钟11发生的中断时钟脉冲来度量的。选定的服务电路9的顶部指示字62的内容被转移到服务指示字61,而编目指示字63的内容被转移到顶部指示字62。把由服务指示字61指定的地址表5的一个地址转移到程序计数器3,以使得由程序计数器3指定的、存储在程序存储器4内的一条指令被CPU2执行。此后,按通常计算机中相同的方式,根据执行了的一条指令来更新程序计数器3的内容,从而继续服务操作。
执行打开指令的操作如下。要打开程序的起始地址寄存在由服务电路9的编目指示字63所指定的地址表5中,此服务电路9由一附加的变量来指定,而且编目指示字63的内容被更新以指示地址表5的下一个位置。当到达地址表5的最后部分时,服务指示字61和编目指示字63的内容被更新,以指示地址表5的顶部。
在执行一关闭指令后,由一附加变量指示的服务电路9的地址表的地址被扫描,以擦除要关闭的程序。
在执行一暂停指令后,暂停指令的下一个地址寄存在由一服务电路9的编目指示字63所指定的地址表5中,此服务电路9由一附加的变量来指示。由暂停指示字71所选定的一个服务电路9的服务指示字61的内容被更新,以指示地址表5的下一个位置,以相互比较服务指示字61和顶部指示字62的内容。如果比较的内容相互不一致,则在启动CPU2的操作后,程序转移到要执行的操作。比较相等时,程序转移启动上述操作,从而CPU2更新暂停指示字71。
如上所述,用图8所示的计算机系统,不但可执行通常的指令,而且还可执行打开指令、关闭指令和暂停指令。
虽然在图7所示的实施方案中,系统是由包括地址表5、指示字6和时间表7的硬件所构成,但这样的系统也能以附加有一定时器1(参阅图7)的一通用计算机和适当的软件来实现。
如上所述,根据本发明,可以用不同于系统语言的,诸如BASIC和FORTRAN语言,来方便地实现顺序控制和伺服控制。此外,因为标记数和定时器数能大大地减小,所以程序变得简单而清楚。在要求高速操作和特殊计算的场合,可以同时使用象ASSEMBLER(汇编)那样的语言。通过利用具有一时间表和一地址表的硬件实现的本发明,能够实现有效的控制。
Claims (16)
1.一种执行三种类型并行处理指令的计算机控制系统,所述三种类型并行处理指令包括:打开指令、关闭指令和暂停指令,所述计算计系统包括:
一个中央处理单元(CPU);
一个定时器,它包含一个计算器,该计数器在一预定时间间隔被一限定的计数所更新并且连接到所述CPU,在那里被读出;
一个程序存储装置,用以存储将由所述CPU执行的顺序控制和伺服控制程序;
一个程序计数器,它连接到所述CPU和所述程序存储装置,用于指定所述程序存储装置的一个地址,所述地址处存储着一条下一步将要执行的指令,根据由所述CPU执行的一条指令的类型去更新所述程序计数器的内容;
一个地址表,它连接到所述CPU和所述程序计数器,用于寄存由一打开指令和一暂停指令所指定的程序地址,根据一关闭指令检索和擦除所述地址表寄存的地址;
一个时间表,它连接于所述CPU并以来自所述定时器的一预定的时间写入,用于启动一个寄存在所述地址表内的程序;
一个指示字,它连接于所述地址表和所述时间表之间,再连接到所述CPU,用于扫描所述地址表和所述时间表的相应部分。
2.根据权利要求1的计算机控制系统,其中所述程序计数器的内容被更新成一个跟随在打开指令后的一条指令的地址,或者当终止一个包含有执行关闭指令的程序时,所述程序计数器的内容被更新成一个从所述地址表中选出的地址,或者所述内容被更新成跟随在关闭指令后的一条指令的地址,或被更新成一根据一暂停指令由所述地址表选出的一个地址。
3.根据权利要求1的计算机控制系统,其中在所述打开指令的情况下,所述的地址表存有由变量指定的程序的地址,该变量存储在所述地址表的一个空位部分,这是通过所述字对所述地址表进行扫描找到的。
4.根据权利要求1的计算机控制系统,其中在所述暂停指令的情况下,所述地址表寄存有一跟随在一暂停指令后的一条指令的地址。
5.根据权利要求1的计算机控制系统,其中在一关闭指令的情况下,通过扫描,检索和擦除由一变量指示的且寄存在所述地址表中的一个程序地址。
6.根据权利要求1的计算机控制系统,其中寄存在所述地址表中的地址由上述指示字进行检索,并被一条关闭指令擦除掉。
7.根据权利要求1的计算机控制系统,其中在执行所述关闭或暂停指令后,在所述CPU的控制下,将所述指示字所指定的位置处的所述时间表的内容转移到所述程序计数器,上述的CPU根据指令控制上述时间表从上述的程序存贮装置中读出。
8.根据权利要求1的计算机控制系统,其中所述指示字还用来读和写所述地址表和所述时间表。
9.根据权利要求1的计算机控制系统,其中所述预定时间,在打开指令时相应于所述计数器的读数,在暂停指令时相应于由一暂停指令变量所指定的暂停时间与所述读数之和。
10.一种适用于顺序控制和伺服控制的计算机控制系统,它包括:
一个中央处理单元(CPU);
一个中断时钟,它在预定的时间间隔处给所述CPU加一中断;
程序存储装置,用以存储将由所述CPU执行的顺序控制和伺服控制程序;
一个程序计数器,它连接到所述CPU和所述程序存储装置,用于指定所述程序存储装置的一个地址,在所述地址处存储有下一步将要执行的一条指令,所述程序计数器的内容根据由所述CPU所执行的一条指令的类型而被更新;
一组服务电路,连接到所述CPU和所述程序计数器,每一个服务电路包括:一个连接到所述程序计数器的地址表、一个服务指示字、一个顶部指示字和一个编目指示字,所述指示字连接到所述地址表;
一个暂停指示字,它由所述CPU控制,用来在初始状态下从所述服务电路中选择一个有着最短暂停时间的电路;
所述地址表连接到所述程序计数器,用于寄存由一条打开指令和一条暂停指令所指定的程序地址;
根据一条关闭指令,所述地址表寄存的地址被检索和擦除;
所述服务指示字,指示所述地址表中现时正被使用着的一个程序的地址;
所述顶部指示字,指出一个将被使用并已存储于所述地址表内的程序的前端地址;
所述编目指示字,指出由一条打开指令和一条暂停指令所写的地址表的位置。
11.根据权利要求10的计算机控制系统,其中所述CPU决定一个时间,在此时间加上所述中断信号,以便更新所述暂停指示字,使得所述暂停指示字根据一个暂停时间来选择出所述服务电路中的一个。
12.根据权利要求10的计算机控制系统,其中用一条关闭指令和一条暂停指令去结束目前正在使用的一个程序后,所述服务指示字的内容被更新到下一个位置。
13.根据权利要求10的计算机控制系统,其中当所述服务指示字已更新了的内容与所述顶部指示字的内容一致时,程序不执行,且所述服务指示字的内容被更新。
14.根据权利要求10的计算机控制系统,其中通过所述暂停指示字来选出一个包含有一给定顶部指示字的服务电路,而所述顶部指示字的内容被转移到所述服务指示字。
15.根据权利要求10的计算机控制系统,其中,通过所述暂停指示字,选出了一个包含有一给定编目指示字的服务电路,所述编目指示字的内容被转移到所述顶部指示字。
16.根据权利要求10的计算机控制系统,其中当加一中断信号于所述CPU时或当所述服务指示字和所述顶部指示字的内容相互一致时,所述暂停指示字被更新。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 86105135 CN1040588C (zh) | 1986-08-20 | 1986-08-20 | 适用于实现顺序控制和伺服控制的计算机控制系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 86105135 CN1040588C (zh) | 1986-08-20 | 1986-08-20 | 适用于实现顺序控制和伺服控制的计算机控制系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN86105135A CN86105135A (zh) | 1988-04-20 |
CN1040588C true CN1040588C (zh) | 1998-11-04 |
Family
ID=4802738
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 86105135 Expired - Fee Related CN1040588C (zh) | 1986-08-20 | 1986-08-20 | 适用于实现顺序控制和伺服控制的计算机控制系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1040588C (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050050305A1 (en) * | 2003-08-28 | 2005-03-03 | Kissell Kevin D. | Integrated mechanism for suspension and deallocation of computational threads of execution in a processor |
CN100397271C (zh) * | 2004-12-01 | 2008-06-25 | 上海宝信软件股份有限公司 | 求取子控制系统启动顺序的方法 |
CN107866807B (zh) * | 2016-09-27 | 2020-07-10 | 珠海格力智能装备有限公司 | 状态机控制方法及装置、机器人控制系统 |
CN108052026B (zh) * | 2017-12-18 | 2019-12-24 | 天俱时工程科技集团有限公司 | 玉米淀粉半连续浸渍自动控制方法 |
-
1986
- 1986-08-20 CN CN 86105135 patent/CN1040588C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN86105135A (zh) | 1988-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5274813A (en) | Operation system having a migration function which moves saved data associated with an interrupted process to a different save area | |
US5491625A (en) | Information display system for actively redundant computerized process control | |
EP0530543A1 (en) | I/O controller apparatus and method for transferring data between a host processor and multiple I/O units | |
EP0157075B1 (en) | Modular data processing system | |
WO1995017706A9 (en) | Information display system for actively redundant computerized process control | |
JPH0754500B2 (ja) | 共用割込みシステム | |
JPH0131214B2 (zh) | ||
JPH04314160A (ja) | ダイナミックポーリング装置、機械処理方法、コントローラ及びデータ処理システム | |
EP0387871B1 (en) | Extended memory address control system | |
CN100351790C (zh) | 以两种操作模式执行软件中断指令的方法和计算机系统 | |
US5418968A (en) | System and method for controlling interrupt processing | |
US5974346A (en) | Method for controlling technical processes | |
CN1040588C (zh) | 适用于实现顺序控制和伺服控制的计算机控制系统和方法 | |
US5377353A (en) | Method for managing common data stored in a memory accessible by a plurality of programs | |
NO834726L (no) | Lagerprogrammerbar styring med ord- og bitprosessor | |
KR20010085997A (ko) | 프로그램 스레드 디버깅 방법 | |
JPH07104830B2 (ja) | コンピュータ・システム及びコンピュータ・システムを作動させる方法 | |
CN110221861A (zh) | 一种cpu新型寄存器体系结构及其中断处理方法 | |
US4907190A (en) | Computer control system and method for effecting sequence controls and servo-controls | |
CN87106625A (zh) | 按预定顺序执行两个指令序列的方法和设备 | |
Mustafa | Microcomputer interfacing and applications | |
EP0256149B1 (en) | Computer system | |
JP2846760B2 (ja) | プログラマブルコントローラ | |
KR960014825B1 (ko) | 정보처리시스템 | |
Mensh et al. | Extended FORTRAN for process control |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
RJ01 | Rejection of invention patent application after publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |