(57)【要約】      （修正有）【課題】汎用の不揮発性メモリを流用可能とする。【解決手段】ロジック装置１は、コンフィグレーションデータおよびプログラムデータを、汎用メモリインターフェースを介して、フラッシュＲＯＭ２から読み出すロジック装置であって、リセット解除されると、データ領域２１のアクセスアドレスを生成し、領域２１から読み出されたプログラムデータによって動作するＣＰＵコア部１１と、フラッシュＲＯＭ２のリセット解除よりも遅延してＣＰＵコア部１１をリセット解除するロジックリセット生成部１２と、フラッシュＲＯＭリセット解除時からＣＰＵコア部リセット解除時までの期間中に、コンフィグレーション領域２２のアクセスアドレスを生成するコンフィグレーションアドレス生成部１４と、上記期間中に、領域２２から読み出されたコンフィグレーションデータをラッチするコンフィグレーションレジスタ１９とを備える。【選択図】        図１
2006155004.tif 000002
【特許請求の範囲】
【請求項１】
自装置を設定するためのコンフィグレーションデータおよび動作させるためのプログラムデータを、汎用メモリインターフェースを介して、不揮発性のメモリのコンフィグレーション領域およびデータ領域からそれぞれ読み出すロジック装置であって、
リセット解除されると、上記データ領域をアクセスするアドレスであって上記汎用メモリインターフェースを介して上記メモリに転送されるプログラムアドレスを生成し、上記データ領域から読み出されて上記汎用メモリインターフェースを介して転送された上記プログラムデータによって動作するロジックコア部と、
上記メモリをリセット解除してから所定の時間遅延して上記ロジックコア部をリセット解除するリセット解除手段と、
上記メモリのリセット解除時から上記ロジックコア部のリセット解除時までの期間中に、上記コンフィグレーション領域をアクセスするアドレスであって上記汎用メモリインターフェースを介して上記メモリに転送されるコンフィグレーションアドレスを生成するコンフィグレーションアドレス生成手段と、
上記メモリのリセット解除時から上記ロジックコア部のリセット解除時までの上記期間中に、上記コンフィグレーション領域から読み出されて上記汎用メモリインターフェースを介して転送された上記コンフィグレーションデータをラッチするコンフィグレーション記憶手段と
を備えた
ことを特徴とするロジック装置。
【請求項２】
請求項１記載のロジック装置において、
アドレス生成手段は、
上記メモリの複数のコンフィグレーション領域をそれぞれアクセスする複数のアドレスであって、上記汎用メモリインターフェースを介して上記メモリに順次転送される一連ののコンフィグレーションアドレスを生成し、
上記ラッチ手段は、上記複数のコンフィグレーション領域からそれぞれ読み出されて上記汎用メモリインターフェースを介して転送された複数のコンフィグレーションデータをラッチする
ことを特徴とするロジック装置。
【請求項３】
請求項１または２に記載のロジック装置において、
上記リセット解除手段は、上記メモリのリセット解除時からの上記ロジックのリセット解除時の遅延時間を、入力された遅延時間設定信号に従って変更することを特徴とするロジック装置。
【請求項４】
請求項１から３までのいすれかに記載のロジック装置と、上記メモリとを備えることを特徴とするロジックシステム。
【請求項５】
請求項４記載のロジックシステムにおいて、
上記ロジック装置および上記メモリを内蔵する１つのＬＳＩであることを特徴とするロジックシステム。
【請求項６】
ロジック装置を設定するためのコンフィグレーションデータおよび動作させるためのプログラムデータを、汎用メモリインターフェースを介して、不揮発性のメモリから読み出すデータ読み出し制御方法であって、
上記メモリをリセット解除するステップと、
上記メモリがリセット解除されたら、上記コンフィグレーションデータを、上記汎用メモリインターフェースを介して、上記メモリから上記ロジック装置内のコンフィグレーション記憶手段に転送するステップと、
上記プログラムデータの上記転送が完了してから、上記ロジック装置内のロジックコア部をリセット解除するステップと、
上記ロジックコア部がリセット解除されたら、上記プログラムデータを、上記汎用メモリインターフェースを介して、上記メモリから上記ロジックコア部に転送するステップと
を含む
ことを特徴とするデータ読み出し制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マイクロプロセッサ等のロジックコア部を有するマイクロコントローラ等のロジック装置と、フラッシュＲＯＭ等の不揮発性メモリとを備え、上記ロジック装置を設定するためのコンフィグレーション（Configuration）データおよび上記ロジック装置を動作させるためのプログラム等のデータ（プログラムデータ）を上記メモリのコンフィグレーション領域およびデータ領域にそれぞれに用意したロジックシステムに関するものである。
【背景技術】
【０００２】
図８は従来のロジックシステムの構成図である。図８において、従来のロジックシステムは、ロジック装置１０１と、フラッシュＲＯＭ１０２とを備える。この従来のロジックシステムは、例えば、マイクロコントローラ等のロジック装置１０１にフラッシュＲＯＭ１０２を内蔵して１つのＬＳＩとした構成、あるいは個別のＬＳＩであるロジック装置１０１およびフラッシュＲＯＭ１０２をプリント基板等に実装した構成である。
【０００３】
ロジック装置１０１は、ＣＰＵコア部１１１と、フラッシュＲＯＭ１０２から読み出された第１，第２のコンフィグレーションデータがそれぞれ書き込まれる第１，第２のコンフィグレーションレジスタ１１９−１，１１９−２とを有する。
【０００４】
フラッシュＲＯＭ１０２は、データ記憶領域として、ロジック装置１０１を動作させるためのプログラムデータが記憶されているデータ領域１２１と、ロジック装置１０１を設定するための第１，第２のコンフィグレーションデータがそれぞれ記憶されている第１，第２のコンフィグレーション領域１２２−１，１２２−２とを有する。
【０００５】
上記第１，第２のコンフィグレーションデータは、ロジック装置１０１において、起動時に、レギュレート電圧のトリミングデータ，システムクロックの分周比，未使用機能のクロック供給停止等の設定をするためのデータである。
【０００６】
ロジック装置１０１のＣＰＵコア部１１１、第１，第２のコンフィグレーションレジスタ１１９−１，１１９−２、およびフラッシュＲＯＭ１０２は、このロジックシステムに入力されたリセット信号ＲＥＳＥＴによって、同時にリセット解除され、データ領域１２１をアクセスするプログラムアドレスＰｒｏｇ＿Ａが、ＣＰＵコア部１１１から汎用メモリインターフェースのアドレスバスを介してフラッシュＲＯＭ１０２に転送され、データ領域１２１のそのアドレスＰｒｏｇ＿Ａから読み出されたプログラムデータＰｒｏｇ＿Ｄａｔａが、上記汎用メモリインターフェースのデータバスを介してＣＰＵコア部１１１に転送されるとともに、第１，第２のコンフィグレーション領域１２２−１，１２２−２から読み出された第１，第２のコンフィグレーションデータＣｏｎｆ＿Ｄａｔａ１，Ｃｏｎｆ＿Ｄａｔａ２が、それぞれ専用バスを介して第１，第２のコンフィグレーションレジスタ１１９−１，１１９−２に転送されて書き込まれる。
【０００７】
一方、従来の他の技術として、ＰＬＤのコンフィグレーションデータと埋め込みロジックのコンフィグレーションデータを含む単一のシリアルビットストリームを、１つのコンフィグレーションソースから供給し、このビットストリームから、ＰＬＤのコンフィグレーションデータをＰＬＤに分配出力し、埋め込みロジックのコンフィグレーションデータを埋め込みロジックに分配出力するものがある（例えば、特許文献１参照）。
【０００８】
【特許文献１】特開２００２−１１８４５９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、図８のように、コンフィグレーションデータを記憶するコンフィグレーション領域をフラッシュＲＯＭ内に確保する構成の従来のロジックシステムでは、汎用メモリインターフェースの他に、コンフィグレーションデータを読み出すための専用バス等を備えた専用のフラッシュＲＯＭを設計開発する必要があった。そのため、フラッシュＲＯＭ内にデータ領域とコンフィグレーション領域とを確保する構成の従来のロジックシステムの設計時においても、汎用メモリインターフェースのみを備えた汎用のフラッシュＲＯＭをＭＣＰ（Multi Chip Package）等で組み立てて設計することができないという課題があった。
【００１０】
本発明は、このような従来の課題を解決するためになされたものであり、不揮発性メモリ内にデータ領域とコンフィグレーション領域とを確保する構成で、専用の不揮発性メモリを必要とせずに、汎用メモリインターフェースのみを備えた汎用の不揮発性メモリを流用可能なロジック装置およびロジックシステムならびにデータ読み出し制御方法を提供することを目的とするものである。
【課題を解決するための手段】
【００１１】
本発明のロジック装置は、
自装置を設定するためのコンフィグレーションデータおよび動作させるためのプログラムデータを、汎用メモリインターフェースを介して、不揮発性のメモリのコンフィグレーション領域およびデータ領域からそれぞれ読み出すロジック装置であって、
リセット解除されると、上記データ領域をアクセスするアドレスであって上記汎用メモリインターフェースを介して上記メモリに転送されるプログラムアドレスを生成し、上記データ領域から読み出されて上記汎用メモリインターフェースを介して転送された上記プログラムデータによって動作するロジックコア部と、
上記メモリをリセット解除してから所定の時間遅延して上記ロジックコア部をリセット解除するリセット解除手段と、
上記メモリのリセット解除時から上記ロジックコア部のリセット解除時までの期間中に、上記コンフィグレーション領域をアクセスするアドレスであって上記汎用メモリインターフェースを介して上記メモリに転送されるコンフィグレーションアドレスを生成するコンフィグレーションアドレス生成手段と、
上記メモリのリセット解除時から上記ロジックコア部のリセット解除時までの上記期間中に、上記コンフィグレーション領域から読み出されて上記汎用メモリインターフェースを介して転送された上記コンフィグレーションデータをラッチするコンフィグレーション記憶手段と
を備えた
ことを特徴とする。
【００１２】
また、本発明のデータ読み出し制御方法は、
ロジック装置を設定するためのコンフィグレーションデータおよび動作させるためのプログラムデータを、汎用メモリインターフェースを介して、不揮発性のメモリから読み出すデータ読み出し制御方法であって、
上記メモリをリセット解除するステップと、
上記メモリがリセット解除されたら、上記コンフィグレーションデータを、上記汎用メモリインターフェースを介して、上記メモリから上記ロジック装置内のコンフィグレーション記憶手段に転送するステップと、
上記プログラムデータの上記転送が完了してから、上記ロジック装置内のロジックコア部をリセット解除するステップと、
上記ロジックコア部がリセット解除されたら、上記プログラムデータを、上記汎用メモリインターフェースを介して、上記メモリから上記ロジックコア部に転送するステップと
を含む
ことを特徴とする。
【発明の効果】
【００１３】
本発明によれば、不揮発性メモリに記憶させたコンフィグレーションデータをロジック装置に読み出すロジックシステムを、汎用の不揮発性メモリを用いて構成できるという効果がある。
【発明を実施するための最良の形態】
【００１４】
実施の形態１
図１は本発明の実施の形態１のロジックシステムの構成図である。図１において、実施の形態１のロジックシステムは、ロジック装置１と、フラッシュＲＯＭ２とを備えて構成されている。この実施の形態１のロジックシステムは、例えば、ロジック装置１にフラッシュＲＯＭ２を内蔵して１つのＬＳＩとしたタイプ、あるいは個別のＬＳＩであるロジック装置１およびフラッシュＲＯＭ２をプリント基板等に実装したタイプである。
【００１５】
ロジック装置１は、マイクロコントローラ等のロジック装置であって、ＣＰＵコア部１１と、ロジックリセット生成部１２と、ＡＮＤゲート１３と、コンフィグレーションアドレス生成部１４と、セレクタ１５，１６，１７と、コンフィグレーションアドレスデコーダ１８と、コンフィグレーションレジスタ１９とを有する。
【００１６】
フラッシュＲＯＭ２は、汎用のインターフェース（アドレスバス，データバス，チップイネーブルのインターフェース）のみを備えた汎用のフラッシュＲＯＭであって、データ記憶領域として、ロジック装置１を動作させるためのプログラム等のデータ（プログラムデータ）が記憶されているデータ領域２１と、ロジック装置１を設定するためのコンフィグレーションデータが記憶されているコンフィグレーション領域２２とを有する。
【００１７】
上記コンフィグレーションデータは、ロジック装置１において、起動時に、レギュレート電圧のトリミングデータ，システムクロックの分周比，未使用機能のクロック供給停止等の設定をするためのデータである。
【００１８】
図２はロジックリセット生成部１２の内部構成図であり、図１と同様のものには同じ符号を付してある。図２において、ロジックリセット生成部１２は、遅延素子１２１と、ＡＮＤゲート１２２とを有する。
【００１９】
この実施の形態１のロジックシステムは、
プログラムデータを記憶したデータ領域２１と、コンフィグレーションデータを記憶したコンフィグレーション領域２２とを、汎用のフラッシュＲＯＭ２のデータ記憶領域内に確保する構成であって、
フラッシュＲＯＭ２のリセット解除時よりも、フラッシュＲＯＭ２の１アドレスサイクル仕様期間（フラッシュＲＯＭ２の１つのアドレスからデータを読み出すのに必要な期間）以上遅延して、ロジックリセット信号Ｌｏｇｉｃ＿ＲＥＳＥＴによってロジック装置１のＣＰＵコア部１１をリセット解除するロジックリセット生成部１２と、
フラッシュＲＯＭ２のリセット解除時からＣＰＵコア部１１のリセット解除時までの期間中に、コンフィグレーション領域２２をアクセスするコンフィグレーションアドレスおよびフラッシュＲＯＭ２をアクセス可能にするチップイネーブル信号を生成し、上記汎用インターフェースを介してフラッシュＲＯＭ２に転送する手段を構成するコンフィグレーションアドレス生成部１４およびセレクタ１５，１６と、
上記期間中に、フラッシュＲＯＭ２のコンフィグレーション領域２２から読み出され、上記汎用インターフェースを介して転送されるコンフィグレーションデータをラッチする手段を構成するセレクタ１７、コンフィグレーションアドレスデコーダ１８、およびコンフィグレーションレジスタ１９と
をロジック装置１に設けたことを特徴とする。
【００２０】
図３は本発明の実施の形態１の動作を説明するタイミングチャートである。図３において、（ａ）はリセット信号ＲＥＳＥＴ、（ｂ）はフラッシュリセット信号Ｆｌａ＿ＲＥＳＥＴ、（ｃ）はロジックリセット信号Ｌｏｇｉｃ＿ＲＥＳＥＴ、（ｄ）はセレクト信号ＳＥＬ、（ｅ）はフラッシュアドレスＦｌａ＿Ａ、（ｆ）はフラッシュイネーブル信号Ｆｌａ＿ＣＥＢ、（ｇ）はフラッシュリードデータＦｌａ＿Ｄａｔａ、（ｈ）はコンフィグレーションレジスタ１９のデータである。
【００２１】
このような実施の形態１のロジックシステムの起動時の動作について以下に説明する。リセット信号ＲＥＳＥＴは、ロジック装置１のロジックリセット生成部１２、ＡＮＤゲート１３の非反転入力端子、およびコンフィグレーションレジスタ１９のリセット端子に入力されるとともに、フラッシュＲＯＭ２のリセット信号（フラッシュリセット信号）Ｆｌａ＿ＲＥＳＥＴとして、フラッシュＲＯＭ２にも入力される。
【００２２】
従って、フラッシュリセット信号Ｆｌａ＿ＲＥＳＥＴは、リセット信号ＲＥＳＥＴと同じタイミングで、“Ｌ”レベル（論理値“０”）から“Ｈ”レベル（論理値“１”）、および“Ｈ”（“１”）から“Ｌ”（“０”）になる信号である（図３（ａ），（ｂ）参照）。
【００２３】
ロジック装置１のコンフィグレーションレジスタ１９およびフラッシュＲＯＭ２は、リセット信号ＲＥＳＥＴ（＝フラッシュリセット信号Ｆｌａ＿ＲＥＳＥＴ）が“Ｌ”（“０”）から“Ｈ”（“１”）になることにより、リセット解除され、リセット動作を完了する。
【００２４】
ロジックリセット生成部１２（図２参照）において、遅延素子１２１は、リセット信号ＲＥＳＥＴを遅延し、そのリセット信号ＲＥＳＥＴの遅延信号（リセット遅延信号）をＡＮＤゲート１２２に出力し、ＡＮＤゲート１２２は、リセット信号ＲＥＳＥＴと、遅延素子１２１からのリセット信号ＲＥＳＥＴの遅延信号とを入力とし、これらの信号の論理積信号である出力信号を、ロジックリセット信号Ｌｏｇｉｃ＿ＲＥＳＥＴとして、ＣＰＵコア部１１およびＡＮＤゲート１３の反転入力端子に出力する。
【００２５】
従って、ロジックリセット信号Ｌｏｇｉｃ＿ＲＥＳＥＴは、リセット信号ＲＥＳＥＴよりも遅れたタイミングで、“Ｌ”（“０”）から“Ｈ”（“１”）、および“Ｈ”（“１”）から“Ｌ”（“０”）になる信号である（図３（ａ），（ｃ）参照）。
【００２６】
ロジック装置１のＣＰＵコア部１１は、ロジックリセット信号Ｌｏｇｉｃ＿ＲＥＳＥＴが、リセット信号ＲＥＳＥＴから遅れて“Ｌ”（“０”）から“Ｈ”（“１”）になることにより、コンフィグレーションレジスタ１９およびフラッシュＲＯＭ２よりも遅れてリセット解除され、リセット動作を完了する。
【００２７】
ロジック装置１のＡＮＤゲート１３は、リセット信号ＲＥＳＥＴと、このリセット信号ＲＥＳＥＴを遅延したロジックリセット信号Ｌｏｇｉｃ＿ＲＥＳＥＴの反転信号とを論理積演算し、その論理積演算信号を、セレクト信号ＳＥＬとして、セレクタ１５，１６，１７に出力する。
【００２８】
このセレクト信号ＳＥＬは、リセット信号ＲＥＳＥＴが“Ｌ”（“０”）から“Ｈ”（“１”）になるフラッシュリセット解除時から、ロジックリセット信号Ｌｏｇｉｃ＿ＲＥＳＥＴが“Ｌ”（“０”）から“Ｈ”（“１”）になるロジックリセット解除時までの期間、“Ｈ”（“１”）となる信号である（図３（ｄ）参照）。
【００２９】
コンフィグレーションアドレス生成部１４は、上記フラッシュリセット解除時において、ＣＰＵコア部１１よりも前にリセット解除されると、フラッシュＲＯＭ２のコンフィグレーション領域２２をアクセスするアドレスであるコンフィグレーションアドレスを生成し、そのコンフィグレーションアドレスをセレクタ１５およびコンフィグレーションアドレスデコーダ１８に出力するとともに、フラッシュＲＯＭ２のチップイネーブル信号を生成し、そのチップイネーブル信号をセレクタ１６に出力する。
【００３０】
例えば、このコンフィグレーションアドレス生成部１４は、リセット解除されると、あらかじめ記憶している１つのデフォルトコンフィグレーションアドレス値を出力する。
【００３１】
ＣＰＵコア部１１は、上記ロジックリセット解除時において、フラッシュＲＯＭ２およびコンフィグレーションアドレス生成部１４よりも遅れてリセット解除されると、フラッシュＲＯＭ２のデータ領域２１をアクセスするアドレスであるプログラムアドレスを生成し、そのプログラムアドレスをセレクタ１５に出力するとともに、フラッシュＲＯＭ２のチップイネーブル信号を生成し、そのチップイネーブル信号をセレクタ１６に出力する。
【００３２】
セレクタ１５は、コンフィグレーションアドレス生成部１４から入力されるコンフィグレーションアドレス、またはＣＰＵコア部１１から入力されるプログラムアドレスのいずれかを、セレクト信号ＳＥＬに従って選択し、その選択したアドレスを、フラッシュＲＯＭ２のアクセスアドレス（フラッシュアドレス）Ｆｌａ＿Ａとして、ロジック装置１とフラッシュＲＯＭ２の汎用メモリインターフェース間のアドレスバスを介してフラッシュＲＯＭ２に転送する。
【００３３】
セレクタ１６は、コンフィグレーションアドレス生成部１４から入力されるチップイネーブル信号、またはＣＰＵコア部１１から入力されるチップイネーブル信号のいずれかを、セレクト信号ＳＥＬに従って選択し、その選択したチップイネーブル信号を、フラッシュＲＯＭ２のチップイネーブル信号（フラッシュイネーブル信号）Ｆｌａ＿ＣＥＢとして、フラッシュＲＯＭ２に出力する。
【００３４】
このフラッシュイネーブル信号Ｆｌａ＿ＣＥＢ（コンフィグレーションアドレス生成部１４またはＣＰＵコア部１１で生成されるチップイネーブル信号）は、“Ｌ”（“０”）の期間に、フラッシュＲＯＭ２のデータの書き込みまたは読み出しを許可し、“Ｈ”（“１”）の期間には、上記書き込みまたは読み出しを禁止する信号である（図３（ｆ）参照）。
【００３５】
セレクタ１７は、ＣＰＵコア部１１またはコンフィグレーションレジスタ１９のいずれかを、セレクト信号ＳＥＬに従って選択し、その選択したＣＰＵコア部１１またはコンフィグレーションレジスタ１９に、ロジック装置１とフラッシュＲＯＭ２の汎用メモリインターフェース間のデータバスを介してフラッシュＲＯＭ２から転送された読み出しデータ（フラッシュリードデータ）Ｆｌａ＿Ｄａｔａを出力する。
【００３６】
セレクト信号ＳＥＬが“Ｈ”（“１”）の期間においては、セレクタ１５は、コンフィグレーションアドレス生成部１４で生成されたコンフィグレーションアドレスをフラッシュアドレスＦｌａ＿Ａとして、フラッシュＲＯＭ２に転送し、セレクタ１６は、コンフィグレーションアドレス生成部１４で生成されたチップイネーブル信号をフラッシュイネーブル信号Ｆｌａ＿ＣＥＢとして、フラッシュＲＯＭ２に出力する。
【００３７】
従って、上記フラッシュリセット解除時において、セレクト信号ＳＥＬが“Ｈ”（“１”）になると、コンフィグレーション領域２２をアクセスするフラッシュアドレスＦｌａ＿Ａが、ロジック装置１とフラッシュＲＯＭ２の汎用メモリインターフェース間のアドレスバスを介して、フラッシュＲＯＭ２に転送される（図３（ｅ）参照）。
【００３８】
また、上記フラッシュリセット解除時において、セレクト信号ＳＥＬが“Ｈ”（“１”）になると、コンフィグレーションアドレス生成部１４で生成されたフラッシュイネーブル信号Ｆｌａ＿ＣＥＢがフラッシュＲＯＭ２に入力される（図３（ｆ）参照）。
【００３９】
そして、フラッシュＲＯＭ２において、コンフィグレーション領域２２に記憶されているコンフィグレーションデータが、フラッシュリードデータＦｌａ＿Ｄａｔａとして読み出され、ロジック装置１とフラッシュＲＯＭ２の汎用メモリインターフェース間のデータバスを介して、ロジック装置１のセレクタ１７に転送される。
【００４０】
従って、上記フラッシュリセット解除時において、セレクト信号ＳＥＬが“Ｈ”（“１”）になり、コンフィグレーション領域２２をアクセスするフラッシュアドレスＦｌａ＿ＡがフラッシュＲＯＭ２に転送されると、コンフィグレーション領域２２に記憶されているコンフィグレーションデータのフラッシュリードデータＦｌａ＿Ｄａｔａが、ロジック装置１のセレクタ１７に転送される（図３（ｇ）参照）。
【００４１】
セレクト信号ＳＥＬが“Ｈ”（“１”）の期間においては、セレクタ１７は、フラッシュリードデータＦｌａ＿Ｄａｔａをコンフィグレーションレジスタ１９に出力する。
【００４２】
コンフィグレーションアドレスデコーダ１８は、コンフィグレーションアドレス生成部１４から入力されたコンフィグレーションアドレスをデコードし、そのデコード信号であってコンフィグレーションレジスタ１９を書き込み動作させる信号を、コンフィグレーションレジスタ１９に出力する。
【００４３】
なお、この実施の形態１では、コンフィグレーションレジスタは１つなので、コンフィグレーションアドレスデコーダ１８を設けずに、上記コンフィグレーションアドレスを、そのままコンフィグレーションレジスタ１９を書き込み動作させる信号として、コンフィグレーションレジスタ１９に入力する構成も可能である。
【００４４】
上記フラッシュリセット解除時にリセット解除されているコンフィグレーションレジスタ１９は、コンフィグレーションアドレスデコーダ１８からのデコード信号によって、セレクタ１７から入力されるフラッシュリードデータＦｌａ＿Ｄａｔａの書き込み動作をする。
【００４５】
従って、上記フラッシュリセット解除時において、セレクト信号ＳＥＬが“Ｈ”（“１”）になり、コンフィグレーション領域２２をアクセスするフラッシュアドレスＦｌａ＿ＡがフラッシュＲＯＭ２に転送され、コンフィグレーション領域２２に記憶されているコンフィグレーションデータのフラッシュリードデータＦｌａ＿Ｄａｔａが読み出されてロジック装置１に転送されると、このコンフィグレーションデータは、コンフィグレーションレジスタ１９に書き込まれる（図３（ｈ）参照）。
【００４６】
セレクト信号ＳＥＬが“Ｌ”（“０”）の期間になると、セレクタ１５は、フラッシュアドレスＦｌａ＿Ａを、ＣＰＵコア部１１で生成されたプログラムアドレス（データ領域２１をアクセスするアドレス）に切り換え、セレクタ１６は、フラッシュイネーブル信号Ｆｌａ＿ＣＥＢを、ＣＰＵコア部１１で生成されたチップイネーブル信号に切り換える。
【００４７】
従って、上記ロジックリセット解除時において、セレクト信号ＳＥＬが“Ｌ”（“０”）になると、データ領域２１をアクセスするフラッシュアドレスＦｌａ＿Ａが、ロジック装置１とフラッシュＲＯＭ２の汎用メモリインターフェース間のアドレスバスを介して、フラッシュＲＯＭ２に転送される（図３（ｅ）参照）。
【００４８】
また、上記ロジックリセット解除時において、セレクト信号ＳＥＬが“Ｌ”（“０”）になると、ＣＰＵコア部１１で生成されたフラッシュイネーブル信号Ｆｌａ＿ＣＥＢがフラッシュＲＯＭ２に入力される（図３（ｆ）参照）。
【００４９】
そして、フラッシュＲＯＭ２において、データ領域２１に記憶されているプログラムデータが、フラッシュリードデータＦｌａ＿Ｄａｔａとして読み出され、ロジック装置１とフラッシュＲＯＭ２の汎用インターフェース間のデータバスを介して、ロジック装置１のセレクタ１７に転送される。
【００５０】
従って、上記ロジックリセット解除時において、セレクト信号ＳＥＬが“Ｌ”（“０”）になり、データ領域２１をアクセスするフラッシュアドレスＦｌａ＿ＡがフラッシュＲＯＭ２に転送されると、データ領域２１に記憶されているプログラムデータのフラッシュリードデータＦｌａ＿Ｄａｔａが、ロジック装置１のセレクタ１７に転送される（図３（ｇ）参照）。
【００５１】
セレクト信号ＳＥＬが“Ｌ”（“０”）の期間においては、セレクタ１７は、フラッシュリードデータＦｌａ＿ＤａｔａをＣＰＵコア部１１に出力する。
【００５２】
以上のように実施の形態１によれば、フラッシュＲＯＭに記憶したコンフィグレーションをロジック装置に読み出すロジックシステムを、汎用のフラッシュＲＯＭを用いて構成できる。
【００５３】
実施の形態２
図４は本発明の実施の形態２のシステムの構成図であり、図１と同様のものには同じ符号をす付してある。図４において、実施の形態２のロジックシステムは、ロジック装置３と、フラッシュＲＯＭ４とを備えて構成されている。この実施の形態２のロジックシステムは、例えば、ロジック装置３にフラッシュＲＯＭ４を内蔵して１つのＬＳＩとした構成、あるいは個別のＬＳＩであるロジック装置３およびフラッシュＲＯＭ４をプリント基板等に実装した構成である。
【００５４】
ロジック装置３は、マイクロコントローラ等のロジック装置であって、ＣＰＵコア部１１と、ロジックリセット生成部１２と、ＡＮＤゲート１３と、コンフィグレーションアドレス生成部３４と、セレクタ１５，１６，１７と、コンフィグレーションアドレスデコーダ３８と、第１，第２，…，第ｎのコンフィグレーションレジスタ３９−１，３９−２，…，３９−ｎとを有する。
【００５５】
この実施の形態２のロジック装置３は、上記実施の形態１のロジック装置１（図１参照）において、コンフィグレーションアドレス生成部１４，コンフィグレーションアドレスデコーダ１８をそれぞれコンフィグレーションアドレス生成部３４，コンフィグレーションアドレスデコーダ３８とし、１つのコンフィグレーションレジスタ１９を、複数のコンフィグレーションレジスタによって構成されたコンフィグレーションレジスタ群（第１〜第ｎのコンフィグレーションレジスタ３９−１〜３９−ｎ）としたものである。
【００５６】
フラッシュＲＯＭ４は、汎用のインターフェース（アドレスバス，データバス，チップイネーブルのインターフェース）のみを備えた汎用のフラッシュＲＯＭであって、データ記憶領域として、ロジック装置３を動作させるためのプログラム等のデータ（プログラムデータ）が記憶されているデータ領域２１と、ロジック装置３を設定するための第１，第２，…，第ｎのコンフィグレーションデータがぞれぞれ記憶されている第１，第２，…，第ｎのコンフィグレーション領域４２−１，４２−２，…，４２−ｎとを有する。
【００５７】
上記第１〜第ｎのコンフィグレーションデータは、ロジック装置３において、起動時に、レギュレート電圧のトリミングデータ，システムクロックの分周比，未使用機能のクロック供給停止等の設定をするためのデータである。
【００５８】
この実施の形態２のフラッシュＲＯＭ４のデータ記憶領域は、上記実施の形態１のフラッシュＲＯＭ２（図１参照）のデータ記憶領域において、１つのコンフィグレーション領域２２を、第１〜第ｎのコンフィグレーション領域４２−１〜４２−ｎとしたものである。
【００５９】
この実施の形態２のロジックシステムは、上記実施の形態１のロジックシステム（図１参照）において、フラッシュＲＯＭの複数のアドレスを、複数のコンフィグレーションデータの記憶領域として割り当てたものであり、
プログラムデータを記憶したデータ領域２１と、第１〜第ｎのコンフィグレーションデータをそれぞれ記憶した第１〜第ｎのコンフィグレーション領域４２−１〜４２−ｎを汎用のフラッシュＲＯＭ４のデータ記憶領域内に確保する構成であって、
フラッシュＲＯＭ４のリセット解除時よりも、フラッシュＲＯＭ４のｎアドレスサイクル仕様期間（フラッシュＲＯＭ４のｎ個のアドレスからデータを読み出すのに必要な期間）以上遅延して、ロジックリセット信号Ｌｏｇｉｃ＿ＲＥＳＥＴによってロジック装置３のＣＰＵコア部１１をリセット解除するロジックリセット生成部１２と、
フラッシュＲＯＭ４のリセット解除時からＣＰＵコア部１１のリセット解除時までの期間中に、第１〜第ｎのコンフィグレーション領域４２−１〜４２−ｎをそれぞれアクセスする第１〜第ｎのコンフィグレーションアドレスおよびフラッシュＲＯＭ４をアクセス可能にするチップイネーブル信号を生成し、上記汎用インターフェースを介してフラッシュＲＯＭ４に転送する手段を構成するコンフィグレーションアドレス生成部３４およびセレクタ１５，１６と、
上記期間中に、フラッシュＲＯＭ４の第１〜第ｎのコンフィグレーション領域４２−１〜４２−ｎから読み出され、上記汎用インターフェースを介して順次転送される第１〜第ｎのコンフィグレーションデータをラッチする手段を構成するセレクタ１７、コンフィグレーションアドレスデコーダ３８、および第１〜第ｎのコンフィグレーションレジスタ３９ー１〜３９ーｎと
をロジック装置３に設けたことを特徴とする。
【００６０】
図５は本発明の実施の形態２の動作を説明するタイミングチャートである。図５において、（ａ）は発振回路からのクロック信号ＯＳＣ、（ｂ）はリセット信号ＲＥＳＥＴ、（ｃ）はフラッシュリセット信号Ｆｌａ＿ＲＥＳＥＴ、（ｄ）はロジックリセット信号Ｌｏｇｉｃ＿ＲＥＳＥＴ、（ｅ）はセレクト信号ＳＥＬ、（ｆ）はフラッシュアドレスＦｌａ＿Ａ、（ｇ）はフラッシュイネーブル信号Ｆｌａ＿ＣＥＢ、（ｈ）はフラッシュリードデータＦｌａ＿Ｄａｔａ、（ｉ）は第１のコンフィグレーションレジスタ３９−１のデータ、（ｊ）は第２のコンフィグレーションレジスタ３９−２のデータ、（ｋ）は第ｎのコンフィグレーションレジスタ３９−ｎのデータである。
【００６１】
このような実施の形態２のロジックシステムの起動時の動作について以下に説明する。リセット信号ＲＥＳＥＴは、ロジック装置３のロジックリセット生成部１２、ＡＮＤゲート１３の非反転入力端子、および第１〜第ｎのコンフィグレーションレジスタ３９−１〜３９−ｎのリセット端子に入力されるとともに、フラッシュＲＯＭ４のリセット信号（フラッシュリセット信号）Ｆｌａ＿ＲＥＳＥＴとして、フラッシュＲＯＭ４にも入力される。
【００６２】
従って、フラッシュリセット信号Ｆｌａ＿ＲＥＳＥＴは、リセット信号ＲＥＳＥＴと同じタイミングで、“Ｌ”（“０”）から“Ｈ”（“１”）、および“Ｈ”（“１”）から“Ｌ”（“０”）になる信号である（図５（ｂ），（ｃ）参照）。
【００６３】
ロジック装置３の第１〜第ｎのコンフィグレーションレジスタ３９−１〜３９−ｎおよびフラッシュＲＯＭ４は、リセット信号ＲＥＳＥＴ（＝フラッシュリセット信号Ｆｌａ＿ＲＥＳＥＴ）が“Ｌ”（“０”）から“Ｈ”（“１”）になることにより、リセット解除され、リセット動作を完了する。
【００６４】
ロジックリセット生成部１２（上記実施の形態１の図２参照）において、遅延素子１２１は、リセット信号ＲＥＳＥＴを遅延し、そのリセット遅延信号をＡＮＤゲート１２２に出力し、ＡＮＤゲート１２２は、リセット信号ＲＥＳＥＴと、遅延素子１２１からのリセット信号ＲＥＳＥＴの遅延信号とを入力とし、これらの信号の論理積信号である出力信号を、ロジックリセット信号Ｌｏｇｉｃ＿ＲＥＳＥＴとして、ＣＰＵコア部１１およびＡＮＤゲート１３の反転入力端子に出力する。
【００６５】
従って、ロジックリセット信号Ｌｏｇｉｃ＿ＲＥＳＥＴは、リセット信号ＲＥＳＥＴよりも遅れたタイミングで、“Ｌ”（“０”）から“Ｈ”（“１”）、および“Ｈ”（“１”）から“Ｌ”（“０”）になる信号である（図５（ｂ），（ｄ）参照）。
【００６６】
ロジック装置３のＣＰＵコア部１１は、ロジックリセット信号Ｌｏｇｉｃ＿ＲＥＳＥＴが、リセット信号ＲＥＳＥＴから遅れて“Ｌ”（“０”）から“Ｈ”（“１”）になることにより、第１〜第ｎのコンフィグレーションレジスタ３９−１〜３９−ｎおよびフラッシュＲＯＭ４よりも遅れてリセット解除され、リセット動作を完了する。
【００６７】
ロジック装置３のＡＮＤゲート１３は、リセット信号ＲＥＳＥＴと、ロジックリセット信号Ｌｏｇｉｃ＿ＲＥＳＥＴの反転信号との論理積演算信号を、セレクト信号ＳＥＬとして、セレクタ１５，１６，１７に出力する。
【００６８】
このセレクト信号ＳＥＬは、リセット信号ＲＥＳＥＴが“Ｌ”（“０”）から“Ｈ”（“１”）になるフラッシュリセット解除時から、ロジックリセット信号Ｌｏｇｉｃ＿ＲＥＳＥＴが“Ｌ”（“０”）から“Ｈ”（“１”）になるロジックリセット解除時までの期間、“Ｈ”（“１”）となる信号である（図５（ｅ）参照）。
【００６９】
コンフィグレーションアドレス生成部３４は、上記フラッシュリセット解除時において、ＣＰＵコア部１１よりも前にリセット解除されると、発振回路からのクロック信号ＯＳＣ（図５（ａ）参照）に従って、フラッシュＲＯＭ４の第１〜第ｎのコンフィグレーション領域４２−１〜４２−ｎをそれぞれアクセスする第１〜第ｎのコンフィグレーションアドレスを順次生成し、それら第１〜第ｎのコンフィグレーションアドレスをセレクタ１５およびコンフィグレーションアドレスデコーダ１８に順次出力するとともに、フラッシュＲＯＭ４のチップイネーブル信号を生成し、そのチップイネーブル信号をセレクタ１６に出力する。
【００７０】
例えば、このコンフィグレーションアドレス生成部３４は、第１〜第ｎのデフォルトコンフィグレーションアドレス値をあらかじめ記憶しており、リセット解除されると、まじず第１のデフォルトコンフィグレーションアドレス値を出力し、クロック信号ＯＳＣの２クロックごとに、出力コンフィグレーションアドレスを１つずつインクリメントして、第２〜第ｎのデフォルトコンフィグレーションアドレス値を順次出力する。
この場合には、クロック信号ＯＳＣの２クロック期間が、フラシュＲＯＭ４の１アドレスサイクル仕様期間である。
【００７１】
ＣＰＵコア部１１は、上記ロジックリセット解除時において、フラッシュＲＯＭ４およびコンフィグレーションアドレス生成部３４よりも遅れてリセット解除されると、フラッシュＲＯＭ４のデータ領域２１をアクセスするプログラムアドレスを生成し、そのプログラムアドレスをセレクタ１５に出力するとともに、フラッシュＲＯＭ４のチップイネーブル信号を生成し、そのチップイネーブル信号をセレクタ１６に出力する。
【００７２】
セレクタ１５は、コンフィグレーションアドレス生成部３４から順次入力される第１〜第ｎのコンフィグレーションアドレス、またはＣＰＵコア部１１から入力されるプログラムアドレスのいずれかを、セレクト信号ＳＥＬに従って選択し、その選択したアドレスを、フラッシュＲＯＭ４のアクセスアドレス（フラッシュアドレス）Ｆｌａ＿Ａとして、ロジック装置３とフラッシュＲＯＭ４の汎用メモリインターフェース間のアドレスバスを介してフラッシュＲＯＭ４に転送する。
【００７３】
セレクタ１６は、コンフィグレーションアドレス生成部３４から入力されるチップイネーブル信号、またはＣＰＵコア部１１から入力されるチップイネーブル信号のいずれかを、セレクト信号ＳＥＬに従って選択し、その選択したチップイネーブル信号を、フラッシュＲＯＭ４のチップイネーブル信号（フラッシュイネーブル信号）Ｆｌａ＿ＣＥＢとして、フラッシュＲＯＭ４に出力する。
【００７４】
このフラッシュイネーブル信号Ｆｌａ＿ＣＥＢ（コンフィグレーションアドレス生成部３４またはＣＰＵコア部１１で生成されるチップイネーブル信号）は、“Ｌ”（“０”）の期間に、フラッシュＲＯＭ４のデータの書き込みまたは読み出しを許可し、“Ｈ”（“１”）の期間には、上記書き込みまたは読み出しを禁止する信号である（図５（ｇ）参照）。
【００７５】
セレクタ１７は、ＣＰＵコア部１１またはコンフィグレーションレジスタ群（第１〜第ｎのコンフィグレーションレジスタ３９−１〜３９−ｎ）のいずれかを、セレクト信号ＳＥＬに従って選択し、その選択したＣＰＵコア部１１または上記コンフィグレーションレジスタ群に、ロジック装置３とフラッシュＲＯＭ４の汎用メモリインターフェース間のデータバスを介してフラッシュＲＯＭ４から転送された読み出しデータ（フラッシュリードデータ）Ｆｌａ＿Ｄａｔａを出力する。
【００７６】
セレクト信号ＳＥＬが“Ｈ”（“１”）の期間においては、セレクタ１５は、コンフィグレーションアドレス生成部３４で生成された第１〜第ｎのコンフィグレーションアドレスをフラッシュアドレスＦｌａ＿Ａとして、フラッシュＲＯＭ４に転送し、セレクタ１６は、コンフィグレーションアドレス生成部３４で生成されたチップイネーブル信号をフラッシュイネーブル信号Ｆｌａ＿ＣＥＢとして、フラッシュＲＯＭ４に出力する。
【００７７】
従って、上記フラッシュリセット解除時において、セレクト信号ＳＥＬが“Ｈ”（“１”）になると、第１〜第ｎのコンフィグレーション領域４２−１〜４２−ｎをそれぞれアクセスする第１〜第ｎのコンフィグレーションアドレスが、フラッシュアドレスＦｌａ＿Ａとして、ロジック装置３とフラッシュＲＯＭ４の汎用メモリインターフェース間のアドレスバスを介して、フラッシュＲＯＭ４に順次転送される（図５（ｆ）参照）。
【００７８】
また、上記フラッシュリセット解除時において、セレクト信号ＳＥＬが“Ｈ”（“１”）になると、コンフィグレーションアドレス生成部３４で生成されたフラッシュイネーブル信号Ｆｌａ＿ＣＥＢがフラッシュＲＯＭ４に入力される（図５（ｇ）参照）。
【００７９】
そして、フラッシュＲＯＭ４において、第１〜第ｎのコンフィグレーション領域４２−１〜４２−ｎにそれぞれ記憶されている第１〜第ｎのコンフィグレーションデータが、フラッシュリードデータＦｌａ＿Ｄａｔａとして順次読み出され、ロジック装置３とフラッシュＲＯＭ４の汎用メモリインターフェース間のデータバスを介して、ロジック装置３のセレクタ１７に順次転送される。
【００８０】
従って、上記フラッシュリセット解除時において、セレクト信号ＳＥＬが“Ｈ”（“１”）になり、第１〜第ｎのコンフィグレーション領域４２−１〜４２−ｎを順次アクセスする一連のフラッシュアドレスＦｌａ＿ＡがフラッシュＲＯＭ４に転送されると、第１〜第ｎのコンフィグレーション領域４２−１〜４２−ｎそれぞれ記憶されている第１〜第ｎのコンフィグレーションデータである一連のフラッシュリードデータＦｌａ＿Ｄａｔａが、ロジック装置３のセレクタ１７に順次転送される（図５（ｈ）参照）。
【００８１】
セレクト信号ＳＥＬが“Ｈ”（“１”）の期間においては、セレクタ１７は、フラッシュリードデータＦｌａ＿Ｄａｔａをコンフィグレーションレジスタ群（第１〜第ｎのコンフィグレーションレジスタ３９−１〜３９−ｎ）に出力する。
【００８２】
コンフィグレーションアドレスデコーダ３８は、コンフィグレーションアドレス生成部３４から入力された第１〜第ｎのコンフィグレーションアドレスを順次デコードし、それらのデコード信号であって第１〜第ｎのコンフィグレーションレジスタ３９−１〜３９−ｎを順次書き込み動作させる信号を、上記コンフィグレーションレジスタ群に順次出力する。
【００８３】
上記フラッシュリセット解除時にリセット解除されているコンフィグレーションレジスタ群（第１〜第ｎのコンフィグレーションレジスタ３９−１〜３９−ｎ）は、コンフィグレーションアドレスデコーダ３８からの一連のデコード信号によって、セレクタ１７から入力されるフラッシュリードデータＦｌａ＿Ｄａｔａを第１〜第ｎのコンフィグレーションレジスタ３９−１〜３９−ｎに順次書き込む動作をする。
【００８４】
従って、上記フラッシュリセット解除時において、セレクト信号ＳＥＬが“Ｈ”（“１”）になり、第１〜第ｎのコンフィグレーション領域４２−１〜４２−ｎをそれぞれアクセスする第１〜第ｎのコンフィグレーションアドレスである一連のフラッシュアドレスＦｌａ＿ＡがフラッシュＲＯＭ４に転送され、第１〜第ｎのコンフィグレーション領域４２−１〜４２−ｎにそれぞれ記憶されている第１〜第ｎのコンフィグレーションデータである一連のフラッシュリードデータＦｌａ＿Ｄａｔａが順次読み出されてロジック装置３に転送されると、これらの第１〜第ｎのコンフィグレーションデータは、第１〜第ｎのコンフィグレーションレジスタ３９−１〜３９−ｎに順次書き込まれる（図５（ｉ）〜（ｋ）参照）。
【００８５】
このとき、第１のコンフィグレーション領域４２−１をアクセスする第１のコンフィグレーションアドレスは、コンフィグレーションアドレスデコーダ３８において、第１のコンフィグレーションレジスタ３９−１を選択する信号としてデコードされ、第１のコンフィグレーション領域４２−１から読み出された第１のコンフィグレーションデータが、第１のコンフィグレーションレジスタ３９−１に書き込まれる（図５（ｉ）参照）。
【００８６】
同様に、第２のコンフィグレーション領域４２−２をアクセスする第２のコンフィグレーションアドレスは、コンフィグレーションアドレスデコーダ３８において、第２のコンフィグレーションレジスタ３９−２を選択する信号としてデコードされ、第２のコンフィグレーション領域４２−２から読み出された第２のコンフィグレーションデータが、第２のコンフィグレーションレジスタ３９−２に書き込まれる（図５（ｊ）参照）。
【００８７】
以下同様して、第３〜第（ｎ−１）のコンフィグレーション領域をアクセスする第３〜第（ｎ−１）のコンフィグレーションアドレスは、コンフィグレーションアドレスデコーダ３８において、第３〜第（ｎ−１）のコンフィグレーションレジスタ３９−３〜３９−（ｎ−１）をそれぞれ選択する信号としてデコードされ、第３〜第（ｎ−１）のコンフィグレーション領域４２−３〜４２−（ｎ−１）から読み出された第３〜第（ｎ−１）のコンフィグレーションデータが、第３〜第（ｎ−１）のコンフィグレーションレジスタ３９−３〜３９−（ｎ−１）にそれぞれ書き込まれる。
【００８８】
そして、第ｎのコンフィグレーション領域４２−ｎをアクセスする第ｎのコンフィグレーションアドレスは、コンフィグレーションアドレスデコーダ３８において、第ｎのコンフィグレーションレジスタ３９−ｎを選択する信号としてデコードされ、第ｎのコンフィグレーション領域４２−ｎから読み出された第２のコンフィグレーションデータが、第ｎのコンフィグレーションレジスタ３９−ｎに書き込まれる（図５（ｋ）参照）。
【００８９】
セレクト信号ＳＥＬが“Ｌ”（“０”）の期間になると、セレクタ１５は、フラッシュアドレスＦｌａ＿Ａを、ＣＰＵコア部１１で生成されたプログラムアドレス（データ領域２１をアクセスするアドレス）に切り換え、セレクタ１６は、フラッシュイネーブル信号Ｆｌａ＿ＣＥＢを、ＣＰＵコア部１１で生成されたチップイネーブル信号に切り換える。
【００９０】
従って、上記ロジックリセット解除時において、セレクト信号ＳＥＬが“Ｌ”（“０”）になると、データ領域２１をアクセスするフラッシュアドレスＦｌａ＿Ａが、ロジック装置３とフラッシュＲＯＭ４の汎用メモリインターフェース間のアドレスバスを介して、フラッシュＲＯＭ４に転送される（図５（ｆ）参照）。
【００９１】
また、上記ロジックリセット解除時において、セレクト信号ＳＥＬが“Ｌ”（“０”）になると、ＣＰＵコア部１１で生成されたフラッシュイネーブル信号Ｆｌａ＿ＣＥＢがフラッシュＲＯＭ４に入力される（図５（ｇ）参照）。
【００９２】
そして、フラッシュＲＯＭ４において、データ領域２１に記憶されているプログラムデータが、フラッシュリードデータＦｌａ＿Ｄａｔａとして読み出され、ロジック装置３とフラッシュＲＯＭ４の汎用メモリインターフェース間のデータバスを介して、ロジック装置３のセレクタ１７に転送される。
【００９３】
以上のように実施の形態２によれば、上記実施の形態１において、複数のコンフィグレーションデータを汎用のフラッシュＲＯＭのデータ記憶領域に記憶でき、これらのコンフィグレーションデータをロジック装置に順次読み出すことができる。
【００９４】
実施の形態３
図６は本発明の実施の形態３のシステムの構成図であり、図４と同様のものには同じ符号を付してある。図６において、実施の形態３のシステムは、ロジック装置５と、フラッシュＲＯＭ４とを備えて構成されている。この実施の形態３のロジックシステムは、ロジック装置５にフラッシュＲＯＭ４を内蔵して１つのＬＳＩとした構成、あるいは個別のＬＳＩであるロジック装置５およびフラッシュＲＯＭ４をプリント基板等に実装した構成である。
【００９５】
ロジック装置５は、マイクロコントローラ等のロジック装置であって、ＣＰＵコア部１１と、ロジックリセット生成部５２と、ＡＮＤゲート１３と、コンフィグレーションアドレス生成部３４と、セレクタ１５，１６，１７と、コンフィグレーションアドレスデコーダ１８と、第１，第２，…，第ｎのコンフィグレーションレジスタ３９−１，３９−２，…，３９−ｎとを有する。
【００９６】
この実施の形態３のロジック装置５は、上記実施の形態２のロジック装置３（図４参照）において、ロジックリセット生成部１２をロジックリセット生成部５２としたものである。
【００９７】
図７はロジックリセット生成部５２の内部構成図であり、図２と同様のものには同じ符号を付してある。図７において、ロジックリセット生成部５２は、第１，第２，…，第ｍの遅延素子５２１−１，５２１−２，…，５２１−ｍと、ＡＮＤゲート１２２と、セレクタ５２３とを有する。
【００９８】
図７のロジックリセット生成部５２は、上記実施の形態１のロジックリセット生成部１２において、１つの遅延素子１２１を、直接接続された複数の遅延素子によって構成された直列遅延素子群（第１〜第ｍの遅延素子５２１−１〜５２１−ｍ）とし、直列遅延素子群からのｍ本のリセット遅延信号の内の１本を、遅延時間設定信号ＤＴＳに従って選択するセレクタ５２３を設けたものである。
【００９９】
この実施の形態３のロジックリセット生成部５２は、リセット信号ＲＥＳＥＴ（＝フラッシュリセット信号Ｆｌａ＿ＲＥＳＥＴ）からのロジックリセット信号Ｌｏｇｉｃ＿ＲＥＳＥＴ）の遅延時間を、遅延時間設定信号ＤＴＳによって外部から変更できる構成としたものである。
【０１００】
例えば、上記実施の形態１の図３や上記実施の形態２の図５において、コンフィグレーションデータの読み出し完了からプログラムデータ（ＣＰＵコード）の読み出し開始までの間に、リセット処理ステートを必要とする場合や、上記実施の形態２において、フラッシュＲＯＭ４として、アドレスサイクル仕様期間が異なるフラッシュＲＯＭ（アドレスサイクル仕様期間が、図５のクロック信号ＯＳＣの２クロック分，４クロック分，１０クロック分のもの等）を使用する場合には、上記の遅延時間を調整可能な構成が有効である。
【０１０１】
このような実施の形態３のシステムの起動時の動作について、ロジックリセット生成部５２の動作を主に以下に説明する。リセット信号ＲＥＳＥＴは、ロジック装置５のＡＮＤゲートの非反転入力端子および第１〜第ｎのコンフィグレーションレジスタ３９−１〜３９−ｎのリセット端子に入力され、遅延時間設定信号ＤＴＳとともにロジック装置５のロジックリセット生成部５２に入力され、さらにフラッシュＲＯＭ４のリセット信号（フラッシュリセット信号）Ｆｌａ＿ＲＥＳＥＴとして、フラッシュＲＯＭ４にも入力される。
【０１０２】
従って、フラッシュリセット信号Ｆｌａ＿ＲＥＳＥＴは、リセット信号ＲＥＳＥＴと同じタイミングで、“Ｌ”レベル（論理値“０”）から“Ｈ”レベル（論理値“１”）、および“Ｈ”（“１”）から“Ｌ”（“０”）になる信号である（上記実施の形態２の図５（ｂ），（ｃ）参照）。
【０１０３】
ロジックリセット生成部５２（図７参照）において、直列遅延素子群（第１〜第ｍの遅延素子５２１−１〜５２１−ｍ）は、初段の第１の遅延素子５２１−１に入力されたリセット信号ＲＥＳＥＴを、第１〜第ｍの遅延素子５２１−１〜５２１−ｍでそれぞれ遅延し、遅延時間が互いに異なるｍ本のリセット遅延信号を、セレクタ５２３に出力する。
【０１０４】
セレクタ５２３は、入力された遅延時間設定信号ＤＴＳに従って、上記直列遅延素子群で生成されたｍ本のリセット遅延信号の内から、いずれか１本のリセット遅延信号を選択し、その選択したリセット遅延信号をＡＮＤゲート１２２に出力する。
【０１０５】
ＡＮＤゲート１２２は、リセット信号ＲＥＳＥＴと、セレクタ５２３において遅延時間設定信号ＤＴＳに従って選択されたリセット遅延信号とを入力とし、これらの信号の論理積演算信号である出力信号を、ロジックリセット信号Ｌｏｇｉｃ＿ＲＥＳＥＴとして、ＣＰＵコア部１１およびＡＮＤゲート１３の反転入力端子に出力する。
【０１０６】
ロジック装置５のＡＮＤゲート１３は、リセット信号ＲＥＳＥＴと、遅延時間設定信号ＤＴＳに応じた遅延時間のロジックリセット信号Ｌｏｇｉｃ＿ＲＥＳＥＴの反転信号との論理積演算信号を、セレクト信号ＳＥＬとして、セレクタ１５，１６，１７に出力する。
【０１０７】
なお、この実施の形態３のシステムにおいて、ＣＰＵコア部１１、コンフィグレーションアドレス生成部３４、セレクタ１５，１６，１７、コンフィグレーションアドレスデコーダ３８、コンフィグレーションレジスタ群（第１〜第ｎのコンフィグレーションレジスタ３９−１〜３９−ｎ）、およびフラッシュＲＯＭ４の動作は、上記実施の形態２のシステムと同様である。
【０１０８】
以上のように実施の形態３によれば、上記実施の形態１または２において、コンフィグレーションデータをラッチタイミングを確保するのが厳しいときでも、ロジックリセット信号の遅延時間を調整して、上記ラッチタイミングを確保することができる。
【図面の簡単な説明】
【０１０９】
【図１】本発明の実施の形態１のシステムの構成図である。
【図２】図１のロジックリセット生成部の内部構成図である。
【図３】本発明の実施の形態１の動作を説明するタイミングチャートである。
【図４】本発明の実施の形態２のシステムの構成図である。
【図５】本発明の実施の形態２の動作を説明するタイミングチャートである。
【図６】本発明の実施の形態３のシステムの構成図である。
【図７】図６のロジックリセット生成部の内部構成図である。
【図８】従来技術の構成図である。
【符号の説明】
【０１１０】
１，３，５  ロジック装置
２，４  フラッシュＲＯＭ
１１  ＣＰＵコア部
１２  ロジックリセット生成部
１３  ＡＮＤゲート
１４  コンフィグレーションアドレス生成部
１５，１６，１７  セレクタ
１８  コンフィグレーションアドレスデコーダ
１９  コンフィグレーションレジスタ
２１  プログラムデータ領域
２２  コンフィグレーション領域
３４  コンフィグレーションアドレス生成部
３８  コンフィグレーションアドレスデコーダ
３９−１〜３９−ｎ  コンフィグレーションレジスタ
４２−１〜４２−ｎ  コンフィグレーション領域
５２  ロジックリセット生成部
１２１  遅延素子
１２２  ＡＮＤゲート
５２１−１〜５２１−ｍ  遅延素子
５２３  セレクタ
【図１】
2006155004.tif 000003
【図２】
2006155004.tif 000004
【図３】
2006155004.tif 000005
【図４】
2006155004.tif 000006
【図５】
2006155004.tif 000007
【図６】
2006155004.tif 000008
【図７】
2006155004.tif 000009
【図８】
2006155004.tif 000010