JP2001318876A - ユニバーサル・シリアル・バスを介してホスト・コンピュータ・システムと通信するコンピュータ周辺装置及び方法 - Google Patents

ユニバーサル・シリアル・バスを介してホスト・コンピュータ・システムと通信するコンピュータ周辺装置及び方法

Info

Publication number
JP2001318876A
JP2001318876A JP2000399357A JP2000399357A JP2001318876A JP 2001318876 A JP2001318876 A JP 2001318876A JP 2000399357 A JP2000399357 A JP 2000399357A JP 2000399357 A JP2000399357 A JP 2000399357A JP 2001318876 A JP2001318876 A JP 2001318876A
Authority
JP
Japan
Prior art keywords
data
usb
endpoint
communication
atm
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.)
Abandoned
Application number
JP2000399357A
Other languages
English (en)
Inventor
Gregory Lee Christison
リー クリスティソン グレゴリー
Magnus G Karlsson
ジー、カールソン マグナス
Norayda N Humphrey
エヌ、ハムプレイ ノライダ
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.)
Texas Instruments Inc
Original Assignee
Texas Instruments 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 Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of JP2001318876A publication Critical patent/JP2001318876A/ja
Abandoned legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40143Bus networks involving priority mechanisms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Communication Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

(57)【要約】 【課題】 ユニバーサル・シリアル・バスを介してホス
ト・コンピュータと通信する周辺装置及び方法を開示す
る。 【解決手段】 USB周辺装置のインターフェース機能
(28)に設けられたATM送信コントローラ(13
2)用の優先順位スケジューラ(137)に従ってホス
ト・コンピュータとメッセージ・データの通信をするの
ためのエンドポイント(240、240’)を選択し、
例えばIPプロトコルによりコネクションレス通信す
る。その際に、一定ビット速度(CBR)通信のような
遅延に敏感なメッセージに対しては、アイソクロナス・
エンドポイント(240’)を関連させ、可変ビット速
度(VBR)、利用可能ビット速度(ABR)、無指定
ビット速度(UBR)による遅延に敏感でないメッセー
ジには、バルク・エンドポイント(240’)を関連さ
せる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データ通信の分野
に関し、特にユニバーサル・シリアル・バス(Univ
ersal Serial Bus:USB)を介して
周辺装置とによりネットワーク上でデータ通信に関す
る。
【0002】
【従来の技術】ユニバーサル・シリアル・バス(US
B)は、種々の会社の協力により確定された最近開発の
技術であり、1998年9月23日に、ユニバーサル・
シリアル・バス仕様、改正1.1において標準化され、
ここに、引用により組み込まれる。このUSB仕様は、
複数のコンピュータ及びそれらの周辺装置のユーザの使
い勝手(user friendlieness)を改
善することに向けられている。USBシステムでは、周
辺装置がUSBバス上で階層化された階層化星状トポロ
ジー(tier−star topology)により
ホスト・パーソナル・コンピュータ又はワークステーシ
ョン・コンピュータに接続される。USBバスは、ホス
ト・コンピュータ内に存在し得るが、更に典型的には、
標準化された外部USBポート及びケーブル接続により
物理的に実施される。このようにして、外部USB周辺
装置は、通常的な専用直列及び並列ポートを占有するこ
とはない。論理的には、USBバスは、このUSBバス
上でスレーブとして動作している複数のUSB周辺装置
と共に、ホスト・パーソナル・コンピュータ即ちワーク
ステーションに存在するUSBホストにより従属化され
る。
【0003】USB技術は、「デージー・チェーン(d
aisy chain)」階層化星状トポロジーによ
り、ホスト・コンピュータの単一USBポートに127
台の周辺装置まで接続可能なことを含む、コンピュータ
・システム・ユーザに対して顕著な効果をもたらす。U
SB技術は、ユーザがシステムの電源を落とさずに、一
般的には、ユーザから要求される僅かな構成入力又は構
成入力なしに、USBシステムに接続できること、また
これから切り離すことができる。この能力は、多くの従
来システムに、特に1ポート当たり1周辺装置のみサポ
ートできるものに比較して、かなりの柔軟性及び潜在的
なコスト低減をもたらす。USBシステムは、アド・オ
ン・カード及びそれらに関連したメインボード・スロッ
トを必要とすることなく、単一の直列データ転送プロト
コルによりデータ音声及び映像のような種々の機能を容
易に統合することができる。その上、マスタ・スレーブ
構成は、ホスト・コンピュータの比較的に高い処理能力
が周辺装置機能に必要とされる多くのデータ処理を実行
し、かつ管理するのを可能にする。
【0004】ネットワーク・アダプタは、USB装置と
して現在実行されている1形式の周辺装置である。US
Bネットワーク・アダプタは、オフィス内に位置するロ
ーカル・エリア・ネットワーク(LAN)、複数の遠方
位置間で占有通信する広域ネットワーク(WAN)又は
インターネットと云われる公衆ネットワークのような通
信ネットワークを介してデータ通信を行う。
【0005】特殊形式のネットワーク・アダプタは、変
調器/復調器即ち「モデム」であり、ツイスト・ペアの
電話回線のような通信設備を介して変調信号として通信
されるデータを符号化及び復号する。通常の音声帯域モ
デムは、通常の電話回線を介し、可聴周波数で搬送波さ
れる被変調アナログ信号によるデータ通信のために、長
いこと使用されていた。遠方の家庭又はスモール・オフ
ィス・ワークステーションがここでインターネットに接
続可能な比較的最近の技術は、当該技術分野において、
ディジタル加入者ループ(digital subsc
riber loop:DSL)と呼ばれている。DS
Lは、一般的には、限定された距離を通常の電話会社の
銅線を介して現在の音声モデムデータ速度より遙かに広
い比較的に高いバンド幅を送出する公衆ネットワーク技
術を指す。
【0006】通常のコンピュータは、音声帯域又はDS
Lモデムを使用することにより、通常の通信プロトコル
に従って多数の通信「セッション」を確立し、かつサポ
ートすることができる。非同期転送モード(Async
hronous Transfer Mode:AT
M)通信のようなコネクション型ネットワークは、いく
つかの優先順位機構のうちの一つにより多数のセッショ
ンを制御する。例えば、通信セッションを搬送している
多チャネルのうちのいくつかは、他のチャネルより高い
優先順位に設定される。そのときに、利用可能なバンド
幅がチャネル優先順位に従って割り付けられる。バンド
幅は、各チャネルがその優先順位によって変化する量に
よることを除き、ある帯域が与えられように、優先順位
ベースにより、又は重み付け方式により厳密に与えられ
る。他の優先順位機構は、各チャネルが順にバンド幅を
確保する単なるラウンド・ロビン機構(round−r
obin scheme)に過ぎない。
【0007】共通「コネクションレス(connect
ion−less)」型通信アプローチは、パケット・
ベースのデータ通信と呼ばれており、ここでは、複数の
コンセントレータが複数の送出ユニットにより発行され
るパケットと呼ばれる複数のメッセージの複数部分を受
信し、かつ記憶するように、一定のネットワーク・ノー
ドが動作している。コネクションレス型通信の例は、周
知のIPプロトコルにより動作する。これらのパケット
は、行き先コンセントレータに経路設定され、次いで、
メッセージをパケット・アドレスにより指示されている
受信ユニットに転送する。パケット・サイズは、複数の
コンセントレータ間(即ち、記憶ノードと転送ノードと
の間)で通信可能とされる情報の最大限を指し、典型的
には、メッセージ即ちファイルの一部である。各パケッ
トは、発信源ネットワーク・アドレス及び行き先ネット
ワーク・アドレスに関連するヘッダ情報を含み、メッセ
ージ・パケットの正しい経路設定を可能にする。長さが
短いパケットによるパケット・スイッチングは、経路設
定パスが長い個別的なメッセージにより過度に専有され
ないこと、従ってストア・アンド・フォワード・ノード
における送信遅延を短くすることを保証する。パケット
に基づくデータ通信技術は、数百メガビット/秒に達
し、またこれを超える高いデータ速度で搬送される通信
を可能にする。
【0008】パケット・スイッチングの効率を回路スイ
ッチングの予測可能性と組み合わせた周知の高速パケッ
ト交換プロトコルは、非同期転送モード(一般的に「A
TM」と呼ばれる)である。ATMプロトコルによれ
ば、メッセージ・パケットは、メッセージ長又はデータ
形式(即ち、音声、データ、又は映像)に関係なく、固
定長編成の複数セルに副分割される。各ATMセルは、
53バイトからなり、そのうちの5バイトはヘッダに割
り付けられ、残りの48バイトはペイロードとして使用
される。現在のATMプロトコルによれば、ATMパケ
ットは64に達する固定長ATMセルからなる。固定長
のATMセルは、ソフトウェアとは逆のハードウェアに
よりパケット・スイッチングを実施可能にし、ギガビッ
ト/秒領域での送信速度を達成する。加えて、パケット
よりもセルのスイッチングは、ネットワークに対して数
メガビットから数ギガビットの範囲のデータ速度により
ユーザ・アクセスを拡張可能にしている。
【0009】コンピュータがATM通信を実行し得る多
重「仮想コネクション」を優先順位付けすることにより
利用可能なバンド幅を更に効率的に利用することが可能
である。例えば、いくつかの形式の通信は、時間に敏感
であり、かつリアル・タイム的な厳密さを必要とする一
方、他の形式の通信はそのようなことはない。時間に鋭
敏な通信の例は、音声及びデータが単一ネットワーク回
線を介して同時伝送されるボイス・オーバ・インターネ
ット・プロトコル(Voice−over−Inter
net Protocol:VoIP)である。他方、
電子メールの読み出し、及び大きな複数ファイルの各バ
ックグラウンド・ダウンロードは、リアル・タイムの送
信能力を必要としない。通常のトラヒック管理の技術
は、遅延許容トラヒックに相対する時間に敏感なトラヒ
ックに対してバンド幅優先順位を許可できるように、2
ノード間でフィードバック信号を使用してチャネル・デ
ータ速度を管理している。
【0010】現在のATMトラヒック管理機構は、バン
ド幅を割り付けるために種々の送信カテゴリを利用して
いる。高優先順位カテゴリは、一定ビット速度(Con
stant Bit Rate:CBR)であり、送信
は「保証した」一定速度で実行される。可変ビット速度
(Variable Bit Rate:VBR)送信
は、リアル・タイム情報に対しては一方のVBR、また
非リアル・タイム情報に対しては他方のVBRとする、
次に高い優先順位のサービスが与えられる。利用可能ビ
ット速度(Available Bit Rate:A
BR)サービス・クラスは、送信チャネルの開放により
指定されるいくつかの送信パラメータ内の現在のネット
ワーク条件に応答して(即ちトラヒック「契約」によ
り)、チャネル制御速度をダイナミックに制御する。最
後に、最低優先順位のカテゴリは、無指定ビット速度
(Unspeciied Bit Rate:UBR)
であり、送信速度の保証なしの発信源からデータが送出
される。
【0011】
【発明が解決しようとする課題】コネクションレス型ネ
ットワークにおける優先順位機構に従っていようと、又
は仮想コネクションレス型指向ATMネットワークにお
けるコネクション・コンタクト必要条件に従っていよう
とも、そのデータ送信を優先順位付け可能なネットワー
ク要素は、サービス品質(Qaulity of Se
rvice:QoS)に対するサポートがあると、通常
呼ばれる。必要とするメッセージ発生源におけるQoS
の能力は、ネットワーク要素がその種々の送信チャネル
及び対応する優先順位を理解し、次いで、チャネル・ト
ラヒック、利用可能なバンド幅、及び現在のネットワー
ク・ステータスに従って、送信を計画するすることを必
要とする。通常のパーソナル・コンピュータ・システム
及びワークステーション・システムでは、ホスト・プロ
セッサにQoSのためにその送信を計画する負担が掛か
る。勿論、この付加的な機能は、ホスト・システムによ
り実行されている他のデータ処理動作と競争しなければ
ならない。
【0012】加えて、ATMQoSスケジューリングを
実行しているUSBホスト・システムの場合に、ATM
パケットは、USBを介して周辺ネットワークアダプタ
にデータを送出するのに先だって、ホスト・システム内
の複数のセルにセグメンテーションされる必要がある。
ATMメッセージの受信によりこれらセルを複数パケッ
トに再アッセンブリすることと共に、このセグメント機
能は、USBホストにより通常的に実行される。
【0013】
【発明を解決するための手段】従って、本発明の目的
は、通信のサービス品質(Quality of Se
rvice:QoS)スケジュールを実行するUSB周
辺装置を提供することにある。
【0014】本発明の更なる目的は、USBエンドポイ
ント(endpoint)通信及びQoS処理を同時的
に制御する周辺装置を提供することにある。
【0015】本発明の更なる目的は、USB通信の効率
を改善する周辺装置を提供することにある。
【0016】本発明の他の目的及び効果は、以下の詳細
な説明を図面と共に参照することにより当該技術分野に
習熟する者に明らかとなる。
【0017】本発明は、USBインターフェース内にQ
oSスケジューリング・ロジックが組み込まれているU
SB周辺装置に実施可能にすることにある。場合によ
り、USBホストにより、コネクションに基づくパケッ
ト及びコネクションレス・メッセージがUSB周辺装置
の共有メモリ内のUSBエンドポイントに転送される。
USBエンドポイントは、QoS優先順位カテゴリに従
って通信セッションの開始により構成される。このスケ
ジューリング・ロジックは、適当なトラヒック管理ルー
チンに従って、メッセージ・データのDMA読み出し及
び送信を制御する。
【0018】
【発明の実施の形態】本発明は、以下の説明から明らか
となるように、異なった多くのシステム実施に関連して
有益に使用可能とされる。従って、当該技術分野に習熟
する者は、この説明を参照して本発明を広い範囲の電子
機能及びシステムにわたる多くの他の実現に容易に適用
することができる。従って、以下の説明は単なる例とし
て示されていることを理解すべきである。
【0019】図1aは、好ましい実施例を実施する1例
のUSBシステム10を示す。USBシステム10は、
この実施例においてパーソナル・コンピュータ(PC)
であるUSBホスト12を含む。USBホスト12にお
ける中央処理装置(個別的に示されていない)は、PC
ユーザにとってトランスペアレント(透明)な形式でU
SBデバイス・ドライバをロードして実行する。これら
のデバイス・ドライバは、USBシステム10における
外部USB周辺装置の動作をサポートする。
【0020】USB周辺装置は、図1a及び図1bに示
すように、USBホスト12に直接接続されてもよく、
又はUSBホスト12に直接接続されている他のUSB
装置を通ってUSBホスト12に間接的に接続されても
よい。USBシステム10の例では、外部モデム14、
モニタ16及びキーボード18は、USBホスト12の
USBポートに直接接続され、同時に、USBシステム
10における他のUSB周辺装置がこれら直接接続のU
SB装置のうちの一つを介してUSBホスト12に接続
される。例えば、スピーカ20L及び20Rとマイクロホ
ン22は、モニタ16に存在するUSBハブ機能を経由
してUSBホスト12に接続され、このモニタ16はU
SBホスト12にUSB接続されている。典型的には、
モニタ16に表示されたビデオ・データは、USB接続
を介してUSBホスト12により通信されるのではな
く、その代わりに別個の標準的なビデオ接続(図1a及
び図1bには示されていない)を介して通信される。同
様に、マウス24及びスキャナ26は、キーボード18
を介してUSBホスト12に接続され、キーボード18
そのものは、USBホスト12のUSBポートに接続さ
れたUSB装置である。USBシステム10に図示した
各周辺装置は、USB装置として示されているが、その
代替として、これら装置のうちの一部のみがUSB装置
であってもよい。
【0021】図1bは、USBシステム10におけるU
SB接続の論理的ハブ及び機能的階層を示すように対応
させた電気接続図である。USBシステム10は、キー
ボード18と他のUSB機能をUSBホスト12に接続
するモニタ16と共に、USBホスト12そのものを含
む。USBシステム10における各USBハブは、1以
上の他のUSB装置を総合的なUSB階層に接続するワ
イヤリング・コンセントレータとして効果的に使用され
ている。USBホスト12による提供されるハブは、U
SB装置を接続することができる1以上のダウンストリ
ーム・ポートを有する。また、各周辺装置のハブは、U
SBハブか、又は他のハブに直接接続される少なくとも
1つのアップストリーム・ポートと、他のUSB装置を
接続することができる1以上のダウンストリーム・ポー
トとを含む。
【0022】USBホスト12から外部への全てのUS
B接続は、USBケーブルを使用してを行う。各USB
ケーブルは、4導体を含み、その2本が全てのUSB装
置との直列通信のためであり、他の2本がバス駆動され
るUSB装置に電力を供給するためである。USBケー
ブルのアップストリーム・コネクタ及びダウンストリー
ム・コネクタは、適正な方向付けを保証するように互い
に物理的に異なっている。USBシステム10の例にお
いて、USBホスト12のポート121 は、USBケー
ブルC1 によりキーボード18のポート181 に接続さ
れ、またポート122 は、USBケーブルC2 によりモ
ニタ16のポート161 に接続される。最近のUSBコ
ンピュータ・システムにおいて、モニタ16は、ディス
プレイ装置としてその主要機能と並行してUSBハブと
して典型的に使用されており、USB接続ではなく、直
接ビデオ・ディスプレイ接続によりUSBホスト12か
らそのビデオ・ディスプレイ信号を受信している。
【0023】USBハブに接続された各USB装置は、
当該技術分野において、機能即ち(多分、正確さは劣る
が)周辺装置と呼ばれる。一般的に、USB機能は、U
SB装置であって、ホストにある能力を提供する。この
例では、USB機能は、マイクロホン22、スピーカ2
0、モデム14、マウス24、及びスキャナ26を含
む。加えて、1ハブとして機能するUSB装置は、その
ものが1機能として使用されてもよい。即ち、キーボー
ド18は、USBハブ及びUSB機能の両方となる装置
の1例である。更に、各機能は、標準的なUSBケーブ
ルを介して1ハブに接続される。例えば、ケーブルC3
は、外部モデム14のポート141をUSBホスト12
のポート123に接続する。USBシステム10におけ
る残りのケーブル接続は、当該技術分野に習熟する者に
明らかであろう。
【0024】一般的に、USBホスト12はマスタとし
て動作し、各機能はUSB階層においてスレーブとして
常時使用される。この能力において、USBホスト12
は、USB機能から及びこれに情報を直列通信するよう
に作用するUSBコントローラに典型的に包含される直
列インターフェース・エンジン(SIE)(個別的には
図示せず)を含む。一般的に、USBマスタ機能は、3
ソフトウェア・レベルに従ってUSBホストにより実行
され、これらのソフトウェア・レベルは、最高から最低
の順に、(1)USBホスト・コントローラとして選択
された装置を残りのUSBソフトウェア構造にリンクさ
せるホスト・コントローラ・ドライバ、(1)USBホ
スト・コントローラとして選択された装置を残りのUS
Bソフトウェア構造にリンクさせるホスト・コントロー
ラ・ドライバ、(2)ホスト・コントローラ・ドライバ
とクライアント・ソフトウェアとの間で通信するUSシ
ステム・ソフトウェア、及び(3)各USB機能に関連
したクライアント・ソフトウェアである。
【0025】これらのソフトウェア・レベルを実行する
と、USBホスト12がUSBシステム10の接続によ
り作成されたネットワークを監視可能となり、また機能
が付加された時又は除去された時を検出可能となる。例
えば、回路網にある機能を取り付けたときに、USBホ
スト12は、USBマスタとして、そのアップストリー
ム・ポートのうちの1つの抵抗負荷における変化を検出
することにより、付加されたこの機能を検出する。その
応答により、USBホスト12は、新しく付加された機
能に対するポート接続を電気的に構成する。次いで、U
SBホスト12は、当該技術分野においてエニューメレ
ーション(enumeration:列挙)と呼ばれる
4ステップ処理に関連した機能を質問し、その機能につ
いての情報を認識して固有のアドレスを割り付ける。更
に、この処理又は以下に関連して、USBホスト12
は、機能を構成してもよい。最後に、USBホスト12
は、この機能と通信するために適当なドライバをロード
し、その後にUSBが以下で説明するUSBプロトコル
に従って進む。
【0026】USBプロトコルは、USBバスを介して
の通信時間を分割する。各フレーム期間中は、バンド幅
がUSBパケットと呼ばれるフレームの副分割に従っ
て、USBシステムに接続された全ての装置の中で共有
される。USBパケットのフォーマット及び長さは、U
SB仕様により指定される。一般的に、USBホスト1
2は、マスタとして、フレーム・パケットの開始(st
art of frame(SOF)packet)を
通信することにより、各フレームを開始する。その後の
フレーム期間中の通信は、トークン・プロトコルに従っ
て発生し、ホストと機能との間でトランザクションは、
トークン及び発行されたトークンに対する応答の発行に
より、発生する。特に、USBホスト12は、機能のう
ちの1つを指定するアドレスと、通信するデータが読み
出し(即ち、アドレス指定された機能からUSBホスト
12へ)であるか、又は書き込み(即ち、USBホスト
12からアドレス指定された機能へ)であるかを表すコ
ントロール・ステートとを備えたトークン・パケットを
発行する。このアドレスは、USBホストと機能との間
の通信フローにおける情報のソース又はシンクとなるU
SB機能において、固有にアドレス指定可能なメモリ位
置であるエンドポイント(即ち「デバイス・エンドポイ
ント」)を特定的に指す。このエンドポイントは、機能
のファースト・イン・ファースト・アウト(FIFO)
メモリ空間における位置としてその典型的な実施から来
た名称である。即ち、書き込みFIFOのエンド即ちエ
ンドポイントにこの機能に書き込まれるデータが書き込
まれ、一方読み出しFIFOのエンド即ちエンドポイン
トからこの機能から読み出したデータが読み出される。
トークンを受け取ると、各USB機能は、アドレスをデ
コードする。行き先がそれ自身であることをこの機能が
認識すると、一般的には、行き先機能が1以上のデータ
・パケットをバス上に送信又はこれから受信することに
より、指示された操作を実行する。データ通信が完了す
ると、(ホスト又は機能であり得る)データの行き先
は、送信が成功したか否かを表すハンドシェーク・パケ
ットを発行する。このハンドシェーク・パケットは、正
の肯定応答(ACK)又は負の肯定応答(NAK)とな
る。USB機能は、データ行き先として、更に、STA
LLハンドシェークを提供して意図したエンドポイント
を何らかの(例えば、FIFOがフルである)理由のた
めに書き込みできないこと、又はコントロール要求をサ
ポートしないことを示すこともできる。
【0027】USB仕様(Universal Ser
ial Bus specification、Riv
ision 1.1、1998年9月23日)は、US
Bデータ・パケット転送を4つの転送カテゴリ、即ちコ
ントロール転送、バルク・データ転送、割り込みデータ
転送及びアイソクロナス(isochronous)・
データ転送に分類している。通常のシステムにおいて、
これらの転送形式は、それぞれ同じような種類のエンド
ポイントに対して実行される。通常のシステムでは、特
定のエンドポイントに対するソフトウェア関連は、その
エンドポイントに対する「パイプ」と呼ばれる。この点
から、パイプは、USBシステム・ソフトウェア内の機
能コールを使用して、関連エンドポイントに情報を送出
し、またこれから情報を読み出すソフトウェア通信チャ
ネルとみなされる。例えば、ホストがある機能にアイソ
クロナス・データ・パケットを通信する場合に、パケッ
トはパイプを介してその機能におけるアイソクロナス・
エンドポイントに通信される。同様に、ホストがある機
能にバルク・データ・パケットを通信する場合に、パケ
ットはパイプを介してその機能におけるバルク・データ
・エンドポイントに通信される。最後に、ここで十分な
る詳細説明をしないが、UBS仕様は、1パケット当た
りの許容バイト数と、1フレーム又は複数フレーム当た
りのパケット数とを指定する、データ転送形式に基づい
た特定的な制約を課する。
【0028】コントロール転送は、USBホスト12が
機能についての情報を得ること、及びその行動を変更す
ることを可能にする。特に、コントロール転送は、構
成、コマンド、及びUSBホスト12におけるクライア
ント・ソフトウェアと対応する機能との間のステータス
・データを通信する。例えば、USBホスト12は、U
SBシステム10に最初に取り付けられたときに機能を
構成するためにコントロール転送を使用する。USB仕
様に従って、各USB機能は、USBシステム・ソフト
ウェアにより使用するためにエンドポイント0でデフォ
ールトINコントロール・パイプを備えて機能にコント
ロール情報を書き込む必要がある。更に、各USB装置
は、ホストにコントロール及びステータス情報を出力す
るために、OUTコントロール・パイプ及び関連するエ
ンドポイントを備える必要がある。各USB仕様は、更
に、機能のステータスを操作し、かつ装置上の情報を記
憶するための記述子を定義する。USB機能は、例え
ば、USBホスト12でのクライアント・ソフトウェア
により特定実施向けの機能に適合するように、追加的な
コントロール・パイプ及びエンドポイントを任意選択的
に提供する。
【0029】バルク転送は、比較的に大きな遅延を許容
するデータ・ブロックを通信するために使用され、従っ
て、ホストから機能へ又は機能からホストへのみ与えら
れた転送が可能である。従って、双方向のバルク転送通
信には、機能においてINバルク・エンドポイント及び
OUTバルク・エンドポイントの両者を指定するか、又
は2つのパイプを同一のバルク・エンドポイントと関連
させることが必要である。バルク転送の各例は、プリン
タ(図示なし)にデータを通信すること、及びスキャナ
26により収集されたイメージ・データの転送を含む。
典型的には、機能ハードウェアは、遅れを増加させる可
能性を犠牲にして、バルク・データ転送が成功する可能
性を高めるように、エラーに基づく限定された再試行回
数を実行する能力と共に、エラー検出機能を含む。バル
ク・データに割り当てられたUBSフレーム内のバンド
幅は、多分、他のデータ転送形式に対するバス要求量に
依存する。
【0030】割り込み転送は、USB機能へ、及びUS
B機能からの比較的に小さな転送となる。USBホスト
12がバス・マスタであって、割り込みが許容されない
ので、USB機能からホストへの割り込み転送は、ある
程度間接的となる。代わって、USBホスト12は、各
機能を周期的にポーリングして、割り込みデータが割り
込みエンドポイントに表示された標識に応答して、その
エンドポイントから割り込み情報を読み出す。割り込み
データは、典型的には、1以上のバイトとして編成され
た事象の表示、入力キーボード・キャラクタ、又は入力
座標からなる。例えば、割り込みデータは、キーボード
18又はマウス24(又は他の何らかの指示装置)によ
り発生してユーザ入力に転送されてもよい。
【0031】アイソクロナス・データは、生成、通信及
び使用が連続的かつリアル・タイムである。従って、U
SB仕様によれば、アイソクロナス転送は、INアイソ
クロナス・エンドポイントとOUTアイソクロナス・エ
ンドポイントとの両方、又はその代替として、同一エン
ドポイントに関連した2系統のパイプを必要とする。デ
ータ・ストリームのタイム・ベースは、データが送出さ
れる速度、即ち用語「アイソクロナス(isochro
nous)」を意味する。従って、アイソクロナス・デ
ータ転送は、伝送遅延に敏感なタイム・データを転送す
るために特に有用である。アイソクロナス・パイプにと
って、バンド幅の必要条件は、典型的には、関連する機
能のサンプリング特性に基づいており、最大許容遅延
は、各エンドポイントで利用可能なバファリングに関連
する。アイソクロナス・データ転送の従来例には、US
Bの外部モデム14からUSBホスト12へ受信したリ
アル・タイム・ビデオ情報への転送がある。アイソクロ
ナス・データの送出速度は、リアル・タイムの特性のた
めに、データ・ストリームにおけるドロップアウトをな
くすために保持されなければならなず、従ってアイソク
ロナス通信は、ハードウェアの再試行によって訂正不可
能である。このために、アイソクロナス・データ通信
は、タイミングよく送出されても、エラーが発生し易
い。実際において、USBのビット誤り率は、アイソク
ロナス・データを使用しているアプリケーションがこの
ようなエラーによりひどく損なわれることない程度に十
分に小さいと予測される。
【0032】以下で説明するように、本発明の好ましい
実施例によれば、あるサービス品質(QoS)のカテゴ
リがアイソクロナス・エンドポイントを利用する。これ
は、これらのアイソクロナス転送に対してUBSバンド
幅の専用される一部分の割り当てを可能にし、これがま
た指定された速度でデータを送出できるのを保証する。
【0033】図2は、本発明の好ましい実施例による機
能カード28のブロック図を示す。一般的な意味で、機
能カード28は回路基板を表す。より具体的に云うと、
この例において、図2の機能カード28は、図1a及び
図1bの外部モデム14として機能カード28の実施に
対応した機能ブロックを含む。従って、この例におい
て、機能カード28は、外部モデム14用の外部ハウジ
ングに内蔵され、通常の方法によりUBSバスに電気的
に接続されることを意図している。本発明の好ましい実
施例において、外部モデム14は、音声帯域(例えば、
V90)及びDSL通信の両方で使用されるハイブリッ
ド・モデムである。
【0034】機能カード28の例において、図2におけ
るUSBバスは、図1bに示すケーブルC3 のデータ導
体のようなUSBケーブルの2データ導体に対応する。
USBバスは、以下で説明するように、USBインター
フェース装置30に接続され、1以上の集積回路を使用
して形成された種々の他の機能ブロックを含む。本発明
のこの実施例によれば、USBインターフェース装置3
0は、ディジタル信号プロセッサ(DSP)機能32を
含む。例えば、DSP機能32は、テキサス・インスツ
ルメンツ(株)から商業的に入手可能な種々のDSPの
うちの1つ、例えばTMS320C6201、TMS3
20C6202、又はTMS320C6205に対応さ
れてもよい。
【0035】USBインターフェース装置30における
DSP機能32は、更に、異なる2つのアナログ・フロ
ント・エンド(AFE)回路、即ちV.90(即ち音声
帯域)AFE34及びxDSL AFE36に接続され
ている。各AFE34及びxDSL AFE36は、モ
デム通信が実行される通信施設(図示なし)に接続する
物理的なコネクタ38に接続されている。
【0036】機能カード28がハイブリッド・モデムに
対応している本発明の好ましい実施例によれば、DSP
機能32は、受信された、又は送信しようとする通信デ
ータ段に有用なある量の1チップ・メモリを含む。特に
図2に示すように、DSP機能32におけるこのオン・
チップ・メモリの一部は、受信FIFO33に対応して
おり、この受信FIFO33は、場合によるが、AFE
34又はxDSL AFE36から受け取るデータをU
SBホスト12に転送する前に、記憶することができる
ファースト・イン・ファースト・アウト・バッファであ
る。非同期転送モード(ATM)通信の場合に、受信F
IFOは、着信するATMセルを記憶する。逆に、DS
P機能32におけるオン・チップ・メモリの他の部分
は、送信FIFO35に対応しており、USBホスト1
2から受信した後、この送信FIFO35内にデータ
(例えば、ATMセル)が、AFE34又は36のうち
の適当な一つを介して送信する前に、バファリングされ
る。
【0037】USBインターフェース装置30のホスト
側において、USBバスは、USBインターフェース・
モジュール40に接続され、またこれは、内部バスBに
接続されている。更に、内部バスBには、USB・DS
Pコントローラ42が接続されており、更にこれは、バ
スHPIFを介してDSP機能32に接続されている。
USBインターフェース装置30は、更に、共有メモリ
44を含み、共有メモリ44は、内部バスBを介してU
SBインターフェース・モジュール40及びUSB・D
SPコントローラ42の両方によりアクセス可能であ
り、かつUSBエンドポイントとして使用するために確
保された複数のアドレス可能位置を含む。
【0038】以上で述べたように、バスHPIFは、U
SB・DSPコントローラ42を、この実施例では、U
SBインターフェース装置30内に実現されているDS
P機能32に接続する。代替として、DSP機能32
は、USB・DSPコントローラ42を含む集積回路か
ら別個の集積回路として実施されてもよい。この外部D
SPの場合は、バスHPIFを種々の方法により配列す
ることができる。例えば、外部ホスト・ポート・インタ
ーフェース(HPIF:host port inte
rface)を有するTMS320C6201のように
DSP装置の場合に、バスHPIFは、16ビットのホ
スト・ポート・インターフェース・バスに対応する。他
方、TMS320C6202のようなDSP装置は、種
々のモードをサポートするXバス(拡張バス)インター
フェースを有し、そのうちの一つは、32ビットのホス
ト・ポート・インターフェース・モードである。従っ
て、DSP機能32は、Xバス・インターフェースを有
する別個の集積回路装置により実施されるときに、バス
HPIFは、ホスト・ポート・インターフェース・モー
ドにより動作するXbusバスに対応する。これは、当
該技術分野に習熟する者がこの仕様を参照して適当なイ
ンターフェースを容易に実施できることを意図してい
る。
【0039】動作において、一般的な意味で、機能カー
ド28は、実施された周辺機能により(USBホスト1
2から受信した後、又はUSBホスト12に転送する前
に)USBホスト12との通信を実行するために、及び
データを処理するために、物理レベル及びプロトコル・
レベルの両方でUSBシステムとインターフェースをす
る。機能カード28が外部モデム14に対応しているこ
の実施例において、DSP機能32は、USB機能の機
能を提供するようにプログラムされ、かつ構成され、こ
の実施例では、モデムである。以上で説明したように、
この特定的な例のハイブリッド外部モデム14におい
て、DSP機能32は、AFE34及びxDSL AF
E36を介して音声通信及びxDSL通信を共にサポー
トするようにプログラムされている。
【0040】ホスト−機能カード方向において、データ
は、USBホスト12によりUSBバスを介して機能カ
ード28に送信される。このデータは、USBインター
フェース・モジュール40により受信され、次に、一般
的な意味において、USB原理に従って処理される。こ
の例において、このUSBインターフェース・モジュー
ル40は、内部バスBを介して共有メモリ44における
エンドポイントに、以上で述べた4USB転送形式のう
ちの一つに従って受信したデータを書き込む。共有メモ
リ44におけるエンドポイントにデータを書き込むと、
USB・DSPコントローラ42は、DSP機能32に
よる追加的な処理のために、内部バスBを介してこれら
のエンドポイントをアクセスすることができる。このよ
うにして、USBインターフェース・モジュール40を
通ってUSBホスト12によるエンドポイントに書き込
まれ他データは、バスHPIFを介してDSP機能32
により読み出すことができる。
【0041】機能−ホスト方向に、DSP機能32によ
り通信設備からデータを受信し、モデム機能の要求に従
って処理される。次いで、DSP機能32は、処理結果
をバスHPIFに送出し、これらの結果は、USB・D
SPコントローラ42により共有メモリ44における適
当なエンドポイントに転送される。次いで、USBホス
ト12は、共有メモリ44をアクセスしてUSBバス上
のこのデータを取り出す。
【0042】ここで、図3を参照し、本発明の好ましい
実施例による図2の外部モデム14内のUSBインター
フェース装置30のアーキテクチャー例を説明する。勿
論、USBインターフェース装置30は、多数のアーキ
テクチャー及び構成のうちの一つにより構成されてもよ
い。そのような機能において、図3に示すと共に、ここ
で説明する例示的なアーキテクチャーは、1例によって
のみ提供されていることを理解すべきである。
【0043】図3に示すように、USBインターフェー
ス装置30のアーキテクチャーは、テキサス・インスツ
ルメンツ(株)から入手可能なTUSB3200 US
B周辺インターフェース装置により提供されるものと同
様の機能を含む。この点から、USBインターフェース
装置30は、マイクロコントローラ・ユニット(MC
U)100を含み、これは、標準8052マイクロコン
トローラ・コアであってもよい。MCU100は、プロ
グラム読み出し専用メモリ(ROM)102、及びラン
ダム・アクセス・メモリ(RAM)バンク104、10
6を含む内部バスB上の種々のメモリ・リソースと通信
中である。RAMバンク104は、主としてUSBバス
を介してUSBホスト12から、又はこれに代わるもの
として、USBインターフェース装置30に設けられて
いるポートのうちの他の一つを介して他の装置からロー
ド可能とされるコード空間を設けている。以下で更に詳
細に説明するように、USBエンドポイント・バッファ
は、同期RAMバンク106内に存在する。この意味に
おいて、同期RAMバンク106は、図2の共有メモリ
44として使用される。MCU100は、USBインタ
ーフェース装置30の他のアイソクロナス機能と共に、
フェーズ・ロックド・ループ(PLL)及び適応クロッ
ク発生器(ACG)110により発生されるクロック信
号により適当なクロック速度でクロッキングされる。P
LL及びACG110は、発振器108が発生する基準
クロックの周波数から低い周波数に下げ、またこの発振
器108は、外部クリスタル109により設定された周
波数に基づいている。このように発生される利用可能ク
ロック信号は、アイソクロナス・エンドポイントに対す
る非同期、同期及び適応モードを含む、利用可能なUS
B同期モードをサポートするために適している。
【0044】USBホスト12とのUSB通信のとき
に、USBインターフェース装置30は、好ましくは、
フル速度(12Mb/秒)データ転送をサポートするU
SBトランシーバ112を含み、異なる入力受信機、異
なる出力装置及びシングル・エンドの2入力バッファを
含む。USBトランシーバ112は、USBバスを介し
てUSBインターフェース装置30により送受信される
データに関するUSBパケット・プロトコル必要条件を
管理するUSB直列インターフェース・エンジン(SI
E)114に接続されている。一般的に、SIE114
は、USBバスを介して受信したパケットをデコードし
てパケット識別子(PID)を検定し、かつ認識し、U
SBバス上に送信すべきパケット用に正しいPIDを発
生する。SIE114により実行された他の受信機能
は、巡回冗長検査(CRC)検定及び直並列変換器を含
み、データ送信用に、SIE114は、CRC値を発生
し、更に並直列変換を行う。SIE114は、USBバ
ッファ・マネジャー(UBM)116と双方向に通信
し、UBM116は、RAMバンク104、106にお
ける適当なUSBエンドポイント・バッファからの読み
出し及びこれに対する書き込みを制御している。この点
で、UBM116は、(USBホスト12からのポーリ
ング・パケットを含んでいる可能性がある)受信パケッ
トに含まれるエンドポイント・アドレスをデコードする
と共に、受信パケットにおけるUSB機能アドレスをデ
コードして、パケットが実際にUSBインターフェース
装置30自体をアドレス指定しているのか否かを判断す
る。サスペンド及びレジューム・ロジック117は、U
SBバス上のサスペンド条件及びレジューム条件を検出
すると共に、SIE114を制御するために設けられて
いる。
【0045】更に他の種々の機能もUSBインターフェ
ース装置30内に設けられている。IC間(Inter
−IC(I2C))コントローラ122は、内部バスB
に接続され、2線直列接続上の他の集積回路との間の通
信をサポートする。I2C通信の1例は、I2Cコントロ
ーラ122の制御により、I2Cポートを介して外部集
積回路からコードRAMバンク104をロードすること
である。汎用ポート・ロジック124は、この例では数
が2つの汎用並列入出力ポートのために内部バスBをイ
ンターフェースする。タイマ126は、USBインター
フェース装置30の動作を制御するために設けられてい
る。リセット及び割り込みロジック128は、種々の割
り込み条件及びリセット条件を監視してMCU100の
ために割り込み及びリセット制御を行う。加えて、非同
期RAM130により、例えば、専用のRAMインター
フェースによりDSP機能32に外部的にアクセス可能
な付加的な内部メモリが設けられている。この専用化さ
れたインターフェースは、非同期RAM130がUSB
インターフェース装置30のUSB機能から独立し、か
つ非アイソクロナスに読み出し及び書き込みするのを可
能にする。
【0046】前述のUSBインターフェース機能がテキ
サス・インスツルメンツ(株)から入手可能なTUSB
3200 USBインターフェース装置と実質的に共通
し、かつ図2のUSBインターフェース・モジュール4
0に実際上で対応していることに加えて、本発明の好ま
しい実施例によるUSBインターフェース装置30は、
DSPインターフェース及びATM加速ロジック12
0、VBUS・HPIFブリッジ118、及びこの例で
はDSP機能32を含み、全ての同一の集積回路装置に
集積されている。代わって、以上で述べたように、US
Bインターフェース装置30は、多数の集積回路装置に
より実施されてもよい。
【0047】DSPインターフェース及びATM加速ロ
ジック120は、USBバスを介してUSBホスト12
から受信したデータを処理してVBUS・HPIFブリ
ッジ118を経由してDSP機能32に渡し、逆に、D
SP機能32から受け取ったデータを処理してUSBバ
スを介してUSBホスト12に伝送する。DSPインタ
ーフェース及びATM加速ロジック120の構成及び動
作は、以下で更に詳細に説明される。以上で述べたよう
に、VBUS・HPIFブリッジ118は、16ビット
又は32ビット・モードにおいてDSP機能32のオン
チップ・メモリに対する読み出し及び書き込みをサポー
トする。図2を再び参照すると、DSPインターフェー
ス及びATM加速ロジック120は、VBUS・HPI
Fブリッジ118と協働して、USBインターフェース
装置30内でUSB・DSPコントローラ42の機能を
実施する。
【0048】ここで図4を参照し、本発明の好ましい実
施例によるDSPインターフェース及びATM加速ロジ
ック120の構成を以下説明する。図4に示すように、
DSPインターフェース及びATM加速ロジック120
内の多重コントローラは、内部バスBに接続されている
(図3)。USBインターフェース装置30を外部モデ
ム14に実施した本発明のこの実施例によれば、DSP
インターフェース及びATM加速ロジック120は、A
TM送信コントローラ132及びATM受信コントロー
ラ134を含む。これらATM送信コントローラ132
及びATM受信コントローラ134は、それぞれ、内部
バスBとコントローラ140との間に接続されると共
に、それぞれATMセグメンテーション及び再アッセン
ブリを実行するために利用される。本発明によるATM
送信コントローラ132の構成及び動作は、以下で更に
詳細に説明される。ATM受信コントローラ134の構
成及び動作は、ここで同様に譲り受け、2000年2月
18日に出願された同時出願番号第09/507、24
9号に詳細に説明されており、ここに、この引用により
組み込まれる。
【0049】加えて、ホスト・インターフェース・コン
トローラ135は、内部バスBとコントローラ140と
の間で双方向に接続され、一方、コード・オーバレー・
コントローラ136は、内部バスBからコントローラ1
40に(DSP機能32用のプログラム命令に対応す
る)データを単方向に通信する。本発明の好ましい実施
例によれば、各ATM送信コントローラ132、ATM
受信コントローラ134、ホスト・インターフェース・
コントローラ135、及びコード・オーバレー・コント
ローラ136は、MCU100(図3)に対するインタ
ーフェースを含み、これにより、ATM送信コントロー
ラ132、ATM受信コントローラ134、ホスト・イ
ンターフェース・コントローラ135、及びコード・オ
ーバレー・コントローラ136は、共有メモリ44に
(例えば、図3の実施のRAMバンク106に)対応し
て割り付けられたUSBエンドポイント・バッファを指
すように構成される。
【0050】コントローラ140は、ATM送信コント
ローラ132、ATM受信コントローラ134、ホスト
・インターフェース・コントローラ135、コード・オ
ーバレー・コントローラ136により(USBインター
フェース装置30に対して外部の装置への「仮想」バス
に見える)バスVBusにアクセスされ、更に、バスV
Bus上のスレーブとしてVBUS・HPIFブリッジ
118及び内部レジスタ138に対するアクセスを可能
にする。特に、コントローラ140は、ATM送信コン
トローラ132、ATM受信コントローラ134、ホス
ト・インターフェース・コントローラ135、コード・
オーバレー・コントローラ136がマスタ・バスVBu
sに要求を発行したことに応答して、任意の機構により
バスVBusに対するアクセスを許可するように動作す
る。更に、内部レジスタ138のバンクは、バスVBu
s上のスレーブとしてコントローラ140と通信し、D
SPインターフェース及びATM加速ロジック120
と、その機能モジュールに関する構成データを記憶す
る。エンドポイント・バッファ情報は、好ましくは、A
TM送信コントローラ132、ATM受信コントローラ
134、ホスト・インターフェース・コントローラ13
5、コード・オーバレー・コントローラ136のそれぞ
れに対して内部的に構成される。この構成情報は、更
に、DSPインターフェース及びATM加速ロジック1
20の動作に適当な他の構成及びステータス情報を含め
ることができる。例えば、AMT構成レジスタ139
は、外部モデム14がDSL音声帯域モードにより動作
すべきか否かを示す書き込み可能ステートを含む。
【0051】VBUS・HPIFブリッジ118は、D
SP機能32に接続されたバスと、ATM送信コントロ
ーラ132、ATM受信コントローラ134、ホスト・
インターフェース・コントローラ135、コード・オー
バレー・コントローラ136にアクセス可能な内部バス
VBusとの間のブリッジ(bridge)として効果
的に動作する。例えば、テキサス・インスツルメンツ
(株)から入手可能なTMS320C6201ディジタ
ル信号プロセッサ(DSP)の場合のように、USBイ
ンターフェース装置30がDSP機能32のホスト・ポ
ート・インターフェース(HPIF)によりインターフ
ェースされているときは、VBUS・HPIFブリッジ
118は、そのインターフェースに対するブリッジとし
て効果的に動作し、通信されたデータ信号をバスVBu
s上の信号からホスト・ポート・インターフェースのバ
ス・プロトコルに適当なフォーマットにフォーマット
し、かつ変換する。
【0052】本発明の好ましい実施例によれば、DSP
インターフェース及びATM加速ロジック120は、更
に、優先順位スケジューラ137を含む。優先順位スケ
ジューラ137は、特に、共有メモリ44におけるその
エンドポイントの選択において、ATM送信コントロー
ラ132を制御して通信機能上でセグメンテーションさ
れて送信されるべきデータを取り出すロジックである。
優先順位スケジューラ137の特定の構造は、USBイ
ンターフェース装置30により取り扱われるべき送信の
複雑さ及び性質に従ってもよく、これは、IP通信プロ
トコルのようなコネクションレス送信であっても、又は
ATM即ち他のコネクション型通信であってもよい。ス
ケジューリング・タスクが比較的に簡単なときは、優先
順位スケジューラ137は、コントロール・レジスタに
より構成可能な順序ロジックとして実施されてもよい。
種々のQoSカテゴリ間のスケジューリング通信におい
て見られるように、スケジューリング機能がいくらか複
雑なときは、優先順位スケジューラ137は、外部モデ
ム14の初期化においてUSBホスト12からダウンロ
ードされたファームウェア・プログラムラマブル・ロジ
ックとして実施されてもよい。
【0053】ここで図5を参照して、本発明の好ましい
実施例によるATM送信コントローラ132の構造を説
明する。図5に示すように、ATM送信コントローラ1
32び動作ロジックは、主としてステート・マシン、即
ち送信ステート・マシン250、セグメンテーション・
ステート・マシン260、及びVBusステート・マシ
ン270により実現され、それぞれは、好ましくは、順
序ロジックにより実施される。これは、当該技術分野に
習熟する者がこの明細書を参照することにより、ここで
説明した機能を実行するように、かつ特定的な実現に適
合して、送信ステート・マシン250、セグメンテーシ
ョン・ステート・マシン260、VBusステート・マ
シン270を容易に実施できることを意図している。
【0054】送信ステート・マシン250は、USBイ
ンターフェース装置30内の内部バスBに接続されて共
有メモリ44内の(図3の実施例では、RAMバンク1
06に存在する)送信エンドポイント240との通信を
制御する。本発明の好ましい実施例によれば、多重送信
エンドポイント240が共有メモリ44に設けられると
共に、各エンドポイントがQoSカテゴリに対応してい
る。バンド幅が保証されていないQoSに対応している
これらのアイソクロナス・エンドポイント240は、好
ましくは、バルクUSBエンドポイントである。当該技
術分野で知られているように、バルクUSBエンドポイ
ントは、通常のFIFO方式(例えば、一対の「ピンポ
ン」バッファ又は融通の効くFIFO構造)による1以
上の64バイト・バッファにより実施される。
【0055】他方、アイソクロナス形式にあるエンドポ
イント240との間で高優先順位で保証バンド幅転送の
通信が行われる。共有メモリ44は、対の形式のバッフ
ァにより、又は融通性のバッファ構造を使用してアイソ
クロナスのエンドポイント240を実施してもよい。い
ずれの場合においても、バッファは、スケジューラが与
えられたサービス期間で保証ビット速度をサポートする
のに十分な容量を有する必要がある。サービス期間は、
定義により、指定量のアイソクロナス・データを期待す
る期間である。例えば、音声データに対するサービス期
間は、その場合によるが、20パケットのデータを送信
又は受信しようとするには、20ms程度となる。ある
固定期間内で、ある固定量のデータに必要な条件は、ア
イソクロナス転送によるデータ転送速度を意味し、更に
対応するアイソクロナス・エンドポイント240用に複
数バッファ対の容量を意味する。4バイト・サンプルに
よる44.1KHzサンプリング速度で動作するUSB
スピーカ20(図1a及び図1b)に対する音声データ
転送の例のときは、エンドポイント240におけるバッ
ファ対は、(3Kバイトを超えた)比較的大容量のもの
になり得ると思われる。
【0056】本発明の好ましい実施例によれば、エンド
ポイント240は、特定の通信に関連した優先順位及び
クラスのサービスに従って、バルク形式及びアイソクロ
ナス転送形式に割り付けられてもよい。本発明の好まし
い実施例による外部モデム14のネットワーク通信機能
を実行する際に、これらエンドポイント240の割り付
け及びアクセスを以下で更に詳細に説明する。
【0057】外部モデム14による通信機能を介して最
終的な送信用のエンドポイント240の読み出しは、送
信ステート・マシン250により処理される。送信ステ
ート・マシン250は、エンドポイント構成レジスタ2
42の内容に基づくアドレスによって共有メモリ44を
アクセスし、このエンドポイント構成レジスタ242
は、共有メモリ44におけるエンドポイント240のベ
ース・アドレスによってMCU100により書き込まれ
る。共有メモリ44における与えられたエンドポイント
240のときは、カレント・バッファ・ポインタ244
は、今、データを読み出しているFIFOバッファを表
し、またバッファ・バイト・カウンタ246は、FIF
Oバッファ内の現在のバイト位置を表す。バッファ・バ
イト・カウンタ246は、更に、USBバッファ・マネ
ジャー(UBM)116(図3)によるハンドシェーク
動作で使用される。
【0058】本発明の好ましい実施例によれば、優先順
位スケジューラ137は、共有メモリ44内の特定的な
エンドポイント240を選択し、このエンドポイント2
40は、通信データの受信及び処理において送信ステー
ト・マシン250によりアクセスされることになる。エ
ンドポイント240の選択は、構成に基づいて確立され
るQoSカテゴリに従って、かつ関連した優先順位機構
に従って、優先順位スケジューラ137により実行され
る。本発明によれば、これらの優先順位機構は、コネク
ション型機構及びコネクションレス型機構の両方におい
て、種々の代替により実施されてもよい。以下、これら
形式のQoS優先順位機構をそれぞれ説明する。
【0059】コネクションレス優先順位に基づく送信 図6Aは、第1の本発明の好ましい実施例により、送信
ステート・マシン250と優先順位スケジューラ137
とを組み合わせた共有メモリ44のエンドポイント24
0の構造を示す。本発明のこの実施例において、USB
インターフェース装置30により転送される通信は、コ
ネクションレス形式によっている。当該技術分野におい
て知られているように、IPプロトコルは、コネクショ
ンレス式で動作し、そのような機能は、ATMQoSカ
テゴリに従属しない。しかしながら、これは、いくつか
のアプリケーションにおいて、一定の送信に他より高い
優先順位を与える優先順位機構に従ってコネクションレ
ス通信を実行するときには、有用である。例えば、FT
Pファイル転送による長いファイルのダウンロードに
は、比較的に低い優先順位を割り付け、一方、短いバー
スト・メッセージ通信には高い優先順位を与えてもよ
い。
【0060】図6Aに示すように、共有メモリ44内の
エンドポイント240は、異なるレベルの優先順位が割
り付けられる。この例において、エンドポイント240
0 は最高優先順位(優先順位レベル0)を有し、エンド
ポイント2401 は次の優先順位レベル(優先順位レベ
ル1)を有し、以下同様に続く。これらの優先順位レベ
ルは、優先順位スケジューラ137が送信ステート・マ
シン250を制御するために、特に送信ステート・マシ
ン250を制御する際に使用されて、内部バスBに、カ
レント優先順位機構に従って読み出すべきエンドポイン
ト240のうちの1つに対応したメモリ・アドレスを与
える。この例における優先順位スケジューラ137は、
順序ロジックとして実施され、これをMCU100によ
りコントロール・レジスタ139に書き込まれた構成情
報に従って構成することができる。これに代わるものと
して、例えば、USBバスに接続された場合に外部モデ
ム14を初期構成するときは、USBホスト12により
この構成情報をコントロール・レジスタ139に書き込
み、共有メモリ44内のコントロール・エンドポイント
に対してコントロール転送を実行してもよい。
【0061】動作において、送信ステート・マシン25
0及び優先順位スケジューラ137は、特定のアプリケ
ーションに従って、多数の優先順位機構のうちの1つに
よりコネクションレス送信のトラヒック成形を実行する
ことができる。図7Aは、比較的に簡単な優先順位機構
の1例を示しており、全てのコントローラ140は、バ
ルク・エンドポイントとして構成されるが、しかしそれ
ぞれは異なる優先順位レベルが割り付けられる。当該技
術分野において知られているように、USBバルク転送
に本質的に与えられた時間、即ちデータ速度の制約はな
い。従って、図7Aの優先順位機構は、非リアル・タイ
ム・データのコネクションレス通信にうまく適合する。
このような通信の例には、周知のIPプロトコルを使用
したファイルのダウンロード及び電子メール通信が含ま
れる。
【0062】図7Aの優先順位機構は、優先順位スケジ
ューラ137により管理されており、これは、送信ステ
ート・マシン250に指示されたアクセスを実行するよ
うに命令を出す。USBフレーム内のデータ送信は、処
理150から開始し、ここで、優先順位スケジューラ1
37が最高優先順位送信に関連したエンドポイント24
0 を選択し、送信ステート・マシン250を制御して
このエンドポイント2400 のステータスをポーリング
する。ポーリング処理150の結果として、送信ステー
ト・マシン250は、判定150を実行してエンドポイ
ント2400 が未だ読み出していないデータを含むか否
かを判断する。このようなデータは、ホスト(DSPイ
ンターフェース及びATM加速ロジック)120により
バルク転送を経由してエンドポイント2400 に最近書
き込まれたものである。その通り(判定151がイエ
ス)のときは、送信ステート・マシン250は、処理1
52において、カレント・バッファ・ポインタ244の
現在内容とバッファ・バイト・カウンタ246との組み
合わせにより、エンドポイント構成レジスタ242内の
メモリ・アドレスを使用して、エンドポイント2400
からUSBパケットを読み出す(図5)。次いで、制御
を、再び最高優先順位のエンドポイント240 0 を調べ
るポーリング処理150に戻して、処理を反復する。
【0063】図7Aの読み出し処理中に、エンドポイン
ト2400 に書き込まれる新しいデータを含め、未だ読
み出していないデータが存在する限り、アクセスは、こ
の優先順位機構に従ってその最高優先順位のエンドポイ
ント2400 まで続く。ポーリング処理150がエンド
ポイント2400 内に未だ読み出していないデータが存
在していると判断する(判定151がノーになる)と、
処理154において、優先順位スケジューラ137及び
送信ステート・マシン250は、次の最高優先順位のエ
ンドポイント2400 をポーリングする。次いで、判定
155は、このエンドポイント2401 に未だ読み出し
ていないデータが存在するか否かを判断する。その通り
(判定155がイエス)のときは、送信ステート・マシ
ン250は、エンドポイント2401 からデータ・パケ
ットを読み出す処理156を実行する。
【0064】本発明のこの実施例によれば、あらゆる
(例えば、処理125、156により)エンドポイント
240を読み出すと、制御を処理150に戻し、最高優
先順位のエンドポイント2400 をポーリングして調
べ、新しいデータがこれに書き込まれたか否かを判断す
る。このようにして、場合によるが、それよりも高優先
順位のエンドポイント2400 〜240n-1 が未だ読み
出していないデータが存在しないというときにのみ、低
優先順位のエンドポイント2401 〜240n をポーリ
ングして、読み出す。これに代わるものとして、必要な
らば、優先順位スケジューラ137は、特定の期間(例
えば、USBフレーム、又はいくらか短いサービス区
間)が過ぎるまでは、未だ読み出していないデータがあ
る限り、高優先順位のエンドポイント2400〜240
n-1 をポーリングするために戻ることなく、低優先順位
のエンドポイント2401〜240n 内に制御を保持し
てもよい。更に、当該技術分野に習熟する者には、この
明細書を参照することにより、他の代替的な優先順位機
構が明らかとなる。
【0065】図7Aの例に戻り、送信ステート・マシン
250がエンドポイント2401に未だ読み出していな
いデータが存在すると判断した(判定155がノーの)
ときは、制御が処理158に行き、次の優先順位のエン
ドポイント2402をポーリングし、判定159におい
て、そのステータスを調べる。高い優先順位の場合のよ
うに、当該次のエンドポイント2402に未だ読み出し
ていないデータが存在する(判定159がイエスの)と
きは、処理160において、送信ステート・マシン25
0により、パケットを読み出し、制御を処理150に戻
す。未だ読み出していないデータが存在しない(判定1
59がノーの)ときは、処理162において、次の優先
順位エンドポイント2403 をポーリングし、同様の質
問及び読み出し動作を行う。次いで、この処理は、この
ような形式により、コネクションレス・ネットワーク送
信が許容されるように構成される全てのエンドポイント
240に対して実行される。
【0066】図7Aに関して説明したように、バルク・
エンドポイント240を経由して厳密な優先順位機構の
例が実施される。従って、この通信は、(この例におい
て、それが必要とするだけのバンド幅が許容される最高
優先順位の通信を除き)、データ速度が保証されない。
ここで図7Bを参照すると、コネクションレス通信用の
代替的な優先順位機構であって、いくつかの通信が遅延
に敏感であり、かつ共有メモリ44内のアイソクロナス
・エンドポイント240を通って処理される1例を詳細
に説明する。図7Bにおいて、図7Aの例と同一の処理
に対しては、同一の参照番号を使用する。
【0067】この例において、高優先順位のエンドポイ
ント2400及び2401は、アイソクロナス・エンドポ
イントであり、それらは、USBフレーム内の特定サー
ビス期間のように、与えられた期間で固定データ速度で
実行されるべきデータ転送に対応している。低優先順位
のエンドポイント2402〜240n は、バルク・エン
ドポイントであり、このような時間的な制約がない。構
成中は、アイソクロナス・エンドポイント2400及び
2401 により示されるデータ速度を有効にサポートす
るために、USBホスト12及び外部モデム14は、十
分なバンド幅を利用できることを保証しなければならな
い。
【0068】図7Bの優先順位機構は、図7Aの厳密な
優先順位機構と同様であって、処理150により開始
し、送信ステート・マシン250により最高優先順位の
エンドポイント2400 をポーリングする。処理150
において、この方法の初期化は、データ転送速度を測定
する期間がスタートすることにより開始する。このよう
な期間の例には、USBフレーム、及びUSBフレーム
内のサービス期間が含まれる。以上と同様に、判定15
1は、未だ読み出していないデータがエンドポイント2
400 に存在するか否かを判断する。その通り(判定1
51がイエス)のときは、エンドポイント2400 はア
イソクロナス・エンドポイントであるので、優先順位ス
ケジューラ137は、判定165を実行してエンドポイ
ント240 0 に対するデータ速度が現在の期間に適合し
ているか否かを判断する。その通りでない(判定165
がノーの)ときは、現在の期間内でエンドポイント24
0から読み出すべき更なるデータが未だ残っており、
従って処理152において、送信ステート・マシン25
0は、エンドポイント2400 からパケットを読み出
す。次いで、エンドポイント2400 に対する次の質問
のために、制御をポーリング処理150に戻す。
【0069】エンドポイント2400 に未だ読み出して
いないデータが存在しない(判定151がノーの)と
き、又は現在の期間のエンドポイント2400 に関する
データ速度を満足させた(判定165がイエスの)とき
は、処理154において、送信ステート・マシン250
は、次の優先順位のエンドポイント2401 をポーリン
グし、判定155を実行して未だ読み出していないデー
タが存在するか否かを判断する。再び、エンドポイント
2401 が本発明のこの実施例におけるアイソクロナス
・エンドポイントであるので、未だ読み出していないデ
ータが存在する(判定155がイエスの)ときは、判定
169において、優先順位スケジューラ137は、現在
の期間がデータ速度に適合しているか否かを判断する。
その通りでない(判定169がノーの)ときは、処理1
56において、送信ステート・マシン250は、エンド
ポイント2401からパケットを読み出し、(最高優先
順位のエンドポイント2400向けられた)処理150
をポーリングするために、処理を戻す。しかしながら、
現在の期間がデータ速度に適合している(判定169が
イエスの)ときは、エンドポイント2400 に未だ読み
出していないデータが存在していても、処理158にお
いて、送信ステート・マシン250は、優先順位機構に
おける次のエンドポイントをポーリングする。
【0070】エンドポイント2400及び2401に関す
る判定165及び169において、データ速度完了の判
断をそれぞれ評価する期間は、互いに一致する必要はな
い。実際には、異なる形式、更にはプロトコルの送信に
対しても、アイソクロナス・エンドポイントを使用する
ことができ、そのような機能において、通信のデータ速
度要求が異なる可能性があることを意図している。
【0071】再び図7Bを参照すると、次の優先順位エ
ンドポイント2401 が未だ読み出していないデータが
存在しない(判定155がノーの)ときは、又はそのデ
ータ速度に適合する(判定169がイエスの)ときは、
処理158において、次の優先順位のエンドポイント2
402 をポーリングする。この例において、エンドポイ
ント2402 及び残りの低優先順位のエンドポイント2
403〜240n は、遅延許容トラヒックにより使用す
るバルク・エンドポイントである。次いで、ポーリング
処理158、判定159及び読み出し処理160は、前
述のようにして送信ステート・マシン250により実行
されると共に、ポーリング処理162、及び未だ低優先
順位のエンドポイント240に対して同様の処理が適切
に実行される。
【0072】以上で述べたように、本発明は、ここで図
7A及び図7Bに関連して説明したものに加えて、他の
優先順位機構を代替的に実行されてもよいことを意図し
ている。このような他の優先順位機構の例は、ファース
ト・イン・アースト・アウト(FIFO)キュー機構、
重み付けキュー機構、及びラウンド・ロビン機構を含
む。当該技術分野に習熟する者にとって、この明細書を
参照することにより、このような優先順位処理を容易に
実施できることを意図している。
【0073】いずれにしろ、この例において、送信ステ
ート・マシン250によりエンドポイント240から読
み出されるデータ・パケットは、セグメンテーション・
ステート・マシン260及びVBusステート・マシン
270を介してDSP機能32に転送される。ATM送
信コントローラ132のこれらの機能により実行される
処理は、特定の通信プロトコル、更には、セグメンテー
ション及び同様の処理がATM送信コントローラ132
内で実行すべき範囲に依存している。以下、ATMパケ
ットのセグメンテーション及び送信においてセグメンテ
ーション・ステート・マシン260及びVBusステー
ト・マシン270の動作例を詳細に説明する。
【0074】これら優先順位機構例にそれぞれ示されて
いるように、本発明の第1の好ましい実施例によれば、
本発明は、USB機能の共有メモリ内のエンドポイント
をアクセスする順序をスケジュール化することによっ
て、トラヒックの成形を実施可能する。このようにし
て、アイソクロナス・データ転送を使用することにより
得られる保証データ速度能力により、変動する優先順位
通信を確立することができる。本発明によれば、ホスト
・コンピュータは、データの送信のスケジューリング及
び優先順位化を管理する必要はないが、むしろUSB機
能そのものがこれらのタスクを処理する。従って、US
Bホスト、及びUSBバスの利用における処理効率が高
められる。
【0075】非同期転送モード(ATM)通信 更に、本発明の好ましい実施例によるATM送信コント
ローラ132は、コネクション型通信、例えば非同期転
送モード(ATM)プロトコルによるものに対するサー
ビス品質(QoS)管理を実施することができる。以上
で述べたように、また当該技術分野において周知のよう
に、ATMトラヒック管理ルーチンは、サービスの種々
のカテゴリに従ってバンド幅を割り付ける。これらのカ
テゴリは、「トラヒック契約」によって接続上で確立さ
れる。与えられたATM仮想パス(VP:Vertic
al Pass)及び仮想接続(VC:Vertica
lConnection)に関するトラヒック契約は、
その接続に関するQoSパラメータを指定する。これら
のパラメータは、ピーク・セル速度(PCR:Peak
Cell Rate)、セル転送遅延(CTD:Ce
ll Transfer Delay)、セル遅延変形
(CDV:Cell Delay Variatio
n)、維持可能セル速度(SCR:Sustainab
le Cell Rate)、最大バースト・サイズ
(MBS:Maximum BurstSize)等の
ような値を含む。全てのパラメータが各QoSカテゴリ
に関連するわけではない。
【0076】ATMサービスの最高優先順位カテゴリ
は、送信が「保証された」一定のデータ速度で実行され
る一定ビット速度(CDV:Constant Bit
Rate)通信である。この保証データ速度は、この
CBR接続に専用される固定量即ちスタティク量のバン
ド幅に対応する。従って、CSR接続は、専用回線に類
似している。CBRチャネルに割り当てられたバンド幅
は、ピーク・セル速度(PCR)パラメータの値により
特徴付けられる。CBR通信のソースは、任意の期間中
にこのPCR値により又はこれ以下で、セルを送出でき
る。即ち、CBR接続は、十分なバンド幅がこれら送信
セルに対して存在することを保証する。従って、CBR
通信は、音声、映像及び回路エミュレーション・サービ
ス(CES:Circuit Emulation S
ervice)のように、厳しいタイミング制御及びパ
フォーマンス・パラメータを必要とするサービスに適し
ている。
【0077】可変ビット速度(VBR:Variabl
e Bit Rate)カテゴリは、更に、時間に対し
て敏感なアプリケーションに使用される。VBR通信
は、セル送信速度が時間によって変動する可能性があ
り、そのような機能において、更にVBR通信に割り当
てられたバンド幅も時間により変動し得るCBRと相違
する。ネットワークは、通信がピーク・セル速度(PC
R)、維持可能セル速度(SCR)、及び最大バースト
・サイズ(MBS)から来る一定の限界内に保持される
ことを保証することにより、VBR通信の時間に対する
敏感さを維持する。VBRサービスは、2つのサブカテ
ゴリ、即ちリアル・タイムVBR(rt−VBR)及び
ノン・リアル・タイムVBR(nrt−VBR)を含
む。これらのカテゴリは、nrt−VBRがセル遅延、
及びセル遅延の変動について比較的に緩やかな制約を有
し、従ってrt−VBRよりもバースト性がある。ボイ
ス・オバーATM通信及びいくつかのマルチメディア通
信は、rt−VBR用の典型的なアプリケーションであ
り、一方、nrt−VBRは、インタラクティブ・トラ
ンザクション処理、及びフレーム・リレー・インターネ
ットワーキングに適している。
【0078】利用可能ビット速度(ABR)サービス・
カテゴリは、ネットワーク条件によりそれらのデータ速
度を変更可能な送信源に有用である。このようにして、
ABRトラヒックは、バンド幅が利用可能になるに従っ
てそれらのデータ速度を増加することができるが、ネッ
トワークが必要とするのであれば、データ速度を低下さ
せる。しかしながら、一定の送信パラメータは、トラヒ
ック契約において指定されるので、各ABR接続は、ピ
ーク・セル速度(PCR)と最小セル速度(MCR)と
の間で受け入れ可能な値の範囲内で動作する。当該技術
分野においては、ABR接続中にバンド幅を公正に割り
当てるための通常の多数のフロー制御アルゴリズムが知
られている。ABR接続が許容する柔軟性は、このサー
ビス・カテゴリを極めて経済的にすることを可能にす
る。ABRサービスに好適なアプリケーション例は、多
くのLANインターネットワーキング・サービスと、バ
ンキング・サービスのような臨界的なデータ転送と、ス
パーコンピュータ・アプリケーションと、リモート手順
呼び出し、分散ファイル・サービス及びコンピュータ処
理のスワッピング及びページングのようなデータ通信ア
プリケーションとを含む。
【0079】最低優先順位のサービス・カテゴリは、ネ
ットワークがネットワーク条件に従って「最善の努力」
方法によりデータを搬送する無指定ビット速度(UB
R)である。UBR通信に関するトラヒック速度は保証
されおらず、従ってセル転送遅延又はセル損失比に対し
て責任を負わない。リモート端末通信、テキスト転送、
メッセージ・サービス及びファイル検索アプリケーショ
ンは、この最小拡大サービス・カテゴリを利用すること
ができる。
【0080】ここで図6Bを参照して、本発明の第2の
好ましい実施例による送信ステート・マシン250、及
び優先順位スケジューラ137に関連する共有メモリ4
4内のエンドポイント240’の構成を以下説明する。
本発明の第2の好ましい実施例は、多数のATMQoS
カテゴリをエンドポイント240’の選択及びアクセス
に対する実施を例示している。この例において、エンド
ポイント240’0 は、第1のCBR仮想接続と関連し
たアイソクロナス・エンドポイントである。エンドポイ
ント240’1 は、第2のCBR仮想接続と関連したア
イソクロナス・エンドポイントであり、この実施例によ
れば、この接続は、低データ速度接続である。バルク・
エンドポイント240’2 は、VBR仮想接続に関連さ
れている。他のバルク・エンドポイント240’は、バ
ルク・エンドポイント240’nまで他の低優先順位の
接続に関連されてもよく、この場合に、これは、UBR
仮想接続に関連されている。
【0081】当該技術分野において周知であると同時
に、これら多重QoSサービス・カテゴリに従って外部
モデム14を通る送信のスケジューリングは、接続が確
立され、また開放されるので、時間により変動する傾向
がある。更に、送信をスケジュールする接続当たりのパ
ラメータ及び制約数は、図6A、図7A及び図7Bに関
連して以上で説明した優先順位機構に比較して、通信の
優先順位化を複雑にする。従って、本発明の第2の好ま
しい実施例によれば、優先順位スケジューラ137は、
好ましくは、プログラマブル・ロジックとして実施され
る。優先順位スケジューラ137のパラメータ及び動作
は、好ましくは、外部モデム14の初期化及び動作にお
いてUSBホスト12からファームウェア・ダウンロー
ドを経由して構成可能な、プログラム・メモリ(RAM
バンク)104に記憶したプログラム命令及びパラメー
タにより、確立される。
【0082】明確にするために、この例において、AB
R通信は、ATM送信コントローラ132により確立さ
れる。しかしながら、当該技術分野に習熟する者にとっ
て、ABR通信に対する本発明の好ましい実施例のアプ
リケーションは、この明細書を参照することにより、容
易に明らかとなることを意図している。この点から更
に、このようなABR通信は、このクラスのサービスに
従ってQoSカテゴリの使用を考慮している本発明の利
点となることを意図している。
【0083】本発明の第2の実施例によれば、適当なエ
ンドポイント240’の選択は、送信されたUSBパケ
ットからATMセルのセグメンテーションと実質的に別
個の処理である。特に、優先順位スケジューラ137
は、送信ステート・マシン250と連係して、通信され
るべく構成されたQoSカテゴリに従ってエンドポイン
ト240’のうちの1つを選択するように動作し、一
方、セグメンテーション・ステート・マシン260は、
送信ステート・マシン250と連係して動作し、選択さ
れたエンドポイント240’から通信されたデータを抽
出すると共に、ATMセルに読み出しデータをフォーマ
ットして通信設備を介して送信する。
【0084】以下の説明は、セグメンテーション動作に
より適当なエンドポイント240’を選択するために使
用される方法を個別的に説明する。図8は、適当なエン
ドポイント240のスケジューリング及び選択方法を示
し、また図9及び図10は、セグメンテーション動作を
示す。
【0085】まず図8を参照して、以下、本発明の好ま
しい実施例により、多数のQoSカテゴリ用のATM通
信をスケジュールする際のATM送信コントローラ13
2の動作を詳細に説明する。本発明のこの実施例におい
て、ATMQoSデータ送信パラメータを含む優先順位
機構に従って、エンドポイント240’をポーリングし
てアクセスする。
【0086】図8に示す動作の進行に先立ち、現在の仮
想接続用のQoSパラメータは、RAMバンク104に
対して、又はATM送信コントローラ132内の構成レ
ジスタ272に対して実行される書き込み動作により、
優先順位スケジューラ137に通信される。新しい接続
を確立又は切断するときに、これらのパラメータは、更
新又は変更される。加えて、通信設備を介してネットワ
ークから受信されるリソース管理(RM)ATMセル
は、QoSパラメータを調整できる応答により、現在の
ネットワーク条件に関する情報を通信する。例えば、図
5を参照すると、ATM送信コントローラ132におけ
る構成レジスタ272の内容は、RMセルから、そのス
ケジューリングにおいて優先順位スケジューラ137に
より使用される新しい値によって、更新可能とされる。
【0087】優先順位スケジューラ137が追従する特
定のスケジューリング・アルゴリズムは、通常のATM
トラヒック管理装置により使用されるものによってもよ
い。例えば、優先順位スケジューラ137により実行さ
れるスケジューリング・アルゴリズムは、テキサス・イ
ンスツルメンツ(株)から得られるTNETA1585
ATMトラヒック管理スケジューラ装置により実行さ
れるものに対応してるといってもよい。そこで、共有メ
モリ44内のエンドポイント240’をアクセスする際
に、特定のATMスケジューリング・アルゴリズムの結
果を使用して送信ステート・マシン250を制御し、ス
ケジュールされた送信を実行する。図8のフロー・チャ
ートは、このような制御の一例であって、ここで、図6
Bに示すような2CBRチャネル、即ち一つがABRチ
ャネル、もう一つがUBRチャネルの例について説明す
る。
【0088】USBフレーム又は他の期間が開始する
と、本発明の第2の好ましい実施例による図8の処理
は、判定181から開始し、優先順位スケジューラ13
7は、アイソクロナス・エンドポイント240’0 に関
連した第1のCBRチャネル(CBR0)に対して保証
されたデータ速度が現在の期間で既に満足されているか
否かを判断する。判定181は、以上で述べたように、
アイソクロナス・エンドポイント240’0 に対応した
仮想チャネルCBR0に関するピーク・セル速度(PC
R)を使用して、優先順位スケジューラ137により実
行されたスケジューリング・アルゴリズムに基づいてい
る。データ速度が未だ満足されていない(判定181が
ノーの)ときは、優先順位スケジューラ137により判
定183を実行し、送信ステート・マシン250に共有
メモリ44内のアイソクロナス・エンドポイント24
0’0 をポーリングして、このアイソクロナス・エンド
ポイント240’0 に未だ読み出していないデータが存
在するか否かを判断する。判定183は、図7Aに関連
して別個的に説明したポーリング処理及び判断処理を挿
入的に包含している。判定183がイエスに戻ると、処
理184において、優先順位スケジューラ137がエン
ドポイント240’0 を選択して、図9及び図10に関
連して以下で説明する動作により、この位置から送信ス
テート・マシン250及びセグメンテーション・ステー
ト・マシン260によるATMセルのフェッチを待機す
る。このアクセスに続き、制御が判定181に戻り、仮
想チャネルCBR0の更なる処理をする。
【0089】チャネルCBR0のためのデータ速度に適
合する(判定181がイエスの)場合、又はエンドポイ
ント240’0 に未だ読み出していないデータが存在す
る(判定183がノーの)場合は、優先順位スケジュー
ラ137は、判定185を評価して次の優先順位の仮想
チャネルCBR1に対するデータ速度が現在期間上で満
足されたか否かを判断する。チャネルCBR1に対する
データ速度が未だ満足されていなかったときは、優先順
位スケジューラ137及び送信ステート・マシン250
は、判定187を実行してチャネルCBR1に関連され
るエンドポイント240’1 に存在するか否かを判断す
る。その通り(判定187がイエスの)ときは、送信ス
テート・マシン250は、処理188を実行してエンド
ポイント240’1 を選択し、かつその位置からATM
パケットのフェッチを待機する。このアクセスを完了す
ると、制御を判定181に戻して、チャネルCBR0を
調べて処理する。他方、チャネルCBR1が現在の期間
に関してそのデータ速度を満足した(判定185がイエ
スの)とき、又はエンドポイント240’1に未だ読み
出していないデータが存在する(判定187がノーの)
ときは、制御が判定189に行き、バルク・エンドポイ
ント240’2 〜240’n において残りのVBRチャ
ネル及びUBRチャネルの処理をする。
【0090】チャネルCBR0がチャネルCBR1の前
にサービスされるこの場合に、チャネルCBR1は、好
ましくは、チャネルCBR送信に対応する両チャネルに
拘わらず、チャネルCBR0のものよりデータ速度が低
い。これに代わるものとして、CBR0、CBR1及び
これらに対応するアイソクロナス・エンドポイント24
0’0〜240’1は、結果に関係なく、チャネルCBR
1の処理を介在させる形式でチャネルCBR0を処理す
る度に発生する判定185、187及び処理188によ
って処理されてもよい。これに代わる解決方法では、チ
ャネルCBR0、CBR1の両方に対して、対応するデ
ータ速度が満足されたとき、又はアイソクロナス・エン
ドポイント240’0〜240’1 に未だ読み出してい
ないデータが存在しないときにのみ、バルク・エンドポ
イント及びVBR/UBRチャネル(また、もし存在す
るときは、ABRチャネル)の処理を開始する。これら
の構造及び代替的な他の構造は、当該技術分野に習熟す
る者にとって、この明細書を参照することにより明らか
となることを意図している。
【0091】いずれにしろ、十分なバンド幅が保証され
た全てのデータ速度チャネルをサービスするために利用
可能なことを外部モデム14が保証することが重要であ
る。
【0092】図8を再び参照すると、優先順位スケジュ
ーラ137は、まず現在のVBRチャネルがそのデータ
速度を満足させたか否かを判断する。この例において、
その通りのときは、制御が判定193に行き、UBRデ
ータを処理する。現在のVBRチャネル・データ速度が
まだ満足されていなかった(判定がノーの)ときは、判
定191において、優先順位スケジューラ137は、V
BRチャネルが未だ読み出していないデータが存在する
か否かを判断する。多数のVBRチャネルが(それ自体
のバルク・エンドポイント240’とそれぞれ)現在接
続されているときは、判定189、191において、各
VBRチャネルがポーリングされる。未だ読み出してい
ないデータが存在する(判定191がイエスの)とき
は、送信ステート・マシン250及びセグメンテーショ
ン・ステート・マシン260により処理192を実行し
て適当なVBRエンドポイント(例えば、エンドポイン
ト240’2 )を選択し、かつその位置からデータをフ
ェッチするのを待機し、その後に、制御が判定181に
戻ってCBRチャネルの処理を反復する。本発明の第2
の好ましい実施例によれば、処理192は、実質的に現
在接続されている全てのVBRチャネルのスケジューリ
ングを包含するものであり、このようなスケジューリン
グは通常の技術によって実行される。
【0093】以上で説明したCBR通信及びVBR通信
に代わるものとして又は加えて、ABR送信が実行され
ているときは、ABRチャネルの処理は、ABR標準に
対応するように異なるスケジューリング臨界値によるこ
とを除き、実質的に、VBR通信について説明したもの
に従う。ABRチャネル間のこのような送信スケジュー
リングは、典型的には、公正さアルゴリズムにより実行
されて、1又は数ABRチャネルが利用可能な残りのバ
ンド幅を専有して他のABRチャネルを除外してしまう
のを防止する。このようなスケジューリングは、その処
理を通る度に、特定のABRチャネルに関連したいずれ
のバルク・エンドポイント240’を選択すべきかを優
先順位スケジューラ137が判断することにより、実行
される。
【0094】図6A及び図8の例では、単一のVBRチ
ャネルのみが設けられる。このチャネルは、共有メモリ
44内のバルク・エンドポイント240’2 と関連され
る。共有メモリ44内のバルク・エンドポイント24
0’2に読み出していないデータが存在する(判定19
1がノーの)場合は、UBRチャネルをサービスするこ
とが可能であり、判定193を開始する。この例では、
優先順位スケジューラ137と連係して送信ステート・
マシン250により、判定193を実行し、バルク・エ
ンドポイント240’n をポーリングして未だ読み出し
ていないデータが存在するか否かを判断する。その通り
のときは、処理194において、エンドポイント24
0’n を選択し、セグメンテーション及び送信のために
送信ステート・マシン250及び送信ステート・マシン
250によりアクセスをする。このアクセスを完了した
ときは、又はエンドポイント240’n にUBRデータ
が存在しないときは、制御が判定181に戻り、次の処
理例では、以上で説明したように、CBRチャネルを調
べる処理を再開する。
【0095】本発明の第2の好ましい実施例によれば、
ATM送信のスケジューリング及び送信は、外部モデム
14においてATM送信コントローラ132及び優先順
位スケジューラ137により処理される。この管理は、
エンドポイント240’を選択し、これからATMパケ
ットをフェッチしてセグメンテーション及び送信をする
ことにより実行される。本発明によれば、ATMQoS
スケジューリングがUSB機能により処理されるので、
USBホスト12は、それ自体がATM通信のスケジュ
ーリングから開放されて、サービス中の接続に関連する
共有メモリ44内の適当なエンドポイント240’にA
TMデータを書き込むことのみを必要とするだけであ
る。従って、USBホスト及びUSBバスの両者が効率
的に使用される。
【0096】図5を再び参照すると、ここでは、この引
用により組み込まれるものとする2000年2月18日
出願の同時継続出願第09/507、383号に説明さ
れているように、本発明の第2の好ましい実施例による
エンドポイント240’に書き込まれたATM送信デー
タは、ATMヘッダ情報、更にATMパケット・ペイロ
ードそのものを含む。本発明の実施例によれば、外部モ
デム14は、(エンドポイント240’に書き込まれ
る)64バイトUSBパケットを各セル用のATMヘッ
ダの発生を含む53バイト標準ATMセルにATMセグ
メンテーションすする処理を実行する。更に、USBイ
ンターフェース装置30は、53バイトのセルを充填す
るために必要なATMセルの「パッディング(padd
ing)」を受信して転送し、更にパケットのための適
当な巡回冗長検査(CRC)値を算出して付加をする。
このようにして、USB通信は、ホストがUSBバス上
にATMヘッダの各コピーを転送することを必要とする
ことなく、ペイロード・データを最大サイズ64バイト
USBパケットに連結することにより、より効率化さ
れ、従ってUSBバス上のヌル・バイト量を大きく減少
させる。
【0097】図5に示すように、セグメンテーション・
ステート・マシン260は、送信ステート・マシン25
0に接続され、このようなバイトにより特定のパケット
に適したセグメンテーション動作を実行する。セグメン
テーション・ステート・マシン260の出力データは、
デマルチプレクサ266を経由してバイト・バッファ2
88のうちの適当な一つに転送される。セグメンテーシ
ョン・ステート・マシン260の動作は、ヘッダ・レジ
スタ252、パケット長レジスタ254及びパケット形
式レジスタ256との連係により実行され、それぞれA
TMヘッダの発生に有用な結果を記憶する。セグメンテ
ーション・ステート・マシン260は、更に、CRCロ
ジック258と協働して動作し、CRC計算を実行して
送信されたATMパケットのCRCフィルタを発生す
る。加えて、セル・カウンタ262は、現在のパケット
に対してセグメンテーション・ステート・マシン260
により発生しているATMセル数をカウントし、またバ
イト・カウンタ264は、送信ステート・マシン250
により処理された現在のATMセル内のバイト数をカウ
ントする。
【0098】デマルチプレクサ266は、セグメンテー
ション・ステート・マシン260により処理された各バ
イトを受信してバイト・バッファ268のうちの適当な
一つに転送する。バイト・バッファ268の内容は、V
Busステート・マシン270により32ビット・デー
タ・ワードとして同時的に受信される。VBusステー
ト・マシン270は、ワード・カウンタ274及び送信
コンフィギュレーション・レジスタ272との組み合わ
せにより、バスVBusへ、従ってバスVBus及びV
BUS・HPIFブリッジ118(図3のように存在す
るとき)を介して、DSP機能32(図2)内の送信F
IFO35へ、データ・ワードを送出する動作をする。
【0099】ATM送信コントローラ132は、以上で
引用した同時継続出願第09/507、383号に説明
されているように、多数のフォーマットのうちの一つに
対応する。これらのフォーマットは、AAL1、AAL
2及びAAL3/4プロトコルをサポートすることがで
きるPTIヌルPDUと共に、AAL5及びOAMパケ
ットを含む。更に、通常のATMセルに類似した7バイ
トのヘッダ及び48バイトのデータを有する簡単な53
バイト・パケットからなるトランスペアレントPDUを
処理することもできる。
【0100】ここで、図9を参照すると、外部モデム1
4を介して送信するためにATMセルにUSBホスト1
2により発生したATMパケットのセグメンテーション
を実行する際に、ATM送信コントローラ132及び特
定のセグメンテーション・ステート・マシン260の動
作が説明されている。この動作は、図8に示す処理18
4、188、192、194のうちの1つにより適当な
エンドポイント240’が選択されたときに、実行され
る。これは、本発明のこの実施例によるセグメンテーシ
ョン・ステート・マシン260が一時に単一チャネルの
ATM送信のみの処理に関わることを可能にする。これ
に代わるものとして、多数のセグメンテーション・ステ
ート・マシン260は、希望により、一時に多数のチャ
ネルを処理するように実施されてもよい。
【0101】ATM送信コントローラ132の動作は、
判定281から開始されて、セグメンテーション・ステ
ート・マシン260がバイト・バッファ268の状態を
調べて、他のバイトのパケット・データを転送する位置
が利用可能か否かを判断する。その通りでない(バイト
・バッファ268がフルのために判定281がイエス
の)ときは、セグメンテーション・ステート・マシン2
60は、VBusステート・マシン270がバイト・バ
ッファ268の内容からデータ・ワードを読み出すまで
待機する必要があり、その待機後は判定281がノーの
結果になり、制御が判定283に行くことができる。
【0102】前述したように、VBusステート・マシ
ン270は、独立して、従って、ここで説明したセグメ
ンテーション・ステート・マシン260の動作と同時的
に、DSP機能32の送信FIFO35に送信データを
書き込む。VBusステート・マシン270によるこの
動作は、バスVBusにアクセスを要求することからな
り、かつこのようなアクセスの許可を受信したときに、
送信データ・ワードとしてバイト・バッファ268の内
容を読み出し、次いでバスVBusに送信データ・ワー
ドを送出する。そのような機能により、VBusステー
ト・マシン270は、データを読み出すというよりもバ
スVBusに対してデータを書き込むことを除き、以上
で述べたATM受信コントローラ134のVBusステ
ート・マシン270とほぼ同様に動作する。同様に前述
したように、VBusステート・マシン270は、その
現在のFIFOアドレス276内の現在の送信FIFO
アドレスを保持するので、送信すべきデータ・ワードと
の組み合わせにより正しいメモリ・アドレスを提供する
ことができる。次いで、VBUS・HPIFブリッジ1
18は、このアドレス及びデータ情報をDSP機能32
が理解できるHPIFフォーマットに翻訳する、即ち
「ブリッジ(bridge)」する。前述したように、
VBusステート・マシン270がバイト・バッファ2
68をクリアすると、判定281は、ノーの結果を返
し、次のバイトを処理するためにバイト・バッファ26
8内の空間が利用可能なことを表す。
【0103】判定283において、セグメンテーション
・ステート・マシン260は、送信ステート・マシン2
50との組み合わせにより、エンドポイント240’の
うちの1つに新しいデータが存在し、かつ送信に利用可
能か否かを判断する。従って、判定283は、処理18
4、188、192、194のうちの一つを実行しよう
としている点で図8の処理に対応する。いずれのエンド
ポイント240’もデータを利用できない(判定283
がノーの)ときは、セグメンテーション・ステート・マ
シン260は、このようなデータが現れまで待機しなけ
ればならない。ATMパケットのためにUSBホスト1
2からエンドポイント240’にデータを書き込む時点
では、判定283がイエスの結果を返し、セグメンテー
ション・ステート・マシン260は、判定285の実行
へ進む。この状況は、前述のスケジューリング・ルーチ
ンに従って共有メモリ44におけるエンドポイント24
0’のうちの適当な1つを選択する処理184、18
8、192、194のうちの一つに対応する。
【0104】判定285において、セグメンテーション
・ステート・マシン260は、現在のパケット用にAT
Mヘッダが構成されたか否かを判断する。最初のパケッ
ト情報を受信すると、ATMヘッダは未だ構成されてい
ないことになる。この場合(判定285がノーとなる)
に、セグメンテーション・ステート・マシン260は、
図10に示すように、受信したATMヘッダ及び制御情
報をヘッダ・レジスタ252、254、256にコピー
する。特に、選択したエンドポイント240’から読み
出され、GFC、VPI及びVCI接続情報に対応する
AMTヘッダ情報は、ヘッダ・レジスタ252に記憶さ
れ、パケットの長さに対応する第5及び第6バイトがパ
ケット長レジスタ254に書き込まれ、またパケット形
式に対応する第7バイトがパケット形式レジスタ256
に書き込まれる。レジスタ252、254、256に情
報を記憶することに続き、セグメンテーション・ステー
ト・マシン260は、ATM送信コントローラ132に
よりセグメント化されて転送される各ATMセル用の5
バイトATMヘッダを発生するために必要な情報を保持
する。次に、以下、図10に関連して説明しているよう
に、ヘッダ・バイトをDSP機能32に送信するため
に、制御が処理288に行く。
【0105】前述したように、かつ当該技術分野に習熟
する者に周知のように、通常のATMセル・ヘッダは、
長さが5バイトである。しかしながら、32ビット・デ
ータ・ワードのみがバスVBusを介してHPIF、従
ってDSP機能32に通信される。そのような機能にお
いて、ATMセル・ヘッダの送信は、送信を完成するた
めに2データ・ワードを必要とする。しかしながら、当
該技術分野に習熟する者に周知のように、ATMセル・
ヘッダの第5バイトは、DSP機能32において送信コ
ンバージェンス層により発生されるHECフィールドに
専用される。そのような機能において、セグメンテーシ
ョン・ステート・マシン260が5バイトのATMセル
・ヘッダを発生しなければならないので、このヘッダの
第5バイトは、DSP機能32により処理する前はゼロ
即ちドントケア・バイトである。従って、処理288
は、2パス処理であり、判定311から開始して、セグ
メンテーション・ステート・マシン260は、4バイト
の部分ヘッダがVBusステート・マシン270に既に
送信されたか否かを判断する。その通りでない(判定3
11がノーの)ときは、制御が判定313に行く。
【0106】判定313において、セグメンテーション
・ステート・マシン260は、パケット形式レジスタ2
56に記憶されているパケット形式のATMヘッダ情報
により、現在のパケットがOAMパケットが否かを判断
する。その通り(判定313がイエス)のときは、送信
されたパケットは、単一セル・パケットである。そのよ
うな機能において、制御は処理314に直接行き、セグ
メンテーション・ステート・マシン260は、ATMセ
ル・ヘッダの最初の4バイトをデマルチプレクサ266
を介してバイト・バッファ268に転送する。ATMの
技術分野において知られているように、これら4バイト
は、GFC、VPI、VCI、PTI及びCLPフィー
ルドを含む。次いで、制御は、判定218及び283に
戻ってバイト・バッファ268がクリアされ、かつ次の
エンドポイント240’の選択が処理されるのを待機す
る。
【0107】判定313がOAMパケットでない、即ち
トランスペアレント・パケット(判定313がノー)の
ときは、セグメンテーション・ステート・マシン260
は、判定315を実行して、最後のATMセルが現在の
ATMパケット用に送信されるところか否かを判断す
る。その通り(判定315がイエス)のときは、セグメ
ンテーション・ステート・マシン260により処理31
6を実行して、そのセル用のエンド・オブ・パケットの
インジケータを含むように4バイトのATMヘッダ内の
PTIフィールドを書き改める。いずれの場合(判定3
15がノーの場合、又はその後の処理316の場合)
も、処理314において、セグメンテーション・ステー
ト・マシン260は、ATMセル・ヘッダの最初の4バ
イトをバイト・バッファ268に転送する。
【0108】処理314に続いて、制御は判定281に
戻って、バイト・バッファ268から前のヘッダ情報の
読み出しを待機する。バイト・バッファ268が読み出
されて、判定283がイエスを返して、エンドポイント
2401 において新しいデータの存在を示しているとき
は、ヘッダが完全に構成されるまで送信されてないの
で、判定285は、再びノーの結果を返す。処理286
は、(ATMヘッダ情報を既にレジスタ252、25
4、256に記憶されていることを考慮して)この第2
のパスをスキップされてもよいので、制御は処理288
の判定311に行き、これがイエスの結果を返して、4
バイトの部分ヘッダが既にセットされたことを示す。次
いで、セグメンテーション・ステート・マシン260
は、DSP機能32に対する最終的な送信のためにバイ
ト・バッファ268のうちの1つにヌル・バイト(即
ち、ゼロ・バイト)を送信する。次いで、制御は、判定
281(これは、この時点で必然的にノーの結果を返
す)、及び判定286、285(それぞれイエス結果を
返す)に戻され、その後に、セグメンテーション・ステ
ート・マシン260は、判定287を実行する。
【0109】判定287は、バイト・カウンタ264に
蓄積されている現在のバイト・カウント値が、当該技術
分野において知られているように、ATMセルにおける
ペイロードの最大バイト数である値48を有するか否か
を判断する。その通りでない(判定278がノーの)と
きは、処理されるべき次のデータのバイトは、現在のA
TMセルにおける最終バイトではない。次いで、セグメ
ンテーション・ステート・マシン260により判定29
3を実行し、セル・カウンタ262の現在値をパケット
長レジスタ254の現在内容から得られる端末のセル・
カウントと比較することにより、現在のATMセルがそ
のATMパケットにおいて最後のセルであるか否かを判
断する。この点において、更に、全てのOAMパケット
は単一セルからなるので、OAMパケットを示すパケッ
ト形式識別器(パケット形式レジスタ256)は、判定
293でイエス結果を返す。
【0110】生成されている現在のATMセルがパケッ
トにおいて最後のセルでないときは、処理294が実行
されて送信ステート・マシン250が共有メモリ44の
選択されたエンドポイント240’から次のデータ・バ
イトをフェッチさせる。この次のデータ・バイトは、セ
グメンテーション・ステート・マシン260することに
より受信され、またCRCロジック258は、現在のA
TMパケット用のCRC値の計算を開始又は継続する。
ATMパケットの受信及び再アッセンブリに対する以上
の説明のように、AAL5 ATMパケットは、ATM
パケット内の全てのセルのペイロードに対する32ビッ
トCRCチェックサムを包含する1トレーラを含む。C
RCロジック258は、セグメンテーション・ステート
・マシン260により実行される処理と実際上並列する
進行形式により、このCRCチェックサムの計算用の専
用ハードウェアを設けている。次のデータ・バイトのフ
ェッチに続き(しかし、前述したように、CRC計算の
完了を必須としない)、処理296において、セグメン
テーション・ステート・マシン260は、バイト・カウ
ンタ264の値を増加させ、次いでフェッチしたデータ
・バイトをバイト・バッファ268内の次の開放位置に
転送する。前述したように、VBusステート・マシン
270は、これらのバッファが一杯になると、32ビッ
トのデータ・ワード形式により、全4バイト・バッファ
268の内容を取り出す。データ・バイトをバイト・バ
ッファ268に転送した後、VBusステート・マシン
270により読み出しするしないに無関係に、制御は、
判定281に戻されて、セグメンテーション・ステート
・マシン260は、利用可能なバイト・バッファが残っ
ているか否か、次に前述したように、エンドポイント2
40’にデータが存在するか否かを判断する。
【0111】現在のセルがATMパケットにおいて最後
のセルである(即ち、判定293がイエスである)とき
は、トレーリング情報を発生するために、又は少なくと
もATM送信コントローラ132に次のパケットのため
の追加的な処理を必要とする。判定299は、まず現在
のセルがAAL5パケット又はOAMパケットに対応す
るか否かを判断し、どの形式でもない(判定299がノ
ーとなる)ときは、処理302を実行して選択されたエ
ンドポイント240’から次のデータ・バイトを単にフ
ェッチする。他方、現在のパケットパケットがAAL又
はOAMパケットであるときは、セグメンテーション・
ステート・マシン260により処理300を実行してセ
ルの適当なデータ部分を最終的なCRC値(場合による
が、CRC−32又はCRC−10となり得る)に置換
する。いずれの場合も(場合によるが、処理302又は
処理304の後に)、判定303を実行して現在のバイ
トはパケットの最後のセルにおける最後のバイトである
か否かを判断する。その通りでない(判定303がノー
である)ときは、処理296を実行してバイト・カウン
トを増加させ、かつ処理298において、現在バイトを
適当なバイト・バッファ268に転送し、次のバイトを
受信するために制御を判定281に戻す。
【0112】セルの最後のバイトに達する(判定がイエ
スになる)と、ATMパケットが終結する。処理304
において、セグメンテーション・ステート・マシン26
0によりレジスタ252、254、256に記憶された
ヘッダ及び制御構成情報をクリアし、従って次のパケッ
トにはATMセル・ヘッダそのものが構成され、判定2
85、処理286、288を介して送信される。処理3
06において、バイト・カウンタ264のカウントをク
リアし、かつ処理308において、セル・カウンタ26
2の内容をクリアする。次に、処理298において、こ
の最終バイトをバイト・バッファ268に転送し、AT
Mパケットの送信を終結する。そこで、制御が判定28
1、283に戻ってバイト・バッファ268が空にな
り、エンドポイント240に新しいデータが受信される
のを待機して、次のATMパケットに対して処理を反復
させる。
【0113】本発明のこの実施例によれば、ATMチャ
ネルをスケジューリングすることにより得られる効果に
加えて、前述したように、ATMパケットをUSBイン
ターフェース装置におけるATMセルにセグメンテーシ
ョンすることにより、顕著な効果が得られる。USBバ
スは、ATMヘッダ情報が通信することのみを必要とす
るだけ、即ちUSBインターフェース装置そのものにお
けるセグメンテーション・ロジックがATMセル・ヘッ
ダを発生するので、通常のUSBに基づく装置と比較し
て、本発明によりより効果的に使用される。第2に、5
3バイトATMパケットを11ヌル・バイトと共に個別
的な64バイトUSBパケット内で送信する従来の装置
に対して、ATMセル境界を考慮することなく、ホスト
がフルUSBパケット(例えば、64バルク・パケッ
ト)を経由してATMパケット・ペイロードを通信でき
る。更に、本発明によるUSB周辺装置において、好ま
しくは、専用のハードウェアにおいて、セグメンテーシ
ョン、CRC計算等に関して徹底した計算処理を実行す
るので、ホストがこれらの機能をソフトウェアにより、
実行することから開放される。従って、本発明によって
ATM送信のためのホスト装置の開発及び実施が大きく
促進される。
【0114】結論 以上述べた本発明の好ましい実施例によれば、これらの
USB機能がデータ通信の優先順位スケジューリングを
管理することにより、通信データをその優先順位に従っ
て各通信に対して書き込むことになるメモリ・アドレス
の管理を容易にする。QoS能力は、種々の形式の通信
及び対応するビット速度のためのネットワーク・バンド
幅の最適使用を可能にする。従って、QoS機能の実施
及びUSB機能における管理は、総合的なUBSシステ
ムに関するパフォーマンスの改善をもたらす。
【0115】好ましい実施例によって本発明を説明した
が、勿論、これら実施例の変更及びこれに対する置換、
本発明の効果及び恩恵を与える変更及び置換は、この明
細書及びその図面を参照することにより、当該技術分野
に習熟する者にとって明らかとなることを意図してい
る。このような変更及び置換は、以下で特許請求してい
るように、本発明の範囲内であることを意図している。
【0116】出願に関連したクロスレファレンス この出願は、35U.S.C.§119(e)(1)に
より、1999年11月22日に出願した米国仮出願番
号第60/166,889号(TI−29867PS)
の優先権を請求し、ここに、引用により組み込まれる。
【0117】連邦後援研究又は開発に関する宣言 適用なし
【図面の簡単な説明】
【図1】aは、本発明の好ましい実施例を組み込んだU
SBに基づくシステムをブロック形式により示す電気接
続図である。bは、種々の要素間のUSB相互接続を示
すための図1aのシステムをブロック形式により示す電
気接続図である。
【図2】本発明の好ましい実施例によるUSBに基づく
周辺装置をブロック形式により示す電気接続図である。
【図3】本発明の好ましい実施例による図2の装置内の
USB・DSP(ディジタル信号プロセッサ)インター
フェースのアーキテクチャー例をブロック形式により示
す電気接続図である。
【図4】本発明の好ましい実施例による図3のUSB・
DSPインターフェース内のディジタル信号インターフ
ェース及びATM加速ロジックをブロック形式により示
す電気接続図である。
【図5】本発明の好ましい実施例による図4のディジタ
ル信号プロセッサ及びATM加速ロジック内の送信コン
トローラを概要形式により示す電気接続図である。
【図6】Aは、送信コントローラ及び優先順位スケジュ
ーラに連係して本発明の第1の好ましい実施例によるコ
ネクションレス送信を実行する共有メモリ内のエンドポ
イントの配列をブロック形式により示す電気接続図であ
る。Bは、送信コントローラ及び優先順位スケジューラ
に連係して本発明の第2の実施例によりATM通信の送
信を実行する共有メモリ内のエンドポイントの配列をブ
ロック形式により示す電気接続図である。
【図7A】代替的な優先順位機構によりコネクションレ
ス送信をスケジュールする際に本発明の第1の好ましい
実施例による図6Aの送信コントローラ及び優先順位ス
ケジューラの動作を説明するフロー・チャートである。
【図7B】代替的な優先順位機構によりコネクションレ
ス送信をスケジュールする際に本発明の第1の好ましい
実施例による図6Aの送信コントローラ及び優先順位ス
ケジューラの動作を説明するフロー・チャートである。
【図8】ATM送信を実行する際に本発明の第2の好ま
しい実施例による図6Bの送信コントローラ及び優先順
位スケジューラの動作を示すフロー・チャートである。
【図9】本発明の第2の好ましい実施例による図5のA
TM送信コントローラにおけるセグメンテーション・ロ
ジックの動作を示すフロー・チャートである。
【図10】図9の方法によるATMセル・ヘッダを発生
して送信する際に図5のATM送信コントローラにおけ
るセグメンテーション・ロジックの動作を示すフロー・
チャートである。
【符号の説明】
10 USBシステム 12 USBホスト 14 外部モデム14 28 機能カード 30 USBインターフェース装置 33 受信FIFO 34 AFE 35 送信FIFO 36 xDSL AFE 40 USBインターフェース・モジュール 42 USB・DSPコントローラ 44 共有メモリ 112 USBトランシーバ 116 UBM 118 VBUS・HPIFブリッジ 122 コントローラ 124 汎用ポート・ロジック 128 リセット及び割り込みロジック 133、134 ATM受信コントローラ 135 ホスト・インターフェース・コントローラ 136 コード・オーバレー・コントローラ 137 優先順位スケジューラ 138 内部レジスタ 139 コントロール・レジスタ 240 アイソクロナス・エンドポイント 242、244 エンドポイント構成レジスタ 246 バッファ・バイト・カウンタ 250 送信ステート・マシン 260 セグメンテーション・ステート・マシン 270 VBusステート・マシン 272 送信コンフィギュレーション・レジスタ 274 ワード・カウンタ 288 バイト・バッファ
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成13年3月7日(2001.3.7)
【手続補正1】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正内容】
【図2】
【図1】
【図3】
【図6】
【図4】
【図5】
【図7A】
【図7B】
【図8】
【図10】
【図9】
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ノライダ エヌ、ハムプレイ アメリカ合衆国 テキサス、マッキィネ イ、シェベーニー ドライブ 2802

