(57)【特許請求の範囲】
【請求項１】
周期信号に応じてランダムアクセスメモリアレイ内においてそのランダム書き込みアドレスにデータを転送すると共に、そのランダム読み取りアドレスからデータを転送するように構成されたランダムアクセスメモリアレイと、
上記ランダムアクセスメモリアレイに接続されたデータ入力バスと、
上記ランダムアクセスメモリアレイに接続されたデータ出力バスと、
上記ランダムアクセスメモリアレイに接続されると共に、上記ランダム読み取りアドレス及び上記ランダム書き込みアドレスを提供するように構成されたアドレスバスと、を備えたランダムアクセスメモリであって、
前記周期信号は、（ｉ）周期信号の第１の移行（遷移）に応答して上記ランダムアクセスメモリアレイへのデータ転送動作を制御すると共に、（ii）上記周期信号の第２の移行に応答して上記ランダムアクセスメモリアレイからのデータ転送動作を制御するようになっており、
上記周期信号の上記第２の移行が上記周期信号の上記第１の移行に対して相補的であるランダムアクセスメモリ。
【請求項２】
上記周期信号の１つの移行に応答して上記ランダムアクセスメモリアレイの上記ランダム書き込みアドレスに上記データを書き込むように構成された第１の書き込み回路をさらに備え、上記１つの移行が立ち上がり移行または立ち下がり移行のいずれかである請求項１記載のランダムアクセスメモリ。
【請求項３】
上記周期信号の１つの移行に応答して上記ランダムアクセスメモリアレイの上記ランダム読み取りアドレスから上記データを読み取るための回路をさらに備え、上記１つの移行が立ち上がり移行または立ち下がり移行のいずれかである請求項１記載のランダムアクセスメモリ。
【請求項４】
上記１つの移行以外の上記周期信号の移行に応答して上記ランダムアクセスメモリアレイの上記ランダム書き込みアドレスに上記データを書き込むように構成された第２の書き込み回路をさらに備える請求項２記載のランダムアクセスメモリ。
【請求項５】
上記周期信号の上記１つの移行が上記立ち上がり移行である請求項４記載のランダムアクセスメモリ。
【請求項６】
上記周期信号が周期的な制御信号である請求項１記載のランダムアクセスメモリ。
【請求項７】
上記周期信号の上記第１及び第２の移行のいずれか一方に応答して上記データ入力バスからのデータを記憶するように構成された第１の書き込みデータレジスタをさらに備える請求項１記載のランダムアクセスメモリ。
【請求項８】
上記周期信号の上記第１及び第２の移行の他方に応答して上記データ入力バスからのデータを記憶するように構成された第２の書き込みデータレジスタをさらに備える請求項７記載のランダムアクセスメモリ。
【請求項９】
上記周期信号の上記第１及び第２の移行の他方に応答して上記ランダムアクセスメモリアレイからのデータを記憶するように構成された読み取りデータレジスタをさらに備える請求項７記載のランダムアクセスメモリ。
【請求項１０】
上記入力データバスと上記書き込みデータレジスタがそれぞれｎ×ｍビット幅であり、ｎとｍはそれぞれ無関係に少なくとも２以上の整数である請求項７記載のランダムアクセスメモリ。
【請求項１１】
上記第１の周期信号の上記第１及び第２の移行の他方に応答して上記ランダムアクセスメモリアレイからのデータを記憶するように構成されたｎ×ｍビット幅の読み取りデータレジスタをさらに備え、上記データ出力バスもｎ×ｍビット幅である請求項１０記載のランダムアクセスメモリ。
【請求項１２】
上記データ入力バスと上記データ出力バスの各々が単方向性である請求項１記載のランダムアクセスメモリ。
【請求項１３】
上記周期信号がクロック信号である請求項１記載のランダムアクセスメモリ。
【請求項１４】
ランダムアクセスメモリアレイからデータを読み取ると共に、上記ランダムアクセスメモリアレイにデータを書き込むための方法であって、周期信号の第１の移行に応答して、第１の単方向バス上の第１の複数のデータビットを上記ランダムアクセスメモリアレイ内のランダム書き込みアドレスに転送するステップと、
上記周期信号の第２の相補的な移行に応答して、上記ランダムアクセスメモリアレイ内のランダム読み取りアドレスから第２の複数のデータビットを第２の単方向バス上に転送するステップと、を有し、
上記周期信号の上記第２の相補的な移行が、上記周期信号の上記第１の移行に続く次の移行であって、
上記ランダム書き込みアドレスとランダム読み取りアドレスが、上記ランダムアクセスメモリアレイに接続された単一のアドレスバスにより提供されることを特徴とする上記方法。
【請求項１５】
ランダムアクセスメモリアレイからデータを読み取ると共に、上記ランダムアクセスメモリアレイにデータを書き込むための方法であって、周期信号の第１の移行に応答して、上記ランダムアクセスメモリアレイ内のランダム読み取りアドレスから第１の複数のデータビットを第１の単方向バス上へ転送するステップと、
上記周期信号の第２の相補的な移行に応答して、第２の単方向バス上の第２の複数のデータビットを上記ランダムアクセスメモリアレイ内のランダム書き込みアドレスに転送するステップと、からなる方法。
【請求項１６】
上記周期信号の上記第２の相補的な移行が、上記周期信号の上記第１の移行に続く次の移行である請求項１５記載の方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、概して半導体及び／または集積回路デバイスの分野に関し、より詳しくはランダムアクセスメモリと、同メモリへの書き込み及び同メモリからの読み取りの方法とに関する。
【０００２】
【発明が解決しようとする課題】
本発明の第１の目的は、データスループット（処理量）を増加できるランダムアクセスメモリを提供することである。
【０００３】
本発明の他の目的は、アドレス情報の送信及び／または記憶専用のチップ領域を減らすことができる上記ランダムアクセスメモリを提供することである。
【０００４】
本発明の他の目的は、ランダムアクセスメモリと、読み取りと書き込み動作を同一のクロックサイクルで実行することが可能な上記ランダムアクセスメモリの操作方法とを提供することである。
【０００５】
さらに本発明の他の目的は、上記のようなランダムアクセスメモリと、完全なランダムアドレス（全く任意なアドレス）を使用することが可能な上記ランダムアクセスメモリの操作方法とを提供することである。
【０００６】
さらに本発明の他の目的は、このようなランダムアクセスメモリと、連続的及び／またはアサートされる（asserted）アドレス同士が完全に無関係であるランダムアクセスメモリの操作方法とを提供することである。
【０００７】
本発明の別の目的は、このようなランダムアクセスメモリと、連続的及び／またはアサートされるアドレスに対して何の制限も課されない操作方法とを提供することである。
【０００８】
本発明の別の目的は、このようなランダムアクセスメモリと、同一のクロックサイクルでメモリから読み取りまたメモリに書き込むために同一のアドレスが使用可能な操作方法とを提供することである。
【０００９】
さらに本発明の別の目的は、このようなランダムアクセスメモリと、周期信号（例えばクロック）が操作性にとって欠くことができない唯一の制御型信号である操作方法とを提供することである。
【００１０】
本発明の他の目的及び利点は、添付図面に関連して行われる以下の記述から明白になり、この場合、図面と例によって本発明の実施形態が開示される。
【００１１】
【課題を解決するための手段】
本発明は、データ入力バスと、データ出力バスと、ランダムアクセスメモリアレイ内のランダム書き込みアドレス（任意の書き込みアドレス）にデータを転送すると共に、ランダム読み取りアドレス（任意の読み取りアドレス）からデータを転送するように構成された上記ランダムアクセスメモリアレイと、上記ランダム読み取りアドレス及び上記ランダム書き込みアドレスを提供するアドレスバスと、周期信号であって、（ｉ）この周期信号の第１の移行（遷移）またはロジックレベルに応答して上記ランダムアクセスメモリアレイへのデータ転送動作を制御すると共に、（ｉｉ）上記周期信号の第２の移行またはロジックレベルに応答して上記ランダムアクセスメモリアレイからのデータ転送動作を制御するように構成された周期信号と、を備えるランダムアクセスメモリを提供する。上記周期信号の上記第２の移行またはロジックレベルは、上記周期信号の上記第１の移行またはロジックレベルに対して相補的である。
【００１２】
別の実施形態において、本発明は、ランダムアクセスメモリアレイからデータを読み取ると共に、上記アレイにデータを書き込むための方法であって、周期信号の第１の移行またはロジックレベルに応答して、上記ランダムアクセスメモリアレイ内の第１のランダムアドレスにまたはそのアドレスから、第１の単方向バス上の第１の複数のデータビットを転送する段階（ステップ）と、上記周期信号の第２の相補的な移行またはロジックレベルに応答して（すなわち第１の段階と反対の方法で）、上記ランダムアクセスメモリアレイ内の第２の独立したランダムアドレスからまたはそのアドレスに、第２の単方向バス上の第２の複数のデータビットを転送する段階（ステップ）とを備える方法を提供する。
【００１３】
【発明の実施の形態】
本発明の好適な実施形態を添付図面に基づいて以下に詳細に説明する。但し、本発明が種々の形態によって具体化可能であることを理解すべきである。したがって、ここに開示する特定の詳細は限定的なものと解釈すべきでなく、むしろ請求項の根拠として、また実質的にすべての適切な詳細なシステム、構造または方法において本発明を使用する場合の当業者への説明の基礎として解釈すべきである。
【００１４】
いくつかの例にあっては、本発明の理解を容易にするために、本発明の種々の観点を誇張してまたは拡大して示してあり、また他の例にあっては、本発明のより重要な観点または特徴が不明瞭になるのを避けるため、従来のものと考えられる部分を示さない場合があることを理解されたい。
【００１５】
本発明のランダムアクセスメモリでは、データ入力バス、データ出力バス及びランダムアクセスメモリアレイの各々は、無関係にｍまたはｎ×ｍビットの幅であることが可能である。この場合、ｍは整数≧２、好ましくは≧４、さらに好ましくは≧８であり、ｎは無関係に整数≧２、好ましくは２〜８、さらに好ましくは２〜４である。特定の例では、ｍは８、９、１６、１８、３２、３６、６４、７２、１２８または１４４であることが可能である。データ入力バスは外部ソースからデータを受信することが可能である。好適な実施形態では、データ入力バス、データ出力バス及びアドレスバスの各々は、単方向性である（すなわちデータは１つの方向のみに流れる）。
【００１６】
本発明で「周期信号」とは、その周波数が当業者に既知の技術に従って予測及び／または制御することが可能な振動波形を有し、且つ、読み取り動作または書き込み動作の一部として実行される１つ以上の回路機能を制御するように構成することができるすべての信号を意味する。周期信号は、それぞれ周期信号の第１及び第２の移行に応答してランダムアクセスメモリアレイへの、またはそのアレイからの１つ以上のデータ転送動作を制御するように構成することが可能である。この場合第２の移行は周期信号の第１の移行に対して相補的である。したがって、メモリは同期的に動作する。同期動作のために、周期信号は内部もしくは外部のクロック信号、または出力イネーブル（出力許可信号）のような周期的な制御信号であることが可能である。読み取り、書き込み、記録及び／またはデータパスゲート機能を制御する１つ以上の独立した周期信号を設けることが可能である（提供してもよい）。適切及び／または望ましい場合、周期信号は第１のクロック信号とその相補的信号を備えることが可能である。
【００１７】
本発明のランダムアクセスメモリアレイは、その中のいかなるランダムアドレスにおいてもデータを記憶及び／または検索するように構成することが可能である。アドレスは、アドレスバス上の１つ以上の信号によって規定される。
【００１８】
本発明のランダムアクセスメモリは、周期信号の少なくとも１つの移行に応答して第１のランダムアドレスでアレイにデータを書き込むように機能する回路をさらに備えることが可能である。同様に、本発明のランダムアクセスメモリは周期信号の少なくとも１つの移行に応答してアレイ内のランダム位置からデータを読み取るように機能する回路をさらに備えることが可能である。読み取り回路及び書き込み回路が応答する周期信号の移行同士は、好ましくは互いに相補的である。
【００１９】
図１に示したように、本発明のランダムアクセスメモリ（ＲＡＭ）アーキテクチャはメモリアレイにアクセスするために分離した（別個の）第１及び第２のポート（例えば「データイン」と「データアウト」）を備えることが可能である。ポートは単方向性であることが可能であり、この場合ポートの各対（例えば入力／出力対）は、ｎアドレス入力を備える専用のアドレスバス（例えば図１の「アドレスＷ／アドレスＲ」）を有することが可能である。ここで、ｎはポートとこれらに付随する制御ロジックの完全な独立を維持するために１以上の整数である。分離したデータ入力と出力によって（データ入力と出力を別個にすることにより）、通常のＩ／Ｏデバイスに必要とされることがあるデータバスの「転向・送受反転」の必要性（the need to "turn around" the data bus）がなくなる。
【００２０】
入出力ポートを介したアレイへのアクセスはある程度互いに独立させてもよく、このアクセスは１つ以上の周期信号（例えば、内部または外部のクロック信号や１組の差分入力クロック）に同期して開始される。データスループットを最大にするために、入力ポートは、立ち上がりまたは立ち下がりエッジの一方で、あるいは周期信号サイクルの維持ロジックレベル（sustained logic level ）の１つの間にデータを転送し、出力ポートは、立ち上がりまたは立ち下がりエッジの他方で、あるいは周期信号サイクルの維持ロジックレベルの他方のときに、データを転送する（例えば、図１の入力クロック「ＣＬＫ」参照）。本明細書に記述したように、データ転送をロジックレベルでトリガすることも可能である。すなわち、データ転送は、１つ以上の周期信号の特定または所定のロジックレベルに応答して行われるようにしてもよい。
【００２１】
メモリアレイの深さは、実質的に、２つ以上のアレイ及び／または独立したＲＡＭデバイス（例えば集積回路チップ）及びこれらに付随する選択ロジック回路によって拡張することが可能である。このようなロジック回路によって送られる（保有される）制御信号（例えばポート選択入力）により、各ポートが独立したデバイスであるかのように機能することができ、これによって各ポート毎独立してさらなる深度拡張を行うことができる。
【００２２】
すべての同期データ入力は、周期信号によって制御される１つ以上書き込みレジスタ（または入力レジスタ）を通過するようにしてもよい。すべてのデータ出力は、これも同一または異なった周期信号によって制御される１つ以上の読み取りレジスタ（及び／または出力レジスタ）を通過することが可能である。
【００２３】
すべての書き込みは、インターフェースロジックを簡略化するために、オンチップ同期自己計時書き込み回路（on-chip synchronous self-timed write circuitry）によって行うことが可能である。
【００２４】
【実施例】
図２に示したように、本発明の好適な実施例に係るＲＡＭアーキテクチャは、同期パイプラインバーストスタティックＲＡＭ（ＳＲＡＭ）として構成される。データはデータインバスを通ってＳＲＡＭ内に単方向に流れ、且つ／またはデータアウトバスを通って単方向に外に流れることが可能である。各々のバスは、外部信号を受信または送信するためにそれ自身のパッドを有することが可能である。本発明のＲＡＭアレイは１つのアドレスバス（例えばＡ[17:0]）上にアドレス情報を受信し、アドレスレジスタの中にアドレス情報を記憶またはラッチすることが可能である。データ入力とデータ出力ポートを分離することによって、本発明のＲＡＭはデータコンテンション（data contention ）を防止し、且つ／またはデータバスを「送受反転」する必要をなくす。
【００２５】
両方のデータポートのためのアクセスは１つの入力クロックまたは１対の差分入力クロックによって制御することが可能である（ＣＬＫ／ＣＬＫ＊。ここで、「Ｘ＊」で示した信号は対応する信号「Ｘ」の相補的信号を示し、上線または「棒」表示を有する図中の信号に類似している）。すべての同期タイミングは差分入力クロック信号のクロスポイントから参照することが可能である。すべての周期信号のすべてのエッジ（他のすべての制御信号がアクティブロジックレベルでアサートされると仮定すると、好ましくはクロック信号の立ち上がりエッジ）でアクセスを始めることができるが、ロジック回路の容易さと簡明さのため、アクセスは正のクロック（ＣＬＫ）の立ち上がりエッジでのみ始められる。
【００２６】
すべてのデータ入力（例えば同期入力ＤＩＮ［１７：０］）は、正の入力クロック（ＣＬＫ）の立ち上がりまたは立ち下がりエッジによって制御される１つ以上のｍまたは２ｍビット幅の入力レジスタ（例えば、図２に示したようなｍビット幅のデータ書き込みレジスタ１及びデータ書き込みレジスタ２）を通過させてもよい。このような場合、データ入力バスは入力レジスタと同一の幅を有することが可能である。
【００２７】
本発明のランダムアクセスメモリは、その中のランダム読み取り及び／または書き込みアドレスにデータを記憶し、且つ／または同アドレスのデータを検索するように構成される１つ以上のアレイ（例えば「２５６Ｋｘ１８」）を備えることが可能である。アレイは概して行と列で配向される。この場合、行数は１から２x ＋ｃ、好ましくは４から２x ＋ｃ、さらに好ましくは１６から２x ＋ｃであることが可能であり、ｘは２から１５、好ましくは３から１４、さらに好ましくは４から１２の整数であることが可能であり、ｃは冗長行（列）の数を表し、０から１２、好ましくは０から８、さらに好ましくは０から（２x ／８）の整数であることが可能である。列数は上記のものとは無関係に１から２y ＋ｄ、好ましくは４から２y ＋ｄ、さらに好ましくは８から２y ＋ｄであることが可能であり、この場合ｙは０から１０、好ましくは２から９、さらに好ましくは３から８の整数であることが可能であり、ｄは冗長列の数を表し、０から８、好ましくは０から４、さらに好ましくは０から（２y ／８）の整数であることが可能である。
【００２８】
アドレスはアドレスバス上のｎ個の信号によって規定される。この場合、ｎは１以上、好ましくは３以上、さらに好ましくは５から２y ＋ｄの整数であり、ｙとｄは上に規定した通りである。アドレス情報はアドレスレジスタからアドレスデコーダを通してアレイに到達し、上記デコーダからの信号は動作が実行されるアレイ内の位置を識別（特定）する。ｍまたはｎ×ｍビット幅を有することが可能なアレイは、好ましくは入力レジスタ及び／またはデータ入力バスと同一の幅を有する。
【００２９】
本発明のランダムアクセスメモリは、ｍまたはｎ×ｍビット幅であることが可能であると共に入力レジスタ、アレイ及び／またはデータ入力バスと同一の幅を有することが可能である出力データレジスタをさらに備えることが可能である（例えば図２の読み取りデータレジスタ）。好ましくは、データ出力バスもｍまたはｎ×ｍビット幅であり、さらに好ましくはデータ入力バス、入力レジスタ、アレイ及び／または入力レジスタと同一の幅である。出力ポートは、外部にデータを供給するために複数のパッドをさらに備えることが可能である（例えば同期データ出力ＤＯＵＴ［１７：０］）。
【００３０】
ランダムアクセスメモリが複数のアレイを備える場合、第１のランダムアクセスメモリアレイが第１のデータ入力バス及び／またはデータ書き込みレジスタからデータを受信することが可能であり、第２のランダムアクセスメモリアレイは第２のデータ入力バス及び／またはデータ書き込みレジスタからデータを受信することが可能である。同様に、複数のアレイを備えるランダムアクセスメモリは複数のデータ出力バス及び／またはデータ読み取りレジスタをさらに備えることが可能であり、第１及び第２のデータ読み取りレジスタは第１及び第２のランダムアクセスメモリアレイから転送されたデータをそれぞれ記憶し、第１及び第２のデータ出力バスは第１及び第２のランダムアクセスメモリアレイまたはデータ読み取りレジスタからそれぞれデータを伝送する。この場合、各ランダムアクセスメモリアレイは、（ａ）ランダムアクセスメモリアレイの第１のランダムアドレスにデータを書き込むことができる第１の回路と、（ｂ）ランダムアクセスメモリアレイの第２のランダムアドレスからデータを読み取ることができる第２の回路とをさらに備えることが可能であり、各回路は、周期信号の連続的移行またはロジックレベルに応答して作動し、第２のランダムアドレスは第１のランダムアドレスと同一でもよいし異なってもよい。各アレイは、読み取り及び書き込みアドレス情報の両方を供給するために特定のアドレスバスを有することも可能である。
【００３１】
図２に示したように、本発明のランダムアクセスメモリは、ｍビット幅のデータ出力バスと、第１及び第２の３ステート出力バッファ（例えばバッファ１０及び１２）と、第１、第２及び第３のｍビット幅の出力レジスタ（例えばレジスタ２０、レジスタ２２、レジスタ２４）とをさらに備えることが可能であり、この場合、
第１及び第２の出力レジスタの各々は、第１の周期信号移行またはレベルに応答して出力レジスタからｍビットのデータを記憶し、
第３の出力レジスタは、第２の相補的な周期信号移行またはレベルに応答して第１の出力レジスタからｍビットのデータを記憶し、
第１の３ステート出力バッファは、第３の周期信号移行またはレベルによって第３の出力レジスタから出力データバスへデータを供給することを許可され（上記第３の周期信号移行またはレベルは、［ｉ］上記第２の相補的な周期信号移行またはレベルと同一でも異なってもよいし、あるいは［ｉｉ］上記第１の周期信号移行またはレベルの相補的信号であることが可能であり、特定または所定のロジックレベルあるいは状態のときに好ましくはデータ出力を許可する）、
第２の３ステート出力バッファは、第４の周期信号移行またはレベルに応答して第２の出力レジスタから出力データバスへデータを供給することを許可される（上記第４の周期信号移行またはレベルは、［ｉ］上記第１の周期信号移行またはレベルと同一でも異なってもよいし、あるいは［ｉｉ］上記第２の周期信号移行またはレベルの相補的信号でもよい。また、上記移行またはレベルは特定のあるいは所定のロジックレベルまたは状態のときに好ましくはデータ出力を許可する）。
【００３２】
制御入力（例えば１つ以上の同期データ入力または書き込みポート選択信号ＷＰＳまたはＷＰＳ＊、１つ以上の同期データ出力または読み取りポート選択信号ＲＰＳまたはＲＰＳ＊、等々）は、周期信号のエッジまたはロジックレベル（例えば正のクロック入力ＣＬＫの立ち上がりエッジ）によって制御される制御入力レジスタを通過することが可能である。所定の応用例・用途（例えば、ネットワークスイッチまたはルータのようなデータ、音声及び／またはビデオ通信装置）に複数のランダムアクセスメモリを使用する場合、複数のポート選択信号（例えばＷＰＳ１、ＷＰＳ２、ＷＰＳ１＊、ＷＰＳ２＊、ＲＰＳ１、ＲＰＳ２、ＲＰＳ１＊、ＲＰＳ２＊、等々）を好適に適宜使用することが可能である。好ましくは、複数のＲＡＭを用いる場合の各ＲＡＭは、特定ポートをアクティブにする読み取り及び書き込みポート選択信号の独特な組合せ（例えば、ＷＰＳ１＊とＷＰＳ２、ＷＰＳ１とＷＰＳ２＊、ＲＰＳ１＊とＲＰＳ２、ＲＰＳ１とＲＰＳ２＊等）を少なくとも１つ有する。あるいは、異なった入力及び／または出力ポート選択信号により、マルチレジスタ構造の１つの読み取りまたは書き込みレジスタを選択する（イネーブルまたはディスエーブルする）ことができる。
【００３３】
アレイとの間におけるデータ転送
さらに別の実施形態では、本発明は、ランダムアクセスメモリアレイからデータ読み取り及び上記アレイへデータを書き込む方法であって、
書き込み制御信号の第１の移行またはロジックレベルに応答して、第１の単方向バス上の第１の複数のデータビットを上記ランダムアクセスメモリアレイのランダム書き込みアドレスに転送する段階（ステップ）と、
上記周期信号の第２の相補的な移行またはロジックレベルに応答して、上記ランダムアクセスメモリアレイのランダム読み取りアドレスから第２の単方向バス上へ第２の複数のデータビットを転送する段階（ステップ）とを備える方法に関する。
【００３４】
あるいは、本発明の方法は、
周期信号の第１の移行またはロジックレベルに応答して、第１の複数のデータビットを上記ランダムアクセスメモリアレイのランダム読み取りアドレスから第１の単方向バス上へ転送する段階と、
上記周期信号の第２の相補的な移行またはロジックレベルに応答して、第２の単方向バス上の第２の複数のデータビットを上記ランダムアクセスメモリアレイのランダム書き込みアドレスに転送する段階と、からなる。
【００３５】
本発明の方法では、周期信号の第２の相補的な移行は、周期信号の第１の移行に続く次の移行でもある。同様に、周期信号の第２の相補的なロジックレベルは、周期信号の次の移行に続くロジックレベルである。
【００３６】
読み取り
図３に示したように、読み取り動作は、適切な周期信号エッジ（例えば正のクロック立ち上がり［ＣＬＫ波形も参照］）においてアクティブな出力ポート選択信号（例えばＲＰＳ＊）をアサートすることによって開始することが可能である。Ａ［１７：０］の読み取りアドレスは、好ましくはアレイからの読み取りと同じ周期信号エッジに対して（に応答して）アドレスレジスタの中に記憶することが可能である。ＲＡＭは１からｎ・ｍビット幅のデータワードまでアクセスし、また読み取りアドレスをラッチするクロックエッジと同一のクロックエッジで、しかし１つ以上（好ましくは１）の遅延サイクルで、出力レジスタ（例えば図２のレジスタ２０及びレジスタ２２）に各ワードを記憶することが可能である。
【００３７】
ＲＡＭは、読み取りアドレスをラッチするクロックエッジと同一のクロックエッジで、各読み取り動作によって２つのデータワードにアクセスすることが可能である。例えば、図２では、２つのデータワード（または１つの２倍長データワード）は単一クロックエッジで、データ読み取りレジスタから出力レジスタ２０と２２に転送することが可能であり、次に、印加される出力制御信号（例えば出力イネーブル信号ＯＥ）がすべてイネーブル状態（例えばＬＯＷ）にアサートされると仮定して、出力レジスタ２２にデータをラッチする単一クロックエッジの結果として生じるクロックロジックレベルで、データの第１または下位のワードを出力バッファ１２を通して出力データバスＤＯＵＴ上に送られることが可能である。次のクロック移行で、出力レジスタ２０に記憶された第２のまたは高位のデータワードを出力レジスタ２４にラッチし、次に、印加される出力制御信号がすべてイネーブル状態にアサートされたままであると仮定して、第２のデータワードを出力レジスタ２４にラッチするクロック移行の結果として生じるクロックロジックレベルで、上記第２のまたは高次のデータワードを出力バッファ１０を通してＤＯＵＴ信号上に送られることが可能である。この構成では、すべてのデータは、例えばクロック立ち上がり後３．５ｎｓという短時間で利用可能とすることができ（１２５ＭＨｚの読み取り／書き込み制御信号を仮定して）、実質的に遅延サイクルのない読み取り動作を提供する。
【００３８】
次のクロックサイクルの同一の移行で、アレイに記憶された次のデータワードは出力レジスタにラッチされ、次に前と同じクロックロジックレベルで、３ステート出力バッファを通してＤＯＵＴバス／パッド上に送られる。
【００３９】
読み取りアクセスは、例えば、正のクロックのすべての立ち上がりエッジ毎に開始することができる。そうすることによって、クロックの立ち上がり及び立ち下がりエッジ毎にデータが装置から転送されるように、データフローをパイプライン処理することができる。
【００４０】
本発明のＲＡＭは、選択解除されるとまず、未完の（しかかり中の）読み取り処理を完了するようにしてもよい。同期内部回路は、正のクロックの次の立ち上がりエッジに続き、出力を自動的に３ステートにすることが可能である。これによって、待ち状態の挿入なしに、本発明のＲＡＭのポートと、すべての外部デバイス（限定なしに本発明による第２のＲＡＭを含む）との間で待ち状態なしのスムーズな移行が可能になる。
【００４１】
以下の表１は、模範的な読み取り動作における読み取りポートの真理表を示している。表１の信号名の内容と説明は表３に記載されている。
【００４２】
【表１】
0004493116.tif 000002
【００４３】
書き込み
図４に示したように、書き込み動作は、適切な周期信号エッジ（例えばＣＬＫ＊の正のクロック立ち上がりまたはＣＬＫの立ち下がりエッジ）においてアクティブな入力ポート選択信号（例えばＷＰＳ＊）をアサートすることによって開始することが可能である。Ａ［１７：０］に提示された書き込みアドレスは、書き込み動作を開始するクロックエッジと同一のクロックエッジでアドレスレジスタに記憶することが可能である。しかし、データ入力（例えばＤＩＮ［１７：０］）に提示された情報は、ＣＬＫの正のクロック立ち上がりで第１の入力レジスタ（例えば図２の書き込みデータレジスタ１）に記憶することが可能である。正のクロックの立ち下がりエッジで、ＤＩＮ［１７：０］に提示された情報は第２の入力レジスタに記憶される（図２の書き込みデータレジスタ２参照）。この正のクロックエッジ立ち下がりで、対応する２ｍビット幅のワードのデータがアレイ内に書き込まれる。
【００４４】
書き込みアクセスは、読み取りアクセスを開始するのと同一のクロックのすべての立ち下がりエッジ毎に（または相補的クロックの立ち上がりエッジ毎に）開始することができる。そうすることによって、クロックサイクル毎に装置との間でデータが送受信されるよう、データフローがパイプライン処理される。
【００４５】
選択解除されると、入力ポートはそれに対するすべての入力を無視する。
【００４６】
表２は、模範的な書き込み動作における書き込みポートの真理表を示している。表２の信号名の内容と説明は表３に記載されている。
【００４７】
本発明のＲＡＭアーキテクチャの入力及び出力ポートは互いに無関係に（独立して）動作することが可能である。他のポート上の処理アドレスに関係なく、メモリアレイのすべての位置で読み取り及び書き込みができる。入力及び出力ポートが周期信号の同一のサイクルで同一の位置にアクセスしたならば、データ入力に提示された情報は、（例えば、読み取り及び書き込みアドレスのＡＮＤまたはＮＡＮＤ型式のロジック比較に応答して発生される制御信号に応答する従来のバイパスロジック回路によって）データ出力に転送されるか、あるいは、代わりに出力レジスタに記憶されたデータは最初にデータ出力バスに出力され、その後同じ位置に新しいデータが書き込まれるようにしてもよい。
【００４８】
【表２】
0004493116.tif 000003
【００４９】
本発明のＲＡＭアーキテクチャは各ポートのために１つ以上のポート選択入力を有してもよく、これにより深度拡張を容易にすることができる。ポート選択は任意の周期信号の特定のエッジまたはロジックレベルでサンプリングすることが可能であるが、入力ポート選択は正のクロック入力（ＣＬＫ）の立ち上がりエッジでサンプリングすることが好ましく、また出力ポート選択は正のクロック入力（ＣＬＫ）の立ち下がりエッジでサンプリングすることが好ましい。いずれのポート選択入力によっても特定のポートの選択を解除することができる（例えば、アクティブな出力ポート選択によって出力ポートの選択が解除される）。１つのポートの選択解除は他のポートに影響を与えない。しかかり中の処理（読み取り及び／または書き込み）はすべて、ポート選択解除の前に完了されることが好ましい。
【００５０】
図３の信号名の内容と説明は表１で確認することができる。
【００５１】
読み取り及び書き込み
図５は読み取りと書き込み動作の間に生じるデータ転送事象の順序を示している。表３は、図１−図５に示した及び／または説明した模範的な入力信号の内容と説明を示している。文字「Ａ」、「Ｂ」、「Ｃ」等は、ＲＡＭアレイのアドレス（例えば２つのｍビット幅のワードまたは１つの２ｍビット幅のワードのワードアドレス）を示している。用語「Ｄ（Ａ）」、「Ｄ（Ｂ）」、等々、及び「Ｄ（Ａ＋１）」、「Ｄ（Ｂ＋１）」等は、例えばｍビット幅のワードを書き込むと共に／またはｍビット幅の入力レジスタにデータをラッチするときに、対応するアドレス「Ａ」、「Ｂ」、「Ｃ」等に書き込まれるかまたはそれらから読み取られる第１のまたは低次のデータワード及び第２のまたは高次のデータワードをそれぞれ示している。かくして、２ｍビット幅の回路の場合、「Ｄ（Ａ）」と「Ｄ（Ａ＋１）」、「Ｄ（Ｂ）」と「Ｄ（Ｂ＋１）」等は、単一の２ｍビット幅のデータワードを示すことになる。この例では、信号「ＣＳ＊」は２つの外部のチップ選択信号（表３のＣＳ１とＣＳ２を参照）の論理結合を表している。
【００５２】
図５に示したように、正のクロックＣＬＫがＬＯＷからＨＩＧＨに移行する間に、アドレスＡはアドレスバスからアドレスレジスタにラッチされるかまたは書き込まれる。アドレスＡは、ＣＬＫとＣＬＫ＊が重なる約ｔｓナノセカンド（ｎｓ）前にアドレスバス上に存在する（「セットアップタイム」。図３の波形Ａ参照）。アドレスは約（ｔs ＋ｔH ）ｎｓの間アドレスバス上に維持される（「セットアップ及びホールド時間」。例えば図３の波形Ａ参照）。読み取りポート選択信号は、一時的に（好ましくは周期信号ＣＬＫ及び／またはＣＬＫ＊が移行している間に）アサートされ、周期信号ＣＬＫの次の立ち上がり移行によって、データワードＤ（Ａ）とＤ（Ａ＋１）は、アレイのアドレスＡから読み取りデータレジスタを通して第１及び第２の出力レジスタ２０及び２２にラッチされる。この移行の結果として生じるＣＬＫのＨＩＧＨロジックレベルは、出力バッファ１２をイネーブル状態にし、Ｄ（Ａ）をデータ出力バスに出力する。ｍビット幅の回路の場合、次に周期信号の相補的な移行は出力レジスタ２０からデータワードＤ（Ａ＋１）をラッチし、シャドーレジスタ（例えば図２のレジスタ２４）内にラッチすることが可能である。この相補的なＣＬＫ移行の結果として生じるＣＬＫのＬＯＷロジックレベルは、出力バッファ１０をイネーブル状態にし、Ｄ（Ａ＋１）をデータ出力バスとデータ出力パッドとに出力する。
【００５３】
周期信号ＣＬＫの第１の移行はさらに、データインバス上のデータワードＤ（Ｘ）を第１の書き込みレジスタにラッチする。すぐ上に説明した読み取り動作と同様であるが相補的に、アドレスＸは、ＣＬＫのＨＩＧＨからＬＯＷへの第２の立ち下がり移行の間に、アドレスバスからアドレスレジスタ内にラッチされるかまたは書き込まれる。新しいアドレス信号、またはＡからＸへのアドレス移行が、ＣＬＫとＣＬＫ＊との交差前の少なくとも約ｔｓナノセカンド（ｎｓ）に生じる。クロック発生器からアドレスレジスタへのバス（図２のバス３０を参照）上に送られるＣＬＫパルスの立ち下がり移行は、アドレスレジスタをイネーブル状態にし、移行時にアドレスバス上にあるＸアドレスを記憶する。またアドレスＸは、約（ｔs ＋ｔH ）ｎｓの間維持される。
【００５４】
書き込みポート選択信号がアサートされる間（且つ周期信号が移行している間）に、アドレスＸはアドレスバスＡからアドレスレジスタ内にラッチされる。また第２の相補的（データワードＤ（Ｘ）を第１の書き込みレジスタ内にラッチするＣＬＫ移行に対して相補的）なＣＬＫ移行は、図２に示したように、データインバス上のデータワードＤ（Ｘ＋１）を第２の書き込みレジスタ内にラッチし、データワードＤ（Ｘ）及びＤ（Ｘ＋１）を第１及び第２のアレイのアドレスＸにそれぞれに書き込む。あるいは、２ｍビット幅の回路の場合、正の周期信号ＣＬＫの立ち上がり移行は、単一の２ｍビット幅のデータワードを単一の書き込みデータレジスタにラッチする。
【００５５】
ある特定の好適な実施形態に関連して本発明について説明してきたが、記述した特定の形態に本発明の範囲を限定することを意図するものではなく、請求項に記載の本発明の精神と範囲内に含むことが可能な代替、修正及び等価物を網羅することが意図される。
【００５６】
【表３】
0004493116.tif 000004
【図面の簡単な説明】
図面は本明細書の一部を構成し、また種々の形態で具体化可能な本発明の模範的な実施例を含む。本発明の特徴及び利点が例示的に図面に示されている。
【図１】本発明のランダムアクセスメモリ（ＲＡＭ）アーキテクチャの概略図である。
【図２】図１に示したＲＡＭアーキテクチャのより詳細な実施形態である。
【図３】本発明に従って実行される模範的な読み取り動作と関連した種々の信号の相対的なタイミングを示す種々の波形図である。
【図４】本発明に従って実行される模範的な書き込み動作に関連した種々の信号の相対的なタイミングを示す種々の波形図である。
【図５】本発明に従って実行される模範的な読み取り／書き込み動作と関連した種々の信号の相対的なタイミングを示す種々の波形図である。
【符号の説明】
Ａ［１７：０］        アドレスバス
ＣＬＫ、ＣＬＫ＊      入力クロック
ＣＳ                  選択信号
ＤＩＮ［１７：０］    同期入力
ＲＥＧ．              レジスタ
ＲＰＳまたはＲＰＳ＊  読み取りポート選択信号
ＷＰＳ、ＷＰＳ＊      書き込みポート選択信号
ＤＯＵＴ［１７：０］  同期データ出力
【図１】
0004493116.tif 000005
【図２】
0004493116.tif 000006
【図３】
0004493116.tif 000007
【図４】
0004493116.tif 000008
【図５】
0004493116.tif 000009