JP4299536B2 - Dramベースのランダム・アクセス・メモリ・サブシステムでツリー・アクセスに関する性能を改善するためのマルチ・バンク・スケジューリング - Google Patents
Dramベースのランダム・アクセス・メモリ・サブシステムでツリー・アクセスに関する性能を改善するためのマルチ・バンク・スケジューリング Download PDFInfo
- Publication number
- JP4299536B2 JP4299536B2 JP2002367653A JP2002367653A JP4299536B2 JP 4299536 B2 JP4299536 B2 JP 4299536B2 JP 2002367653 A JP2002367653 A JP 2002367653A JP 2002367653 A JP2002367653 A JP 2002367653A JP 4299536 B2 JP4299536 B2 JP 4299536B2
- Authority
- JP
- Japan
- Prior art keywords
- bank
- memory
- data
- read
- channel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1647—Handling requests for interconnection or transfer for access to memory bus based on arbitration with interleaved bank access
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Dram (AREA)
- Memory System (AREA)
Description
【発明の属する技術分野】
本発明は、一般に高速メモリ・システムに関し、より詳細には、SRAMに近い性能を有するDRAMを用いたメモリ・システムに関する。
【0002】
【従来の技術】
ネットワーク・プロセッサは、一般に非同期転送モード(ATM)ネットワークまたは同期光ネットワーク(SONET)の物理層部分などの物理的伝送媒体と、ルータまたは他のタイプのパケット・スイッチ内のスイッチ・ファブリックとの間のパケットの流れを制御する。ネットワーク・プロセッサでの記憶技術では、DRAM(ダイナミック・ランダム・アクセス・メモリ)を使用して、低い電力消費で大きな記憶容量を実現する。しかし、プロセッサおよびメモリ・バスの速度が増加し続けるにつれ、システム全体の性能の要求を満たすためにメモリ・アクセス速度要件も増大する。SRAM(同期ランダム・アクセス・メモリ)の速度は、この速度に対処することができる。しかしSRAMメモリ容量は、一般にDRAMメモリより1桁小さい。さらにSRAMは、一般にDRAMよりも電力所要量が2桁大きい。したがって、DRAMを使用してSRAMの性能を達成することが望ましい。
【0003】
ネットワーク・プロセッサ内のDRAM、またはネットワーク・プロセッサに関連するDRAMは、一般に複数のメモリ・バンクの形態で構成される。バンクのうちの所与のバンク内のアドレスに対する、連続する読取りアクセスまたは書込みアクセスでは、必要なアクセス・プリチャージ・プロセスが完了するまでのランダム・サイクル・タイムTrcだけ待機することが必要となる。しかし、異なるバンク内の同じアドレスへの連続するアクセスでさえ、本明細書でバンク競合ペナルティとも呼ぶこのTrc待ち時間に直面することはない。スタティック・ランダム・アクセス・メモリ(SRAM)はバンク競合ペナルティを完全に回避する。すなわち、DRAMに関連するTrc待ち時間を招くことなく、メモリ内の任意のアドレスに固定の時間でアクセスすることができる。
【0004】
当技術分野で周知のいくつかのDRAMは、特に上述のTrc待ち時間を低減するように構成されている。例えば、いわゆる高速サイクルDRAM(FCDRAM)は、特に最小のTrcを示すように設計されている。東芝から市販されているFCDRAMのより具体的な例は、部品番号TC59LM814CFT−50で識別される。この特定のタイプのFCDRAMでは、ランダム・サイクル・タイムTrcは5Tに制限される。ただしTはメモリ・クロック周期を示す。読取りまたは書込みのメモリ・アクセスは2クロック周期を必要とし、最大データ・スループットは、いわゆる「4バースト」モードを使用することによって達成される。例えば、200MHzメモリ・クロックと、それぞれ16ビットの4Mメモリ語をそれぞれ含む4つのバンクで構成されたFCDRAMとを用いると、メモリ・クロック周期Tは5ナノ秒、Trcは25ナノ秒、4バースト・モードを使用した最大データ・スループットは、毎秒約6.4ギガビット(Gbps)となる。しかし、連続するメモリ・アクセスが4つのバンクのうちの同じバンクに向かう場合、Trc待ち時間の結果として、データ・スループットは2.5Gbpsに減少する。
【0005】
【発明が解決しようとする課題】
上記から明らかな通り、性能の点でSRAMの利点を提供すると共にDRAMの記憶容量および低電力消費の利点を実現することができる、ネットワーク・プロセッサまたは他の処理装置と共に使用するための改良型のDRAMベースのメモリ・アーキテクチャが求められている。
【0006】
【課題を解決するための手段】
本発明のいくつかの特徴および利点の中には、DRAMメモリを使用してSRAMに近い性能を達成することが含まれる。例示的実施形態では、本発明は、性能を最善とするためにFCRAM(高速サイクルDRAM)を使用する。しかし本発明は、DRAMベースのランダム・アクセス・メモリ・サブシステムでのツリー・アクセスに関する時間要件を低減するためのマルチ・バンク・スケジューリングの方法によってこのような高速なメモリ性能を実現する。
【0007】
例示的形態では、独立なアドレス・データ制御線を有する少なくとも2つの独立なFCRAMチャネルを使用して、10Gbpsのスループットを達成する。第1チャネル0メモリ内の全データは、第2チャネル1メモリ内に複写される。メモリ・コントローラは、ランダム・アドレスA0、A1、A2、A3、A4などへのアクセス読取り要求のストリームを受け取り、2つのチャネルに対して要求のストリームをスケジュールする。2つのチャネルは負荷の平衡を取り、バンク競合を最小にする。コントローラは、各チャネル内のFCRAMメモリのバンク当たり1つの、複数のキューを維持する。ツリー・エンジンからの読取りアドレスが復号化されてバンク・アドレスが抽出され、要求は適切なバンク・キュー内に格納される。コントローラはまた、チャネルのバンクごとのバンク競合カウンタも維持する。バンク競合カウンタには、読取り要求が適切なバンクに送られた後にTrc値がロードされる。すべてのバンク競合カウンタは各クロックごとに減分され、バンク競合カウンタが0のとき、対応するバンクが利用可能となる。コントローラはまた、最後に処理されたキューに対するポインタも維持する。
【0008】
各クロックごとに、コントローラは、次に利用可能なバンク・キューから要求を、最後に処理したキューから開始して、すなわち仕事量保存型ラウンドロビン・アルゴリズムを使用して、チャネル0またはチャネル1のどちらか利用可能な方までラウンドロビン式にディスパッチする。バンク・キューが空でなく、対応するバンク競合カウンタが0である場合、バンク・キューは利用可能である。要求を送ることができ、アクセスするバンクがビジーでない場合、チャネルは利用可能である。バンク・キューのいずれも利用可能でない場合、FCRAMには要求は送られない。
【0009】
本発明の新規であると考えられる特徴は、添付の特許請求の範囲内に具体的に述べられている。しかし本発明自体は、本発明の構造と、動作方法の両方に関して、以下の説明と添付の図面を参照することによって最も良く理解することができよう。
【0010】
【発明の実施の形態】
予想されるツリー・メモリ使用量の95%超が読取りであり、5%未満が書込みであるようなDRAMメモリを使用してSRAMに近い性能を実現する方法が開示される。これらの方法はどんなDRAMメモリにも適用可能であるが、最良の性能は、東芝 TC59LM814/06CFTなどのデュアル・データ転送速度FCRAM(高速サイクルDRAM)を使用することで得られると考えられる。この特定のFCRAMでは、5nsの短いランダム・サイクル・タイム(Trc)が存在する。この装置でのメモリ・アクセス(読取りまたは書込み)は、2クロック周期を必要とする。この装置についての最大データ・スループットは、4バースト・モードを使用して達成される。例えば、4バースト・モードでの200Mhz4バンク×4M×16ビットFCRAMは、最大データ・スループット約6.4Gbpsを達成する。バースト・モード・オペレーションの詳細は、この装置の製造業者が提供する仕様書に記載されている。
【0011】
本発明で企図されるツリー・メモリ構造では、上述のFCRAMなどのDRAMはバンクで編成される。これらのバンク内のアドレスに対する連続するメモリ・アクセスは、ランダム・サイクル・タイムが満了するまでの待ちを必要とする。ランダム・サイクル・タイム(Trc)は、プリチャージを完了するのに必要な時間である。すなわち、バンクへの各読取りまたは書込みの後に、バンクはリフレッシュしなければならない。しかし、異なるバンク内のアドレスに対する連続するメモリ・アクセスは、ランダム・サイクル・タイムによって制限されない。
【0012】
バンク競合ペナルティのないFCRAMを用いてほぼランダムなアクセス機能を達成することは、異なるバンク内に同一のデータ・コピーを格納し、異なるバンクに連続するメモリ・アクセス要求を送ることによって実施される。必要なデータ・コピーの最小数は、以下の式に示すように、ランダム・サイクル・タイムとランダム・バンク・アクセス遅延との比によって決定される。
(Trc/Trbd)≧25ns/10ns=3バンク
上式で、Trc=5T、
Trbd=10ns、および
T=メモリ・クロック周期
【0013】
10Gbpsの読取りスループットを達成するために、それぞれそれ自体のアドレス・データ制御線を有する2つの独立なFCRAMチャネルを使用する。チャネル0内の3つのバンクと、チャネル1内の3つのバンクの、合計6つのメモリ・バンクが必要である。6つのバンクはすべて同一のデータを含む。しかし、他のチャネルとバンクの組合せを使用することにより、10Gpsを超えるスループットを達成できることを理解されよう。2つのチャネルを使用することは単に例として述べたに過ぎず、本発明をそのような実施形態に限定するものと解釈すべきではない。
【0014】
図1に示すように、ツリー・エンジン103は、アクセス読取り要求のストリーム(TRE要求FIFO 104)をツリー・メモリ・コントローラ106に送る。最大で200Mhzコア・クロック速度当たり1回の要求、すなわち5.0ナノ秒ごとに1回の要求をツリー・エンジン103で生成することができる。チャネル0 FCRAM 107とチャネル1 FCRAM 108は独立である。したがって、ツリー・メモリ・コントローラ106は、チャネル0 FCRAM 107とチャネル1 FCRAM 108を使用して、平均で5nsごとに1回のメモリの読取りを実行することができる。ツリー・メモリ・コントローラ106およびTRE読取りFIFO 105に対して読取り要求を送り、ツリー・エンジン103にデータを戻すために、TRE要求FIFO 104に対してデュアル・クロック同期を使用する。
【0015】
図2および3は、この方法のために使用される並行状態マシンである。図2の状態図では、ツリー・エンジン要求が適切なバンク・キュー(BQi)に送られる。第2状態は、2つのチャネルの一方にチャネル・キュー(QC)を割り当て、バンク指数を増分する。
【0016】
他のチャネル組合せも可能であるが、この実施形態では、以下のチャネルとバンクの組合せを使用する。
CH0−B0
CH1−B0
CH0−B1
CH1−B1
CH0−B2
CH1−B2
【0017】
リフレッシュ割込みがアクティブであるかどうかを判定するためのチェックは、アクセス要求を送る前に実行しなければならない。リフレッシュ割込みがアクティブである場合、リフレッシュ・シーケンスは、両方のチャネルに同時に送られる。リフレッシュ割込みがアクティブである間、アクセス要求はブロックされる。
【0018】
効率を最適化するため、ツリー・メモリ・コントローラ106への書込みはバースト式に行われる。ホスト・インターフェース100は、書込みオペレーションを実行する前にホスト要求FIFO 101内に入れられる、いくつかの64ビット語を送る。キューに入れられるデータ量は、ホスト・プロセッサに依存する。実装は、連続する32ビット語が64ビット・データ語を形成する32×32ビットFIFOとすることができる。
【0019】
書込み実行を実施するために、すべての読取りアクセス要求をブロックする。次いで、連続する32ビット語を組み合わせ、64ビット語を形成する。64ビット語を形成することができるかどうか判定するために、チェックを実行する。この語をその時に形成することができない場合、ホスト要求FIFOをブロックし、ツリー・エンジン読取り要求を続行する。64ビット語をその時に形成することができる場合、データをチャネル0とチャネル1の両方に同時に書き込み、ツリー・メモリ・コントローラ106への書込み実行が完了する。
【0020】
図3に示すように、更新シーケンスは、すべてのバンクが非アクティブとなるまで待機する。この待機は、最大5クロック・サイクルとすることができる。FIFO内のすべてのデータ語をメモリに書き込むまで、以下のシーケンスを反復する。
1.リフレッシュ割込みがアクティブである場合、リフレッシュ・シーケンスを完了し、
2.アドレスを送り、64ビット・データをCH0−B0およびCH1−B0に書き込む
3.アドレスを送り、64ビット・データをCH0−B1およびCH1−B1に書き込む
4.アドレスを送り、64ビット・データをCH0−B2およびCH1−B2に書き込む
【0021】
本発明は、マルチ・バンク・スケジューリングを使用して、DRAMベースのランダム・アクセス・メモリ・サブシステムでのツリー・アクセスに関する性能を改善する。独立なチャネル0 FCRAM 107とチャネル1 FCRAM108の両方を使用する。チャネル1メモリは、チャネル0内のメモリ全体の複製である。
【0022】
図1のツリー・メモリ・コントローラ106は、ランダム・アクセスA0、A1、A2、A3、A4などに対するアクセス読取り要求104のストリームを受け取る。さらにツリー・メモリ・コントローラ106は、負荷の平衡を取ってバンク競合を最小にする2つのチャネル(すなわちチャネル0 FCRAM 107とチャネル1 FCRAM 108)への要求のストリームをスケジュールする。ツリー・メモリ・コントローラ106は、各FCRAMバンクについてのキューを維持する。ツリー・エンジン103は読取りアドレスを復号化し、要求を適切なバンク・キューに格納する。
【0023】
図3に示すように、チャネルごとに1つのバンク競合カウンタを維持する。読取り要求が適切なバンクに送られた後、バンク競合カウンタは、ダウンカウント用に使用されるカウンタのタイプと、ゼロ検出がラッチされたかどうかとに依存する値にリセットされる。この値は、Trc値、またはTrcに1を加えた値/Trcから1を減じた値となる可能性がある。すべてのバンク競合カウンタは、各クロック・サイクルごとに減分される。バンク競合カウンタが0であるとき、対応するバンクは利用可能となる。ツリー・メモリ・コントローラ106は、ラウンドロビン・アルゴリズム・スケジューリングをサポートして、最後に処理したキューに対するポインタを維持する。
【0024】
各クロック・サイクルごとに、ツリー・メモリ・コントローラ106は、最後に処理したキューから始まる、次に利用可能なバンク・キューから、利用可能なチャネル(すなわち、チャネル0 FCRAM 107またはチャネル1 FCRAM108)に要求をディスパッチする。バンク・キューが空でなく、かつバンク競合カウンタが0である場合、バンク・キューは利用可能である。要求を送ることができ、かつアクセスするバンクがビジーでない場合、チャネルは利用可能である。バンク・キューがどれも利用可能でない場合、FCRAM(107および108)に要求は送られない。ツリー・メモリ・コントローラ106は、リフレッシュ割込みをチェックする。リフレッシュ割込みがアクティブである場合、リフレッシュ要求を処理する。リフレッシュ処理を処理した後、読取り要求を送ることができる。
【0025】
効率を最適化するため、ツリー・メモリ・コントローラ106への書込みはバースト式に行われる。ホスト・インターフェース100は、書込みオペレーションを実行する前にホスト要求FIFO 101内に入れられる、いくつかの64ビット語を送る。キューに入れられるデータ量は、ホスト・プロセッサに依存する。実装は、連続する32ビット語が64ビット・データ語を形成する32×32ビットFIFOとすることができる。ホスト読取りデータFIFO 102は、ホスト・インターフェース100にデータを戻す。
【0026】
書込み実行を実施するために、すべての読取りアクセス要求をブロックする。次いで、連続する32ビット語を組み合わせ、64ビット語を形成する。64ビット語を形成することができるかどうか判定するために、チェックを実行する。この語を形成することができない場合、ホスト要求FIFOをブロックし、ホストが残りの語を送るまで、ツリー・エンジン読取り要求を続行する。更新アクセスおよび読取りアクセスをインターリーブする。図3に示すように、状態マシンは、BQからFCRAMチャネル0またはチャネル1への要求をスケジュールする。更新シーケンスは以下の通りである。
1.リフレッシュ割込みがアクティブである場合、リフレッシュ・シーケンスを完了する。
2.指定のバンクがチャネル0またはチャネル1のどちらかでビジーである場合、アクセス保留フラグをセットする。このアクセス保留フラグは、読取りアクセスを指定のバンクに両方のチャネルに関してディスパッチすることをブロックする(他のバンクは引き続きアクセスすることができる)。
3.バンク競合カウンタが0に達するまで待機し、両方のチャネルへの書込みを完了する。
【0027】
本発明のいくつかの好ましい特徴だけを例示したが、当業者は多くの修正および変更を思いつくであろう。したがって、特許請求の範囲は、本発明の真の精神内にあるすべてのこのような修正および変更を包含するものとする。
【図面の簡単な説明】
【図1】データ・フローを示すブロック・インターフェース図である。
【図2】ツリー・エンジン要求を送ることについての状態図である。
【図3】アクセス要求をスケジュールする状態図である。
Claims (9)
- 独立なチャネル内に編成されたメモリ装置の複数のバンク、メモリ装置の各バンク内の複写データ、ならびに前記各チャネル内の各バンクに対するデータ読取りアクセスおよびデータ書込みアクセスを制御するためのツリー・メモリ・コントローラを備えるシステムにおけるメモリの管理方法であって、
バンク可用性を示すために、各チャネル内のバンクごとにバンク・キューを確立するステップと、
ツリー・メモリ・コントローラに読取り要求または書込み要求を送るステップと、
チャネル内の各バンクの可用性をツリー・メモリ・コントローラでチェックするステップと、
最初に利用可能なバンクを識別するステップと、
前記最初に利用可能なバンクから前記読取り要求を実行するステップとを含み、
前記データ書込みアクセスを制御するステップが、
すべての読取り要求をブロックするステップと、
書き込むべきデータが、選択したメモリ語長に対して完全であることを確認するステップと、
各バンク・キューがすべてのバンクについてのバンク可用性を示すまで待機するステップと、
すべてのバンクへの、完了したデータ語のバースト・モード転送を同時に開始するステップとを含むメモリ管理の方法。 - 前記メモリ装置が、ダイナミック・ランダム・アクセス・メモリ(DRAM)装置を含む請求項1に記載の方法。
- 前記メモリ装置が、高速サイクル・ランダム・アクセス・メモリ(FCRAM)装置を含む請求項1に記載の方法。
- メモリ装置の前記バンクが、2つの独立なチャネルに編成される請求項1に記載の方法。
- 独立なチャネルに編成されるメモリ装置の複数のバンクであって、それぞれが複写データを含むバンクと、
各チャネル内の各バンクへのデータの読取りアクセスおよび書込みアクセスを制御するためのツリー・メモリ・コントローラと、
バンク可用性を示すための、各チャネル内のバンクごとのバンク・キューと、
前記ツリー・メモリ・コントローラに読取り要求または書込み要求を送るための手段とを備え、
前記コントローラが、データを読み取るためのバンクの可用性を判定し、最初に利用可能なバンクから読取り要求を実行し、
すべての読取り要求をブロックし、書き込むべきデータが、選択したメモリ語長に対して完全であることを確認し、各バンク・キューがすべてのバンクについてのバンク可用性を示すまで待機し、およびすべてのバンクへの、完了したデータ語のバースト・モード転送を同時に開始することによって、前記コントローラが前記データの書込みアクセスを制御するシステム。 - すべてのメモリ・バンクが同一のデータを含む請求項5に記載のシステム。
- 前記メモリ・バンクが、高速サイクル・ランダム・アクセス・メモリ装置を含む請求項5に記載のシステム。
- メモリ装置の前記バンクが、2つの独立なチャネルで構成される請求項5に記載のシステム。
- メモリ・バンクの最小数が、ランダム・サイクル・タイムとランダム・バンク・アクセス遅延との比によって決定される請求項5に記載のシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/026,352 US6839797B2 (en) | 2001-12-21 | 2001-12-21 | Multi-bank scheduling to improve performance on tree accesses in a DRAM based random access memory subsystem |
US10/026352 | 2001-12-21 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2003208354A JP2003208354A (ja) | 2003-07-25 |
JP2003208354A5 JP2003208354A5 (ja) | 2006-02-09 |
JP4299536B2 true JP4299536B2 (ja) | 2009-07-22 |
Family
ID=21831321
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002367653A Expired - Fee Related JP4299536B2 (ja) | 2001-12-21 | 2002-12-19 | Dramベースのランダム・アクセス・メモリ・サブシステムでツリー・アクセスに関する性能を改善するためのマルチ・バンク・スケジューリング |
Country Status (5)
Country | Link |
---|---|
US (1) | US6839797B2 (ja) |
JP (1) | JP4299536B2 (ja) |
KR (1) | KR100898710B1 (ja) |
GB (1) | GB2388216B (ja) |
TW (1) | TW200301423A (ja) |
Families Citing this family (57)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7236490B2 (en) | 2000-11-17 | 2007-06-26 | Foundry Networks, Inc. | Backplane interface adapter |
US7596139B2 (en) | 2000-11-17 | 2009-09-29 | Foundry Networks, Inc. | Backplane interface adapter with error control and redundant fabric |
US7689649B2 (en) * | 2002-05-31 | 2010-03-30 | Aol Inc. | Rendering destination instant messaging personalization items before communicating with destination |
US7649885B1 (en) | 2002-05-06 | 2010-01-19 | Foundry Networks, Inc. | Network routing system for enhanced efficiency and monitoring capability |
US20120155466A1 (en) | 2002-05-06 | 2012-06-21 | Ian Edward Davis | Method and apparatus for efficiently processing data packets in a computer network |
US7187687B1 (en) | 2002-05-06 | 2007-03-06 | Foundry Networks, Inc. | Pipeline method and system for switching packets |
US7468975B1 (en) | 2002-05-06 | 2008-12-23 | Foundry Networks, Inc. | Flexible method for processing data packets in a network routing system for enhanced efficiency and monitoring capability |
US7266117B1 (en) | 2002-05-06 | 2007-09-04 | Foundry Networks, Inc. | System architecture for very fast ethernet blade |
US7636755B2 (en) | 2002-11-21 | 2009-12-22 | Aol Llc | Multiple avatar personalities |
US8037150B2 (en) | 2002-11-21 | 2011-10-11 | Aol Inc. | System and methods for providing multiple personas in a communications environment |
US7908554B1 (en) * | 2003-03-03 | 2011-03-15 | Aol Inc. | Modifying avatar behavior based on user action or mood |
US7913176B1 (en) * | 2003-03-03 | 2011-03-22 | Aol Inc. | Applying access controls to communications with avatars |
US20040179037A1 (en) | 2003-03-03 | 2004-09-16 | Blattner Patrick D. | Using avatars to communicate context out-of-band |
US7194568B2 (en) * | 2003-03-21 | 2007-03-20 | Cisco Technology, Inc. | System and method for dynamic mirror-bank addressing |
US6901072B1 (en) | 2003-05-15 | 2005-05-31 | Foundry Networks, Inc. | System and method for high speed packet transmission implementing dual transmit and receive pipelines |
US7454555B2 (en) * | 2003-06-12 | 2008-11-18 | Rambus Inc. | Apparatus and method including a memory device having multiple sets of memory banks with duplicated data emulating a fast access time, fixed latency memory device |
US20050138276A1 (en) * | 2003-12-17 | 2005-06-23 | Intel Corporation | Methods and apparatus for high bandwidth random access using dynamic random access memory |
US7159084B1 (en) * | 2003-12-30 | 2007-01-02 | Altera Corporation | Memory controller |
US7817659B2 (en) | 2004-03-26 | 2010-10-19 | Foundry Networks, Llc | Method and apparatus for aggregating input data streams |
US8730961B1 (en) | 2004-04-26 | 2014-05-20 | Foundry Networks, Llc | System and method for optimizing router lookup |
US7657703B1 (en) | 2004-10-29 | 2010-02-02 | Foundry Networks, Inc. | Double density content addressable memory (CAM) lookup scheme |
US9652809B1 (en) | 2004-12-21 | 2017-05-16 | Aol Inc. | Using user profile information to determine an avatar and/or avatar characteristics |
US8448162B2 (en) | 2005-12-28 | 2013-05-21 | Foundry Networks, Llc | Hitless software upgrades |
US8572349B2 (en) * | 2006-01-31 | 2013-10-29 | Agere Systems Llc | Processor with programmable configuration of logical-to-physical address translation on a per-client basis |
US7461216B2 (en) * | 2006-02-23 | 2008-12-02 | Hewlett-Packard Development Company, L.P. | Memory controller |
US8453147B2 (en) * | 2006-06-05 | 2013-05-28 | Cisco Technology, Inc. | Techniques for reducing thread overhead for systems with multiple multi-threaded processors |
US8041929B2 (en) | 2006-06-16 | 2011-10-18 | Cisco Technology, Inc. | Techniques for hardware-assisted multi-threaded processing |
US7903654B2 (en) | 2006-08-22 | 2011-03-08 | Foundry Networks, Llc | System and method for ECMP load sharing |
US8010966B2 (en) * | 2006-09-27 | 2011-08-30 | Cisco Technology, Inc. | Multi-threaded processing using path locks |
US8238255B2 (en) | 2006-11-22 | 2012-08-07 | Foundry Networks, Llc | Recovering from failures without impact on data traffic in a shared bus architecture |
US8395996B2 (en) | 2007-01-11 | 2013-03-12 | Foundry Networks, Llc | Techniques for processing incoming failure detection protocol packets |
US8327057B1 (en) * | 2007-04-16 | 2012-12-04 | Juniper Networks, Inc. | Ordering write bursts to memory |
US8271859B2 (en) | 2007-07-18 | 2012-09-18 | Foundry Networks Llc | Segmented CRC design in high speed networks |
US8037399B2 (en) | 2007-07-18 | 2011-10-11 | Foundry Networks, Llc | Techniques for segmented CRC design in high speed networks |
US8001338B2 (en) * | 2007-08-21 | 2011-08-16 | Microsoft Corporation | Multi-level DRAM controller to manage access to DRAM |
US8149839B1 (en) | 2007-09-26 | 2012-04-03 | Foundry Networks, Llc | Selection of trunk ports and paths using rotation |
US8180975B2 (en) * | 2008-02-26 | 2012-05-15 | Microsoft Corporation | Controlling interference in shared memory systems using parallelism-aware batch scheduling |
US9444757B2 (en) | 2009-04-27 | 2016-09-13 | Intel Corporation | Dynamic configuration of processing modules in a network communications processor architecture |
US8505013B2 (en) * | 2010-03-12 | 2013-08-06 | Lsi Corporation | Reducing data read latency in a network communications processor architecture |
US9461930B2 (en) | 2009-04-27 | 2016-10-04 | Intel Corporation | Modifying data streams without reordering in a multi-thread, multi-flow network processor |
US8090901B2 (en) | 2009-05-14 | 2012-01-03 | Brocade Communications Systems, Inc. | TCAM management approach that minimize movements |
US8599850B2 (en) | 2009-09-21 | 2013-12-03 | Brocade Communications Systems, Inc. | Provisioning single or multistage networks using ethernet service instances (ESIs) |
US20120059983A1 (en) * | 2010-09-03 | 2012-03-08 | David Wilkins Nellans | Predictor-based management of dram row-buffers |
CN103534693B (zh) * | 2010-11-22 | 2016-08-24 | 马维尔国际贸易有限公司 | 在客户端之间共享对存储器的访问的方法和设备 |
JP2012221038A (ja) * | 2011-04-05 | 2012-11-12 | Toshiba Corp | メモリシステム |
US9195622B1 (en) | 2012-07-11 | 2015-11-24 | Marvell World Trade Ltd. | Multi-port memory that supports multiple simultaneous write operations |
US9766978B2 (en) | 2014-12-09 | 2017-09-19 | Marvell Israel (M.I.S.L) Ltd. | System and method for performing simultaneous read and write operations in a memory |
US11099746B2 (en) | 2015-04-29 | 2021-08-24 | Marvell Israel (M.I.S.L) Ltd. | Multi-bank memory with one read port and one or more write ports per cycle |
US10387322B2 (en) | 2015-04-30 | 2019-08-20 | Marvell Israel (M.I.S.L.) Ltd. | Multiple read and write port memory |
US11403173B2 (en) | 2015-04-30 | 2022-08-02 | Marvell Israel (M.I.S.L) Ltd. | Multiple read and write port memory |
US10089018B2 (en) | 2015-05-07 | 2018-10-02 | Marvell Israel (M.I.S.L) Ltd. | Multi-bank memory with multiple read ports and multiple write ports per cycle |
US10254967B2 (en) | 2016-01-13 | 2019-04-09 | Sandisk Technologies Llc | Data path control for non-volatile memory |
US10528255B2 (en) | 2016-11-11 | 2020-01-07 | Sandisk Technologies Llc | Interface for non-volatile memory |
US10528267B2 (en) | 2016-11-11 | 2020-01-07 | Sandisk Technologies Llc | Command queue for storage operations |
US10528286B2 (en) | 2016-11-11 | 2020-01-07 | Sandisk Technologies Llc | Interface for non-volatile memory |
US10114589B2 (en) * | 2016-11-16 | 2018-10-30 | Sandisk Technologies Llc | Command control for multi-core non-volatile memory |
US11422707B2 (en) | 2017-12-21 | 2022-08-23 | Advanced Micro Devices, Inc. | Scheduling memory requests for a ganged memory device |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS618785A (ja) | 1984-06-21 | 1986-01-16 | Fujitsu Ltd | 記憶装置アクセス制御方式 |
US5122984A (en) | 1987-01-07 | 1992-06-16 | Bernard Strehler | Parallel associative memory system |
US6360285B1 (en) * | 1994-06-30 | 2002-03-19 | Compaq Computer Corporation | Apparatus for determining memory bank availability in a computer system |
KR0154717B1 (ko) * | 1995-12-07 | 1998-11-16 | 김광호 | 상태 천이 머신을 가지는 시스템의 메모리 관리 구조 및 그 처리방법 |
GB2346233B (en) | 1996-03-01 | 2000-09-20 | Hewlett Packard Co | Address aggregation system and method for increasing throughput of addresses to a data cache from a processor |
US6167486A (en) | 1996-11-18 | 2000-12-26 | Nec Electronics, Inc. | Parallel access virtual channel memory system with cacheable channels |
CA2273997A1 (en) * | 1996-12-04 | 1998-06-11 | Alcatel Usa Sourcing, L.P. | Distributed telecommunications switching system and method |
US6006307A (en) * | 1997-11-13 | 1999-12-21 | Advanced Micro Devices, Inc. | Computer system employing a mirrored memory system for providing prefetch bandwidth |
US6049541A (en) * | 1997-12-04 | 2000-04-11 | Alcatel Usa Sourcing, L.P. | Distributed telecommunications switching system and method |
US6137807A (en) * | 1997-12-05 | 2000-10-24 | Whittaker Corporation | Dual bank queue memory and queue control system |
US6058451A (en) * | 1997-12-22 | 2000-05-02 | Emc Corporation | Method and apparatus for refreshing a non-clocked memory |
US5959929A (en) * | 1997-12-29 | 1999-09-28 | Micron Technology, Inc. | Method for writing to multiple banks of a memory device |
US6260081B1 (en) | 1998-11-24 | 2001-07-10 | Advanced Micro Devices, Inc. | Direct memory access engine for supporting multiple virtual direct memory access channels |
JP2001167005A (ja) * | 1999-12-08 | 2001-06-22 | Nec Corp | メモリ診断方法とメモリ診断回路および半導体記憶装置 |
JP2001266570A (ja) * | 2000-03-24 | 2001-09-28 | Toshiba Corp | 同期型半導体記憶装置 |
US6789155B2 (en) * | 2001-08-29 | 2004-09-07 | Micron Technology, Inc. | System and method for controlling multi-bank embedded DRAM |
WO2003042836A1 (fr) | 2001-11-16 | 2003-05-22 | Fujitsu Limited | Ordinateur et procede de commande de memoire |
US6944731B2 (en) * | 2001-12-19 | 2005-09-13 | Agere Systems Inc. | Dynamic random access memory system with bank conflict avoidance feature |
-
2001
- 2001-12-21 US US10/026,352 patent/US6839797B2/en not_active Expired - Lifetime
-
2002
- 2002-11-28 TW TW091134629A patent/TW200301423A/zh unknown
- 2002-12-03 GB GB0228201A patent/GB2388216B/en not_active Expired - Fee Related
- 2002-12-19 JP JP2002367653A patent/JP4299536B2/ja not_active Expired - Fee Related
- 2002-12-21 KR KR1020020082081A patent/KR100898710B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
GB0228201D0 (en) | 2003-01-08 |
TW200301423A (en) | 2003-07-01 |
US20030120861A1 (en) | 2003-06-26 |
KR20030053454A (ko) | 2003-06-28 |
GB2388216B (en) | 2005-04-20 |
US6839797B2 (en) | 2005-01-04 |
KR100898710B1 (ko) | 2009-05-21 |
JP2003208354A (ja) | 2003-07-25 |
GB2388216A (en) | 2003-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4299536B2 (ja) | Dramベースのランダム・アクセス・メモリ・サブシステムでツリー・アクセスに関する性能を改善するためのマルチ・バンク・スケジューリング | |
JP4369660B2 (ja) | バンク衝突回避機能を備える動的ランダムアクセスメモリシステム | |
US7277982B2 (en) | DRAM access command queuing structure | |
JP4212167B2 (ja) | ランダムアクセスメモリに使用するメモリアクセス方法およびメモリアクセス回路、並びに、シンクロナス・ダイナミックランダムアクセスメモリ装置および半導体記憶装置 | |
JP3598321B2 (ja) | 異なる周波数で動作するバス間でやりとりされるバッファリングデータ | |
US8082396B2 (en) | Selecting a command to send to memory | |
JP4124491B2 (ja) | 異なるデータ転送速度での共用メモリへのアクセスを制御するパケット・ルーティング・スイッチ | |
US7904677B2 (en) | Memory control device | |
TW201234188A (en) | Memory access device for memory sharing among multiple processors and access method for the same | |
EP1754229A2 (en) | System and method for improving performance in computer memory systems supporting multiple memory access latencies | |
US7822915B2 (en) | Memory controller for packet applications | |
US20070245074A1 (en) | Ring with on-chip buffer for efficient message passing | |
KR20010086035A (ko) | 메모리 장치의 물리적 페이지 상태를 탐색하기 위해페이지 태그 레지스터를 이용하는 방법 | |
US7506081B2 (en) | System and method of maintaining high bandwidth requirement of a data pipe from low bandwidth memories | |
US20030120884A1 (en) | Memory system for increased bandwidth | |
JP2561261B2 (ja) | バッファ記憶アクセス方法 | |
US5535333A (en) | Adapter for interleaving second data with first data already transferred between first device and second device without having to arbitrate for ownership of communications channel | |
KR100676982B1 (ko) | 데이터 처리 장치 및 방법과 컴퓨터 판독 가능 저장 매체 | |
US7127547B2 (en) | Processor with multiple linked list storage feature | |
JP3063501B2 (ja) | メモリアクセス制御方式 | |
CN117389767A (zh) | 基于soc芯片的共享存储池的数据交换方法及装置 | |
CN118152310A (zh) | 一种基于PCIe AXI bridge写数据存储、搜索及传输处理方法及系统 | |
JPS63204353A (ja) | バス結合装置 | |
JPH08115251A (ja) | コンピュータ・システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051216 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051216 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080811 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20081111 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20081114 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090212 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090325 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090417 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120424 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130424 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130424 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140424 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |