JP3018975B2 - ATM protocol processing controller - Google Patents

ATM protocol processing controller

Info

Publication number
JP3018975B2
JP3018975B2 JP7342199A JP34219995A JP3018975B2 JP 3018975 B2 JP3018975 B2 JP 3018975B2 JP 7342199 A JP7342199 A JP 7342199A JP 34219995 A JP34219995 A JP 34219995A JP 3018975 B2 JP3018975 B2 JP 3018975B2
Authority
JP
Japan
Prior art keywords
transmission
cell
cell transmission
atm
rate
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.)
Expired - Lifetime
Application number
JP7342199A
Other languages
Japanese (ja)
Other versions
JPH09186692A (en
Inventor
美加 水谷
達也 横山
栄三 端
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP7342199A priority Critical patent/JP3018975B2/en
Priority to US08/775,022 priority patent/US5974466A/en
Publication of JPH09186692A publication Critical patent/JPH09186692A/en
Priority to US09/350,892 priority patent/US6714989B1/en
Application granted granted Critical
Publication of JP3018975B2 publication Critical patent/JP3018975B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は,ATM−LANに
接続する端末に実装し,AALレイヤのSAR機能と,
ATMレイヤのセルの多重/分離機能を持つATMプロ
トコル処理コントローラに関し,特に複数論理コネクシ
ョンに対するトラヒックシェーピング機能を実現する送
信トラヒック制御に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention is implemented in a terminal connected to an ATM-LAN and has an SAR function of an AAL layer,
The present invention relates to an ATM protocol processing controller having an ATM layer cell multiplexing / demultiplexing function, and more particularly to a transmission traffic control for realizing a traffic shaping function for a plurality of logical connections.

【0002】[0002]

【従来の技術】ATMに於て,VPI/VCIによって
一意に識別できる論理コネクション(VC)設定時に,
その論理コネクション上を転送するトラヒックの種別に
より,遅延の許容をどこまで許可するか等の通信品質
と,送信レートをネットワーク,エンドシステムに要求
することが出来る。実際には,ATMレイヤの機能とし
て定義されている4つのトラヒックサービスクラス(C
BR:固定レートサービス,VBR:可変レートサービ
ス,ABR:ネットワーク輻輳状態に対応してレートを
変動させるサービス,UBR:無規定,無保証のサービ
ス)から,VC設定時に使用するクラスを選択するとと
もに,送信レートを要求する。
2. Description of the Related Art In an ATM, when a logical connection (VC) that can be uniquely identified by VPI / VCI is set,
Depending on the type of traffic to be transferred on the logical connection, it is possible to request the network and end system for communication quality such as how much delay is allowed and the transmission rate. In practice, four traffic service classes (C
(BR: fixed rate service, VBR: variable rate service, ABR: service that changes the rate in response to network congestion, UBR: unspecified, unguaranteed service) Request transmission rate.

【0003】ATM−LANに接続する為に必要なAT
Mプロトコル処理コントローラは,VC設定時に申告し
たサービスクラスに従い,同じくVC設定時に申告した
送信レートに即してセルの送信をVC対応に実現させる
必要がある。
[0003] AT required to connect to ATM-LAN
The M-protocol processing controller needs to realize cell transmission according to the VC according to the service class declared at the time of setting the VC, in accordance with the transmission rate also declared at the time of setting the VC.

【0004】既存のATMプロトコル処理コントローラ
でサポートしているトラヒックシェーピング機能として
は,例えば,ハードウェアにて2つのプライオリティ対
応に4つのレートキューを具備し,レートキュー対応に
ピークレートを規定し,規定したレートでレートキュー
に登録してある複数VCをラウンドロビン方式でアクセ
スしてセルを送信するといった方法により実現している
もの,全体VCの送信レートから,セルを送信するVC
の順番を記載したテーブルを予め準備しておき,ハード
ウェアでは前記テーブルを一定周期毎にアクセスし,記
載してあるVCに対応したセルを送信するといった方法
により実現しているものがある。
As a traffic shaping function supported by an existing ATM protocol processing controller, for example, four rate queues are provided by hardware in correspondence with two priorities, and peak rates are defined in correspondence with the rate queues. A method in which a cell is transmitted by accessing a plurality of VCs registered in a rate queue at a given rate in a round-robin manner, and a VC transmitting a cell from a transmission rate of the entire VC.
Are prepared in advance, and the hardware implements the method by accessing the table at regular intervals and transmitting a cell corresponding to the described VC.

【0005】尚,前記トラヒックシェーピング機能を持
ったATMプロトコル処理コントローラとしては,Tran
Switch社SARAチップ,後記機能を持つコントローラ
としては,Integrated Device Technology社のATM
SARチップ(IDT77201)がある。
As an ATM protocol processing controller having the traffic shaping function, Tran
Switch's SARA chip, the controller with the function described below, Integrated Device Technology's ATM
There is an SAR chip (IDT77201).

【0006】[0006]

【発明が解決しようとする課題】しかしながらこのよう
な従来装置では,VC対応に申告されたATMプロトコ
ルで規定されているサービスクラス,送信レートに即し
た送信トラヒック制御を実現するためには,ATMプロ
トコル処理コントローラのドライバにてVC対応に送信
レートを意識することが必要であり,加えて,VCが設
定された場合,全体の送信レートのスケジュールを見直
す必要がある。
However, in such a conventional apparatus, in order to realize transmission traffic control in accordance with a service class and a transmission rate defined by an ATM protocol declared for VC, an ATM protocol is required. It is necessary for the driver of the processing controller to be aware of the transmission rate corresponding to the VC. In addition, when the VC is set, it is necessary to review the schedule of the entire transmission rate.

【0007】例えば,上述した公知例のように,レート
キューヘのピークレートの割り付けや,スケジュールの
ため予めテーブルを作成が必要である。
For example, as in the above-described known example, it is necessary to allocate a peak rate to a rate queue and create a table in advance for a schedule.

【0008】一般に,ATM−LANに接続するネット
ワークカードでは,コスト低減のため,ATMプロトコ
ル処理コントローラのドライバ用のローカルプロセッサ
を実装しない構成をとるため,計算機側の主プロセッサ
にてVC対応の送信トラヒック制御を実行する必要があ
る。
In general, a network card connected to an ATM-LAN has a configuration in which a local processor for a driver of an ATM protocol processing controller is not mounted in order to reduce costs. Control needs to be performed.

【0009】本発明の目的は,ATMプロトコル処理コ
ントロール内において,ATMレイヤの規定する様々な
サービスクラス,送信レートに即したトラヒック制御に
柔軟に対応することにある。
An object of the present invention is to flexibly cope with traffic control in accordance with various service classes and transmission rates specified by an ATM layer in an ATM protocol processing control.

【0010】本発明の他の目的は,VC対応に申告され
る送信レートに即したトラヒックシェーピング機能をハ
ードウェアとファームウェアの双方で実現することにあ
る。
It is another object of the present invention to implement a traffic shaping function in accordance with a transmission rate declared for VC in both hardware and firmware.

【0011】本発明の他の目的は,全VC上の総送信レ
ートを監視,常に各VCに最適な送信レートを割り付け
ることにある。
It is another object of the present invention to monitor the total transmission rate on all VCs and to always assign an optimum transmission rate to each VC.

【0012】[0012]

【課題を解決するための手段】本発明の特徴は,ATM
プロトコル処理コントローラにおいて,VC単位にセル
の送信間隔を管理する手段と,セル送信時刻到達時にセ
ルの送信を行う手段と,複数VCにおいて同時にセル送
信時刻に到達した場合にスケジューリングを行う手段を
持ったハードウェア回路であるセル送信処理部を具備
し,複数のVCに対して同時にトラヒックシェーピング
を実現する点にある。
SUMMARY OF THE INVENTION The feature of the present invention is that an ATM is used.
The protocol processing controller has means for managing cell transmission intervals in VC units, means for transmitting cells when the cell transmission time has arrived, and means for scheduling when the cell transmission time has arrived simultaneously in a plurality of VCs. A point is that a cell transmission processing unit which is a hardware circuit is provided, and traffic shaping is simultaneously realized for a plurality of VCs.

【0013】さらに,ATMプロトコル処理コントロー
ラにCPUコアとCPUコアで実行するファームウェア
を格納するメモリと,ファームウエアが使用するテーブ
ルを配置するメモリを具備することにより,前記ファー
ムウエアにてVC毎にセル送信間隔を管理する機能と,
VC毎に最適な送信レートを選択する機能と,総送信レ
ートを監視する機能等を持つことにより,VC対応に申
告されるサービスクラスの例えばBurst tole
ranceといったパラメータと送信レートに即したト
ラヒック制御を実現する点も本発明の特徴の一つであ
る。
The ATM protocol processing controller further comprises a memory for storing a CPU core and firmware executed by the CPU core, and a memory for arranging a table used by the firmware. A function to manage the transmission interval,
By having a function of selecting an optimum transmission rate for each VC, a function of monitoring the total transmission rate, and the like, a service class declared for VC, such as Burst Tole, is provided.
One of the features of the present invention is to realize traffic control in accordance with a parameter such as lance and a transmission rate.

【0014】さらに,セル送信管理部においては,複数
セル送信毎に送信レートを変更できる手段と,セルの周
期転送手段とを持つことも特徴の一つである。
Further, one of the features of the cell transmission management section is that it has means for changing the transmission rate every time a plurality of cells are transmitted and means for periodically transferring cells.

【0015】このような構成とすることから,セル送信
管理部にて,複数VCに対するトラヒックシェーピング
機能を実現することが可能である。さらに,複数セル送
信毎にセル送信レートを変更することが可能である。セ
ル送信間隔管理方法として,一定周期でのセル送信と,
セル送信完了から一定時間でのセル送信から選択するこ
とが可能である。
With such a configuration, it is possible to realize a traffic shaping function for a plurality of VCs in the cell transmission manager. Further, it is possible to change the cell transmission rate every time a plurality of cells are transmitted. As cell transmission interval management methods, cell transmission at a fixed cycle,
It is possible to select from cell transmission at a fixed time from the completion of cell transmission.

【0016】さらに,セル送信管理部とCPUコアで実
行するファームウェアの双方で,同時に複数のVCに対
するトラヒックシェーピング機能を実現することが可能
である。セル送信管理部とファームウェアが担当する処
理を,データセルと管理セル,あるいは高速な送信レー
トが申告されたVCと低速な送信レートが申告されたV
C等に分担することが可能である。
Further, both the cell transmission management unit and the firmware executed by the CPU core can simultaneously realize a traffic shaping function for a plurality of VCs. The processing performed by the cell transmission management unit and the firmware is performed by a data cell and a management cell, or a VC for which a high transmission rate is declared and a V for which a low transmission rate is declared.
C and the like.

【0017】各VCに対して,ATMプロトコル規定の
サービスタイプのパラメータと,送信レートとを申告す
るだけで,CPUコアで実行するファームウェアが各V
Cに即したセル送信間隔の算出と,管理セルの送信管理
とをすることが可能である。
For each VC, simply declaring the parameters of the service type defined in the ATM protocol and the transmission rate, the firmware executed by the CPU core
It is possible to calculate the cell transmission interval according to C and manage the transmission of the management cell.

【0018】さらに,送信中のVCの総送信レートを監
視し,総送信レートが伝送路の転送帯域を越えた場合,
各VC毎にサービスクラスに対応して送信レートを削減
することが可能である。
Further, the total transmission rate of the VC being transmitted is monitored, and when the total transmission rate exceeds the transfer band of the transmission line,
The transmission rate can be reduced corresponding to the service class for each VC.

【0019】[0019]

【発明の実施の形態】BEST MODE FOR CARRYING OUT THE INVENTION

(実施例1)本発明の第一の実施例を図1から図13を
参照して説明する。
(Embodiment 1) A first embodiment of the present invention will be described with reference to FIGS.

【0020】図1は,本発明を適用したATMプロトコ
ル処理コントローラ110を実装し,ATM−LANに
計算機を接続するATMカード108の構成例を示すブ
ロック図である。計算機は,主プロセッサ100と主メ
モリ102から構成され,プロセッサバス104とPC
MCIA接続部106を介してATMカード108に接
続されている。ATMカード108は,計算機とのイン
タフェース機能とAAL/ATM機能とを持つATMプ
ロトコル処理コントローラ110,PHY機能を持つP
HYプロトコル処理コントーラ114,セルの分割/組
立に使用するバッファメモリ112,トランス116,
メタルケーブルのコネクタ118を備えており,メタル
ケーブル120を介して支線HUB122に接続しAT
M−LANを構成するものである。ATMプロトコル処
理コントローラ110は,PCMCIAとして物理的な
インタフェースを実現するPCMCIA I/F部13
2,主プロセッサからの送信要求,ATMカードからの
受信報告などに係わる制御情報を授受するホストI/F
部134,主メモリ102とバッファメモリ112間の
データ転送を行うホストDMAC136,バッファメモ
リ112とPHYプロトコル処理プロセッサ114間で
セル送信を行うセル送信DMAC140,セル受信を行
うセル受信DMAC142,PHYプロトコル処理部1
14とのインタフェース部であるセル送受信インタフェ
ース部146,DMAC136,140,142,ある
いはCPUコア128によるバッファメモリアクセス競
合を制御するアービタ138,セル送信時のトラヒック
シェーピング機能を実現するハードウェア回路であるセ
ル送信管理部148,上記処理部とCPUコア128を
接続するCPUコアI/F部130,CPUコア12
8,CPUコアが実行するファームウェアを格納するF
ROM124,CPUコアが管理するテーブル等を配置
するRAM124から構成する。
FIG. 1 is a block diagram showing an example of the configuration of an ATM card 108 which mounts an ATM protocol processing controller 110 to which the present invention is applied and connects a computer to an ATM-LAN. The computer comprises a main processor 100 and a main memory 102, a processor bus 104 and a PC.
It is connected to the ATM card 108 via the MCIA connection unit 106. The ATM card 108 includes an ATM protocol processing controller 110 having an interface function with a computer and an AAL / ATM function, and a P card having a PHY function.
HY protocol processing controller 114, buffer memory 112 used for cell division / assembly, transformer 116,
A metal cable connector 118 is provided, which is connected to the branch HUB 122 via the metal cable 120 and
It constitutes an M-LAN. The ATM protocol processing controller 110 is a PCMCIA I / F unit 13 that implements a physical interface as PCMCIA.
2. Host I / F for transmitting and receiving control information related to a transmission request from the main processor, a reception report from the ATM card, and the like.
Unit 134, a host DMAC 136 that performs data transfer between the main memory 102 and the buffer memory 112, a cell transmission DMAC 140 that performs cell transmission between the buffer memory 112 and the PHY protocol processor 114, a cell reception DMAC 142 that performs cell reception, and a PHY protocol processing unit 1
An arbiter 138 for controlling buffer memory access competition by the cell transmission / reception interface unit 146, the DMACs 136, 140, 142, or the CPU core 128, and a cell as a hardware circuit for realizing a traffic shaping function at the time of cell transmission. A transmission management unit 148, a CPU core I / F unit 130 that connects the processing unit to the CPU core 128, and a CPU core 12
8. F storing the firmware executed by the CPU core
It comprises a ROM 124 and a RAM 124 in which tables and the like managed by the CPU core are arranged.

【0021】図2は,ATMにおける通信プロトコル構
成例と通信プロトコルで規定されている処理動作例を示
した図である。AALレイヤとしてAAL5の適用を仮
定している。ATMカード108は,AALレイヤのC
PCSレイヤ以下のプロトコル処理をATMプロトコル
処理コントローラ110とPHYプロトコル処理コント
ローラ114とにより実行する。
FIG. 2 is a diagram showing an example of the configuration of a communication protocol in an ATM and an example of a processing operation defined by the communication protocol. It is assumed that AAL5 is applied as the AAL layer. The ATM card 108 has a C of the AAL layer.
Protocol processing below the PCS layer is executed by the ATM protocol processing controller 110 and the PHY protocol processing controller 114.

【0022】送信処理と受信処理の概略を以下に示す。The outline of the transmission process and the reception process will be described below.

【0023】ATMプロトコル処理コントローラ110
は,主プロセッサ100からの送信要求を受け付ける
と,主プロセッサ100が主メモリ102上に準備した
送信CPCS−PDUをホストDMAC136を用いて
バッファメモリ112へDMA転送する。その後,バッ
ファメモリ112上のCPCS−PDUを48Bに分割
し,セルヘッダを付加し,PHYプロトコ処理コントロ
ーラ114に対して送信を要求する。尚,セル送信DM
AC140ではセルを送信しながらCRC32を計算
し,CPCS−PDUのトレイラにCRC32の計算結
果を挿入する。
ATM protocol processing controller 110
Receives the transmission request from the main processor 100, the main processor 100 DMA-transmits the transmission CPCS-PDU prepared on the main memory 102 to the buffer memory 112 using the host DMAC 136. After that, the CPCS-PDU in the buffer memory 112 is divided into 48B, a cell header is added, and transmission is requested to the PHY protocol processing controller 114. Note that the cell transmission DM
The AC 140 calculates the CRC32 while transmitting the cell, and inserts the calculation result of the CRC32 into the trailer of the CPCS-PDU.

【0024】ATMプロトコル処理コントローラ110
は,PHYプロトコル処理コントローラ114から受信
報告を受けて,受信セルからセルヘッダを削除し,バッ
ファメモリ112上でCPCS−PDUの組立を行う。
尚,セル受信DMAC142ではセルを受信しながらC
RC32を計算し,CPCS−PDU組立完了時にCR
C32のチェックを行う。CPCS−PDU組立が完了
すると,ホストDMAC136にて,バッファメモリ1
12から主プロセッサ100が指定する主メモリ102
上へ受信CPCS−PDUをDMA転送する。転送完了
後,ATMプロトコル処理コントローラ110から主プ
ロセッサ100へ受信完了を割り込み等により通知す
る。
ATM protocol processing controller 110
Receives the reception report from the PHY protocol processing controller 114, deletes the cell header from the received cell, and assembles the CPCS-PDU on the buffer memory 112.
The cell reception DMAC 142 receives C while receiving cells.
Calculate RC32, and when CPCS-PDU assembly is completed,
Check C32. When the CPCS-PDU assembly is completed, the host DMAC 136 makes the buffer memory 1
Main memory 102 designated by main processor 100 from 12
The received CPCS-PDU is DMA-transferred upward. After the transfer is completed, the completion of the reception is notified from the ATM protocol processing controller 110 to the main processor 100 by an interrupt or the like.

【0025】図3にバッファメモリ112の構成を示
す。バッファメモリ112は,ATMプロトコル処理コ
ントローラ110がセル送信処理を行うために使用する
送信管理テーブル300,セル受信処理に使用する受信
管理テーブル312,送信CPCS−PDUを格納する
ための複数の送信バッファ314(314A,314
B,314M),受信CPCS−PDUを格納するため
の複数の受信バッファ316(316A,316B,3
16N)から構成する。送信管理テーブル300のエン
トリ310は,セルヘッダのVPI,VCIにより識別
可能な論理コネクション(VC)対応に準備し,CRC
計算結果を退避するエリア302,セル送信時に付加す
るセルヘッダ304,ATMプトコル処理コントローラ
にて連続して送信する送信セル数306,次に送信する
セルペイロードの送信バッファでの位置を示す送信ポイ
ンタ308,から構成する。ATMプロトコル処理コン
トローラは110,送信管理テーブル300を用いてセ
ル送信管理部148にてトラヒックシェーピングを実現
する。
FIG. 3 shows the configuration of the buffer memory 112. The buffer memory 112 includes a transmission management table 300 used by the ATM protocol processing controller 110 to perform cell transmission processing, a reception management table 312 used for cell reception processing, and a plurality of transmission buffers 314 for storing transmission CPCS-PDUs. (314A, 314
B, 314M) and a plurality of reception buffers 316 (316A, 316B, 3) for storing reception CPCS-PDUs.
16N). The entry 310 of the transmission management table 300 is prepared for a logical connection (VC) that can be identified by the VPI and VCI of the cell header,
Area 302 for saving the calculation result, cell header 304 added at the time of cell transmission, number of transmission cells 306 to be continuously transmitted by the ATM protocol controller, transmission pointer 308 indicating the position of the next transmitted cell payload in the transmission buffer, It consists of. The ATM protocol processing controller 110 implements traffic shaping in the cell transmission management unit 148 using the transmission management table 300.

【0026】図4は,本発明のセル送信管理部148の
機能を示すブロック構成図である。セル送信管理部14
8では,VC対応にセル送信間隔を管理し,セル送信時
刻に到達するとセル送信DMACに対してセル送信要求
を発行することにより,VC毎に規定される種々の送信
レート(セル数/秒)に対応し,加えて複数VCのセル
多重を行い,トラヒックシェーピングを実現するもので
ある。セル送信管理部148は,VC対応にセル送信間
隔を管理するための管理エントリ404(404A,4
04B,404N),トラヒック制御を柔軟に行うため
CPUコア128からの1セル送信要求を受け付ける送
信要求レジスタ406,セル送信間隔管理のためのCl
ock402,複数の管理エントリ404,あるいはC
PUコア128からのセル送信要求をスケジューリング
するスケジューラ部400,セル送信完了をCPUコア
へ報告するための送信報告レジスタ408から構成す
る。管理エントリ数はセル送信管理部にて同時に管理可
能なVC数に対応する。管理エントリ404は,セル送
信間隔管理を起動するためのctlレジスタ401(4
10A,410B,410N),バッファメモリ上に設
ける送信管理テーブル(SMT)300の位置情報(S
MT index)を設定するSMT indexレジ
スタ412(412A,412B,412N),セル送
信間隔を設定するrate valueレジスタ414
(414A,414B,414N),セル送信間隔管理
のためのワークエリアであるcountレジスタ416
(416A,416B,416N)の4レジスタと,c
ountレジスタ416を利用してセル送信間隔管理を
行うタイマ処理部418(418A,418B,418
N)から構成する。セル送信間隔管理を起動する際に
は,上記4レジスタの設定をCPUコア128にて行う
必要がある。
FIG. 4 is a block diagram showing the function of the cell transmission manager 148 of the present invention. Cell transmission management unit 14
In step 8, the cell transmission interval is managed in correspondence with the VC, and when the cell transmission time is reached, a cell transmission request is issued to the cell transmission DMAC so that various transmission rates (number of cells / second) specified for each VC are obtained. In addition, cell multiplexing of a plurality of VCs is performed to realize traffic shaping. The cell transmission management unit 148 includes a management entry 404 (404A, 4A) for managing the cell transmission interval corresponding to the VC.
04B, 404N), a transmission request register 406 for receiving a 1-cell transmission request from the CPU core 128 to flexibly perform traffic control, and a Cl for cell transmission interval management.
ock 402, a plurality of management entries 404, or C
It comprises a scheduler section 400 for scheduling a cell transmission request from the PU core 128 and a transmission report register 408 for reporting the completion of cell transmission to the CPU core. The number of management entries corresponds to the number of VCs that can be simultaneously managed by the cell transmission management unit. The management entry 404 includes a ctl register 401 (4) for activating cell transmission interval management.
10A, 410B, 410N), and position information (S) of the transmission management table (SMT) 300 provided on the buffer memory.
SMT index register 412 (412A, 412B, 412N) for setting the MT index), and rate value register 414 for setting the cell transmission interval.
(414A, 414B, 414N), count register 416, which is a work area for cell transmission interval management
(416A, 416B, 416N) and c
A timer processing unit 418 (418A, 418B, 418) that manages cell transmission intervals using the out register 416.
N). When activating the cell transmission interval management, the CPU core 128 needs to set the above four registers.

