CN101303599A - 工业控制器 - Google Patents
工业控制器 Download PDFInfo
- Publication number
- CN101303599A CN101303599A CNA2008100967226A CN200810096722A CN101303599A CN 101303599 A CN101303599 A CN 101303599A CN A2008100967226 A CNA2008100967226 A CN A2008100967226A CN 200810096722 A CN200810096722 A CN 200810096722A CN 101303599 A CN101303599 A CN 101303599A
- Authority
- CN
- China
- Prior art keywords
- modular arithmetic
- sign indicating
- indicating number
- numeric data
- modular
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/085—Error detection or correction by redundancy in data representation, e.g. by using checking codes using codes with inherent redundancy, e.g. n-out-of-m codes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Automation & Control Theory (AREA)
- Error Detection And Correction (AREA)
- Numerical Control (AREA)
- Detection And Correction Of Errors (AREA)
- Retry When Errors Occur (AREA)
- Forklifts And Lifting Vehicles (AREA)
Abstract
第一算术运算器(11)包括用于将由来自中央控制器(31)的命令发送的数值数据编码为模算术码的第一模算术编码编码器(11b),第一算术运算处理器(11a)使用模算术编码的数值数据作为输入操作数,用于基于来自中央控制器(13)的指令执行算术运算,以提供模算术码形式的输出,和用于确定在自第一算术运算处理器输出的数值数据中有无比特错误,如果检测有,纠正比特错误以输出解码的数值数据的第一模算术码解码器(11c)。
Description
技术领域
本发明涉及工业控制器,并且尤其解决了用于将通过运算被处理的数值数据的容错技术。
背景技术
对于社会基础设施中的控制,在使用的工业控制器事实上主要被用于24小时服务。这种工业控制器应用于那些要求在其服务中运算处理是无差错的系统。从而,即使局部出现问题、仍能够在总体上继续进行正常操作的容错系统越来越重要。
因此,背景基于代码理论的开发(非专利文档1),以及主要用于存储系统(例如主要是存储器)的使用纠错码来引入容错技术(专利文档1)。称为非专利文件1的是1978年4月日本Corona有限公司的Akio Fukuhara和Munehiro Gotoh提出的“Sanzyutsu FugouRiron”(arithmetic code theory:算术码理论)第32至72页、第97至181页,专利文件1是日本专利公开No.2,665,113。
对于存储系统,不可避免地要实现容错技术,其中一些原因是(1)其元件数远远大于运算电路系统,和(2)其可用率因子高于运算电路系统等等。现将包括用于算术运算(例如加、减和乘、除)的运算电路和其控制电路的电路系统称为运算电路系统(operationcirtuitry)。
相反,对于运算电路系统,实现容错技术没有被认为如此重要,原因是例如(1)元件数较少,(2)可用率因子较低,和(3)实现成本高于存储系统。
然而,在半导体工艺技术领域,作为对高密度和高速度的需求的回应,近年来,逻辑电路的精细制作得到了发展,同时伴随着增大了设计如以往的确保有足够余量的健壮电路的困难。
这将导致由于逻辑电路中的微粒(fine partical)引起的软件错误。
实际上,电路的精细制造的这种发展伴随着增大了由于微粒而发生软件错误的概率,即使是在工业控制器等的运算电路系统中。
另一方面,为了那些根据需要向其提供更高可靠性以满足运算速度增加和被运算处理数量增长的需求的系统,已经在运算电路系统的并行化方面作出了积极努力。
在这方面,近来已知的是:运算处理器配备有多个运算器用于如所期望的对一个或多个输入操作数执行逻辑运算,并且被配置为将有缺陷部分较多的运算器与系统隔离,导致另一运算器重新执行已分配给那个运算器的运算处理,甚至考虑确保的安全性而不会损害系统功能(专利文件2)。称为专利文件2的是日本专利申请公开No.2006-228,121。
发明内容
然而,对于如专利文件1中公开的使用纠错码的这种容错技术,应用在工业控制器上可以提供对例如在逻辑运算中但除了算术运算中的比特错误的检测和纠正,但是在算术运算中检测和纠正比特错误存在困难。
另一方面,如专利文件2中公开的这种容错系统,换句话说,应当是一种带有乘法运算器的冗余系统,使多个运算器作好准备,将逻辑运算之前由编码所得的码与逻辑运算之后由编码所得的码进行对比,通过它们之间的匹配/失配来检测不良运算,并将出现缺陷次数大于预定频率的一个或多个运算器与系统隔离。所带来的运算器数量增加可能不仅会引起错误发生概率增大,而且会使配置更复杂。
此外,它还可能遇到如下困难:应付在每次运算时由如在工业控制器中在规定的控制期内作出响应的纠正处理纠正的临时比特错误的需求。
本发明被设计用于解决此问题,并且本发明的目的是提供能够为每个运算指令实时地检测和纠正在数值数据运算中的比特错误、并且配置简单的工业控制器。
根据本发明的一个方面,工业控制器包括存储器,被配置为在其中存储工业控制器的控制程序和包括模算术编码的参数和算术运算的参数作为给定数值数据的控制参数;输入接口,被配置为具有数值数据输入;算术运算器,包括:被配置用于模算术编码以将输入数值数据和给定的数值数据编码为模算术码的模算术编码编码器;被配置用于将算术运算应用于模算术码的处理以提供经处理的模算术码的算术运算处理器;和被配置为从经处理的模算术码中实时检测比特错误,和实时纠正检测的比特错误以提供纠正的数值数据的模算术码解码器;输出接口,被配置为输出纠正的数值数据;和中央控制器,被配置为使算术运算器基于控制程序使用控制参数执行算术运算。
根据本发明的另一方面,工业控制器包括存储器部件,被配置为在其中存储工业控制器的控制程序和包括模算术编码的参数和算术运算的参数作为给定数值数据的控制参数;输入接口,包括被配置用于模算术编码以将输入数值数据编码为第一模算术码的模算术编码编码器;算术运算器,被配置用于第一模算术码和给定的数值数据被编码成的第二模算术码的算术运算以提供运算的模算术码;输出接口,包括被配置为从运算的模算术码中实时检测比特错误,和实时纠正检测的比特错误以提供第一纠正的数值数据的第一模算术码解码器;和中央控制器,被配置为使算术运算器基于控制程序使用控制参数执行算术运算;其中存储器部件包括:被配置为对由中央控制器指定的地址数据的模算术码进行解码的第二模算术码解码器;和被配置为在其中存储控制参数的模算术码的存储器。
附图说明
图1是根据本发明的第一实施例的工业控制器的框图。
图2是图1的工业控制器的模算术编码编码器的框图。
图3是图1的工业控制器的模算术码解码器的框图。
图4是图1的工业控制器的用于加法运算的模算术运算处理器的框图。
图5是图1的工业控制器的用于减法运算的模算术运算处理器的框图。
图6是图1的工业控制器的用于乘法运算的模算术运算处理器的框图。
图7是图1的工业控制器的用于除法运算的模算术运算处理器的框图。
图8是表格,列出了图1的工业控制器的一组示例模算术码。
图9是图1的工业控制器的示例校正子表。
图10是根据本发明的第二实施例的工业控制器的框图。
图11是根据本发明的第三实施例的工业控制器的框图。
图12是图11的工业控制器的模算术码纠错器的框图。
具体实施方式
参考附图,下面将详细介绍本发明的优选实施例。
(第一实施例)
现参考图1至图9,对根据本发明的第一实施例的工业控制器进行说明。
根据第一实施例,图1示例了工业控制器的配置。该工业控制器配置有:用于数值数据的算术运算的第一算术运算器11;用于逻辑数据的逻辑运算的逻辑运算器12;用于在其中控制存储控制进程和其它要被控制的内容的控制程序的存储器20;I(输入)/O(输出)接口40包括作为要被输入的信号(例如来自用于检测要被控制的目标的状态的传感器的输入信号)的输入接口的输入电路40a和作为要被输出的信号(例如到用于控制要被控制的目标的促动器的输出信号)的输出接口的输出电路40b;中央控制器13,适于按照控制程序执行下述操作:从输入电路40a接收输入数据、向第一算术运算器11和逻辑运算器12给出给定运算的命令、和使输出电路40b输出在相关运算过程之后要被输出的数据;以及用于这些部件互连的总线30。
第一算术运算器11、逻辑运算器12和中央控制器13可能组成称为“CPU(中央处理器)”的结合体。
对于工业控制器,将由其中的运算进行处理的数据被分类为数值数据和逻辑数据。数值数据是通过ADC(模数转换)电路输入的,其中ADC电路用于模拟信号(例如来自温度传感器的模拟信号)的数字转换,而逻辑数据是通过数字电路(例如用于报警信号的数字电路)输入的。
给定数值数据和逻辑数据分别作为第一算术运算器11和逻辑运算器12的输入操作数,以由运算根据来自中央控制器13的命令进行处理。
图2至图7示出了第一算术运算器11所具有的或者可能具有的用于执行数值数据运算的配置的示例。第一算术运算器11包括:配置为用二进制循环AN码对通过总线30输入到其中的操作数编码的第一模算术编码编码器11a,;被配置用于根据来自中央控制器13的算术命令对已编码(为模算术码)的算术数据进行运算的第一算术运算处理器11b;和被配置为将第一算术运算处理器11b的运算的输出转换成数值数据、同时确定在作为模算术码的输出中有无比特错误、和纠正所确定的错误比特、以及输出如此解码的纠正的数值数据的第一模算术码解码器11c。
现对第一算术运算器11的各部分进行详细说明。AN码代表被称作“生成数”(generator)的特定自然数A与作为整数N要被编码的信息数的乘积AN的集合,其被称作“码字”。用二进制符号表示的码字被称作“二进制AN码”。此外,在二进制排列中封闭的情况下,二进制AN码被称作“二进制循环AN码”。鉴于其比特错误纠正的能力,这种码根据被处理的信息能够选择最优码(例如非专利文件1,第238页,附录B,示例最优码)。
假设二进制循环AN码的一组参数,使得满足:
生成数A=47(A=101111以二进制符号表示:6比特);
信息数的长度N=17比特;
码长n=23比特;和
码间最小模算术距离=3,
下面进行说明。
在这种情况下,如图2所示,被配置用于对作为输入操作数给出的数值数据(N)进行编码的第一模算术编码编码器11a包括:用于使输入数值数据乘以生成数A的第一乘法器11a1;和用于使第一乘法器11a1的输出除以模数M(=223-1)的第一除法器11a2。
此外,如图3中所示,第一模算术码解码器11c包括:用于接收第一算术运算处理器11b运算之后的模算术码形式的信号输出和将其除以生成数A以确定商和余数(作为校正子)的第二除法器11c1;用于参考预存的校正子表以根据校正子确定在该商中有无错误比特和错误比特的位置的错误位置确定器11c2;以及用于纠正处于由错误比特位置确定器确定的错误比特位置的比特信号和输出纠正的数值数据的错误比特纠正器11c3。
现通过用于输入操作数的算术运算的命令对第一算术运算处理器11b的例示配置进行说明。首先,对于来自中央控制器13的加算术命令,如图4中所示,第一算术运算处理器11b包括:用于将输入操作X和输入操作数Y相加的加法器11b1;和用于将加法器11b1的输出除以模数M的除法器11b2。
对于减算术命令,如图5中所示,第一算术运算处理器11b包括:用于将输入操作数Y从输入操作数X减去的减法器11b3;和用于将减法器11b3的输出除以模数M的除法器11b2。
对于乘算术命令,如图6中所示,第一算术运算处理器11b包括:用于将输入操作数X和输入操作数Y相乘、然后除以生成数A的乘法器11b4;和用于将乘法器11b4的输出除以模数M的除法器11b2。
对于除算术命令,如图7中所示,第一算术运算处理器11b包括:用于将输入操作数X除以输入操作数Y、然后除以生成数A的除法器11b5;和用于将除法器11b5的输出除以模数M的除法器11b2。
现参考图8和图9,以加算术命令为例、给定输入操作数的数值数据以便X=2和Y=3,来对在第一算术运算器11的运算中的比特错误纠正操作进行说明。
首先,在第一模算术编码编码器上分别将两输入操作数X=2和Y=3乘以生成数A=47,然后,在第一除法器11a2上分别除以模数M=223-1,由此得到输出是数值数据“94”和“141”。
然后,在第一算术运算处理器11b上执行数值数据“94”和“141”的相加。结果,没有比特错误,输出数值数据“235”。以二进制符号表示,此运算是:
00000000000000001011110+00000000000000010001101=00000000000000011101011
然后,在第一模算术码解码器11c的第二除法器11c1上,数值数据“235”除以生成数A=47,得到的商是“5”、余数是“0”。在这种情况下,也就是,因为从错误比特位置确定器11c2中通知的没有错误比特位置,数值数据“5”从错误比特纠正器11c3中被输出。
然而,当在上述运算方法中出现一个比特错误的情况下,给出“171”(二进制符号为00000000000000010101011)作为数值数据“94”和“141”相加的结果,在第一模算术码解码器11c的第二除法器11c1上将数值数据“171”除以生成数A=47,输出商“3”和余数“30”。然后,根据图9中示出的校正子表11c21,错误比特位置确定器11c2确定与校正子“30”对应的商的错误比特位置为6。此外,确定错误是E-,即,错误位置的比特应当为0。对于E+,错误位置的比特确定为“1”。
上述结果被通知给错误比特纠正器11c3,在其中将与商的错误比特位置“6”对应的第七位比特值从0重写为1,以输出纠正的数值数据。
从前述说明中将可以看出,在使用了二进制循环AN码的本实施例中,能够在对模算术码解码时,按照算术运算命令根据校正子的值实时地检测和纠正数值数据的错误。
根据本实施例,在某种意义上,工业控制器包括输入接口40a、算术运算器11、输出接口40b、存储器20、中央控制器13,其中输入接口40a被配置为具有数值数据输入;算术运算器11包括被配置用于模算术编码以便将输入数值数据编码为模算术码的模算术编码编码器11a、被配置用于将算术运算应用于模算术码的处理以提供经处理的模算术码的算术运算处理器11b;和被配置为从经处理的模算术码中实时检测比特错误,和实时纠正检测的比特错误以提供纠正的数值数据的模算术码解码器11c;输出接口40b被配置为输出纠正的数值数据;存储器20被配置为在其中存储控制程序和模算术编码的参数;中央控制器13被配置为使算术运算器基于控制程序使用控制参数执行算术运算。模算术编码编码器11a包括被配置为将输入数值数据乘以预定的二进制循环AN码生成数以提供乘过的数值数据的乘法器11a1、和被配置为将乘过的数值数据除以与生成数对应的预定模数以提供模算术码的第一除法器11a2,和模算术码解码器11c包括被配置为将经处理的模算术码除以生成数以确定商和余数的第二除法器11c1、被配置为参考存储的校正子表以从余数确定错误比特位置的错误位置确定器11c2、和被配置为纠正与错误比特位置对应的商的错误比特以提供纠正的数值数据的错误比特纠正器11c3。
此外,在某种意义上,工业控制器包括算术运算器11、逻辑运算器12、存储器部件20、I/O接口40、中央控制器13和总线30,其中算术运算器11被配置为组合对要被算术运算的数值数据的编码和在算术运算之后对数据的解码以纠正错误比特;逻辑运算器12被配置用于逻辑数据的逻辑运算;存储器部件20被配置用于控制程序和要被预存的一组运算参数的存储;I/O接口40被配置为输入数值数据和逻辑数据、与输出数值运算之后的数值数据和逻辑运算之后的逻辑数据;中央控制器13被配置为向算术运算器和逻辑运算器输出预定命令以执行控制程序;总线30被配置用于它们之间的互连;并且算术运算器11包括被配置为将由从中央控制器输出的命令发送到其上的数值数据编码为模算术码的模算术编码编码器11a、被配置为根据来自中央控制器的命令执行已编码数值数据(作为输入操作数)的运算以提供输出(作为模算术码)的算术运算处理器11b、和模算术码解码器11c,被配置为确定在算术运算处理器的输出的数据中有无比特错误和纠正检测的比特错误(如果检测有)来输出解码的数值数据,由此在算术运算器中产生的比特错误在运算过程中是可纠正的。模算术编码编码器11a包括被配置为将数值数据乘以预定的二进制循环AN码的生成数的乘法器11a1、被配置为将相乘的输出除以与二进制循环AN码的生成数对应的预定模数的第一除法器11a2,并且模算术码解码器11c包括被配置为将算术运算处理器的输出除以生成数以确定作为校正子的余数和商的第二除法器11c1、被配置用于将要参考预存的校正子表以为在第二除法器的输出中被检测的余数确定错误比特位置的错误位置确定器11c2、和被配置为根据错误比特位置确定器的错误比特位置输出纠正商的错误比特以提供作为数值数据的输出的错误比特纠正器11c3。
(第二实施例)
现参考图10,对根据本发明的第二实施例的工业控制器进行说明。对于图10所示的第二实施例,为了消除便于说明,与第一实施例类似的部分由类似的附图标记表示。
本实施例不同于第一实施例之处在于后者在第一算术运算器11上将数值数据解码为模算术码、根据算术运算之后的在模算术码中的数值数据的校正子值确定比特错误并纠正比特错误,而在前者中,在输入到I/O接口40的输入数据中,数值数据向其生成模算术码,因此将通过总线30接收的数值数据都作为模算术码给出,并且要从I/O接口40输出的数值数据经受模算术码的解码过程,其中,数值数据的比特错误被纠正。
I/O接口40有输入接口和输出接口。输入接口包括:逻辑数据输入电路40a1;数值数据输入电路40a2,其具有用于将模拟信号转换为数字信号的ADC;和第二模算术编码编码器41,在输入电路40a2上被数字化的数值数据通过其被编码为将被输出的模算术码。
输出接口包括:输出电路40b,其包括逻辑数据输出电路40b1和数值数据输出电路40b2;和第二模算术码解码器42,其被配置为通过总线30接收模算术编码的数值数据输出,确定商和余数(校正子),根据校正子值确定比特错误和出现比特错误的位置,纠正比特错误(如果有),并输出纠正的数值数据。
第二模算术编码编码器41的配置与第一模算术编码编码器11b的相同,并且第二模算术码解码器42的配置与第一模算术码解码器11c的相同。
中央控制器13和第二算术运算器14被配置为将所有相关的数值数据处理为模算术码。
此外,存储器21被构造为具有下述部分的部件:被配置为在其中存储数值数据作为模算术码(包括那些未经过数值数据输入电路40a2的数值数据)的存储器21b;和被配置为对与发送自中央控制器13的指令的地址数据相关的地址信号和模算术码解进行解码的第三模算术码解码器21a。
因此,本实施例不仅允许在I/O接口40上纠正算术运算中数值数据的比特错误,还有路径错误引发的数值数据的比特错误等等。
根据本发明,在某种意义上,工业控制器包括输入接口40a、输出接口40b、中央控制器13a和存储器部件21,其中输入接口40a包括被配置用于模算术编码以将输入数值数据编码为模算术码的模算术编码编码器41、被配置用于模算术码的算术运算以提供运算的模算术码的算术运算器14;输出接口40b包括被配置为从运算的模算术码中实时检测比特错误和实时纠正检测的比特错误以提供第一纠正的数值数据的第一模算术码解码器42;存储器部件21被配置为在其中存储控制程序和模算术编码的参数;中央控制器13a被配置为使算术运算器基于控制程序使用所述参数执行算术运算;并且存储器部件21包括被配置为对由中央控制器指定的地址数据的模算术码进行解码的第二模算术码解码器21a和被配置为在其中存储所述参数的模算术码的存储器21b。模算术编码编码器41包括被配置用于将输入数值数据乘以预定的二进制循环AN码生成数以提供乘过的数值数据的乘法器11a、和被配置用于将乘过的数值数据除以与生成数对应的预定模数以提供模算术码的第一除法器11a2,并且第一模算术码解码器42包括被配置用于将运算的模算术码除以生成数以确定第一商和第一余数的第二除法器11c1、被配置用于参考存储的校正子表以根据第一余数确定第一错误比特位置的错误位置确定器11c2、和被配置用于纠正与第一错误比特位置对应的第一商的错误比特以提供第一纠正的数值数据的错误位置纠正器11c3。
此外,在某种意义上,工业控制器包括被配置用于被编码为模算术码的数值数据的算术运算的算术运算器14;被配置用于逻辑数据的逻辑运算的逻辑运算器12a;被配置用于存储控制程序和一组要被预先存储的运算参数的存储器部件21;被配置为输入数值数据和逻辑数据、输出数值运算之后的数值数据和逻辑运算之后的逻辑数据的I/O接口40;被配置为向算术运算器和逻辑运算器输出预定指令、以区分逻辑数据和模算术编码数值数据地执行控制程序的中央控制器13a;和被配置用于它们之间的互连的总线30;I/O接口40包括被配置为对包含在数据输入中的数值数据进行编码的模算术编码编码器41、被配置用于结合对包含在数据输出中的数值数据的解码、确定有无比特错误、和纠正检测的比特错误(如果检测有)以输出解码的数值数据的第一模算术码解码器42,并且存储器部件21包括被配置为在其中存储要被在工业控制器中运算处理的相应数值数据为模算术码的存储器21b、和被配置为以已解码形式提供中央控制器所指定的编码的地址数据的第二模算术码解码器21a,由此允许在I/O接口40上编码的和在工业控制器中驻留的数值数据的相应之一的被作为模算术码处理,并在I/O接口40上解码,在纠正比特错误(如果有)之后被输出。模算术编码编码器41包括被配置用于将包含在数据输入中的数值数据乘以预定的二进制循环AN码生成数的乘法器11a1、和被配置用于将相乘的输出除以与二进制循环AN码生成数对应的预定的模数的第一除法器11a2,并且模算术码编码器42包括被配置用于将包含在数据输出中的数值数据除以生成数以确定作为校正子的第一余数和第一商的第二除法器11c1、被配置用于参考预存的校正子表以为在第二除法器的输出中检测的第一余数确定错误比特位置的错误位置确定器11c2、和被配置为纠正与错误位置确定器的错误比特位置输出对应的第一商的错误比特以作为数值数据输出的错误比特纠正器11c3。
(第三实施例)
现参考图11和图12,对根据本发明的第三实施例的工业控制器进行说明。对于图11和图12所示的第三实施例,为便于说明,与第二实施例类似的部分由类似的附图标记表示。
本实施例不同于第二实施例之处在于后者被配置为为输入到I/O接口40的数值数据生成模算术码、使要被通过总线30接收的数值数据全部被模算术编码、和将解码过程应用于要被从I/O接口40输出的模算术编码的数值数据、纠正数值数据中的错误,然而前者包括第二算术运算器14a,其又具有被配置用于模算术编码的数值数据的算术运算的第二算术运算处理器14a1、和被配置用于算术运算之后的数值数据的比特错误纠正的模算术码错误纠正器14a2。
现参考图12对模算术码错误纠正器14a2的配置进行说明。
模算术码错误纠正器14a2包括:用于接收输出自第二算术运算处理器14a1的模算术编码的数值数据,和将其除以生成数A以输出商和余数(作为校正子)的除法器14a21;用于参考校正子表以从校正子的值确定有无错误比特和错误比特的位置的错误位置确定器14a22;用于纠正要被输出的商中的错误比特(如果有)的错误比特纠正器14a23;用于将纠正的数值数据乘以生成数A的乘法器14a24;和用于将其除以模数M以提供模算术码的除法器14a25。
因此,本发明不仅只是允许对例如在第二算术运算器14a的运算中的比特错误和路径错误引发的数值数据的错误进行集体纠正,而且还区分数值数据的错误,无论这错误是在算术运算器14a中还是在其他地方引起。
根据本发明,在某种意义上,工业控制器包括输入接口40a、算术运算器14a、输出接口40b、存储器部件21、中央控制器13a,输入接口40a包括被配置用于将输入数值数据编码为模算术码的模算术编码的模算术编码编码器41;算术运算器14a被配置用于模算术码的算术运算以提供运算的模算术码,输出接口40b包括被配置为从运算的模算术码中实时检测比特错误和实时纠正检测的比特错误以提供第一纠正的数值数据的第一模算术码解码器42;存储器部件21被配置为在其中存储控制程序和模算术编码的参数;和中央控制器13a被配置为使算术运算器基于控制程序使用所述参数执行算术运算,并且存储器部件21包括被配置为对由中央控制器指定的地址数据的模算术码进行解码的第二模算术码解码器21a,和被配置为在其中存储参数的模算术码的存储器21b。模算术编码编码器41包括被配置用于将输入数值数据乘以预定的二进制循环AN码生成数以提供乘过的数值数据的乘法器11a,和被配置用于将乘过的数值数据除以与生成数对应的预定模数以提供模算术码的第一除法器11a2,并且第一模算术码解码器42包括被配置用于将运算的模算术码除以生成数以确定第一商和第一余数的第二除法器11c1,和被配置用于参考存储的校正子表以从第一余数确定第一错误比特位置的错误位置确定器11c2,和被配置用于纠正与第一错误比特位置对应的第一商的错误比特以提供第一纠正的数值数据的错误比特纠正器11c3。算术运算器14a包括被配置用于模算术码的算术运算处理以提供经处理的模算术码的算术运算处理器14a1,和被配置用于组合经处理的模算术码的除法以确定第二商和第二余数、参考存储的校正子表以从第二余数确定第二错误比特位置、纠正与第二错误比特位置对应的第二商的错误比特以提供第二纠正的数值数据、和用于将第二纠正的数值数据乘以生成数、随后被模数除来提供运算的模算术码的模算术码错误纠正器14a2。
此外,在某种意义上,工业控制器包括被配置用于被编码为模算术码的数值数据的算术运算的算术运算器14a;被配置为逻辑数据的逻辑运算的逻辑运算器12a;被配置为存储控制程序和一组要被预存的运算参数的存储器部件21;被配置为输入数值数据和逻辑数据、输出数值运算之后的数值数据和逻辑运算之后的逻辑数据的I/O接口40;被配置用于向算术运算器和逻辑运算器输出预定指令以区分逻辑数据和模算术编码的数值数据地执行控制程序的中央控制器13a;和被配置用于它们之间的互连的总线30,I/O接口40包括被配置用于对包含在数据输入中的数值数据进行编码的模算术编码编码器41,被配置用于组合对包含在数据输出中的数值数据进行解码、确定有无比特错误、和纠正检测的比特错误(如果有)来输出解码的数值数据的模算术码解码器42,和存储器部件21包括被配置为在其中存储要在工业控制器中运算处理的相应数值数据作为模算术码的存储器21b,和被配置为以已解码形式提供中央控制器所指定的编码的地址数据的第二模算术码解码器21a,由此允许在I/O接口40上编码并在工业控制器中驻留的数值数据的相应之一被作为模算术码处理,并在I/O接口40上解码,在纠正比特错误(如果有)之后被输出。模算术编码编码器41包括被配置用于将包含在数据输入中的数值数据乘以预定的二进制循环AN码生成数的乘法器11a1、和被配置用于将相乘的输出除以与二进制循环AN码生成数对应的预定模数的第一除法器11a2,并且第一模算术码编码器42包括被配置用于将包含在数据输出中的数值数据除以生成数以确定作为校正子的第一余数和第一商的第二除法器11c1、被配置用于参考预存的校正子表以为在第二除法器的输出中检测的第一余数确定错误比特位置的错误位置确定器11c2、和被配置为纠正与错误位置确定器的错误比特位置输出对应的第一商的错误比特以作为数值数据输出的错误比特纠正器11c3。算术运算器14a包括被配置用于作为输入操作数在I/O接口上被编码为模算术码的数值数据的算术运算处理的算术运算处理器14a1,以及模算术码错误纠正器14a2,其被配置用于组合算术运算处理器的输出的除法以确定作为校正子的第二余数和第二商、参考存储的校正子表以为第二余数的检测确定错误比特位置、纠正第二商的错误比特、和将纠正的数值数据乘以生成数、随后除以模数,来输出被解码为模算术码的数值数据。
本发明决不限于所述实施例,本发明可适用于任何系统,只要运算器被提供用于数值数据的运算,允许在运算器上纠正比特错误,并且可以在权利要求的范围内以各种修改形式被实现。
本申请是基于2007年5月9日提交的日本专利申请号2007-125065,其全部内容在此以引用方式并入本文。
Claims (5)
1、一种工业控制器,包括:
存储器,被配置为在其中存储工业控制器的控制程序和包括模算术编码的参数和算术运算的参数作为给定数值数据的控制参数;
输入接口,被配置为具有数值数据输入;
算术运算器,包括:被配置用于模算术编码以将输入数值数据和给定的数值数据编码为模算术码的模算术编码编码器;被配置用于将算术运算应用于模算术码的处理以提供经处理的模算术码的算术运算处理器;和被配置为从经处理的模算术码中实时检测比特错误,并实时纠正检测的比特错误以提供纠正的数值数据的模算术码解码器;
输出接口,被配置为输出纠正的数值数据;和
中央控制器,被配置为使算术运算器基于控制程序使用控制参数执行算术运算。
2、如权利要求1中所述的工业控制器,其中
模算术编码编码器包括:被配置用于将输入数值数据乘以预定的二进制循环AN码生成数以提供乘过的数值数据的乘法器;和被配置用于将乘过的数值数据除以与生成数对应的预定模数以提供模算术码的第一除法器,和
模算术码解码器包括:被配置用于将经处理的模算术码除以生成数以确定商和余数的第二除法器;被配置用于参考存储的校正子表以从余数确定错误比特位置的错误位置确定器;和被配置用于纠正与错误比特位置对应的商的错误比特以提供纠正的数值数据的错误比特纠正器。
3、一种工业控制器,包括:
存储器部件,被配置为在其中存储工业控制器的控制程序和包括模算术编码的参数和算术运算的参数作为给定数值数据的控制参数;
输入接口,包括被配置用于模算术编码以将输入数值数据编码为第一模算术码的模算术编码编码器;
算术运算器,被配置用于第一模算术码和给定的数值数据被编码成的第二模算术码的算术运算以提供运算的模算术码;
输出接口,包括被配置为从运算的模算术码中实时检测比特错误,和实时纠正检测的比特错误以提供第一纠正的数值数据的第一模算术码解码器;和
中央控制器,被配置为使算术运算器基于控制程序使用控制参数执行算术运算,其中
存储器部件包括:被配置为对由中央控制器指定的地址数据的模算术码进行解码的第二模算术码解码器;和被配置为在其中存储控制参数的模算术码的存储器。
4、如权利要求3所述的工业控制器,其中
模算术编码编码器包括:被配置用于将输入数值数据乘以预定的二进制循环AN码生成数以提供乘过的数值数据的乘法器;和被配置用于将乘过的数值数据除以与生成数对应的预定模数以提供模算术码的第一除法器,和
第一模算术码解码器包括:被配置用于将运算的模算术码除以生成数以确定第一商和第一余数的第二除法器;被配置用于参考存储的校正子表以从第一余数确定第一错误比特位置的错误位置确定器;和被配置用于纠正与第一错误比特位置对应的第一商的错误比特以提供第一纠正的数值数据的错误比特纠正器。
5、如权利要求3所述的工业控制器,其中
算术运算器包括:被配置用于模算术码的算术运算处理以提供经处理的模算术码的算术运算处理器;以及模算术码错误纠正器,其被配置用于组合如下操作:借助经处理的模算术码的除法以确定第二商和第二余数,参考存储的校正子表以从第二余数确定第二错误比特位置,纠正与第二错误比特位置对应的第二商的错误比特以提供第二纠正的数值数据,和将第二纠正的数值数据乘以生成数、随后用模数除,来提供运算的模算术码。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007125065A JP2008282178A (ja) | 2007-05-09 | 2007-05-09 | 産業用コントローラ |
JP2007-125065 | 2007-05-09 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101303599A true CN101303599A (zh) | 2008-11-12 |
CN101303599B CN101303599B (zh) | 2010-12-15 |
Family
ID=39745434
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008100967226A Expired - Fee Related CN101303599B (zh) | 2007-05-09 | 2008-05-09 | 工业控制器 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8224882B2 (zh) |
EP (1) | EP1990719A3 (zh) |
JP (1) | JP2008282178A (zh) |
KR (1) | KR100981659B1 (zh) |
CN (1) | CN101303599B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102375409A (zh) * | 2010-08-19 | 2012-03-14 | 株式会社东芝 | 冗余化控制系统及其运算数据的传送方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9077381B2 (en) * | 2013-02-27 | 2015-07-07 | Kabushiki Kaisha Toshiba | Memory controller, storage device and memory control method |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4413339A (en) * | 1981-06-24 | 1983-11-01 | Digital Equipment Corporation | Multiple error detecting and correcting system employing Reed-Solomon codes |
JPS63216170A (ja) * | 1987-03-05 | 1988-09-08 | Mitsubishi Electric Corp | デイジタル信号処理プロセツサ |
FR2622713A1 (fr) * | 1987-10-30 | 1989-05-05 | Thomson Csf | Circuit de calcul utilisant une arithmetique residuelle |
JP2930325B2 (ja) * | 1989-07-29 | 1999-08-03 | ソニー株式会社 | ディジタル信号処理回路 |
US5416786A (en) * | 1991-06-28 | 1995-05-16 | Industrial Technology Research Institute | Error correction circuit for BCH codewords |
JP2665113B2 (ja) | 1992-09-07 | 1997-10-22 | 株式会社日立製作所 | 計算機システムと主メモリ制御装置 |
JP3263706B2 (ja) * | 1995-09-29 | 2002-03-11 | 株式会社エヌ・ティ・ティ・ドコモ | 誤り訂正復号方法 |
CA2208660C (en) * | 1996-07-19 | 2002-09-17 | Takashi Suzuki | Data transmission device |
US5887006A (en) * | 1997-06-26 | 1999-03-23 | Integrated Device Technology, Inc. | Methods and apparatus for error correction |
US20030192007A1 (en) * | 2001-04-19 | 2003-10-09 | Miller David H. | Code-programmable field-programmable architecturally-systolic Reed-Solomon BCH error correction decoder integrated circuit and error correction decoding method |
JP4191393B2 (ja) * | 2001-06-11 | 2008-12-03 | 富士通株式会社 | 情報記録再生装置及び方法並びに信号復号回路 |
WO2004068364A1 (ja) * | 2003-01-27 | 2004-08-12 | Mathematec Kabushiki Kaisha | 演算処理装置、演算処理装置設計方法および論理回路設計方法 |
DE10317650A1 (de) * | 2003-04-17 | 2004-11-04 | Robert Bosch Gmbh | Programmgesteuerte Einheit und Verfahren |
DE10349581A1 (de) * | 2003-10-24 | 2005-05-25 | Robert Bosch Gmbh | Verfahren und Vorrichtung zur Umschaltung zwischen wenigstens zwei Betriebsmodi einer Prozessoreinheit |
JP4677901B2 (ja) | 2003-10-29 | 2011-04-27 | 日本電気株式会社 | 算術符号の復号器または符号化器と逆2値化変換器または2値化変換器との間に中間バッファが挿入された復号装置または符号化装置 |
US20060156177A1 (en) * | 2004-12-29 | 2006-07-13 | Sailesh Kottapalli | Method and apparatus for recovering from soft errors in register files |
JP2006228121A (ja) | 2005-02-21 | 2006-08-31 | Toshiba Corp | 演算処理装置 |
JP2007125065A (ja) | 2005-10-31 | 2007-05-24 | Aruze Corp | 遊技機 |
JP4776374B2 (ja) | 2005-12-27 | 2011-09-21 | 株式会社東芝 | 二重化監視制御システム、及び同システムの冗長化切替え方法 |
US7774689B2 (en) * | 2006-03-17 | 2010-08-10 | Industrial Technology Research Institute | Encoding and decoding methods and systems |
-
2007
- 2007-05-09 JP JP2007125065A patent/JP2008282178A/ja active Pending
-
2008
- 2008-04-24 US US12/108,774 patent/US8224882B2/en not_active Expired - Fee Related
- 2008-05-07 EP EP20080008580 patent/EP1990719A3/en not_active Withdrawn
- 2008-05-08 KR KR20080042983A patent/KR100981659B1/ko not_active IP Right Cessation
- 2008-05-09 CN CN2008100967226A patent/CN101303599B/zh not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102375409A (zh) * | 2010-08-19 | 2012-03-14 | 株式会社东芝 | 冗余化控制系统及其运算数据的传送方法 |
CN102375409B (zh) * | 2010-08-19 | 2014-05-07 | 株式会社东芝 | 冗余化控制系统及其运算数据的传送方法 |
Also Published As
Publication number | Publication date |
---|---|
US20080281896A1 (en) | 2008-11-13 |
EP1990719A3 (en) | 2015-05-13 |
KR20080099806A (ko) | 2008-11-13 |
US8224882B2 (en) | 2012-07-17 |
EP1990719A2 (en) | 2008-11-12 |
CN101303599B (zh) | 2010-12-15 |
JP2008282178A (ja) | 2008-11-20 |
KR100981659B1 (ko) | 2010-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8397142B2 (en) | Shared information generating apparatus and recovering apparatus | |
Johnson | An introduction to the design and analysis of fault-tolerant systems | |
WO2016183109A1 (en) | Making a prediction regarding development of a software product | |
KR101124550B1 (ko) | 연산 회로, 연산 처리 장치, 및 연산 처리 방법 | |
US20170237573A1 (en) | Data processing devices and methods for reconstructing a puf value | |
US20070192656A1 (en) | Error detection device and method for error detection for a command decoder | |
CN101303599B (zh) | 工业控制器 | |
WO2019242868A1 (en) | Software testing device, software testing method, and software testing program | |
Kleinekathöfer et al. | Polynomial formal verification of floating point adders | |
JP2010250669A (ja) | テストケース生成装置、オブジェクト検査装置、およびプログラム | |
US10915385B2 (en) | Residue prediction of packed data | |
Manino et al. | NeuroCodeBench: a plain C neural network benchmark for software verification | |
JP5278115B2 (ja) | 冗長符号生成方法及び装置、データ復元方法及び装置、並びにraid記憶装置 | |
US12019510B2 (en) | Random number generator | |
CN102222204A (zh) | 基于容错的md5全流水硬件加密方法 | |
JP6012414B2 (ja) | 情報処理装置及び情報処理方法及びプログラム | |
CN115016763A (zh) | 随机数生成器 | |
US20200125324A1 (en) | Method and Apparatus for Processing Data | |
Olsen | Continuous Error Detection and Correction of Arithmetic in a Complement RRNS | |
JP5104690B2 (ja) | フォルト検出回路 | |
Odarushchenko et al. | Application of Formal Verification Methods in a Safety-Oriented Software Development Life Cycle | |
Sha et al. | Global Clipper: Enhancing Safety and Reliability of Transformer-based Object Detection Models | |
Drozd et al. | A Method of Developing a Checkable Self-Recovery Floating-Point Pipeline System. | |
JPS60183642A (ja) | リ−ド・ソロモン符号誤り検出装置 | |
Jalilian et al. | Using aop for developing fault tolerant software |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20101215 Termination date: 20170509 |
|
CF01 | Termination of patent right due to non-payment of annual fee |