(57)【特許請求の範囲】
【請求項１】
オンボード書き込みされる不揮発性半導体メモリが内蔵され、かつシリアル送受信部、フラッシュ・マイコン制御手段及び複数のポート端子を有するフラッシュ・マイコンと、前記不揮発性半導体メモリへのデータ書き込みを行うフラッシュ・ライタとを含むオンボード書き込み装置であって、
前記フラッシュ・ライタが、前記複数のポート端子の中からハンドシェーク信号の送受信に用いるハンドシェーク端子を指定するハンドシェーク端子情報を生成し、
前記フラッシュ・マイコン制御手段が、前記フラッシュ・ライタで生成された前記ハンドシェーク端子情報を入力するとともに、この入力したハンドシェーク端子情報により指定された前記ハンドシェーク端子を初期化し、かつ前記ハンドシェーク端子情報を受信したことを示す端子情報受信信号を生成し、
前記フラッシュ・ライタが、前記フラッシュ・マイコン制御手段から前記端子情報受信信号を入力した後、前記ハンドシェーク端子を用いて、ハンドシェーク信号による書き込みデータの高速通信を行う
ことを特徴とするオンボード書き込み装置。
【請求項２】
前記フラッシュ・ライタが、前記書き込みデータの送受信の同期をとるための同期検出用データを生成し、
前記フラッシュ・マイコン制御手段が、前記シリアル送受信部を初期化するとともに、この初期化されたシリアル送受信部を介して前記フラッシュ・ライタで生成された同期検出用データを入力し、かつこの入力した同期検出用データに対する同期確認用データを生成し、
前記フラッシュ・ライタが、前記フラッシュ・マイコンにおいて生成された同期確認用データを入力して同期判断を行う
ことを特徴とする請求項１記載のオンボード書き込み装置。
【請求項３】
前記ハンドシェーク端子情報が、フラッシュ・マイコンのピン番号からなる
ことを特徴とする請求項１又は２記載のオンボード書き込み装置。
【請求項４】
前記ハンドシェーク端子情報が、フラッシュ・マイコンの構成により割り振られたポート番号からなる
ことを特徴とする請求項１又は２記載のオンボード書き込み装置。
【請求項５】
フラッシュ・ライタによりオンボード書き込みされる不揮発性半導体メモリが内蔵され、かつシリアル送受信部、フラッシュ・マイコン制御手段及び複数のポートを有するフラッシュ・マイコンであって、
前記シリアル送受信部が、前記複数のポート端子の中からハンドシェーク信号の送受信に用いるハンドシェーク端子を指定するハンドシェーク端子情報を前記フラッシュ・ライタから入力し、
前記フラッシュ・マイコン制御手段が、前記シリアル送受信部で入力された前記ハンドシェーク端子情報を受け取るとともに、この受け取ったハンドシェーク端子情報の指定する前記ハンドシェーク端子を初期化し、かつこの初期化した前記ハンドシェーク端子を介して前記ハンドシェーク信号を送受信する
ことを特徴とするフラッシュ・マイコン。
【請求項６】
前記フラッシュ・マイコン制御部が、前記シリアル送受信部における前記ハンドシェーク端子情報の入力前に、前記シリアル送受信部を初期化する
ことを特徴とする請求項５記載のフラッシュ・マイコン。
【請求項７】
フラッシュ・ライタにより書き込みされるデータの高速通信に用いられるハンドシェーク信号を送受信するハンドシェーク端子を、フラッシュ・マイコンに設けられた複数のポート端子の中から選択するハンドシェーク端子決定方法であって、
前記フラッシュ・ライタが、前記複数のポート端子の中から前記ハンドシェーク端子として用いるものを指定するハンドシェーク端子情報を生成する処理と、
前記フラッシュ・マイコンが、前記ハンドシェーク端子情報を入力し、この入力したハンドシェーク端子情報の指定する前記ハンドシェーク端子を初期化し、この初期化したハンドシェーク端子を用いて前記ハンドシェーク信号を送受信する処理とを含む
ことを特徴とするハンドシェーク端子選択方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、オンボード書き込み装置、フラッシュ・マイコン及びハンドシェーク端子選択方法に関し、特に、ハンドシェークにより書き込みデータの高速通信を行うオンボード書き込み装置、フラッシュ・マイコン及びハンドシェーク端子選択方法に関する。
【０００２】
【従来の技術】
記憶されたデータの書き換えが可能な読み出し専用メモリであるＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）のうち、データ書き換えを電気的に全ビット又はブロック単位で行えるものをフラッシュ・メモリ（不揮発性半導体メモリ）という。
また、フラッシュ・メモリを内蔵したマイクロコンピュータをフラッシュ・マイコンといい、このフラッシュ・マイコンをボードに実装した状態で、データ書き換えを行うことをオンボード書き込みという。
【０００３】
このオンボード書き込みには、従来のシリアル通信にハンドシェーク用の信号を付加することで、大容量化したフラッシュ・メモリに大量のデータを高速転送させることが可能なハンドシェーク方式が採用されることが多い。
ハンドシェーク方式とは、同期通信において、送信元が、データ転送の開始について同意を求める要求信号を送信先に送り、要求を認める認識信号（ＡＣＫ信号）を送信先から受信した時点でデータ転送を開始する方式をいう。
【０００４】
このハンドシェーク方式を用いて記憶データの転送が可能なフラッシュ・マイコン及びフラッシュ・ライタの構成について、図７を参照して説明する。
同図は、フラッシュ・マイコン１１０及びフラッシュ・ライタ１２０を含むオンボード書き込み装置１００の構成を示すブロック図である。
【０００５】
同図に示すように、フラッシュ・マイコン１１０は、フラッシュ・ライタ１２０から送信されてくるデータやコマンドを受信するシリアル送受信部１１１と、データ書き込みの対象となるフラッシュ・メモリ部１１２と、ハンドシェーク信号の送受信に用いるハンドシェーク端子１１３と、プログラムによりフラッシュ・メモリ部１１２へのデータ書き込みを制御するフラッシュ・マイコン制御手段１１４とを有している。
【０００６】
ここで、ハンドシェーク端子１１３は、フラッシュ・マイコン１１０の有する汎用ポートの一つに予め割り当てられている。
フラッシュ・マイコン制御手段１１４は、シリアル送受信制御部１１４−１と、フラッシュ・メモリ制御部１１４−２とを有している。
【０００７】
このような構成のオンボード書き込み装置におけるハンドシェーク方式の設定準備について、図８を参照して説明する。
シリアル通信動作を行うために、フラッシュ・マイコン１１０のシリアル送受信制御部１１４−１が、シリアル送受信部１１１及びハンドシェーク端子１１３の初期化を行う（ステップ１００，ステップ１０２）。
【０００８】
この初期化により、フラッシュ・ライタ１２０からの書き込みデータやハンドシェーク信号などを、シリアル送受信部１１１及びハンドシェーク端子１１３において入力することが可能となる（シリアル通信動作の許可）（ステップ１０４）。
シリアル通信動作の開始後、フラッシュ・ライタ１２０が、フラッシュ・マイコン１１０のシリアル送受信部１１１へ同期検出用データを送信する（Ａ１００）。
【０００９】
さらに、シリアル送受信制御部１１４−１が、シリアル送受信部１１１で受信された同期検出用データを入力する。
シリアル送受信制御部１１４−１が、入力した同期検出用データに対する同期確認用データを、シリアル送受信部１１１を介してフラッシュ・ライタ１２０へ送信する（Ａ１０２）。
【００１０】
フラッシュ・ライタ１２０が、受信した同期確認用データにより同期判断を行う（ステップ１０６）。
判断の結果、同期がとれているときは、その後、ハンドシェーク方式による書き込みデータの高速通信が開始される。
【００１１】
一方、同期がとれていないときは、再度、フラッシュ・ライタ１２０が、同期検出用データを送信して同期判断を行う。
オンボード書き込み装置におけるハンドシェーク方式の設定準備をこのような構成とすれば、フラッシュ・メモリに書き込まれるデータの送受信をハンドシェーク信号により高速化できる。
【００１２】
【発明が解決しようとする課題】
しかしながら、従来のオンボード書き込み装置は、汎用ポートにおいてハンドシェーク信号に用いられる端子が予め指定されていたため、フラッシュ・マイコンの汎用性に問題点があった。
たとえば、構成の異なる複数の装置又はシステムに同一のフラッシュ・マイコンを使用する場合は、その装置等の構成により、ハンドシェーク端子として選ばれるポート端子が異なることがあった。
【００１３】
一方、フラッシュ・マイコンにおいては、通常、複数のポート端子をハンドシェーク端子として同時に選択できない。このため、フラッシュ・マイコンに記憶される制御プログラムの作成の際に、使用される装置やシステムを特定できないときは、フラッシュ・マイコンの開発時に、一つのポート端子を任意かつ強制的にハンドシェーク端子として指定していた。
【００１４】
したがって、強制的にハンドシェーク端子が指定されたフラッシュ・マイコンは、たとえば、あるシステムには使用可能であっても他のシステムには使用できないということがあった。
この場合は、他のシステムの構成を変更するか、使用を断念しなければならなかった。
【００１５】
また、同一の装置又はシステムに、異なるフラッシュ・マイコンを使用する場合は、マイコンＸの使用は可能であっても、マイコンＹはハンドシェーク端子の相違により不可能となる場合があった。
特に、マイコンＹがマイコンＸよりも性能が高い場合は、装置又はシステムの品質を向上させることができないか、装置等の構成を変更しなければならないことがあった。
【００１６】
また、従来の製品となるボード上には、オンボード書き込み時にのみ、汎用ポートの一つをハンドシェーク端子として使用できるように、切替回路を付加したものがあった。しかし、切替回路の付加は、製品のコスト・アップにつながっていた。
【００１７】
本発明は、上記の問題を解決すべくなされたものであり、開発・製造後のフラッシュ・マイコンにおいて、複数の汎用ポートの中から任意のものをハンドシェーク端子として選択可能とすることで、構成の異なる装置又はシステムのいずれにも対応可能なオンボード書き込み装置、フラッシュ・マイコン及びハンドシェーク端子選択方法の提供を目的とする。
【００１８】
なお、データ転送に関する従来技術の一例が、特開昭６３−３６３０４号公報に、プログラマブル・コントローラ・システムとして開示されている。
この公報に開示のプログラマブル・コントローラ・システムによれば、データ転送時のハンドシェーク信号処理を専用の命令を使ってデータ転送することで、プログラマがハンドシェーク信号を直接アクセスすること無しにハンドシェーク付きのデータ転送を可能とする。
【００１９】
しかし、特開昭６３−３６３０４号公報のプログラマブル・コントローラ・システムには、汎用ポートにおけるハンドシェーク信号端子の選択についてなんら記述されていないため、上記目的を達成することはできなかった。
【００２０】
また、データ転送に関する他の例が特開平８−４４６６５号公報に複数のデータ転送サイズ及びプロトコルをサポートするバスとして開示されている。
この公報に開示の複数のデータ転送サイズ及びプロトコルをサポートするバスは、データ転送を制御するマスタ要素を含むとともに、一又は二以上のスレーブ要素が接続されたバスにより、各スレーブ要素に共通のデータラインの集合を介し、マスタによって、データ転送する構成としてある。
このような構成により、各種サイズの非同期データ転送、同期データ転送、及び高速同期データ転送をバスを提供することができる。
【００２１】
しかし、特開平８−４４６６５号公報の複数のデータ転送サイズ及びプロトコルをサポートするバスには、ハンドシェーク信号に似たものとしてレディ信号が記載されているが、このレディ信号を扱う端子を任意に選択する方法についてはなんら開示されていないため、上記目的を達成することはできなかった。
【００２２】
さらに、データ書き込みの他の従来例が特開平９−１３４３３９号公報にフラッシュメモリ内蔵マイクロコンピュータ及びそのテスト方法として開示されている。
この公報に開示のフラッシュメモリ内蔵マイクロコンピュータ及びテスト方法は、テストモードの有するエミュレーションテストモードにおいて、この入出力ポートと接続する外部メモリに、入出力ポートを介して、書き込み用ＲＯＭ部に格納されている書き込み用プログラムと同一のプログラムを格納することで、オンボード書き込み動作モードの構成と同一のものとしている。
【００２３】
そして、書き込み用プログラムによる実使用状態でのエミュレーションテスト、各部ハードウェアの良否の判定及び書き込み用プログラムのデバッグを可能とする。
しかし、特開平９−１３４３３９号公報のフラッシュメモリ内蔵マイクロコンピュータ及びそのテスト方法においても、ハンドシェーク信号端子の選択方法に関することはなんら記述されていないため、上記目的を達成することはできなかった。
【００２４】
【課題を解決するための手段】
上記目的を達成するため、本発明の請求項１記載のオンボード書き込み装置は、オンボード書き込みされる不揮発性半導体メモリが内蔵され、かつシリアル送受信部、フラッシュ・マイコン制御手段及び複数のポート端子を有するフラッシュ・マイコンと、不揮発性半導体メモリへのデータ書き込みを行うフラッシュ・ライタとを含むオンボード書き込み装置であって、フラッシュ・ライタが、複数のポート端子の中からハンドシェーク信号の送受信に用いるハンドシェーク端子を指定するハンドシェーク端子情報を生成し、フラッシュ・マイコンにおけるフラッシュ・マイコン制御手段が、フラッシュ・ライタで生成されたハンドシェーク端子情報を入力するとともに、この入力したハンドシェーク端子情報により指定されたハンドシェーク端子を初期化し、かつハンドシェーク端子情報を受信したことを示す端子情報受信信号を生成し、フラッシュ・ライタが、フラッシュ・マイコン制御手段において生成された端子情報受信信号を入力した後、ハンドシェーク端子を用いて、ハンドシェーク信号による書き込みデータの高速通信を行う構成としてある。
【００２５】
オンボード書き込み装置をこのような構成とすると、開発・製造されたフラッシュ・マイコンにおいて、フラッシュ・ライタで生成されたハンドシェーク端子情報により、汎用ポートの中からハンドシェーク端子とするものを選択できるため、使用される装置又はシステムの構成に対応するポート端子をハンドシェーク端子とすることができる。
したがって、使用される装置やシステムの構成にかかわらず、本発明のフラッシュ・マイコンの使用が可能なことから、フラッシュ・マイコンの汎用性の向上を図ることができる。
【００２６】
また、請求項２記載のオンボード書き込み装置は、フラッシュ・ライタが、書き込みデータの送受信の同期をとるための同期検出用データを生成し、フラッシュ・マイコン制御手段が、シリアル送受信部を初期化するとともに、この初期化されたシリアル送受信部を介してフラッシュ・ライタで生成された同期検出用データを入力し、かつこの入力した同期検出用データに対する同期確認用データを生成し、フラッシュ・ライタが、フラッシュ・マイコンにおいて生成された同期確認用データを入力して同期判断を行う構成としてある。
【００２７】
オンボード書き込み装置をこのような構成とすれば、ハンドシェーク端子の選択に必要なハンドシェーク端子情報を、初期化されたシリアル送受信部において受け取ることができる。
【００２８】
また、請求項３記載のオンボード書き込み装置は、ハンドシェーク端子情報が、フラッシュ・マイコンのピン番号からなる構成としてある。
また、請求項４記載のオンボード書き込み装置は、ハンドシェーク端子情報が、フラッシュ・マイコンの構成により割り振られたポート番号からなる構成としてある。
【００２９】
ハンドシェーク端子情報をこれらのような構成とすれば、ハンドシェーク端子とするものを複数のポート端子のなかから特定することができる。
また、ハンドシェーク端子の指定において、既知のデータをハンドシェーク端子情報として用いることができる。
【００３０】
また、請求項５記載のフラッシュ・マイコンは、フラッシュ・ライタによりオンボード書き込みされる不揮発性半導体メモリが内蔵され、かつシリアル送受信部、フラッシュ・マイコン制御手段及び複数のポートを有するフラッシュ・マイコンであって、シリアル送受信部が、複数のポート端子の中からハンドシェーク信号の送受信に用いるハンドシェーク端子を指定するハンドシェーク端子情報をフラッシュ・ライタから入力し、フラッシュ・マイコン制御手段が、シリアル送受信部で入力されたハンドシェーク端子情報を受け取るとともに、この受け取ったハンドシェーク端子情報の指定するハンドシェーク端子を初期化し、かつこの初期化したハンドシェーク端子を介してハンドシェーク信号を送受信する構成としてある。
【００３１】
フラッシュ・マイコンをこのような構成とすると、開発・製造されたフラッシュ・マイコンに対して、複数のポート端子のうちハンドシェーク端子として用いるものを指定するハンドシェーク端子情報を送信することにより、指定されたポートをハンドシェーク端子として使用可能となる。
したがって、フラッシュ・ライタのユーザが、任意に選択したポートをハンドシェーク端子とすることができる。
このため、構成の異なる装置又はシステムに対しても、本発明のフラッシュ・マイコンを汎用することができる。
【００３２】
また、請求項６記載のフラッシュ・マイコンは、フラッシュ・マイコン制御部が、シリアル送受信部におけるハンドシェーク端子情報の入力前に、シリアル送受信部を初期化する構成としてある。
フラッシュ・マイコンをこのような構成とすれば、ハンドシェーク端子を決定する前にシリアル受信部が初期化されるため、その後のハンドシェーク端子情報の入力経路を確保することができる。
【００３３】
また、請求項７記載のハンドシェーク端子選択方法は、フラッシュ・ライタにより書き込みされるデータの高速通信に用いられるハンドシェーク信号を送受信するハンドシェーク端子を、フラッシュ・マイコンに設けられた複数のポート端子の中から選択するハンドシェーク端子決定方法であって、フラッシュ・ライタが、複数のポート端子の中からハンドシェーク端子として用いるものを指定するハンドシェーク端子情報を生成する処理と、フラッシュ・マイコンが、フラッシュ・ライタにおいて生成されたハンドシェーク端子情報を入力し、この入力したハンドシェーク端子情報の指定するハンドシェーク端子を初期化し、この初期化したハンドシェーク端子を用いてハンドシェーク信号を送受信する処理とを含む構成としてある。
【００３４】
ハンドシェーク端子選択方法をこのような構成とすれば、受信したハンドシェーク端子情報により、複数のポートの中から指定されたものをハンドシェーク端子として選択することができる。
よって、フラッシュ・ライタのユーザが、ハンドシェーク端子情報に、フラッシュ・マイコンの使用する装置又はシステムの構成に対応する任意のポートを指定することにより、その装置等に当該フラッシュ・マイコンを使用することができる。
【００３５】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照して説明する。
［実施形態］
まず、本発明のオンボード書き込み装置、フラッシュ・メモリ及びハンドシェーク端子選択方法の実施形態について、図１及び図２を参照して説明する。
図１及び図２は、それぞれ本実施形態のオンボード書き込み装置、フラッシュ・ライタの内部構成を示すブロック図である。
【００３６】
図１に示すように、オンボード書き込み装置１は、フラッシュ・マイコン（フラッシュメモリ内蔵マイクロコンピュータ）１０と、フラッシュ・ライタ２０とを有している。
ここで、フラッシュ・マイコン１０は、シリアル送受信部１１と、フラッシュ・メモリ部１２と、ポート部１３と、フラッシュ・メモリ制御手段１４とを有している。
【００３７】
シリアル送受信部１１は、フラッシュ・ライタ２０との間で各種コマンドや端子情報などを送受信する。
各種コマンドなどの送受信に用いられる経路には、３線式シリアル通信の場合、ＳＣＫ（シリアルクロック）、ＳＩ（シリアルインプット）、ＳＯ（シリアルアウトプット）がある。
【００３８】
フラッシュ・メモリ部１２（不揮発性半導体メモリ）は、フラッシュ・ライタ２０から出力される各種コマンドにより、記憶されているデータの書き換え、読み出し、消去、初期化などが行われる。
なお、本明細書においては、不揮発性半導体メモリであるフラッシュ・メモリを内蔵したフラッシュ・マイコンについて説明するが、フラッシュ・メモリ部１２には、フラッシュ・メモリに代えて、他の不揮発性半導体メモリである強誘電体メモリ、磁気メモリ（コアメモリ）、あるいはメモリセルにＭＯＳトランジスタやバイポーラトランジスタを用いたＲＯＭなどを設けることができる。
【００３９】
ポート部１３は、複数のポート端子からなる。この複数のポート端子のうち一つの端子が、フラッシュ・ライタ２０とシリアル送受信部１１とのデータ通信を高速に行うためのハンドシェーク用信号を入出力するハンドシェーク端子となる。
【００４０】
フラッシュ・メモリ制御手段１４は、シリアル送受信制御部１４−１と、フラッシュ・メモリ制御部１４−２と、ポート制御部１４−３とを有している。
シリアル送受信制御部１４−１は、シリアル送受信部１１の初期化を行う。
また、シリアル送受信制御部１４−１は、及びシリアル送受信部１１で入力されたデータ及び各種コマンドをフラッシュ・メモリ制御部１４−２へ送る。
【００４１】
フラッシュ・メモリ制御部１４−２は、各種コマンドを解析するとともに、フラッシュ・メモリ部１２へのデータ書き換え、読み出しなどを行う。
ポート制御部１４−３は、ポート部１３において管理されている複数のポート端子のうち、ハンドシェーク端子情報によりハンドシェーク端子とするものを選択する。
また、ポート制御部１４−３は、ハンドシェーク端子の選択及び初期化を行う。
【００４２】
フラッシュ・ライタ２０は、図２に示すように、ライタ制御用マイコン２１と、フラッシュＲＯＭ２２とを有している。
ライタ制御用マイコン２１は、ＣＰＵ２１−１と、ＲＡＭ２１−２と、シリアルインタフェース２１−３と、タイマ２１−４と、送受信部２１−５とを有している。
【００４３】
また、フラッシュ・ライタ２０は、フラッシュ・マイコン１０へ各種コマンドを送信して、フラッシュ・メモリ部１２に対するデータの書き込み、消去、データ・ベリファイ等の各種制御を行う。
フラッシュＲＯＭ２２は、フラッシュ・ライタ部２０の手続き処理及び各種コマンド（同期検出用データ、ハンドシェーク設定コマンド及びハンドシェーク端子情報）の生成を行う。
【００４４】
フラッシュＲＯＭ２２において生成される各種コマンドのうちハンドシェーク端子情報は、図示しないフラッシュ・ライタ２０の入力部からユーザにより入力され、又はフラッシュ・ライタ２０を動作制御するプログラムに組み込まれたデータ（端子指定データ）により構成される。
この端子指定データは、複数のポート端子のうち、ハンドシェーク端子として使用するものを示す番号からなる。
【００４５】
なお、各種コマンドのうち同期検出用データ及びハンドシェーク設定コマンドについては、後述する同期判断及びハンドシェーク端子選択方法において説明する。
【００４６】
次に、本実施形態のハンドシェーク端子選択方法によるオンボード書き込み装置の動作について、図３を参照して説明する。
同図は、本実施形態のハンドシェーク端子選択方法によるオンボード書き込み装置の動作を示す動作手順図である。
なお、以下の説明においてオンボード書き込み装置は、３線式シリアル通信を採用したものとするが、３線式シリアル通信に限るものではない。
【００４７】
フラッシュ・マイコン１０のシリアル送受信制御部１４−１において、シリアル送受信部１１の初期化が行われる（ステップ１０）。この初期化により、フラッシュ・マイコン１０とフラッシュ・ライタ２０との間でハンドシェークを行わない通信ができるように設定される。
初期化終了後、シリアル送受信制御部１４−１において、シリアル通信動作が許可されて、フラッシュ・ライタ２０との通信が開始される（ステップ１２）。
【００４８】
同期検出のための特定データ（同期検出用データ）が、フラッシュ・ライタ２０からシリアル送受信部１１へ送られる（Ａ１０）。
シリアル送受信部１１で受信された同期検出用データが、シリアル送受信制御部１４−１に入力される。
【００４９】
シリアル送受信制御部１４−１において、シリアル送受信部１１に対する返信用信号（同期確認用データ）が、シリアル送受信部１１を介してフラッシュ・ライタ２０へ送られる（Ａ１２）。
フラッシュ・ライタ２０において、受信された同期確認用データにより、同期がとれているか否かが判断される（ステップ１４）。
なお、フラッシュ・ライタ２０における同期判断の詳細については、後述する。
【００５０】
判断の結果、同期がとれているときは、ハンドシェーク方式による書き込みデータの送受信を開始するためのハンドシェーク設定コマンドが、シリアル送受信部１１へ送られる（Ａ１４）。
一方、同期がとれていないときは、再度、同期確認のために同期検出用データがシリアル送受信部１１へ送られる。
【００５１】
シリアル送受信部１１で受信されたハンドシェーク設定コマンドが、シリアル送受信制御部１４−１に入力される。
このハンドシェーク設定コマンドの入力により、フラッシュ・ライタ２０からフラッシュ・マイコン１０に対し、書き込みデータの送信時にハンドシェーク方式により高速通信を行う旨が示されることになる。
【００５２】
このハンドシェーク設定コマンドが受信されたシリアル送受信制御部１４−１において、ハンドシェーク端子設定処理への移行が行われる（ステップ１６）。
具体的には、図２に示すフラッシュ・ライタ２０のＢＵＳＹ端子が有効状態に設定される。この設定により、フラッシュ・マイコン１０からフラッシュ・ライタ２０へ、ＢＵＳＹ端子を介して、ＢＵＳＹ状態である旨を知らせることが可能となる。
【００５３】
また、シリアル送受信制御部１４−１におけるハンドシェーク設定コマンドの受信により、ハンドシェーク設定コマンドを正常に受信されたことを示すＡＣＫ信号（コマンド受信信号）が、シリアル送受信制御部１４−１からフラッシュ・ライタ２０へ送られる（Ａ１６）。
【００５４】
フラッシュ・ライタ２０のフラッシュＲＯＭ２２においてコマンド受信信号が受け取られると、ポート部１３が有する複数のポート端子の中からハンドシェーク端子とするものを指定するハンドシェーク端子情報が生成される。
この生成されたハンドシェーク端子情報がシリアル送受信部１１へ送られる（Ａ１８）。
【００５５】
シリアル送受信部１１で受け取られたハンドシェーク端子情報が、シリアル送受信制御部１４−１に入力される。
なお、ハンドシェーク端子情報の詳細については、後述する。
【００５６】
シリアル送受信制御部１４−１において、ハンドシェーク端子情報がシリアル送受信部１１で正常に受信されたことを示すＡＣＫ信号（端子情報受信信号）が、フラッシュ・ライタ２０へ、シリアル送受信部１１及びフラッシュ・マイコン１０のＳＯ端子を介して送られる（Ａ２０）。
【００５７】
シリアル送受信制御部１４−１で入力されたハンドシェーク端子情報が、ポート制御部１４−３において入力され、ポート部１３の有する複数のポート端子の中から、ハンドシェーク端子情報の示すハンドシェーク端子が決定される（ステップ１８）。
決定されたハンドシェーク端子が、ポート制御部１４−３によりハンドシェーク動作を行うために初期化され、書き込みデータの高速通信のためのハンドシェーク信号が送受信される。
【００５８】
次に、フラッシュ・ライタ２０における同期判断について、図４を参照して説明する。
同図に示すように、同期判断は、フラッシュ・ライタ２０が、送信した同期検出用データに対して返送されてきたフラッシュ・マイコン１０からの同期確認用データを受信することで、フラッシュ・ライタ２０とフラッシュ・マイコン１０との間の通信同期をとる処理である。
【００５９】
同期判断は、フラッシュ・ライタ２０からフラッシュ・マイコン１０に対し、電源投入、フラッシュ・マイコン１０のリセットを行った後、最初の通信時に行われる。
最初の通信時は、通常、フラッシュ・ライタ２０からフラッシュ・マイコン１０に対してハンドシェークを行う旨の指示ができないことから、ハンドシェークを行わない状態で同期判断が行われる。
【００６０】
同期判断の動作は、以下のように行われる。
まず、同期検出用データ（例えば“００Ｈ”）が、通信用クロック（ＣＬＫ）の出力に同期して、フラッシュ・ライタ２０からフラッシュ・マイコン１０のシリアル送受信制御部１４−１へ送られる。
同期検出用データが受信されたシリアル送受信制御部１４−１において、同期確認用データ（例えば“３ＣＨ”）の出力の準備が行われる。
【００６１】
一定時間経過後、フラッシュ・ライタ２０からフラッシュ・マイコン１０へ通信用クロックが出力される。
通信用クロックの入力にともない、シリアル送受信制御部１４−１において準備された同期確認用データがフラッシュ・ライタ２０へ送られる。
【００６２】
フラッシュ・ライタ２０において、受信された同期確認用データと同期検出用データとが比較される。
比較の結果、各データが一致している場合は、通信同期がとれていると判断される。
【００６３】
フラッシュ・ライタ２０において同期がとれていると判断されると、続いてハンドシェーク設定コマンドがフラッシュ・マイコン１０へ送られて、ハンドシェーク方式へ移行準備が行われる。
一方、一致していない場合は、一定時間経過後、再度同期検出用データが出力されて、通信同期がとられるまで繰り返される。
【００６４】
次に、ハンドシェーク端子情報について、図５を参照して説明する。
ハンドシェーク端子情報は、フラッシュ・マイコン１０のポート部１３が有する複数のポート端子（入力端子又は入出力ポート）の中から、ハンドシェーク信号の送受信に使用するものを指定するデータである。
【００６５】
ハンドシェーク端子情報の構成には、フラッシュ・マイコン１０のピン番号をそのまま設定するもの、又はフラッシュ・マイコン１０におけるポート番号を使用するものなどがある。
【００６６】
このうち、フラッシュ・マイコン１０のピン番号を設定する場合、たとえば、図５中の２５５ピンをハンドシェーク端子として割り当てるときは、ハンドシェーク端子情報を“２５５”（ＢＣＤ形式）あるいは“ＦＦＨ”（１６進数データ）とする。
なお、ハンドシェーク端子情報が８ビット・データであれば、最大２５５ピンのフラッシュ・マイコン１０に対応可能である。
【００６７】
一方、ポート番号を使用する場合は、同図において、ＢＵＳＹ端子として設定される端子が“Ｐ２４”に割り当てられているため、ハンドシェーク端子情報を“２４Ｈ”と設定する。
【００６８】
このようなハンドシェーク端子情報によるハンドシェーク用端子の設定は、フラッシュ・マイコン１０を搭載するシステムにより、使用されるハンドシェーク用端子が異なるため、ユーザがフラッシュ・ライタ２０を用いてフラッシュ・マイコン１０にプログラム等を書き込む際に、その都度行われる。
【００６９】
次に、ハンドシェーク端子情報によるハンドシェーク端子の決定の手順について説明する。
ハンドシェーク端子の決定手順としては、まず、上記構成（ここでは、ポート番号“２４Ｈ”）で設定されたハンドシェーク端子情報が、ハンドシェーク設定コマンドにより、フラッシュ・ライタ２０からフラッシュ・マイコン１０へ送られる。
【００７０】
送られたハンドシェーク端子情報が、フラッシュ・マイコン１０において解析され、次いでＢＵＳＹ端子が設定された“Ｐ２４”に接続されていることが認識される。
この認識の後、フラッシュ・マイコン１０とフラッシュ・ライタ２０との間で、“Ｐ２４”端子を使用したハンドシェークによる高速通信が可能となる。
【００７１】
オンボード書き込み装置をこのような構成とすれば、従来フラッシュ・マイコンの開発時に決定されていたハンドシェーク端子を、データ書き換え時においてユーザにより複数のポート端子の中から選択することによっても決定することができる。
このため、従来のフラッシュ・マイコンの問題であった、フラッシュ・マイコンの開発時においてハンドシェーク信号端子を装置やシステムの構成を考慮せず強制的に決定することで制限されていた汎用性を確保することができる。
【００７２】
【発明の効果】
以上のように、本発明によれば、フラッシュ・マイコンにおいて汎用性の弊害となっていたハンドシェーク端子の強制決定を、フラッシュ・マイコン搭載後においてフラッシュ・ライタから入力したハンドシェーク端子情報の示す指定端子を複数のポート端子の中から選択・決定することにより、構成の異なる装置やシステムに対してもフラッシュ・マイコンの使用が可能となるため、汎用性の確保を図ることができる。
【００７３】
また、フラッシュ・ライタとのデータ通信の設定段階において、シリアル送受信部の初期化、この初期化されたシリアル送受信部における同期判断、ハンドシェーク設定コマンドによるハンドシェーク方式の設定、及びハンドシェーク端子情報により指定されたハンドシェーク端子の初期化を行う方法とすることで、同期判断によりデータ通信の同期が確保されるとともに、ハンドシェーク方式を用いた高速通信を実現することができる。
【００７４】
さらに、従来、ある端子について通常は他の目的に使用し、オンボード書き込み時のみハンドシェーク端子として使用するように切り替えを行う切り替え回路が不要となるため、製品のコストを低減できる。
【図面の簡単な説明】
【図１】本発明のフラッシュ書き込み通信選択システムの構成を示すブロック図である。
【図２】本発明のフラッシュ・ライタの内部構成を示すブロック図である。
【図３】本発明のオンボード書き込み装置の動作を示す動作手順図である。
【図４】同期判断の信号出力を示すタイミング図である。
【図５】ハンドシェーク設定コマンドの出力を示すタイミング図である。
【図６】フラッシュ・マイコンのポート端子の構成を示す構成図である。
【図７】従来のオンボード書き込み装置の内部構成を示すブロック図である。
【図８】従来のオンボード書き込み装置の動作を示す動作手順図である。
【符号の説明】
１  オンボード書き込み装置
１０  フラッシュ・マイコン
１１  シリアル送受信部
１２  フラッシュ・メモリ部
１３  ポート部
１４  フラッシュ・マイコン制御部
１４−１  シリアル送受信制御部
１４−２  フラッシュ・メモリ制御部
１４−３  ポート制御部
２０  フラッシュ・ライタ
２１  ライタ制御用マイコン
２１−１  ＣＰＵ
２１−２  ＲＡＭ
２１−３  シリアルＩ／Ｆ
２１−４  タイマ
２１−５  送受信部
２２  フラッシュＲＯＭ
１００  オンボード書き込み装置
１１０  フラッシュ・マイコン
１１１  シリアル送受信部
１１２  フラッシュ・メモリ部
１１３  ハンドシェーク端子
１１４  制御手段
１１４−１  シリアル送受信部
１１４−２  フラッシュ・メモリ制御部
１２０  フラッシュ・ライタ
【図１】
0004425431.tif 000002
【図２】
0004425431.tif 000003
【図３】
0004425431.tif 000004
【図４】
0004425431.tif 000005
【図５】
0004425431.tif 000006
【図６】
0004425431.tif 000007
【図７】
0004425431.tif 000008
【図８】
0004425431.tif 000009