CN108563557B - 一种多通道计算机的通道同步方法及装置 - Google Patents
一种多通道计算机的通道同步方法及装置 Download PDFInfo
- Publication number
- CN108563557B CN108563557B CN201810129188.8A CN201810129188A CN108563557B CN 108563557 B CN108563557 B CN 108563557B CN 201810129188 A CN201810129188 A CN 201810129188A CN 108563557 B CN108563557 B CN 108563557B
- Authority
- CN
- China
- Prior art keywords
- channel
- synchronization
- channels
- application
- synchronous
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3632—Software debugging of specific synchronisation aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
- Hardware Redundancy (AREA)
Abstract
本申请涉及计算机技术领域,尤其涉及一种多通道计算机的通道同步方法及装置,以解决现有技术中不同通道间同步精度较低的问题;本申请实施例提供的通道同步方法,包括:通过调试电缆接收同步停止信号,使各通道中的应用同步停止,实现对任一中断应用的调试,其中,根据以下步骤使每一通道中的应用停止:确定同步停止信号到达通道内CPU板时,触发外部中断,中断通道中正在运行的应用,保存各中断应用的上下文信息;接收到同步运行指令时,使各通道中的应用同步运行,其中,根据以下步骤使每一通道中的应用运行:触发通道与其它通道进行同步,恢复通道中各中断应用的上下文信息,使各中断应用运行。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种多通道计算机的通道同步方法及装置。
背景技术
在航空机载计算机领域,为了提高控制***的可靠性及容错能力,通常采用多通道设计,且多通道计算机中每一通道均具有输出控制能力。
现有技术中,针对多通道计算机,通常是通过软件的方式来对各通道中的应用进行调试,使用软件调试方式时,同步停止信号是以调试指令的形式发给各个通道,此时,调试指令到达各个通道的时间差会比较大,通常为毫秒级,而多通道计算机中不同通道中的应用都是周期性工作的,周期一般为几毫秒至几十毫秒,这样就可能导致停止时各通道之间的同步时间相差很远,后续各通道再一起运行时各通道之间的同步时间也可能相差很远。
可见,现有技术中的多通道计算机不同通道之间难以达到真正意义上的同步。
发明内容
本申请实施例提供一种多通道计算机的通道同步方法及装置,用以解决现有技术中多通道计算机不同通道之间同步精度比较低的问题。
第一方面,本申请实施例提供的一种多通道计算机的通道同步方法,多通道计算机中各通道中的CPU板均与调试电缆相连,多通道计算机通过调试电缆接收同步停止信号,包括,通过调试电缆接收同步停止信号,使各通道中的应用同步停止,以实现对任一中断应用的调试,其中,针对每一通道,根据以下步骤使该通道中的应用停止:确定同步停止信号到达该通道内的CPU板时,触发外部中断,该外部中断可使该通道中操作***正在运行的应用中断,之后保存该通道中各中断应用的上下文信息,使该通道进入暂停状态,在调试完成之后,若接收到同步运行指令,则使各通道中的应用同步运行,其中,针对每一通道,根据以下步骤使该通道中的应用运行:触发该通道与其它通道进行同步,恢复该通道中中断应用的上下文信息,使该通道中各中断应用继续运行,这样,通过调试电缆来向各通道发送同步停止信号,同步停止信号到达各通道的时间相同,可以将各通道停止时相互之间的时间差控制在最小,后续再一起运行时也可以尽可能地提高各通道之间的同步运行精度。
在一些可能的实施方式中,针对每一通道,多通道计算机确定同步停止信号到达该通道内的CPU板时,还可以中断该通道中操作***使用的所有定时器,并记录中断时每一定时器的计数信息,之后,在恢复该通道中各中断应用的上下文信息之前,可以将该通道中主帧时钟的定时时间设置为同步周期大小,对除主帧时钟之外的每一定时器,根据记录的中断时该定时器的计数信息恢复该定时器的计时,便于后续可以更好地恢复中断应用。
在一些可能的实施方式中,针对每一通道,触发该通道与其它通道进行同步,包括:指示该通道通过同步总线向其它通道发送第一同步信号,并在预设时长内接收其它通道通过同步总线反馈的第一同步信号;指示该通道通过同步总线向其它通道发送第二同步信号;若确定在预设时长内其它各通道均通过同步总线向该通道反馈第二同步信号,则确定各通道之间完成同步;其中,第一同步信号为高电平时,第二同步信号为低电平;第一同步信号为低电平时,第二同步信号为高电平。
采用这种方式,利用两次高低电平的握手来进行通道同步,可以减小一次握手时的不确定性,并且,这里,是由硬件来实现操作***级的通道同步,同步精度更高。
在一些可能的实施方式中,多通道计算机指示每一通道通过同步总线向其它通道发送第二同步信号之前,可以延时预设时长,这是为了避免最后一个发出同步信号的通道在接收到其它通道的同步信号后,需要立刻输出相反的同步信号,减小同步错乱的可能。
具体实施时,各通道之间的同步是周期性进行的,因此,在一些可能的实施方式中,多通道计算机还可以记录每一同步周期内同步失败的通道的信息;对任一通道,若确定该通道连续同步失败的次数达到预设次数,则确定该通道发生故障,切换掉该通道。可以及时发现故障通道,提高多通道计算机的可靠性和安全性。
第二方面,本申请实施例提供的一种多通道计算机的通道同步装置,所述多通道计算机中各通道中的CPU板均与调试电缆相连,通过所述调试电缆接收使各通道中的应用同步停止的信号,包括:
中断模块,用于通过所述调试电缆接收同步停止信号,使各通道中的应用同步停止,以实现对任一中断应用的调试,其中,针对每一通道,根据以下步骤使该通道中的应用停止:确定所述同步停止信号到达该通道内的CPU板时,触发外部中断,中断该通道中正在运行的应用,保存该通道中各中断应用的上下文信息;
恢复模块,用于接收到同步运行指令时,使各通道中的应用同步运行,其中,针对每一通道,根据以下步骤使该通道中的应用运行:确定所述同步运行指令到达该通道内的CPU板时,触发该通道与其它通道进行同步,恢复该通道中各中断应用的上下文信息,使该通道中各中断应用继续运行。
第三方面,本申请实施例提供的一种计算机,包括至少一个处理单元、以及至少一个存储单元,其中,所述存储单元存储有程序代码,当所述程序代码被所述处理单元执行时,使得所述计算机执行上述多通道计算机的通道同步方法的步骤。
第四方面,本申请实施例提供的一种计算机可读存储介质,包括程序代码,当所述程序代码在计算机上运行时,使所述计算机执行上述多通道计算机的通道同步方法的步骤。
另外,第二方面至第四方面中任一种设计方式所带来的技术效果可参见第一方面中不同实现方式所带来的技术效果,此处不再赘述。
本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
附图说明
图1为本申请实施例提供的多通道计算机的示意性结构图;
图2为本申请实施例提供的多通道计算机的通道同步方法流程图;
图3为本申请实施例提供的又一多通道计算机的通道同步方法流程图;
图4为本申请实施例提供的DeltaSVM操作***的调度过程示意图;
图5为本申请实施例提供的多通道计算机在进行通道同步时的示意图;
图6为本申请实施例提供的一种多通道计算机的通道同步装置的示意图;
图7为本申请实施例提供的用于实现多通道计算机的通道同步方法的计算机的硬件结构示意图。
具体实施方式
本申请实施例提供的多通道计算机的通道同步方法和装置,用以实现多通道计算机不同通道之间精确同步。
首先,对本申请实施例中涉及的部分用语进行说明,以便于本领域技术人员理解。
多通道计算机,又叫多余度计算机,计算机中的一个通道称为一个余度,不同通道执行同样的操作,完成相同的工作,主要用于对安全性和稳定性要求比较高的领域,如航空航天飞行控制、空中交通管制和核电站控制等。
调试电缆,包括通信总线和用于传输同步停止信号的信号线。
同步停止信号,为电平信号,用于使多通道计算机中各通道中的应用同步停止,其通过调试电缆到达任一通道中的CPU板时,触发外部中断,该中断会使运行在该通道的CPU上的操作***暂停,在操作***暂停的状态下,该通道中的应用同样处于暂停状态。
同步运行指令:用于使多通道计算机中各通道中的应用同步运行,任一通道在接收到同步运行指令时,会触发自身与其它通道进行通道同步,在与其它各通道完成同步后,恢复运行在该通道的CPU上的操作***,进而恢复承载在操作***上的应用。
高电平,与低电平相对,在逻辑电平中,保证逻辑门的输入为高电平时所允许的最小输入电平,当输入电平高于最小输入电平时,则认为输入电平为高电平。
低电平,在逻辑电平中,低电平指的是保证逻辑门的输入为低电平时所允许的最大输入低电平,当输入电平低于最大输入低电平时,则认为输入电平为低电平。
图1示出了一种能够适用本申请实施例中多通道计算机的通道同步方法和装置的多通道计算机的示意性结构图,其中,多通道计算机包含A、B、C、D四个通道,每一通道中的CPU板均与调试电缆相连(图中未示出),每一CPU板上部署具有高可靠高安全性的嵌入式操作***,如DeltaSVM(DeltaSafety VirtualMachine,Delta安全虚拟机),在嵌入式操作***上可以再部署控制***应用软件,其中,控制***应用软件可以划分为输入分区、余度管理分区、控制律分区和输出分区几个部分,各通道间通过通用输入/输出(General PurposeInput Output,GPIO)数据线(即同步总线)进行通道间的同步,通过1394总线进行通道间的数据传递。
因为多通道计算机中各通道中的应用相同,并且,各分区中的应用同步运行,因此,在调试时,需要使各分区中的应用同步停止,并在完成调试以后,使各分区中的应用同步运行。
具体实施时,在对多通道计算机进行调试时,调试设备可以通过调试电缆向多通道计算机发送同步停止信号,对每一通道,当确定同步停止信号到达该通道中的CPU板时,触发外部中断,使运行在CPU上的操作***进入暂停状态,操作***暂停时,会使该通道中的应用也暂停,并保存该通道中各暂停应用的上下文信息和时钟信息等。
在使多通道计算机进入暂停状态以后,可以对各通道进行调试。
进一步地,在调试完成以后,调试设备向多通道计算机发送同步运行指令,对每一通道,当接收到同步运行指令时,可以通过GPIO数据线向其它通道发送同步高信号,启动定时器计时,定时时间可以为3s,与其它通道进行轮询高电平握手,高电平握手后,延时,再通过GPIO数据线向其它通道发送同步低信号,启动定时器计时,定时时间可以为3s,与其它通道进行轮询低电平握手。
进一步地,在该通道与其它各通道进行同步之后,恢复该通道中的操作***,进而恢复该通道中各中断应用的上下文信息和时钟信息,使该通道中各中断应用继续运行。
如图2所示,为本申请实施例提供的多通道计算机的通道同步方法流程图,包括以下步骤:
S201:通过调试电缆接收同步停止信号,使各通道中的应用同步停止,以实现对任一中断应用的调试。
具体实施时,针对每一通道,可以根据以下步骤使该通道中的应用停止:确定同步停止信号到达该通道内的CPU板时,触发外部中断,中断该通道中正在运行的应用,保存各中断应用的上下文信息。
并且,针对每一通道,多通道计算机确定同步停止信号到达该通道内的CPU板时,还可以中断该通道中操作***使用的所有定时器,并记录中断时每一定时器的计数信息,以便后续能够更好地恢复中断应用。
S202:接收到同步运行指令时,使各通道中的应用同步运行。
具体实施时,针对每一通道,可以根据以下步骤使该通道中的应用运行:该通在道接收到同步运行指令时,触发与其它通道进行同步操作,进而恢复该通道中各中断应用的上下文信息,使各中断应用继续运行。
具体地,针对每一通道,触发该通道与其它通道进行同步操作,包括:多通道计算机指示该通道通过同步总线向其它通道发送第一同步信号,并在预设时长内接收其它通道通过同步总线反馈的第一同步信号,进一步地,指示该通道通过同步总线向其它通道发送第二同步信号,若确定在预设时长内其它各通道均通过同步总线向该通道反馈第二同步信号,则确定各通道之间完成同步。
其中,第一同步信号为高电平时,第二同步信号为低电平;第一同步信号为低电平时,第二同步信号为高电平。
为了避免最后一个发出同步信号的通道在接收到其它通道的第一同步信号后需要立刻输出第二同步信号,提高同步准确度,多通道计算机在指示该通道通过同步总线向其它通道发送第二同步信号之前,还可以延时预设时长。
进一步地,恢复各通道中的定时器。
具体地,对每一通道,将该通道中主帧时钟的定时时间设置为预设值,其中,预设值等于各通道之间同步周期的大小,对除主帧时钟之外的每一定时器,根据记录的中断时该定时器的计数信息恢复该定时器的计时。
现有技术中,在恢复主帧时钟时,都是将记录的数值信息作为主帧时钟的计时信息,但由于各通道之间软硬件的差别,各通道中主帧时钟的计时会存在差别,如果仍然将记录的数值信息作为主帧时钟的计时信息就难以消除各通道之间的时间差,为此,上述过程中,将各通道中主帧时钟的定时时间设置为各通道之间同步周期,这样,各通道都重新开始计时,可以消除在中断周期引入的时间差,进一步地提高各通道之间的同步精度。
此外,由于各通道之间的同步是周期性进行的,在各通道进行周期性同步时,还可以记录每一同步周期内同步失败的通道的信息,对任一通道,若确定该通道连续同步失败的次数达到预设次数,则确定该通道发生故障,可以切换掉该通道,即不再向该通道传输数据,也不再考虑该通道的数据输出,提高多通道计算机的可靠性和安全性。
下面结合多通道计算机的启动、运行、停止、调试和再次运行的过程,对本申请实施例提供的多通道计算机的通道同步方法进行介绍,参见图3。
S301:多通道计算机上电,对各通道中的CPU板进行硬件资源初始化。
S302:初始化同步信号电平为低电平,加载操作***(DeltaSVM)软件和分区应用软件,进行DeltaSVM操作***资源初始化。
这里,假设第一同步信号为高电平,若第一同步信号为低电平,则初始化同步信号电平为高电平。
S303:进行输入分区、余度管理分区、控制律分区和输出分区应用软件的资源初始化。
S304:禁止所有外部中断。
S305:进行分区应用运行前的启动同步操作。
S306:使能所有外部中断。
即,使所有外部中断都处于可中断状态。
S307:如果存在同步失败的通道,则在非易失存储器中记录该通道的同步失败信息。
此时,为启动时的通道同步。
S308:启动为DeltaSVM操作***配置的时间调度表,进行输入分区、余度管理分区、控制律分区和输出分区的调度运行。
具体的调度过程如图4所示,对任一通道的DeltaSVM操作***而言,其主帧时钟的定时为20ms,即每隔20ms中断一次,进行一次通道同步。其中,每一主帧周期的20ms又包含多个窗口时钟,当任一窗口时钟的定时到达时,执行一次应用的切换,即主帧时钟的中断到达后,输入分区应用开始运行,4ms后有一个窗口时钟中断,切换到运行余度管理分区应用,7ms后有一个窗口时钟中断,切换到控制律分区应用,4ms后主帧时钟的中断再次到达,进入下一个调度周期。
S309:当一个主帧时钟的中断到达后,在进行分区调度前完成***运行时同步。
S310:如果存在同步失败的通道,则在非易失存储器中记录该通道的同步失败信息。
此时,为运行过程中的通道同步,并且周期性进行。
S311:按照时间调度表进行新一轮的分区应用调度。
参见步骤S308,在此不再赘述。
S312:同步停止。
在***运行过程中,若需同步调试所有通道中的分区应用软件,主机端可以则通过调试电缆向所有通道发送一个电平信号(即同步停止信号),对任一通道,当该电平信号到达该通道内CPU板后,触发CPU板上特殊定义的中断,这里,在进行CPU板硬件设计时,预留了该外部中断,即CPU芯片硬件管脚引入信号线,保证电平信号能直接进入CPU并触发中断。
进一步地,该通道中的DeltaSVM操作***捕获到该外部中断后,停止通道中正在运行的分区应用软件,进入中断服务程序,在中断服务程序里,保存被中断分区应用软件的上下文信息,以及停止该通道中DeltaSVM操作***使用的所有定时器和看门狗等计时设备计。
S313:进入与主机端进行通信的服务程序,进行调试相关的读写操作。
S314:恢复同步运行。
在恢复同步运行时,主机端向多通道计算机发送同步运行指令,同步运行指令到达每一通道的CPU板后,DeltaSVM操作***进行通道间的同步,之后,恢复该通道中被停止的定时器和看门狗等计时设备,其中,将***定时器(主帧时钟)的计时时间重新设置为主帧时钟大小,如主帧时钟为20毫秒,则***定时器的计时时间则设置为20毫秒,恢复分区应用软件的运行现场,使分区应用软件继续运行。
现有技术中,多通道计算机的通道同步是靠计算机中运行的应用软件来实现的,应用软件在功能上必须额外设计各通道应用软件之间的启动、运行和调试的同步,以确保多余度软件的有效性和可靠性,而此功能对应用软件本身来说,是不需要考虑的,并且,各类应用软件实现余度同步的机制可能存在差别,这会导致多通道计算机运行过程中会有比较频繁的同步冲突,进而降低多通道计算机的运行效率和余度可靠性。
为解决上述问题,在本申请实施例中,不再依靠多通道计算机中运行的应用软件来实现通道同步,而是利用通道中的操作***来实现通道间同步,因为各通道中的操作***实现同步时,承载在操作***上的应用之间的同步差别不会大于操作***之间的同步差别,这样,从操作***级实现不同通道间的同步,相比于利用应用软件实现通道同步的方法,同步精度更高,并且,应用软件不必再额外进行冗余设计,更加合理。
下面,以第一次进行高电平握手,第二次进行低电平握手为例,对本申请实施例中各通道间的同步过程进行详细介绍。
如图5所示,为图1所示的多通道计算机在进行通道同步时的示意图,以通道A为例,同步过程分为:
第一步、通道A向其它三个通道发出同步高信号。
同步高信号达到每一通道时,会将该通道的CPU离散输出字同步位的值置为代表高电平的值,如1,该通道内的CPU会周期性读取高电平的CPU离散输出字同步位的值。
第二步、启动定时器。
当通道内的CPU读到CPU离散输出字同步位的值为1时,启动定时器,定时器的定时时间即同步等待时间,为了保证该通道在正常情况下能够读取各通过反馈的同步信号,同步等待时间可以根据***设计进行确定。
比如,根据***工程经验,启动时的同步等待时间可以为3秒,运行过程中的同步等待时间可以为120微秒。
第三步、轮询高电平握手信号。
当收到有效通道的高电平信号或者定时器的定时时间到达后,高电平握手结束,记录高电平握手同步结果。
第四步、延时。
在进行高电平握手后,为了避免最后一个发出同步高的通道在收到其他通道的同步高后马上输出同步低,可以延时一段时间,这样,可以减小同步紊乱的可能性,并且可以保证下一次能够更好地进行低电平握手。
第五步、通道A向其它通道发出同步低信号。
第六步、启动定时器计时。
定时器的定时时间可以等于步骤2中定时器的定时时间。
第七步、轮询低电平握手信号。
当收到有效通道的握手信号或者定时器的定时时间到达后,低电平握手结束。
第八步、计算在本次握手中失败的通道。
上述步骤五~七与步骤一~三类似,在此不再赘述。
具体实施时,可以统计高电平握手失败或低电平握手失败的通道的信息,如果哪一通道连续3次同步失败,则可以确定该通道发生故障,可以将该通道切换掉。
本申请可以根据上述方法示例对装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
需要说明的是,本申请中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。比如,在采用对应各个功能划分各个功能模块的情况下,图6示出了一种多通道计算机的通道同步装置示意图,装置中各通道中的CPU板均与调试电缆相连,通过调试电缆接收用于指示使各通道中的应用同步停止信号,包括中断模块601和恢复模块602。
中断模块601,用于通过所述调试电缆接收同步停止信号,使各通道中的应用同步停止,以实现对任一中断应用的调试,其中,针对每一通道,根据以下步骤使该通道中的应用停止:确定所述同步停止信号到达该通道内的CPU板时,触发外部中断,中断该通道中正在运行的应用,保存该通道中各中断应用的上下文信息;
恢复模块602,用于接收到同步运行指令时,使各通道中的应用同步运行,其中,针对每一通道,根据以下步骤使该通道中的应用运行:触发该通道与其它通道进行同步,恢复该通道中各中断应用的上下文信息,使该通道中各中断应用继续运行。
在一种可能的实现方式中,中断模块601,还用于针对每一通道,确定所述同步停止信号到达该通道内的CPU板时,中断该通道中操作***使用的所有定时器,并记录中断时每一定时器的计数信息;恢复模块602,还用于在恢复该通道中各中断应用的上下文信息之前,将该通道中主帧时钟的定时时间设置为预设值,所述预设值等于各通道之间同步周期的大小;对除所述主帧时钟之外的每一定时器,根据记录的中断时该定时器的计数信息恢复该定时器的计时。
在一种可能的实现方式中,恢复模块602具体用于:
针对每一通道,指示该通道通过同步总线向其它通道发送第一同步信号,并在预设时长内接收其它通道通过同步总线反馈的第一同步信号;指示该通道通过同步总线向其它通道发送第二同步信号;若确定在预设时长内其它各通道均通过同步总线向该通道反馈第二同步信号,则确定各通道之间完成同步;其中,第一同步信号为高电平时,第二同步信号为低电平;第一同步信号为低电平时,第二同步信号为高电平。
在一种可能的实现方式中,恢复模块602具体用于:
延时预设时长;指示该通道通过同步总线向其它通道发送第二同步信号。
实际应用中,各通道之间的同步是周期性进行的,因此,在一种可能的实现方式中,还包括:
记录模块603,用于记录每一同步周期内同步失败的通道的信息;
切换模块604,用于对任一通道,若确定该通道连续同步失败的次数达到预设次数,则确定该通道发生故障,切换掉该通道。
如图7所示,为本申请实施例提供的用于实现多通道计算机的通道同步方法的计算机的硬件结构示意图,包括至少一个处理单元701、以及至少一个存储单元702,其中,存储单元存储有程序代码,当程序代码被所述处理单元执行时,使得计算机执行上述多通道计算机的通道同步方法的步骤。
本申请实施例提供的一种计算机可读存储介质,包括程序代码,当所述程序代码在计算机上运行时,使计算机执行上述多通道计算机的通道同步方法的步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、装置(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种多通道计算机的通道同步方法,其特征在于,所述多通道计算机中各通道中的CPU板均与调试电缆相连,通过所述调试电缆接收用于指示使各通道中的应用同步停止的信号,包括:
通过所述调试电缆接收同步停止信号,使各通道中的应用同步停止,以实现对任一中断应用的调试,其中,针对每一通道,通道中的操作***根据以下步骤使该通道中的应用停止:确定所述同步停止信号到达该通道内的CPU板时,触发外部中断,中断该通道中正在运行的应用,保存该通道中各中断应用的上下文信息;
接收到同步运行指令时,使各通道中的应用同步运行,其中,针对每一通道,通道中的操作***根据以下步骤使该通道中的应用运行:触发该通道与其它通道进行同步,恢复该通道中各中断应用的上下文信息,使该通道中各中断应用继续运行;
针对每一通道,确定所述同步停止信号到达该通道内的CPU板时,还包括:
中断该通道中操作***使用的所有定时器,并记录中断时每一定时器的计数信息;以及
恢复该通道中各中断应用的上下文信息之前,还包括:
将该通道中主帧时钟的定时时间设置为预设值,所述预设值等于各通道之间同步周期的大小;对除所述主帧时钟之外的每一定时器,根据记录的中断时该定时器的计数信息恢复该定时器的计时。
2.如权利要求1所述的方法,其特征在于,触发该通道与其它通道进行同步,包括:
指示该通道通过同步总线向其它通道发送第一同步信号,并在预设时长内接收其它通道通过同步总线反馈的第一同步信号;
指示该通道通过同步总线向其它通道发送第二同步信号;
若确定在预设时长内其它各通道均通过同步总线向该通道反馈第二同步信号,则确定各通道之间完成同步;
其中,第一同步信号为高电平时,第二同步信号为低电平;第一同步信号为低电平时,第二同步信号为高电平。
3.如权利要求2所述的方法,其特征在于,指示该通道通过同步总线向其它通道发送第二同步信号,包括:
延时预设时长;
指示该通道通过同步总线向其它通道发送第二同步信号。
4.如权利要求1~3任一所述的方法,其特征在于,各通道之间的同步是周期性进行的,还包括:
记录每一同步周期内同步失败的通道的信息;
对任一通道,若确定该通道连续同步失败的次数达到预设次数,则确定该通道发生故障,切换掉该通道。
5.一种多通道计算机的通道同步装置,其特征在于,所述多通道计算机中各通道中的CPU板均与调试电缆相连,通过所述调试电缆接收用于指示使各通道中的应用同步停止信号,包括:
中断模块,用于通过所述调试电缆接收同步停止信号,使各通道中的应用同步停止,以实现对任一中断应用的调试,其中,针对每一通道,通道中的操作***根据以下步骤使该通道中的应用停止:确定所述同步停止信号到达该通道内的CPU板时,触发外部中断,中断该通道中正在运行的应用,保存该通道中各中断应用的上下文信息;
恢复模块,用于接收到同步运行指令时,使各通道中的应用同步运行,其中,针对每一通道,通道中的操作***根据以下步骤使该通道中的应用运行:触发该通道与其它通道进行同步,恢复该通道中各中断应用的上下文信息,使该通道中各中断应用继续运行;
所述中断模块,还用于针对每一通道,确定所述同步停止信号到达该通道内的CPU板时,中断该通道中操作***使用的所有定时器,并记录中断时每一定时器的计数信息;
所述恢复模块,还用于在恢复该通道中各中断应用的上下文信息之前,将该通道中主帧时钟的定时时间设置为预设值,所述预设值等于各通道之间同步周期的大小;对除所述主帧时钟之外的每一定时器,根据记录的中断时该定时器的计数信息恢复该定时器的计时。
6.如权利要求5所述的装置,其特征在于,所述恢复模块具体用于:
针对每一通道,指示该通道通过同步总线向其它通道发送第一同步信号,并在预设时长内接收其它通道通过同步总线反馈的第一同步信号;
指示该通道通过同步总线向其它通道发送第二同步信号;
若确定在预设时长内其它各通道均通过同步总线向该通道反馈第二同步信号,则确定各通道之间完成同步;
其中,第一同步信号为高电平时,第二同步信号为低电平;第一同步信号为低电平时,第二同步信号为高电平。
7.如权利要求6所述的装置,其特征在于,所述恢复模块具体用于:
延时预设时长;
指示该通道通过同步总线向其它通道发送第二同步信号。
8.如权利要求5~7任一所述的装置,其特征在于,各通道之间的同步是周期性进行的,还包括:
记录模块,用于记录每一同步周期内同步失败的通道的信息;
切换模块,用于对任一通道,若确定该通道连续同步失败的次数达到预设次数,则确定该通道发生故障,切换掉该通道。
9.一种计算机,其特征在于,包括至少一个处理单元、以及至少一个存储单元,其中,所述存储单元存储有程序代码,当所述程序代码被所述处理单元执行时,使得所述计算机执行权利要求1~4任一所述方法的步骤。
10.一种计算机可读存储介质,其特征在于,包括程序代码,当所述程序代码在计算机上运行时,使所述计算机执行权利要求1~4任一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810129188.8A CN108563557B (zh) | 2018-02-08 | 2018-02-08 | 一种多通道计算机的通道同步方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810129188.8A CN108563557B (zh) | 2018-02-08 | 2018-02-08 | 一种多通道计算机的通道同步方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108563557A CN108563557A (zh) | 2018-09-21 |
CN108563557B true CN108563557B (zh) | 2020-01-21 |
Family
ID=63531133
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810129188.8A Active CN108563557B (zh) | 2018-02-08 | 2018-02-08 | 一种多通道计算机的通道同步方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108563557B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111654361B (zh) * | 2020-04-16 | 2023-03-24 | 株洲航飞翔数字***有限责任公司 | 一种用于双通道同步的方法和*** |
CN111858071B (zh) * | 2020-08-06 | 2022-07-26 | 卡斯柯信号有限公司 | 一种车载双通道cpu的同步控制方法 |
CN112540918A (zh) * | 2020-12-04 | 2021-03-23 | 中国航空工业集团公司成都飞机设计研究所 | 一种基于arinc659总线的多余度飞管计算机同步调试方法 |
CN114764607A (zh) * | 2021-01-11 | 2022-07-19 | 青岛海信宽带多媒体技术有限公司 | 一种计数方法、计数装置及光模块 |
CN112783523B (zh) * | 2021-01-18 | 2024-07-23 | 四川腾盾科技有限公司 | 一种多余度飞机管理计算机软件空中加载方法 |
CN113110140B (zh) * | 2021-03-26 | 2022-09-23 | 苏州振畅智能科技有限公司 | 一种基于5g和卫星授时的指令同步***的执行方法 |
CN113285579B (zh) * | 2021-05-28 | 2022-05-03 | 普源精电科技股份有限公司 | 多通道信号的同步方法、电源模块、电子设备及电源设备 |
CN114779881B (zh) * | 2021-12-07 | 2023-07-04 | 北京科银京成技术有限公司 | 余度计算机的同步检测方法、装置、设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10269185A (ja) * | 1997-03-25 | 1998-10-09 | Hitachi Ltd | バリア同期方法 |
KR100246546B1 (ko) * | 1997-09-24 | 2000-03-15 | 정선종 | 고속 병렬 컴퓨터에서의 시간 동기화 방법 |
CN1821973A (zh) * | 2004-12-21 | 2006-08-23 | 日本电气株式会社 | 容错计算机***及其中断控制方法 |
CN101114867A (zh) * | 2006-07-25 | 2008-01-30 | 深圳Tcl工业研究院有限公司 | 一种多信道同步传输的方法及*** |
CN101359238A (zh) * | 2008-09-02 | 2009-02-04 | 中兴通讯股份有限公司 | 一种多核***的时间同步方法及*** |
JP2009026035A (ja) * | 2007-07-19 | 2009-02-05 | Nec Corp | 割込み処理同期装置、割込み処理同期方法及びプログラム |
CN103023809A (zh) * | 2012-12-28 | 2013-04-03 | 中国船舶重工集团公司第七0九研究所 | 一种采用二次缓冲技术的信息***数据同步处理方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102566414A (zh) * | 2011-12-13 | 2012-07-11 | 中国航空工业第六一八研究所 | 一种减小分布式多余度控制***传输时延的方法 |
CN103532692A (zh) * | 2013-10-18 | 2014-01-22 | 广州南方电力集团科技发展有限公司 | 一种双通道双模式冗余的光纤纵差配电终端数据同步方法 |
CN104579029A (zh) * | 2013-10-29 | 2015-04-29 | 北京精密机电控制设备研究所 | 一种三冗余无刷直流伺服驱动控制器 |
CN204256727U (zh) * | 2014-11-14 | 2015-04-08 | 中国航空工业第六一八研究所 | 一种多机远程调试精确同步*** |
CN106774397A (zh) * | 2016-11-30 | 2017-05-31 | 中国航空工业集团公司沈阳飞机设计研究所 | 一种四余度飞行控制计算机同步方法 |
CN107506234B (zh) * | 2017-07-03 | 2020-04-24 | 北京东土科技股份有限公司 | 一种虚拟机调度方法及装置 |
-
2018
- 2018-02-08 CN CN201810129188.8A patent/CN108563557B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10269185A (ja) * | 1997-03-25 | 1998-10-09 | Hitachi Ltd | バリア同期方法 |
KR100246546B1 (ko) * | 1997-09-24 | 2000-03-15 | 정선종 | 고속 병렬 컴퓨터에서의 시간 동기화 방법 |
CN1821973A (zh) * | 2004-12-21 | 2006-08-23 | 日本电气株式会社 | 容错计算机***及其中断控制方法 |
CN101114867A (zh) * | 2006-07-25 | 2008-01-30 | 深圳Tcl工业研究院有限公司 | 一种多信道同步传输的方法及*** |
JP2009026035A (ja) * | 2007-07-19 | 2009-02-05 | Nec Corp | 割込み処理同期装置、割込み処理同期方法及びプログラム |
CN101359238A (zh) * | 2008-09-02 | 2009-02-04 | 中兴通讯股份有限公司 | 一种多核***的时间同步方法及*** |
CN103023809A (zh) * | 2012-12-28 | 2013-04-03 | 中国船舶重工集团公司第七0九研究所 | 一种采用二次缓冲技术的信息***数据同步处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108563557A (zh) | 2018-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108563557B (zh) | 一种多通道计算机的通道同步方法及装置 | |
JP3982353B2 (ja) | フォルトトレラントコンピュータ装置、その再同期化方法及び再同期化プログラム | |
CN106708168B (zh) | 多处理器***及时钟同步方法 | |
US3886524A (en) | Asynchronous communication bus | |
US5185877A (en) | Protocol for transfer of DMA data | |
CN102073556B (zh) | 虚拟机的热备份和恢复方法、设备及*** | |
CN108259227B (zh) | 一种双机热备联锁***的数据同步方法 | |
US9405644B2 (en) | Redundant automation system | |
US8868960B2 (en) | Synchronous clock stop in a multi nodal computer system | |
US5450573A (en) | Device for monitoring the functioning of external synchronization modules in a multicomputer system | |
CN105677673A (zh) | 业务处理方法、装置及*** | |
EP3200089A1 (en) | Method, apparatus, communication equipment and storage media for determining link delay | |
US20140281036A1 (en) | Synchronizing Scheduler Interrupts Across Multiple Computing Nodes | |
CN102799212A (zh) | 用于多核多处理器并行***的全局时钟***及其使用方法 | |
EP0411805B1 (en) | Bulk memory transfer during resync | |
CN108388228B (zh) | 一种针对多通道嵌入式控制***的同步调试方法和装置 | |
CN111506156B (zh) | 一种处理器阵列的授时方法及*** | |
CN102651044A (zh) | 一种仿真节点、多余度仿真计算机***及方法 | |
US7254460B1 (en) | Numerical control system, and method of establishing communication timing in numerical control system | |
CN112540918A (zh) | 一种基于arinc659总线的多余度飞管计算机同步调试方法 | |
CN109707517A (zh) | 一种控制双通道同步的方法及*** | |
CN114116558B (zh) | 一种io设备及微机保护装置 | |
CN112463666A (zh) | 一种控制器主从分配方法和装置 | |
JPWO2017199762A1 (ja) | 通信装置、通信方法、プログラム、および、通信システム | |
CN112817818A (zh) | 边缘安全节点对云上部署运行程序进行时间监视的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20180921 Assignee: Kedong (Guangzhou) Software Technology Co., Ltd Assignor: Beijing Dongtu Technology Co., Ltd.|Beijing keyin Jingcheng Technology Co., Ltd Contract record no.: X2020980000255 Denomination of invention: Channel synchronization method and device for multichannel computer Granted publication date: 20200121 License type: Exclusive License Record date: 20200218 |
|
EE01 | Entry into force of recordation of patent licensing contract |