(57)【要約】【課題】  マイコンに標準装備されている発振回路を利用することでフラッシュメモリにデータを書き込む際のデータ保持抜けを生じ難くすることを可能にし、基準化したフラッシュメモリを内蔵する低コストなマイコンを提供する。【解決手段】  マイコンを動作させるためのクロック信号を出力する外付けのメイン発振回路１２０に対し、フラッシュメモリ１００にデータを書き込むための書き込みクロック信号を生成するための周波数が固定されたクロック信号を出力する固定発振回路１３０を備える。フラッシュメモリ１００は当該固定発振回路１３０からのクロック信号での書き込み時にデータ保持抜けが生じないライトディスターブ時間に設計される。周波数が異なるメイン発振回路１２０が外付けされる場合でも固定発振回路１３０の固定した周波数のクロック信号でフラッシュメモリ１００へのデータ書き込みを行うことで、データ書き込み時におけるライトディスターブ時間の誤差による余剰電圧を少なくし、データ保持抜けをし難くする。【選択図】  図１
2005309799.tif 000002
【特許請求の範囲】
【請求項１】
書き込みクロック信号に基づいてデータの書き込みが可能なフラッシュメモリを内蔵したマイクロコンピュータ（マイコンと称する）であって、前記書き込みクロック信号を生成するための周波数が固定されたクロック信号を出力する固定発振回路を備え、前記フラッシュメモリは前記周波数が固定された書き込みクロック信号での書き込み時にデータ保持抜けが生じないライトディスターブ時間に設計されていることを特徴とするフラッシュメモリ内蔵マイクロコンピュータ。
【請求項２】
前記固定発振回路はマイコンを起動する際のクロック信号を発生するための固定発振回路であることを特徴とする請求項１に記載のフラッシュメモリ内蔵マイクロコンピュータ。
【請求項３】
前記固定発振回路から出力されるクロック信号を分周する分周手段と、前記固定発振回路から出力されるクロック信号と前記分周手段で分周されたクロック信号とを選択する選択手段を備え、少なくとも前記フラッシュメモリにデータを書き込むときには前記選択手段により前記固定発振回路のクロック信号を選択することを特徴とする請求項１に記載のフラッシュメモリ内蔵マイクロコンピュータ。
【請求項４】
前記固定発振回路は、マイコンを起動する際のクロック信号を発生するための固定発振回路と、前記フラッシュメモリにデータを書き込むときのクロック信号を発生する専用の固定発振回路の２つの固定発振回路で構成されることを特徴とする請求項１に記載のフラッシュメモリ内蔵マイクロコンピュータ。
【請求項５】
前記マイコンの動作クロック信号を生成するためのクロック信号を出力するメイン発振回路を備えており、前記メイン発振回路はユーザの要求により異なる周波数のクロック信号を出力する発振回路に置き換えが可能であることを特徴とする請求項１ないし４のいずれかに記載のフラッシュメモリ内蔵マイクロコンピュータ。
【請求項６】
前記固定発振回路のクロック信号と前記メイン発振回路のクロック信号を選択する選択手段を備え、少なくとも前記フラッシュメモリにデータを書き込むときには前記選択手段により前記固定発振回路のクロック信号を選択することを特徴とする請求項５に記載のフラッシュメモリ内蔵マイクロコンピュータ。
【請求項７】
前記固定発振回路はリング発振回路であることを特徴とする請求項１ないし６のいずれかに記載のフラッシュメモリ内蔵マイクロコンピュータ。
【請求項８】
前記フラッシュメモリは多数の不揮発性ＭＯＳ型素子からなるメモリセルをマトリクス配置し、隣接する一対のメモリセルをビット線とソース線を共通接続するとともに、両メモリセルの各ゲートを異なるワード線に接続した回路構成であり、ワード線によりいずれかのメモリセルを選択するとともに、共通のビット線とソース線に共通の電圧を供給して書き込みを行う回路構成であることを特徴とする請求項１ないし７のいずれかに記載のフラッシュメモリ内蔵マイクロコンピュータ。
【請求項９】
前記固定発振回路から出力されるクロック信号から書き込みクロック信号を生成する書き込みクロック生成回路を備えることを特徴とする請求項１ないし８のいずれかに記載のフラッシュメモリ内蔵マイクロコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はフラッシュメモリを備えるマイクロコンピュータ（マイコンと称する）に関し、特にフラッシュメモリにデータ書き込むときのライトディスターブ時間の誤差によりメモリセルにかかる余剰な電圧を抑制し、当該余剰な電圧を要因とするデータ保持抜けを発生し難くしたデータ書き込み装置を改善したものである。
【背景技術】
【０００２】
フラッシュメモリ内蔵マイコンでは、フラッシュメモリに対するデータ書き込み時におけるデータ保持抜けが問題になっている。図７（ａ）はフラッシュメモリの一部の回路図であり、ＭＯＳ構造をした不揮発性型のメモリセルＭがマトリクス配置され、行方向の複数のメモリセルの各ゲート（コントロールゲート）が同一ワード線Ｗに共通接続され、列方向の複数のメモリセルＭの各ドレインが同一ビット線Ｂに共通接続される。また、列方向に隣接する２つのメモリセルＭは各ソースが接続されたメモリセル対となり、行方向の複数のメモリセル対が同一のソース線Ｓに共通接続されている。
【０００３】
このフラシュメモリ１００では、同図に鎖線で囲む選択したメモリセルＭｓに対してデータの書き込みを行う場合には、当該選択したメモリセルＭｓが接続されているワード線Ｗとビット線Ｂにそれぞれ所要の電圧、例えばワード線Ｗに２Ｖ、ビット線Ｂに０．５Ｖを印加し、さらに当該メモリセルＭｓに接続されているソース線Ｓに所要の電圧、例えば８Ｖを印加することで当該メモリセルＭｓに対してデータを書き込むことができる。
【０００４】
図９はこのようなマイコンにおいてフラッシュメモリ１００にデータを書き込むことを可能にしたデータ書き込み装置を含むマイコン１Ａの一部のブロック回路図であり、フラッシュメモリ１００と、水晶発振器等を発振源とするメイン発振回路１２０と、メイン発振回路１２０から出力されるクロック信号に基づいて動作するＣＰＵ１１０と、前記ＣＰＵ１１０で生成されたＣＰＵクロック信号に基づいてフラッシュメモリ１００へのデータの書き込みを行うための書き込みクロック信号を生成する書き込みクロック生成回路１６０とを備えている。前記メイン発振回路１２０は、いわゆる外付けが可能に構成されており、マイコンのユーザが所望の発振周波数のメイン発振回路１２０をマイコン１に外付けして接続することにより、当該発振周波数のクロック信号でＣＰＵ１１０が動作するようになっている。
【０００５】
このデータ書き込み装置では、メイン発振回路１２０からのクロック信号に基づいてＣＰＵ１１０が動作し、マイコン１Ａを起動する。また、起動後にフラッシュメモリ１００にデータを書き込む際には、同じくメイン発振回路１２０のクロック信号に基づいてＣＰＵ１１０でＣＰＵクロックを生成してこれを出力し、書き込みクロック生成回路１６０ではこのＣＰＵクロック信号に基づいてデータ書き込み用の書き込みクロック信号を生成している。そして、生成された書き込みクロック信号と、アドレス信号及びデータ信号がフラッシュメモリ１００に入力され、アドレス信号により選択されたメモリセルにデータが書き込まれる。
【０００６】
図８は生成された書き込みクロック信号に基づいてフラッシュメモリ１００にデータの書き込みを行うタイミング図である。書き込みフラグが立った後、書き込みクロック信号の立ち上がりを受けて選択したデータを書き込む対象のメモリセルのワード線に所要電圧を印加し、同時に当該メモリセルのソース線に所要電圧を印加し、さらに当該メモリセルのビット線をデータに基づいてオンさせる。これにより選択されたメモリセルにはソース線からビット線に電流が流れ、データが当該メモリセルに書き込まれることになる。通常、この動作は１つの書き込みクロックにより複数ビットのデータが複数のメモリセルに対して書き込まれる。
【０００７】
そして、次のデータに切り替わる前のタイミングで書き込みクロックが立下がり、次データに切り替わった後に次の書き込みクロックが立ち上がり、別のメモリセルに対する書き込みが行われる。このように１つの書き込みクロックが立ち上がってデータの書き込みが行われ、その後に次の書き込みクロックが立ち上がって次のデータの書き込みが行われるまでの間を狭義のライトディスターブ時間と称している。なお、広義のライトディスターブ時間は、書き込みフラグが立ってから複数の書き込みクロックによる複数回の書き込みを１つのサイクルとした場合に、当該１サイクルのデータの書き込みに要する時間を称している。
【０００８】
ところで、図７（ａ）に示したフラッシュメモリ１００において選択されたメモリセル（選択メモリセルと称する）Ｍｓに対してデータの書き込みを行う場合には、図７（ｂ）に選択メモリセルＭｓと、これと対をなすメモリセル（隣接メモリセルと称する）Ｍｎとのメモリセル対を図示するように、隣接メモリセルＭｎにつながるソース線とビット線Ｂにも選択メモリセルＭｓに対して印加したのと同じ電圧が印加されている。そのため、前述したライトディスターブ時間が長くなり、データの書き込みによって当該ビット線Ｂの電位が低下して行くと、隣接メモリセルＭｎのワード線Ｗの電圧、すなわちゲート電圧が低くてもライトディスターブ時間にわたってゲート電圧が余剰な電圧が加えられることになり、その結果隣接メモリセルＭｎがオンの状態となり、同図に破線で示すように当該隣接メモリセルＭｎに対してソース線Ｓからビット線Ｂに電流が流れ、選択メモリセルＭｓに書き込む電流が隣接メモリセルＭｎを通して逃げてしまい、データ保持抜けの状態になる。
【０００９】
このようなデータ保持抜けの問題について特許文献１を参照すると、特許文献１では、不揮発性メモリ内蔵マイクロコントローラのオンボード書き換え時に、ＣＰＵの実行クロックを外部から供給する高速クロックに切り替えることにより、高速にローダプログラムを実行し、書き換え時間を短縮する技術が提案されている。このように高速クロックを用いることでライトディスターブ時間が短縮でき、データ抜けを防止する上では有効である。
【特許文献１】特開２００２−１８３１０９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
特許文献１の技術は、オンボード書き換えのように外部から高速クロックが導入可能な場合には有効であるが、そのためには高速クロックを出力することが可能な外付けのライターが必要であり、マイコン自体で内蔵の発振回路のみでデータの書き込みを行うことは困難である。
【００１１】
また、前記したデータ保持抜けを防止するためには隣接メモリがオンになる状態の前にデータの書き込みを終了させることが好ましく、フラッシュメモリに対するライトディスターブ時間が適切な時間となるように設定することが好ましい。逆に見れば、所定のライトディスターブ時間についてもデータ抜けが生じないようにフラッシュメモリの回路上の各定数を設定する等の設計を行うことが好ましい。
【００１２】
しかしながら、図９に示した従来のマイコンでは書き込みクロック信号はメイン発振回路１２０で生成するクロック信号から生成されているため、書き込みクロック信号の周波数は当該メイン発振回路１２０の発振周波数によって規制される。そのため、同一のフラッシュメモリを備えるマイコンに対して、ユーザが周波数の高いメイン発振回路を接続した場合には、ライトディスターブ時間が短いためデータ保持抜けの問題が生じることは少ないが、ユーザの要望によって低コストのマイコンを構成しようとした場合のように周波数の低いメイン発振回路を搭載して低周波数で動作するマイコンの場合は書き込みクロック信号も低周波数となり、ライトディスターブ時間が長くなり、データ抜けが生じ易くなる。
【００１３】
この問題に対しては、マイコンに搭載されるメイン発振回路のクロック信号の周波数に基づくライトディスターブ時間を考慮し、このライトディスターブ時間でもデータ抜けが生じることがないようにフラッシュメモリを設計することが考えられるが、これではメイン発振回路の周波数が異なるごとに異なるライトディスターブ時間のフラッシュメモリを設計する必要があり、基準化したフラッシュメモリを用いて動作速度の異なるマイコンを実現することは困難であり、またマイコンがコスト高になる。
【００１４】
本発明の目的は、マイコンに標準装備されている発振回路を利用することでフラッシュメモリにデータを書き込む際のライトディスターブ時間の誤差による余剰電圧を少なくし、当該余剰電圧が要因となるデータ保持抜けを生じ難くした基準化したフラッシュメモリを内蔵する低コストなマイコンを提供するものである。
【課題を解決するための手段】
【００１５】
本発明のフラッシュメモリ内蔵マイコンは、フラッシュメモリにデータを書き込むための書き込みクロック信号を生成するための周波数が固定されたクロック信号を出力する固定発振回路を備え、またフラッシュメモリは周波数が固定された書き込みクロック信号での書き込み時にデータ保持抜けが生じないライトディスターブ時間に設計されていることを特徴とする。固定発振回路はマイコンを起動する際のクロック信号を発生するための固定発振回路である。また、固定発振回路から出力されるクロック信号を分周する分周手段と、固定発振回路から出力されるクロック信号と分周手段で分周されたクロック信号とを選択する選択手段を備え、少なくともフラッシュメモリにデータを書き込むときには選択手段により固定発振回路のクロック信号を選択する構成とする。あるいは、固定発振回路は、マイコンを起動する際のクロック信号を発生するための固定発振回路と、フラッシュメモリにデータを書き込むときのクロック信号を発生する専用の固定発振回路の２つの固定発振回路で構成する。
【００１６】
さらに、本発明のマイコンは、マイコンの動作クロック信号を生成するためのクロック信号を出力するメイン発振回路を備えており、メイン発振回路はユーザの要求により異なる周波数のクロック信号を出力する発振回路に置き換えが可能な構成とする。この場合、固定発振回路のクロック信号とメイン発振回路のクロック信号を選択する選択手段を備え、少なくともフラッシュメモリにデータを書き込むときには選択手段により固定発振回路のクロック信号を選択する構成とする。
【発明の効果】
【００１７】
本発明によれば、マイコン内に周波数が一定の固定発振回路を備え、この固定発振回路で発生されるクロック信号に基づいてフラッシュメモリへのデータの書き込みを行う構成とし、これと同時にフラッシュメモリは当該クロック信号から得られる書き込みクロック信号により書き込みを行う際のライトディスターブ時間に対応してデータ保持抜けが生じることがないように設計しておくことで、データ書き込み時には固定された一定の周波数の書き込みクロック信号での書き込みが行われるので、ライトディスターブ時間が長くなることによる余剰電圧を少なくし、当該余剰電圧によるメモリセルへのダメージを抑制してデータ保持抜けを生じ難くすることができる。特に、ユーザが発振周波数の異なるメイン発振回路を搭載して動作速度が異なるマイコンを構成した場合においても、低速動作するマイコンのフラッシュメモリにおける余剰電圧を少なくし、データ保持抜けをし難くすることができる。
【発明を実施するための最良の形態】
【００１８】
本発明の好ましい形態としては、固定発振回路はリング発振回路で構成する。また、フラッシュメモリは多数の不揮発性ＭＯＳ型素子のメモリセルをマトリクス配置し、隣接する一対のメモリセルをビット線とソース線を共通接続するとともに、両メモリセルの各ゲートを異なるワード線に接続した回路構成であり、ワード線によりいずれかのメモリセルを選択するとともに、共通のビット線とソース線に共通の電圧を供給して書き込みを行う回路構成とする。さらに、固定発振回路から出力されるクロック信号から書き込みクロック信号を生成する書き込みクロック生成回路を備える構成とする。
【実施例１】
【００１９】
次に、本発明の実施例１について図面を参照して説明する。図１は本発明にかかるフラッシュメモリ内蔵マイクロコンピュータ（マイコンと称する）１内に構成されるデータ書き込み装置のブロック回路図である。同図において、データの書き込みが可能なフラッシュメモリ１００と、このフラッシュメモリ１００に対するデータの書き込み動作を制御することが可能なＣＰＵ１１０を備えている。また、マイコン１には、マイコンを動作するための、すなわち前記ＣＰＵ１１０を動作するためのクロック信号を生成するメイン発振回路１２０が外付け可能とされている。さらに、前記マイコン１は、マイコン起動用の固定発振回路１３０を備えている。そして、これらメイン発振回路１２０と固定発振回路１３０から出力される各クロック信号を選択するセレクタ１４０を備えている。また、前記ＣＰＵ１１０で生成したＣＰＵクロック信号から前記フラッシュメモリ１００にデータを書き込む際に用いる書き込みクロック信号を生成する書き込みクロック生成回路１６０が設けられている。
【００２０】
前記メイン発振回路１２０はマイコン１のユーザによって設計されるマイコンの動作速度に対応して、それぞれ周波数の異なるクロック信号を出力する発振回路が選定され、選定された発振回路がマイコン１に外付けされる。このメイン発振回路１２０は、例えば高い精度の発振周波数が得られる水晶発振回路で構成される。一方、前記固定発振回路１３０はマイコンが起動する動作に必要な発振周波数、通常では２ＭＨｚのクロック信号を出力する発振回路として構成されている。この固定発振回路１３０は、例えば構成が簡易なリング発振回路で構成される。前記セレクタ１４０は図には表れない制御回路からの起動信号及び書き込み信号によって動作され、マイコンの起動時及びフラッシュメモリへのデータの書き込み時にそれぞれ固定発振回路１３０のクロック信号を選択し、起動後のデータ書き込み時以外にはメイン発振回路１２０のクロック信号を選択するようになっている。選択されたクロック信号はＣＰＵ１１０に入力され、ＣＰＵ１１０ではソフト処理によりＣＰＵクロック信号を生成する。前記書き込みクロック生成回路１６０はＣＰＵクロック信号に基づいて書き込みクロック信号を生成する。なお、これら書き込みクロック生成回路１６０はＣＰＵ１１０と共に、マイコンの動作速度の違い等にかかわらずマイコンを構成する際の標準的な規格に設計されている。
【００２１】
この構成のデータ書き込み装置によれば、図２にフローチャートを示すように、マイコン１の起動時には（Ｓ１０１）、図外の制御回路からの起動信号によってセレクタ１４０は固定発振回路１３０からのクロック信号を選択してＣＰＵ１１０を動作させ、マイコンを起動させる（Ｓ１０２）。これによりメイン発振回路１２０の発振周波数が安定するまでに所要の時間がかかる場合でも、周波数の立ち上げが速いリング発振回路からなる固定発振回路１３０のクロック信号によるマイコン１の起動が可能になる。起動後のフラッシュメモリ１００へのデータ書き込み時には（Ｓ１０３）、図外の制御回路からの書き込み信号によってセレクタ１４０は固定発振回路１３０から出力されるクロック信号を選択する（Ｓ１０４）。選択されたクロック信号はＣＰＵ１１０に入力され、ここでソフト処理されたＣＰＵクロック信号として出力される。さらに、このＣＰＵクロック信号は書き込みクロック生成回路１６０に入力され、書込みクロック信号が生成される。この書き込みクロック信号は、書き込み行うデータ信号及び書き込みアドレス信号と共にフラッシュメモリ１００に入力される。これらの信号により、フラッシュメモリ１００の所定のメモリセルが選択され、選択されたメモリセルへのデータの書き込みが行われる。
【００２２】
また、フラッシュメモリ１００へのデータの書き込み動作は図７に示した通りであり、再度簡単に説明すると、ＣＰＵにおいては書き込みフラグが立った後、書き込みクロック信号の立ち上がりを受けて選択したデータを書き込む対象のメモリセルのワード線に所要電圧を印加し、同時に当該メモリセルのソース線に所要電圧を印加し、さらに当該メモリセルのビット線をデータに基づいてオンさせる。例えば、図７（ｂ）に示したように、データを書き込むべく選択したメモリセルが接続されているワード線とビット線にそれぞれ所要の電圧、例えばワード線に２Ｖ、ビット線に０．５Ｖを印加し、さらに当該メモリセルに接続されているソース線に所要の電圧、例えば８Ｖを印加する。これにより選択されたメモリセルにはソース線からビット線に電流が流れ、データが当該メモリセルに書き込まれることになる。通常、この動作は１つの書き込みクロックにより複数ビットのデータが複数のメモリセルに対して書き込まれる。
【００２３】
このデータの書き込みに際し、実施例１では書き込みクロック信号の基くなるクロック信号として固定発振回路１３０で生成された周波数固定のクロック信号を使用しているので、書き込みクロック信号も周波数が固定されたクロック信号である。固定発振回路１３０は前述のように本来はマイコンを起動する際のクロック信号を生成するために設けられており、異なるマイコンのユーザ、すなわち動作速度が異なるマイコンを構成する場合にかかわらず全て同一規格の固定発振回路が装備されている。そのため、異なるメイン発振回路１２０が接続された動作速度が異なるマイコンにおいても全て同じ周波数の書き込みクロック信号によりフラッシュメモリ１００への書き込みが行われることになる。
【００２４】
これにより、固定発振回路１３０から出力される周波数のクロック信号でフラッシュメモリ１００に対してデータ書き込みを行った場合でもデータ保持抜けを生じ難くする。すなわち、データ保持抜けが生じ難いライトディスターブ時間のフラッシュメモリ１００を設計することができる。したがって、本実施例１のマイコンに対してユーザが任意の周波数のメイン発振回路１２０を搭載して任意の動作速度のマイコンを構成した場合でも、従来のように書き込みクロック信号の周波数の相違によってライトディスターブ時間が長くなることが防止でき、これによりメモリセルに加えられる余剰電圧を可及的に少なくし、ダメージを抑制することでデータ保持抜けを生じ難いものにできる。
【００２５】
なお、マイコンの起動後は、データの書き込み時以外では（Ｓ１０３）、制御回路からの書き込み信号が入力されないことに基づいてセレクタ１４０はメイン発振回路１２０からのクロック信号を選択し（Ｓ１０５）、この選択したクロック信号に基づいてＣＰＵクロック信号を生成し、マイコンの動作を実行する。これにより、メイン発振回路１２０で発生された周波数のクロック信号に対応した速度でマイコンが動作されることになり、ユーザが希望する任意の周波数のメイン発振回路を搭載することにより、任意の動作速度でのマイコンが得られる。
【００２６】
このように、マイコン内に周波数が一定の固定発振回路１３０を備え、この固定発振回路１３０で発生されるクロック信号に基づいてフラッシュメモリ１００へのデータの書き込みを行う構成とし、これと同時にフラッシュメモリ１００は当該クロック信号から得られる書き込みクロック信号により書き込みを行う際のライトディスターブ時間に対応してデータ保持抜けが生じ難くなるように設計しておくことで、データ書き込み時には固定した一定の周波数の書き込みクロック信号での書き込みを行うことができ、ライトディスターブ時間の誤差が原因となる余剰電圧を少なくし、データ保持抜けをし難くすることができる。そのため、ユーザの相違によってメイン発振回路１２０の発振周波数が相違し、動作速度が異なるマイコンを構成した場合に、特にメイン発振回路１２０の発振周波数が低く動作速度の遅いマイコンを構築した場合においても、従来技術で説明したようなフラッシュメモリにおけるデータ保持抜けをし難くすることができる。
【実施例２】
【００２７】
ここで、実施例１では固定発振回路１３０として、マイコンを起動する際のクロック信号を発生するために設けられている比較的に周波数の低い既存の固定発振回路を利用しているが、高速にデータの書き込みを行う要求がある場合には、図３にブロック回路図を示す実施例２の構成とすることが好ましい。実施例２では、実施例１の固定発振回路１３０よりも発振周波数の高い固定発振回路１３０Ａを装備しておき、当該クロック信号を所定の分周比で分周する分周回路１５０を設けておき、この固定発振回路１３０Ａで発生されるクロック信号と、分周回路１５０で分周したクロック信号を、マイコン１に外付けされる水晶発振器を発振源とするメイン発振回路１２０のクロック信号とともにセレクタ１４０によって選択するようにしている。ここでは例えば、固定発振回路１３０Ａとして発振周波数を８ＭＨｚのクロック信号を発生し、分周回路１５０はこれを２ＭＨｚのクロック信号となるように分周する。
【００２８】
実施例２では、図４のフローチャートに示すように、マイコン１の起動時には（Ｓ２０１）、高周波数に固定された固定発振回路１３０Ａのクロック信号を分周回路１５０で分周した２ＭＨｚのクロック信号を選択することでマイコンを起動する（Ｓ２０２）。これによりメイン発振回路１２０の発振周波数が安定するまでに所要の時間がかかる場合でも、周波数の立ち上げが速いリング発振回路からなる固定発振回路１３０Ａのクロック信号を分周した好ましい周波数のクロック信号によるマイコンの起動が可能になる。データの書き込み時には（Ｓ２０３）、固定発振回路１３０Ａのクロック信号を直接に選択することで８ＭＨｚの書き込みクロック信号を生成してフラッシュメモリ１００へのデータの書き込みを行なう。この場合にはフラッシュメモリ１００を８ＭＨｚの書き込みクロック信号に対応したライトディスターブ時間に設計しておくことで、実施例１よりもデータの書き込みをより高速に行うことができ、それだけライトディスターブ時間を短くして余剰電圧を少なくし、データ保持抜けをより生じ難くすることが可能になる。データの書き込み以外のときには（Ｓ２０３）、メイン発振回路１２０のクロック信号を選択することは実施例１と同じである（Ｓ２０５）。
【００２９】
実施例２においても、ユーザの相違によってメイン発振回路１２０の発振周波数が相違する動作速度の異なるマイコンを構成した場合に、特にメイン発振回路１２０の発振周波数が低く動作速度の遅いマイコンを構築した場合においても、ライトディスターブ時間が長くなることによるフラッシュメモリ１００へのデータ書き込み時におけるデータ保持抜けを生じ難くすることができるようになり、これに加えて書き込み速度の高速化が実現できる。
【００３０】
また、実施例１，２のいずれにおいても、マイコンに標準的に装備されている起動用の固定発振回路１３０を利用して、あるいは既存の固定発振回路の周波数よりも高周波数の固定発振回路１３０Ａを利用してマイコン自体でフラッシュメモリ１００へのデータの書き込みを実行することができるので、外部から書き込みのための高速クロック信号を供給する必要はなく、また、新たな発振回路は不要であり低コストなマイコンを実現することが可能になる。
【実施例３】
【００３１】
図５は実施例３のブロック回路図である。実施例３では、実施例１と同じ固定発振回路（以下、低周波固定発振回路と称する）１３０と、これよりも発振周波数の高い実施例２と同様の固定発振回路（以下、高周波固定発振回路）１３０Ａを装備している。ここでは前記各実施例１，２と同様に、高周波固定発振回路１３０Ａは発振周波数が８ＭＨｚのクロック信号を発生し、低周波固定発振回路１３０は発振周波数が２ＭＨｚのクロック信号を発生するそれぞれリング発振回路で構成されている。この高周波固定発振回路１３０Ａは新たにマイコン１に装備させることになるが、既存の発振回路を利用することができるためマイコン１の構成を特に複雑化するものではない。そして、マイコンに対して外付けされる水晶発振回路からなるメイン発振回路１２０のクロック信号と、前記低周波固定発振回路１３０Ａのクロック信号を選択する第１セレクタ１４０Ａと、第１セレクタ１４０Ａで選択されたクロック信号と前記高周波固定発振回路１３０Ａのクロック信号とを選択する第２セレクタ１４０Ｂとを備えている。さらに、実施例３では、前記第１セレクタ１４０Ａで選択したクロック信号を図には表れない複数の周辺マクロに対して分配するためのプリスケーラ１７０が設けられている。
【００３２】
実施例３では、図６のフローチャートに示すように、マイコンの起動時には（Ｓ３０１）、低周波固定発振回路１３０の２ＭＨｚのクロック信号を第１セレクタ１４０Ａで選択し、さらに第２セレクタ１４０Ｂで選択することで、当該クロック信号によりマイコンを起動する（Ｓ３０２）。これによりメイン発振回路１２０の発振周波数が安定するまでに所要の時間がかかる場合でも、周波数の立ち上げが速いリング発振回路からなる低周波固定発振回路１３０の所要の周波数のクロック信号によるマイコンの起動が可能になる。データの書き込み時には（Ｓ３０３）、第２セレクタ１４０Ｂにより高周波固定発振回路１３０Ａの８ＭＨｚのクロック信号を選択して書き込みクロック信号を生成してフラッシュメモリ１００へのデータの書き込みを行なう。この場合にはフラッシュメモリ１００を８ＭＨｚの書き込みクロック信号に対応したライトディスターブ時間に設計しておくことで、実施例２と同様にデータの書き込みを高速に行うことができるとともに、データ保持抜けを確実に防止することが可能になる。マイコンが起動した後で、前述のデータの書き込み以外のときには（Ｓ３０３）、第１セレクタ１４０Ａによってメイン発振回路１２０のクロック信号を選択する。この選択されたメイン発振回路１２０のクロック信号によりＣＰＵ１１０が動作され、あるいは周辺マクロが動作される。
【００３３】
実施例３においても、ユーザの相違によってメイン発振回路１２０の発振周波数が相違する動作速度の異なるマイコンを構成した場合に、特にメイン発振回路１２０の発振周波数が低く動作速度の遅いマイコンを構築した場合においても、ライトディスターブ時間が長くなることによる余剰電圧を少なくし、フラッシュメモリ１００へのデータ書き込み時におけるデータ保持抜けをし難くすることができるようになり、これに加えて書き込み速度の高速化が実現できる。特に実施例３では、フラッシュメモリ１００へのデータ書き込み時のクロック信号を発生させるために高周波固定発振回路１３０Ａを専用の発振回路として構成しているので、ＣＰＵ１１０や周辺マクロの動作速度とは独立して極めて高い周波数のクロック信号でのデータ書き込みを行うことが可能になり、データ保持抜けをより生じ難くするとともに高速のデータ書き込みが実現できる。
【図面の簡単な説明】
【００３４】
【図１】実施例１のデータ書き込み装置のブロック回路図である。
【図２】実施例１の動作を説明するためのフローチャートである。
【図３】実施例２のデータ書き込み装置のブロック回路図である。
【図４】実施例２の動作を説明するためのフローチャートである。
【図５】実施例３のデータ書き込み装置のブロック回路図である。
【図６】実施例３の動作を説明するためのフローチャートである。
【図７】フラッシュメモリの回路図である。
【図８】フラッシュメモリへのデータ書き込みタイミングを示す図である。
【図９】従来のデータ書き込み装置のブロック回路図である。
【符号の説明】
【００３５】
１，１Ａ  マイコン
１００  フラッシュメモリ
１１０  ＣＰＵ
１２０  メイン発振回路
１３０，１３０Ａ  固定発振回路
１４０，１４０Ａ，１４０Ｂ  セレクタ
１５０  分周回路
１６０  書き込みクロック生成回路
１７０  プリスケーラ
【図１】
2005309799.tif 000003
【図２】
2005309799.tif 000004
【図３】
2005309799.tif 000005
【図４】
2005309799.tif 000006
【図５】
2005309799.tif 000007
【図６】
2005309799.tif 000008
【図７】
2005309799.tif 000009
【図８】
2005309799.tif 000010
【図９】
2005309799.tif 000011