JP2008165263A - データ処理装置及びデータ処理方法 - Google Patents
データ処理装置及びデータ処理方法 Download PDFInfo
- Publication number
- JP2008165263A JP2008165263A JP2006350462A JP2006350462A JP2008165263A JP 2008165263 A JP2008165263 A JP 2008165263A JP 2006350462 A JP2006350462 A JP 2006350462A JP 2006350462 A JP2006350462 A JP 2006350462A JP 2008165263 A JP2008165263 A JP 2008165263A
- Authority
- JP
- Japan
- Prior art keywords
- firmware
- identification information
- control unit
- logic circuit
- logic
- 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
Landscapes
- Stored Programmes (AREA)
Abstract
【課題】 安定な動作を確保しつつ、ファームウェアとPLDとを独立に書き換え可能なデータ処理技術を提供する。
【解決手段】 ファームウェアに従って動作する制御部12と、ファームウェアとは独立に論理回路を書き換え可能なPLD14と、を備えるデータ処理装置10におけるデータ処理方法であって、ファームウェアが制御可能な論理回路を表す制御識別情報を制御部12に保持するステップと、PLD14に書き込まれた論理回路の識別情報をPLD14にに保持するステップと、制御識別情報と識別情報とを比較し、比較結果に基づいて制御部12のファームウェアがPLD14の論理回路を制御可能か否か判別する判別ステップと、を備える。
【選択図】 図1
Description
本発明は、プログラム可能な論理デバイスを備えたデータ処理装置における技術に関する。
近年、技術の進歩とともに、機器内部で使用される回路が非常に複雑になり、内部回路を標準ロジックの組合せで構成した場合、非常に大きな回路数となり、それを実装する基板の面積が非常に大きくなってきた。これを解決するために、ASIC(Application Specific Integrated Circuit)といった必要な機能を実現するロジックを組み合わせた回路を1つのマスク化して集積回路として内部に納めたICが利用されてきた。
しかし、昨今の開発期間の短さ、機能の複雑さは、開発最終段階においても回路の変更が生じる可能性を発生させるに至った。これを解決するために、近年では、PLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)といった、内部に膨大なロジックエレメントを有し、それをプログラミングすることで、自由に希望する機能を実現できるような論理デバイスを使うことで、開発の最終段階での変更の発生にも対応しうる様になってきた。同様に、それらを制御したり、機器全体を制御するマイクロコンピュータ(以下、マイコンという)も、内部にフラッシュメモリを搭載する事で、開発の最終段階での内容変更にも自由に対応できるようになってきた。
マイコンに関しては、マーケットに出てからも、内部フラッシュメモリの書換えを行うことでファームウェアの更新(バージョンアップ)を行い、機能改善を行えるようになっている。ファームウェアのバージョンアップにおいては、現在のバージョンを識別させるためのバージョン番号を内部メモリ等に保持させ、これから更新しようとするバージョンの一致を確認してから書き換えを開始するという事で、不要な書換えは発生しない(例えば、特許文献1参照))。
また、PLDやFPGA(以下、論理デバイスと総称する)についても、マーケットに出てから書き換えられることがある。書き換えは、一般的に採用されているJTAG(Joint Test Action Group)規格に基づくインタフェースを使用して、外部から直接書き換えるのが一般的である(例えば、特許文献2参照)。
ここで、マイコンのファームウェアと論理デバイスの回路とは、いつも同時に変更されるものではなく、何れか一方のみが変更される場合が多々ある。しかしながら、論理デバイスはその動作が、マイコンによって制御される対象であるため、回路が書き換えられた論理デバイスは、制御するマイコンのファームウェアのバージョンによっては、正しく動作しない可能性がある。このため、それを回避するためには、論理デバイスを書き換える際に本来は書き換えなくても良いマイコンのファームウェアも併せて常に書き換えなければならないという事態になり、書換えにかかる時間が非常に長くなってしまう。本発明は、上記従来技術における不都合を解決することを目的とする。
上記目的を達成するため、本発明の第1の態様におけるデータ処理装置は、
ファームウェアに従って動作し、前記ファームウェアが制御可能な論理回路を表す制御識別情報を保持する制御部と、
前記ファームウェアとは独立に論理回路を書き換え可能であって、書き込まれた論理回路の識別情報を保持する論理デバイスと、を備え、
前記制御部は、前記論理デバイスに前記制御識別情報を送り、前記制御識別情報と前記識別情報とを比較した結果を前記論理デバイスから受け取り、前記比較結果に基づいて前記制御部のファームウェアが前記論理デバイスの論理回路を制御可能か否か判別する。
ファームウェアに従って動作し、前記ファームウェアが制御可能な論理回路を表す制御識別情報を保持する制御部と、
前記ファームウェアとは独立に論理回路を書き換え可能であって、書き込まれた論理回路の識別情報を保持する論理デバイスと、を備え、
前記制御部は、前記論理デバイスに前記制御識別情報を送り、前記制御識別情報と前記識別情報とを比較した結果を前記論理デバイスから受け取り、前記比較結果に基づいて前記制御部のファームウェアが前記論理デバイスの論理回路を制御可能か否か判別する。
上記構成の装置は、前記制御部が、ファームウェアが前記論理デバイスの論理回路を制御可能でないと判別したときに、その旨を表示する表示部をさらに備えてもよい。
上記目的を達成するため、本発明の第2の態様におけるデータ処理方法は、
ファームウェアに従って動作する制御部と、前記ファームウェアとは独立に論理回路を書き換え可能な論理デバイスと、を備えるデータ処理装置におけるデータ処理方法であって、
ファームウェアが制御可能な論理回路を表す制御識別情報を制御部に保持するステップと、
論理デバイスに書き込まれた論理回路の識別情報を前記論理デバイスに保持するステップと、
前記制御識別情報と前記識別情報とを比較し、比較結果に基づいて前記制御部のファームウェアが前記論理デバイスの論理回路を制御可能か否か判別する判別ステップと、
を備える。
ファームウェアに従って動作する制御部と、前記ファームウェアとは独立に論理回路を書き換え可能な論理デバイスと、を備えるデータ処理装置におけるデータ処理方法であって、
ファームウェアが制御可能な論理回路を表す制御識別情報を制御部に保持するステップと、
論理デバイスに書き込まれた論理回路の識別情報を前記論理デバイスに保持するステップと、
前記制御識別情報と前記識別情報とを比較し、比較結果に基づいて前記制御部のファームウェアが前記論理デバイスの論理回路を制御可能か否か判別する判別ステップと、
を備える。
前記判別ステップでは、前記論理デバイスに前記制御識別情報を送り、前記制御識別情報と前記識別情報とを比較した結果を前記論理デバイスから受け取り、前記比較結果に基づいて前記制御部のファームウェアが前記論理デバイスの論理回路を制御可能か否か判別する。
上記構成の方法は、ファームウェアが前記論理デバイスの論理回路を制御可能でないと判別したときに、その旨を表示するステップをさらに備えてもよい。
本発明によれば、安定な動作を確保しつつ、ファームウェアとPLDとを独立に書き換え可能なデータ処理技術が提供される。
本発明に係る実施の形態について、以下、図面を参照して詳細に説明する。なお、以下に示す実施の形態は一例であり、これに限定されない。
図1に本実施の形態にかかるデータ処理装置10のブロック図を示す。図1に示すデータ処理装置10は、制御部12と、PLD14と、制御部用インタフェース16と、PLD用インタフェース18と、を備える。
制御部12は、MPU(Micro Processing Unit)を備え、フラッシュROM20(Read Only Memory)に記憶されたファームウェアに基づいて、データ処理装置10の全体の制御を行う。制御部12のフラッシュROM20には、ファームウェア自体に加え、ファームウェアの属性情報(バージョン情報等)が保持されている。保持される属性情報には、以下で詳述するように、ファームウェアが制御可能な、すなわち、制御対象となる論理回路の情報(以下、「制御識別情報」という)が含まれる。
制御部用インタフェース16は、外部ネットワークと制御部12とを接続し、外部ネットワークから更新データの取得と書き換え開始指令を制御部12に送る。制御部12に送られた更新データは、好ましくは、図示しないバッファに一次記憶され、フラッシュROM20に書込まれる。外部ネットワークには、IEEE(Institute of Electrical and Electronic Engineers)1394、USB(Universal Serial Bus)、インターネット回線等を用いることができる。なお、理解を容易なものとするため便宜的に、本実施の形態においては、ファームウェアについては「更新」を用い、論理回路については「書き換え」との語を用いて区別するものとする。
PLD14は、データ処理装置10の動作に必要な論理回路が書き込まれ、制御部12の制御の下で所定の信号処理を行う。なお、本明細書において、PLD14とは、FPGAやCPLD(Complex PLD)等を含む、書き換え(コンフィギュレーション)可能な論理デバイス全般をいう。
また、PLD14は、例えば、JTAG規格に準拠したJTAGポートを備え、外部から制御部12を介さずに直接論理回路の検査・書き換えが可能とされている。
また、PLD14は、例えば、JTAG規格に準拠したJTAGポートを備え、外部から制御部12を介さずに直接論理回路の検査・書き換えが可能とされている。
本実施の形態において、PLD14は、論理回路自体に加え、論理回路の属性情報(バージョン情報等)を保持している。PLD14に保持される属性情報には、以下で詳述するように、制御部12のファームウェアが制御可能な論理回路であることを示す情報(以下、「識別情報」という)が含まれる。
PLD用インタフェース18は、JTAGポートを介してPLD14と接続され、一方で、専用のPLD書き換えツールに接続可能とされている。PLD用インタフェース18に接続されたPLD書き換えツールを介して、PLD14の回路は書き換え可能となっている。
制御部12はPLD14と接続され、これを制御する。すなわち、制御部12のファームウェアは、制御可能なPLD14の論理回路を制御し、協同する。例えばバージョンが異なりファームウェアの制御可能でない論理回路がPLD14に書き込まれた場合、制御部12はPLD14が関与する機能については正常に動作しない。
制御部12は、ファームウェアがPLD14の論理回路が制御可能な否かを判別する。PLD14は、所定の機能を実現するための論理回路及びその識別情報を保持している他に、制御部12から送られた制御識別情報を自己が保持する識別情報と比較する比較回路を有する。比較回路の一例を図2に示す。PLD14に送られた制御識別情報は、比較回路24において論理回路の識別情報と比較され、一致したか否かの判別結果を制御部12に出力する。判別結果は、例えば「High」又は「Low」の電圧として制御部12に出力される。制御部12は、この出力に基づいて、PLD14の論理回路が制御部12のファームウェアで制御可能かどうかを判別する。
制御部12は、PLD14の論理回路がファームウェアによって制御可能でないと判別したときには、その旨の表示をするよう表示部22を制御する。
以下、本実施の形態にかかるデータ処理装置10における制御部12の動作について説明する。
まず、制御部12のファームウェアの更新を行う場合の動作フローを図3に示す。
操作者が図示しない操作パネル等から特殊なキー入力をする事で、更新モードに移行する(ステップS11)。更新モードにおいて、制御部用インタフェース16を介して新たなファームウェアのインストールが行われる。更新作業は、遠隔サーバからのオンライン作業であってもよく、オフライン作業であってもよい。更新作業が正常終了したとき、制御部12のファームウェアは更新(バージョンアップ)される(ステップS12、ステップS13)。更新作業が正常に終了しないときには、異常終了する。このとき、例えば、更新モードは強制終了し、通常動作に移行する。
操作者が図示しない操作パネル等から特殊なキー入力をする事で、更新モードに移行する(ステップS11)。更新モードにおいて、制御部用インタフェース16を介して新たなファームウェアのインストールが行われる。更新作業は、遠隔サーバからのオンライン作業であってもよく、オフライン作業であってもよい。更新作業が正常終了したとき、制御部12のファームウェアは更新(バージョンアップ)される(ステップS12、ステップS13)。更新作業が正常に終了しないときには、異常終了する。このとき、例えば、更新モードは強制終了し、通常動作に移行する。
ファームウェアの更新時、ファームウェアの属性情報も同時に更新され、ファームウェアが制御可能な論理回路を表す制御識別情報も新たなファームウェアに対応した情報に更新される。制御識別情報は、制御可能な論理回路の種類、バージョン毎に対応する複数の情報のテーブルであってもよく、制御可能であることを示す一種類のコードであってもよい。
ファームウェアの更新が正常に終わったとき、制御部12は、次いで、制御部12の制御識別情報とPLD14の識別情報とを比較する(ステップS14)。具体的には、制御部12は、更新されたファームウェアの制御識別情報をPLD14に送る。ここで、制御識別情報は、PLD14が解釈可能な形式に変換されてもよい。
PLD14に送られた制御識別情報は、論理回路の識別情報と比較され、一致したか否かの判別結果を制御部12に出力する。判別結果は、例えば「High」又は「Low」の電圧として制御部12に出力される。制御部12は、この出力に基づいて、PLD14の論理回路が制御部12のファームウェアで制御可能かどうかを判別する。判別は、制御識別情報の全てについて順次行われてもよく、いずれかの制御識別情報が識別情報と一致した旨の出力を受けたときに終了してもよい。
制御部12は、比較結果が一致したと判別した場合、その旨を表示部22に表示させ、更新モードを正常に終了する(ステップS15;YES、ステップS16)。比較結果を表示せずにモードを終了しても良い。
制御部12は、比較結果が一致しないと判別した場合、その旨を表示部22に表示させ、更新モードを異常終了する(ステップS15;NO、ステップS17)。更新作業をする者は、ファームウェアがPLD14の論理回路を制御できないことに気づき、例えば、ファームウェアの更新を中止する。
このように、本実施形態によれば、制御部12のファームウェアのみを更新する場合であっても、PLD14の論理回路との適合性を確認することができ、データ処理装置10の正常な動作は確実に確保される。
次に、PLD14の回路のみを書き換える場合の動作フローを図4に示す。
操作者が例えば専用のツールをPLD用インタフェース18に接続してPLD14の書き換えを行い、その後、データ処理装置10を起動し、ファームウェアを初期化する(ステップS21、22)。
操作者が例えば専用のツールをPLD用インタフェース18に接続してPLD14の書き換えを行い、その後、データ処理装置10を起動し、ファームウェアを初期化する(ステップS21、22)。
その後、制御部12は、上述したように、制御部12の制御識別情報とPLD14の識別情報とを比較する(ステップS23)。
制御部12は、比較結果が一致したと判別した場合、その旨を表示部22に表示させ、更新モードを正常に終了する(ステップS24;YES、ステップS25)。比較結果を表示せずにモードを終了しても良い。
制御部12は、比較結果が一致しないと判別した場合、その旨を表示部22に表示させ、更新モードを異常終了する(ステップS24;NO、ステップS26)。更新作業をする操作者は、ファームウェアがPLD14の論理回路を制御できないことに気づき、例えば、PLD14を先の内容に書き換えるか、対応するファームウェアに更新する。
このように、本実施形態によれば、PLD14の論理回路のみを書き換える場合であっても、制御部12のファームウェアとの適合性を確認することができ、データ処理装置10の正常な動作は確実に確保される。
以上説明したように、本実施の形態では、制御部12はファームウェアが制御可能な論理回路を表す制御識別情報を保持し、一方で、PLD14は自らに書き込まれた論理回路の識別情報を保持する。制御部12の制御識別情報と、PLD14の識別情報と、を比較することにより、制御部12のファームウェアがPLD14の論理回路を制御可能か否かを判別する。
これにより、制御部12のファームウェア更新とPLD14の書き換えとが別々で行われても、その対応を確認することなく動作させ、動作不良を招くといった事態を確実に防止できる。また、ファームウェアの更新とPLD14の書き換えを同時に行う必要がないため、不必要な書換えを避ける事ができる。
10:データ処理装置、12:制御部、14:PLD、16:制御部用インタフェース、18:PLD用インタフェース、22:表示部、24:比較回路
Claims (5)
- ファームウェアに従って動作し、前記ファームウェアが制御可能な論理回路を表す制御識別情報を保持する制御部と、
前記ファームウェアとは独立に論理回路を書き換え可能であって、書き込まれた論理回路の識別情報を保持する論理デバイスと、を備え、
前記制御部は、前記論理デバイスに前記制御識別情報を送り、前記制御識別情報と前記識別情報とを比較した結果を前記論理デバイスから受け取り、前記比較結果に基づいて前記制御部のファームウェアが前記論理デバイスの論理回路を制御可能か否か判別する、
ことを特徴とするデータ処理装置。 - 前記制御部が、ファームウェアが前記論理デバイスの論理回路を制御可能でないと判別したときに、その旨を表示する表示部をさらに備える、ことを特徴とする請求項1に記載のデータ処理装置。
- ファームウェアに従って動作する制御部と、前記ファームウェアとは独立に論理回路を書き換え可能な論理デバイスと、を備えるデータ処理装置におけるデータ処理方法であって、
ファームウェアが制御可能な論理回路を表す制御識別情報を制御部に保持するステップと、
論理デバイスに書き込まれた論理回路の識別情報を前記論理デバイスに保持するステップと、
前記制御識別情報と前記識別情報とを比較し、比較結果に基づいて前記制御部のファームウェアが前記論理デバイスの論理回路を制御可能か否か判別する判別ステップと、
を備える、ことを特徴とするデータ処理方法。 - 前記判別ステップでは、前記論理デバイスに前記制御識別情報を送り、前記制御識別情報と前記識別情報とを比較した結果を前記論理デバイスから受け取り、前記比較結果に基づいて前記制御部のファームウェアが前記論理デバイスの論理回路を制御可能か否か判別する、
ことを特徴とする請求項3に記載のデータ処理方法。 - ファームウェアが前記論理デバイスの論理回路を制御可能でないと判別したときに、その旨を表示するステップをさらに備える、ことを特徴とする請求項3又は4に記載のデータ処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006350462A JP2008165263A (ja) | 2006-12-26 | 2006-12-26 | データ処理装置及びデータ処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006350462A JP2008165263A (ja) | 2006-12-26 | 2006-12-26 | データ処理装置及びデータ処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008165263A true JP2008165263A (ja) | 2008-07-17 |
Family
ID=39694740
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006350462A Pending JP2008165263A (ja) | 2006-12-26 | 2006-12-26 | データ処理装置及びデータ処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008165263A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020101889A (ja) * | 2018-12-20 | 2020-07-02 | Nttエレクトロニクス株式会社 | モジュール及びこれを備える情報処理装置、並びにモジュールのプログラムデータを更新するプログラムデータ更新方法 |
-
2006
- 2006-12-26 JP JP2006350462A patent/JP2008165263A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020101889A (ja) * | 2018-12-20 | 2020-07-02 | Nttエレクトロニクス株式会社 | モジュール及びこれを備える情報処理装置、並びにモジュールのプログラムデータを更新するプログラムデータ更新方法 |
JP7281275B2 (ja) | 2018-12-20 | 2023-05-25 | Nttエレクトロニクス株式会社 | モジュール及びこれを備える情報処理装置、並びにモジュールのプログラムデータを更新するプログラムデータ更新方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2003345618A (ja) | 2以上のファームウェアイメージを切替える方法 | |
US7487344B2 (en) | Implementing a microprocessor boot configuration prom within an FPGA | |
EP3608775A1 (en) | Electronic control system | |
US20060156302A1 (en) | Control program download device | |
CN105120259A (zh) | 数字电视机检测方法及装置 | |
CN108121560A (zh) | 差分包升级方法、装置、终端及计算机可读存储介质 | |
CN114008984B (zh) | 计算机可读存储介质以及管理方法 | |
JP2012248031A (ja) | 電子機器、内視鏡装置及び電子機器のプログラムモジュール更新方法 | |
JP6520759B2 (ja) | プログラマブルコントローラ、プログラマブルコントローラの制御プログラム | |
CN108932134B (zh) | 服务器bios远程更新方法 | |
JP2005258996A (ja) | Fpgaのリモートメンテナンス方式 | |
JP2008165263A (ja) | データ処理装置及びデータ処理方法 | |
CN111694340B (zh) | 一种PSU BootLoader自动测试治具及方法 | |
US6604194B1 (en) | Program updating method and apparatus for communication terminal system | |
US20150212559A1 (en) | Electronic Apparatus Including Programmable Logic Circuit Device and Rewriting Method | |
WO2018139069A1 (ja) | 情報処理装置及び情報処理装置の制御方法 | |
JP2004274964A (ja) | 制御装置 | |
US20220179550A1 (en) | Development assistance device, method for controlling development assistance device, and recording media | |
JP5520720B2 (ja) | 通信装置および構成管理方法 | |
JP5624943B2 (ja) | 電子機器、及び電子機器のプログラムモジュール更新方法 | |
JP7281275B2 (ja) | モジュール及びこれを備える情報処理装置、並びにモジュールのプログラムデータを更新するプログラムデータ更新方法 | |
US10191875B2 (en) | Techniques of providing serial port in non-legacy system via embedded-system device | |
TW202013181A (zh) | 複雜可程式邏輯元件的韌體更新方法 | |
KR100651761B1 (ko) | 피엘씨 시스템용 모듈 교체 시스템 | |
KR100966999B1 (ko) | 플래시 메모리 업데이트 장치 및 방법 |