【0027】次に,セル送信管理部148を用いること
により実現するトラヒック制御方式を図5から図10に
示す処理フローにより示す。これらのフローにて,セル
送信処理部148のタイマ処理部418とスケジューラ
部400,セル送信DMAC140の処理を示す。
Next, a traffic control method realized by using the cell transmission management unit 148 will be described with reference to processing flows shown in FIGS. In these flows, the processes of the timer processing unit 418, the scheduler unit 400, and the cell transmission DMAC 140 of the cell transmission processing unit 148 are shown.

【0028】図5は,タイマ処理部418のカウント処
理を示す処理フローである。Clock402から一定
時間,たとえばμsec毎に信号が入ると,管理エント
リ404に対して起動要求が出されているかをctlレ
ジスタ410の設定値より確認する(502)。起動要
求が無ければ処理を終了し,起動要求があれば,cou
ntレジスタ416の設定値をチェックし,「0」であ
れば処理を終了し(504),「0」でなければ,co
untレジスタ416の設定値から「1」減算する(5
06)。その後,再度countレジスタ416の設定
をチェックし(508),「0」であればスケジューラ
部400へtime out信号を発行する(51
0)。同時にSMT indexをスケジューラ部40
0へ渡す(510)。タイマ処理部418は,スケジュ
ーラ部400からの再起動要求があるまで,処理を停止
する(514)。
FIG. 5 is a process flow showing the counting process of the timer processing unit 418. When a signal is input from the Clock 402 for a predetermined time, for example, every μsec, it is checked whether or not an activation request has been issued to the management entry 404 from the set value of the ctl register 410 (502). If there is no activation request, the process ends.
The set value of the nt register 416 is checked, and if "0", the process is terminated (504).
“1” is subtracted from the set value of the unt register 416 (5
06). Thereafter, the setting of the count register 416 is checked again (508), and if "0", a time out signal is issued to the scheduler unit 400 (51).
0). At the same time, the SMT index
0 (510). The timer processing unit 418 stops the processing until there is a restart request from the scheduler unit 400 (514).

