(57)【特許請求の範囲】
【請求項１】
データ入力一式及びアドレス書込みバスを備えている書込みポートと、
データ出力一式及びアドレス読出しバスを備えている読出しポートと、
前記アドレス書込みバス及び前記アドレス読出しバスに接続されたランダムアクセスメモリアレイと、を有し、
前記ランダムアクセスメモリアレイからのまたは当該ランダムアクセスメモリアレイへのデータの読出し／書込み制御信号が(i)前記読出し／書込み制御信号の立上りまたは立下り遷移あるいは(ii)前記ランダムアクセスメモリアレイからのまたは当該ランダムアクセスメモリアレイへのデータの読出し／書込み制御信号が（i）前記読出し／書込み制御信号の立上り及び立下り両遷移または（ii）前記読出し／書込み制御信号の２つの論理レベルの各々のどちらか一方に呼応して、前記書込みポート及び前記読出しポートのデータ転送動作を制御するように構成されており、
前記ランダムアクセスメモリアレイは、前記アドレス書込みバス上の１つ以上の信号に呼応して、第１の任意アドレスに前記データ入力で受け取られたデータを記憶するとともに、前記アドレス読出しバス上の１つの以上の信号に呼応して、前記データ出力での提示のために、前記ランダムアクセスメモリアレイ内の前記第１の任意アドレスからデータを検索するように構成されていることを特徴とするランダムアクセスメモリ。
【請求項２】
前記書込みポートが外部ソースからデータを受け取る請求項１記載のランダムアクセスメモリ。
【請求項３】
前記読出し／書き込み制御信号の前記遷移または前記論理レベルの少なくとも一方に呼応して、前記ランダムアクセスメモリアレイの前記第１の任意アドレスに前記データを書き込むように動作する回路を更に含んでいる請求項２記載のランダムアクセスメモリ。
【請求項４】
前記読出しポートが、前記読出し／書込み制御信号の前記遷移または前記論理レベルの少なくとも一方に呼応して、前記ランダムアクセスメモリアレイの前記第１の任意アドレスからデータを読み出すように構成されている請求項１記載のランダムアクセスメモリ。
【請求項５】
前記読出し／書込み制御信号が、アドレス書込み信号またはデータ入力信号の第１の遷移に呼応して生成されるパルスである請求項１記載のランダムアクセスメモリ。
【請求項６】
前記読出し／書込み制御信号の第１の遷移または論理レベルに呼応してデータを記憶するように構成された第１のデータ書込みレジスタを更に備えている請求項１記載のランダムアクセスメモリ。
【請求項７】
前記読出し／書込み制御信号の第２の遷移または論理レベルに呼応してデータを記憶するように構成された第２のデータ書込みレジスタを更に備えている請求項６記載のランダムアクセスメモリ。
【請求項８】
前記ランダムアクセスメモリアレイから転送されたデータを、前記読出し／書込み制御信号の遷移に呼応して記憶する第１のデータ読出しレジスタを更に備えている請求項１記載のランダムアクセスメモリ。
【請求項９】
前記ランダムアクセスメモリアレイから転送されたデータを、前記読出し／書込み制御信号の同一または別個の遷移または論理レベルに呼応して記憶する第２のデータ読出しレジスタを更に備えている請求項８記載のランダムアクセスメモリ。
【請求項１０】
mがビットで測定されるバスの幅であり、nが正の乗数であって、n及びmがそれぞれ独立に２以上の整数であるときに、前記データ入力一式から前記データ書込みレジスタへデータを転送するn・mビット幅のデータ入力バスを更に備えている請求項６記載のランダムアクセスメモリ。
【請求項１１】
mがビットで測定されるバスの幅であり、mが２以上の整数であるときに、前記データ入力一式から前記第１及び第２のデータ書込みレジスタへデータを転送するmビット幅のデータ入力バスを更に備え、前記第１及び第２のデータ書込みレジスタもmビット幅である請求項７記載のランダムアクセスメモリ。
【請求項１２】
mがビットで測定されるバスの幅であり、nが正の乗数であって、n及びmがそれぞれ独立に２以上の整数であるときに、前記データ読出しレジスタから前記データ出力一式へデータを転送するn・mビット幅のデータ出力バスを更に備えている請求項８記載のランダムアクセスメモリ。
【請求項１３】
mがビットで測定されるバスの幅であり、mが２以上の整数であるときに、前記データ読出しレジスタから前記データ出力一式データを転送するmビット幅のデータ出力バスを更に備え、前記第１及び第２のデータ読出しレジスタもmビット幅である請求項８記載のランダムアクセスメモリ。
【請求項１４】
前記アドレス書込みバス及び／または前記アドレス読出しバス上の１つ以上の信号によって定められる第２の任意アドレスのデータを記憶するとともに、該第２の任意アドレスのデータを検索するように構成されている第２のランダムアクセスメモリセルアレイを更に備えている請求項８記載のランダムアクセスメモリ。
【請求項１５】
前記第１のランダムアクセスメモリアレイが、前記第１のデータ書込みレジスタからデータを受け取るように構成され、前記第１のデータ書込みレジスタが、同一または別個の読出し／書込み制御信号の第１の遷移または論理レベルに呼応してデータをラッチし、前記第２のランダムアクセスメモリアレイが、前記第２のデータ書込みレジスタからデータを受け取るように構成され、前記第２のデータ書込みレジスタが、前記同一または別個の読出し／書込み制御信号の同一または別個の遷移または論理レベルに呼応してデータを記憶する請求項１４記載のランダムアクセスメモリ。
【請求項１６】
前記読出し／書込み制御信号の少なくとも第１の遷移または論理レベルに呼応して、前記第１及び／または第２のランダムアクセスメモリアレイから転送されたデータをラッチするように各々が構成された第１のデータ読出しレジスタ及び第２のデータ読出しレジスタを更に備えている請求項１５記載のランダムアクセスメモリ。
【請求項１７】
前記読出し／書込み制御信号が、パルス信号または周期信号である請求項１記載のランダムアクセスメモリ。
【請求項１８】
前記読出し／書込み制御信号がクロック信号である請求項１７記載ランダムアクセスメモリ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は全般的に半導体及び集積回路装置に関するものであり、更に詳しく言うと、ランダムアクセスメモリと、ランダムアクセスメモリからの読み出しとランダムアクセスメモリへの書込みを行う方法に関するものである。
【０００２】
【発明が解決しようとする課題】
本発明の主目的は、データ処理能力を増大させたランダムアクセスメモリを提供することである。
【０００３】
本発明の別の目的は、同期演算または非同期演算のどちらか一方を実行できる前述のランダムアクセスメモリを提供することである。
【０００４】
本発明の別の目的は、読出し動作と書込み動作を同一クロックサイクルで実行できるランダムアクセスメモリと、同メモリを作動させる方法とを提供することである。
【０００５】
本発明の更に別の目的は、読出し動作と書込み動作を非同期式に実行できるランダムアクセスメモリと、同メモリを作動させる方法とを提供することである。
【０００６】
本発明の更に別の目的は、全く任意のアドレスを使用できる前述のランダムアクセスメモリと、同メモリを作動させる方法を提供することである。
【０００７】
本発明の更に別の目的は、連続するアドレス及び／またはアサートされた（asserted）アドレスの関連を完全に無くすことができる（関連が全く無い）前述のランダムアクセスメモリと、同メモリを作動させる方法を提供することである。
【０００８】
本発明の更に別の目的は、連続するアドレス及び／またはアサートされたアドレスに一切の制限を課さない前述のランダムアクセスメモリと、同メモリを作動させる方法を提供することである。
【０００９】
本発明の更に別の目的は、同一アドレスを使って同一クロックサイクルでメモリに読み書き（メモリからの読み出しとメモリへの書き込み）できる前述のランダムアクセスメモリと、同メモリを作動させる方法を提供することである。
【００１０】
本発明の更に別の目的は、読出し／書込み制御信号（例えば、クロックまたは制御パルス）が動作に不可欠な唯一の制御タイプ信号（control-type signal ）である前述のランダムアクセスメモリと、同を作動させる方法を提供することである。
【００１１】
本発明の前述以外の目的及び利点は、添付図面と、本発明の実施形態を示す添付図面と関連させた以下の説明とから明らかになるであろう。
【００１２】
【課題を解決するための手段】
本発明は、データ入力一式及びアドレス書込みバスを備えている書込みポートと、読出し／書込み制御信号が（ｉ）前記読出し／書込み制御信号の立上り及び立下り両遷移または（ｉｉ）前記読出し／書込み制御信号の２つの論理レベルの各々、のどちらか一方への呼応としての前記書込みポート及び／または前記読出しポートのデータ転送操作を制御するように構成された、データ出力一式及びアドレス読出しバスを備えている読出しポートと、（ｉ）前記アドレス書込みバス及び上記アドレス読出しバスに接続し、（ｉｉ）前記アドレス書込みバス上の１つ以上の信号に呼応して自己の第１の任意アドレスでの前記データ入力で受け取られたデータを記憶し、及び／または、上記アドレス読出しバス上の１つの以上の信号に呼応して、前記データ出力での提示のために、ランダムアクセスメモリアレイ内の該アドレスのデータを検索するように構成した第１のランダムアクセスメモリアレイと、を備えているランダムアクセスメモリを提供する。
【００１３】
更に、本発明は、ランダムアクセスメモリアレイからデータを読み出し、また、ランダムアクセスメモリアレイにデータを書き込む方法であって、（ａ）読出し／書込み制御信号の第１の遷移に呼応して上記ランダムアクセスメモリアレイの第１の任意アドレスとの間で第１の複数のデータビットを送受信するステップと、（ｂ）上記読出し／書込み制御信号の第２の遷移に呼応して上記ランダムアクセスメモリアレイの第２の任意アドレスとの間で第２の複数のデータビットを独立に送受信するステップとを含む方法を提供する。
【００１４】
尚、添付図面には本明細書の内容の一部が示されていると共に種々の実施形態が示されている。また、本発明の特徴及び利点も図面中に示されている。
【００１５】
また、一部の例では本発明の理解を容易にするために本発明の種々の側面が誇張または拡大して示されていることがあり、また、別の例では本発明のより重要な側面または特徴が不明瞭になるのを避けるため、従来のものと考えられる部分を記載していない場合がある。
【００１６】
【発明の実施の形態】
以下に好適実施形態の詳細な説明をするが、本発明は種々の形態で具現できることを理解されたい。従って、本明細書で開示される具体的細目は、何らかの制限を課すものとして解釈されるべきでなく、クレームの根拠として、また、事実上いかなる適当なシステム、構造、または方法にも本発明を採用できることを当業者に教示するための代表的基礎情報として解釈されるべきものである。
【００１７】
本発明のランダムアクセスメモリでは、読出しポート及び書込みポート要素の各々（すなわち、アドレス書込みバス、データ入力一式、アドレス読出しバス、及びデータ出力一式）を、それぞれ独立に、ｍまたはｎ・ｍビット幅に構成できる。ここで、ｍは２以上の整数、好ましくは４以上の整数、さらに好ましくは８以上の整数であり、これとは独立に、ｎは、２以上の整数、好ましくは２〜４の整数、更に好ましくは２である。特定の例において、ｍを８、９、１６、１８、３２、３６、６４、７２、１２８または１４４にしてもよい。例えば、ポートが読出しポートすなわち入力ポートであった場合、該ポートは外部ソースからデータを受け取る。好適実施形態では、各ポートは一方向性となっている。（すなわち、データは一方向にのみ流れる。例えば、読出しポートは入力専用ポートとして機能し、書込みポートは出力専用ポートとして機能する。）
読出し／書込み制御信号は、該制御信号の立上り遷移と立下り遷移の両方により、同期あるいは非同期方式で、第１のポート及び／または第２のポートの１回以上のデータ転送動作を制御するように構成されてもよい。このように「読出し／書込み制御信号」とは、読出し動作または書込み動作の一部として行われる回路の働きを制御する信号のことを言う。非同期動作の場合、読出し／書込み制御信号は、例えば、アドレス書込み信号またはデータ入力信号の第１の遷移に呼応して発生するパルス信号であってもよい。同期動作の場合、読出し／書込み制御信号は、内部または外部クロック信号などの周期信号であってもよい。また、読出し機能、書込み機能、記録機能、及び／またはデータ通過ゲート機能を制御する１つ以上の独立した読出し／書込み制御信号が存在していてもよい。適切及び／または望ましければ、読出し／書込み制御信号は、第１のパルスまたはクロック信号とその補数から構成されていてもよい。
【００１８】
本発明に係るランダムアクセスメモリアレイは、ランダムアクセスメモリ内の随意の任意アドレスにデータを記憶してもよいし、随意の任意アドレスのデータを検索してもよい。アドレスは、書込みアドレスバス及び／または読出しアドレスバス上の１つ以上の信号によって定められる。
【００１９】
本発明に係るランダムアクセスメモリは、読出し／書込み信号の少なくとも１つの遷移に呼応してアレイの第１の任意アドレスにデータを書き込むように作用する回路を更に備えてもよい。前述の書込み回路が呼応（反応）する読出し／書込み制御信号の遷移により、当業者に周知の技術及び回路構成に基づいて書込み許可等の書込み動作制御信号が生成されることが好ましい。
【００２０】
同様に、本発明に係るランダムアクセスメモリは、読出し／書込み信号の少なくとも１つの遷移に呼応してアレイの任意の場所からデータを読み出すように作用する回路を更に備えてもよく、そのような読出し回路が呼応（反応）する読出し／書込み制御信号の遷移により、当業者に周知の技術及び回路構成に基づいて読出し許可等の読出し動作制御信号が生成されることが好ましい。
【００２１】
図１に記載されているように、本発明に係るランダムアクセスメモリ（ＲＡＭ）のアーキテクチャは、メモリアレイにアクセスするための独立した第１及び第２ポート（例えば、「データＩＮ」と「データＯＵＴ」）を有している。各ポートは、該ポート及びその関連制御論理の完全独立性を維持するために１つ以上の専用アドレス入力（例えば、「アドレスＷ」及び「アドレスＲ」）を有していてもよい。
【００２２】
ポートのうちの１つが読出しポートとして作用するとき、該ポートは読出し動作をサポートするためにアレイからの専用データ出力を持っていてもよい。同様に、ポートのうちの１つが書込みポートとして作用するとき、該ポートは書込み動作をサポートするためにアレイへの専用データ入力を持っていてもよい。データ入力とデータ出力が別個のものであることにより、一般のＩ／Ｏ装置で要求されるようなデータバスを「送受反転」する必要（the need to "turn around" the data bus）が実質的にまたは完全に無くなる。読出しポート及び書込みポートへのアクセスは互いに完全に独立であってもよいし、１つ以上の読出し／書込み制御信号（例えば、データ入力信号またはアドレス書込み信号の第１の遷移に呼応して生成される制御パルス、内部または外部クロック信号、種々の入力クロック一式等）と同期して開始されてもよい。データスループット（データ処理量）を最大にするために、読出し／書込みポートの双方は、読出し／書込み制御信号（例えば、任意入力クロック「Ｃｌｋ」）の立上りエッジ及び立下りエッジの一方または両方でデータを転送してもよい。データ転送は、論理レベルに応じて切換えられるものであってもよい。すなわち、データ転送は、１つ以上の読出し／書込み制御信号の特定または所定の論理レベルに呼応して行われてもよい。
【００２３】
メモリアレイの深さは、事実上、複数のＲＡＭ装置（例えば、集積回路チップ）及びそれに関連付随する選択論理回路に及ぶものであってもよい。ポート選択入力により、各ポートはあたかも独立した装置であるかのように作動でき、それによって各ポートごとに個々に深度方向に拡張（深度拡張）できる。
【００２４】
すべての同期入力は、読出し／書込み制御信号によって制御される１つ以上の書込みレジスタ（または入力レジスタ）を通してもよい。また、すべての同期出力は、上記と同じまたは異なる読出し／書込み制御信号によって制御される１つ以上の読出しレジスタ（及び／または出力レジスタ）を通してもよい。
【００２５】
インタフェースロジックを単純にするために、書込みはすべてオンチップ同期式自己タイミング書込み回路（on-chip synchronous self-timed write circuitry）で行ってもよい。
【００２６】
【実施例】
図２に記載されているように、好適実施形態において、本発明に係るＲＡＭアーキテクチャは、入力（書込み）ポートと出力（読出し）ポートの両方を備えた同期パイプラインバースト（synchronous pipelined Burst ）スタティックＲＡＭ（ＳＲＡＭ）として構成されている。読出しポートは読出し動作専用であり、書込みポートは書き込み操作専用である。データは書込みポート介してＳＲＡＭに流入し、読出しポートから流出する。各ポートは（個々のアドレス読出し及び書込みレジスタにデータを記憶またはラッチできる）自己のアドレス入力を有しており、それにより各ポートは独立に作動できる。本発明に係るＲＡＭは、入力ポートと出力ポートを分けることによって、予想される回線争奪（data contention ）を回避し、及び／またはデータバスの「送受反転」の必要を無くした。
【００２７】
入力ポート及び出力ポートへのアクセスは、単一クロックで制御してもよいし、一対の差動入力クロック（ＣＬＫ／ＣＬＫ＊）（但し、「Ｘ＊」で表される信号は、重ね打ちすなわち「バー」が付いている信号と同様に、対応信号「Ｘ」の補数を示す）で制御してもよい。同期タイミングはいずれも作動入力クロック信号のクロスポイントから照会してもよい。アクセスは、任意の読出し／書込み制御信号の任意のエッジ（クロック信号以外の制御信号はそのアクティブ論理レベルでアサートされると仮定すると、クロック信号の立上りエッジが好ましい）で開始できるが、論理回路を簡単かつ単純にするために、アクセスは正クロック（ＣＬＫ）の立上りエッジでのみ開始される。
【００２８】
すべてのデータ入力（例えば、同期入力ＤＩＮ［１７：０］）は、正の入力クロック（ＣＬＫ）の立上り及び立下りエッジによって制御される１つ以上の入力レジスタ（例えば、図２に記載されている第１及び第２のレジスタ「データ書込みレジスタ１」と「データ書込みレジスタ２」）を通してもよい。図２に記載されているランダムアクセスメモリは第１及び第２のデータレジスタを有しているが、ｍビット幅のレジスタを２つ使う代わりに、単一の２ｍビット幅のデータ書込みレジスタを使うことも可能である。その場合、図示されているｍビット幅のデータ入力バスの代わりに２ｍビット幅のデータ入力バスを使ってもよい。第１のｍビットまたは単一ｎ・ｍビットデータ書込みレジスタは、読出し／書込み制御信号の第１の遷移に呼応してデータを記憶してもよい。また、第２のデータ書込みレジスタがある場合には、第２のデータ書込みレジスタは読出し／書込み制御信号の第２の遷移に呼応してデータを記憶してもよい。いずれの場合も、全２ｍビット幅のワードが書込みレジスタにラッチされると、読出し／書込み制御信号の第２の遷移のときにデータ書込みレジスタのデータがアレイに書き込まれる。
【００２９】
本発明に係るランダムアクセスメモリは、それぞれアドレス書込みバス及び／またはアドレス読出しバス上の１つ以上の信号によって定められる各セルアレイの任意アドレスにデータを記憶する及び／またはそのような任意アドレスのデータを検索するように構成された第１及び第２のｍビット幅アレイを有していてもよい。あるいは、本発明に係るランダムアクセスメモリは、ｎ・ｍビット幅のアレイを有していてもよく、その場合、データ書込みレジスタ及びデータ読出しレジスタもｎ・ｍビット幅である。また、内部及び／または外部データ入出力バスもｎ・ｍビット幅であることが好ましい。
【００３０】
ランダムアクセスメモリが（例えば、図２に示されているように）複数のアレイを備えている場合、第１のランダムアクセスメモリアレイは第１のデータ書込みレジスタのデータを受け取り、第２のランダムアクセスメモリアレイは第２のデータ書込みレジスタのデータを受け取る。同様に、複数のアレイを備えたランダムアクセスメモリは、第１のランダムアクセスメモリアレイから転送されたデータを記憶する第１のデータ読出しレジスタ及び第２のランダムアクセスメモリから転送されたデータを記憶する第２のデータ読出しレジスタといった、複数のデータ読出しレジスタを更に有していてもよい。この場合、本発明に係るランダムアクセスメモリは、読出し／書込み制御信号の連続的または非連続的遷移に呼応して、第１の任意アドレスのランダムアクセスメモリアレイにデータを書き込むように作用する第１の回路と、第２の任意アドレスのランダムアクセスメモリアレイからデータを読み出すように作用する第２の回路とを更に有していてもよい。このとき、第２の任意アドレスは、第１の任意アドレスと同じであってもよいし、異なっていてもよい。
【００３１】
すべてのデータ出力（例えば、同期出力ＤＯＵＴ［１７：０］）は、正の入力クロック（ＣＬＫ）の立上り及び立下りエッジによって制御される１つ以上の出力レジスタ（例えば、２ｍビット幅の「データ読出しレジスタ」。別の選択肢として、該レジスタは第１及び第２のｍビット幅のデータ読出しレジスタとして構成してもよい）を通してもよい。データ読出しレジスタは、読出し／書込み制御信号の第１の遷移に呼応してランダムアクセスメモリアレイから転送されたデータを記憶してもよい。図２に記載のランダムアクセスメモリは、それぞれ第１及び第２のデータ読出しレジスタに結合される第１及び第２の入力を有するｍビット幅のデータ出力バスを更に備えていてもよい。あるいは、本発明に係るランダムアクセスメモリは、ｎ・ｍビット幅のデータ読出しレジスタ（またはｎ個のｍビット幅データ読出しレジスタ）からｎ・ｍビットのデータを受け取るｎ・ｍビット幅のデータ出力バスを備えていてもよい（同じ原理をデータ入力バスとデータ書込みレジスタに適用してもよい）。
【００３２】
図２に示されているように、本発明に係るランダムアクセスメモリは、ｍビット幅のデータ出力バスと、第１及び第２の３状態出力バッファ（例えば、バッファ１０と１２）と、第１、第２及び第３のｍビット幅の出力レジスタ（例えば、レジスタ２０、レジスタ２２及びレジスタ２４）を更に有し、
該第１及び第２の各出力レジスタが、第１の読出し／書込み制御信号に呼応してデータ読出しレジスタのｍビットのデータを記憶し、
該第３の出力レジスタが、（該第１の読出し／書込み制御信号の補数である場合がある）第２の読出し／書込み制御信号に呼応して第１の出力レジスタのｍビットのデータを記憶し、
該第１の３状態出力バッファは、（［ｉ］第２の読出し／書込み制御信号と同じまたは異なる場合がある、または、［ｉｉ］第１の読出し／書込み制御信号の補数であって、好ましくは、特定または所定の論理レベルまたは状態のときにデータ出力を許可する場合がある）第３の読出し／書込み制御信号によって第３の出力レジスタからデータ出力バスにデータを供給することを許可され、
該第２の３状態出力バッファは、（［ｉ］第１の読出し／書込み制御信号と同じまたは異なる場合がある、または、［ｉｉ］第２の読出し／書込み制御信号の補数であって、好ましくは、やはり特定または所定の論理レベルまたは状態のときにデータ出力を許可する場合がある）第４の読出し／書込み制御信号に呼応して第２の出力レジスタからデータ出力バスにデータを供給することを許可されてもよい。
【００３３】
あるいは、データ出力バスがｎ・ｍビット幅の場合、１つのｎ・ｍビット幅出力レジスタと（前述の３状態許可を備えていてもよい）任意の出力バッファを、（前述の任意３状態制御を有する）任意の出力バッファをそれぞれが備えているｎ個のｍビット幅出力レジスタに置き換えてもよいし、あるいは、単純に出力レジスタ及び／または出力バッファを完全に省いてしまってもよい。
【００３４】
制御入力（例えば、１つ以上の同期読出しポート選択入力ＲＰＳまたはＲＰＳ＊、１つ以上の同期書込みポート選択入力ＷＰＳまたはＷＰＳ＊等）は、読出し／書込み制御信号のエッジ（例えば、正のクロック入力ＣＬＫの立上りエッジ）によって制御される入力レジスタを通してもよい。また、任意の応用装置（例えば、ネットワークスイッチやルータなどのデータ、音声及び／またはビデオ通信装置）に複数のランダムアクセスメモリを入れるとき、複数の読出し及び／または書き込みポート選択入力（例えば、ＲＰＳ１、ＲＰＳ２、ＲＰＳ１＊、ＲＰＳ２＊、ＷＰＳ１、ＷＰＳ２、ＷＰＳ１＊、ＷＰＳ２＊等）を使うと有利である。任意の複数ＲＡＭ応用装置中の各ＲＡＭは、特定ポートをアクティブにする、読出しポート選択信号と書込みポート選択信号の固有な組合わせ（例えば、ＲＰＳ１＊とＲＰＳ２、ＲＰＳ１とＲＰＳ２＊、ＷＰＳ１＊とＷＰＳ２、ＷＰＳ１とＷＰＳ２＊等）を少なくとも１つ持っていることが好ましい。あるいは、別の読出し及び／または書込みポート選択信号により、マルチプルレジスタ構成の１つの読出しまたは書込みレジスタを選択（使用可能または使用不可能に）できる。
【００３５】
アレイとの間のデータの送受信
別の実施形態において、本発明はランダムアクセスメモリアレイからデータを読み出し、及び／または、ランダムアクセスメモリアレイにデータを書込む方法であって、
読出し／書込み制御信号の第１の遷移に呼応して、上記ランダムアクセスメモリアレイの第１の任意アドレスとの間で第１の複数のデータビットを送受信するステップと、
上記ステップとは無関係に（独立して）、上記読出し／書込み制御信号の第２の遷移に呼応して、上記ランダムアクセスメモリアレイの第２の任意アドレスとの間で第２の複数のデータビットを送受信するステップと、を含む方法に関するものである。
【００３６】
読  出  し
図３に記載されているように、読出し動作は、適切な読出し／書込み制御信号のエッジ（例えば、正のクロック立上り［ＣＬＫの波形も参照］）でアクティブ状態となる読出しポート選択信号（例えば、ＲＰＳ＊）をアサートすることによって開始されてもよい。ＲＡ［１７：０］に関するアドレスは、アレイからの読出しの場合と同様に、好ましくは同一読出し／書込み制御信号エッジのときに（呼応して）アドレス読出しレジスタに記憶されてもよい。ＲＡＭは、アドレス読出しをラッチするのと同じクロックエッジのときに各読出し動作によって２つのデータワードにアクセスしてもよい。例えば、図２を参照すると、２つのデータワード（または倍長データワード）は、単一クロックエッジのときにデータ読出しレジスタから出力レジスタ２０と２２に送られてもよく、その後、出力レジスタ２２にデータをラッチさせる単一クロックエッジによって生じるクロック論理レベルのときに、データの第１すなわち低位のワードが出力バッファ１２を介してデータ出力バスＤＯＵＴに送られてもよい。但し、供給される任意の出力制御信号（例えば、出力許可信号ＯＥ）は、許可状態（例えば、ＬＯＷ）でアサートされる。次のクロック遷移のときに、出力レジスタ２０に記憶された第２すなわち高位のデータワードが出力レジスタ２４にラッチされてもよく、その後、出力レジスタ２４に第２のデータワードをラッチさせるクロック遷移によって生じるクロック論理レベルのときに、出力バッファ１０を介してＤＯＵＴ信号に送られてもよい。但し、読出し動作に供給される任意の出力制御信号は、許可状態でアサートに保たれる。当該構成では、（１２５ＭＨｚの読出し／書込み制御信号を想定したとき）すべてのデータを、例えば、クロック立上り後３．５ｎｓという素早さで得られ、それにより実質的に待ち時間周期の無い読出し動作が提供される。
【００３７】
読出しのアクセスは、正クロックの各立上りエッジごとに開始させることができる。そのようにすることにより、クロックの立上り及び立下りエッジごとにデータが装置から転送されるようにデータフローの「パイプライン処理（ｐｉｐｅｌｉｎｅ）」が行われる。
【００３８】
本発明に係るＲＡＭは、選択解除されると、最初に保留中（しかかり中）の読出し処理を終了する。同期内部回路により、正クロックの次の立上りエッジの後の出力を自動的に三状態にしてもよい。これにより、本発明に係るＲＡＭのポートと（本発明に係る第２のＲＡＭを制約無く備える）任意の外部装置との間の移行が待ち状態無しでスムーズに行われる。
【００３９】
以下の表１に、典型的な読出し動作の読出しポートの真理値表を示す。表１内の信号名の識別と説明は後出の表３に記載してある。
【００４０】
【表１】
0004456687.tif 000002
【００４１】
書  込  み
図４に記載されているように、書込み動作は、適切な読出し／書込み制御信号のエッジ（例えば、正のクロック立上り［ＣＬＫの波形も参照］）でアクティブ状態となる書込みポート選択信号（例えば、ＷＰＳ＊）をアサートすることによって開始されてもよい。ＷＡ［１７：０］に示されるアドレスは、書込み動作を開始するものと同じ正クロックの立上りのときにアドレス書込みレジスタに記憶されてもよい。また、データ入力（例えば、ＤＩＮ［１７：０］）に示される情報は、これと同じ正クロックの立上りのときに第１の（または１つの）データ書込みレジスタに記憶されてもよい。読出し／書込み制御信号の次のエッジ（例えば、正クロックの立下りエッジ）のときに、ＤＩＮ［１７：０］に与えられる情報が第２のデータ書込みレジスタに記憶されてもよい（図２のアーキテクチャの例も参照されたい）。読出し／書込み制御信号（及び、必要に応じて、従来のパルス発生器によりクロックの立上がり遷移で生成され、アドレス書込みレジスタに記憶されたアドレスに対応するＲＡＭアレイのワードライン（wordline(s) ）に供給される書込み許可信号ＷＥなどの、次にアサートされた書込み制御信号）の上記エッジのときに、対応する２ｍビット幅のワードのデータがアレイに書き込まれる。
【００４２】
書込みアクセスは、正クロック（またはその補数）の立上りエッジの毎に開始されることが可能である。そのようにすることにより、クロックの立上り及び立下りエッジごとにデータが装置に転送されるようにデータフローが「パイプライン処理」される。
【００４３】
選択解除されると、書込みポートは書込みポートへのすべての入力を無視する。
【００４４】
以下の表２に、典型的な書込み動作の書込みポートの真理値表を示す。表２内の信号名の識別と説明は後出の表３に記載してある。
【００４５】
0004456687.tif 000003
【００４６】
本発明に係るＲＡＭアーキテクチャの読出しポートと書込みポートは、互いに全く独立に動いてもよい。各ポートは別個のアドレス入力を持っていてもよいので、他のポートでの処理と無関係にメモリアレイ内の任意の位置に読み書きできる。読出し／書込み制御信号の同じエッジ（例えば、正クロックの立上りエッジ）で読出しポートと書込みポートが同じ位置にアクセスした場合には、データ入力に与えられた情報が（例えば、読出し及び書き込みアドレスのＡＮＤまたはＮＡＮＤ型論理比較に応じて生成された制御信号に応える従来のバイパス論理回路によって）データ出力に転送される。あるいは、データ読出しレジスタに記憶されているデータを最初にデータ出力バスに出し、その後に同じ位置に新データを書き込んでもよい。
【００４７】
本発明に係るＲＡＭアーキテクチャは、各ポートが１つ以上のポート選択入力を備えていてもよく、それにより深度方向に拡張しやすくなる。ポート選択は、任意の読出し／書込み制御信号の任意のエッジでサンプリングされてもよいが、正クロック入力（ＣＬＫ）の立上りエッジでサンプリングされることが好ましい。いずれのポート選択入力も、特定のポートを選択解除できる（例えば、有効読出しポート選択は読出ポートを選択解除する）。あるポートを選択解除することによって他のポートが影響を受けることはない。保留中のすべての処理（読出し及び／または書込み）は、ポートが選択解除される以前に終了されていることが好ましい。
【００４８】
読出しと書込み
図５に実質的に同時に行われる読出し動作と書込み動作のときに生じる一連のデータ転送事象を示す。図１〜５に記載及び／または説明されている典型的な入力信号の識別と説明を表３に示す。”Ａ”、”Ｂ”、”Ｃ”等の文字は、ＲＡＭアレイ内のアドレス（例えば、ｍビット幅のワードのワードアドレス  ）を指す。”Ｄ（Ａ）”、”Ｄ（Ｂ）”等、及び、”Ｄ（Ａ＋１）”、”Ｄ（Ｂ＋１）”等の用語は、対応するアドレス”Ａ”、”Ｂ”、”Ｃ”等に読み書きされる第１すなわち下位のデータワード及び第２すなわち上位のデータワードをそれぞれ指している。（あるいは、２ｍビット幅の回路の場合、”Ｄ（Ａ）”と”Ｄ（Ａ＋１）”、”Ｄ（Ｂ）”と”Ｄ（Ｂ＋１）”等は、２ｍビット幅のデータワード１個を表している。）この例では、信号”ＣＳ＊”は、２つの外部チップ選択信号（表３のＣＳ１とＣＳ２を参照）の論理的組合わせを表している。
【００４９】
図５に記載されているように、アドレスＡがバスＷＡを通ってアドレス書込みレジスタに書き込まれると、書込みポート選択信号が簡単に（好ましくは読出し／書込み制御信号ＣＬＫ及び／またはＣＬＫ＊が遷移している間に）アサートされる。この読出し／書込み制御信号ＣＬＫの最初の遷移により、データＩＮバス上の第１のデータワードＤ（Ａ）が第１の書込みレジスタにラッチされ、該読出し／書込み制御信号ＣＬＫの次の遷移により、データＩＮバス上の次データワードＤ（Ａ＋１）が第２の書込みレジスタにラッチされる。（あるいは、２ｍビット幅の回路の場合、読出し／書込み制御信号ＣＬＫの最初の遷移により、１つの２ｍビット幅データワードが１つのデータ書込みレジスタにラッチされる。）その後、データワード”Ｄ（Ａ）”と”Ｄ（Ａ＋１）”が、図２の例に記載されているように、それぞれ第１及び第２のアレイのアドレスＡに書き込まれてもよい。アレイへの書込みは、前述したように同期または非同期制御信号（例えば、ＣＬＫの立上りエッジ、または続いてアサートされ独立に出力される書込み許可信号）によって制御されてもよいし、あるいは、アレイへの書込みは、制御信号によってゲートまたは制御されなくてもよい。
【００５０】
同様に、アドレスＥがバスＲＡを通ってアドレス読出しレジスタにラッチされる場合、読出しポート選択信号が簡単に（好ましくは読出し／書込み制御信号が遷移している間に）アサートされる。読出し／書込み制御信号の最初の遷移により、アレイのアドレスＥのデータワードＤ（Ｅ）及びＤ（Ｅ＋１）が（例えば、図２のレジスタ２０及び２２に）ラッチされ、Ｄ（Ｅ）がデータ出力に出力される。ｍビット幅の回路の場合、読出し／書込み制御信号の相補的な遷移により、シャドウレジスタ（例えば、図２のレジスタ２４）を介してデータ出力バス及びデータ出力にワードＤ（Ｅ＋１）がラッチされてもよい。
【００５１】
以上、特定の実施形態に関連させて本発明を説明してきたが、本発明の適用範囲を前述の特定実施形態に限定しようとする意図はない。本発明の適用範囲は、特許請求の範囲に記載されている発明の精神及び技術的範囲に含まれる変更、修正及び等価物に及ぶ。
【００５２】
【表３】
0004456687.tif 000004
【図面の簡単な説明】
【図１】本発明に係るランダムアクセスメモリ（ＲＡＭ）アーキテクチャの概要図である。
【図２】図１に示したＲＡＭアーキテクチャの更に詳細な実施形態を示す図である。
【図３】本発明に基づいて実施される代表的読出し動作に関連した種々の信号の相対的タイミングを示す種々の波形図である。
【図４】本発明に基づいて実施される代表的書込み動作に関連した種々の信号の相対的タイミングを示す種々の波形図である。
【図５】本発明に基づいて実施される代表的読出し／書込み動作に関連した種々の信号の相対的タイミングを示す種々の波形図である。
【符号の説明】
１０  バッファ
１２  バッファ
２０  レジスタ
２２  レジスタ
２４  レジスタ
【図１】
0004456687.tif 000005
【図２】
0004456687.tif 000006
【図３】
0004456687.tif 000007
【図４】
0004456687.tif 000008
【図５】
0004456687.tif 000009