JP2011215771A - 情報処理システム、車両制御用プログラム管理システム、及び情報処理システムのプログラム更新方法 - Google Patents
情報処理システム、車両制御用プログラム管理システム、及び情報処理システムのプログラム更新方法 Download PDFInfo
- Publication number
- JP2011215771A JP2011215771A JP2010082000A JP2010082000A JP2011215771A JP 2011215771 A JP2011215771 A JP 2011215771A JP 2010082000 A JP2010082000 A JP 2010082000A JP 2010082000 A JP2010082000 A JP 2010082000A JP 2011215771 A JP2011215771 A JP 2011215771A
- Authority
- JP
- Japan
- Prior art keywords
- information processing
- processing apparatus
- program
- communication bus
- update
- 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.)
- Pending
Links
Images
Abstract
【課題】信頼性の低下とコストの増大を抑制しつつ、複数の情報処理装置の実行プログラムの更新を高速に行う。
【解決手段】プログラム記憶領域として磁気抵抗メモリ(MRAM)16を有し、第1の通信速度で通信可能な第1の通信バスXに接続された第1の情報処理装置#1〜#9と、プログラム記憶領域として不揮発性メモリ36を有し、第1の通信バスXの通信速度に比して低い第2の通信速度で通信可能な第2の通信バスY1〜Y9を介して第1の情報処理装置#1〜#9に接続された第2の情報処理装置#11〜#92とを備え、第2の情報処理装置#11〜#92の実行プログラムが更新される際に、先ず外部から第1の通信バスXを介して入力された更新プログラムを磁気抵抗メモリ16に格納した後、第2の通信バスY1〜Y9を介して第2の情報処理装置に出力する。
【選択図】図1
【解決手段】プログラム記憶領域として磁気抵抗メモリ(MRAM)16を有し、第1の通信速度で通信可能な第1の通信バスXに接続された第1の情報処理装置#1〜#9と、プログラム記憶領域として不揮発性メモリ36を有し、第1の通信バスXの通信速度に比して低い第2の通信速度で通信可能な第2の通信バスY1〜Y9を介して第1の情報処理装置#1〜#9に接続された第2の情報処理装置#11〜#92とを備え、第2の情報処理装置#11〜#92の実行プログラムが更新される際に、先ず外部から第1の通信バスXを介して入力された更新プログラムを磁気抵抗メモリ16に格納した後、第2の通信バスY1〜Y9を介して第2の情報処理装置に出力する。
【選択図】図1
Description
本発明は、互いに通信可能な複数の情報処理装置を含む情報処理システムに関し、特に、外部から情報処理装置の実行プログラムが更新されることが想定される情報処理システムに関する。
従来、例えば車両に搭載される制御システム等、複数の情報処理装置が互いに通信を行って種々の情報処理を行う情報処理システムが実用化されている。このような情報処理システムでは、外部から与えられる更新プログラムを情報処理装置にインストールする手段が講じられていることが望ましい。
特許文献1には、プログラム記憶手段として磁気抵抗メモリ(MRAM、特許文献1では「薄膜磁性体メモリ」と記載されている)を有し、外部からプログラムをロードする際の転送時間を短縮した演算処理装置について記載されている。
磁気抵抗メモリは、磁化が固定された強磁性層と磁化が可変な強磁性層の間を薄い絶縁層で仕切った構造となっており、磁化が可変な強磁性層の磁化方向を変化させて抵抗値を切り替えることによって、2値信号を表現している。この抵抗値は2つの磁性層の磁気方向が異なる場合に高くなり、磁気方向が一致する場合に低くなる。磁気抵抗メモリは、不揮発性メモリでありながら高速転送や高集積化が可能であるという利点を有している。
しかしながら、上記従来特許文献1に記載の演算処理装置を、複数の情報処理装置を有する情報処理システムに適用すると、以下のような問題が生じうる。
磁気抵抗メモリは、上記のような利点を有しているが、従来の不揮発性メモリに比してコスト面や情報記憶の信頼性において劣るのが現状である。従って、情報処理システムにおいて、コストの増大や信頼性の低下を招く場合がある。
また、高速転送を行うためには、比較的高価な高速バスを備える必要がある。従って、磁気抵抗メモリを有する複数の情報処理装置の実行プログラムを高速に更新しようとすると、これらの情報処理装置の全てを高速バスに接続させる必要が生じる。これでは、更にコストの増大を招いてしまう。
本発明はこのような課題を解決するためのものであり、信頼性の低下とコストの増大を抑制しつつ、複数の情報処理装置の実行プログラムの更新を高速に行うことが可能な情報処理システムを提供することを、主たる目的とする。
上記目的を達成するための本発明の第1の態様は、
プログラム記憶領域として磁気抵抗メモリ(MRAM)を有し、第1の通信速度で通信可能な第1の通信バスに接続された第1の情報処理装置と、
プログラム記憶領域として不揮発性メモリを有し、前記第1の通信速度に比して低い第2の通信速度で通信可能な第2の通信バスを介して前記第1の情報処理装置に接続された一以上の第2の情報処理装置と、を備え、
前記第2の情報処理装置の実行プログラムが更新される際に、
先ず外部から前記第1の通信バスを介して入力された更新プログラムを前記第1の情報処理装置が有する磁気抵抗メモリに格納し、該磁気抵抗メモリに格納された更新プログラムを前記第2の通信バスを介して前記第2の情報処理装置に出力することを特徴とする、
情報処理システムである。
プログラム記憶領域として磁気抵抗メモリ(MRAM)を有し、第1の通信速度で通信可能な第1の通信バスに接続された第1の情報処理装置と、
プログラム記憶領域として不揮発性メモリを有し、前記第1の通信速度に比して低い第2の通信速度で通信可能な第2の通信バスを介して前記第1の情報処理装置に接続された一以上の第2の情報処理装置と、を備え、
前記第2の情報処理装置の実行プログラムが更新される際に、
先ず外部から前記第1の通信バスを介して入力された更新プログラムを前記第1の情報処理装置が有する磁気抵抗メモリに格納し、該磁気抵抗メモリに格納された更新プログラムを前記第2の通信バスを介して前記第2の情報処理装置に出力することを特徴とする、
情報処理システムである。
この本発明の第1の態様によれば、信頼性の低下とコストの増大を抑制しつつ、複数の情報処理装置の実行プログラムの更新を高速に行うことができる。
本発明の第1の態様において、
前記不揮発性メモリは、フラッシュメモリ又はEEPROM(Electrically Erasable and Programmable Read Only Memory)であることが望ましい。
前記不揮発性メモリは、フラッシュメモリ又はEEPROM(Electrically Erasable and Programmable Read Only Memory)であることが望ましい。
また、本発明の第1の態様において、
前記第1の情報処理装置は、外部から入力された圧縮データを伸長するデータ伸長手段を備えることが望ましい。
前記第1の情報処理装置は、外部から入力された圧縮データを伸長するデータ伸長手段を備えることが望ましい。
また、本発明の第1の態様において、
前記第1の情報処理装置は、外部から入力された暗号化データを復号するデータ復号手段を備えることが望ましい。
前記第1の情報処理装置は、外部から入力された暗号化データを復号するデータ復号手段を備えることが望ましい。
また、本発明の第1の態様は、
車両に搭載され、前記第1の情報処理装置及び前記一以上の第2の情報処理装置は、車載機器の制御のための情報処理を行うものとすると、好適である。
車両に搭載され、前記第1の情報処理装置及び前記一以上の第2の情報処理装置は、車載機器の制御のための情報処理を行うものとすると、好適である。
本発明の第2の態様は、
車両に搭載された本発明の第1の態様の情報処理システムと、
前記第2の情報処理装置の実行プログラムを含むデータを前記第1の通信バスを介して前記第1の情報処理装置に出力する書き込み装置と、
を備える車両制御用プログラム管理システムである。
車両に搭載された本発明の第1の態様の情報処理システムと、
前記第2の情報処理装置の実行プログラムを含むデータを前記第1の通信バスを介して前記第1の情報処理装置に出力する書き込み装置と、
を備える車両制御用プログラム管理システムである。
本発明の第2の態様において、前記書き込み装置は、例えば車外設備に設置される。
本発明の第3の態様は、
プログラム記憶領域として磁気抵抗メモリ(MRAM)を有し、第1の通信速度で通信可能な第1の通信バスに接続された第1の情報処理装置と、プログラム記憶領域として不揮発性メモリを有し、前記第1の通信速度に比して低い第2の通信速度で通信可能な第2の通信バスを介して前記第1の情報処理装置に接続された一以上の第2の情報処理装置と、を備える情報処理システムのプログラム更新方法であって、
前記第2の情報処理装置の実行プログラムが更新される際に、
外部から前記第1の通信バスを介して入力された更新プログラムを前記第1の情報処理装置が有する磁気抵抗メモリに格納する第1のステップと、
該磁気抵抗メモリに格納された更新プログラムを前記第2の通信バスを介して前記第2の情報処理装置に出力する第2のステップと、
前記第2の情報処理装置に出力された更新プログラムを前記不揮発性メモリに格納する第3のステップと、
を実行することを特徴とする、情報処理システムのプログラム更新方法である。
プログラム記憶領域として磁気抵抗メモリ(MRAM)を有し、第1の通信速度で通信可能な第1の通信バスに接続された第1の情報処理装置と、プログラム記憶領域として不揮発性メモリを有し、前記第1の通信速度に比して低い第2の通信速度で通信可能な第2の通信バスを介して前記第1の情報処理装置に接続された一以上の第2の情報処理装置と、を備える情報処理システムのプログラム更新方法であって、
前記第2の情報処理装置の実行プログラムが更新される際に、
外部から前記第1の通信バスを介して入力された更新プログラムを前記第1の情報処理装置が有する磁気抵抗メモリに格納する第1のステップと、
該磁気抵抗メモリに格納された更新プログラムを前記第2の通信バスを介して前記第2の情報処理装置に出力する第2のステップと、
前記第2の情報処理装置に出力された更新プログラムを前記不揮発性メモリに格納する第3のステップと、
を実行することを特徴とする、情報処理システムのプログラム更新方法である。
この本発明の第3の態様によれば、信頼性の低下とコストの増大を抑制しつつ、複数の情報処理装置の実行プログラムの更新を高速に行うことができる。
本発明の第3の態様において、
前記第2の情報処理装置は、圧縮データを伸長するデータ伸長手段を有し、
前記第1のステップにおいて、外部から前記第1の通信バスを介して圧縮データが入力され、
前記第2のステップは、前記磁気抵抗メモリに格納された、圧縮された更新プログラムを伸長して、前記第2の通信バスを介して前記第2の情報処理装置に出力するステップであることが望ましい。
前記第2の情報処理装置は、圧縮データを伸長するデータ伸長手段を有し、
前記第1のステップにおいて、外部から前記第1の通信バスを介して圧縮データが入力され、
前記第2のステップは、前記磁気抵抗メモリに格納された、圧縮された更新プログラムを伸長して、前記第2の通信バスを介して前記第2の情報処理装置に出力するステップであることが望ましい。
本発明の第3の態様において、
前記第2の情報処理装置は、暗号化データを復号するデータ復号手段を有し、
前記第1のステップにおいて、外部から前記第1の通信バスを介して暗号化データが入力され、
前記第2のステップは、前記磁気抵抗メモリに格納された、暗号化された更新プログラムを復号して、前記第2の通信バスを介して前記第2の情報処理装置に出力するステップであることが望ましい。
前記第2の情報処理装置は、暗号化データを復号するデータ復号手段を有し、
前記第1のステップにおいて、外部から前記第1の通信バスを介して暗号化データが入力され、
前記第2のステップは、前記磁気抵抗メモリに格納された、暗号化された更新プログラムを復号して、前記第2の通信バスを介して前記第2の情報処理装置に出力するステップであることが望ましい。
本発明によれば、信頼性の低下とコストの増大を抑制しつつ、複数の情報処理装置の実行プログラムの更新を高速に行うことが可能な情報処理システムを提供することができる。
以下、本発明を実施するための形態について、添付図面を参照しながら実施例を挙げて説明する。
<第1実施例>
以下、図面を参照し、本発明の第1実施例に係る情報処理システム1について説明する。情報処理システム1は、互いに通信可能な複数の情報処理装置を有するシステムである。また、情報処理システム1は、車両に搭載され、種々の車載機器制御を行う車載制御システム等に好適に適用される。
以下、図面を参照し、本発明の第1実施例に係る情報処理システム1について説明する。情報処理システム1は、互いに通信可能な複数の情報処理装置を有するシステムである。また、情報処理システム1は、車両に搭載され、種々の車載機器制御を行う車載制御システム等に好適に適用される。
[構成]
図1は、本発明の第1実施例に係る情報処理システム1のシステム構成例である。情報処理システム1は、主要な構成として、情報処理装置#nと(n=1〜9)、これらに接続された情報処理装置#nknと(kn=1〜2)、を備える。なお、これらの情報処理装置の個数及び接続関係についてはあくまで一例であり、本発明の適用上、特段の制限はない。例えばknは1〜2であるものとするが、1であってもよいし、3以上であってもよい。また、nが9であることも単なる一例である。
図1は、本発明の第1実施例に係る情報処理システム1のシステム構成例である。情報処理システム1は、主要な構成として、情報処理装置#nと(n=1〜9)、これらに接続された情報処理装置#nknと(kn=1〜2)、を備える。なお、これらの情報処理装置の個数及び接続関係についてはあくまで一例であり、本発明の適用上、特段の制限はない。例えばknは1〜2であるものとするが、1であってもよいし、3以上であってもよい。また、nが9であることも単なる一例である。
情報処理装置#1〜#9は、それぞれ、CPU10と、高速通信装置12と、通信装置14と、MRAM(Magnetoresistive Random Access Memory)16と、を有するMCU(Micro Control Unit)として構成される。なお、ここではいずれの情報処理装置であるかを示す符号(#n)は省略している。
また、情報処理装置#1k1〜#9k9は、それぞれCPU30と、通信装置32と、SRAM(Static Random Access Memory)34と、フラッシュメモリ36と、を有するMCUとして構成される。なお、ここではいずれの情報処理装置であるかを示す符号(#nkn)は省略している。
情報処理装置#1と、情報処理装置#11及び#12は、ローカル通信バスY1によって接続されており、FlexRay等の通信プロトコルを用いて通信可能となっている。
同様に、情報処理装置#2と、情報処理装置#21及び#22は、ローカル通信バスY2によって接続されており、情報処理装置#9と、情報処理装置#91及び#92は、ローカル通信バスY9によって接続されており、FlexRay等の通信プロトコルを用いて通信可能となっている。
なお、図示していないが、情報処理装置#1に接続される情報処理装置#11と情報処理装置#12、情報処理装置#2に接続される情報処理装置#21と情報処理装置#22、情報処理装置#9に接続される情報処理装置#91と情報処理装置#92、が互いに通信可能であってもよい。その他、図示していない如何なる通信接続の追加も許容される。
また、情報処理装置#1、情報処理装置#2、…情報処理装置#9は、外部通信バスXによって書き込み装置90と接続される。外部通信バスXは、ローカル通信バスY1〜Y9に比して高速に通信可能となっている。例えば、外部通信バスXは20[Mbps]で通信可能であり、ローカル通信バスYnは10[Mbps]で通信可能である。
情報処理システム1が車載制御システムである場合、各情報処理装置は、車載機器の制御のための情報処理を行う。例えば、情報処理装置#1がエンジン制御を行うための上位の情報処理(例えば目標回転数の演算等)を行い、情報処理装置#11がエンジンの点火時期制御のための情報処理を行い、情報処理装置#12は変速機制御のための情報処理を行う、等の態様で用いられる。
書き込み装置90は、情報処理システム1が車載制御システムである場合、例えばディーラー店や修理店に設置されるコンピュータ装置である。この場合、自動車メーカーから制御システムの更新案内が手紙やEメール等でユーザーに届けられ、ユーザーがディーラー店等まで車両を運転し、そこで書き込み装置90が外部通信線Xに接続されて制御システムの更新サービスが行われる。
また、これに限らず、書き込み装置90は、無線インターネット装置を含むものであってもよい。この場合、書き込み装置90は、車両に搭載され、常時外部通信線Xに接続されている。そして、自動車メーカーが運営する情報サーバからインターネット及び無線通信網を介して書き込み装置90に更新プログラムが提供される。書き込み装置90は、更新プログラムを受信すると、受信した更新プログラムに基づいて自動的にプログラムの更新を行う。
なお、情報処理システム1と、書き込み装置90を併せたものが、特許請求の範囲における車両制御用プログラム管理システムに相当する。
[処理の流れ]
以下、書き込み装置90によって各情報処理装置の実行プログラム(以下、必要に応じて、図面等においてアプリケーション・プログラム、アプリ等と表記する)が更新される際の処理の流れについて説明する。
以下、書き込み装置90によって各情報処理装置の実行プログラム(以下、必要に応じて、図面等においてアプリケーション・プログラム、アプリ等と表記する)が更新される際の処理の流れについて説明する。
(全体の処理)
図2は、本実施例の情報処理システム1が、各情報処理装置の実行プログラムを更新する際に実行する処理の流れを示すフローチャートである。本フローは、情報処理システム1と書き込み装置90の協働によって実行される。
図2は、本実施例の情報処理システム1が、各情報処理装置の実行プログラムを更新する際に実行する処理の流れを示すフローチャートである。本フローは、情報処理システム1と書き込み装置90の協働によって実行される。
まず、変数nの初期値を1とする(S100)。
そして、情報処理装置#nを介して情報処理装置#n1の実行プログラムを書き換え(S102)、変数nを1増加させる(S104)。そして、変数nが9を超えたらこれらの処理を終了する(S106)。
次に、変数nの初期値を再度1とする(S110)。
そして、情報処理装置#nを介して情報処理装置#n2の実行プログラムを書き換え(S112)、変数nを1増加させる(S114)。そして、変数nが9を超えたらこれらの処理を終了する(S116)。
次に、変数nの初期値を再度1とする(S120)。
そして、情報処理装置#nの実行プログラムを書き換え(S122)、変数nを1増加させる(S124)。そして、変数nが9を超えたらこれらの処理を終了する(S126)。
係るフローにおいて、変数nは、例えば書き込み装置90内部のレジスタ等において設定される。そして、「情報処理装置#nを介して情報処理装置#n1の実行プログラムを書き換える」という処理は、例えば、書き込み装置90が情報処理装置#nのアドレスを指定して、情報処理装置#n1の実行プログラムであるラベルを付したデータを外部通信バスXに出力することによって実現される。
(情報処理装置#nの処理)
図3は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#nが実行する処理の流れを示すフローチャートである。
図3は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#nが実行する処理の流れを示すフローチャートである。
まず、情報処理装置#nは、高速通信装置12を用いて(外部通信バスXを介して)、情報処理装置#n1用のブートプログラム及び更新プログラムを受信する(S200)。
次に、受信した情報処理装置#n1用のブートプログラム及び更新プログラムをMRAM16に書き込む(S202)。
そして、MRAM16に書き込まれた情報処理装置#n1用の更新プログラムを、通信装置14を用いて(ローカル通信バスYnを介して)、情報処理装置#n1に送信する(S204)。
更に、情報処理装置#nは、高速通信装置12を用いて(外部通信バスXを介して)、情報処理装置#n2用のブートプログラム及び更新プログラムを受信する(S210)。係る処理に先立って、情報処理装置#n1用の更新プログラムの処理を終了したことを示す通知を書き込み装置90に送信してもよい。
次に、受信した情報処理装置#n2用のブートプログラム及び更新プログラムをMRAM16に書き込む(S212)。
そして、MRAM16に書き込まれた情報処理装置#n2用の更新プログラムを、通信装置14を用いて(ローカル通信バスYnを介して)、情報処理装置#n2に送信する(S214)。
更に、情報処理装置#nは、高速通信装置12を用いて(外部通信バスXを介して)、情報処理装置#n用の更新プログラムを受信し(S220)、MRAM16に書き込む(S222)。
(情報処理装置#nknの処理)
図4は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#nknが実行する処理の流れを示すフローチャートである。
図4は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#nknが実行する処理の流れを示すフローチャートである。
まず、情報処理装置#nknは、情報処理装置#nから更新プログラムを受信する(S300)。受信した更新プログラムは、SRAM34に書き込まれる(S302)。
次に、SRAM34に書き込んだ更新プログラムをフラッシュメモリ36に書き込み(S304)、読み出しデータとの比較を行う(S306;ベリファイ処理)。読み出しデータと書き込みデータが一致しなければ、再度S304以下の処理を実行する(S308)。
そして、全データを書き込み完了した後に、本フローを終了する(S310)。
(MRAM16の記憶データ推移)
図5は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#nが有するMRAM16に記憶されるデータの推移を示す図である。図示するように、実行プログラム更新前の状態(1)において、MRAM16には情報処理装置#nの旧実行プログラム(アプリケーション)及び情報処理装置#nのブートプログラムが記憶されている。情報処理装置#nは、これらのデータを読み出して種々の情報処理を行っている。
図5は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#nが有するMRAM16に記憶されるデータの推移を示す図である。図示するように、実行プログラム更新前の状態(1)において、MRAM16には情報処理装置#nの旧実行プログラム(アプリケーション)及び情報処理装置#nのブートプログラムが記憶されている。情報処理装置#nは、これらのデータを読み出して種々の情報処理を行っている。
実行プログラムの更新が開始された後の状態(2)において、MRAM16には情報処理装置#n1の実行プログラム(アプリケーション)及びブートプログラムと、情報処理装置#nのブートプログラムが記憶されている。
更に、実行プログラムの更新が開始された後の状態(3)において、MRAM16には情報処理装置#n2の実行プログラム(アプリケーション)及びブートプログラムと、情報処理装置#nのブートプログラムが記憶されている。
そして、実行プログラムの更新が終了した後の状態(4)において、MRAM16には情報処理装置#nの新たな実行プログラム(アプリケーション)及び情報処理装置#nのブートプログラムが記憶されている。情報処理装置#nは、これらのデータを読み出して種々の情報処理を行う。
(タイミングチャート)
図6は、各情報処理装置の実行プログラムを更新する際における、外部通信バスXによって伝送されるデータ、情報処理装置#1のCPU10が実行する処理、ローカル通信バスY1によって伝送されるデータ、情報処理装置#11のCPU10が実行する処理、及び情報処理装置#12のCPU10が実行する処理の変化を示すタイミングチャートである。
図6は、各情報処理装置の実行プログラムを更新する際における、外部通信バスXによって伝送されるデータ、情報処理装置#1のCPU10が実行する処理、ローカル通信バスY1によって伝送されるデータ、情報処理装置#11のCPU10が実行する処理、及び情報処理装置#12のCPU10が実行する処理の変化を示すタイミングチャートである。
図示するように、情報処理装置#1のCPU10は、外部通信バスXを介して情報処理装置#11のブートプログラムが入力されると、これをMRAM16に書き込み、実行する。
情報処理装置#11のブートプログラムが実行されると、外部通信バスXを介してMRAM16に書き込まれた情報処理装置#11の実行プログラムが、ローカル通信バスY1に出力される。なお、MRAM16の入力バスと出力バスを別系統にし、実行プログラムがブロック単位で区分されていれば、書き込みと読み出しを並行して行うことが可能となる。
情報処理装置#11のCPU10は、ローカル通信バスY1を介して入力された実行プログラムによってフラッシュメモリ36を更新し、更新が終了するとローカル通信バスY1に完了通知を出力する。完了通知を受信した情報処理装置#1のCPU10は、情報処理装置#11の実行プログラムに関する更新完了通知を外部通信バスXに出力する。
外部通信バスXを介して情報処理装置#11の実行プログラムに関する更新完了通知を受信した書き込み装置90は、情報処理装置#12のブートプログラムを外部通信バスXに出力する。以下、情報処理装置#11に関する更新処理と同様の処理が実行される。
そして、情報処理装置#12に関する更新処理が終了すると、書き込み装置90は、情報処理装置#1の実行プログラムを外部通信バスXに出力する。情報処理装置#1のCPU10は、入力された実行プログラムによってMRAM16を更新し、完了通知を外部通信バスXに出力する。
なお、書き込み装置90から外部通信バスXを介して情報処理装置#11の実行プログラムが情報処理装置#1に入力された後、情報処理装置#12のブートプログラムが情報処理装置#1に入力されるまでの間に、情報処理装置#21や情報処理装置#31の実行プログラムを情報処理装置#2や情報処理装置#3に伝送してもよい。
以上説明した本実施例の情報処理システム1によれば、情報処理装置#nknの実行プログラムを更新する際に、MRAM16をバッファとして用いているため、書き込み装置90からの情報転送を高速に行うことができる。また、情報処理装置#nknにおいてはプログラムメモリとしてフラッシュメモリを採用しているため、コストの増大や信頼性の低下を抑制することができる。
従って、信頼性の低下とコストの増大を抑制しつつ、複数の情報処理装置の実行プログラムの更新を高速に行うことができる。
<第2実施例>
以下、図面を参照し、本発明の第2実施例に係る情報処理システム2について説明する。情報処理システム2は、互いに通信可能な複数の情報処理装置を有するシステムである。また、情報処理システム2は、車両に搭載され、種々の車載機器制御を行う車載制御システム等に好適に適用される。
以下、図面を参照し、本発明の第2実施例に係る情報処理システム2について説明する。情報処理システム2は、互いに通信可能な複数の情報処理装置を有するシステムである。また、情報処理システム2は、車両に搭載され、種々の車載機器制御を行う車載制御システム等に好適に適用される。
[構成]
図7は、本発明の第2実施例に係る情報処理システム2のシステム構成例である。情報処理システム2は、主要な構成として、情報処理装置#nと(n=1〜9)、これらに接続された情報処理装置#nknと(kn=1〜2)、を備える。なお、これらの情報処理装置の個数及び接続関係についてはあくまで一例であり、本発明の適用上、特段の制限はない。例えばknは1〜2であるものとするが、1であってもよいし、3以上であってもよい。また、nが9であることも単なる一例である。
図7は、本発明の第2実施例に係る情報処理システム2のシステム構成例である。情報処理システム2は、主要な構成として、情報処理装置#nと(n=1〜9)、これらに接続された情報処理装置#nknと(kn=1〜2)、を備える。なお、これらの情報処理装置の個数及び接続関係についてはあくまで一例であり、本発明の適用上、特段の制限はない。例えばknは1〜2であるものとするが、1であってもよいし、3以上であってもよい。また、nが9であることも単なる一例である。
情報処理装置#1〜#9は、それぞれ、CPU10と、高速通信装置12と、通信装置14と、MRAM(Magnetoresistive Random Access Memory)16と、書き込み装置90から入力された圧縮データを伸長するデータ伸長部18(CPU10の一機能であってもよい)と、を有するMCU(Micro Control Unit)として構成される。なお、ここではいずれの情報処理装置であるかを示す符号(#n)は省略している。
また、情報処理装置#1k1〜#9k9は、それぞれCPU30と、通信装置32と、SRAM(Static Random Access Memory)34と、フラッシュメモリ36と、を有するMCUとして構成される。なお、ここではいずれの情報処理装置であるかを示す符号(#nkn)は省略している。
各情報処理装置の接続関係や処理内容については第1実施例と同様であるため、説明を省略する。
書き込み装置90は、第1実施例で説明した構成に加え、送信データを圧縮するデータ圧縮部92を備える。そして、圧縮化された更新プログラム等を情報処理システム2に送信する。
書き込み装置90は、情報処理システム2が車載制御システムである場合、例えばディーラー店や修理店に設置されるコンピュータ装置である。また、これに限らず、書き込み装置90は、無線インターネット装置を含むものであってもよい。
なお、情報処理システム2と、書き込み装置90を併せたものが、特許請求の範囲における車両制御用プログラム管理システムに相当する。
[処理の流れ]
以下、書き込み装置90によって各情報処理装置の実行プログラム(以下、必要に応じて、図面等においてアプリケーション・プログラム、アプリ等と表記する)が更新される際の処理の流れについて説明する。
以下、書き込み装置90によって各情報処理装置の実行プログラム(以下、必要に応じて、図面等においてアプリケーション・プログラム、アプリ等と表記する)が更新される際の処理の流れについて説明する。
(全体の処理)
図8は、本実施例の情報処理システム2が、各情報処理装置の実行プログラムを更新する際に実行する処理の流れを示すフローチャートである。本フローは、情報処理システム2と書き込み装置90の協働によって実行される。
図8は、本実施例の情報処理システム2が、各情報処理装置の実行プログラムを更新する際に実行する処理の流れを示すフローチャートである。本フローは、情報処理システム2と書き込み装置90の協働によって実行される。
まず、書き込み装置90は、送信するデータが圧縮データでない場合、データを圧縮する処理を行う(S400、S402)。
次に、変数nの初期値を1とする(S410)。
そして、情報処理装置#nを介して情報処理装置#n1の実行プログラムを書き換え(S412)、変数nを1増加させる(S414)。そして、変数nが9を超えたらこれらの処理を終了する(S416)。
次に、変数nの初期値を再度1とする(S420)。
そして、情報処理装置#nを介して情報処理装置#n2の実行プログラムを書き換え(S422)、変数nを1増加させる(S424)。そして、変数nが9を超えたらこれらの処理を終了する(S426)。
次に、変数nの初期値を再度1とする(S430)。
そして、情報処理装置#nの実行プログラムを書き換え(S432)、変数nを1増加させる(S434)。そして、変数nが9を超えたらこれらの処理を終了する(S436)。
係るフローにおいて、変数nは、例えば書き込み装置90内部のレジスタ等において設定される。そして、「情報処理装置#nを介して情報処理装置#n1の実行プログラムを書き換える」という処理は、例えば、書き込み装置90が情報処理装置#nのアドレスを指定して、情報処理装置#n1の実行プログラムであるラベルを付したデータを外部通信バスXに出力することによって実現される。
(情報処理装置#nの処理)
図9は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#nが実行する処理の流れを示すフローチャートである。
図9は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#nが実行する処理の流れを示すフローチャートである。
まず、情報処理装置#nは、高速通信装置12を用いて(外部通信バスXを介して)、情報処理装置#n1用のブートプログラム及び更新プログラムを受信する(S500)。
次に、受信した情報処理装置#n1用のブートプログラム及び更新プログラムをMRAM16に書き込む(S502)。
更に、情報処理装置#nは、高速通信装置12を用いて(外部通信バスXを介して)、情報処理装置#n2用のブートプログラム及び更新プログラムを受信する(S504)。
次に、受信した情報処理装置#n2用のブートプログラム及び更新プログラムをMRAM16に書き込む(S506)。
そして、MRAM16に書き込まれた情報処理装置#n1用の更新プログラムを伸長しながら、通信装置14を用いて(ローカル通信バスYnを介して)、情報処理装置#n1に送信する(S510)。
ここで、更新プログラムは、圧縮データとしてMRAM16に保管されているが、ブロック毎に伸長され、バッファレジスタに一時的に格納されてからローカル通信バスYnに出力される。情報処理装置#nのデータ伸長部18は、バッファレジスタからローカル通信バスYnにブロック単位の更新プログラムが出力されたのを確認してから、次のブロックの更新プログラムを伸長してバッファレジスタに格納する。
なお、これに限らず、S502及びS506において更新プログラムをMRAM16に保管する前にデータ伸長を行い、伸長された状態で更新プログラムをMRAM16に保管するものとしてもよい。この場合、S510の処理や後述のS512の処理は、伸長しながら送信するのではなく、単に送信するものとなる。
次に、MRAM16に書き込まれた情報処理装置#n2用の更新プログラムを伸長しながら、通信装置14を用いて(ローカル通信バスYnを介して)、情報処理装置#n2に送信する(S512)。
なお、S500〜S512の処理は、後に図12で説明するように、ブロック単位で順序を入れ替えながら実行されてもよい。
更に、情報処理装置#nは、高速通信装置12を用いて(外部通信バスXを介して)、情報処理装置#n用の更新プログラムを受信し(S520)、MRAM16に書き込む(S522)。
(情報処理装置#nknの処理)
図10は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#nknが実行する処理の流れを示すフローチャートである。
図10は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#nknが実行する処理の流れを示すフローチャートである。
まず、情報処理装置#nknは、情報処理装置#nから更新プログラムを受信する(S600)。受信した更新プログラムは、SRAM34に書き込まれる(S602)。
次に、SRAM34に書き込んだ更新プログラムをフラッシュメモリ36に書き込み(S604)、読み出しデータとの比較を行う(S606;ベリファイ処理)。読み出しデータと書き込みデータが一致しなければ、再度S604以下の処理を実行する(S608)。
そして、全データを書き込み完了した後に、本フローを終了する(S610)。
(MRAM16の記憶データ推移)
図11は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#1が有するMRAM16に記憶されるデータの推移を示す図である。図示するように、実行プログラム更新前の状態(1)において、MRAM16には情報処理装置#1の旧実行プログラム(アプリケーション)及び情報処理装置#1のブートプログラムが記憶されている。情報処理装置#1は、これらのデータを読み出して種々の情報処理を行っている。
図11は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#1が有するMRAM16に記憶されるデータの推移を示す図である。図示するように、実行プログラム更新前の状態(1)において、MRAM16には情報処理装置#1の旧実行プログラム(アプリケーション)及び情報処理装置#1のブートプログラムが記憶されている。情報処理装置#1は、これらのデータを読み出して種々の情報処理を行っている。
実行プログラムの更新が開始された後の状態(2)において、MRAM16には情報処理装置#11の実行プログラム(アプリケーション)及びブートプログラムと、情報処理装置#12の実行プログラム(アプリケーション)及びブートプログラムと、情報処理装置#1のブートプログラムが記憶されている。
そして、実行プログラムの更新が終了した後の状態(3)において、MRAM16には情報処理装置#1の新たな実行プログラム(アプリケーション)及び情報処理装置#1のブートプログラムが記憶されている。情報処理装置#1は、これらのデータを読み出して種々の情報処理を行う。
このように、第2実施例の情報処理システム2では、書き込み装置90から圧縮データを受信するため、複数の情報処理装置のための実行プログラム及びブートプログラムをMRAM16に格納しうる。このため、書き込み装置90との通信時間の低減を図ることができる。
(タイミングチャート)
図12は、各情報処理装置の実行プログラムを更新する際における、外部通信バスXによって伝送されるデータ、情報処理装置#1のCPU10が実行する処理、ローカル通信バスY1によって伝送されるデータ、情報処理装置#11のCPU10が実行する処理、及び情報処理装置#12のCPU10が実行する処理の変化を示すタイミングチャートである。
図12は、各情報処理装置の実行プログラムを更新する際における、外部通信バスXによって伝送されるデータ、情報処理装置#1のCPU10が実行する処理、ローカル通信バスY1によって伝送されるデータ、情報処理装置#11のCPU10が実行する処理、及び情報処理装置#12のCPU10が実行する処理の変化を示すタイミングチャートである。
図示するように、情報処理装置#1のCPU10及びデータ伸長部18は、外部通信バスXを介して情報処理装置#11及び12のブートプログラムが入力されると、これをMRAM16に書き込む。そして、情報処理装置#11及び12のブートプログラムを実行する。
情報処理装置#11及び12のブートプログラムが実行されると、外部通信バスXを介してMRAM16に書き込まれた情報処理装置#11及び12の実行プログラムが、ブロック単位で伸長されて、ローカル通信バスY1に出力される。ここで、MRAM16の入力バスと出力バスを別系統にし、実行プログラムがブロック単位で区分されていれば、書き込みと読み出しを並行して行うことが可能となる。
なお、前述のように、更新プログラムをMRAM16に保管する前にデータ伸長を行い、伸長された状態で更新プログラムをMRAM16に保管する場合、MRAM16に書き込まれた更新プログラムは、伸長する手順を行うことなくローカル通信バスY1に出力される。
情報処理装置#11のCPU10は、ローカル通信バスY1を介して入力された実行プログラムによってフラッシュメモリ36を更新し、更新が終了するとローカル通信バスY1に完了通知を出力する。完了通知を受信した情報処理装置#1のCPU10は、情報処理装置#11の実行プログラムに関する更新完了通知を外部通信バスXに出力する。
情報処理装置#12のCPU10は、ローカル通信バスY1を介して入力された実行プログラムによってフラッシュメモリ36を更新し、更新が終了するとローカル通信バスY1に完了通知を出力する。完了通知を受信した情報処理装置#1のCPU10は、情報処理装置#12の実行プログラムに関する更新完了通知を外部通信バスXに出力する。
外部通信バスXを介して情報処理装置#11及び12の実行プログラムに関する更新完了通知を受信した書き込み装置90は、情報処理装置#1の実行プログラムを外部通信バスXに出力する。情報処理装置#1のCPU10は、入力された実行プログラムによってMRAM16を更新し、完了通知を外部通信バスXに出力する。
なお、書き込み装置90から外部通信バスXを介して情報処理装置#11の実行プログラムが情報処理装置#1に入力された後、情報処理装置#12のブートプログラムが情報処理装置#1に入力されるまでの間に、情報処理装置#21や情報処理装置#31の実行プログラムを情報処理装置#2や情報処理装置#3に伝送してもよい。
以上説明した本実施例の情報処理システム2によれば、第1実施例と同様、情報処理装置#nknの実行プログラムを更新する際に、MRAM16をバッファとして用いているため、書き込み装置90からの情報転送を高速に行うことができる。また、情報処理装置#nknにおいてはプログラムメモリとしてフラッシュメモリを採用しているため、コストの増大や信頼性の低下を抑制することができる。
従って、信頼性の低下とコストの増大を抑制しつつ、複数の情報処理装置の実行プログラムの更新を高速に行うことができる。
また、第1実施例に比して、圧縮データを受信するため、書き込み装置90との通信時間の低減を図ることができる。
<第3実施例>
以下、図面を参照し、本発明の第3実施例に係る情報処理システム3について説明する。情報処理システム3は、互いに通信可能な複数の情報処理装置を有するシステムである。また、情報処理システム3は、車両に搭載され、種々の車載機器制御を行う車載制御システム等に好適に適用される。
以下、図面を参照し、本発明の第3実施例に係る情報処理システム3について説明する。情報処理システム3は、互いに通信可能な複数の情報処理装置を有するシステムである。また、情報処理システム3は、車両に搭載され、種々の車載機器制御を行う車載制御システム等に好適に適用される。
[構成]
図13は、本発明の第3実施例に係る情報処理システム3のシステム構成例である。情報処理システム3は、主要な構成として、情報処理装置#nと(n=1〜9)、これらに接続された情報処理装置#nknと(kn=1〜2)、を備える。なお、これらの情報処理装置の個数及び接続関係についてはあくまで一例であり、本発明の適用上、特段の制限はない。例えばknは1〜2であるものとするが、1であってもよいし、3以上であってもよい。また、nが9であることも単なる一例である。
図13は、本発明の第3実施例に係る情報処理システム3のシステム構成例である。情報処理システム3は、主要な構成として、情報処理装置#nと(n=1〜9)、これらに接続された情報処理装置#nknと(kn=1〜2)、を備える。なお、これらの情報処理装置の個数及び接続関係についてはあくまで一例であり、本発明の適用上、特段の制限はない。例えばknは1〜2であるものとするが、1であってもよいし、3以上であってもよい。また、nが9であることも単なる一例である。
情報処理装置#1〜#9は、それぞれ、CPU10と、高速通信装置12と、通信装置14と、MRAM(Magnetoresistive Random Access Memory)16と、書き込み装置90から入力された圧縮データを伸長するデータ伸長部18及び暗号化データを復号するデータ復号部20(これらはCPU10の一機能であってもよい)と、を有するMCU(Micro Control Unit)として構成される。なお、ここではいずれの情報処理装置であるかを示す符号(#n)は省略している。
また、情報処理装置#1k1〜#9k9は、それぞれCPU30と、通信装置32と、SRAM(Static Random Access Memory)34と、フラッシュメモリ36と、を有するMCUとして構成される。なお、ここではいずれの情報処理装置であるかを示す符号(#nkn)は省略している。
各情報処理装置の接続関係や処理内容については第1実施例及び第2実施例と同様であるため、説明を省略する。
書き込み装置90は、第2実施例で説明した構成に加え、送信データを暗号化するデータ暗号化部94を備える。そして、圧縮及び暗号化された更新プログラム等を情報処理システム3に送信する。
書き込み装置90は、情報処理システム3が車載制御システムである場合、例えばディーラー店や修理店に設置されるコンピュータ装置である。また、これに限らず、書き込み装置90は、無線インターネット装置を含むものであってもよい。
なお、情報処理システム3と、書き込み装置90を併せたものが、特許請求の範囲における車両制御用プログラム管理システムに相当する。
[処理の流れ]
以下、書き込み装置90によって各情報処理装置の実行プログラム(以下、必要に応じて、図面等においてアプリケーション・プログラム、アプリ等と表記する)が更新される際の処理の流れについて説明する。
以下、書き込み装置90によって各情報処理装置の実行プログラム(以下、必要に応じて、図面等においてアプリケーション・プログラム、アプリ等と表記する)が更新される際の処理の流れについて説明する。
(全体の処理)
図14は、本実施例の情報処理システム3が、各情報処理装置の実行プログラムを更新する際に実行する処理の流れを示すフローチャートである。本フローは、情報処理システム3と書き込み装置90の協働によって実行される。
図14は、本実施例の情報処理システム3が、各情報処理装置の実行プログラムを更新する際に実行する処理の流れを示すフローチャートである。本フローは、情報処理システム3と書き込み装置90の協働によって実行される。
まず、書き込み装置90は、送信するデータが圧縮データでない場合、データを圧縮する処理を行う(S700、S702)。
また、送信するデータが暗号化されていない場合、データを暗号化する処理を行う(S704、S706)。
次に、変数nの初期値を1とする(S710)。
そして、情報処理装置#nを介して情報処理装置#n1の実行プログラムを書き換え(S712)、変数nを1増加させる(S714)。そして、変数nが9を超えたらこれらの処理を終了する(S716)。
次に、変数nの初期値を再度1とする(S718)。
そして、情報処理装置#nを介して情報処理装置#n2の実行プログラムを書き換え(S720)、変数nを1増加させる(S722)。そして、変数nが9を超えたらこれらの処理を終了する(S724)。
次に、変数nの初期値を再度1とする(S730)。
そして、情報処理装置#nの実行プログラムを書き換え(S732)、変数nを1増加させる(S734)。そして、変数nが9を超えたらこれらの処理を終了する(S736)。
係るフローにおいて、変数nは、例えば書き込み装置90内部のレジスタ等において設定される。そして、「情報処理装置#nを介して情報処理装置#n1の実行プログラムを書き換える」という処理は、例えば、書き込み装置90が情報処理装置#nのアドレスを指定して、情報処理装置#n1の実行プログラムであるラベルを付したデータを外部通信バスXに出力することによって実現される。
(情報処理装置#nの処理)
図15は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#nが実行する処理の流れを示すフローチャートである。
図15は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#nが実行する処理の流れを示すフローチャートである。
まず、情報処理装置#nは、高速通信装置12を用いて(外部通信バスXを介して)、情報処理装置#n1用のブートプログラム及び更新プログラムを受信する(S800)。
次に、受信した情報処理装置#n1用のブートプログラム及び更新プログラムをMRAM16に書き込む(S802)。
更に、情報処理装置#nは、高速通信装置12を用いて(外部通信バスXを介して)、情報処理装置#n2用のブートプログラム及び更新プログラムを受信する(S804)。
次に、受信した情報処理装置#n2用のブートプログラム及び更新プログラムをMRAM16に書き込む(S806)。
そして、MRAM16に書き込まれた情報処理装置#n1用の更新プログラムを復号及び伸長しながら(いずれが先でも構わない)、通信装置14を用いて(ローカル通信バスYnを介して)、情報処理装置#n1に送信する(S810)。
ここで、更新プログラムはブロック毎に復号及び伸長され、バッファレジスタに一時的に格納されてからローカル通信バスYnに出力される。情報処理装置#nのデータ伸長部18及びデータ復号部20は、バッファレジスタからローカル通信バスYnにブロック単位の更新プログラムが出力されたのを確認してから、次のブロックの更新プログラムを復号及び伸長してバッファレジスタに格納する。
次に、MRAM16に書き込まれた情報処理装置#n2用の更新プログラムを伸長しながら、通信装置14を用いて(ローカル通信バスYnを介して)、情報処理装置#n2に送信する(S812)。
なお、S800〜S812の処理は、後に図18で説明するように、ブロック単位で順序を入れ替えながら実行されてもよい。
更に、情報処理装置#nは、高速通信装置12を用いて(外部通信バスXを介して)、情報処理装置#n用の更新プログラムを受信し(S820)、MRAM16に書き込む(S822)。
(情報処理装置#nknの処理)
図16は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#nknが実行する処理の流れを示すフローチャートである。
図16は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#nknが実行する処理の流れを示すフローチャートである。
まず、情報処理装置#nknは、情報処理装置#nから更新プログラムを受信する(S900)。受信した更新プログラムは、SRAM34に書き込まれる(S902)。
次に、SRAM34に書き込んだ更新プログラムをフラッシュメモリ36に書き込み(S904)、読み出しデータとの比較を行う(S906;ベリファイ処理)。読み出しデータと書き込みデータが一致しなければ、再度S904以下の処理を実行する(S908)。
そして、全データを書き込み完了した後に、本フローを終了する(S910)。
(MRAM16の記憶データ推移)
図17は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#1が有するMRAM16に記憶されるデータの推移を示す図である。図示するように、実行プログラム更新前の状態(1)において、MRAM16には情報処理装置#1の旧実行プログラム(アプリケーション)及び情報処理装置#1のブートプログラムが記憶されている。情報処理装置#1は、これらのデータを読み出して種々の情報処理を行っている。
図17は、各情報処理装置の実行プログラムを更新する際に、情報処理装置#1が有するMRAM16に記憶されるデータの推移を示す図である。図示するように、実行プログラム更新前の状態(1)において、MRAM16には情報処理装置#1の旧実行プログラム(アプリケーション)及び情報処理装置#1のブートプログラムが記憶されている。情報処理装置#1は、これらのデータを読み出して種々の情報処理を行っている。
実行プログラムの更新が開始された後の状態(2)において、MRAM16には情報処理装置#11の実行プログラム(アプリケーション)及びブートプログラムと、情報処理装置#12の実行プログラム(アプリケーション)及びブートプログラムと、情報処理装置#1のブートプログラムが記憶されている。
そして、実行プログラムの更新が終了した後の状態(3)において、MRAM16には情報処理装置#1の新たな実行プログラム(アプリケーション)及び情報処理装置#1のブートプログラムが記憶されている。情報処理装置#1は、これらのデータを読み出して種々の情報処理を行う。
このように、第3実施例の情報処理システム3では、書き込み装置90から圧縮されたデータを受信するため、複数の情報処理装置のための実行プログラム及びブートプログラムをMRAM16に格納しうる。このため、書き込み装置90との通信時間の低減を図ることができる。また、書き込み装置90から暗号化されたデータを受信するため、書き込み装置90との通信におけるセキュリティ性を高めることができる。
(タイミングチャート)
図18は、各情報処理装置の実行プログラムを更新する際における、外部通信バスXによって伝送されるデータ、情報処理装置#1のCPU10が実行する処理、ローカル通信バスY1によって伝送されるデータ、情報処理装置#11のCPU10が実行する処理、及び情報処理装置#12のCPU10が実行する処理の変化を示すタイミングチャートである。
図18は、各情報処理装置の実行プログラムを更新する際における、外部通信バスXによって伝送されるデータ、情報処理装置#1のCPU10が実行する処理、ローカル通信バスY1によって伝送されるデータ、情報処理装置#11のCPU10が実行する処理、及び情報処理装置#12のCPU10が実行する処理の変化を示すタイミングチャートである。
図示するように、情報処理装置#1のCPU10、データ伸長部18、及びデータ復号部20は、外部通信バスXを介して情報処理装置#11及び12のブートプログラムが入力されると、これを復号及び伸長してMRAM16に書き込む。そして、情報処理装置#11及び12のブートプログラムを実行する。
情報処理装置#11及び12のブートプログラムが実行されると、外部通信バスXを介してMRAM16に書き込まれた情報処理装置#11及び12の実行プログラムが、ブロック単位で復号及び伸長されて、ローカル通信バスY1に出力される。なお、MRAM16の入力バスと出力バスを別系統にし、実行プログラムがブロック単位で区分されていれば、書き込みと読み出しを並行して行うことが可能となる。
情報処理装置#11のCPU10は、ローカル通信バスY1を介して入力された実行プログラムによってフラッシュメモリ36を更新し、更新が終了するとローカル通信バスY1に完了通知を出力する。完了通知を受信した情報処理装置#1のCPU10は、情報処理装置#11の実行プログラムに関する更新完了通知を外部通信バスXに出力する。
情報処理装置#12のCPU10は、ローカル通信バスY1を介して入力された実行プログラムによってフラッシュメモリ36を更新し、更新が終了するとローカル通信バスY1に完了通知を出力する。完了通知を受信した情報処理装置#1のCPU10は、情報処理装置#12の実行プログラムに関する更新完了通知を外部通信バスXに出力する。
外部通信バスXを介して情報処理装置#11及び12の実行プログラムに関する更新完了通知を受信した書き込み装置90は、情報処理装置#1の実行プログラムを外部通信バスXに出力する。情報処理装置#1のCPU10は、入力された実行プログラムによってMRAM16を更新し、完了通知を外部通信バスXに出力する。
なお、書き込み装置90から外部通信バスXを介して情報処理装置#11の実行プログラムが情報処理装置#1に入力された後、情報処理装置#12のブートプログラムが情報処理装置#1に入力されるまでの間に、情報処理装置#21や情報処理装置#31の実行プログラムを情報処理装置#2や情報処理装置#3に伝送してもよい。
以上説明した本実施例の情報処理システム3によれば、第1実施例と同様、情報処理装置#nknの実行プログラムを更新する際に、MRAM16をバッファとして用いているため、書き込み装置90からの情報転送を高速に行うことができる。また、情報処理装置#nknにおいてはプログラムメモリとしてフラッシュメモリを採用しているため、コストの増大や信頼性の低下を抑制することができる。
従って、信頼性の低下とコストの増大を抑制しつつ、複数の情報処理装置の実行プログラムの更新を高速に行うことができる。
また、第1実施例に比して、圧縮及び暗号化されたデータを受信するため、書き込み装置90との通信時間の低減を図ることができ、係る通信におけるセキュリティ性を高めることができる。
なお、第3実施例において、更新プログラムをMRAM16に保管する前にデータ伸長及び復号を行い、伸長及び復号された状態で更新プログラムをMRAM16に保管するものとしてもよい。
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
例えば、書き込み装置90から単に暗号化されたデータを受信し、復号のみを行ってMRAM16やフラッシュメモリ36に格納するものであってもよい。
1、2、3 情報処理システム
10、30 CPU
12 高速通信装置
14、32 通信装置
16 MRAM
18 データ伸長部
20 データ復号部
34 SRAM
36 フラッシュメモリ
90 書き込み装置
92 データ圧縮部
94 データ暗号化部
#1等 情報処理装置
X 高速通信バス
Y1〜Y9 ローカル通信バス
10、30 CPU
12 高速通信装置
14、32 通信装置
16 MRAM
18 データ伸長部
20 データ復号部
34 SRAM
36 フラッシュメモリ
90 書き込み装置
92 データ圧縮部
94 データ暗号化部
#1等 情報処理装置
X 高速通信バス
Y1〜Y9 ローカル通信バス
Claims (10)
- プログラム記憶領域として磁気抵抗メモリ(MRAM)を有し、第1の通信速度で通信可能な第1の通信バスに接続された第1の情報処理装置と、
プログラム記憶領域として不揮発性メモリを有し、前記第1の通信速度に比して低い第2の通信速度で通信可能な第2の通信バスを介して前記第1の情報処理装置に接続された一以上の第2の情報処理装置と、を備え、
前記第2の情報処理装置の実行プログラムが更新される際に、
先ず外部から前記第1の通信バスを介して入力された更新プログラムを前記第1の情報処理装置が有する磁気抵抗メモリに格納し、該磁気抵抗メモリに格納された更新プログラムを前記第2の通信バスを介して前記第2の情報処理装置に出力することを特徴とする、
情報処理システム。 - 前記不揮発性メモリは、フラッシュメモリ又はEEPROM(Electrically Erasable and Programmable Read Only Memory)である、
請求項1に記載の情報処理システム。 - 前記第1の情報処理装置は、外部から入力された圧縮データを伸長するデータ伸長手段を備える、請求項1又は2に記載の情報処理システム。
- 前記第1の情報処理装置は、外部から入力された暗号化データを復号するデータ復号手段を備える、請求項1ないし3のいずれか1項に記載の情報処理システム。
- 車両に搭載され、前記第1の情報処理装置及び前記一以上の第2の情報処理装置は、車載機器の制御のための情報処理を行う、
請求項1ないし4のいずれか1項に記載の情報処理システム。 - 請求項5に記載の情報処理システムと、
前記第2の情報処理装置の実行プログラムを含むデータを前記第1の通信バスを介して前記第1の情報処理装置に出力する書き込み装置と、
を備える車両制御用プログラム管理システム。 - 前記書き込み装置は、車外設備に設置される、
請求項6に記載の車両制御用プログラム管理システム。 - プログラム記憶領域として磁気抵抗メモリ(MRAM)を有し、第1の通信速度で通信可能な第1の通信バスに接続された第1の情報処理装置と、プログラム記憶領域として不揮発性メモリを有し、前記第1の通信速度に比して低い第2の通信速度で通信可能な第2の通信バスを介して前記第1の情報処理装置に接続された一以上の第2の情報処理装置と、を備える情報処理システムのプログラム更新方法であって、
前記第2の情報処理装置の実行プログラムが更新される際に、
外部から前記第1の通信バスを介して入力された更新プログラムを前記第1の情報処理装置が有する磁気抵抗メモリに格納する第1のステップと、
該磁気抵抗メモリに格納された更新プログラムを前記第2の通信バスを介して前記第2の情報処理装置に出力する第2のステップと、
前記第2の情報処理装置に出力された更新プログラムを前記不揮発性メモリに格納する第3のステップと、
を実行することを特徴とする、情報処理システムのプログラム更新方法。 - 前記第2の情報処理装置は、圧縮データを伸長するデータ伸長手段を有し、
前記第1のステップにおいて、外部から前記第1の通信バスを介して圧縮データが入力され、
前記第2のステップは、前記磁気抵抗メモリに格納された、圧縮された更新プログラムを伸長して、前記第2の通信バスを介して前記第2の情報処理装置に出力するステップである、
請求項8に記載の情報処理システムのプログラム更新方法。 - 前記第2の情報処理装置は、暗号化データを復号するデータ復号手段を有し、
前記第1のステップにおいて、外部から前記第1の通信バスを介して暗号化データが入力され、
前記第2のステップは、前記磁気抵抗メモリに格納された、暗号化された更新プログラムを復号して、前記第2の通信バスを介して前記第2の情報処理装置に出力するステップである、
請求項8又は9に記載の情報処理システムのプログラム更新方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010082000A JP2011215771A (ja) | 2010-03-31 | 2010-03-31 | 情報処理システム、車両制御用プログラム管理システム、及び情報処理システムのプログラム更新方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010082000A JP2011215771A (ja) | 2010-03-31 | 2010-03-31 | 情報処理システム、車両制御用プログラム管理システム、及び情報処理システムのプログラム更新方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011215771A true JP2011215771A (ja) | 2011-10-27 |
Family
ID=44945447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010082000A Pending JP2011215771A (ja) | 2010-03-31 | 2010-03-31 | 情報処理システム、車両制御用プログラム管理システム、及び情報処理システムのプログラム更新方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011215771A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016012220A (ja) * | 2014-06-27 | 2016-01-21 | 株式会社デンソー | 電子制御装置及び電子制御装置に対する記憶内容の書き換えシステム |
KR20160128057A (ko) * | 2015-04-28 | 2016-11-07 | 현대오트론 주식회사 | 차량 리프로그래밍 시스템 및 방법 |
JP2021043843A (ja) * | 2019-09-13 | 2021-03-18 | 日立オートモティブシステムズ株式会社 | 転送装置、電子制御装置及びこれを製造する方法 |
-
2010
- 2010-03-31 JP JP2010082000A patent/JP2011215771A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016012220A (ja) * | 2014-06-27 | 2016-01-21 | 株式会社デンソー | 電子制御装置及び電子制御装置に対する記憶内容の書き換えシステム |
KR20160128057A (ko) * | 2015-04-28 | 2016-11-07 | 현대오트론 주식회사 | 차량 리프로그래밍 시스템 및 방법 |
KR101674410B1 (ko) | 2015-04-28 | 2016-11-09 | 현대오트론 주식회사 | 차량 리프로그래밍 시스템 및 방법 |
JP2021043843A (ja) * | 2019-09-13 | 2021-03-18 | 日立オートモティブシステムズ株式会社 | 転送装置、電子制御装置及びこれを製造する方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10649769B2 (en) | Vehicle-mounted control device, program writing device, program generating device and program | |
US10834207B2 (en) | System and method for updating software in an electronic device | |
WO2014148003A1 (ja) | 車載電子制御装置のプログラム書換システム及び車載中継装置 | |
JP5766921B2 (ja) | 車両のキーのユーザにナビゲーションサービスを提供するシステム、車両のキーのユーザにナビゲーションサービスを提供する方法、および、情報記録媒体 | |
JP6675271B2 (ja) | ゲートウェイ装置、車載ネットワークシステム及びファームウェア更新方法 | |
US20190057214A1 (en) | Update control device, terminal, and method of controlling | |
CN101517588B (zh) | 片上系统(soc)测试接口安全性 | |
CN101601028A (zh) | 主机和移动设备之间的任务的双向动态卸载 | |
WO2014098807A1 (en) | Schemes for signcryption | |
CN1941697B (zh) | 安全方法和系统及存储该方法的程序的计算机可读介质 | |
JP2018079768A (ja) | 更新データ保存システム | |
CN111240722B (zh) | 空中升级固件的方法及其所应用的终端、服务器及系统 | |
WO2018175925A1 (en) | Secure memory arrangements | |
JP6354566B2 (ja) | マイクロコンピュータ | |
JP2011215771A (ja) | 情報処理システム、車両制御用プログラム管理システム、及び情報処理システムのプログラム更新方法 | |
EP3680773A1 (en) | System and method for updating a computing device | |
WO2021147668A1 (zh) | 一种软件升级方法及设备 | |
JP4222404B2 (ja) | クライアント・サーバシステム | |
JP2008269395A (ja) | マルチメディアシステムおよびナビゲーションユニット端末 | |
US20190215559A1 (en) | Source device and method of transmitting content | |
WO2022130700A1 (ja) | 電子制御装置 | |
WO2020195034A1 (ja) | 車載更新装置、更新処理システム、更新処理方法及び処理プログラム | |
CN111142902A (zh) | 处理器的升级固件保护方法、装置及车辆 | |
EP2352094B1 (en) | Information updating device and integrated circuit thereof, information updating method, and recording device and integrated circuit thereof | |
CN114793227B (zh) | 车载软件下载方法、电子设备及计算机可读存储介质 |