【0029】図6,図7においてスケジューラ部400
のスケジューリング処理を示した処理フローである。
6 and 7, the scheduler section 400
5 is a processing flow showing a scheduling process of FIG.

【0030】図6は,スケジューラ部400のセル送信
起動のランダムなスケジューリング処理を行う場合の処
理フローである。各管理エントリ404のタイマ処理部
418からのTime out信号の有無と(602,
604,606),CPUコア128による送信要求レ
ジスタ406の設定有無(608)を順番にチェックし
続け,セル送信要求があれば,セル送信DMAC140
を起動する(610)。上述したスケジューリング処理
を繰り返し行う事により,各管理エントリ404のタイ
マ処理部418からの複数のTime out信号とC
PUコアによる送信要求レジスタの設定によるセル送信
要求をランダムに受け付け,複数VCに対するセル送信
要求を平等に扱う。
FIG. 6 is a processing flow when the scheduler section 400 performs a random scheduling process for starting cell transmission. The presence or absence of the Time out signal from the timer processing unit 418 of each management entry 404 and (602,
604, 606), the CPU core 128 continues to check the setting (608) of the transmission request register 406 in order, and if there is a cell transmission request, the cell transmission DMAC 140
Is started (610). By repeatedly performing the above-described scheduling processing, a plurality of Time out signals from the timer processing unit 418 of each management entry 404 and C
A cell transmission request by the setting of the transmission request register by the PU core is randomly received, and the cell transmission request for a plurality of VCs is treated equally.

