技术领域
[0001] 本发明涉及控制系统,特别涉及具有在不同电源系统之间对照数据的集成电路的双重化结构的控制系统。
相关背景技术
[0002] 在如化工厂、核电站那样最优先确保安全的场所中使用的系统需要高可靠性。作为用于提高可靠性的手段,有在内部使运算装置、输入输出装置双重化的方法。上述需要高可靠性的装置一般通过对照双重化的各系统的输出来检测装置的异常。另外,除了双重化以外,基于三重化的多数决定处理、通过将非故障装置拷贝到故障装置来修复故障系统的技术也在近年来被确立。
[0003] 例如,在专利文献1中记载了如下可编程逻辑设备:在基于双重化的对照中有不一致的情况下,中断用于检测软件差错的循环的CRAM(配置RAM)帧检查,替代地针对每个电路结构信息进行差错检测,由此即使在双重化的逻辑结构中也能够在系统的容许范围内结束CRAM检查、且能够得到正常的运算结果。
[0004] 另外,在专利文献2中记载了如下FPGA以及使用该FPGA的的高可靠性系统:将逻辑结构设为可编程性低的第一结构和可编程性高的第二结构,使原本为使用目的的逻辑电路双重化而安装到上述第二逻辑结构,将判定输入信号的对照结果的比较器安装到第一逻辑结构,用该比较器比较该双重化的逻辑电路的输出,由此解决FPGA(Field Programmable Gate Array,现场可编程门阵列)内部的比较器中的LUT(Look-Up Table,查找表)的测试模式数增大的问题。
[0005] 另外,在专利文献3中记载了如下可编程设备:在三重化的各个逻辑中将构成为可拷贝的FF附加对逻辑电路单独设定的循环数来进行拷贝,由此即使是多级连接FF(Flip Flop,触发电路)的结构也不会拷贝失败,实现抑制FPGA的逻辑单元和布线的资源消耗的修复系统三重化。
[0006] 另外,在专利文献4中记载了如下可编程逻辑设备以及逻辑集成工具:其特征在于,划分成多个区域而配置的CRAM的针对故障的可靠性比其它区域高,在高可靠的区域中处理由运算部运算出的结果,在上述其它区域中进行运算处理。
[0007] 另外,在专利文献5中记载了如下逻辑阵列装置:使PLA(Programmable Logic Array,可编程逻辑阵列)双重化来调查各部分中有无缺陷以使缺陷状态自动地退缩到逻辑的安全侧等,由此从双重化的一侧输出正确的运算结果,从而实现易于进行PLA的试验、且提高PLA的成品率的目的。
[0008] 现有技术文献
[0009] 专利文献1:日本特开2015-115727号公报
[0010] 专利文献2:WO2015-104810号公报
[0011] 专利文献3:WO2015-068207号公报
[0012] 专利文献4:WO2015-045135号公报
[0013] 专利文献5:日本昭58-119233号公报
具体实施方式
[0030] 以下,参照附图,详细说明本发明的实施方式。
[0031] 图1是示出本发明的实施方式的控制系统的结构的图。本实施方式虽然设想主要应用于化工厂、核电站等最优先确保安全的场所,但能够应用于具有双重化结构的所有装置。控制系统1是以提高可靠性为目的而利用A系统和B系统使内部功能双重化的数字控制装置。此外,双重化是一个例子,在三重化以上的多重化中也能够同样地应用。
[0032] 如图1所示,控制系统1具备运算装置100、数字输入装置200以及数字输出装置300。运算装置100和数字输入装置200以及运算装置100和数字输出装置300分别通过通信线路400连接。另一方面,利用帧来进行运算装置100、数字输入装置200、数字输出装置300中的装置之间的通信。另外,输入装置和输出装置分别有数字和模拟的类别,除了图1所示的数字输入装置200以及数字输出装置300以外,还能够连接多个输入装置。此外,从工厂输入的数字信号的信号源410与数字输入装置200连接,控制对象420与数字输出装置300连接。
[0033] 控制系统1的控制以运算装置100为主体来实施。运算装置100为了从数字输入装置200取得控制运算所需的数字信号,经由通信线路400对数字输入装置200进行数字信号的获取请求。数字输入装置200在接收到上述获取请求时,访问信号源410,进行数字信号的获取,以取得的信号为响应,经由通信线路400输出到运算装置100。运算部100在接收到来自数字输入装置200的响应时,根据接收到的数据进行控制运算,经由通信线路400将与运算结果对应的信号输出到数字输出装置300。数字输出装置300在接收到来自运算部100的与运算结果对应的信号时,对控制对象420进行输出。数字输出装置300在所有输出完成时,为了对运算装置100通知其意思,再次经由通信线路400向运算装置100输出响应。
[0034] (运算装置)
[0035] 运算装置100具备:A系统运算部110、A系统通信控制部120、B系统运算部130、B系统通信控制部140、利用A系统通信控制部的对照结果的切断单元150、利用B系统通信控制部的对照结果的切断单元151、在将控制运算结果转送到其它系统时所需的接口元件160、在将通信控制部输出的帧转送到其它系统时所需的接口元件161、在将B系统通信控制部140的对照结果转送到A系统时所需的接口元件162、以及在将来自通信线路400的输入信号转送到B系统通信控制部时所需的接口元件163。此外,A系统运算部110、A系统通信控制部
120、切断单元150以及切断单元151进行动作的物理区域与B系统运算部130和B系统通信控制部140进行动作的物理区域被间隙170分开。
[0036] A系统运算部110具备主接口控制部111,该主接口控制部111包括:REQ生成部112,生成针对数字输入装置200以及数字输出装置300的访问请求;数据分割部113,分割转送帧;以及ACK接收部114,接收来自数字输入装置200以及数字输出装置300的响应信号。
[0037] 与A系统运算部110同样地,B系统运算装置130具备主接口控制部131,该主接口控制部131包括:REQ生成部132,生成针对数字输入装置200以及数字输出装置300的访问请求;数据分割部133,分割转送帧;以及ACK接收部134,接收来自数字输入装置200以及数字输出装置300的响应信号。A系统运算部110和B系统运算部130为双重化结构,A系统运算部110和B系统运算部130为相互等价的功能。
[0038] A系统通信控制部120具备目标接口控制部121,该目标接口控制部121包括:REQ接收部122,接收A系统运算部110输出的向数字输入装置200以及数字输出装置300的访问请求;数据结合部123,结合A系统运算部110输出的分割数据;ACK生成部124,生成针对A系统运算部110输出的访问请求的响应信号;以及对照部125,对照A系统运算部110及B系统运算部130的运算结果。与A系统通信控制部120同样地,B系统通信控制部140具备目标接口控制部141,该目标接口控制部141包括:REQ接收部142,接收B系统运算部130输出的向数字输入装置200以及数字输出装置300的访问请求;数据结合部143,结合B系统运算部130输出的分割数据;ACK生成部144,生成针对B系统运算部130输出的访问请求的响应信号;以及对照部125,对照B系统运算部130及A运算部110的运算结果。在A系统通信控制部120内由对照部
126进行、在B系统通信控制部140内由对照部146进行A系统通信控制部120以及B系统通信控制部140输出的帧的对照。A系统通信控制部120和B系统通信控制部140为双重化结构,A系统通信控制部120和B系统通信控制部140为相互等价的功能。
[0039] 通过A系统通信控制部内的对照部125以及B系统通信控制部内的对照部145来对照A系统运算部110以及B系统运算部130输出的帧。如果对照部125的对照结果不一致,则通过切断单元150切断帧转送,不向通信线路400进行帧转送。另外,如果对照部145的对照结果不一致,则通过切断单元151切断帧转送,不向通信线路400进行帧转送。通过这些对照以及帧转送的切断单元,提高装置的可靠性。
[0040] (数字输入装置)
[0041] 数字输入装置200具备控制装置之间的通信的A系统通信控制部210、从信号源410获取数字信号的A系统输入控制部220、与A系统通信控制部210同样地控制装置之间的通信的B系统通信控制部230、从信号源410获取数字信号的B系统输入控制部240、利用A系统通信控制部210内的对照部211的对照结果的切断单元251、利用B系统通信控制部230内的对照部231的对照结果的切断单元250、在转送来自信号源410的数字信号时所需的接口元件262、在A系统输入控制部220以及B系统输入控制部240分别向其它系统转送信号时所需的接口元件261、以及在将B系统通信控制部230的对照结果转送到A系统时所需的接口元件
260。此外,在数字输入装置200中也与运算装置100同样地,A系统通信控制部210、A系统输入控制部220、切断单元250及切断单元251进行动作的物理区域与B系统通信控制部230和B系统输入控制部240进行动作的物理区域被间隙270分开。
[0042] A系统通信控制部210和B系统通信控制部230为双重化结构,为等价的功能。同样地,A系统输入控制部220和B系统通信控制部240为双重化结构,为等价的功能。
[0043] 输入到A系统输入控制部220和B系统输入控制部240的数字信号从信号源410并行地被输入。A系统通信控制部210内的对照部211对照A系统输入控制部220以及B系统输入控制部240输出的数字信号。如果对照结果不一致,则通过切断单元251切断信号的转送,不向通信线路400转送信号。同样地,B系统通信控制部230内的对照部231对照A系统输入控制部220以及B系统输入控制部240输出的数字信号。如果对照结果不一致,则通过切断单元250切断信号的转送,不向通信线路400转送信号。通过这些对照以及信号转送的切断单元,提高装置的可靠性。
[0044] (数字输出装置)
[0045] 数字输出装置300具备控制装置之间的通信的A系统通信控制部310、向控制对象420输出数字信号的A系统输出控制部320、与A系统通信控制部310同样地控制装置之间的通信的B系统通信控制部330、向控制对象420输出数字信号的B系统输出控制部340、利用位于A系统通信控制部310内的对照部311的对照结果的切断单元351、利用位于B系统通信控制部330内的对照部331的对照结果的切断单元350、在向控制对象420转送数字信号时所需的接口元件362、在A系统输出控制部320以及B系统输出控制部340分别向其它系统转送信号时所需的接口元件361、以及在将B系统通信控制部330的对照结果转送到A系统时所需的接口元件360。此外,在数字输出装置300中也与运算装置100同样地,A系统通信控制部310、A系统输出控制部320、切断单元350及切断单元351进行动作的物理区域与B系统通信单元
330和B系统输出控制部340进行动作的物理区域被间隙370分开。
[0046] A系统通信控制部310和B系统通信控制部330为双重化结构,为等价的功能。同样地,A系统输出控制部320和B系统通信控制部340为双重化结构,为等价的功能。
[0047] 位于A系统通信控制部310内的对照部311对照A系统输出控制部320和B系统输出控制部340输出的响应信号。如果对照结果不一致,则通过切断单元351切断信号的转送,不向通信线路400转送信号。同样地,位于B系统通信控制部330内的对照部331对照A系统输出控制部320和B系统输出控制部340输出的响应信号。如果对照结果不一致,则通过切断单元350切断信号的转送,不向通信线路400转送信号。通过这些对照以及信号转送的切断单元,提高装置的可靠性。
[0048] 以下,详细说明如上所述构成的控制系统1的动作。
[0049] 首先,说明控制系统1的运算装置100的动作。如图1所示,运算装置100包括A系统运算部110、A系统通信控制部120、B系统运算部130以及B系统通信控制部140,A系统运算部110和B系统运算部130、A系统通信控制部120和B系统通信控制部140分别为双重化结构。A系统运算部110对A系统通信控制部120以及B系统通信控制部140指示针对数字输入装置
200的输入请求,B系统运算部130对A系统通信控制部120以及B系统通信控制部140指示输入请求。例如,利用帧500来进行这些输入请求的指示,图2所示该帧500包括通信控制部内的访问地址(ADR)501、向通信控制部内的写数据(WD)502、写入及读出指示(WT)503和保障帧的健全性的CRC504。
[0050] 为了确认上述输入请求的指示没有异常,通过A系统通信控制部120内的对照部125以及B系统通信控制部140内的对照部145来对照A系统运算部110输出的输入请求的指示和B系统运算部130输出的输入请求的指示,由此确认A系统运算部110和B系统运算部130正常地动作。在对照部125的对照结果不一致的情况下,通过切断单元150对将A系统运算部
110的输入请求指示转送到通信线路400进行切断,在对照部145的对照结果不一致的情况下,通过切断单元151对将A系统运算部110的输入请求指示转送到通信线路400进行切断,由此防止异常的通信帧被发送给其它装置,提高可靠性。
[0051] 为了通过对照部125以及对照部145进行对照,需要跨越间隙170的信号转送,为了不同电源系统之间的信号转送,需要设置接口元件160。如图3所示,从A系统运算部110转送到B系统通信控制部140的帧500需要经由接口元件160,同样地从B系统运算部130转送到A系统通信控制部120的帧500需要经由接口元件160,所以如果A系统运算部110和B系统运算部130输出的帧的信号宽度大,则随之接口元件160的使用数也变多。
[0052] 为了削减接口元件160,通过分割帧500而减小转送的信号宽度即可。例如,如图4所示,按照数据宽度600分割从A系统运算部110以及B系统运算部130输出的帧,通过在A系统运算部110内的数据分割部113以及B系统运算部130内的数据分割部133内具备的数据选择器601来选择输出的分割帧并输出到该系统通信控制部以及其它系统通信控制部,通过在A系统通信控制部120以及B系统通信控制部140内具备的数据选择器602将输入到通信控制部的分割帧重构为帧500,由此能够减小信号宽度。
[0053] 分割帧的对照方法如图5所示,A系统通信控制部120内的对照部125以及B系统通信控制部140内的对照部145针对按照数据宽度600分割帧500而得到的每个分割帧进行对照,实施将帧500除以数据宽度600而得到的次数量的对照,由此保证作为帧500的对照。另一方面,从A系统通信控制部120向A系统运算部110转送的帧以及从B系统通信控制部140向B系统运算部130转送的帧不进行对照,帧不被分割而一并地从A系统通信控制部120转送到A系统运算部110、从B系统通信控制部140转送到B系统运算部130。其原因为,在考虑到控制系统1的动作时,通过A系统通信控制部120内的对照部125以及B系统通信控制部140内的对照部145进行对照,从而能够防止异常被转送给其它装置。
[0054] 图2所示的帧500示出了包括ADR501、WD502、WT503以及根据ADR501、WD502及WT503生成的CRC504的例子。在该情况下,用于访问数字输入装置200以及数字输出装置300的A系统运算部110以及B系统运算部130与A系统通信控制部120及B系统通信控制部140的通信顺序如图6所示。
[0055] 首先,在S100中,A系统运算部110内的REQ生成部112为了从数字输入装置获取数字信号,确定构成帧500的ADR501、WD502、WT503以及根据ADR501、WD502及WT503生成的CRC504的值。接下来,在S101中,A系统运算部110内的数据分割部113如图4所示,按照数据宽度600分割帧500,通过在数据分割部113内具备的数据选择器601来选择输出的分割帧。接下来,在S102中,如果已经将所有分割帧转送到了A系统通信控制部120以及B系统通信控制部140,则结束向数字输入装置的访问,在转送未完成的情况下,将选择出的分割帧转送到A系统通信控制部120以及B系统通信控制部140。至此,说明了A系统运算部110向A系统通信控制部120以及B系统通信控制部140转送分割帧的过程,对于B系统运算部130也是同样的,向A系统通信控制部120以及B系统通信控制部140分别输入A系统运算部110和B系统运算部130输出的分割帧。
[0056] 接下来,在S103中,A系统通信控制部120内的REQ接收部122在考虑A系统运算部110输出的分割帧和B系统运算部130输出的分割帧的延迟差的基础上进行接收处理,在S104中,A系统通信控制部120内的对照部125进行上述分割帧的对照。接下来,在S105中,A系统通信控制部120内的数据结合部123将分割帧重构为帧500。重构的方法如图4所示,A系统通信控制部120内的数据结合部123通过在内部具备的数据选择器602将上述分割帧依次匹配帧500的形式来进行重构。接下来,在S106中,A系统通信控制部120内的ACK生成部124为了通知从A系统运算部110以及B系统运算部130接收到了分割帧,向A系统运算部110发送响应信号。之后,返回到S102继续进行处理,直至A系统运算部110将所有分割帧转送到A系统通信控制部120以及B系统通信控制部140。至此,说明A系统通信控制部120的处理,对于B系统通信控制部140也是同样的,接收A系统运算部110以及B系统运算部130输出的分割帧,经由REQ接收部142、对照部145、数据结合部143以及ACK生成部144向B系统运算部130发送响应信号。
[0057] 此外,至此的例子为了确认帧被无错误地转送而使用CRC,但也可以应用作为使用奇偶校验位的错误检测手段的奇偶校验检查、使用ECC(Error Check and Correct,错误检查和纠正)的确认方法。另外,在基于CRC的帧的确认方法中,有通过A系统通信控制部120结合分割数据后确认根据ADR501、WD502及WT503生成的CRC504来保障的方法、和通过对A系统运算部110输出的每个分割数据赋予CRC来针对每个分割数据确认无错误的方法,在本发明中这些确认方法没有特别限定,可任意应用。
[0058] 至此,说明了运算装置100内的通信顺序。接下来,说明运算装置100中的故障发生时的异常检测。如图7所示,在A系统运算部110中发生故障700而在A系统运算部110输出的帧中包含错误的情况下,在A系统通信控制部120内的对照部125中由于A系统运算部110和B系统运算部130输出的帧的对照结果不一致,所以能够发现故障700的发生。在B系统通信控制部140内对照部145中也同样地,由于A系统运算部110和B系统运算部130输出的帧的对照结果不一致,所以能够发现故障700的发生。另外,如图8所示,在A系统通信控制部120中发生故障800而在A系统通信控制部120输出的对照结果中包含错误的情况下,即使无法控制利用切断单元150的帧的转送,由于通过B系统通信控制部140适当控制切断单元151,所以在异常时也不会将帧转送到通信线路400。
[0059] 经由通信线路400转送作为从数字输入装置200向运算装置100的响应信号的数字信号。从通信线路400向A系统通信控制部120和B系统通信控制部140并行地输入向运算装置100的上述响应信号。此时,在从通信线路400至A系统通信控制部120之间、从通信线路400至B系统通信控制部140之间、从A系统通信控制部120至A系统运算部110之间以及从B系统通信控制部140至B系统运算部130之间不进行帧的对照。其原因为,在考虑到包括运算装置100、数字输入装置200以及数字输出装置300的控制系统1的动作的情况下,从数字输入装置200输入到运算装置100的响应信号由运算装置100用于控制运算并将该控制运算结果依照上述分割帧的转送方式转送到数字输出装置300,所以即使在从通信线路400至A系统通信控制部120之间、从通信线路400至B系统通信控制部140之间、从A系统通信控制部120至A系统运算部110之间以及从B系统通信控制部140至B系统运算部130之间不进行帧的对照,在发生故障的情况下,也能够在A系统通信控制部120内的对照部125和B系统通信控制部140内的对照部145中的任意对照部中检测到异常。
[0060] 返回到图1,说明在不同系统之间进行信号转送的情况的非同步转送。从A系统运算部110向A系统通信控制部120的信号转送和从B系统运算部130向B系统通信控制部140的信号转送由于各自的动作时钟相同所以是同步转送,但从A系统运算部110向B系统通信控制部140的跨越间隙170的信号转送和从B系统运算部130向A系统通信控制部120的跨越间隙170的信号转送由于各自的动作时钟不同所以为非同步转送。A系统通信控制部120为了从数字输入装置获取数字信号而从A系统运算部110和B系统运算部130接收访问请求,但在A系统通信控制部120中来自B系统运算部130的访问请求是跨越间隙170的非同步转送,所以如图9所示,需要A系统运算部内的动作时钟下的同步化时间900。如果在经过同步化时间900后A系统运算部110的访问请求和B系统运算部130的访问请求有效,则在经过A系统通信控制部120的响应时间901后A系统通信控制部120的访问响应变为有效,A系统运算部110的访问请求被解除。
[0061] 对于B系统通信控制部140的访问响应也是同样的,如图10所示,在B系统通信控制部140中来自A系统运算部110的访问请求是跨越间隙170的非同步转送,所以需要B系统运算部130内的动作时钟下的同步化时间1000。如果在经过同步化时间1000后A系统运算部110的访问请求和B系统运算部130的访问请求有效,则在经过B系统通信控制部140的响应时间1001后B系统通信控制部140的访问响应变为有效,B系统运算部130的访问请求被解除。
[0062] 接下来,说明控制系统1的数字输入装置200的动作。如图1所示,数字输入装置200的A系统通信控制部210以及B系统通信控制部230在经由通信线路400从运算装置100接受到发往本装置的意味着数字信号获取请求的帧时,对A系统输入控制部220以及B系统输入控制部240指示数字信号的获取。接受到数字信号的获取指示的A系统输入控制部220以及B系统输入控制部240对信号源410进行数字信号的获取。在获取完成后,A系统通信控制部210以及B系统通信控制部230对运算装置100发送数字信号。
[0063] 通过A系统通信控制部210内的对照部211和B系统通信控制部230内的对照部231来对照A系统输入控制部220和B系统输入控制部240输出的信号。在对照部211的对照结果不一致的情况下,通过切断单元251切断信号的转送,在对照部231的对照结果不一致的情况下,通过切断单元250切断信号的转送,防止信号被转送到通信线路400。
[0064] 接下来,说明控制系统1的数字输出装置300的动作。如图1所示,数字输出装置300的A系统通信控制部310以及B系统通信控制部330在经由通信线路400从运算装置100接受到发往本装置的意味着数字信号输出请求的帧时,对A系统输出控制部320以及B系统输出控制部340指示数字信号的输出。接受到数字信号输出指示的A系统输出控制部320以及B系统输出控制部340对控制对象420进行数字信号输出。在输出完成后,A系统通信控制部310以及B系统通信控制部330对运算装置100发送通知表示输出完成的意思的响应信号。
[0065] 通过A系统通信控制部310内的对照部311和B系统通信控制部330内的对照部331来对照A系统输出控制部320和B系统输出控制部340输出的响应信号。在对照部311的对照结果不一致的情况下,通过切断单元351切断信号的转送,在对照部331的对照结果不一致的情况下,通过切断单元350切断信号的转送,防止信号被转送到通信线路400。
[0066] 如以上说明,本实施方式的控制系统1具备运算装置100、数字输入装置200以及数字输出装置300,运算装置100和数字输入装置200、运算装置100和数字输出装置300通过通信线路400连接。另外,运算装置100和数字输入装置200以及运算装置100和数字输出装置300利用帧进行通信。运算装置100在为了获取数字信号而对数字输入装置200进行获取请求时和为了根据获取到的上述数字信号控制控制对象420而对数字输出装置300进行访问时对帧进行分割转送,在将来自数字输入装置200以及数字输出装置300的响应信号转送到运算装置100时不进行帧的对照,从A系统通信控制部120向A系统运算部110、从B系统通信控制部140向B系统运算部120一并地转送信号,由此减轻跨越间隙170的信号的转送所需的接口元件的数量。
[0067] 根据本发明,分割帧来进行A系统和B系统的帧转送,从数字输入装置获取的数字信号以及来自数字输出装置的响应信号在相同系统内一并地转送帧而不向其它系统转送,由此能够与以往相比削减在不同电源系统之间转送信号时所需的接口元件,能够提高装置的安装紧凑性。
[0068] 另外,能够增加系统之间的对照次数,所以能够与以往相比更容易地确定异常部位,以及通过分割帧来减少转送的信号宽度,由此布线资源变少,能够使印刷基板的布线作业容易,另外通过分割帧来减少转送的信号宽度,由此易于使布线长度整齐,易于进行偏斜调整而能够使时钟速度高速化。
[0069] 本发明不限定于上述实施方式例,在不脱离权利要求书记载的本发明的要旨的范围内包括其它变形例、应用例。另外,上述各实施方式例是为了易于理解地说明本发明而详细说明的例子,并不一定限定于具备所说明的所有结构的例子。另外,能够将某实施方式例的结构的一部分替换为其它实施方式例的结构,并且还能够对某实施方式例的结构附加其它实施方式例的结构。另外,能够对各实施方式例的结构的一部分进行其它结构的追加、删除、替换。