JP6324127B2 - 情報処理装置、情報処理方法及びプログラム - Google Patents

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

Info

Publication number
JP6324127B2
JP6324127B2 JP2014051686A JP2014051686A JP6324127B2 JP 6324127 B2 JP6324127 B2 JP 6324127B2 JP 2014051686 A JP2014051686 A JP 2014051686A JP 2014051686 A JP2014051686 A JP 2014051686A JP 6324127 B2 JP6324127 B2 JP 6324127B2
Authority
JP
Japan
Prior art keywords
processors
task
information processing
safety
processing apparatus
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
JP2014051686A
Other languages
English (en)
Other versions
JP2015176292A (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2014051686A priority Critical patent/JP6324127B2/ja
Publication of JP2015176292A publication Critical patent/JP2015176292A/ja
Application granted granted Critical
Publication of JP6324127B2 publication Critical patent/JP6324127B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、情報処理装置、情報処理方法及びプログラムに関するものであり、特に、複数のプロセッサを備えたマルチプロセッサシステムによる情報処理装置、情報処理方法及びプログラムに関する。
現在、安全対応のマルチメディア機器や産業用制御機器を実現する機能には、安全機能と非安全機能とがある。安全機能は車両の走行に係わる機能やシーケンサの制御機能などであり、非安全機能は、マルチメディア機能などである。
従来技術では、安全機能と非安全機能とをそれぞれ別々のプロセッサにおいて実行している。あるいは、1つのプロセッサにおいて、メモリの保護機能と時分割機能とを用いることにより、安全機能と非安全機能とを分離して処理している。
また、回路や専用制御・処理部などを追加して、信頼性と実行性能とを向上させる効果を得ているシステムや装置が開示されている。
特許文献1には、タスクの優先度情報に基づいて、連続するタスクを他のサブシステムとの間で並列処理するか、又は、同時処理するかを選択する二重化制御部を備えることにより、信頼性と実行性能を向上させようとしている(特許文献1参照)。
特許文献2には、データ処理部が生成する情報をデータ処理部毎に圧縮して保持する複数の圧縮器と、複数のデータ処理部が同じ処理を非同期で行なったとき夫々の圧縮器が保持するデータを比較してデータ処理部の異常を検出する検出部を備えることにより、データ処理の信頼性と実行性能を向上させようとしている(特許文献2参照)。
特許文献3には、同期動作あるいは並列動作いずれかの動作モード切り替えに対応した専用のIOブリッジやキャッシュメモリをもち、これらを構成制御プロセッサあるいは手段が動作モード切り替えを行なうH/W(ハードウェア)構成を前提にして、信頼性と実行性能を向上させようとしている(特許文献3参照)。
特開2010−224940号公報 特開2010−113388号公報 特開平09−073436号公報
しかし、安全機能と非安全機能とをそれぞれ別々のプロセッサにおいて実行する構成では、安全機能についてプロセッサの多重性が小さく信頼性が十分でないという課題がある。また、1つのプロセッサにおいて安全機能と非安全機能とを分離して処理する構成では、非安全機能について実行性能が十分確保できないという課題がある。
また、回路や専用制御・処理部を追加して信頼性と実行性能を向上させる効果を得る構成では、専用の回路ないし制御・処理部の追加が必要になり、故障率が増加するため信頼性を低下させる課題がある。
また、専用の回路や制御・処理部の追加は、部品コストあるいは検証のための工数が必要であり、システム価格や開発費用を増加させ、信頼性、処理性能、コスト削減の両立が困難になるという課題がある。
本発明は、上述のような課題を解決するためになされたものであり、性能及び信頼性を向上させるとともに、コスト削減を図ることができる情報処理装置、情報処理方法及びプログラムを提供することを目的とする。
本発明に係る情報処理装置は、複数のプロセッサを備える情報処理装置において、複数のプロセッサのそれぞれに、第1処理を実現するタスクを重複なく実行させる分割処理と、複数のプロセッサのそれぞれに、第2処理を実現するタスクを重複して実行させる重複処理と、を交互に繰り返す制御部を備え、制御部は、重複処理において、複数のプロセッサのそれぞれに、第2処理を実現するタスクを実行させた後、異なるアルゴリズム又は実装方法により第2処理を実現するタスクを実行させ、第2処理を実現するタスクのそれぞれの実行結果を比較して重複処理の不良を判断する
本発明に係る情報処理装置によれば、複数のプロセッサを用いて第1処理と第2処理とを実行する制御部であって、第1処理を複数の部分処理に分割し、複数のプロセッサのそれぞれに複数の部分処理のそれぞれを重複なく実行させる分割処理と、複数のプロセッサのそれぞれに第2処理を実行させる重複処理とを交互に繰り返す制御部を備えているので。部品を追加することなく、信頼性が必要な第処理では信頼性を向上させることができ、効率性が必要な第処理では効率性を向上させることができるので、コスト削減を図りつつ、性能及び信頼性の向上を図ることができる。
実施の形態1に係る情報処理装置100のハードウェア構成を示す図である。 実施の形態1に係る情報処理装置100の機能構成図である。 実施の形態1に係る情報処理装置100における機能及び動作を説明するための図である。 実施の形態2に係る制御部120の繰り返し実行処理(工程)の流れを示すフローチャートである。 実施の形態3に係る情報処理装置100aのシステム構成を示す図である。 実施の形態4に係る情報処理装置100bのシステム構成を示す図である。 比較例であるプロセッサシステム101の機能構成を示す図である。 比較例であるプロセッサシステム102の機能構成を示す図である。
実施の形態1.
図7は、比較例であるプロセッサシステム101の機能構成を示す図である。図8は、比較例であるプロセッサシステム102の機能構成を示す図である。
図7に示すプロセッサシステム101では、安全機能を安全対応CPUにより実行し、非安全機能を性能重視の非安全対応CPUにおいて実行する構成である。図1の構成では、安全対応CPUの多重性が小さく信頼性が十分でない。
図8に示すプロセッサシステム102では、1つの共有CPUにおいてメモリの保護機能と時分割機能とを用いることにより、安全機能と非安全機能とを分離して処理する。図8の構成では、非安全機能について実行性能が十分確保できない。
図1は、本実施の形態に係る情報処理装置100のハードウェア構成を示す図である。
図1に示すように、情報処理装置100は、プロセッサ200、メモリ300、IOポート400を備える。さらに、プロセッサ200、メモリ300、IOポート400が接続する(ぶら下がる)共有バス500を備える。
プロセッサ200は、複数のプロセッサであるプロセッサA210、プロセッサB220から構成されるマルチプロセッサである。すなわち、情報処理装置100は、複数のプロセッサを備えるプロセッサシステム、マルチプロセッサシステムである。
プロセッサ200は、CPU(Central・Processing・Unit:中央処理装置)211、GPU(Graphics・Processing・Unit:画像処理装置)212、CPU221、GPU222を備えるものとする。
以下の説明において、CPU211、GPU212をまとめてプロセッサA210と呼ぶ。CPU221、GPU222をまとめてプロセッサB220と呼ぶ。また、CPU、GPUをプロセッサと呼ぶ場合がある。
IOポート400は、複数のIOポートから構成される。ここでは、IOポート400は、IOポート4001,4002,・・・,400xを備えるものとする。
なお、情報処理装置100のハードウェア構成としては、プロセッサ200、メモリ300、IOポート400、共有バス500の他に、図示はないが通信装置を備えていてもよい。メモリ300は、主記憶装置と外部記憶装置とを備える。
プロセッサ200は、プログラムを実行する。
外部記憶装置は、例えば、ROM(Read・Only・Memory)である。主記憶装置は、例えば、RAM(Random・Access・Memory)である。
通信装置は、例えば通信ボード等であり、LAN(Local・Area・Network)等に接続されている。通信装置は、LANに限らず、IP−VPN(Internet・Protocol・Virtual・Private・Network)、広域LAN、ATM(Asynchronous・Transfer・Mode)ネットワークといったWAN(Wide・Area・Network)、あるいは、インターネットに接続されていても構わない。
プログラムは、通常は外部記憶装置に記憶されており、主記憶装置にロードされた状態で、順次プロセッサ200に読み込まれ、実行される。
プログラムは、例えば、図2で説明する機能部110、制御部120などの「〜部」として説明している機能を実現するプログラムである。
なお、図1の構成は、あくまでも情報処理装置100のハードウェア構成の一例を示すものであり、情報処理装置100のハードウェア構成は図1に記載の構成に限らず、他の構成であっても構わない。
図2は、本実施の形態に係る情報処理装置100の機能構成図である。
図3は、本実施の形態に係る情報処理装置100における機能及び動作を説明するための図である。
本実施の形態に係る情報処理装置100は、信頼性向上のための回路を追加する必要がない。情報処理装置100は、信頼性向上のために、例えば、ソフトウェア処理によって時分割することにより処理を安全モードと非安全モードに分ける。情報処理装置100において、安全モードのときは多重処理系(重複処理系、安全処理系ともいう)として動作し、信頼性を向上させる。また、非安全モードのときは並列処理系(分割処理系、非安全処理系)として動作し、処理性能を向上させる。
情報処理装置100は、機能部110、制御部120、メモリ300、IOポート400を備える。
機能部110は、安全機能部111、非安全機能部112を備える。情報処理装置100の機能部110は、例えば、車両の走行に関わる機能、マルチメディア機器を実現する機能、シーケンサの制御機能などの様々な機能を有する。機能部110が有する各機能は、それぞれ安全機能であるか非安全機能であるかが予め指定されている。
例えば、車両の走行に関わる機能、シーケンサの制御機能など信頼性を重視すべき安全機能(第2処理、安全処理ともいう)を実現するのは安全機能部111であり、マルチメディア機器を実現する処理性能を重視すべき非安全機能(第1処理、非安全処理ともいう)を実現するのは非安全機能部112である。
また、情報処理装置100は、図示は無いが、各機能を実現するのに必要な、各プロセッサで実行すべき複数のタスクが指定されている。
情報処理装置100において、各機能を実現するのに必要なメモリ領域が指定されている。
図2に示すように、メモリ300は、各機能のうち安全機能部111に割り当てられている安全用領域310と、非安全機能部112に割り当てられている非安全用領域320とを備える。安全用領域310と非安全用領域320とは、メモリ300空間上で重ならない。
情報処理装置100において、各機能を実現するのに必要な複数のIOポート400が指定されている。
図2に示すように、IOポート400は、各機能のうち安全機能部111に割り当てられている安全用IOポート410と、非安全機能部112に割り当てられている非安全用IOポート420とを備える。
図3を用いて、情報処理装置100の制御部120の動作について説明する。
制御部120は、プロセッサ200を用いて、安全機能部111による安全機能(第2処理)と非安全機能部112による非安全機能(第1処理)とを実行する。各プロセッサの実行時間は、安全処理を実行する安全時間801と非安全処理を実行する非安全時間802とに分けられる。
制御部120は、安全時間801には安全機能部111を実行させ、非安全時間802には非安全機能部112を実行させる。すなわち、制御部120は、安全時間801には安全機能部111を実現するタスクをCPU211及びCPU221を用いて実行する。また、制御部120は、非安全時間802には非安全機能部112を実現するタスクをCPU211、GPU212、CPU221、及びGPU222を用いて実行する。
各プロセッサ200の安全時間801、非安全時間802の分割方法は、重ならない限りどのようなものでもよい。
制御部120は、安全時間801には、メモリ領域として安全用領域310を使用する。また、制御部120は、非安全時間802には、メモリ領域として非安全用領域320を使用する。各メモリ領域(安全用領域310、非安全用領域320)は通常のプロセッサのメモリ保護機能によって保護する。安全用領域310には、いわゆる特権タスクのみがアクセスできる領域を割り当てる。また、非安全用領域320には、非特権タスクでもアクセスできる領域を割り当てる。
制御部120は、安全機能に指定されている安全機能部111を実行するのに必要なタスクを安全時間801に実行する。このとき、制御部120は、安全機能部111の実行に必要なメモリ300を安全用領域310に割り当てる。また、安全機能部111を実行するのに必要な安全用IOポート410は、制御部120により安全時間801に制御される。
安全機能部111が非安全機能部112を使用する場合は、制御部120は、非安全機能部112により使用されるタスク、非安全用領域320、非安全用IOポート420が信頼性が低い(まったくあてにならない場合がある)ことを前提として制御する。すなわち、制御部120は、非安全機能部112により使用されるタスク、非安全用領域320、非安全用IOポート420に関するチェック機能を用いる。あるいは、実行途中での停止機能などを利用する。
制御部120は、非安全機能を実現するのに必要なタスクを非安全時間802に実行する。また、制御部120は、非安全用領域320、非安全用IOポート420については非安全時間802に制御する。ただし、非安全機能部112が安全機能部111を使用する場合は、制御部120は、安全機能部111が提供するインタフェース経由で安全機能部111を実行する。制御部120は、非安全機能部112の動作が安全機能部111にとって問題がないと判断した場合のみ安全機能部111を実行する。
なお、本実施の形態では、プロセッサ200はプロセッサA210とプロセッサB220との2重系であるが、プロセッサの数は、2つでなくても構わない。例えば、3つ、4つ、その他の数でもよい。
制御部120は、複数のプロセッサを用いて、安全処理と非安全処理とを実行する。制御部120は、非安全処理を複数の部分処理に分割し、複数のプロセッサのそれぞれに複数の部分処理のそれぞれを重複なく実行させる並列処理(分割処理)と、複数のプロセッサのそれぞれに安全処理を重複して実行させる多重処理(重複処理)とを交互に繰り返す制御処理を行う。
図3を用いて、制御部120の情報処理方法(処理、工程)についてさらに説明する。
図3に示すように、安全機能部111は安全機能1と安全機能2とを実行し、非安全機能部112は非安全機能1と非安全機能2とを実行するものとする。
制御部120は、非安全時間802には、プロセッサA210とプロセッサB220とを用いて、非安全機能部112を並列処理により実行する(非安全モード処理(工程))。
具体的には、制御部120は、非安全時間802aには、CPU211とCPU221との並列処理により非安全機能1を実行し、非安全時間802bには、CPU211とCPU221との並列処理、GPU212とGPU222との並列処理により非安全機能2を実行する。
よって、非安全機能部112の実行時の処理性能は向上する。
制御部120は、安全時間801には、CPU211とCPU221とを用いる多重化処理により、安全機能部111を実行する(安全モード処理(工程))。
具体的には、制御部120は、安全時間801aには、CPU211とCPU221とを用いる多重化処理により安全機能1を実行し、安全時間801bには、CPU211とCPU221とを用いる多重化処理により安全機能2を実行する。
よって、安全機能部111の実行時の信頼性は向上する。
以上のように、本実施の形態に係る情報処理装置100は、情報処理方法(処理、工程)において、非安全モード処理(工程)と、安全モード処理(工程)とを繰り返す。
本実施の形態に係る情報処理装置100によれば、論理的あるいは時間的に、安全時間(安全モード)と非安全時間(非安全モード)とを厳格に分離することができる。また、非安全機能が安全機能に影響を及ぼす可能性を排除することができる。また、本実施の形態に係る情報処理装置100によれば、H/W(IOポート,メモリ,プロセッサ)自体には特別な安全対応の追加H/Wを必要としない。
したがって、本実施の形態に係る情報処理装置100によれば、安全対応の車載マルチメディア機器や高性能を要求される産業制御システムにおいて、追加の回路や処理部を追加せずに最小限のプロセッサ個数で、コストを上昇させずに安全性と処理性能とを両立させることが可能になる。
さらに、専用の回路あるいは制御・処理部の追加や、外部からの指示によるシステム動作への影響の可能性が無くなり、故障率を減少させ、信頼性を向上させることが可能になる。
以上のように、本実施の形態に係る情報処理装置100は、信頼性向上のための回路を追加する必要がなく、信頼性向上のために、例えば、ソフトウェア処理によって時分割することにより処理を安全モードと非安全モードに分けている。情報処理装置100において、安全モードのときは多重処理系として動作し、信頼性を向上させるとともに、非安全モードのときは並列処理系として動作し、処理性能を向上させる。よって、本実施の形態に係る情報処理装置100によれば、性能向上、信頼性向上、及びコスト削減の両立を図ることができる。
実施の形態2.
本実施の形態では、主に、実施の形態1との差異について説明する。
本実施の形態において、実施の形態1で説明した構成部と同様の機能を有する構成部には同一の符号を付し、その説明を省略する場合がある。
本実施の形態では、実施の形態1の制御部120の動作に、以下の処理を加えることにより、より信頼性を向上させることができる情報処理装置100について説明する。
図4は、本実施の形態に係る制御部120の繰り返し実行処理(工程)の流れを示すフローチャートである。ここでは、制御部120は、安全時間801の処理の実行を開始するものとする。
本実施の形態に係る制御部120は、安全時間801において、以下の制御を行う。
S101において、制御部120は、安全時間801aの開始時に多重化(2重化処理)をする2つのプロセッサの性能に余裕があるが否かを判定する。
制御部120は、余裕があると判定した場合には、S102に進む。
制御部120は、余裕がないと判定した場合には、処理を終了し、通常の安全時間801aにおける安全機能1の多重化処理を実行する。
S102において、制御部120は、安全機能1を同じアルゴリズム、違うアルゴリズム、異なった実装方法などにより繰り返し実行する。そして、制御部120は、それぞれの実行結果を比較することにより冗長性を大きくする。このような処理により、より信頼性を向上させることができる。
具体的には、制御部120は、安全機能1を、プロセッサA210とプロセッサB220とを用いて、同じアルゴリズム、違うアルゴリズム、異なった実装方法などにより繰り返し多重化処理を実行する(S103)。そして、制御部120は、実行結果を繰り返し比較する(S104)。
あるいは、安全機能(機能の一例)を実現する複数のタスク(第2タスク及び第3タスクを含む)を予め用意しておく。制御部120は、まず、第2タスク(第2処理の一例)をプロセッサA210とプロセッサB220とに実行させ、次に、第3タスク(第3処理の一例)をプロセッサA210とプロセッサB220とに実行させる(S103)。そして、制御部120は、それぞれの処理結果を比較する(S104)。制御部120は、比較結果が予め定められた閾値以下の場合には(S104でNO)、何もせずに終了する。一方、制御部120は、比較結果が閾値より大きい場合には(S104でYES)、安全機能を実現する並列処理(重複処理)が不良であると判断する。制御部120は、安全機能を実現する並列処理(重複処理)が不良であると判断すると、情報処理装置100を停止する(S105)、あるいは、警告を出力する。
なお、上記の繰り返し実行処理の動作例については、上述した動作に限らず、複数のプロセッサ、複数のアルゴリズム、複数の実装方法などをどのように組み合わせて繰り返し実行しても構わない。
以上のように、本実施の形態に係る制御部120によれば、安全処理(重複処理)において、複数のプロセッサ200のうち性能に余裕がある性能プロセッサがあるか否かを判定し、性能プロセッサがあると判定した場合に、例えば、性能プロセッサに安全処理の機能を実現する処理を繰り返し実行させるので、信頼性の高い安全時間(安全モード)の処理を実現することができる。
実施の形態3.
本実施の形態では、主に、実施の形態1,2との差異について説明する。
本実施の形態において、実施の形態1,2で説明した構成部と同様の機能を有する構成部には同一の符号を付し、その説明を省略する場合がある。
本実施の形態では、複数のプロセッサ200のうち少なくとも2つのプロセッサ200が、稼働する条件が互いに異なる情報処理装置100aについて説明する。
図5は、本実施の形態に係る情報処理装置100aのシステム構成を示す図である。
図5に示すように、本実施の形態では、プロセッサA210とプロセッサB220とで、異なるEMC(Electro Magnetic Interference)(電磁妨害)シールド構造を有する。
また、情報処理装置100aは、プロセッサA210に動作周波数を供給するクロック610と、プロセッサB220に動作周波数を供給するクロック620とを備える。クロック610とクロック620とは、異なった位相、異なった周波数の動作周波数を供給するものとする。
また、情報処理装置100aは、プロセッサA210に電源を供給する電源710と、プロセッサB220に電源を供給する電源720とを備える。電源710と電源720とは、異なった電圧、異なった方式により電源を供給するものとする。
また、情報処理装置100aは、電源710接続されたEMCフィルタ810と、電源720に接続されたEMCフィルタ820とを備える。EMCフィルタ810とEMCフィルタ820とは、異なった周波数帯域へのノイズ対策を実行するものとする。
上述したように、制御部120は、安全時間801において、安全機能部111をプロセッサA210とプロセッサB220とを用いて多重化処理を実行している。すなわち、制御部120は、プロセッサA210とプロセッサB220とにより同一の安全機能処理を実行し、一方のCPUが故障した場合であっても、処理の継続を保証している。
本実施の形態では、さらに信頼性を向上させるために、図5に示すように、各プロセッサに非対象性を導入する。
非対称の例としては、図5に示すように、クロック610及びクロック620の非対称、プロセッサA210及びプロセッサB220の非対称、電源710及び電源720の非対称、EMCフィルタ810及びEMCフィルタ820の非対称などがある。これらの非対称な構成をどのように組み合わせても構わない。
情報処理装置100aにおいて、その他の非対象性とする稼働する条件の例としては、別基板への配置、別パッケージへ配置、向き、パターン、伝送路、異種メモリ、放熱構造、プロセス製造、ロット、セカンドソース、異種プロセッサ、同じ機能の違うアルゴリズム、同じ機能の違うデータ構造を使用した処理などがある。
本実施の形態に係る情報処理装置100aによれば、実施の形態1あるいは実施の形態2の構成に加え、各プロセッサに物理的・動作的非対称性を導入したので、多重系における共通の故障を防ぐことができ、より信頼性を向上させることができる。
なお、実施の形態1の構成に実施の形態2の構成を加え、さらに、本実施の形態の構成を加えてもよい。この構成により、より信頼性を向上させることができる。
実施の形態4.
本実施の形態では、主に、実施の形態1〜3との差異について説明する。
本実施の形態において、実施の形態1〜3で説明した構成部と同様の機能を有する構成部には同一の符号を付し、その説明を省略する場合がある。
図6は、本実施の形態に係る情報処理装置100bのシステム構成を示す図である。図6は、実施の形態1で説明した図3に対応する図である。
図6に示す情報処理装置100bは、図3の構成に加え、遊休中のプロセッサ200bを備える。プロセッサ200bは、例えば、CPU231、GPU232を備える。
制御部120は、一時的に機能を処理していない状態のプロセッサ(遊休プロセッサ)があるか否かを判定し、例えば、プロセッサ200bが遊休プロセッサであると判定した場合には、プロセッサ200bを用いてプルーフテストなどの検査や回復処理(リセット等)を実行する。あるいは、外部の装置からプロセッサ200bを用いたプルーフテストなどの検査や回復処理(リセット等)を実行してもよい。
以上のように本実施の形態に係る情報処理装置100bによれば、制御部120が、複数のプロセッサのうち稼働を休止している遊休プロセッサ(休止プロセッサ)があるか否かを判定し、遊休プロセッサにプルーフテストなどの検査及び回復処理(リセット等)などの複数のプロセッサ200の動作を検査する検査処理を実行させるので、信頼性、安全性を向上させるために安全システムの機能が正しく動作しているか否かのプルーフテストの間隔を短縮することができ、さらに信頼性を向上させることができる。
以上、本発明の実施の形態について説明したが、例えば、実施の形態1の構成・機能に加え、実施の形態2、あるいは、実施の形態3、あるいは、実施の形態4の構成・機能を加えてもよい。また、実施の形態1に実施の形態2の構成・機能に加えたものに、実施の形態3、あるいは、実施の形態4の構成・機能を加えてもよい。また、実施の形態1に実施の形態2及び実施の形態3の構成・機能に加えたものに、実施の形態4の構成・機能を加えてもよい。
このように、これらの実施の形態のうち、2つ以上を組み合わせて実施しても構わない。あるいは、これらの実施の形態のうち、1つを部分的に実施しても構わない。あるいは、これらの実施の形態のうち、2つ以上を部分的に組み合わせて実施しても構わない。
なお、以上の実施の形態は、本質的に好ましい例示であって、本発明、その適用物や用途の範囲を制限することを意図するものではなく、必要に応じて種々の変更が可能である。本発明は、これらの実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
100,100a,100b 情報処理装置、101,102 プロセッサシステム、110 機能部、111 安全機能部、112 非安全機能部、120 制御部、200,200b プロセッサ、210 プロセッサA、211,221,231 CPU、212,222,232 GPU、220 プロセッサB、300 メモリ、310 安全用領域、320 非安全用領域、400 IOポート、410 安全用IOポート、420 非安全用IOポート、500 共有バス、610,620 クロック、710,720 電源、801 安全時間、802 非安全時間、810,820 EMCフィルタ。

Claims (8)

  1. 複数のプロセッサを備える情報処理装置において、
    前記複数のプロセッサのそれぞれに、第1処理を実現するタスクを重複なく実行させる分割処理と、
    前記複数のプロセッサのそれぞれに、第2処理を実現するタスクを重複して実行させる重複処理と、を交互に繰り返す制御部を備え、
    前記制御部は
    前記重複処理において、前記複数のプロセッサのそれぞれに、前記第2処理を実現するタスクを実行させた後、異なるアルゴリズム又は実装方法により前記第2処理を実現するタスクを実行させ、
    前記第2処理を実現するタスクのそれぞれの実行結果を比較して前記重複処理の不良を判断する情報処理装置。
  2. 複数のプロセッサを備える情報処理装置において、
    前記複数のプロセッサのそれぞれに、第1処理を実現するタスクを重複なく実行させる分割処理と、
    前記複数のプロセッサのそれぞれに、第2処理を実現するタスクを重複して実行させる重複処理と、を交互に繰り返す制御部を備え、
    前記制御部は
    前記重複処理において、前記複数のプロセッサのそれぞれに、前記第2処理を実現する予め用意された第2タスク及び第3タスクを、タスクごとに重複して順に実行させ、
    前記第2タスク及び前記第3タスクの実行結果を比較して前記重複処理の不良を判断する情報処理装置。
  3. 前記制御部は、
    前記複数のプロセッサでの前記第2処理を実現するタスクの実行に先立ち、前記複数のプロセッサが前記第2処理を実現するタスクを実行する性能に余裕があるかどうかを判定し、
    前記性能に余裕があると判定した場合に、前記複数のプロセッサのそれぞれに前記第2処理を繰り返し実行させる請求項1または2に記載の情報処理装置。
  4. 前記複数のプロセッサのうち少なくとも2つのプロセッサは、稼働する条件が互いに異なる請求項1〜3のいずれか1項に記載の情報処理装置。
  5. 前記少なくとも2つのプロセッサは、物理的に非対称である請求項に記載の情報処理装置。
  6. 前記制御部は、前記複数のプロセッサのうち稼働を休止している休止プロセッサがあるか否かを判定し、前記休止プロセッサがあると判定した場合に、前記休止プロセッサに前記複数のプロセッサの動作を検査する検査処理を実行させる請求項1〜のいずれか1項に記載の情報処理装置。
  7. 複数のプロセッサを備える情報処理装置の情報処理方法において、
    前記複数のプロセッサのそれぞれに、第1処理を実現するタスクを重複なく実行させる分割処理と、前記複数のプロセッサのそれぞれに、第2処理を実現するタスクを重複して実行させる重複処理と、を交互に繰り返す制御工程と、
    前記制御工程での前記重複処理で、前記第2処理を実現するタスクのそれぞれの実行結果を比較して前記重複処理の不良を判断する判断工程と、を有し、
    前記制御工程では、
    前記重複処理において、前記複数のプロセッサのそれぞれに、前記第2処理を実現するタスクを実行させた後、異なるアルゴリズム又は実装方法により前記第2処理を実現するタスクを実行させる情報処理方法。
  8. 複数のプロセッサを備える情報処理装置のプログラムにおいて
    記複数のプロセッサのそれぞれに、第1処理を実現するタスクを重複なく実行させる分割処理と、
    前記複数のプロセッサのそれぞれに、第2処理を実現するタスクを重複して実行させる重複処理とを交互に繰り返す制御処理と、
    前記重複処理において、前記複数のプロセッサのそれぞれに、前記第2処理を実現するタスクを実行させた後、異なるアルゴリズム又は実装方法により前記第2処理を実現するタスクを実行させ、前記第2処理を実現するタスクのそれぞれの実行結果を比較して前記重複処理の不良を判断する判断処理と、
    をコンピュータに実行させるプログラム。
JP2014051686A 2014-03-14 2014-03-14 情報処理装置、情報処理方法及びプログラム Active JP6324127B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014051686A JP6324127B2 (ja) 2014-03-14 2014-03-14 情報処理装置、情報処理方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014051686A JP6324127B2 (ja) 2014-03-14 2014-03-14 情報処理装置、情報処理方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2015176292A JP2015176292A (ja) 2015-10-05
JP6324127B2 true JP6324127B2 (ja) 2018-05-16

Family

ID=54255447

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014051686A Active JP6324127B2 (ja) 2014-03-14 2014-03-14 情報処理装置、情報処理方法及びプログラム

Country Status (1)

Country Link
JP (1) JP6324127B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015222321A1 (de) * 2015-11-12 2017-05-18 Siemens Aktiengesellschaft Verfahren zum Betrieb eines Mehrkernprozessors
US10037016B2 (en) * 2016-03-23 2018-07-31 GM Global Technology Operations LLC Hybrid dual-duplex fail-operational pattern and generalization to arbitrary number of failures
CN109901911B (zh) * 2018-11-22 2023-07-07 海光信息技术股份有限公司 一种信息设置方法、控制方法、装置及相关设备
CN112732341B (zh) * 2020-11-30 2023-08-01 北京百度网讯科技有限公司 车载计算平台的休眠控制方法、设备及可读存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06161798A (ja) * 1992-11-24 1994-06-10 Hitachi Ltd 情報処理装置
JP4164628B2 (ja) * 2001-07-02 2008-10-15 株式会社日立製作所 フェールセーフ情報処理装置
JP2005339283A (ja) * 2004-05-27 2005-12-08 Matsushita Electric Ind Co Ltd タスク処理方法
JP2007058541A (ja) * 2005-08-24 2007-03-08 Matsushita Electric Ind Co Ltd プロセッサ、処理方法及び処理プログラム
US8605099B2 (en) * 2008-03-31 2013-12-10 Intel Corporation Partition-free multi-socket memory system architecture
JP5477539B2 (ja) * 2009-03-24 2014-04-23 日本電気株式会社 フォールトトレラントシステム

Also Published As

Publication number Publication date
JP2015176292A (ja) 2015-10-05

Similar Documents

Publication Publication Date Title
JP3196004B2 (ja) 障害回復処理方法
US9760455B2 (en) PCIe network system with fail-over capability and operation method thereof
US9632860B2 (en) Multicore processor fault detection for safety critical software applications
JP6324127B2 (ja) 情報処理装置、情報処理方法及びプログラム
US9032482B2 (en) Information processing apparatus and control method
US20110093857A1 (en) Multi-Threaded Processors and Multi-Processor Systems Comprising Shared Resources
US20150242233A1 (en) Safety hypervisor function
US9372702B2 (en) Non-disruptive code update of a single processor in a multi-processor computing system
US11036543B1 (en) Integrated reliability, availability, and serviceability state machine for central processing units
US10379931B2 (en) Computer system
US11449361B2 (en) Functional safety system, safety control method for the functional safety system, and functional safety program
JP2006260488A (ja) パーティション割り振り方法及びコンピュータシステム
US9535772B2 (en) Creating a communication channel between different privilege levels using wait-for-event instruction in systems operable at multiple levels hierarchical privilege levels
JP2014132384A (ja) マイクコンピュータ及びその制御方法
JP2009003537A (ja) 計算機
US20090249132A1 (en) Data Processing Apparatus and Method of Verifying Programs
JP7236811B2 (ja) 情報処理装置
JP2023501944A (ja) セキュアハードウェアプログラマブルアーキテクチャ
JP2008234117A (ja) マルチプロセッサシステムおよびマルチプロセッサシステムにおける復旧方法
JP5017396B2 (ja) 情報処理装置およびプログラムの検証方法
JP5686259B2 (ja) 再構成可能デバイスの高信頼化装置、高信頼化方法及び高信頼化プログラム
JP2002229811A (ja) 論理分割システムの制御方法
JP6645467B2 (ja) マイクロコンピュータ
KR101923778B1 (ko) 듀얼 모듈러 리던던시 및 오류 예측을 이용한 고성능 컴퓨팅 장치 및 그 방법
JP2022055002A (ja) 情報処理装置、情報処理方法および情報処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170926

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180223

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: 20180313

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180410

R150 Certificate of patent or registration of utility model

Ref document number: 6324127

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250