【0031】図7は,スケジューラ部400のセル送信
起動の優先機能付きスケジューリング処理を行う場合の
一処理フローである。優先順位は,管理エントリ404
番号が小さい方が優先順位が高いと仮定する(管理エン
トリ1,404Aは管理エントリ2,404Bよりも優
先順位が高く,管理エントリn−1は管理エントリn,
404Nよりも優先順位が高い)。スケジュール部40
0では,まず管理エントリ404のタイマ処理部418
からのTime out信号をチェックする(61
2)。Time out信号が無い場合,CPUコア1
28による送信要求レジスタ406の設定有無を調べ
(608),セル送信要求があれば,セル送信DMAC
140を起動する(610)。Time out信号が
ある場合,管理エントリ1から順番にTime out
信号の有無をチェックし(602,604),セル送信
要求があれば,セル送信DMAC140を起動する(6
10)。一管理エントリに対してセル送信DMAC14
0を起動後,CPUコア128による送信要求レジスタ
406の設定有無を調べ(608),セル送信要求があ
れば,セル送信DMAC140を起動し(610),管
理エントリ404のタイマ処理部418からのTime
out信号によるセル送信と,CPUコア128によ
る送信要求レジスタ406の設定によるセル送信とは交
互に行う。上述した処理を繰り返して行う事により,優
先順位をサポートしたスケジューリング処理を実現す
る。
FIG. 7 is a processing flow in the case where the scheduler section 400 performs scheduling processing with a priority function for starting cell transmission. The priority is the management entry 404
It is assumed that the smaller number has the higher priority (the management entry 1 404A has a higher priority than the management entry 2 404B, and the management entry n-1 has the management entry n,
404N). Schedule section 40
In the case of 0, first, the timer processing unit 418 of the management entry 404
Check the Time out signal from the
2). If there is no Time out signal, the CPU core 1
It is checked whether or not the transmission request register 406 has been set (step 608).
140 is started (610). If there is a Time out signal, Time out is sequentially assigned from the management entry 1.
The presence or absence of a signal is checked (602, 604), and if there is a cell transmission request, the cell transmission DMAC 140 is started (6).
10). Cell transmission DMAC 14 for one management entry
After the activation, the CPU core 128 checks the setting of the transmission request register 406 (608). If there is a cell transmission request, the cell transmission DMAC 140 is activated (610), and the time from the timer processing unit 418 of the management entry 404 is returned.
Cell transmission by the out signal and cell transmission by the setting of the transmission request register 406 by the CPU core 128 are performed alternately. By repeatedly performing the above-described processing, the scheduling processing supporting the priority order is realized.

【0032】図8は,スケジューラ部400におけるセ
ル送信DMAC起動処理を示した処理フローである。セ
ル送信DMAC140にSMT indexを渡すこと
により起動した後(702),1セルの送信が完了する
までウェイトする(704)。セル送信DMAC140
からセル送信完了とSMTの送信セル数が「0」になっ
たことを示す信号を受け付けた場合,タイマ処理部へ停
止要求を発行する(706,708,710)。送信報
告レジスタ408にSMT indexをロードし(7
12),CPUコア128へ通知するため割り込み信号
を発行する(714)。セル送信DMAC140からセ
ル送信完了の信号だけを受け付けた場合,タイマ処理部
へ再起動要求を発行する(716,718,720)。
FIG. 8 is a processing flow showing the cell transmission DMAC activation processing in the scheduler section 400. After starting by passing the SMT index to the cell transmission DMAC 140 (702), it waits until the transmission of one cell is completed (704). Cell transmission DMAC 140
When a signal indicating that the cell transmission has been completed and the number of transmitted cells of the SMT has become "0" is received, a stop request is issued to the timer processing unit (706, 708, 710). The transmission report register 408 is loaded with the SMT index (7
12) An interrupt signal is issued to notify the CPU core 128 (714). When only the cell transmission completion signal is received from the cell transmission DMAC 140, a restart request is issued to the timer processing unit (716, 718, 720).

【0033】図9は,タイマ処理部418のセル送信完
了処理を示す処理フローである。スケジューラ部400
からの要求を受け付けると,タイマ処理部418は停止
状態から回復し,要求の種別により(802),再起動
要求であれば,管理エントリ404のrate val
ueレジスタ414の設定値をcountレジスタ41
6にロードし(804),停止要求であれば,管理エン
トリ404のctlレジスタ410を「inactiv
e」にする(806)。
FIG. 9 is a processing flow showing the cell transmission completion processing of the timer processing unit 418. Scheduler section 400
When the request is received, the timer processing unit 418 recovers from the stop state, and depending on the type of the request (802), if the request is a restart request, the rate val of the management entry 404
The value set in the ue register 414 is stored in the count register 41.
6 (804), and if the request is a stop request, the ctl register 410 of the management entry 404 is set to "inactive".
e "(806).

【0034】図10は,スケジューラ部400より起動
されるセル送信DMAC140の処理を示す処理フロー
である。スケジューラ部400より指定されたSMT
indexの指すSMT300のエントリ310内の送
信ポインタ308より48バイトを読みだし,読みだし
たデータの前にセルヘッダ304を付加してセルを作成
し,セル送受信I/F部146へDMA転送する(90
2)。エントリ310内の送信ポインタ308に48バ
イトを加算し(904),送信セル数306から「1」
を減算する(906)。送信セル数306の値をチェッ
クし(908),「0」の場合,スケジューラ部400
へ送信完了と送信セル数「0」を通知し(910),
「0」でなければ,スケジュータ部400へ送信完了の
みを通知する(912)。
FIG. 10 is a processing flow showing the processing of the cell transmission DMAC 140 activated by the scheduler section 400. SMT specified by scheduler unit 400
48 bytes are read from the transmission pointer 308 in the entry 310 of the SMT 300 indicated by the index, a cell header 304 is added before the read data to create a cell, and DMA transfer is performed to the cell transmission / reception I / F unit 146 by DMA (90
2). 48 bytes are added to the transmission pointer 308 in the entry 310 (904), and “1” is obtained from the transmission cell number 306.
Is subtracted (906). The value of the number of transmission cells 306 is checked (908).
To the transmission completion and the transmission cell number “0” (910),
If it is not "0", only the transmission completion is notified to the scheduler section 400 (912).

【0035】次に,セル送信管理部148の機能を利用
する場合のCPUコア128にて実行するファームェア
の処理フローを図11から図13を用いて述べる。
Next, a processing flow of firmware executed by the CPU core 128 when using the function of the cell transmission management unit 148 will be described with reference to FIGS.

【0036】図11は,VCに対するセル送信管理を管
理エントリ404を用いて行う場合のファームウェアの
処理フローである。バッファメモリ112上のSMT3
00内のVCに対応したエントリ310の送信ポインタ
308に送信バッファ314先頭アドレスを設定し(1
002),送信セル数306として,送信バッファ31
4内の総送信セル数を設定する(1004)。管理エン
トリ404のSMTindexレジスタ412にSMT
300のエントリ310の位置情報を設定する(100
6)。セル送信間隔を計算し(1008),管理エント
リのratevalueレジスタ414,countレ
ジスタ416に計算値を設定する(1010,101
2,1014)。その後,ctlレジスタ410に「A
ctive」を設定し,タイマ処理部418によりセル
送信管理を行う(1016)。
FIG. 11 is a processing flow of the firmware when the cell transmission management for the VC is performed using the management entry 404. SMT3 on the buffer memory 112
The transmission buffer 314 head address is set in the transmission pointer 308 of the entry 310 corresponding to the VC in 00 (1).
002), the transmission buffer 31
4 is set (1004). SMT is stored in the SMTindex register 412 of the management entry 404.
The position information of the entry 310 of 300 is set (100
6). The cell transmission interval is calculated (1008), and the calculated value is set in the rate register 414 and the count register 416 of the management entry (1010, 101).
2,1014). After that, “A” is stored in the ctl register 410.
"active" is set, and cell transmission management is performed by the timer processing unit 418 (1016).

【0037】図12は,セル送信管理をファームウェア
で行った場合の処理を示したフローである。ファームウ
ェアにて時計を規定し,予め送信レートより次のセル送
信時刻を計算しておく。次のセル送信時刻が現在時刻を
越えたVCに対して1セル送信処理を行う(110
2)。SMT300のVCに対応したエントリ310の
送信ポインタ308に送信するデータのある位置を設定
し(1104),送信セル数306に「1」を設定する
(1106)。送信要求レジスタ406にSMTind
exを設定しセル送信管理部148のスケジューラ部4
00へセル送信DMAC起動を要求する(1108)。
その後,送信するセルがあれば,送信レートより次のセ
ル送信時刻を計算する(1110)。
FIG. 12 is a flow chart showing processing when cell transmission management is performed by firmware. The clock is defined by the firmware, and the next cell transmission time is calculated in advance from the transmission rate. One cell transmission processing is performed for a VC whose next cell transmission time exceeds the current time (110).
2). The position of the data to be transmitted is set to the transmission pointer 308 of the entry 310 corresponding to the VC of the SMT 300 (1104), and "1" is set to the number of transmission cells 306 (1106). SMTind in the transmission request register 406
ex and the scheduler unit 4 of the cell transmission management unit 148
00 is requested to activate the cell transmission DMAC (1108).
Thereafter, if there is a cell to be transmitted, the next cell transmission time is calculated from the transmission rate (1110).

