(57)【特許請求の範囲】
【請求項１】
ホストとマイクロコンピュータ間のデータ送受信のインターフェースを行うＵＳＢインターフェース回路と、書き込み制御プログラムが格納された第１のプログラム領域と書き換え及び読み出し可能なデータを格納する第２のプログラム領域とを有する不揮発性メモリと、前記ＵＳＢインターフェース回路によってパラレル変換されたホストからのプログラムデータを一時記憶するテンポラリレジスタと、前記テンポラリレジスタより容量が大きいＲＡＭと、前記書き込み制御プログラムに従って、プログラム命令を実行するＣＰＵと、を備えたマイクロコンピュータであって、
前記ＲＡＭと前記テンポラリレジスタとは前記テンポラリレジスタのビット数と等しい信号線によって接続され、前記ＲＡＭは前記信号線を介して前記テンポラリレジスタに保持されたデータを一括で保持し、前記ＲＡＭに蓄積されたデータが所定量に達すると、前記ＣＰＵのバスを経由し、前記ＲＡＭに蓄積されたデータを前記第２のプログラム領域に書き込むことを特徴とするマイクロコンピュータ。
【請求項２】
前記プログラム格納用の不揮発性メモリのアドレスを制御するプログラムカウンタを備え、マイクロコンピュータのリセットに応じて、前記プログラムカウンタの値を前記第１のプログラム領域の先頭アドレスにジャンプさせることを特徴とする請求項１に記載のマイクロコンピュータ。
【請求項３】
前記ＵＳＢインターフェース回路から出力される第１のアドレス信号と前記ＣＰＵから出力され
る第２のアドレス信号を選択して前記ＲＡＭのアドレスデコーダに入力するアドレス選択回路を備え、前記ＲＡＭのデータ領域をＵＳＢインターフェース回路及び前記ＣＰＵからアクセス可能としたことを特徴とする請求項２に記載のマイクロコンピュータ。
【請求項４】
前記アドレス選択回路は、ホストからのデータ受信中は前記ＵＳＢインターフェース回路から出力される第１のアドレス信号を選択することを特徴とする請求項３に記載のマイクロコンピュータ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＵＳＢインターフェース回路及びプログラム格納用メモリとしてＥＥＰＲＯＭを内蔵したマイクロコンピュータに関するものであり、特にホスト（例えば、パーソナルコンピュータ）からＵＳＢインターフェース回路を介してＥＥＰＲＯＭへプログラムデータを書き込み、ベリファイ等を行うことを可能にしたマイクロコンピュータに関する。
【０００２】
【従来の技術】
近年、パーソナルコンピュータ等において、周辺デバイスの拡張性の自由度を高めるために、ＵＳＢ（Universal Serial Bus）のサポートが始められている。ＵＳＢはユーザの利便性を考慮して考案されたシリアルインターフェース規格であって、キーボード、マウス、カメラ、プリンタ、スキャナー、スピーカ等の様々な周辺デバイスとパーソナルコンピュータ等との通信に共通に使用できる。
【０００３】
図４はＵＳＢを利用したパーソナルコンピュータと周辺デバイスとの接続構成例を示す図である。上位のパーソナルコンピュータ１００とハブ１０１との間はＵＳＢケーブルで接続され、さらにハブ１０１の下位には周辺デバイス１０２〜１０５が接続され得る。そして、パーソナルコンピュータ１００によって周辺デバイス１０２〜１０５の管理が行われる仕組みになっている。このように、ＵＳＢは多重スター型のネットワーク構造の双方向通信可能なシリアルバスといえる。
【０００４】
ここで、ＵＳＢケーブルには４本の信号線が含まれる。その内訳は電源用２本と、データ信号用２本である。データ信号は基本的には差動信号（Ｄ+，Ｄ-）として扱われる。また、ＵＳＢを利用したデータ転送は、転送単位がフレームという概念で時間分割され、そのフレームを積み重ねていくことにより行う。１つのフレームはＳＯＦ（Start Of Frame）パケットにより開始する。そして、ホストのパーソナルコンピュータは予めそのフレームの中にスケジューリングされたデータ転送要求トークン（キーボードやカメラからのデータ入力要求や、音声データの出力要求）を順次送出することにより、複数の周辺デバイスとのデータ転送を並行して行う。
【０００５】
なお、ＵＳＢに関する技術文献として、例えば「Interface」（１９９７年１月号）、特開平１１−２０５４１２号公報等がある。
【０００６】
ところで、上述した周辺デバイスには、通常、デバイスの動作を制御するためのマイクロコンピュータが搭載される。ここで、マイクロコンピュータにはプログラム格納用メモリとして、電気的に書き換え、読み出し及び消去可能な不揮発性メモリであるＥＥＰＲＯＭが内蔵されているものとする。このＥＥＰＲＯＭには、上記の機能に加えてプログラムデータを一括消去する機能を備えたフラッシュＲＯＭも含まれる。
【０００７】
従来、上記のＥＥＰＲＯＭにプログラムデータを書き込む場合、２つの方法が行われていた。以下では、プログラム格納用メモリとしてフラッシュＲＯＭを備えたマイクロコンピュータを例として説明する。
【０００８】
１つの方法は、図５に示すようにＲＯＭライター１１０を用いてマイクロコンピュータ１１１に内蔵されたフラッシュＲＯＭ１１２にパラレルにデータを書き込む場合である。例えば、８ビットのマイクロコンピュータ１１１においては、データ信号線が８本、アドレス信号線が１６本、コントロール信号線が３本（チップイネーブル信号、ライトイネーブル信号、リードイネーブル信号）が必要であった。
【０００９】
また、フラッシュＲＯＭ１１２に書き込むべきプログラムデータはパーソナルコンピュータ１００内にヘキサファイル等の所定のファイル形式で存在する場合が多い。そこで、第２の方法としてパーソナルコンピュータ１００からフラッシュＲＯＭ１１２にプログラムデータを書き込む場合、図６に示すように、パーソナルコンピュータ１００に併設されたシリアル通信ユニット１１５（ＲＳ２３２Ｃ等）を用い、シリアル信号線１１３を介してマイクロコンピュータ１１１と接続していた。
【００１０】
また、マイクロコンピュータ１１１にはＳＩＯ（Serial Input/Output）回路１１４が内蔵されると共に、フラッシュＲＯＭ１１２の所定領域にはＳＩＯ回路１１４を動作させるためのＳＩＯ制御プログラムが予め書き込まれている。パーソナルコンピュータ１００からシリアル信号線１１３を介してプログラムデータが転送されて来ると、ＳＩＯ回路１１４はＳＩＯ制御プログラムに従って、フラッシュＲＯＭ１１２に書き込み動作を行う。しかしながら、上述したシステム構成ではＳＩＯ回路１１４、シリアル通信ユニット１１５（ＲＳ２３２Ｃ等）という特別な外部回路と通信ソフトを必要としていた。
【００１１】
【発明が解決しようとする課題】
上述したように、従来マイクロコンピュータに内蔵されたプログラム格納用メモリであるフラッシュＲＯＭにプログラムデータを書き込む場合、当該プログラムデータをパラレルに書き込むと信号線の本数が多くなり、シリアルに書き込む場合には特別の外部回路や通信ソフトを必要としていた。
【００１２】
そこで本発明は、ホスト（パーソナルコンピュータ）と周辺デバイスとを接続して双方向通信可能な環境において備えられているＵＳＢケーブルをそのまま利用して、ホスト（パーソナルコンピュータ）からマイクロコンピュータに内蔵されたフラッシュＲＯＭへプログラムデータの書き込み等を行うと共に、プログラムデータ書き込み後はＵＳＢケーブルを本来の目的である双方向通信に用いるようにし、特別のシリアルラインや外部回路、通信ソフト等を不要とすることを目的としている。
【００１３】
【課題を解決するための手段】
本発明のマイクロコンピュータは、上述した課題を解決するために、ホストとマイクロコンピュータ間のデータの送受信のインターフェースを行うＵＳＢインターフェース回路と、電気的に書き換え及び読み出し可能なプログラム格納用の不揮発性メモリと、前記ＵＳＢインターフェース回路によってパラレル変換されたホストからのプログラムデータを一時記憶するデータメモリと、前記不揮発性メモリから読み出されるプログラム命令を実行するＣＰＵと、を備えたマイクロコンピュータであって、前記プログラム格納用の不揮発性メモリは、書き込み制御プログラムが格納された第１のプログラム領域と前記プログラムデータを書き込むべき第２のプログラム領域とを有し、前記第１のプログラム領域に格納された書き込み制御プログラムに従って、前記データメモリに一時記憶されたプログラムデータを第２のプログラム領域に書き込むことを特徴とする。
【００１４】
これにより、ＵＳＢケーブルを利用して、ホストからマイクロコンピュータへプログラムデータを高速に書き込むことが可能となる。
【００１５】
また、前記プログラム格納用の不揮発性メモリのアドレスを制御するプログラムカウンタを備え、マイクロコンピュータのリセットに応じて、前記プログラムカウンタの値を前記第１のプログラム領域の先頭アドレスにジャンプさせることを特徴する。これにより、マイクロコンピュータのリセットに応じて、確実に書き込み制御プログラムをスタートさせることができる。
【００１６】
また、前記データメモリはＲＡＭであることを特徴とする。汎用のマイクロコンピュータが備えたＲＡＭを有効利用するためである。
【００１７】
また、ＲＡＭは、ＵＳＢインターフェース回路及び前記ＣＰＵからアクセス可能であることを特徴とする。ＲＡＭを有効利用するためである。
【００１８】
また、前記ＵＳＢインターフェース回路から出力される第１のアドレス信号と前記ＣＰＵから出力される第２のアドレス信号を選択して前記ＲＡＭのアドレスデコーダに入力するアドレス選択回路を備え、前記ＲＡＭのデータ領域をＵＳＢインターフェース回路及び前記ＣＰＵからアクセス可能としたことを特徴とする。
【００１９】
また、前記アドレス選択回路は、ホストからのデータ受信中は前記ＵＳＢインターフェース回路から出力される第１のアドレス信号を選択することを特徴とする。これにより、ホストからのデータ受信を優先させ、確実にデータ受信をすることが可能となる。
【００２０】
【発明の実施の形態】
次に、本発明の実施形態について図面を参照しながら説明する。図１は、本発明の実施形態に係るマイクロコンピュータの構成を示すブロック図である。
【００２１】
以下で、マイクロコンピュータ１０は８ビット構成として説明する。マイクロコンピュータ１０とパーソナルコンピュータ１００とは１対の差動信号線によって接続される。そして、ＵＳＢデータすなわち、ＵＳＢ差動信号（Ｄ+，Ｄ-）はマイクロコンピュータ１０の端子Ｐ１，Ｐ２を介して入出力される。ここで、ＵＳＢ差動信号（Ｄ+，Ｄ-）は、ＵＳＢ通信プロトコルに従ったシリアルデータ信号である。
【００２２】
２０は、端子Ｐ１，Ｐ２に接続された入出力回路であって、差動入力バッファ２１、入力バッファ２２，２３及び出力バッファ２４，２５から構成されている。ここで、入力バッファ２２，２３はＵＳＢ差動信号（Ｄ+，Ｄ-）の状態が（Ｌ，Ｌ）となる場合を考慮して設けられている。
【００２３】
マイクロコンピュータ１０に内蔵されたＵＳＢインターフェース回路３０は、パーソナルコンピュータ１００との間のデータ送受信のインターフェースを行うもので、特にデータ受信時は入出力回路２０からのＵＳＢ差動信号（Ｄ+，Ｄ-）を受けて各種のデータ処理を行う。ＵＳＢインターフェース回路３０は、上記シリアルデータ信号から必要なデータを抽出する。この時、ＵＳＢインターフェース回路３０は当該シリアルデータ信号が如何なる転送フォーマットであるかを判別すると共に、エラー信号処理等を行う。またＵＳＢインターフェース回路３０は、上記データ処理が施されたシリアル信号をマイクロコンピュータ１０が処理可能な所定形式のパラレル信号（例えば８ビット構成）に変換する。
【００２４】
さらに、ＵＳＢインターフェース回路３０は、パラレル変換された８ビット×４＝３２ビットのプログラムデータを一時記憶するテンポラリレジスタ３１及び制御レジスタ（不図示）を備えている。制御レジスタにはパーソナルコンピュータ１００がホストとして管理すべき各種データ（デバイスに割り付けられるアドレスデータ等）がセットされる。
【００２５】
なお、ＵＳＢインターフェース回路３０はマイクロコンピュータ１０からパーソナルコンピュータ１００へのデータ送信時には上記と全く逆のデータ処理（パラレルデータからシリアルデータへの変換等）を行っている。
【００２６】
ＲＡＭ４０はＵＳＢインターフェース回路３０のテンポラリレジスタ３１のデータから逐次転送される３２ビット単位のプログラムデータを一時記憶するために利用される。そして、ＵＳＢインターフェース回路３０とＲＡＭ４０との間のデータ転送を行うために、専用の３２本の信号線が設けられている。ＲＡＭ４０に蓄積されたプログラムデータが所定量（例えば１２８バイト）に達すると、１２８バイトのプログラムデータはマイクロコンピュータ１０のバス４５を経由してフラッシュＲＯＭ５０へ転送される。
【００２７】
逆に、フラッシュＲＯＭ５０に書き込まれたプログラムデータをＲＡＭ４０へ転送し、そのＲＡＭ４０内に記憶されたプログラムデータをＵＳＢインターフェース回路３０のテンポラリレジスタ３１へ転送することも可能である。
【００２８】
一般に、ＵＳＢ通信によればパーソナルコンピュータ１００から大量のデータがデバイス側に送出されるため、デバイス側には特別のデータバッファを設けることが行われる。
【００２９】
これに対して、本発明ではマイクロコンピュータ１０がデータメモリとして本来有しているＲＡＭ４０をＵＳＢ通信によるデータを一時記憶するために利用するという構成を採ることでデータメモリの有効活用を図っている点も特徴である。
【００３０】
図２は、ＲＡＭ４０及び周辺回路を示すブロック図である。ＵＳＢインターフェース回路３０からはアドレス信号ＡＤＲ１、ＣＰＵ７０からはアドレス信号ＡＤＲ２が出力され、アドレス選択回路８０に入力される。アドレス選択回路８０はアドレス信号ＡＤＲ１，ＡＤＲ２のいずれかを選択してアドレス指定回路８１に入力する。
【００３１】
そして、アドレス指定回路８１の出力はアドレスデコーダ４１に入力され、アドレス信号ＡＤＲ１，ＡＤＲ２のいずれかに応じて同一のデータ領域がアクセス可能に構成されている。
【００３２】
上述した構成によれば、ＲＡＭ４０のデータ領域４２はアドレス信号ＡＤＲ２が選択された場合はＣＰＵ７０がコントロールするデータメモリ領域として利用可能であると共に、アドレス信号ＡＤＲ１が選択された場合には、ＵＳＢインターフェース回路３０からのプログラムデータ（３２ビット単位）を一時記憶するためのデータメモリ領域としても利用可能である。すなわち、ＲＡＭ４０のデータ領域は、ＣＰＵ７０とＵＳＢインターフェース回路３０の両方からアクセス可能である。
【００３３】
ただし、上記のアドレス選択は、パーソナルコンピュータ１００とのデータ送受信中については、ＵＳＢインターフェース回路３０からのアドレス信号ＡＤＲ１を選択するように構成されている。これはパーソナルコンピュータ１００からのデータ転送が途中で中断できないというＵＳＢの特性に基づくものである。具体的には、ＵＳＢインターフェース回路３０のテンポラリレジスタ３１がフル状態なったことを検知する信号に基づいて、マイクロコンピュータ１０はウエイト（待機）状態に自動的に設定される。
【００３４】
また、図１において、５０はフラッシュＲＯＭであり、ＵＳＢ制御プログラム（具体的には、書き込み制御プログラム）が予め書き込まれ、格納された第１のプログラム領域５３と、パーソナルコンピュータ１００からのプログラムデータがＲＡＭ４０を経由して書き込まれる第２のプログラム領域５２と、に分割されている。ここで、第１のプログラム領域５３は書き換えが不能なようにライトプロテクトされている。
【００３５】
６０はプログラムカウンタであって、その出力はフラッシュＲＯＭ５０のアドレスデコーダ５１に印加されている。プログラムカウンタ６０の出力値は後に説明するようにＵＳＢ通信の状態に応じて、ＣＰＵからの命令により所定番地にジャンプする。すなわち、パーソナルコンピュータ１００からのプログラムデータの書き込み時には、プログラムカウンタ６０は第１のプログラム領域５３（書き込み制御プログラム）の先頭アドレスである（ＦＦ００）番地にジャンプすると共に、プログラムデータの書き込み後は、第２のプログラム領域５２の先頭アドレスである（００００）番地にジャンプする。そして、ＣＰＵ７０は、フラッシュＲＯＭ５０から読み出されるプログラム命令に従ってマイクロコンピュータ１０の動作を実行する。
【００３６】
次に、上述したマイクロコンピュータ１０の動作例について図３のフローチャートを参照しながら説明する。まず、最初のステップ２００では、マイクロコンピュータ１０がＵＳＢケーブルに接続される。このとき、ＵＳＢケーブルの電源ラインによってマイクロコンピュータ１０に電源が投入されることにより、マイクロコンピュータ１０がパワーオンリセットによりリセットされる。
【００３７】
次に、ステップ２０１において、プログラムカウンタ６０の値は、第１のプログラム領域５３（書き込み制御プログラム）の先頭アドレスである（ＦＦ００）番地へジャンプする。従って、その後マイクロコンピュータ１０は当該書き込み制御プログラムに従って以下の処理を実行する。
【００３８】
上記のようにステップ２０１においてＵＳＢケーブルにマイクロコンピュータ１０が接続されると、マイクロコンピュータ１０側に設けられたプルアップ抵抗を介して、ＵＳＢ差動信号（Ｄ+，Ｄ-）が（Ｌ，Ｌ）から例えば（Ｈ，Ｌ）へと変化する。パーソナルコンピュータ１００はこのＵＳＢ差動信号（Ｄ+，Ｄ-）の変化により、マイクロコンピュータ１０がＵＳＢネットワークに接続されたことを検知し、所定時間後にＵＳＢバスリセット信号を発行する。ステップ２０２では、このＵＳＢバスリセット信号待ち状態である。
【００３９】
ステップ２０３は、ＵＳＢバスリセット信号を受信したか否かを判定するステップであり、ＮＯと判定された場合には待ち状態を維持する。ＹＥＳと判定されると、次のステップ２０４に進む。
【００４０】
ステップ２０４は、エニュミュレーション（Enumeration）によるＵＳＢの初期化を行う。ここで、エニュミュレーションとは、一般にマイクロコンピュータ１０とパーソナルコンピュータ１００との間でＵＳＢデータの送受信を行うことが可能な環境設定を行うための一連のソフトウエア処理である。
【００４１】
エニュミュレーションにより行われる主な処理は、パーソナルコンピュータ１００の初期化と、パーソナルコンピュータ１００が支配するデバイスにアドレスを割り付ける処理である。後者において、ＵＳＢインターフェース回路３０内の制御レジスタ（アドレスレジスタ）内に、パーソナルコンピュータ１００が割り当てた特定のアドレスが記憶される。これにより、マイクロコンピュータ１０は、パーソナルコンピュータ１００が送信して来たＵＳＢパケット内のアドレスと上記アドレスレジスタ内のアドレスとを照合し、それらが一致した場合にのみ送信されきたＵＳＢデータの処理を行う。
【００４２】
こうして、ＵＳＢデータの送受信を行うことが可能な環境設定が終了すると、ステップ２０５ではパーソナルコンピュータ１００からフラッシュＲＯＭに書き込むべきプログラムデータがＵＳＢ差動信号データ（Ｄ+，Ｄ-）の形で入力されてくる。
【００４３】
ステップ２０６ではこの入力されたＵＳＢ差動信号データ（Ｄ+，Ｄ-）をＵＳＢインターフェース回路３０によってデータ処理する。このデータ処理内容は上述した通りであるが、シリアルデータ（８ビット×４）を所定のパラレルデータ（３２ビット）に変換するのがその主な処理である。
【００４４】
ステップ２０７では、ＵＳＢインターフェース回路３０からＲＡＭ４０へパラレル変換されたプログラムデータが書き込まれる。そして、ＲＡＭ４０へ書き込まれたプログラムデータ量が所定量（例えば１２８バイト）に達すると、この所定量を単位としてＲＡＭ４０からバス４５を介してフラッシュＲＯＭ５０の第２のプログラム領域５２へ書き込みが開始される（ステップ２０８）。これはフラッシュＲＯＭ５０が複数ブロックに分割されており、１２８バイトをブロックとして構成されていることによる。したがって、ＲＡＭ４０のデータの蓄積量はフラッシュＲＯＭ５０のブロック構成に応じて適宜に選択可能である。
【００４５】
ここで、実際にはＵＳＢインターフェース回路３０からＲＡＭ４０へパラレル変換されたプログラムデータの書き込み動作と、ＲＡＭ４０からフラッシュＲＯＭ５０への書き込み動作は並行して行われるために、高速書き込みが実現される。
【００４６】
ステップ２０８において、フラッシュＲＯＭへの書き込みが開始されるがこれには所定の時間を要する。そこで、ステップ２０９ではマイクロコンピュータ１０はソフト的にＮＡＣＫ状態にセットされる。これはＵＳＢパケットのハンドシェイク・パケットの一種であって、ホストであるパーソナルコンピュータ１００からのデータを受け付けることができないことを知らせるためにパーソナルコンピュータ１００へ返される。
【００４７】
そして、ステップ２１０では書き込み終了か否かを判定する。その判定結果がＮＯであれば、ＮＡＣＫ状態を維持する。その判定結果がＹＥＳであれば、ＡＣＫ状態にセットされ、ＡＣＫはマイクロコンピュータ１０側でデータを受け付け可能であることを知らせるためにパーソナルコンピュータ１００へ返される。
【００４８】
そして、次のステップ２１２ではフラッシュＲＯＭ５０へのプログラムデータの書き込みが全て終了したかを判定する。その判定結果がＮＯであれば、ステップ２０５へ戻り、残余のプログラムデータの書き込みを続行する。ここで、プログラムデータの書き込みはブロック（ページ）単位（例えば１２８バイト）で行われるため、全部のページが書き込まれるまでこの処理は繰り返される。
【００４９】
判定結果がＹＥＳの場合には、プログラムカウンタ６０の値は第２のプログラム領域５２の先頭アドレスである（００００）番地にジャンプする。そして、マイクロコンピュータ１０はパーソナルコンピュータ１００から供給されたプログラムデータを読み出し、ＣＰＵ７０は解読されたプログラム命令に基づいてマイクロコンピュータ１０の動作を実行開始する。
【００５０】
なお、上述した実施形態では、パーソナルコンピュータ１００からマイクロコンピュータ１０のフラッシュＲＯＭ５０に対してプログラムデータを書き込む場合について説明したが、フラッシュＲＯＭ５０に書き込まれたプログラムデータを読み出して、パーソナルコンピュータ１００へ送り返し、ベリファイを行うことも可能である。その場合には、データ処理の順序は上述したものと逆の順序となる。
【００５１】
すなわち、フラッシュＲＯＭ５０から読み出されたプログラムデータはＲＡＭ４０に一時記憶された後、ＵＳＢインターフェース回路３０へ逐次転送される。そして、ＵＳＢインターフェース回路３０では書き込みの際とは逆のデータ処理を施し、パラレルデータを所定のシリアルデータに変換後、ＵＳＢケーブルを介してパーソナルコンピュータ１００へ送出する。
【００５２】
また、上述した実施形態では初期状態においてプログラムデータを書き込むべき第２のプログラム領域が空状態であるが、これに限定されることなくプログラムのバージョンアップに伴うプログラムの書き換えに対しても同様に適用することができる。
【００５３】
【発明の効果】
本発明によれば、ホスト（例えばパーソナルコンピュータ）と周辺デバイスとの接続のためのＵＳＢケーブルを利用して、ホストからマイクロコンピュータへのプログラム書き込みを高速に行うことが可能となる。
【００５４】
また、プログラムの転送にＵＳＢを利用しているので、特別のシリアルラインや外部回路、通信ソフト等を不要とすることができる。
【００５５】
さらにまた、プログラムデータを一時記憶するためのデータメモリとして、マイクロコンピュータのＲＡＭのデータ領域を利用することにより、特別のデータバッファを必要としないという利点も有している。
【図面の簡単な説明】
【図１】本発明の実施形態に係るマイクロコンピュータを示すブロック図である。
【図２】本発明の実施形態に係るマイクロコンピュータのＲＡＭ及び周辺回路を示すブロック図である。
【図３】本発明の実施形態に係るマイクロコンピュータ１０の動作例を示すフローチャートである。
【図４】ＵＳＢを利用したパーソナルコンピュータと周辺デバイスとの接続構成例を示す図である。
【図５】従来のフラッシュＲＯＭへのプログラムデータ書き込み方法を示す図である。
【図６】従来のフラッシュＲＯＭへのプログラムデータ書き込み方法を示す図である。
【符号の説明】
１０    マイクロコンピュータ
２０    入出力回路
３０    ＵＳＢインターフェース回路
４０    ＲＡＭ
４５    バス
５０    フラッシュＲＯＭ
５１    アドレスデコーダ
５２    第２のプログラム領域
５３    第１のプログラム領域
６０    プログラムカウンタ
７０    ＣＰＵ
【図１】
0004793798.tif 000002
【図２】
0004793798.tif 000003
【図３】
0004793798.tif 000004
【図４】
0004793798.tif 000005
【図５】
0004793798.tif 000006
【図６】
0004793798.tif 000007