(57)【要約】【課題】書込み時には、入力されるデータ量の予測に基づいて、読出し時には、未読み出しのため読出される可能性があるかに基づいて、省電力化を図ることができる半導体装置を提供する。【解決手段】メモリアレイ１０Ａ〜１０Ｎは、独立して電源電圧およびクロックの供給と供給停止が制御可能である。制御回路４２は、データの書込み時には、予測した帯域に応じた個数のメモリアレイを電源電圧およびクロックが供給されるアクティブモードに設定し、データの読出し時には、未読出しのデータを記憶しているメモリアレイをアクティブモードに設定する。【選択図】図１
2014081672.tif 000002
【特許請求の範囲】
【請求項１】
各々が、独立して電源電圧およびクロックの供給と供給停止が制御可能である複数のメモリアレイと、
前記複数のメモリアレイにデータを書込むために入力されるコマンドのコマンド間隔に基づいて帯域を予測する帯域予測部と、
データの書込み時には、前記予測した帯域に応じた個数のメモリアレイを前記電源電圧およびクロックが供給されるアクティブモードに設定し、
データの読出し時には、未読出しのデータを記憶しているメモリアレイをアクティブモードに設定する制御回路とを備えた、半導体装置。
【請求項２】
前記複数のメモリアレイに書込みする外部データを入力する入力部と、
前記入力部と前記複数のメモリアレイとの間に設けられ、前記外部データを一時的に格納する記憶部とを有する、請求項１記載の半導体装置。
【請求項３】
前記複数のメモリアレイは、順位が定められ、
前記制御回路は、順位が高いメモリアレイから前記個数分のメモリアレイをアクティブモードに設定する、請求項２記載の半導体装置。
【請求項４】
前記制御回路は、アクティブモードに設定しないメモリアレイのうち、順位が最も高いメモリアレイを第１スタンバイモードに設定し、残りのメモリアレイを第２スタンバイモードに設定し、
前記制御回路は、第１スタンバイモードに設定されたメモリアレイには、クロックが供給されず、かつ電源電圧が供給され、第２スタンバイモードに設定されたメモリアレイには、クロックおよび電源電圧が供給されないように制御する、請求項３記載の半導体装置。
【請求項５】
前記制御回路は、データの書込み時には、前記予測した帯域に係わらず、未読出しのデータを記憶しているメモリアレイをアクティブモードに設定する、請求項４記載の半導体装置。
【請求項６】
前記帯域予測部は、タイムスロット単位で帯域を判定し、
前記制御回路は、タイムスロット単位でメモリアレイの動作モードを設定する、請求項４記載の半導体装置。
【請求項７】
前記制御回路は、前記記憶部の蓄積量が第１の閾値未満となる場合には、前記タイムスロットの途中で前記アクティブモードに設定したメモリアレイをスタンバイモードに設定する、請求項６記載の半導体装置。
【請求項８】
前記制御回路は、前記記憶部の蓄積量が第２の閾値以上となる場合には、前記タイムスロットの途中でアクティブモードに設定するメモリアレイの数を増加させる、請求項６記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置に関し、特に消費電力を削減するメモリを含む半導体装置に関する。
【背景技術】
【０００２】
近年、ネットワークの高速化が進んでおり、ルータ、スイッチなどの通信端末も高速化に対応する必要がある。一般に、このルータやスイッチなどの通信端末においては、通信データレートの帯域の高低差が激しく、帯域が低いときでもパケットバッファのようなメモリは常にアクティブ状態（活性化）されている。
【０００３】
また、ネットワークの高速化に伴ってネットワークプロセッサおよびパケットバッファのデータ転送レートが上がり、パケットバッファとして使用されるメモリの容量もより大きなものが必要となる。このようにネットワークの高速化に対応するためには高速で大容量のメモリが必要になる。
【０００４】
また、複数のメモリを１つのメモリとみなしてアクセスするインターリーブアクセスを採用するメモリシステムの中には、メモリごとに省電力制御を実行するものが知られている。
【０００５】
たとえば、特開２００８−１５２６８７号公報（特許文献１）のメモリコントーラ（１０）は、インターリーブアクセス手段（７ａ）と非インターリーブアクセス手段（７ｂ）を備える。領域管理手段（１３）は、インターリーブアクセス領域と非インターリーブアクセス領域を管理する。領域管理手段（１３）は、メモリアクセス要求における読み出しまたは書き込みアドレスによって、インターリーブアクセスと、非インターリーブアクセスを、動的に切り替える。
【０００６】
これによって、メモリアクセス要求に対する最小アクセス単位を変更できるとともに、未使用のメモリに対して個別に省電力制御を行うことができる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−１５２６８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特開２００８−１５２６８７号公報（特許文献１）に開示される発明では、データの読み出し時および書込み時において、インターリーブアクセスか、非インターリーブアクセスかは、論理アドレスによって決められる。書込み時には、入力されるデータ量の予測に基づいて、読出し時には、未読み出しのため読出される可能性があるかに基づいて、省電力化を図ることは記載されていない。
【０００９】
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかであろう。
【課題を解決するための手段】
【００１０】
本発明の一実施形態の半導体装置は、各々が、独立して電源電圧およびクロックの供給と供給停止が制御可能である複数のメモリアレイを備える。また、この半導体装置は、データの書込み時には、予測した帯域に応じた個数のメモリアレイを電源電圧およびクロックが供給されるアクティブモードに設定し、データの読出し時には、未読出しのデータを記憶しているメモリアレイをアクティブモードに設定する制御回路を備える。
【発明の効果】
【００１１】
本発明の一実施形態によれば、書込み時には、入力されるデータ量の予測に基づいて、読出し時には、未読み出しのため読出される可能性があるかに基づいて、省電力化を図ることができる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施形態の半導体装置の構成を表わす図である。
【図２】第２の実施形態の半導体装置の構成を示す表わす図である。
【図３】本発明の実施形態の半導体装置の動作モードを表わす図である。
【図４】読み書き制御回路の構成の一例を示す図である。
【図５】カウンタの動作を説明するためのフローチャートである。
【図６】本発明の実施の形態の外部データの帯域が高い場合の動作を説明するためのタイミングチャートである。
【図７】本発明の実施の形態の外部データの帯域が低い場合の動作を説明するためのタイミングチャートである。
【図８】本発明の実施の形態のＦＩＦＯメモリの動作を説明するための図である。
【図９】第２の実施形態の書込み時のモード設定動作の一例を示す図である。
【図１０】第３の実施形態の書込み時のモード設定動作の一例を示す図である。
【図１１】第４の実施形態の書込み時のモード設定動作の一例を示す図である。
【発明を実施するための形態】
【００１３】
以下、本発明について図面を参照して詳しく説明する。なお、図中同一又は相当部分には同一の符号を付してその説明は繰返さない。
【００１４】
［第１の実施形態］
図１は、第１の実施形態の半導体装置の構成を表わす図である。
【００１５】
図１を参照して、この半導体装置９１は、帯域予測部４６と、制御回路４２と、メモリアレイ１０Ａ〜１０Ｎとを備える。
【００１６】
メモリアレイ１０Ａ〜１０Ｎは、それぞれ、独立して電源電圧、およびクロックの供給と供給停止が制御可能である。以下では、メモリアレイ１０Ａ〜１０Ｎを総称して、メモリアレイ１０と記載する。
【００１７】
帯域予測部４６は、メモリアレイ１０Ａ〜１０Ｎにデータを書込むために入力されるコマンドのコマンド間隔に基づいて帯域を予測する。
【００１８】
制御回路４２は、データの書込み時には、予測した帯域に応じた個数のメモリアレイ１０をクロックおよび電源電圧が供給されるアクティブモードＡに設定する。制御回路４２は、データの読出し時には、未読出しのデータを記憶しているメモリアレイ１０をアクティブモードＡに設定する。
【００１９】
以上のように、本実施の形態によれば、書込み時には入力されるデータ量の予測に基づいて、読出し時には、未読み出しのため読出される可能性がある有効データの存否に基づいて、個々のメモリアレイの動作モードを独立に設定することによって、省電力化を図ることができる。
【００２０】
［第２の実施形態］
図２は、第２の実施形態の半導体装置の構成を示す表わす図である。
【００２１】
図２を参照して、半導体装置１００は、クロック端子４と、制御信号端子２と、アドレス端子３と、データ入力端子６と、データ出力端子５とを含む。また、半導体装置１００は、クロックバッファ２２と、ＰＬＬ回路４０と、制御信号バッファ２４と、アドレスバッファ２６と、データ入力信号Ｄに関する入力バッファ２８と、データ出力信号Ｑに関する出力バッファ２９とを含む。
【００２２】
クロック端子４は、クロック信号ＣＬＫを受け、クロックバッファ２２にクロック信号ＣＬＫが与えられる。
【００２３】
制御信号端子２は、メモリ制御に必要な信号であるコマンド信号ＣＯＭを受ける。たとえば、チップセレクト信号／ＣＳ、ロウアドレスストローブ信号／ＲＡＳ、コラムアドレスストローブ信号／ＣＡＳ、ライトイネーブル信号／ＷＥおよびライトマスク信号ＤＭのコマンド制御信号を受けることもできる。
【００２４】
アドレス端子３は、アドレス信号ＡＤＤを受ける。たとえば、アドレス信号ＡＤＤのほかにバンクアドレス信号ＢＡ０，ＢＡ１を受けることもできる。
【００２５】
クロックバッファ２２は、クロック信号ＣＬＫを受けてクロック信号ＣＬＫ１を発生し、その発生したクロック信号ＣＬＫ１はＰＬＬ回路４０へ与えられる。
【００２６】
ＰＬＬ回路４０は、入力信号としてクロック信号ＣＬＫ１を受け、この入力信号と同期する高周波数のクロック信号ＣＬＫ２を生成する。クロック信号ＣＬＫ２は、制御信号バッファ２４、アドレスバッファ２６、入力バッファ２８、出力バッファ２９、帯域予測部４６、および制御回路４２へ与えられる。
【００２７】
制御信号バッファ２４は、ＰＬＬ回路４０から受けるクロック信号ＣＬＫ２に同期して、チップセレクト信号／ＣＳ、ロウアドレスストローブ信号／ＲＡＳ、コラムアドレスストローブ信号／ＣＡＳおよびライトイネーブル信号／ＷＥを取込んでラッチし、それぞれに対応する各内部制御信号を制御回路４２へ出力する。
【００２８】
アドレスバッファ２６は、クロックバッファ２２から受けるクロック信号ＣＬＫ２に同期して、アドレス信号ＡＤＤを取込んでラッチし、内部アドレス信号を発生して制御回路４２へ出力する。
【００２９】
データ入力端子６およびデータ出力端子５は、半導体装置１００において読み書きされるデータを外部とやり取りを行う。データ入力端子６は、データ書込時は外部からデータＤｊ（たとえばｊは０〜７の自然数）を受け、データ出力端子５は、データ読出時はデータＱｊ（たとえばｊは０〜７の自然数）を外部へ出力する。入力バッファ２８および出力バッファ２９は、ＰＬＬ回路４０によって生成されるクロック信号ＣＬＫ２に同期して動作する。
【００３０】
半導体装置１００は、さらに、パラレル−シリアル変換回路４４と、帯域予測部４６と、制御回路４２と、メモリアレイ１０Ａ〜１０Ｎと、メモリアレイ制御回路１２Ａ〜１２Ｎとを含む。メモリアレイ制御回路１２Ａ〜１２Ｎは、読み書き制御回路１１２Ａ〜１１２Ｎを備える。
【００３１】
半導体装置１００は、さらに、リードアンプ２０Ａ〜２０Ｎと、ライトドライバ２１Ａ〜２１Ｎと、レギュレータ３０Ａ〜３０Ｎと、クロック選択回路３１Ａ〜３１Ｎとを備える。以下では、リードアンプ２０Ａ〜２０Ｎを総称してリードアンプ２０と記載し、ライトドライバ２１Ａ〜２１Ｎを総称してライトドライバ２１Ａと記載する。また、レギュレータ３０Ａ〜３０Ｎを総称してレギュレータ３０と記載し、クロック選択回路３１Ａ〜３１Ｎを総称してクロック選択回路３１と記載する。
【００３２】
半導体装置１００は、さらに、入力バッファ２８とパラレル−シリアル変換回路４４との間に接続されるＦＩＦＯメモリ３２を備える。
【００３３】
メモリアレイ１０Ａ〜１０Ｎは、それぞれ、独立して電源電圧、およびクロックの供給と供給停止が制御可能である。
【００３４】
読み書き制御回路１１２Ａ〜１１２Ｎは、メモリアレイ１０Ａ〜１０Ｎに、書き込まれ、かつ未だ読み出されていないデータ（以下、有効データと呼ぶ）が存在するかどうかを判定する。
【００３５】
リードアンプ２０Ａ〜２０Ｎは、メモリアレイ１０Ａ〜１０Ｎからデータを読み出す。読み出されたデータは出力バッファ２９およびデータ出力端子５を通じて外部へ出力される。
【００３６】
ライトドライバ２１Ａ〜２１Ｎは、パラレル−シリアル変換回路４４から供給されたデータをメモリアレイ１０Ａ〜１０Ｎへ書き込む。
【００３７】
レギュレータ３０Ａ〜３０Ｎは、読み出し時および書き込み時において、制御回路４２によって活性化された場合、外部電源電圧ＶＣＣから内部電源電圧を生成して、メモリアレイ１０Ａ〜１０Ｎに内部電源電圧を供給する。
【００３８】
クロック選択回路３１Ａ〜３１Ｎは、読み出し時および書き込み時において、制御回路４２によって活性化された場合、ＰＬＬ回路４０で生成されたクロックＣＬＫ２をメモリアレイ１０Ａ〜１０Ｎに供給する。
【００３９】
帯域予測部４６は、読出しコマンドや書込みコマンドの信号を制御信号端子２に受け、制御信号バッファ２４からの出力信号と、クロック信号ＣＬＫ２を受ける。帯域予測部４６は、外部から入力されるコマンド間隔に基づきコマンド信号の帯域が予測する。具体的には、短時間に書込みコマンドが発生した場合などは、帯域が高いと予測される。逆に、コマンド間隔が長い場合などは、帯域は低いと予測される。
【００４０】
ＦＩＦＯメモリ３２は、たとえば、複数のメモリセルを有し、外部データは書込みポインタに従って順番にこのメモリセルに書込まれる。この書込みポインタが最後まで行けば最初に戻る。また、読出しは、読出しポインタに従って、読出命令があれば読出しを行う
。制御回路４２は、書込みポインタあるいは読出しポインタの位置を確認することにより、ＦＩＦＯメモリ３２の内部にデータが格納されているか否かを判定する。ここで、ＦＩＦＯ３０メモリ内部にデータが格納されていなければ、読出命令は停止される。
【００４１】
制御回路４２は、データ書込み時において、帯域予測部４６によって予測された帯域に基づいて、メモリアレイ１０Ａ〜１０Ｎの動作モードを設定する。
【００４２】
制御回路４２は、データ読み出し時において、読み書き制御回路１１２Ａ〜１１２Ｎによってメモリアレイ１０Ａ〜１０Ｎに有効データが存在すると判定された場合には、メモリアレイ１０Ａ〜１０ＮをアクティブモードＡに設定する。
【００４３】
制御回路４２は、設定した動作モードに応じて、リードアンプ２０Ａ〜２０Ｎと、ライトドライバ２１Ａ〜２１Ｎと、レギュレータ３０Ａ〜３０Ｎと、クロック選択回路３１Ａ〜３１Ｎと、パラレル−シリアル変換回路４４を制御する。
【００４４】
（動作モード）
図３は、本発明の実施形態の半導体装置の動作モードを表わす図である。
【００４５】
制御回路４２は、アクティブモードＡに設定したメモリアレイ１０に対して、電源電圧およびクロックが供給されるようにレギュレータ３０およびクロック選択回路３１を制御する。
【００４６】
制御回路４２は、第１スタンバイモードＳ１に設定したメモリアレイ１０に対して、電源電圧が供給され、かつクロックが供給されないようにレギュレータ３０およびクロック選択回路３１を制御する。
【００４７】
制御回路４２は、第２スタンバイモードＳ２に設定したメモリアレイ１０に対して、電源電圧およびクロックが供給されないようにレギュレータ３０およびクロック選択回路３１を制御する。
【００４８】
アクティブモードＡから第１スタンバイモードＳ１への切り替えおよび第２スタンバイモードＳ２への切り替えは、短時間で行なわれる。また、第１スタンバイモードＳ１から第２スタンバイモードＳ２への切り替えも短時間で行なわれる。第１スタンバイモードＳ１からアクティブモードＡへの切り替えも短時間で行なわれる。
【００４９】
一方、第２スタンバイモードＳ２から第１スタンバイモードＳ１への切り替えおよびアクティブモードＡへの切り替えは、時間を要する。これは、レギュレータ３０を活性化させて、メモリアレイ１０へ電源電圧を供給するのに時間を要するからである。
【００５０】
（読み書き制御回路の構成）
図４は、読み書き制御回路の構成の一例を示す図である。
【００５１】
図４を参照して、読み書き制御回路１１２Ａは、カウンタ１１４Ａと、判定回路１１６Ａとを含む。
【００５２】
カウンタ１１４Ａは、書込みコマンド信号あるいは読出しコマンド信号を入力信号として受ける。カウンタ１１４Ａは、書込みコマンド信号が与えられるとカウント数を１つ加算させる。一方、読出しコマンド信号が与えられるとカウント数を１つ減算させる。カウンタ１１４Ａは、上記カウンタ数を加減算して、判定回路１１６Ａへ出力する。
【００５３】
判定回路１１６Ａは、出力されたカウント信号に基づいて、メモリアレイ１０Ａに有効データが存在する場合には信号レベルがＨレベルの信号が出力される。
【００５４】
たとえば有効データが存在する場合とは、上記カウンタ数が０よりも大きい場合のことを示す。すなわち、書込まれたデータのほうが読出されたデータよりも多いため、対応するメモリアレイにまだ有効データが格納されており、読出される可能性があると判定される。この場合には、判定回路１１６ＡはＨレベルの出力信号を出力する。
【００５５】
なお、上記カウンタ数が０より小さい場合には、判定回路１１６Ａによって有効データではないと判定され、判定回路１１６ＡはＬレベルの出力信号を出力する。
【００５６】
読み書き制御回路１１２Ｂ〜１１２Ｎについても同様の構成のため、説明は繰返さない。
【００５７】
図５は、カウンタの動作を説明するためのフローチャートである。
図５を参照して、ユーザによりメモリセルへの読出し動作あるいは書込み動作をするなどされると、ステップＳ１１において、入力されたコマンドが、メモリセルから読出し動作を示す読出しコマンドか、メモリセルへデータを書込む動作を示す書込みコマンドか、上記２つの以外のコマンドかが判断される。
【００５８】
入力されたコマンドが読出しコマンドであると判断されれば、ステップＳ１３に処理が進む。ステップＳ１３において、カウンタ１１４Ａのカウントが１つ減算（デクリメント）され、処理がステップＳ１１に戻る。
【００５９】
また、入力されたコマンドが書込みコマンドであると判断されれば、ステップＳ１２に処理が進む。ステップＳ１２において、カウンタ１１４Ａのカウントが１つ加算（インクリメント）され、処理がステップＳ１１に戻る。
【００６０】
また、それ以外のコマンドが入力されたと判断されれば、カウンタ１１４Ａのカウントは変更されず、ステップＳ１１に処理が戻る。
【００６１】
図４、図５を用いて説明したが、上述した読み書き制御回路１１２Ａを用いることにより、メモリアレイを効率的に活性化状態にするか否かを判断することができる。なお、これらの動作について、読み書き制御回路１１２Ａに含まれるカウンタ１１４Ａについて説明したが、これに限らず、読み書き制御回路１１２Ｂ〜１１２Ｎに含まれるカウンタ１１４Ｂ〜１１４Ｎについても同様な動作が行われる。
【００６２】
（外部データの帯域が高い場合の書込み動作）
図６は、本発明の実施の形態の外部データの帯域が高い場合の動作を説明するためのタイミングチャートである。
【００６３】
ここで、外部データの帯域は、内部のメモリの帯域実力の範囲内である場合について説明する。図６を参照して、まず、時間Ｔ１〜Ｔ３において、制御信号端子２から書込みコマンドＷが連続して入力され、各書込みコマンドＷにそれぞれ対応する書込みデータＤａ，Ｄｂ，Ｄｃがデータ入力端子６から入力されて、ＦＩＦＯメモリ３２に蓄積される。
【００６４】
このように短時間に連続して複数の書込みコマンド信号が入力されているため、帯域予測部４６は、帯域が高いと予測し、制御回路４２に予測した帯域を通知する。
【００６５】
制御回路４２は、メモリアレイ１０Ａ〜１０Ｄの各々をアクティブモードＡに設定する。さらに、制御回路４２は、レギュレータ３０Ａ〜３０Ｄを活性化させて、メモリアレイ１０Ａ〜１０Ｄに電源電圧を供給させる。また、制御回路４２は、クロック選択回路３１Ａ〜３１Ｄをオンにして、メモリアレイ１０Ａ〜１０ＤにクロックＣＬＫ２を供給させる。
【００６６】
また、制御回路４２は、メモリアレイ１０Ａ〜１０ＤをアクティブモードＡに設定したことをパラレル−シリアル変換回路４４に通知し、かつライトドライバ２１Ａ〜２１Ｄを活性化させる。
【００６７】
パラレル−シリアル変換回路４４は、メモリアレイ１０Ａ〜１０Ｄにデータが入力されるように、書込みデータをパラレル−シリアル変換してライトドライバ２１Ａ〜２１Ｄに出力する。ライトドライバ２１Ａ〜２１Ｄは、供給された書込みデータをメモリアレイ１０Ａ〜１０Ｄに書き込む。
【００６８】
具体的には、時間Ｔ１において、書込みコマンドＷとそのデータＤａがそれぞれ制御信号端子２およびデータ入力端子６に与えられる。続けて、時間Ｔ２、時間Ｔ３において同様の動作が行われる。
【００６９】
このような短時間に連続して書込みコマンドＷが入力されたときには、メモリアレイ１０Ａ〜１０Ｄにクロックおよび電源電圧が供給され、メモリアレイ１０Ａ〜１０Ｄの全てがアクティブモードＡに設定される。これによってデータをメモリアレイ１０Ａ〜１０Ｄに均等に分散して書込むことができ、書込み時間の短縮化が図られる。
【００７０】
すなわち、時間Ｔ１において、入力されたデータＤａを所定の時間で書込ませるためには、メモリアレイ１０Ａ〜１０Ｄが必要と判定され、データＤａを均等分割したデータＤａ０〜Ｄａ３をそれぞれメモリアレイ１０Ａ〜１０Ｄに分散書込みが行われる。続けて、時間Ｔ２、時間Ｔ３において同様の動作が行われる。
【００７１】
（外部データの帯域が低い場合の書込み動作）
図７は、本発明の実施の形態の外部データの帯域が低い場合の動作を説明するためのタイミングチャートである。
【００７２】
ここで、外部データの帯域は、内部のメモリの帯域実力の範囲内である場合について説明する。図７を参照して、時間Ｔ１、Ｔ５、Ｔ９において、制御信号端子２から書込みコマンドＷが入力され、各書込みコマンドＷにそれぞれ対応する書込みデータＤａ，Ｄｂ，Ｄｃがデータ入力端子６から入力される。
【００７３】
このように連続して複数の書込みコマンド信号が入力されるが、次のコマンドが入力されるまでの時間（コマンド間隔）に各データがメモリセルに書込むことができる程度の時間が与えられるため、帯域予測部４６は、帯域が低いと予測し、制御回路４２に予測した帯域を通知する。
【００７４】
制御回路４２は、予測した帯域が低いので、メモリアレイ１０ＡのみをアクティブモードＡに設定する。さらに、制御回路４２は、レギュレータ３０Ａのみを活性化させて、メモリアレイ１０Ａに電源電圧を供給させる。また、制御回路４２は、クロック選択回路３１Ａのみをオンにして、メモリアレイ１０ＡにクロックＣＬＫ２を供給させる。
【００７５】
また、制御回路４２は、メモリアレイ１０ＡのみをアクティブモードＡに設定したことをパラレル−シリアル変換回路４４に通知し、かつライトドライバ２１Ａのみを活性化させる。
【００７６】
制御回路４２は、メモリアレイ１０Ｂ〜１０Ｄについては、第１スタンバイモードＳ１または第２スタンバイモードＳ２に設定する。制御回路４２は、クロック選択回路３１Ｂ〜３２Ｄをオフにして、第１スタンバイモードＳ１または第２スタンバイモードＳ２に設定されたメモリアレイ１０Ｂ〜１０ＤにクロックＣＬＫ２を供給させない。
【００７７】
制御回路４２は、第１スタンバイモードＳ１に設定されたメモリアレイ１０に対応するレギュレータ３０を活性化させて、第１スタンバイモードＳ１に設定されたメモリアレイ１０に電源電圧を供給させる。制御回路４２は、第２スタンバイモードＳ２に設定されたメモリアレイ１０に電源電圧を供給させない。
【００７８】
パラレル−シリアル変換回路４４は、メモリアレイ１０Ａにデータが入力されるように、書込みデータをパラレル−シリアル変換してライトドライバ２１Ａに出力する。ライトドライバ２１Ａは、供給された書込みデータをメモリアレイ１０Ａに書き込む。
【００７９】
具体的に、時間Ｔ１において、書込みコマンドＷとそのデータＤａがそれぞれ制御信号端子２およびデータ入力端子６に与えられる。続けて、時間Ｔ２、時間Ｔ３において同様の動作が行われる。
【００８０】
このように書込みコマンドＷとともに書込みデータが連続して入力されるが、コマンド間隔が広く、同時に書込む必要がない場合には、メモリアレイ１０ＡのみがアクティブモードＡに設定され、その他のメモリアレイ１０Ｂ〜１０Ｄについては、クロックが供給されない第１スタンバイモードＳ１、またはクロックおよび電源電圧が供給されない第２スタンバイモードＳ２に設定することで消費電力を削減することができる。
【００８１】
すなわち、時間Ｔ１において、入力されたデータＤａを所定の時間で書込ませるために、メモリアレイ１０Ａで十分と判定され、他のメモリアレイ１０Ｂ〜１０Ｄには書込みが行われず、データＤａを分割したデータＤａ０〜Ｄａ３をメモリアレイ１０Ａに連続書込みされる。続けて、時間Ｔ２、時間Ｔ３において同様の動作が行われる。
【００８２】
（ＦＩＦＯメモリの動作）
図８は、本発明の実施の形態のＦＩＦＯメモリの動作を説明するための図である。
【００８３】
図８を参照して、外部からメモリアレイに書込まれるデータがデータ入力端子６に入力され、ＦＩＦＯメモリ３２に格納される。この格納されたデータは、入力順に一時的に格納され、入力順に出力される。ここで、外部データの帯域が内部のメモリの帯域実力の範囲内であるときは、外部データは、ＦＩＦＯメモリ３２を格納されるが、そのデータは即座に出力される。一方、外部データの帯域が内部のメモリの帯域実力の範囲外であるときは、外部データのうちのメモリの帯域実力の範囲内のデータは即座に出力され、外部データのうちのメモリの帯域実力の範囲外のデータがＦＩＦＯメモリ３２に保持される。この後者のデータは、次のクロック信号に応じて、内部のメモリの帯域実力ＦＩＦＯメモリ３２から出力される。
【００８４】
このように、本実施の形態にＦＩＦＯメモリ３２を設けることにより、外部データの帯域が内部のメモリの帯域実力の範囲外であっても、書込みミスがなくメモリセルに書込むことができる。
【００８５】
（書き込み時のモード設定）
第２の実施形態では、制御回路４２は、データの書込み時には、予測帯域に基づいて、動作モードを設定する。
【００８６】
図９は、第２の実施形態の書込み時のモード設定動作の一例を示す図である。
以下では、メモリアレイ１０Ａ〜１０ＦをメモリアレイＡ〜Ｆと略して説明する。
【００８７】
図９を参照して、横軸に時間が示され、縦軸に帯域およびメモリアレイＡ〜Ｆの動作モードが示されている。タイムスロットごとに帯域予測およびモード設定が行なわれる。波形Ｗ１は、入力される外部データの帯域を示す。
【００８８】
帯域予測部４６は、タイムスロットごとに帯域を予測する。制御回路４２は、予測した帯域に応じて、タイムスロットごとにメモリアレイＡ〜Ｆの動作モードを設定する。制御回路４２は、予測した帯域が大きいほど、外部データの処理に多くのメモリアレイが必要なため、多くのメモリアレイをアクティブモードＡに設定する。どのメモリアレイを先にアクティブモードＡに設定するかの順序が定められている。
【００８９】
制御回路４２は、メモリアレイＡ→Ｂ→Ｃ→Ｄ→Ｅ→Ｆの順にアクティブモードＡに設定する。
【００９０】
タイムスロットＴＳ１において、帯域予測部４６は、外部データの帯域を帯域Ｐ１と予測する。制御回路４２は、予測帯域Ｐ１でデータが入力されることを想定して、メモリアレイＡ〜ＣをアクティブモードＡに設定し、メモリアレイＤを第１スタンバイモードＳ１に設定し、メモリアレイＥ，Ｆを第２スタンバイモードＳ２に設定する。
【００９１】
タイムスロットＴＳ２において、帯域予測部４６は、外部データの帯域を帯域Ｐ２と予測する。制御回路４２は、予測帯域Ｐ２でデータが入力されることを想定して、メモリアレイＡ〜ＤをアクティブモードＡに設定し、メモリアレイＥを第１スタンバイモードＳ１に設定し、メモリアレイＦを第２スタンバイモードＳ２に設定する。
【００９２】
タイムスロットＴＳ３において、帯域予測部４６は、外部データの帯域を帯域Ｐ３と予測する。制御回路４２は、予測帯域Ｐ３でデータが入力されることを想定して、メモリアレイＡ〜ＤをアクティブモードＡに設定し、メモリアレイＥを第１スタンバイモードＳ１に設定し、メモリアレイＦを第２スタンバイモードＳ２に設定する。
【００９３】
タイムスロットＴＳ４において、帯域予測部４６は、外部データの帯域を帯域Ｐ４と予測する。制御回路４２は、予測帯域Ｐ４でデータが入力されることを想定して、メモリアレイＡ〜ＣをアクティブモードＡに設定し、メモリアレイＤを第１スタンバイモードＳ１に設定し、メモリアレイＥ，Ｆを第２スタンバイモードＳ２に設定する。
【００９４】
タイムスロットＴＳ５において、帯域予測部４６は、外部データの帯域を帯域Ｐ５と予測する。制御回路４２は、予測帯域Ｐ５でデータが入力されることを想定して、メモリアレイＡ〜ＣをアクティブモードＡに設定し、メモリアレイＤを第１スタンバイモードＳ１に設定し、メモリアレイＥ，Ｆを第２スタンバイモードＳ２に設定する。
【００９５】
タイムスロットＴＳ６において、帯域予測部４６は、外部データの帯域を帯域Ｐ６と予測する。制御回路４２は、予測帯域Ｐ６でデータが入力されることを想定して、メモリアレイＡ〜ＤをアクティブモードＡに設定し、メモリアレイＥを第１スタンバイモードＳ１に設定し、メモリアレイＦを第２スタンバイモードＳ２に設定する。
【００９６】
タイムスロットＴＳ７において、帯域予測部４６は、外部データの帯域を帯域Ｐ７と予測する。制御回路４２は、予測帯域Ｐ７でデータが入力されることを想定して、メモリアレイＡ〜ＥをアクティブモードＡに設定し、メモリアレイＦを第１スタンバイモードＳ１に設定する。
【００９７】
以上のように、本実施の形態によれば、第１の実施形態と同様に、書込み時には入力されるデータ量の予測に基づいて、読出し時には、未読み出しのため読出される可能性がある有効データの存否に基づいて、個々のメモリアレイの動作モードを独立に設定することによって、省電力化を図ることができる。
【００９８】
［第３の実施形態］
第３の実施形態では、制御回路４２は、データの書込み時には、予測帯域と有効データの存否に基づいて、動作モードを設定する。すなわち、制御回路４２は、データの書込み時には、予測した帯域に係わらず、有効データを記憶しているメモリアレイをアクティブモードＡに設定する。これは、有効データを記憶しているメモリアレイをアクティブモードＡに設定する理由は、次の読み出し要求があったときに、迅速に読出しができるようにするためである。また、メモリアレイがＤＲＡＭ（Dynamic Random Access Memory）などのリフレッシュ動作が必要なメモリの場合には、有効データを記憶している場合にはアクティブモードＡに設定しておく必要があるからである。
【００９９】
図１０は、第３の実施形態の書込み時のモード設定動作の一例を示す図である。
図１０を参照して、横軸に時間が示され、縦軸に帯域およびメモリアレイＡ〜Ｆの動作モードが示されている。タイムスロットごとに帯域予測およびモード設定が行なわれる。波形Ｗ１は、入力される外部データの帯域を示す。
【０１００】
帯域予測部４６は、タイムスロットごとに帯域を予測する。制御回路４２は、予測した帯域に応じて、メモリアレイＡ〜Ｆの動作モードを設定する。制御回路４２は、予測した帯域が大きいほど、外部データの処理に多くのメモリアレイが必要なため、多くのメモリアレイをアクティブモードＡに設定する。どのメモリアレイを先にアクティブモードＡに設定するかの順序が定められている。
【０１０１】
制御回路４２は、メモリアレイＡ→Ｂ→Ｃ→Ｄ→Ｅ→Ｆの順にアクティブモードＡに設定する。
【０１０２】
タイムスロットＴＳ１において、帯域予測部４６は、外部データの帯域を帯域Ｐ１と予測する。制御回路４２は、予測帯域Ｐ１でデータが入力されることを想定して、メモリアレイＡ〜ＣをアクティブモードＡに設定し、メモリアレイＤを第１スタンバイモードＳ１に設定し、メモリアレイＥ，Ｆを第２スタンバイモードＳ２に設定する。
【０１０３】
タイムスロットＴＳ２において、帯域予測部４６は、外部データの帯域を帯域Ｐ２と予測する。制御回路４２は、予測帯域Ｐ２でデータが入力されることを想定して、メモリアレイＡ〜ＤをアクティブモードＡに設定し、メモリアレイＥを第１スタンバイモードＳ１に設定し、メモリアレイＦを第２スタンバイモードＳ２に設定する。
【０１０４】
タイムスロットＴＳ３において、帯域予測部４６は、外部データの帯域を帯域Ｐ３と予測する。制御回路４２は、予測帯域Ｐ３でデータが入力されることを想定して、メモリアレイＡ〜ＤをアクティブモードＡに設定し、メモリアレイＥを第１スタンバイモードＳ１に設定し、メモリアレイＦを第２スタンバイモードＳ２に設定する。
【０１０５】
タイムスロットＴＳ４において、帯域予測部４６は、外部データの帯域を帯域Ｐ４と予測する。制御回路４２は、予測帯域Ｐ４でデータが入力されることを想定して、メモリアレイＡ〜ＣをアクティブモードＡに設定する。制御回路４２は、第２の実施形態では、帯域予測に基づいて、メモリアレイＤを第１スタンバイモードＳ１に設定した。第３の実施形態では、メモリアレイＤに有効なデータが存在するので、制御回路４２は、予測された帯域に係わらず（予測帯域を無視して）、メモリアレイＤをアクティブモードＡに設定する。メモリアレイＤをアクティブモードＡに設定したのは、有効データが存在するためであって、外部データを書き込むためではない。また、メモリアレイＤに外部データを書き込むと、メモリアレイＤに有効データが増加し、メモリアレイＤをなかなかスタンバイモードに戻すことができない。したがって、制御回路４２は、メモリアレイＤには外部データが書き込まれないようにパラレル−シリアル変換回路４４およびライトドライバ２１Ｄを制御する。制御回路４２は、残りのメモリアレイＥ，Ｆを第２スタンバイモードＳ２に設定する。
【０１０６】
タイムスロットＴＳ５において、帯域予測部４６は、外部データの帯域を帯域Ｐ５と予測する。制御回路４２は、予測帯域Ｐ５でデータが入力されることを想定して、メモリアレイＡ〜ＣをアクティブモードＡに設定する。制御回路４２は、タイムスロットＴＳ４と同様に、メモリアレイＤに有効なデータが存在するので、予測された帯域に係わらず（予測帯域を無視して）、メモリアレイＤをアクティブモードＡに設定する。タイムスロットＴＳ４と同様に、制御回路４２は、メモリアレイＤには外部データが書き込まれないようにパラレル−シリアル変換回路４４およびライトドライバ２１Ｄを制御する。制御回路４２は、残りのメモリアレイＥ，Ｆを第２スタンバイモードＳ２に設定する。
【０１０７】
タイムスロットＴＳ６において、帯域予測部４６は、外部データの帯域を帯域Ｐ６と予測する。制御回路４２は、予測帯域Ｐ６でデータが入力されることを想定して、メモリアレイＡ〜ＤをアクティブモードＡに設定し、メモリアレイＥを第１スタンバイモードＳ１に設定し、メモリアレイＦを第２スタンバイモードＳ２に設定する。
【０１０８】
タイムスロットＴＳ７において、帯域予測部４６は、外部データの帯域を帯域Ｐ７と予測する。制御回路４２は、予測帯域Ｐ７でデータが入力されることを想定して、メモリアレイＡ〜ＥをアクティブモードＡに設定し、メモリアレイＦを第１スタンバイモードＳ１に設定する。
【０１０９】
以上のように、本実施の形態によれば、第１の実施形態および第２の実施形態と同様に、書込み時には入力されるデータ量の予測に基づいて、読出し時には、未読み出しのため読出される可能性がある有効データの存否に基づいて、個々のメモリアレイの動作モードを独立に設定することによって、省電力化を図ることができる。また、本実施の形態によれば、データの書込み時にも有効データが存在するメモリアレイをアクティブモードに設定することができる。
【０１１０】
［第４の実施形態］
帯域予測部４６は、タイムスロットごとに帯域を予測する。制御回路４２は、第２の実施形態と同様に、予測した帯域に応じて、メモリアレイＡ〜Ｆの動作モードを設定する。制御回路４２は、予測した帯域が大きいほど、外部データの処理に多くのメモリアレイが必要なため、多くのメモリアレイをアクティブモードＡに設定する。どのメモリアレイを先にアクティブモードＡに設定するかの順序が定められている。
【０１１１】
第４の実施形態では、制御回路４２は、さらに、タイムスロット内で帯域予測量と実際に入力される外部データ量との間に大きな相違がある場合には、予測帯域に基づいて設定した動作モードを変更する。すなわち、制御回路４２は、帯域予測量よりも実際の外部データ量が極端に少ないため、ＦＩＦＯメモリ３２の蓄積量は、閾値ＴＨ１未満となる場合には、タイムスロットの途中でアクティブモードＡのメモリアレイを第１スタンバイモードＳ１に変更する。制御回路４２は、帯域予測量よりも実際の外部データ量が極端に多いため、ＦＩＦＯメモリ３２の蓄積量は、閾値ＴＨ２を超える場合には、タイムスロットの途中で第１スタンバイモードＳ１のメモリアレイをアクティブモードＡに変更する。
【０１１２】
図１１は、第４の実施形態の書込み時のモード設定動作の一例を示す図である。
図１１を参照して、横軸に時間が示され、縦軸に帯域およびメモリアレイＡ〜Ｆの動作モードが示されている。タイムスロットごとに帯域予測およびモード設定が行なわれる。波形Ｗ１は、入力される外部データの帯域を示す。
【０１１３】
タイムスロットＴＳ１において、帯域予測部４６は、外部データの帯域を帯域Ｐ１と予測する。制御回路４２は、予測帯域Ｐ１でデータが入力されることを想定して、メモリアレイＡ〜ＣをアクティブモードＡに設定し、メモリアレイＤを第１スタンバイモードＳ１に設定し、メモリアレイＥ，Ｆを第２スタンバイモードＳ２に設定する。タイムスロットＴＳ１では、帯域予測量と実際の外部データ量との間に大きな差異がなく、ＦＩＦＯメモリ３２の蓄積量は、閾値ＴＨ１以上かつ閾値ＴＨ２以下を維持するので、制御回路４２は、予測帯域Ｐ１に基づいて設定した動作モードを維持する。
【０１１４】
タイムスロットＴＳ２において、帯域予測部４６は、外部データの帯域を帯域Ｐ２と予測する。制御回路４２は、予測帯域Ｐ２でデータが入力されることを想定して、メモリアレイＡ〜ＤをアクティブモードＡに設定し、メモリアレイＥを第１スタンバイモードＳ１に設定し、メモリアレイＦを第２スタンバイモードＳ２に設定する。タイムスロットＴＳ２では、帯域予測量と実際の外部データ量との間に大きな差異がなく、ＦＩＦＯメモリ３２の蓄積量は、閾値ＴＨ１以上かつ閾値ＴＨ２以下を維持するので、制御回路４２は、予測帯域Ｐ１に基づいて設定した動作モードを維持する。
【０１１５】
タイムスロットＴＳ３において、帯域予測部４６は、外部データの帯域を帯域Ｐ３と予測する。制御回路４２は、予測帯域Ｐ３でデータが入力されることを想定して、メモリアレイＡ〜ＤをアクティブモードＡに設定し、メモリアレイＥを第１スタンバイモードＳ１に設定し、メモリアレイＦを第２スタンバイモードＳ２に設定する。タイムスロットＴＳ３では、帯域予測量と実際の外部データ量との間に大きな差異がなく、ＦＩＦＯメモリ３２の蓄積量は、閾値ＴＨ１以上かつ閾値ＴＨ２以下を維持するので、制御回路４２は、予測帯域Ｐ１に基づいて設定した動作モードを維持する。
【０１１６】
タイムスロットＴＳ４において、帯域予測部４６は、外部データの帯域を帯域Ｐ４と予測する。制御回路４２は、予測帯域Ｐ４でデータが入力されることを想定して、メモリアレイＡ〜ＣをアクティブモードＡに設定し、メモリアレイＤを第１スタンバイモードＳ１に設定し、メモリアレイＥ，Ｆを第２スタンバイモードＳ２に設定する。タイムスロットＴＳ４の後半では、帯域予測量よりも実際の外部データ量が極端に少なく、ＦＩＦＯメモリ３２の蓄積量は、閾値ＴＨ１未満となるので、制御回路４２は、メモリアレイＣの動作モードを第１スタンバイモードＳ１に変更する。
【０１１７】
タイムスロットＴＳ５において、帯域予測部４６は、外部データの帯域を帯域Ｐ２と予測する。制御回路４２は、予測帯域Ｐ５でデータが入力されることを想定して、メモリアレイＡ、ＢをアクティブモードＡに設定し、メモリアレイＣを第１スタンバイモードＳ１に設定し、メモリアレイＤ，Ｅ，Ｆを第２スタンバイモードＳ２に設定する。タイムスロットＴＳ５の後半では、帯域予測量よりも実際の外部データ量が極端に多く、ＦＩＦＯメモリ３２の蓄積量は、閾値ＴＨ２を超えるので、制御回路４２は、メモリアレイＣの動作モードをアクティブモードＡに変更する。
【０１１８】
タイムスロットＴＳ６において、帯域予測部４６は、外部データの帯域を帯域Ｐ６と予測する。制御回路４２は、予測帯域Ｐ６でデータが入力されることを想定して、メモリアレイＡ〜ＥをアクティブモードＡに設定し、メモリアレイＦを第１スタンバイモードＳ１に設定する。タイムスロットＴＳ６では、帯域予測量と実際の外部データ量との間に大きな差異がなく、ＦＩＦＯメモリ３２の蓄積量は、閾値ＴＨ１以上かつ閾値ＴＨ２以下を維持するので、制御回路４２は、予測帯域Ｐ６に基づいて設定した動作モードを維持する。
【０１１９】
タイムスロットＴＳ７において、帯域予測部４６は、外部データの帯域を帯域Ｐ７と予測する。制御回路４２は、予測帯域Ｐ７でデータが入力されることを想定して、メモリアレイＡ〜ＦをアクティブモードＡに設定する。タイムスロットＴＳ７では、帯域予測量と実際の外部データ量との間に大きな差異がなく、ＦＩＦＯメモリ３２の蓄積量は、閾値ＴＨ１以上かつ閾値ＴＨ２以下を維持するので、制御回路４２は、予測帯域Ｐ７に基づいて設定した動作モードを維持する。
【０１２０】
以上のように、本実施の形態によれば、第１〜第３の実施形態と同様に、書込み時には入力されるデータ量の予測に基づいて、読出し時には、未読み出しのため読出される可能性がある有効データの存否に基づいて、個々のメモリアレイの動作モードを独立に設定することによって、省電力化を図ることができる。また、本実施の形態では、書込み時において、予測が外れた場合に、実際の外部データ量に応じて動作モードを調整するので、より一層の省電力化を図ることができる。
【０１２１】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【符号の説明】
【０１２２】
１００，９１  半導体装置、２  制御信号端子、３  アドレス端子、４  クロック端子、５  データ出力端子、６  データ入力端子、１０Ａ〜１０Ｎ  メモリアレイ、１２Ａ〜１２Ｎ  メモリアレイ制御回路、２０Ａ〜２０Ｎ  リードアンプ、２１Ａ〜２１Ｎ  ライトドライバ、２２  クロックバッファ、２４  制御信号バッファ、２６  アドレスバッファ、２８  入力バッファ、２９  出力バッファ、３０Ａ〜３０Ｎ  レギュレータ、３１Ａ〜３１Ｎ  クロック選択回路、３２  ＦＩＦＯメモリ、４０  ＰＬＬ回路、４２  制御回路、４４  パラレル−シリアル変換回路、４６  帯域予測部、１１２Ａ〜１１２Ｎ  読み書き制御回路、１１４Ａ  カウンタ、１１６Ａ  判定回路。
【図１】
2014081672.tif 000003
【図２】
2014081672.tif 000004
【図３】
2014081672.tif 000005
【図４】
2014081672.tif 000006
【図５】
2014081672.tif 000007
【図６】
2014081672.tif 000008
【図７】
2014081672.tif 000009
【図８】
2014081672.tif 000010
【図９】
2014081672.tif 000011
【図１０】
2014081672.tif 000012
【図１１】
2014081672.tif 000013