【0038】図13は,セル送信管理部148からの割
り込みを受け付けた場合のファームウェアの処理であ
る。管理エントリ404を使用してセル送信管理を行っ
ている場合,送信バッファ314を解放し空き状態とし
(1202,1204),さらに未送信の送信バッファ
があれば,管理エントリ404を利用してセル送信を行
う(1206)。管理エントリ404を利用していない
場合(図11に従い,送信要求レジスタからセル送信を
要求した場合),送信バッファ314内のデータが全て
送信されていれば,送信バッファを解放する(120
2,1208,1210)。次のセル送信に関しては,
図12のフローに従う。
FIG. 13 shows the firmware processing when an interrupt from the cell transmission management unit 148 is accepted. When the cell transmission management is performed using the management entry 404, the transmission buffer 314 is released and set to the empty state (1202, 1204), and if there is an untransmitted transmission buffer, the cell transmission is performed using the management entry 404. Is performed (1206). When the management entry 404 is not used (when cell transmission is requested from the transmission request register according to FIG. 11), if all data in the transmission buffer 314 has been transmitted, the transmission buffer is released (120).
2, 1208, 1210). For the next cell transmission,
According to the flow of FIG.

【0039】本実施例で示したように,上述した機能を
持つセル送信管理部148を実装したATMプロトコル
処理コントローラ110では,セル送信管理部148が
管理するVCに対するセル送信とCPUコアで実行され
るファームウェアからのセル送信とを併せてトラヒック
シェーピングできることから,高速な送信レートである
VCに関しては,セル送信部のセル送信管理機能を利用
し,低速な送信レートであるVCに関しては,ファーム
ウェアにてセル送信管理を行う事が可能である。さら
に,セル送信管理部148が持つ管理エントリ数を越え
たVC数の同時送信に対しても,ファームェアにてセル
送信管理が可能であるため,同時に送信可能なVC数は
ハードウェア制限を受けない。
As shown in this embodiment, in the ATM protocol processing controller 110 in which the cell transmission management unit 148 having the above-described functions is mounted, the cell transmission to the VC managed by the cell transmission management unit 148 is executed by the CPU core. Since cell shaping can be performed together with cell transmission from firmware, the cell transmission management function of the cell transmission unit is used for VCs with a high transmission rate, and the firmware is used for firmware for VCs with a low transmission rate. It is possible to perform cell transmission management. Further, even for simultaneous transmission of a number of VCs exceeding the number of management entries held by the cell transmission management unit 148, the cell transmission can be managed by the firmware, so that the number of simultaneously transmittable VCs is not limited by hardware. .

【0040】(実施例2)本発明の第2の実施例を図
5,図8,14を用いて説明する。
(Embodiment 2) A second embodiment of the present invention will be described with reference to FIGS.

【0041】図14は,セル送信管理部148における
セル送信間隔の管理方式を示す図である。実施例1で示
したセル送信管理部のタイマ処理部の管理方式は,図1
4のリスタート方式に当たる。この方式では,セル送信
DMAC140よりセル送信完了通知を受けたスケジュ
ーラ部400からの再起動要求を受け,タイマ処理部4
18がセル送信間隔を再度カウントを開始する。スケジ
ュラー部400へのTime out信号が同時に2つ
の管理エントリ404から発行された場合(図14にお
ける管理エントリ1,404Aと管理エントリ2,40
4B),スケジューラ部400のスケジューリング機能
にて,例えば図14に示すように管理エントリ2,40
4Bの要信要求を受けてセルを送信した後,管理エント
リ1,404Aのセルを送信する。このため,同時に2
つのTime outが生じた場合,実際にせルが送信
される間隔は,管理エントリ1,404Aでは登録した
セル送信間隔よりΔtだけ遅延することになる。Δtの
大きさは,回線の伝送速度が155Mbpsの場合,約
2.7μsecである。
FIG. 14 is a diagram showing a method of managing the cell transmission interval in the cell transmission manager 148. The management method of the timer processing unit of the cell transmission management unit shown in the first embodiment is the same as that of FIG.
This corresponds to the restart method of No. 4. In this system, the timer processing unit 4 receives a restart request from the scheduler unit 400 that has received the cell transmission completion notification from the cell transmission DMAC 140.
18 starts counting the cell transmission interval again. When a Time out signal to the scheduler unit 400 is issued from two management entries 404 simultaneously (the management entries 1 and 404A and the management entries 2 and 40 in FIG. 14).
4B), the scheduling function of the scheduler unit 400 uses the management entries 2 and 40 as shown in FIG.
After receiving the request for request of 4B and transmitting the cell, the cell of the management entry 1404A is transmitted. For this reason, two
When two Time outs occur, the interval at which the actual transmission is performed is delayed by Δt from the cell transmission interval registered in the management entry 1404A. The magnitude of Δt is about 2.7 μsec when the transmission speed of the line is 155 Mbps.

【0042】遅延が生じた後,そこから新たにセル送信
間隔のカウントを行うリスタート方式は,UNIで規定
されているVirtual Scheduling Algorithmに即してい
るが,一方,音声,動画のようなコンティニュアスなデ
ータ送信では,図14のフリーラン方式に示すように,
ある程度の送信間隔の変動は許可されるが,転送開始時
から常に一定の間隔でのセルの周期転送が要求される。
After the delay has occurred, the restart method for counting the cell transmission interval from that time is in accordance with the Virtual Scheduling Algorithm specified by the UNI. In the new data transmission, as shown in the free-run method in FIG.
Although a certain amount of change in the transmission interval is permitted, periodic transfer of cells at a constant interval is always required from the start of transfer.

【0043】図14に示す一定のセル送信間隔を実現す
るフリーラン方式を,図5と図8のタイマ処理部418
とスケジューラ部400の処理フローにより示す。
The free-run system for realizing a constant cell transmission interval shown in FIG. 14 is implemented by the timer processing unit 418 shown in FIGS.
And the processing flow of the scheduler unit 400.

【0044】図5は,タイマ処理部414のカウント処
理を示す処理フローである。Clock402からの信
号を受けて,タイマ処理部418は実施例1で述べた処
理を開始する(502,504,506,508)。ス
ケジューラ部400へTime out信号を発行した
後(510),管理エントリ404を使用しているVC
がフリーラン方式を要求している場合,タイマ処理部を
停止させずに,countレジスタ416にrate
valueレジスタ414の設定値をロードし,続けて
カウント処理を実行する(512,516)。
FIG. 5 is a process flow showing the counting process of the timer processing unit 414. Upon receiving the signal from the Clock 402, the timer processing unit 418 starts the processing described in the first embodiment (502, 504, 506, 508). After issuing a Time out signal to the scheduler unit 400 (510), the VC using the management entry 404
Requesting the free-run system, the rate register is stored in the count register 416 without stopping the timer processing unit.
The set value of the value register 414 is loaded, and a count process is subsequently performed (512, 516).

【0045】図8は,スケジューラ部400におけるセ
ル送信DMAC起動処理を示した処理フローである。セ
ル送信DMAC140からセル送信完了の信号を受け付
けた場合(SMT300の送信セル数は「0」でな
い),フリーラン方式の場合,既にタイマ処理部は次の
セル送信時間のカウントを開始しているので,タイマ処
理部に対して再起動要求を発行する必要はない。
FIG. 8 is a processing flow showing the cell transmission DMAC activation processing in the scheduler section 400. When the cell transmission completion signal is received from the cell transmission DMAC 140 (the number of transmission cells of the SMT 300 is not “0”), in the case of the free-run system, the timer processing unit has already started counting the next cell transmission time. It is not necessary to issue a restart request to the timer processing unit.

【0046】本実施例に示すように,セル送信管理部に
おいて,フリーラン方式によるセル送信間隔の時間管理
を行い,音声,動画といったデータ転送に対して周期転
送を実現する。
As shown in the present embodiment, the cell transmission management unit manages the time of the cell transmission interval by the free-run system, and realizes the periodic transfer for data transfer such as voice and video.

【0047】(実施例3)本発明の第3の実施例を図1
5から図18を用いて説明する。
(Embodiment 3) FIG. 1 shows a third embodiment of the present invention.
This will be described with reference to FIGS.

【0048】図15は本発明のセル送信管理部148の
構成を示す図である。セル送信管理部148は,複数の
管理エントリ404,スケジューラ部400,送信要求
レジスタ406,受信報告レジスタ408,Clock
402,複数セル毎に新たなセル送信間隔を管理エント
リのrate valueレジスタ414にロードする
rate設定処理部1402から構成する。
FIG. 15 is a diagram showing the configuration of the cell transmission manager 148 of the present invention. The cell transmission management unit 148 includes a plurality of management entries 404, a scheduler unit 400, a transmission request register 406, a reception report register 408, and a Clock.
402, a rate setting processing unit 1402 for loading a new cell transmission interval for each of a plurality of cells into a rate value register 414 of the management entry.

