CN107463516B - 控制装置 - Google Patents

控制装置 Download PDF

Info

Publication number
CN107463516B
CN107463516B CN201710338612.5A CN201710338612A CN107463516B CN 107463516 B CN107463516 B CN 107463516B CN 201710338612 A CN201710338612 A CN 201710338612A CN 107463516 B CN107463516 B CN 107463516B
Authority
CN
China
Prior art keywords
data
memory
area
setting
written
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
Application number
CN201710338612.5A
Other languages
English (en)
Other versions
CN107463516A (zh
Inventor
植田贵雅
宗田靖男
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omron Corp
Original Assignee
Omron Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Omron Corp filed Critical Omron Corp
Publication of CN107463516A publication Critical patent/CN107463516A/zh
Application granted granted Critical
Publication of CN107463516B publication Critical patent/CN107463516B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • G06F11/1052Bypassing or disabling error detection or correction
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Programmable Controllers (AREA)

Abstract

一种控制装置,能够根据情况设定针对数据中可能发生的错误的处理。控制机器或设备的控制装置包括:存储部;诊断机构,其对写入存储部的存储空间的数据或从存储空间读取的数据诊断有无错误;以及处理执行机构,其执行与诊断机构的诊断结果相应的处理。处理执行机构在基于存储空间中有效适用诊断机构的范围的设定,检测到该范围内的数据存在的错误的情况下,执行必要的处理。

Description

控制装置
技术领域
本发明涉及具有对存储于存储空间的数据进行诊断的功能的控制装置。
背景技术
存储程序方式的计算机依次执行配置于主存储部的程序。对这样的程序和执行程序时所需的变量等数据,利用电荷等的电作用进行存储。
利用电作用存储的数据有时受到宇宙射线、静电及其他干扰等各种电噪声的影响而存储有该数据的存储空间的值损坏或变化。已知各种用于对这样的数据提高抗错误能力的方法。
已知一种在存储数据时,附加被称为奇偶检验位的错误检查代码,然后在读取数据时,将该读取的数据与对应的奇偶检验位进行比较,由此确认有无错误和订正错误的技术。搭载了这种功能的存储器称为ECC(Error Check and Correct memory:错误检测与订正存储器)存储器等。
日本特开2009-146168号公报(专利文献1)公开了一种提供以低成本应对带有备份功能的IO存储器规格和带有ECC功能的IO存储器规格的PLC (Programmable LogicController:可编程序逻辑控制器)用部件安装基板的技术。
另一方面,如日本特开2009-146168号公报(专利文献1)公开的带有 ECC功能的IO存储器由于需要用于实现ECC功能的电路结构和用于存储奇偶检验位的附加的容量,因此与不带ECC功能的存储器相比,不利于控制成本。于是,即使是不带ECC功能的存储器,有时也采用用于防止损坏或误读数据的存储器自诊断功能。
存储器自诊断功能是安装在被处理器执行的程序中的功能或者以软件方式安装于读取存储器的电路等的功能,是写入数据时附加CRC(Cyclic Redundancy Check:循环冗余校验码)等错误检测代码,对读取数据时读取到的数据基于对应的错误检测代码来诊断的功能。
专利文献1:日本特开2009-146168号公报
如上所述的存储器自诊断功能多以软件方式安装,因此,基本上,成为写入和读取的对象的所有数据成为诊断对象。另一方面,在成为写入和读取的对象的数据中,有可能存在不允许出错的数据和允许一定程度出错的数据。因此,如果将存储器自诊断功能一律适用于所有数据,则有可能对数据中发生的错误执行过度的处理。
发明内容
本发明是鉴于上述问题而提出的,其目的在于,提供能够根据情况设定针对数据中可能发生的错误的处理的控制装置。
本发明某个方面的控制装置控制机器或设备,该控制装置包括:存储部;诊断机构,其对写入存储部的存储空间的数据或从存储空间读取的数据诊断有无错误;以及处理执行机构,其执行与诊断机构的诊断结果相应的处理。处理执行机构在基于存储空间中有效适用诊断机构的范围的设定,检测到该范围内的数据存在错误的情况下,执行必要的处理。
优选地,控制装置还具备设定机构,该设定机构接受存储空间中有效适用诊断机构的范围的设定。
优选地,控制装置还具备设定机构,该设定机构根据来自外部的指令,设定存储空间中有效适用诊断机构的范围。
优选地,设定机构显示存储部的存储空间中有效存储有数据的区域,并针对该显示内容接受范围的设定。
优选地,在处理执行机构中执行的执行程序的生成阶段,动态地设定有效适用诊断机构的范围。
优选地,对由设定机构设定的范围外的数据,诊断机构不诊断有无错误。
优选地,即使由诊断机构对由设定机构设定的范围外的数据检测到错误的存在,处理执行机构也不执行必要的处理。
优选地,控制装置还具备输出机构,该输出机构对外部装置输出表示存储空间中有效适用诊断机构的范围的信息。
优选地,写入对象的数据和根据该数据计算的冗余代码一并写入存储空间,基于从存储空间读取的数据与对应的冗余代码是否匹配,诊断机构诊断有无错误。
优选地,诊断机构将写入对象的数据写入存储空间中指定的区域,并读取该写入的数据,基于该读取的数据的内容诊断有无错误。
优选地,诊断机构将写入对象的数据分别写入存储空间中指定的第一区域和与该第一区域对应的第二区域,并读取分别写入的该数据进行比较,由此诊断有无错误。
根据本发明,能够提供能够根据情况设定针对数据中可能发生的错误的处理的控制装置。
附图说明
图1是用于说明本实施方式的存储器自诊断功能的概要的示意图。
图2是表示安装有本实施方式的存储器自诊断功能的系统的结构例的示意图。
图3是用于说明使本实施方式的存储器自诊断功能的适用可变的处理的示意图。
图4是表示本实施方式的安全控制器的硬件结构例的示意图。
图5是用于实现本实施方式的存储器自诊断功能的处理顺序的说明图。
图6是用于实现本实施方式的存储器自诊断功能的处理顺序的说明图。
图7是用于说明有效适用本实施方式的存储器自诊断功能的存储区域的设定方法的图。
图8A 、图 8B 是用于说明有效适用本实施方式的存储器自诊断功能的存储区域的另一设定方法的图。
图9是用于说明有效适用本实施方式的存储器自诊断功能的存储区域的又另一设定方法的图。
图10A 、图 10B 是表示用于设定针对本实施方式的存储器自诊断功能的存储区域的安装例的示意图。
图11A 、图 11B 是表示用于确认针对本实施方式的存储器自诊断功能的存储区域的设定内容的安装例的示意图。
图12是表示本实施方式的存储器自诊断功能的适用相关的处理顺序的流程图。
其中,附图标记说明如下:
10、102:处理器
20:存储空间
22、26、28、218、228:存储区域
24:边界
100:安全控制器
104:数据控制器
106:RAM
108:闪存
110:本地通信接口
112:网络接口
114:内部总线控制器
116:现场总线控制器
118:驱动程序
120:自诊断逻辑
150:PLC
152:网络
200、300、400:设定画面
202:映像(Map)
204、206:区域
210、220:开始位置
212、216、222、226:滑动条
214、224:结束位置
302:复选框
310:项目数据
312:安全程序代码
314:调试用程序代码
316:结构信息
320:程序组,
322:分析程序
324:汇编程序
326:编译程序
340:存储器自诊断对象区域信息
具体实施方式
参照附图详细说明本发明实施方式。需要说明的是,对图中的相同或相应部分标注相同附图标记,不重复说明。
<A.背景、问题、解决方案>
首先,对本实施方式的控制装置的背景、问题及解决该问题的解决方案的概要进行说明。图1是用于说明本实施方式的存储器自诊断功能的概要的示意图。
参照图1,说明处理器10访问存储空间20时的存储器自诊断功能。存储器自诊断功能是诊断写入存储部的存储空间的数据或者从存储空间读取的数据有无错误的功能,相当于诊断机构。
例如,处理器10访问存储空间20,将某个数据写入存储空间20后,读取该写入的数据,并判断与写入的数据是否一致或不一致。例如,将数据“0101”写入存储空间20后,从存储空间20读取写入的该数据时,如果读取的数据为“0101”,则判断为正确进行了写入和读取。另一方面,将数据“0101”写入了存储空间20,但读取的数据为“0100”时,判断为未正确进行了数据的写入或读取。
作为这种未正确进行数据的写入或读取的原因,可以想到宇宙射线、静电、其他干扰等各种电噪声(暂时性的外部因素)的影响。需要说明的是,存储空间的值暂时性地损坏或误读的故障模式被称为软错误。由于这种暂时性的外部因素引起的软错误通常再现性低,因此难以找出根本的原因。结果,不容易建立有效防止再次发生的措施。
存储器自诊断功能导入要求高可靠性的设备等。作为一例,可以举出为了安全使用在制造现场等配置的机器而使用的功能安全设备等。作为功能安全设备的典型例,安全控制器通常安装有存储器自诊断功能。
图2是表示安装有本实施方式的存储器自诊断功能的系统的结构例的示意图。参照图2,安全控制器100经由网络152与PLC(Programmable Logic Controller:可编程序逻辑控制器)150连接,执行机器或设备的安全相关的监控处理。安全控制器100在发生任何事件时判断为需要维持机器或设备的安全的情况下,向PLC150发出对象设备的停止等指令。
另外,从故障安全(fail safe)的思想出发,在安全控制器100本身发生了一些异常的情况下,也向PLC150发出停止指令。这是因为考虑到了安全控制器100丧失监控功能的情况等。
在采用了上述存储器自诊断功能的安全控制器100中检测出内部存储器等的一些错误时,从安全控制器100对PLC150输出停止指令。通过发出这种停止指令,PLC150控制的设备停止,导致运转率等降低。
在此,安全控制器100处理的数据不一定都是重要数据。即,可能存在用于安全控制器100实现功能安全所需的数据和除此之外的附加数据。在这种情况下,检测到附加数据中发生的一些错误时也要停止设备,有可能导致在确保安全与维持设备运转率之间失去平衡的结果。
于是,在本实施方式的控制装置中,根据安全控制器100处理的数据的重要度等,使存储器自诊断功能的适用与否和基于存储器自诊断功能的错误检测结果的利用方式等不同。
作为简单的处理方式,采用仅对安全控制器100中执行的安全关键处理关联的存储区域适用存储器自诊断功能,而对除此之外的存储区域不适用存储器自诊断功能的方法。在本说明书中“安全关键处理”是指,例如用于实现由国际标准定义的功能安全所需的处理。
图3是用于说明使本实施方式的存储器自诊断功能的适用可变的处理的示意图。图3表示了将例如挥发性存储装置即RAM(Random Access Memory:随机访问存储器)和非挥发性存储装置即闪存的各个存储区域22,分类为存储安全关键处理所需的数据的存储区域26和除此之外的存储区域28的例子。需要说明的是,存储区域28有时存储有安全关键处理之外的处理所需的数据,有时没有存储任何有效的数据。
如图3所示,对存储安全关键处理所需的数据的存储区域26有效适用存储器自诊断功能有效,但对除此之外的存储区域28存储器自诊断功能无效。
“有效适用存储器自诊断功能”是指,利用存储器自诊断功能具有的原有功能。即,在有效适用存储器自诊断功能的情况下,执行与存储器自诊断功能的诊断结果相应的处理,例如,在数据中检测到错误的情况下,执行对 PLC150发出对象设备的停止等指令等(参照图2)。
这样,本实施方式的控制装置在检测到用于存储安全关键处理所需数据而设定的存储区域26内的数据中存在的错误的情况下,根据该错误执行必要的处理。
对此,“存储器自诊断功能无效”是指,不利用存储器自诊断功能具有的全部或一部分原有功能。具体地,对存储区域28不进行存储器自诊断功能的错误检测本身,或者即使利用存储器自诊断功能检测到一些错误,也不会执行处理。而且,也可以在利用存储器自诊断功能检测到一些错误的情况下,无需像以往那样停止设备,而自动订正该错误相关的错误。或者,也可以在存在原数据的情况下自动恢复(restore)。
在本实施方式的控制装置中,存储器自诊断功能可以对用于存储安全关键处理所需的数据而设定的存储区域26之外的数据不诊断有无错误。或者,存储器自诊断功能可以对用于存储安全关键处理所需的数据而设定的存储区域26之外数据,即使检测到错误的存在,也不执行与该错误相应的必要的处理。
根据本实施方式,通过灵活地设定或释放适用存储器自诊断功能的存储区域和对象数据,避免进行所需以上的故障安全动作,从而能够维持必要的功能安全,并提高设备整体的运转率。
存储区域26和存储区域28的边界24可以被用户指定和/或调整。或者,也可以安全控制器100中执行的程序的开发环境(编译程序、汇编程序)等利用语法解析或对象解析来确定边界24的位置。
在该情况下,边界24的位置既可以定义为物理上的位置,也可以定义为理论上的位置。在定义为理论上的位置的情况下,有时在物理上的存储区域离散性地设定区域。在本实施方式中,只要能够区分每个数据的处理类别,各个存储区域的设定就可以采用任何方式。
为便于说明,在图3中说明了分别定义适用存储器自诊断功能的存储区域和除此之外的存储区域的设定例,也就是否将存储器自诊断功能有效化的两步骤的设定例,但是也可以分类并设定为更多种类。例如,可以设定三种类型:利用存储器自诊断功能检测到一些错误时停止处理的第一存储区域、利用存储器自诊断功能检测到一些错误时发出警告并继续处理的第二存储区域、不适用存储器自诊断功能的第三存储区域。也可以从多种处理中设定任一处理。
<B.安全控制器的硬件结构例>
接着,对本实施方式的控制装置的一例即安全控制器100的硬件结构的一例进行说明。图4是表示本实施方式的安全控制器100的硬件结构例的示意图。
参照图4,安全控制器100具有类似PLC的硬件结构,作为主要组件,包括:处理器102、数据控制器104、RAM106、闪存108、本地通信接口(I/F: Interface)110、网络接口112、内部总线控制器114以及现场总线控制器116。
处理器102是执行在闪存108等中事先安装的系统程序和用户程序等的运算主体。
数据控制器104调解处理器102与各个组件之间的数据交换。
RAM106暂时存储由处理器102执行的程序代码和执行程序所需的工作数据等。闪存108非挥发性地存储由处理器102执行的系统程序和用户程序等。
本地通信接口110经由USB(Universal Serial Bus:通用串行总线)等,与未图示的支援装置等之间进行交换数据。网络接口112利用以太网(注册商标)等,与其他信息处理装置(PLC、服务器装置等)之间交换数据。
内部总线控制器114经由内部总线,与未图示的IO(Input Output:输入输出)单元等之间进行交换数据。现场总线控制器116经由现场总线,与安装于未图示的远程IO装置的IO单元等之间进行交换数据。
作为本实施方式的存储器自诊断功能成为对象的存储部,典型地可以列举出图4所示的RAM106和闪存108等,但不限于此。基本上,只要存在用于存储数据的存储空间,将存储器自诊断功能就可以适用于任何对象。例如,处理器附带的闪存、寄存器、IO单元内的非挥发性存储器、寄存器等也是适用对象。
作为执行与本实施方式的存储器自诊断功能的诊断结果相应的处理的处理执行机构,可以举出图4所示的处理器102,但不限于此,只要是能够根据由存储器自诊断功能检测出的错误执行处理,就可以采用任何处理执行机构。
本实施方式的存储器自诊断功能可以利用任意方法安装。例如,可以利用由处理器102执行的系统程序的一部分所包含的驱动程序118安装。或者,作为数据控制器104的一功能,可以使用IC(Integrated Circuited:集成电路)、 LSI(Large Scale Integratedcircuited:大规模集成电路)等硬连线电路实现,也可以通过微处理器执行固件来实现。在该情况下,利用任意构成安装的自诊断逻辑120搭载于数据控制器104。
本实施方式的存储器自诊断功能的适用不限于如图4所示的安全控制器 100,可以适用于控制机器或设备的所有控制装置(例如,PLC等)。另外,不仅可以适用于安全控制器、PLC主运算部,还可以适用于IO单元、远程 IO装置等次要的处理部。
<C.存储器自诊断功能>
接着,对本实施方式的存储器自诊断功能的具体处理顺序的一例进行说明。本实施方式的存储器自诊断功能诊断向存储部的存储空间写入的数据或从存储空间读取的数据有无错误。图5和图6是用于实现本实施方式的存储器自诊断功能的处理顺序的说明图。
图5和图6表示在存储空间一并写入写入对象的数据和根据该数据计算的冗余代码的方式。作为这种冗余代码的一例,已知有CRC。CRC是使用事先规定的多项式根据对象数据计算的。存储器自诊断功能基于从存储空间读取的数据与对应的冗余代码(CRC)是否匹配来诊断有无错误。
在图5中,作为应用例表示了数据回读方式。数据回读方式是将一些数据写入存储空间时,一旦写入数据后就判断写入的该数据的读取结果是否适当的方法。即,存储器自诊断功能将写入对象的数据写入存储空间的指定区域,并读取写入的该数据,基于读取的该数据的内容来诊断有无错误。
具体地,当输入任何应写入存储空间的数据时((1)输入数据),在输入的该数据上附加CRC后((2)附加CRC),写入指定的存储空间((3) 写入)。之后,从该存储空间读取写入的数据((4)读取),然后,通过比较读取的数据与CRC,判断输入的数据是否正确写入((5)验证)。即,在验证工序中,判断之前使用多项式根据读取的数据计算出的CRC值与读取的CRC值是否一致。两者一致时,能够判断为输入的数据被正确写入,两者不一致时,判断为数据写入发生了一些错误。
正确写入的数据响应之后发出的读取指令,被读取并输出。((6)读取和(7)输出数据)。
这样,根据数据回读方式,在写入数据时,随时验证写入的该数据的完整性。
需要说明的是,在对写入存储空间的数据附加根据该数据计算的CRC 的情况下,能够使用对应的CRC,在任意时刻验证正在写入的数据的完整性。例如,也可以想象到适当写入存储空间的一部分数据因电噪声而事后发生变化。对这种事后的数据变化,也能够通过使用CRC来检测。
因此,也可以在图5所示的数据回读方式的基础上,或者代替数据读取方式,采用使用CRC验证数据完整性的方式。
图6表示数据多路复用方式的例子。数据多路复用方式是将一些数据写入存储空间时,在某区域和与某区域对应的区域分别写入数据后,比较分别写入的数据的读取结果并判断是否适当的方法。即,存储器自诊断功能将写入对象的数据分别写入存储空间中指定的第一区域和与该第一区域对应的第二区域,并读取分别写入的数据进行比较,从而诊断有无错误。
具体地,当输入任何应写入存储空间的数据时((1)输入数据),在该输入的数据上附加CRC后((2)附加CRC),在指定的存储空间和与该存储空间成双对的存储空间中分别写入同一数据(输入的数据+CRC)((3) 多路复用写入)。之后或者发出读取指令时,分别从相互对应的存储空间读取数据进行比较((4)读取和(5)比较)。两数据一致时,能够判断为输入的数据被正确写入,两数据不一致时,判断数据写入发生了一些错误。正确写入的数据可以作为读取结果输出((6)输出数据)。
这样,根据数据多路复用方式,写入数据时,写入的数据的完整性随时得到验证。需要说明的是,在数据多路复用方式中,能够在任意时刻评价所保持的数据的有效性。例如,即使在写入存储空间的任何数据事后发生变化的情况下,由于成对的数据双方相同地变化的可能性极低,因此,通过对比两数据,能够检测数据的局部性缺损或者失配。
需要说明的是,图6对在数据上附加CRC的结构进行了例示,但是在数据多路复用方式中,只要比较写入的数据彼此即可,因此CRC不是必需的。但是,如果附加CRC,则进一步具有能够事后验证数据的完整性的优点。
作为实现存储器自诊断功能的方法,不限于图5和图6所示的方法,只要是能够验证写入的数据的完整性和有效性的方法,就可以采用任何方法。
<D.有效适用存储器自诊断功能的存储区域的设定方法和运用>
如上所述,本实施方式的控制装置具有为了在存储空间中设定有效适用存储器自诊断功能的范围的设定功能。接着,说明如图3所示的在安全控制器100能够访问的存储区域中设定有效适用存储器自诊断功能的存储区域的方法和运用。
(d1:设定主体)
作为典型例,安全控制器100能够访问的存储区域中有效适用存储器自诊断功能的存储区域,可以由控制装置的制造商事先设定或者在制造阶段事先设定。在该情况下,可以设定成用户不能变更事先设定的存储区域,也可以设定成用户根据用途、使用环境能够适当变更事先设定的存储区域。在前者的情况下,如后述那样,用于设定存储区域的方式不向用户提供,而仅在制造商一方使用即可。
或者,可以在制造商发货阶段,将所有的存储区域默认设定为有效适用存储器自诊断功能的对象,使得用户可以根据用途、使用环境适当变更存储区域。
(d2:存储区域的直接设定)
例如,存储(安装)在非挥发性闪存等的程序等,基本上存储位置不会事后发生变化,因此在存储的静态状态下,能够手动设定有效适用存储器自诊断功能的存储区域。
图7是用于说明有效适用本实施方式的存储器自诊断功能的存储区域的设定方法的图。安全控制器100连接有提供安全程序等的开发环境、调试环境等的支援装置。在这种支援装置上显示如图7所示的设定画面200。
用户操作支援装置,在设定画面200上设定有效适用存储器自诊断功能的存储区域。具体地,在设定画面200显示有表示对象存储空间的使用状态的映像(map)202。映像202对应存储区域的地址被可视化,与该映像202 的地址关联,能够显示用于设定存储区域的多个滑动条(slider)。
在映像202内,存储有数据的区域204、206以与其他区域不同的显示方式显示。用户参照映像202内存储有数据的区域,并操作滑动条212、216、 222、226,设定有效适用存储器自诊断功能的存储区域。
这样,作为接受存储空间中有效适用存储器自诊断功能的范围的设定的设定功能,显示存储部的存储空间中有效存储有数据的区域,并针对该显示内容接受范围的设定。
在图7所示的例子中,滑动条212规定存储区域的开始位置210,滑动条216规定存储区域的结束位置214。结果,从开始位置210到结束位置214 的范围被设定为存储区域218。
在图7所示的例子中,区域204和区域206分开设置,因此与区域206 关联显示滑动条222、226。即,滑动条222规定存储区域的开始位置220,滑动条226规定存储区域的结束位置224。结果,从开始位置220到结束位置224的范围被设定为存储区域228。
通过这样的顺序,在存储空间中,存储区域218和存储区域228被设定为有效适用存储器自诊断功能的范围。反过来说,在存储空间中,对存储区域218和存储区域228之外的其他存储区域而言,存储器自诊断功能无效。即,在没有存储数据的存储区域,即使因一些外部因素而发生了错误,用于实现功能安全所需的处理也不会受到任何阻碍。相反,由于没有存储数据的存储区域发生了错误而停止设备成为导致运转率降低的问题。利用本实施方式的方法,适当设定有效适用存储器自诊断功能的存储区域,从而使如上所述的互相相反的问题得到平衡而得以解决。
(d3:安全程序生成时的设定)
由安全控制器100执行的安全程序有时由变量程序生成。在程序源代码中,必要的数据以变量的形式被指定,因此用户看不到对象数据实际存储在存储空间的哪个空间的情况较多。
于是,在安全程序的生成阶段,可以参照程序源代码等自动设定存储对象数据的存储区域。
图8A 、图 8B 是用于说明有效适用本实施方式的存储器自诊断功能的存储区域的另一设定方法的图。
在使用支援装置生成安全程序的过程中,显示如图8A所示的设定画面 300。在设定画面300一览地表示在安全控制器100执行的程序和各个程序中利用的变量、数据等(附图标记304)。用户选择有效适用存储器自诊断功能的对象。具体地,与各个项目对应地显示复选框302,用户能够通过勾选应有效适用存储器自诊断功能的对象项目来进行选择。
需要说明的是,对涉及功能安全的程序、相关数据(在图8A所示例子中,“安全程序”、“系统变量”、“内部变量”等)可以禁止取消勾选,即可以禁止从应有效适用存储器自诊断功能的对象中排除。通过设置这样的限制,对功能安全所需的数据,一定保障有效适用存储器自诊断功能。
按照在图8A所示的设定画面300进行的用户设定,按照如图8B所示的处理顺序,生成存储器自诊断对象区域信息340。即,对包含安全程序代码 312、调试用程序代码314、设定构成信息316等的项目数据310,实施解析处理、转换处理。
更具体地,通过包含分析程序322、汇编程序324、编译程序326的程序组320依次对项目数据310进行处理,来进行程序源代码的解析、对象配置位置的确定等,在生成执行代码时,确定使用存储空间中的哪些存储区域。而且,对在图8A所示的设定画面300中勾选的种类的数据而言,从配置各个数据的存储空间生成存储器自诊断对象区域信息340。这样,有效适用存储器自诊断功能的范围,也可以在处理执行机构即处理器中执行的执行程序即安全程序的生成阶段动态地设定。
执行安全程序时,参照存储器自诊断对象区域信息340来设定有效适用存储器自诊断功能的存储区域。
经过这样的处理设定有效适用存储器自诊断功能的存储区域,从而即使是用户不清楚变量程序那样的数据配置在存储空间中的哪些存储区域的情况,也能够适当设定有效适用存储器自诊断功能的存储区域。
(d4:在数据配置位置动态地变更的系统中的设定)
在由安全控制器100执行安全程序的过程中,依次实施工作数据的生成和更新。伴随这样的数据的动态的生成和更新,存储空间中用于存储数据的存储区域随时间发生变化。对于这样随时间发生变化的存储区域,优选动态地设定有效适用存储器自诊断功能的存储区域。因此,可以利用在安全控制器100执行的存储器管理器、调度器等,将有效适用存储器自诊断功能的存储区域设定成使之依次变更。
图9是用于说明有效适用本实施方式的存储器自诊断功能的存储区域的又另一设定方法的图。在图9所示的设定画面400,用户能够在存储空间的所有存储区域和实际用于存储数据的一部分存储区域中选择设定有效适用存储器自诊断功能的范围。
根据在设定画面400的用户设定,安全控制器100的存储管理器和调度器每隔规定周期获取存储空间中用于存储数据的存储区域,仅对获取的该存储区域进行处理来执行存储器自诊断功能。
通过设定这样的设定功能,即使在存储空间中用于存储数据的存储区域的大小、位置发生变化的情况下,也能够高效适用存储器自诊断功能,并降低设备不必要地停止的可能性。
(d5:用于设定的安装例)
对如上所述的用于设定有效适用存储器自诊断功能的存储区域的安装例进行说明。图10A 、图 10B 是表示用于对本实施方式的存储器自诊断功能设定存储区域的安装例的示意图。
如图10A所示,例如,假定安全控制器100与支援装置160连接的情况。当用户操作支援装置160对安全控制器100设定有效适用存储器自诊断功能的存储区域,并在设定结束时,支援装置160生成设定信息。生成的设定信息被传送到安全控制器100,存储于安全控制器100。
这样,作为安装于安全控制器100的设定功能,也可以采用接受在存储空间中设定有效适用存储器自诊断功能的范围的功能。
或者,如图10B所示,假定安全控制器100与支援装置160连接的情况,或者经由网络152将安全控制器100与显示装置170连接的情况。
在这样的情况下,当用户对支援装置160或显示装置170操作而在安全控制器100中设定有效适用存储器自诊断功能的存储区域时,显示该设定内容的设定指示向安全控制器100传送。安全控制器100响应来自支援装置160 或显示装置170的设定指示,在内部生成设定信息,并存储该生成的设定信息。即,安全控制器100响应来自支援装置160或显示装置170的设定指示,更新存储于内部的设定信息。
这样,作为安装于安全控制器100的设定功能,也可以采用根据来自外部的指令,设定存储空间中有效适用存储器自诊断功能的范围的功能。
需要说明的是,不限于如上所述的安装例,还可以采用与装置结构或系统结构相适应的安装例。
(d6:设定内容确认)
也可以设置成能够确认如上所述的有效适用存储器自诊断功能的存储区域的设定内容。图11A 、图 11B 是表示用于确认针对本实施方式的存储器自诊断功能设定存储区域的设定内容的安装例的示意图。
参照图11A,例如,将支援装置160与安全控制器100连接,并操作支援装置160来读取安全控制器100的设定。这样,在支援装置160上显示如图11B所示的设定确认画面250。
这样,在安全控制器100中也可以安装向支援装置160等外部装置输出表示存储空间中有效适用存储器自诊断功能的范围的信息的功能。用户基于该设定确认画面250能够确认有效适用存储器自诊断功能的存储区域的有效性等。
需要说明的是,不限于如上所述的安装例,可以采用与装置结构或系统结构相适应的安装例。
<E.处理顺序>
接着,对本实施方式的存储器自诊断功能的适用相关的处理顺序进行说明。图12是表示本实施方式的存储器自诊断功能的适用相关的处理顺序的流程图。图12所示的各个步骤可以由处理器102执行驱动程序118(都参照图4)来实现,也可以由数据控制器104(图4参照)执行。
参照图12,首先,接受存储区域的设定(步骤S2)。由此,规定应适用存储器自诊断功能的存储区域。
接着,判断是否要求对存储空间中的一些数据进行访问(步骤S4)。“对数据的访问”至少包括数据的写入和数据的读取中的任一种。当没有要求对存储空间中的一些数据进行访问时(指步骤S4中“否”的情况),重复步骤S4的处理。
当要求对存储空间中的一些数据进行访问时(指步骤S4中“是”的情况),判断要求访问的地址是否位于在步骤S2设定的存储区域内(步骤S6)。在要求访问的地址不在步骤S2中设定的存储区域内的情况下(指步骤S6中“否”的情况),存储器自诊断功能无效,执行被要求的对数据的访问(步骤S8),响应该访问的执行结果(步骤S10)。然后,重复步骤S4以后的处理。
对此,在要求访问的地址位于步骤S2中设定的存储区域内的情况下(指步骤S6中“是”的情况),存储器自诊断功能有效,执行被要求的对数据的访问(步骤S12)后,执行对该数据的访问相关的存储器自诊断功能(步骤S14)。通过执行存储器自诊断功能,判断是否检测到了一些错误(步骤 S16)。
在检测到一些错误的情况(指步骤S16中“是”的情况)下,响应检测到的错误内容(步骤S18)。对此,在没有检测到任何错误的情况(指步骤 S16中“否”的情况)下,响应访问的结果(步骤S20)。然后,重复步骤 S4以后的处理。
在安全控制器100有效执行的期间,重复步骤S2~S20的处理。
<F.适用领域>
如上所述,本实施方式的存储器自诊断功能和与其相关的应用程序能够适用于控制装置的处理器能够访问的任何存储器(内置挥发存储器、内置非挥发存储器、外置存储器等)。而且,也能够适用于内部的高速缓存、寄存器。
而且,存储器自诊断功能和与其相关的应用程序也能够适用于IO单元、远程IO装置等。或者,也能够适用于与控制装置的一部分或全部一体化的系统等。
另外,设定有效适用存储器自诊断功能的存储区域的功能可以由与安全控制器、PLC连接的支援装置提供,或者也可以由安全控制器的固件提供。而且,还可以与外部服务器协作提供全部或一部分上述功能。
<G.优点>
根据本实施方式的控制装置,能够根据情况设定对数据发生的错误的处理。通过采用这样的功能,能够可靠地实现功能安全,并且降低与功能安全不相关部分因受到宇宙射线、静电、其他干扰等各种电噪声的影响而发生的错误致使机器、设备停止引起的运转率下降的可能性。即,能够兼顾功能安全的完整履行和机器设备的运转率的维持彼此相反的问题。
需要说明的是,本次公开的实施方式在所有的内容上只是例示,不是用于限制本发明。本发明的范围不是由上述的说明而是由专利权利要求书表示,并且包括与专利权利要求书均等含义和范围内的所有变更。

Claims (7)

1.一种控制系统,控制机器或设备,包括:
存储部;
诊断机构,对写入上述存储部的存储空间的数据或从上述存储空间读取的数据诊断有无错误;
处理执行机构,执行与上述诊断机构的诊断结果相应的处理;以及
设定机构,该设定机构根据用户的操作,设定上述存储空间中有效适用上述诊断机构的范围,
对由上述设定机构设定的范围外的数据,不诊断有无错误,
上述处理执行机构在基于上述存储空间中有效适用上述诊断机构的范围的设定,检测到该范围内的数据存在的错误的情况下,执行相应处理,
上述设定机构以将存储区域的地址可视化的映像来显示上述存储部的上述存储空间中有效存储有数据的区域,并在该映像中接受由开始位置和结束位置设定的上述范围。
2.根据权利要求1所述的控制系统,其中,
在上述处理执行机构中执行的执行程序的生成阶段,动态地设定有效适用上述诊断机构的范围。
3.根据权利要求1或2所述的控制系统,其中,
即使由上述诊断机构对由上述设定机构设定的范围外的数据检测到错误的存在,上述处理执行机构也不执行上述相应处理。
4.根据权利要求1或2所述的控制系统,其中,
还具备输出机构,该输出机构输出表示上述存储空间中有效适用上述诊断机构的范围的信息。
5.根据权利要求1或2所述的控制系统,其中,
写入对象的数据和根据该数据计算的冗余代码一并写入上述存储空间,
基于从上述存储空间读取的数据与对应的冗余代码是否匹配,上述诊断机构诊断有无错误。
6.根据权利要求1或2所述的控制系统,其中,
上述诊断机构将写入对象的数据写入上述存储空间中指定的区域,并读取该写入的数据,基于该读取的数据的内容诊断有无错误。
7.根据权利要求1或2所述的控制系统,其中,
上述诊断机构将写入对象的数据分别写入上述存储空间中指定的第一区域和与该第一区域对应的第二区域,并读取分别写入的该数据进行比较,由此诊断有无错误。
CN201710338612.5A 2016-06-06 2017-05-15 控制装置 Active CN107463516B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016-112480 2016-06-06
JP2016112480A JP6717059B2 (ja) 2016-06-06 2016-06-06 制御システム

Publications (2)

Publication Number Publication Date
CN107463516A CN107463516A (zh) 2017-12-12
CN107463516B true CN107463516B (zh) 2021-03-16

Family

ID=59034431

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710338612.5A Active CN107463516B (zh) 2016-06-06 2017-05-15 控制装置

Country Status (4)

Country Link
US (1) US10379946B2 (zh)
EP (1) EP3255546B1 (zh)
JP (1) JP6717059B2 (zh)
CN (1) CN107463516B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017208824B4 (de) 2017-05-24 2022-12-29 Wago Verwaltungsgesellschaft Mbh Busumsetzer
US11182272B2 (en) * 2018-04-17 2021-11-23 International Business Machines Corporation Application state monitoring
CN112147988A (zh) * 2020-10-15 2020-12-29 济宁科力光电产业有限责任公司 一种危险失效的同步逻辑诊断方法
KR20240067770A (ko) * 2021-09-29 2024-05-17 드림 칩 테크놀러지 게엠베하 데이터 메모리의 자가 진단을 위한 전자 회로 및 방법
US11880268B2 (en) 2021-12-10 2024-01-23 Schneider Electric Systems Usa, Inc. Soft error aggregation method for detection and reporting of risks in a safety instrumented system

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5606662A (en) * 1995-03-24 1997-02-25 Advanced Micro Devices, Inc. Auto DRAM parity enable/disable mechanism
US6288934B1 (en) * 2000-09-06 2001-09-11 Oki Electric Industry Co., Ltd. Analog memory device and method for reading data stored therein
CN101681310A (zh) * 2007-04-04 2010-03-24 夏普株式会社 错误检测控制系统
US20120210193A1 (en) * 2006-11-07 2012-08-16 Macronix International Co., Ltd. Memory and method for checking reading errors thereof
CN102782662A (zh) * 2010-03-11 2012-11-14 三菱电机株式会社 存储器诊断方法、存储器诊断装置及存储器诊断程序
CN103021460A (zh) * 2011-09-22 2013-04-03 爱思开海力士有限公司 包括存储器件和系统的半导体器件的设定数据储存
CN103890739A (zh) * 2011-10-17 2014-06-25 日立汽车系统株式会社 电子控制装置
CN104641307A (zh) * 2012-09-11 2015-05-20 三菱电机株式会社 安全运算装置、安全输入装置、安全输出装置以及安全控制器

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3068009B2 (ja) * 1996-08-06 2000-07-24 日本電気株式会社 冗長化メモリのエラー訂正機構
JP2000215112A (ja) * 1998-11-20 2000-08-04 Sony Computer Entertainment Inc 電子機器及び低電圧検出方法
JP2001092724A (ja) * 1999-09-17 2001-04-06 Nec Corp メモリ診断方法及び装置
US7689814B2 (en) * 2004-12-20 2010-03-30 Sony Computer Entertainment Inc. Methods and apparatus for disabling error countermeasures in a processing system
JP4435180B2 (ja) * 2004-12-28 2010-03-17 東芝ストレージデバイス株式会社 メモリ診断方法
US7620876B2 (en) * 2005-06-08 2009-11-17 Altera Corporation Reducing false positives in configuration error detection for programmable devices
JP2007148570A (ja) * 2005-11-24 2007-06-14 Fuji Xerox Co Ltd 記憶装置の診断装置および診断方法
JP5099342B2 (ja) 2007-12-14 2012-12-19 オムロン株式会社 Plc用の部品実装基板
JP5883284B2 (ja) * 2011-12-13 2016-03-09 ラピスセミコンダクタ株式会社 半導体メモリ制御装置及び制御方法
JP5825178B2 (ja) * 2012-03-30 2015-12-02 沖電気工業株式会社 メモリ診断装置、メモリ診断プログラム及び機器
JP2013238926A (ja) * 2012-05-11 2013-11-28 Advantest Corp 信号処理回路およびそれを用いた試験装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5606662A (en) * 1995-03-24 1997-02-25 Advanced Micro Devices, Inc. Auto DRAM parity enable/disable mechanism
US6288934B1 (en) * 2000-09-06 2001-09-11 Oki Electric Industry Co., Ltd. Analog memory device and method for reading data stored therein
US20120210193A1 (en) * 2006-11-07 2012-08-16 Macronix International Co., Ltd. Memory and method for checking reading errors thereof
CN101681310A (zh) * 2007-04-04 2010-03-24 夏普株式会社 错误检测控制系统
CN102782662A (zh) * 2010-03-11 2012-11-14 三菱电机株式会社 存储器诊断方法、存储器诊断装置及存储器诊断程序
CN103021460A (zh) * 2011-09-22 2013-04-03 爱思开海力士有限公司 包括存储器件和系统的半导体器件的设定数据储存
CN103890739A (zh) * 2011-10-17 2014-06-25 日立汽车系统株式会社 电子控制装置
CN104641307A (zh) * 2012-09-11 2015-05-20 三菱电机株式会社 安全运算装置、安全输入装置、安全输出装置以及安全控制器

Also Published As

Publication number Publication date
EP3255546A1 (en) 2017-12-13
JP2017219945A (ja) 2017-12-14
EP3255546B1 (en) 2019-01-30
US10379946B2 (en) 2019-08-13
CN107463516A (zh) 2017-12-12
JP6717059B2 (ja) 2020-07-01
US20170351573A1 (en) 2017-12-07

Similar Documents

Publication Publication Date Title
CN107463516B (zh) 控制装置
JP5645921B2 (ja) 安全関連制御ユニットおよび自動化設備の制御方法
KR20130031888A (ko) 데이터 메모리의 모니터링 방법
JP5464128B2 (ja) Ram故障診断装置、そのプログラム
KR102131230B1 (ko) 파워트레인 제어기의 램 에러 감지 로직의 자가진단 방법 및 장치
US9678870B2 (en) Diagnostic apparatus, control unit, integrated circuit, vehicle and method of recording diagnostic data
JP2013175118A (ja) 制御装置、及びそのメモリ故障検出方法、その自己診断方法
US6539338B1 (en) Self-diagnostic testing of a network interface adapter
EP3955112A1 (en) Method and apparatus for memory error detection
WO2021038923A1 (ja) 制御装置、ユーザプログラムの実行制御方法、およびシステムプログラム
JP6332134B2 (ja) メモリ診断回路
US8190971B2 (en) Data processing system and method for operating a data processing system
JP2021172142A (ja) 異常検出装置
CN111352754A (zh) 一种数据存储检错纠错方法及数据存储装置
JP4357373B2 (ja) 高信頼性制御装置
JP2011232910A (ja) メモリ診断方式
JP5521684B2 (ja) 自己診断装置及び自己診断方法
WO2019211927A1 (ja) メモリ診断装置及びメモリ診断方法
JP6501703B2 (ja) 車載制御装置
JP2016177717A (ja) メモリ制御装置及びメモリ制御方法
KR101856065B1 (ko) Obd 테스트 장치 및 방법
JP5619243B1 (ja) 車載用電子制御装置
JP6552926B2 (ja) Icカード及び携帯可能電子装置
JP2023104466A (ja) 車載電子制御装置、及びメモリ制御方法
JP5508216B2 (ja) 車両用電装部品の制御装置およびその制御方法

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