(57)【特許請求の範囲】
【請求項１】
半導体装置であって、
複数のメモリアレイを備え、
前記複数のメモリアレイの各々は、複数のメモリセルを含み、
前記複数のメモリアレイにそれぞれ対応して設けられる複数のメモリアレイ制御回路をさらに備え、
前記複数のメモリアレイ制御回路の各々は、
対応するメモリアレイへの読み書き動作を制御する読み書き制御回路と、
対応するメモリアレイの各々にクロック信号および前記読み書き制御回路からの出力信号に基づいて対応するメモリアレイを活性化するように選択する選択回路とを含み、
前記半導体装置は、
前記複数のメモリアレイにデータを書込むために入力されるコマンドのコマンド間隔に基づいて帯域を判定する帯域判定回路と、
前記帯域判定回路の出力に応じて、前記データを分散して同時に書込みをする前記複数のメモリアレイを決定する制御回路とをさらに備える、半導体装置。
【請求項２】
前記読み書き制御回路は、
書込コマンドが入力されるとカウント数が加算され、読出コマンドが入力されると前記カウント数が減算されるカウンタと、
前記カウンタの前記カウント数に基づき、前記対応するメモリアレイに有効データが存在するかどうかを判定する判定回路とを含む、請求項１に記載の半導体装置。
【請求項３】
前記選択回路は、
前記読み書き制御回路からの出力信号および前記クロック信号を受ける論理ゲートを含み、
前記論理ゲートは、前記出力信号が活性化されているとき、前記クロック信号を対応するメモリアレイに供給する、請求項２に記載の半導体装置。
【請求項４】
半導体装置であって、
複数のメモリアレイを備え、
前記複数のメモリアレイの各々は、複数のメモリセルを含み、
前記複数のメモリアレイにそれぞれ対応して設けられる複数のメモリアレイ制御回路をさらに備え、
前記複数のメモリアレイ制御回路のうち第１のメモリアレイ制御回路は、
クロック信号および固定電位信号を受ける第１の論理ゲートを含み、
残余の前記複数のメモリアレイ制御回路の各々は、
対応するメモリアレイへの読み書き動作を制御する読み書き制御回路と、
前記読み書き制御回路からの出力信号および前記クロック信号を受ける第２の論理ゲートとを含み、
前記第２の論理ゲートは、前記出力信号が活性化されているとき、前記クロック信号を残余の対応するメモリアレイに供給し、
前記半導体装置は、
前記複数のメモリアレイにデータを書込むために入力されるコマンドのコマンド間隔に基づいて帯域を判定する帯域判定回路と、
前記帯域判定回路の出力に応じて、前記データを分散して同時に書込みをする前記複数のメモリアレイを決定する制御回路とをさらに備える、半導体装置。
【請求項５】
半導体装置であって、
複数のメモリアレイを備え、
前記複数のメモリアレイの各々には優先順位が設定され、
前記複数のメモリアレイの各々は、複数のメモリセルを含み、
前記複数のメモリアレイにそれぞれ対応して設けられる複数のメモリアレイ制御回路をさらに備え、
前記複数のメモリアレイ制御回路の各々は、
対応するメモリアレイへの読み書き動作を制御する読み書き制御回路と、
対応するメモリアレイを制御する論理ゲートとを含み、
前記複数のメモリアレイ制御回路のうち第１のメモリアレイ制御回路に含まれる前記論理ゲートは、前記第１のメモリアレイ制御回路に含まれる前記読み書き制御回路からの出力信号および前記第１のメモリアレイ制御回路に対応するメモリアレイより前記優先順位が１つ高いメモリアレイに対応する読み書き制御回路からの出力信号を受け、
前記半導体装置は、
前記複数のメモリアレイにデータを書込むために入力されるコマンドのコマンド間隔に基づいて帯域を判定する帯域判定回路と、
前記帯域判定回路の出力に応じて、前記データを分散して同時に書込みをする前記複数のメモリアレイを決定する制御回路とをさらに備える、半導体装置。
【請求項６】
前記半導体装置は、
メモリ制御部をさらに備え、
前記メモリ制御部は、
読出完了した読出アドレスを管理するアドレス管理回路を含み、
前記アドレス管理回路は、
前記複数のメモリアレイにそれぞれ対応する複数のバッファメモリと、
前記読出アドレスを格納するバッファメモリを前記複数のバッファメモリから特定するバッファメモリ特定回路と、
前記バッファメモリを順次参照して書込動作のときに必要な書込アドレスを判定する書込アドレス判定回路とを有する、請求項１〜５のいずれかに記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置に関し、特に消費電力を削減するメモリを含む半導体装置に関する。
【背景技術】
【０００２】
近年、ネットワークの高速化が進んでおり、ルータ、スイッチなどの通信端末も高速化に対応する必要がある。一般に、このルータやスイッチなどの通信端末においては、通信データレートの帯域の高低差が激しく、帯域が低いときでもパケットバッファのようなメモリは常にアクティブ状態（活性化）されている。
【０００３】
また、ネットワークの高速化に伴ってネットワークプロセッサおよびパケットバッファのデータ転送レートが上がり、パケットバッファとして使用されるメモリの容量もより大きなものが必要となる。このようにネットワークの高速化に対応するためには高速で大容量のメモリが必要になる。
【０００４】
このような問題を解決するために、下記のような技術が知られている。
特開２００３−２４８６５２号公報（特許文献１）は、優先度、及びタイミング情報、キャンセル情報などのパラメータをＤＭＡ要求に持たせ、上記パラメータを前もって予約することができ、且つ設定された上記パラメータに従ったＤＭＡ転送が実行でき、また、回路規模が小さく、容易に設計可能で、データ転送効率のよい、低消費電力の高性能ＤＭＡコントローラを提供することを目的としている。各種データを蓄積するメインメモリを複数の領域に物理的に分割して、該領域毎にクロックを供給するようにし、またデータ転送制御部に、クロック制御部とアドレス判定部を備えるようにして、前記複数に物理的に分割された個々の領域のうち、前記アドレス判定部により選択された領域に対してのみクロック及び制御信号を供給し、非選択の領域に対しては、クロック及び制御信号を供給しない。
【０００５】
特開２００２−２０７５４１号公報（特許文献２）は、割り込みレベルを考慮することなく、システムの消費電力を的確に低減することを目的としている。デバイスに対するアクセスが発生しない期間を判別するためのアクセス判定手段と、上記アクセス判定手段の判別結果に基づいて、上記デバイスに対するアクセスが発生しない期間に上記デバイスを低消費電力モードへ遷移させるための信号を生成可能な制御信号生成手段とを含んでバスコントローラを構成し、上記デバイスに対するアクセスが発生しない期間に上記デバイスを低消費電力モードへ遷移させ、上記デバイスでの電力消費を抑えることで、システムの消費電力低減の適正化を図る。
【０００６】
特開平１１−２５０６５８号公報（特許文献３）は、内部タイミングクロック信号の活性／非活性化制御により半導体装置の低消費電力を実現することを目的としている。チップ選択されて供給されたコマンドを解読するクロック同期型半導体装置は、コマンド解読回路を動作させる第１のタイミングクロック信号の発生手段と、コマンド解読結果に従って内部回路を動作させる第２のタイミングクロック信号の発生手段とを含む。チップ非選択状態ではコマンド解読系の回路動作は不要だから、前記発生手段はチップ選択状態でクロック信号発生動作を行い、チップ非選択状態ではクロック信号発生動作を停止し、低消費電力に寄与する。半導体装置はチップ非選択状態であってもコマンドに従った内部動作を行うから、前記発生手段はチップ非選択状態でもクロック信号発生動作を継続し、半導体装置の正常動作を保証する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００３−２４８６５２号公報
【特許文献２】特開２００２−２０７５４１号公報
【特許文献３】特開平１１−２５０６５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特開２００３−２４８６５２号公報（特許文献１）および特開２００２−２０７５４１号公報（特許文献２）に開示されている発明では、低消費電力用メモリコントローラを備えるメモリについては、詳しく言及されていない。また、特開平１１−２５０６５８号公報（特許文献３）に開示される発明では、変化する負荷とデータの容量値によってクロック信号あるいは電源を供給することを制御することについては、詳しく言及されていない。
【０００９】
本発明の一実施例の目的は、読み書きコマンドに基づき、メモリアレイはアクティブ／非アクティブ状態に制御され、非アクティブ状態のメモリアレイにはクロック信号あるいは電源を供給しないことにより消費電力を削減することができる半導体装置を提供することにある。
【課題を解決するための手段】
【００１０】
この発明のある局面に従うと、複数のメモリアレイを備え、複数のメモリアレイの各々は、複数のメモリセルを含み、複数のメモリアレイにそれぞれ対応して設けられる複数のメモリアレイ制御回路をさらに備える。複数のメモリアレイ制御回路の各々は、対応するメモリアレイへの読み書き動作を制御する読み書き制御回路と、対応するメモリアレイの各々にクロック信号および読み書き制御回路からの出力信号に基づいて対応するメモリアレイを活性化するように選択する選択回路とを含む。
【発明の効果】
【００１１】
本発明の一実施例によれば、メモリアレイに対して有効データの存在に基づいてアクティブ／非アクティブ状態に制御し、非アクティブ状態のメモリアレイにはクロック信号あるいは電源を供給しないことにより消費電力を削減することができる。
【図面の簡単な説明】
【００１２】
【図１】半導体装置１の構成を示すブロック図である。
【図２】半導体装置１に含まれるメモリ１００の構成を概略的に示すブロック図である。
【図３】読み書き制御回路１１２Ａの構成の一例を示したブロック図である。
【図４】カウンタ１１４Ａの動作を説明するためのフローチャートである。
【図５】図１のメモリ制御部２００に含まれるアドレス管理回路２０１の構成の一例を示す概略図である。
【図６】アドレス情報の管理制御を説明するためのフローチャートである。
【図７】メモリ１００に含まれるメモリアレイと読み書き制御回路との動作を説明するためのメモリ１００の一部を示すブロック図である。
【図８】検討例のメモリアレイと読み書き制御回路との動作を説明するためのメモリ１００Ｘの一部を示すブロック図である。
【図９】実施の形態１の変形例１のメモリアレイと読み書き制御回路との動作を説明するためのメモリ１００Ａの一部を示すブロック図である。
【図１０】実施の形態１の変形例２のメモリアレイと読み書き制御回路との動作を説明するためのメモリ１００Ｂの一部を示すブロック図である。
【図１１】実施の形態２のメモリ１００Ｃの構成を概略的に示すブロック図である。
【図１２】実施の形態２のメモリ１００Ｃの動作を説明するための模式図である。
【図１３】実施の形態２の帯域が高い場合の動作を説明するためのタイミングチャートである。
【図１４】実施の形態２の帯域が低い場合の動作を説明するためのタイミングチャートである。
【図１５】実施の形態２において帯域幅と有効データとの関係においてメモリアレイの状態の一例を説明するための図である。
【図１６】実施の形態２において帯域幅と有効データとの関係においてメモリアレイの状態の別の例を説明するための図である。
【発明を実施するための形態】
【００１３】
以下、本発明について図面を参照して詳しく説明する。なお、図中同一又は相当部分には同一の符号を付してその説明は繰り返さない。
【００１４】
［実施の形態１］
図１は、半導体装置１の構成を示すブロック図である。図１を参照して、半導体装置１は、メモリ１００と、メモリ制御部２００とを含む。メモリ制御部２００は、メモリ１００を制御するためにコマンド信号ＣＯＭ、アドレス信号ＡＤＤ、クロック信号ＣＬＫ等の制御信号をメモリ１００に与える。この制御信号に基づいてメモリ１００は制御される。
【００１５】
メモリ１００のメモリセルへの書込み動作が行われる場合には、コマンド信号ＣＯＭとともにデータ入力信号Ｄが与えられる。一方、メモリ１００のメモリセルからデータを読出動作が行われる場合には、メモリセルから読出されたデータがデータ出力信号Ｑとして出力される。
【００１６】
図２は、半導体装置１に含まれるメモリ１００の構成を概略的に示すブロック図である。図２を参照して、メモリ１００は、クロック端子４と、制御信号端子２と、アドレス端子３と、データ入力端子６と、データ出力端子５とを含む。
【００１７】
また、メモリ１００は、クロックバッファ２２と、制御信号バッファ２４と、アドレスバッファ２６と、データ入力信号Ｄに関する入力バッファ２８と、データ出力信号Ｑに関する出力バッファ２９とを含む。
【００１８】
また、メモリ１００は、制御回路４２と、メモリアレイ１０Ａ，１０Ｂ，…，１０Ｎ（以下、総称してメモリアレイ１０ともいう。）と、メモリアレイ制御回路１２Ａ，１２Ｂ，…，１２Ｎ（以下、総称してメモリアレイ制御回路１２ともいう。）とを含む。
【００１９】
また、メモリアレイ制御回路１２は、メモリアレイ制御回路１２の各々にそれぞれ対応する読み書き制御回路１１２Ａ，１１２Ｂ，…，１１２Ｎ（以下、総称して読み書き制御回路１１２ともいう。）を含む。後ほど図３で説明するが、読み書き制御回路１１２は、それぞれ対応するメモリアレイ１０にデータが存在し、かつデータが読出されるまたは読出すおそれがあるかどうかを判定する。さらに、なお、上記の条件を満たすデータのことを有効データという。
【００２０】
さらに、メモリアレイ制御回路１２は、図示はしていないがメモリアレイ制御回路１２の各々にそれぞれ対応する選択回路１４Ａ，１４Ｂ，…，１４Ｎ（以下、総称して選択回路１４ともいう。）を含む。選択回路１４については図７〜図１０、図１２を用いてさらに説明する。
【００２１】
また、メモリ１００は、リードアンプ＆ライトドライバ２０Ａ，２０Ｂ，…，２０Ｎ（以下、総称してリードアンプ＆ライトドライバ２０ともいう。）と、レギュレータ３０Ａ，３０Ｂ，…、３０Ｎ（以下、総称してレギュレータ３０ともいう。）と、ＰＬＬ回路４０と、パラレル−シリアル変換回路４４とを含む。リードアンプ＆ライトドライバ２０は、メモリアレイ１０の各々にそれぞれ対応して設けられる。
【００２２】
レギュレータ３０は、読み書き時において、電源電圧を安定化させるために設けられる。クロック端子４は、クロック信号ＣＬＫを受け、クロックバッファ２２にクロック信号ＣＬＫを与える。
【００２３】
制御信号端子２は、メモリ制御に必要な信号であるコマンド信号ＣＯＭを受ける。たとえば、チップセレクト信号／ＣＳ、ロウアドレスストローブ信号／ＲＡＳ、コラムアドレスストローブ信号／ＣＡＳ、ライトイネーブル信号／ＷＥおよびライトマスク信号ＤＭのコマンド制御信号を受けることもできる。
【００２４】
アドレス端子３は、アドレス信号ＡＤＤを受ける。たとえば、アドレス信号ＡＤＤのほかにバンクアドレス信号ＢＡ０，ＢＡ１を受けることもできる。
【００２５】
クロックバッファ２２は、クロック信号ＣＬＫを受けてクロック信号ＣＬＫ１を発生し、その発生したクロック信号ＣＬＫ１はＰＬＬ回路４０へ与えられる。ＰＬＬ回路４０は、入力信号としてクロック信号ＣＬＫ１を受け、この入力信号と同期する高周波数のクロック信号ＣＬＫ２を生成する。クロック信号ＣＬＫ２は、制御信号バッファ２４、アドレスバッファ２６、入力バッファ２８、出力バッファ２９へ与えられる。
【００２６】
制御信号バッファ２４は、ＰＬＬ回路４０から受けるクロック信号ＣＬＫ２に同期して、チップセレクト信号／ＣＳ、ロウアドレスストローブ信号／ＲＡＳ、コラムアドレスストローブ信号／ＣＡＳおよびライトイネーブル信号／ＷＥを取込んでラッチし、それぞれに対応する各内部制御信号を制御回路４２へ出力する。
【００２７】
アドレスバッファ２６は、クロックバッファ２２から受けるクロック信号ＣＬＫ２に同期して、アドレス信号ＡＤＤを取込んでラッチし、内部アドレス信号を発生して制御回路４２へ出力する。
【００２８】
データ入力端子６、データ出力端子５は、メモリ１００において読み書きされるデータを外部とやり取りを行う。データ入力端子６は、データ書込時は外部からデータＤｊ（たとえばｊは０〜７の自然数）を受け、データ出力端子５は、データ読出時はデータＱｊ（たとえばｊは０〜７の自然数）を外部へ出力する。入力バッファ２８および出力バッファ２９は、ＰＬＬ回路４０によって生成されるクロック信号ＣＬＫ２に同期して動作する。
【００２９】
制御回路４２は、制御信号バッファ２４から受ける内部制御信号に基づいて内部制御コマンドを発生する。そして、制御回路４２から出力された内部制御コマンド信号を、メモリアレイ制御回路１２と、レギュレータ３０とに与えられる。これによって、メモリアレイ１０に対するデータＤｊの読み書きが行われる。データを記憶するメモリアレイ１０は、センスアンプ（図示せず）を介してデータの読み書きが行われる。
【００３０】
図３は、読み書き制御回路１１２Ａの構成の一例を示したブロック図である。図３を参照して、読み書き制御回路１１２Ａは、カウンタ１１４Ａと、判定回路１１６Ａとを含む。
【００３１】
カウンタ１１４Ａは、書込みコマンド信号あるいは読出しコマンド信号を入力信号として受ける。カウンタ１１４Ａは、書込みコマンド信号が与えられるとカウント数を１つ加算させる。一方、読出しコマンド信号が与えられるとカウント数を１つ減算させる。カウンタ１１４Ａは、上記カウンタ数を加減算して、判定回路１１６Ａへ出力する。
【００３２】
判定回路１１６Ａは、出力されたカウント信号に基づいて、メモリアレイ１０Ａに有効データが存在する場合には信号ＡＡからは信号レベルがＨレベルの信号が出力される。
【００３３】
たとえば有効データが存在する場合とは、上記カウンタ数が０よりも大きい場合のことを示す。すなわち、書込まれているデータのほうが読出されているデータよりも多いため、対応するメモリアレイにまだ有効データが格納されており、読出される可能性があると判定される。この場合には、判定回路１１６ＡはＨレベルの出力信号を信号ＡＡとして出力する。
【００３４】
なお、上記カウンタ数が０より小さい場合には、判定回路１１６Ａによって有効データではないと判定され、判定回路１１６ＡはＬレベルの出力信号を信号ＡＡとして出力する。
【００３５】
読み書き制御回路１１２Ｂ，…，１１２Ｎについても同様の構成のため、説明は繰り返さない。また、以下、カウンタ１１４Ａ，…，１１４Ｎをカウンタ１１４と総称し、判定回路１１６Ａ，…，１１６Ｎを判定回路１１６と総称する。
【００３６】
図４は、カウンタ１１４Ａの動作を説明するためのフローチャートである。図４を参照して、ユーザによりメモリセルへの読出し動作あるいは書込み動作をするなどされると、ステップＳ１において、入力されたコマンドが、メモリセルから読出し動作を示す読出しコマンドか、メモリセルへデータを書込む動作を示す書込みコマンドか、上記２つの以外のコマンドかが判断される。
【００３７】
入力されたコマンドが読出しコマンドであると判断されれば、ステップＳ３に処理が進む。ステップＳ３において、カウンタ１１４Ａのカウントが１つ減算（Ｄｅｃｒｅｍｅｎｔ）され、処理がステップＳ１に戻る。
【００３８】
また、入力されたコマンドが書込みコマンドであると判断されれば、ステップＳ２に処理が進む。ステップＳ２において、カウンタ１１４Ａのカウントが１つ加算（Ｉｎｃｒｅｍｅｎｔ）され、処理がステップＳ１に戻る。
【００３９】
また、それ以外のコマンドが入力されたと判断されれば、カウンタ１１４Ａのカウントは変更されず、ステップＳ１に処理が戻る。
【００４０】
これらの動作について、読み書き制御回路１１２Ａに含まれるカウンタ１１４Ａについて説明したが、これに限らず、読み書き制御回路１１２に含まれるカウンタ１１４についても同様な動作が行われる。
【００４１】
以下、実施の形態１の理解が容易になるように、メモリアレイ１０Ａ〜１０Ｄとして説明する。
【００４２】
図５は、図１のメモリ制御部２００に含まれるアドレス管理回路２０１の構成の一例を示す概略図である。図５を参照して、アドレス管理回路２０１は、バッファメモリ特定回路２０２と、ＦＩＦＯ（Ｆｉｒｓｔ−Ｉｎ／Ｆｉｒｓｔ−Ｏｕｔ）メモリ２０４Ａ〜２０４Ｄと、書込アドレス判定回路２０６とを含む。ここで、ＦＩＦＯメモリ２０４Ａ〜２０４Ｄは、メモリ１００のメモリアレイ１０Ａ〜１０Ｄにそれぞれ対応して設けられる。また、ＦＩＦＯメモリ２０４Ａ〜２０４Ｄの入出力は独立して行われる。
【００４３】
一般に、メモリセルにデータを書込まれるときには、メモリセルの物理アドレスと論理アドレスの変換が行われ、アドレス管理についても同時に行われる。このとき、書込まれるデータは実際にメモリに書かれていないメモリセルに書込まれることになる。
【００４４】
実施の形態１において、このアドレス管理はアドレス管理回路２０１に含まれるＦＩＦＯメモリ２０４Ａ〜２０４Ｄを用いて行われる。たとえば、メモリセルに書込まれたデータを読出し後、このメモリセルに書込まれているデータは、有効データとして利用されない場合に、このメモリセルに対応するアドレスＡ０は、アドレス管理回路２０１のバッファメモリ特定回路２０２によって、アドレスＡ０は対応するＦＩＦＯメモリ２０４Ａ〜２０４Ｄのいずれかに格納される。このときバッファメモリ特定回路２０２は、アドレスＡ０の下位アドレスに基づいて判断する。
【００４５】
たとえば、このアドレスＡ０がメモリアレイＢのメモリセルを特定するアドレスである場合には、アドレスＡ０は、メモリアレイＢに対応するＦＩＦＯメモリ２０４Ｂに格納される。
【００４６】
次に、メモリセルに書込み動作を行いたいときには、書込アドレス判定回路２０６によってＦＩＦＯ２０４Ａ〜２０４Ｄに格納されているアドレスＡ１を特定し出力される。たとえば、書込アドレス判定回路２０６は、ＦＩＦＯ２０４Ｃに格納されているアドレスＡ１を出力し、アドレスＡ１によって特定されるメモリアレイＣのメモリセルにデータが書込まれる。
【００４７】
読出し動作によって有効データに該当しなくなったメモリセルのアドレス情報は、そのメモリセルの属しているメモリアレイに対応するＦＩＦＯメモリ２０４Ａ〜２０４Ｄに空きアドレスとして格納される。
【００４８】
書込み動作によって、ＦＩＦＯメモリ２０４Ａ〜２０４Ｄに格納されているアドレス情報は、書込アドレス判定回路２０６によってＦＩＦＯメモリ２０４Ａ〜２０４Ｄから読出されて使用される。
【００４９】
従って、メモリアレイ１０Ａに対応したアドレスがＦＩＦＯ２０４Ａに存在する場合には、最優先でこのアドレスを使用し、もしアドレスがＦＩＦＯ２０４Ａに存在しなくなったら、第２の優先順位としてメモリアレイ１０Ｂに対応したアドレスを、このアドレスが無くなれば、さらに第３の優先順位のメモリアレイ１０Ｃに対応したアドレスを使うようにする。こうすることでメモリアレイ１０Ａには有効データが入っている可能性が高くなり、メモリアレイ１０Ｂ、１０Ｃ、１０Ｄの順に従い有効データが存在している可能性が下がる。すなわちこれらのメモリアレイ１０Ｂ〜１０Ｄを停止できる時間が増加し、全体的な消費電力を削減することができる。
【００５０】
図６は、アドレス情報の管理制御を説明するためのフローチャートである。図６を参照して、例えばユーザによってコマンド入力されるなどされると、ステップＳ１１において、書込アドレス判定回路２０６にアドレスの要求がなされているか否かを判断する。たとえば、コマンド入力が書込みコマンドである場合には、データを書込むためのメモリセルのアドレスが必要となる。書込アドレス判定回路２０６にアドレスの要求がなされていると判断されれば、ステップＳ１２に処理が進む。一方、書込アドレス判定回路２０６にアドレスの要求がなされていないと判断されれば、ステップＳ１１の処理に戻る。
【００５１】
ステップＳ１２において、書込アドレス判定回路２０６は、ＦＩＦＯ２０４Ａに格納されているアドレスが存在するか否かを判断する。ＦＩＦＯ２０４Ａにアドレスが存在すると判断されれば、ステップＳ１１２に処理が進み、ステップＳ１１２においてＦＩＦＯ２０４Ａに格納されているアドレスがメモリ１００側へ出力される。一方、ＦＩＦＯ２０４Ａにアドレスが存在しないと判断されれば、ステップＳ１３に処理が進み、ＦＩＦＯ２０４Ｂに格納されているアドレスがあるかどうかをさらに判断する。
【００５２】
ステップＳ１３において、書込アドレス判定回路２０６は、ＦＩＦＯ２０４Ｂに格納されているアドレスが存在するか否かを判断する。ＦＩＦＯ２０４Ｂにアドレスが存在すると判断されれば、ステップＳ１１３に処理が進み、ステップＳ１１３においてＦＩＦＯ２０４Ｂに格納されているアドレスがメモリ１００側へ出力される。一方、ＦＩＦＯ２０４Ｂにアドレスが存在しないと判断されれば、ステップＳ１４に処理が進み、ＦＩＦＯ２０４Ｃに格納されているアドレスがあるかどうかをさらに判断する。
【００５３】
ステップＳ１４において、書込アドレス判定回路２０６は、ＦＩＦＯ２０４Ｃに格納されているアドレスが存在するか否かを判断する。ＦＩＦＯ２０４Ｃにアドレスが存在すると判断されれば、ステップＳ１１４に処理が進み、ステップＳ１１４においてＦＩＦＯ２０４Ｃに格納されているアドレスがメモリ１００側へ出力される。一方、ＦＩＦＯ２０４Ｃにアドレスが存在しないと判断されれば、ステップＳ１５に処理が進み、ＦＩＦＯ２０４Ｄに格納されているアドレスがあるかどうかをさらに判断する。
【００５４】
ステップＳ１５において、書込アドレス判定回路２０６は、ＦＩＦＯ２０４Ｄに格納されているアドレスが存在するか否かを判断する。ＦＩＦＯ２０４Ｄにアドレスが存在すると判断されれば、ステップＳ１１５に処理が進み、ステップＳ１１５においてＦＩＦＯ２０４Ｄに格納されているアドレスがメモリ１００側へ出力される。一方、ＦＩＦＯ２０４Ｄにアドレスが存在しないと判断されれば、再度ステップＳ１１に処理が戻り、ステップＳ１１〜ステップＳ１５が判断される。
【００５５】
図７は、メモリ１００に含まれるメモリアレイと読み書き制御回路との動作を説明するためのメモリ１００の一部を示すブロック図である。説明を容易にするために、メモリアレイ１０Ａ〜１０Ｄの場合について説明する。
【００５６】
図７を参照して、メモリ１００は、メモリアレイ毎にそれぞれ対応して選択回路１４に含まれる２入力ＡＮＤ回路１４Ａ〜１４Ｄおよび読み書き制御回路１１２Ａ〜１１２Ｄを含む。すなわち、メモリ１００は、メモリアレイ１０Ａ〜１０Ｄと、メモリアレイ１０Ａ〜１０Ｄとにそれぞれ対応する論理ゲートである２入力ＡＮＤ回路１４Ａ〜１４Ｄおよび読み書き制御回路１１２Ａ〜１１２Ｄとを含む。ここでは、選択回路１４は２入力ＡＮＤ回路を用いたがこれに限られることはない。
【００５７】
２入力ＡＮＤ回路１４〜１４Ｄの第１の入力端子には対応する読み書き制御回路１１２Ａ〜１１２Ｄからの信号ＡＡ〜ＤＤが与えられ、第２の入力端子には共通するクロック信号ＣＬＫ２が与えられる。
【００５８】
ここで理解を容易にするため、メモリアレイ１０Ａを例にとって具体的に説明をする。
読み書き制御回路１１２Ａは、メモリアレイ１０Ａに有効データが書込まれているかどうかの判定を行い、メモリアレイ１０Ａを使用するかどうかの制御を行う。
【００５９】
すなわち、有効データが存在する場合には、Ｈレベルの信号ＡＡが２入力ＡＮＤ回路１４Ａの第１の入力端子に与えられ、一方、有効データが存在しない場合には、Ｌレベルの信号ＡＡが２入力ＡＮＤ回路１４Ａの第１の入力端子に与えられる。一方、２入力ＡＮＤ回路１４Ａの第２の入力端子には、共通のクロック信号ＣＬＫ２が与える。
【００６０】
そうすると、Ｈレベルの信号ＡＡが入力される場合は対応するメモリアレイ１０Ａにクロック信号ＣＬＫ２が供給されアクティブ状態となる。一方、Ｌレベルの信号ＡＡが入力される場合には、２入力ＡＮＤ回路１４Ａの出力信号はＬレベルとなり、クロック信号が供給されず、メモリアレイ１０Ａは非アクティブ状態となる。
【００６１】
クロック信号を例にとって説明したが、同様に信号ＡＡを用いてメモリアレイ１０Ａへの電源の供給を制御しても良い。つまり、Ｈレベルの信号ＡＡが入力される場合は対応するメモリアレイ１０Ａに電源を供給し、Ｌレベルの信号ＡＡが入力される場合は対応するメモリアレイ１０Ａに電源を供給しないように制御する。
【００６２】
すなわち、有効データがメモリアレイ１０Ａに存在する場合にのみクロック信号ＣＬＫ２が与えられ、メモリアレイ１０Ａのメモリセルはリフレッシュ動作等を行い、メモリセルに有効データが記憶されている状態を継続させる。
【００６３】
反対に、有効データがメモリアレイ１０Ａに存在しない場合には、クロック信号ＣＬＫ２あるいは電源が供給されず、有効データを有しないメモリアレイへの消費電力を削減することができる。
【００６４】
なお、メモリアレイ１０Ｂ〜１０Ｄについても同様な制御となるため説明は繰り返さない。
【００６５】
［検討例］
図８は、検討例のメモリアレイと読み書き制御回路との動作を説明するためのメモリ１００Ｘの一部を示すブロック図である。図７、図８を参照して、実施の形態１のメモリ１００と比較しつつ、検討例のメモリ１００Ｘを説明する。
【００６６】
検討例のメモリ１００Ｘは、実施の形態１のメモリ１００の構成を踏まえつつ、選択回路１４（２入力ＡＮＤ回路１４Ａ〜１４Ｄ）を有しない構成である。
【００６７】
従って、クロック信号ＣＬＫ２がメモリアレイ１０Ａ〜１０Ｄのそれぞれに直接与えられる。この検討例では、常にクロック信号ＣＬＫ２がメモリアレイ１０Ａ〜１０Ｄの全てに与えられている。
【００６８】
しかし、このような構成にした場合には、不要なデータがあるメモリアレイにもクロック信号ＣＬＫ２あるいは電源が供給されているため、消費電力の増大を招く。
【００６９】
従って、図１に示した実施の形態の半導体装置１に含まれるメモリ１００では、検討例のように、クロック信号ＣＬＫ２が全てのメモリアレイに供給されるような構成を取っていない。その代わりに、メモリ１００が、読み書き制御回路１１２と、２入力ＡＮＤ回路１４Ａ〜１４Ｄとを含むことによって、不要なメモリアレイの消費電力を削減することができる。
【００７０】
［実施の形態１の変形例１］
図９は、実施の形態１の変形例１のメモリアレイと読み書き制御回路との動作を説明するためのメモリ１００Ａの一部を示すブロック図である。
【００７１】
図１、図７、図９を参照して、実施の形態１のメモリ１００との比較しつつ、実施の形態１の変形例１のメモリ１００Ａを説明する。
【００７２】
メモリ１００Ａは、メモリ１００の構成を踏まえつつ、図７の読み書き制御回路１１２Ａから出力された信号ＡＡを２入力ＡＮＤ回路１４Ａに出力せず、代わりに２入力ＡＮＤ回路１４Ａの第１の入力端子のみにＨレベルに固定した信号ＶＤＤが与えられ、その他の２入力ＡＮＤ回路１４Ｂ〜１４Ｄの第１の入力端子にはそれぞれ対応する読み書き制御回路１１２Ｂ〜１１２Ｄの出力信号ＢＢ〜ＤＤが与えられる。なお、ここではＨレベルに固定した信号ＶＤＤを用いたが、メモリアレイを活性化する信号レベルであればよく、Ｈレベルに固定する必要はない。
【００７３】
この構成によって、メモリアレイ１０Ａは常にクロック信号ＣＬＫ２あるいは電源が供給されアクティブ状態となり、データを書込まれるメモリアレイとして優先的にメモリアレイ１０Ａが選択される。これによりメモリの効率的な使用が可能となる。一方、使用していないメモリアレイ１０Ｂ〜１０Ｄへのクロック信号ＣＬＫ２あるいは電源を供給することを停止でき、メモリアレイ１０Ｂ〜１０Ｄは非アクティブ状態となり、消費電力を削減することができる。
【００７４】
なお、通常メモリを設計する場合には、各設計回路を繰返し利用することが多いため、実施の形態１の変形例１のような構成をしているが、２入力ＡＮＤ回路１４Ａを省いてメモリアレイ１０Ａにクロック信号ＣＬＫ２を直接与えてもよい。
【００７５】
［実施の形態１の変形例２］
図１０は、実施の形態１の変形例２のメモリアレイと読み書き制御回路との動作を説明するためのメモリ１００Ｂの一部を示すブロック図である。実施の形態１の変形例２ではメモリアレイ１０Ａから優先的に書込まれ、次はメモリアレイ１０Ｂ、その次はメモリアレイ１０Ｃ、最後にメモリアレイ１０Ｄが使用される場合について説明する。
【００７６】
図１、図７、図１０を参照して、実施の形態１のメモリ１００と比較しつつ、実施の形態１の変形例２のメモリ１００Ｂを説明する。
【００７７】
メモリ１００Ｂは、メモリ１００の構成に、選択回路１４の代わりに選択回路１５を加える。この選択回路１５は、選択回路１４と、選択回路１６とを含む。選択回路１４は論理ゲートである２入力ＡＮＤ回路１４Ａ〜１４Ｄを含み、選択回路１６は論理ゲートである２入力ＯＲ回路１６Ａ〜１６Ｄを含む。ここでは、選択回路１５は選択回路１４および選択回路１６を合わせたがこれに限られることはない。
【００７８】
２入力ＯＲ回路１６Ａ〜１６Ｄの各々の第１の入力端子には、それぞれ対応して信号ＶＤＤ（Ｈレベル）、信号ＡＡ、信号ＢＢ、信号ＣＣが与えられる。一方、２入力ＯＲ回路１６Ａ〜１６Ｄの各々の第２の入力端子には、それぞれ信号ＡＡ、信号ＢＢ、信号ＣＣ、信号ＤＤが与えられる。なお、信号ＡＡ〜ＤＤは、それぞれ対応する読み書き制御回路１１２Ａ〜１１２Ｄの出力信号を示す。
【００７９】
この２入力ＯＲ回路１６Ａ〜１６Ｄの各々の出力信号は、それぞれ対応する２入力ＡＮＤ回路１４Ａ〜１４Ｄの第１の入力端子に与えられ、２入力ＡＮＤ回路１４Ａ〜１４Ｄの第２の入力端子に共通のクロック信号ＣＬＫ２が与えられる。
【００８０】
たとえば、メモリアレイ１０Ａのみに有効データが存在している場合には、読み書き制御回路１１２Ａの出力である信号ＡＡはＨレベルとなる。従って２入力ＯＲ回路１６Ａの第１の入力端子に信号ＡＡ（Ｈレベル）、第２の入力端子に信号ＶＤＤ（Ｈレベル）が与えられるため、２入力ＯＲ回路１６ＡはＨレベルの信号を出力する。２入力ＡＮＤ回路１４Ａの第１および第２の入力端子の両方にＨレベルの信号が与えられるため、メモリアレイ１０Ａにはクロック信号ＣＬＫ２あるいは電源が供給され、メモリアレイ１０Ａはアクティブ状態が選択される。
【００８１】
ここまでの動作については実施の形態１の変形例１と同様な動作である。しかしながら、実施の形態１の変形例２では、信号ＡＡがメモリアレイ１０Ｂを制御する２入力ＯＲ回路１６Ｂの第１の入力端子に与えられている。これによって、信号ＡＡがＨレベルのときには、２入力ＯＲ回路１６Ｂの第２の入力端子に与えられる信号レベルにかかわらず、２入力ＯＲ回路１６Ｂから出力される信号はＨレベルとなる。従って、このＨレベルの出力信号が２入力ＡＮＤ回路１４Ｂの第１の入力端子に与えられ、第２の入力端子にＨレベルのクロック信号ＣＬＫ２が与えられるため、メモリアレイ１０Ｂはアクティブ状態が選択される。
【００８２】
次に、メモリアレイ１０Ｃについて考えると、メモリアレイ１０Ｃを制御する２入力ＯＲ回路１６Ｃの第１および第２の入力端子に与えられる信号ＢＢ，ＣＣはＬレベルであるため、メモリアレイ１０Ｃは、非アクティブ状態が選択されている。
【００８３】
しかしながら、メモリアレイ１０Ａの容量がなくなり、メモリアレイ１０Ｂにデータが書込まれると同時に、読み書き制御回路１１２Ｂから出力される信号ＢＢはＨレベルとなり、このＨレベルの信号ＢＢがメモリアレイ１０Ｃを制御する２入力ＯＲ回路１６Ｃの第１の入力端子に与えられる。この２入力ＯＲ回路１６ＣからのＨレベルの出力信号が２入力ＡＮＤ回路１４Ｃの第１の入力端子に与えられ、第２の入力端子に共通するＨレベルのクロック信号ＣＬＫ２が与えられることで、メモリアレイ１０Ｃはクロック信号ＣＬＫ２あるいは電源を供給され、非アクティブ状態からアクティブ状態へ変更される。
【００８４】
すなわち、実施の形態１の変形例２の構成によれば、メモリアレイ１０Ａからメモリアレイ１０Ｄへ順次書込みされるが、メモリアレイ１０Ａが使用されている状況からその後メモリアレイ１０Ｂも使用される可能性が高いため、メモリアレイ１０Ｂについてもアクティブ状態にしておき、いつでも書込み動作に対応できるようにする。
【００８５】
同様に、順次メモリアレイ１０Ｂが実際使用されれば、それに伴いメモリアレイ１０Ｃはアクティブ状態となる。さらにメモリアレイ１０Ｃが実際使用されれば、優先順位が一番低いメモリアレイ１０Ｄについてもアクティブ状態となる。
【００８６】
このように実施の形態１の変形例２は、現在使用されているメモリアレイの次に優先順位の高いメモリアレイをアクティブ状態にすることによって、それ以外のメモリアレイにクロック信号や電源を供給することを停止でき、効率的に消費電力を削減することができる。
【００８７】
なお、通常メモリを設計する場合には、各設計回路を繰返し利用することが多いため、実施の形態１の変形例２のような構成をしているが、２入力ＯＲ回路１６Ａについては省いて２入力ＡＮＤ回路１４Ａの第１の入力端子に信号ＡＡを直接与えてもよい。
【００８８】
［実施の形態２］
図１１は、実施の形態２のメモリ１００Ｃの構成を概略的に示すブロック図である。図２、図１１を参照して、実施の形態１のメモリ１００と比較しつつ、メモリ１００Ｃについて説明する。
【００８９】
メモリ１００Ｃは、メモリ１００の構成に加えて、帯域判定回路（帯域予測）４６をさらに含む。帯域判定回路（帯域予測）４６は、読出しコマンドや書込みコマンドの信号を制御信号端子２に受け、制御信号バッファ２４からの出力信号と、クロック信号ＣＬＫ２を受ける。外部から入力されるコマンド間隔に基づきコマンド信号の帯域が判定できる。具体的には、短時間に書込みコマンドが発生した場合などは、帯域が高いと判定される。逆に、コマンド間隔が長い場合などは、帯域は低いと判定される。
【００９０】
この帯域判定に従い、帯域判定回路（帯域予測）４６からの出力信号が制御回路４２と、パラレル−シリアル変換回路４４とに与えられ、入力されたデータを格納するメモリアレイが選択される。
【００９１】
図１２は、実施の形態２のメモリ１００Ｃの動作を説明するための模式図である。説明を容易にするために、実施の形態１のときと同様にメモリアレイ１０Ａ〜１０Ｄの場合について説明する。
【００９２】
図１２を参照して、帯域判定回路（帯域予測）４６は、コマンド間隔により帯域の高低を判断する。帯域が高い場合には、たとえば、メモリアレイ１０Ａ〜１０Ｄへの同時書込みをさせるために、帯域判定回路（帯域予測）４６からのＨレベルの出力信号が２入力ＡＮＤ回路１４Ａ〜１４Ｄの第１の入力端子に与えられる。一方、２入力ＡＮＤ１４Ａ〜１４Ｄの第２の入力端子にはクロック信号ＣＬＫ２が与えられる。そして、メモリアレイ１０Ａ〜１０Ｄがアクティブ状態となるように選択される。また、パラレル−シリアル変換回路４４は、帯域判定回路（帯域予測）４６からの出力信号に制御され、メモリアレイ１０Ａ〜１０Ｄにデータが入力されるようにパラレル−シリアル変換が行われる。
【００９３】
一方、帯域が低いときには、たとえば、メモリアレイ１０Ａのみで十分書込むことができる場合には、２入力ＡＮＤ回路１４Ａの第１の入力端子には帯域判定回路（帯域予測）４６のＨレベルの出力信号が与えられ、その他の２入力ＡＮＤ回路１４Ｂ〜１４Ｄの第１の入力端子には帯域判定回路（帯域予測）４６のＬレベルの出力信号が与えられる。一方、２入力ＡＮＤ１４Ａ〜１４Ｄの第２の入力端子にはクロック信号ＣＬＫ２が与えられる。そして、メモリアレイ１０Ａのみがアクティブ状態になるように選択され、その他のメモリアレイ１０Ｂ〜１０Ｄについては非アクティブ状態になるように選択される。また、パラレル−シリアル変換回路４４は、帯域判定回路（帯域予測）４６からの出力信号に制御され、メモリアレイ１０Ａにデータが入力されるようにパラレル−シリアル変換が行われる。
【００９４】
なお、パラレル−シリアル変換回路４４は、メモリ装置内部に設ける必要はなく、外部でパラレル−シリアル変換されたデータを入力してもよい。
【００９５】
この構成により、帯域の高低に基づき、必要なメモリアレイをアクティブ状態に選択し、その他のメモリアレイにはクロック信号あるいは電源を供給しないことにより、消費電力を抑えることができる。なお、他の構成については実施の形態１と同様なため説明は繰り返さない。
【００９６】
図１３は、実施の形態２の帯域が高い場合の動作を説明するためのタイミングチャートである。図１３を参照して、まず、時間Ｔ１〜Ｔ３において、制御信号端子２から書込みコマンドＷが連続して入力され、各書込みコマンドＷにそれぞれ対応する書込みデータＤａ，Ｄｂ，Ｄｃがデータ入力端子６から入力される。
【００９７】
このように短時間に連続して複数の書込みコマンド信号が入力されているため、帯域判定回路（帯域予測）４６は帯域が高いと判定し、制御回路４２およびパラレル−シリアル変換回路４４を制御する信号を出力する。
【００９８】
この出力信号を受けて、制御回路４２およびパラレル−シリアル変換回路４４によって、メモリアレイ１０Ａ〜１０Ｄの各々をアクティブ状態にして、同時に書込みが行われる。
【００９９】
具体的には、時間Ｔ１において、書込みコマンドＷとそのデータＤａがそれぞれ制御信号端子２およびデータ入力端子６に与えられる。続けて、時間Ｔ２、時間Ｔ３において同様の動作が行われる。
【０１００】
このような短時間に連続して書込みコマンドＷが入力されたときには、メモリアレイ１０Ａ〜１０Ｄにクロック信号または電源が供給され、メモリアレイ１０Ａ〜１０Ｄの全てがアクティブ状態になるように選択される。これによってデータをメモリアレイ１０Ａ〜１０Ｄに均等に分散して書込むことができ、書込み時間の短縮化が図られる。
【０１０１】
すなわち、時間Ｔ１において、入力されたデータＤａを所定の時間で書込ませるためには、メモリアレイ１０Ａ〜１０Ｄが必要と判定され、データＤａを均等分割したデータＤａ０〜Ｄａ３をそれぞれメモリアレイ１０Ａ〜１０Ｄに分散書込みが行われる。続けて、時間Ｔ２、時間Ｔ３において同様の動作が行われる。
【０１０２】
図１４は、実施の形態２の帯域が低い場合の動作を説明するためのタイミングチャートである。図１４を参照して、時間Ｔ１、Ｔ５、Ｔ９において、制御信号端子２から書込みコマンドＷが入力され、各書込みコマンドＷにそれぞれ対応する書込みデータＤａ，Ｄｂ，Ｄｃがデータ入力端子６から入力される。
【０１０３】
このように連続して複数の書込みコマンド信号が入力されるが、次のコマンド入力されるまでの時間（コマンド間隔）に各データがメモリセルに書込むことができる程度の時間が与えられるため、帯域判定回路（帯域予測）４６は帯域が低いと判定し、制御回路４２およびパラレル−シリアル変換回路４４を制御する信号を出力する。
【０１０４】
この出力信号を受けて、制御回路４２およびパラレル−シリアル変換回路４４によって、メモリアレイ１０Ａのみがアクティブ状態に選択され、残余のメモリアレイ１０Ｂ〜１０Ｄは非アクティブ状態に選択される。
【０１０５】
具体的に、時間Ｔ１において、書込みコマンドＷとそのデータＤａがそれぞれ制御信号端子２およびデータ入力端子６に与えられる。続けて、時間Ｔ２、時間Ｔ３において同様の動作が行われる。
【０１０６】
このように書込みコマンドＷとともに書込みデータが連続して入力されるが、コマンド間隔が広く、同時に書込む必要がない場合には、メモリアレイ１０Ａのみがアクティブ状態にされ、その他のメモリアレイ１０Ｂ〜１０Ｄについては、クロック信号あるいは電源を供給しないことにより非アクティブ状態にすることで消費電力を削減することができる。
【０１０７】
すなわち、時間Ｔ１において、入力されたデータＤａを所定の時間で書込ませるために、メモリアレイ１０Ａで十分と判定され、他のメモリアレイ１０Ｂ〜１０Ｄには書込みを行わず、データＤａを分割したデータＤａ０〜Ｄａ３をメモリアレイ１０Ａに連続書込みを行う。続けて、時間Ｔ２、時間Ｔ３において同様の動作が行われる。
【０１０８】
図１５は、実施の形態２において帯域幅と有効データとの関係においてメモリアレイの状態の一例を説明するための図である。理解を容易にするために、メモリアレイＡ００〜Ａ３３の１６個のメモリアレイを用いて帯域幅と有効データとの関係に基づいたメモリアレイの状態を説明する。
【０１０９】
図１５を参照して、横軸に書込み動作において入力される全メモリ容量に対する有効データの割合を示し、縦軸に書込み動作における入力コマンドの帯域を示している。なお、有効データとは読出しがなされるあるいは読出しがなされるおそれのあるデータのことをいう。
【０１１０】
たとえば、書込みコマンドＷが１０ＧＨｚ〜２０ＧＨｚの範囲で入力され、書込みされるデータの割合が、全データ容量に対して５０％〜７５％の範囲である場合について説明する。この場合は、帯域が低いため、同時に書込むメモリアレイ数を増加させる必要がない。
【０１１１】
従って、帯域判定回路（帯域予測）４６によって、メモリアレイＡ００〜Ａ０２，Ａ１０〜Ａ１２に対して書込みできるようにクロック信号あるいは電源が供給されアクティブ状態（ＯＮ状態）が選択される。一方、残余のメモリアレイには、クロック信号あるいは電源の供給が遮断され、非アクティブ状態（ＯＦＦ状態）となる。
【０１１２】
これにより、有効データが格納されているメモリアレイ以外には、クロック信号あるいは電源が供給されないため、消費電力の削減が見込まれる。
【０１１３】
図１６は、実施の形態２において帯域幅と有効データとの関係においてメモリアレイの状態の別の例を説明するための図である。図１５と同様、理解を容易にするために、メモリアレイＡ００〜Ａ３３の１６個のメモリアレイを用いて帯域幅と有効データとの関係に基づいたメモリアレイの状態を説明する。
【０１１４】
図１６を参照して、横軸に書込み動作において入力される全メモリ容量に対する有効データの割合を示し、縦軸に書込み動作における入力コマンドの帯域を示している。なお、有効データとは読出しがなされるあるいは読出しがなされるおそれのあるデータのことをいう。
【０１１５】
たとえば、書込みコマンドＷが３０ＧＨｚ〜４０ＧＨｚの範囲で入力され、書込みされるデータの割合が、全データ容量に対して２５％〜５０％の範囲である場合について説明する。この場合は、帯域が高いため、データを同時に書込むメモリセル数を増加する必要がある。
【０１１６】
従って、帯域判定回路（帯域予測）４６によって、メモリアレイＡ００〜Ａ０１，Ａ１０〜Ａ１１，Ａ２０〜Ａ２１，Ａ３０〜Ａ３１に対して書込みできるようにクロック信号あるいは電源が供給されアクティブ状態（ＯＮ状態）が選択される。一方、残余のメモリアレイには、クロック信号あるいは電源の供給が遮断され、非アクティブ状態（ＯＦＦ状態）となる。
【０１１７】
これにより、有効データが格納されているメモリアレイ以外には、クロック信号あるいは電源が供給されないため、消費電力の削減が見込まれる。
【０１１８】
最後に、再び図１等を参照して本実施の形態について総括する。
実施の形態１の半導体装置は、図２を参照して、複数のメモリアレイ１０を備え、複数のメモリアレイ１０の各々は、複数のメモリセルを含み、複数のメモリアレイ１０にそれぞれ対応して設けられる複数のメモリアレイ制御回路１２をさらに備える。複数のメモリアレイ制御回路１２の各々は、対応するメモリアレイへの読み書き動作を制御する読み書き制御回路１１２と、対応するメモリアレイ１０の各々にクロック信号および読み書き制御回路からの出力信号に基づいて対応するメモリアレイ１０を活性化するように選択する選択回路１４，１５とを含む。
【０１１９】
好ましくは、図２、図３を参照して、読み書き制御回路１１２は、書込コマンドが入力されるとカウント数が加算され、読出コマンドが入力されるとカウント数が減算されるカウンタ１１４と、カウンタ１１４のカウント数に基づき、対応するメモリアレイに有効データが存在するかどうかを判定する判定回路１１６とを含む。
【０１２０】
好ましくは、図７を参照して、選択回路１４は、読み書き制御回路１１２からの出力信号およびクロック信号を受ける論理ゲート１４Ａ，１４Ｂ，…，を含み、論理ゲート１４Ａ，１４Ｂ，…，は、出力信号が活性化されているとき、クロック信号を対応するメモリアレイ１０に供給する。
【０１２１】
実施の形態２の半導体装置は、図１１、図１２を参照して、実施の形態１の半導体装置の構成に加えて、複数のメモリアレイ１０にデータを書込むために入力されるコマンドのコマンド間隔に基づいて帯域を判定する帯域判定回路４６と、帯域判定回路４６の出力に応じて、データを分散して同時に書込みができるメモリアレイ１０を決定する制御回路４２とを含む。
【０１２２】
また、実施の形態１の変形例１の半導体装置は、図２、図９を参照して、複数のメモリアレイ１０を備え、複数のメモリアレイ１０の各々は、複数のメモリセルを含む。複数のメモリアレイ１０にそれぞれ対応して設けられる複数のメモリアレイ制御回路１２をさらに備え、複数のメモリアレイ制御回路１２のうち第１のメモリアレイ制御回路１２Ａは、クロック信号と固定電位信号とを受ける第１の論理ゲート１４Ａを含み、残余の複数のメモリアレイ制御回路（１２Ｂ〜１２Ｄ）の各々は、対応するメモリアレイ（１０Ｂ〜１０Ｄ）への読み書き動作を制御する読み書き制御回路１１２Ｂ〜１１２Ｄと、読み書き制御回路１１２Ｂ〜１１２Ｄからの出力信号およびクロック信号を受ける第２の論理ゲート１４Ｂ〜１４Ｄとを含み、第２の論理ゲート１４Ｂ〜１４Ｄは、出力信号が活性化されているとき、クロック信号を残余の対応するメモリアレイ１０Ｂ〜１０Ｄに供給する。
【０１２３】
実施の形態１の変形例２の半導体装置は、図２、図１０を参照して、複数のメモリアレイ１０を備え、複数のメモリアレイ１０の各々には優先順位が設定され、複数のメモリアレイ１０の各々は、複数のメモリセルを含む。複数のメモリアレイ１０にそれぞれ対応して設けられる複数のメモリアレイ制御回路１２をさらに備え、複数のメモリアレイ制御回路１２の各々は、対応するメモリアレイ１０への読み書き動作を制御する読み書き制御回路１１２と、対応するメモリアレイを制御する論理ゲート（選択回路１５）とを含み、複数のメモリアレイ制御回路１２のうちメモリアレイ制御回路１２Ｂに含まれる論理ゲート（ＡＮＤ回路１４Ｂ，ＯＲ回路１６Ｂ）は、メモリアレイ制御回路１２Ｂに含まれる読み書き制御回路１１２Ｂからの出力信号およびメモリアレイ制御回路１２Ｂに対応するメモリアレイ１０Ｂより優先順位が１つ高いメモリアレイ１０Ａに対応する読み書き制御回路１１２Ａからの信号を受ける。
【０１２４】
さらに、各実施の形態の半導体装置は、図１、図５、図６を参照して、メモリ制御部２００をさらに備える。メモリ制御部２００は、読出完了した読出アドレスＡ０を管理するアドレス管理回路２０１を含み、アドレス管理回路２０１は、複数のメモリアレイ１０にそれぞれ対応する複数のバッファメモリ２０４と、読出アドレスＡ０を格納するバッファメモリ２０４を特定するバッファメモリ特定回路２０２と、バッファメモリ２０４を順次参照して書込動作のときに必要な書込アドレスＡ１を判定する書込アドレス判定回路２０６とを有する。
【０１２５】
本実施の形態によれば、メモリアレイに対して有効データの存在に基づいてアクティブ／非アクティブ状態に制御し、非アクティブ状態のメモリアレイにはクロック信号あるいは電源を供給しないことにより消費電力を削減することができる。
【０１２６】
以上説明したように、各実施の形態を組み合わせてもよい。組み合わせることにより、消費電力の低減およびメモリを効率的に使用することができる。
【０１２７】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１２８】
１  半導体装置、２  制御信号端子、３  アドレス端子、４  クロック端子、５  データ出力端子、６  データ入力端子、１０  メモリアレイ、１２  メモリアレイ制御回路、１４〜１６  選択回路、２０  リードアンプ＆ライトドライバ回路、２２  クロックバッファ、２４  制御信号バッファ、２６  アドレスバッファ、２８  入力バッファ、２９  出力バッファ、３０  レギュレータ、４０  ＰＬＬ回路、４２  制御回路、４４  パラレル−シリアル変換回路、４６  帯域判定回路、１００，１００Ａ〜Ｃ，１００Ｘ  メモリ、２０４Ａ〜２０４Ｄ  ＦＩＦＯメモリ、１１２Ａ〜１１２Ｄ  読み書き制御回路、１１４  カウンタ、１１６  判定回路、２００  メモリ制御部、２０１  アドレス管理回路、２０２  バッファメモリ特定回路、２０６  書込アドレス判定回路。
【図１】
0005782330.tif 000002
【図２】
0005782330.tif 000003
【図３】
0005782330.tif 000004
【図４】
0005782330.tif 000005
【図５】
0005782330.tif 000006
【図６】
0005782330.tif 000007
【図７】
0005782330.tif 000008
【図８】
0005782330.tif 000009
【図９】
0005782330.tif 000010
【図１０】
0005782330.tif 000011
【図１１】
0005782330.tif 000012
【図１２】
0005782330.tif 000013
【図１３】
0005782330.tif 000014
【図１４】
0005782330.tif 000015
【図１５】
0005782330.tif 000016
【図１６】
0005782330.tif 000017