【0049】図16にバッファメモリ112の構成を示
す。バッファメモリ112は,送信管理テーブル30
0,受信管理テーブル312,複数の送信バッファ31
4,複数の受信バッファ316,複数セル送信毎に変更
するセル送信間隔を複数設定可能なレートエントリ15
08(1508A,1508B)から構成する。レート
エントリ1508は,VC単位に準備するものであり,
VCに対応したSMT300のエントリ310によりポ
インタ情報を管理される。SMT300のエントリ31
0は,CRC結果302,セルヘッダ304,送信セル
数306,送信ポインタ308,何セル送信毎にセル送
信間隔を変更するかを設定する連続送信数1502,セ
ル送信DMAC140のセル送信数のカウンタとして利
用される連続数カウンタ1504,レートエントリ15
08のポインタ情報を管理するレートエントリポインタ
1506から構成する。
FIG. 16 shows the configuration of the buffer memory 112. The buffer memory 112 stores the transmission management table 30
0, reception management table 312, multiple transmission buffers 31
4, a plurality of reception buffers 316, a rate entry 15 capable of setting a plurality of cell transmission intervals to be changed for each transmission of a plurality of cells
08 (1508A, 1508B). The rate entry 1508 is prepared for each VC.
The pointer information is managed by the entry 310 of the SMT 300 corresponding to the VC. Entry 31 of SMT300
0 is used as a CRC result 302, a cell header 304, a transmission cell number 306, a transmission pointer 308, a continuous transmission number 150 for setting how many cell transmission intervals a cell transmission interval is changed, and a cell transmission counter of the cell transmission DMAC 140. Number counter 1504, rate entry 15
It is composed of a rate entry pointer 1506 that manages the 08 pointer information.

【0050】管理エントリ404を用いてセル送信管理
を行う場合,CPUコア128にて実行するファームウ
ェアにて,SMT300の送信ポインタ308と送信セ
ル数306,管理エントリのレジスタを設定する。加え
て,複数セル送信毎にセル送信間隔を変更する場合,レ
ートエントリ1508にセル送信間隔を複数設定し,S
MTのレートエントリポインタ1506にレートエント
リの先頭アドレスを,連続送信数1504に同一のセル
送信間隔で送信するセル数を設定する。例えば1セル送
信毎にセル送信間隔を変更する場合,SMT300の連
続送信数1502には「1」を設定する。
When performing cell transmission management using the management entry 404, the firmware executed by the CPU core 128 sets the transmission pointer 308 of the SMT 300, the number of transmitted cells 306, and the register of the management entry. In addition, when changing the cell transmission interval for each transmission of a plurality of cells, a plurality of cell transmission intervals are set in the rate entry 1508, and S
The head address of the rate entry is set in the MT rate entry pointer 1506, and the number of cells to be transmitted at the same cell transmission interval is set in the continuous transmission number 1504. For example, when the cell transmission interval is changed for each cell transmission, “1” is set to the continuous transmission number 1502 of the SMT 300.

【0051】図17は,セル送信管理部148のrat
e設定処理部1402の処理を示す処理フローである。
スケジューラ部400では,送信DMAC起動処理内で
rate設定処理部1402を起動しSMT inde
xを渡す。本処理を図8の処理A722の部分にて行
う。これを受けてrate設定処理部1402は,バッ
ファメモリ112上のレートエントリ1508内のレー
ト値の転送するため,SMT indexを渡すことに
より,セル送信DMAC140を起動する(160
2)。rate設定処理部1402は,レート値の転送
を受けて,SMT indexに対応した管理エントリ
300のrate valueレジスタ414にレート
値をロードする(1604,1606)。
FIG. 17 is a diagram illustrating the rat transmission of the cell transmission management unit 148.
5 is a processing flow showing processing of an e setting processing unit 1402.
The scheduler section 400 activates the rate setting processing section 1402 in the transmission DMAC activation processing, and executes the SMT index
Pass x. This processing is performed in the part of processing A722 in FIG. In response to this, the rate setting processing unit 1402 activates the cell transmission DMAC 140 by passing the SMT index in order to transfer the rate value in the rate entry 1508 on the buffer memory 112 (160).
2). Upon receiving the transfer of the rate value, the rate setting processing unit 1402 loads the rate value into the rate value register 414 of the management entry 300 corresponding to the SMT index (1604, 1606).

【0052】図18は,rate設定処理部1402よ
り起動されるセル送信DMAC140によるレート値転
送処理を示す処理フローである。rate設定処理部1
402から指定されたSMT indexの指すSMT
300のエントリ310内のレートエントリポインタ1
506よりレート値を読みだし,rate設定処理部1
402へDMA転送する(1702)。エントリ310
内の連続数カウンタ1504が「0」であるかチェック
し(1704),「0」の場合のみ連続送信数1502
の設定値を連続数カウンタ1504にロードする(17
06)。連続数カウンタ1504から「1」を減算し
(1708),連続セル数カウンタ1504が「0」に
なった場合に限り,レートエントリポインタ1506を
次のレート値を指すように更新する(1710,171
2)。
FIG. 18 is a processing flow showing the rate value transfer processing by the cell transmission DMAC 140 started by the rate setting processing unit 1402. rate setting processing unit 1
SMT indicated by SMT index specified from 402
Rate entry pointer 1 in 300 entries 310
The rate value is read from 506 and the rate setting processing unit 1
DMA transfer is performed to 402 (1702). Entry 310
It is checked whether or not the continuous number counter 1504 in “1” is “0” (1704).
Is loaded into the continuous number counter 1504 (17).
06). "1" is subtracted from the continuous number counter 1504 (1708), and only when the continuous cell number counter 1504 becomes "0", the rate entry pointer 1506 is updated to point to the next rate value (1710, 171).
2).

【0053】本実施例に示すように,セル送信管理部で
は複数セル送信毎にセル送信間隔を変更することが可能
であるため,1CPCS PDU転送中でも送信レート
を変更でき,柔軟なトラヒック制御を実現する。
As shown in this embodiment, since the cell transmission manager can change the cell transmission interval for each of a plurality of cell transmissions, the transmission rate can be changed even during 1 CPCS PDU transfer, and flexible traffic control is realized. I do.

【0054】(実施例4)本発明の第4の実施例を図1
9から図21を用いて説明する。
(Embodiment 4) FIG. 1 shows a fourth embodiment of the present invention.
This will be described with reference to FIGS. 9 to 21.

【0055】図19は,CPUコア128にて実行する
ファームウェアにおいて複数VCに対する送信トラヒッ
ク制御を行うため,RAM126上に作成する送信トラ
ヒック管理テーブル1802の構成例を示す。送信トラ
ヒック管理テーブル1802は,VC毎に,CBR,V
BR等のサービスクラスを示すエリア1804,現在の
送信レートを示すエリア1806,連続送信セル数のカ
ウンタ1808,PCR(peak cell rate),SCR
(Sustainable cell rate),ACR(Availabel ce
ll rate),MCR(Minimum cell rate),バース
ト等のトラヒック管理パラメータ群1810から構成す
る。
FIG. 19 shows an example of the configuration of a transmission traffic management table 1802 created on the RAM 126 in order to control the transmission traffic for a plurality of VCs in the firmware executed by the CPU core 128. The transmission traffic management table 1802 stores CBR, V for each VC.
Area 1804 indicating a service class such as BR, area 1806 indicating the current transmission rate, counter 1808 for the number of continuous transmission cells, PCR (peak cell rate), SCR
(Sustainable cell rate), ACR (Availabel ce
ll rate), MCR (Minimum cell rate), burst and other traffic management parameter groups 1810.

【0056】例えば,サービスクラスとしてCBRを選
択した場合,トラヒック管理パラメータ1810として
は,例えばPCRが規定され,現在レート1806とし
てはPCRを設定する。VBRでは,トラヒック管理パ
ラメータ1810として,例えばPCR,SCR,バー
ストが規定される。バーストを監視するため,連続送信
セル数1808を用いる。現在レート1806としては
PCRかSCRの何れかを設定する。ABRでは,トラ
ヒック管理パラメータ1810は,例えばMCR,PC
R,ACR等が規定される。ACRはABRの規定に従
い,MCRとPCRの間で輻輳状態を反映して規定し,
このACRを現在レート1806として設定する。
For example, when CBR is selected as the service class, for example, PCR is defined as the traffic management parameter 1810, and PCR is set as the current rate 1806. In VBR, for example, PCR, SCR, and burst are defined as the traffic management parameters 1810. In order to monitor the burst, the continuous transmission cell number 1808 is used. As the current rate 1806, either PCR or SCR is set. In ABR, traffic management parameters 1810 include, for example, MCR, PC
R, ACR, etc. are defined. ACR is defined in accordance with ABR, reflecting the congestion state between MCR and PCR,
This ACR is set as the current rate 1806.

【0057】CPUコア128で実行するファームウェ
アで行うトラヒック制御を図20,図21を参照して説
明する。
The traffic control performed by the firmware executed by the CPU core 128 will be described with reference to FIGS.