Claims (26)

    【特許請求の範囲】
  1. 【請求項1】 ホスト・コンピュータからの通信を受信
    し、かつ通信設備を介して通信を送出するコンピュータ
    周辺装置において、 ユニバーサル・シリアル・バス接続を経由してホスト・
    コンピュータに接続するUSBポートと、 前記通信設備にメッセージ・データを転送する通信イン
    ターフェースと、前記USBポート、及び前記通信イン
    ターフェースに接続されたUSBインターフェースであ
    って、 前記通信設備を介して送信されるデータをバッファリン
    グする共有メモリであって、複数のエンドポイント位置
    でアクセス可能な前記共有メモリ、 前記USBポートに接続されて前記ホスト・コンピュー
    タにより前記複数のエンドポイント位置で前記共有メモ
    リに対するアクセスを制御するUSBインターフェース
    ・モジュール、 前記複数のエンドポイントのうちから選択した1つから
    データを読み出し、かつ前記通信インターフェースに前
    記読み出した複数の部分を転送する送信コントローラ、
    及び前記送信コントローラに接続されて所定の優先順位
    機構に従い前記送信コントローラによりアクセスされる
    べき前記複数のエンドポイントのうちの1つを選択する
    優先順位スケジューリング・ロジックを含む前記USB
    インターフェースとを備えたコンピュータ周辺装置。
  2. 【請求項2】 前記USBインターフェースは、更に、 前記送信コントローラ及び前記通信インターフェースに
    接続されて前記送信コントローラによる前記共有メモリ
    から読み出されたデータを前記通信設備を介して送出す
    るためのフォーマットに処理する処理装置を備えている
    請求項1記載のコンピュータ周辺装置。
  3. 【請求項3】 前記USBインターフェースは、更に、 前記優先順位スケジューリング・ロジックに接続されて
    前記所定の優先順位機構に対応する情報を記憶するメモ
    リを備えている請求項1記載のコンピュータ周辺装置。
  4. 【請求項4】 前記優先順位スケジューリング・ロジッ
    クは、 前記メモリの接続され、かつ前記所定の優先順位機構に
    対応する前記記憶した情報に応答して動作可能なプログ
    ラマブル・ロジックを備えている請求項3記載のコンピ
    ュータ周辺装置。
  5. 【請求項5】 前記メモリは、 構成情報を記憶するコントロール・レジスタを備え、か
    つ前記優先順位スケジューリング・ロジックは、 前記コントロール・レジスタの内容によって構成可能な
    シーケンス・ロジックを備えている請求項3記載のコン
    ピュータ周辺装置。
  6. 【請求項6】 前記共有メモリにおける前記複数のエン
    ドポイント位置のうちの少なくとも1つは、前記アイソ
    クロナス形式のUSBデータ転送を受信するためにある
    請求項1記載のコンピュータ周辺装置。
  7. 【請求項7】 前記共有メモリにおける前記複数のエン
    ドポイント位置のうちの少なくとも1つは、前記バルク
    形式のUSBデータ転送を受信するためのエンドポイン
    ト位置である請求項6記載のコンピュータ周辺装置。
  8. 【請求項8】 前記通信は、前記非同期転送モード(A
    TM)プロトコルにより複数の仮想チャネルに対応し、
    各仮想チャネルは、前記共有メモリにおける前記複数の
    エンドポイント位置のうちの1つに関連され、かつ前記
    複数の仮想チャネルは、複数のATMサービス品質(Q
    oS)カテゴリに関連されている請求項6記載のコンピ
    ュータ周辺装置。
  9. 【請求項9】 前記複数の仮想チャネルのうちの最初の
    ものは、一定ビット速度(CBR)カテゴリに関連さ
    れ、かつ前記複数の仮想チャネルのうちの最初のもの
    は、前記アイソクロナス形式のUSBデータ転送を受信
    するためにある前記共有メモリ内の前記複数のエンドポ
    イント位置のうちの1つと関連されている請求項8記載
    のコンピュータ周辺装置。
  10. 【請求項10】 前記通信は、コネクションレス・プロ
    トコルに従って送出するようにされている請求項1記載
    のコンピュータ周辺装置。
  11. 【請求項11】 ホスト・コンピュータ・システムから
    ユニバーサル・シリアル・バス(USB)周辺装置を経
    由して通信設備へ複数のデータ・メッセージを送信する
    方法において、 前記複数のデータ・メッセージのそれぞれについて、複
    数のエンドポイント位置のうちの対応する一つにおける
    前記USB周辺装置内の共有メモリに、前記メッセージ
    に対応するデータを転送するように前記ホスト・コンピ
    ュータを動作するステップと、 前記USB周辺装置を動作させることにより、前記複数
    のエンドポイント位置のうちの個別的な1つを選択し、
    所定の優先順位スケジューラに従ってアクセスするステ
    ップと、 前記複数のエンドポイント位置のうちの前記選択された
    1つからメッセージ・データを読み出し、かつ前記通信
    設備に前記読み出したメッセージ・データを転送するス
    テップとを備えている方法。
  12. 【請求項12】 前記ホスト・コンピュータは、前記デ
    ータ・メッセージのうちの少なくとも第2のもの用のデ
    ータを前記バルク形式のUSB転送により前記共有メモ
    リに転送する請求項11記載の方法。
  13. 【請求項13】 前記ホスト・コンピュータは、前記デ
    ータ・メッセージのうちの少なくとも第1のもの用のデ
    ータを前記アイソクロナス形式のUSB転送により前記
    共有メモリへ転送する請求項11記載の方法。
  14. 【請求項14】 前記選択するステップは、 選択した期間中に、前記データ・メッセージのうちの第
    1のものに対応する第1のエンドポイント位置から読み
    出したデータが前記関連したアイソクロナス転送に対応
    するデータ速度レベルを満足させていたか否かを判断す
    るステップと、前記判断ステップが前記データ速度レベ
    ルが満足されていなかったことを判断することに応答し
    て、前記第1のエンドポイント位置から前記データ・メ
    ッセージのうちの前記第1のもの用のメッセージ・デー
    タを読み出して、前記読み出したメッセージ・データを
    前記通信設備に転送するステップと、 前記判断ステップが前記データ速度レベルが満足されて
    いたことを判断することに応答して、前記共有メモリの
    対応するエンドポイント位置から前記データ・メッセー
    ジの前記第2のもの用のメッセージ・データを読み出し
    て、前記読み出したメッセージ・データを前記通信設備
    に転送するステップとを備えている請求項13記載の方
    法。
  15. 【請求項15】 前記データ・メッセージは、非同期転
    送モード(ATM)プロトコルに従って送信するために
    あり、 前記複数のデータ・メッセージは、ATMのサービス品
    質(QoS)カテゴリとそれぞれ関連され、かつ前記デ
    ータ・メッセージのうちの第1のものは、一定ビット速
    度(CBR)サービス品質カテゴリと関連されている請
    求項12項記載の方法。
  16. 【請求項16】 前記データ・メッセージのうちの第2
    のものは、可変ビット速度(CBR)サービス品質カテ
    ゴリと関連されている請求項15項記載の方法。
  17. 【請求項17】 前記選択するステップは、 選択した期間中に、前記データ・メッセージのうちの第
    1のものに対応する第1のエンドポイント位置から読み
    出したデータが前記関連したアイソクロナス転送に対応
    するデータ速度レベルを満足させたか否かを判断するス
    テップと、 前記判断ステップが前記データ速度レベルが満足されて
    いなかったことを判断することに応答して、前記第1の
    エンドポイント位置から前記データ・メッセージのうち
    の前記第1のもの用のメッセージ・データを読み出し
    て、前記読み出したメッセージ・データを前記通信設備
    に転送するステップと、 前記判断ステップが前記データ速度レベルが満足されて
    いたことを判断することに応答して、前記共有メモリの
    対応するエンドポイント位置から前記データ・メッセー
    ジの前記第2のもの用のメッセージ・データを読み出し
    て、前記読み出したメッセージ・データを前記通信設備
    に転送するステップとを備えている請求項15記載の方
    法。
  18. 【請求項18】 前記データ・メッセージは、コネクシ
    ョンレス・プロトコルに従って送信するためにある請求
    項12記載の方法。
  19. 【請求項19】 コンピュータ・システムにおいて、 ホスト・ユニバーサル・シリアル・バス(USB)ポー
    トを有するホスト・コンピュータと、 前記ホスト・コンピュータから通信を受信し、かつ前記
    通信設備に前記通信を転送する周辺装置と、 ユニバーサル・シリアル・バスを介して前記ホスト・シ
    ステムに接続するUSBポートと、 前記通信設備にメッセージ・データを転送する通信イン
    ターフェースと、 前記USBポート及び前記通信インターフェースに接続
    されたUSBインターフェースであって、 前記通信設備を介して送信されるデータをバッファリン
    グする共有メモリであって、複数のエンドポイント位置
    でアクセス可能な前記共有メモリ、 前記USBポートに接続されて前記ホスト・コンピュー
    タにより前記複数のエンドポイント位置で前記共有メモ
    リに対するアクセスを制御するUSBインターフェース
    ・モジュール、 前記複数のエンドポイントのうちから選択した1つから
    データを読み出し、かつ前記通信インターフェースに前
    記読み出した複数の部分を転送する送信コントローラ、
    及び前記送信コントローラに接続されて所定の優先順位
    機構に従って前記送信コントローラによりアクセスされ
    るべき前記複数のエンドポイントのうちの1つを選択す
    る優先順位スケジューリング・ロジックを含む前記US
    Bインターフェースとを備えたコンピュータ・システ
    ム。
  20. 【請求項20】 前記USBインターフェースは、更
    に、 前記送信コントローラ及び前記通信インターフェースに
    接続されて前記送信コントローラによる前記共有メモリ
    から読み出されたデータを前記通信設備を介して送出す
    るためのフォーマットに処理する処理装置を備えている
    請求項19記載のコンピュータ・システム。
  21. 【請求項21】 前記共有メモリにおける前記複数のエ
    ンドポイント位置のうちの少なくとも1つは、前記アイ
    ソクロナス形式のUSBデータ転送を受信するためにあ
    り、かつ前記共有メモリにおける前記複数のエンドポイ
    ント位置のうちの少なくとも1つのは、前記バルク形式
    のUSBデータ転送を受信するためにある請求項19項
    記載のコンピュータ・システム。
  22. 【請求項22】 前記通信は、前記非同期転送モード
    (ATM)プロトコルにより複数の仮想チャネルに対応
    し、各仮想チャネルは、前記共有メモリにおける前記複
    数のエンドポイント位置のうちの1つに関連され、かつ
    前記複数の仮想チャネルは、複数のATMサービス品質
    (QoS)カテゴリに関連されている請求項21記載の
    コンピュータ・システム。
  23. 【請求項23】 前記複数の仮想チャネルのうちの最初
    のものは、一定ビット速度(CBR)カテゴリに関連さ
    れ、かつ前記複数の仮想チャネルのうちの最初のもの
    は、前記アイソクロナス形式のUSBデータ転送を受信
    するためにある前記共有メモリ内の前記複数のエンドポ
    イント位置のうちの1つと関連されている請求項22記
    載のコンピュータ・システム。
  24. 【請求項24】 更に、前記優先順位スケジューリング
    ・ロジックに接続されて前記所定の優先順位機構に対応
    する情報を記憶するメモリを備え、かつ前記優先順位ス
    ケジューリング・ロジックは、 前記メモリに接続されて前記所定の優先順位機構に対応
    する記憶した情報に応答して動作可能なプログラマブル
    ・ロジックを備えている請求項19記載のコンピュータ
    ・システム。
  25. 【請求項25】 前記メモリは、 構成情報を記憶するコントロール・レジスタを備え、か
    つ前記優先順位スケジューリング・ロジックは、 前記コントロール・レジスタの内容により構成可能なシ
    ーケンス・ロジックを備えている請求項24記載のコン
    ピュータ・システム。
  26. 【請求項26】 前記通信は、コネクションレス・プロ
    トコルに従って送出するようにされている請求項19記
    載のコンピュータ・システム。
