JP2003532165A - 入出力デバイスを動的に再構成する装置及び方法 - Google Patents

入出力デバイスを動的に再構成する装置及び方法

Info

Publication number
JP2003532165A
JP2003532165A JP2000592732A JP2000592732A JP2003532165A JP 2003532165 A JP2003532165 A JP 2003532165A JP 2000592732 A JP2000592732 A JP 2000592732A JP 2000592732 A JP2000592732 A JP 2000592732A JP 2003532165 A JP2003532165 A JP 2003532165A
Authority
JP
Japan
Prior art keywords
controller
configuration
integrated circuit
virtual
controllers
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
JP2000592732A
Other languages
English (en)
Other versions
JP2003532165A5 (ja
JP4606589B2 (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 JP2003532165A publication Critical patent/JP2003532165A/ja
Publication of JP2003532165A5 publication Critical patent/JP2003532165A5/ja
Application granted granted Critical
Publication of JP4606589B2 publication Critical patent/JP4606589B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • 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

Abstract

(57)【要約】 データ・フロー制御方法は、IOコントローラの所要構成を決定し、1つ又は2つ以上の記述子リストを処理できるようにIOコントローラを再プログラムし、1つ又は2つ以上の仮想コントローラの付加又は抹消を反映するようにIOコントローラの構成を変更し、IOコントローラを再枚挙し、IOコントローラ及び1つ又は2つ以上の仮想コントローラのそれぞれに対応する記述子を処理するステップから成る。IOコントローラとして使用される集積回路デバイスは、システム・バス・インタフェース、プログラム可能リスト・プロセッサ及び、ポート・ルータから成る。集積回路デバイスは、システム・バス・インタフェース、プログラム可能リスト・プロセッサ及びポート・ルータが互いに連動し、集積回路デバイスが、1つ又は2つ以上の仮想コントローラを付加又は抹消するために再構成可能である。仮想コントローラが、集積回路デバイスによって支持される実質的な全帯域幅を提供する。IOコントローラデバイス及び装置はパーソナル・コンピュータ・システム、情報機器、セット・トップ・ボックス、ケーブル・モデム、ゲーム・コンソール、スマート・アプライアンス、ハンドヘルド・コンピュータ、手のひらサイズ・コンピュータ、組込制御システム、ワークステーション、サーバー等に応用できる。

Description

【発明の詳細な説明】
【0001】 この出願は、その開示内容を参考のため本願明細書中に引用した、2000年
1月4日付Aguilar 外の米国特許出願第”ポート・ルータ”に関連
する。この出願は、その開示内容を、これも参考のため本願明細書中に引用した
米国仮出願第60/114,771号、第60/114,772号及び第60/
114,767号に関して優先権を主張する。
【0002】 〔発明の分野〕 この出願は半導体デバイス、特に、入/出力(IO)コントローラに係る。 〔発明の背景〕 IOコントローラは、コンピュータ・オペレーティングシステムとIOインタ
フェースとを接続する機能を果たす。従来のコンピュータ・オペレーティングシ
ステムの場合、インストラクションを形成する記述子リストをIOコントローラ
が読み取り、これに従ってその仕事を行う。最近のIOコントローラは、記述子
中に規定されているオペレーションを読み取り、開始するハードウェア回路を含
む。記述子に著しい変動があれば、新しい回路が必要になり、従って、既存回路
が時代遅れのものになる。実際には、新しいオペレーティングシステムの開発と
新しいハードウェアの開発が遅れる事態となる。両者の開発には、相互の整合性
が要求されるからである。
【0003】 IOコントローラ・インタフェースの演算速度は固定的であるのが普通であり
、コントローラはインタフェースの帯域幅に制限される。別のインタフェースを
追加するには、アド・オン・ボードを追加するか、マザー・ボードを設計し直す
ことによって、新しいコントローラ・インタフェース・デバイスを構成しなけれ
ばならない。
【0004】 IOデバイスの帯域幅を増大させる試みがなされているが、そのためにはデバ
イスのハードウェアを変更する必要があり、帯域幅を動的に加えることは不可能
であった。ハードウェアの変更、又はシステムへのハードウェア追加には、再構
成経費、追加ハードウェア経費の他、既存オペレーティングシステムと適合しな
い可能性など、数多くの問題がある。さらに、新しいハードウェアの追加はシス
テムをオフにして行われ、新しいハードウェアを組込む技術者が必要であり、新
しいハードウェアをサポートするためにオペレーティングシステムを変更するシ
ステム管理者も必要になるであろう。この方法は困難であり、エラーを伴い易く
、コストが大きく、多大の時間を要する設計及び性能強化を必要とする。
【0005】 従って、記述子の変動に対応することによって、機能を追加し、性能を向上さ
せ、又は前後両方向のコンパチビリティーを可能にするデバイスの実現が望まれ
る。さらにまた、システムの条件に応じて、新しいハードウェアを追加すること
なく、IOコントローラの新しいインスタンスを動的に形成することによって追
加の帯域幅を提供できるデバイスもの実現も望まれる。
【0006】 〔発明の概要〕 本発明の第1の態様においては、IOコントローラによってコンピュータ・シ
ステムへのデータ・フローを制御する方法が提供される。この方法は、IOコン
トローラの所要構成を求め、1つ又は2つ以上の記述子を処理できるようにIO
コントローラを再プログラミングし、1つ又は2つ以上の仮想コントローラの追
加又は抹消を反映するようにIOコントローラの構成を変更し、IOコントロー
ラを枚挙し直し、各IOコントローラ及び1つ又は2つ以上の仮想コントローラ
ごとに、記述子リストを処理することを含む。枚挙し直しの過程で1つ又は2つ
以上の仮想コントローラが発見され、初期設定され、IOコントローラによって
サポートされる全帯域幅を提供することができる。
【0007】 第2の態様においては、本発明は、システム・バス・インタフェース、プログ
ラマブル・リスト・プロセッサ及びポート・ルータからなる、IOコントローラ
として使用する集積回路デバイスである。この集積回路デバイスは、1つ又は2
つ以上の仮想コントローラを追加又は抹消するための再構成に採用される。仮想
コントローラは、集積回路デバイスによってサポートされる、実質的な全帯域幅
を提供する。
【0008】 本発明はパーソナル・コンピュータ・システムにおいて利用できるが、例えば
、情報機器、セット・トップ・ボックス、ケ−ブル・モデム、ゲーム・コンソー
ル、スマート・アプライアンス、ハンドヘルド・コンピュータ、手のひらサイズ
・コンピュータ、組込制御システム、ワークステーション、サーバーなどのよう
なタイプのコンピュート・プラットフォームにも応用できる。
【0009】 〔発明の詳細な説明〕 本発明はデータ・フロー・プロトコル及び/又は上位システム相互作用に起こ
る変化に対応するように、IOデバイスを動的に再構成する装置及び方法を提供
する。本発明は、データ転送のため、オペレーティングシステムが使用できる新
しいチャンネルを形成する仮想コントローラの追加(又は抹消)を可能にする。
IOデバイスは、高帯域幅を必要とする周辺デバイスのための専用スループット
を提供し、複数の低帯域幅デバイスをグルーピングすることによって、データ転
送を効率化することができる。本発明は、オペレーティングシステムの変化、シ
ステム条件の変化、デバイス中の問題又はバグ、及びデータ・フロー・プロトコ
ルに対応できる新しいオペレーティングプログラムを組込むことを可能にする。
【0010】 本発明は、追加内部回路をコンピュート・プラットフォーム(即ち、IOコン
トローラ)内に集積する、現実的且つ経済的解決を提供する。IOコントローラ
は、IO流れ(バス、インタフェース、ネットワーク・コネクション)とホスト
・コンピュータにおけるオペレーティングシステム・トライバーとの間にブリッ
ジを形成する。本発明は、プログラム化可能性を利用することにより、ブリッジ
のIO流れとオペレーティングシステム・インタフェースとの双方の側の動作を
変化させる方法及び装置を提供する。
【0011】 本発明は、例えば、USB,IEEE−1394,Fibre Channe
l,Infiniband及びEthernetなどのようなIOコントローラ
に応用できる。本発明の装置及び方法は、周辺デバイスとコンピュート・プラッ
トフォームとの間のデータ・フローを増大させることができる。データ・フロー
を増大させるのにユーザーが干渉する必要はなく、コンピュート・プラットフオ
ームに複合デバイスを組込むだけでよい。本発明はパーソナル・コンピュータ・
システムに利用できるが、その他のタイプのコンピュート・プラットフォーム、
例えば、情報機器、セット・トップ・ボックス、ケ−ブル・モデム、ゲーム・コ
ンソール、スマート・アプライアンス、ハンドヘルド・コンピュータ、手のひら
サイズ・コンピュータ、組込制御システム、ワークステーション、サーバーなど
のようなタイプのコンピュート・プラットフォームにも応用できる。
【0012】 本発明のIOコントローラはマーケット寿命が長く、バグに対する対策を速や
かに練り、実施することを可能にし、オペレーティングシステムの記述子リスト
のエラーにも変更にも適応し、新しいタイプの記述子演算の組込を可能にする。
本発明は、広範囲にわたるシステムの諸条件を満たすのに必要な製品数を軽減す
る。
【0013】 添付の図面はあくまでも説明のためのものであり、本発明の可能な実施態様を
制限するものではない。ポート及びIOコントローラの数は個々のシステム又は
用途に必要な条件に応じて異なる。 図1に示す本発明の一実施例では、システム・バス・インタフェース120、
プログラム可能なリスト・プロセッサ110、及びポート・ルータ130を有す
る、IOコントローラとして使用するための集積回路(IC)デバイス100を
設ける。システム・バス・インタフェース120、プログラム可能なリスト・プ
ロセッサ110及びポート・ルータ130は機能的に接続されている。ポート・
ルータ130は好ましくは1つ又は2つ以上のインタフェース・ポート140と
も接続している。
【0014】 プログラム可能なリスト・プロセッサ110を採用することにより、IOコン
トローラは、”シングル・スレッデッド”、即ち、一度に単一の記述子リストだ
けを実行できる既存のシステムとは異なり、多重記述子リストを処理するために
再プログラム又は再構成することができる。この機能により、本発明のIOコン
トローラは複数の別々のハードウェア・コントローラと同様に作用することがで
きる。
【0015】 図4は本発明と併用できるポート・ルータ400の一実施例を示すブロックダ
イヤグラムである。ポート・ルータ400は、コントローラ・スイッチ420、
ポート・スイッチ440、及びコントローラ・スイッチ420とポート・スイッ
チ440の間の結線450から成る。結線450はハブ素子401を含む。ポー
ト・ルータ400はポートA〜Dを単一のコントローラ (コントローラA)と
接続する。コントローラ・スイッチ420、ポート・スイッチ440及び結線4
50はそれぞれ固有の可能入出力を有する。ポート・スイッチ440は固定入力
441〜444を有し、それぞれの固定入力はインタフェース・ポートと接続し
ている。ポート・スイッチ440は任意のポートを1つ又は2つ以上のポート・
スイッチ出力へルーティングする。ポート・スイッチ440はすべてのルーティ
ング素子を支持するのに充分な出力総数を有する。図4の実施例の場合、ポート
・スイッチ440はハブ素子401のための4個の出力を有する。ハブ素子は、
用途に応じたIOインタフェースの条件を満たすものであることが好ましい。各
ハブ素子はその入力を組合わせ、コントローラ・スイッチ420に入力される単
一の出力を提供する。IOインタフェースによっては、ハブ素子401をブリッ
ジ、コンセントレーター又は物理的インタフェースと呼称する場合がある。ポー
ト・スイッチ440をコントローラ・スイッチ420に接続するには、多重ハブ
素子を使用すればよい。
【0016】 コントローラ・スイッチ420は、ハブ素子との結線ごとに1つの入力、ポー
ト・スイッチ440との各直接結線(図2)ごとに1つの入力をそれぞれ有する
ことが好ましい。コントローラ・スイッチ420からの出力は所与の用途に必要
な、又は利用可能なコントローラの個数に合わせて設定する。図4に示すように
、コントローラ・スイッチは、ハブ素子401と接続する1つの入力421、及
びコントローラAと接続する1つの出力427を有する。なお、ここに言う”入
力”及び”出力”はいずれも、双方向データ・フローを扱うことができる結線(
一般的には”入/出力”と呼称される)を意味する。
【0017】 図5は、図4のポート・ルータ400のポートDに新しいデバイスを付加した
場合を示し、ここでは、コントローラAの帯域幅容量が閾値に達する。システム
にコントローラBが付加され、ポートDからハブ素子201への結線が除去され
、直接結線502が付加されている。ポートDにデバイスが挿入されると、デバ
イスが検知され、その容量条件がリポートされる。この容量は、コントローラA
の有効容量よりも大きくなるように計算されている。新しいコントローラBがシ
ステムに付加されると、ポートA,B及びCがコントローラAと接続する一方、
ポートDがコントローラBとだけ接続するようにポート・ルータ100が再構成
される。ポートDとハブ素子501とを結ぶ結線が除去され、ポート・スイッチ
540とコントローラ・スイッチ出力520との間に新しい直接結線502が形
成される。コントローラ・スイッチ出力528からコントローラBへの結線が形
成される。ポートD及び新しいデバイスとの間のデータ・フローはすべて、ポー
ト・スイッチ出力549からコントローラ・スイッチ入力522へのこの新しい
結線を流れる。ポートA,B及びCからのデータ・フローはすべて、ポート・ス
イッチ出力545,546及び547からハブ素子501への同じルートをたど
る。この構成では、ポートA,B及びCからのデータ・フローが組み合わされ、
コントローラ・スイッチ入力521へ供給される。
【0018】 動作時には、いくつかのポート入力が所要のコントローラと接続しているデフ
ォルト状態から、ポート・スイッチ400がスタートすることが好ましい。図4
の実施例の場合、システムは4つのポート、ポートA及びBと接続する2つのデ
バイス、1つのハブ素子401、及び1つのコントローラAを備えたデフォルト
状態にある。好ましくはポート・ルータ400中に存在する1組の(図示しない
)ハードウェア・レジスターを介して、システム中で動作するソフトウェアがポ
ート・ルータ400に問合わせ、デフォルト・トポロジーを発見することができ
る。システムのソフトウェアはハードウェア・レジスターの値をプログラムする
ことによって、ポート及びコントローラ間の信号ルートを変更することができる
。動作中に事象が起こる。この事象としては、例えば、新しいデバイスの除去又
はポートへの挿入が考えられる。この事象がソフトウェアをトリガーすることに
よって、この新しいデバイスの条件を検討する。これらの条件には、デバイスの
データ容量条件(帯域幅及び待ち時間)やそのデータ・スタイル(非同期的、等
時的、バースト、流れ)などが含まれる。新しい条件が、既に実装されているデ
バイスから課せられる一連の条件と組合わされ、ポートをルーティングするため
の新しい、好ましくは最適化されたトポロジーが計算される。好ましくは、シス
テムのソフトウェアがIOの動作を中断させ、ポートとIOコントローラとの間
を再ルーティングさせる。次いで、システムのソフトウェアがIOの動作を再開
させ、最適化されたルーティングが、新しい事象が起こるまで、新しいルーティ
ングとなる。
【0019】 他の実施例では、ポート・ルータ400が、システム・ソフトウェアの干渉を
必要とすることなく、ルーティング及び再ルーティングが内部的に行われること
を可能にする組込ソフトウェアを含むことが好ましい。これにより、自己モニタ
ーが可能になり、ポート・ルータ400を通過するデータ・フローに基づく動的
な負荷平衡が可能になる。
【0020】 図2に示す本発明の他の実施例では、システム・バス・インタフェースとして
の周辺部品相互接続(PCI)バス220、プログラム可能リスト・プロセッサ
210、ポート・ルータ230、データ・マックス250、及び複数のFIFO
(先入れ先出し)データ・バッファー260を有する、IOコントローラとして
利用される集積回路(IC)デバイス200を設ける。また、ポート・ルータ2
30に1つ又は2つ以上のインタフェース・ポート240を接続することが好ま
しい。素子のそれぞれが機能的に接続されることにより、データ信号及び制御信
号が素子間で伝送されるようにすることが好ましい。
【0021】 インタフェースから受信されるデータは、好ましくはポート240及びポート
・ルータ230を経て、特定のFIFO260に向けられることが好ましい。デ
ータ・エレメントがFIFO260に受信されると、リスト・プロセッサ210
がこれを検討し、その配置を確認することが好ましい。データ・エレメントに対
する作用は、インタフェースに対するプロトコル・ルール次第であり、例えば、
Ethernet,USB,IEEE−1394等では、それぞれ異なる作用と
なる。リスト・プロセッサ210に組込まれている制御ソフトウェアが所要の構
成を決定することが好ましい。リスト・プロセッサ210は、例えば、下記のよ
うに作用することが好ましい。すなわち、データ・エレメントをシステム・メモ
リへ伝送し、未完のトランザクションを完了させ、エラーをシステムへ伝送させ
、エラーをインタフェースへ伝送させ、インタフェースへ伝送すべきデータを作
成する。PCIバス220を介してシステム・メモリとの間で伝送されるデータ
はすべて、好ましくはデータ・マックス250素子を通過する。システム・メモ
リからインタフェースへデータ・エレメントを伝送したい場合、PCIバス22
0を介して受信し、データ・マックス250を通過させ、該当のFIFO260
に入力させることが好ましい。システム・メモリからのデータ取出しを開始させ
たリスト・プロセッサは、インタフェースへ伝送されるように準備し、データ伝
送が可能な状態にあるかどうか、インタフェースの状態をモニターすることが好
ましい。もしインタフェースが応答しないか、又は作動不能なら、リスト・プロ
セッサ210は下記のように作用することが好ましい。すなわち、後で再伝送す
るためデータを保管、システムへエラーをリポート、等である。
【0022】 リスト・プロセッサ素子210は、ポートとシステム・バスの間のデータ・フ
ローを制御する機能を有するマイクロプロセッサやマイクロコントローラのよう
な、汎用コンピュート・エンジンの特性の多くを有することが好ましい。リスト
・プロセッサ素子210は、好ましくはROMに固定されているか、より好まし
くはダウンロードされているソフトウェアを実行する。ソフトウェアは、好まし
くはインタフェースに関するプロトコルの定義、典型的には、工業規格に従って
書き込まれる。プライベート・インタフェース規格に基づくソフトウェアを使用
することもできることが好ましい。例えば、プロトコルによる規定上、システム
がデータ・エレメントを送信し、データが正しく受信されたとの確認を受信しな
ければならない場合、リスト・プロセッサ素子は、確認の受信を想定し、確認が
受信されない場合には、再送信を開始するか、又はシステムへエラーを送信する
ソフトウェア制御構造を有する。具体的な作用内容は、プロトコル定義のルール
次第である。
【0023】 システム・バス120は、例えば、PCI−X,Infiniband,VM
Eバス、HubLink等のようなマルチマスター・バス構造をも含むことがで
きる。これらオペレーティングシステムに共通の特徴は枚挙段階である。枚挙の
段階において、システム・ソフトウェアが、システム・バスに存在するハードウ
ェアを問合わせ、ハードウェアの特徴を記述するデータを作成する。本発明と併
用されるオペレーティングシステムは、必要なら再枚挙できることが好ましい。
【0024】 本発明は、枚挙の段階においてリポートされるデフォルト構成を有する。好ま
しいデフォルト状態において、リスト・プロセッサ110は、単一のリストを処
理するようにプログラムされ、オペレーティングシステムに対して単一のIOコ
ントローラをリポートするように構成されている。また、起動時におけるデフォ
ルト状態が、それまでのパワー・ダウン前から維持されている状態であることが
好ましい。
【0025】 動作中、リスト・プロセッサ110は好ましくは、オペレーティングシステム
の指令を翻訳し、実行するように機能する。オペレーティングシステムが理解し
、あたかも複数の個別IOコントローラ・ハードウェアが存在するかのように作
用できるように、仮想コントローラを形成することができる。 IOコントローラのハードウェア記述を修正し、オペレーティングシステムが
IOコントローラの再枚挙することをリクエストすることにより、1つ又は2つ
以上の新しい仮想IOコントローラを形成又は抹消することができる。新しいI
Oコントローラの動的形成は、実際の限界(即ち、システム・バス帯域幅、IO
コントローラ数の限界等)に達するまで何度でも行うことができる。
【0026】 図3のフロー・ダイヤグラムに示す本発明の方法の一実施例では、現時点のI
Oコントローラ構成を変更する決定がなされる。この決定はオペレーティングシ
ステム又はIOコントローラ内の(図示しない)モニタリング素子によって行う
ことができる。現時点のIOコントローラ構成を変更する決定は、例えば、IO
コントローラを通過するデータ・フローの増減などのような1つ又は2つ以上の
所定条件の存在に基づいて行うことが好ましい。
【0027】 この決定は、例えば、下記判定基準に基づいて行うことが好ましい。周辺デバ
イスの総帯域幅条件、特定周辺デバイスの帯域幅条件、特定周辺デバイスの待ち
時間条件、競合周辺デバイスの存在、周辺デバイスのトポロジー、周辺デバイス
の付加又は除去、既存周辺デバイス帯域幅条件の増減、既存周辺デバイス待ち時
間条件の増減、等。
【0028】 次いで、IOコントローラの動作を一時的に中断させることが好ましい。IO
コントローラに組込まれているデバイスの作用を中断(又は、スリープへの移行
)させることにより、データ・フローを止める。次いで、リスト・プロセッサ1
10を、システムに付加された仮想コントローラのそれぞれについて、1つ又は
2つ以上の記述子リストを処理できるようにプログラムすることが好ましい。そ
れまで演算中であった記述子リストは手つかずのままであり、演算が再開される
と、新しい記述子リストと一緒に処理される。IOコントローラの構成は、1つ
又は2つ以上の仮想コントローラの付加又は抹消を反映するように変更される。
好ましくは、IOコントローラと接続しているデバイスを、効率のよいデータ・
パスを提供して、IOコントローラを通過するデータ・フローを最適化又は改善
する所要の構成となるように再ルーティングする。この再ルーティングは、典型
的な方法として、データ・フローを1つ又は2つ以上のIOコントローラ間に分
割することによって行われる。
【0029】 再構成が完了すると、IOコントローラを再枚挙するようオペレーティングシ
ステムに対して、リクエストが行われる。仮想コントローラが検知され、どのコ
ントローラにどのデバイスを接続すべきかをオペレーティングシステムが問合わ
せる。記述子リストが作成され、リスト・プロセッサ110が各記述子リストの
処理を開始する。次いで、デバイスは動作を再開することができる。典型的には
、オペレーティングシステムによってデバイスが再枚挙される。
【0030】 リスト・プロセッサ110の特徴として、多重記述子リストを同時的に処理で
きる、いわゆるマルチ・スレッド性が挙げられる。リスト・プロセッサ110が
同時的に実行できる代表的な動作としては、下記の動作が挙げられる。システム
・メモリーからの取出し、キャッシング(又は、システム・メモリーへのアクセ
ス回数を減らさねばならなくなる前に、記述子を取出すこと)、記述子のバリデ
ーション、データ伝送用IOハードウェアの準備、データ・フロー・プロトコル
・エレメントの構成、システム・メモリーとの間のデータ取出し又は供給、除外
すべきデータ・フローのモニタリング、完成すべきデータ・フローのモニタリン
グ、記述子の終了、エラーの処理及び一掃、及びオペレーティングシステムへの
結果リポート。
【0031】 したがって、本発明の一実施例による、コンピュータ・システムにおいてIO
コントローラを通過するデータ・フローを制御する方法は、IOコントローラに
必要な構成を決定し、1つ又は2つ以上の記述子リストを処理できるようにIO
コントローラを再プログラムし、1つ又は2つ以上の仮想コントローラの付加又
は抹消を反映するようにIOコントローラの構成を変更し、IOコントローラを
再枚挙し、IOコントローラ及び仮想コントローラのそれぞれについて、1つの
記述子リストを処理するステップから成る。枚挙の過程において、1つ又は2つ
以上の仮想コントローラを発見し、起動し、そして、IOコントローラによって
支持され、且つインタフェース仕様によって定められた全帯域幅を提供すること
が好ましい。
【0032】 IOコントローラの構成を変更する際には、1つ又は2つ以上の仮想コントロ
ーラの存在を示唆する1つ又は2つ以上の新しい構成記述子を作成することが好
ましい。インタフェース・ポートからの結線を、効率的なデータ・フローを可能
にする所要のルーティング構成となるように、再ルーティングすることが好まし
い。IOコントローラに必要な構成の決定と、IOコントローラの構成変更はコ
ンピュータ・システム中のドライバー、又はIOコントローラに組込まれたファ
ームウェアの制御下に行われることが好ましい。IOコントローラの所要構成を
決定する際には、IOコントローラの既存構成を、既存の条件に基づいて変更す
べきかどうかを判断し、既存条件に基づいてIOコントローラの最適化構成を決
定することが好ましい。
【0033】 本発明の他の実施例による、コンピュータ・システムにおいてIOコントロー
ラを通過するデータ・フローを制御する方法は、1つ又は2つ以上の所定条件が
存在すると、再構成モードに入り、IOコントローラの所要構成を決定し、1つ
又は2つ以上の記述子リストを処理できるようにIOコントローラを再プログラ
ムし、1つ又は2つ以上の仮想コントローラの付加又は抹消を反映するようにI
Oコントローラの構成を変更し、IOコントローラを再枚挙し、各IOコントロ
ーラ及び1つ又は2つ以上の仮想コントローラごとに1つの記述子リストを処理
するステップから成る。再構成モードに入る際には、コンピュータ・システムと
接続しているデバイスの動作を中断させることが好ましい。所定条件には、IO
コントローラを通過するデータ・フローの増減が含まれることが好ましい。
【0034】 第2の態様においては、本発明は、システム・バス・インタフェース、プログ
ラム可能リスト・プロセッサ及びポート・ルータから成る、IOコントローラと
して利用される集積回路デバイスに係る。システム・バス・インタフェース、プ
ログラム可能リスト・プロセッサ及びポート・ルータは機能的に接続されること
が好ましい。集積回路デバイスは、1つ又は2つ以上の仮想コントローラを付加
又は抹消するため再構成でき、仮想コントローラが、集積回路デバイスによって
支持される、実質的な全帯域幅を提供することが好ましい。
【0035】 添付図面に沿って本発明の実施例を以上に説明したが、本発明はこれら実施例
に制限されるものではなく、当業者なら、本発明の思想と範囲を逸脱することな
く、多様な変更を加えることができる。
【図面の簡単な説明】
【図1】 本発明の一実施形態のブロック・ダイヤグラムである。
【図2】 本発明の他の実施形態のブロック・ダイヤグラムである。
【図3】 本発明の方法の一実施形態を説明するフロー・ダイヤグラムである。
【図4】 本発明と併用できるポート・ルータの一実施形態を示すブロック・ダイヤグラ
ムである。
【図5】 本発明と併用できるポート・ルータの他の実施形態を示すブロック・ダイヤグ
ラムである。
───────────────────────────────────────────────────── フロントページの続き (31)優先権主張番号 60/114,767 (32)優先日 平成11年1月6日(1999.1.6) (33)優先権主張国 米国(US) (31)優先権主張番号 09/477,591 (32)優先日 平成12年1月4日(2000.1.4) (33)優先権主張国 米国(US) (81)指定国 GB,JP,KP,KR (72)発明者 クリー,ジェームズ ティー. アメリカ合衆国,ペンシルベニア 18069, オーアフィールド,ローラル レーン 1708 (72)発明者 グジアック,ジェームズ イー. アメリカ合衆国,ペンシルベニア 18059, ローリーズ ステーション,アッシュレイ ドライブ 5439 (72)発明者 リンチ,ケビン ジェイ. アメリカ合衆国,ペンシルベニア 18080, スラティントン,シダー プレス ロード 4225 (72)発明者 ラティフ,ファールク エー. アメリカ合衆国,ペンシルベニア 19446, ランズデール,アレバッチ ロード 2205 Fターム(参考) 5B014 GD04 GD05 GD32 【要約の続き】 コンソール、スマート・アプライアンス、ハンドヘルド ・コンピュータ、手のひらサイズ・コンピュータ、組込 制御システム、ワークステーション、サーバー等に応用 できる。

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】 IOコントローラを介して、1つ又は2つ以上のポート・イ
    ンタフェースからコンピュータ・システムの内部回路へ流れるデータ・フローを
    制御する方法であって、 前記IOコントローラの所要構成を決定し、 1つ又は2つ以上の記述子リストを処理できるように前記IOコントローラを
    再プログラムし、 1つ又は2つ以上の仮想コントローラの付加又は抹消を反映するように前記I
    Oコントローラの構成を変更し、 前記IOコントローラを再枚挙し、 前記IOコントローラ及び前記1つ又は2つ以上の仮想コントローラのそれぞ
    れに対応する記述子を処理する ステップから成ることを特徴とする前記方法。
  2. 【請求項2】 前記1つ又は2つ以上の仮想コントローラを、前記再枚挙の
    過程において発見し、起動して、前記ポート・インタフェースによって支持され
    る全帯域幅を提供することを特徴とする請求項1に記載の方法。
  3. 【請求項3】 前記IOコントローラの構成を変更するステップとして、前
    記1つ又は2つ以上の仮想コントローラの存在を示唆する1つ又は2つ以上の新
    しい構成記述子を作成することを特徴とする請求項1に記載の方法。
  4. 【請求項4】 前記IOコントローラへの結線を、所要のルーティング構成
    となるように再ルートするステップをも含むことを特徴とする請求項1に記載の
    方法。
  5. 【請求項5】 前記IOコントローラの所要構成を決定し、前記コンピュー
    タ・システム中のドライバーによる制御下に、前記IOコントローラの構成を変
    更することを特徴とする請求項1に記載の方法。
  6. 【請求項6】 前記IOコントローラの所要構成を決定し、前記IOコント
    ローラに組込まれたファームウェアによる制御下に、前記IOコントローラの構
    成を変更することを特徴とする請求項1に記載の方法。
  7. 【請求項7】 前記IOコントローラの所要構成を決定するステップが、前
    記IOコントローラの既存構成を、既存の条件に基づいて変更すべきかどうかを
    判断し、前記既存の条件に基づいて前記IOコントローラの最適化構成を求める
    ステップを含むことを特徴とする請求項1に記載の方法。
  8. 【請求項8】 コンピュータ・システムにおいて、IOコントローラを流れ
    るデータ・フローを制御する方法であって、 1つ又は2つ以上の所定条件が存在すると、再構成モードに入り、 前記IOコントローラの所要構成を決定し、 1つ又は2つ以上の記述子リストを処理できるように前記IOコントローラを
    再プログラムし、 1つ又は2つ以上の仮想コントローラの付加又は抹消を反映するように前記I
    Oコントローラの構成を変更し、 前記IOコントローラを再枚挙し、 前記IOコントローラ及び前記1つ又は2つ以上の仮想コントローラのそれぞ
    れに対応する記述子を作成する ステップから成ることを特徴とする前記方法。
  9. 【請求項9】 再構成モードに入る際に、前記コンピュータ・システムと接
    続しているデバイスの動作を中断させることを特徴とする請求項8に記載の方法
  10. 【請求項10】 前記所定条件が、前記IOコントローラを通過するデータ
    ・フローの増減を含むことを特徴とする請求項8に記載の方法。
  11. 【請求項11】 IOコントローラとして使用される集積回路デバイスであ
    って、 システム・バス・インタフェース、 プログラム可能リスト・プロセッサ、及び ポート・ルータ から成り、 前記システム・バス・インタフェース、前記プログラム可能リスト・プロセッ
    サ及び前記ポート・ルータが機能的に接続され、 前記集積回路デバイスが、1つ又は2つ以上の仮想コントローラを付加又は抹
    消するために再構成可能であり、前記仮想コントローラが、前記集積回路デバイ
    スによって支持される実質的な全帯域幅を提供する ことを特徴とする前記集積回路デバイス。
JP2000592732A 1999-01-05 2000-01-05 入出力デバイスを動的に再構成する装置及び方法 Expired - Fee Related JP4606589B2 (ja)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US11477199P 1999-01-05 1999-01-05
US11477299P 1999-01-05 1999-01-05
US60/114,771 1999-01-05
US60/114,772 1999-01-05
US11476799P 1999-01-06 1999-01-06
US60/114,767 1999-01-06
US09/477,591 2000-01-04
US09/477,591 US6199137B1 (en) 1999-01-05 2000-01-04 Method and device for controlling data flow through an IO controller
PCT/US2000/000177 WO2000041074A2 (en) 1999-01-05 2000-01-05 Apparatus and method for dynamically reconfiguring an io device

Publications (3)

Publication Number Publication Date
JP2003532165A true JP2003532165A (ja) 2003-10-28
JP2003532165A5 JP2003532165A5 (ja) 2007-02-15
JP4606589B2 JP4606589B2 (ja) 2011-01-05

Family

ID=27493970

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000592732A Expired - Fee Related JP4606589B2 (ja) 1999-01-05 2000-01-05 入出力デバイスを動的に再構成する装置及び方法

Country Status (4)

Country Link
US (1) US6199137B1 (ja)
JP (1) JP4606589B2 (ja)
GB (1) GB2359911B (ja)
WO (1) WO2000041074A2 (ja)

Families Citing this family (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6266721B1 (en) 1997-05-13 2001-07-24 Micron Electronics, Inc. System architecture for remote access and control of environmental management
US6338150B1 (en) * 1997-05-13 2002-01-08 Micron Technology, Inc. Diagnostic and managing distributed processor system
US6145098A (en) 1997-05-13 2000-11-07 Micron Electronics, Inc. System for displaying system status
US6363497B1 (en) 1997-05-13 2002-03-26 Micron Technology, Inc. System for clustering software applications
US6324608B1 (en) * 1997-05-13 2001-11-27 Micron Electronics Method for hot swapping of network components
US6801971B1 (en) * 1999-09-10 2004-10-05 Agere Systems Inc. Method and system for shared bus access
US6519660B1 (en) * 1999-09-28 2003-02-11 International Business Machines Corporation Method, system and program products for determining I/O configuration entropy
US6986137B1 (en) * 1999-09-28 2006-01-10 International Business Machines Corporation Method, system and program products for managing logical processors of a computing environment
US6546450B1 (en) * 1999-12-22 2003-04-08 Intel Corporation Method and apparatus for sharing a universal serial bus device among multiple computers by switching
US6721821B1 (en) * 2000-04-13 2004-04-13 General Dynamics Information Systems Apparatus for electronic data storage
US20020156914A1 (en) * 2000-05-31 2002-10-24 Lo Waichi C. Controller for managing bandwidth in a communications network
US6772320B1 (en) * 2000-11-17 2004-08-03 Intel Corporation Method and computer program for data conversion in a heterogeneous communications network
US20020075860A1 (en) * 2000-12-19 2002-06-20 Young Gene F. High density serverlets utilizing high speed data bus
US7254647B2 (en) * 2001-03-23 2007-08-07 International Business Machines Corporation Network for decreasing transmit link layer core speed
US7401126B2 (en) 2001-03-23 2008-07-15 Neteffect, Inc. Transaction switch and network interface adapter incorporating same
US6839793B2 (en) * 2001-03-28 2005-01-04 Intel Corporation Method and apparatus to maximize bandwidth availability to USB devices
US20020194407A1 (en) * 2001-04-25 2002-12-19 Kim Hyon T. Maintaining fabric device configuration through dynamic reconfiguration
US6438128B1 (en) * 2001-05-08 2002-08-20 International Business Machines Corporation Alternate use of data packet fields to convey information
US6459698B1 (en) * 2001-06-18 2002-10-01 Advanced Micro Devices, Inc. Supporting mapping of layer 3 priorities in an infiniband ™ network
US6973085B1 (en) * 2001-06-18 2005-12-06 Advanced Micro Devices, Inc. Using application headers to determine InfiniBand™ priorities in an InfiniBand™ network
US7860120B1 (en) 2001-07-27 2010-12-28 Hewlett-Packard Company Network interface supporting of virtual paths for quality of service with dynamic buffer allocation
US6970921B1 (en) * 2001-07-27 2005-11-29 3Com Corporation Network interface supporting virtual paths for quality of service
GB2381709A (en) * 2001-10-30 2003-05-07 Graeme Roy Smith Programmable set-top box and home gateway
TW538364B (en) * 2001-12-10 2003-06-21 Via Tech Inc USB control circuit capable of automatically switching paths
US6963932B2 (en) * 2002-01-30 2005-11-08 Intel Corporation Intermediate driver having a fail-over function for a virtual network interface card in a system utilizing Infiniband architecture
US6766405B2 (en) 2002-03-28 2004-07-20 International Business Machines Corporation Accelerated error detection in a bus bridge circuit
WO2004008313A1 (en) * 2002-07-15 2004-01-22 Axalto Sa Usb device
EP1530757B1 (en) * 2002-07-15 2011-10-26 Gemalto SA Usb device
US6928509B2 (en) * 2002-08-01 2005-08-09 International Business Machines Corporation Method and apparatus for enhancing reliability and scalability of serial storage devices
US7894480B1 (en) 2002-08-27 2011-02-22 Hewlett-Packard Company Computer system and network interface with hardware based rule checking for embedded firewall
US7724740B1 (en) 2002-08-27 2010-05-25 3Com Corporation Computer system and network interface supporting class of service queues
US7000043B2 (en) * 2002-09-18 2006-02-14 Sun Microsystems, Inc. Methods and apparatus for controlling performance of a communications device
KR100449807B1 (ko) * 2002-12-20 2004-09-22 한국전자통신연구원 호스트 버스 인터페이스를 갖는 데이터 전송 프로토콜제어 시스템
JP3907609B2 (ja) * 2003-04-30 2007-04-18 株式会社ソニー・コンピュータエンタテインメント ゲーム実行方法、ゲーム機、通信方法および通信装置
US7065601B2 (en) * 2003-06-06 2006-06-20 Stmicroelectronics N.V. Interface for prototyping integrated systems
US7398345B2 (en) * 2003-06-12 2008-07-08 Hewlett-Packard Development Company, L.P. Inter-integrated circuit bus router for providing increased security
US8539096B2 (en) * 2003-09-26 2013-09-17 Lsi Corporation Systems and methods for configuring ports of an SAS domain
CN1906559B (zh) * 2003-12-30 2010-10-13 威步系统股份公司 用于控制数据处理设备的方法
US7284081B2 (en) * 2004-01-27 2007-10-16 Atmel Corporation Method and system for routing data between USB ports
DE102004057756B4 (de) * 2004-11-30 2009-08-06 Advanced Micro Devices Inc., Sunnyvale USB-Steuerungseinrichtung mit OTG-Steuerungseinheit
TW200642210A (en) * 2005-02-08 2006-12-01 Koninkl Philips Electronics Nv Scalable universal serial bus architecture
US20060212870A1 (en) * 2005-02-25 2006-09-21 International Business Machines Corporation Association of memory access through protection attributes that are associated to an access control level on a PCI adapter that supports virtualization
US7496790B2 (en) * 2005-02-25 2009-02-24 International Business Machines Corporation Method, apparatus, and computer program product for coordinating error reporting and reset utilizing an I/O adapter that supports virtualization
US8458280B2 (en) * 2005-04-08 2013-06-04 Intel-Ne, Inc. Apparatus and method for packet transmission over a high speed network supporting remote direct memory access operations
US8189599B2 (en) * 2005-08-23 2012-05-29 Rpx Corporation Omni-protocol engine for reconfigurable bit-stream processing in high-speed networks
US7782873B2 (en) * 2005-08-23 2010-08-24 Slt Logic, Llc Omni-protocol engine for reconfigurable bit-stream processing in high-speed networks
US7519754B2 (en) * 2005-12-28 2009-04-14 Silicon Storage Technology, Inc. Hard disk drive cache memory and playback device
US20070147115A1 (en) * 2005-12-28 2007-06-28 Fong-Long Lin Unified memory and controller
US7889762B2 (en) 2006-01-19 2011-02-15 Intel-Ne, Inc. Apparatus and method for in-line insertion and removal of markers
US7782905B2 (en) * 2006-01-19 2010-08-24 Intel-Ne, Inc. Apparatus and method for stateless CRC calculation
US7849232B2 (en) 2006-02-17 2010-12-07 Intel-Ne, Inc. Method and apparatus for using a single multi-function adapter with different operating systems
US8316156B2 (en) * 2006-02-17 2012-11-20 Intel-Ne, Inc. Method and apparatus for interfacing device drivers to single multi-function adapter
US20070208820A1 (en) * 2006-02-17 2007-09-06 Neteffect, Inc. Apparatus and method for out-of-order placement and in-order completion reporting of remote direct memory access operations
US8078743B2 (en) * 2006-02-17 2011-12-13 Intel-Ne, Inc. Pipelined processing of RDMA-type network transactions
US8230149B1 (en) 2007-09-26 2012-07-24 Teradici Corporation Method and apparatus for managing a peripheral port of a computer system
US20090296726A1 (en) * 2008-06-03 2009-12-03 Brocade Communications Systems, Inc. ACCESS CONTROL LIST MANAGEMENT IN AN FCoE ENVIRONMENT
US8671228B1 (en) * 2009-10-02 2014-03-11 Qlogic, Corporation System and methods for managing virtual adapter instances
US8904119B2 (en) 2012-10-31 2014-12-02 Lsi Corporation Method and structures for performing a migration of a logical volume with a serial attached SCSI expander
US8904108B2 (en) 2012-10-31 2014-12-02 Lsi Corporation Methods and structure establishing nested Redundant Array of Independent Disks volumes with an expander
US8782292B2 (en) 2012-10-31 2014-07-15 Lsi Corporation Methods and structure for performing a rebuild of a logical volume with a serial attached SCSI expander
US9135198B2 (en) 2012-10-31 2015-09-15 Avago Technologies General Ip (Singapore) Pte Ltd Methods and structure for serial attached SCSI expanders that self-configure by setting routing attributes of their ports based on SMP requests
US8756345B2 (en) 2012-10-31 2014-06-17 Lsi Corporation Methods and structure for managing protection information with a serial attached SCSI expander
US20170168971A1 (en) * 2015-12-15 2017-06-15 Intel IP Corporation Re-enumerating media agnostic devices
CN111610732B (zh) * 2020-04-28 2021-09-24 同方泰德国际科技(北京)有限公司 更换可配置型输入/输出模块的方法、装置及设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001167040A (ja) * 1999-12-14 2001-06-22 Hitachi Ltd 記憶サブシステム及び記憶制御装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4939644A (en) * 1983-05-19 1990-07-03 Data General Corporation Input/output controller for controlling the sequencing of the execution of input/output commands in a data processing system
US4750113A (en) * 1985-02-28 1988-06-07 Unisys Corporation Dual function I/O controller
DE68927627T2 (de) * 1988-10-24 1997-04-24 Fujitsu Ltd Ein-/Ausgabeverarbeitungssystem für einen virtuellen Rechner
US5548782A (en) * 1993-05-07 1996-08-20 National Semiconductor Corporation Apparatus for preventing transferring of data with peripheral device for period of time in response to connection or disconnection of the device with the apparatus
ATE195027T1 (de) * 1994-02-10 2000-08-15 Elonex I P Holdings Limited Verzeichnis für ein-/ausgangsdecoder
US5655148A (en) * 1994-05-27 1997-08-05 Microsoft Corporation Method for automatically configuring devices including a network adapter without manual intervention and without prior configuration information
US5671441A (en) * 1994-11-29 1997-09-23 International Business Machines Corporation Method and apparatus for automatic generation of I/O configuration descriptions
JP3274604B2 (ja) * 1996-04-26 2002-04-15 インターナショナル・ビジネス・マシーンズ・コーポレーション 周辺デバイスの自動イネーブル方法
US5815731A (en) * 1996-10-31 1998-09-29 International Business Machines Corporation Method and system for providing device driver configurations on demand
US5964852A (en) * 1996-11-08 1999-10-12 Rockwell International Corporation Programmable data port interface adapter
US6058445A (en) * 1997-05-13 2000-05-02 Micron Electronics, Inc. Data management method for adding or exchanging components on a running computer
US5892928A (en) * 1997-05-13 1999-04-06 Micron Electronics, Inc. Method for the hot add of a network adapter on a system including a dynamically loaded adapter driver

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001167040A (ja) * 1999-12-14 2001-06-22 Hitachi Ltd 記憶サブシステム及び記憶制御装置

Also Published As

Publication number Publication date
WO2000041074A8 (en) 2001-06-21
US6199137B1 (en) 2001-03-06
WO2000041074A2 (en) 2000-07-13
GB2359911B (en) 2003-09-24
GB2359911A (en) 2001-09-05
WO2000041074A3 (en) 2000-11-02
GB0112729D0 (en) 2001-07-18
JP4606589B2 (ja) 2011-01-05

Similar Documents

Publication Publication Date Title
JP4606589B2 (ja) 入出力デバイスを動的に再構成する装置及び方法
US7660937B2 (en) Emulating a USB host controller
US7552241B2 (en) Method and system for managing a plurality of I/O interfaces with an array of multicore processor resources in a semiconductor chip
US10333865B2 (en) Transformation of peripheral component interconnect express compliant virtual devices in a network environment
US7743197B2 (en) System and method for virtualizing PCIe devices
US20160283428A1 (en) Method, apparatus and system to implement secondary bus functionality via a reconfigurable virtual switch
US6141708A (en) Host bridge configured to mask a portion of peripheral devices coupled to a bus further downstream of the host bridge from a host processor
JP4491765B2 (ja) ポートルータ
US6785760B2 (en) Performance of a PCI-X to infiniband bridge
JP2000215116A (ja) ユニバ―サル・シリアル・バス・インタプリタ
KR20070003954A (ko) 집적 종단점 장치와, 집적 pci 익스프레스 종단점 장치및 pci 익스프레스 통신 시스템
JP2021530813A (ja) 専用低レイテンシリンクを使用した複数のハードウェアアクセラレータのための統合されたアドレス空間
US11714776B2 (en) Enabling a multi-chip daisy chain topology using peripheral component interconnect express (PCIe)
CN1561493A (zh) 多节点系统中硬件事件的聚集
US7702717B2 (en) Method and apparatus for controlling management agents in a computer system on a packet-switched input/output network
US7428609B2 (en) Method and system to partition hardware resources between operating systems
CN115658586A (zh) 资源管理芯片、方法、电子设备及可读存储介质
US7389363B2 (en) System and method for flexible multiple protocols
JP6760579B2 (ja) ネットワークラインカード(lc)のホストオペレーティングシステム(os)への統合
EP1817677B1 (en) Usb on-the-go controller
WO2009148432A1 (en) Queue sharing and reconfiguration in pci express links
Intel
JP2007507045A (ja) コンフィグレーション・レジスター・アクセス方法、設定方法、集積回路部品、コンピューター・システム、製品
JP2006513489A (ja) クラスタ化されたコンピュータシステムのための適応プロセッサノードのスケーラブルな相互接続のためのシステムおよび方法
US11422824B2 (en) Computer activation method

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061222

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100106

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100406

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100413

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100706

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20100706

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: 20100913

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: 20101006

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: 20131015

Year of fee payment: 3

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees