(57)【要約】【課題】装置の起動時及びリスタート時にFPGAに書き込まれるコンフィグレーションデータを間違いなく正確に準備できるようにする。【解決手段】本発明は、コンフィグレーションデータが書き込まれることで該データに対応したロジック回路を内部に形成するFPGAと、機種情報を格納した機種情報格納部と、ファームウエアプログラム及び内容が異なる複数のコンフィグレーションデータを格納したフラッシュROMと、前記ファームエアプログラムをロードして、前記機種情報を判断し、この機種情報に対応するコンフィグレーションデータを前記複数のコンフィグレーションデータ内から選択し、前記フィールド・プログラマブル・ゲート・アレイに転送し格納させるマイクロプロセッサを有する。【選択図】図１
2010266938.tif 000002
【特許請求の範囲】
【請求項１】
コンフィグレーションデータが書き込まれることで該データに対応したロジック回路を内部に形成するフィールド・プログラマブル・ゲート・アレイと、
機種情報を格納した機種情報格納部と、
ファームウエアプログラム及び内容が異なる複数のコンフィグレーションデータを格納したフラッシュROMと、
前記ファームエアプログラムをロードして、前記機種情報を判断し、この機種情報に対応するコンフィグレーションデータを前記複数のコンフィグレーションデータ内から選択し、前記フィールド・プログラマブル・ゲート・アレイに転送し格納させるマイクロプロセッサと
を有したことを特徴とするコンフィグレーション装置。
【請求項２】
さらに、前記マイクロプロセッサと前記フィールド・プログラマブル・ゲート・アレイとの間に設けられたプログラマブル・ロジック・デバイスと、
前記プログラマブル・ロジック・デバイスに接続され、1種類のコンフィグレーションデータを格納したプログラマブルROMと、
前記プログラマブル・ロジック・デバイスが、前記プログラマブルROM又は前記マイクロプロセッサのいずれか一方からのこのフィぐれションデータを前記フィールド・プログラマブル・ゲート・アレイに転送するように、前記プログラマブル・ロジック・デバイスを制御する切り替えスイッチと、
を有したことを特徴とする請求項１記載のコンフィグレーション装置。
【請求項３】
フィールド・プログラマブル・ゲート・アレイと、機種情報を格納した機種情報格納部と、ファームウエアプログラム及び内容が異なる複数のコンフィグレーションデータを格納したフラッシュROMをマイクロプロセッサにより制御し、
前記ファームエアプログラムをロードして、前記機種情報を判断し、この機種情報に対応するコンフィグレーションデータを前記複数のコンフィグレーションデータ内から選択し、前記フィールド・プログラマブル・ゲート・アレイに転送し格納し、該コンフィグレーションデータに対応したロジック回路を内部に形成せしめるようにしたことを特徴とするコンフィグレーション方法。
【請求項４】
前記フィールド・プログラマブル・ゲート・アレイへ書き込む前記コンフィグレーションデータを、前記マイクロプロセッサ又はPROMのいずれか一方から選択的に書き込めるようにしたことを特徴とする請求項３記載のコンフィグレーション方法。
【請求項５】
コンフィグレーションデータが書き込まれることで該データに対応したロジック回路を内部に形成するフィールド・プログラマブル・ゲート・アレイと、
機種情報を格納した機種情報格納部と、
ファームウエアプログラム及び内容が異なる複数のコンフィグレーションデータを格納したフラッシュROMと、
前記ファームエアプログラムをロードして、前記機種情報を判断し、この機種情報に対応するコンフィグレーションデータを前記複数のコンフィグレーションデータ内から選択し、前記フィールド・プログラマブル・ゲート・アレイに転送し格納させるマイクロプロセッサと、
前記マイクロプロセッサに設けられたインターフェースと、
前記インターフェースを介して、前記フラッシュROMに、ファームウエアプログラム及び内容が異なる複数のコンフィグレーションデータをロードするロード装置を具備したことを特徴とするコンフィグレーションデータ準備装置。
【請求項６】
前記ロード装置は、シリアル転送インターフェース及びパーソナルコンピュータ、又はLAN（Local Area Network）伝送方式あるいはUSB(Universal Serial Buss)伝送方式を用いたロード装置のいずれかであることを特徴とする請求項５記載のコンフィグレーションデータ準備装置。
【請求項７】
請求項1記載のコンフィグレーション装置がVVVFインバータを制御する制御部内に搭載されていることを特徴とする電気車制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンフィグレーション装置及び方法及びデータ準備装置及び電気車制御装置に関する。
【背景技術】
【０００２】
能動的な機能を奏するようにプログラムを書き込んで使用するプログラマブル半導体メモリデバイスとして、フィールド・プログラマブル・ゲート・アレイ（Field Programmable Gate Array: FPGA)がある。このFPGAは、SRAM(Static Random Access Memory)を利用しており、一度、装置の電源をオフすると、書き込んだデータは消える。このために、装置の起動時及び再スタート時には、FPGAに対してコンフィグレーションを行う必要があり、FPGAに対してPROM(Programmable Random Access Memory)を接続して、このPROMからコンフィグレーションデータが転送されるように構成される。したがって、装置基板には、これらFPGAとPROMがペアで実装されている。
【０００３】
起動時や再スタート時には、FPGAからPROMに対してリクエスト信号が送られ、これに応答してPROMからはコンフィグレーションデータがFPGAに転送される。コンフィグレーションの技術としては例えば特許文献１に開示されている。またFPGAのようにプログラム可能なメモリを示した文献として特許文献２がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−２５３８１５号公報
【特許文献２】特開２００８−２１７８１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、上記したFPGAとPROMのペアを実際の装置に組み込み使用する前に、事前にPROMに対してコンフィグレーションデータを書き込んでおく必要がある。PROMにコンフィグレーションデータを書き込む場合、Joint Test Action Group （JTAG）インターフェース、接続ケーブル、接続コネクタなど用いて外部パーソナルコンピュータ（PC)を接続し、専用ツールを用いて書き込む処理が必要である。
【０００６】
この作業は、大変煩雑で時間を要する。ましてや搭載する装置の機種に応じて、複数のROMにそれぞれ異なる内容や異なるバージョンのコンフィグレーションデータを書き込むような場合、人的判断により書き込みミス、間違ったバーションの書き込みが生じる可能性がある。
【０００７】
そこでこの発明では、装置の起動時及びリスタート時においてプログラマブル半導体メモリデバイスに転送されそして書き込まれるコンフィグレーションデータを間違いなく正確に準備できるようにしたコンフィグレーション装置及び方法及びデータ準備装置及び電気車を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の課題を解決するために、本発明は、コンフィグレーションデータが書き込まれることで該データに対応したロジック回路を内部に形成するフィールド・プログラマブル・ゲート・アレイ（FPGA)と、機種情報を格納した機種情報格納部と、ファームウエアプログラム及び内容が異なる複数のコンフィグレーションデータを格納したフラッシュROMと、前記ファームエアプログラムをロードして、前記機種情報を判断し、この機種情報に対応するコンフィグレーションデータを前記複数のコンフィグレーションデータ内から選択し、前記フィールド・プログラマブル・ゲート・アレイに転送し格納させるマイクロプロセッサを有することを基本とする。
【発明の効果】
【０００９】
本発明によれば、マイクロプロセッサが、機種に適合しかつ適切なバージョンのコンフィグレーションデータを自動判定してFPGAに書き込むことができる。従ってコンフィグレーションデータを書き込むような場合、人的判断により書き込みミス、間違ったバーションの書き込みを防止でき、信頼性の高い装置とすることができる。またコンフィグレーション装置の標準化を図ることができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施例を示す構成説明図である。
【図２】図１のフラッシュROMに構築されているファームウエアのディレクトリーの例を示す説明図である。
【図３】図１の装置の動作例を説明するために示したフローチャートである。
【図４】本発明の他の実施例を示す構成説明図である。
【図５】本発明装置の使用例を説明するために示した電気車制御装置の概略ブロック図である。
【発明を実施するための形態】
【００１１】
以下、本発明の実施の形態について、詳細に説明する。図１に第1の実施例の構成を示し説明する。１００はコンフィグレーション装置が例えば電気車の基板上に実装される際の領域を示している。１０１は、マイクロプロセッサであり、フラッシュROM１０２が接続されている。またマイクロプロセッサ１００には、機種情報メモリ１０３が接続されており、このメモリ１０３にはコンフィグレーション装置が搭載される電気車の機種情報が格納されている。この機種情報メモリ１０３は独立して、マイクロプロセッサ１０１のバスに接続可能である。
【００１２】
フラッシュメモリ１０２には、マイクロプロセッサ１０１が動作するためのファームウエアプログラムが格納され、またこのファームウエアプログラム（FPGAブートプログラムも含む）に基づく動作を行っている途中で、条件に応じて選択するコンフィグレーションデータが格納されている。コンフィグレーションデータは複数でありその中の1つが選択される。
【００１３】
図２には図１のフラッシュROM１０２に構築されているファームウエアのディレクトリーの例を示している。複数のコンフィグレーションデータは、それぞれは内容が異なり機種に対応しており、またそれぞれは機種毎に適応した特定のバージョンのコンフィグレーションデータである。
【００１４】
マイクロプロセッサ１０１は、機種情報メモリ１０３の機種情報に応じて、FPGA１０４に適切なコンフィグレーションデータを書き込むことができる。
【００１５】
＜FPGAコンフィグレーション時の動作＞
今、電源がオンまたは再スタートしたとする。FPGA１０４は、一定電圧以上で起動状態となる。マイクロプロセッサ１０１は、コンフィグレーション用制御信号ラインL1にＩＮＩＴ信号「Ｌ」をアサートし、FPGA１０４内部のコンフィグレーション回路を初期化し、初期化が完了するとＩＮＩＴ信号を「Ｈ」にアサートする。
【００１６】
FPGAブートプログラムは、ＩＮＩＴ信号の「Ｈ」アサートを確認後、FPGA１０４からＢＵＳＹ信号が「Ｈ」にアサートされていないことを確認しながら、コンフィグレーション用クロック信号ラインL1にクロックパルスを出力し、コンフィグレーションデータを書き込む為のデータ信号ラインL3にコンフィグレーションデータを出力し、FPGA１０４に転送する。
【００１７】
FPGA１０４は、コンフィグレーションデータが全て読込まれコンフィグレーションが完了するとコンフィグレーション用制御信号ラインL2に完了を示すＤＯＮＥ信号を出力しコンフィグレーションを完了する。
【００１８】
図３のフローチャートは上記の動作を概略的に示している。マイクロプロセッサ１０１にファームウエアプログラムがロードされると（ステップS1）、機種情報が読み取られ、機種が判断され（ステップS2）、FPGA１０４に転送すべきコンフィグレーションデータが決定される（ステップS3）。そして選択したコンフィグレーションデータをFPGA１０４が転送されて終了する。
【００１９】
＜フラッシュROM１０２へのデータ書き込むロード装置＞
ところで、上記コンフィグレーション装置を電気車の制御部へ搭載するのに先立ち、フラッシュROM１０２に対しては、上記したファームウエアプログラム及び複数のコンフィグレーションデータを書き込む必要がある。
【００２０】
マイクロプロセッサ１０１には、シリアル転送用インターフェース１０５が設けられており、このシリアル転送用インターフェース１０５に対して、外部パーソナルコンピュータ２００に設けられているシリアル転送用インターフェース２０１を接続することができる。
【００２１】
このロード装置としての外部パーソナルコンピュータ２００は、シリアル転送用インターフェース２０１，１０５を介して、マイクロプロセッサ用のメインプログラム及びコンフィグレーション指令（つまり先のＦＰＧＡブートプログラム）、さらにプログラムの一部である複数のコンフィグレーションデータを転送することができる。これによりメインプログラム及びFPGAブートプログラム並びにコンフィグレーションデータをフラッシュROMに格納することができる。
【００２２】
上記した実施例によると、マイクロプロセッサ用のファームウエアプログラムの一部として複数のコンフィグレーションデータをフラッシュROMに格納するだけで、起動時または再スタート時に機種に応じた適切なバージョンのFPGAコンフィグレーションを行うことができる。
【００２３】
またコンフィグレーションはフラッシュROMに書き込まれるので高価なPROMが不要となる。さらにまた複数のコンフィグレーションデータを機種情報別に格納しておき、機種情報にしたがってコンフィグレーションデータを選択してコンフィグレーションを行うことが可能となる。これにより制御基板の共通化が可能となり複数の機種にまたがった同一のハードウエア、ソフトウエアを使用することができ量産化によるコストメリットを出すことができる。
【００２４】
またコンフィグレーションデータのプログラムインストールミスやバージョン誤り等の人的判断によるミスを防ぐことができ、省力化につながる。
【００２５】
この発明は、上記の実施例に限定されるものではない。図４にはこの発明の他の実施例を示している。図１と同一部分には同一符号を付して重複する説明は省略する。
【００２６】
この実施例では、マイクロプロセッサ１０１とFPGA１０４の間にプログラマブル・ロジック・デバイス（PLD)３０３が設けられる。このPLD３０３には、プログラマブルRPM(＝PROM)３０１が接続されている。またPLD３０３には、切り替えスイッチ３０２が接続されている。切り替えスイッチ３０２からローレベルが与えられているとき、PLD３０３はマイクロプロセッサ１０１とFPGA１０４を接続状態（スレーブモードと略す）にし、切り替えスイッチ３０２からハイレベルが与えられているとき、PLD３０３はPROM３０１とFPGA１０４を接続状態にする（マスターモードと略す）。ここで、PROM３０１は、1種類のコンフィグレーションデータを格納している。
【００２７】
PROM３０１に対して、事前にコンフィグレーションデータを書き込むときは、Joint Test Action Group （JTAG）インターフェース３０４が使用され、このJTAGインターフェース304を介して、外部パーソナルコンピュータ２００からコンフィグレーションデータが書き込まれる。
【００２８】
＜FPGAコンフィグレーション時の動作＞
スレーブモードの場合、マイクロプロセッサ１０１からコンフィグレーションデータを転送する動作は、先の実施例と同じである。
【００２９】
マスターモードの場合、FPGA１０４は電源をオンにてデータ取得のためのシーケンスを自動で起動し、PROM３０１からコンフィグレーションデータを読み取ってセットし、コンフィグレーションを行う。
【００３０】
上記した実施例によると先の実施例の効果に加えて、従来の方式を用いてコンフィグレーションを、行うことができる。このマスターモードは、電気車の制御装置の開発時等に、特に１つのコンフィグレーションデータのみを頻繁にFPGAに対して書き換えする場合が生じたとき、簡単に書き換えることが可能となる。
【００３１】
図５には、上記したコンフィグレーション装置（図１、図２）が組み込まれる電気車制御装置内の各箇所を示している。図５において、
集電装置（パンタグラフ）４０１により架線（図示せず）から集電された電力は、リアクトル４０２を介してコンデンサ４０３の正電極端子に供給される。コンデンサ４０３の負電極端子は車輪４０７を介してレール（図示せず）にアースされる。この車輪４０７は、主電動機４０５により駆動される。主電動機４０５は、VVVF(可変電圧可変周波数)インバータ４０４からの3相の駆動電流Iu,IV,Iwにより駆動される。インバータ４０４は、コンデンサ４０３の端子間の直流電圧を制御部５００からのパルス幅変調（PWM）信号に基づいて3相の駆動電流Iu,IV,Iwに変換している。
【００３２】
制御部５００は、運転台４０８から出力される運転指令としてのレバーサ指令、力行指令、ブレーキ指令、各種のフィードバック信号などに基づいて、PWM信号制御回路５０１を制御している。このために制御部５００は、PWM制御機能５１１、ベクトル制御機能５１２、保護動作機能５１４を含む。ベクトル制御機能５１２は、主電動機４０５の回転周波数情報、駆動電流Iu,Iwを検出する電流検出器４０６U,４０６Wで検出した電流位相などからPWM信号制御回路５０１に入力するタイミング信号のベクトル位相制御を行っている。また保護動作機能５１４は、直流コンデンサ４０４の過電圧状態、駆動電流などの過電流状態、速度異常状態を検出する検出部５１３からの検出信号に応答し、放電回路の制御、遮断機やVVVFインバータ４０４の動作停止、あるいはPWM信号制御回路５０１の動作制御を行う。このような場合、上記PWM制御機能５１１、ベクトル制御機能５１２、保護動作機能５１４は、入力条件に応じて論理的判断を行い制御信号を出力する必要がある。このような機能部を実現するために、本発明で採用されているFPGAの論理判定出力が利用されている。
【００３３】
なお本発明は上記した実施例に限定されるものではなく、本発明の趣旨の範囲で各種の変形実施例が可能である。またフラッシュROM１０２にファームウエアプログラム及び複数のコンフィグレーションデータを書き込む際、ロード装置としてシリアル転送インターフェース２０１，１０５及びパーソナルコンピュータ２００を用いたがこのような形態に限定されるものではない。例えばLAN（Local Area Network）伝送あるいはUSB(Universal Serial Buss)伝送を用いた伝送方式にてデータ書き込みを実現してもよい。このようにした場合、パーソナルコンピュータ２００を、現場に持ち込まなくてもフラッシュROMに対するデータ書き込みが可能である。また多数の装置へのデータ書き込みが容易となる。
【産業上の利用可能性】
【００３４】
本発明は、コンフィグレーション装置及び方法として、各種の分野においてFPGAをコンフィグレーションするのに利用可能である。例えば最近の電気車のように機種が豊富になったり、データのバージョンが変わってくるような場合は有効である。
【符号の説明】
【００３５】
１０１・・・マイクロプロセッサ、１０２・・・フラッシュROM、１０３・・・機種情報メモリ、１０４・・・FPGA、１０５・・・シリアル転送インターフェース、２００・・・外部パーソナルコンピュータ、３０１・・・PROM、３０２・・・切り替えスイッチ、３０３・・・PLD。
【図１】
2010266938.tif 000003
【図２】
2010266938.tif 000004
【図３】
2010266938.tif 000005
【図４】
2010266938.tif 000006
【図５】
2010266938.tif 000007