(57)【特許請求の範囲】
【請求項１】
供給された情報信号を先入れ先出しする第一のスタッテックメモリと、
上記第一のスタテックメモリと同等又はそれ以上の記憶容量で、供給された情報信号を先入れ先出しする第二のスタテックメモリと、
上記第一のスタテックメモリより記憶容量が大きく、上記第一のスタテックメモリから供給された情報信号を上記第二のスタテックメモリに送出するように先入れ先出しするダイナミックメモリと、
上記第二のスタテックメモリの空き容量及び上記ダイナミックメモリに書き込まれた読出し前の情報信号の有無を検出するメモリ検出手段と、
上記第一のスタテックメモリから情報信号を読み出す際に、上記メモリ検出手段の検出結果に応じて、該読み出された情報信号を上記第二のスタテックメモリ又は上記ダイナミックメモリに切り替えて送出させる制御手段とを備えてなるメモリ装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、メモリ装置に関し、特に情報信号の先入れ先出しを行うメモリ装置に関する。
【０００２】
【従来の技術】
今日において、情報信号の信号処理を行うコンピュータ等の情報処理装置や画像信号からなる情報信号を信号処理する画像信号処理装置等の電子機器に先入れ先出しメモリ（以下、ＦＩＦＯメモリと称する。）が各種用途用に設けられている。
【０００３】
上記ＦＩＦＯメモリは、情報信号の膨大化に伴い大容量でかつ高速なものが求められており、この高速化に対応させるためにメモリセルがスタテックメモリで構成されている。
【０００４】
【発明が解決しようとする課題】
ところで、上記スタテックメモリは、ダイナミックメモリに比べて単位記憶容量当たりの製造コストが高く、電子機器の仕様に応じて上記ＦＩＦＯメモリを大容量化した場合には該ＦＩＦＯメモリが高価になり、該電子機器が高価になるという問題点を生じていた。
【０００５】
本発明は、以上のような問題点に鑑み、大容量情報信号を高速に先入れ先出し可能なメモリ装置を安価に提供することを目的とする。
【０００６】
【課題を解決するための手段】
この目的を達成した本発明に係るメモリ装置は、供給された情報信号を先入れ先出しする第一のスタッテックメモリと、上記第一のスタテックメモリと同等又はそれ以上の記憶容量で、供給された情報信号を先入れ先出しする第二のスタテックメモリと、上記第一のスタテックメモリより記憶容量が大きく、上記第一のスタテックメモリから供給された情報信号を上記第二のスタテックメモリに送出するように先入れ先出しするダイナミックメモリと、上記第二のスタテックメモリの空き容量及び上記ダイナミックメモリに書き込まれた読出し前の情報信号の有無を検出するメモリ検出手段と、上記第一のスタテックメモリから情報信号を読み出す際に、上記メモリ検出手段の検出結果に応じて、該読み出された情報信号を上記第二のスタテックメモリ又は上記ダイナミックメモリに切り替えて送出させる制御手段とを備える。
【０００７】
以上の構成を備える本発明に係るメモリ装置によれば、第一のスタテックメモリから情報信号を読み出す際に、ダイナミックメモリに情報信号が書き込まれている場合は、該書き込まれている情報信号の次のアドレスに該読み出された情報信号を書込み、該ダイナミックメモリから読み出された情報信号を第二のスタテックメモリに送出させることで、第一のスタテックメモリから読み出された順番で第二のスタテックメモリから情報信号を送出させる。また、第二のスタテックメモリに第一のスタテックメモリから読み出された情報信号を書き込むための空き容量が有り、且つ、ダイナミックメモリに読み出し前の情報信号がない場合は、該読み出された情報信号を第二のスタテックメモリに書込み・読み出すことにより先入れ先出しを高速に行い、かつ第二のスタテックメモリに第一のスタテックメモリから読み出された情報信号を書き込むための空き容量が無い場合は、該読み出された情報信号をダイナミックメモリに書込み、第二のスタテックメモリから該情報信号を読み出すことにより大容量の先入れ先出しを行う。
【０００８】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照しながら説明する。
【０００９】
本発明に係るメモリ装置２０は、例えば図１に示すようにコンピュータネットワークシステムのネットワークステーションに設けられており、グラフィックアクセレータ２７の処理実行中にシステム用メインメモリ２６から供給されたデータ信号や本体ＣＰＵ２５から供給された命令等を待機させるために一時的に格納される。上記システム用メインメモリ２６は、シンクロナスＤＲＡＭで構成される。
【００１０】
上記メモリ装置２０は、図２に示すように供給された情報信号を先入れ先出しする第一のスタテックメモリ１と、供給された情報信号を先入れ先出しする第二のスタテックメモリ２と、該第一のスタテックメモリ１から供給された情報信号を該第二のスタテックメモリ２に送出するように先入れ先出しするダイナミックメモリ３と、該第二のスタテックメモリ２の空き容量及びダイナミックメモリ３に書き込まれた読み出し前の情報信号の有無を検出するメモリ検出手段４と、該第一のスタテックメモリ１から該ダイナミックメモリ３への接続を切り替えるバススイッチＢＳ１と、該該ダイナミックメモリ３から該第二のスタテックメモリ２への接続を切り替えるバススイッチＢＳ２と、該第一のスタテックメモリ１から該第二のスタテックメモリ２への接続を切り替えるバススイッチＢＳ３と、上記メモリ検出手段４の検出結果に基づいて上記バススイッチＢＳ１、ＢＳ２、ＢＳ３の切換え制御を行う制御手段５とを備える。
【００１１】
上記第一のスタテックメモリ１は、予め定められた所定容量の情報信号を１アドレス毎に読出し可能に書き込むメモリアレイを有しており、情報信号を書き込む毎に順次インクリメントされる上記制御手段５のライトポインタのカウンタ値をライトアドレスとして情報信号を書き込み、情報信号が読み出される毎に順次インクリメントされる該制御手段５のリードポインタのカウント値をリードアドレスとして情報信号が読み出される。この第一のスタテックメモリ１は、例えば記憶容量が４エントリーであり、１エントリー毎にメモリアレイへ情報信号の書込み・読出しが行われる。
【００１２】
上記第二のスタテックメモリ２は、図３に示すように予め定められた所定容量の情報信号をを１アドレス毎に読出し可能に書き込むメモリアレイ７を有しており、情報信号を書き込む毎に順次インクリメントされる上記制御手段５のライトポインタ８のカウンタ値をライトアドレスとして情報信号を書き込み、情報信号が読み出される毎に順次インクリメントされる該制御手段５のリードポインタ９のカウンタ値をリードアドレスとして情報信号が読み出される。この第二のスタテックメモリ２は、例えば記憶容量が８エントリーであり、１エントリー毎にメモリアレイへ情報信号の書込み・読出しが行われる。
【００１３】
上記ダイナミックメモリ３は、上記ネットワークステーションに設けられたシステム用メインメモリ２６の所定記憶領域を用いて構成され、予め定められた所定記憶容量の情報信号を１アドレス毎に読出し可能に書き込むメモリアレイを有しており、情報信号を書き込む毎に順次インクリメントされる上記制御手段５のライトポインタのカウンタ値をライトアドレスとして情報信号を書き込み、情報信号が読み出される毎に順次インクリメントされる該制御手段５のリードポインタのカウンタ値をリードアドレスとして情報信号が読み出される。このダイナミックメモリ３は、例えば４エントリーを１バースト単位として同時に書込み・読出しが行われて高速処理される。また、このダイナミックメモリ３の記憶容量は、上記本体ＣＰＵ２５の設定により２エントリーのＬ乗（Ｌ＝３乃至１６）毎の８、１６、３２、６４、１２８、２５６、５１２、１Ｋ、２Ｋ、４Ｋ、８Ｋ、１６Ｋ、３２Ｋ、６４Ｋ、１２８Ｋ又は２５６Ｋエントリーに可変設定される。
【００１４】
また、上記ダイナミックメモリ３は、上記第一、第二のスタテックメモリ１、２及びダイナミックメモリ３のライトアドレス及びリードアドレスを示す上記制御手段５に設けられた各ライトポインタやリードポインタを形成するカウンタの各カウンタ値、及び上記Ｆｕｌｌフラグ１０等のフラグ信号を格納するレジスタ領域が設けられる。
【００１５】
上記メモリ検出手段４及び制御手段５は、ダイナミックメモリ３のライトポインタのカウンタ値であるライトアドレスＷＰとリードポインタのカウンタ値であるリードアドレスＲＰとの減算値（ＷＰ−ＲＰ）と、上記Ｆｕｌｌフラグ１０のフラグ信号とを検出する。
【００１６】
上記メモリ検出手段４は、上記減算値（ＷＰ−ＲＰ）と上記Ｆｕｌｌフラグ１０のフラグ信号とに基づいて、ダイナミックメモリ３に書き込まれた読出し前の情報信号の有無を検出する。
【００１７】
以下、図４を用いて上記メモリ検出手段４の動作の説明を行う。
【００１８】
ステップＳ１では、上記減算値（ＷＰ−ＲＰ）が０か否かを検出して、該減算値が０の場合にステップＳ２に進み、該減算値が０でない場合にステップＳ３に進む。
【００１９】
ステップＳ２では、上記Ｆｕｌｌフラグ１０のフラグ信号が１か否かを検出して、該フラグ信号が１でない場合にステップＳ４に進み、該フラグ信号が１の際にはステップＳ５に進む。
【００２０】
ステップＳ３及びステップ５では、ダイナミックメモリ３に読み出し前の情報信号が書き込まれていると判定する。
【００２１】
ステップＳ４では、ダイナミックメモリ３に読み出し前の情報信号が書き込まれていないと判定する。
【００２２】
以上より、上記メモリ検出手段４では、ダイナミックメモリ３に書き込まれた読出し前の情報信号の有無が検出される。
【００２３】
上記制御手段５は、上記減算値（ＷＰ−ＲＰ）と上記Ｆｕｌｌフラグ１０のフラグ信号とに基づいて、上記バススイッチＢＳ１、ＢＳ２、ＢＳ３の切り換え制御を行う。
【００２４】
以下、図５を用いて上記制御手段５による上記バススイッチＢＳ１、ＢＳ２、ＢＳ３の切換え制御の動作の説明を行う。
【００２５】
ステップＳ１１では、上記減算値（ＷＰ−ＲＰ）が０か否かを検出して、該減算値が０の場合にステップＳ１２に進み、該減算値が０でない場合にステップＳ１３に進む。
【００２６】
ステップＳ１２では、上記Ｆｕｌｌフラグ１０のフラグ値が１か否かを検出して、該フラグ値が１でない場合にステップＳ１４に進み、該フラグ値が１の際にはステップＳ１３に進む。
【００２７】
ステップ１３では、バススイッチＢＳ１及びバススイッチＢＳ２をＯＮさせ、バススイッチＢＳ３をＯＦＦさせる。
【００２８】
ステップ１４では、バススイッチＢＳ１及びバススイッチＢＳ２をＯＦＦさせ、バススイッチＢＳ３をＯＮさせる。
【００２９】
以上より、上記制御手段５では、上記第一のスタテックメモリ１から情報信号を読み出す際に、ダイナミックメモリ３に情報信号が書き込まれている場合は、該書き込まれている情報信号の次のアドレスに該読み出された情報信号を書込み、該ダイナミックメモリ３から読み出された情報信号を第二のスタテックメモリ２に送出させることで、第一のスタテックメモリ１から読み出された順番で第二のスタテックメモリ２から情報信号を送出させる。
【００３０】
また、第二のスタテックメモリ２に第一のスタテックメモリ１から読み出された情報信号を書き込むための空き容量が有り、且つ、ダイナミックメモリ３に情報信号が書き込まれていない場合は、該読み出された情報信号を第二のスタテックメモリ２に書込み・読出すことにより先入れ先出しを高速に行い、かつ第二のスタテックメモリ２に第一のスタテックメモリ１から読み出された情報信号を書き込むための空き容量が無い場合は、該読み出された情報信号をダイナミックメモリ３に書込み、第二のスタテックメモリ２から該情報信号を読み出すことにより大容量の先入れ先出しを行う。
【００３１】
以下、図６を用いて上記制御手段５の制御による上記第二のスタテックメモリ２への情報信号の書込み動作の説明を行う。
【００３２】
ステップＳ２１では、情報信号が供給されたか否かの検出を行い、情報信号が供給された際にステップＳ２２に進み、情報信号が供給されない際には再び情報信号が供給されたか否かの検出を行う。
【００３３】
ステップＳ２２では、上記Ｆｕｌｌフラグ１０が１か否かを検出して、該Ｆｕｌｌフラグ１０が１でない場合にステップＳ２３に進み、該Ｆｕｌｌフラグ１０が１の際には再び該Ｆｕｌｌフラグ１０が１か否かの検出を行う。
【００３４】
ステップＳ２３では、ライトポインタ８のカウンタ値ＷＰをインクリメントして、ステップＳ２４に進む。
【００３５】
ステップＳ２４では、ライトポインタ８のカウンタ値ＷＰとリードポインタ９のカウンタ値ＲＰとが等しいか否かを検出して、等しい場合にステップＳ２５に進み、等しくない場合にステップＳ２６に進む。
【００３６】
ステップＳ２５では、上記Ｆｕｌｌフラグ１０を１にセットして、ステップＳ２６に進む。
【００３７】
ステップＳ２６では、ライトポインタ８のカウンタ値ＷＰをライトアドレスとして情報信号を書き込む。
【００３８】
以下、図７を用いて上記制御手段５の制御による上記第二のスタテックメモリ２からの情報信号の読出し動作の説明を行う。
【００３９】
ステップＳ３１では、情報信号の読出しが要求されたか否かの検出を行い、読出しが要求された際にステップＳ３２に進み、読出しが要求されない際には再び情報信号の読出し要求がされたか否かの検出を行う。
【００４０】
ステップＳ３２では、ライトポインタ８のカウンタ値ＷＰとリードポインタ９のカウンタ値ＲＰとが等しいか否かを検出して、等しい場合にステップＳ３３に進み、等しくない場合にステップＳ３５に進む。
【００４１】
ステップＳ３３では、上記Ｆｕｌｌフラグ１０が１か否かを検出して、該Ｆｕｌｌフラグ１０が１でない場合にステップＳ３１に戻り、該Ｆｕｌｌフラグ１０が１の際にはステップＳ３４に進む。
【００４２】
ステップＳ３４では、上記Ｆｕｌｌフラグ１０を０にリセットして、ステップＳ３５に進む。
【００４３】
ステップＳ３５では、リードポインタ９のカウンタ値ＲＰをインクリメントして、ステップＳ３６に進む。
【００４４】
ステップＳ３６では、リードポインタ９のカウンタ値ＲＰをリードアドレスとして情報信号を書き込む。
【００４５】
以上より、上記第二のスタテックメモリ２では、ライトポインタ８のカウンタ値ＷＰをライトアドレスとし順次インクリメントして、リードポインタ９のカウンタ値ＲＰをライトアドレスとし順次インクリメントして、ライトアドレス及びリードアドレスが各々独立に設定されて、書込み及び読出しが各々独立に行われて情報信号の先入れ先出しが行われる。
【００４６】
以上の構成によるメモリ装置２０では、ダイナミックメモリ３を介さずに第一、第二のスタテックメモリ１、２間で情報信号を転送することにより高速動作を実現し、かつ第一のスタテックメモリ２を入力バッファとし、第二のスタテックメモリ２を出力バッファとしてダイナミックメモリ３に情報信号を先入れ先出しすることにより記憶容量の大容量化を実現して、安価でありながら高速かつ大容量の情報信号の先入れ先出しを行う。また、ダイナミックメモリ３を比較的高速で書込み・読出しが行われるシンクロナスＤＲＡＭで構成しているため、例えば本体ＣＰＵ２５のクロック周波数が１００ＭＨｚ程度である際に該クロック周波数に同期させて書込み・読出しが可能であり、シングルバンク方式で操作可能である。
【００４７】
なお、上記実施例においてはダイナミックメモリ３をシンクロナスＤＲＡＭとした場合について説明したが、本発明に係るメモリ装置はこのようなメモリ素子に限定されるものでは無く、本体ＣＰＵ２５のクロック周波数が１００ＭＨｚ程度で、ダイナミックメモリ３をページモードで書込み・読出し速度が１０数ＭＨｚのＤＲＡＭで構成する場合、例えば図８に示すようにダイナミックメモリ３は、各々１／ｍの記憶容量で、該シンクロナスＤＲＡＭの書込み・読出し速度が１／ｍである低速のＤＲＡＭ１１、１２、・・・１ｍと、該ＤＲＡＭ１１、１２、・・・１ｍの入出力バスの接続を替えるバススイッチ１４と、上記本体ＣＰＵ２５で構成され該バススイッチ１４を切換え制御するダイナミックメモリ制御手段１５とを備えて、該ダイナミックメモリ制御手段１５により該バススイッチ１４を時分割で切換えるいわゆるバンクインターリブ法で制御しながら該ＤＲＡＭ１１、１２、・・・１ｍを用いる場合にも適用可能である。
【００４８】
【発明の効果】
以上詳細に説明したように、本発明に係るメモリ装置によれば、第一のスタテックメモリから情報信号を読み出す際に、ダイナミックメモリに情報信号が書き込まれている場合は、該書き込まれている情報信号の次のアドレスに該読み出された情報信号を書込み、該ダイナミックメモリから読み出された情報信号を第二のスタテックメモリに送出させることで、第一のスタテックメモリから読み出された順番で第二のスタテックメモリから情報信号を送出させる。また、第二のスタテックメモリに第一のスタテックメモリから読み出された情報信号を書き込むための空き容量が有る場合は、該読み出された情報信号を第二のスタテックメモリに書込み・読み出すことにより先入れ先出しを高速に行い、かつ第二のスタテックメモリに第一のスタテックメモリから読み出された情報信号を書き込むための空き容量が無い場合は、該読み出された情報信号をダイナミックメモリに書込み、第二のスタテックメモリから該情報信号を読み出すことにより大容量の先入れ先出しを行う。
【００４９】
このように、ダイナミックメモリを介さずに第一、第二のスタテックメモリ間で情報信号を転送することにより高速動作を実現し、かつ第一のスタテックメモリを入力バッファとし、第二のスタテックメモリを出力バッファとしてダイナミックメモリに情報信号を先入れ先出しすることにより記憶容量の大容量化を実現して、安価でありながら高速かつ大容量の先入れ先出しが行えるメモリ装置の提供を実現する。
【図面の簡単な説明】
【図１】本発明に係るメモリ装置が設けられたネットワークステーションの要部のブロック図である。
【図２】本発明に係るメモリ装置のブロック図である。
【図３】上記メモリ装置の要部のブロック図である。
【図４】上記メモリ装置のメモリ検出手段によるダイナミックメモリの読出し前の情報信号の有無及び第二のスタテックメモリの空き容量の検出動作のフローチャートである。
【図５】上記メモリ装置の制御手段の切り換え動作のフローチャートである。
【図６】上記メモリ装置の第二のスタテックメモリへの情報信号の書込み動作のフローチャートである。
【図７】上記メモリ装置の第二のスタテックメモリからの情報信号の読出し動作のフローチャートである。
【図８】上記メモリ装置のダイナミックメモリを低速ＤＲＡＭで構成した場合の要部のブロック図である。
【符号の説明】
１  第一のスタテックメモリ
２  第二のスタテックメモリ
３  ダイナミックメモリ
４  メモリ検出手段
５  制御手段
２０  メモリ装置
【図１】
0003743043.tif 000002
【図２】
0003743043.tif 000003
【図３】
0003743043.tif 000004
【図４】
0003743043.tif 000005
【図５】
0003743043.tif 000006
【図６】
0003743043.tif 000007
【図７】
0003743043.tif 000008
【図８】
0003743043.tif 000009