【0058】図20は,サービスクラスに対応したセル
送信間隔規定処理の処理フローを示す。CPCS−PD
Uの送信要求を受け付けると,以下のようにVCのサー
ビスクラスに対応した送信レートを選択し,選択した送
信レートからセル送信管理部148の管理エントリ40
4内のrate valueレジスタ414,coun
tレジスタ416に設定するセル送信間隔を算出する
(1920)。VCのサービスクラスがCBRの場合
(1902),送信トラヒック管理テーブル1802の
現在レート1806にPCRを設定する(1904)。
VBRの場合(1906),連続送信セル数1808が
バースト数より大きければ,現在レート1806にSC
Rを(1908,1912),そうでなければPCRを
設定する(1910)。ABRの場合,まずACR削減
の有無をチェックし(1914),必要ならばACRを
削減する(1916)。現在レート1806にACRを
設定する(1918)。
FIG. 20 shows a processing flow of the cell transmission interval defining processing corresponding to the service class. CPCS-PD
When the transmission request of U is received, a transmission rate corresponding to the service class of the VC is selected as follows, and the management entry 40 of the cell transmission management unit 148 is selected from the selected transmission rate.
Rate value register 414 in 4
The cell transmission interval set in the t register 416 is calculated (1920). When the service class of the VC is CBR (1902), the PCR is set to the current rate 1806 of the transmission traffic management table 1802 (1904).
In the case of VBR (1906), if the number of continuous transmission cells 1808 is larger than the number of bursts, the current rate 1806 is set to SC.
R is set to (1908, 1912), otherwise, PCR is set (1910). In the case of ABR, first, the presence or absence of ACR reduction is checked (1914), and if necessary, the ACR is reduced (1916). The ACR is set to the current rate 1806 (1918).

【0059】図21は,ATMプロトコル処理コントロ
ーラ110が送信要求を受け付ける毎に行う全体レート
監視処理の処理フローである。送信要求を受け付けたV
C上で現在セルの送信が行われているかを調べるため,
送信トラヒック管理テーブル1802の現在レート19
06が「0」であるかどうかをチェックする(200
2)。送信が行われている場合,送信トラヒック管理テ
ーブル1802の現在レート1806には現在の送信レ
ートが登録されている。送信が行われていない場合,図
19に従い,トラヒック管理テーブル1802の現在レ
ート1806に送信レートを設定する(2004)。ト
ラヒック管理テーブル1802の現在レート1806の
総和が伝送帯域以下であることをチェックする(200
6)。伝送路の伝送速度が155Mbpsであれば,伝
送帯域は約365kセル/秒である。伝送帯域を越えて
いる場合,送信中である全てのVCに対して,現在レー
トを再設定し送信レートの保証を行う。サービスクラス
としてCBRを選択した場合,現在レートは変更しない
(2008)。VBRの場合,現在レートをSCRとす
る(2010,2012)。ABRの場合,現在レート
をMCRとし,トラヒック管理テーブル1802のトラ
ヒック管理パラメータ1810のACRにMCRを設定
する(2014)。
FIG. 21 is a flowchart of the overall rate monitoring process performed each time the ATM protocol processing controller 110 receives a transmission request. V that received the transmission request
To check if cell transmission is currently being performed on C,
Current rate 19 in transmission traffic management table 1802
Check whether 06 is "0" (200
2). When transmission is being performed, the current transmission rate is registered in the current rate 1806 of the transmission traffic management table 1802. If the transmission has not been performed, the transmission rate is set to the current rate 1806 of the traffic management table 1802 according to FIG. 19 (2004). It is checked that the sum of the current rates 1806 in the traffic management table 1802 is equal to or less than the transmission bandwidth (200).
6). If the transmission speed of the transmission path is 155 Mbps, the transmission band is about 365 kcell / sec. If the transmission band is exceeded, the current rate is reset for all VCs currently transmitting to guarantee the transmission rate. When CBR is selected as the service class, the current rate is not changed (2008). In the case of VBR, the current rate is set to SCR (2010, 2012). In the case of ABR, the current rate is set to MCR, and the MCR is set in the ACR of the traffic management parameter 1810 of the traffic management table 1802 (2014).

【0060】本実施例に示すように,CPUコアで実行
するファームウェアでは,セル送信管理部148を用い
て,種々のサービスクラスに対応した処理を行う事が可
能である。加えて,帯域制御を行う事により,VC対応
に規定した送信レートを保証することが可能である。
As shown in the present embodiment, the firmware executed by the CPU core can perform processing corresponding to various service classes by using the cell transmission management unit 148. In addition, by performing band control, it is possible to guarantee a transmission rate specified for VC.

【0061】[0061]

【発明の効果】本発明によれば,ATMーLANに接続
する端末に実装し,AALレイヤのSAR機能,ATM
レイヤのセル多重/分離機能を持つATMプロトコル処
理プロセッサに於て,セル送受信機能に加えて,VC対
応にセル送信間隔を管理する手段と,セル送信要求をス
ケジューリングする手段と,セル送信要求を受けてセル
を送信する手段を持つハードウェア回路であるセル送信
管理部と,CPUコアを具備することにより,VC対応
に申告されるサービスクラスと送信レートに対応したト
ラヒック制御を行うことが出来る。
According to the present invention, the SAR function of the AAL layer, which is implemented in a terminal connected to the ATM-LAN,
In an ATM protocol processor having a layer cell multiplexing / demultiplexing function, in addition to a cell transmission / reception function, a means for managing a cell transmission interval for VC, a means for scheduling a cell transmission request, and a means for receiving a cell transmission request. By providing a cell transmission management unit, which is a hardware circuit having a means for transmitting cells by means of a cell, and a CPU core, it is possible to perform traffic control corresponding to a service class declared for VC and a transmission rate.

【0062】さらに,VC毎に規定された送信レートに
即したトラヒックシェーピング機能を,複数VCに対し
てセル送信管理部とCPUコアで実行するファームウェ
アの双方にて実現することが出来る。
Further, the traffic shaping function according to the transmission rate specified for each VC can be realized by both the cell transmission management unit and the firmware executed by the CPU core for a plurality of VCs.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明を適用したATMプロトコル処理コント
ローラを実装したATMカードの構成例を示す図であ
る。
FIG. 1 is a diagram showing a configuration example of an ATM card on which an ATM protocol processing controller to which the present invention is applied is mounted.

【図2】ATMにおける通信プロトコル構成例と通信プ
ロトコルで規定されている処理動作例を示す図である。
FIG. 2 is a diagram illustrating an example of a communication protocol configuration in an ATM and an example of a processing operation defined by the communication protocol.

【図3】バッファメモリの一構成例を示す図である。FIG. 3 is a diagram illustrating a configuration example of a buffer memory;

【図4】本発明のセル送信管理部の一構成例を示す図で
ある。
FIG. 4 is a diagram illustrating a configuration example of a cell transmission management unit according to the present invention.

【図5】タイマ処理部におけるカウント処理を示すフロ
ーチャートである。
FIG. 5 is a flowchart illustrating a count process in a timer processing unit.

【図6】スケジューラ部におけるランダムなスケジュー
リング処理を示すフローチャートである。
FIG. 6 is a flowchart showing a random scheduling process in the scheduler unit.

【図7】スケジューラ部における優先順位付きスケジュ
ーリング処理を示すフローチャートである。
FIG. 7 is a flowchart illustrating scheduling processing with priority in the scheduler unit.

【図8】スケジューラ部におけるセル送信DMAC起動
処理を示すフローチャートである。
FIG. 8 is a flowchart illustrating a cell transmission DMAC activation process in the scheduler unit.

【図9】タイマ処理部におけるセル送信完了処理を示す
フローチャートである。
FIG. 9 is a flowchart showing a cell transmission completion process in a timer processing unit.

【図10】セル送信DMACにおけるセル送信処理を示
すフローチャートである。
FIG. 10 is a flowchart showing a cell transmission process in a cell transmission DMAC.

【図11】CPUコアで実行するファームウェアにおけ
る管理エントリ使用時の処理を示すフローチャートであ
る。
FIG. 11 is a flowchart illustrating processing when a management entry is used in firmware executed by a CPU core.

【図12】CPUコアで実行するファームウェアにおけ
るセル送信管理処理を示すフローチャートである。
FIG. 12 is a flowchart illustrating a cell transmission management process in firmware executed by a CPU core.

【図13】CPUコアで実行するファームウェアにおけ
る送信完了処理を示すフローチャートである。
FIG. 13 is a flowchart illustrating transmission completion processing in firmware executed by the CPU core.

【図14】セル送信管理部におけるセル送信時間の管理
方式を示す図である。
FIG. 14 is a diagram illustrating a method of managing a cell transmission time in a cell transmission management unit.

【図15】本発明における,複数セル送信毎に送信レー
トを変更する場合のセル送信管理部の一構成例を示す図
である。
FIG. 15 is a diagram illustrating a configuration example of a cell transmission management unit according to the present invention when a transmission rate is changed for each transmission of a plurality of cells.

【図16】複数セル送信毎に送信レートを変更する場合
のバッファメモリの一構成例を示す図である。
FIG. 16 is a diagram illustrating a configuration example of a buffer memory when a transmission rate is changed for each transmission of a plurality of cells.

【図17】rate設定処理部の処理を示すフローチャ
ートである。
FIG. 17 is a flowchart illustrating a process of a rate setting processing unit.

【図18】セル送信DMACにおけるレート値転送処理
を示すフローチャートである。
FIG. 18 is a flowchart showing a rate value transfer process in a cell transmission DMAC.