JP2000399357A 1999-11-22 2000-11-22 ユニバーサル・シリアル・バスを介してホスト・コンピュータ・システムと通信するコンピュータ周辺装置及び方法 Abandoned JP2001318876A (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US702230 1985-02-15
US16688999P 1999-11-22 1999-11-22
US70223000A 2000-10-30 2000-10-30
US166889 2000-10-30

Publications (1)

Publication Number Publication Date
JP2001318876A true JP2001318876A (ja) 2001-11-16

Family

ID=26862654

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000399357A Abandoned JP2001318876A (ja) 1999-11-22 2000-11-22 ユニバーサル・シリアル・バスを介してホスト・コンピュータ・システムと通信するコンピュータ周辺装置及び方法

Country Status (2)

Country Link
EP (1) EP1102171A3 (ja)
JP (1) JP2001318876A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008257745A (ja) * 2008-06-16 2008-10-23 Sanyo Electric Co Ltd マイクロコンピュータ

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6609179B1 (en) * 2001-01-24 2003-08-19 Matsushita Electric Industrial Co., Ltd. Method and apparatus for controlling memory access
JP4480909B2 (ja) * 2001-02-22 2010-06-16 株式会社沖データ データ送受信システム
GB2375408A (en) * 2001-05-12 2002-11-13 At & T Lab Cambridge Ltd Data transmission via a network, using shared memory
US7076530B2 (en) * 2001-08-31 2006-07-11 Thomson Licensing Multiple function modem including external memory adapter
AU2003250235A1 (en) 2002-06-03 2003-12-19 Thomson Licensing S.A. Dsl modem and method for establishing a data transfer mode therefore
US20040203296A1 (en) * 2002-11-15 2004-10-14 Globespan Virata Inc. Method and system for attaching a USB network adapter supporting both RNDIS and non-RNDIS capable operating systems
WO2005015414A2 (en) * 2003-08-08 2005-02-17 Visionflow, Inc. Adaptive bandwidth allocation over a heterogeneous system
US8161204B2 (en) 2009-04-14 2012-04-17 Ati Technologies Ulc Embedded clock recovery
US7996586B2 (en) * 2009-07-24 2011-08-09 Via Technologies, Inc. USB port for employing a plurality of selectable data transmission priority rules
TWI419519B (zh) * 2009-12-22 2013-12-11 Ind Tech Res Inst 適用於多媒體串流的網路封包傳送系統與方法
CN102123075B (zh) * 2010-01-12 2014-04-09 财团法人工业技术研究院 适用于多媒体串流的网络分组传送系统与方法
FR2969336B1 (fr) * 2010-12-17 2013-01-04 Sagem Defense Securite Dispositif de connexion ethernet multiple a une unite informatique et ensemble unite informatique et equipements relies ensemble
US9524260B2 (en) 2014-06-18 2016-12-20 Qualcomm Incorporated Universal serial bus (USB) communication systems and methods
US10164888B2 (en) 2015-05-20 2018-12-25 Intel IP Corporation Quality of service for a universal serial bus
CN106095714A (zh) * 2016-06-08 2016-11-09 芯启源电子科技有限公司 Usb数据传输的存储装置及电子设备
CN111090601A (zh) * 2019-12-07 2020-05-01 苏州浪潮智能科技有限公司 基于bmc芯片的多功能usb控制方法、系统、终端及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6064677A (en) * 1996-06-27 2000-05-16 Xerox Corporation Multiple rate sensitive priority queues for reducing relative data transport unit delay variations in time multiplexed outputs from output queued routing mechanisms
CA2223698A1 (en) * 1998-02-24 1999-08-24 Marc Samson Usb (universal serial bus) modem
US6590897B1 (en) * 1999-03-08 2003-07-08 Efficient Networks, Inc. System and method for bridging universal serial bus and asynchronous transfer mode communication links

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008257745A (ja) * 2008-06-16 2008-10-23 Sanyo Electric Co Ltd マイクロコンピュータ
JP4724206B2 (ja) * 2008-06-16 2011-07-13 三洋電機株式会社 マイクロコンピュータ

Also Published As

Publication number Publication date
EP1102171A3 (en) 2004-09-08
EP1102171A2 (en) 2001-05-23

Similar Documents

Publication Publication Date Title
US6205151B1 (en) ATM cell scheduler which uses a heap memory and associates timestamps with each channel
EP0924954B1 (en) ATM cell transmissions
JP2001318876A (ja) ユニバーサル・シリアル・バスを介してホスト・コンピュータ・システムと通信するコンピュータ周辺装置及び方法
JP3673951B2 (ja) デスクトップ用非同期転送モードアダプター
JP3155472B2 (ja) ネットワークインタフェースコントローラ
US6760333B1 (en) Hybrid digital subscriber loop and voice-band universal serial bus modem
JP3808548B2 (ja) 非同期転送モード・システムとともに使用するインタフェース・システム内でデータ・ロード機能とアンロード機能を分割する方法および装置
US5446726A (en) Error detection and correction apparatus for an asynchronous transfer mode (ATM) network device
JP2931798B2 (ja) ネットワーク・インタフェース
US6501731B1 (en) CBR/VBR traffic scheduler
CA2329542C (en) System and method for scheduling message transmission and processing in a digital data network
WO2000001120A9 (en) Cbr/vbr traffic scheduler
JPH09130406A (ja) Atmインタフェース、そのインターフェースを備えるコンピュータシステム及びそのインターフェースでatmセルを生成する方法
JPH09128315A (ja) データのフローを制御する方法及び装置
IL123912A (en) Asynchronous transfer mode switch
US6804243B1 (en) Hardware acceleration for segmentation of message packets in a universal serial bus peripheral device
WO2000054469A9 (en) Multimedia and multirate switching method and apparatus
US5940397A (en) Methods and apparatus for scheduling ATM cells
US5930525A (en) Method and apparatus for network interface fetching initial and data burst blocks and segmenting blocks and scheduling blocks compatible for transmission over multiple virtual circuits
US7215670B1 (en) Hardware acceleration for reassembly of message packets in a universal serial bus peripheral device
US6463485B1 (en) System for providing cell bus management in a switch platform including a write port cell count in each of a plurality of unidirectional FIFO for indicating which FIFO be able to accept more cell
US6512769B1 (en) Method and apparatus for rate-based cell traffic arbitration in a switch
US6438102B1 (en) Method and apparatus for providing asynchronous memory functions for bi-directional traffic in a switch platform
US6483850B1 (en) Method and apparatus for routing cells having different formats among service modules of a switch platform
JP3679249B2 (ja) Atmセル多重装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071122

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20081205