JPH09502818A - マルチポート共有メモリインタフェースおよび関連の方法 - Google Patents

マルチポート共有メモリインタフェースおよび関連の方法

Info

Publication number
JPH09502818A
JPH09502818A JP7507192A JP50719295A JPH09502818A JP H09502818 A JPH09502818 A JP H09502818A JP 7507192 A JP7507192 A JP 7507192A JP 50719295 A JP50719295 A JP 50719295A JP H09502818 A JPH09502818 A JP H09502818A
Authority
JP
Japan
Prior art keywords
data
ram
shift
circuit
subset
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.)
Granted
Application number
JP7507192A
Other languages
English (en)
Other versions
JP3241045B2 (ja
Inventor
ジョフィー,アレクサンダー
Original Assignee
エム・エム・シー・ネットワークス・インコーポレイテッド
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by エム・エム・シー・ネットワークス・インコーポレイテッド filed Critical エム・エム・シー・ネットワークス・インコーポレイテッド
Publication of JPH09502818A publication Critical patent/JPH09502818A/ja
Application granted granted Critical
Publication of JP3241045B2 publication Critical patent/JP3241045B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1663Access to shared memory
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1647Handling requests for interconnection or transfer for access to memory bus based on arbitration with interleaved bank access
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1657Access to multiple memories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/103Packet switching elements characterised by the switching fabric construction using a shared central buffer; using a shared memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/101Packet switching elements characterised by the switching fabric construction using crossbar or matrix
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3018Input queuing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Static Random-Access Memory (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Dram (AREA)
  • Multi Processors (AREA)
  • Use Of Switch Circuits For Exchanges And Methods Of Control Of Multiplex Exchanges (AREA)
  • Information Transfer Systems (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Communication Control (AREA)

Abstract

(57)【要約】 データを転送するための複数のポートと、複数のメモリアクセスバッファと、ポートとバッファとの間でデータのサブセットを分配するための相互接続マトリックス回路とを含むマルチポート共有メモリシステムが提供される。

Description

【発明の詳細な説明】 マルチポート共有メモリインタフェース および関連の方法 発明の背景 1.発明の分野 この発明は一般にメモリインタフェースシステムに関し、より特定的には、マ ルチプロセッサシステムおよび通信における交換のような適用例のための、複数 の装置による共有メモリへのアクセスを与えおよび調停するための方法および装 置に関する。 2.関連技術の説明 共有メモリは、複数のプロセス間でのデータ伝送を容易にするために用いられ る。通常の共有メモリ実現例は、複数のポートの使用を伴う。各ポートが異なる 外部装置に共有メモリアクセスを与えてもよい。異なる装置は、データを送る、 異なるプロセスの制御または実行に関連してもよい。 他のポートによる共有メモリアクセスによって大きく影響されない、共有メモ リへのアクセスを、各ポートに与えるために、共有メモリへの経路は通常は個々 のポートの帯域幅の総和に近い帯域幅で設計される。これにより、たとえ複数の ポートが共有メモリへのアクセスを求めても、共有メモリにアクセスすることに おいていずれのポートも大きな遅延を被らないほど経路のデータ伝搬能力が十分 大きいことが保証される。一般に、これは2つの方法のうちの 1つ、またはそれらの何らかの組合せで達成される。第1に、共有メモリアクセ ス時間は、個々のポートへに対するデータ転送時間よりもはるかに高速であるよ う設計すればよい。第2に、共有メモリへの経路幅が、個々のポートの経路幅よ りもはるかに大きいように設計されてもよい。 第1のアプローチは、各ポートに、データが共有メモリから読出されまたはそ こに書込まれ得るタイムスロットを割当てることである。各ポートに対し、割当 てられるタイムスロットは、ポートを通してデータを転送するのに必要な実際の 時間よりも短い。したかって、データはその転送中にポートと共有メモリとの間 で一時的にバッファされる。普通は、ポートのタイムスロットの長さは、共有メ モリへのアクセスを共有する装置の数に反比例する。特定のポートを用いる装置 は、そのポートに対して割当てられたタイムスロットの間のみメモリへのアクセ スを得ることができる。データは、タイムスロットとタイムスロットとの間では バッファされる。このアプローチには欠点があった。たとえば、このアプローチ は、メモリアクセス時間がポートのデータ転送時間よりもかなり短いことを必要 とする。しかしながら、ポートと共有メモリとに対するデータ転送速度間におい てそのような不一致を有することは非実用的であることがしばしばある。 第2のアプローチも、各ポートにタイムスロットを割当てることを伴う。たと えば、共有メモリへの書込みは、そ れぞれのポートで受信された複数のデータワードを一時的にバッファし、次いで 、それらを、そのポートに対して指定されるタイムスロットの間に、すべて1つ のメモリアクセスサイクルで、幅の広いメモリ経路上でメモリに与えることを伴 う。逆に、共有メモリからの読出しは、複数のワードを、それぞれのポートに対 して指定されるタイムスロットの間に、すべて1つのメモリアクセスサイクルで 、幅の広い経路上で与えることと、メモリから読出されたワードを一時的にバッ ファすることと、次いでそのワードをポートを通して転送することとを伴う。こ の第2のアプローチは、データワードがそれぞれのポートを通してマルチワード バーストで通信されるバーストモードシステムに特によく適合する。バースト全 体が、メモリアクセスバッファに一時的に記憶され、次いで1つのメモリアクセ スサイクル中に共有メモリへのそのような広帯域幅経路を通して書込みまたは読 出しされるだろう。適当に大きい帯域幅を有する経路を設けることによって、各 ポートは、他のポートを通るデータ転送によって妨害されない、共有メモリへの 排他的アクセスを有するように見えるようにされるだろう。 図1の例示的ブロック図は、ワード幅mを各々が有するk個のポートが共通の メモリを等しく共有するマルチポートメモリシステムのこれまでの実現例を示す 。各バーストはk個のワードを含む。k個のメモリアクセスバッファはk個のm ビットワードを各々有し得る。各バッファはk× mライン幅の経路によって共有メモリに接続される。共有メモリはk×mビット 幅である。 図2の例示的な図は、図1のそれのような通常のマルチポートメモリシステム において用いられるデータフォーマットを示す。共有メモリへのデータの転送中 、mビットワードからなるkワードのバーストがポートを通過する。このバース ト全体は1つのメモリアクセスバッファに短時間記憶される。次いで、所定のタ イムスロット中に、バーストのk個のワードすべては、バッファから同時に転送 され、k×m経路上で共有メモリに書込まれる。共有メモリからのデータの転送 中は、k個のワードが別の所定のタイムスロット中に共有メモリから読出されて 1つのメモリアクセスバッファに転送される。次いで、バッファされたデータは 、そのバッファに関連するポートを通って転送される。 最初にバーストを入力したポートは、バーストを出力するポートと異なっても よい。バーストが入力ポートから出力ポートに送られ得るよう、共有メモリはバ ーストを一時的に記憶する。したがって、図1のシステムはポート間でデータを 送るのに用いられ得る。 より特定的には、たとえば、メモリ書込み動作において、それぞれのポートを 通して受信されたk個のmビットワードは、そのポートに割当てられたメモリア クセスバッファによってバッファされる。続いて、そのメモリアクセスバッファ に対して予約されたタイムスロット中に、割当てら れたバッファに記憶されたk個のmビットワードのすべては、共有されるk×m ビット幅経路上で共有メモリに同時に書込まれる。同様の態様で、他のバッファ の各々は、それら自身の関連するポートのためにmビットワードを記憶し得る。 各個々のバッファの内容全体(k個のワードすベて)は、そのバッファに対して 予約された個々のタイムスロット中に、共有メモリに書込まれ得る。メモリ読出 動作は、書込み動作のステップが逆になることを除き、同様である。 この従来の実現例の不利な点は、大型マルチポートシステムにおいてバッファ とバスとの間に多数の相互接続ピンが必要となることである。図3は、別の従来 のマルチポート共有メモリシステムを示すブロック図である。使用されるデータ フォーマットは、1ワードに付き72ビット(64ビットデータに8ビットパリ ティを加えたもの)の16ワードのバーストを伴う。共有メモリバスは1152 線幅を有する(16ワード×72ビット/ワード)。バスは16のメモリアクセ スバッファの各々に接続される。各バッファは、バスに接続される1152本、 およびポートに接続される72本を含む、1224よりも多いデータピンを必要 とするだろう。残念なことに、バスに接続される1152のデータピンは、16 のバッファすべてと共有メモリとに接続されるバス上で動作する高い駆動能力を 各々必要とするだろう。図3は、バッファピンによって克服されな ければならない例示的バス容量を示す。 したがって、共有メモリへの複数ポートアクセスを与えるための改善されたア ーキテクチャが要求されている。このアーキテクチャは、メモリアクセスバッフ ァのために必要なピンがより少なくあるべきであり、かつバッファピンのための 高い駆動能力を必要とするべきではない。この発明はこれらの要求を満たすもの である。 発明の概要 新規なマルチポートメモリシステムが提供される。メモリシステムはランダム アクセスメモリを含む。複数のバッファが、それぞれのポートとランダムアクセ スメモリとの間におけるデータの転送中にデータを一時的に記憶するために設け られる。データパスが、ランダムアクセスメモリと複数のバッファとを相互接続 する。相互接続回路が、ポートおよび異なる所定のバッファの間で、データの異 なる所定のサブセットを送る。 別の局面において、ランダムアクセスメモリと複数のデータポートとの間にお けるポートバーストの転送のための方法が提供される。ポートバーストとは、1 つのポートを通して転送されるデータの複数ワードのバーストである。それぞれ のポートバーストにおけるデータワードは複数のサブセットに区分される。各デ ータワードサブセットは一時記憶バッファと関連付けられる。データワードサブ セットは、それぞれのポートと、それらデータワードサブセッ トが一時的に記憶されるそれらがそれぞれ関連付けられたバッファとの間で伝導 される。ポートバーストの全体が、複数のバッファとランダムメモリとの間を、 1つのメモリアクセスサイクル内に転送され得る。 この発明は、ポートと共有メモリとの間でデータの複数ワードのバーストを転 送するのに必要なピン接続の数を低減する。さらに、この発明の現在の実施例は 、メモリアクセスバッファの出力駆動要件を低減する。 この発明のこれらのならびに他の目的および利点は、当業者には、添付の図面 と関連して以下の詳細な説明から明らかとなるであろう。 図面の簡単な説明 図1は、以前のマルチポート共有メモリシステムのブロック図であり、 図2は、図1の以前のシステムにおいて用いられ得るデータフォーマットであ り、 図3は、別の以前のマルチポート共有メモリシステムのブロック図であり、 図4は、この発明に従う第1のマルチポート共有メモリシステムの、一般化さ れたブロック図であり、 図5は、図4の実施例において用いられるデータフォーマットおよびデータフ ローを示し、 図6は、図4の実施例のメモリアクセスバッファおよび制御論理のより詳細な ブロック図であり、 図7は、図6のメモリアクセスバッファのデュアルレジスタ対のひとつのブロ ック図であり、 図8は、図6の制御論理とメモリアクセスバッファとの動作を説明するタイミ ング図であり、 図9は、図7のデュアルレジスタ対の動作を説明するタイミング図であり、 図10は、この発明に従う非同期転送モード交換機のブロック図である。 好ましい実施例の詳細な説明 この発明は、マルチポート共有メモリシステムを実現するための新規な方法お よび装置を含む。以下の説明は、当業者であればこの発明を実施できるように述 べられる。特定の適用例の説明は、例としてのみ与えられる。好ましい実施例に 対するさまざまな変更は当業者には容易に明らかとなり、ここに定義される一般 原理はこの発明の精神および範囲から逸脱することなく他の実施例および適用例 に適用されてもよい。したがって、この発明は、示される実施例に限定されるこ とは意図されず、ここに開示される原理および特徴と整合性のある最も広い範囲 と一致される。 ここで図4を参照すると、この発明に従う第1のマルチポート共有メモリシス テム18のブロック図が示される。第1のシステム18は、nワードバーストで mビットデータワードを各々が入力/出力するk個のポート20の組と、相互接 続マトリックス回路22と、m個のメモリアクセス バッファ24の組と、共有メモリ26とを含む。ポートは、デジタル情報がデー タバスのような外部回路へまたは外部から転送され得る2方向デジタルパスとし て働く。ポート構造は、当業者には周知であり、ここに記載される必要はない。 共有メモリ26内の、破線で示される特定領域は、バッファ24に一時的に記憶 されるデータのサブセットのために予約される。 メモリ書込み動作中において、ポート20は、それに接続される個々の外部装 置(図示せず)からの二進データを転送する。これらのポート20は受信した二 進データを相互接続マトリックス22に与え、相互接続マトリックス22はポー トを介して転送されたデータをメモリアクセスバッファ24間に分配する。この 実施例において、この分配は、各メモリアクセスバッファ24がポートの各々に よって転送されるデータのサブセットを受取るようにして達成される。この実施 例では、各バッファ24は、個々のポートからそのバッファによって受取られた データのすべてをメモリ26に並列で転送し得る。さらに、そのような個々のポ ートから受取られるデータの並列転送のすべては、1つのメモリアクセスサイク ル中に起こり得る。 メモリ読出し動作は、書込み動作のステップと同様であるが、逆向きである。 つまり、n個のmビットワードのためのビットは、共有メモリから転送されてメ モリアクセスバッファ24間に分配される。相互接続マトリックス22 は次いでその分配されたビットを1つのポート20に与え、それを通して、n個 のmビットワードを含むバーストが外部装置(図示せず)に転送される。 次に図5を参照すると、第1のシステム18において現在用いられる相互接続 マトリックス回路22とデータフォーマットとデータフローとの詳細を示す図が 示される。各メモリアクセスバッファ24は、どのポートであれそれを通して転 送されるすべてのデータワードに対して、特定のビット位置を記憶するための専 用となっている。データワードは、データおよびパリティ情報を含んでもよい。 現在の好ましい実施例において、メモリアクセスバッファの総数はワードごとの ビットの総数(m)に等しく、したがって、各バッファに、すべてのワードにお ける1つのビット位置を担わせることができる。たとえば、メモリアクセスバッ ファ24−1はポート20−1ないし20−kのいずれかを通して転送される各 ワードのビット1(B1)を記憶し、メモリアクセスバッファ24−2はポート 20−1ないし20−kのいずれかを通して転送される各ワードのビット2(B 2)を記憶する、というようになる。 図4を再び参照すると、各メモリアクセスバッファ24−1〜24−kは、n ビットデータ線28−1〜28−kの組によって共有メモリ26に接続される。 したがって、異なる序列のビットのm個のサブセットが、メモリ26とバッファ 24との間で同時に転送され得る。この実施例に おいては、m個のサブセットの各々に対してnビットあり、つまり、nワードの バーストにおけるn個のワードの各々に対して1つのビットがある。特定的には 、バーストごとにnワードありかつワードごとにmビットある場合、バーストご とに序列B1のnビットがあり、バーストごとに序列B2のnビットがあり、… 、バーストごとに序列Bmのnビットがある。所定の序列のnビットのすべては 、その序列のビットを記憶するために割当てられたバッファに接続されたnビッ ト線上でメモリ26に同時に与えられ得る。たとえば、B1のnビットのすべて は、バッファ24−1に接続されるnビット線上に与えられる。これは、バッフ ァがメモリのアドレスされた位置へまたはその位置から一度にnワードを転送し 得ることを意味する。以下に説明されるように、これらの転送されるワードのす べては、同じ外部装置で生じ、またはそれを目標とされたものであろう。 各ポート20は、相互接続マトリックス22と外部回路(図示せず)との間で データを所定のフォーマットで転送する。この書類では、「ポートバースト」と は、外部回路へまたはそこからの両方向において1つのポートを介して転送され るデータバーストを意味する。図5に示される現在の実施例においては、mビッ トのデータワードは、バッファ24への転送のためにポートによって相互接続マ トリックス22へ与えられるであろう。逆に、mビットのデータワードは、外部 装置への転送のために相互接続マトリッ クス22によってそのようなポートへ与えられるであろう。データワードフォー マットは、ビットB1〜Bmが所定の順序で与えられるデータワードを含む。相 互接続マトリックスはそれらのビットを上述のように分配する。 相互接続マトリックス回路22は、たとえば、プリント回路基板(PCB)、 ワイヤラップ、またははんだ付けワイヤを用いて実現され得る。現在の好ましい 実施例において、相互接続マトリックスはポートとバッファとの間における接続 を与える。以下に説明されるように、たとえば、ポート20−1を介して転送さ れる各ワード内の各B1は、マトリックス22によって、ポート20−1と関連 付けされたバッファ24−1の記憶素子に接続され、ポート20−2を介して転 送される各ワード内の各B1は、マトリックス22によって、ポート20−2と 関連付けされたバッファ24−1の記憶素子に接続され、…ポート20−kを介 して転送される各ワード内の各B1は、マトリックス22によって、ポートへ2 0−kと関連付けされたバッファ24−1の記憶素子に接続される。 メモリアクセスバッファは、標準論理またはカスタム論理のいずれを用いても 実現され得る。図6〜図9は、メモリアクセスバッファ24とメモリアクセスバ ッファ24のうちの1つのデュアルレジスタ対34との動作を例示し説明する。 図6の例示的ブロック図は、メモリアクセスバッファ24と、制御論理29と、 バッファ24を相互接続マ トリックス(図示せず)に接続する直列入力/出力線30と、nビット並列入力 /出力バス32とを示す。制御論理29は、線30上の直列I/Oと、バス32 上の並列I/Oとを制御する。制御論理の動作は、図8のタイミング図を参照し て説明される。 図7を参照して、デュアルnビットレジスタ対34のひとつが示される。この 発明の現在の実施例において、各メモリアクセスバッファ24は図7に示される ようなk個のデュアルレジスタ対を含み、バッファ24ごとに合計して2k個の レジスタがある。各バッファ内の各レジスタ対はポートの1つに関連付けされる 。各レジスタ対は、そのレジスタ対に関連付けされたポートへまたはポートから 転送されるすべてのデータワード内の所定の位置(序列)にあるすべてのビット を記憶するための専用となっている。つまり、それぞれのバッファの各それぞれ のデュアルレジスタ対は、それぞれのポートを介して転送される各データワード からの同じ序列のビットのすべてを記憶し転送する。 たとえば、図5を参照すると、バッファ24−1内において、デュアルレジス タ対Ri1は、ポートPi(図示せず)を介して転送される各データワードの(序 列が)第1のビットB1を受取って記憶する。バッファ24−2内において、デ ュアルレジスタ対Ri2は、ポートPiを介して転送される各ワードの(序列が) 第2のビットB2を受取って記憶する。バッファ24−m内において、デュアル レ ジスタ対Rimは、ポートPiを介して転送される各ワードの(序列が)第mのビ ットBmを受取って記憶する。したがって、たとえば、ポートPiを介して転送さ れるすべてのB1は、そのポートを介して転送されるデータのサブセットを表わ す。同様に、たとえば、すべてのB2は別のサブセットを表わし、すべてのBm も同様である。 デュアルレジスタ対34は、シフトインレジスタ36とシフトアウトレジスタ 38とを含む。シフトインレジスタ36は、まずデータのnビットを記憶し、次 いでそれが共有メモリ26に書込まれるようそれをメモリバス32上に並列でア サートする。シフトアウトレジスタは、共有メモリ26から読み「出された」n ビットのデータをメモリバス32から並列で読出して記憶する。 シフトインレジスタ36に記憶されるデータは相互接続マトリックス22から シフトインレジスタ36へシリアルにシフトされ、そこからそれはバス32上に 並列でアサートされて上述のようにメモリ26に書込まれる。逆に、シフトアウ トレジスタ38に記憶されるデータはそれがメモリ26から読出された後バス3 2からシフトアウトレジスタへ並列で読出され、そこからそれはシフトアウトレ ジスタから相互接続マトリックス22へシリアルにシフトされる。出力イネーブ ルバッファ40は、シフトアウトレジスタ38から相互接続マトリックス22へ のデータの直列転送を制御する。 図8を参照すると、図4〜図6のメモリアクセスバッファのためのタイミング 図が示される。図8のタイミング図は、各ポートがバーストサイズ32ワード( n=32)を有する32ポートシステム(k=32)のためのタイミングを示す 。したかって、n=kである。現在の実施例において、メモリアクセスは、32 のメモリ読出しサイクルと、それに続く32のメモリ書込みサイクルとの間を交 互する。 メモリ書込みのタイミングにまず注目すると、メモリデータ書込み期間(クロ ックティック33〜64)の間に、異なる32ワードのデータのバーストが、各 ポート20に対して、共通のメモリ26に書込まれ得る。各ポートは、そのポー トを介して転送されるデータがメモリ26に書込まれ得るクロックサイクルを有 する。連続するポートのデータは、連続クロックサイクルで書込まれ、それらは それぞれのポートに対するそれぞれの書込み「タイムスロット」である。各ポー トに割当てられる書込みタイムスロットに対して準備するために、各ポートはそ のタイムスロットの32クロックサイクル前にデータをメモリアクセスバッファ に転送し始め得るので、ポートのタイムスロットの到着前に、ポートによって受 信されたバーストの32ワードのすべてを、ポートに割当てられたバッファに転 送するのに十分な時間がある。したかって、メモリデータタイミング線上の「w 1.C」に先行する32クロックサイクルの間には、ポート20−1から相互接 続マトリックス22 を介してメモリアクセスバッファ24−1へ、ポート20−1データ線上に「w 1.1」、「w1.2」・・・「w1.32」として示される32の転送がある。 各ポートは異なるタイムスロットを有するので、各ポートのバーストが、そのポ ートのタイムスロットのすぐ前に共有メモリへの転送準備ができるように、ポー トからの転送は適当にずらされる。 より特定的には、たとえば、図8に示される各ポート20−1のデータ書込み サイクル中に、ポート20−1を介して転送される第1のワードにあるすベての ビットは、相互接続マトリックス22によって、メモリアクセスバッファ24の 割当てられたデュアルポートレジスタ対間に分配される。たとえば、1バースト に付き32ワードありかつ1ワードに付きmビットあるとすると、第1のポート 20−1のデータ書込みサイクル(w1.1)の間、ポート20−1を介して転 送されるワード1(W1)のビットへ1(B1)はバッファ24−1にある所定 のレジスタ対にシリアルに書込まれ、W1のB2はバッファ24−2にある所定 のレジスタ対にシリアルに書込まれ、W1のB3はバッファ24−3にあるレジ スタ対にシリアルに書込まれる、というようになる。W1のBmはバッファ24 −mのレジスタ対にシリアルに書込まれる。 同様に、たとえば、第32のポート20−1のデータ書込みサイクル(W1. 32)の間、ポート20−1を介し て転送されるW32のB1は、ポート20−1を介して転送されるW1のB1と 同じ、ポート24−1のレジスタ対にシリアルに書込まれる。同様に、たとえば 、第3のポート20−1のデータ書込みサイクル(W1.3)の間、ポート20 −1を介して転送されるW3のB6は、ポート20−1を介して転送されるW1 のB6と同じ、メモリアクセスバッファ24−6(図示せず)にあるレジスタ対 にシリアルに書込まれる。 したがって、ポート20−1に対する32のデータ書込みサイクル(w1.1 〜w1.32)の間、データはそれぞれのメモリアクセスバッファ24−1〜2 4−mにある指定されたシフトインレジスタにシリアルにシフトされる。メモリ データサイクルw1.Cの間、事前の32の直列シフトインサイクル(w1.1 〜w1.32)の間にポート20−1のシフトインレジスタにシリアルにシフト されたすべてのデータは、共有メモリ26に書込まれ得るようバス32上に並列 にアサートされる。 同様に、メモリ読出し期間(クロックティック1〜32)の間、32ワードの データが、各ポートに対して、共有メモリから読出され得る。たとえば、r1. Cでの1つのクロックメモリアクセスサイクルの間に、32ワードがメモリ26 から読出され得、これらのワードはポート20−1を介して外部装置へ転送され 得る。したかって、r1.Cはポート20−1に対する読出し「タイムスロット 」で ある。同様に、たとえば、r31.Cはポート20−31に対する読出しタイム スロットを表わす。 特定的には、たとえば、タイムスロットr1.Cで、バッファ24−1内にあ るシフトアウトレジスタは、メモリ26から並列に読出される32ワードのすべ てのB1を並列に受取る。同様に、たとえば、タイムスロットr1.Cで、バッ ファ24−18(図示せず)内にあるシフトアウトレジスタは、メモリ26から 並列に読出される32ワードのすべてのB18を並列に受取る。 ポート20−1の32のデータ読出しサイクル(r1.1〜r1.32)の間 、メモリデータ読出しサイクル(r1.C)中にメモリ26から読出されたワー ドは相互接続マトリックス22を介してポート20−1にシリアルに転送される 。たとえば、データ読出しサイクル(r1.1)の間、ポート20−1を介して 転送されるべき第1のワード(W1)に対するすべてのビットは、m個の異なる バッファ24内にあるm個の異なるシフトアウトレジスタから同時にシリアルに シフトされ、マトリックス22を介してW1をポート20−1に与える。同様に 、たとえば、データ読出しサイクル(r1.31)の間、ポート20−1を介し て転送されるべき第31のワード(W31)に対するすべてのビットは、m個の 異なるバッファ24内にあるm個の異なるシフトアウトレジスタから同時にシリ アルにシフトされ、マトリックス22を介してW31をポート20 −1に与える。 したがって、所定のポートで受信されたデータがメモリ26に書込まれるとき 、相互接続マトリックスは、各バッファが各ワードのうちの記憶されるべきサブ セットだけを記憶するよう、データワードビットを複数のバッファ間に分配する 。好ましい実施例では、各バッファは所定の序列のビットのみを記憶する。した がって、各バッファは、バス32に、メモリに同時に転送されるべきすべてのデ ータのサブセットを与えるだけでよい。 逆に、メモリから読出されるデータが所定のポートに出力されるときは、複数 のバッファ間に分配されたビットが一連の完全なワード(すなわちバースト)と して出力されるよう、相互接続マトリックスはそれらを再結合する。あるポート を介して転送されるべきデータ全体は、メモリから並列に出力されてバッファに 入力される。しかしながら、各バッファはその全体データのサブセットを受取る にすぎない。相互接続マトリックス22はサブセットをデータのバーストに再結 合する。 図9の例示的タイミング図は、図7のデュアルレジスタ対の動作を示す。P. WRITEパルスの間、(rX.c)メモリデータサイクル中に共有メモリ26 から読出されたデータはシフトアウトレジスタ38に並列に書込まれる。各SH IFT−OUTパルスの間、1つのビットがそれぞれのポートへの転送のために シフトアウトレジスタから相 互接続マトリックス22へシフトアウトされる。たとえば、バッファ24−1の 場合、各SHIFT−OUTパルスは図8のr1.Xパルスに対応する。各SH IFT−INパルスの間では、データの1つのビットがシフトインレジスタにシ フトインされる。たとえば、バッファ24−1の場合、各SHIFT−INパル スは図8のw1.Xパルスに対応する。P.READパルスの間では、シフトイ ンレジスタにシフトインされたすべてのデータは並列に読出されてw1.Cサイ クルの間に共有メモリ26に書込まれ得る。 この実施例では、共有メモリ26は、(n×m)のメモリ幅を有する標準的ラ ンダムアクセスメモリ(RAM)構成であり得る。したがって、メモリは、図5 に示されるように、メモリアクセスバッファ24へまたはそこからデータの(n ×m)ビットを同時に転送でき、すべての(n×m)ビットを1つのアドレス指 定されるメモリ位置に記憶することができる。この実施例では、ポートからの各 ワードを連続するビットとして記憶するのではなく、これらワードは「インタリ ーブ」され、すべての第1の序列=序列ビット(B1)が連続的に記憶され、そ れにすべての第2の序列ビット(B2)等が続き、以下同様である。この構成で は、特定のポート20からまたはそこへのnワードを表わすすべてのビットは、 共有メモリ26の1ラインとして容易に記憶され得る。 この実施例では、タイムスロットは予め割当てられる。 しかしながら、タイムスロットは優先順位に基づいて調停されてもよい。さらに 、この実施例では、k個のポート20の各々は共有メモリ26と通信するために 1つのクロックザイクルのタイムスロットを必要とし、かつ各ポートはメモリア クセスバッファ24へまたはそこからnワードのデータバーストの全体を転送す るためにそのタイムスロットの前にnクロックサイクルを必要とするため、バー ストごとのワード数(n)をポート数(k)と等しく設定し、それによって、ボ ルトネックやアイドル時間なしにデータを転送するための円滑なサイクルプロセ スを提供するようにするのが効率的である。しかしながら、ポート数とバースト ごとのワード数との関係は、この発明から逸脱することなく変更可能である。 図10は、この発明に従う32ポート非同期転送モード(ATM)交換機のブ ロック図である。ATMは、セルと呼ばれる固定サイズのパケットを用いる情報 転送のためのペイロード多重化技術である。現在の実現例では、ATMセルは、 53バイト長であり、かつ経路情報を伝搬する5バイトのヘッダに48バイトの 情報フィールド(ペイロード)が続くものからなる。交換機に入る各ATMセル のペイロードは、共有メモリ内の特定の位置に置かれる。ATMセルのペイロー ドは48バイト幅(1バイトに付き8ビット)であるので、共有メモリは384 ビット幅(48×8=384)にされる。この実現例は、メモリアクセスバ ッファからメモリへの32ビットのバスを有し、各ポートワードが12ビット幅 であり、かつ32ワードのポートバーストを用いるように選択された。384は (12×32)にも等しく、つまり、セルは12ビットワードからなる32ワー ドのバーストで転送されることに注目されたい。 ATM交換機は、ポート上の各受信されたセルを、各そのようなセルに含まれ る経路情報に従って、宛先ポートへ送る。より特定的には、セルはポートから転 送されて共有メモリに記憶される。次いで、それは、共有メモリから取出されて 、セル内に示された宛先ポートへ転送される。この態様で、データをポート間で 交換できる。制御メモリおよび交換制御装置の動作は、当業者によって理解され 、この発明のいかなる部分も形成しないだろうから、ここに記載される必要はな い。 この発明の特定の実施例がここに詳細に記載されてきたが、この発明の範囲か ら逸脱することなくさまざまな修正が好ましい実施例になされ得る。したがって 、前述の記載は、添付の請求の範囲において規定されるこの発明を限定すること を意図するものではない。

Claims (1)

  1. 【特許請求の範囲】 1.ランダムアクセスメモリ(RAM)と複数のデータポートとを含むマルチポ ートメモリシステムにおいて使用するためのメモリインタフェースであって、 各々が、異なるそれぞれのデータポートと前記RAMとの間で移動中の複数の それぞれのデータバーストのサブセットの同時記憶のための複数の記憶素子を含 み、かつ個々の記憶素子と前記RAMとの間で接続可能な並列データパス回路を さらに含む複数のバッファと、 それぞれのデータポートと前記RAMとの間で移動中の任意の所与のデータバ ーストの異なるそれぞれのサブセットが、異なるそれぞれのデータ線を介して異 なるそれぞれのバッファへまたはそれらから伝導されるように、各それぞれのデ ータポートを複数のそれぞれのバッファと相互接続する複数のデータ線を含む相 互接続回路とを含む、メモリインタフェース。 2.それぞれの記憶素子は、データバーストのサブセットを前記相互接続回路へ およびそこからシリアルに転送する直列転送回路を含む、請求項1に記載のシス テム。 3.それぞれの記憶素子は、前記相互接続回路からのそれぞれのデータバースト のサブセットをシリアルにシフトインするためのそれぞれのシフトインレジスタ 回路を含み、かつ前記相互接続回路へそれぞれのデータバーストのサブセットを シリアルにシフトアウトするためのそれぞれのシ フトアウトレジスタ回路を含む、請求項1に記載のシステム。 4.それぞれの記憶素子は、前記相互接続回路からそれぞれのデータバーストの サブセットをシリアルにシフトインするための、および前記RAMへのそのよう なデータバーストのサブセットの並列シフトアウトのための、それぞれの直列シ フトイン/並列シフトアウトレジスタ回路を含み、 それぞれの記憶素子は、前記RAMからのそれぞれのデータバーストのサブセ ットの並列シフトインのための、および前記相互接続回路へのそのようなデータ バーストのサブセットをシリアルにシフトアウトするための、それぞれの並列シ フトイン/直列シフトアウトレジスタ回路をさらに含む、請求項Iに記載のシス テム。 5.それぞれの記憶素子は、前記相互接続回路からのそれぞれのデータバースト のサブセットをシリアルにシフトインするための、および前記RAMへのそのよ うなデータバーストのサブセットの並列シフトアウトのための、それぞれの直列 シフトイン/並列シフトアウトレジスタ回路を含み、 それぞれの記憶素子は、前記RAMからのそれぞれのデータバーストのサブセ ットの並列シフトインのための、およびそのようなデータバーストのサブセット を前記相互接続回路へシリアルにシフトアウトするための、それぞれの並列シフ トイン/直列シフトアウトレジスタ回路をさらに 含み、 それぞれの並列データパス回路はそれぞれの直列シフトイン/並列シフトアウ トレジスタ回路を前記RAMと断続的に接続し、 それぞれの並列データパス回路はそれぞれの並列シフトイン/直列シフトアウ トレジスタ回路を前記RAMと断続的に接続する、請求項1に記載のシステム。 6.それぞれの記憶素子は、データバスのサブセットを前記相互接続回路へまた はそこから一度に1ビットシリアルに転送する直列転送回路を含む、請求項1に 記載のシステム。 7.前記相互接続回路はプリント基板を含む、請求項1に記載のシステム。 8.ランダムアクセスメモリ(RAM)と複数のデータポートとを含むマルチポ ートメモリシステムにおいて使用するためのメモリインタフェースであって、 複数のバッファを含み、その各々が、異なるそれぞれのデータポートと前記R AMとの間で移動中の複数のそれぞれのデータバーストのサブセットの同時記憶 のための複数の記憶素子を含み、それぞれの記憶素子は、前記相互接続回路から のそれぞれのデータバーストのサブセットをシリアルにシフトインするための、 および前記RAMへのそのようなデータバスのサブセットの並列シフトアウトの ための、それぞれの直列シフトイン/並列シフトアウトレジス タ回路を含み、それぞれの記憶素子は、前記RAMからのそれぞれのデータバー ストのサブセットの並列シフトインのための、およびそのようなデータバースト のサブセットを前記相互接続回路にシリアルにシフトアウトするための、それぞ れの並列シフトイン/直列シフトアウトレジスタ回路をさらに含み、前記それぞ れのバッファは、それぞれの直列シフトイン/並列シフトアウトレジスタ回路を 前記RAMと断続的に接続し、それぞれの並列シフトイン/直列シフトアウトレ ジスタ回路を前記RAMと断続的に接続する、それぞれの並列データパス回路を さらに含み、前記メモリインタフェースはさらに、 それぞれのデータポートと前記RAMとの間を移動中の任意の所与のデータバ ーストの異なるそれぞれのサブセットが、異なるそれぞれのデータ線を介して異 なるそれぞれのバッファへまたはそれらから伝導されるように、各それぞれのデ ータポートを複数のそれぞれのバッファと相互接続する複数のデータ線を含むプ リント基板相互接続回路を含む、メモリインタフェース。 9.ランダムアクセスメモリ(RAM)と、 複数のデータポートと、 複数のバッファとを含み、各々の前記バッファは、異なるそれぞれのデータポ ートと前記RAMとの間で移動中の複数のそれぞれのデータバーストのサブセッ トの同時記憶のための複数の記憶素子を含み、かつ個々の記憶素子と前 記RAMとの間で接続可能な並列データパス回路をさらに含み、さらに、 それぞれのデータポートと前記RAMとの間で移動中の任意の所与のデータバ ーストの異なるそれぞれのサブセットが、異なるそれぞれのデータ線を介して異 なるそれぞれのバッファへまたはそれらから伝導されるように、各それぞれのデ ータポートを複数のそれぞれのバッファと相互接続する複数のデータ線を含む相 互接続回路を含む、マルチポートメモリシステム。 10.1つのRAM集積回路を含む、請求項9に記載のシステム。 11.前記RAMと任意の所与のデータバーストの異なるサブセットを記憶する 複数の異なるバッファとの間におけるそのような所与のデータバーストのすべて のサブセットの同時並列転送を制御する制御信号を与える制御回路をさらに含む 、請求項9に記載のシステム。 12.それぞれの記憶素子は、前記相互接続回路へおよびそこからデータバース トのサブセットをシリアルに転送する直列転送回路を含む、請求項9に記載のシ ステム。 13.前記それぞれの記憶素子は、前記相互接続回路へおよびそこからデータバ ーストのサブセットをシリアルに転送する直列転送回路を含み、 前記RAMと任意の所与のデータバーストの異なるサブセットを記憶する複数 の異なるバッファとの間におけるそ のような所与のデータバーストのすべてのサブセットの同時並列転送を制御する 制御信号を与え、前記相互接続回路と、異なるそれぞれのバッファとの間におけ るデータバーストのサブセットの転送を制御する制御信号を与える、制御回路を さらに含む、請求項9に記載のシステム。 14.それぞれの記憶素子は、前記相互接続回路からのそれぞれのデータバース トのサブセットをシリアルにシフトインするためのそれぞれのシフトインレジス タ回路を含み、かつ前記相互接続回路へそれぞれのデータバーストのサブセット をシリアルにシフトアウトするためのそれぞれのシフトアウトレジスタ回路を含 む、請求項9に記載のシステム。 15.それぞれの記憶素子は、前記相互接続回路からのそれぞれのデータバース トのサブセットをシリアルにシフトインするための、および前記RAMへのその ようなデータバーストのサブセットの並列シフトアウトのための、それぞれの直 列シフトイン/並列シフトアウトレジスタ回路を含み、 それぞれの記憶素子は、前記RAMからのそれぞれのデータバーストのサブセ ットの並列シフトインのための、およびそのようなデータバーストのサブセット を前記相互接続回路にシリアルにシフトアウトするための、それぞれの並列シフ トイン/直列シフトアウトレジスタ回路をさらに含む、請求項9に記載のシステ ム。 16.それぞれの記憶素子は、前記相互接続回路からのそれぞれのデータバース トのサブセットをシリアルにシフトインするための、および前記RAMへのその ようなデータバーストのサブセットの並列シフトアウトのための、それぞれの直 列シフトイン/並列シフトアウトレジスタ回路を含み、 それぞれの記憶素子は、前記RAMからのそれぞれのデータバーストのサブセ ットの並列シフトインのための、およびそのようなデータバーストのサブセット を前記相互接続回路へシリアルにシフトアウトするための、それぞれの並列シフ トイン/直列シフトアウトレジスタ回路をさらに含み、 それぞれの並列データパス回路はそれぞれの直列シフトイン/並列シフトアウ トレジスタ回路を前記RAMと断続的に接続し、 それぞれの並列データパス回路はそれぞれの並列シフトイン/直列シフトアウ トレジスタ回路を前記RAMと断続的に接続する、請求項9に記載のシステム。 17.それぞれの記憶素子は、データバーストのサブセットを前記相互接続回路 へまたはそこから一度に1ビットシリアルに転送する直列転送回路を含む、請求 項9に記載のシステム。 18.前記相互接続回路はプリント基板を含む、請求項9に記載のシステム。 19.ランダムアクセスメモリ(RAM)と、 複数のデータポートと、 複数のバッファとを含み、各々の前記バッファは、異なるそれぞれのデータポ ートと前記RAMとの間で移動中の複数のそれぞれのデータバーストのサブセッ トの同時記憶のための複数の記憶素子を含み、それぞれの記憶素子は、前記相互 接続回路からのそれぞれのデータバーストのサブセットをシリアルにシフトイン するための、および前記RAMへのそのようなデータバーストのサブセットの並 列シフトアウトのための、それぞれの直列シフトイン/並列シフトアウトレジス タ回路を含み、それぞれの記憶素子は、前記RAMからのそれぞれのデータバー ストのサブセットの並列シフトインのための、およびそのようなデータバースト のサブセットを前記相互接続回路にシリアルにシフトアウトするための、それぞ れの並列シフトイン/直列シフトアウトレジスタ回路をさらに含み、前記それぞ れのバッファは、それぞれの直列シフトイン/並列シフトアウトレジスタ回路を 前記RAMと断続的に接続し、それぞれの並列シフトイン/直列シフトアウトレ ジスタ回路を前記RAMと断続的に接続する、それぞれの並列データパス回路を さらに含み、さらに、 それぞれのデータポートと前記RAMとの間で移動中の任意の所与のデータバ ーストの異なるそれぞれのサブセットが、異なるそれぞれのデータ線を介して異 なるそれぞれ のバッファへまたはそれらから伝導されるように、各それぞれのデータポートを 複数のそれぞれのバッファと相互接続する複数のデータ線を含む相互接続回路と 、 前記RAMと任意の所与のデータバーストの異なるサブセットを記憶する複数 の異なるバッファとの間におけるそのような所与のデータバーストのすべてのサ ブセットの同時並列転送を制御する制御信号を与え、前記相互接続回路と異なる それぞれのバッファとの間におけるデータバーストのサブセットの転送を制御す る制御信号を与える、制御回路とを含む、マルチポートメモリシステム。 20.ランダムアクセスメモリ(RAM)と、 k個のデータポートと、 m個のバッファとを含み、各々の前記バッファは、異なるそれぞれのデータポ ートと前記RAMとの間で移動中のmワードのデータバーストの複数のそれぞれ のnビットのサブセットの同時記憶のためのk個の記憶素子を含み、かつ個々の 記憶素子と前記RAMとの間で接続可能な並列データパス回路をさらに含み、 それぞれのnビットのサブセットは、それぞれのmビットデータバーストのn 個のワードにおける同じ序列のn個のすべてのビットを含み、さらに、 それぞれのデータポートと前記RAMとの間で移動中の任意の所与のmワード のデータバーストのm個の異なるそれぞれのnビットのサブセットが、m個の異 なるそれぞれ のバッファへまたはそれらから伝導されるように、各それぞれのデータポートを m個の異なるバッファと相互接続する複数のデータ線を含む相互接続回路を含む 、マルチポートメモリシステム。 21.k=mである、請求項20に記載のシステム。 22.k個のデータポートとランダムアクセスメモリ(RAM)との間で、ワー ドごとにmビットを含むnワードのデータバーストを転送するための方法であっ て、 それぞれのデータポートを介して転送されるデータバーストを、それぞれのデ ータバーストのサブセットであって、各それぞれのサブセットがそれぞれのデー タバーストの異なるデータワードからの同じ序列のnビットを含むサブセットに 分けるステップと、 各々がk個の記憶素子を含むm個のバッファを設けるステップと、 異なるバッファ内の異なる記憶素子に、任意のそれぞれのデータポートおよび RAMへまたはそれらから移動中のそれぞれのデータバーストの異なるデータバ ーストのサブセットを一時的に記憶するステップと、 異なるバッファにある異なる記憶素子とRAMとの間で、任意のそれぞれのデ ータポートおよびRAMへまたはそれらから移動中のそれぞれのデータバースト の異なるデータバーストのサブセットのすべてを並列に転送するステップとを含 む、データバーストの転送方法。 23.k=mである、請求項20に記載の方法。 24.各データバーストのサブセットはn個のビットを含む、請求項20に記載 の方法。 25.任意のそれぞれのデータポートと異なるバッファにある異なる記憶素子と の間において、そのようなそれぞれのデータポートおよびRAMへまたはそれら から移動中のそれぞれのデータバーストのそれぞれのデータバーストのサブセッ トをシリアルに転送するステップをさらに含む、請求項20に記載の方法。 26.任意のそれぞれのデータポートと異なるバッファにある異なる記憶素子と の間において、そのようなそれぞれのデータポートおよびRAMへまたはそれら から移動中のそれぞれのデータバーストのそれぞれのデータバーストのサブセッ トを一度に1ビットシリアルに転送するステップをさらに含む、請求項20に記 載の方法。 27.ランダムアクセスメモリ(RAM)と、 k個のデータポートと、 それぞれのデータポートを介して転送されるデータバーストを、それぞれのn ビットのデータバーストのサブセットであって、各それぞれのサブセットがそれ ぞれのデータバーストの異なるデータワードからの同じ序列のnビットを含むサ ブセットに分けるための手段と、 m個のバッファ手段とを含み、各々の前記バッファ手段は、異なるバッファ手 段内の異なる記憶素子手段に、任意 のそれぞれのデータポートおよびRAMへまたはそれらから移動中のそれぞれの データバーストの異なるデータバーストのサブセットを一時的に記憶するための k個の記憶素子手段を含み、さらに、 異なるバッファ手段にある異なる記憶素子手段とRAMとの間で、任意のそれ ぞれのデータポートおよびRAMへまたはそれらから移動中のそれぞれのデータ バーストの異なるデータバーストのサブセットのすべてを並列に転送するための 手段を含む、マルチポートメモリシステム。 28.k=mである、請求項27に記載の方法。
JP50719295A 1993-08-19 1994-08-17 マルチポート共有メモリインタフェースおよび関連の方法 Expired - Lifetime JP3241045B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US109,805 1993-08-19
US08/109,805 1993-08-19
US08/109,805 US5440523A (en) 1993-08-19 1993-08-19 Multiple-port shared memory interface and associated method
PCT/US1994/009364 WO1995005635A1 (en) 1993-08-19 1994-08-17 Multiple-port shared memory interface and associated method

Publications (2)

Publication Number Publication Date
JPH09502818A true JPH09502818A (ja) 1997-03-18
JP3241045B2 JP3241045B2 (ja) 2001-12-25

Family

ID=22329660

Family Applications (1)

Application Number Title Priority Date Filing Date
JP50719295A Expired - Lifetime JP3241045B2 (ja) 1993-08-19 1994-08-17 マルチポート共有メモリインタフェースおよび関連の方法

Country Status (9)

Country Link
US (1) US5440523A (ja)
EP (1) EP0714534B1 (ja)
JP (1) JP3241045B2 (ja)
KR (1) KR100303574B1 (ja)
AT (1) ATE182700T1 (ja)
AU (1) AU682211B2 (ja)
CA (1) CA2168666C (ja)
DE (1) DE69419760T2 (ja)
WO (1) WO1995005635A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0913828A2 (en) * 1997-10-28 1999-05-06 MMC Networks, Inc. Memory system and method of accessing the same
JP2011065667A (ja) * 2010-11-08 2011-03-31 Renesas Electronics Corp 情報処理システム

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5732041A (en) * 1993-08-19 1998-03-24 Mmc Networks, Inc. Memory interface unit, shared memory switch system and associated method
US5802287A (en) * 1993-10-20 1998-09-01 Lsi Logic Corporation Single chip universal protocol multi-function ATM network interface
WO1996007139A1 (en) * 1994-09-01 1996-03-07 Mcalpine Gary L A multi-port memory system including read and write buffer interfaces
US5696991A (en) * 1994-11-29 1997-12-09 Winbond Electronics Corporation Method and device for parallel accessing data with optimal reading start
JPH08278916A (ja) * 1994-11-30 1996-10-22 Hitachi Ltd マルチチャネルメモリシステム、転送情報同期化方法及び信号転送回路
US5808487A (en) * 1994-11-30 1998-09-15 Hitachi Micro Systems, Inc. Multi-directional small signal transceiver/repeater
US6185222B1 (en) 1995-09-28 2001-02-06 Cisco Technology, Inc. Asymmetric switch architecture for use in a network switch node
US5617555A (en) * 1995-11-30 1997-04-01 Alliance Semiconductor Corporation Burst random access memory employing sequenced banks of local tri-state drivers
JP3603440B2 (ja) * 1996-01-12 2004-12-22 富士通株式会社 半導体記憶装置
US5724358A (en) * 1996-02-23 1998-03-03 Zeitnet, Inc. High speed packet-switched digital switch and method
US6373846B1 (en) 1996-03-07 2002-04-16 Lsi Logic Corporation Single chip networking device with enhanced memory access co-processor
US5959993A (en) * 1996-09-13 1999-09-28 Lsi Logic Corporation Scheduler design for ATM switches, and its implementation in a distributed shared memory architecture
US5831980A (en) * 1996-09-13 1998-11-03 Lsi Logic Corporation Shared memory fabric architecture for very high speed ATM switches
US5924117A (en) * 1996-12-16 1999-07-13 International Business Machines Corporation Multi-ported and interleaved cache memory supporting multiple simultaneous accesses thereto
US6487207B1 (en) * 1997-02-26 2002-11-26 Micron Technology, Inc. Shared buffer memory architecture for asynchronous transfer mode switching and multiplexing technology
US6067595A (en) * 1997-09-23 2000-05-23 Icore Technologies, Inc. Method and apparatus for enabling high-performance intelligent I/O subsystems using multi-port memories
US6590901B1 (en) * 1998-04-01 2003-07-08 Mosaid Technologies, Inc. Method and apparatus for providing a packet buffer random access memory
US6307860B1 (en) 1998-04-03 2001-10-23 Mmc Networks, Inc. Systems and methods for data transformation and transfer in networks
US7126137B2 (en) * 1998-05-05 2006-10-24 Carl Zeiss Smt Ag Illumination system with field mirrors for producing uniform scanning energy
US6650637B1 (en) * 1998-12-14 2003-11-18 Lucent Technologies Inc. Multi-port RAM based cross-connect system
DE19936080A1 (de) * 1999-07-30 2001-02-15 Siemens Ag Multiprozessorsystem zum Durchführen von Speicherzugriffen auf einen gemeinsamen Speicher sowie dazugehöriges Verfahren
DE19937176A1 (de) * 1999-08-06 2001-02-15 Siemens Ag Multiprozessor-System
WO2001026309A1 (en) * 1999-10-06 2001-04-12 Tenor Networks, Inc. Hierarchical output-queued packet-buffering system and method
US6850490B1 (en) 1999-10-06 2005-02-01 Enterasys Networks, Inc. Hierarchical output-queued packet-buffering system and method
DE19961138C2 (de) * 1999-12-17 2001-11-22 Siemens Ag Multiport-RAM-Speichervorrichtung
US6560160B1 (en) * 2000-11-13 2003-05-06 Agilent Technologies, Inc. Multi-port memory that sequences port accesses
US6842837B1 (en) * 2001-02-13 2005-01-11 Digeo, Inc. Method and apparatus for a burst write in a shared bus architecture
US7571287B2 (en) * 2003-03-13 2009-08-04 Marvell World Trade Ltd. Multiport memory architecture, devices and systems including the same, and methods of using the same
US7707330B2 (en) * 2003-09-18 2010-04-27 Rao G R Mohan Memories for electronic systems
WO2008014413A2 (en) * 2006-07-27 2008-01-31 Rambus Inc. Cross-threaded memory device and system
US7769942B2 (en) 2006-07-27 2010-08-03 Rambus, Inc. Cross-threaded memory system
US8234425B1 (en) 2007-06-27 2012-07-31 Marvell International Ltd. Arbiter module
US7949817B1 (en) 2007-07-31 2011-05-24 Marvell International Ltd. Adaptive bus profiler
US8131915B1 (en) 2008-04-11 2012-03-06 Marvell Intentional Ltd. Modifying or overwriting data stored in flash memory
US8683085B1 (en) 2008-05-06 2014-03-25 Marvell International Ltd. USB interface configurable for host or device mode
US8621159B2 (en) 2009-02-11 2013-12-31 Rambus Inc. Shared access memory scheme
US8423710B1 (en) 2009-03-23 2013-04-16 Marvell International Ltd. Sequential writes to flash memory
US8213236B1 (en) 2009-04-21 2012-07-03 Marvell International Ltd. Flash memory
US8688922B1 (en) 2010-03-11 2014-04-01 Marvell International Ltd Hardware-supported memory management
US8756394B1 (en) 2010-07-07 2014-06-17 Marvell International Ltd. Multi-dimension memory timing tuner
US9343124B1 (en) * 2011-07-29 2016-05-17 Altera Corporation Method and system for operating a multi-port memory system
CN107562549B (zh) * 2017-08-21 2019-12-03 西安电子科技大学 基于片上总线和共享内存的异构众核asip架构

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61150059A (ja) * 1984-12-24 1986-07-08 Sony Corp デ−タ処理装置
US4891794A (en) * 1988-06-20 1990-01-02 Micron Technology, Inc. Three port random access memory
US4888741A (en) * 1988-12-27 1989-12-19 Harris Corporation Memory with cache register interface structure
US5142638A (en) * 1989-02-07 1992-08-25 Cray Research, Inc. Apparatus for sharing memory in a multiprocessor system
US5204841A (en) * 1990-07-27 1993-04-20 International Business Machines Corporation Virtual multi-port RAM
US5278967A (en) * 1990-08-31 1994-01-11 International Business Machines Corporation System for providing gapless data transfer from page-mode dynamic random access memories
US5337287A (en) * 1991-08-20 1994-08-09 Nec Corporation Dual port semiconductor memory device
JPH05151769A (ja) * 1991-11-28 1993-06-18 Mitsubishi Electric Corp マルチポートメモリ

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0913828A2 (en) * 1997-10-28 1999-05-06 MMC Networks, Inc. Memory system and method of accessing the same
JP2011065667A (ja) * 2010-11-08 2011-03-31 Renesas Electronics Corp 情報処理システム

Also Published As

Publication number Publication date
EP0714534B1 (en) 1999-07-28
CA2168666C (en) 2001-06-12
AU682211B2 (en) 1997-09-25
DE69419760T2 (de) 2000-03-09
EP0714534A1 (en) 1996-06-05
KR960704271A (ko) 1996-08-31
JP3241045B2 (ja) 2001-12-25
DE69419760D1 (de) 1999-09-02
AU7600094A (en) 1995-03-14
ATE182700T1 (de) 1999-08-15
KR100303574B1 (ko) 2001-11-22
CA2168666A1 (en) 1995-02-23
US5440523A (en) 1995-08-08
WO1995005635A1 (en) 1995-02-23

Similar Documents

Publication Publication Date Title
JPH09502818A (ja) マルチポート共有メモリインタフェースおよび関連の方法
JP3899085B2 (ja) ネットワーク装置
JP2538720B2 (ja) パケット/回線スイッチング装置
US5083269A (en) Buffer device suitable for asynchronous transfer mode communication
EP0156580A2 (en) Data transmission system
EP0569173A2 (en) High-speed packet switch
JP2915323B2 (ja) パケット交換機およびその拡張モジュール
JPH03139044A (ja) Atmシステム用スイッチ回路網およびスイッチ―回路網モジュール
JPH03236651A (ja) パケット伝送用相互接続構造とパケットの伝送方法
US20050125590A1 (en) PCI express switch
JPH0392048A (ja) パケット伝送用交換器
US6993020B2 (en) Distributed switch memory architecture
US6061358A (en) Data communication system utilizing a scalable, non-blocking, high bandwidth central memory controller and method
US6728256B1 (en) Shared buffer control device
US4276611A (en) Device for the control of data flows
US6728206B1 (en) Crossbar switch with communication ring bus
US7151752B2 (en) Method for the broadcasting of a data packet within a switched network based on an optimized calculation of the spanning tree
JP2003521156A (ja) 単一のリングデータバス接続構成を用いてメモリを共有する装置および方法
US7218638B2 (en) Switch operation scheduling mechanism with concurrent connection and queue scheduling
JP3255113B2 (ja) パケットスイッチシステム、これを含む集積回路、パケットスイッチ制御方法、パケットスイッチ制御プログラム記録媒体
JP3103298B2 (ja) Atmスイッチのアドレス生成回路
US6891843B1 (en) Apparatus and method for sharing memory using extra data path having multiple rings
US6465989B1 (en) Apparatus for integrating switch ports in an ATM switching system
JPS617968A (ja) プログラム可能なステータス・レジスタ装置
JPH11163882A (ja) Atmスイッチ

Legal Events

Date Code Title Description
S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

S631 Written request for registration of reclamation of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313631

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081019

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091019

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091019

Year of fee payment: 8

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091019

Year of fee payment: 8

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091019

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101019

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101019

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111019

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111019

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121019

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131019

Year of fee payment: 12

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term