(57)【要約】【課題】  回路面積の増大及び製造コストの増大を抑制しつつ、電気的に書換え可能な内部不揮発性メモリにＣＰＵの動作プログラムの書き込みを行うことができる制御装置を提供する。【解決手段】  ダウンロードイネーブル信号を受信したダウンロード制御回路５１は、第１コマンドレジスタ６１の読み出し用コマンドセット及びアドレスレジスタ５３にセットされたアドレスにより、外部シリアルフラッシュＲＯＭ３０のデータを読み出し、データレジスタ５４に一時的に記憶する。そして、第２コマンドレジスタ６２の書き込み用コマンドセット、アドレスレジスタ５３にセットされたアドレス及びデータレジスタ５４に一時的に記憶されたデータにより、内部フラッシュＲＯＭ１０にデータを書き込む。【選択図】  図１
2005309839.tif 000002
【特許請求の範囲】
【請求項１】
マイコンに所定の動作制御を行わせる動作プログラムを記憶するための電気的に書換え可能な内部不揮発性メモリと、
前記内部不揮発性メモリとの入出力を制御する内部インタフェースと、
外部不揮発性メモリとの入出力を制御する外部インタフェースと、
外部からの指示により、前記外部インタフェースを介して前記外部不揮発性メモリに記憶されたデータを所定のアドレス単位で読み出し、前記内部インタフェースを介して前記内部不揮発性メモリに前記所定のアドレス単位で前記データを書き込む繰り返し動作を制御するダウンロード回路と、を備え、
外部からの前記指示により前記ダウンロード回路が動作中は、前記マイコンはスリープ状態となり、前記内部インタフェースは前記内部不揮発性メモリと前記マイコンとの接続を切断することを特徴とする制御装置。
【請求項２】
請求項１に記載の制御装置において、
前記ダウンロード回路は、前記内部不揮発性メモリに前記データを書き込み中の状態を維持するためのフリップフロップと、前記内部不揮発性メモリへのデータの書き込み時間を管理するカウンタと、を有することを特徴とする制御装置。
【請求項３】
請求項１に記載の制御装置において、
前記外部シリアルメモリに記憶されたデータを読み出すためのコマンドセットを記憶した内部不揮発性の第１コマンドレジスタを有することを特徴とする制御装置。
【請求項４】
請求項１に記載の制御装置において、
前記内部不揮発性メモリに前記データを書き込むためのコマンドセットを記憶する第２コマンドレジスタを有することを特徴とする制御装置。
【請求項５】
請求項１〜４のいずれか１項に記載の制御装置において、
前記ダウンロード回路が動作していないときに外部との信号のやり取りに使用する通常端子を備え、
前記外部不揮発性メモリと前記外部インタフェースとの間の少なくとも一部の外部端子は、前記通常端子の一部又は全部であることを特徴とする制御装置。
【請求項６】
請求項５に記載の制御装置において、
前記外部不揮発性メモリに電源を供給する端子を有することを特徴とする制御装置。
【請求項７】
請求項５に記載の制御装置において、
前記外部不揮発性メモリは、シリアルメモリであることを特徴とする制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置に関するものである。
【背景技術】
【０００２】
一般に、光ディスクドライブ装置等の周辺機器には、各回路の制御を行うためのマイコン（ＣＰＵ）の動作プログラムを記憶するためのメモリとして、ＲＯＭが搭載されている。近年では、このＲＯＭとしてデータを電気的に書き換え可能なフラッシュＲＯＭが使用されることが一般的である。これは、周辺機器の開発中等に行われるデバッグや、周辺機器の機能向上のためのアップデート（バージョンアップ）により、動作プログラムの更新が必要になることによる。
【０００３】
フラッシュＲＯＭには２種類のプログラムが書き込まれており、それはＣＰＵが各回路の制御を行うための前述の動作プログラムと、それを更新するためのアップデート用プログラムとである。周辺機器の通常の動作時には、ＣＰＵはフラッシュＲＯＭに書き込まれた動作プログラムに従って各回路の制御を行う。一方、動作プログラムの更新時には、ＣＰＵはフラッシュＲＯＭに書き込まれたアップデート用プログラムに従ってフラッシュＲＯＭに記憶された動作プログラムを書き換える。
【０００４】
以上の説明は、フラッシュＲＯＭに動作プログラムやアップデート用プログラムが既に書き込まれている状態での動作である。しかし、全くの初期状態では、当然ながらフラッシュＲＯＭには何らデータは書き込まれていない。すなわち、ＣＰＵが動作プログラムをフラッシュＲＯＭに書き込むためには少なくともアップデート用プログラムが既にフラッシュＲＯＭに書き込まれている必要があるが、全くの初期状態ではこれも書き込まれてはいない。
【０００５】
そのため、従来では、フラッシュＲＯＭメーカーに委託したり、ＲＯＭライタなどを用いたりしてフラッシュＲＯＭ単体の状態で予め決められた初期データ（少なくともアップデート用プログラムを含むデータ）の書き込みを行っている。この初期データの書き込まれたフラッシュＲＯＭのチップは、その後、当該機器のプリント基板にハンダ付けなどで実装されることになる。
【特許文献１】特開平５−８１０１２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、上述の手法では、周辺機器にフラッシュＲＯＭのチップを実装する前に、初期データの書き込み作業が別途必要になることから工程が煩雑化して製造コストの増大を余儀なくされる。
【０００７】
そこで、上記とは別の従来技術では、データの書き込まれていないフラッシュＲＯＭを実装し、その後に動作プログラムの書き込みを行う手法が採用されている。具体的には、当該機器には、少なくともアップデート用プログラムを記憶したマスクＲＯＭが内蔵され、このマスクＲＯＭはＣＰＵに接続されている。そして、マスクＲＯＭに記憶されたアップデート用プログラムに従ってＣＰＵを動作させ、そのＣＰＵがＡＴＡ／ＡＴＡＰＩやＳＣＳＩなどのインタフェースを介して外部のホストコンピュータから受信した動作プログラムをフラッシュＲＯＭに書き込む。
【０００８】
しかしながら、この手法では、少なくともアップデート用プログラムを記憶したマスクＲＯＭが必要であるが、このマスクＲＯＭは通常の動作には使用されない。従って、通常の動作に全く必要が無いマスクＲＯＭを搭載することは、制御装置（制御用集積回路）のチップ面積を増大させる。また、外部に初期データを供給する外部のホストコンピュータを必要とするので、初期データの書き込み作業のための工程コストも依然として大きい。
【０００９】
本発明の目的は、回路面積の増大及び製造コストの増大を抑制しつつ、電気的に書換え可能な内部不揮発性メモリにＣＰＵの動作プログラムの書き込みを行うことができる制御装置を提供することにある。
【課題を解決するための手段】
【００１０】
上記問題点を解決するために、制御装置であって、マイコンに所定の動作制御を行わせる動作プログラムを記憶するための電気的に書換え可能な内部不揮発性メモリと、前記内部不揮発性メモリとの入出力を制御する内部インタフェースと、外部不揮発性メモリとの入出力を制御する外部インタフェースと、外部からの指示により、前記外部インタフェースを介して前記外部不揮発性メモリに記憶されたデータを所定のアドレス単位で読み出し、前記内部インタフェースを介して前記内部不揮発性メモリに前記所定のアドレス単位で前記データを書き込む繰り返し動作を制御するダウンロード回路と、を備え、外部からの前記指示により前記ダウンロード回路が動作中は、前記マイコンはスリープ状態となり、前記内部インタフェースは前記内部不揮発性メモリと前記マイコンとの接続を切断することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、回路面積の増大及び製造コストの増大を抑制しつつ電気的に書換え可能な内部不揮発性メモリにＣＰＵの動作プログラムの書き込みを行うことができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明を具体化した一実施形態を図１に従って説明する。
【００１３】
図１は、例えばＣＤ−ＲＯＭドライブ装置などの制御装置１００を示すブロック図である。同図に示されるように、この制御装置１００は、電気的に書換え可能な内部不揮発性メモリである内部フラッシュＲＯＭ１０と、マイコン（ＣＰＵ）２０と、外部インタフェース４０と、ダウンロード回路５０と、第１コマンドレジスタ６１と、第２コマンドレジスタ６２と、内部インタフェース７０とを備えている。内部フラッシュＲＯＭ１０は工場での製造直後には、初期データ（動作プログラム及びアップデート用プログラム）は書き込まれておらず、ＣＰＵ２０は何ら動作を行うことができない。
【００１４】
以下、本実施形態における内部フラッシュＲＯＭ１０への初期データの書き込み（ダウンロード）態様について概略を説明する。
【００１５】
制御装置１００は、外部インタフェース４０を介して外部不揮発性メモリである外部シリアルフラッシュＲＯＭ３０が接続可能となっている。ダウンロードする際には、外部インタフェース４０には外部シリアルフラッシュＲＯＭ３０が接続されており、この外部シリアルフラッシュＲＯＭ３０には初期データが記憶されている。ダウンロードイネーブル信号が外部端子を介してダウンロード回路５０へ送信されると、ダウンロード回路５０はＣＰＵ２０の動作をスリープさせる制御信号を生成し、同時に内部インタフェース７０はＣＰＵ２０と内部フラッシュＲＯＭ１０との接続を切る。したがって、ダウンロード回路５０はＣＰＵ２０によって阻害されることなく、内部フラッシュＲＯＭ１０の所定アドレスに逐次所定データを書き込むことができるようになる。
【００１６】
その後、ダウンロード回路５０は、外部インタフェース４０を介して外部シリアルフラッシュＲＯＭ３０に記憶されたデータを所定のアドレス単位で読み出し、読み出したデータを内部インタフェース７０を介して内部フラッシュＲＯＭ１０に書き込む。以後、ダウンロード回路５０は、所定のアドレス単位の次のデータについても外部シリアルフラッシュＲＯＭ３０から読み出し、読み出したデータを内部フラッシュＲＯＭ１０に書き込む。これを内部フラッシュＲＯＭ１０の最終アドレスまで繰り返すことで全てのデータ（動作プログラム）を内部フラッシュＲＯＭ１０に書き込むことができる。書き込み終了後、ダウンロード回路５０は内部フラッシュＲＯＭ１０に書き込まれたデータをベリファイする。ベリファイ後、ダウンロード回路５０は、書き込みの終了を示すダウンロード終了信号を外部端子を介して外部に送信する。外部では、ダウンロード終了信号を受信するとＬＥＤが発光するようにしておくことで、内部フラッシュＲＯＭ１０への初期データの書き込み（ダウンロード）の終了を知ることができる。
【００１７】
内部インタフェース７０によりＣＰＵ２０と内部フラッシュＲＯＭ１０とを接続し、ＣＰＵ２０の動作をスリープ状態から開放するのは、ベリファイ後すぐにダウンロード回路５０が行っても良いし、ダウンロードの終了後の電源再投入により行うようにしても良い。
【００１８】
次に、本実施形態における内部フラッシュＲＯＭ１０への初期データの書き込み態様について詳細に説明する。
【００１９】
不揮発性メモリで構成された第１コマンドレジスタ６１は、外部シリアルフラッシュＲＯＭ３０からデータを読み出すためのコマンドセットを予め記憶したレジスタセットである。ただし、外部シリアルフラッシュＲＯＭ３０からの読み出し用コマンドセットが不要であるときは、第１コマンドレジスタ６１は設けなくても良い。コマンドセットとは、一般にフラッシュメモリにアクセスする際に必要なコマンドであり、複数対のコマンドアドレス及びコマンドデータをフラッシュメモリに送信することで消去、書き込み、読み出しなどの所定の動作をフラッシュメモリに行わせるものである。コマンドセットの内容はフラッシュメモリの規格により異なる。
【００２０】
また、第２コマンドレジスタ６２は、内部フラッシュＲＯＭ１０にデータを書き込んだり、あるいは内部フラッシュＲＯＭ１０からデータを読み出したりするためのコマンドセットを記憶するレジスタセットである。第２コマンドレジスタ６２は、不揮発性メモリで構成されていても良いし、揮発性メモリで構成しておき外部シリアルフラッシュＲＯＭ３０の所定アドレス領域からコマンドセットを読み出して記憶させても良い。このとき、外部シリアルフラッシュＲＯＭ３０の所定アドレス領域には、予め内部フラッシュＲＯＭ１０のコマンドセットが記憶されている。
【００２１】
ダウンロード回路５０は、ダウンロード制御回路５１、フリップフロップ５２、アドレスレジスタ５３、データレジスタ５４及びカウンタ５５を含んで構成されている。
【００２２】
ダウンロード制御回路５１は、アドレスレジスタ５３、データレジスタ５４及びカウンタ５５が接続されると共に、フリップフロップ５２を介して内部インタフェース７０に接続されている。フリップフロップ５２は、ダウンロード制御回路５１と内部フラッシュＲＯＭ１０との間の複数の信号を保持するように設けられている。
【００２３】
アドレスレジスタ５３は、外部シリアルフラッシュＲＯＭ３０及び内部フラッシュＲＯＭ１０にアクセスするアドレスを記憶するレジスタである。データレジスタ５４は、アドレスレジスタ５３に記憶されたアドレスについて外部シリアルフラッシュＲＯＭ３０から読み出したデータを記憶するレジスタである。カウンタ５５は、内部フラッシュＲＯＭ１０に対する書き込みに必要なサイクル数をカウントするカウンタであり、内部フラッシュＲＯＭ１０の電気的特性とクロック信号の周波数に応じたカウント設定値（サイクル数）までカウントする。このカウント設定値は、カウンタ５５に不揮発性メモリとして予め記憶しておいても良いし、外部シリアルフラッシュＲＯＭ３０の所定アドレス領域から読み出して揮発性メモリに記憶させても良い。
【００２４】
内部フラッシュＲＯＭ１０は、セットアップやホールドの時間により、そのアクセスの間隔に所定期間を要する。例えば、内部フラッシュＲＯＭ１０にデータを連続して書き込む場合、１つのデータを書き込んでから次のデータを書き込むまでに所定期間待たなければならない。この所定期間は内部フラッシュＲＯＭ１０の電気的特性によるものである。
【００２５】
ダウンロード制御回路５１は、この待ち時間のためにクロック信号を利用する。即ち、ダウンロード制御回路５１は、カウンタ５５にクロック信号のパルス数をカウントさせることで所定期間（待ち時間）を計測する。そして、クロック信号の周波数は、この制御装置１００を搭載する周辺機器によって異なる。従って、ダウンロード制御回路５１は、内部フラッシュＲＯＭ１０の電気的特性と周辺機器のクロック信号の周波数に応じた設定カウント値まで待ってから、内部フラッシュＲＯＭ１０にアクセスして次のデータを書き込む。
【００２６】
本実施形態における内部フラッシュＲＯＭ１０への初期データの書き込み手順を図２及び図３を用いながら説明する。
【００２７】
最初に、ダウンロードイネーブル信号がダウンロード制御回路５１に受信される（Ｓ１０）。これにより、ダウンロード制御回路５１は、ＣＰＵ２０の動作をスリープさせる制御信号を生成し、同時に内部インタフェース７０はＣＰＵ２０と内部フラッシュＲＯＭ１０との接続を切り、内部フラッシュＲＯＭ１０とフリップフロップ５２とを接続する（Ｓ１２）。そして、ダウンロード制御回路５１は、外部シリアルフラッシュＲＯＭ３０に最初にアクセスするアドレス（例えば、“０”）をアドレスレジスタ５３にセットする（Ｓ１４）。そして、第１コマンドレジスタ６１から順次読み出し用コマンドセットを読み出し、読み出したコマンドセット及びアドレスレジスタ５３にセットされたアドレスを順次外部インタフェース４０を介して外部シリアルフラッシュＲＯＭ３０に出力する（Ｓ１６）。これにより、外部シリアルフラッシュＲＯＭ３０は、入力されたアドレスのデータを出力する。外部シリアルフラッシュＲＯＭ３０から出力されたデータは、外部インタフェース４０を介してダウンロード制御回路５１に読み出され、データレジスタ５４に一時的に記憶される（Ｓ１８）。
【００２８】
次に、ダウンロード制御回路５１は、第２コマンドレジスタ６２から順次書き込み用コマンドセットを読み出し、読み出したコマンドセット、アドレスレジスタ５３にセットされたアドレス及びデータレジスタ５４に一時的に記憶されたデータを順次フリップフロップ５２及び内部インタフェース７０を介して内部フラッシュＲＯＭ１０に出力する（Ｓ２０）。フリップフロップ５２は、内部フラッシュＲＯＭ１０への書き込み動作を維持するために設けられたものあり、このため内部フラッシュＲＯＭ１０への書き込み中はダウンロード制御回路５１は他の動作を実施することができる。また、ダウンロード制御回路５１は、フリップフロップ５２に上記の出力をすると、カウンタ５５のカウントをスタートさせる（Ｓ２２）。カウンタ５５は、例えばインクリメントカウンタであり、図示しない基準クロック信号のパルス数をカウントする。そして、カウンタ５５は、そのカウント値がダウンロード制御回路５１の設定カウント値と一致する場合には所定レベルのカウント終了信号をダウンロード制御回路５１に出力し、カウント値をリセットする。ダウンロード制御回路５１は、所定レベルのカウント終了信号に応答して内部フラッシュＲＯＭ１０に対する次のアクセスができることを検知する。
【００２９】
ところで、ダウンロード制御回路５１は、カウンタ５５のカウントをスタートさせると共に、アドレスレジスタ５３のアドレスを更新（例えば、カウントアップ）して、外部シリアルフラッシュＲＯＭ３０に次にアクセスするアドレスをアドレスレジスタ５３にセットする（Ｓ２４）。そして、ダウンロード制御回路５１は、アドレスレジスタ５３にセットされたアドレスが内部フラッシュＲＯＭ１０の最終アドレス設定値以下かどうか判定する（Ｓ２６）。この最終アドレス設定値は、ダウンロード制御回路５１に不揮発性メモリとして予め記憶しておいても良いし、外部シリアルフラッシュＲＯＭ３０の所定アドレス領域から読み出して揮発性メモリに記憶させても良い。最終アドレス設定値以下である場合には、第１コマンドレジスタ６１から順次読み出し用コマンドセットを読み出し、読み出したコマンドセット及びアドレスレジスタ５３にセットされたアドレスを順次外部インタフェース４０を介して外部シリアルフラッシュＲＯＭ３０に出力する（Ｓ２８）。これにより、外部シリアルフラッシュＲＯＭ３０は、入力されたアドレスのデータを出力する。外部シリアルフラッシュＲＯＭ３０から出力されたデータは、外部インタフェース４０を介してダウンロード制御回路５１に読み出され、データレジスタ５４に一時的に記憶される（Ｓ３０）。
【００３０】
そして、ダウンロード制御回路５１は、カウンタ５５からのカウント終了信号が出力されるのを待つ（Ｓ３２）。カウント終了信号が出力されるとステップＳ２０に移り、ダウンロード制御回路５１は、第２コマンドレジスタ６２から順次書き込み用コマンドセットを読み出し、読み出したコマンドセット、アドレスレジスタ５３にセットされたアドレス及びデータレジスタ５４に一時的に記憶されたデータを順次フリップフロップ５２及び内部インタフェース７０を介して内部フラッシュＲＯＭ１０に出力する。
【００３１】
以後、ステップＳ２０からステップＳ３２までを繰り返し、アドレスレジスタ５３にセットされたアドレスが内部フラッシュＲＯＭ１０の最終アドレス設定値を超えると、ダウンロード制御回路５１は、カウンタ５５からのカウント終了信号が出力されるのを待ち（Ｓ３４）、ベリファイのステップに移る。
【００３２】
なお、第２コマンドレジスタ６２のコマンドセット、カウント設定値、最終アドレス設定値が揮発性メモリに記憶させる場合には、ステップＳ１０の後、シリアルフラッシュＲＯＭ３０の所定アドレス（例えば、内部フラッシュＲＯＭ１０の最終アドレスよりも大きいアドレス領域）から読み出して記憶させる。そして、ステップＳ１２に移れば良い。
【００３３】
ベリファイでは、まずダウンロード制御回路５１は、外部シリアルフラッシュＲＯＭ３０に最初にアクセスするアドレス（例えば、“０”）をアドレスレジスタ５３にセットする（Ｓ４０）。第１コマンドレジスタ６１から順次読み出し用コマンドセットを読み出し、読み出したコマンドセット及びアドレスレジスタ５３にセットされたアドレスを順次外部インタフェース４０を介して外部シリアルフラッシュＲＯＭ３０に出力する（Ｓ４２）。これにより、外部シリアルフラッシュＲＯＭ３０は、入力されたアドレスのデータを出力する。外部シリアルフラッシュＲＯＭ３０から出力されたデータは、外部インタフェース４０を介してダウンロード制御回路５１に読み出され、データレジスタ５４に一時的に記憶される（Ｓ４４）。
【００３４】
次に、ダウンロード制御回路５１は、第２コマンドレジスタ６２から順次読み出し用コマンドセットを読み出し、読み出したコマンドセット、アドレスレジスタ５３にセットされたアドレスを順次フリップフロップ５２及び内部インタフェース７０を介して内部フラッシュＲＯＭ１０に出力する（Ｓ４６）。これにより、内部フラッシュＲＯＭ１０は、入力されたアドレスのデータを出力する。内部フラッシュＲＯＭ１０から出力されたデータは、内部インタフェース７０を介してフリップフロップ５２に読み出される（Ｓ４８）。
【００３５】
ダウンロード制御回路５１は、フリップフロップ５２に記憶されたデータとデータレジスタ５４に記憶されたデータとを比較する。（Ｓ５０）。
【００３６】
両データが一致しない場合には、ダウンロード制御回路５１は、ダウンロードエラー信号を出力する。
【００３７】
両データが一致する場合には、ダウンロード制御回路５１は、アドレスレジスタ５３のアドレスを更新（例えば、カウントアップ）して、外部シリアルフラッシュＲＯＭ３０に次にアクセスするアドレスをアドレスレジスタ５３にセットする（Ｓ５２）。そして、ダウンロード制御回路５１は、アドレスレジスタ５３にセットされたアドレスが内部フラッシュＲＯＭ１０の最終アドレス設定値以下かどうか判定する（Ｓ５４）。最終アドレス設定値以下である場合には、ステップＳ４２に戻りステップＳ４２〜Ｓ５４を繰り返し、最終アドレス設定値よりも大きい場合には、ベリファイを終了する。
【００３８】
ベリファイ後、内部インタフェース７０はＣＰＵ２０と内部フラッシュＲＯＭ１０とを接続し、ダウンロード回路５０は、ＣＰＵ２０の動作をスリープ状態から開放する（Ｓ５６）。そして、ダウンロード回路５０は、書き込みの終了を示すダウンロード終了信号を外部端子を介して外部に送信する。
【００３９】
このようにして、内部フラッシュＲＯＭ１０には、ＣＰＵ２０が周辺機器の各回路の制御を行うための動作プログラムと、ＣＰＵ２０が動作プログラムの更新を行うためのアップデート用プログラムとの２種類が書き込まれる。従って、ＣＰＵ２０は内部インタフェース７０を介して内部フラッシュＲＯＭ１０に書き込まれた動作プログラムを読み出し、それに従って各回路の制御を行う。例えば周辺機器がＣＤ−ＲＯＭドライブ装置である場合には、レーザを照射するためのピックアップを光ディスクの所定位置に移動させたり、レーザの反射光を読み取って光ディスクに記憶されたデータを読み出したりする。一方、動作プログラムの更新時には、ＣＰＵ２０はアップデート用プログラムに従って、動作プログラムのデータ書き換えを行うことができるようになる。
【００４０】
以上詳述したように、本実施形態によれば、以下に示す効果が得られるようになる。
（１）本実施形態では、ＣＰＵを介さずダウンロード制御回路の専用回路で外部シリアルフラッシュＲＯＭに記憶された初期データをフラッシュＲＯＭに複写するように書き込むので、ダウンロードのスピードが速い。動作プログラムを書き込むためのアップデート用プログラムを記憶したマスクＲＯＭを別途設ける必要もなく、制御装置１００の回路面積の増大を抑制することができる。つまり、シリアル内部フラッシュＲＯＭ１０及びフラッシュＲＯＭ３０へアクセスするのに必要なコマンドセットのみ用意すればよい。また、内部フラッシュＲＯＭ１０単体の状態で予め初期データを書き込んでおいてこれを実装するなどの作業も不要であることから、製造コストの増大も抑制できる。
（２）本実施形態では、ダウンロード制御回路の専用回路で外部シリアルフラッシュＲＯＭに記憶された初期データをフラッシュＲＯＭに複写するように書き込むので、初期データをフラッシュＲＯＭに書き込む際、初期データを供給する外部のホストコンピュータを不要とすることができる。
（３）本実施形態では、内部フラッシュＲＯＭ１０への書き込み動作を維持するためにフリップフロップ５２が設けられ、書き込み時間の管理はカウンタ５５が行っているため、内部フラッシュＲＯＭ１０へのデータの書き込み中に次の書き込みデータを外部シリアルフラッシュＲＯＭ３０から読み出しておくことができるため、ダウンロードの時間を短縮できる。
（４）本実施形態では、内部フラッシュＲＯＭ１０に予め初期データを記憶しておく必要がないため、例えば制御装置１００に一体的に集積することも可能であり、この場合には周辺機器全体としての回路面積を低減することができる。
【００４１】
なお、本発明の実施の形態は上記実施形態に限定されるものではなく、次のように変更してもよい。
【００４２】
本実施形態では、外部フラッシュＲＯＭ３０はシリアルメモリであったが、これに限るものではなく、アドレス端子及びデータ端子を複数備えるメモリであっても良い。
【００４３】
本実施形態では、内部フラッシュＲＯＭ１０への書き込みの都度必要となる１アドレスあたりのデータの書き込み時間の管理はカウンタ５５で行っているが、ダウンロード制御回路５１が書き込みが十分行なわれる時間だけ待って内部フラッシュＲＯＭ１０へ次の書き込みデータを送るようにしても良い。あるいはダウンロード制御回路５１が内部フラッシュＲＯＭ１０の書き込み終了をトグルビットやポーリングで検知するようにしても良い。
【００４４】
本実施形態では、内部フラッシュＲＯＭ１０へダウンロードする初期データを外部シリアルフラッシュＲＯＭ３０から読み出す構成としているため、制御装置１００がダウンロード時に必要とする外部端子数を少なくすることができる。そのため、これらダウンロード時に使用する外部端子を、ダウンロード時以外に制御装置１００が外部との信号のやり取りに使用する通常端子と共用させることで、外部端子と通常端子とを合計した総数を増やすことなく構成することができる。また、外部シリアルフラッシュＲＯＭ３０の電源を、制御装置１００から外部端子を介して供給することで、外部シリアルフラッシュＲＯＭ３０を外部インタフェース４０に差し込んでダウンロードイネーブル信号を送信するだけでダウンロードさせることも可能である。
【００４５】
本実施形態においては、１アドレス単位で外部シリアルフラッシュＲＯＭ３０からデータを読み出して、１アドレス単位のデータを内部フラッシュＲＯＭ１０へ書き込んでいる。しかし、複数の所定アドレス単位で外部シリアルフラッシュＲＯＭ３０からデータを読み出して、バーストモードを利用するなどしてこれら複数の所定アドレス単位のデータを内部フラッシュＲＯＭ１０へ書き込んでも良い。この場合、データレジスタ５４には、複数アドレスに応じた複数のデータを記憶できるようにし、ダウンロード制御回路５１はバーストモードに応じたコマンドセット等をフリップフロップに出力するようにする。
【００４６】
本実施形態においては、マイコンに所定の動作制御を行わせる動作プログラムを記憶するための電気的に書換え可能な不揮発性メモリとしてフラッシュＲＯＭを記載しているが、データの書き込みが可能であればその他のＰＲＯＭを採用してもよい。
【００４７】
本実施形態においては、内部フラッシュＲＯＭ１０は、制御装置１００に一体的に集積しておいても良いし、あるいはパッケージングの際に複数の半導体チップを１つに集積するマルチチップパッケージとしても良い。
【００４８】
本実施形態において、周辺機器はＣＤ−ＲＯＭドライブ装置に限らず、コンピュータと接続してデータのやりとりが可能であればどのような機器であってもよい。例えばＭＤやＤＶＤ−ＲＡＭ等の光ディスクドライブ装置や、ＭＯのような光磁気ディスクドライブ装置、ハードディスクのような磁気ディスクドライブ装置などであってもよい。更に、このような情報記憶装置に限らず、例えばプリンタのような出力装置やスキャナのような読み取り装置、モデムやＬＡＮのような通信装置などであってもよい。
【図面の簡単な説明】
【００４９】
【図１】本発明の一実施形態を示すブロック図である。
【図２】本実施形態における初期データの書き込み手順である。
【図３】本実施形態における初期データの書き込み手順である。
【符号の説明】
【００５０】
１０  内部フラッシュＲＯＭ
２０  マイコン（ＣＰＵ）
３０  外部シリアルフラッシュＲＯＭ
４０  外部インタフェース
５０  ダウンロード回路
５１  ダウンロード制御回路
５２  フリップフロップ
５３  アドレスレジスタ
５４  データレジスタ
５５  カウンタ。
６１  第１コマンドレジスタ
６２  第２コマンドレジスタ
７０  内部インタフェース
１００  制御装置
【図１】
2005309839.tif 000003
【図２】
2005309839.tif 000004
【図３】
2005309839.tif 000005