(57)【要約】【課題】ＤＳＰが起動時に読込まれるフラッシュメモリに記憶される実行プログラムやテーブルデータを汎用のシリアル通信インターフェースを介して更新可能なデータ更新装置を提供する。【解決手段】内部メモリ５及びＤＭＡコントローラ６を有するＤＳＰ７と、ＤＭＡコントローラ６に接続されるデータバス８と、データバス８に接続され内部メモリ５へのデータを記憶するフラッシュＲＯＭ９と、フラッシュＲＯＭ９へのデータを外部のコンピュータ２からシリアル伝送路経由で受信する汎用シリアルデータ通信手段１３と、データバス１２を介して汎用シリアルデータ通信手段１３に接続されたバスブリッジ１０とを備え、バスブリッジ１０を介してコンピュータ２より受信されたフラッシュＲＯＭ９に対する書込み用のデータファイルを用いてＤＳＰ７がフラッシュＲＯＭ９に記憶された実行プログラム又は演算用のテーブルデータを更新する。【選択図】図１
2010086445.tif 000002
【特許請求の範囲】
【請求項１】
内部メモリ及びこの内部メモリに記憶されるデータをＤＭＡ転送するＤＭＡコントローラを有するＤＳＰ（ディジタルシグナルプロセッサ）と、
このＤＳＰの前記ＤＭＡコントローラに接続される第１データバスと、
この第１データバスに接続され、前記ＤＳＰの内部メモリに転送されるデータを記憶するフラッシュメモリと、
このフラッシュメモリに記憶されるデータを、外部のコンピュータからシリアル伝送路経由で受信する汎用シリアルデータ通信手段と、
この汎用シリアルデータ通信手段に接続された第２データバスと、
この第２データバス及び前記第１データバスの間に接続されたバスブリッジと、を備え、
このバスブリッジを介して前記コンピュータより受信された前記フラッシュメモリに対する書込み用のデータファイルを用いて前記ＤＳＰがこのフラッシュメモリに記憶された実行プログラム又は演算用のテーブルデータを更新することを特徴とするディジタルシグナルプロセッサ用フラッシュメモリのデータ更新装置。
【請求項２】
内部メモリ及びＤＭＡコントローラを有するＤＳＰと、このＤＳＰに接続された第１データバスと、この第１データバスに接続されこの内部メモリに転送されるデータを記憶するフラッシュメモリと、バスブリッジを介して前記第１データバスに接続された汎用シリアルデータ通信手段とをカード基板上で接続搭載する接続搭載ステップと、
この汎用シリアルデータ通信手段が、シリアル伝送路経由で外部のコンピュータから送信された前記フラッシュメモリに対する書込み用のデータファイルを受信する受信処理ステップと、
前記ＤＳＰが、このデータファイルを用いて前記フラッシュメモリに記憶された実行プログラム又は演算用のテーブルデータの更新を行う更新ステップと、を備えたことを特徴とするディジタルシグナルプロセッサ用フラッシュメモリのデータ更新方法。
【請求項３】
前記更新ステップでは、
前記更新に先立って、前記コンピュータが、送信すべきデータについてのデータサイズ及びチェックサムを送信し、
前記ＤＳＰは、送信された前記データサイズ及び前記チェックサムを前記第１データバスに接続された外部メモリに記憶し、
前記コンピュータが、前記フラッシュメモリに対する書込み用のデータファイルを送信し、
前記ＤＳＰは、前記コンピュータから、前記汎用シリアルデータ通信手段及び前記バスブリッジを介して前記実行プログラム又は前記テーブルデータを前記外部メモリに記憶し、
前記ＤＳＰは、記憶した実行プログラム又はテーブルデータについてデータサイズ及びチェックサムを求める演算を行って、得られたデータサイズ及びチェックサムと、前記外部メモリに記憶された前記データサイズ及び前記チェックサムとを比較し、
前記ＤＳＰは、この比較結果が肯定的である場合、前記外部メモリに記憶された前記実行プログラム又は前記テーブルデータを用いて前記フラッシュメモリを更新することを特徴とする請求項２記載のディジタルシグナルプロセッサ用フラッシュメモリのデータ更新方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＤＳＰ（ディジタルシグナルプロセッサ）用フラッシュメモリのデータ更新装置及び同フラッシュメモリの更新方法に関する。
【背景技術】
【０００２】
フラッシュメモリの更新処理は、書込みデータの通信処理とフラッシュメモリ制御処理との２つに分かれている。しかし、ＤＳＰの内部メモリの容量が小さいことから、ＴＣＰ／ＩＰのような通信ソフトウェアを用いた汎用通信処理は実現できない。従って、ＤＳＰメーカーによる専用のフラッシュメモリ書込み用装置を用いる以外に、フラッシュメモリの書込みを行う方法がない。
【０００３】
図５はフラッシュメモリ書込み用装置の一例を示す図である。フラッシュメモリ書込み用装置４９は、フラッシュメモリを有する市販のＤＳＰカード５０と、このＤＳＰカード５０が装着される拡張スロット５１及び図示しないマザーボードを有するパソコン５２とを備えている。ＤＳＰカード５０は、それぞれ内部メモリを有するＮ個のＤＳＰ５３と、これらのＤＳＰ５３にデータバス５４を介して接続され計算命令を記述したプログラムを記憶するＤＳＰ用フラッシュＲＯＭ５５と、データバス５４に接続されＮ個のＤＳＰ５３での各計算の実行結果を一時的に記憶する外部メモリ５６と、パソコン５２からＤＳＰカード５０内の各ＩＣへのアクセスをインターフェース処理するＰＣＩ（Peripheral Component Interconnect）バスインターフェース部５７とを備えている。
【０００４】
Ｎ個のＤＳＰ５３の計算命令を記述した各プログラムは、フラッシュＲＯＭ５５に格納されている。このフラッシュＲＯＭ５５より各ＤＳＰ５３は起動時に自身が実行するプログラムを読込み、各ＤＳＰ５３はＤＳＰカード５０へ入力されたデータに対して信号処理を行うようにしている。図５に示すとおり、同一のＤＳＰICから構成されたＤＳＰメーカー製ＤＳＰカード５０は、パソコン５２の拡張スロット５１に装着されている。
【０００５】
パソコン５２のマザーボードには、ＰＣＩバスインターフェース部５７に接続されるＰＣＩバス５８と、このＰＣＩバス５８に接続されるＰＣＩ−ホストブリッジ５９と、データバス６０を介してこのＰＣＩ−ホストブリッジ５９と接続されるＣＰＵ６１と、データバス６２を介してＰＣＩ−ホストブリッジ５９と接続される外部メモリ６３とが設けられている。更にＰＣＩ−ホストブリッジ５９にはデータバス６４を介してＣＰＵ６１用のフラッシュＲＯＭ６５が接続されている。このデータバス６４には、ディスプレイコントローラ等の周辺デバイス６６と、ＨＤＤ（ハードディスクドライブ）６７とが接続されている。ＨＤＤ６７にはＤＳＰメーカーが提供するドライバ及びアプリケーションが記憶されている。ＰＣＩバス５８にはＬＡＮコントローラ６８が接続されている。
【０００６】
このような構成により、パソコン５２及びＤＳＰ５３の間の通信は、ＨＤＤ６７のドライバ及びアプリケーションをＣＰＵ６１が実行することにより実施される。ＨＤＤ６７からPCIバス５８を経由して、制御を司る第１のＤＳＰ５３の内部メモリまで、プログラム及び書込みデータファイルが転送される。
【０００７】
次に、ＤＳＰ５３−ＤＳＰ５３間の通信は各ＤＳＰ５３自身が持つ独自通信機能を用いることで行われる。第１のＤＳＰ５３は、プログラム及び書込みデータファイルを、フラッシュロムの更新対象となる図示しない他ＤＳＰカード上において制御を司る第１のＤＳＰ５３へ出力し、この第１のＤＳＰ５３が更新対象のフラッシュメモリ５５へのデータの書込みを行う。
【０００８】
更新対象である他ＤＳＰカード上のフラッシュメモリ５５を更新するためには、他ＤＳＰカード上のＤＳＰ５３及びＤＳＰカード５０上ＤＳＰ５３間でデータを送受信できる環境が必要である。ＤＳＰカードのメーカーは、ＤＳＰカード単体で、このＤＳＰカード上のフラッシュメモリを更新できるようにしたＤＳＰ開発用の装置を提供しているが、この装置は高額である。
【０００９】
一方、パソコン５２に、市販のＤＳＰカード５０を挿入し、他ＤＳＰカードのフラッシュメモリ５５を更新する場合、図示しない専用のＤＳＰ間接続ケーブルが必要となる。また、ＤＳＰ５３間通信回路を介してフラッシュＲＯＭ５５に書込まれるデータをＤＳＰカード５０を介して送出するホストＣＰＵや、データ送出の制御用のソフトウェアが必要である。ところが、専用のＤＳＰ間接続ケーブルも高額である。フラッシュメモリ５５を更新するという目的のためだけに、専用の接続ケーブルを購入することは多額の費用がかかる上、納期も長い。専用接続ケーブルの購入が憚られるという点から、フラッシュメモリ５５のプログラムの更新を容易に行うことができない。
【００１０】
そこで、ホストＣＰＵ及びＤＲＡＭを搭載したＣＰＵカードと、一枚以上のＤＳＰカードとを、ＶＭＥバスが布線されたバックプレーン上のスロットに挿込むことによって、これらのＣＰＵカード及びＤＳＰカード間を相互接続したシステムを構築して、ＤＳＰカード上のフラッシュＲＯＭを更新するようにした手法も用いられている。ＣＰＵカードはＬＡＮに接続可能であり、ＬＡＮに接続されたパソコンからの更新用プログラムが、ＣＰＵカード上のＤＲＡＭに転送されるようにして更新は行われる。この更新用プログラムは、ＣＰＵカードからＶＭＥバスを介していずれかのＤＳＰカード上のフラッシュＲＯＭにデータが送られるようにされており、これによって所望のＤＳＰカード上のフラッシュＲＯＭが更新されるようになっている。
【００１１】
ＲＯＭを更新する技術に関しては、従来、ＲＯＭに格納されたプログラムの機能修正を効率的に行えるようにしたメモリカードが知られている（例えば特許文献１参照）。特許文献１に記載のメモリカードはフラッシュメモリと、ＣＰＵ、ＲＯＭ、ＲＡＭ及びホストインターフェース部を有するコントローラとを備えている。コントローラは、ＲＯＭに格納されているファームウェアだけでなく、フラッシュメモリに格納されている修正用ファームウェアや割込みベクタなどをＲＡＭ上に展開し、ＣＰＵに通知する。ＣＰＵは、割込みベクタに示されるＲＡＭ領域上のアドレスなどに従って、ファームウェアの中の該当する機能や修正用ファームウェアを実行するようにしている。このメモリカードでは、ホストと、フラッシュメモリの書込み制御を行うコントローラとが協調動作することで、フラッシュメモリの更新が実現されている。
【００１２】
また、フロッピー（登録商標）ディスクドライブが搭載されていない電子機器が、シリアルインターフェースを用いて電子機器のフラッシュメモリの更新を容易に行えるようにした方法も提案されている（例えば特許文献２参照）。特許文献２に記載のフラッシュメモリデータの更新方法は、フラッシュメモリ及び汎用インターフェースを搭載した電子機器のフラッシュメモリのデータ更新にあたり、レコード単位のサム値を有するアスキーファイルによりフラッシュメモリ更新用に作成されたデータファイルを、汎用通信インターフェースを介して電子機器に転送するステップと、転送されたデータファイルを電子機器のＲＡＭ領域に転送するステップと、転送されたデータファイルのサム値を求め、既知のサム値と等しければＲＡＭ領域に転送された内容をフラッシュメモリに書込むステップとを含む。
【特許文献１】特開２００６−１２００８２号公報
【特許文献２】特開２０００−１２２８８４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながら、ＤＳＰカードとＣＰＵカードとをバックプレーン上でバス接続する方法を用いてＤＳＰカード上のフラッシュＲＯＭを更新する手法では、ＣＰＵカードとＤＳＰカードとがペアでなければ、フラッシュＲＯＭを更新することができない。ＤＳＰカード上のフラッシュＲＯＭを更新するという目的のためだけに、ＣＰＵカードやＤＳＰカード、及びこれらのＣＰＵカード及びＤＳＰカードを収納するシャーシを準備することは費用の点から不利である。努めてパソコンを利用可能な環境下において、汎用的な更新方法を用いて安価にフラッシュＲＯＭを更新できることが望まれている。
【００１４】
上述した従来技術では、ＣＰＵは十分な容量を有するメモリを使えるため、フラッシュＲＯＭを更新するために必要なソフトウェアをこのメモリに記憶させることができ、この大容量メモリを使って更新処理が実行される。これに対して、ＤＳＰの使用可能なメモリの容量は少ないため、信号処理とフラッシュメモリ制御プログラムとを一緒に記憶することができない。ＤＳＰの内部メモリは、更新データの送受信用のプログラムと、割当てられた信号処理用のプログラムとを記憶することができない。このため、ＤＳＰカードにＬＡＮを接続してＤＳＰカードとこのＬＡＮに接続された端末との間でデータを送受信するためのソフトウェアをＤＳＰカード自体に記憶させて各ＤＳＰがこのソフトウェアを読込んで実行することができない。ＬＡＮ経由でＲＯＭ更新用のプログラムをフラッシュＲＯＭにダウンロードすることができない。
【００１５】
そこで、本発明は、上記の課題に鑑み、ＤＳＰが起動時に読込まれるフラッシュメモリに記憶される実行プログラムやテーブルデータを、汎用のシリアル通信インターフェースを介して更新することが可能なディジタルシグナルプロセッサ用フラッシュメモリのデータ更新装置及びディジタルシグナルプロセッサ用フラッシュメモリのデータ更新方法を提供することを目的とする。
【課題を解決するための手段】
【００１６】
このような課題を解決するため、本発明の一態様によれば、内部メモリ及びこの内部メモリに記憶されるデータをＤＭＡ転送するＤＭＡコントローラを有するＤＳＰと、このＤＳＰの前記ＤＭＡコントローラに接続される第１データバスと、この第１データバスに接続され、前記ＤＳＰの内部メモリに転送されるデータを記憶するフラッシュメモリと、このフラッシュメモリに記憶されるデータを、外部のコンピュータからシリアル伝送路経由で受信する汎用シリアルデータ通信手段と、この汎用シリアルデータ通信手段に接続された第２データバスと、この第２データバス及び前記第１データバスの間に接続されたバスブリッジと、を備え、このバスブリッジを介して前記コンピュータより受信された前記フラッシュメモリに対する書込み用のデータファイルを用いて前記ＤＳＰがこのフラッシュメモリに記憶された実行プログラム又は演算用のテーブルデータを更新することを特徴とするディジタルシグナルプロセッサ用フラッシュメモリのデータ更新装置が提供される。
【００１７】
また、本発明の別の一態様によれば、内部メモリ及びＤＭＡコントローラを有するＤＳＰと、このＤＳＰに接続された第１データバスと、この第１データバスに接続されこの内部メモリに転送されるデータを記憶するフラッシュメモリと、バスブリッジを介して前記第１データバスに接続された汎用シリアルデータ通信手段とをカード基板上で接続搭載する接続搭載ステップと、この汎用シリアルデータ通信手段が、シリアル伝送路経由で外部のコンピュータから送信された前記フラッシュメモリに対する書込み用のデータファイルを受信する受信処理ステップと、前記ＤＳＰが、このデータファイルを用いて前記フラッシュメモリに記憶された実行プログラム又は演算用のテーブルデータの更新を行う更新ステップと、を備えたことを特徴とするディジタルシグナルプロセッサ用フラッシュメモリのデータ更新方法が提供される。
【発明の効果】
【００１８】
本発明によれば、汎用のシリアル通信インターフェースを介してフラッシュメモリに記憶されるデータを更新することができるようになる。例えばパソコンといった外部のコンピュータと、フラッシュメモリを搭載したＤＳＰカードとを、汎用シリアル通信装置といったシリアルデータ通信手段を用いて接続する事により、ＤＳＰカードの対象となるフラッシュメモリに対して、汎用シリアル通信インターフェースを介して、任意のプログラムによる更新を行う事ができるようになる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施の形態に係るディジタルシグナルプロセッサ用フラッシュメモリのデータ更新装置及びディジタルシグナルプロセッサ用フラッシュメモリのデータ更新方法について、図１乃至図４を参照しながら説明する。尚、各図において同一箇所については同一の符号を付すとともに、重複した説明は省略する。
【００２０】
（構成）
本実施形態に係るディジタルシグナルプロセッサ用フラッシュメモリのデータ更新装置は、フラッシュメモリ、外部メモリ及び複数個のＤＳＰを搭載したＤＳＰカードと、パソコンと、これらのＤＳＰカード及びパソコン間を接続する汎用のシリアル通信回線とから構成されている。各ＤＳＰが信号処理演算を行う前に、複数個のＤＳＰのうちの予め決められたいずれかのＤＳＰが、このシリアル通信回線のシリアルデータについて送受信制御を行うことによって、更新用プログラムや演算用テーブルデータをパソコンから外部メモリに取込み、これらのプログラムやテーブルデータをフラッシュメモリに書込むようにしている。
【００２１】
図１はＤＳＰによるフラッシュメモリのデータ更新装置の構成図である。データ更新装置１は、外部コンピュータであるパソコン２と、シリアル伝送路であるデータバス３を介してこのパソコン２との間でシリアルデータを送受信可能にされ信号処理演算を行うＤＳＰカード４とを備えている。パソコン２は、ホストＣＰＵ２ａと、ＤＳＰカード４に対して更新用データを送信するための図示しないシリアルポートと、更新用データの送受信の制御用のソフトウェアを記憶する図示しないメモリとを有する。このソフトウェアはホストＣＰＵ２ａによって実行される。データバス３は外部のコンピュータとＤＳＰカード４とによって共有されている。
【００２２】
ＤＳＰカード４は、それぞれ内部メモリ５及びＤＭＡコントローラ６を持つ複数例えば８個のＤＳＰ７と、各ＤＭＡコントローラ６に接続されるデータバス８と、このデータバス８に接続されたフラッシュＲＯＭ９と、データバス８に接続されたバスプロトコル変換機能部１０と、ページメモリのような大容量の記憶領域を有する外部記憶装置１１と、データバス１２を介してバスプロトコル変換機能部１０に接続されるとともにデータバス３を介してパソコン２とシリアルデータ通信を行う汎用シリアル通信装置１３（汎用シリアルデータ通信手段）とを備えている。ＤＳＰカード４は、演算対象となるデータが入力される図示しないラインも有し、シリアルデータの入出力インターフェースラインと演算対象データラインとを選択切替え可能になっている。
【００２３】
各ＤＳＰ７の内部メモリ５は小容量の記憶領域を有する。ＤＭＡコントローラ６はこの内部メモリ５に記憶されるデータをＤＭＡ転送するものである。ＤＳＰカード４は、複数個のＤＳＰ７から構成されていることから、ブート対象のＤＳＰ７は１個又は複数個存在する。
【００２４】
各ＤＳＰＩＣチップは複数本の外部信号入力ピンを有する。８個のＤＳＰＩＣチップがカード上に搭載される場合、各３本の外部信号入力ピンがプルアップ又は接地されることによって、８個のＤＳＰ７には互いに異なる０から７の８種類のＩＤコードが与えられている。データ更新装置１では、これらのＤＳＰ７のうち、ＩＤコード‘０’の第１のＤＳＰ７がフロー制御を行うようにしている。
【００２５】
第１のＤＳＰ７の内部メモリ５には、ＤＭＡコントローラ６によりこの内部メモリ５が記憶可能なワード数以下のステップからなる処理プログラムが、起動時にフラッシュＲＯＭ９からロードされるようにされている。この処理プログラムはシリアル通信の送受信制御処理を行える程度のワード数を持つ。第１のＤＳＰ７がこの処理プログラムを実行することにより、フラッシュメモリ更新用データがＤＳＰカード４へ取込まれるようになっている。第１のＤＳＰ７は送受信制御処理を行うほかに、フラッシュＲＯＭ９の更新と、第２から第Ｎの各ＤＳＰ７のリセット制御も行うようにしている。
【００２６】
フラッシュＲＯＭ９には、８個のＤＳＰ７の信号処理用の実行プログラムと、演算用のテーブルデータが記憶されており、これらのプログラムやテーブルデータはＤＳＰカード４が起動された後、ＤＳＰＩＣが保有するブート機能を用いて、各ＤＭＡコントローラ６によりそれぞれの内部メモリ５に転送される。起動後、各ＤＳＰ７は、内部メモリ５に記憶されたプログラムの計算命令にしたがって割当てられたＤＳＰソフトウェアの演算処理を行うようにしている。
【００２７】
外部記憶装置１１には揮発性の記憶素子であるＤＲＡＭが用いられている。この外部記憶装置１１にはデータバス１４によってバスプロトコル変換機能部１０が接続されている。バスプロトコル変換機能部１０はバスブリッジである。バスプロトコル変換機能部１０は、データバス８、１２及び１４の間のバス幅の整合や転送単位の整合などの処理を行う。
【００２８】
汎用シリアル通信装置１３には、シリアル通信コントローラであるＵＡＲＴが用いられている。パソコン２のシリアルポートにもＵＡＲＴが用いられている。パソコン２側のＵＡＲＴは、ＵＡＲＴ規格にしたがって、送信すべき更新用データをパラレル／シリアル変換してから汎用シリアル通信装置１３に対して送信する。汎用シリアル通信装置１３は受信したシリアルデータに対してシリアル／パラレル変換を行い、変換したデータをデータバス１２に出力するようにしている。汎用シリアル通信装置１３のＵＡＲＴの機能は、ＦＰＧＡ（Field Programmable Gate Array）により実現されている。
【００２９】
また、パソコン２は汎用シリアル通信装置１３に対して、ＡＳＣＩＩ（アスキー）モード及びバイナリモードのうちのいずれかのモードでデータファイルを送信可能にされている。汎用シリアル通信装置１３はＡＳＣＩＩモード及びバイナリモードのいずれのモードでもデータ又はデータファイルを受信可能にされている。パソコン２のモードはホストＣＰＵ２ａによって切替えられ、汎用シリアル通信装置１３のモードはＤＳＰ７によって切替えられるようにされている。
【００３０】
本実施形態に係るディジタルシグナルプロセッサ用フラッシュメモリのデータ更新装置１では、外部のパソコン２及びＤＳＰカード４が、汎用シリアルデータ通信手段にて接続されている。データ更新装置１とパソコン２との通信手段として、ＵＡＲＴ（Ｕｎｉｖｅｒｓａｌ Ａｓｙｎｃｈｒｏｎｏｕｓ Ｒｅｃｅｉｖｅｒ Ｔｒａｎｓｍｉｔｔｅｒ）通信のＥＩＡ（Ｅｌｅｃｔｒｏｎｉｃ Ｉｎｄｕｓｔｒｉｅｓ Ａｌｌｉａｎｃｅ）規格ＲＳ−２３２Ｃに準じた通信が用いられている。
【００３１】
外部のパソコン２は、ＲＳ−２３２Ｃインターフェースを利用してＤＳＰカード４へフラッシュメモリ更新用の書込みデータファイルを転送する。その後、ＤＳＰカード４上のＤＳＰ７により、フラッシュメモリを更新するようにしている。
【００３２】
本実施形態に係るディジタルシグナルプロセッサ用フラッシュメモリのデータ更新方法は、各ＤＳＰ７と、ファームウェアを常駐させるために用いるフラッシュＲＯＭ９と、ホストＣＰＵ２ａと通信を行うための汎用シリアル通信装置１３とをカード基板上で接続搭載する。フラッシュＲＯＭ９の更新にあたり、汎用シリアル通信装置１３は、データバス３経由でパソコン２から送信されたフラッシュＲＯＭ９に対する書込み用のデータファイルを受信するシリアル受信処理を行う。第１のＤＳＰ７は、データファイルを用いてフラッシュＲＯＭ９に記憶された実行プログラム及び演算用のテーブルデータの更新を行う。フラッシュＲＯＭ９の更新処理は、第１のＤＳＰ７が受信データを外部メモリとしての外部記憶装置１１に保存するステップと、第１のＤＳＰ７が受信データ確認を行うステップと、第１のＤＳＰ７がフラッシュＲＯＭ９を更新するステップと、第１のＤＳＰ７が更新後のフラッシュＲＯＭ９と書込みデータファイルとを比較するステップ、とを含む。
【００３３】
（作用）
（１）第１のＤＳＰ７のブート方法
図２は第１のＤＳＰ７のブート手順を説明するためのフローチャートである。ステップＡ１において、このＤＳＰ７は、図１中の（１）に示すとおり、フラッシュＲＯＭ９からプログラムを起動する。ＤＳＰ７は起動後、パソコン２が送信する処理指令のメッセージの受信待ちに入る。ＤＳＰ７はフラッシュＲＯＭ９からプログラムを読込むと、最初に、信号処理演算用のプログラムをブートするか、あるいはフラッシュＲＯＭ９を更新するかを選択する。
【００３４】
ステップＡ２において、ＤＳＰ７はＤＳＰソフトウェアの演算処理を実行する場合に必要な再ブート指令を受信したかどうかを判定する。ＤＳＰ７が信号処理演算を行わずにフラッシュＲＯＭ９の更新を行う場合、ＤＳＰ７はステップＡ３以降の処理ステップを行う。再ブート指令をＤＳＰ７が受信していない場合、ＮＯルートを通り、ステップＡ３において、ＤＳＰ７は、書込みデータ受信指令を受信したかどうかを判定する。
【００３５】
ステップＡ３において、書込みデータ受信指令を受けた場合、ＹＥＳルートを通り、ステップＡ４において、ＤＳＰ７は汎用シリアル通信装置１３の受信設定をASCIIモードからバイナリモードへ変更する。汎用シリアル通信装置１３及びＤＳＰ７は受信データ列の中に改行コードを検出した場合、改行コードをＤＳＰ７の仕様で決められた他のコードに置換える。バイナリモードでは、パソコン２及び汎用シリアル通信装置１３間で改行コードなどの変換処理が行われず、データファイルがそのまま送受信される。
【００３６】
次に、ステップＡ５において、ＤＳＰ７は、パソコン２から送信される２種類のデータ（データサイズ、及びチェックサム）を受信する。受信後、ＤＳＰ７は汎用シリアル通信装置１３より、受信確認を送信する。
【００３７】
続いて、ステップＡ６において、汎用シリアル通信装置１３はパソコン２から送信される書込みデータファイルをデータサイズ分受信し、ＤＳＰ７はこの書込みデータファイルを外部記憶装置１１に記憶する。データ受信が完了した後、ＤＳＰ７は汎用シリアル通信装置１３の受信設定をバイナリモードからASCIIモードへ変更する。
【００３８】
ステップＡ７において、ＤＳＰ７は、データサイズとチェックサムとを比較し、ステップＡ８において、ＤＳＰ７は比較結果に正常か異常かを判定する。ステップＡ８において、比較結果が正常である場合、ＤＳＰ７はパソコン２宛てに比較結果が正常である旨を通知し、ＹＥＳルートを通り、パソコン２からフラッシュメモリの更新指令の受信を待つ。ステップＡ８において、異常があれば、比較結果が異常であるとＤＳＰ７は判定し、ＮＯルートを通り、ステップＡ９において、ＤＳＰ７は受信データを破棄し、パソコン２宛てに比較結果が異常である旨を通知する。この後、ステップＡ３の処理が実行される。
【００３９】
また、ＤＳＰ７は、パソコン２からフラッシュメモリ更新指令を受けた場合、ステップＡ１０において、ＹＥＳルートを通り、ステップＡ１１において、外部記憶装置１１に記憶した受信データを用いて、フラッシュメモリ更新処理を行う。ステップＡ１２において、ＤＳＰ７は更新後のフラッシュメモリ９のデータと受信データとを比較する。ＤＳＰ７は比較した更新結果をパソコン２へ送信する。ステップＡ１０において、ＤＳＰ７がパソコン２からフラッシュメモリ更新指令を受けていない間は、Ｎｏルートを通り、ＤＳＰ７はメッセージの受信のために待つ。
【００４０】
また、ＤＳＰ７は、パソコン２から再ブート指令を受信した場合、ステップＡ２のＹＥＳルートを通り、ステップＡ１３において、このＤＳＰ７は第２のＤＳＰ７から第ＮのＤＳＰ７までのそれぞれをリセットする。ステップＡ１４において、第１のＤＳＰ７はこの第１のＤＳＰ７自身の再ブート処理を行い、第１のＤＳＰ７は処理を終える。
【００４１】
このように、第１のＤＳＰ７はパソコン２から更新用データが流れてくるかどうかを判別でき、更新用データが来る場合、更新用データの受信処理を行ってこのデータを最後まで受信することができる。更新用データをＤＳＰ７が受信完了した場合、受信データの内容を元にしてステップＡ１１、Ａ１２の処理が行われて、フラッシュＲＯＭ９が更新される。フラッシュＲＯＭ９が更新された後、次回、ＤＳＰ７が立ち上がる時からは、その更新されたデータを全てのＤＳＰ７がロードし、このデータによってＤＳＰソフトウェアの演算処理を実行できるようになる。
【００４２】
（２）第２のＤＳＰ７〜第ＮのＤＳＰ７のブート方法
図３は第２のＤＳＰ７のブート手順を説明するためのフローチャートである。ステップＢ１において、バスプロトコル変換機能部１０は、全てのＤＳＰ７のリセットを解除する。
【００４３】
ステップＢ２において、第２のＤＳＰ７はフラッシュＲＯＭ９よりプログラムを読出して、これを内部メモリ５にロードする。ステップＢ３において、このＤＳＰ７は、ロードしたプログラムを用いて初期設定を行う。ＤＳＰ７は、所望の演算などの処理を開始できる状態になる。ステップＢ４において、ＤＳＰ７は、データの入力が有るかどうかを判定する（Ｎｏを付されたルート）。ステップＢ４において、ＤＳＰ７へデータが入力されると、Ｙｅｓルートを通り、ステップＢ５において、ＤＳＰ７は信号処理演算を行う。ステップＢ６において、ＤＳＰ７は、演算結果を出力する。再度、ステップＢ４に戻り、ＤＳＰ７はデータが入力されることを待つ。
【００４４】
第３のＤＳＰ７から第ＮのＤＳＰ７の各ブート方法も第２のＤＳＰ７のブート方法と同じである。第２〜第Ｎの各ＤＳＰ７は、図１中の（１）に示すとおりフラッシュＲＯＭ９からプログラムを起動した後、所定の演算処理を実施する。第２〜第Ｎの各ＤＳＰ７は、フラッシュＲＯＭ９が更新されたかどうかにかかわらず、フラッシュＲＯＭ９からデータを読込みした後、与えられたＤＳＰソフトウェアの演算処理を行う。
【００４５】
（３）パソコン２の書込みデータの送信方法
図４はパソコン２によるフラッシュＲＯＭ９の更新制御手順を説明するためのフローチャートである。
【００４６】
ステップＣ１において、パソコン２は、図１中の（２）に示すとおり、データバス３を用いてＤＳＰカード４へ書込みデータ受信指令を送信する。
【００４７】
ステップＣ２において、パソコン２は、フラッシュメモリ更新用の書込みデータファイルから、データサイズ及びチェックサムを算出する。その後、パソコン２は自身のシリアルポートの送信設定をASCIIモードからバイナリモードへ変更する。
【００４８】
その後、ステップＣ３において、図１中の（２）に示すとおり、汎用シリアル通信装置１３へ宛ててパソコン２は、チェックサム及びデータサイズを送信する。
【００４９】
ステップＣ４において、パソコン２は、ＤＳＰカード４からこのＤＳＰカード４がチェックサム及びデータサイズを受信したことの確認を待つ（Ｎｏルート）。ステップＣ４において、ＤＳＰカード４からの受信確認をパソコン２が受信すると、Ｙｅｓルートを通り、ステップＣ５において、パソコン２はＤＳＰカード４の汎用シリアル通信装置１３へ向けてフラッシュメモリ更新用の書込みデータファイルを送信する。送信完了後、パソコン２は、自身のシリアルポートの送信設定をバイナリモードからASCIIモードへ変更する。
【００５０】
ステップＣ６において、パソコン２は、ＤＳＰカード４からこのＤＳＰカード４が書込みデータファイルを受信したことの確認を待つ。ステップＣ６において、ＤＳＰカード４から、受信正常をパソコン２が受信すると、Ｙｅｓルートを通り、最後に、ステップＣ７において、パソコン２は、フラッシュメモリ更新指令を出力し、更新結果を受信する。ステップＣ６では、ＤＳＰカード４から、受信異常をパソコン２が受信すると、ＮＯルートを通り、再度ステップＣ１を実行する。
【００５１】
また、必要に応じて、パソコン２は、ＤＳＰカード４に対して再ブート指令を出力する。
【００５２】
パソコン２にはディスプレイが接続されており、このディスプレイに、ホストＣＰＵ２ａが実行するソフトウェアの処理の状況が表示される。書込みデータをパソコン２がＤＳＰカード４へ送信する場合、データが送信されるタイミングをパソコン２のソフトウェアがディスプレイ表示する。更新データの転送時にはパソコン２のシリアルポート及び汎用シリアル通信装置１３の各モードがバイナリモードにされ、バイナリモードにされたことがディスプレイに表示される。更新データの転送が終了した場合、各モードはＡＳＣＩＩモードに戻され、ＡＳＣＩＩモードにされたことがディスプレイに表示される。ディスプレイ表示によってファイル転送のタイミングがユーザに通知されるようになる。ＤＳＰカード４を利用するユーザが使い慣れているかどうかにかかわらず、データ更新装置１の使い勝手を一定に維持できる。ファイルの転送を開始すること、ＤＳＰカード４は受信を正常に完了したこと、ＤＳＰカード４の受信に異常が生じたこと、及びフラッシュＲＯＭ９の更新結果といったメッセージがディスプレイ表示される。メッセージ表示のためのタイミングをパソコン２は抽出でき、ユーザは操作を確実に行える。
【００５３】
更新用プログラムのファイルのサイズは、各ＤＳＰ７が実行する処理の量に応じて変わるものである。パソコン２側がデータサイズとチェックサムとを予めＤＳＰカード４へ通知しておき、ＤＳＰカード４側は受信すべきファイルのデータサイズの分だけ受信処理をする。第１のＤＳＰ７はデータサイズの分だけデータファイルを受信すると、受信データに対して３２ビットの加算を行う。第１のＤＳＰ７は、加算して得た結果と、予め送ってもらったチェックサム情報、及びサイズ情報とが等しければ、受信結果はＯＫとし、これらの加算結果及びサイズ情報が等しくなければ、受信結果はＮＧであるとＤＳＰ７は判定する。受信結果がＮＧである場合、更新用プログラムは再送処理される。
【００５４】
更に第１のＤＳＰ７は、チェックサムの計算を行うため、データの信頼性を維持することができ、これによって確実な通信の検証を行える。第１のＤＳＰ７がチェックサムを計算して、フラッシュＲＯＭ９を直接更新するため、不正なデータでフラッシュＲＯＭ９が更新されることが起こらない。シリアルデータの受信の有効性を検証することが、ＤＳＰ７自体によるチェックサム演算により実現されるため、簡単で安価なデータ更新装置が提供される。
【００５５】
以上説明したように、データ更新装置１及びこのデータ更新装置１を用いたデータ更新方法によれば、パソコン２とＤＳＰカード４とを、汎用シリアル通信装置１３を介して接続する事により、対象となるＤＳＰカード４のフラッシュＲＯＭ９に対して、任意のプログラムによる更新を行う事ができるようになる。また、市販品の安価な通信ケーブルを使用して更新を行える。高価な専用ＤＳＰ間接続ケーブルを用いずに、フラッシュＲＯＭ９を更新できるようになる。
【００５６】
専用のフラッシュメモリ書込み用装置が不要となることから、ＤＳＰカード４上のフラッシュＲＯＭ９を更新する機能を実現するためのコスト低減に寄与できる。
【００５７】
ＤＳＰソフトウェアが小規模であるとき、このＤＳＰソフトウェアの演算を行うために、ＤＳＰ構成が一枚のＤＳＰカード４だけからなる場合がある。一枚のＤＳＰカード４だけでＤＳＰソフトウェアの演算を済ませられる場合、ＤＳＰメーカーから販売されている専用のフラッシュメモリ書込み装置を購入せずに、データ更新装置１を用いてフラッシュＲＯＭ９を更新することによって、専用書込み装置を使う場合よりもデータ更新環境を整えるための費用を大幅に削減することができる。専用フラッシュメモリ書込み装置、及びこの専用のフラッシュメモリ書込み装置と接続される専用ケーブルを用いずにフラッシュＲＯＭ９を更新することができ、高価なフラッシュメモリ書込み装置の代替としてこのデータ更新装置１を使うことができる。あるいは、ＣＰＵカードやＶＭＥバス付きのバックプレーンなどをフラッシュメモリ書込み装置として用いることの代替装置としても、このデータ更新装置１を用いることができる。
【００５８】
全国各地の施設や遠隔地の産業用装置の内部にはＤＳＰカードが多数設けられている。データ更新装置１によれば、いずれかのＤＳＰカードのフラッシュＲＯＭを更新する必要が生じた場合、作業者がシリアルケーブルとノートパソコンだけを用意し、現地に調整のために行き、これらのシリアルケーブルとノートパソコンとをＤＳＰカードに接続した後、フラッシュＲＯＭの更新を行うといった作業が可能になる。ＤＳＰカードのフラッシュＲＯＭ９の更新が、高額な専用フラッシュメモリ書込み装置なしには行えない状況では、現地に設けられたＤＳＰカードを保守管理のために一旦工場へセンドバックしてデータ更新をする必要がある。これに対して、このデータ更新装置１によれば、シリアルケーブル及びノートパソコンだけでフラッシュＲＯＭ９を更新できるため、更新作業時の取り扱いが飛躍的に容易になる。極めて安価な構成によりフラッシュＲＯＭ９の更新を行うことができ、コスト低減に寄与できる。
【００５９】
尚、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。上記の実施形態では、ＵＡＲＴ機能はＦＰＧＡにより実現されていたが、ＵＡＲＴ機能を有する種々のデバイスを用いることができる。
【００６０】
また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。
【図面の簡単な説明】
【００６１】
【図１】本発明の実施の形態に係るディジタルシグナルプロセッサ用フラッシュメモリのデータ更新装置の構成図である。
【図２】第１のＤＳＰのブート手順を説明するためのフローチャートである。
【図３】第２のＤＳＰのブート手順を説明するためのフローチャートである。
【図４】外部コンピュータによるフラッシュメモリの更新制御手順を説明するためのフローチャートである。
【図５】従来のフラッシュメモリ書込み用装置の一例を示す図である。
【符号の説明】
【００６２】
１…データ更新装置（ディジタルシグナルプロセッサ用フラッシュメモリのデータ更新装置）、２…パソコン（外部のコンピュータ）、２ａ…ホストＣＰＵ、３…データバス（シリアル伝送路）、４…ＤＳＰカード、５…内部メモリ、６…ＤＭＡコントローラ、７…ＤＳＰ、８…データバス（第１データバス）、９…フラッシュＲＯＭ（フラッシュメモリ）、１０…バスプロトコル変換機能部（バスブリッジ）、１１…外部記憶装置（外部メモリ）、１２…データバス（第２データバス）、１３…汎用シリアル通信装置（汎用シリアルデータ通信手段）、１４…データバス。
【図１】
2010086445.tif 000003
【図２】
2010086445.tif 000004
【図３】
2010086445.tif 000005
【図４】
2010086445.tif 000006
【図５】
2010086445.tif 000007