(57)【特許請求の範囲】
【請求項１】
集積回路に実装されたグラフィックコントローラであって、
ダイナミックランダムアクセスメモリ（ＤＲＡＭ）からなるメモリと、
行アドレス信号と各行アドレス信号毎の列アドレス信号とを生成し、各列アドレス信号毎にHI/LO信号のスイッチングを行って、複数のデータワードを前記メモリから読み出す、コントローラであって、前記HI/LO信号は前記列アドレス信号の一部である、該コントローラとを備えており、
該ＤＲＡＭが、
奇数バンク及び偶数バンク内に構成された複数のアレイであって、各アレイが複数の行及び複数の列を有している、複数のアレイと、
前記奇数バンクに対応する第１のビットラインセンス増幅器と、前記偶数バンクに対応する第２のビットラインセンス増幅器とからなる、一対のビットラインセンス増幅器と、
前記コントローラから受信した前記行アドレス信号をデコードする行デコーダであって、前記デコードされた行アドレス信号に従って前記行のうちの１つが選択され、該選択された行におけるデータビットが前記第１及び第２のビットラインセンス増幅器へ伝送される、行デコーダと、
前記コントローラから受信した前記列アドレス信号に従って、前記第１及び第２のビットラインセンス増幅器のそれぞれに格納された前記選択された行におけるデータビットのそれぞれ一部であるデータビットの第１及び第２のサブセットを選択する、列デコーダと、
前記第１のビットラインセンス増幅器からのデータを受信するよう接続された第１のマルチプレクサと、前記第２のビットラインセンス増幅器からのデータを受信するよう接続された第２のマルチプレクサとからなる、一対のマルチプレクサであって、前記コントローラにより生成された前記HI/LO信号に応じて前記第１及び第２ビットラインセンス増幅器の各々に格納されているデータビットの前記第１及び第２のサブセットのそれぞれの一部分を選択し、前記HI/LO信号の第１の状態に応じて前記列アドレス信号から第１のデータ出力ワードを生成し、及び、前記HI/LO信号の値の変化に応じて前記ビットラインセンス増幅器の各々に格納されているデータビットの前記第１及び第２のサブセットのそれぞれの、前記HI/LO信号の前記第１の状態に応じて選択された一部分とは異なる他の部分を選択し、前記列アドレス信号から第２のデータ出力ワードを生成する、一対のマルチプレクサとを備えている、グラフィックコントローラ。
【請求項２】
前記メモリが、２つの前記列アドレス信号と前記HI/LO信号の値の変化とに応じて１つの前記行アドレス信号から４つのデータ出力ワードを生成する、請求項１に記載のグラフィックコントローラ。
【請求項３】
前記データ出力ワードの各々が128ビットからなる、請求項２に記載のグラフィックコントローラ。
【請求項４】
複数の行及び複数の列を各々有する複数のメモリアレイであって、前記列の各々が複数の多ビットメモリワードを有している、メモリアレイと、
行アドレス信号に応じて前記複数の行のうちの１つを選択する行アドレスデコーダと、
前記行アドレス信号に応じて、前記複数のメモリアレイのうちの２つのメモリアレイにおける前記選択された行に含まれるデータを格納する一対のビットラインセンス増幅器と、
各行アドレス信号に対する列アドレス信号に応じて、前記一対のビットラインセンス増幅器のそれぞれに格納された前記選択された行に含まれるデータビットのそれぞれ一部である第１及び第２のサブセットのデータを選択する列アドレスデコーダと、
HI/LO信号の第１の値に応じて、前記ビットラインセンス増幅器の各々に格納されている前記列アドレス信号に対応する前記第１及び第２のサブセットのデータのそれぞれの一部分を選択し、前記列アドレス信号から第１のデータ出力ワードを生成し；かつHI/LO信号の第２の値に応じて、前記ビットラインセンス増幅器の各々に格納されている前記列アドレス信号に対応する前記第１及び第２のサブセットのデータのそれぞれの、前記HI/LO信号の前記第１の値に応じて選択された一部分とは異なる他の部分を選択し、前記列アドレス信号から第２のデータ出力ワードを生成する、セレクタであって、前記HI/LO信号は前記列アドレス信号の一部である、該セレクタとを備えている、メモリシステム。
【請求項５】
奇数メモリバンク及び偶数メモリバンクであって、該バンクの各々が、複数の行及び列に配列された少なくとも１つのメモリアレイから構成されている、奇数メモリバンク及び偶数メモリバンクと、
行アドレス信号に応じて前記奇数メモリバンク及び前記偶数メモリバンクの前記行のうちの１つを選択する行アドレスデコーダと、
前記奇数メモリバンクにおける前記選択された行内のデータビットに応答する奇数ビットラインセンス増幅器及び前記偶数メモリバンクにおける前記選択された行内のデータビットに応答する偶数ビットラインセンス増幅器と、
各行アドレス信号に対する列アドレス信号に応じて、前記奇数ビットラインセンス増幅器及び前記偶数ビットラインセンス増幅器のそれぞれに格納された前記選択された行内のデータビットのそれぞれ一部である該データビットの第１及び第２のサブセットを選択する列アドレスデコーダと、
前記奇数ビットラインセンス増幅器からのデータを受信するよう接続された奇数側のマルチプレクサと、前記偶数ビットラインセンス増幅器からのデータを受信するよう接続された偶数側のマルチプレクサとからなる、一対のマルチプレクサであって、前記HI/LO信号に応じて前記奇数ビットラインセンス増幅器及び前記偶数ビットラインセンス増幅器の各々に格納されているデータビットの前記第１及び第２のサブセットのそれぞれの一部分を選択し、前記HI/LO信号の第１の値に応じて前記列アドレス信号から第１のデータ出力ワードを生成し、及び、前記HI/LO信号の値の変化に応じて前記ビットラインセンス増幅器の各々に格納されているデータビットの前記第１及び第２のサブセットのそれぞれの、前記HI/LO信号の前記第１の値に応じて選択された一部分とは異なる他の一部分を選択し、前記列アドレス信号から第２のデータ出力ワードを生成する、一対のマルチプレクサとを備えている、メモリシステム。
【請求項６】
前記奇数側のマルチプレクサにより選択された信号を増幅する一組の奇数データセンス増幅器と、
前記偶数側のマルチプレクサにより選択された信号を増幅する一組の偶数データセンス増幅器とを備えており、
前記奇数データセンス増幅器及び前記偶数データセンス増幅器がフルスイングデータ信号という形で該メモリシステムのためのデータ出力を生成する、請求項５に記載のメモリシステム。
【請求項７】
前記奇数メモリバンク及び前記偶数メモリバンクの各々が４組のメモリアレイを備えている、請求項５に記載のメモリシステム。
【請求項８】
前記HI/LO信号の値の変化に応じて前記列アドレスデコーダにより選択されたデータビットの前記第１及び第２のサブセットのそれぞれの残りの部分を提供する、請求項５に記載のメモリシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般にディジタルメモリシステムの分野に関する。
【０００２】
【従来の技術】
高性能データ処理システムは、大量のデータの記憶及び提供を極めて高速に行うことが可能なディジタルメモリシステムを必要とする。例えば、ホストコンピュータと関連して動作し、先進のイメージ処理及びレンダリング機能を実行して、表示画面上に表示するためのデータを生成する、グラフィックコントローラは、かかる機能に必要とされる量のデータを極めて高いデータ伝送速度で記憶及び提供することが可能なメモリを必要とする。
【０００３】
【発明が解決しようとする課題】
高性能システムの記憶要件を満たすためにダイナミックランダムアクセスメモリ（ＤＲＡＭ）が使用されることが多い。ＤＲＡＭは、一般にスタティックランダムアクセスメモリ（ＳＲＡＭ）と比べて一層大きな記憶密度を特徴とするものである。しかし、ＤＲＡＭは、一般にＳＲＡＭと比べて一層遅いアクセスタイムを特徴とするものでもある。
【０００４】
ＤＲＡＭを使用したディジタルメモリシステムの帯域幅を拡大させるために、様々な技術が用いられてきた。例えば、単一アクセスでの複数のデータワードの受信を可能にするようにメモリ及び該メモリとの間のデータパスを構成することが可能である。かかる技術は帯域幅の拡大を提供するものではあるが、現在利用可能なものよりも一層大きなデータ記憶及びデータスループットを提供するディジタルメモリシステムが依然として必要とされている。
【０００５】
【課題を解決するための手段】
基本的な側面では、本発明の実施例は、データを高速に提供することが可能なメモリシステムを提供するものである。メモリシステムの行アドレスを提示する結果として、複数のビットラインセンス増幅器（ＢＬＳＡ）によってメモリシステムにおける並列記憶アレイから一行のデータが読み出されることになる。またメモリシステムに列アドレスを提示することにより、選択された行における対応する一列のデータが選択されることになる。該選択された一列のデータは、該列アドレスの最下位ビットをトグルさせることにより２段階で読み出される。好適には、メモリシステムにおける信号は、ＢＬＳＡにより生成された小さな信号差分型の信号(signal differetial type of signal)からなり、出力のためのサブセットまたは段階の各々が選択されるまでメインセンス増幅器（ＭＳＡ）により増幅されることはない。この有利な特徴により、メモリシステムに必要となるＭＳＡの個数を削減することが可能になる。その結果として、ハードウェア要素が少なくなり、かかる要素を接続するためのルーティングラインが少なくなり、及び消費電力が小さくなる。更なる利点は、選択された列を２つのサブセット又は段階で出力する結果として、列アドレスの最下位ビットを該列アドレスの約２倍の速度でスイッチングすることを可能にすることにより一層高いデータスループットが得られる、という点である。この特徴により、より高速のスイッチングのために列アドレスの単一の最下位ビットを単純かつ一層直接的にルーティングすることが可能になる、という利点が提供される。必要とされる列アドレスの一層低周波数でのスイッチングは、ＩＣチップにおける列アドレス信号のルーティングに制限を課すことがほとんどなく、このため設計上の複雑さが低減される。
【０００６】
本発明の上述その他の特徴及び利点は、本発明の好適実施形態に関する以下の詳細な説明を考察することにより一層良好に理解されよう。同説明では添付図面を頻繁に参照することになる。
【０００７】
【発明の実施の形態】
図１では、コントローラ102及びメモリ104を備えた集積回路（ＩＣ）100でグラフィックコントローラが実施されている。該グラフィックコントローラは、好適には、マイクロプロセッサ（図示せず）と関連して動作して、該マイクロプロセッサからデータ及びコマンドを受信し、メモリ104にデータを格納し、コントローラ102を介してデータを操作し、及び適当な制御信号を生成することにより視覚的な表示装置（図示せず）上にデータを表示させる。該コントローラにより実行される機能の一例が、S3 Incorporated（Santa Clara, California）により発行された「ViRGE Integrated 3D Accelerator」と題するデータブック(1996年8月発行)に記載されている。該データブックには、S3 Incorporatedにより販売されているViRGE グラフィックアクセラレータチップにより行われる機能の多くが記載されている。
【０００８】
メモリ104は、好適には、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）という形をとる。好適な実施形態では、コントローラ102及びメモリ104は、128ビット幅のデータパスにより接続される。該データパスにより、コントローラとメモリとの間での128ビット/クロックサイクルのデータ伝送が可能になる。メモリ104は、コントローラ102により生成された制御信号に応じてデータの格納及び出力を行う。
【０００９】
図２は、メモリ104を一層詳細に示すブロック図である。メモリ104は、複数の記憶アレイ202,203,204,205,206,207,208,209を備えており、それらの各アレイは、互いに同様の構造及び記憶容量を有するものである。記憶アレイ202〜209は、２つのブロック211,212内に構成され、それそれ奇数バンク及び偶数バンクと称することとする。かかる記憶アレイは、従来のＤＲＡＭタイプの記憶アレイであり、１つのセル構造につき１つのトランジスタと１つのコンデンサとを用いて高い記憶密度を達成するものである。好適な実施形態では、記憶アレイ202〜209の各々は、１Kビットを各々有する256の行を含むものである。このため、各バンク211,212は、256×１K×４＝１Mビットのデータを格納し、２つのバンク間の総記憶容量は２Mビットとなる。
【００１０】
記憶アレイに格納されたデータは、デコーダ214により行アドレスをデコードすることによりアクセスされる。好適な実施形態では、行アドレスは、バンク211,212における256の行に対応して８ビットである。行アドレスは、コントローラ102により生成される行アドレスストローブ（ＲＡＳ）信号に応じてレジスタ213に格納される。デコーダ214は、記憶アレイ202〜209における256の行のうちの１つを２組のビットラインセンス増幅器（ＢＬＳＡ）216,218により読み出すために選択する。
【００１１】
デコーダ214によりデコードされた行アドレスは、８Kビット幅のデータ行を生成するために各バンクの各アレイへと供給される。ＢＬＳＡ216は、デコーダ214により選択された行の奇数半部211に含まれる記憶セルに格納されているデータを検知し増幅する。ＢＬＳＡ218もまた、偶数バンク212における選択された行の偶数半部について同様に動作する。
【００１２】
コントローラ102から受信した列アドレスは、コントローラ102からの列アドレスストローブ（ＣＡＳ）信号に応じてレジスタ219に格納される。該レジスタ219中の列アドレスは、ＢＬＳＡ216,218に格納されている８Kビットから256ビットを選択するためにデコーダ224によりデコードされる。マルチプレクサ220,222は2-1多重化機能を果たすものである。マルチプレクサ220は、ＢＬＳＡ216からの128ビットを64対の2-1マルチプレクサ128へと受信する。マルチプレクサ222も同様に構成され、及びＢＬＳＡ218に対して同様に動作する。マルチプレクサ220,222は両方とも、コントローラ102により生成されたHI/LO信号により制御される。該HI/LO信号は、列アドレスの最下位ビットに対応するものである。ＢＬＳＡ216,218が、選択された行の記憶セルの各々におけるデータを検知し増幅すると、半分のデータ列を表す128ビットのデータが、メモリ104からコントローラ102に対して利用可能となる。図２から分かるように、メモリ104により提供される各々の128ビットデータは、奇数バンク211からの64ビットデータと、偶数バンク212からの64ビットデータとから構成される。コントローラ102が最初の128ビットデータを捕捉すると、HI/LO信号がトグルされて、その値が２進数０から２進数１へ又は２進数１から２進数０へと変更され、これにより、マルチプレクサ220,222が、それぞれ、ＢＬＳＡ216,218から受信した他の64ビットデータを選択するようになる。
【００１３】
HI/LO信号のトグル操作により、他の128ビットデータがメモリ104により出力されることになる、ということが理解されよう。更なる128ビット情報を読み出すためのHI/LO信号の使用は、アドレスバス全体を変更するのではなく、たった１つの信号をトグルさせるだけで、更なる128ビットデータを生成することができる、という点で有利である。これは、HI/LO信号を、クリティカルパスとして設計すること、及び行アドレスラインまたは列アドレスラインについて可能であるものよりも一層高い周波数でのスイッチングを可能にする最適な態様でＩＣチップ100上にルーティングすることを可能にすることにより、ＩＣチップ100のルーティングを単純化するものとなる。
【００１４】
マルチプレクサ220,222により選択されたデータは、奇数組及び偶数組のメインセンス増幅器（ＭＳＡ）224,226により増幅される。ＭＳＡ224,226は、従来と同様のものであり、データセンス増幅器として一般に知られるものである。ＭＳＡ224,226は、従来の態様で動作して、ＢＬＳＡ216,218により生成された小さな差分型の信号を、コントローラ102により使用可能なフルスイング(full swing)信号へと変換する。
【００１５】
上記説明は、データがメモリ104から取り出される読み出し動作に焦点を当てたものである。書き込み動作は、書き込みイネーブル信号がコントローラ102により生成され、及び記憶アレイへの書き込みのためにデータがメモリ104へ供給されることを除き、あらゆる点で上記と同様に動作する。ＭＳＡ224,226は、受信したフルスイング信号を小さな信号へと変換する。次いで、その結果として生じた信号が、適当な行及び列アドレス、即ちＲＡＳ信号及びＣＡＳ信号及び書き込みイネーブル信号に応じて、バンク211,212における適当なロケーションに書き込まれる。図２には書き込みイネーブル信号が一般的に示されている。読み出し動作と書き込み動作とを識別するためのシステム内部のデータパスを含むメモリシステムの制御は従来と同様のものであり、当業者であれば本開示内容を参照することにより理解することができよう。
【００１６】
図３は、４つのデータワードを得るためにコントローラ102からメモリ104へと送られる各信号の関係を示すタイミングチャートである。コントローラ102により生成されるデータ、アドレス、及び制御信号は、図３にCLK及び符号302で示すクロック信号と同期して生成される。符号304で示す書き込みイネーブル（WE）信号は、メモリ動作が読み出し動作であるか書き込み動作であるかを制御する。書き込みイネーブル信号は、負論理信号として示されており、これは、該信号が論理値０である場合にメモリ104へのデータの書き込みを制御し、該信号が論理値１である場合に非能動となり、次いでメモリからデータが読み出される。メモリへの行アドレス信号は、符号306で示されており、上述のように好適には256の行を選択するために８ビットから構成される。メモリ104による行アドレス306の使用は、レジスタ213への行アドレスの格納を生じさせるＲＡＳ信号305により制御される。上述の列アドレス信号は、好適には６ビットから構成され、これを符号308で示す。列アドレスの使用は、レジスタ219への列アドレスの格納を生じさせるＣＡＳ信号307により制御される。HI/LO信号は、符号310で示されている。メモリ104により出力される信号は、符号312で示されている。
【００１７】
図３のタイミングチャートは読み出し動作を示している。該読み出し動作は、個々に番号を付したクロック信号302で示す８クロックサイクルを要する。サイクル０より前のサイクルで、行アドレスがコントローラ102により行アドレスバス上におかれ、及び行アドレスをレジスタ213に格納するためにＲＡＳ信号が表明される。クロックサイクル２では、行アドレスをデコードするため及びデコードされた行中のデータをセンス増幅器216,218で検知するための十分な量の時間が許容された後に、選択された行における２つの列のうちの１つを選択するために列アドレスが提供され、及び列アドレスを格納するためにＣＡＳ信号307が表明される。図３から分かるように、ＣＡＳ信号はサイクル２で表明される。サイクル４では、選択された行における最初の128ビットデータが利用可能となる。サイクル３でHI/LO信号がトグルされ、サイクル５で第２の128ビットデータが利用可能となる。またサイクル５では、センス増幅器216,218に格納されているデータの第２の列を選択するよう列アドレスが変更される。これにより、サイクル６で第３の128ビットデータが利用可能となり、該サイクル６においてHI/LO信号が再びトグルされ、これにより、サイクル７で第４の128ビットデータが利用可能となる。第２の列アドレスがサイクル５で表明されると、その後続サイクルで、ＲＡＳ及びＣＡＳ信号がもはや必要ないため非能動化される。これにより、別のメモリサイクルをサイクル９で開始させることが可能になる。図３のタイミングチャートから分かるように、単一の行アドレスを使用することにより全部で512ビットのデータがアクセスされる。HI/LO信号は、列アドレスが変更される必要のある周波数の２倍の周波数でトグルされる。これにより、メモリ104に必要となるクリティカルパスの数が削減され、及び４つの異なる列アドレスを使用して上記と同量のデータを取り出す場合と比較してクロックの周波数を増大させることが可能になる。
【００１８】
上述した特定の機構及び技術は、本発明の一実施形態の単なる例示に過ぎないものであることが理解されよう。例えば、本書で説明した特定のデータパス幅及びメモリアレイのサイズは、模範的な実施例の説明に資するために提供したものに過ぎない。これ以外の幅及びサイズもまた本発明の原理の範囲内に十分に包含されるものである。本発明の真の思想及び範囲から逸脱することなく極めて多数の更なる修正を上記方法及び装置に加えることが可能である。
【図面の簡単な説明】
【図１】  本発明の原理を採用したグラフィックコントローラチップを示す高レベルブロック図である。
【図２】  図１のメモリシステムの好適な実施形態を示すブロック図である。
【図３】  好適な実施形態の動作を示すタイミングチャートである。
【符号の説明】
100        ＩＣチップ
102        コントローラ
104        メモリ
202〜209  記憶アレイ
211        奇数バンク
212        偶数バンク
213,219    レジスタ
214,224    デコーダ
216,218    ビットラインセンス増幅器
220,222    マルチプレクサ
【図１】
0004080158.tif 000002
【図２】
0004080158.tif 000003
【図３】
0004080158.tif 000004