JP6196143B2 - 情報処理装置、情報処理方法およびプログラム - Google Patents

情報処理装置、情報処理方法およびプログラム Download PDF

Info

Publication number
JP6196143B2
JP6196143B2 JP2013258635A JP2013258635A JP6196143B2 JP 6196143 B2 JP6196143 B2 JP 6196143B2 JP 2013258635 A JP2013258635 A JP 2013258635A JP 2013258635 A JP2013258635 A JP 2013258635A JP 6196143 B2 JP6196143 B2 JP 6196143B2
Authority
JP
Japan
Prior art keywords
buffer
data
area
abnormality
abnormality detection
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
JP2013258635A
Other languages
English (en)
Other versions
JP2015115005A (ja
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2013258635A priority Critical patent/JP6196143B2/ja
Priority to US14/915,885 priority patent/US9952920B2/en
Priority to CN201480040271.8A priority patent/CN105378678B/zh
Priority to PCT/JP2014/080812 priority patent/WO2015087684A1/ja
Publication of JP2015115005A publication Critical patent/JP2015115005A/ja
Application granted granted Critical
Publication of JP6196143B2 publication Critical patent/JP6196143B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/0706Error 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 the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error 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 the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • 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/0706Error 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 the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error 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 the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • G06F11/0724Error 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 the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU] in a multiprocessor or a multi-core unit
    • 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/0766Error or fault reporting or storing
    • G06F11/0787Storage of error reports, e.g. persistent data storage, storage using memory protection
    • 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/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/27Built-in tests
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3037Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus

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 Hardware Design (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)
  • Information Transfer Systems (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Description

本発明の実施形態は、情報処理装置、情報処理方法およびプログラムに関する。
データの演算処理を行いかつ制御対象がそれぞれ異なるMPU(Micro-Processing Unit)を有する通信システムは、連携動作するMPU間においてデータの受け渡しを行う際に当該データを一時的に保存してMPU間の処理速度や転送速度の差を補うバッファを有している。この通信システムによれば、データバスのバス幅が異なるMPU間においてデータの受け渡しを行う際のデータの転送速度を向上させることができる。
特開2005−71075号公報
しかしながら、上述の通信システムにおいては、バッファはデータを記憶しておく機能を提供しているにすぎないので、バッファにおけるデータの書き込み時またはデータの読み出し時の異常によって異常なデータが受信側のMPUに送信されても、送信側のMPUおよび受信側のMPUのいずれにおいてもデータの異常の有無を確認することができず、バッファの異常によって異常なデータが転送される、という課題がある。
実施形態の情報処理装置は、バッファと、メモリと、制御部と、を備える。バッファは、転送対象のデータを記憶可能である。メモリは、バッファに所定の異常検出用データが書き込まれたことおよび第1制御対象を制御する外部制御部により書き込まれるバッファの異常検出結果を保持可能である。制御部は、第1制御対象とは異なる第2制御対象を制御し、外部制御部に転送する異常検出用データをバッファに書き込み、異常検出用データをバッファに書き込んだことをメモリに保持させ、異常検出結果が異常を検出したことを示している場合、少なくともバッファの異常が検出された領域へのデータの書き込みを禁止する。
図1は、第1の実施形態にかかる情報処理装置の構成を示すブロック図である。 図2は、第1の実施形態にかかる情報処理装置のハードウェア構成を示す図である。 図3は、第1の実施形態にかかる情報処理装置が備えるMPUの機能構成を示すブロック図である。 図4は、第1の実施形態にかかる情報処理装置が備える外部MPUの機能構成を示すブロック図である。 図5は、第1の実施形態にかかる情報処理装置が備えるバッファの構成を示す図である。 図6は、第1の実施形態にかかる情報処理装置が備えるレジスタの構成を示す図である。 図7は、第1の実施形態にかかる情報処理装置が備えるMPUにおいてバッファの異常を検出する処理を説明するための図である。 図8は、第1の実施形態にかかる情報処理装置が備える外部MPUにおいてバッファの異常を検出する処理を説明するための図である。 図9は、第1の実施形態にかかる情報処理装置におけるバッファの異常を検出する処理の流れを示すフローチャートである。 図10は、第2の実施形態にかかる情報処理装置が備えるMPUの機能構成を示すブロック図である。 図11は、第2の実施形態にかかる情報処理装置が備える外部MPUの機能構成を示すブロック図である。 図12は、第2の実施形態にかかる情報処理装置が備えるレジスタの構成を示す図である。 図13は、第2の実施形態にかかる情報処理装置が備えるMPUにおいてバッファの異常を検出する処理を説明するための図である。 図14は、第2の実施形態にかかる情報処理装置が備える外部MPUにおいてバッファの異常を検出する処理を説明するための図である。 図15は、第2の実施形態にかかる情報処理装置におけるバッファの異常を検出する処理の流れを示すフローチャートである。 図16は、第3の実施形態にかかる情報処理装置が備えるMPUの機能構成を示すブロック図である。 図17は、第3の実施形態にかかる情報処理装置が備える外部MPUの機能構成を示すブロック図である。 図18は、第3の実施形態にかかる情報処理装置が備えるレジスタの構成を示す図である。 図19は、第3の実施形態にかかる情報処理装置が備えるMPUによる分割領域へのデータの書き込みを説明するための図である。 図20は、第3の実施形態にかかる情報処理装置によるバッファへのデータの書き込みを説明するための図である。
以下、添付の図面を用いて、本実施形態にかかる情報処理装置、情報処理方法およびプログラムについて説明する。
(第1の実施形態)
図1は、第1の実施形態にかかる情報処理装置の構成を示すブロック図である。本実施形態にかかる情報処理装置は、図1に示すように、システムバス12を介して接続された、第1情報処理部1と第2情報処理部2とを有している。第1情報処理部1は、MPU(Micro Processing Unit)10を有している。第2情報処理部2は、外部MPU11を有している。外部MPU11は、図示しない第1制御対象を制御する外部制御部の一例である。また、MPU10は、外部MPU11が制御する第1制御対象とは異なる第2制御対象を制御する制御部の一例である。そして、MPU10と外部MPU11とは連携して各種処理を実行可能である。本実施形態では、第1情報処理部1と第2情報処理部2とはシステムバス12を介して接続されているが、これに限定するものではなく、例えば、トラッキングケーブル等の通信ケーブルを介して接続されていても良い。本実施形態では、MPU10と外部MPU11とが1つの情報処理装置内に搭載されているが、MPU10と外部MPU11とがそれぞれ別の情報処理装置内に搭載されていても良い。
図2は、第1の実施形態にかかる情報処理装置のハードウェア構成を示す図である。本実施形態にかかる第1情報処理部1は、図2に示すように、第2制御対象を制御するMPU10と、外部MPU11とMPU10との間でやりとりする転送対象のデータを記憶可能なバッファ13と、当該バッファ13に対するデータの記憶状態等を保持可能なレジスタ14(メモリの一例)と、を備えている。第2情報処理部2は、図2に示すように、第1制御対象を制御する外部MPU11を備えている。
図3は、第1の実施形態にかかる情報処理装置が備えるMPUの機能構成を示すブロック図である。MPU10は、図3に示すように、外部MPU11へのデータの送信等の各種の演算処理を行う演算部100と、バッファ13の異常の検出に用いる所定の異常検出用データ(以下、テストデータと言う)のバッファ13への書き込みを行う自己診断部101と、バッファ13の異常検出結果に応じてバッファ13へのデータの書き込みを制御する領域制御部102と、バッファ13において外部MPU11へ送信するデータを書き込む領域のアドレスを計算するアドレス計算部103と、バッファ13の記憶領域を複数の記憶領域(本実施形態では、後述する第1記憶領域130、第2記憶領域131およびバックアップ領域132)に分割する領域分割部104と、を備えている。
図4は、第1の実施形態にかかる情報処理装置が備える外部MPUの機能構成を示すブロック図である。外部MPU11は、図4に示すように、MPU10へのデータの送信等の各種の演算処理を行う演算部110と、バッファ13に書き込まれたテストデータを用いてバッファ13の異常を検出する確認部111と、バッファ13においてMPU10へ送信するデータを書き込むアドレスを計算するアドレス計算部112と、を備えている。
図5は、第1の実施形態にかかる情報処理装置が備えるバッファの構成を示す図である。本実施形態では、バッファ13は、図5に示すように、MPU10から外部MPU11へ転送するデータを記憶する第1記憶領域130と、外部MPU11からMPU10へ転送するデータを記憶する第2記憶領域131と、第1記憶領域130および第2記憶領域131に記憶されたデータのバックアップに使用可能なバックアップ領域132と、を有している。
図6は、第1の実施形態にかかる情報処理装置が備えるレジスタの構成を示す図である。本実施形態では、レジスタ14は、図6に示すように、第1記憶領域130においてデータが記憶された領域のアドレスを保持可能な第1アドレスレジスタ140と、第2記憶領域131においてデータが記憶された領域のアドレスを保持可能な第2アドレスレジスタ141と、第1記憶領域130に対する転送対象のデータの記憶状態を保持可能な第1データライトレジスタ142と、第2記憶領域131に対する転送対象のデータの記憶状態を保持可能な第2データライトレジスタ143と、テストデータの記憶状態を保持可能な第1テストデータライトレジスタ144と、第2記憶領域131に対するテストデータの記憶状態を保持可能な第2テストデータライトレジスタ145と、外部MPU11により書き込まれるバッファ13の異常検出結果(バッファ13に異常が検出されなかったこと)を示すデータ(本実施形態では、「ON」という)を保持可能なバッファ正常レジスタ146と、外部MPU11により書き込まれるバッファ13の異常検出結果(バッファ13に異常が検出されたこと)を示すデータ(本実施形態では、「ON」という)を保持可能なバッファ異常レジスタ147と、を有する。
次に、図3〜6を用いて、MPU10と外部MPU11間においてデータを送受信する処理について説明する。まず、MPU10から外部MPU11へデータを送信する処理について説明する。MPU10の演算部100は、MPU10から外部MPU11へデータを送信する場合、バッファ13の第1記憶領域130のうちアドレス計算部103により計算されたアドレスの領域にデータを書き込む。さらに、演算部100は、第1記憶領域130においてデータを書き込んだ領域のアドレスを第1アドレスレジスタ140に書き込んで保持させるとともに、第1記憶領域130に対してデータを書き込んだことを示すデータ(本実施形態では、「ON」という)を第1データライトレジスタ142に書き込んで保持させる。
外部MPU11の演算部110は、第1データライトレジスタ142に「ON」が保持されているかを検出する。そして、第1データライトレジスタ142に「ON」が保持されていることを検出すると、演算部110は、第1アドレスレジスタ140からアドレスを読み出す。さらに、演算部110は、バッファ13の第1記憶領域130において、読み出したアドレスの領域からデータを読み込む。演算部110は、データの読み込みが完了すると、第1記憶領域130に記憶されたデータを読み込んだことを示すデータ(本実施形態では、「OFF」という)を第1データライトレジスタ142に書き込んで保持させる。以上により、本実施形態にかかる情報処理装置は、MPU10から外部MPU11へのデータの送信を行う。
次に、外部MPU11からMPU10へデータを送信する処理について説明する。外部MPU11の演算部110は、外部MPU11からMPU10へデータを送信する場合、バッファ13の第2記憶領域131のうちアドレス計算部112により取得されたアドレスの領域にデータを書き込む。さらに、演算部110は、第2記憶領域131においてデータを書き込んだ領域のアドレスを第2アドレスレジスタ141に書き込んで保持させるとともに、第2記憶領域131に対してデータを書き込んだことを示すデータ(本実施形態では、「ON」という)を第2データライトレジスタ143に書き込んで保持させる。
MPU10の演算部100は、第2データライトレジスタ143に「ON」が保持されているかを検出する。そして、第2データライトレジスタ143に「ON」が保持されていることを検出すると、演算部100は、第2アドレスレジスタ141からアドレスを読み出す。さらに、演算部100は、バッファ13の第2記憶領域131において、読み出したアドレスの領域からデータを読み込む。演算部100は、データの読み込みが完了すると、第2記憶領域131に記憶されたデータを読み込んだことを示すデータ(本実施形態では、「OFF」という)を第2データライトレジスタ143に書き込んで保持させる。以上により、本実施形態にかかる情報処理装置は、外部MPU11からMPU10へのデータの送信を行う。
次に、図3〜6を用いて、バッファ13の異常を検出する処理について説明する。MPU10の自己診断部101は、バッファ13に対してテストデータを書き込む。さらに、自己診断部101は、第1アドレスレジスタ140(または第2アドレスレジスタ141)にテストデータを書き込んだ領域のアドレスを書き込んで保持させるととともに、第1テストデータライトレジスタ144(または第2テストデータライトレジスタ145)に、テストデータを書き込んだことを示すデータ(本実施形態では、「ON」という)を書き込んで保持させる。
外部MPU11の確認部111は、第1テストデータライトレジスタ144(または第2テストデータライトレジスタ145)に「ON」が保持されているかを検出する。そして、第1テストデータライトレジスタ144(または第2テストデータライトレジスタ145)に「ON」が保持されていることを検出すると、確認部111は、第1アドレスレジスタ140(または第2アドレスレジスタ141)に記憶されたアドレス読み出す。さらに、確認部111は、バッファ13において、読み出したアドレスの領域からテストデータを読み込む。確認部111は、テストデータの読み込みが完了すると、読み込んだテストデータと、予め設定されたテストデータとが一致しなかった場合に(すなわち、バッファ13へのテストデータの書き込み時やバッファ13からのテストデータの読み出し時等において異常が発生して、バッファ13からテストデータを読み出すことができなかった場合に)、バッファ13の異常を検出するとともに、バッファ異常レジスタ147に対して、バッファ13の異常を検出したことを示すデータ(本実施形態では、「ON」という)を書き込む。一方、読み込んだテストデータと予め設定されたテストデータとが一致した場合(すなわち、バッファ13へのテストデータの書き込み時やバッファ13からのテストデータの読み出し時等において異常が発生せず、バッファ13からテストデータを読み出すことができた場合に)、確認部111は、バッファ正常レジスタ146に対して、バッファ13が正常であることを示すデータ(本実施形態では、「ON」という)を書き込む。
MPU10の自己診断部101は、バッファ正常レジスタ146に「ON」が保持されている場合、バッファ13へのテストデータの書き込みを継続する。さらに、自己診断部101は、バッファ正常レジスタ146に「OFF」を書き込んで保持させる。
MPU10の演算部100は、バッファ異常レジスタ147に「ON」が保持されている場合、少なくともバッファ13の異常が検出された領域(バッファ13において、第1アドレスレジスタ140または第2アドレスレジスタ141に保持されるアドレスが示す領域)へのデータの書き込みを禁止する。さらに、自己診断部101は、バッファ13へのテストデータの書き込みを中止するとともに、バッファ異常レジスタ147に「OFF」を書き込んで保持させる。これにより、バッファ13の異常によって異常なデータが外部MPU11に送信された場合に、外部MPU11においてデータの異常を検出することができ、バッファ13へのデータの書き込みを禁止することができるので、バッファ13の異常による異常なデータが転送されることを防止できる。
次に、図7〜9を用いて、本実施形態にかかる情報処理装置においてバッファ13の異常を検出する処理について詳細に説明する。図7は、第1の実施形態にかかる情報処理装置が備えるMPUにおいてバッファの異常を検出する処理を説明するための図である。図8は、第1の実施形態にかかる情報処理装置が備える外部MPUにおいてバッファの異常を検出する処理を説明するための図である。図9は、第1の実施形態にかかる情報処理装置におけるバッファの異常を検出する処理の流れを示すフローチャートである。
本実施形態では、MPU10の自己診断部101は、情報処理装置のイニシャライズが指示されると(図7のステップS701)、バッファ13へのテストデータの書き込みを開始する(図7のステップS702および図9のステップS901)。自己診断部101は、バッファ13へのテストデータの書き込みが完了すると(図9のステップS901:No)、バッファ13においてテストデータを書き込んだ領域のアドレスを、第1アドレスレジスタ140(または第2アドレスレジスタ141)に書き込んで保持させる(図9のステップS902)。さらに、自己診断部101は、第1テストデータライトレジスタ144(または第2テストデータライトレジスタ145)に、テストデータを書き込んだことを示すデータ(「ON」)を書き込んで保持させる(図9のステップS903)。
第1テストデータライトレジスタ144(または第2テストデータライトレジスタ145)へ「ON」を書き込み後、自己診断部101は、バッファ正常レジスタ146に対して、バッファ13が正常であることを示すデータ(「ON」)が保持されたか否かを判断する自己診断処理を行う(図7のステップS703および図9のステップS904)。そして、バッファ正常レジスタ146に対してバッファ13が正常であることを示すデータ(「ON」)が書き込まれた場合(図9のステップS904:Yes)、自己診断部101は、バッファ正常レジスタ146に対して「OFF」を書き込んで保持させるとともに(図9のステップS905)、ステップS901へ戻り、バッファ13のうちテストデータの書き込みを行っていない領域へのテストデータの書き込みを行う。
一方、バッファ異常レジスタ147に対してバッファ13が異常であることを示すデータ(「ON」)が保持されている場合(図7のステップS704および図9のステップS904:No)、自己診断部101は、バッファ異常レジスタ147に対して「OFF」を書き込んで保持させる(ステップS906)。さらに、演算部100は、バッファ13が異常状態にあると判断して、バッファ13へのデータの書き込みを禁止する(図9のステップS907)。これにより、バッファ13の異常によって異常なテストデータが外部MPU11に送信された場合に、外部MPU11においてテストデータの異常を検出してバッファ13を用いたデータの転送が行われなくなるので、バッファ13の異常による異常なデータが転送されることを防止できる。
一方、外部MPU11の確認部111は、情報処理装置のイニシャライズが指示されると(図8のステップS701)、第1テストデータライトレジスタ144(または第2テストデータライトレジスタ145)に、テストデータを書き込んだことを示すデータ(「ON」)が保持されるまで待機する(図8のステップS801および図9のステップS908)。第1テストデータライトレジスタ144(または第2テストデータライトレジスタ145)に「ON」が保持された場合(図9のステップS908:Yes)、確認部111は、第1アドレスレジスタ140(または第2アドレスレジスタ141)に保持されるアドレスを読み出す(ステップS909)。そして、確認部111は、バッファ13において、読み出したアドレスの領域からテストデータを読み込む(図9のステップS910)。さらに、確認部111は、バッファ13から読み込んだテストデータと、予め記憶されているテストデータとが一致するか否かを確認する自己診断処理を行う(図8のステップS802および図9のステップS911)。
バッファ13から読み込んだテストデータと予め記憶されているテストデータが一致した場合(図9のステップS912:Yes)、確認部111は、バッファ正常レジスタ146に対して、バッファ13が正常であることを示すデータ(「ON」)を書き込んで保持させる(図9のステップS913)。一方、バッファ13から読み込んだテストデータと予め記憶されているテストデータが一致しなかった場合(図9のステップS912:No)、確認部111は、バッファ異常レジスタ147に対して、バッファ13が異常であることを示すデータ(「ON」)を書き込んで保持させる(図9のステップS914)。
このように第1の実施形態の情報処理装置によれば、バッファ13の異常によって異常なデータが外部MPU11に送信された場合に、外部MPU11においてデータの異常を検出することができ、バッファ13へのデータの書き込みを禁止することができるので、バッファ13へのデータの書き込み時やバッファ13からのデータの読み出し時等の異常によって異常なデータが転送されることを防止できる。
(第2の実施形態)
本実施形態は、バッファが有する複数の記憶領域のうち書込み対象の記憶領域へのデータの書き込みに並行して、書込み対象の記憶領域以外の記憶領域へのテストデータの書き込みを行う例である。以下の説明では、第1の実施形態と同様の箇所については説明を省略する。
図10は、第2の実施形態にかかる情報処理装置が備えるMPUの機能構成を示すブロック図である。本実施形態にかかるMPU1000は、図10に示すように、演算部100と、アドレス計算部103と、領域分割部104と、バッファ13が有する複数の記憶領域のうち書込み対象の記憶領域へのデータの書き込みに並行して、当該書込み対象の記憶領域以外の記憶領域へのテストデータの書き込みを実行可能な自己診断部1001と、記憶領域の異常検出結果に応じて、演算部100によりデータを書き込む記憶領域を制御する領域制御部1002と、を備えている。
図11は、第2の実施形態にかかる情報処理装置が備える外部MPUの機能構成を示すブロック図である。本実施形態にかかる外部MPU1200は、図11に示すように、演算部110と、演算部110によるバッファ13からのデータの読み込みに並行して、バッファ13の異常を検出可能な確認部1201と、後述する切替レジスタ148(図12参照)を参照して、演算部110によってデータを書き込む記憶領域を制御するアドレス計算部1202と、を備えている。
図12は、第2の実施形態にかかる情報処理装置が備えるレジスタの構成を示す図である。本実施形態では、レジスタ1100は、図12に示すように、第1アドレスレジスタ140と、第2アドレスレジスタ141と、第1データライトレジスタ142と、第2データライトレジスタ143と、第1テストデータライトレジスタ144と、第2テストデータライトレジスタ145と、バッファ正常レジスタ146と、バッファ異常レジスタ147と、外部MPU11からMPU10へのデータの転送に用いる記憶領域を第2記憶領域131からバックアップ領域132に切り替えることを示すデータ(本実施形態では、「ON」という)を保持可能な切替レジスタ148と、を有する。
次に、図13〜15を用いて、MPU1000と外部MPU1200間におけるデータの送受信に並行して、バッファ13の異常を検出する処理について説明する。図13は、第2の実施形態にかかる情報処理装置が備えるMPUにおいてバッファの異常を検出する処理を説明するための図である。図14は、第2の実施形態にかかる情報処理装置が備える外部MPUにおいてバッファの異常を検出する処理を説明するための図である。図15は、第2の実施形態にかかる情報処理装置におけるバッファの異常を検出する処理の流れを示すフローチャートである。
まず、第1記憶領域130へのデータの書き込みに並行して、バックアップ領域132への異常を検出する処理について説明する。本実施形態では、MPU1000の自己診断部1001は、情報処理装置のイニシャライズが指示されると(図13のステップS701)、演算部100による第1記憶領域130へのデータの書き込みに並行して、バックアップ領域132へのテストデータの書き込みを開始する(図13のステップS1301および図15のステップS1501)。自己診断部1001は、バックアップ領域132へのテストデータの書き込みが完了すると(図15のステップS1501:No)、バックアップ領域132においてテストデータを書き込んだ領域のアドレスを、第1アドレスレジスタ140に書き込んで保持させる(図15のステップS1502)。さらに、自己診断部1001は、第1テストデータライトレジスタ144に、テストデータを書き込んだことを示すデータ(「ON」)を書き込んで保持させる(図15のステップS1503)。
第1テストデータライトレジスタ144へ「ON」を保持させた後、自己診断部1001は、バッファ正常レジスタ146に対して、バックアップ領域132が正常であることを示すデータ(「ON」)が保持されたか否かを判断する自己診断処理を行う(図13のステップS1302および図15のステップS1504)。そして、バッファ正常レジスタ146に対して「ON」が書き込まれた場合(ステップS1504:Yes)、自己診断部1001は、バッファ正常レジスタ146に対して「OFF」を書き込んで保持させるとともに(図15のステップS1505)、領域制御部1002に対してバックアップ領域132が正常であることを伝える。その後、自己診断部1001は、図15のステップS1501へ戻り、バックアップ領域132のうちテストデータの書き込みを行っていない領域へのテストデータの書き込みを行う。
一方、バッファ異常レジスタ147に対してバックアップ領域132が異常であることを示すデータ(「ON」)が保持されている場合(図13のステップS1303および図15のステップS1504:No)、自己診断部1001は、バッファ異常レジスタ147に対して「OFF」を書き込んで保持させるとともに(図15のステップS1506)、領域制御部1002に対してバックアップ領域132が異常であることを伝える。その後、自己診断部1001は、図15のステップS1501へ戻り、バックアップ領域132のうちテストデータの書き込みを行っていない領域へのテストデータの書き込みを行う。
領域制御部1002は、バックアップ領域132の全ての領域が正常であることが伝えられると、アドレス計算部103に対して、データの書込み対象の記憶領域を、第1記憶領域130からバックアップ領域132へ切り替えることを指示する(図13のステップS1304)。アドレス計算部103は、バックアップ領域132のアドレスをデータの書き込みを行う領域のアドレスとして取得することにより、書込み対象の記憶領域を第1記憶領域130からバックアップ領域132へ切り替える。一方、領域制御部1002は、バックアップ領域132の少なくとも一部の領域が異常であることが伝えられると、書込み対象の記憶領域の切替を指示しない。
外部MPU11の確認部1201は、情報処理装置のイニシャライズが指示されると(図14のステップS701)、第1テストデータライトレジスタ144に、テストデータを書き込んだこと示すデータ(「ON」)が保持されるまで待機する(図14のステップS801および図15のステップS1507)。第1テストデータライトレジスタ144に「ON」が保持された場合(図15のステップS1507:Yes)、確認部1201は、第1アドレスレジスタ140に保持されるアドレスを読み出す(図15のステップS1508)。そして、確認部1201は、バックアップ領域132において、読み出したアドレスの領域からテストデータを読み込む(図15のステップS1509)。さらに、確認部1201は、バックアップ領域132から読み込んだテストデータと、予め記憶されているテストデータとが一致するか否かを確認する自己診断処理を行う(図14のステップS1401および図15のステップS1510)。
バックアップ領域132から読み込んだテストデータと予め記憶されているテストデータが一致した場合(図15のステップS1511:Yes)、確認部1201は、バッファ正常レジスタ146に対して、バックアップ領域132が正常であることを示すデータ(「ON」)を書き込んで保持させる(図15のステップS1512)。一方、バックアップ領域132から読み込んだテストデータと予め記憶されているテストデータが一致しなかった場合(図15のステップS1511:No)、確認部1201は、バッファ異常レジスタ147に対して、バックアップ領域132が異常であることを示すデータ(「ON」)を書き込んで保持させる(図15のステップS1513)。
次に、バックアップ領域132へのデータの書き込みに並行して、第1記憶領域130の異常を検出する処理について説明する。MPU1000の自己診断部1001は、情報処理装置のイニシャライズが指示されると(図13のステップS701)、演算部100によるバックアップ領域132へのデータの書き込みに並行して、第1記憶領域130へのテストデータの書き込みを開始する(図13のステップS1301および図15のステップS1501)。自己診断部1001は、第1記憶領域130へのテストデータの書き込みが完了すると(図15のステップS1501:No)、第1記憶領域130においてテストデータを書き込んだ領域のアドレスを、第1アドレスレジスタ140に書き込んで保持させる(図15のステップS1502)。さらに、自己診断部1001は、第1テストデータライトレジスタ144に、テストデータを書き込んだことを示すデータ(「ON」)を書き込んで保持させる(図15のステップS1503)。
第1テストデータライトレジスタ144へ「ON」を保持させた後、自己診断部1001は、バッファ正常レジスタ146に対して、第1記憶領域130が正常であることを示すデータ(「ON」)が保持されたか否かを判断する自己診断処理を行う(図13のステップS1302および図15のステップS1504)。そして、バッファ正常レジスタ146に対して第1記憶領域130が正常であることを示すデータ(「ON」)が書き込まれた場合(図15のステップS1504:Yes)、自己診断部1001は、バッファ正常レジスタ146に対して「OFF」を書き込んで保持させるとともに(図15のステップS1505)、領域制御部1002に対して第1記憶領域130が正常であることを伝える。その後、自己診断部1001は、図15のステップS1501へ戻り、第1記憶領域130のうちテストデータの書き込みを行っていない領域へのテストデータの書き込みを行う。
一方、バッファ異常レジスタ147に対して第1記憶領域130が異常であることを示すデータ(「ON」)が保持されている場合(図13のステップS1303および図15のステップS1504:No)、自己診断部1001は、バッファ異常レジスタ147に対して「OFF」を書き込んで保持させるとともに(図15のステップS1506)、領域制御部1002に対して第1記憶領域130が異常であることを伝える。その後、自己診断部1001は、図15のステップS1501へ戻り、第1記憶領域130のうちテストデータの書き込みを行っていない領域へのテストデータの書き込みを行う。
領域制御部1002は、第1記憶領域130の全ての領域が正常であることが伝えられると、アドレス計算部103に対して、データの書込み対象の記憶領域を、バックアップ領域132から第1記憶領域130へ切り替えることを指示する(図13のステップS1304)。アドレス計算部103は、第1記憶領域130のアドレスをデータの書き込みを行う領域のアドレスとして計算することにより、書込み対象の記憶領域をバックアップ領域132から第1記憶領域130へ切り替える。一方、領域制御部1002は、第1記憶領域130の少なくとも一部の領域が異常であることが伝えられると、書込み対象の記憶領域の切替を指示しない。
外部MPU11の確認部1201は、情報処理装置のイニシャライズが指示されると(図14のステップS701)、第1テストデータライトレジスタ144に、テストデータを書き込んだこと示すデータ(「ON」)が保持されるまで待機する(図14のステップS801および図15のステップS1507)。第1テストデータライトレジスタ144に「ON」が保持された場合(図15のステップS1507:Yes)、確認部1201は、第1アドレスレジスタ140に保持されるアドレスを読み出す(図15のステップS1508)。そして、確認部1201は、第1記憶領域130において、読み出したアドレスの領域からテストデータを読み込む(図15のステップS1509)。さらに、確認部1201は、第1記憶領域130から読み込んだテストデータと、予め記憶されているテストデータとが一致するか否かを確認する自己診断処理を行う(図14のステップS1401および図15のステップS1510)。
第1記憶領域130から読み込んだテストデータと予め記憶されているテストデータが一致した場合(図15のステップS1511:Yes)、確認部1201は、バッファ正常レジスタ146に対して、第1記憶領域130が正常であること示すデータ(「ON」)を書き込んで保持させる(図15のステップS1512)。一方、第1記憶領域130から読み込んだテストデータと予め記憶されているテストデータが一致しなかった場合(図15のステップS1511:No)、確認部1201は、バッファ異常レジスタ147に対して、第1記憶領域130が異常であることを示すデータ(「ON」)を書き込んで保持させる(図15のステップS1513)。
MPU1000および外部MPU1200は、バックアップ領域132の全ての領域が正常であった場合、第2記憶領域131についても、第1記憶領域130と同様にして、異常を検出する処理を行う。MPU1000の領域制御部1002は、第2記憶領域131の異常を検出する処理が行われている間、外部MPU1200からMPU1000へのデータの転送に用いる記憶領域を第2記憶領域131からバックアップ領域132に切り替えること(「ON」)を切替レジスタ148に書き込んで保持させる。
外部MPU1200のアドレス計算部1202は、切替レジスタ148に「ON」が保持されると、演算部110を制御して、MPU1000に送信するデータを、バッファ13のバックアップ領域132に書き込ませる。MPU1000の領域制御部1002は、第2記憶領域131の全ての領域が正常であった場合、切替レジスタ148に「OFF」を書き込んで保持させる。一方、領域制御部1002は、第2記憶領域131に異常が検出された場合には、切替レジスタ148に「ON」を保持させたままとする。外部MPU1200の演算部110は、切替レジスタ148に「OFF」が保持されると、MPU1000に送信するデータを第2記憶領域131に書き込む。
このように、第2の実施形態の情報処理装置によれば、MPU1000から外部MPU1200へのデータの転送に並行して、バッファ13の異常の検出を行うことができるので、バッファ13の異常の検出が行われることによってMPU1000から外部MPU1200へデータが転送できなくなることを防止できる。
(第3の実施形態)
本実施形態は、バッファの記憶領域を分割した複数の分割領域それぞれの異常検出結果がレジスタに書き込まれ、レジスタに保持される異常検出結果が異常を検出したこと示している分割領域へのデータの書き込みを禁止し、レジスタの保持される異常検出結果が異常を検出しなかったことを示している分割領域へのデータの書き込みを許可する例である。以下の説明では、第2の実施形態と同様の箇所については説明を省略する。
図16は、第3の実施形態にかかる情報処理装置が備えるMPUの機能構成を示すブロック図である。本実施形態にかかるMPU1600は、図16に示すように、演算部100と、アドレス計算部103と、自己診断部1001と、異常検出対象の記憶領域を複数の分割領域(本実施形態では、前半分割領域と後半分割領域の2つの分割領域)に分割する領域分割部1601と、複数の分割領域のうちレジスタ1700に保持される異常検出結果が異常を検出したことを示している分割領域へのデータの書き込みを禁止し、異常検出結果が異常を検出しなかったことを示している分割領域のデータの書き込みを許可する領域制御部1602と、を備えている。
図17は、第3の実施形態にかかる情報処理装置が備える外部MPUの機能構成を示すブロック図である。本実施形態にかかる外部MPU1800は、図17に示すように、演算部110と、確認部1201と、アドレス計算部1801と、を備えている。アドレス計算部1801は、前半エリアレジスタ149、後半エリアレジスタ150、移動先レジスタ(前半)151および移動先レジスタ(後半)152を参照して、演算部110によってデータを書き込む記憶領域を制御する。
図18は、第3の実施形態にかかる情報処理装置が備えるレジスタの構成を示す図である。本実施形態では、レジスタ1700は、図18に示すように、第1アドレスレジスタ140と、第2アドレスレジスタ141と、第1データライトレジスタ142と、第2データライトレジスタ143と、第1テストデータライトレジスタ144と、第2テストデータライトレジスタ145と、バッファ正常レジスタ146と、バッファ異常レジスタ147と、切替レジスタ148と、第2記憶領域131の前半分割領域の異常を検出すること(言い換えると、第2記憶領域131の前半分割領域に保持されるデータをバックアップ領域132に移動させること)を示すデータ(本実施形態では、「ON」という)を保持可能な前半エリアレジスタ149と、第2記憶領域131の後半分割領域の異常を検出すること(言い換えると、第2記憶領域131の後半分割領域に保持されるデータをバックアップ領域132に移動させること)を示すデータ(本実施形態では、「ON」という)を保持可能な後半エリアレジスタ150と、第2記憶領域131の前半分割領域に保持されるデータをバックアップ領域132の前半分割領域に移動させることを示すデータ(本実施形態では、「ON」という)を保持可能な移動先レジスタ(前半)151と、第2記憶領域131の後半分割領域に保持されるデータをバックアップ領域132の後半分割領域に移動させることを示すデータ(本実施形態では、「ON」という)を保持可能な移動先レジスタ(後半)152と、を有する。
次に、図19および図20を用いて、書込み対象の記憶領域が有する分割領域のうち異常が検出された分割領域へのデータの書き込みを禁止し、異常が検出されなかった分割領域へのデータの書き込みを許可する処理について説明する。図19は、第3の実施形態にかかる情報処理装置が備えるMPUによる分割領域へのデータの書き込みを説明するための図である。図20は、第3の実施形態にかかる情報処理装置によるバッファへのデータの書き込みを説明するための図である。
MPU1600の領域制御部1602は、自己診断部1001による自己診断処理(図19のステップS1302)によってバックアップ領域132に異常が検出された場合(図19のステップS1303)、バックアップ領域132において異常が検出された領域が、領域分割部1601によりバックアップ領域132を分割した前半分割領域と後半分割領域のうちいずれに含まれるか(すなわち、異常が検出された領域が混在するか)を判断する(図19のステップS1901)。
そして、領域制御部1602は、バックアップ領域132において異常が検出された領域が、バックアップ領域132の後半分割領域に含まれると判断した場合(図20参照)、アドレス計算部103に対して、データの書込み対象の記憶領域を、第1記憶領域130の前半分割領域のみバックアップ領域132の前半分割領域に切り替えることを指示する(図19のステップS1902)。言い換えると、領域制御部1602は、アドレス計算部103に対して、データの書込み対象の記憶領域を、バックアップ領域132の後半分割領域に切り替えることを禁止する。アドレス計算部103は、第1記憶領域130の前半分割領域に書き込むデータのみを、バックアップ領域132の前半分割領域に書き込む。
データの書込み対象の記憶領域が、第1記憶領域130の前半分割領域からバックアップ領域132の前半分割領域に切り替えられ後、自己診断部1001は、第1記憶領域130の前半分割領域の自己診断処理を行う。自己診断処理によって第1記憶領域130の前半分割領域に異常が検出されなかった場合には、領域制御部1602は、アドレス計算部103に対して、データの書込み対象の記憶領域を、バックアップ領域132の前半分割領域から第1記憶領域130の前半分割領域に切り替えることを指示する。アドレス計算部103は、バックアップ領域132の前半分割領域に書き込むデータを、第1記憶領域130の前半分割領域に書き込む。
次に、領域制御部1602は、アドレス計算部103に対して、データの書込み対象の記憶領域を、第1記憶領域130の後半分割領域のみバックアップ領域132の前半分割領域に切り替えることを指示する(図19のステップS1902)。言い換えると、領域制御部1602は、アドレス計算部103に対して、データの書込み対象の記憶領域を、バックアップ領域132の後半分割領域に切り替えることを禁止する。アドレス計算部103は、第1記憶領域130の後半分割領域に書き込むデータのみを、バックアップ領域132の前半分割領域に書き込む。
データの書込み対象の記憶領域が、第1記憶領域130の後半分割領域からバックアップ領域132の前半分割領域に切り替えられ後、自己診断部1001は、第1記憶領域130の後半分割領域の自己診断処理を行う。自己診断処理によって第1記憶領域130の後半分割領域に異常が検出されなかった場合には、領域制御部1602は、アドレス計算部103に対して、データの書込み対象の記憶領域を、バックアップ領域132の前半分割領域から第1記憶領域130の後半分割領域に切り替えることを指示する。アドレス計算部103は、バックアップ領域132の前半分割領域に書き込むデータを、第1記憶領域130の後半分割領域に書き込む。
第1記憶領域130に対する自己診断処理が行われた後、領域制御部1602は、第2記憶領域131についても、第1記憶領域130と同様にして異常を検出する処理を行う。MPU1600の領域制御部1602は、第2記憶領域131の異常を検出する処理が行われている間、外部MPU1800からMPU1600へのデータの転送に用いる記憶領域を第2記憶領域131からバックアップ領域132に切り替えることを示すデータ(「ON」)を切替レジスタ148に書き込んで保持させる。さらに、領域制御部1602は、第2記憶領域131の前半分割領域の異常を検出することを示すデータ(「ON」)を前半エリアレジスタ149に書き込んで保持させるとともに、第2記憶領域131の前半分割領域に保持されるデータをバックアップ領域132の前半分割領域に移動させることを示すデータ(「ON」)を移動先レジスタ(前半)151に書き込んで保持させる。
MPU1800のアドレス計算部1801は、前半エリアレジスタ149に「ON」が保持されかつ移動先レジスタ(前半)151に「ON」が保持されると、第2記憶領域131の前半分割領域に書き込むデータのみを、バックアップ領域132の前半分割領域に書き込む。MPU1600の自己診断部1001は、第2記憶領域131の前半分割領域の自己診断処理を行う。自己診断処理によって第2記憶領域131の前半分割領域に異常が検出されなかった場合には、領域制御部1602は、前半エリアレジスタ149に「OFF」を書き込んで保持させるとともに、移動先レジスタ(前半)151に「OFF」を書き込んで保持させる。
さらに、領域制御部1602は、第2記憶領域131の後半分割領域の異常を検出することを示すデータ(「ON」)を後半エリアレジスタ150に書き込んで保持させるとともに、第2記憶領域131の後半分割領域に保持されるデータをバックアップ領域132の前半分割領域に移動させること(「ON」)を移動先レジスタ(前半)151に書き込んで保持させる。
MPU1800のアドレス計算部1801は、後半エリアレジスタ150に「ON」が保持されかつ移動先レジスタ(前半)151に「ON」が保持されると、第2記憶領域131の後半分割領域に書き込むデータのみを、バックアップ領域132の前半分割領域に書き込む。MPU1600の自己診断部1001は、第2記憶領域131の後半分割領域の自己診断処理を行う。自己診断処理によって第2記憶領域131の後半分割領域に異常が検出されなかった場合には、領域制御部1602は、後半エリアレジスタ150に「OFF」を書き込んで保持させるとともに、移動先レジスタ(前半)151に「OFF」を書き込んで保持させる。
このように第3の実施形態にかかる情報処理装置によれば、バッファ13の記憶領域を分割した複数の分割領域のいずれかにおいて異常が検出されても、異常が検出された分割領域以外の分割領域を、データの転送に利用することができるので、分割領域において異常が検出されたことによるデータの転送速度の低下を軽減することができる。
以上説明したとおり、第1から第3の実施形態によれば、バッファ13の異常によって異常なデータが転送されることを防止できる。
本実施形態では、自己診断部101,1001は、情報処理装置のイニシャライズが指示された際に、テストデータをバッファ13に書き込んで、バッファ13の自己診断処理を実行しているが、これに限定するものではない。例えば、自己診断部101,1001は、所定時間毎に、テストデータを書き込んで自己診断処理を行っても良い。また、自己診断部101,1001は、所定のデータ量のデータがバッファ13に書き込まれる毎に、若しくは所定の書き込み回数、バッファ13にデータが書き込まれる度に、テストデータをバッファ13に書き込んで自己診断処理を行っても良い。
なお、本実施形態の情報処理装置で実行されるプログラムは、ROM(Read Only Memory)等に予め組み込まれて提供される。本実施形態の情報処理装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
さらに、本実施形態の情報処理装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施形態の情報処理装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
本実施形態の情報処理装置のMPU10,1000,1600で実行されるプログラムは、上述した各部(演算部100、自己診断部101,1001、領域制御部102,1002,1602、アドレス計算部103、領域分割部104,1601)を含むモジュール構成となっており、実際のハードウェアとしてはMPU10,1000,1600(プロセッサ)が上記ROMからプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、演算部100、自己診断部101,1001、領域制御部102,1002,1602、アドレス計算部103、領域分割部104,1601が主記憶装置上に生成されるようになっている。
本実施形態の情報処理装置の外部MPU11,1200,1800で実行されるプログラムは、上述した各部(演算部110、確認部111,1201、アドレス計算部112,1202,1801)を含むモジュール構成となっており、実際のハードウェアとしては外部MPU11,1200,1800(プロセッサ)が上記ROMからプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、演算部110、確認部111,1201、アドレス計算部112,1202,1801が主記憶装置上に生成されるようになっている。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
10,1000,1600 MPU
11,1200,1800 外部MPU
13 バッファ
14 レジスタ
100,110 演算部
101,1001 自己診断部
102,1002,1602 領域制御部
103,112,1202,1801 アドレス計算部
104,1601 領域分割部
111,1201 確認部
130 第1記憶領域
131 第2記憶領域
132 バックアップ領域

Claims (9)

  1. 転送対象のデータを記憶可能なバッファと、
    前記バッファに所定の異常検出用データが書き込まれたことおよび第1制御対象を制御する外部制御部により書き込まれる前記バッファの異常検出結果を保持可能なメモリと、
    前記第1制御対象とは異なる第2制御対象を制御し、前記外部制御部に転送する前記異常検出用データを前記バッファに書き込み、前記異常検出用データを前記バッファに書き込んだことを前記メモリに保持させ、前記異常検出結果が異常を検出したことを示している場合、少なくとも前記バッファの異常が検出された領域へのデータの書き込みを禁止する制御部と、
    を備えた情報処理装置。
  2. 前記メモリは、前記バッファから読み出した前記異常検出用データと所定の異常検出用データとが一致するか否かにより前記外部制御部により検出された前記バッファの前記異常検出結果を保持可能である請求項1に記載の情報処理装置。
  3. 前記バッファは、複数の記憶領域を有し、
    前記制御部は、複数の前記記憶領域のうち書込み対象の前記記憶領域へのデータの書き込みに並行して、前記書込み対象の記憶領域以外の前記記憶領域に前記異常検出用データを書き込む請求項1または2に記載の情報処理装置。
  4. 前記メモリは、前記記憶領域を分割した複数の分割領域それぞれの前記異常検出結果が書き込まれ、
    前記制御部は、前記異常検出結果が異常を検出したことを示している前記分割領域へのデータの書き込みを禁止し、前記異常検出結果が異常を検出しなかったことを示している前記分割領域へのデータの書き込みを許可する請求項に記載の情報処理装置。
  5. 前記制御部は、所定時間毎に、前記異常検出用データを前記バッファに書き込む請求項1から4のいずれか一に記載の情報処理装置。
  6. 前記制御部は、所定のデータ量のデータが前記バッファに書き込まれる毎に、前記異常検出用データを前記バッファに書き込む請求項1から4のいずれか一に記載の情報処理装置。
  7. 前記制御部は、所定の書込み回数、前記バッファにデータを書き込む毎に、前記異常検出用データを前記バッファに書き込む請求項1から4のいずれか一に記載の情報処理装置。
  8. 転送対象のデータを記憶可能なバッファと、前記バッファに所定の異常検出用データが書き込まれたことおよび第1制御対象を制御する外部制御部により書き込まれる前記バッファの異常検出結果を保持可能なメモリと、を備えた情報処理装置で実行される情報処理情報であって、
    前記第1制御対象とは異なる第2制御対象を制御し、前記外部制御部に転送する前記異常検出用データを前記バッファに書き込み、前記異常検出用データを前記バッファに書き込んだことを前記メモリに保持させ、前記異常検出結果が異常を検出したことを示している場合、少なくとも前記バッファの異常が検出された領域へのデータの書き込みを禁止する過程、
    を含む情報処理方法。
  9. 転送対象のデータを記憶可能なバッファと、前記バッファに所定の異常検出用データが書き込まれたことおよび第1制御対象を制御する外部制御部により書き込まれる前記バッファの異常検出結果を保持可能なメモリと、を備えた情報処理装置を制御するコンピュータを、
    前記第1制御対象とは異なる第2制御対象を制御し、前記外部制御部に転送する前記異常検出用データを前記バッファに書き込み、前記異常検出用データを前記バッファに書き込んだことを前記メモリに保持させ、前記異常検出結果が異常を検出したことを示している場合、少なくとも前記バッファの異常が検出された領域へのデータの書き込みを禁止する制御部、
    として機能させるためのプログラム。
JP2013258635A 2013-12-13 2013-12-13 情報処理装置、情報処理方法およびプログラム Active JP6196143B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2013258635A JP6196143B2 (ja) 2013-12-13 2013-12-13 情報処理装置、情報処理方法およびプログラム
US14/915,885 US9952920B2 (en) 2013-12-13 2014-11-20 Information processing device, information processing method, and program
CN201480040271.8A CN105378678B (zh) 2013-12-13 2014-11-20 信息处理装置、信息处理方法以及程序
PCT/JP2014/080812 WO2015087684A1 (ja) 2013-12-13 2014-11-20 情報処理装置、情報処理方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013258635A JP6196143B2 (ja) 2013-12-13 2013-12-13 情報処理装置、情報処理方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2015115005A JP2015115005A (ja) 2015-06-22
JP6196143B2 true JP6196143B2 (ja) 2017-09-13

Family

ID=53370998

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013258635A Active JP6196143B2 (ja) 2013-12-13 2013-12-13 情報処理装置、情報処理方法およびプログラム

Country Status (4)

Country Link
US (1) US9952920B2 (ja)
JP (1) JP6196143B2 (ja)
CN (1) CN105378678B (ja)
WO (1) WO2015087684A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6663938B2 (ja) * 2018-01-15 2020-03-13 本田技研工業株式会社 車両検査装置及び車両検査方法
US11360846B2 (en) * 2019-09-27 2022-06-14 Intel Corporation Two die system on chip (SoC) for providing hardware fault tolerance (HFT) for a paired SoC
CN113392098A (zh) * 2021-06-11 2021-09-14 北京沃东天骏信息技术有限公司 一种数据写入方法、装置、设备及存储介质

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01140361A (ja) * 1987-11-27 1989-06-01 Nec Corp チャネル診断機能付データ処理システム
JPH02252043A (ja) * 1989-03-24 1990-10-09 Hitachi Ltd 外部転送回路検証方式
JP2776679B2 (ja) * 1992-03-17 1998-07-16 日本電気株式会社 情報処理システム
JP2004252825A (ja) * 2003-02-21 2004-09-09 Ricoh Co Ltd Peに故障発生してもデータ転送し得るsimd型マイクロプロセッサ
JP4512334B2 (ja) 2003-08-25 2010-07-28 株式会社デジタル バスブリッジ回路
JP4667092B2 (ja) * 2005-03-17 2011-04-06 富士通株式会社 情報処理装置、情報処理装置におけるデータ制御方法
JP4242405B2 (ja) * 2006-09-15 2009-03-25 三菱電機株式会社 車載電子制御装置
US8127309B1 (en) * 2006-11-10 2012-02-28 Marvell International Ltd. Secure digital input/output interface system
US7949931B2 (en) * 2007-01-02 2011-05-24 International Business Machines Corporation Systems and methods for error detection in a memory system
JP5045229B2 (ja) * 2007-05-14 2012-10-10 富士ゼロックス株式会社 ストレージシステム及びストレージ装置
TW201015321A (en) * 2008-09-25 2010-04-16 Panasonic Corp Buffer memory device, memory system and data trnsfer method
JP2012113466A (ja) * 2010-11-24 2012-06-14 Fujitsu Ltd メモリコントローラ及び情報処理システム
KR20130049332A (ko) * 2011-11-04 2013-05-14 삼성전자주식회사 메모리 시스템 및 그것의 동작 방법
US9298525B2 (en) * 2012-12-04 2016-03-29 Accenture Global Services Limited Adaptive fault diagnosis

Also Published As

Publication number Publication date
CN105378678B (zh) 2019-07-02
US20160274960A1 (en) 2016-09-22
JP2015115005A (ja) 2015-06-22
US9952920B2 (en) 2018-04-24
CN105378678A (zh) 2016-03-02
WO2015087684A1 (ja) 2015-06-18

Similar Documents

Publication Publication Date Title
JP6196143B2 (ja) 情報処理装置、情報処理方法およびプログラム
US20170168756A1 (en) Storage transactions
US20150205638A1 (en) Migration system, migration method and non-transitory computer-readable medium storing control program
US8860997B2 (en) Image output apparatus, preview image generating method, and storage medium
US9471256B2 (en) Systems and methods for restoring data in a degraded computer system
US10558237B2 (en) Information processing apparatus
JP2010218510A (ja) 状態監視システムおよび状態監視方法
KR20170088267A (ko) 멀티 스크린을 통해 출력되는 영상을 소프트웨어를 이용하여 동기화하기 위한 방법 및 그 장치
US20150269098A1 (en) Information processing apparatus, information processing method, storage, storage control method, and storage medium
US20150317103A1 (en) Printing apparatus that updates software installed therein, method of controlling the same, and storage medium
JP2013105237A (ja) ジョブ処理システム、ジョブ処理装置、負荷分散装置、ジョブ処理プログラムおよび負荷分散プログラム
JP2015164013A (ja) 情報処理装置、通信経路決定プログラム及び通信経路決定方法
JP6655875B2 (ja) データ記録装置及びその制御方法、並びにプログラム
JP5868563B1 (ja) 分散型制御システム用制御機器及びユニット
US10230862B2 (en) Information processing system and information processing method
CN106484561B (zh) 虚拟计算机系统和外部设备控制方法
US20170161190A1 (en) Recovery point objective via dynamic usage of bind segments in a global mirror environment
US10108380B2 (en) Information processing apparatus that acquires information from external apparatus and non-transitory computer readable medium storing program
US10528338B2 (en) Firmware distribution system, distribution apparatus, firmware distribution method and program recording medium
JP2008287512A (ja) 計算機及び分散データ処理システム及びデータ処理方法及びプログラム
JP5667118B2 (ja) データ転送制御装置、データ転送制御システム、データ転送制御方法、及びそのためのプログラム
JP2009205241A (ja) コンピュータシステム及びそのシステムにおけるブート制御方法
US20170161217A1 (en) Processor and controlling method thereof
JP7499269B2 (ja) ノードデータを転送するための集約サーバおよび方法
US20220308563A1 (en) Controller and control method

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20151102

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160307

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170314

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170330

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170718

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170817

R151 Written notification of patent or utility model registration

Ref document number: 6196143

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151