JPH0955755A - Atm通信ネットワーク及びその方法 - Google Patents
Atm通信ネットワーク及びその方法Info
- Publication number
- JPH0955755A JPH0955755A JP18465696A JP18465696A JPH0955755A JP H0955755 A JPH0955755 A JP H0955755A JP 18465696 A JP18465696 A JP 18465696A JP 18465696 A JP18465696 A JP 18465696A JP H0955755 A JPH0955755 A JP H0955755A
- Authority
- JP
- Japan
- Prior art keywords
- list
- buffer
- transmission
- frame
- adapter
- 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
Links
- 238000004891 communication Methods 0.000 title claims abstract description 40
- 238000000034 method Methods 0.000 title claims description 48
- 230000005540 biological transmission Effects 0.000 claims abstract description 114
- 238000002360 preparation method Methods 0.000 claims abstract description 45
- 239000000872 buffer Substances 0.000 claims description 171
- 230000008569 process Effects 0.000 claims description 26
- 238000012545 processing Methods 0.000 claims description 18
- 230000002708 enhancing effect Effects 0.000 claims description 4
- 210000004027 cell Anatomy 0.000 description 70
- 238000010586 diagram Methods 0.000 description 17
- RPOCQUTXCSLYFJ-UHFFFAOYSA-N n-(4-ethylphenyl)-2-(2-methyl-3,5-dioxothiomorpholin-4-yl)acetamide Chemical compound C1=CC(CC)=CC=C1NC(=O)CN1C(=O)C(C)SCC1=O RPOCQUTXCSLYFJ-UHFFFAOYSA-N 0.000 description 11
- 238000012546 transfer Methods 0.000 description 7
- 210000005056 cell body Anatomy 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000037452 priming Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 235000003332 Ilex aquifolium Nutrition 0.000 description 1
- 235000002296 Ilex sandwicensis Nutrition 0.000 description 1
- 235000002294 Ilex volkensiana Nutrition 0.000 description 1
- 238000010420 art technique Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000008570 general process Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/04—Selecting arrangements for multiplex systems for time-division multiplexing
- H04Q11/0428—Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
- H04Q11/0478—Provisions for broadband connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5614—User Network Interface
- H04L2012/5615—Network termination, e.g. NT1, NT2, PBX
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5614—User Network Interface
- H04L2012/5616—Terminal equipment, e.g. codecs, synch.
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5638—Services, e.g. multimedia, GOS, QOS
- H04L2012/5646—Cell characteristics, e.g. loss, delay, jitter, sequence integrity
- H04L2012/5652—Cell construction, e.g. including header, packetisation, depacketisation, assembly, reassembly
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5681—Buffer or queue management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
(57)【要約】
【課題】 アダプタとデバイス・ドライバとの相互動作
を最小限とし、アダプタが異なるデータ源から同時にセ
ルを受信しかつ複数のフレームを伝送できるATM通信
ネットワークを提供する。 【解決手段】 本願のATM通信ネットワークは、前記
アダプタに含まれるアダプタ・プロセッサ及び制御メモ
リと、前記制御メモリ内に伝送制御レジスタ及び受信制
御レジスタを構築する手段と、前記システム・メモリ内
の受信準備リスト上にフレームとして記憶するべく前記
ネットワークからデータ・セルを受信する手段と、前記
受信準備リスト上のフレームを伝送のために識別する伝
送準備キュー(TRQ)を前記制御メモリ内に構築する手
段と、前記システム・メモリ内に伝送完了リスト(TC
L)を構築する手段と、フレーム伝送完了を示しかつ前
記TCLを更新する割込みを前記デバイス・ドライバに
対して発生する手段とを有する。
を最小限とし、アダプタが異なるデータ源から同時にセ
ルを受信しかつ複数のフレームを伝送できるATM通信
ネットワークを提供する。 【解決手段】 本願のATM通信ネットワークは、前記
アダプタに含まれるアダプタ・プロセッサ及び制御メモ
リと、前記制御メモリ内に伝送制御レジスタ及び受信制
御レジスタを構築する手段と、前記システム・メモリ内
の受信準備リスト上にフレームとして記憶するべく前記
ネットワークからデータ・セルを受信する手段と、前記
受信準備リスト上のフレームを伝送のために識別する伝
送準備キュー(TRQ)を前記制御メモリ内に構築する手
段と、前記システム・メモリ内に伝送完了リスト(TC
L)を構築する手段と、フレーム伝送完了を示しかつ前
記TCLを更新する割込みを前記デバイス・ドライバに
対して発生する手段とを有する。
Description
【0001】
【発明の属する技術分野】本発明は、ATM(非同期転
送モード)通信システムに関する。特に本発明は、AT
Mシステムにおけるアダプタとデバイス・ドライバとの
効率的なインタフェースのためのシステム及び方法に関
する。
送モード)通信システムに関する。特に本発明は、AT
Mシステムにおけるアダプタとデバイス・ドライバとの
効率的なインタフェースのためのシステム及び方法に関
する。
【0002】
【従来の技術】米国特許出願第513706号(199
5年8月11日出願)「A System AndMethod For Multi
-Frame Received Queuing With Sorting In An Asynchr
onousTransfer Mode System」は、ATMシステムのた
めのアダプタとデバイス・ドライバとのインタフェース
を開示しており、デバイス・ドライバとアダプタとの間
の通信を最適化することによりシステムのスループット
を向上させる。当該関連出願及び本発明は同一出願人に
よるものである。
5年8月11日出願)「A System AndMethod For Multi
-Frame Received Queuing With Sorting In An Asynchr
onousTransfer Mode System」は、ATMシステムのた
めのアダプタとデバイス・ドライバとのインタフェース
を開示しており、デバイス・ドライバとアダプタとの間
の通信を最適化することによりシステムのスループット
を向上させる。当該関連出願及び本発明は同一出願人に
よるものである。
【0003】非同期伝送モード(ATM)システムの特
徴は、各フレームを48バイトのセグメントに分割して
各セグメントに対して5バイトのヘッダを付加し、そし
て得られた53バイトのセルを伝送待ち状態にある他の
フレームによるセルと共に多重化して伝送することによ
り、多くのフレームを同時に伝送できるという点であ
る。セルが受信されると、5バイトのセル・ヘッダを取
り除き、残りの48バイトを先に受信されていたそのフ
レームのセルと結合させることにより、再びフレームへ
と組立てられる。任意の時点におけるセグメント化及び
再組立の種々の段階においては、異なるフレームが存在
し得る。
徴は、各フレームを48バイトのセグメントに分割して
各セグメントに対して5バイトのヘッダを付加し、そし
て得られた53バイトのセルを伝送待ち状態にある他の
フレームによるセルと共に多重化して伝送することによ
り、多くのフレームを同時に伝送できるという点であ
る。セルが受信されると、5バイトのセル・ヘッダを取
り除き、残りの48バイトを先に受信されていたそのフ
レームのセルと結合させることにより、再びフレームへ
と組立てられる。任意の時点におけるセグメント化及び
再組立の種々の段階においては、異なるフレームが存在
し得る。
【0004】通常ATMシステムにおいてフレームを伝
送しようとする場合、デバイス・ドライバがアダプタに
対して伝送コマンドをセットアップしなければならな
い。アダプタは、フレームを伝送しかつその伝送オペレ
ーションが完了したことを示すべくデバイス・ドライバ
に対して返す割込みを発生する。同じ一般的なプロセス
は受信においても発生する。すなわちデバイス・ドライ
バがコマンドを発生し、アダプタがデータを受信した後
に、受信オペレーションが完了したことを示すべくデバ
イス・ドライバに割込みを行う。ATMネットワーク上
のデータ速度が速くなるにつれて、デバイス・ドライバ
がコマンドを発生しかつ割込みを処理する頻度が増し、
ついにはデバイス・ドライバがデータ速度に追随できな
いまでになる。さらに、データ速度に比べてデバイス・
ドライブが遅いことから、アダプタ及びシステム・メモ
リにおける記憶の必要性が増す。データを伝送及び受信
する際のデバイス・ドライバの活動状態を軽減させるシ
ステム及び方法があれば、ATMシステムの性能が拡張
されるであろう。具体的には、複数のフレームを同時に
セルにセグメント化し、かつアダプタ/ドライバ間のイ
ンタフェースにおいてシステムやデバイス・ドライバと
は独立してセルをフレームへと再組立するシステム及び
方法によって、ATMシステムの性能が向上すると共に
記憶の必要性が軽減される。
送しようとする場合、デバイス・ドライバがアダプタに
対して伝送コマンドをセットアップしなければならな
い。アダプタは、フレームを伝送しかつその伝送オペレ
ーションが完了したことを示すべくデバイス・ドライバ
に対して返す割込みを発生する。同じ一般的なプロセス
は受信においても発生する。すなわちデバイス・ドライ
バがコマンドを発生し、アダプタがデータを受信した後
に、受信オペレーションが完了したことを示すべくデバ
イス・ドライバに割込みを行う。ATMネットワーク上
のデータ速度が速くなるにつれて、デバイス・ドライバ
がコマンドを発生しかつ割込みを処理する頻度が増し、
ついにはデバイス・ドライバがデータ速度に追随できな
いまでになる。さらに、データ速度に比べてデバイス・
ドライブが遅いことから、アダプタ及びシステム・メモ
リにおける記憶の必要性が増す。データを伝送及び受信
する際のデバイス・ドライバの活動状態を軽減させるシ
ステム及び方法があれば、ATMシステムの性能が拡張
されるであろう。具体的には、複数のフレームを同時に
セルにセグメント化し、かつアダプタ/ドライバ間のイ
ンタフェースにおいてシステムやデバイス・ドライバと
は独立してセルをフレームへと再組立するシステム及び
方法によって、ATMシステムの性能が向上すると共に
記憶の必要性が軽減される。
【0005】関連する従来技術である米国特許第529
7139号(1994年3月22日特許)では、通信伝送
ラインからバッファ装置へのデータ書込み及びバッファ
装置からのデータの読取りを制御する方法が開示されて
いる。データは所定の読取り速度でバッファ装置から読
み取られ、また、このバッファに書き込まれるデータの
量は所定のしきい値と比較される。蓄積されたデータの
量がしきい値と同じか又はそれ以下であると判断された
場合、伝送ラインからのデータがバッファ装置へ書き込
まれ、バッファ装置は伝送ラインからのデータの書込み
のみを行う。バッファ装置は、通信伝送ラインからのデ
ータの書込みを行うと共に、蓄積されたデータの量がし
きい値よりも大きい場合にバッファ装置からデータの読
取りを行う。
7139号(1994年3月22日特許)では、通信伝送
ラインからバッファ装置へのデータ書込み及びバッファ
装置からのデータの読取りを制御する方法が開示されて
いる。データは所定の読取り速度でバッファ装置から読
み取られ、また、このバッファに書き込まれるデータの
量は所定のしきい値と比較される。蓄積されたデータの
量がしきい値と同じか又はそれ以下であると判断された
場合、伝送ラインからのデータがバッファ装置へ書き込
まれ、バッファ装置は伝送ラインからのデータの書込み
のみを行う。バッファ装置は、通信伝送ラインからのデ
ータの書込みを行うと共に、蓄積されたデータの量がし
きい値よりも大きい場合にバッファ装置からデータの読
取りを行う。
【0006】米国特許第5274768号(1993年
12月28日特許)では、コンピュータを通信ネットワ
ークへ接続するためのインタフェースが開示されてい
る。このインタフェースは、複数のATMのセルへセグ
メント化されたフレームを受信しかつ再組立するための
リアセンブラ(reassembler)を備える。各セルは、仮想
チャネル識別子とセル本体とを有する。さらにリアセン
ブラは、各セル本体をその関連する仮想チャネル識別子
から分離して、その仮想チャネル識別子についての個々
のリンク・リスト参照アドレスを判断する手段を備え
る。再組立バッファ手段はセル本体を記憶し、そしてリ
ンク・リスト・マネージャは、再組立バッファ手段に記
憶されたセル本体のアドレスを示すリンク・リスト・デ
ータを記憶する。
12月28日特許)では、コンピュータを通信ネットワ
ークへ接続するためのインタフェースが開示されてい
る。このインタフェースは、複数のATMのセルへセグ
メント化されたフレームを受信しかつ再組立するための
リアセンブラ(reassembler)を備える。各セルは、仮想
チャネル識別子とセル本体とを有する。さらにリアセン
ブラは、各セル本体をその関連する仮想チャネル識別子
から分離して、その仮想チャネル識別子についての個々
のリンク・リスト参照アドレスを判断する手段を備え
る。再組立バッファ手段はセル本体を記憶し、そしてリ
ンク・リスト・マネージャは、再組立バッファ手段に記
憶されたセル本体のアドレスを示すリンク・リスト・デ
ータを記憶する。
【0007】米国特許第5136584号(1992年
8月4日特許)では、多重高速デジタル通信ネットワー
クへのインタフェースを開示している。このインタフェ
ースは、(ATMセルとして記載されている)データを
受信する入力ポートと、処理され受信されたデータを伝
送する出力ポートと、データの処理時間を確保するため
に入力ポートと出力ポートとを接続して受信データの伝
搬を遅延させる(遅延パイプラインとして記載されてい
る)データ遅延機構とを備えている。このインタフェー
スは、内部データ記憶装置を用いないが、できるだけ速
やかにデータがインタフェースを通るように遅延パイプ
ラインを利用している。データ・アセンプラ及び状態メ
モリは、受信された多重インタリーブ(interleave)AT
Mセルからデータ・フレームを組立てる。
8月4日特許)では、多重高速デジタル通信ネットワー
クへのインタフェースを開示している。このインタフェ
ースは、(ATMセルとして記載されている)データを
受信する入力ポートと、処理され受信されたデータを伝
送する出力ポートと、データの処理時間を確保するため
に入力ポートと出力ポートとを接続して受信データの伝
搬を遅延させる(遅延パイプラインとして記載されてい
る)データ遅延機構とを備えている。このインタフェー
スは、内部データ記憶装置を用いないが、できるだけ速
やかにデータがインタフェースを通るように遅延パイプ
ラインを利用している。データ・アセンプラ及び状態メ
モリは、受信された多重インタリーブ(interleave)AT
Mセルからデータ・フレームを組立てる。
【0008】いずれの従来技術も、ATMシステムにお
いて異なるデータ源からの複数のフレームを伝送のため
にセルへとセグメント化しかつアプリケーションへの受
信のためにセルを複数のフレームへと再組立する際にお
けるアダプタとデバイス・ドライバとのインタフェース
の課題、すなわち、本質的にデバイス・ドライバとは独
立して伝送及び再組立を行うという課題を解決していな
い。これを解決することにより、デバイス・ドライバは
ネットワークのデータ速度に追随することができ、速い
データ速度で処理するATMシステムの性能を向上させ
ると共に、インタフェースにおける記憶装置の利用を軽
減させることになる。従来技術では、フレーム記述子を
利用すること及び区画を用いることなくシステム・メモ
リにフレームを場所指定するためのリストを利用するこ
とは開示されていない。さらに従来技術では、伝送待ち
キュー及び受信準備リストにおいてフレームを互いに連
係させるためにポインタを利用することも開示されてい
ない。
いて異なるデータ源からの複数のフレームを伝送のため
にセルへとセグメント化しかつアプリケーションへの受
信のためにセルを複数のフレームへと再組立する際にお
けるアダプタとデバイス・ドライバとのインタフェース
の課題、すなわち、本質的にデバイス・ドライバとは独
立して伝送及び再組立を行うという課題を解決していな
い。これを解決することにより、デバイス・ドライバは
ネットワークのデータ速度に追随することができ、速い
データ速度で処理するATMシステムの性能を向上させ
ると共に、インタフェースにおける記憶装置の利用を軽
減させることになる。従来技術では、フレーム記述子を
利用すること及び区画を用いることなくシステム・メモ
リにフレームを場所指定するためのリストを利用するこ
とは開示されていない。さらに従来技術では、伝送待ち
キュー及び受信準備リストにおいてフレームを互いに連
係させるためにポインタを利用することも開示されてい
ない。
【0009】
【発明が解決しようとする課題】本発明の目的は、AT
M通信システムにおいてアダプタとデバイス・ドライバ
との間の相互動作を最小限としながら、アダプタが異な
るデータ源から同時にセルを受信しかつ複数のフレーム
を伝送することができるATM通信システムを提供する
ことである。
M通信システムにおいてアダプタとデバイス・ドライバ
との間の相互動作を最小限としながら、アダプタが異な
るデータ源から同時にセルを受信しかつ複数のフレーム
を伝送することができるATM通信システムを提供する
ことである。
【0010】本発明の更なる目的は、ATMシステムに
おいてフレーム・レベルで情報を処理する際にアダプタ
とデバイス・ドライバとの間の効率的な相互動作のため
のシステム及び方法を提供することである。
おいてフレーム・レベルで情報を処理する際にアダプタ
とデバイス・ドライバとの間の効率的な相互動作のため
のシステム及び方法を提供することである。
【0011】本発明の更なる目的は、アダプタが高いス
ループットを有するようなアダプタ/デバイス・ドライ
バ間インタフェースを提供することである。
ループットを有するようなアダプタ/デバイス・ドライ
バ間インタフェースを提供することである。
【0012】本発明の更なる目的は、フレームとしてデ
ータ・セルを記憶するための受信空きバッファ・リスト
と受信準備バッファ・リストとを用いて、ATMシステ
ム・メモリ内でセルをフレームへと再組立するシステム
及び方法を提供することである。
ータ・セルを記憶するための受信空きバッファ・リスト
と受信準備バッファ・リストとを用いて、ATMシステ
ム・メモリ内でセルをフレームへと再組立するシステム
及び方法を提供することである。
【0013】本発明の更なる目的は、ATMシステムの
アダプタ/デバイス・ドライバ間インタフェースにおい
て複数のフレームを同時にセルへとセグメント化し、そ
してセルを複数のフレームへと再組立することにより、
セグメント化及び再組立のプロセスが本質的にデバイス
・ドライバとは独立しているシステム及び方法を提供す
ることである。
アダプタ/デバイス・ドライバ間インタフェースにおい
て複数のフレームを同時にセルへとセグメント化し、そ
してセルを複数のフレームへと再組立することにより、
セグメント化及び再組立のプロセスが本質的にデバイス
・ドライバとは独立しているシステム及び方法を提供す
ることである。
【0014】本発明の更なる目的は、システム・メモリ
内でフレームを互いに連結させる記述子及びポインタを
用いるATMシステムにおけるアダプタ/デバイス・ド
ライバ間インタフェースを提供することである。
内でフレームを互いに連結させる記述子及びポインタを
用いるATMシステムにおけるアダプタ/デバイス・ド
ライバ間インタフェースを提供することである。
【0015】本発明の更なる目的は、フレーム内へデー
タ・セルを受信するためにバッファのリストを用い、そ
してシステムへの伝送のためにフレームのリストを用い
るATMシステムにおけるアダプタ/デバイス・ドライ
バ間インタフェースを提供することである。
タ・セルを受信するためにバッファのリストを用い、そ
してシステムへの伝送のためにフレームのリストを用い
るATMシステムにおけるアダプタ/デバイス・ドライ
バ間インタフェースを提供することである。
【0016】
【課題を解決するための手段】上記の及び他の目的、特
徴及び利点は、デバイス・ドライバとメモリとを具備す
るシステム・プロセッサを含むATM通信ネットワーク
において実現される。システム・プロセッサは、インタ
フェースにおいてアダプタへ接続される。アダプタは、
プロセッサとメモリとを具備する。デバイス・ドライバ
とアダプタとは、同時にネットワークに対してフレーム
を伝送しかつネットワークからフレームを受信する際に
協同的に動作する。伝送オペレーションにおいては、デ
バイス・ドライバは、アダプタ内に常駐しかつ伝送制御
レジスタにより規定された伝送準備キューを用いてネッ
トワークへ伝送するフレームを識別する。伝送フレーム
完了リストが、伝送制御レジスタを用いてシステム・メ
モリ内に構築される。デバイス・ドライバにより構築さ
れた伝送準備キューに従って、フレームがアダプタによ
り伝送されるべくキューされる。フレーム伝送が完了し
たことをシステム・プロセッサに対して示すために、ア
ダプタにより割込みが発生される。受信オペレーション
においては、受信空きバッファ・リストがデバイス・ド
ライバによりシステム・メモリ内に構築される。デバイ
ス・ドライバは、受信空きバッファ・リストの最後のエ
ントリへのポインタを保持する。アダプタは、受信空き
バッファ・リストから用いられる次のバッファへのポイ
ンタを保持する。受信準備リストが、アダプタ内の受信
制御レジスタを介してアダプタに対して示される位置に
従ってデバイス・ドライバによりシステム・メモリ内に
構築される。受信データ・セルは、空きバッファ・リス
トから得たシステム・メモリのバッファ内でフレームへ
再組立される。フレームの受信が完了すると、そのフレ
ームは適宜の受信準備リストへ追加される。1又は複数
の完了したフレームが、デバイス・ドライバが伝送オペ
レーションを開始するための受信準備リスト上に存在す
る場合、アダプタによりプロセッサに対して割込みが発
生される。
徴及び利点は、デバイス・ドライバとメモリとを具備す
るシステム・プロセッサを含むATM通信ネットワーク
において実現される。システム・プロセッサは、インタ
フェースにおいてアダプタへ接続される。アダプタは、
プロセッサとメモリとを具備する。デバイス・ドライバ
とアダプタとは、同時にネットワークに対してフレーム
を伝送しかつネットワークからフレームを受信する際に
協同的に動作する。伝送オペレーションにおいては、デ
バイス・ドライバは、アダプタ内に常駐しかつ伝送制御
レジスタにより規定された伝送準備キューを用いてネッ
トワークへ伝送するフレームを識別する。伝送フレーム
完了リストが、伝送制御レジスタを用いてシステム・メ
モリ内に構築される。デバイス・ドライバにより構築さ
れた伝送準備キューに従って、フレームがアダプタによ
り伝送されるべくキューされる。フレーム伝送が完了し
たことをシステム・プロセッサに対して示すために、ア
ダプタにより割込みが発生される。受信オペレーション
においては、受信空きバッファ・リストがデバイス・ド
ライバによりシステム・メモリ内に構築される。デバイ
ス・ドライバは、受信空きバッファ・リストの最後のエ
ントリへのポインタを保持する。アダプタは、受信空き
バッファ・リストから用いられる次のバッファへのポイ
ンタを保持する。受信準備リストが、アダプタ内の受信
制御レジスタを介してアダプタに対して示される位置に
従ってデバイス・ドライバによりシステム・メモリ内に
構築される。受信データ・セルは、空きバッファ・リス
トから得たシステム・メモリのバッファ内でフレームへ
再組立される。フレームの受信が完了すると、そのフレ
ームは適宜の受信準備リストへ追加される。1又は複数
の完了したフレームが、デバイス・ドライバが伝送オペ
レーションを開始するための受信準備リスト上に存在す
る場合、アダプタによりプロセッサに対して割込みが発
生される。
【0017】
【発明の実施の形態】図1は、パーソナル・コンピュー
タ又はワークステーション110を示しており、プロセ
ッサ112、ブリッジ114、及びシステム・メモリ1
16が、ISA(Industry Standard Architecture)バス
又はPCI(Peripheral Component Interconnect)バス
118を介して、アダプタ120へ接続され、そしてア
ダプタ120はさらにATMネットワーク122へ接続
されている。プロセッサ112は、オペレーティング・
システム124、アプリケーション・プログラム12
6、及びデバイス・ドライバ128等の様々な記憶され
たプログラムを含む。オペレーティング・システム12
4は、記憶されたアプリケーション・プログラム126
を実行する際にプログラムを制御する。アプリケーショ
ン・プログラム126は、その機能に従ってネットワー
ク122からデータを受信する。デバイス・ドライバ1
28は、アダプタ120を用いてネットワーク122と
システム・メモリ116との間のセル及びフレームの流
れを制御する。ブリッジ114は、システム・メモリ1
16及びアダプタ120に対してプロセッサの速度を適
合させるためのバッファである。本発明の主な目的は、
フレームがネットワークへ転送されるか又はシステム・
メモリへ受信されるまで、実質的にデバイス・ドライバ
とは独立してフレームをセルへセグメント化しかつセル
をフレームへ再組立することである。これを実行するこ
とにより、デバイス・ドライバは、ATMネットワーク
122とのデータの伝送及び受信において更に効率的と
なるであろう。
タ又はワークステーション110を示しており、プロセ
ッサ112、ブリッジ114、及びシステム・メモリ1
16が、ISA(Industry Standard Architecture)バス
又はPCI(Peripheral Component Interconnect)バス
118を介して、アダプタ120へ接続され、そしてア
ダプタ120はさらにATMネットワーク122へ接続
されている。プロセッサ112は、オペレーティング・
システム124、アプリケーション・プログラム12
6、及びデバイス・ドライバ128等の様々な記憶され
たプログラムを含む。オペレーティング・システム12
4は、記憶されたアプリケーション・プログラム126
を実行する際にプログラムを制御する。アプリケーショ
ン・プログラム126は、その機能に従ってネットワー
ク122からデータを受信する。デバイス・ドライバ1
28は、アダプタ120を用いてネットワーク122と
システム・メモリ116との間のセル及びフレームの流
れを制御する。ブリッジ114は、システム・メモリ1
16及びアダプタ120に対してプロセッサの速度を適
合させるためのバッファである。本発明の主な目的は、
フレームがネットワークへ転送されるか又はシステム・
メモリへ受信されるまで、実質的にデバイス・ドライバ
とは独立してフレームをセルへセグメント化しかつセル
をフレームへ再組立することである。これを実行するこ
とにより、デバイス・ドライバは、ATMネットワーク
122とのデータの伝送及び受信において更に効率的と
なるであろう。
【0018】図2及び図3は、システム・メモリ116
に記憶された情報のフォーマットを更に詳細に示した図
である。システム・メモリ116に記憶された情報を以
下に説明する。図3では、受信バッファ記述子200の
リストがシステム・メモリ116に記憶されている。各
受信バッファ記述子200は、システム・メモリ116
内の受信データ・バッファ202を規定する。受信バッ
ファ記述子200は、データ・バッファ・アドレス・フ
ィールド204、前方ポインタ・アドレス・フィールド
206、データ・バッファ長フィールド208、状態フ
ィールド210、及び他のATM固有フィールドを含
む。受信バッファ記述子200内の受信データ・バッフ
ァ・アドレス204は、システム・メモリ116内に場
所指定された受信データ・バッファ202を指示する。
受信空きバッファ・リスト212は、データ記憶のため
に使用可能な受信データ・バッファを指示する受信バッ
ファ記述子200の連結されたリストである。この受信
空きバッファ・リスト212の中の受信バッファ記述子
200は、前方ポインタ・アドレス・フィールド206
を用いて連結される。受信準備リスト214は、受信フ
レーム・データで満たされた受信バッファ記述子200
の連結されたリストである。これらもまた、前方ポイン
タ・アドレス・フィールド206を用いて連結される。
に記憶された情報のフォーマットを更に詳細に示した図
である。システム・メモリ116に記憶された情報を以
下に説明する。図3では、受信バッファ記述子200の
リストがシステム・メモリ116に記憶されている。各
受信バッファ記述子200は、システム・メモリ116
内の受信データ・バッファ202を規定する。受信バッ
ファ記述子200は、データ・バッファ・アドレス・フ
ィールド204、前方ポインタ・アドレス・フィールド
206、データ・バッファ長フィールド208、状態フ
ィールド210、及び他のATM固有フィールドを含
む。受信バッファ記述子200内の受信データ・バッフ
ァ・アドレス204は、システム・メモリ116内に場
所指定された受信データ・バッファ202を指示する。
受信空きバッファ・リスト212は、データ記憶のため
に使用可能な受信データ・バッファを指示する受信バッ
ファ記述子200の連結されたリストである。この受信
空きバッファ・リスト212の中の受信バッファ記述子
200は、前方ポインタ・アドレス・フィールド206
を用いて連結される。受信準備リスト214は、受信フ
レーム・データで満たされた受信バッファ記述子200
の連結されたリストである。これらもまた、前方ポイン
タ・アドレス・フィールド206を用いて連結される。
【0019】図2に示すようにシステム・メモリには、
伝送フレーム記述子250のリストもまた記憶されてい
る。各伝送フレーム記述子250は、システム・メモリ
116内の1又は複数の伝送データ・バッファ252を
規定する。伝送フレーム記述子250は、前方ポインタ
・アドレス・フィールド254、伝送完了リスト(TC
L)前方ポインタ256、数個のATM固有フィール
ド、データ・バッファ計数フィールド258、各関連す
る伝送データ・バッファの伝送データ・バッファ・アド
レス・フィールド260、及び各関連する伝送データ・
バッファの伝送データ・バッファ長を含む。前方ポイン
タ・アドレス・フィールド206は、特定の論理チャネ
ルについての伝送フレームを連結させるために用いられ
る。TCL前方ポインタ256は、伝送完了リスト26
4へ伝送された伝送フレーム記述子を連結するために用
いられる。伝送データ・バッファ計数258は、伝送フ
レーム記述子250に関連する伝送データ・バッファ2
52の数を示すために用いられる。各伝送データ・バッ
ファ・アドレス260は、システム・メモリ116内に
場所指定された伝送データ・バッファ252の1つを指
示する。各伝送データ・バッファ長262は、関連する
伝送データ・バッファ252内のバイト数を示す。
伝送フレーム記述子250のリストもまた記憶されてい
る。各伝送フレーム記述子250は、システム・メモリ
116内の1又は複数の伝送データ・バッファ252を
規定する。伝送フレーム記述子250は、前方ポインタ
・アドレス・フィールド254、伝送完了リスト(TC
L)前方ポインタ256、数個のATM固有フィール
ド、データ・バッファ計数フィールド258、各関連す
る伝送データ・バッファの伝送データ・バッファ・アド
レス・フィールド260、及び各関連する伝送データ・
バッファの伝送データ・バッファ長を含む。前方ポイン
タ・アドレス・フィールド206は、特定の論理チャネ
ルについての伝送フレームを連結させるために用いられ
る。TCL前方ポインタ256は、伝送完了リスト26
4へ伝送された伝送フレーム記述子を連結するために用
いられる。伝送データ・バッファ計数258は、伝送フ
レーム記述子250に関連する伝送データ・バッファ2
52の数を示すために用いられる。各伝送データ・バッ
ファ・アドレス260は、システム・メモリ116内に
場所指定された伝送データ・バッファ252の1つを指
示する。各伝送データ・バッファ長262は、関連する
伝送データ・バッファ252内のバイト数を示す。
【0020】図4は、アダプタ120を詳細に示した図
である。アダプタ120は、入力としてセルを受信しか
つ出力としてセルを伝送するために、双方向インタフェ
ース301を介してネットワーク122へ接続される。
受信セルは、ATOMICネットワーク・インタフェース・モ
ジュール301、エンコーダ/デコーダ(ENDEC)3
03、メモリ・インタフェース307を通り、制御/デ
ータ・メモリ309へ達し、ここで受信セルは一時的に
記憶される。プロセッサ305は、セルが制御/データ
・メモリ309内に入ったとき通知される。その後、A
TM・AAL1/AAL5プロセス制御装置305は、
制御/データ・メモリ309からセルの移動を開始し、
メモリ・インタフェース307及びバス・インタフェー
ス311を介してシステム・メモリ116(図1参照)
へ移動させる。セルを伝送するためには、ATM・AA
L1/AAL5プロセス制御装置305が、システム・
メモリ116からのセルの移動を開始し、バス・インタ
フェース311、メモリ・インタフェース307を介し
て制御/データ・メモリ309へ移動させ、ここでセル
は一時的に記憶される。その後伝送セルは、メモリ・イ
ンタフェース307、エンコーダ/デコーダ(ENDE
C)303、ATOMICネットワーク・インタフェース・モ
ジュール301介してATMネットワーク122へと移
動させられる。
である。アダプタ120は、入力としてセルを受信しか
つ出力としてセルを伝送するために、双方向インタフェ
ース301を介してネットワーク122へ接続される。
受信セルは、ATOMICネットワーク・インタフェース・モ
ジュール301、エンコーダ/デコーダ(ENDEC)3
03、メモリ・インタフェース307を通り、制御/デ
ータ・メモリ309へ達し、ここで受信セルは一時的に
記憶される。プロセッサ305は、セルが制御/データ
・メモリ309内に入ったとき通知される。その後、A
TM・AAL1/AAL5プロセス制御装置305は、
制御/データ・メモリ309からセルの移動を開始し、
メモリ・インタフェース307及びバス・インタフェー
ス311を介してシステム・メモリ116(図1参照)
へ移動させる。セルを伝送するためには、ATM・AA
L1/AAL5プロセス制御装置305が、システム・
メモリ116からのセルの移動を開始し、バス・インタ
フェース311、メモリ・インタフェース307を介し
て制御/データ・メモリ309へ移動させ、ここでセル
は一時的に記憶される。その後伝送セルは、メモリ・イ
ンタフェース307、エンコーダ/デコーダ(ENDE
C)303、ATOMICネットワーク・インタフェース・モ
ジュール301介してATMネットワーク122へと移
動させられる。
【0021】図5は、ATM・AAL1/AAL5プロ
セス制御装置305の所与の詳細を示す図である。制御
装置305は、オペレーション伝送用のピコプロセッサ
401と、オペレーション受信用のピコプロセッサ40
3とを含む。さらに、制御装置305は、伝送制御レジ
スタ405と、受信制御レジスタ407とを含む。伝送
制御レジスタ405及び受信制御レジスタ407は、ネ
ットワークへ伝送されるフレームを識別し、そしてネッ
トワークからのセルをフレームへと再組立して記憶する
受信準備リストを識別するべくデバイス・ドライバによ
りセットされる。伝送準備キュー(TRQ)(図6参照)
は、デバイス・ドライバ128によって制御/データ・
メモリ309内に構築される。このTRQは、システム
・メモリ116からATMネットワーク122へアダプ
タ120によりフレームを転送する際に、アダプタ・ハ
ードウェアにより実行される伝送オペレーションをキュ
ーする。TRQの大きさ及び制御/データ・メモリ30
9内における位置は、初期化時にデバイス・ドライバに
よって伝送制御レジスタ405へ書き込まれるパラメー
タにより決定される。2つの伝送準備キュー(T5RQ
及びT1RQ)があり、1つはAAL5トラフィック用
であり、もう1つはAAL1トラフィック用である。双
方のキューとも同じ構造をもち、いずれも制御/データ
・メモリ309内に置かれている。各TRQは5個のレ
ジスタを有し、これらは制御/データ・メモリ309内
における位置を規定する。5個のレジスタは、キューに
関連するベース(制御/データ・メモリ309へのオフ
セット)、トップ、ボトム、書込みポインタ、及び読取
りポインタを規定する。デバイス・ドライバは、ベース
・レジスタ、トップ・レジスタ、及びボトム・レジスタ
を書き込むことにより、制御/データ・メモリ309内
のTRQを場所指定する。4ビットのベース・レジスタ
の内容が13ビットのトップ・レジスタの内容と連結さ
れて、そのキューの始まりを決定する。そして、4ビッ
トのベース・レジスタの内容が13ビットのボトム・レ
ジスタの内容と連結されて、そのキューの終わりを決定
する。初期化時には、読取りポインタ及び書込みポイン
タの双方が、キューのトップを指示することによりその
キューが空であることを示す。
セス制御装置305の所与の詳細を示す図である。制御
装置305は、オペレーション伝送用のピコプロセッサ
401と、オペレーション受信用のピコプロセッサ40
3とを含む。さらに、制御装置305は、伝送制御レジ
スタ405と、受信制御レジスタ407とを含む。伝送
制御レジスタ405及び受信制御レジスタ407は、ネ
ットワークへ伝送されるフレームを識別し、そしてネッ
トワークからのセルをフレームへと再組立して記憶する
受信準備リストを識別するべくデバイス・ドライバによ
りセットされる。伝送準備キュー(TRQ)(図6参照)
は、デバイス・ドライバ128によって制御/データ・
メモリ309内に構築される。このTRQは、システム
・メモリ116からATMネットワーク122へアダプ
タ120によりフレームを転送する際に、アダプタ・ハ
ードウェアにより実行される伝送オペレーションをキュ
ーする。TRQの大きさ及び制御/データ・メモリ30
9内における位置は、初期化時にデバイス・ドライバに
よって伝送制御レジスタ405へ書き込まれるパラメー
タにより決定される。2つの伝送準備キュー(T5RQ
及びT1RQ)があり、1つはAAL5トラフィック用
であり、もう1つはAAL1トラフィック用である。双
方のキューとも同じ構造をもち、いずれも制御/データ
・メモリ309内に置かれている。各TRQは5個のレ
ジスタを有し、これらは制御/データ・メモリ309内
における位置を規定する。5個のレジスタは、キューに
関連するベース(制御/データ・メモリ309へのオフ
セット)、トップ、ボトム、書込みポインタ、及び読取
りポインタを規定する。デバイス・ドライバは、ベース
・レジスタ、トップ・レジスタ、及びボトム・レジスタ
を書き込むことにより、制御/データ・メモリ309内
のTRQを場所指定する。4ビットのベース・レジスタ
の内容が13ビットのトップ・レジスタの内容と連結さ
れて、そのキューの始まりを決定する。そして、4ビッ
トのベース・レジスタの内容が13ビットのボトム・レ
ジスタの内容と連結されて、そのキューの終わりを決定
する。初期化時には、読取りポインタ及び書込みポイン
タの双方が、キューのトップを指示することによりその
キューが空であることを示す。
【0022】再び図1〜図3を参照して、ATMネット
ワーク122から受信したフレームの処理を説明する。
デバイス・ドライバ128とアダプタ120との通信
は、システム・メモリ116に含まれる受信空きリスト
212及び受信準備リスト(RRL)により支援される。
ATMセルはシステム・メモリ116内で再びフレーム
へと組立られる。データ・バッファ記述子及びこれらの
関連バッファが、空きバッファ・リストから取得され、
必要に応じて受信したセルを記憶するために用いられ
る。バッファが用いられると、バッファ記述子は互いに
結合されてバッファ記述子の連結されたリストを形成
し、これは完了したフレームを含むバッファを指示す
る。システム・メモリ116内でフレームが完全に再組
立されたならば、そのフレームの第1のバッファ記述子
へのポインタが、システム・メモリ116内に配置され
た受信準備リスト214の1つに入れられる。プロセッ
サ112は、受信準備リストをサービスするために割込
みされる。デバイス・ドライバはこれらのデータ構造を
用いることにより1つの割込みで複数のフレームを処理
可能であるのでインタフェース効率が向上する。
ワーク122から受信したフレームの処理を説明する。
デバイス・ドライバ128とアダプタ120との通信
は、システム・メモリ116に含まれる受信空きリスト
212及び受信準備リスト(RRL)により支援される。
ATMセルはシステム・メモリ116内で再びフレーム
へと組立られる。データ・バッファ記述子及びこれらの
関連バッファが、空きバッファ・リストから取得され、
必要に応じて受信したセルを記憶するために用いられ
る。バッファが用いられると、バッファ記述子は互いに
結合されてバッファ記述子の連結されたリストを形成
し、これは完了したフレームを含むバッファを指示す
る。システム・メモリ116内でフレームが完全に再組
立されたならば、そのフレームの第1のバッファ記述子
へのポインタが、システム・メモリ116内に配置され
た受信準備リスト214の1つに入れられる。プロセッ
サ112は、受信準備リストをサービスするために割込
みされる。デバイス・ドライバはこれらのデータ構造を
用いることにより1つの割込みで複数のフレームを処理
可能であるのでインタフェース効率が向上する。
【0023】図6は、伝送プロセスの第1のステップを
示す図であり、制御/データ・メモリ309内のTRQ
キュー・エントリ501のフォーマットを示しており、
伝送制御レジスタ405(図5参照)により規定される。
最初の16ビットのワード503は、伝送オペレーショ
ンに関連する論理チャネル番号(LC)を含む。次の2つ
のワードは、システム・メモリ116内のフレーム記述
子のアドレス505を含む。TRQ501は、1又は複
数のATMフレームが特定の論理チャネルにおいて伝送
されようとする毎にデバイス・ドライバにより書き込ま
れる。2個の伝送準備キューがあり、1つはAAL1ト
ラフィック用(T1RQ)であり、もう1つはAAL5ト
ラフィック用(T5RQ)である。
示す図であり、制御/データ・メモリ309内のTRQ
キュー・エントリ501のフォーマットを示しており、
伝送制御レジスタ405(図5参照)により規定される。
最初の16ビットのワード503は、伝送オペレーショ
ンに関連する論理チャネル番号(LC)を含む。次の2つ
のワードは、システム・メモリ116内のフレーム記述
子のアドレス505を含む。TRQ501は、1又は複
数のATMフレームが特定の論理チャネルにおいて伝送
されようとする毎にデバイス・ドライバにより書き込ま
れる。2個の伝送準備キューがあり、1つはAAL1ト
ラフィック用(T1RQ)であり、もう1つはAAL5ト
ラフィック用(T5RQ)である。
【0024】デバイス・ドライバ・コードがTRQを過
剰に満たすことがないように、伝送制御レジスタ405
内の状態レジスタに含まれる各キューについての「フル
(full)・ビット」がポーリングされなければならない。
関連キューが満杯でないことを状態レジスタが示す場合
には、デバイス・ドライバは次のエントリを追加するこ
とができる。一方、そのキューが満杯であることを状態
レジスタが示す場合には、デバイス・ドライバは、「満
杯ではない」という標示を受信するまでその状態をポー
リングし続けなければならない。
剰に満たすことがないように、伝送制御レジスタ405
内の状態レジスタに含まれる各キューについての「フル
(full)・ビット」がポーリングされなければならない。
関連キューが満杯でないことを状態レジスタが示す場合
には、デバイス・ドライバは次のエントリを追加するこ
とができる。一方、そのキューが満杯であることを状態
レジスタが示す場合には、デバイス・ドライバは、「満
杯ではない」という標示を受信するまでその状態をポー
リングし続けなければならない。
【0025】TRQによってデバイス・ドライバは、伝
送する複数のフレームを非同期的にキューすることがで
きる一方、アダプタ・ハードウェアは既存のフレームを
処理する。これによりアダプタ及びデバイス・ドライバ
の性能が改善される。
送する複数のフレームを非同期的にキューすることがで
きる一方、アダプタ・ハードウェアは既存のフレームを
処理する。これによりアダプタ及びデバイス・ドライバ
の性能が改善される。
【0026】図7は、伝送プロセスの第2のステップを
示す。このステップでは、アダプタ120はTRQ上の
エントリのTRQ論理チャネル番号503に基づいてこ
れらを取り出し連結させ、伝送されるフレームのリスト
とする。連結されたリストの終わりは、x'00000001'に
等しい前方ポインタにより示される。未完了の伝送要求
に関する各ATM論理チャネル(LC)に対して1つのリ
ストがある。図7では、LCx、LCy、及びLCzと
して示される3個の論理チャネルがある。各リストの第
1の記述子に関連するフレームは、各フレームから1つ
のセルをインタリーブすることにより同時に伝送され
る。1つの論理チャネルについてのフレーム伝送が完了
すると、そのフレームについての記述子がリストから除
かれる。除かれたばかりの記述子が最後でない場合は、
次の連結された記述子に関連するフレームの伝送が開始
される。このプロセスは、全ての連結された記述子に関
連するフレームが伝送されるまで続けられる。デバイス
・ドライバが未完了の伝送要求を有する論理チャネルに
ついてのTRQ上にエントリを入れるとき、その論理チ
ャネルについての新たな連結されたリストが作成され
る。連結されたフレームは直ちに、既に伝送されている
フレームからのセルとセルをインタリーブすることによ
り伝送されることになる。デバイス・ドライバが伝送す
ると同時に1つのLCについての伝送要求をTRQ上に
入れたならば、その要求はそのLCに関連するリストに
連結されて上記のように伝送されることとなる。
示す。このステップでは、アダプタ120はTRQ上の
エントリのTRQ論理チャネル番号503に基づいてこ
れらを取り出し連結させ、伝送されるフレームのリスト
とする。連結されたリストの終わりは、x'00000001'に
等しい前方ポインタにより示される。未完了の伝送要求
に関する各ATM論理チャネル(LC)に対して1つのリ
ストがある。図7では、LCx、LCy、及びLCzと
して示される3個の論理チャネルがある。各リストの第
1の記述子に関連するフレームは、各フレームから1つ
のセルをインタリーブすることにより同時に伝送され
る。1つの論理チャネルについてのフレーム伝送が完了
すると、そのフレームについての記述子がリストから除
かれる。除かれたばかりの記述子が最後でない場合は、
次の連結された記述子に関連するフレームの伝送が開始
される。このプロセスは、全ての連結された記述子に関
連するフレームが伝送されるまで続けられる。デバイス
・ドライバが未完了の伝送要求を有する論理チャネルに
ついてのTRQ上にエントリを入れるとき、その論理チ
ャネルについての新たな連結されたリストが作成され
る。連結されたフレームは直ちに、既に伝送されている
フレームからのセルとセルをインタリーブすることによ
り伝送されることになる。デバイス・ドライバが伝送す
ると同時に1つのLCについての伝送要求をTRQ上に
入れたならば、その要求はそのLCに関連するリストに
連結されて上記のように伝送されることとなる。
【0027】図8は、伝送プロセスの第3のステップを
示す図である。この図は、論理チャネルLCx、LC
y、及びLCzについての伝送完了リスト(TCL)を形
成するべく連結された記述子を示している。システム
は、処理された最後の伝送フレーム記述子のアドレスを
保持しなければならない。アダプタ120は、新たに伝
送されたフレーム記述子のアドレスと共に伝送された最
後のフレームのTCL前方ポインタを更新する。フレー
ムは、LCx、LCy、LCx、そしてLCzの順序で
伝送される。フレーム記述子はシステム・メモリ116
内に置かれ、そしてフレームが伝送されると同時にアダ
プタ120によってシステム・メモリ116内に伝送完
了リストが構築される。初期化時にデバイス・ドライバ
は、伝送制御レジスタ405(図5参照)に置かれたTCL_
lastフレーム・データ・アドレス(LFDA)レジスタ
に、最後にサービスされるフレーム記述子のシステム・
メモリ116内のアドレスを書き込む。この記述子は、
「ポンプの呼び水(開始の支援)」のために用いられるダ
ミー・アドレスである。アダプタがフレームの伝送を完
了すると、新たに完了したフレーム記述子のTCL前方
ポインタ・フィールドを用いてそのフレーム記述子が伝
送完了リストに連結される。連結されたリストの終わり
は、前方ポインタにバイナリ値「1」にセットされた最
下位ビットを書き込むことにより示される。アダプタが
伝送完了リストへ追加すると、TCL_LFDAの内容が、追加
された最後のエントリのシステム・メモリ・アドレスに
より更新される。デバイス・ドライバは、最後に処理さ
れたエントリのポインタを保持する。アダプタは、新た
に連結されたフレームの最後のフレーム記述子について
のTCL前方ポインタを'0000001'Xに等しくセットする
ことにより、伝送完了リストの終わりを示す。システム
は、前方ポインタが'00000001'Xに等しくなるとき伝送
完了リストの終わりに達したことを認知する。このプロ
セスの利点は、伝送完了リストが記述子を互いに連結さ
せることにより形成されることである。この手法を用い
ると、伝送完了リストをオーバランすることは不可能で
ある。さらにこのプロセスは、アダプタ・ハードウェア
とデバイス・ドライバ・ソフトウェアとの間の非同期イ
ンタフェースを提供する。従って、デバイス・ドライバ
・サービスを要求する前に複数のフレームの伝送を完了
することができ、またキューすることができる。
示す図である。この図は、論理チャネルLCx、LC
y、及びLCzについての伝送完了リスト(TCL)を形
成するべく連結された記述子を示している。システム
は、処理された最後の伝送フレーム記述子のアドレスを
保持しなければならない。アダプタ120は、新たに伝
送されたフレーム記述子のアドレスと共に伝送された最
後のフレームのTCL前方ポインタを更新する。フレー
ムは、LCx、LCy、LCx、そしてLCzの順序で
伝送される。フレーム記述子はシステム・メモリ116
内に置かれ、そしてフレームが伝送されると同時にアダ
プタ120によってシステム・メモリ116内に伝送完
了リストが構築される。初期化時にデバイス・ドライバ
は、伝送制御レジスタ405(図5参照)に置かれたTCL_
lastフレーム・データ・アドレス(LFDA)レジスタ
に、最後にサービスされるフレーム記述子のシステム・
メモリ116内のアドレスを書き込む。この記述子は、
「ポンプの呼び水(開始の支援)」のために用いられるダ
ミー・アドレスである。アダプタがフレームの伝送を完
了すると、新たに完了したフレーム記述子のTCL前方
ポインタ・フィールドを用いてそのフレーム記述子が伝
送完了リストに連結される。連結されたリストの終わり
は、前方ポインタにバイナリ値「1」にセットされた最
下位ビットを書き込むことにより示される。アダプタが
伝送完了リストへ追加すると、TCL_LFDAの内容が、追加
された最後のエントリのシステム・メモリ・アドレスに
より更新される。デバイス・ドライバは、最後に処理さ
れたエントリのポインタを保持する。アダプタは、新た
に連結されたフレームの最後のフレーム記述子について
のTCL前方ポインタを'0000001'Xに等しくセットする
ことにより、伝送完了リストの終わりを示す。システム
は、前方ポインタが'00000001'Xに等しくなるとき伝送
完了リストの終わりに達したことを認知する。このプロ
セスの利点は、伝送完了リストが記述子を互いに連結さ
せることにより形成されることである。この手法を用い
ると、伝送完了リストをオーバランすることは不可能で
ある。さらにこのプロセスは、アダプタ・ハードウェア
とデバイス・ドライバ・ソフトウェアとの間の非同期イ
ンタフェースを提供する。従って、デバイス・ドライバ
・サービスを要求する前に複数のフレームの伝送を完了
することができ、またキューすることができる。
【0028】図9は、ATMネットワーク122からセ
ルを受信するプロセスに関連する2つのエンティティ
(実体)が示されている。これらのエンティティは、図2
及び図3に示したシステム・メモリ116内の空きバッ
ファ・リスト212及び受信準備リスト214である。
空きバッファ・リストは、デバイス・ドライバによって
もATM・AAL1/AAL5プロセス制御装置305
によっても保持される。デバイス・ドライバの役割は、
バッファ記述子に置かれた前方ポインタを用いて初期化
時に空きバッファ記述子の連結されたリストを構築する
ことであり、そしてそのリスト上の最後のエントリに対
するポインタを保持することである。このポインタは、
更なるバッファをリストに追加するとき又は受信フレー
ムを処理した後にリストへバッファを返すときに用いら
れる。バッファが返されるか又は追加されると、デバイ
ス・ドライバは、常に最後のエントリを示すようにポイ
ンタを更新しなければならない。
ルを受信するプロセスに関連する2つのエンティティ
(実体)が示されている。これらのエンティティは、図2
及び図3に示したシステム・メモリ116内の空きバッ
ファ・リスト212及び受信準備リスト214である。
空きバッファ・リストは、デバイス・ドライバによって
もATM・AAL1/AAL5プロセス制御装置305
によっても保持される。デバイス・ドライバの役割は、
バッファ記述子に置かれた前方ポインタを用いて初期化
時に空きバッファ記述子の連結されたリストを構築する
ことであり、そしてそのリスト上の最後のエントリに対
するポインタを保持することである。このポインタは、
更なるバッファをリストに追加するとき又は受信フレー
ムを処理した後にリストへバッファを返すときに用いら
れる。バッファが返されるか又は追加されると、デバイ
ス・ドライバは、常に最後のエントリを示すようにポイ
ンタを更新しなければならない。
【0029】空きバッファ・リストの保持におけるAT
M・AAL1/AAL5プロセス制御装置305(図4
参照)の役割は、このリストの始まりのアドレスの複写
を保持することである。このアドレスは、受信制御レジ
スタ407(図5参照)内の空きバッファ・リスト始点
(SRFL)レジスタ408に置かれており、デバイス・
ドライバにより初期化される。システム・メモリ116
へデータが書き込まれるとき、アダプタ120は、空き
バッファ・リストからバッファを取り除き、バッファ記
述子からの前方ポインタをSRFLレジスタへ複写する
ことによりSRFLレジスタを更新する。従ってSRF
Lレジスタは、常に、空きバッファ・リスト上の次のエ
ントリのアドレスを含むことになる。
M・AAL1/AAL5プロセス制御装置305(図4
参照)の役割は、このリストの始まりのアドレスの複写
を保持することである。このアドレスは、受信制御レジ
スタ407(図5参照)内の空きバッファ・リスト始点
(SRFL)レジスタ408に置かれており、デバイス・
ドライバにより初期化される。システム・メモリ116
へデータが書き込まれるとき、アダプタ120は、空き
バッファ・リストからバッファを取り除き、バッファ記
述子からの前方ポインタをSRFLレジスタへ複写する
ことによりSRFLレジスタを更新する。従ってSRF
Lレジスタは、常に、空きバッファ・リスト上の次のエ
ントリのアドレスを含むことになる。
【0030】空きバッファ・リストが空になることを避
けるために、空きバッファ・リスト上の最後のエントリ
の前方ポインタのビット0は、バイナリ値「1」にセッ
トされている。アダプタ120がこの値を検査して見出
した場合には、プロセッサ112に対して空きバッファ
・リストが使い尽くされたことを示す割込みを発生す
る。空きバッファ・リスト上の最後のバッファは、受信
データを記憶するためには用いられないが、更なるバッ
ファが返されたり追加されたりするときの連結点として
空きバッファ・リスト上に設けられている。空きバッフ
ァ・リストは、デバイス・ドライバ128とアダプタ1
20との間に共有され、そしてデバイス・ドライバ12
8は空きバッファ・リストの後尾を追跡し、アダプタ1
20はその先頭を追跡する。
けるために、空きバッファ・リスト上の最後のエントリ
の前方ポインタのビット0は、バイナリ値「1」にセッ
トされている。アダプタ120がこの値を検査して見出
した場合には、プロセッサ112に対して空きバッファ
・リストが使い尽くされたことを示す割込みを発生す
る。空きバッファ・リスト上の最後のバッファは、受信
データを記憶するためには用いられないが、更なるバッ
ファが返されたり追加されたりするときの連結点として
空きバッファ・リスト上に設けられている。空きバッフ
ァ・リストは、デバイス・ドライバ128とアダプタ1
20との間に共有され、そしてデバイス・ドライバ12
8は空きバッファ・リストの後尾を追跡し、アダプタ1
20はその先頭を追跡する。
【0031】空きバッファ・リストが使い尽くされたな
らば、デバイス・ドライバは、システム・メモリ116
内におけるこのリストの終わりの位置を認知する必要が
ある。この情報を得るためにデバイス・ドライバは、S
FRLレジスタを読み取らなければならない。空きバッ
ファ・リストによって、デバイス・ドライバが1フレー
ムベースでのみ介入する、アダプタとシステム・メモリ
との間のフレーム転送のために必要な手段が提供され
る。
らば、デバイス・ドライバは、システム・メモリ116
内におけるこのリストの終わりの位置を認知する必要が
ある。この情報を得るためにデバイス・ドライバは、S
FRLレジスタを読み取らなければならない。空きバッ
ファ・リストによって、デバイス・ドライバが1フレー
ムベースでのみ介入する、アダプタとシステム・メモリ
との間のフレーム転送のために必要な手段が提供され
る。
【0032】図10は、受信プロセスで用いられる第2
のエンティティである受信準備リスト214(図2及び
図3参照)を示す。受信準備リストは、デバイス・ドラ
イバ128により構築され、システム・メモリ116内
に配置される。ATMネットワーク122からセルが受
信され、空きバッファ・リストから取得されたバッファ
に置かれると、完全なフレームがシステム・メモリ11
6内で組み立てられるまで関連するバッファ記述子が互
いに連結される。フレームが組み立てられたならば、そ
のフレームに関連するバッファ記述子が、図10に示す
8個の受信準備リストRRL0〜RRL7の1つに連結
される。フレームがシステム・メモリ116内で再組立
されたという事実は、ATM・AAL1/AAL5プロ
セス制御装置305に置かれたシステム割込み状態レジ
スタ1015(図11参照)を用いてデバイス・ドライ
バへ伝達される。システム割込み状態レジスタ1015
は、デバイス・ドライバにより保持される8個の受信準
備リストRRL0〜RRL7の各々についての状態ビッ
トを含む。複数の受信準備リストを有することにより、
デバイス・ドライバは論理チャネルに対して優先度を割
り当てることができる。
のエンティティである受信準備リスト214(図2及び
図3参照)を示す。受信準備リストは、デバイス・ドラ
イバ128により構築され、システム・メモリ116内
に配置される。ATMネットワーク122からセルが受
信され、空きバッファ・リストから取得されたバッファ
に置かれると、完全なフレームがシステム・メモリ11
6内で組み立てられるまで関連するバッファ記述子が互
いに連結される。フレームが組み立てられたならば、そ
のフレームに関連するバッファ記述子が、図10に示す
8個の受信準備リストRRL0〜RRL7の1つに連結
される。フレームがシステム・メモリ116内で再組立
されたという事実は、ATM・AAL1/AAL5プロ
セス制御装置305に置かれたシステム割込み状態レジ
スタ1015(図11参照)を用いてデバイス・ドライ
バへ伝達される。システム割込み状態レジスタ1015
は、デバイス・ドライバにより保持される8個の受信準
備リストRRL0〜RRL7の各々についての状態ビッ
トを含む。複数の受信準備リストを有することにより、
デバイス・ドライバは論理チャネルに対して優先度を割
り当てることができる。
【0033】デバイス・ドライバがシステム割込み状態
レジスタ415を読み取り、そしてフレームがATMネ
ットワーク122から受信されて受信準備リストの1つ
に置かれたことを見出したならば、デバイス・ドライバ
は受信準備リストを通して処理を進め、受信準備リスト
の終わりに達するまで全てのフレームを処理する。バッ
ファ記述子の前方ポインタ・アドレス・フィールドのビ
ット0がバイナリ値「1」に等しくなったとき受信準備
リストの終わりに達する。(有効アドレスは、4バイト
境界上に置かれる。)受信準備リストの終わりに達した
とき、デバイス・ドライバは、システム・メモリ116
内の受信準備リストについて処理された最後の受信バッ
ファ記述子のアドレスを保持する。
レジスタ415を読み取り、そしてフレームがATMネ
ットワーク122から受信されて受信準備リストの1つ
に置かれたことを見出したならば、デバイス・ドライバ
は受信準備リストを通して処理を進め、受信準備リスト
の終わりに達するまで全てのフレームを処理する。バッ
ファ記述子の前方ポインタ・アドレス・フィールドのビ
ット0がバイナリ値「1」に等しくなったとき受信準備
リストの終わりに達する。(有効アドレスは、4バイト
境界上に置かれる。)受信準備リストの終わりに達した
とき、デバイス・ドライバは、システム・メモリ116
内の受信準備リストについて処理された最後の受信バッ
ファ記述子のアドレスを保持する。
【0034】デバイス・ドライバ128は、システム・
メモリ116内のバッファが解放されると受信空きリス
ト(RFL)を更新する。さらにデバイス・ドライバは、
現在受信空きリストの終わりに位置する記述子の前方ポ
インタを、追加される記述子のリストの始まりを指示す
るように更新する(記述子は、一時に1又は複数、受信
空きリストに追加することができる)。受信空きリスト
に最後に追加された記述子は、リストの終わりを示す前
方ポインタをもたなければならない(すなわち、前方ポ
インタのビット0がバイナリ値「1」にセットされてい
る)。
メモリ116内のバッファが解放されると受信空きリス
ト(RFL)を更新する。さらにデバイス・ドライバは、
現在受信空きリストの終わりに位置する記述子の前方ポ
インタを、追加される記述子のリストの始まりを指示す
るように更新する(記述子は、一時に1又は複数、受信
空きリストに追加することができる)。受信空きリスト
に最後に追加された記述子は、リストの終わりを示す前
方ポインタをもたなければならない(すなわち、前方ポ
インタのビット0がバイナリ値「1」にセットされてい
る)。
【0035】デバイス・ドライバは、受信準備リスト
(RRL)の各々についての第1のエントリに対するポイ
ンタを管理しかつ更新しなければならない。このポイン
タは、システム・メモリ116に置かれている。ポイン
タは、前の割込みの結果として処理された最後のバッフ
ァ記述子アドレス(LBDA)を指示する。この値はさら
に、関連する受信準備リストについて次の割込みが受信
されたとき、いずれの記述子から処理を開始するかをデ
バイス・ドライバに知らせる。デバイス・ドライバは、
ビット0ば「1」にセットされた前方ポインタをもつ記
述子に達するまで、受信準備リスト上のエントリの処理
を続ける。この記述子に達したならば、RRLサービス
が要求されたことを示す状態による次の割込みが受信さ
れるまで記述子の処理を停止する。
(RRL)の各々についての第1のエントリに対するポイ
ンタを管理しかつ更新しなければならない。このポイン
タは、システム・メモリ116に置かれている。ポイン
タは、前の割込みの結果として処理された最後のバッフ
ァ記述子アドレス(LBDA)を指示する。この値はさら
に、関連する受信準備リストについて次の割込みが受信
されたとき、いずれの記述子から処理を開始するかをデ
バイス・ドライバに知らせる。デバイス・ドライバは、
ビット0ば「1」にセットされた前方ポインタをもつ記
述子に達するまで、受信準備リスト上のエントリの処理
を続ける。この記述子に達したならば、RRLサービス
が要求されたことを示す状態による次の割込みが受信さ
れるまで記述子の処理を停止する。
【0036】受信準備リスト・ポインタのシステム初期
化プロセスの例が、図10に示されている。8個の受信
バッファ・リスト(RRL0〜7)に対するポインタはシ
ステム・メモリに置かれているが、バッファ記述子のア
ドレスにより初期化される。これらのバッファ記述子に
置かれた前方ポインタは、'00000001'Xにセットされ
る。アダプタ120において、受信制御レジスタ407
内のレジスタRRL0〜RRL7もまた、これらの同じ
アドレス値を用いてデバイス・ドライバにより初期化さ
れる。
化プロセスの例が、図10に示されている。8個の受信
バッファ・リスト(RRL0〜7)に対するポインタはシ
ステム・メモリに置かれているが、バッファ記述子のア
ドレスにより初期化される。これらのバッファ記述子に
置かれた前方ポインタは、'00000001'Xにセットされ
る。アダプタ120において、受信制御レジスタ407
内のレジスタRRL0〜RRL7もまた、これらの同じ
アドレス値を用いてデバイス・ドライバにより初期化さ
れる。
【0037】ATM・AAL1/AAL5プロセス制御
装置305は、システム・メモリ116に置かれた8個
の受信準備リストの1つを用いて、完全なフレームが再
組立されたことをデバイス・ドライバに対して通知す
る。これらのリストは、受信フレームを含む関連バッフ
ァをもつバッファ記述子の連結されたリストからなる。
受信フレームに関連する連鎖の第1の記述子は、そのフ
レームの状態と長さを含む。リスト内の各記述子は、連
鎖の終わりの印であるビット0がバイナリ値「1」にセ
ットされたポインタに達するまで、次の記述子を指示す
る。(図11参照のこと。)多数の受信フレームを互い
に連結させてデバイス・ドライバによる処理を待たせる
ことができる。システム・メモリ116内の8個の受信
準備リストは、受信フレームの状態を含む8個の状態キ
ューを形成する。これら8個のリストの処理に対して、
デバイス・ドライバにより優先度を与えることができ
る。
装置305は、システム・メモリ116に置かれた8個
の受信準備リストの1つを用いて、完全なフレームが再
組立されたことをデバイス・ドライバに対して通知す
る。これらのリストは、受信フレームを含む関連バッフ
ァをもつバッファ記述子の連結されたリストからなる。
受信フレームに関連する連鎖の第1の記述子は、そのフ
レームの状態と長さを含む。リスト内の各記述子は、連
鎖の終わりの印であるビット0がバイナリ値「1」にセ
ットされたポインタに達するまで、次の記述子を指示す
る。(図11参照のこと。)多数の受信フレームを互い
に連結させてデバイス・ドライバによる処理を待たせる
ことができる。システム・メモリ116内の8個の受信
準備リストは、受信フレームの状態を含む8個の状態キ
ューを形成する。これら8個のリストの処理に対して、
デバイス・ドライバにより優先度を与えることができ
る。
【0038】8個の受信準備リストの各々の最後に処理
されたエントリに対するポインタは、デバイス・ドライ
バにより保持される。受信準備リスト・レジスタは、A
TM・AAL1/AAL5プロセス制御装置305によ
り保持され、アダプタにより各リストに追加される最後
のエントリのアドレスを含む。デバイス・ドライバは、
受信準備リスト・レジスタ及びそれ自体の複写を、バッ
ファ記述子のアドレスを用いて初期化する。初期化にお
いてこれらの記述子は、'00000001'xにセットされた前
方ポインタをもつ空バッファを指示する。アダプタ12
0は、これらの最初の8個のバッファを、データを記憶
するためには用いない。これらの記述子アドレスは、
「ポンプの呼び水(開始の支援)」のためにのみ働き、最
初の受信フレーム記述子を連結するときアダプタ120
が使用できる開始点の記述子アドレスを与える。
されたエントリに対するポインタは、デバイス・ドライ
バにより保持される。受信準備リスト・レジスタは、A
TM・AAL1/AAL5プロセス制御装置305によ
り保持され、アダプタにより各リストに追加される最後
のエントリのアドレスを含む。デバイス・ドライバは、
受信準備リスト・レジスタ及びそれ自体の複写を、バッ
ファ記述子のアドレスを用いて初期化する。初期化にお
いてこれらの記述子は、'00000001'xにセットされた前
方ポインタをもつ空バッファを指示する。アダプタ12
0は、これらの最初の8個のバッファを、データを記憶
するためには用いない。これらの記述子アドレスは、
「ポンプの呼び水(開始の支援)」のためにのみ働き、最
初の受信フレーム記述子を連結するときアダプタ120
が使用できる開始点の記述子アドレスを与える。
【0039】受信準備リストの1つへエントリを追加す
るために、アダプタは関連する受信準備リスト・レジス
タを用いてリスト上の最後のエントリを位置指定し、そ
のエントリの前方ポインタを受信フレームの最初の記述
子を指示するように変更し、そしてその連鎖の最後の記
述子の前方ポインタを'00000001'Xにセットする。前方
ポインタのビット0は、その連鎖の終わりを示す場合、
バイナリ値「1」にセットされる。このフレームに関連
する中間の記述子は、フレームが再組立されるにつれて
これらの前方ポインタを用いて連結される。アダプタ
は、受信されたフレーム記述子を8個の受信準備リスト
の1つへ連結させた後、システム割込み状態レジスタ4
15内のビットをセットすることにより受信フレームの
処理が必要であることを示し、そしてシステム割込みを
発生する。受信準備リストの選択は、制御/データ・メ
モリ309に記憶された論理チャネル・テーブル(図示
せず)に含まれるフィールドに基づいている。
るために、アダプタは関連する受信準備リスト・レジス
タを用いてリスト上の最後のエントリを位置指定し、そ
のエントリの前方ポインタを受信フレームの最初の記述
子を指示するように変更し、そしてその連鎖の最後の記
述子の前方ポインタを'00000001'Xにセットする。前方
ポインタのビット0は、その連鎖の終わりを示す場合、
バイナリ値「1」にセットされる。このフレームに関連
する中間の記述子は、フレームが再組立されるにつれて
これらの前方ポインタを用いて連結される。アダプタ
は、受信されたフレーム記述子を8個の受信準備リスト
の1つへ連結させた後、システム割込み状態レジスタ4
15内のビットをセットすることにより受信フレームの
処理が必要であることを示し、そしてシステム割込みを
発生する。受信準備リストの選択は、制御/データ・メ
モリ309に記憶された論理チャネル・テーブル(図示
せず)に含まれるフィールドに基づいている。
【0040】デバイス・ドライバは、アダプタ120か
らシステム・メモリ116へ完全なフレームが転送され
たとき割込みを受ける。完全なフレームは、1又は複数
の受信バッファからなる。完全なフレームについて多数
の受信バッファが存在し得るので、アダプタは、デバイ
ス・ドライバの介入に先立ってバッファ記述子の前方ポ
インタを用いて完全なフレームについての受信バッファ
を連結させる。
らシステム・メモリ116へ完全なフレームが転送され
たとき割込みを受ける。完全なフレームは、1又は複数
の受信バッファからなる。完全なフレームについて多数
の受信バッファが存在し得るので、アダプタは、デバイ
ス・ドライバの介入に先立ってバッファ記述子の前方ポ
インタを用いて完全なフレームについての受信バッファ
を連結させる。
【0041】図11及び図12は、フレームの受信に関
してシステム及びアダプタにおいて発生する受信プロセ
スを示した図である。ステップ1において、フレームが
システム・メモリ116内に置かれたバッファに記憶さ
れる。各バッファは、長さ、アドレス、状態、及び次の
バッファへのポインタを示す記述子により識別される。
アプリケーションのフレームが完了するとき、デバイス
・ドライバは、受信準備リストについて処理された最後
の伝送フレーム記述子のアドレスを保持する。ステップ
2においてアダプタは、新たに連結されたフレームの最
後の受信バッファ記述子についての前方ポインタを'000
00001'Xに等しくなるようセットすることにより、受信
準備リストの終わりを示す。デバイス・ドライバは、前
方ポインタが'00000001'Xに等しいか否かにより、受信
準備リストの終わりが完了したときを認知する。ステッ
プ3においてアダプタは、完全なフレームの最初のフレ
ーム記述子アドレスを、最後の受信バッファ記述子の前
方ポインタ・アドレスに書き込むことにより新たに蓄積
されたフレームとの連結を形成する。ステップ4におい
てアダプタは、レジスタ415内の受信準備リスト・ビ
ットを、システム割込みに対して活動状態とする。ステ
ップ5においてデバイス・ドライバは、割込みが発生し
たときレジスタ415を読み取り、そしていずれの受信
準備リストが完全なフレームを有するかを見出す。ステ
ップ6においてデバイス・ドライバは、アダプタ120
の制御/データ・メモリ309内の全ての完全なフレー
ムを、ネットワークへの伝送のために伝送完了バッファ
(図示せず)へと送る。ステップ7においてデバイス・
ドライバは、前方ポインタのビット0がバイナリ値
「1」であるとき受信準備リストの終わりに達したこと
を認知する。ステップ8においてデバイス・ドライバ
は、受信準備リストについて処理された最後の受信バッ
ファ記述子のアドレスを保持する。
してシステム及びアダプタにおいて発生する受信プロセ
スを示した図である。ステップ1において、フレームが
システム・メモリ116内に置かれたバッファに記憶さ
れる。各バッファは、長さ、アドレス、状態、及び次の
バッファへのポインタを示す記述子により識別される。
アプリケーションのフレームが完了するとき、デバイス
・ドライバは、受信準備リストについて処理された最後
の伝送フレーム記述子のアドレスを保持する。ステップ
2においてアダプタは、新たに連結されたフレームの最
後の受信バッファ記述子についての前方ポインタを'000
00001'Xに等しくなるようセットすることにより、受信
準備リストの終わりを示す。デバイス・ドライバは、前
方ポインタが'00000001'Xに等しいか否かにより、受信
準備リストの終わりが完了したときを認知する。ステッ
プ3においてアダプタは、完全なフレームの最初のフレ
ーム記述子アドレスを、最後の受信バッファ記述子の前
方ポインタ・アドレスに書き込むことにより新たに蓄積
されたフレームとの連結を形成する。ステップ4におい
てアダプタは、レジスタ415内の受信準備リスト・ビ
ットを、システム割込みに対して活動状態とする。ステ
ップ5においてデバイス・ドライバは、割込みが発生し
たときレジスタ415を読み取り、そしていずれの受信
準備リストが完全なフレームを有するかを見出す。ステ
ップ6においてデバイス・ドライバは、アダプタ120
の制御/データ・メモリ309内の全ての完全なフレー
ムを、ネットワークへの伝送のために伝送完了バッファ
(図示せず)へと送る。ステップ7においてデバイス・
ドライバは、前方ポインタのビット0がバイナリ値
「1」であるとき受信準備リストの終わりに達したこと
を認知する。ステップ8においてデバイス・ドライバ
は、受信準備リストについて処理された最後の受信バッ
ファ記述子のアドレスを保持する。
【0042】図13及び図14は、デバイス・ドライバ
及びアダプタで実行される受信プロセスをさらに詳細に
示している。ステップ1201において、ネットワーク
からセルを受信するために初期化が行われ、システム・
プロセッサは、システム・メモリ内に空きバッファにつ
いての記述子の連結されたリストを構築する。各バッフ
ァ記述子は、前方ポインタを介して次のものと連結され
る。デバイス・ドライバは、リストの終わりに対するポ
インタを保持し、そして最初のバッファ記述子のアドレ
スを、アダプタ制御/データ・プロセッサ403内の空
きバッファ・リスト始点レジスタ(SRFL)に書き込
む。ステップ1203においてアダプタがネットワーク
122からATMセルを受信したとき、ステップ120
5においてアダプタは、そのセルがフレームの最初であ
るか又は現在のシステム・バッファが満杯か否かを判断
する。システム・バッファが満杯でなければ、空きバッ
ファ・リスト212(図2及び図3参照)の最初の記述
子により規定されるシステム・バッファへセルを入れ
る。これは後に実行されるステップ1217の準備であ
る。システム・バッファが満杯であれば、ステップ12
07においてSRFLのアドレスを用いてシステム・メ
モリ内の次の空きバッファのアドレスを位置指定する。
ステップ1209において、デバイス・ドライバは、バ
ッファが空きバッファ・リスト上の最後のものであるか
否かを判断する。最後のバッファであるならば、ステッ
プ1211においてデバイス・ドライバはその旨を通知
され、セルは破棄される。最後のバッファでなければ、
ステップ1213において、取得されたばかりのバッフ
ァからのポインタによりSFRLが更新される。ステッ
プ1215においてアダプタ120は、受信されたセル
が最初のセルであるか否かを判断する。最初のセルでな
ければ、ステップ1217において、完了したばかりの
記述子の前方ポインタが、取得されたばかりの記述子の
システム・メモリ・アドレスにより更新され、セルはそ
の記述子により規定されるバッファへ入れられる。ステ
ップ1219においてアダプタにより最後のセルが識別
されるまで、このプロセスが繰り返される。ステップ1
221においてアダプタは、セルに関係する論理チャネ
ルに関する受信準備リストのために制御/データ・メモ
リへアクセスする。ステップ1223においてアダプタ
は、受信準備リスト・レジスタの内容により指示される
記述子を更新することにより、現在受信されたフレーム
の最初の記述子を指示する。これによって、受信された
ばかりのフレームを受信準備リストへ連結させる。ステ
ップ1225において受信準備リスト・レジスタ407
は、受信されたばかりのフレームに対する最後のバッフ
ァ記述子を指示するべくアダプタにより更新される。こ
れに応じてプロセスはステップ1203へ戻り、ネット
ワークから受信された次のセルの処理を行う。
及びアダプタで実行される受信プロセスをさらに詳細に
示している。ステップ1201において、ネットワーク
からセルを受信するために初期化が行われ、システム・
プロセッサは、システム・メモリ内に空きバッファにつ
いての記述子の連結されたリストを構築する。各バッフ
ァ記述子は、前方ポインタを介して次のものと連結され
る。デバイス・ドライバは、リストの終わりに対するポ
インタを保持し、そして最初のバッファ記述子のアドレ
スを、アダプタ制御/データ・プロセッサ403内の空
きバッファ・リスト始点レジスタ(SRFL)に書き込
む。ステップ1203においてアダプタがネットワーク
122からATMセルを受信したとき、ステップ120
5においてアダプタは、そのセルがフレームの最初であ
るか又は現在のシステム・バッファが満杯か否かを判断
する。システム・バッファが満杯でなければ、空きバッ
ファ・リスト212(図2及び図3参照)の最初の記述
子により規定されるシステム・バッファへセルを入れ
る。これは後に実行されるステップ1217の準備であ
る。システム・バッファが満杯であれば、ステップ12
07においてSRFLのアドレスを用いてシステム・メ
モリ内の次の空きバッファのアドレスを位置指定する。
ステップ1209において、デバイス・ドライバは、バ
ッファが空きバッファ・リスト上の最後のものであるか
否かを判断する。最後のバッファであるならば、ステッ
プ1211においてデバイス・ドライバはその旨を通知
され、セルは破棄される。最後のバッファでなければ、
ステップ1213において、取得されたばかりのバッフ
ァからのポインタによりSFRLが更新される。ステッ
プ1215においてアダプタ120は、受信されたセル
が最初のセルであるか否かを判断する。最初のセルでな
ければ、ステップ1217において、完了したばかりの
記述子の前方ポインタが、取得されたばかりの記述子の
システム・メモリ・アドレスにより更新され、セルはそ
の記述子により規定されるバッファへ入れられる。ステ
ップ1219においてアダプタにより最後のセルが識別
されるまで、このプロセスが繰り返される。ステップ1
221においてアダプタは、セルに関係する論理チャネ
ルに関する受信準備リストのために制御/データ・メモ
リへアクセスする。ステップ1223においてアダプタ
は、受信準備リスト・レジスタの内容により指示される
記述子を更新することにより、現在受信されたフレーム
の最初の記述子を指示する。これによって、受信された
ばかりのフレームを受信準備リストへ連結させる。ステ
ップ1225において受信準備リスト・レジスタ407
は、受信されたばかりのフレームに対する最後のバッフ
ァ記述子を指示するべくアダプタにより更新される。こ
れに応じてプロセスはステップ1203へ戻り、ネット
ワークから受信された次のセルの処理を行う。
【0043】図15及び図16は、ネットワークへフレ
ームを伝送する際のデバイス・ドライバ及びアダプタに
おける伝送プロセスを示している。初期化時のステップ
1312においてデバイス・ドライバは、(a)伝送制
御レジスタ405を初期化し、(b)制御/データ・メ
モリ309内にTRQ_TOP、TRQ_BOT、TRQ_RD、TRQ_WRT、
及びTRQ_BASEのレジスタにより規定される伝送準備キュ
ー(TRQ)501を構築し、(c)システム・メモリ内
の伝送完了リストの終わりを示す伝送完了最後尾空き記
述子アドレスを書き込み、(d)空きキューを示すべく
TRQ書込みポインタをTRQ読取りポインタと等しく
なるようにセットする。ステップ1314においてフレ
ームの伝送準備ができたか否かをデバイス・ドライバが
判断する。伝送準備ができていなければ、デバイス・ド
ライバはフレームの伝送準備の監視を続ける。フレーム
の伝送準備ができたことが示されたならば、ステップ1
316においてデバイス・ドライバは、TRQが満杯で
あるか否かを判断する。その後、ステップ1318にお
いてデバイス・ドライバはTRQへ伝送要求を送り、ス
テップ1320においてTRQ書込みポインタを増分す
る。ステップ1322においてアダプタは、TRQを監
視することによりTRQ内の伝送書込みポインタが伝送
読取りポインタに等しくなるときを判断する。ステップ
1324においてアダプタは、システム・メモリ116
から準備されたフレームを取得し、そのフレームをAT
Mネットワーク122へ伝送する。ステップ1326に
おいてアダプタは、伝送されたばかりのフレームの記述
子のアドレスを、伝送完了リストのポインタ最後尾空き
記述子アドレス(TCL−LFDA)レジスタにより指示
される記述子の前方ポインタへ入れることにより、記述
子を伝送完了リストへ連結させる。ステップ1328に
おいてアダプタは、伝送されたばかりの記述子アドレス
によりTCL−LFDAレジスタを更新し、伝送準備キ
ューの読取りポインタを増分することによりステップ1
322において次のフレーム伝送シーケンスを開始す
る。
ームを伝送する際のデバイス・ドライバ及びアダプタに
おける伝送プロセスを示している。初期化時のステップ
1312においてデバイス・ドライバは、(a)伝送制
御レジスタ405を初期化し、(b)制御/データ・メ
モリ309内にTRQ_TOP、TRQ_BOT、TRQ_RD、TRQ_WRT、
及びTRQ_BASEのレジスタにより規定される伝送準備キュ
ー(TRQ)501を構築し、(c)システム・メモリ内
の伝送完了リストの終わりを示す伝送完了最後尾空き記
述子アドレスを書き込み、(d)空きキューを示すべく
TRQ書込みポインタをTRQ読取りポインタと等しく
なるようにセットする。ステップ1314においてフレ
ームの伝送準備ができたか否かをデバイス・ドライバが
判断する。伝送準備ができていなければ、デバイス・ド
ライバはフレームの伝送準備の監視を続ける。フレーム
の伝送準備ができたことが示されたならば、ステップ1
316においてデバイス・ドライバは、TRQが満杯で
あるか否かを判断する。その後、ステップ1318にお
いてデバイス・ドライバはTRQへ伝送要求を送り、ス
テップ1320においてTRQ書込みポインタを増分す
る。ステップ1322においてアダプタは、TRQを監
視することによりTRQ内の伝送書込みポインタが伝送
読取りポインタに等しくなるときを判断する。ステップ
1324においてアダプタは、システム・メモリ116
から準備されたフレームを取得し、そのフレームをAT
Mネットワーク122へ伝送する。ステップ1326に
おいてアダプタは、伝送されたばかりのフレームの記述
子のアドレスを、伝送完了リストのポインタ最後尾空き
記述子アドレス(TCL−LFDA)レジスタにより指示
される記述子の前方ポインタへ入れることにより、記述
子を伝送完了リストへ連結させる。ステップ1328に
おいてアダプタは、伝送されたばかりの記述子アドレス
によりTCL−LFDAレジスタを更新し、伝送準備キ
ューの読取りポインタを増分することによりステップ1
322において次のフレーム伝送シーケンスを開始す
る。
【0044】以上まとめると、フレームがネットワーク
へ転送されるまで、又はフレームがシステムへ受信され
るまで、デバイス・ドライバから実質的に独立してフレ
ームをセルへとセグメント化しかつセルをフレームへと
再組立することにより、高速多重ATMネットワーク上
においてアダプタとデバイス・ドライバとがさらに効率
的となる。さらに受信準備リスト及び伝送準備キューを
用いることにより、デバイス・ドライバは、1つの割込
みによって多数のフレームを処理することができるよう
になる。伝送準備キューを用いてアダプタによりフレー
ムが伝送されている間、フレームを受信準備リストへ追
加することができる。アダプタにより更新される空きバ
ッファ・リストに従ってフレームが伝送されると同時に
システム・メモリがクリアされている。記述子を用いた
セル及びフレームの処理によって、システム・メモリの
区画が不要となる。
へ転送されるまで、又はフレームがシステムへ受信され
るまで、デバイス・ドライバから実質的に独立してフレ
ームをセルへとセグメント化しかつセルをフレームへと
再組立することにより、高速多重ATMネットワーク上
においてアダプタとデバイス・ドライバとがさらに効率
的となる。さらに受信準備リスト及び伝送準備キューを
用いることにより、デバイス・ドライバは、1つの割込
みによって多数のフレームを処理することができるよう
になる。伝送準備キューを用いてアダプタによりフレー
ムが伝送されている間、フレームを受信準備リストへ追
加することができる。アダプタにより更新される空きバ
ッファ・リストに従ってフレームが伝送されると同時に
システム・メモリがクリアされている。記述子を用いた
セル及びフレームの処理によって、システム・メモリの
区画が不要となる。
【0045】本発明を特定の実施例を参照して説明した
が、上記の説明は本発明を示すためのものであって本発
明を限定するものと解するべきではない。当業者であれ
ば、本発明の要旨と範囲を逸脱することなく様々な変更
が可能であろう。
が、上記の説明は本発明を示すためのものであって本発
明を限定するものと解するべきではない。当業者であれ
ば、本発明の要旨と範囲を逸脱することなく様々な変更
が可能であろう。
【0046】まとめとして、本発明の構成に関して以下
の項を開示する。
の項を開示する。
【0047】(1)システム処理性能及びメモリ利用性
を強化するべくデバイス・ドライバを含むシステム・プ
ロセッサと、システム・メモリと、アダプタとがインタ
フェースにより互いに接続されたATM通信ネットワー
クにおいて、a)前記アダプタに含まれるアダプタ・プ
ロセッサ及び制御メモリと、b)前記制御メモリ内に伝
送制御レジスタ及び受信制御レジスタを構築する手段
と、c)前記システム・メモリ内の受信準備リスト上に
フレームとして記憶するべく前記ネットワークからデー
タ・セルを受信する手段と、d)前記受信準備リスト上
のフレームを伝送のために識別する伝送準備キュー(T
RQ)を前記制御メモリ内に構築する手段と、e)前記
システム・メモリ内に伝送完了リスト(TCL)を構築す
る手段と、f)フレーム伝送完了を示しかつ前記TCL
を更新する割込みを前記デバイス・ドライバに対して発
生する手段とを有するATM通信ネットワーク。 (2)a)前記ネットワークから受信されたデータ・セ
ルを記憶する前記システム・メモリ内の受信バッファを
識別するための受信空きバッファ・リストを構築する手
段と、b)前記受信空きバッファ・リストの始まりを位
置指定する手段と、c)前記受信空きバッファ・リスト
の終わりを示す手段とをさらに有する上記(1)に記載
のATM通信ネットワーク。 (3)完了したフレームについてのバッファ記述子を含
む受信準備リストを構築する手段を有する上記(2)に
記載のATM通信ネットワーク。 (4)1又は複数の完了したフレームが前記受信準備リ
スト上に存在することを前記デバイス・ドライバに対し
て示す割込みを発生する手段を有する上記(3)に記載
のATM通信ネットワーク。 (5)前記伝送準備キューが、トップ・アドレス、ボト
ム・アドレス、書込みポインタ、及び読取りポインタを
もつベース・レジスタにより前記制御メモリ内に規定さ
れる上記(4)に記載のATM通信ネットワーク。 (6)前記アダプタ・プロセッサが伝送サブプロセッサ
及び受信サブプロセッサを有し、該伝送サブプロセッサ
は前記ネットワークへの伝送のために前記システム・メ
モリからデータを取り出し、該受信サブプロセッサは前
記システム・メモリへデータを転送する上記(5)に記
載のATM通信ネットワーク。 (7)前記制御メモリ内に空きバッファ・リスト・レジ
スタの始まり及び複数の受信制御レジスタを含む上記
(6)に記載のATM通信ネットワーク。 (8)前記システム・メモリ内に置かれた受信空きバッ
ファ・リスト及び空きバッファ・リスト終点ポインタを
含む上記(7)に記載のATM通信ネットワーク。 (9)前記システム・メモリが、前記ネットワークへの
伝送準備の完了したフレームについて前記システム・メ
モリ内におけるバッファ位置を識別する伝送フレーム記
述子を含む上記(8)に記載のATM通信ネットワー
ク。 (10)前記システム・メモリが、受信バッファ位置に
ついての受信バッファ記述子を含む上記(9)に記載の
ATM通信ネットワーク。 (11)フレームのアドレス及び記述子をTRQエント
リへ関連付けるべく前記制御メモリ内に論理チャネル番
号テーブルを含む上記(10)に記載のATM通信ネッ
トワーク。 (12)前記伝送準備キューが、前記ネットワークへの
転送のために前記システム・メモリ内に記憶されたフレ
ームのエントリを含む上記(9)に記載のATM通信ネ
ットワーク。 (13)前記制御メモリ内にシステム割込み状態レジス
タを含み、該レジスタ内の受信準備リスト・ビットがセ
ットされるときに前記プロセッサへの割込みを開始する
上記(10)に記載のATM通信ネットワーク。 (14)デバイス・ドライバを含むシステム・プロセッ
サと、システム・メモリと、アダプタとがインタフェー
スにより互いに接続されたATM通信ネットワークにお
いてシステム処理性能及びメモリ利用性を強化するため
の方法であって、a)前記アダプタ内の伝送制御レジス
タを初期化するステップと、b)前記伝送制御レジスタ
により規定される伝送準備キュー(TRQ)を構築するス
テップと、c)前記システム・メモリ内の伝送完了リス
トの終わりを示すべく伝送完了最後尾空き記述子のアド
レスを書込むステップと、d)前記TRQ内の空きキュ
ー示すべくTRQ書込みポインタがTRQ読取りポイン
タと等しくなるようにセットするステップと、e)前記
システム・メモリ内でフレームの伝送準備が完了したか
否かを判断することにより、準備が未だであればフレー
ムの伝送準備の完了を前記システム・プロセッサにより
監視し続け、準備が完了していればフレームの伝送準備
が完了したことを示すステップと、f)前記TRQが満
杯であるか否かを判断するステップと、g)前記TRQ
へ伝送要求を送るステップと、h)前記伝送書込みポイ
ンタが前記伝送読取りポインタと等しくなるときを判断
するために前記アダプタが前記TRQを監視しつつ、該
TRQ書込みポインタを増分するステップと、i)前記
システム・メモリから準備されたフレームを取得するス
テップと、j)前記準備されたフレームを前記通信ネッ
トワークへ伝送するステップとを含むATM通信ネット
ワークにおける方法。 (15)伝送されたばかりのフレーム記述子のアドレス
を、伝送完了リスト・ポインタ最後尾空き記述子アドレ
ス(TCL−LFDA)レジスタにより指示される記述子
の前方ポインタへ入れるステップを含む上記(7)に記
載の方法。 (16)デバイス・ドライバを含むシステム・プロセッ
サと、システム・メモリと、アダプタとがインタフェー
スにより互いに接続されたATM通信ネットワークにお
いてシステム処理性能及びメモリ利用性を強化するため
の方法であって、a)前記システム・メモリ内に、空き
バッファについてのバッファ記述子が各々前方ポインタ
を介して次のバッファ記述子と連結された連結リストを
構築するステップと、b)前記システム・プロセッサ内
に前記リストの終わりに対するポインタを保持するステ
ップと、c)前記アダプタ内の空きバッファ・リスト始
点レジスタ(SRFL)に対して第1の前記バッファ記述
子のアドレスを書き込むステップと、d)前記ネットワ
ークからATMセルを受信するステップと、e)前記セ
ルがフレームの最初である場合に現在のシステム・バッ
ファが満杯であるか否かを判断し、満杯でなければ該セ
ルを該システム・バッファへ入れ、満杯であれば前記S
RFL内のアドレスを用いて前記システム・メモリ内の
次の空きバッファのアドレスを位置指定するステップ
と、f)前記バッファが前記空きバッファ・リスト上の
最後であるか否かを判断し、最後であれば前記システム
・プロセッサに対して通知しかつ前記セルを破棄し、最
後でなければ取得されたばかりのバッファからのポイン
タを用いて前記SRFLを更新するステップと、g)前
記受信されたセルが最初のセルであるか否かを判断し、
最初のセルでなければ、取得されたばかりの記述子の前
記システム・メモリ・アドレスを用いて、完了されたば
かりの記述子の前記前方ポインタを更新しかつ該セルを
該記述子により規定されるバッファへ入れるステップ
と、h)前記最後のセルが識別されるまで前記a)〜
g)のステップを繰り返すステップとを含むATM通信
ネットワークにおける方法。 (17)a)前記セルに関係する論理チャネルに関する
受信準備リストについて前記アダプタ内の制御メモリへ
アクセスするステップと、b)現在受信されたフレーム
の第1の記述子を指示するべく前記受信準備リスト・レ
ジスタの内容により指示される記述子を更新するステッ
プと、c)前記受信されたばかりのフレームを前記受信
準備リストへ連結されるステップと、d)前記受信され
たばかりのフレームについての最後のバッファ記述子を
指示するべく前記受信準備リストを更新するステップ
と、e)前記ネットワークから受信された次のセルを処
理するためにステップa)へ戻るステップとをさらに含
む上記(9)に記載の方法。
を強化するべくデバイス・ドライバを含むシステム・プ
ロセッサと、システム・メモリと、アダプタとがインタ
フェースにより互いに接続されたATM通信ネットワー
クにおいて、a)前記アダプタに含まれるアダプタ・プ
ロセッサ及び制御メモリと、b)前記制御メモリ内に伝
送制御レジスタ及び受信制御レジスタを構築する手段
と、c)前記システム・メモリ内の受信準備リスト上に
フレームとして記憶するべく前記ネットワークからデー
タ・セルを受信する手段と、d)前記受信準備リスト上
のフレームを伝送のために識別する伝送準備キュー(T
RQ)を前記制御メモリ内に構築する手段と、e)前記
システム・メモリ内に伝送完了リスト(TCL)を構築す
る手段と、f)フレーム伝送完了を示しかつ前記TCL
を更新する割込みを前記デバイス・ドライバに対して発
生する手段とを有するATM通信ネットワーク。 (2)a)前記ネットワークから受信されたデータ・セ
ルを記憶する前記システム・メモリ内の受信バッファを
識別するための受信空きバッファ・リストを構築する手
段と、b)前記受信空きバッファ・リストの始まりを位
置指定する手段と、c)前記受信空きバッファ・リスト
の終わりを示す手段とをさらに有する上記(1)に記載
のATM通信ネットワーク。 (3)完了したフレームについてのバッファ記述子を含
む受信準備リストを構築する手段を有する上記(2)に
記載のATM通信ネットワーク。 (4)1又は複数の完了したフレームが前記受信準備リ
スト上に存在することを前記デバイス・ドライバに対し
て示す割込みを発生する手段を有する上記(3)に記載
のATM通信ネットワーク。 (5)前記伝送準備キューが、トップ・アドレス、ボト
ム・アドレス、書込みポインタ、及び読取りポインタを
もつベース・レジスタにより前記制御メモリ内に規定さ
れる上記(4)に記載のATM通信ネットワーク。 (6)前記アダプタ・プロセッサが伝送サブプロセッサ
及び受信サブプロセッサを有し、該伝送サブプロセッサ
は前記ネットワークへの伝送のために前記システム・メ
モリからデータを取り出し、該受信サブプロセッサは前
記システム・メモリへデータを転送する上記(5)に記
載のATM通信ネットワーク。 (7)前記制御メモリ内に空きバッファ・リスト・レジ
スタの始まり及び複数の受信制御レジスタを含む上記
(6)に記載のATM通信ネットワーク。 (8)前記システム・メモリ内に置かれた受信空きバッ
ファ・リスト及び空きバッファ・リスト終点ポインタを
含む上記(7)に記載のATM通信ネットワーク。 (9)前記システム・メモリが、前記ネットワークへの
伝送準備の完了したフレームについて前記システム・メ
モリ内におけるバッファ位置を識別する伝送フレーム記
述子を含む上記(8)に記載のATM通信ネットワー
ク。 (10)前記システム・メモリが、受信バッファ位置に
ついての受信バッファ記述子を含む上記(9)に記載の
ATM通信ネットワーク。 (11)フレームのアドレス及び記述子をTRQエント
リへ関連付けるべく前記制御メモリ内に論理チャネル番
号テーブルを含む上記(10)に記載のATM通信ネッ
トワーク。 (12)前記伝送準備キューが、前記ネットワークへの
転送のために前記システム・メモリ内に記憶されたフレ
ームのエントリを含む上記(9)に記載のATM通信ネ
ットワーク。 (13)前記制御メモリ内にシステム割込み状態レジス
タを含み、該レジスタ内の受信準備リスト・ビットがセ
ットされるときに前記プロセッサへの割込みを開始する
上記(10)に記載のATM通信ネットワーク。 (14)デバイス・ドライバを含むシステム・プロセッ
サと、システム・メモリと、アダプタとがインタフェー
スにより互いに接続されたATM通信ネットワークにお
いてシステム処理性能及びメモリ利用性を強化するため
の方法であって、a)前記アダプタ内の伝送制御レジス
タを初期化するステップと、b)前記伝送制御レジスタ
により規定される伝送準備キュー(TRQ)を構築するス
テップと、c)前記システム・メモリ内の伝送完了リス
トの終わりを示すべく伝送完了最後尾空き記述子のアド
レスを書込むステップと、d)前記TRQ内の空きキュ
ー示すべくTRQ書込みポインタがTRQ読取りポイン
タと等しくなるようにセットするステップと、e)前記
システム・メモリ内でフレームの伝送準備が完了したか
否かを判断することにより、準備が未だであればフレー
ムの伝送準備の完了を前記システム・プロセッサにより
監視し続け、準備が完了していればフレームの伝送準備
が完了したことを示すステップと、f)前記TRQが満
杯であるか否かを判断するステップと、g)前記TRQ
へ伝送要求を送るステップと、h)前記伝送書込みポイ
ンタが前記伝送読取りポインタと等しくなるときを判断
するために前記アダプタが前記TRQを監視しつつ、該
TRQ書込みポインタを増分するステップと、i)前記
システム・メモリから準備されたフレームを取得するス
テップと、j)前記準備されたフレームを前記通信ネッ
トワークへ伝送するステップとを含むATM通信ネット
ワークにおける方法。 (15)伝送されたばかりのフレーム記述子のアドレス
を、伝送完了リスト・ポインタ最後尾空き記述子アドレ
ス(TCL−LFDA)レジスタにより指示される記述子
の前方ポインタへ入れるステップを含む上記(7)に記
載の方法。 (16)デバイス・ドライバを含むシステム・プロセッ
サと、システム・メモリと、アダプタとがインタフェー
スにより互いに接続されたATM通信ネットワークにお
いてシステム処理性能及びメモリ利用性を強化するため
の方法であって、a)前記システム・メモリ内に、空き
バッファについてのバッファ記述子が各々前方ポインタ
を介して次のバッファ記述子と連結された連結リストを
構築するステップと、b)前記システム・プロセッサ内
に前記リストの終わりに対するポインタを保持するステ
ップと、c)前記アダプタ内の空きバッファ・リスト始
点レジスタ(SRFL)に対して第1の前記バッファ記述
子のアドレスを書き込むステップと、d)前記ネットワ
ークからATMセルを受信するステップと、e)前記セ
ルがフレームの最初である場合に現在のシステム・バッ
ファが満杯であるか否かを判断し、満杯でなければ該セ
ルを該システム・バッファへ入れ、満杯であれば前記S
RFL内のアドレスを用いて前記システム・メモリ内の
次の空きバッファのアドレスを位置指定するステップ
と、f)前記バッファが前記空きバッファ・リスト上の
最後であるか否かを判断し、最後であれば前記システム
・プロセッサに対して通知しかつ前記セルを破棄し、最
後でなければ取得されたばかりのバッファからのポイン
タを用いて前記SRFLを更新するステップと、g)前
記受信されたセルが最初のセルであるか否かを判断し、
最初のセルでなければ、取得されたばかりの記述子の前
記システム・メモリ・アドレスを用いて、完了されたば
かりの記述子の前記前方ポインタを更新しかつ該セルを
該記述子により規定されるバッファへ入れるステップ
と、h)前記最後のセルが識別されるまで前記a)〜
g)のステップを繰り返すステップとを含むATM通信
ネットワークにおける方法。 (17)a)前記セルに関係する論理チャネルに関する
受信準備リストについて前記アダプタ内の制御メモリへ
アクセスするステップと、b)現在受信されたフレーム
の第1の記述子を指示するべく前記受信準備リスト・レ
ジスタの内容により指示される記述子を更新するステッ
プと、c)前記受信されたばかりのフレームを前記受信
準備リストへ連結されるステップと、d)前記受信され
たばかりのフレームについての最後のバッファ記述子を
指示するべく前記受信準備リストを更新するステップ
と、e)前記ネットワークから受信された次のセルを処
理するためにステップa)へ戻るステップとをさらに含
む上記(9)に記載の方法。
【図1】本発明の原理を組み込んだシステム・プロセッ
サ、システム・メモリ、アダプタ及びシステム/アダプ
タ・インタフェースを含むATMシステムのブロック図
である。
サ、システム・メモリ、アダプタ及びシステム/アダプ
タ・インタフェースを含むATMシステムのブロック図
である。
【図2】システム・メモリのブロック図及びシステム・
メモリに記憶された情報を示す図である
メモリに記憶された情報を示す図である
【図3】システム・メモリのブロック図及びシステム・
メモリに記憶された情報を示す図である
メモリに記憶された情報を示す図である
【図4】図1のアダプタのブロック図である。
【図5】図1のアダプタ内のATM・AAL1/AAL
5プロセス制御装置のハードウェア構成要素のブロック
図である。
5プロセス制御装置のハードウェア構成要素のブロック
図である。
【図6】図1のアダプタ内の制御/データ・メモリ内に
構築された伝送準備キュー(TRQ)を示す図である。
構築された伝送準備キュー(TRQ)を示す図である。
【図7】ATMネットワークへ伝送される前に図1のシ
ステム・メモリにおいて互いに連結された伝送フレーム
記述子を示す図である。
ステム・メモリにおいて互いに連結された伝送フレーム
記述子を示す図である。
【図8】ATMネットワークへのフレーム伝送の後、図
1のシステム・メモリ内のフレーム記述子の伝送完了連
結リストを示す図である。
1のシステム・メモリ内のフレーム記述子の伝送完了連
結リストを示す図である。
【図9】受信されたフレームを記憶するためにアダプタ
により用いられる、システム・メモリ内の空きバッファ
記述子を含む受信空きバッファ・リストを示す図であ
る。
により用いられる、システム・メモリ内の空きバッファ
記述子を含む受信空きバッファ・リストを示す図であ
る。
【図10】図1のシステム・メモリ及びアダプタ内の受
信準備リスト・ポインタの初期化を示す図である。
信準備リスト・ポインタの初期化を示す図である。
【図11】図1のシステムにおける受信準備リスト上の
フレームの処理を示す図である。
フレームの処理を示す図である。
【図12】図1のシステムにおける受信準備リスト上の
フレームの処理を示す図である。
フレームの処理を示す図である。
【図13】図1のシステムにより実行される伝送オペレ
ーションの流れ図である。
ーションの流れ図である。
【図14】図1のシステムにより実行される伝送オペレ
ーションの流れ図である。
ーションの流れ図である。
【図15】図1のシステムにより実行される受信オペレ
ーションの流れ図である。
ーションの流れ図である。
【図16】図1のシステムにより実行される受信オペレ
ーションの流れ図である。
ーションの流れ図である。
110 パーソナル・コンピュータ又はワークステーシ
ョン 112 プロセッサ 114 ブリッジ 116 システム・メモリ 118 バス 120 アダプタ 122 ATMネットワーク 124 オペレーティング・システム 126 アプリケーション・プログラム 128 デバイス・ドライバ 200 受信フレーム記述子 202 データ・バッファ 212 受信空きバッファ・リスト 214 受信準備リスト 250 伝送フレーム記述子 264 伝送完了リスト 305 ATM・AAL1/AAL5プロセス制御装置 309 制御/データ・メモリ
ョン 112 プロセッサ 114 ブリッジ 116 システム・メモリ 118 バス 120 アダプタ 122 ATMネットワーク 124 オペレーティング・システム 126 アプリケーション・プログラム 128 デバイス・ドライバ 200 受信フレーム記述子 202 データ・バッファ 212 受信空きバッファ・リスト 214 受信準備リスト 250 伝送フレーム記述子 264 伝送完了リスト 305 ATM・AAL1/AAL5プロセス制御装置 309 制御/データ・メモリ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ケニス・ジェームズ・バーカー アメリカ合衆国27511、ノースカロライナ 州、ケアリー、ウッドランド・コート 406 (72)発明者 ポール・ヘンリー・ニコルス アメリカ合衆国27615、ノースカロライナ 州、ラレイ、ホリーハイト・レーン 7705 (72)発明者 ラッセル・エバン・シュローター アメリカ合衆国27613、ノースカロライナ 州、ラレイ、バリー・ウッズ・コート 2608 (72)発明者 ジョン・ケニス・ステイシー アメリカ合衆国27511、ノースカロライナ 州、ケアリー、タウンセンド・コート 207 (72)発明者 マーク・クレイン・ウォーツキー アメリカ合衆国27615、ノースカロライナ 州、ラレイ、バートンズ・クリーク・ロー ド 9612
Claims (10)
- 【請求項1】システム処理性能及びメモリ利用性を強化
するべくデバイス・ドライバを含むシステム・プロセッ
サと、システム・メモリと、アダプタとがインタフェー
スにより互いに接続されたATM通信ネットワークにお
いて、 a)前記アダプタに含まれるアダプタ・プロセッサ及び
制御メモリと、 b)前記制御メモリ内に伝送制御レジスタ及び受信制御
レジスタを構築する手段と、 c)前記システム・メモリ内の受信準備リスト上にフレ
ームとして記憶するべく前記ネットワークからデータ・
セルを受信する手段と、 d)前記受信準備リスト上のフレームを伝送のために識
別する伝送準備キュー(TRQ)を前記制御メモリ内に構
築する手段と、 e)前記システム・メモリ内に伝送完了リスト(TCL)
を構築する手段と、 f)フレーム伝送完了を示しかつ前記TCLを更新する
割込みを前記デバイス・ドライバに対して発生する手段
とを有するATM通信ネットワーク。 - 【請求項2】a)前記ネットワークから受信されたデー
タ・セルを記憶する前記システム・メモリ内の受信バッ
ファを識別するための受信空きバッファ・リストを構築
する手段と、 b)前記受信空きバッファ・リストの始まりを位置指定
する手段と、 c)前記受信空きバッファ・リストの終わりを示す手段
とをさらに有する請求項1に記載のATM通信ネットワ
ーク。 - 【請求項3】完了したフレームについてのバッファ記述
子を含む受信準備リストを構築する手段を有する請求項
2に記載のATM通信ネットワーク。 - 【請求項4】1又は複数の完了したフレームが前記受信
準備リスト上に存在することを前記デバイス・ドライバ
に対して示す割込みを発生する手段を有する請求項3に
記載のATM通信ネットワーク。 - 【請求項5】前記伝送準備キューが、トップ・アドレ
ス、ボトム・アドレス、書込みポインタ、及び読取りポ
インタをもつベース・レジスタにより前記制御メモリ内
に規定される請求項4に記載のATM通信ネットワー
ク。 - 【請求項6】前記アダプタ・プロセッサが伝送サブプロ
セッサ及び受信サブプロセッサを有し、該伝送サブプロ
セッサは前記ネットワークへの伝送のために前記システ
ム・メモリからデータを取り出し、該受信サブプロセッ
サは前記システム・メモリへデータを転送する請求項5
に記載のATM通信ネットワーク。 - 【請求項7】デバイス・ドライバを含むシステム・プロ
セッサと、システム・メモリと、アダプタとがインタフ
ェースにより互いに接続されたATM通信ネットワーク
においてシステム処理性能及びメモリ利用性を強化する
ための方法であって、 a)前記アダプタ内の伝送制御レジスタを初期化するス
テップと、 b)前記伝送制御レジスタにより規定される伝送準備キ
ュー(TRQ)を構築するステップと、 c)前記システム・メモリ内の伝送完了リストの終わり
を示すべく伝送完了最後尾空き記述子のアドレスを書込
むステップと、 d)前記TRQ内の空きキュー示すべくTRQ書込みポ
インタがTRQ読取りポインタと等しくなるようにセッ
トするステップと、 e)前記システム・メモリ内でフレームの伝送準備が完
了したか否かを判断することにより、準備が未だであれ
ばフレームの伝送準備の完了を前記システム・プロセッ
サにより監視し続け、準備が完了していればフレームの
伝送準備が完了したことを示すステップと、 f)前記TRQが満杯であるか否かを判断するステップ
と、 g)前記TRQへ伝送要求を送るステップと、 h)前記伝送書込みポインタが前記伝送読取りポインタ
と等しくなるときを判断するために前記アダプタが前記
TRQを監視しつつ、該TRQ書込みポインタを増分す
るステップと、 i)前記システム・メモリから準備されたフレームを取
得するステップと、 j)前記準備されたフレームを前記通信ネットワークへ
伝送するステップとを含むATM通信ネットワークにお
ける方法。 - 【請求項8】伝送されたばかりのフレーム記述子のアド
レスを、伝送完了リスト・ポインタ最後尾空き記述子ア
ドレス(TCL−LFDA)レジスタにより指示される記
述子の前方ポインタへ入れるステップを含む請求項7に
記載の方法。 - 【請求項9】デバイス・ドライバを含むシステム・プロ
セッサと、システム・メモリと、アダプタとがインタフ
ェースにより互いに接続されたATM通信ネットワーク
においてシステム処理性能及びメモリ利用性を強化する
ための方法であって、 a)前記システム・メモリ内に、空きバッファについて
のバッファ記述子が各々前方ポインタを介して次のバッ
ファ記述子と連結された連結リストを構築するステップ
と、 b)前記システム・プロセッサ内に前記リストの終わり
に対するポインタを保持するステップと、 c)前記アダプタ内の空きバッファ・リスト始点レジス
タ(SRFL)に対して第1の前記バッファ記述子のアド
レスを書き込むステップと、 d)前記ネットワークからATMセルを受信するステッ
プと、 e)前記セルがフレームの最初である場合に現在のシス
テム・バッファが満杯であるか否かを判断し、満杯でな
ければ該セルを該システム・バッファへ入れ、満杯であ
れば前記SRFL内のアドレスを用いて前記システム・
メモリ内の次の空きバッファのアドレスを位置指定する
ステップと、 f)前記バッファが前記空きバッファ・リスト上の最後
であるか否かを判断し、最後であれば前記システム・プ
ロセッサに対して通知しかつ前記セルを破棄し、最後で
なければ取得されたばかりのバッファからのポインタを
用いて前記SRFLを更新するステップと、 g)前記受信されたセルが最初のセルであるか否かを判
断し、最初のセルでなければ、取得されたばかりの記述
子の前記システム・メモリ・アドレスを用いて、完了さ
れたばかりの記述子の前記前方ポインタを更新しかつ該
セルを該記述子により規定されるバッファへ入れるステ
ップと、 h)前記最後のセルが識別されるまで前記a)〜g)の
ステップを繰り返すステップとを含むATM通信ネット
ワークにおける方法。 - 【請求項10】a)前記セルに関係する論理チャネルに
関する受信準備リストについて前記アダプタ内の制御メ
モリへアクセスするステップと、 b)現在受信されたフレームの第1の記述子を指示する
べく前記受信準備リスト・レジスタの内容により指示さ
れる記述子を更新するステップと、 c)前記受信されたばかりのフレームを前記受信準備リ
ストへ連結されるステップと、 d)前記受信されたばかりのフレームについての最後の
バッファ記述子を指示するべく前記受信準備リストを更
新するステップと、 e)前記ネットワークから受信された次のセルを処理す
るためにステップa)へ戻るステップとをさらに含む請
求項9に記載の方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US515183 | 1995-08-11 | ||
| US08/515,183 US5606559A (en) | 1995-08-11 | 1995-08-11 | System and method for an efficient ATM adapter/device driver interface |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0955755A true JPH0955755A (ja) | 1997-02-25 |
| JP3138214B2 JP3138214B2 (ja) | 2001-02-26 |
Family
ID=24050288
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP18465696A Expired - Fee Related JP3138214B2 (ja) | 1995-08-11 | 1996-07-15 | Atm通信ネットワークにおけるフレームの送受信方法 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US5606559A (ja) |
| EP (1) | EP0792081B1 (ja) |
| JP (1) | JP3138214B2 (ja) |
| KR (1) | KR100221378B1 (ja) |
| DE (1) | DE69624088T2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7006442B1 (en) | 1999-11-25 | 2006-02-28 | Nec Corporation | Communication control system and control method thereof |
Families Citing this family (68)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5446726A (en) * | 1993-10-20 | 1995-08-29 | Lsi Logic Corporation | Error detection and correction apparatus for an asynchronous transfer mode (ATM) network device |
| EP0746174B1 (de) * | 1995-05-31 | 2007-08-08 | Siemens Aktiengesellschaft | Verfahren zum Realisieren logischer Kommunikationspartner in Kommunikationssystemen |
| US5845153A (en) * | 1995-07-07 | 1998-12-01 | Integrated Device Technology, Inc. | Memory interface for asynchronous transfer mode segmentation and reassembly circuit |
| US5809024A (en) * | 1995-07-12 | 1998-09-15 | Bay Networks, Inc. | Memory architecture for a local area network module in an ATM switch |
| US5781799A (en) * | 1995-09-29 | 1998-07-14 | Cirrus Logic, Inc. | DMA controller arrangement having plurality of DMA controllers and buffer pool having plurality of buffers accessible to each of the channels of the controllers |
| US5765023A (en) * | 1995-09-29 | 1998-06-09 | Cirrus Logic, Inc. | DMA controller having multiple channels and buffer pool having plurality of buffers accessible to each channel for buffering data transferred to and from host computer |
| US5848293A (en) * | 1995-11-03 | 1998-12-08 | Sun Microsystems, Inc. | Method and apparatus for transmission and processing of virtual commands |
| US5974466A (en) | 1995-12-28 | 1999-10-26 | Hitachi, Ltd. | ATM controller and ATM communication control device |
| US7577782B2 (en) * | 1996-02-02 | 2009-08-18 | Sony Corporation | Application programming interface for data transfer and bus management over a bus structure |
| US5848068A (en) * | 1996-03-07 | 1998-12-08 | Lsi Logic Corporation | ATM communication system interconnect/termination unit |
| US5841772A (en) * | 1996-03-07 | 1998-11-24 | Lsi Logic Corporation | ATM communication system interconnect/termination unit |
| US5920561A (en) * | 1996-03-07 | 1999-07-06 | Lsi Logic Corporation | ATM communication system interconnect/termination unit |
| US5982749A (en) * | 1996-03-07 | 1999-11-09 | Lsi Logic Corporation | ATM communication system interconnect/termination unit |
| US6519268B1 (en) * | 1996-03-07 | 2003-02-11 | Sony Corporation | Asynchronous data pipe for automatically managing asynchronous data transfers between an application and a bus structure |
| US6535512B1 (en) | 1996-03-07 | 2003-03-18 | Lsi Logic Corporation | ATM communication system interconnect/termination unit |
| US5764896A (en) * | 1996-06-28 | 1998-06-09 | Compaq Computer Corporation | Method and system for reducing transfer latency when transferring data from a network to a computer system |
| US5922046A (en) * | 1996-09-12 | 1999-07-13 | Cabletron Systems, Inc. | Method and apparatus for avoiding control reads in a network node |
| US5941952A (en) * | 1996-09-12 | 1999-08-24 | Cabletron Systems, Inc. | Apparatus and method for transferring data from a transmit buffer memory at a particular rate |
| US5970229A (en) * | 1996-09-12 | 1999-10-19 | Cabletron Systems, Inc. | Apparatus and method for performing look-ahead scheduling of DMA transfers of data from a host memory to a transmit buffer memory |
| US5995995A (en) * | 1996-09-12 | 1999-11-30 | Cabletron Systems, Inc. | Apparatus and method for scheduling virtual circuit data for DMA from a host memory to a transmit buffer memory |
| US5999980A (en) * | 1996-09-12 | 1999-12-07 | Cabletron Systems, Inc. | Apparatus and method for setting a congestion indicate bit in an backwards RM cell on an ATM network |
| US5966546A (en) * | 1996-09-12 | 1999-10-12 | Cabletron Systems, Inc. | Method and apparatus for performing TX raw cell status report frequency and interrupt frequency mitigation in a network node |
| JP3610193B2 (ja) * | 1997-06-26 | 2005-01-12 | 株式会社日立製作所 | Atmコントローラおよびそれを用いたatm通信制御装置 |
| US6393483B1 (en) * | 1997-06-30 | 2002-05-21 | Adaptec, Inc. | Method and apparatus for network interface card load balancing and port aggregation |
| US6021446A (en) * | 1997-07-11 | 2000-02-01 | Sun Microsystems, Inc. | Network device driver performing initial packet processing within high priority hardware interrupt service routine and then finishing processing within low priority software interrupt service routine |
| KR100251779B1 (ko) | 1997-07-25 | 2000-04-15 | 윤종용 | 피디에이취망과 에이티엠망 사이의 인터페이스 장치 |
| US6212593B1 (en) * | 1998-06-01 | 2001-04-03 | Advanced Micro Devices, Inc. | Method and apparatus for generating interrupts on a buffer by buffer basis in buffer descriptor ring direct memory access system |
| US6667978B1 (en) * | 1998-07-09 | 2003-12-23 | International Business Machines Corporation | Apparatus and method for reassembling frame data into stream data |
| US6381218B1 (en) | 1998-09-11 | 2002-04-30 | Compaq Computer Corporation | Network controller system that uses directed heartbeat packets |
| US6229538B1 (en) | 1998-09-11 | 2001-05-08 | Compaq Computer Corporation | Port-centric graphic representations of network controllers |
| US6272113B1 (en) | 1998-09-11 | 2001-08-07 | Compaq Computer Corporation | Network controller system that uses multicast heartbeat packets |
| GB9821766D0 (en) | 1998-10-06 | 1998-12-02 | Sgs Thomson Microelectronics | Data transfer |
| GB9821792D0 (en) | 1998-10-06 | 1998-12-02 | Sgs Thomson Microelectronics | Data transfer |
| GB9821789D0 (en) | 1998-10-06 | 1998-12-02 | Sgs Thomson Microelectronics | Jitter handling |
| GB9821762D0 (en) | 1998-10-06 | 1998-12-02 | Sgs Thomson Microelectronics | Data transfer |
| GB9821768D0 (en) | 1998-10-06 | 1998-12-02 | Sgs Thomson Microelectronics | Data transfer |
| GB9821800D0 (en) | 1998-10-06 | 1998-12-02 | Sgs Thomson Microelectronics | Data transfer |
| GB9821763D0 (en) | 1998-10-06 | 1998-12-02 | Sgs Thomson Microelectronics | Data transfer |
| GB9821770D0 (en) | 1998-10-06 | 1998-12-02 | Sgs Thomson Microelectronics | Data transfer |
| GB9821791D0 (en) | 1998-10-06 | 1998-12-02 | Sgs Thomson Microelectronics | Data transfer |
| US6862635B1 (en) * | 1998-11-13 | 2005-03-01 | Cray Inc. | Synchronization techniques in a multithreaded environment |
| KR100323770B1 (ko) * | 1999-03-08 | 2002-02-19 | 서평원 | 멀티캐스트 서비스를 위한 채널 구조 및 이를 이용한 서비스 운용 방법 |
| US6760337B1 (en) * | 1999-08-17 | 2004-07-06 | Conexant Systems, Inc. | Integrated circuit that processes communication packets with scheduler circuitry having multiple priority levels |
| US6965603B1 (en) | 2000-03-20 | 2005-11-15 | Cortina Systems, Inc. | Circuits for combining ATM and packet data on an optical fiber |
| US6751214B1 (en) | 2000-03-30 | 2004-06-15 | Azanda Network Devices, Inc. | Methods and apparatus for dynamically allocating bandwidth between ATM cells and packets |
| US6810039B1 (en) | 2000-03-30 | 2004-10-26 | Azanda Network Devices, Inc. | Processor-based architecture for facilitating integrated data transfer between both atm and packet traffic with a packet bus or packet link, including bidirectional atm-to-packet functionally for atm traffic |
| US6751224B1 (en) | 2000-03-30 | 2004-06-15 | Azanda Network Devices, Inc. | Integrated ATM/packet segmentation-and-reassembly engine for handling both packet and ATM input data and for outputting both ATM and packet data |
| US6813729B1 (en) | 2000-06-15 | 2004-11-02 | Advanced Micro Devices, Inc. | Programmable bi-directional MII testing methodology and device including same |
| US6937571B1 (en) | 2000-06-19 | 2005-08-30 | Advanced Micro Devices, Inc. | Method of testing a network device through a medium independent interface (MII) |
| US6978318B1 (en) | 2000-06-19 | 2005-12-20 | Advanced Micro Devices, Inc. | Network interface apparatus and method of internal communication within the same |
| US7107378B1 (en) | 2000-09-01 | 2006-09-12 | Sandisk Corporation | Cooperative interconnection and operation of a non-volatile memory card and an input-output card |
| US7243075B1 (en) * | 2000-10-03 | 2007-07-10 | Shaffer James D | Real-time process for defining, processing and delivering a highly customized contact list over a network |
| SI20398A (sl) * | 2000-12-08 | 2001-04-30 | Daisy Technologies Inc. | Postopek in priprava za prenos podatkovnih in govornih paketov med paketnim in sinhronim omrežjem |
| FR2818066B1 (fr) * | 2000-12-12 | 2003-10-10 | Eads Airbus Sa | Procede et dispositif de transmission deterministe de donnees asynchrones mises en paquet |
| KR100455041B1 (ko) * | 2000-12-22 | 2004-11-08 | 엘지전자 주식회사 | 에이티엠 채널을 예약 및 설정하는 에이티엠 디바이스드라이버 및 방법 |
| KR100428859B1 (ko) * | 2001-04-27 | 2004-04-28 | 주식회사 현대시스콤 | 이동 통신 교환기의 파일 시스템에서 파일 생성/제거 속도향상 방법 |
| WO2003088021A2 (en) | 2002-04-08 | 2003-10-23 | Socket Communications, Inc | Wireless enabled memory module |
| US7089486B1 (en) * | 2002-08-16 | 2006-08-08 | Juniper Networks, Inc. | Context switching for on-the-fly processing of fragmented frames |
| US7367503B2 (en) | 2002-11-13 | 2008-05-06 | Sandisk Corporation | Universal non-volatile memory card used with various different standard cards containing a memory controller |
| US20050055479A1 (en) * | 2002-11-21 | 2005-03-10 | Aviad Zer | Multi-module circuit card with inter-module direct memory access |
| US8037229B2 (en) | 2002-11-21 | 2011-10-11 | Sandisk Technologies Inc. | Combination non-volatile memory and input-output card with direct memory access |
| US7305535B2 (en) * | 2003-04-17 | 2007-12-04 | Sandisk Corporation | Memory cards including a standard security function |
| US7209995B2 (en) * | 2003-12-09 | 2007-04-24 | Sandisk Corporation | Efficient connection between modules of removable electronic circuit cards |
| US20060140203A1 (en) * | 2004-12-28 | 2006-06-29 | Sanjeev Jain | System and method for packet queuing |
| US20060179392A1 (en) * | 2005-02-08 | 2006-08-10 | Takaaki Ota | Handshakeless retransmission protocol |
| US8402172B2 (en) * | 2006-12-22 | 2013-03-19 | Hewlett-Packard Development Company, L.P. | Processing an input/output request on a multiprocessor system |
| US7657664B2 (en) * | 2007-03-08 | 2010-02-02 | International Business Machines Corporation | Method and system for tracking device driver requests |
| US8255531B2 (en) * | 2009-06-30 | 2012-08-28 | Nokia Corporation | Method and apparatus for providing mobile device interoperability |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4422171A (en) * | 1980-12-29 | 1983-12-20 | Allied Corporation, Law Department | Method and system for data communication |
| WO1991002420A1 (en) * | 1989-08-09 | 1991-02-21 | Alcatel N.V. | Communication switching element and method for transmitting variable length cells |
| US5136584A (en) * | 1990-07-11 | 1992-08-04 | At&T Bell Laboratories | Hardware interface to a high-speed multiplexed link |
| US5274768A (en) * | 1991-05-28 | 1993-12-28 | The Trustees Of The University Of Pennsylvania | High-performance host interface for ATM networks |
| JPH04369942A (ja) * | 1991-06-19 | 1992-12-22 | Hitachi Ltd | データ通信システム |
| FR2701180B1 (fr) * | 1993-01-29 | 1995-03-10 | Cit Alcatel | Dispositif de cellulisation et dispositif de décellulisation de voies numériques synchromes, centre de commutation de voies numériques synchrones, et centre de commutation de voies numériques asynchrones. |
| US5524113A (en) * | 1993-08-30 | 1996-06-04 | Washington University | ATM switch interface |
-
1995
- 1995-08-11 US US08/515,183 patent/US5606559A/en not_active Expired - Fee Related
-
1996
- 1996-07-15 KR KR1019960028557A patent/KR100221378B1/ko not_active Expired - Fee Related
- 1996-07-15 JP JP18465696A patent/JP3138214B2/ja not_active Expired - Fee Related
- 1996-07-22 EP EP96305342A patent/EP0792081B1/en not_active Expired - Lifetime
- 1996-07-22 DE DE69624088T patent/DE69624088T2/de not_active Expired - Fee Related
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7006442B1 (en) | 1999-11-25 | 2006-02-28 | Nec Corporation | Communication control system and control method thereof |
Also Published As
| Publication number | Publication date |
|---|---|
| DE69624088D1 (de) | 2002-11-07 |
| KR100221378B1 (ko) | 1999-09-15 |
| EP0792081A3 (en) | 1999-06-16 |
| US5606559A (en) | 1997-02-25 |
| KR980013142A (ko) | 1998-04-30 |
| EP0792081A2 (en) | 1997-08-27 |
| EP0792081B1 (en) | 2002-10-02 |
| JP3138214B2 (ja) | 2001-02-26 |
| DE69624088T2 (de) | 2003-06-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3138214B2 (ja) | Atm通信ネットワークにおけるフレームの送受信方法 | |
| US7631106B2 (en) | Prefetching of receive queue descriptors | |
| US5761427A (en) | Method and apparatus for updating host memory in an adapter to minimize host CPU overhead in servicing an interrupt | |
| US5519701A (en) | Architecture for high performance management of multiple circular FIFO storage means | |
| JP2990345B2 (ja) | ネットワークインターフェース | |
| US5630059A (en) | Expedited message transfer in a multi-nodal data processing system | |
| JP2933885B2 (ja) | ネットワーク・インタフェースおよび受信メッセージの処理方法 | |
| US6615282B1 (en) | Adaptive messaging | |
| US20040252685A1 (en) | Channel adapter with integrated switch | |
| US6189053B1 (en) | Communication control system utilizing a shared buffer managed by high and low level protocols | |
| JPH1074174A (ja) | ネットワーク・インタフェース | |
| EP0631706A1 (en) | Methods and devices for prioritizing in handling buffers in packet networks | |
| JPH05219098A (ja) | フレーム変換方法及び装置 | |
| JPH09128313A (ja) | コンピュータ通信システム・インターフェースにおける送信データのバッファリング | |
| US6151321A (en) | Method and system for sending ATM cells to an ATM network from a host | |
| EP0524936A1 (en) | Data transfer within a data storage subsystem | |
| US6026090A (en) | Method and system for receiving ATM cells from an ATM network by a host | |
| CN101494636B (zh) | 一种基于快速io互连技术的数据排序方法及装置 | |
| WO2004019165A2 (en) | Method and system for tcp/ip using generic buffers for non-posting tcp applications | |
| JP2507230B2 (ja) | インタ―フェ―ス装置および方法並びに通信アダプタ | |
| US5555390A (en) | Data storage method and subsystem including a device controller for respecifying an amended start address | |
| US7895239B2 (en) | Queue arrays in network devices | |
| US6052387A (en) | Enhanced interface for an asynchronous transfer mode segmentation controller | |
| US5613141A (en) | Data storage subsystem having dedicated links connecting a host adapter, controller and direct access storage devices | |
| JP2001237868A (ja) | ファイバチャネルノードにおいて効率の良いi/o操作を達成するための方法及びシステム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |