(57)【特許請求の範囲】
【請求項１】
データおよび／または命令のために外部メモリにアクセスするプロセッサを有するタイプの処理システムにおいて、外部メモリ可能化時間持続期間を単位時間当りの外部メモリアクセスの数から独立させて、前記プロセッサの消費電力を低減するための改良された外部メモリアクセス制御システムであって、前記制御システムは
少なくとも２つの速度のうちの１つのクロック信号を与えて、単位時間当りの外部メモリアクセスの前記数を決定するための選択可能にプログラム可能なクロック手段と、さらに
前記選択可能にプログラム可能なクロック手段に結合され、前記外部メモリに外部メモリ可能化時間持続期間制御信号を与えるように配列され、単位時間当りの外部メモリアクセスの前記数から独立した外部メモリ可能化時間持続期間を確立するための可能化持続期間制御手段とを含み、前記可能化持続期間制御手段は選択されたクロック速度に基づいて外部メモリ可能化時間持続期間制御信号のデューティサイクルを変えるための手段を含む、制御システム。
【請求項２】
前記選択可能にプログラム可能なクロック手段はクロック速度でタイミング信号を発生するクロックを含み、前記選択可能にプログラム可能なクロック手段はさらに前記クロック速度を変えるための手段を含む、請求項１に記載の制御システム。
【請求項３】
前記可能化持続期間制御手段は前記クロック速度をモニタするための手段を含み、そのモニタするための手段は出力を発生し、前記可能化持続期間制御手段は前記モニタするための手段の前記出力に基づいて前記外部メモリに外部メモリ可能化時間持続期間制御信号を与えるための手段をさらに含む、請求項２に記載の制御システム。
【請求項４】
前記処理システムはマイクロコントローラを含み、前記外部メモリ可能化時間持続期間制御信号はデューティサイクルを変化させるプログラムストアイネーブル信号を含む、請求項１に記載の制御システム。
【請求項５】
データおよび／または命令のために外部メモリにアクセスするプロセッサを有するタイプの処理システムにおいて、外部メモリ可能化時間持続期間を単位時間当りの外部メモリアクセスの数から独立させて、前記プロセッサの消費電力を低減するための改良された外部メモリアクセス制御方法であって、前記方法は
少なくとも２つの速度のうちの１つのクロック信号を与えて単位時間当りの外部メモリアクセスの前記数を決定するステップと、さらに
前記外部メモリに外部メモリ可能化時間持続期間制御信号を与えて、単位時間当りの外
部メモリアクセスの前記数から独立した外部メモリ可能化時間持続期間を確立するステップとを含み、このように与えることは選択されたクロック速度に基づいて外部メモリ可能化時間持続期間制御信号のデューティサイクルを変えることによってもたらされる、方法。
【請求項６】
少なくとも２つの速度のうちの１つのクロック信号を与える前記ステップは、クロック速度でタイミング信号を発生するステップと、前記クロック速度を変えるステップとを含む、請求項５に記載の方法。
【請求項７】
前記外部メモリに外部メモリ可能化時間持続期間制御信号を与える前記ステップは前記クロック速度をモニタするステップを含み、そのステップは出力を発生し、前記外部メモリに外部メモリ可能化時間持続期間制御信号を与える前記ステップは、前記モニタするための手段の前記出力に基づいて前記外部メモリに外部メモリ可能化時間持続期間制御信号を与えるステップをさらに含む、請求項６に記載の方法。
【請求項８】
前記処理システムはマイクロコントローラを含み、前記外部メモリ可能化時間持続期間制御信号はデューティサイクルを変化させるプログラムストアイネーブル信号を含む、請求項５に記載の方法。
【発明の詳細な説明】
【０００１】
【発明の背景】
【０００２】
【発明の分野】
この発明は一般に処理システムに関し、より特定的に外部メモリアクセスが要求される処理システムに関する。さらに特定的に、この発明は処理システムのための改良された外部メモリアクセス制御に関し、外部メモリアクセス速度から独立した外部メモリ可能化時間持続期間を確立することによって処理システムの消費電力を低減する。
【０００３】
【関連技術の説明】
現在係属中の米国特許出願連続番号第０７／５６９，９３５号であって、「処理システムのための改良された外部メモリアクセス制御（Improved External Memory Access Control for a Processing System)と題され、本出願の譲受人に譲渡された出願において論じられるように、少なくとも１つのマイクロプロセッサを含む処理システムは当該技術分野において周知である。そのような処理システムにおいて、マイクロプロセッサはデータおよび／または命令のために外部メモリにアクセスすることを一般に要求される。マイクロプロセッサベースの処理システムにとって、多数の動作が時間単位当りに実行されるハイアクティビィティの期間を有し、相対的に少ない動作が時間単位当りに実行されるローアクティビィティの期間が点在していることもまた通常のことである。
【０００４】
ローアクティビィティの期間の間そのような処理システムの消費電力を低減するために、マイクロプロセッサの外部メモリアクセス速度を低減することは当該技術分野において通常のことであった。これは可変速度発振器クロックソースを使用するか、または外部メモリアクセス速度を低減するためにクロック分周器回路をマイクロプロセッサに組込むことによって典型的に達成される。マイクロプロセッサはバスを介して外部メモリと交信するので、外部メモリアクセス速度はまたバスアクセス速度とも呼ばれる。
【０００５】
外部メモリアクセス速度を低減することによって、ローアクティビィティ期間の間消費電力を低減する前述の先行技術の方法は、デジタルＣＭＯＳ論理システムを使って一般に効果的であった。なぜならデジタルＣＭＯＳ論理システムの消費電力は時間単位当りに発生する信号遷移の数にほぼ比例するからである。これはデジタルＣＭＯＳ論理がその内部および入力信号が変化している場合にはその電力の大半を消費し、逆に、その内部信号が変化していない場合にはほとんど電力を消費しないので事実である。
【０００６】
残念ながら、ランダムアクセスメモリ（ＲＡＭ）装置および電気的にプログラム可能なリードオンリメモリ（ＥＰＲＯＭ）装置のような標準的な市販で入手可能なメモリ装置は、これらの装置がそのイネーブル入力がアクティブ状態で保持されているときはいつでも電力を消費するという点で、デジタルＣＭＯＳ論理と異なっている。このような装置の消費電力はしたがって、メモリアクセス速度（CHIP ENABLE 信号の遷移の周波数) に加えて、メモリが可能化されている時間の量（CHIP ENABLE 信号がアクティブに保持されている時間の量）に依存する。内部および外部信号が遷移しているときのみ電力を消費するＲＡＭおよびＥＰＲＯＭ装置を提供することは技術的には可能であるが、これらの装置はより複雑になり、１つの設計をすべてのアプリケーションに与えることから生じる規模の経済の恩恵を受けないであろう。
【０００７】
現存するマイクロプロセッサベースの処理システムにおいて、外部ＲＡＭおよび／またはＥＰＲＯＭのためのCHIP ENABLE 信号は、マイクロプロセッサ内で、またはマイクロプロセッサによって与えられるバス制御信号からのマイクロプロセッサの外部の論理によってのいずれかでデコードされる。たとえば８０３１クラスのマイクロコントローラに関するような典型的なバス制御信号は、アドレスライン、ＡＬＥ、ＰＳＥＮ＊、ＲＤ＊、およびＷＲ＊を含む。バス制御信号の名前および機能はマイクロプロセッサ／マイクロコントローラごとに異なるが、マイクロプロセッサの外部の装置に可能化および方向情報を与えるという基本的な概念は同一のままである。
【０００８】
低電力処理システム動作に関する、先行技術におけるこのアプリケーションおよびそれに関連するアプリケーションへの制限は、現存するマイクロプロセッサおよびコントローラのメモリアクセス速度がシステム電力をセーブしようという試みで低減された場合に、マイクロコントローラによって与えられるバス制御信号の幅（外部メモリ可能化時間持続期間）はプロセッサのバス速度（外部メモリアクセス速度）に正比例して変化するということである。結果として、プロセッサの外部メモリアクセス速度が低減したとしても、外部メモリ可能化時間持続期間は比例的に増大する。ゆえに、メモリアクセス速度が遅くなればなるほど、外部メモリ可能化時間持続期間は長くなる。これはシステム電力の浪費である。なぜなら外部メモリ装置は外部メモリ装置のアクセスを完了するために必要とされるよりずっと長い時間持続期間の間可能化されるからである。
【０００９】
上に示されかつ引用によりここに援用される米国特許出願連続番号第０７／５６９，９３５号は、非常に低い電力のために特定的に設計されたものではない標準的な市場で入手可能なメモリ装置の消費電力を低減するプロセッサを含む処理システムを提供する。米国特許出願連続番号第０７／５６９，９３５号は、外部メモリアクセス制御システムを提供することによってそのような処理システムを提供し、外部メモリアクセス制御システムは外部メモリ可能化時間持続期間を時間単位当りの外部メモリアクセスの数から独立させる。関連する出願に記載された制御システムは効果的であり、かつ一般に有用であるが、さらに単純な制御システムを作成するために利用できる特殊な特性があるアプリケーションにおいて生じる。この発明はプログラム可能なクロック速度が利用できる状況で容易にかつ単純に構成できるこのような制御システムを教示する。
【００１０】
【発明の概要】
この発明はデータおよび／または命令のために外部メモリにアクセスするプロセッサを有するタイプの処理システムで使用するための改良された外部メモリアクセス制御システムを提供する。この発明の教示に従う改良された外部メモリアクセス制御システムは、処理システムの消費電力を低減するために、外部メモリ可能化時間持続期間を時間単位当りの外部メモリアクセスの数から独立させる。この発明の教示に従う制御システムは、外部メモリアクセス速度を決定するための少なくとも２つの速度のうちの１つのクロック信号を与えるための選択可能にプログラム可能なクロックを含む。この制御システムはまた選択的にプログラム可能なクロックに結合された可能化持続期間制御構造を含み、この構造は各メモリアクセスの間の外部メモリアクセス速度から独立した時間持続期間の間外部メモリを可能化するように配列される。さらに、可能化持続期間制御構造は、選択されたクロック速度に基づいて外部メモリ可能化時間持続期間制御のデューティサイクルを変えるためのサブ構造を含む。
【００１１】
したがって、この発明の目的は処理システムにおける低周波数でのメモリアクセスのための消費電力を下げるための構造および方法を提供することである。
【００１２】
この発明の他の目的はマイクロコントローラを含むバッテリーによって駆動されるアプリケーションにおいて電力を保存するための構造および方法を提供することである。
【００１３】
この発明のさらに他の目的はある処理システムを単純化し、かつその効率を改良するための構造および方法を提供することである。
【００１４】
この発明、およびその目的ならびに利点をさらに完全に理解するために、添付の図面とともに考えられる以下の詳細な説明をここで参照する。
【００１５】
【好ましい実施例の説明】
ここで図面、より特定的に図１を参照して、この発明の譲受人によって製造された８０５１マイクロコントローラファミリの一般的なアーキテクチャ構造のブロック図が示される。マイクロコントローラのこのファミリの様々な局面はすぐ下で論じられる。この議論の目的はこの発明の教示が有用に適用され得る環境を記述することであり、かつ先行技術のマイクロコントローラの動作に関する一般的な背景を与えることであり、この議論はこの発明の範囲の制限であることは意図されないし、どのような意味においてもそのように解釈されるべきではない。
【００１６】
図１を参照して、８０５１ファミリ製品はＣＰＵ２、発振器およびタイミング回路４、リードオンリメモリ／電気的にプログラム可能なリードオンリメモリ（「ＲＯＭ／ＥＰＲＯＭ」）６、ランダムアクセスメモリ「ＲＡＭ」８、制御回路１０、タイマ／カウンタ１２、プログラマブルシリアルポート１４、およびプログラマブルＩ／Ｏ１６を含むように示され得る。
【００１７】
すべての８０５１ファミリ装置はプログラムメモリおよびデータメモリのための別個のアドレス空間を有する。プログラムおよびデータメモリの論理分離はデータメモリが８−ビットアドレスによってアクセスされることを許容し、それは８−ビットＣＰＵによってよりすばやくストアされかつ処理されることが可能である。それにもかかわらず、１６−ビットデータメモリアドレスは様々な８０５１マイクロコントローラ装置の様々な特殊レジスタを介して発生され得る。
【００１８】
８０５１ファミリ製品において、プログラムメモリは読出可能であるだけであって、書込可能ではない。最大６４Ｋバイトのプログラムメモリが可能である。データメモリはプログラムメモリとは別個のアドレス空間を占有する。最大６４Ｋバイトの外部ＲＡＭが外部データメモリ空間でアドレス指定可能である。ＣＰＵ２は様々な８０５１ファミリ装置の外部データメモリの間に必要に応じて、読出および書込信号、ＲＤ＊およびＷＲ＊を発生する。外部プログラムメモリおよび外部データメモリは、ＲＤ＊およびＰＳＥＮ＊（プログラムストアイネーブル）信号をＡＮＤゲートの入力に与え、ゲートの出力を外部プログラム／データメモリへの読出ストローブとして使用することによって組合わせることが可能である。
【００１９】
発振器およびタイミング回路４は内部クロック発生器を駆動する発振器を含み、その発生器はチップに内部クロッキング信号を与える。内部クロッキング信号は発振器周波数の半分であり、内部位相、状態およびマシンサイクルを規定する。マシンサイクルは６つの状態（１２の発振器期間）からなる。各状態はその間位相１クロックがアクティブである位相１ハーフと、その間位相２クロックがアクティブである位相２ハーフとに分割される。このように、マシンサイクルは１２の発振器期間からなる。各位相は１つの発振器期間の間続く。各状態は２つの発振器期間の間続く。典型的に演算および論理動作は位相１の間に発生し、内部レジスタからレジスタへの転送は位相２の間に発生する。
【００２０】
図１のプログラム可能な入力／出力回路１４に接続されて示される４つのポートすべては２方向である。各ポートはラッチ（特殊機能レジスタＰ０からＰ３）、出力ドライバ、および入力バッファからなる。ポート０および２の出力ドライバならびにポート０の入力バッファは、外部メモリへのアクセスにおいて使用される。このアプリケーションでは、ポート０は低いバイトの外部メモリアドレスを出力し、書込まれつつあるまたは読出されつつあるバイトでタイムマルチプレクスされる。ポート２はアドレスが１６ビット幅である場合に外部メモリアドレスの高いバイトを出力する。他の態様で、ポート２ピンはＰ２特殊機能レジスタ（「ＳＦＲ」）内容を出し続ける。すべてのポート３ピンは（およびある場合においてはポート１ピンのうちの２つ）は多機能である。それらはポートピンであるばかりではなく、タイマ／カウンタ外部入力およびタイマ／カウンタキャプチャ／リロードトリガのような様々な特殊機能を果たす。
【００２１】
外部メモリへのアクセスに関して、外部メモリへの８０５１ファミリ装置アクセスには２つのタイプがあり、外部プログラムメモリへのアクセスと、外部データメモリへのアクセスとである。外部プログラムメモリへのアクセスは信号ＰＳＥＮ＊（プログラムストアイネーブル）を読出ストローブとして使用する。外部データメモリへのアクセスはＲＤ＊（外部データメモリ読出ストローブ）またはＷＲ＊（外部データメモリ書込ストローブ）を使用して、メモリをストローブする。外部プログラムメモリからのフェッチは常に１６−ビットアドレスを使用する。外部データへのアクセスは１６−ビットアドレスか８−ビットアドレスのいずれも使用できる。１６−ビットアドレスが使用される場合にはいつでも、アドレスの高いバイトはポート２上に現われ、そこでそれは読出または書込サイクルの持続期間の間保持される。ポート２ドライバはそれらが１であるアドレスビットを発している全時間の間強いプルアップを使用することに注目されたい。この時間の間、ポート２ラッチ（特殊機能レジスタ）は１を含む必要はなく、ポート２ＳＦＲの内容は変更されない。もしその外部メモリサイクルの直後に別の外部メモリサイクルが続かなければ、ポート２ＳＦＲの邪魔されない内容は次のサイクルで再び現われる。もし８−ビットアドレスが使用されれば、ポート２ＳＦＲの内容は外部メモリサイクルの間ずっとポート２ピンのところにあるままである。これはページングを容易にする。どんな場合でも、アドレスの低いバイトはポート０上のデータバイトでタイムマルチプレクスされる。ＡＤＤＲ／データ信号はポート０出力バッファの２つの電界効果トランジスタを駆動する。このように、このようなアプリケーションにおいて、ポート０ピンはオープンドレイン出力ではなく、外部プルアップを必要としない。信号ＡＬＥ（アドレスラッチイネーブル）はアドレスバイトを外部ラッチにとらえるために使用される。アドレスバイトはＡＬＥの負の遷移で有効である。そして書込サイクルにおいて、書込まれるべきデータバイトはＷＲ＊が活性化される直前にポート０上に現われ、ＷＲ＊が非活性化された後までそこに止まる。読出サイクルにおいて、入来バイトは読出ストローブが非活性化される直前にポート０で受け入れられる。
【００２２】
外部メモリへの任意のアクセスの間、ＣＰＵ２はＯＦＦＨをポート０ラッチ（特殊機能レジスタ）に書込み、ゆえにポート０ＳＦＲが保持していたかもしれない情報なら何でも削除する。
【００２３】
外部プログラムメモリは次の２つの条件下でアクセスされる。そのうちの（１）は信号ＥＡ＊がアクティブな場合はいつでもであり、（２）はプログラムカウンタ（「ＰＣ」）がＯＦＦＦＨ（あるファミリメンバーに対して１ＦＦＦＨ）より大きい数字を含む場合はいつでもである。これはＲＯＭのないバージョンが下位の４Ｋ（または様々なファミリメンバーに対して８Ｋ）プログラムされたバイトを外部メモリからフェッチされることを可能化するためにＥＡワイヤードロー（EA wired low）を有することを必要とする。ＣＰＵが外部プログラムメモリの外で実行している場合、ポート２のすべての８つのビットは出力機能専用であり、汎用Ｉ／Ｏのために使用できない。外部プログラムフェッチの間、それらはＰＣの高いバイトを出力する。この時間の間、ポート２ドライバは強いプルアップを使用して、１であるＰＣビットを発する。
【００２４】
外部フェッチのための読出ストローブはＰＳＥＮ＊であり、これは内部フェッチのために活性化されない。ＣＰＵが外部プログラムメモリにアクセスしている場合、ＰＳＥＮ＊は、バイトフェッチが実際に現在の命令のために必要とされているかどうかにかかわらず、各サイクルごとに２回（移動キャリィビットまたは「ＭＯＶＸ」命令の間を除く）活性化される。ＰＳＥＮ＊が活性化された場合、そのタイミングはＲＤ＊と同一ではない。ＡＬＥおよびＲＤ＊の活性および非活性を含む完全なＲＤ＊サイクルは１２の発振器期間かかる。ＡＬＥおよびＰＳＥＮ＊の活性および非活性を含む完全なＰＳＥＮ＊サイクルは６つの発振器期間かかる。
【００２５】
ＡＬＥの主な機能は、適切に時間決めされた信号を与えて外部プログラムメモリからのフェッチの間Ｐ０からのアドレスの低いバイトを外部ラッチへラッチすることである。この目的のために、ＡＬＥはマシンサイクルごとに２回活性化される。この活性はそのサイクルが外部フェッチを何も含まない場合でさえ発生する。ＡＬＥパルスが現われない唯一の時間は外部データメモリへのアクセスの間である。ＭＯＶＸ命令の第２のサイクルの第１のＡＬＥが欠けている。結果として、外部データメモリを使用しない任意のシステムにおいて、ＡＬＥは発振器周波数の６分の１の一定速度で活性化され、外部クロッキングまたはタイミング目的のために使用可能である。
【００２６】
幾つかのアプリケーションにおいて、データをストアするために使用されている同一の物理メモリからプログラムを実行することは望ましい。８０５１ファミリにおいて、外部プログラムおよびデータメモリ空間はＰＳＥＮ＊とＲＤ＊とのＡＮＤをとることによって組合わされ得る。これらの２つの信号の正論理ＡＮＤは、組合わされた物理メモリのために使用され得るアクティブロー読出しストローブを生ずる。ＰＳＥＮ＊サイクルはＲＤ＊サイクルより速いので、外部メモリはＰＳＥＮ＊サイクルを収容するように十分速くなくてはならない。
【００２７】
８０５１ファミリ装置は２つの１６−ビットタイマ／カウンタレジスタ、つまりタイマ０およびタイマ１を有する。あるファミリメンバーはまたもう１つのタイマ２を有する。すべてのそのようなタイマはタイマとしてかまたは事象カウンタのいずれかとして動作するように構成され得る。「タイマ」機能を実行する場合、レジスタはマシンサイクルごとに増分される。このように、それをカウンティングマシンサイクルと考えることもできる。マシンサイクルは１２の発振器期間からなるので、カウント速度は発振器周波数の１２分の１である。「カウンタ」機能を実行する場合、レジスタはその対応する外部入力ピンＴ０、Ｔ１またはＴ２での１から０への遷移に応答して増分される。この機能において、外部入力はすべてのマシンサイクルの一部の間にサンプリングされる。そのサンプルが１つのサイクルでハイを示し次のサイクルでローを示せば、そのカウントは増分される。その新しいカウント値は遷移が検出されたサイクルに続くサイクルの一部の間にレジスタに現われる。１から０への遷移を認識するには２つのマシンサイクル（２４の発振器期間）かかるので、最大カウント速度は発振器周波数の２４分の１である。外部入力信号のデューティサイクルに対する制限は何もないが、所与のレベルがそれが変化する前に少なくとも一度サンプリングされることを確実にするために、それは少なくとも１つの完全なマシンサイクルの間保持されなければならない。「タイマ」または「カウンタ」選択に加えて、タイマ０およびタイマ１はそれから選択すべき４つの動作モードを有する。どちらかのタイマをモード０におくことにより３２分割されたプリスケーラを有する８−ビットカウンタのように見える。モード１はタイマレジスタがすべての１６ビットで動かされていることを除いてモード０と同一である。モード２は自動リロードを有する８−ビットカウンタとしてタイマレジスタを構成する。モード３のタイマは単にそのカウントを保持する。
【００２８】
次に図２を参照して、図１に示されたマイクロコントローラファミリの一般構造のより詳細なブロック図が示される。図２はこの発明に関して特に注目すべきである。なぜなら図２は前述のＰＳＥＮ＊信号（参照番号１８によって示される）を示しており、その信号はこの発明の実施例において重要な役割を果たすことが可能であるからであり、それについては以下の詳細により明らかになる。
【００２９】
この点で、この発明の理解をさらに容易にするために、この発明が由来する関連の米国特許出願連続番号第０７／５６９，９３５号の教示を検討することは有用でありかつ適切である。次に図３を参照して、関連する米国特許連続番号第０７／５６９，９３５号に開示されかつクレームされた発明を具体化する処理システム２０がブロック図形式で例示される。処理システム２０は一般にクロックソース２２、マイクロコントローラ２４、アドレスデコード論理２６、第１のメモリ２８、第２のメモリ３０、およびバス３２を含む。図３に示される実施例において、クロックソース２２、アドレスデコード論理２６、第１のメモリ２８、および第２のメモリ３０はすべてマイクロプロセッサ２４の外部にある。また、クロックソース２２、マイクロプロセッサ２４、アドレスデコード論理２６、第１のメモリ２８、および第２のメモリ３０はすべて集積回路形式で実現化することが可能であり、各々は別個の集積回路装置に含まれる。
【００３０】
図３に示されるマイクロプロセッサ２４は分周器回路３４、中央処理装置３６、および可能化持続期間制御３８を含む。分周器回路３４の入力４０はクロックソース２２の出力４２に結合され、クロックソース２２のクロック出力を受信する。分周器３４もまた中央処理装置３６のクロック入力４６とアドレスデコード論理２６のクロック入力４８とに結合される出力４４を有する。クロックソース２２は比較的高い周波数パルス列を含むクロック出力を与え、この列は分周器回路３４によって分割され、その出力４４で処理システムのためのタイミングおよび同期化クロック信号を与える。関連の米国特許出願連続番号第０７／５６９，９３５号で教示されるように、その出力４４で分周器３４によって与えられるクロック信号の出力周波数は、マイクロプロセッサ２４による外部メモリアクセス速度を決定する。
【００３１】
可能化持続期間制御３８はクロックソース２２の出力４２と分周器回路３４の入力４０との間に結合される入力５０を含む。関連する出願連続番号第０７／５６９，９３５号の教示に従って、可能化持続期間制御はその出力５２で外部メモリ可能化時間持続期間信号を与え、それは外部メモリがマイクロプロセッサ２４による外部メモリの各アクセスの間バスを利用するために可能化される時間を決定する。以下からやはりわかるように、可能化時間持続期間制御３８によって確立される可能化時間持続期間は、分周器３４によって決定される外部メモリアクセス速度から独立している。可能化持続期間制御３８はまた中央処理装置３６に結合された入力５１を含む。この入力は中央処理装置３６が可能化持続期間制御によって確立された可能化時間持続期間が始まるが、クロックソース出力に同期化されるときを制御することを許容する。
【００３２】
可能化持続期間制御３８の出力５２はハッシュマークによって記された複数個のラインを含み、そのラインはアドレスデコード論理２６のバス可能化制御入力５４、第１の外部メモリ２８のバス可能化入力５６、および第２の外部メモリ３０のバス可能化入力５８に結合される。当業者によって理解されるように、可能化持続期間制御３８の出力５２は、特定の処理システム設計に依存し、関連する米国特許出願連続番号第０７／５６９，９３５号の発明から逸脱することなく、図３に例示されるようにアドレスデコード論理および外部メモリに結合されてもよいし、外部メモリ２８および３０に直接かつそれにのみ結合されてもよいし、またはアドレスデコード論理のみを介して外部メモリ２８および３０に結合されてもよい。
【００３３】
中央処理装置３６は第１の複数個のライン６２を介して第１の組の外部メモリアドレスをアドレスデコード論理２６に与えるための第１の入力６０を含む。中央処理装置３６もまた第２の複数個の出力ライン６６を介して外部メモリ２８および３０に第２の組の外部メモリアドレスを与えるための第２の出力６４を含む。マイクロプロセッサ２４が外部メモリにアクセスする場合、第１の組のアドレスはアクセスされるべき外部メモリを選択する目的のためにアドレスデコード論理によってデコードされる。その目的のために、アドレスデコード論理は複数個の出力ライン７０を介して第１および第２のメモリ２８および３０に結合される出力６８を含み、外部メモリ２８および３０に外部メモリまたはチップ選択信号を伝える。
【００３４】
中央処理装置３６によって与えられる第２の組のアドレスは、アクセスされるべき外部メモリ内の所望のメモリ場所を選択するために利用される。メモリ２８および３０の各々は好ましくは複数個のメモリ場所を含み、各メモリ場所はそのメモリに関して独特のアドレスを有する。外部メモリのメモリアドレス場所は二重にされたアドレスを有してもよい。したがって、ライン７０を介してアドレスデコード論理２６によって与えられたチップ選択信号はアクセスされるべきメモリを選択し、ライン６６を介して伝えられた第２の組のメモリアドレスは、アクセスされるべき選択された外部メモリ内で、アクセスされるべき特定のメモリ場所を選択する。
【００３５】
やはり図３に記されたように、中央処理装置３６はバス３２に結合され、外部メモリ２８および３０もまたバス３２に結合される。中央処理装置３６および外部メモリ２８ならびに３０はバス３２に結合され、マイクロプロセッサ２４が外部メモリと交信して、中央処理装置が外部メモリアクセスの間外部メモリからデータおよび／または命令を読出す、または外部メモリにデータを書込むことを許容する。
【００３６】
引続き図３を参照して、動作において、マイクロプロセッサ２４の中央処理装置３６が命令の実行を行なうとき、中央処理装置は外部メモリからデータまたは命令を読出すために、または外部メモリにデータを書込むために外部メモリ２８および３０にアクセスしなければならない。クロックソース２２はその出力４２で外部メモリアクセス速度が由来する比較的高い周波数パルス列の形でクロック出力を与える。外部メモリアクセス速度は分周器３４の出力４４に由来する。図３に示される特定のシステムにおいて、クロックソースの周波数はマイクロプロセッサによる外部メモリの最大アクセス速度を規定する。高いマイクロプロセッサアクティビィティの時間の間、分周器３４は１のファクタでクロックソース２２によって与えられたクロック出力のクロック速度を分割する。低いマイクロプロセッサアクティビィティの期間の間、そのアクセス速度は電力を保存するように低減され、分周器はたとえば３２のファクタでクロックソース２２によって与えられたクロック出力のクロック速度を分割する。
【００３７】
分周器３４の出力４４で与えられたクロック信号は、このようにマイクロプロセッサの外部メモリアクセス速度を決定し、かつまた処理システム２０内の他のタイミングおよび同期目的のために使用される。可能化持続期間制御３８は外部メモリが各外部メモリアクセスの間可能化される時間持続期間を確立し、かつまた中央処理装置３６に応答して、適切な時間にメモリ可能化時間持続期間を開始する。
【００３８】
次に図４を参照して、この発明の教示に従う改良された外部メモリアクセス制御システムを含む集積回路のブロック図が示される。図４に示された集積回路は多数のサブエレメントを含み、これらのサブエレメントの各々、その接続および補間はすべて様々な関連事件で詳細に論じられ、その記載はすべてここに援用される。この発明を説明するために、重要なエレメントはマイクロコントローラ７２およびクロック発生器７４である。
【００３９】
マイクロコントローラ７２は一般に上述の８０５１タイプのマイクロコントローラである。優秀な結果を伴って検査されたこの発明の実際に構成された実施例において、マイクロコントローラ７２は実際はＡＭＤ８０Ｃ５１ファミリの製品の８０Ｃ３２Ｔ２メンバーの機能を与える８−ビットマイクロコントローラであった。この特定の製品に関する詳細は当業者に周知であり、容易に入手可能である。
【００４０】
クロック発生器７４は図４に示されるＩＣのための水晶発振器、パワーモード制御、モジュール可能化制御、およびクロック分周器を含む。この発明の実際に構成された実施例において、マイクロコントローラクロックは１８．４３２ＭＨｚの入力を有するプログラム可能な分周器を有する。プログラム可能速度は２、４、８、１６、３２、６４、１２８、および２５６で分割される。クロックに関する他の詳細は、この出願には特に関係はないが、様々な関連出願で説明される。
【００４１】
この発明の教示に従って、外部メモリ可能化時間持続期間制御信号のデューティサイクルは選択されたクロック速度に基づいて変わってもよく、それによって外部メモリ可能化時間持続期間を時間単位当りの外部メモリアクセスの数から独立させる。これはひいてはプロセッサ消費電力を低減し、それは実際的な開発である。８０５１または類似のマイクロコントローラを特に参照し、この発明の教示に従って、ＰＳＥＮ＊信号は８０Ｃ３２１マイクロコントローラ７２の周波数に依存して、たとえば２または３の発振器にされ得る。さらに、このデューティサイクルはマイクロコントローラのプログラムされた周波数に依存して自動的に調整され得る。
【００４２】
図４に示された集積回路はこの発明の実施例をそこに組込むために理想的に適している。なぜならそれはクロック発生器７４の存在および動作のために容易にプログラム可能なクロック速度を有するからである。容易にモニタされ得るクロック発生器のプログラムされたクロック速度に基づいて、適切なＰＳＥＮ＊デューティサイクルの自動選択は、説明された消費電力節約をもたらすために行なわれ得る。当業者は８０５１は本来プログラム可能なクロック速度を有しないことを理解しなければならないが、この発明の目的のためにいかに容易にかつ効果的にそのような特徴がそのようなマイクロプロセッサに加えられ得るかもまた理解されなければならない。図４はこれがどのように行なわれ得るかのほんの一例を示しているにすぎない。
【００４３】
したがって、この発明は処理システムで使用するための新しくかつ改良された外部メモリアクセス制御を与えるものであり、この処理システムは外部メモリアクセス速度が低いマイクロプロセッサアクティビィティの期間の間低減され、かつゆえに処理システムの消費電力を低減することを可能にするだけではなく、加えて外部メモリアクセス速度が低減されるそれらの期間の間の各メモリアクセスの間外部メモリ可能化時間持続期間を短縮する。これはさらにこのような処理システムがバッテリのような涸渇する電力源によって電力を与えられている場合に非常に重要となり得る処理システムの消費電力を低減することに寄与する。好ましくは、かつここに記載された好ましい実施例に従って、ＰＳＥＮ＊信号のデューティサイクルは選択されたプログラム可能なクロック速度に基づいて変化し得る。
【００４４】
明らかに、多くの修正および変更が上述の教示に鑑みて可能である。したがって、前掲の特許請求の範囲内で、この発明はそこに特定的に説明された以外の態様で実行され得る。
【図面の簡単な説明】
【図１】マイクロコントローラファミリの一般的なアーキテクチャ構造のブロック図である。
【図２】図１に示されるマイクロコントローラファミリの一般構造のより詳細なブロック図である。
【図３】関連する米国特許出願連続番号第０７／５６９，９３５号の発明を実施する処理システムのブロック図である。
【図４】この発明の教示に従う改良された外部メモリアクセス制御システムを含む集積回路のブロック図である。
【図５】この発明の教示に従う改良された外部メモリアクセス制御システムを含む集積回路のブロック図である。
【符号の説明】
２２  クロックソース
２４  マイクロプロセッサ
３４  分周器
３６  ＣＰＵ
７２  マイクロコントローラ
７４  クロック発生器
【図１】
0003647889.tif 000002
【図２】
0003647889.tif 000003
【図３】
0003647889.tif 000004
【図４】
0003647889.tif 000005
【図５】
0003647889.tif 000006