(57)【要約】【課題】  各メモリ間の転送動作における待機時間の削減が可能な半導体記憶装置を提供する。【解決手段】  ＤＲＡＭからなるメインメモリ１０１において、使用頻度の高いデータはＳＲＡＭであるメインキャッシュ１０３に格納され、アクセスの高速化が図られているが、一方、メインキャッシュ１０３に格納されたデータのうち使用頻度が低くなったものは、ＳＲＡＭであるサブキャッシュ１０５に格納され、メインメモリ１０１のリフレッシュ動作や転送動作の隙間を狙ってメインメモリ１０１に戻される。【選択図】        図１
2004355810.tif 000002
【特許請求の範囲】
【請求項１】
半導体記憶装置であって、
メインメモリとして動作するＤＲＡＭと、
メインキャッシュとして動作する第１のＳＲＡＭと、
サブキャッシュとして動作する第２のＳＲＡＭとを含み、
前記第２のＳＲＡＭは、
常時、前記第１のＳＲＡＭからのデータを受取る第１のデータ受取手段と、
受取ったデータを保持するデータ保持手段と、
前記ＤＲＡＭがレディ状態のときに、保持されたデータを前記ＤＲＡＭに送出するデータ送出手段とを含み、
前記ＤＲＡＭは、
複数のメモリセルと、
前記メモリセルが接続された複数の選択線と、
外部信号を入力する入力手段と、
入力された前記外部信号をデコードするデコーダと、
前記デコーダから与えられるデコーダ信号のパターンにより、いずれかの前記選択線を選択し、所定の数の前記メモリセルを活性化するメモリセル活性化手段とを含み、
前記半導体記憶装置は、
前記デコーダから与えられるデコード信号により、前記デコード信号のパターンに基づいて前記ＤＲＡＭと前記第１のＳＲＡＭと前記第２のＳＲＡＭとの間のデータの転送ビット幅を変更する転送ビット幅変更手段をさらに含む、半導体記憶装置。
【請求項２】
前記メモリセル活性化手段は、前記デコーダから与えられるデコード信号により、予め登録されていた前記デコード信号のパターンに基づいていずれかの前記選択線を選択し所定の数の前記メモリセルを活性化する、請求項１に記載の半導体記憶装置。
【請求項３】
半導体記憶装置であって、
メインメモリとして動作するＤＲＡＭと、
メインキャッシュとして動作する第１のＳＲＡＭと、
サブキャッシュとして動作する第２のＳＲＡＭとを含み、
前記第２のＳＲＡＭは、
常時、前記第１のＳＲＡＭからのデータを受取る第１のデータ受取手段と、
受取ったデータを保持するデータ保持手段と、
前記ＤＲＡＭがレディ状態のときに、保持されたデータを前記ＤＲＡＭに送出するデータ送出手段とを含み、
前記半導体記憶装置は、
外部信号を入力する入力手段と、
入力された前記外部信号をデコードするデコーダと、
前記デコーダから与えられるデコード信号により、予め登録されていた前記デコード信号のパターンに基づいて、前記ＤＲＡＭと前記第１のＳＲＡＭと前記第２のＳＲＡＭとの間のデータの転送ビット幅を変更する転送ビット幅変更手段とをさらに含む、半導体記憶装置。
【請求項４】
前記転送ビット幅は、所定の時間が経過するごとに所定のパラメータにより刻々と変化する、請求項１から請求項３までのいずれかに記載の半導体記憶装置。
【請求項５】
半導体記憶装置であって、
メインメモリとして動作するＤＲＡＭと、
メインキャッシュとして動作する第１のＳＲＡＭと、
サブキャッシュとして動作する第２のＳＲＡＭとを含み、
前記第２のＳＲＡＭは、
常時、前記第１のＳＲＡＭからのデータを受取る第１のデータ受取手段と、
受取ったデータを保持するデータ保持手段と、
前記ＤＲＡＭがレディ状態のときに、保持されたデータを前記ＤＲＡＭに送出するデータ送出手段とを含み、
前記ＤＲＡＭは、
アドレス信号を入力するアドレス信号入力手段と、
第１の方向に配置された複数の第１の選択線と、
前記アドレス信号に応答して前記第１の選択線のうちのいずれかを選択する第１のデコーダと、
前記第１の方向と交わる第２の方向に配置され各々が対応する１つの選択クロックを受ける複数のブロックとを含み、
前記各ブロックは、
前記第１の選択線に対して設けられた複数の第２の選択線と、
前記１つの選択クロックに応答して前記第２の選択線のうち対応する１つの選択線を選択する複数の第２のデコーダとを含む、半導体記憶装置。
【請求項６】
半導体記憶装置であって、
メインメモリとして動作するＤＲＡＭと、
メインキャッシュとして動作する第１のＳＲＡＭと、
サブキャッシュとして動作する第２のＳＲＡＭとを含み、
前記第２のＳＲＡＭは、
常時、前記第１のＳＲＡＭからのデータを受取る第１のデータ受取手段と、
受取ったデータを保持するデータ保持手段と、
前記ＤＲＡＭがレディ状態のときに、保持されたデータを前記ＤＲＡＭに送出するデータ送出手段とを含み、
前記ＤＲＡＭは、
アドレス信号を入力するアドレス信号入力手段と、
第１の方向に配置された複数の第１の選択線と、
前記アドレス信号に応答して前記第１の選択線のうちのいずれかを選択する第１のデコーダと、
前記第１の方向と交わる第２の方向に配置され各々が対応する複数の選択クロックを受ける複数のブロックを含み、
前記各ブロックは、
前記第１の選択線に対応して設けられた複数の第２の選択線と、
前記複数の選択クロックに応答して前記第２の選択線のうち対応する１つの選択線を選択する複数の第２のデコーダとを含む、半導体記憶装置。
【請求項７】
半導体記憶装置であって、
各々が複数のメモリセルを有する複数のメモリセルグループを含むメモリ回路と、
アドレス信号に従って、前記複数のメモリセルグループのうちのいずれかのメモリセルグループを選択するデコーダと、
外部信号に従って、各メモリセルグループに含まれる前記複数のメモリセルのうちの転送ビット幅分の１または２以上のメモリセルを選択する転送ビット幅設定回路と、
前記デコーダによって選択されたメモリセルグループに属する複数のメモリセルのうちの前記転送ビット幅設定回路によって選択された１または２以上のメモリセルと外部との間でデータ信号の授受を行なうデータ入出力回路とを含む、半導体記憶装置。
【請求項８】
前記転送ビット幅設定回路は、前記外部信号を保持するレジスタを含み、該レジスタに保持された外部信号に従って、前記１または２以上のメモリセルを選択する、請求項７に記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は半導体記憶装置に関し、特にキャッシュシステムを有する半導体記憶装置に関する。
【背景技術】
【０００２】
図１９は、従来のキャッシュシステム１９００の構成を示す図である。
【０００３】
図１９を参照して、従来のキャッシュシステム１９００は、ＭＰＵに必要なデータの多くを格納するメインメモリ１０１と、それらデータの一部を格納するメインキャッシュ１０３とを含む。
【０００４】
一般に、メインメモリ１０１にはＤＲＡＭが使用され、メインキャッシュ１０３にはＳＲＡＭが使用される。
【０００５】
ＭＰＵはメインキャッシュ１０３を介してメインメモリ１０１に接続されている。ＭＰＵに必要なデータの多くはメインメモリ１０１に格納されているが、使用頻度の高いデータはメインキャッシュ１０３に格納されている。これにより、ＭＰＵの動作速度がメインメモリ１０１へのアクセス時間に律則されることが回避される。すなわち、メインメモリ１０１を構成するＤＲＡＭは、そのアクセス時間がＭＰＵの動作周波数に対して遅く、ＭＰＵが一度ＤＲＡＭにアクセスすると、その後数サイクルはＤＲＡＭからのデータの出力、もしくはＤＲＡＭへのデータの入力が完了するまで待機しなければならない。一方、メインキャッシュ１０３を構成するＳＲＡＭは、ＤＲＡＭに比べてアクセスに必要な時間が短い。したがって、頻繁にアクセスする必要のあるデータをメインキャッシュ１０３に格納しておけば、ＭＰＵの動作特性を極力妨げずに、システムとしての性能を向上させることができる。
【０００６】
図２０は、図１９のキャッシュシステム１９００を備えた従来のキャッシュチップ２０００の一例を示す図である。
【０００７】
図２０を参照して、従来の半導体記憶装置２０００は、従来のキャッシュシステム１９００と、外部データをチップ内に供給するデータバッファ２０３と、チップセレクト信号ＣＳをチップ内に供給するＣＳバッファ２０５と、アドレス信号を受信するアドレスバッファ２０１と、データのキャッシュシステム１９００に含まれているメインキャッシュ１０３におけるアドレスを記憶するアドレスＣＡＭ２０７と、キャッシュシステム１９００に含まれているメインメモリ１０１へのアクセスを制御する同期アービタ１１５と、同期アービタ１１５に接続されメインメモリ１０１内のメモリセルをリフレッシュするリフレッシュコントローラ２１１と、リフレッシュコントローラ２１１を制御するクロック信号を発生するクロック発生回路２１３とを含む。
【０００８】
メインキャッシュ１０３は、データを格納しているアドレスがアドレスＣＡＭ（Content Addressable Memory）２０７と呼ばれる連装記憶装置に格納されている。メインキャッシュ１０３と外部とはデータバッファ２０３によりインタフェースがとられている。チップセレクト信号ＣＳの入力とともにデータバッファ２０３やアドレスバッファ２０１が活性化され、アドレスＣＡＭ２０７が動作して、アドレスＣＡＭ２０７に格納されているアドレスと外部から要求されたアドレスとが一致すれば、メインキャッシュ１０３に格納されたデータのアドレスがアドレスＣＡＭ２０７により求められアクセスされる。この状態をヒット（Ｈｉｔ）という。もし、一致しなければ、メインメモリ１０１のアドレスに直接アクセスされる。この状態をミス（Ｍｉｓｓ）と言う。
【０００９】
ところで、メインキャッシュ１０３の格納容量は限られているので、あまりアクセスしなくなったデータはメインメモリ１０１側に転送しなければならない。これは、メインキャッシュ１０３に格納されているデータに対応してアドレスＣＡＭ２０７に格納されているアドレスと等しいメインメモリ１０１のアドレスにデータを転送すればよい。このとき、メインメモリ１０１への転送に関しては、メインメモリのＤＲＡＭをリフレッシュするためのアドレスがリフレッシュコントローラ２１１から転送されてくるので、同期アービタ１１５によりアクセスの競合を避けている。メインメモリ１０１がリフレッシュされている間、メインキャッシュ１０３や外部からのデータの転送、あるいはメインメモリ１０１からメインキャッシュ１０３や外部へのデータの転送は待機しており、リフレッシュが終了すると上記転送作業が開始される。
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、上記メインメモリ１０１、メインキャッシュ１０３、リフレッシュコントローラ２１１など各ユニット間の転送動作は外部から入力されるクロックにより同期的に行なわれる。このため、各ユニット間のデータ転送が競合すると、前動作が終了してから次動作の開始となり、この間の待機時間が無駄になるという問題点があった。
【００１１】
本発明の半導体記憶装置は以上のような問題点を解決するためになされたもので、データ転送やリフレッシュ動作の競合による待機時間のロスが少なくなり、スムーズに要領よく転送動作を行なうことが可能な半導体記憶装置を提供することを目的とする。
【課題を解決するための手段】
【００１２】
この発明に係る半導体記憶装置は、メインメモリとして動作するＤＲＡＭと、メインキャッシュとして動作する第１のＳＲＡＭと、サブキャッシュとして動作する第２のＳＲＡＭとを含む。第２のＳＲＡＭは、常時、第１のＳＲＡＭからのデータを受取る第１のデータ受取手段と、受取ったデータを保持するデータ保持手段と、ＤＲＡＭがレディ状態のときに、保持されたデータをＤＲＡＭに送出するデータ送出手段とを含む。ＤＲＡＭは、複数のメモリセルと、メモリセルが接続された複数の選択線と、外部信号を入力する入力手段と、入力された外部信号をデコードするデコーダと、デコーダから与えられるデコーダ信号のパターンにより、いずれかの選択線を選択し、所定の数のメモリセルを活性化するメモリセル活性化手段とを含む。半導体記憶装置は、デコーダから与えられるデコード信号により、デコード信号のパターンに基づいてＤＲＡＭと第１のＳＲＡＭと第２のＳＲＡＭとの間のデータの転送ビット幅を変更する転送ビット幅変更手段をさらに含む。
【００１３】
好ましくは、メモリセル活性化手段は、デコーダから与えられるデコード信号により、予め登録されていたデコード信号のパターンに基づいていずれかの選択線を選択し所定の数のメモリセルを活性化する。
【００１４】
また、この発明の他の半導体記憶装置は、メインメモリとして動作するＤＲＡＭと、メインキャッシュとして動作する第１のＳＲＡＭと、サブキャッシュとして動作する第２のＳＲＡＭとを含む。第２のＳＲＡＭは、常時、第１のＳＲＡＭからのデータを受取る第１のデータ受取手段と、受取ったデータを保持するデータ保持手段と、ＤＲＡＭがレディ状態のときに、保持されたデータをＤＲＡＭに送出するデータ送出手段とを含み、半導体記憶装置は、外部信号を入力する入力手段と、入力された外部信号をデコードするデコーダと、デコーダから与えられるデコード信号により、予め登録されていたデコード信号のパターンに基づいて、ＤＲＡＭと第１のＳＲＡＭと第２のＳＲＡＭとの間のデータの転送ビット幅を変更する転送ビット幅変更手段とをさらに含む。
【００１５】
好ましくは、転送ビット幅は、所定の時間が経過するごとに所定のパラメータにより刻々と変化する。
【００１６】
また、この発明のさらに他の半導体記憶装置は、メインメモリとして動作するＤＲＡＭと、メインキャッシュとして動作する第１のＳＲＡＭと、サブキャッシュとして動作する第２のＳＲＡＭとを含む。第２のＳＲＡＭは、常時、第１のＳＲＡＭからのデータを受取る第１のデータ受取手段と、受取ったデータを保持するデータ保持手段と、ＤＲＡＭがレディ状態のときに、保持されたデータをＤＲＡＭに送出するデータ送出手段とを含む。ＤＲＡＭは、アドレス信号を入力するアドレス信号入力手段と、第１の方向に配置された複数の第１の選択線と、アドレス信号に応答して第１の選択線のうちのいずれかを選択する第１のデコーダと、第１の方向と交わる第２の方向に配置され各々が対応する１つの選択クロックを受ける複数のブロックとを含む。各ブロックは、第１の選択線に対して設けられた複数の第２の選択線と、１つの選択クロックに応答して第２の選択線のうち対応する１つの選択線を選択する複数の第２のデコーダとを含む。
【００１７】
また、この発明のさらに他の半導体記憶装置は、メインメモリとして動作するＤＲＡＭと、メインキャッシュとして動作する第１のＳＲＡＭと、サブキャッシュとして動作する第２のＳＲＡＭとを含む。第２のＳＲＡＭは、常時、第１のＳＲＡＭからのデータを受取る第１のデータ受取手段と、受取ったデータを保持するデータ保持手段と、ＤＲＡＭがレディ状態のときに、保持されたデータをＤＲＡＭに送出するデータ送出手段とを含む。ＤＲＡＭは、アドレス信号を入力するアドレス信号入力手段と、第１の方向に配置された複数の第１の選択線と、アドレス信号に応答して第１の選択線のうちのいずれかを選択する第１のデコーダと、第１の方向と交わる第２の方向に配置され各々が対応する複数の選択クロックを受ける複数のブロックを含む。各ブロックは、第１の選択線に対応して設けられた複数の第２の選択線と、複数の選択クロックに応答して第２の選択線のうち対応する１つの選択線を選択する複数の第２のデコーダとを含む。
【００１８】
また、この発明のさらに他の半導体記憶装置は、各々が複数のメモリセルを有する複数のメモリセルグループを含むメモリ回路と、アドレス信号に従って、複数のメモリセルグループのうちのいずれかのメモリセルグループを選択するデコーダと、外部信号に従って、各メモリセルグループに含まれる複数のメモリセルのうちの転送ビット幅分の１または２以上のメモリセルを選択する転送ビット幅設定回路と、デコーダによって選択されたメモリセルグループに属する複数のメモリセルのうちの転送ビット幅設定回路によって選択された１または２以上のメモリセルと外部との間でデータ信号の授受を行なうデータ入出力回路とを含む。
【００１９】
好ましくは、転送ビット幅設定回路は、外部信号を保持するレジスタを含み、該レジスタに保持された外部信号に従って、１または２以上のメモリセルを選択する。
【発明の効果】
【００２０】
この発明に係る半導体記憶装置においては、第２のＳＲＡＭにおいて、常時第１のＳＲＡＭからデータが受取られ、受取られたデータが保持され、ＤＲＡＭがレディ状態のときに保持されたデータがＤＲＡＭに送出されるので、サブキャッシュである第２のＳＲＡＭからメインメモリであるＤＲＡＭへのデータの転送動作によるアクセスが、ＤＲＡＭの他の転送動作やリフレッシュ動作によるアクセスと競合することが少なくなる。その結果、アクセスの競合による待機時間などのロスが少なくなり、サブキャッシュである第２のＳＲＡＭからメインメモリであるＤＲＡＭへの転送動作をスムーズに要領よく行なうことが可能な半導体記憶装置を提供することができる。
【００２１】
また、外部信号が入力され、入力された外部信号がデコードされ、デコーダから与えられるデコード信号のパターンによりいずれかの選択線が選択され、所定の数のメモリセルが活性化されるので、外部信号を入力することにより、メモリメモリであるＤＲＡＭ中の必要なメモリセルのみが活性化されるように制御することができる。
【００２２】
また、デコーダから与えられるデコード信号のパターンにより、デコード信号のパターンに基づいて、ＤＲＡＭおよび第１のＳＲＡＭおよび第２のＳＲＡＭ間のデータの転送ビット幅が変更されるので、比較的簡易な外部信号を入力することにより、各メモリ間の転送ビット幅を変更することができる。
【００２３】
また、この発明の他の半導体記憶装置においては、スムーズに要領よく転送動作を行なうことができることに加え、外部信号が入力され、入力された外部信号がデコードされ、デコーダから与えられるデコード信号のパターンにより、予め登録されていたデコード信号のパターンに基づいて、ＤＲＡＭおよび第１のＳＲＡＭおよび第２のＳＲＡＭ間のデータの転送ビット幅か変更されるので、比較的簡易な外部信号を入力することにより、各メモリ間の転送ビット幅を変更することができる。その結果、転送ビット幅の最適化を図ることができ、低消費電力化および動作の高速化が可能となる。
【００２４】
また、この発明のさらに他の半導体記憶装置においては、スムーズに要領よく転送動作を行なうことができることに加え、アドレス信号が入力され、入力されたアドレス信号に応答して第１の方向に配置された複数の第１の選択線のうちのいずれかが選択され、第１の方向と交わる第２の方向に配置された複数のブロックの各々において、第１の選択線に対応して設けられた複数の第２の選択線のうち１つの選択クロックに応答して対応する１つの第２の選択線が選択されるので、選択クロックのオン／オフにより、駆動する選択線の範囲を調整することができる。その結果、活性化されるメモリセルの数の調整が可能となり低消費電力化が可能となる。
【００２５】
また、この発明のさらに他の半導体記憶装置においては、スムーズに要領よく転送動作を行なうことができることに加え、アドレス信号が入力され、入力されたアドレス信号に応答して第１の方向に配置された複数の第１の選択線のうちのいずれかが選択され、第１の方向と交わる第２の方向に配置された複数のブロックの各々において、第１の選択線に対応して設けられた複数の第２の選択線のうち複数の選択クロックに応答して対応する１つの第２の選択線が選択されるので、選択クロックのオン／オフにより、駆動する選択線の範囲を調整することができる。
【００２６】
また、この発明のさらに他の半導体記憶装置においては、各々が複数のメモリセルを有する複数のメモリセルグループを含むメモリ回路と、アドレス信号に従って、複数のメモリセルグループのうちのいずれかのメモリセルグループを選択するデコーダと、外部信号に従って、各メモリセルグループに含まれる複数のメモリセルのうちの転送ビット幅分の１または２以上のメモリセルを選択する転送ビット幅設定回路と、デコーダによって選択されたメモリセルグループに属する複数のメモリセルのうちの転送ビット幅設定回路によって選択された１または２以上のメモリセルと外部との間でデータ信号の授受を行なうデータ入出力回路とが設けられるので、転送ビット幅を容易に設定することができる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明の実施の形態を図面を参照しながら説明する。
【００２８】
（１）  第１実施の形態
図１は、本発明の第１実施の形態の半導体記憶装置によるキャッシュシステム１００の構成を示す図である。
【００２９】
図１を参照して、キャッシュシステム１００は、メインメモリ１０１と、メインキャッシュ１０３と、サブキャッシュ１０５とを含む。
【００３０】
メインキャッシュ１０３はメインメモリ１０１とサブキャッシュ１０５とに接続されている。メインメモリ１０１もまたサブキャッシュ１０５に接続されている。
【００３１】
メインキャッシュ１０３とサブキャッシュ１０５の動作は類似しており、外部から入力されるアドレスがメインキャッシュ１０３またはサブキャッシュ１０５に登録されているアドレスと一致すれば、メインメモリ１０１にアクセスすることなく、高速でメインキャッシュ１０３またはサブキャッシュ１０５に蓄積されているデータが処理される。
【００３２】
ここで、従来と異なる点は、メインキャッシュ１０３とサブキャッシュ１０５との間のデータ転送およびサブキャッシュ１０５とメインメモリ１０１との間のデータ転送である。メインキャッシュ１０３とサブキャッシュ１０５との間のデータ転送は、サブキャッシュ１０５に存在するデータをアクセスした場合は、サブキャッシュ１０５からメインキャッシュ１０３にデータが転送され昇格する。逆に、メインキャッシュ１０３にデータが存在しながら長時間アクセスされない場合は、外部または内部の制御に従って、メインキャッシュ１０３からサブキャッシュ１０５にデータが転送され降格する。この降格したデータは、一定の時間さらにアクセスされずメインキャッシュ１０３に再登録されることがなければ、自動的にメインメモリ１０１に転送される。そして、これらの転送作業が、外部からの制御信号または内部で同期的に作られる制御信号により制御されるのではなく、自己生成的に作られた制御信号によりリフレッシュ動作や他の転送動作とは非同期的に行なわれる。
【００３３】
図２は、図１のキャッシュシステム１００を含むキャッシュチップ２００を示す図である。
【００３４】
図２を参照して、キャッシュチップ２００は、キャッシュシステム１００と、外部から入力されたアドレス信号Ａｄｄを供給するアドレスバッファ２０１と、外部に対してデータを入出力するデータバッファ２０３と、外部から入力されたキャッシュチップ２００を制御するための制御信号ＣＳをチップ内に供給するＣＳバッファ２０５と、キャッシュシステム１００内のメインキャッシュ１０３に格納されているデータのアドレスを格納しているアドレスＣＡＭ２０７と、同様にキャッシュシステム１００内のサブキャッシュ１０５のデータのアドレスを格納しているアドレスＣＡＭ２０９と、キャッシュシステム１００に含まれているメインメモリ１０１にリフレッシュ要求信号を出力するリフレッシュコントローラ２１１と、リフレッシュコントローラ２１１に与えるクロックを発生するクロック発生回路２１３と、アドレスバッファ２０１，アドレスＣＡＭ２０７，アドレスＣＡＭ２０９，リフレッシュコントローラ２１１，クロック発生回路２１３，およびサブキャッシュ１０５に接続され、クロック発生回路２１３からのクロックを基に各ユニットのメインメモリ１０１へのアクセスが競合した場合にその優先順位を与える非同期アービタ２１５とを含む。チップ電源投入時、各アドレスＣＡＭはリセットされる。
【００３５】
図２において、データをキャッシュするためには、データそのものとそのデータの格納場所を示すアドレスとを認識する必要がある。したがって、アドレスはアドレスＣＡＭ２０７，２０９に格納され、外部から入力されるアドレスが、チップセレクト信号ＣＳの入力によりアドレスＣＡＭ２０７，２０９中のアドレスと比較され、一致すればそのアドレスＣＡＭ中のアドレスに対応したキャッシュのデータがアクセスされる。メインキャッシュ１０３、サブキャッシュ１０５ともにこの比較動作およびアクセス動作が行なわれる。アドレスの比較はメインキャッシュ１０３とサブキャッシュ１０５とを同時に行なう。これは、両者に存在するデータのアドレスは必ず異なるため、また、メインキャッシュアクセス時とサブキャッシュアクセス時とのデータ出力に要する時間差を極力小さくするためである。
【００３６】
アドレスの比較に用いるアドレスＣＡＭは、それぞれに１ワード（１ワードのビット数は仕様により異なる）に設定され、各々を比較した結果ヒットすれば該当するワード線が活性化され、ミスヒットすればメインキャッシュおよびサブキャッシュそれぞれからミスヒット信号が出力される。
【００３７】
必要なデータがメインキャッシュ１０３に格納されている場合は、データメインキャッシュ１０３にとどまったまま外部に出力され、書込動作であればメインキャッシュ１０３内のデータは書換えられる。必要なデータがサブキャッシュ１０５に格納されている場合は、データはサブキャッシュ１０５から読出されると同時にメインキャッシュ１０３に登録され、書込動作であればメインキャッシュ１０３内にデータが登録され同時に書換えられる。このとき、サブキャッシュ１０５内に格納されていたデータはそのまま放置されてもよい。なぜならば、サブキャッシュ１０５は、データを非同期的にメインメモリ１０１に排出する動作を行なっているので、使われなくなったデータは時間がたてばメインメモリ１０１に転送されるためである。たとえ、サブキャッシュ１０５のデータを後から書換えたデータがメインキャッシュ１０３に登録されて、元のデータがメインメモリ１０１に転送され登録されても、メインキャッシュ１０３のデータが降格してこない限りメインメモリ１０１上のデータをアクセスすることがないので誤動作を起こすことはない。
【００３８】
メインメモリ１０１は、大抵、ＤＲＡＭという揮発性メモリで構成されている。このメモリは一定時間ごとにリフレッシュされなければならないので、このリフレッシュを行なうアドレスとそのタイミングとをメインメモリ１０１に与えなければならない。そこで、このアドレスと、サブキャッシュ１０５から転送されてくるアドレスなどとの優先順位を決めるため、非同期アービタ２１５を介してデータがメインメモリ１０１に転送される。メインメモリ１０１は、メインキャッシュ１０３およびサブキャッシュ１０５から出力されるミスヒット信号のＡＮＤと、サブキャッシュ１０５からのデータ転送トリガと、リフレッシュコントローラからのリフレッシュ要求信号との以上３者を非同期アービタ２１５により裁定し、それをＤＲＡＭ活性化信号とする。
【００３９】
非同期アービタ２１５の各要求信号に対する裁定における優先度は、リフレッシュ要求が最も高い場合が多いが、処理スピードを最優先し、ミスヒット時のＤＲＡＭアクセスを最優先してもよい。リフレッシュ動作は、キャッシュヒット率がそこそこ高い状態ではミスヒットによるＤＲＡＭアクセスを待ったうえでも十分にリフレッシュ動作を行なうことができる。これは、連続ヒットによるＤＲＡＭ非アクセス時間がかなり長いことが期待できるためである。
【００４０】
図３は、図１のメインキャッシュ１０３およびサブキャッシュ１０５のキャッシュメモリ３００とその周辺回路の構成を示す図である。
【００４１】
図３を参照して、キャッシュメモリ３００は、メモリセルアレイ３０１と、センスアンプ群および入出力回路（Ｓ／Ａ，Ｉ／Ｏ回路）３０３と、ロウアドレスＣＡＭ３０５と、コラムアドレスＣＡＭ３０７とを含む。
【００４２】
図３において、アドレスバッファ（図示せず）から転送されるアドレスはロウアドレスＣＡＭ３０５およびコラムアドレスＣＡＭ３０７に入力される。
【００４３】
ロウアドレスＣＡＭ３０５で比較されたロウアドレスにおいて、一致検出がなされるとＭａｔｃｈ信号が出力される。このＭａｔｃｈ信号は、実は、キャッシュメモリのワード線の役割を兼ねている。したがって、キャッシュメモリのワード線の数だけロウアドレスＣＡＭ３０５中の比較回路が存在しＭａｔｃｈ信号が存在する。このＭａｔｃｈ信号により、キャッシュメモリ中のワード線に接続されたメモリセルがＨｉｔしたとして選択される。選択されたデータをすべて使用するのであれば、比較系はワード線に関する方向のみでよい。
【００４４】
図３中では、ワード線で選択されたメモリセル中で、さらに転送出力されるデータのメモリセルを細かく設定するのに、コラムアドレスに対しても比較回路を備えている。アドレスバッファから転送されるコラムアドレスは、コラム系のコラムアドレスＣＡＭ３０７に格納されているコラムアドレスと比較され、一致検出がなされればＭａｔｃｈ信号が出力される。このＭａｔｃｈ信号は、実は、キャッシュメモリのコラム選択線の役割を兼ねている。したがって、キャッシュメモリのコラム選択線の数だけコラムアドレスＣＡＭ中の比較回路が存在しＭａｔｃｈ信号が存在する。このＭａｔｃｈ信号により、キャッシュメモリ中のコラム選択線に接続されたメモリセルがＨｉｔしたとして選択される。
【００４５】
図４は、図１のサブキャッシュ１０５の構成を示す図である。
【００４６】
図４を参照して、サブキャッシュ１０５は、メインキャッシュから転送されたデータおよびそのアドレスを格納するシフトレジスタ４０１と、メインキャッシュから転送されたデータおよびそのアドレスを受取りそれらをシフトレジスタ４０１に格納するセレクタ４０３と、シフトレジスタ４０１に格納されたデータおよびそのアドレスのシフトをコントロールするシフトコントロール回路４０５と、シフトレジスタ４０１から出力されるデータをメインメモリに供給する出力バッファ４０７とを含む。シフトレジスタ４０１は、さらにレジスタ素子Ｓ１〜ｎを含む。
【００４７】
図４において、シフトレジスタは、入力された順番にデータを出力する。ここでは、その入力はメインキャッシュ１０３より転送されるデータとそれに伴うアドレスであり、出力はメインメモリ１０１に転送されるべきデータとそれと伴うアドレスである。
【００４８】
ここで、サブキャッシュ１０５に必要とされる作業は、メインキャッシュ１０３から転送されてきたデータを、一度バッファリングして、メインメモリ１０１が動作していない間にメインメモリ１０１に転送することである。従来は即メインメモリ１０１に転送するようにしていたが、メインメモリ１０１の書込速度はそれほど速くなく、メインキャッシュ１０３から転送されてきたデータをすぐにメインメモリ１０１に排出することができないようにするためこのバッファリングを行なう。したがって、このシフトレジスタ４０１はある程度の長さを必要とする。
【００４９】
しかし、この長いシフトレジスタ４０１に入力部から順次メインキャッシュ１０３からの転送データを入力して、シフトさせながら最終的にメインメモリ１０１に排出していたのではメインメモリ１０１への転送が遅くなってしまう。そこで、メインキャッシュ１０３から転送されてきたデータはセレクタ４０３に入力され、最適なシフトレジスタの位置に入力される。最適なシフトレジスタ４０１の位置とは、既にデータが入力されているレジスタ素子Ｓのすぐ後ろのレジスタ素子Ｓを指す。たとえば、シフトレジスタ４０１にメインキャッシュ１０３から転送されてきたデータが何も入っていなければ、先頭のレジスタ素子Ｓに入力され、３番目のレジスタ素子Ｓまでメインキャッシュから転送されてきたデータが入っていれば４番目のレジスタ素子Ｓに入力されるようにする。先頭のレジスタに到達したデータは出力バッファ４０７により出力制御信号ＯＵＴを基にメインメモリ１０１に転送される。
【００５０】
図２のチップセレクト信号ＣＳはメインメモリ１０１となるＤＲＡＭの動作には関与せず、キャッシュメモリであるＳＲＡＭおよびサブキャッシュとなるシフトレジスタに対しての活性化信号となり、サブキャッシュ１０５であるシフトレジスタ４０１とメインメモリ１０１であるＤＲＡＭ間の転送に関しては関与しないが、サブキャッシュ１０５の格納アドレスと入力アドレスとの比較、サブキャッシュ１０５からのデータの取出のトリガとなる。
【００５１】
図５は、図４のシフトレジスタ４０１の回路図である。
【００５２】
図５を参照して、シフトレジスタ４０１は、レジスタ素子Ｓ１〜Ｓｎと２つのインバータで構成されたラッチ５０５とトランスファゲートＴＧ３とを含む。
【００５３】
レジスタ素子Ｓ１において、２つのインバータで構成されたラッチ５０１は、トランスファゲートＴＧ１のソースドレイン電極に接続され、トランスファゲートＴＧ１のもう一方のソースドレイン電極は２つのインバータで構成されたもう１つのラッチ５０３に接続され、ラッチ５０３はさらにもう１つのトランスファゲートＴＧ２のソースドレイン電極に接続されている。レジスタ素子Ｓ２〜Ｓｎもまたレジスタ素子Ｓ１と同様の構成を有し、各レジスタ素子は、レジスタ素子Ｓ１内のラッチ５０１側に直列に接続されている。レジスタ素子Ｓ１内のトランスファゲートＴＧ２のラッチ５０３に接続されていないもう一方のソースドレイン電極は、ラッチ５０５に接続され、ラッチ５０５はトランスファゲート３のソースドレイン電極に接続されている。トランスファゲートＴＧ３のもう一方のソースドレイン電極はメインメモリ１０１に接続されている。トランスファゲートＴＧ１のゲート電極にはシフト信号Ｋ２が入力され、トランスファゲートＴＧ２のゲート電極にはシフト信号Ｋ１が入力され、トランスファゲートＴＧ３のゲート電極には出力クロックＯＥが入力される。
【００５４】
レジスタ素子Ｓ１〜Ｓｎ内のラッチ５０１にデータが格納されているものとする。シフト信号Ｋ２がハイレベルになるとトランスファゲートＴＧ１がオンし、ラッチ５０１に格納されていたデータはラッチ５０３にシフトする。次に、シフト信号Ｋ１がハイレベルになるとトランスファゲートＴＧ２がオンし、ラッチ５０３に格納されていたデータはメインメモリ１０１の出力に近い１つ前のレジスタ素子内のラッチ５０１にシフトされる。レジスタ素子Ｓ１の場合は、ラッチ５０３に格納されていたデータはラッチ５０５にシフトされ、出力クロックＯＥがハイレベルになるとトランスファゲートＴＧ３がオンしメインメモリ１０１へラッチ５０５に格納されたデータが出力される。
【００５５】
図５において、シフトレジスタ４０１そのものは一般的なマスタスレーブ方式のシフトレジスタを用いることができる。外部から入力される低速クロックＫ１，Ｋ２の制御によりデータの入力が制御される。レジスタ素子Ｓ１からレジスタ素子Ｓｎまでのレジスタ素子Ｓがシフト動作に関与する場合、図４におけるセレクタ４０３は入力されてくるデータをレジスタ素子Ｓ１からレジスタ素子Ｓｎまでの対応するレジスタ素子Ｓに転送する。どのレジスタ素子Ｓにもデータが蓄積されていない場合、レジスタ素子Ｓ１にデータが入力され、これは直ちにメインメモリ１０１に出力される。レジスタ素子Ｓ１〜Ｓｎまでデータが蓄積されている状態では、レジスタ素子Ｓｎにデータが入力され、これは低速クロックＫ１，Ｋ２のマスタスレーブ動作によりデータが転送される動作に準じてシフトされる。
【００５６】
図６，７は、図４のセレクタ４０３の回路図である。図６はセレクタ４０３に含まれているトランスファゲート群７００を制御するための選択回路６００を示す図であり、図７はセレクタ４０３に含まれているメインキャッシュ１０３のメモリセルアレイからのデータをシフトレジスタ４０１に転送するためのトランスファゲート群７００を示した図である。
【００５７】
図６を参照して、トランスファゲート群６００は、双方向シフトレジスタ６１０と、双方向シフトレジスタ６１０に含まれているレジスタ素子Ｓ１′〜Ｓｎ′がすべて空であることを示す状態出力回路６０１と、シフトレジスタ４０１に含まれているレジスタ素子Ｓ１〜ｎがすべてデータを格納していることを示す状態出力回路６０３と、トランスファゲート群に接続された出力ノードＲ０〜Ｒｎのレベルをリセットするリセット回路６０５と、ラッチ６１５と、ＮＭＯＳトランジスタＴｒ１〜Ｔｒ５を含む。
【００５８】
双方シフトレジスタ６１０において、各シフトレジスタＳ１′〜Ｓｎ′は、２つのインバータで構成されたラッチ６１１にトランスファゲートＴＧ４のソースドレイン電極が接続され、トランスファゲートＴＧ４のもう一方のソースドレイン電極に２つのインバータで構成されたもう１つのラッチ６１３が接続され、ラッチ６１３にトランスファゲートＴＧ５のソースドレイン電極が接続されている。そして、トランスファゲートＴＧ６の一方のソースドレイン電極はラッチ６１１のトランスファゲートＴＧ４に接続されていない側に接続され、他方のソースドレイン電極はラッチ６１３とトランスファゲートＴＧ５の接続ノードに接続され、トランスファゲートＴＧ７は、その一方のソースドレイン電極がトランスファゲートＴＧ４とラッチ６１３との接続ノードに接続され、他方のソースドレイン電極はレジスタ素子Ｓ２′のラッチ６１１とトランスファゲートＴＧ４との接続ノードに接続されている。各レジスタ素子Ｓ１′〜Ｓｎ′は、トランスファゲート群７００への出力ノードＲ１〜Ｒｎ−１で直列に接続され、レジスタ素子Ｓ１′のラッチ６１１側に出力ノードＲ０が、レジスタ素子ＲｎのトランスファゲートＴＧ５側に出力ノードＲｎが設けられている。レジスタ素子Ｓｎ′のみにおいては、トランスファゲートＴＧ５のラッチ６１３に接続されていない側のソースドレイン電極はラッチ６１５に接続され、トランスファゲートＴＧ４とラッチ６１３との接続ノードに接続されていない側のトランスファゲートＴＧ７のソースドレイン電極はラッチ６１５のトランスファゲートＴＧ５に接続されていない側に接続されている。
【００５９】
出力ノードＲ０にはＮＭＯＳトランジスタＴｒ０のソース電極が接続され、出力ノードＲ１〜ＲｎにはＮＭＯＳトランジスタＴｒ１〜Ｔｒｎのドレイン電極が接続されている。ＮＭＯＳトランジスタＴｒ０のドレイン電極はＶｃｃ電源に接続され、ＮＭＯＳトランジスタＴｒ１〜Ｔｒｎのソース電極は接地されている。ＮＭＯＳトランジスタＴｒ０〜Ｔｒｎのゲート電極はリセット回路６０５に接続され、リセット回路６０５から与えられるリセット信号ＲＳがＨレベルになるとＮＭＯＳトランジスタＴｒ０〜Ｔｒｎはオンし、出力ノードＲ０はＨレベル、出力ノードＲ１〜ＲｎはＬレベルとなる。これは動作初期においてカウンタをリセットした状態である。
【００６０】
出力ノードＲ０には、さらに状態出力回路６０１が接続され、出力ノードＲ０がＨレベルのときシフトレジスタ４０１のレジスタ素子Ｓ１〜Ｓ２はすべて空でありメインメモリ１０１への出力を禁止する出力禁止信号が出力される。一方、出力ノードＲｎには状態出力回路６０３が接続され、出力ノードＲｎはＨレベルのときシフトレジスタＳ１〜Ｓｎにはすべてデータが格納されていることを示し、メインキャッシュ１０３からのデータの取込みを禁止する禁止信号が出力される。シフト信号ΦＡが入力されるとトランスファゲートＴＧ４がオンしラッチ６１３に格納されていたデータはラッチ６１１へシフトされる。シフト信号ΦＢが入力されるとトランスファゲートＴＧ５がオンし後方のレジスタ素子のラッチ６１１に格納されていたデータは１つ前方のレジスタ素子のラッチ６１３へシフトされる。反対に、シフト信号ΦＤが入力されるとトランスファゲートＴＧ６がオンしラッチ６１１に格納されていたデータはラッチ６１３へシフトされる。ΦＣが入力されるとトランスファゲートＴＧ７がオンし前方のレジスタ素子のラッチ６１３に格納されていたデータは１つ後方のレジスタ素子のラッチ６１１へシフトされる。
【００６１】
動作初期において出力ノードＲ０がＨレベルのとき、トランスファゲート群７００（図７）はすべてオフになっており、データの転送先であるシフトレジスタ４０１（図５）にはデータが蓄積されていないことを示す。その後、メインキャッシュ１０３のメモリセルアレイからのデータ転送に従って、各レジスタ素子Ｓ１〜ｎに転送されるごとに、出力ノードＲ１、Ｒ２、Ｒ３、…とＨレベルが順次移動しシフトされていく。このため、順次オンされるトランスファゲートが移動する。このシフト機能により、データがメインキャッシュ１０３のメモリセルアレイから転送される際には、常にデータが蓄積されているレジスタ素子Ｓのすぐ後ろのレジスタ素子Ｓに対応するトランスファゲートを開けるように設定されるので、次々と入力されてくるデータは各レジスタ素子Ｓに順次入力される。
【００６２】
また、図５に示したように、レジスタ４０１に格納されたデータはシフト信号Ｋ１，Ｋ２の交互動作により出力されるので、それに伴いデータが格納されている最後尾のレジスタ素子Ｓの位置が変更される。この位置の変更は、図６中の双方向シフトレジスタ６１０のＨレベルの出力ノードが逆方向にシフトされることで表わされる。
【００６３】
ところで、メインキャッシュ１０３のメモリセルアレイからデータが頻繁に転送され、シフトレジスタ４０１の容量を超える場合がある。この場合には、双方向シフトレジスタ６１０のＨレベルの出力ノードが最上位の出力ノードＲｎまで転送されるので、出力ノードＲｎがＨレベルになったことを状態出力回路６０３で検出すればオーバフローを起こしたことは容易に検出できる。その場合には、状態出力回路６０３から外部に対しデータの取込みを禁止する禁止信号を出力して、シフトレジスタ６１０の容量に空きがでるまで待機させる。
【００６４】
ただし、実際には他のアクセスと非同期的にメインメモリ１０１にデータ転送を行ない、メインキャッシュ１０３のヒット率がある程度高ければ、双方向シフトレジスタ４０１′に十数ビットの容量を持たせておけば、メインメモリ１０１のアクセスの遅さを考慮しても上記のようなオーバフローを起こすことはほとんどない。
【００６５】
図７において、メインキャッシュ１０３のメモリセルアレイから転送されるデータの通り道が示されている。図６で示した出力ノードＲ１〜Ｒｎは、それぞれＮＭＯＳトランジスタＴｒ７１〜７ｎのドレイン電極に接続され、各ＮＭＯＳトランジスタＴｒ７１〜７ｎのソース電極はインバータおよびＮＭＯＳトランジスタおよびＰＭＯＳトランジスタで構成されたトランスファゲートに接続され、ゲート電極に入力されたクロックＲＤがＨレベルのときＮＭＯＳトランジスタＴｒ７１〜７ｎがオンしトランスファゲートを介してメインメモリ１０３のメモリセルアレイからのデータがシフトレジスタ４０１内の対応するレジスタ素子Ｓ１〜Ｓｎのいずれかに入力される。
【００６６】
データは出力ノードＲ１〜Ｒｎのいずれかが選択されることにより、シフトレジスタ４０１のレジスタ素子Ｓ１〜ｎまでの対応するレジスタ素子Ｓに転送され入力される。
【００６７】
図８は、本発明の第１実施の形態の半導体記憶装置によるキャッシュチップ２００全体の動作の例を示すタイミングチャートである。
【００６８】
キャッシュチップ２００の動作はチップ内部で自己発振的に発生されるクロックＣＬＫでトリガされる。クロックＣＬＫがＬレベルになるとクロックΦＡ，ΦＢが動作し、セレクタ４０３のＨノードをインクリメントする。初期において、シフトレジスタ４０１中にデータが蓄積されていないときは出力は禁止状態である。つまり、出力クロックＯＥはＬレベルである。セレクタ４０３のＨノードをインクリメントした後、クロックＲＤにより、メインキャッシュ１０３のメモリセルアレイから転送されたデータがセレクタ４０３からシフトレジスタ４０１に転送される。このとき、データはシフトレジスタ４０１のレジスタ素子Ｓ１に格納される。これにより、シフトレジスタ４０１中に出力すべきデータが存在するため、出力クロックＯＥはＨレベルとなる。
【００６９】
一旦、クロックＣＬＫがＨレベルになり、再びＬレベルになると、カウンタの値は２に設定される。カウンタの値が２ということは、メインキャッシュ１０３のメモリセルアレイから転送されたデータが次に入力されるシフトレジスタのレジスタ素子Ｓ番号が２ということである。同様にして、さらに次のデータはレジスタ素子Ｓ３に格納される。この後、出力信号ＯＵＴがＬレベルとなり出力バッファ４０７に入力されるとレジスタ素子Ｓ１に格納されているデータは出力信号Ｄｏｕｔとして外部（メインメモリ）に出力される。これにより、シフトレジスタ４０１中の格納データが１段シフトされるのでカウンタの値がクロックΦＣ，ΦＤによりデクリメントされ２に戻る。出力が終了するとシフト系はシフト信号Ｋ１，Ｋ２によりシフトする。再び次のＣＬＫサイクルによりメインキャッシュ１０３のメモリセルアレイから転送されたデータが入力されるシフトレジスタ４０１のレジスタ素子Ｓ番号は３になる。
【００７０】
（２）  第２実施の形態
図９は、本発明の第２実施の形態の半導体記憶装置によるサブキャッシュ１０５の構成を示す図である。
【００７１】
図９を参照して、サブキャッシュ１０５は、シフトレジスタ４０１と、セレクタ４０３と、シフトコントロール回路４０５と、出力バッファ４０７と、比較回路９０９と、出力制御回路９１１とを含む。
【００７２】
図９において、シフトレジスタ４０１とセレクタ４０３とシフトコントロール回路４０５と出力バッファ４０７とは図４と同様に接続され動作する。比較回路９０９は、シフトレジスタ４０１の最前列のレジスタ素子Ｓ１と次のレジスタ素子Ｓ２とに接続され、レジスタ素子Ｓ１に格納されているデータとレジスタ素子Ｓ２に格納されているデータとを比較してその一致、不一致を出力する。この動作はレジスタ素子Ｓ１に格納されているデータが出力される前に予め行なうことができる。出力制御回路９１１は、比較回路９０９に接続され、比較出力をもとに出力バッファ４０７の出力機能を制御する。制御内容としては、たとえば、レジスタ素子Ｓ１内のデータとレジスタ素子Ｓ２内のデータとが一致する場合には、レジスタ素子Ｓ１のデータを出力した後レジスタ素子Ｓ２のデータを出力するまで、出力バッファ４０７は出力ノードを同一電位で保持する。また、レジスタ素子Ｓ１内のデータとレジスタ素子Ｓ２内のデータとが不一致である場合には、レジスタ素子Ｓ１のデータを出力した後レジスタ素子Ｓ２のデータを出力するまでの間に、出力バッファ４０７の出力ノードを一旦リセットして、逆データである次のデータの出力に備える。
【００７３】
図１０は、図９のサブキャッシュ１０５の動作を示すタイミングチャートである。
【００７４】
基本的な動作は図８と同じである。出力が連続する場合、レジスタ素子Ｓ１のデータとレジスタ素子Ｓ２のデータとが等しい場合は、データ出力間で出力バッファ４０７を非選択化せずに前出力レベルを保持する。また、レジスタ素子Ｓ１のデータとレジスタ素子Ｓ２のデータとが等しくない場合は、出力ノードのレベルを中間電位に設定し次のデータ出力に備える。これにより、動作の高速化と低消費電力化を図ることができる。
【００７５】
（３）  第３実施の形態
図１１は、本発明の第３実施の形態の半導体記憶装置によるサブキャッシュ１０５の構成を示す図である。
【００７６】
図１１を参照して、サブキャッシュ１０５は、シフトレジスタ４０１と、セレクタ４０３と、シフトコントロール回路４０５と、出力制御回路１１１０とを含む。出力制御回路１１１０は、さらにＨ／Ｌ判別回路１１０９と、出力バッファ４０７とを含み、出力バッファ４０７は、加算器１１１１と、Ｄ／Ａコンバータ１１１３とを含む。
【００７７】
図１１において、シフトレジスタ４０１とセレクタ４０３とシフトコントロール回路４０５とは図４と同様に構成され動作する。出力制御回路１１１０において、Ｈ／Ｌ判別回路１１０９は、シフトレジスタ４０１の最前列のレジスタ素子Ｓ１に格納されているデータがＨレベルであるかＬレベルであるかを判別し、その結果によって“＋１”または“−１”を出力する。この動作は予めレジスタ素子Ｓ１に格納されているデータが出力される前に行なうことができる。出力制御回路１１１０内のＤ／Ａコンバータ１１１３と加算器１１１１とからなる出力バッファ４０７は、その動作電位幅を複数のレベルに分割し、その間のいずれかのレベルでその出力レベルを示す。すなわち、現出力レベルに対する次出力レベルの高低が一分割電位分だけ高くなるか低くなるかで示される。このため、加算器１１１１が設けられており、次出力レベルがＨレベルなら現出力レベルに“＋１”、Ｌレベルなら現出力レベルに“−１”を加算する。
【００７８】
図１２は、図１１のサブキャッシュ１０５の出力を受けるレシーバ１２００の構成を示す図である。
【００７９】
図１２を参照して、レシーバ１２００は、入力データＤｉｎが伝送される信号線に初期電位を与える初期電位設定回路１２０１と、入力データＤｉｎを遅延させる遅延回路１２０３と、遅延回路１２０３で遅延された前データと次に入力されるデータとを比較する比較回路１２０５と、比較回路１２０５の比較の結果によるデータをラッチするラッチ１２０７とを含む。
【００８０】
図１２において、図１１の出力バッファ４０７から出力されたデータは入力データＤｉｎとして遅延回路１２０３と比較回路１２０５とに入力される。遅延回路１２０３と比較回路１２０５とは図１１の出力バッファ４０７に接続され、比較回路１２０５は遅延回路１２０３に接続されている。比較回路１２０５はさらにラッチ１２０７に接続されている。
【００８１】
入力データＤｉｎは、初期電位設定回路１２０１により予め定められた電位になっている信号線上を図１１のサブキャッシュ１０５のＤ／Ａコンバータの動作に従って転送されてくる。そして、これを比較回路１２０５で受ける。ここで、入力データのレベルはデータごとに変化するので、比較回路１２０５の基準としては前データを用いる。すなわち、入力データＤｉｎが変化したとき、比較回路１２０５は基準電位ＲＥＦとの比較を行なうが、この基準電位ＲＥＦは遅延回路１２０３を介して転送された前データを用いる。この比較によるＨ／Ｌの判別結果をラッチして内部信号として取扱うことができる。
【００８２】
図１３は、図１１，１２のサブキャッシュ１０５およびレシーバ１２００の動作を示すタイミングチャートである。
【００８３】
クロックＣＬＫがＨレベルになると入力データＤｉｎのレベルと基準電位ＲＥＦである前データのレベルとが比較される。比較の結果、判定ウィンドウＡでは入力データＤｉｎの方が前データ（基準電位ＲＥＦ）より高いレベルであったので、比較回路１２０５から出力されるＨ／Ｌ判別結果はＨレベルとなる。したがって、ラッチデータはＨレベルとなる。同様に、判定ウィンドウＢでは、入力データＤｉｎの方が前データ（基準電位ＲＥＦ）よりレベルが高く、Ｈ／Ｌ判別結果はＨレベルとなり、ラッチデータはＨを保持したままである。判定ウィンドウＣでは、入力データＤｉｎが前データ（基準電位ＲＥＦ）より低いので、Ｈ／Ｌ判別結果はＬレベルとなり、ラッチデータはＬレベルとなる。判定ウィンドウＤでは、入力データＤｉｎが前データ（基準電位ＲＥＦ）より高いので、Ｈ／Ｌ判別結果はＨレベルとなり、ラッチデータは再びＨレベルとなる。判定ウィンドウＥでは、入力データＤｉｎが前データ（基準電位ＲＥＦ）と比較して低いので、Ｈ／Ｌ判別結果はＬレベルとなり、ラッチデータはＬレベルとなる。判定ウィンドウＦでは、入力データＤｉｎが前データ（基準電位ＲＥＦ）と比較して低いので、Ｈ／Ｌ判別結果はＬレベルとなり、ラッチデータはＬレベルを保持する。
【００８４】
（４）  第４実施の形態
図１４は、本発明の第４実施の形態の半導体記憶装置によるキャッシュチップ１４００の構成を示す図である。
【００８５】
図１４は、図２のキャッシュチップ２００の構成に分割設定のコマンドレジスタ１４０１を付加したものである。
【００８６】
図１４において、分割設定のコマンドレジスタ１４０１は、メインメモリ１０１とメインキャッシュ１０３とサブキャッシュ１０５とに接続されている。
【００８７】
このキャッシュシステム１４００では、コマンドレジスタ１４０１により選択線、たとえばワード線の分割数を設定すれば、メインメモリ１０１とメインキャッシュ１０３とサブキャッシュ１０５との間の転送ビット幅やメインメモリの活性領域を設定できるようになっている。
【００８８】
コマンドレジスタとは、アドレス入力ピンなどを利用して、あるタイミングに入力されたアドレス信号のグループをデコードして内部命令に変えるようラッチしておくレジスタ構成をいう。ここでのコマンドレジスタの命令は転送ビット幅の変更である。したがって、一度コマンドレジスタにアドレス信号のグループを入力し内部命令を設定してラッチに保持しておけば、同一の転送ビット幅を保持しながら動作させることができる。また、扱うデータの状態が変化して、転送ビット幅を変化させた方が処理能力が増す場合などは、コマンドレジスタ１４０１の書換えを行なうことで転送ビット幅を任意に変化させることができる。
【００８９】
図１５は、図１４のキャッシュチップ１４００に適したメモリ内のワード線の構成について示す。図１５では、理解の容易性のため、２種類の切換えに限り説明するが、実際には、分割数は任意である。また、デコード線やデコーダの数も任意である。
【００９０】
各ワード線１ａ〜１ｄ，２ａ〜２ｄは、複数のデコード線１５１０の組合せにより、活性化されたデコード線に接続されたデコーダ１５０３ａ〜１５０３ｄの活性化により選択される。ワード線１ａ〜１ｄはそれぞれサブデコーダ１５０５ａ〜１５０５ｄに接続され、ワード線２ａ〜２ｄはそれぞれサブデコーダ１５０７ａ〜１５０７ｄに接続され、デコーダ１５０３ａ〜１５０３ｄにより選択され、さらに選択クロックＣＬＫ１で活性化されたサブデコーダ１５０５ａ〜１５０５ｄまたは選択クロックＣＬＫ２で活性化されたサブデコーダ１５０７ａ〜１５０７ｄにより駆動されるワード線が最終的に活性化される。したがって、この選択クロックＣＬＫ１，ＣＬＫ２の活性化制御を図１４のコマンドレジスタ１４０１で行なえば、転送ビット幅に応じたメモリ数を活性化できる。たとえば、常に選択クロックＣＬＫ１，ＣＬＫ２の両方が活性化されるべくコマンドレジスタ１４０１を構成すれば、ワード線１ａ〜１ｄ，２ａ〜２ｄの両方で選択された部分に存在するメモリセルは活性化される。また、選択クロックＣＬＫ１，ＣＬＫ２のうちいずれか一方の選択クロックが入力されるアドレスでデコードされるようにコマンドレジスタ１４０１を構成すれば、選択クロックＣＬＫ１，ＣＬＫ２のうちいずれか一方の選択クロックで選択された部分に存在するメモリセルが活性化される。これにより、扱うデータ幅により最適な転送ビット幅の設定が可能となり、また、メインメモリであるＤＲＡＭの活性メモリ数を変化させることで、ＤＲＡＭの低消費電力化を図ることができる。
【００９１】
（５）  第５実施の形態
図１６は、本発明の第５実施の形態の半導体記憶装置によるキャッシュチップ１６００の構成を示す図である。
【００９２】
図１６を参照して、キャッシュチップ１６００は、図２に示すキャッシュチップ２００の構成に分割設定回路１６０１を加えたものである。
【００９３】
図１６において、分割設定回路１６０１は、メインメモリ１０１とメインキャッシュ１０３とサブキャッシュ１０５とに接続されている。
【００９４】
図１６のキャッシュシステム１６００では、入力信号により分割設定を行なえば、メインメモリ１０１とメインキャッシュ１０３とサブキャッシュ１０５との間の転送ビット幅やメインメモリ１０１の活性領域が分割できるようになっている。
【００９５】
この構成に適したメモリ内のワード線構成は図１５と同様のものでよい。選択クロックＣＬＫ１，ＣＬＫ２の活性化制御を入力信号により行ない転送ビット幅に応じたメモリ数を活性化する。たとえば、常に選択クロックＣＬＫ１，ＣＬＫ２の両方が活性化されるように信号を入力すれば、ワード線１ａ〜１ｄ，２ａ〜２ｄの両方で選択される部分に存在するメモリセルは活性化される。また選択クロックＣＬＫ１，ＣＬＫ２のうちいずれか一方の選択クロックが、入力されるアドレスでデコードされるように信号を入力すれば、選択クロックＣＬＫ１，ＣＬＫ２のいずれか一方の選択線で選択された部分に存在するメモリセルが活性化される。
【００９６】
図１７は、データパケットの転送サイクルの例を示す図である。
【００９７】
図１６のキャッシュチップ１６００の構成は、図１７で示す転送サイクル１〜３のように、転送幅指定パケット内の情報により、転送されるデータのビット幅が刻々と変化する場合に有用である。
【００９８】
このようにして、簡単な入力信号で分割設定が行なえるよう予め登録されているので、第４実施の形態の場合より容易に扱うデータ幅により最適の転送ビット幅やメインメモリであるＤＲＡＭの活性メモリセル数を変化させることで、ＤＲＡＭの低消費電力化と転送ビットの最適化を図ることができる。
【００９９】
（６）  第６実施の形態
図１８は、図１４，１６のキャッシュチップ１４００，１６００の構成に適したメモリ内のワード線の構成の他の例を示す図である。
【０１００】
図１８において、このワード線の構成は、図１５に示したワード線の構成において、選択クロックＣＬＫ１，ＣＬＫ２を複数に分割している。これは、メモリ容量が増大し、ワード線１ａ〜１ｄ，２ａ〜２ｄを選択するための選択クロックＣＬＫ１，ＣＬＫ２の寄生容量が増大して消費電力が増大するのを防ぐためである。これにより、不使用のデコーダに接続されたワード線が活性化される可能性は小さくなるのでさらに低消費電力化が図れる。
【０１０１】
その結果、活性化されるメモリセルの細かい調整が可能となり、さらなる低消費電力化が可能となる。
【図面の簡単な説明】
【０１０２】
【図１】本発明の第１実施の形態の半導体記憶装置によるキャッシュシステム１００の構成を示す図である。
【図２】図１のキャッシュシステム１００を含むキャッシュチップ２００の構成を示す図である。
【図３】図１のメインキャッシュ１０３およびサブキャッシュ１０５のキャッシュメモリ３００の構成を示す図である。
【図４】図１のサブキャッシュ１０５の構成を示す図である。
【図５】図４のシフトレジスタ４０１の回路図である。
【図６】図４のセレクタ４０３に含まれているトランスファゲート群７００を制御するための選択回路６００を示す図である。
【図７】図４のセレクタ４０３に含まれているメインキャッシュ１０３のメモリセルアレイからのデータをシフトレジスタ４０１に転送するためのトランスファゲート群７００の構成を示す図である。
【図８】本発明の第１実施の形態のキャッシュシステム全体の動作を示すタイミングチャートである。
【図９】本発明の第２実施の形態の半導体記憶装置によるサブキャッシュ１０５の構成を示す図である。
【図１０】図９のサブキャッシュ１０５の動作を示すタイミングチャートである。
【図１１】本発明の第３実施の形態のサブキャッシュ１０５の構成を示す図である。
【図１２】図１１のサブキャッシュ１０５の出力を受けるレシーバ１２００の構成を示す図である。
【図１３】図１１，１２のサブキャッシュ１０５およびレシーバ１２００の動作を示すタイミングチャートである。
【図１４】本発明の第４実施の形態の半導体記憶装置によるキャッシュチップ１４００の構成を示す図である。
【図１５】図１４のキャッシュチップ１４００に適したメインメモリ内のワード線の構成を示す図である。
【図１６】本発明の第５実施の形態の半導体記憶装置によるキャッシュチップ１６００の構成を示す図である。
【図１７】データパケットの転送サイクルの例を示す図である。
【図１８】図１６のキャッシュチップ１６００に適したメインメモリ内のワード線の構成の他の例を示す図である。
【図１９】従来のキャッシュシステム１９００の構成を示す図である。
【図２０】図１９のキャッシュシステム１９００を備えた従来のキャッシュチップ２０００の構成の例を示す図である。
【符号の説明】
【０１０３】
１０１  メインメモリ、１０３  メインキャッシュ、１０５  サブキャッシュ、４０１  シフトレジスタ、４０３  セレクタ、４０５  シフトコントロール回路、４０７  出力バッファ、６０５  リセット回路、６０１，６０３  状態出力回路、９０９，１２０５  比較回路、９１１  出力制御回路、１１０９  Ｈ／Ｌ判別回路、１１１０  出力制御回路、１１１１  加算器、１１１３  Ｄ／Ａコンバータ、１２０１  初期電位設定回路、１２０３  遅延回路、１２０７  ラッチ、１２００  レシーバ、１４０１  分割設定のコマンドレジスタ、１００  キャッシュシステム、２００，１４００，１６００  キャッシュチップ、Ｓ１〜Ｓｎ  レジスタ素子、６１０  双方向レジスタ、６００  選択回路、７００  トランスファゲート群。
【図１】
2004355810.tif 000003
【図２】
2004355810.tif 000004
【図３】
2004355810.tif 000005
【図４】
2004355810.tif 000006
【図５】
2004355810.tif 000007
【図６】
2004355810.tif 000008
【図７】
2004355810.tif 000009
【図８】
2004355810.tif 000010
【図９】
2004355810.tif 000011
【図１０】
2004355810.tif 000012
【図１１】
2004355810.tif 000013
【図１２】
2004355810.tif 000014
【図１３】
2004355810.tif 000015
【図１４】
2004355810.tif 000016
【図１５】
2004355810.tif 000017
【図１６】
2004355810.tif 000018
【図１７】
2004355810.tif 000019
【図１８】
2004355810.tif 000020
【図１９】
2004355810.tif 000021
【図２０】
2004355810.tif 000022