JP2000259557A - 多数の機能モジュールを接続するためのポート管理コントローラ - Google Patents

多数の機能モジュールを接続するためのポート管理コントローラ

Info

Publication number
JP2000259557A
JP2000259557A JP2000005209A JP2000005209A JP2000259557A JP 2000259557 A JP2000259557 A JP 2000259557A JP 2000005209 A JP2000005209 A JP 2000005209A JP 2000005209 A JP2000005209 A JP 2000005209A JP 2000259557 A JP2000259557 A JP 2000259557A
Authority
JP
Japan
Prior art keywords
port
management controller
access
functional module
port management
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.)
Pending
Application number
JP2000005209A
Other languages
English (en)
Inventor
Michele Z Dale
ゼット デイル ミッチェル
Farrukh A Latif
アムジャド ラティフ ファルクフ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nokia of America Corp
Original Assignee
Lucent Technologies Inc
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 Lucent Technologies Inc filed Critical Lucent Technologies Inc
Publication of JP2000259557A publication Critical patent/JP2000259557A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)
  • Small-Scale Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 (修正有) 【課題】コンピュータまたは通信システム内にある種々
の機能モジュールを接続するための改善された方法およ
び装置を提供する。 【解決手段】ホストコンポーネントへアクセスする機能
モジュールよりの要求は全て、まずポート管理コントロ
ーラPMCで処理される。PMCは、優先度、効率タイ
ミング等の所定パラメータにより要求をスケジュールに
入れる。PMCは、1つ以上の要求を同時に処理でき
る。PMCは、ロード条件に動的に適応し、要求を再ア
レンジして、利用可能な帯域幅を効率的に利用し待ち時
間を減らす。また、新たな機能モジュールの追加、古い
機能モジュールの除去の場合に、バスアーキテクチャを
変更する必要がない。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータおよ
び通信システムに関し、特に、外部装置をコンピュータ
または通信システムと接続する技術に関する。
【0002】
【従来の技術及び発明が解決しようとする課題】周辺入
力/出力機能や他のネットワークデータ交換機能を実行
する多くのコンピュータや通信システムは、1つ以上の
機能モジュールに頼って、システムを1つ以上の外部装
置と相互接続している。機能モジュールは、コンピュー
タや通信システムの外部装置とそのシステム内にある内
部コンポーネント間のデータ通信を促進する入力/出力
ブロックである。機能モジュールの例は、プロセッサコ
アおよびインターフェースコアを含む。内部コンポーネ
ントの例は、システムメモリおよび中央演算処理装置
(CPU)を含む。外部装置の例は、ハードディスクド
ライブ、プリンタ、外部モデム、フロッピーディスクド
ライブおよびCD−ROMを含む。従来、機能モジュー
ルとホストコンポーネントは、1つの回路基板または1
つの集積チップに配置されている。
【0003】機能モジュールは、内部コンポーネントに
相互接続する必要がある。この相互接続は、種々の機能
モジュール間のデータ情報共有を促進する。たとえば、
機能モジュールは、外部装置からデータを受け取って、
システムメモリへ送る(システムメモリへの“書き込
み"としても知られている)ことができる。かけがえと
して、機能モジュールは、システムメモリからデータを
受け取り(システムメモリからの“読み出し"としても
知られている)、外部装置へ送ることができる。
【0004】図1は、従来システム100を示すブロッ
ク図であり、5つの機能モジュール101〜109がロ
ーカルバス120により相互接続されている。模範的な
ケースでは、機能モジュール101は、IEEE139
4−95コントローラであり、機能モジュール103
は、周辺コンポーネント相互接続(PCI)ブリッジで
あり、機能モジュール105は、(IEEE802.3
規格に従う)イーサネットコントローラであり、機能モ
ジュール107は、ユニバーサルシリアルバス(US
B)であり、機能モジュール109は、高速集積デバイ
スエレクトロニクス(IDE)コントローラである。さ
らに、各機能モジュールは、(機能モジュールとホスト
コンポーネントが配置されている集積回路の外部にある
外部装置151〜159に直接接続されている。
【0005】ローカルバス120は、中央アービトレイ
ター122に接続され、中央アービトレイター122
は、ホストコンポーネント(たとえばシステムメモリま
たはCPU)に直接接続されている。アービトレイター
122は、ローカルバス120上のトラフィックを制御
する。ローカルバス120上のトラフィックは、ホスト
コンポーネント130と機能モジュール101〜109
間で交換されるデータを表す。機能モジュール101〜
109が、ホストコンポーネント130に書き込むおよ
び/またはホストコンポーネント130から読み出す必
要があるときはいつでも、機能モジュールは、ローカル
バス120にアクセスする必要がある。ローカルバス1
20へのアクセスを得るために、機能モジュールは、ア
クセス要求をアービトレイター122に送る。ローカル
バス120上の現トラフィックに依存して、アービトレ
イター122は、要求を許可するか拒むかのどちらかを
行う。アクセスが許可された場合は、機能モジュール
は、予め決められた時間の間または予め定められたバイ
ト数の間データ交換を実行する。データ交換が完了した
後、ローカルバス120へのアクセスは止められる。こ
の時点で、他の機能モジュール(または、同じ機能モジ
ュール)は、ローカルバス120へのアクセスを要求す
ることができ、次いで、サイクルは再びそっくり繰り返
される。
【0006】各機能モジュールは、ローカルバス120
に直接接続されているが、一度に1つずつの機能モジュ
ールだけが、ローカルバス120を介してデータを送っ
たり受け取ったりすることができる。アービトレイター
122は、バス アービトレイションに頼っており、こ
こでは、全機能モジュールは、残っている要求がポーリ
ングされ、次いで、アクセスは、決まった優先度に基づ
いて1つだけの機能モジュールに許可される。第2の機
能モジュールがローカルバス120へのアクセスを要求
した時、ローカルバス120が、すでに第1の機能モジ
ュール(すなわち、データ交換を行っているモジュー
ル)により使用中の場合は、アービトレイター122
は、第2の機能モジュールからの要求をホールドしてお
く。第1の機能モジュールが、ローカルバス120への
そのアクセスを終了した(すなわち、そのデータ交換を
終了した)後のみ、アービトレイター122は、第2の
機能モジュールからの要求を許可するだろう。このよう
に、第2の機能モジュールは、第1の機能モジュールが
そのデータ交換を終了するまで待機する必要がある。こ
の待機時間(すなわち、待ち時間)は、第2の機能モジ
ュールによるデータ交換を終了するのに費やされる実時
間に加わり、コンピュータや通信システムの性能に悪影
響を及ぼす。
【0007】また、従来システム100は、機能モジュ
ール101〜109がデータを一時的に格納するための
内部バッファ(すなわち、メモリスペース)を持つこと
を必要としている。機能モジュールは、外部装置からデ
ータを受け取ったが、ローカルバス120への即時のア
クセスができない場合は、バスへのアクセスが許可され
るまで、データをその内部バッファに保持しなければな
らない。より大きな内部バッファは、より長い待ち時間
に適応する必要がある。内部バッファは費用がかかり、
バッファの数/サイズの増加と共に、金銭コストが増加
する。
【0008】一般に、従来システム100においては、
ローカルバス120は、最大動作周波数で動作するよう
にバランスされている。新たな機能モジュールがローカ
ルバス120に加えられるか、または、古い機能モジュ
ールのどれかがローカルバス120から除去された場
合、従来技術では、最大動作周波数を生成するために再
バランスさせる必要がある。この再バランスは、金銭コ
ストに加わる。かけがえとして、ローカルバスのデザイ
ンまたはアーキテクチャが、アップグレードされるかま
たは拡張された場合は、ローカルバス120にアクセス
する機能モジュールのデザインも、拡張されるかまたは
取り換えられる必要がある。また、これは金銭コストに
加わる。
【0009】従来システム100において、各機能モジ
ュールは、予め決められたスループット(すなわち、最
大帯域幅)を有する。したがって、特定の機能モジュー
ルが、データ交換を終了するためにローカルバス120
上の追加の帯域幅を要する場合は、その機能モジュール
は、追加の帯域幅が利用可能(他の機能で使用されてい
ない)であっても、その割り当てられた最大帯域幅を超
えることができない。データ交換を終了するために、機
能モジュールは、ローカルバス120への他のアクセス
を要求して待機しなければならない。これは、ローカル
バス120上の利用可能な帯域幅の非効率的な使用にな
り、性能が落ちる。
【0010】
【課題を解決するための手段】コンピュータまたは通信
システム内にある種々の機能モジュールを接続するため
の改善された方法および装置が提供される。本発明の原
理によれば、各機能モジュールと、システムメモリやC
PU等のホストコンポーネントへの直接インターフェー
スを有するポート管理コントローラ(PMC)が、提供
される。PMCは、従来システムのローカルバスおよび
アービトレイターの両方と置換する。ホストコンポーネ
ントへアクセスする機能モジュールよりの要求は全て、
まずPMCで処理される。PMCは、優先度、効率およ
び/またはタイミング等の予め定められたパラメータに
したがって、到来する要求をスケジュールに入れる。
【0011】PMCは、1つ以上の要求を同時に処理す
ることができる。また、PMCは、ロード条件に動的に
適応し、到来する要求を再アレンジして、利用可能な帯
域幅を効率的に利用することができる。したがって、P
MCは、待ち時間を減らして、コンピュータまたは通信
システムの性能を改善する。また、PMCは、新たな機
能モジュールが追加されたり、古い機能モジュールが除
去されたりした場合に、バスアーキテクチャの変更をす
る必要性をなくし、古い機能モジュールの再使用を可能
にする。また、PMCは、内部バッファの必要性を軽減
し、それにより、製造コストが減る。
【0012】一実施例において、本発明は、複数の機能
モジュールによるホストコンポーネントへのアクセスを
制御するポート管理コントローラであり、PMCは、
(a)ホストコンポーネントに接続されるように形勢さ
れたホストコンポーネントポートと、(b)少なくとも
2つの機能モジュールポートとからなり、各機能モジュ
ールポートは、ポイントツーポイント接続により機能モ
ジュールの1つに接続されるように構成されている。P
MCは、(1)PMCの第1の機能モジュールポートで
第1の機能モジュールからの第1のアクセス要求を受け
取り、(2)第1の機能モジュールと、ホストコンポー
ネントポートおよび第1の機能モジュールポートを介す
るホストコンポーネントとの間のデータ交換のために第
1のアクセスセションをスケジュールに入れるように構
成されている。
【0013】本発明の他の態様、特徴および利点は、以
下の詳細な説明、付随の請求項および添付図面からより
十分に明らかになるだろう。
【0014】
【発明の実施の形態】図2は、本発明の好適な一実施例
によるコンピュータまたは通信システムを示すブロック
図である。図2は、ポート管理コントローラ(PMC)
200が、ポイントツーポイント接続202を介して機
能モジュール101〜109に直接接続されている、模
範的な場合を示す。また、PMC200は、ポートHと
よばれるホストポートを介してホストコンポーネント1
30に直接接続されている。
【0015】図2の模範的な実施例において、PMC2
00は、ポートA〜Gの符号が付けられた7つの異なる
機能モジュールポートを含む。ポートA〜Cは、機能モ
ジュール101に接続され、各ポートは、機能モジュー
ル101への単方向データストリームまたは機能モジュ
ール101からの単方向データストリームを処理するた
めに備えられている。ポートAおよびBは、データが、
ホストコンポーネント130から受け取られて機能モジ
ュール101へ送られる(ホストコンポーネント130
からの読み出し)作業を実行するのに使用される。ポー
トCは、データを機能モジュール101からホストコン
ポーネント130へ送る(ホストコンポーネント130
への書き込み)に使用される。PMC200のポートD
〜Gは、それぞれ、機能モジュール103〜109に接
続されている。ポートD〜Gは各々、双方向データスト
リームを処理(すなわち、読み出しと書き込み)するこ
とができる。
【0016】図2は、機能モジュール101が3つのポ
ートに接続されていると共に、他の機能モジュール10
3〜109が1つだけのポートに接続されている模範的
なケースを示している。これは、各機能モジュールが1
つまたはそれ以上のポートに接続することができること
を示す単なる例示である。また、他の実施例では、本発
明のPMCは、もっと少ないポートまたは7つ以上のポ
ートを有することができる。
【0017】本発明において、各ポートは、異なるタイ
プのデータ伝送を処理するというオプションを持ってい
る。模範的なケースでは、ポートAは、データ交換が最
小限のエラー、たとえば、メモリへの書き込みを伴って
起こるに違いないタイプのデータを処理することができ
る。ポートBは、データのタイムリーな送り出しが重要
なデータ伝送(たとえば、オーディオまたはビデオデー
タ伝送)を処理することができる。したがって、ポート
AおよびポートBは、PMCによって満たされるべき異
なる帯域幅と送り出し条件を有する。本発明のPMC2
00は、この目的を成し遂げる。
【0018】さらに、各機能モジュールは、専用のポイ
ントツーポイント接続202を介してPMC200に接
続されているので、複数の機能モジュールが、PMC2
00へのアクセス要求をパラレルに送ることができる。
PMC200は、データ交換が現在進行中の場合でさ
え、アクセス要求を受け取って処理する(すなわち、将
来のアクセスをスケジュールに入れる)ことができ、そ
れにより、利用可能な帯域幅が効率的に利用される。模
範的なケースでは、PMC200は、各クロックサイク
ルにおいて、データがホストコンポーネント30から転
送される(送られるまたは受け取られる)ように連続す
る順番でアクセスをスケジュールに入れる。従来技術で
は、後続のアクセス要求は、前のアクセスのデータ交換
の終了に基づいて送ることができるだけであり、クロッ
クサイクルは、1つのデータ交換の終了と次のアクセス
のスケジューリングの間の遅延で浪費されていた。
【0019】したがって、図1の従来のシリアルローカ
ルバス120と比較した場合、アクセス要求を処理する
際の待ち時間は、本発明により減少する。アクセス時の
待ち時間が減少すると、機能モジュール101〜109
の内部バッファの必要性も軽減され、製造に関連する金
銭コストも減少する。
【0020】図2の構成において、各機能モジュール1
01〜109は、実行される特定の作業を、システムメ
モリアドレスまたはなにか他の確認手段を用いて確認す
る。この確認手段は、機能モジュールが、PMC200
によりある作業を実行したい(すなわち、ホストコンポ
ーネント130にデータを送るかまたはホストコンポー
ネント130からデータを受け取る必要がある)時はい
つでも使用される。ある機能モジュールが、ホストコン
ポーネント130にデータを送るかまたはホストコンポ
ーネント130からデータを受け取る必要がある場合、
この機能モジュールは、その識別情報をデータと共にP
MC200に提供し、アクセスを要求する。PMC20
0は、到来するアクセス要求を評価し、それを他の機能
モジュールからの他の未決定のアクセス要求と比較す
る。PMC200は、複数のアクセス要求を同時に処理
することができ、これらを優先度、効率、タイミングお
よび/または他の予め定められたパラメータに基づく順
番でスケジュールに入れる。PMC200は、後で更新
したり修正したりできるあらかじめ定められたパラメー
タのリストを用いてプログラムすることができる。
【0021】図3は、本発明の一実施例による図2のP
MC200内に配置された種々のコンポーネントを示す
ブロック図である。PMC200は、データ有効ロジッ
ク(DVL)301と、優先度解決ロジック(PRL)
303と、アクセス許可ロジック(AGL)305と、
方向およびデータフォーマット制御ロジック(DDFC
L)307と、システムインターフェースコアロジック
(SICL)309とからなる。
【0022】SICL309は、ホストコンポーネント
130とPMC200合いあだのインターフェースを提
供する。SICL309は、双方向制御リンク321、
双方向データリンク322および単方向アドレスリンク
323によりホストコンポーネント130に直接接続さ
れている。双方向制御リンク321は、1つ以上の個別
の制御リンクからなる。ホストコンポーネント130が
システムメモリの場合は、これらの制御リンクは、チッ
プセレクト、書き込みイネーブル、読み出し/書き込み
作業インジケータ、および出力イネーブルから構成する
ことができる。双方向データリンク322は、“読み出
し"または“書き込み"作業の間データを交換するのに使
用される。単方向アドレスリンク323は、ホストコン
ポーネント130と現在通信中の特定機能モジュールに
関するホストコンポーネントアドレスまたは他の確認手
段を確認するのに使用される。
【0023】さらに、SICL309は、双方向データ
リンク325と双方向制御データリンク326によりD
DFCL307に直接接続されている。DDFCL30
7は、図2において、機能モジュール101〜109に
形成されているポートA〜Gの符号が付けられた7つの
異なるポートを含む。ポートA〜Gは各々、さらに2つ
の単方向入力データリンク、すなわち、アドレスリンク
329および読み出し/書き込み(R/W)制御リンク
331を含む。加えるに、各ポートは第3のリンクを有
し、この第3のリンクは、単方向出力データリンク33
3、単方向入力データリンク335または双方向データ
リンク337とすることができる。アドレスリンク32
9は、データ入力、たとえば、対応する機能モジュール
からのシステムメモリアドレスまたは他の確認手段を受
け取るように接続されている。制御リンク331は、対
応する機能モジュールから制御ハンドシェイクを受け取
るように接続されている。図2の模範的な構成では、ポ
ートAおよびポートBは、単方向データ出力リンク33
3として構成されている。ポートCは、たん方向データ
入力リンク335として構成されている。ポートD〜G
は、双方向データリンク337として構成されている。
【0024】DDFCL307は、さらに、内部接続3
39を介してDVL301、PRL303およびAGL
305にも接続されている。機能モジュールは、DDF
CL307のみへのデータリンクとアドレスリンクを有
するが、制御リンクは、機能モジュールと、DVL30
1、PRL303およびAGL305の間にも存在す
る。
【0025】DVL301は、単方向出力制御リンク3
43を介して機能モジュール101〜109に接続され
ている。DVL301は、7つのポート(ポートA〜
G)を含み、各ポートは、機能モジュール101〜10
9の中の1つの機能モジュールに対応している。各制御
リンク343は、データ有効(DV)信号を対応する機
能モジュール101〜109に送ることができる単方向
出力制御リンクである。DV信号は、データ交換がDD
FCL307において可能になっているか否かを示す。
単方向出力データリンク333を有するポートに対し
て、DV信号は、機能モジュールが読み出し作業のため
のデータを受け取り中であることを示すために“ハイ"
が表れている。単方向入力データリンク335を有する
ポートに対して、DV信号は、機能モジュールが読み出
し作業のためのデータを何も受け取り中でないことを示
すために“ロー"が表れている。双方向データリンク3
37を有するポートに対して、DV信号は、書き込み作
業中ローになり、読み出し作業中ハイになっている。
【0026】PRL303は、単方向入力制御リンク3
45を介して機能モジュール101〜109に接続され
ている。RL303は、7つのポート(ポートA〜G)
を含み、各ポートは、機能モジュール101〜109中
の1つの機能モジュールに対応している。PRL303
は、機能モジュール101〜109の各々からのアクセ
ス要求(REQ)信号を異なる単方向入力制御リンク3
45を介して受け取ることができる。
【0027】AGL305は、単方向出力制御リンク3
41を介して機能モジュール101〜109に接続され
ている。AGL305は、7つのポート(ポートA〜
G)を含み、各ポートは、機能モジュール101〜10
9中の1つの機能モジュールに対応している。AGL3
05は、アクセス許可(AG)信号を単方向出力制御リ
ンク341を介して機能モジュール101〜109へ送
ることができる。
【0028】特定の機能モジュールは、REQ信号を対
応する入力制御リンク345を介して対応するPRL3
03に主張すると共に、R/W制御信号を対応するR/
W制御リンク331を介してDDFCL307に主張す
ることにより、PMC200の通信を促進する。REQ
信号は、ホストコンポーネント130へのアクセスが要
求されていることを示し、R/W制御信号は、それが読
み出し要求か書き込み要求かを示している。たとえば、
機能モジュール103は、ホストコンポーネント130
と通信したい場合、REQ信号を入力制御リンク345
を介してPRL303の対応するポートDに送ると共
に、制御信号をR/W制御リンク331を介してDDF
CL307の対応するポートDに送ることにより、PM
C200との通信を促進する。PRL303は、REQ
信号を解析し、機能モジュール101へのアクセスが許
可されるべきか否かを判定する。RRL303がアクセ
スを許可すると決定した場合は、制御信号が、PRL3
03から内部接続339を介してAGL305とDVL
301に送られる。次いで、AGL305は、アクセス
許可(AG)信号をポートDの出力制御リンク341を
介して機能モジュール103に送る。
【0029】機能モジュール103が、ホストコンポー
ネント130に対して書き込み作業を実行しようとして
いる場合、AGL信号が制御リンク341に送られた
後、対応するアドレスリンク329とデータリンク33
7が、DDFCL307においてクロックされる。次い
で、これだけが、DDFCL307とSICL309を
介して機能モジュール103からホストコンポーネント
130に書き込まれるデータとなる。DV信号は、この
作業中ロー状態のままとなる。
【0030】かけがえとして、機能モジュール103
が、ホストコンポーネント130からの読み出しを実行
しようとしている場合は、AG信号が主張されている
時、対応するクロックされたアドレスが、同様に、機能
モジュール103からホストコンポーネント130に転
送される。データが干すT湖ンポーネント130から読
み出された時、DV信号が、DVL301から機能モジ
ュール103に主張され、読み出しデータが今利用可能
であることを示す。
【0031】模範的なケースでは、機能モジュール10
3が、ホストコンポーネント130に転送される必要が
ある1つ以上のデータワードを持っている場合、REQ
信号は、機能モジュール103によってPRL303へ
連続的に主張されるだろう。代わりに、PRL303
は、制御信号を内部接続339を介してAGL305へ
連続的に主張し、REQ信号と制御信号の持続期間は、
クロック信号の数と等しくなり、クロック信号毎に、1
つのデータワードが転送される。ホストコンポーネント
130に対する実行を容易にするために、予め決められ
た数のワードを表すバースト信号が、機能モジュール1
03からDDFCL307への入力信号として使用され
る。この予め決められた数のワードは、バースト信号が
主張されている間に転送される。
【0032】PMC200とその関連ロジック回路は、
作業中融通性がある。ホストコンポーネント130がシ
ステムメモリの場合は、1つくらいの少ないデータワー
ドが、他の機能モジュールがサービスされる前に、機能
モジュールへまたは機能モジュールからホストコンポー
ネント130へ転送される。ホストコンポーネント13
0がCPUの場合は、データ交換は、典型的に、データ
バーストまたはデータストリームで表される。このケー
スでは、転送されるデータワード数は、バースト、パケ
ットまたはストリームサイズに等しくなる。PMC20
0は、1ワードから複数ワードまで変化するデータ長を
有する複数の機能モジュールからの要求を受け入れる能
力を有する。したがって、PMC200は、機能モジュ
ールにおける最小限のバッファ必要条件で高性能を発揮
することができる。
【0033】また、PMC200は、機能モジュール1
01〜109間の動的ロードバランス化も実行してい
る。PMC200内で、PRL303は、到来する各要
求を解析し、より高い優先度を有する機能モジュール
が、低い優先度を有する機能ジュールより多くのアクセ
ス許可を受け取るだろう。これを成し遂げるために、2
タイプの優先方式を使用することができる。第1の方式
では、機能モジュールは、。優先要求を主張する場合に
基づくケーパビリティと決定作成能力とを有する。この
方式では、各機能モジュールは、2タイプの要求(通常
および優先)を主張するケーパビリティが与えられてい
る。一般に、通常の要求だけが主張されるが、機能モジ
ュールが、直ちにホストコンポーネント130へのアク
セスを許可されなければならない場合(たとえば、機能
モジュールがデータロス状態を経験する場合)は、優先
要求が主張される。
【0034】第2の優先方式では、PMC200は、優
先要求を評価して主張するための優先解析ロジックが備
えられている。これを成し遂げるために、PRL303
の各ポートには、各ポートの重みを含む優先レジスタが
備えられている。ポートの重みは、単位時間内に許可さ
れた要求数をカウントすることにより計算される。最も
高い要求数を有するポートは、最も高い重みを取得し、
このポートに接続された機能モジュールは、高い優先度
を持つ機能モジュールとみなされる。最下位の要求数を
有するポートは、最も低い重みを取得し、このポートに
接続された機能モジュールは、低い優先度をゆうする機
能モジュールとみなされる。全ポートの全重みの和は、
ホストコンポーネント130の帯域幅スレショールドに
等しいかまたはそれ以下になっている。帯域幅スレショ
ールドは、単位時間当たりに許可することができる最大
要求数を表す。到来する要求の総数が、利用可能な帯域
幅スレショールド以下ならば、各ポートに対する重み
は、特定のポートがホストコンポーネント130へのア
クセスを得るために苦しまない(すなわち、機会を拒ま
れない)ことを保証するために再配分される。各ポート
の重みすなわち優先度は、常時監視され、ポート当たり
の要求率を評価することにより定期的に調整される。こ
の調整は、ロード状態に動的に適応し、帯域幅利用効率
が増大する。
【0035】また、PMC200は、どんな修正もなく
機能モジュールの再使用が可能である。1つのコンピュ
ータまたは通信システムに使用される機能モジュール
が、新しい半導体技術を利用した他のシステムにおいて
展開される必要がある場合は、どんな修正もなく、旧シ
ステムのポイントツーポイント接続に移行することがで
きる。従来のバスアーキテクチャと違って、本発明のポ
イントツーポイント接続は、新技術の影響を受けず、再
バランス化は、利用可能な最大動作周波数を達成する必
要がない。したがって、機能モジュールは、最小限のコ
ストで新技術に移行することができる。
【0036】また、PMC200は、アーキテクチャま
たはバス設計のどんな変更もなしに機能モジュールにお
ける変更を処理することができる。機能モジュールのど
れかが除去されたり追加されたりした場合、PMC20
0に対する対応するポイントツーポイント接続が、それ
ぞれ、容易に除去されたり追加されたりされる。これ
は、他の機能モジュールのポイントツーポイント接続と
その動作特性に影響を及ぼさない。
【0037】本発明の模範的な実施例が、回路の処理に
関して説明されたが、本発明はそれに限らない。当業者
にはわかるように、回路構成要素の種々の機能は、ソフ
トウェアプログラムにおける処理ステップとしてデジタ
ル領域でも実行することができる。このソフトウェア
は、たとえば、デジタルシグナルプロセッサ、マイクロ
コントローラまたは汎用コンピュータで使用することが
できる。
【0038】さらに、本発明の本質を解釈するために説
明され示された部分の細部、材料および配置の種々の変
更は、付随の請求項に表現されているような本発明の範
囲から逸脱することなく、当業者によって行われ得るこ
とがわかる。
【図面の簡単な説明】
【図1】従来のコンピュータまたは通信システムの種々
のコンポーネントを示すブロック図である。
【図2】本発明の一実施例によるコンピュータまたは通
信システムを示すブロック図である。
【図3】図2のポート管理コントローラ内に配置された
種々のコンポーネントを示すブロック図である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ファルクフ アムジャド ラティフ アメリカ合衆国 19446 ペンシルヴァニ ア,ランスデイル,アレバッチ ロード 2205

Claims (16)

    【特許請求の範囲】
  1. 【請求項1】 複数の機能モジュールによるホストコン
    ポーネントへのアクセスを制御するポート管理コントロ
    ーラ(PMC)であって、 (a)上記ホストコンポーネントに接続されるように構
    成されたホストコンポーネントポートと、 (b)各々が上記機能モジュールの中の1つの機能モジ
    ュールにポイントツーポイント接続によって接続される
    ように構成された少なくとも2つの機能モジュールポー
    トとからなり、 (1)第1の機能モジュールからの第1のアクセス要求
    をPMCの第1の機能モジュールポートで受け取り、
    (2)上記ホストコンポーネントポートおよび銃器第1
    の機能モジュールポートを介して上記第1の機能モジュ
    ールと上記ホストコンポーネント間のデータ交換のため
    の第1のアクセスセションをスケジュールに入れるよう
    に構成されているポート管理コントローラ。
  2. 【請求項2】 請求項1記載のポート管理コントローラ
    において、前記第1のアクセスセション中、前記第1の
    機能モジュールと異なる第2の機能モジュールからの第
    2のアクセス要求を受け入れるように構成されているポ
    ート管理コントローラ。
  3. 【請求項3】 請求項2記載のポート管理コントローラ
    において、前記第2の機能モジュールへどんな他のアク
    セス要求も送る必要なしに、前記第2のアクセス要求に
    応じて、前記第2の機能モジュールと前記ホストコンポ
    ーネント間のデータ交換のための第2のアクセスセショ
    ンをスケジュールに入れるように構成されているポート
    管理コントローラ。
  4. 【請求項4】 請求項1記載のポート管理コントローラ
    において、他の機能モジュールに対する前記第1の機能
    モジュールの優先レベルに基づいて前記第1のアクセス
    セションをスケジュールに入れるように構成されている
    ポート管理コントローラ。
  5. 【請求項5】 請求項4記載のポート管理コントローラ
    において、前記第1の機能モジュールの前記優先レベル
    に基づく前記第1のアクセスセションの開始時間と持続
    期間のうちの少なくとも1つを制御するように構成され
    ているポート管理コントローラ。
  6. 【請求項6】 請求項1記載のポート管理コントローラ
    において、少なくとも2つの機能モジュールポートは、
    1つの機能モジュールに接続されるように構成されてい
    るポート管理コントローラ。
  7. 【請求項7】 請求項1記載のポート管理コントローラ
    において、各機能モジュールポートは、双方向ポートま
    たは単方向ポートのいずれかとして動作するように個別
    にプログラムすることができるポート管理コントロー
    ラ。
  8. 【請求項8】 請求項1記載のポート管理コントローラ
    において、前記ポイントツーポイント接続は単方向接続
    であるポート管理コントローラ。
  9. 【請求項9】 請求項1記載のポート管理コントローラ
    において、前記ポイントツーポイント接続は双方向接続
    であるポート管理コントローラ。
  10. 【請求項10】 請求項1記載のポート管理コントロー
    ラにおいて、 (a)前記ホストコンポーネントに接続されるように構
    成されたシステムインターフェースコアロジック(SI
    CL)と、 (b)上記SICLに接続され、かつ複数のDDFCL
    ポートを介して前記機能モジュールに接続されるように
    構成された方向およびデータフォーマット制御ロジック
    (DDFCL)と、 (c)上記DDFCLに接続され、かつ複数のAGLポ
    ートを介して前記機能モジュールに接続されるように構
    成されたアクセス許可ロジック(AGL)と、 (d)上記DDFCLに接続され、かつ複数のPRLポ
    ートを介して前記機能モジュールに接続されるように構
    成された優先解析ロジック(PRL)と、 (e)前記DDFCLに接続され、かつ複数のDVLポ
    ートを介して前記機能Mジュールに接続されるように構
    成されたデータ有効ロジック(DVL)とを含み、 上記PRLおよびDDFCLは、1つの機能モジュール
    から1つ以上の制御信号を対応するPRLおよびDDF
    CLポートを介して受け取って、前記ホストコンポーネ
    ントへのアクセスを要求し、 上記PRLは、前記機能モジュールへのアクセスを許可
    するか否かを判定し、 上記PRLが、アクセスは許可されるべきであると判定
    した場合は、上記AGLは、アクセス許可信号を対応す
    るAGLポートを介して前記機能モジュールに送り、 前記機能モジュールによるアクセス中、データが、上記
    SICLおよび上記DDFCLにより対応するDDFC
    Lポートを介して前記機能モジュールと前記ホストコン
    ポーネントの間で交換され、上記DVLは、データ有効
    信号を対応するDVLポートを介して前記機能モジュー
    ルへ送るポート管理コントローラ。
  11. 【請求項11】 請求項10記載のポート管理コントロ
    ーラにおいて、前記PRL、前記AGL、前記DVLお
    よび前記DDFCLは、内部バスを介して通信するポー
    ト管理コントローラ。
  12. 【請求項12】 請求項10記載のポート管理コントロ
    ーラにおいて、前記PRLはレジスタを含み、該レジス
    タは、前記機能モジュールの各々に関連する優先情報を
    格納するポート管理コントローラ。
  13. 【請求項13】 請求項12記載のポート管理コントロ
    ーラにおいて、前記RRLは、前記機能モジュールの各
    々からのアクセス要求の数を監視し、監視情報に基づい
    て前記レジスタの前記優先情報を更新することができる
    ポート管理コントローラ。
  14. 【請求項14】 請求項12記載のポート管理コントロ
    ーラにおいて、前記PRLは、前記AGLへの前記制御
    信号を発生する前に、前記レジスタの前記優先情報を評
    価することができるポート管理コントローラ。
  15. 【請求項15】 請求項10記載のポート管理コントロ
    ーラにおいて、前記PRLは、前記機能モジュールの各
    々からの通常アクセス要求または優先アクセス要求を処
    理することができるポート管理コントローラ。
  16. 【請求項16】 請求項10記載のポート管理コントロ
    ーラにおいて、前記DDFCLの各ポートは、単方向入
    力ポート、単方向出力ポートまたは双方向ポートとして
    選択的かつ独立的に構成可能になっているポート管理コ
    ントローラ。
JP2000005209A 1999-01-05 2000-01-05 多数の機能モジュールを接続するためのポート管理コントローラ Pending JP2000259557A (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US11477099P 1999-01-05 1999-01-05
US09/416,625 US6574688B1 (en) 1999-01-05 1999-10-12 Port manager controller for connecting various function modules
US60/114770 1999-10-12
US09/416625 1999-10-12

Publications (1)

Publication Number Publication Date
JP2000259557A true JP2000259557A (ja) 2000-09-22

Family

ID=26812529

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000005209A Pending JP2000259557A (ja) 1999-01-05 2000-01-05 多数の機能モジュールを接続するためのポート管理コントローラ

Country Status (6)

Country Link
US (1) US6574688B1 (ja)
EP (1) EP1018687B1 (ja)
JP (1) JP2000259557A (ja)
KR (1) KR20000053380A (ja)
DE (1) DE69932400T2 (ja)
TW (1) TW528955B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100429543B1 (ko) * 2002-05-25 2004-04-29 삼성전자주식회사 네트워크 프로세서에서 다양한 개수의 포트들을 처리하기위한 방법
KR100881275B1 (ko) 2006-12-08 2009-02-05 한국전자통신연구원 Sca 멀티 컴포넌트 및 멀티 포트 환경에서의 우선 순위제어 장치 및 방법

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3843667B2 (ja) * 1999-10-15 2006-11-08 セイコーエプソン株式会社 データ転送制御装置及び電子機器
JP2001186162A (ja) * 1999-12-24 2001-07-06 Toshiba Corp Av機器ネットワークシステム
US6567272B1 (en) * 2001-11-09 2003-05-20 Dell Products L.P. System and method for utilizing system configurations in a modular computer system
US20030163507A1 (en) * 2002-02-26 2003-08-28 Zarlink Semiconductor V.N. Inc. Task-based hardware architecture for maximization of intellectual property reuse
US7200137B2 (en) * 2002-07-29 2007-04-03 Freescale Semiconductor, Inc. On chip network that maximizes interconnect utilization between processing elements
US7051150B2 (en) 2002-07-29 2006-05-23 Freescale Semiconductor, Inc. Scalable on chip network
US7277449B2 (en) * 2002-07-29 2007-10-02 Freescale Semiconductor, Inc. On chip network
US7139860B2 (en) * 2002-07-29 2006-11-21 Freescale Semiconductor Inc. On chip network with independent logical and physical layers
US6996651B2 (en) * 2002-07-29 2006-02-07 Freescale Semiconductor, Inc. On chip network with memory device address decoding
KR100475093B1 (ko) * 2002-09-13 2005-03-10 삼성전자주식회사 둘 이상의 입력포트를 구비하는 집적 회로 장치 및 시스템
KR100455396B1 (ko) * 2002-10-14 2004-11-06 삼성전자주식회사 마스터 블록들의 우선 순위를 결정하는 파라미터 발생회로 및 파라미터 발생 방법.
KR100929143B1 (ko) 2002-12-13 2009-12-01 삼성전자주식회사 컴퓨터 및 그 제어방법
US7978716B2 (en) 2003-11-24 2011-07-12 Citrix Systems, Inc. Systems and methods for providing a VPN solution
US7426586B2 (en) * 2003-12-15 2008-09-16 Finisar Corporation Configurable input/output terminals
US8495305B2 (en) 2004-06-30 2013-07-23 Citrix Systems, Inc. Method and device for performing caching of dynamically generated objects in a data communication network
US7757074B2 (en) 2004-06-30 2010-07-13 Citrix Application Networking, Llc System and method for establishing a virtual private network
US8739274B2 (en) 2004-06-30 2014-05-27 Citrix Systems, Inc. Method and device for performing integrated caching in a data communication network
US8223647B2 (en) * 2004-07-21 2012-07-17 Nokia Corporation System and method for increasing data throughout using a block acknowledgement
US8046830B2 (en) 2004-07-23 2011-10-25 Citrix Systems, Inc. Systems and methods for network disruption shielding techniques
CA2572401A1 (en) 2004-07-23 2006-02-02 Citrix Systems, Inc. A method and systems for securing remote access to private networks
US7657657B2 (en) 2004-08-13 2010-02-02 Citrix Systems, Inc. Method for maintaining transaction integrity across multiple remote access servers
CN1780293B (zh) * 2004-11-25 2010-04-28 华为技术有限公司 在有状态会话初始协议服务器上实现过负荷控制的方法
US8706877B2 (en) 2004-12-30 2014-04-22 Citrix Systems, Inc. Systems and methods for providing client-side dynamic redirection to bypass an intermediary
US8549149B2 (en) 2004-12-30 2013-10-01 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP multiplexing
US8954595B2 (en) 2004-12-30 2015-02-10 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP buffering
US7810089B2 (en) 2004-12-30 2010-10-05 Citrix Systems, Inc. Systems and methods for automatic installation and execution of a client-side acceleration program
US8700695B2 (en) 2004-12-30 2014-04-15 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP pooling
US8255456B2 (en) 2005-12-30 2012-08-28 Citrix Systems, Inc. System and method for performing flash caching of dynamically generated objects in a data communication network
KR20070104566A (ko) 2005-01-24 2007-10-26 사이트릭스 시스템스, 인크. 네트워크에서 동적으로 발생된 객체들의 캐싱을 수행하는시스템 및 방법
US7493426B2 (en) * 2005-01-31 2009-02-17 International Business Machines Corporation Data communication method and apparatus utilizing programmable channels for allocation of buffer space and transaction control
US7136954B2 (en) * 2005-01-31 2006-11-14 International Business Machines Corporation Data communication method and apparatus utilizing credit-based data transfer protocol and credit loss detection mechanism
US20060174050A1 (en) * 2005-01-31 2006-08-03 International Business Machines Corporation Internal data bus interconnection mechanism utilizing shared buffers supporting communication among multiple functional components of an integrated circuit chip
US7921184B2 (en) 2005-12-30 2011-04-05 Citrix Systems, Inc. System and method for performing flash crowd caching of dynamically generated objects in a data communication network
US8301839B2 (en) 2005-12-30 2012-10-30 Citrix Systems, Inc. System and method for performing granular invalidation of cached dynamically generated objects in a data communication network
US8116207B2 (en) 2006-08-21 2012-02-14 Citrix Systems, Inc. Systems and methods for weighted monitoring of network services
US8493858B2 (en) 2006-08-22 2013-07-23 Citrix Systems, Inc Systems and methods for providing dynamic connection spillover among virtual servers
US8312120B2 (en) * 2006-08-22 2012-11-13 Citrix Systems, Inc. Systems and methods for providing dynamic spillover of virtual servers based on bandwidth
US7685346B2 (en) * 2007-06-26 2010-03-23 Intel Corporation Demotion-based arbitration
US20090198876A1 (en) * 2008-01-31 2009-08-06 Jimmy Kwok Lap Lai Programmable Command Sequencer
US8667197B2 (en) 2010-09-08 2014-03-04 Intel Corporation Providing a fine-grained arbitration system
US20130227180A1 (en) * 2012-02-24 2013-08-29 Pradeep Bisht Method for input/output load balancing using varied performing storage devices
KR102285749B1 (ko) 2014-11-10 2021-08-05 삼성전자주식회사 세마포어 기능을 갖는 시스템 온 칩 및 그것의 세마포어 구현 방법
KR20180083572A (ko) 2017-01-13 2018-07-23 삼성전자주식회사 전자장치 및 그 제어방법
CN108874461B (zh) * 2017-11-30 2021-05-14 视联动力信息技术股份有限公司 一种视联网模块的加载方法及视联网终端
US10871961B2 (en) 2018-10-02 2020-12-22 Alarm.Com Incorporated Security system with smart connection module
EP3874377A1 (en) * 2018-11-30 2021-09-08 Huawei Technologies Co., Ltd. Electronic device for memory access control and method of operating same
CN112817778A (zh) * 2021-01-27 2021-05-18 惠州Tcl移动通信有限公司 一种移动终端复用模块管理方法、系统、终端及存储介质

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4218740A (en) * 1974-10-30 1980-08-19 Motorola, Inc. Interface adaptor architecture
US4400771A (en) * 1975-12-04 1983-08-23 Tokyo Shibaura Electric Co., Ltd. Multi-processor system with programmable memory-access priority control
US4972365A (en) * 1987-05-01 1990-11-20 Allen-Bradley Company, Inc. Executing downloaded user programs in a programmable controller
US5416909A (en) * 1990-09-14 1995-05-16 Vlsi Technology, Inc. Input/output controller circuit using a single transceiver to serve multiple input/output ports and method therefor
US5734334A (en) * 1991-10-30 1998-03-31 I-Cube, Inc. Programmable port for crossbar switch
AU3412295A (en) * 1994-09-01 1996-03-22 Gary L. Mcalpine A multi-port memory system including read and write buffer interfaces
US5640495A (en) * 1994-12-20 1997-06-17 Lexmark International, Inc. Computer-printer interface control for bidirectional/undirectional data communications
US5850530A (en) * 1995-12-18 1998-12-15 International Business Machines Corporation Method and apparatus for improving bus efficiency by enabling arbitration based upon availability of completion data
US5781927A (en) * 1996-01-30 1998-07-14 United Microelectronics Corporation Main memory arbitration with priority scheduling capability including multiple priorty signal connections
US5809538A (en) * 1996-02-07 1998-09-15 General Instrument Corporation DRAM arbiter for video decoder
US5944809A (en) * 1996-08-20 1999-08-31 Compaq Computer Corporation Method and apparatus for distributing interrupts in a symmetric multiprocessor system
US6157963A (en) * 1998-03-24 2000-12-05 Lsi Logic Corp. System controller with plurality of memory queues for prioritized scheduling of I/O requests from priority assigned clients
US6122680A (en) * 1998-06-18 2000-09-19 Lsi Logic Corporation Multiple channel data communication buffer with separate single port transmit and receive memories having a unique channel for each communication port and with fixed arbitration
US6286083B1 (en) * 1998-07-08 2001-09-04 Compaq Computer Corporation Computer system with adaptive memory arbitration scheme

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100429543B1 (ko) * 2002-05-25 2004-04-29 삼성전자주식회사 네트워크 프로세서에서 다양한 개수의 포트들을 처리하기위한 방법
KR100881275B1 (ko) 2006-12-08 2009-02-05 한국전자통신연구원 Sca 멀티 컴포넌트 및 멀티 포트 환경에서의 우선 순위제어 장치 및 방법

Also Published As

Publication number Publication date
EP1018687A2 (en) 2000-07-12
US6574688B1 (en) 2003-06-03
EP1018687A3 (en) 2004-01-07
KR20000053380A (ko) 2000-08-25
TW528955B (en) 2003-04-21
EP1018687B1 (en) 2006-07-19
DE69932400T2 (de) 2007-07-19
DE69932400D1 (de) 2006-08-31

Similar Documents

Publication Publication Date Title
JP2000259557A (ja) 多数の機能モジュールを接続するためのポート管理コントローラ
JP5036120B2 (ja) 非ブロック化共有インターフェイスを持つ通信システム及び方法
JP4024875B2 (ja) 異なるデータ・レートで動作するネットワーク・ポートに関して、共用メモリへのアクセスを調停する方法および装置
US7349424B2 (en) On-chip inter-subsystem communication including concurrent data traffic routing
US7305510B2 (en) Multiple master buses and slave buses transmitting simultaneously
JP4083987B2 (ja) 多重レベル接続識別を備えた通信システム
KR101567371B1 (ko) 프로세서 내로의 지적 재산(ip) 블록들의 통합
US7493426B2 (en) Data communication method and apparatus utilizing programmable channels for allocation of buffer space and transaction control
JP5948628B2 (ja) 記憶システム及び方法
US20050193155A1 (en) Data transfer apparatus and transfer control program
TWI772279B (zh) 用於具有可重配置多端口的快捷外設互聯標準儲存系統的服務品質感測輸入輸出管理的方法、系統及設備
US7249207B2 (en) Internal data bus interconnection mechanism utilizing central interconnection module converting data in different alignment domains
EP1170669A1 (en) Arbitration method and circuit architecture therefor
KR20110113351A (ko) 네트워크 효율성을 고려한 SoC 기반 시스템 네트워크에서의 인터페이스 장치의 통신방법 및 그에 의해 통신하는 인터페이스 장치
JP2001515248A (ja) 集積回路デバイス、技術依存型設計仕様を生成する方法及び機械可読媒体
US6477610B1 (en) Reordering responses on a data bus based on size of response
GB2228349A (en) Data transfer bus with virtual memory
KR100708096B1 (ko) 버스 시스템 및 그 실행 순서 조정방법
EP1222551B1 (en) Asynchronous centralized multi-channel dma controller
EP1226504B1 (en) Method and apparatus for supporting multi-clock propagation in a computer system having a point to point half duplex interconnect
US20060174050A1 (en) Internal data bus interconnection mechanism utilizing shared buffers supporting communication among multiple functional components of an integrated circuit chip
US7979615B1 (en) Apparatus for masked arbitration between masters and requestors and method for operating the same
US6973520B2 (en) System and method for providing improved bus utilization via target directed completion
US7107381B2 (en) Flexible data transfer to and from external device of system-on-chip
US7752400B1 (en) Arbitration and crossbar device and method

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040113