【図19】送信トラヒック管理テーブルの構成例を示す
図である。
FIG. 19 is a diagram illustrating a configuration example of a transmission traffic management table.

【図20】CPUコアで実行するファームウェアにおけ
るサービスクラスに対応したセル送信間隔規定処理を示
すフローフャートである。
FIG. 20 is a flowchart showing a cell transmission interval defining process corresponding to a service class in firmware executed by the CPU core.

【図21】CPUコアで実行するファームウェアにおけ
る全体レート監視処理を示すフローチャートである。
FIG. 21 is a flowchart showing an overall rate monitoring process in firmware executed by a CPU core.

【符号の説明】[Explanation of symbols]

108…ATMカード,110…ATMプロトコル処理
コントローラ,112…バッファメモリ,114…PH
Yプロトコル処理コントローラ,128…CPUコア,
130…CPU I/F部,136…ホストDMAC,
138…アービタ,140…セル送信DMAC,142
…セル受信DM,146…セル送受信I/F部,148
…セル送信管理部,300…送信管理テーブル,400
…スケジューラ部,402…Clock,404…管理
エントリ,406…送信要求レジスタ,408…送信報
告レジスタ,410…ctlレジスタ,412…SMT
indexレジスタ,414…rate value
レジスタ,416…countレジスタ,418…タイ
マ処理部,1402…rate設定処理部,1508…
レートエントリ,1802…送信トラヒック管理テーブ
108 ATM card 110 ATM protocol processing controller 112 Buffer memory 114 PH
Y protocol processing controller, 128 CPU core,
130: CPU I / F, 136: Host DMAC,
138: Arbiter, 140: Cell transmission DMAC, 142
... Cell reception DM, 146 ... Cell transmission / reception I / F section, 148
... Cell transmission management unit, 300 ... Transmission management table, 400
... Scheduler unit, 402 Clock, 404 management entry, 406 transmission request register, 408 transmission report register, 410 ctl register, 412 SMT
index register, 414 ... rate value
Register, 416 ... count register, 418 ... timer processing unit, 1402 ... rate setting processing unit, 1508 ...
Rate entry, 1802 ... Transmission traffic management table

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 清水洋他「ATM−LAN」(1995. 7.5),株式会社ソフトリサーチセン ター,P.115−116及びP.200−203 (58)調査した分野(Int.Cl.7,DB名) H04L 12/28 ────────────────────────────────────────────────── ─── Continuation of front page (56) References Hiroshi Shimizu et al. “ATM-LAN” (7.5.1995), Soft Research Center, P.S. 115-116 and P.E. 200-203 (58) Field surveyed (Int. Cl. 7 , DB name) H04L 12/28

Claims (3)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】ホスト計算機インターフェース回路と、送
受信データを保持するバッファメモリとのインタフェー
ス回路と、ATM−LANに接続するためのPHYプロ
トコル処理コントローラとのインタフェース回路と、計
算機内の主メモリと前記バッファメモリ間のデータ転送
を行う第一のデータ転送装置と、前記バッファメモリ内
のパケットを53バイトのセルとして送信を行う第2のデ
ータ転送装置と、受信したセルをバッファメモリ上にパ
ケットとして構成する第3のデータ転送装置と、CPU
コアと、前記CPUコアが実行するファームウェアを格
納する第1のメモリと、前記CPUコアが使用するデー
タを格納する第2のメモリとを有するATM処理コント
ローラにおいて、複数論理コネクションに対し、論理コ
ネクション単位にセル送信間隔を管理する機能と、前記
CPUコアが実行するファームウェアによりセル送信間
隔を設定するインタフェースと、セル送信時刻到達時に
セル送信を要求する機能と、前記ファームウェアからの
セル送信要求を記憶する手段を備え、セル送信間隔を管
理している複数の論理コネクションからの少なくとも一
つ以上のセル送信要求とファームウェアからのセル送信
要求のスケジューリングを行い、選択したセル送信要求
に応じたセル送信を前記第2のデータ転送装置に要求す
機能を備えたハードウェア回路を備えることを特徴と
するATMプロトコル処理コントローラ。
An interface circuit for a host computer interface circuit, a buffer memory for holding transmission / reception data, an interface circuit for a PHY protocol processing controller for connection to an ATM-LAN, a main memory in the computer, and the buffer A first data transfer device for transferring data between memories, a second data transfer device for transmitting a packet in the buffer memory as a 53-byte cell, and a received cell as a packet on the buffer memory Third data transfer device and CPU
A core, a first memory for storing firmware that the CPU core executes, data which the CPU core used
In ATM processing controller and a second memory for storing data, the plurality logical connections, the function of managing the cell transmission interval logical connection unit, wherein
During cell transmission by firmware executed by CPU core
An interface for setting an interval, a function for requesting cell transmission when the cell transmission time arrives , and
Means for storing a cell transmission request, and managing a cell transmission interval;
At least one of the logical connections
Performs scheduling of one or more cell transmission requests and cell transmission requests from firmware , and selects the selected cell transmission request.
Requesting the second data transfer device for cell transmission according to
ATM protocol processing controller, characterized in that it comprises a hardware circuit having a that function.
【請求項2】請求項1のATMプロトコル処理コントロ
ーラと、前記ATMプロトコル処理コントローラとのイ
ンタフェース機能を持つPHYプロトコル処理コントロ
ーラと、トランスと、ケーブルコネクタとを有するAT
M通信アダプタ。
2. An ATM protocol processing controller according to claim 1.
And the ATM protocol processing controller.
PHY protocol processing controller with interface function
AT having a controller, a transformer, and a cable connector
M communication adapter.
【請求項3】PCMCIAとして物理インターフェース
を実現するホスト計算機インターフェース回路を具備し
た請求項1記載のATMプロトコル処理コントローラ
と、前記ATMプロトコル処理コントローラとのインタ
フェース機能を持つPHYプロトコル処理コントローラ
と、トランスと、ケーブルコネクタとを有するPCMC
IA準拠のATM通信カード。
3. Physical interface as PCMCIA
Equipped with a host computer interface circuit for realizing
2. The ATM protocol processing controller according to claim 1,
And the ATM protocol processing controller.
PHY protocol processing controller with interface function
, PCMC having transformer, cable connector
IA-compliant ATM communication card.
JP7342199A 1995-12-28 1995-12-28 ATM protocol processing controller Expired - Lifetime JP3018975B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP7342199A JP3018975B2 (en) 1995-12-28 1995-12-28 ATM protocol processing controller
US08/775,022 US5974466A (en) 1995-12-28 1996-12-27 ATM controller and ATM communication control device
US09/350,892 US6714989B1 (en) 1995-12-28 1999-07-12 ATM controller and ATM communication control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7342199A JP3018975B2 (en) 1995-12-28 1995-12-28 ATM protocol processing controller

Publications (2)

Publication Number Publication Date
JPH09186692A JPH09186692A (en) 1997-07-15
JP3018975B2 true JP3018975B2 (en) 2000-03-13

Family

ID=18351891

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7342199A Expired - Lifetime JP3018975B2 (en) 1995-12-28 1995-12-28 ATM protocol processing controller

Country Status (1)

Country Link
JP (1) JP3018975B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6829660B2 (en) * 2001-12-12 2004-12-07 Emulex Design & Manufacturing Corporation Supercharge message exchanger
JP5821608B2 (en) * 2011-12-20 2015-11-24 富士通株式会社 Packet shaping device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
清水洋他「ATM−LAN」(1995.7.5),株式会社ソフトリサーチセンター,P.115−116及びP.200−203

Also Published As

Publication number Publication date
JPH09186692A (en) 1997-07-15

Similar Documents

Publication Publication Date Title
JP3155472B2 (en) Network interface controller
JP3359499B2 (en) Outgoing traffic control device
CA2214838C (en) Broadband switching system
CA2184830C (en) Broadband switching network
US5974466A (en) ATM controller and ATM communication control device
US5784358A (en) Broadband switching network with automatic bandwidth allocation in response to data cell detection
AU707294B2 (en) ATM throttling
US5633870A (en) Method and apparatus for controlling data flow through an ATM interface
CA2214897C (en) Broadband switching network
AU719514B2 (en) Broadband switching system
US6768717B1 (en) Apparatus and method for traffic shaping in a network switch
JP2001156785A (en) Cell abort avoidance system and method in buffer
CA2233491A1 (en) Atm adaption layer traffic scheduling
JPH10243000A (en) Switching flow control
WO2006036124A1 (en) Improved handling of atm data
US5680401A (en) Method and apparatus for asynchronously segmenting packets of multiple channels into ATM cells
JP2000324130A (en) Atm cell forming circuit and method
JP3018975B2 (en) ATM protocol processing controller
JP2737726B2 (en) Buffer control device
JP2970598B2 (en) ATM controller that automatically selects the optimal size reception memory
JP3094995B2 (en) Communication control device and communication control method
JP3177188B2 (en) Packet transmitting / receiving method and apparatus
KR100264299B1 (en) A scheduling method and apparatus for supporting atm connections having a guaranteed minimum bandwidth
WO2000074321A9 (en) Apparatus and method for traffic shaping in a network switch
JP2001339394A (en) Cell multiplex shaping method and communication unit

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20060209