JP2002271385A - Round-robin control, method, band control method and packet controller - Google Patents

Round-robin control, method, band control method and packet controller

Info

Publication number
JP2002271385A
JP2002271385A JP2001068590A JP2001068590A JP2002271385A JP 2002271385 A JP2002271385 A JP 2002271385A JP 2001068590 A JP2001068590 A JP 2001068590A JP 2001068590 A JP2001068590 A JP 2001068590A JP 2002271385 A JP2002271385 A JP 2002271385A
Authority
JP
Japan
Prior art keywords
control
priority
bit
buffer
packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2001068590A
Other languages
Japanese (ja)
Inventor
Takahiro Aoyama
恭弘 青山
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2001068590A priority Critical patent/JP2002271385A/en
Publication of JP2002271385A publication Critical patent/JP2002271385A/en
Pending legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

PROBLEM TO BE SOLVED: To realize the round-robin retrieval at a high speed in a simple constitution which handles a plurality of priority classes fixedly or dynamically in the packet communication. SOLUTION: On the occasion of selecting either one (FIFO#k) of a plurality of buffers 100 FIFO#0 to #n-1 having stored communication packets 102 in the route-robin system to transmit packets stored in the (FIFO#k), the k-th buffer FIFO#k in the round-robin retrieving order about the FIFO#0 to #n-1 is enabled to send packets, a first binary variable WDR (n-1:0) with a k-th bit, as counted from the least significant bit, set to 0 and others set to 1 is generated, and the least significant bit among the bits of 0 in the first binary variable WDR (n-1:0) is specified to specify an FIFO#k to be selected from this bit position.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、パケット通信シス
テムの多重化や帯域制御に適用されるラウンドロビン制
御方法及び帯域制御方法並びにパケット制御装置に関す
る。
The present invention relates to a round robin control method and a band control method applied to multiplexing and band control of a packet communication system, and a packet control device.

【0002】[0002]

【従来の技術】近年、インターネット収容トラフィック
の増大や収容サービスの多様化に伴い、従来のベストエ
フォート型のパケット転送ではなく、QoS(Quality
of Service)を保証したパケット転送の実現が求められ
ている。一般に、IPパケットのQoS制御技術として
注目されているIntservやDiffservは、内部に相対的な
品質保証クラスを設定し、保証すべき通信品質を差別化
する技術である。
2. Description of the Related Art In recent years, with the increase in traffic accommodated on the Internet and the diversification of accommodation services, QoS (Quality (QoS))
There is a demand for realizing packet transfer with guaranteed service of service. Generally, Intserv and Diffserv, which are attracting attention as QoS control techniques for IP packets, are techniques for setting a relative quality assurance class internally to differentiate communication quality to be guaranteed.

【0003】これに準ずる通信制御装置では、PQ(Pr
iority Queuing)と呼ばれるアルゴリズムが用いられ、
通信パケットを上記通信品質のクラス毎に区分してバッ
ファに格納し、優先度の高い品質クラスから順次パケッ
トが送出される。これに対して、サービス種別を基準に
バッファを区別して、音声や映像など実時間性が要求さ
れる通信パケットを、電子メールやファイル転送など伝
送遅延が許容されるパケットよりも優先して転送するC
BQ(Class-Based Queuing)が用いられる場合もあ
る。いずれも、複数のバッファから1つを選択してパケ
ットを送出する方法を実現する上で、基本的には全ての
バッファに公平にパケット送出権を与えるラウンドロビ
ン制御を行いながら、バッファ毎に固定的な優先度を設
定してラウンドロビン検索順序に一定規則を持たせる方
法である。
In a communication control device according to this, PQ (Pr
iority Queuing),
The communication packets are stored in the buffer by classifying them into the classes of the communication quality, and the packets are sequentially transmitted from the quality class having the highest priority. In contrast, buffers are distinguished based on service types, and communication packets requiring real-time characteristics, such as audio and video, are transferred with priority over packets that allow transmission delay, such as e-mail and file transfer. C
BQ (Class-Based Queuing) may be used in some cases. In any case, in order to realize a method of transmitting a packet by selecting one from a plurality of buffers, basically, a round robin control for imparting a packet transmission right fairly to all the buffers is performed, and each buffer is fixed. This is a method of setting a specific priority and giving a certain rule to the round robin search order.

【0004】一方、固定長のパケットを用いるATM通
信では、全てのコネクションに公平に帯域を割り当てる
手段として優先制御のない純粋なラウンドロビン制御が
用いられる場合もあり、またコネクション毎に最低帯域
を保証する手段としては、重み付けラウンドロビン(We
ighted Round Robin)方式が知られている。この重み付
けラウンドロビン方式は、コネクション毎に設定された
ウェイト比に従って最低帯域保証と余剰帯域の割当てを
実現することができる。
On the other hand, in ATM communication using fixed-length packets, pure round-robin control without priority control may be used as a means for fairly allocating a bandwidth to all connections, and a minimum bandwidth is guaranteed for each connection. The means to do this is weighted round robin (We
ighted round robin) method is known. This weighted round-robin method can realize the guaranteed minimum bandwidth and the allocation of the surplus bandwidth according to the weight ratio set for each connection.

【0005】その他、最低帯域を保証し、かつ、上限帯
域の制限を高速に行う手法としては、特開平11−23
9151号公報に示されるように連想記憶メモリ(CA
M)を用いた帯域制御方法がある。この方法では、ラウ
ンドロビン検索を、最低帯域を満たしていないコネクシ
ョンの検索と最低帯域を満たしたコネクションの検索の
2段階に分けて行うことにより、各コネクション毎に最
低帯域を保証し、かつ、上限帯域を満たした場合は以降
の検索対象としないことで上限帯域の制限を行う。一連
のラウンドロビン検索は連想記憶メモリ(CAM)の検
索機構により高速に行われ、大規模な通信システムにお
いても高速な帯域制御が実現される。
[0005] In addition, as a method of guaranteeing the minimum band and limiting the upper band at a high speed, Japanese Patent Laid-Open No. 11-23 / 1999
No. 9151, associative memory (CA
There is a band control method using M). In this method, a round-robin search is performed in two stages, a search for a connection that does not satisfy the minimum bandwidth and a search for a connection that satisfies the minimum bandwidth. When the bandwidth is satisfied, the upper limit bandwidth is limited by not setting it as a search target thereafter. A series of round robin searches are performed at high speed by a search mechanism of a content addressable memory (CAM), and high-speed bandwidth control is realized even in a large-scale communication system.

【0006】[0006]

【発明が解決しようとする課題】ここで、上記優先度制
御並びに帯域制御はいずれもラウンドロビン制御を基本
とする。ラウンドロビン制御の技術課題は、次の送出パ
ケットを決めるために選択対象となるバッファの数が多
くなるほど、処理負荷が増大することである。例えば2
56個のバッファが設けられて、そのうちの唯一つのバ
ッファがパケットを送出可能であっても、毎回255個
のバッファが選択不可能であることを認識した上でその
送出可能バッファが選択されねばならず、バッファ選択
をスキップする手順に多くの処理時間を必要とする。
Here, both the priority control and the band control are based on round robin control. The technical problem of the round robin control is that the processing load increases as the number of buffers to be selected for determining the next transmission packet increases. For example, 2
Even if 56 buffers are provided, and even if only one of the buffers can transmit a packet, it must recognize that 255 buffers cannot be selected each time, and the transmittable buffer must be selected. However, the procedure for skipping the buffer selection requires a lot of processing time.

【0007】さらに、ATM通信においてコネクション
毎に優先度を設定したい場合など、コネクション対応に
バッファを設ける必要があれば、ラウンドロビン制御に
て扱うべきバッファ数が非常に多くなり、場合によって
は次のパケットが出力されずに回線使用効率が低下す
る。
Further, if it is necessary to provide a buffer corresponding to a connection, for example, when setting a priority for each connection in the ATM communication, the number of buffers to be handled by the round robin control becomes very large. The line usage efficiency is reduced because no packet is output.

【0008】また、前述した連想記憶メモリを用いた手
法であれば、バッファ選択をスキップする手順が必要と
ならず、バッファ数が増えた場合でも一定時間で処理を
完了することができる。しかしながら、複数のサービス
クラスを混在させて一括に制御したい場合や、より綿密
な帯域制御を目的に、各バッファに割り当てられる優先
度の段階数を増やそうとすれば、優先度の段階数分だけ
連速記憶メモリをアクセスする必要があり、比例的に処
理工数が増大する。また、連想記憶メモリの機能とし
て、条件に一致するエントリの中で、検索開始点のエン
トリ以降で最初に一致するものが選択される特殊な機能
を前提としている点で、実用面での課題を有する。
Further, if the above-mentioned method using the associative memory is used, a procedure for skipping the buffer selection is not required, and the processing can be completed in a fixed time even when the number of buffers increases. However, if multiple service classes are to be mixed and controlled collectively, or if the number of priority levels assigned to each buffer is to be increased for more precise bandwidth control, the number of consecutive priority levels will increase. It is necessary to access the fast storage memory, and the number of processing steps increases proportionately. In addition, as a function of the associative memory, there is a problem in practical use in that a special function is selected in which entries that match conditions are selected first after the entry at the search start point. Have.

【0009】したがって、より大規模で多様なサービス
を収容する通信システムにおいて、優先制御や帯域制御
を実現する場合、全体の処理速度が処理対象とするバッ
ファの数や優先度クラスの段階数になるべく依存しない
ことが望ましい。
Therefore, when priority control and band control are realized in a communication system that accommodates various services on a larger scale, the overall processing speed should be equal to the number of buffers to be processed and the number of stages of priority classes. It is desirable not to depend.

【0010】本発明は、以上の課題を鑑みて、固定的で
あれ動的であれ、複数の優先度クラスを扱うラウンドロ
ビン検索を高速で、かつ、簡単な構成で実現することが
できるラウンドロビン制御方法及び帯域制御方法並びに
パケット制御装置を提供することを目的とする。
SUMMARY OF THE INVENTION In view of the above problems, the present invention provides a round-robin search that can be implemented with high speed and with a simple configuration, whether fixed or dynamic, and that handles a plurality of priority classes. It is an object to provide a control method, a band control method, and a packet control device.

【0011】[0011]

【課題を解決するための手段】本発明は上記目的を達成
するために、複数の選択候補のいずれか1つを選択する
ラウンドロビン制御方法であって、前記複数の選択候補
の各々が選択可能であるか否かを示す状態表現を定義し
て、全ての選択候補の前記状態表現をラウンドロビン制
御の検索順序に従って結合した制御変数を生成し、前記
制御変数に対して算術演算あるいは論理演算して前記制
御変数に含まれる特定の状態表現を選択し、前記特定さ
れた状態表現から選択すべき選択候補を特定するように
した。
In order to achieve the above object, the present invention provides a round robin control method for selecting one of a plurality of selection candidates, wherein each of the plurality of selection candidates is selectable. Is defined, a control variable is generated by combining the state expressions of all the selection candidates according to the search order of round robin control, and an arithmetic operation or a logical operation is performed on the control variable. Thus, a specific state expression included in the control variable is selected, and a selection candidate to be selected is specified from the specified state expression.

【0012】上記方法によれば、算術演算や論理演算に
よる一括したラウンドロビン検索が可能となるので、固
定的であれ動的であれ、複数の優先度クラスを扱うラウ
ンドロビン検索を高速で、かつ、簡単な構成で実現する
ことができる。
According to the above-described method, a batch round-robin search by an arithmetic operation or a logical operation can be performed. Therefore, a fixed or dynamic round-robin search that handles a plurality of priority classes can be performed at high speed. , Can be realized with a simple configuration.

【0013】本発明はまた、受信パケットが格納された
複数のバッファのいずれか1つをラウンドロビン方式に
より選択してそのバッファに格納されたパケットを送信
するラウンドロビン制御方法において、前記複数のバッ
ファに対するラウンドロビン検索順序のk番目のバッフ
ァがパケットを送出可能である場合に最下位からk番目
のビットを0に設定してそれ以外は1に設定した第1の
二進変数を生成する第1の制御手順と、前記第1の二進
変数の0であるビットのうち最も下位に位置するビット
を特定する第2の制御手順と、前記第2の制御手順によ
り特定されたビット位置から選択すべきバッファを特定
する第3の制御手順とを、有するようにした。
The present invention also provides a round-robin control method for selecting one of a plurality of buffers storing received packets by a round-robin method and transmitting the packets stored in the buffers. A first binary variable in which the k-th bit from the least significant bit is set to 0 when the k-th buffer in the round-robin search order with respect to the , A second control procedure for specifying the least significant bit of the bits of the first binary variable that are 0, and a bit position specified by the second control procedure. And a third control procedure for specifying a buffer to be performed.

【0014】上記方法によれば、各バッファの状態を示
すビット表現をラウンドロビンの検索順序に従って配置
した第1の二進変数を生成し、第1の二進変数の0であ
るビットのうち最も下位のビット位置を特定し、特定さ
れたビット位置から選択すべきバッファを特定する一連
の制御を行うので、選択優先度が等しく設定された複数
バッファのうちいずれか1つを選択するラウンドロビン
制御を、単純な演算処理で高速に実現することができ
る。
According to the above method, a first binary variable in which bit representations indicating the state of each buffer are arranged according to a round-robin search order is generated, and the most significant bit among the 0 bits of the first binary variable is generated. Since a series of controls for specifying the lower bit position and specifying a buffer to be selected from the specified bit position are performed, round robin control for selecting one of a plurality of buffers having the same selection priority is set. Can be realized at high speed by simple arithmetic processing.

【0015】本発明はまた、前記複数のバッファはあら
かじめ固定的な順序付けがなされており、前記第1の制
御手順は、前記複数のバッファに対する前記あらかじめ
固定的に決められた順序のk番目のバッファがパケット
を送出可能である場合に最下位から数えてk番目のビッ
トを0に設定してそれ以外は1に設定した二進変数を生
成し、ラウンドロビン検索の開始点のバッファに対応す
るビットが最下位桁にくるまで前記二進変数を巡回シフ
トさせて前記第1の二進変数を生成するようにした。
According to the present invention, the plurality of buffers may be fixedly ordered in advance, and the first control procedure may be such that the k-th buffer in the fixedly determined order with respect to the plurality of buffers is used. Generates a binary variable with the k-th bit counted from the least significant bit set to 0 and otherwise set to 1 if the packet can be transmitted, and the bit corresponding to the buffer at the start point of the round robin search. Is cyclically shifted until the first digit is at the least significant digit to generate the first binary variable.

【0016】上記方法によれば、必要となる第1の二進
変数を簡単な方法で生成することができる。
According to the above method, the required first binary variable can be generated by a simple method.

【0017】本発明はまた、あらかじめ選択優先度が設
定され、受信パケットが格納された複数のバッファの選
択可能なバッファのうち、最も選択優先度が高いバッフ
ァからいずれか1つをラウンドロビン方式により選択し
てそのバッファに格納されたパケットを送信するラウン
ドロビン制御方法において、前記複数のバッファに対す
るラウンドロビン検索の対象とする選択優先度を検索優
先度として管理する優先度管理手順と、前記複数のバッ
ファに対するラウンドロビン検索順序のk番目のバッフ
ァがパケットを送出可能であって、かつ、検索優先度と
同じ選択優先度である場合に、最下位から数えてk番目
のビットを0に設定してそれ以外は1に設定した第1の
二進変数を生成する第1の制御手順と、最も高い優先度
から順次検索優先度を下げながら前記第1の制御手順を
繰り返して、その第1の二進変数が0であるビットを含
む場合には、前記第1の二進変数の0であるビットのう
ち最も下位に位置するビットを特定する第2の制御手順
と、前記第2の制御手順により特定されたビット位置か
ら選択すべきバッファを特定する第3の制御手順とを、
有するようにした。
According to the present invention, a selection priority is set in advance, and one of a plurality of buffers that can be selected from among a plurality of buffers storing received packets is selected from buffers having the highest selection priority by a round robin method. A round robin control method of selecting and transmitting a packet stored in the buffer, wherein a priority management procedure of managing a selection priority to be a target of a round robin search for the plurality of buffers as a search priority; If the k-th buffer in the round-robin search order for the buffer is capable of transmitting packets and has the same selection priority as the search priority, the k-th bit counting from the least significant bit is set to 0. Otherwise, a first control procedure for generating a first binary variable set to 1, and a search priority in order from the highest priority If the first binary variable includes a bit of 0 when the first control procedure is repeated while decreasing the value of the first binary variable, the first binary variable is located at the lowest position among the 0 bits of the first binary variable. A second control procedure for specifying a bit, and a third control procedure for specifying a buffer to be selected from the bit positions specified by the second control procedure,
To have.

【0018】上記方法によれば、特定の優先度に注目し
て、最も高い優先度から順次検索優先度を下げながら第
1の二進変数を繰り返し生成し、第1の二進変数に0で
あるビットが含まれる場合には、第1の二進変数の0で
あるビットのうち最も下位のビット位置を特定し、特定
されたビット位置から選択すべきバッファを特定する一
連の制御を行うので、選択優先度が個別に設定された複
数のバッファのうちいずれか1つを選択する優先制御型
のラウンドロビン制御を、単純な演算処理で実現するこ
とができる。
According to the above method, a first binary variable is repeatedly generated while sequentially lowering the search priority from the highest priority, paying attention to a specific priority, and 0 is assigned to the first binary variable. If a certain bit is included, a series of controls are performed to specify the least significant bit position among the 0 bits of the first binary variable and to specify a buffer to be selected from the specified bit position. In addition, priority control type round robin control for selecting any one of a plurality of buffers for which selection priorities are individually set can be realized by simple arithmetic processing.

【0019】本発明はまた、前記複数のバッファはあら
かじめ固定的な順序付けがなされており、前記第1の制
御手順は、前記複数のバッファに対する前記あらかじめ
固定的に決められた順序のk番目のバッファがパケット
を送出可能であって、かつ、検索優先度と同じ選択優先
度である場合に、最下位から数えてk番目のビットを0
に設定してそれ以外は1に設定した二進変数を生成し、
ラウンドロビン検索の開始点のバッファに対応するビッ
トが最下位桁にくるまで前記二進変数を巡回シフトさせ
て前記第1の二進変数を生成するようにした。
In the present invention, the plurality of buffers may be fixedly ordered in advance, and the first control procedure may be such that the k-th buffer in the fixedly determined order with respect to the plurality of buffers is used. Is capable of transmitting a packet and has the same selection priority as the search priority, the k-th bit counted from the least significant bit is set to 0.
To generate a binary variable otherwise set to 1.
The first binary variable is generated by cyclically shifting the binary variable until the bit corresponding to the buffer at the start point of the round robin search comes to the least significant digit.

【0020】上記方法によれば、必要となる第1の二進
変数を簡単な方法で生成することができる。
According to the above method, the required first binary variable can be generated by a simple method.

【0021】本発明はまた、前記第1の制御手順が、前
記第1の二進変数をあらかじめ各優先度に設定するよう
にした。
According to the present invention, the first control procedure sets the first binary variable to each priority in advance.

【0022】上記方法によれば、全ての優先度毎に第1
の二進変数をあらかじめ準備しておくことで、より高速
なラウンドロビン制御を実現することができる。
According to the above method, the first priority is assigned to every priority.
By preparing the binary variables in advance, higher-speed round robin control can be realized.

【0023】本発明はまた、前記第3の制御手順が、k
番目のビットが前記あらかじめ固定的に決められた順序
のk番目のバッファに対応するまで前記第4の二進変数
を巡回シフトさせて第5の二進変数を生成し、前記第5
の二進変数の1であるビットの位置から選択すべきバッ
ファを特定するようにした。
In the present invention, it is preferable that the third control procedure is performed by setting k
Cyclically shifting the fourth binary variable until a fifth bit corresponds to the k-th buffer in the predetermined fixed order to generate a fifth binary variable;
The buffer to be selected is specified from the position of the bit that is 1 of the binary variable of "."

【0024】上記方法によれば、加算処理の結果からパ
ケットの送出権を割り当てるべきバッファを容易に認識
することが可能となる。
According to the above method, it is possible to easily recognize the buffer to which the packet transmission right is to be assigned from the result of the addition processing.

【0025】本発明はまた、あらかじめ選択優先度pが
設定され、受信パケットが格納されたn個のバッファの
選択可能なバッファのうち、最も選択優先度が高いバッ
ファからいずれか1つをラウンドロビン方式により選択
してそのバッファに格納されたパケットを送信する通信
制御方法において、前記複数のバッファに対するラウン
ドロビン検索順序のk番目のバッファがパケットを送出
可能であって、かつ、p番目に高い優先度である場合
に、最下位から数えて(p−1)×n+k番目のビット
を0に設定してそれ以外は1に設定した第1の二進変数
を生成する第1の制御手順と、前記第1の二進変数の0
であるビットのうち最も下位に位置するビットを特定す
る第2の制御手順と、前記第2の制御手順にて特定され
たビット位置から選択すべきバッファを特定する第3の
制御手順とを、有するようにした。
According to the present invention, a selection priority p is set in advance, and one of the n selectable buffers in which received packets are stored is selected from among the buffers having the highest selection priority in a round robin manner. In a communication control method for transmitting a packet stored in a buffer selected by a method, a k-th buffer in a round-robin search order for the plurality of buffers can transmit a packet and a p-th highest priority A first control procedure for generating a first binary variable with the (p−1) × n + kth bit counting from the least significant bit set to 0 and otherwise set to 1 0 of the first binary variable
A second control procedure for specifying the least significant bit among the bits, and a third control procedure for specifying a buffer to be selected from the bit positions specified in the second control procedure. To have.

【0026】上記方法によれば、全ての優先度毎に生成
した二進変数を優先度が高いものから下位に配置される
ように結合して第1の二進変数を生成し、第1の二進変
数の0であるビットのうち最も下位のビット位置を特定
し、特定されたビット位置から選択すべきバッファを特
定する一連の制御を行うので、請求項6の態様に比べ
て、検索動作を実現する加算処理とそれに伴う結果の判
定処理を複数回繰り返す必要がなく、より高速な検索処
理が実現される。また、請求項6の態様に比べて処理性
能の劣化要因となる分岐処理の回数が少なく、常に処理
時間を一定に保つことができる。
According to the above method, the first binary variable is generated by combining the binary variables generated for all priorities so as to be arranged in the order of higher priority to lower priority. 7. A series of controls for specifying the least significant bit position among the 0 bits of the binary variable and specifying a buffer to be selected from the specified bit position, so that a search operation is performed in comparison with the mode of claim 6. Is not required to be repeated a plurality of times, and a higher-speed search process is realized. In addition, the number of times of branch processing that causes deterioration of processing performance is smaller than in the case of the sixth aspect, and the processing time can always be kept constant.

【0027】本発明はまた、前記複数のバッファはあら
かじめ固定的な順序付けがなされており、前記第1の制
御手順が、前記あらかじめ固定的に決められた順序のk
番目のバッファがパケットを送出可能であって、かつ、
注目する優先度pである場合に、最下位から数えてk番
目のビットを0に設定してそれ以外は1に設定した二進
変数を全ての優先度毎に生成し、前記二進変数の全てを
ラウンドロビン検索の開始点のバッファに対応するビッ
トが最下位桁にくるまで巡回シフトさせた後、優先度が
高いものほど下位に位置するように連結して前記第1の
二進変数を生成するようにした。
In the present invention, the plurality of buffers may be fixedly ordered in advance, and the first control procedure may be configured such that the fixed order k
Th buffer is capable of sending packets, and
When the priority is the priority p of interest, a binary variable with the k-th bit counted from the least significant bit set to 0 and otherwise set to 1 is generated for every priority, and After all the bits are cyclically shifted until the bit corresponding to the buffer at the start point of the round robin search comes to the least significant digit, the first binary variable is connected by connecting the first binary variable to the lower priority one with a higher priority. Generated.

【0028】上記方法によれば、必要となる第1の二進
変数を簡単な方法で生成することができる。
According to the above method, the required first binary variable can be generated by a simple method.

【0029】本発明はまた、前記第2の制御手順が、前
記第1の二進変数に1を加算して第2の二進変数を生成
し、前記第1の二進変数の各ビットを反転させて第3の
二進変数を生成し、前記第2の二進変数と第3の二進変
数の各同じビット位置のビットを論理積演算して第4の
二進変数を生成し、前記第4の二進変数の1であるビッ
トの位置から前記第1の二進変数の0であるビットのう
ち最も下位のビット位置を特定するようにした。
According to the present invention, the second control procedure may further include adding 1 to the first binary variable to generate a second binary variable, and converting each bit of the first binary variable. Inverting to generate a third binary variable, performing a logical AND operation on the bits at the same bit position of the second binary variable and the third binary variable to generate a fourth binary variable, The least significant bit position among the 0 bits of the first binary variable is specified from the position of the 1 bit of the fourth binary variable.

【0030】上記方法によれば、第1の二進変数に1を
加算することで第1の二進変数の0であるビットのうち
最も下位のビット位置を容易に特定することができ、全
てのバッファを対象とするラウンドロビン検索を、制御
対象とするバッファ数や優先度の階数によらず一括して
行うことができる。
According to the above method, the least significant bit position among the 0 bits of the first binary variable can be easily specified by adding 1 to the first binary variable. Round robin search can be performed collectively regardless of the number of buffers to be controlled and the rank of priority.

【0031】本発明はまた、前記第3の制御手順が、前
記第4の二進変数をnビットずつ分離して第5の二進変
数をp個生成し、全ての第5の二進変数の各同じビット
位置のビットを論理積演算して第6の二進変数を生成
し、k番目のビットがあらかじめ固定的に決められた順
序のk番目のバッファに対応するまで、前記第6の二進
変数を巡回シフトさせて第7の二進変数を生成し、前記
第7の二進変数の1であるビットの位置から選択すべき
バッファを特定するようにした。
According to the present invention, the third control procedure may include the step of separating the fourth binary variable by n bits to generate p fifth binary variables, and generating all fifth binary variables. AND operation of each bit at the same bit position to generate a sixth binary variable, and until the k-th bit corresponds to the k-th buffer in a predetermined fixed order, A seventh variable is generated by cyclically shifting the binary variable, and a buffer to be selected is specified from the position of the bit that is 1 of the seventh binary variable.

【0032】上記方法によれば、加算処理の結果からパ
ケットの送出権を割り当てるべきバッファを容易に認識
することが可能となる。
According to the above method, it is possible to easily recognize a buffer to which a packet transmission right is to be assigned from the result of the addition processing.

【0033】本発明はまた、前記加算処理が、演算を高
速化するために桁上げビットの伝播機構が階層化されて
いるようにした。
Further, in the present invention, in the addition processing, a carry bit propagation mechanism is hierarchized in order to speed up the operation.

【0034】上記方法によれば、加算処理を高速化する
ことができ、ラウンドロビン検索の処理速度が制御対象
とするバッファ数や優先度の階数に依存しない、より高
速な処理を実現することができる。
According to the above method, the addition processing can be sped up, and a higher-speed processing can be realized in which the processing speed of the round-robin search does not depend on the number of buffers to be controlled and the priority level. it can.

【0035】本発明はまた、請求項8から請求項11に
記載のラウンドロビン制御を用いた帯域制御方法であっ
て、前記パケットは固定長パケットであり、所定時間の
制御サイクルを設定して前記制御サイクル内で前記複数
のバッファのそれぞれからのパケット送出量を計数し、
前記バッファの各々に個別に設定された少なくとも1つ
以上の閾値と前記計数値を比較して各バッファの選択優
先度pを動的に決定し、制御サイクル内でパケット送出
量が多くなるほど当該バッファの選択優先度pが下がる
ように制御するようにした。
The present invention is also the bandwidth control method using round robin control according to any one of claims 8 to 11, wherein the packet is a fixed-length packet, and a control cycle of a predetermined time is set to set the packet. Counting the number of packets sent from each of the plurality of buffers in a control cycle,
At least one or more threshold values individually set for each of the buffers are compared with the count value to dynamically determine the selection priority p of each buffer. Is controlled so that the selection priority p of the is lower.

【0036】上記方法によれば、各バッファからのパケ
ット送出量を計数し、バッファ毎に設けられた複数の閾
値と先の計数値の比較から動的に各バッファの選択優先
度を変化させて優先制御型のラウンドロビン制御を行う
ので、最低帯域保証を含む綿密な帯域制御を容易、か
つ、高速に実現することができる。
According to the above method, the number of packets transmitted from each buffer is counted, and the selection priority of each buffer is dynamically changed by comparing a plurality of threshold values provided for each buffer with the previous count value. Since the priority control type round-robin control is performed, it is possible to easily and quickly realize detailed band control including guarantee of the minimum band.

【0037】本発明はまた、所定サイクルを新たに開始
する毎に、前記パケット送出量の計数値をクリアして再
度計数を開始するようにした。
In the present invention, every time a predetermined cycle is newly started, the count value of the packet transmission amount is cleared and counting is started again.

【0038】上記方法によれば、帯域制御の処理時間サ
イクルを固定することで、実現すべき帯域の認識をパケ
ット数の認識に置き換えて処理を単純化することができ
る。
According to the above method, by fixing the processing time cycle of the band control, the recognition of the band to be realized can be replaced with the recognition of the number of packets, thereby simplifying the processing.

【0039】本発明はまた、前記パケット送出量の計数
値が、バッファに設定されたうち最大の閾値以上になっ
た以降は、制御サイクルが更新するまでの間、当該バッ
ファからのパケットを送出しないよう制限を行うように
した。
According to the present invention, after the count value of the packet transmission amount becomes equal to or more than the maximum threshold value set in the buffer, the packet is not transmitted from the buffer until the control cycle is updated. So that the restriction is made.

【0040】上記方法によれば、個々のバッファ毎に設
定される上限帯域制限を実現することができる。
According to the above-mentioned method, it is possible to realize the upper limit bandwidth set for each buffer.

【0041】本発明はまた、請求項1から12のいずれ
か1つに記載のラウンドロビン制御方法を用いたパケッ
ト制御装置であって、複数のポートから受信したパケッ
トを前記複数のバッファのいずれか1つに格納し、前記
バッファのいずれか1つを選択してパケットを送出する
ように構成した。
The present invention also relates to a packet control apparatus using the round robin control method according to any one of claims 1 to 12, wherein a packet received from a plurality of ports is transmitted to one of the plurality of buffers. One of the buffers is selected, and one of the buffers is selected to transmit the packet.

【0042】上記構成によれば、上記に示すラウンドロ
ビン制御方法により高速で、かつ、簡易にパケット送出
制御が可能なパケット制御装置を実現することができ
る。
According to the above configuration, it is possible to realize a packet control device capable of performing high-speed and simple packet transmission control by the round robin control method described above.

【0043】本発明はまた、請求項13から15のいず
れか1つに記載の帯域制御方法を用いたパケット制御装
置であって、複数のポートから受信した固定長パケット
を前記複数のバッファのいずれか1つに格納し、前記バ
ッファのいずれか1つを選択してパケットを送出するよ
うに構成した。
The present invention also relates to a packet control apparatus using the bandwidth control method according to any one of claims 13 to 15, wherein a fixed length packet received from a plurality of ports is transmitted to one of the plurality of buffers. And the packet is transmitted by selecting one of the buffers.

【0044】上記構成によれば、上記に示す帯域制御方
法により、高速で、かつ、簡易にパケット送出制御が可
能なパケット制御装置を実現することができる。
According to the above configuration, it is possible to realize a packet control device capable of performing high-speed and simple packet transmission control by the above-described band control method.

【0045】本発明はまた、前記固定長パケットがAT
Mセルであって、前記バッファの各々に個別に設定され
た少なくとも1つ以上の閾値は、バッファに対応するA
TMコネクションに割り当てられた最低保証帯域又は上
限帯域又はその双方に関連して導出されるように構成し
た。
According to the present invention, the fixed-length packet may include an AT
M cells, wherein at least one or more thresholds individually set for each of the buffers are equal to A corresponding to the buffers.
It is configured to be derived in relation to the minimum guaranteed band and / or the upper limit band allocated to the TM connection.

【0046】上記構成によれば、コネクション毎に最低
帯域保証あるいは上限帯域制限が可能なセルスケジュー
リング機構を搭載するATMセル交換制御装置を実現す
ることができる。
According to the above configuration, it is possible to realize an ATM cell switching control apparatus equipped with a cell scheduling mechanism capable of guaranteeing the minimum bandwidth or limiting the upper bandwidth for each connection.

【0047】[0047]

【発明の実施の形態】<第1の実施形態>以下、図面を
参照して本発明の実施の形態について説明する。図1は
本発明に係るラウンドロビン制御方法及びパケット制御
装置の第1の実施形態を示す説明図、図2は図1の出力
制御部の処理を説明するためのためのフローチャート、
図3は図2の各処理内容を詳細に説明するための説明図
である。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS <First Embodiment> An embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is an explanatory diagram showing a first embodiment of a round robin control method and a packet control device according to the present invention. FIG. 2 is a flowchart for explaining processing of an output control unit in FIG.
FIG. 3 is an explanatory diagram for describing the details of each process in FIG. 2 in detail.

【0048】本発明の第1の実施形態について、図1〜
図3を参照して説明する。図1は複数設けられた通信用
バッファ101の読み出し制御として高速で、かつ、簡
易にラウンドロビン制御を実現するために、送出すべき
通信パケット(単にパケットともいう)102を格納す
る複数の通信用バッファ101と、複数の通信用バッフ
ァ101のいずれか1つからパケットの読み出しを制御
する出力制御部100を備えた通信制御装置を示してい
る。本実施形態において、通信用バッファ101は先入
れ先出し方式のFIFO(First In First Out)により
構成される。
Referring to the first embodiment of the present invention, FIGS.
This will be described with reference to FIG. FIG. 1 shows a plurality of communication buffers 101 that store communication packets (to be simply referred to as packets) 102 to be transmitted in order to realize high-speed and easy round-robin control as read control of a plurality of communication buffers 101 provided. 1 illustrates a communication control device including a buffer 101 and an output control unit 100 that controls reading of a packet from any one of a plurality of communication buffers 101. In the present embodiment, the communication buffer 101 is configured by a FIFO (First In First Out) of a first-in first-out method.

【0049】出力制御部100はあらかじめ決められた
順序でポインタを巡回させて、パケット102を送出可
能なバッファに送出権を割り当てるラウンドロビン型の
送出制御を行う。ラウンドロビン制御においては、ある
FIFOがパケット送出元として選択されると、次のポ
インタ巡回は、先に選択されたFIFOの次の順序に位
置するFIFOから開始される。説明を容易とするた
め、本実施形態において通信パケット102は固定長パ
ケットであることとし、そのためパケット102を送出
可能な各バッファには均等に帯域が割り当てられる。以
降、ラウンドロビン制御に基づくFIFOの選択処理を
ラウンドロビン検索、又は単に検索処理と表記する。
The output control unit 100 performs a round robin type transmission control in which a pointer is circulated in a predetermined order and a transmission right is allocated to a buffer capable of transmitting the packet 102. In the round-robin control, when a certain FIFO is selected as a packet transmission source, the next pointer traversal starts from the FIFO located next to the previously selected FIFO. For the sake of simplicity, in the present embodiment, the communication packet 102 is a fixed-length packet, and therefore, a bandwidth is equally allocated to each buffer capable of transmitting the packet 102. Hereinafter, FIFO selection processing based on round robin control is referred to as round robin search or simply search processing.

【0050】図2は出力制御部100の動作について示
したフローチャートである。また図3は図2の各処理内
容を詳細に説明するための補足図である。以下、図2及
び図3を参照して本発明の特徴とするラウンドロビン検
索方法について詳細に説明する。図1に示す通信制御装
置において、パケット102をいずれかのFIFO#0
〜#n−1から読み出すタイミングになると、出力制御
部100は各FIFO#0〜#n−1のパケット蓄積状
況を集計して処理変数WDR[n−1:0]を生成する
(ステップS110)。処理変数WDRは制御対象とな
るFIFOの個数nと同じビット幅を有し、各ビットは
それぞれ対応するFIFO#0〜#n−1において送出
可能なパケット102が存在する場合に0、それ以外で
は1に設定する。
FIG. 2 is a flowchart showing the operation of the output control unit 100. FIG. 3 is a supplementary diagram for describing the details of each processing in FIG. 2 in detail. Hereinafter, the round robin search method according to the present invention will be described in detail with reference to FIGS. In the communication control device shown in FIG.
At the timing of reading from # n-1 to # n-1, the output control unit 100 counts the packet accumulation status of each of the FIFOs # 0 to # n-1 and generates a processing variable WDR [n-1: 0] (step S110). . The processing variable WDR has the same bit width as the number n of FIFOs to be controlled, and each bit is 0 when there is a packet 102 that can be transmitted in the corresponding FIFO # 0 to # n-1, and otherwise, Set to 1.

【0051】図3に示すステップS120は上記変数の
生成方法を説明するものであり、制御対象となるn個の
FIFO(図3では一例として、8個のFIFO#0〜
#7)は、ラウンドロビン制御の検索順序に従って0番
〜n−1番まで番号付けされている。各FIFO#0〜
#7は送出可能なパケット102の蓄積状態が逐次把握
されており、そこから生成される変数WDRは、各FI
FO#0〜#7の状態のビット表現を1つの変数として
まとめたものである。
Step S120 shown in FIG. 3 is for explaining the method of generating the above-mentioned variables, and includes n FIFOs to be controlled (in FIG. 3, as an example, eight FIFOs # 0 to # 0).
# 7) is numbered from 0 to n-1 according to the search order of the round robin control. Each FIFO # 0
In # 7, the accumulation state of the packet 102 that can be transmitted is sequentially grasped, and the variable WDR generated therefrom is
The bit representation of the states of FO # 0 to # 7 is collected as one variable.

【0052】なお、以降の説明において処理変数は全て
2進数表現であることを前提とし、nビットの処理変数
である場合、最下位ビットを0桁目、最上位ビットをn
−1桁目と表現する。上述の処理変数WDRであれば、
変数のk桁目がk番目のFIFO#kの状態を表現して
いる。またステップS120に示す検索開始点Fは、ラ
ウンドロビン検索の開始点を示すものであり、図3では
FIFO#4から上記ラウンドロビン検索を開始する例
を示している。
In the following description, it is assumed that the processing variables are all expressed in binary numbers. If the processing variables are n bits, the least significant bit is the 0th digit and the most significant bit is n.
Expressed as the first digit. If the above processing variable WDR,
The k-th digit of the variable represents the state of the k-th FIFO #k. The search start point F shown in step S120 indicates the start point of the round robin search, and FIG. 3 shows an example in which the round robin search is started from FIFO # 4.

【0053】次に処理変数WDRに対して下位方向に巡
回シフト処理を行い、新たに処理変数WDSを生成する
(図2:ステップS111)。下位方向の巡回シフト処
理は、変数WDRのk桁目をk−1桁目に移動し、0桁
目をn−1桁目に移動する処理である。ステップS11
1では上記シフト処理を検索開始点Fの数(F=4であ
れば4回)だけ繰り返し実行する。この際に処理変数W
DRの上位桁には最下位桁からシフトした値が順次格納
される。図3のステップS121とステップS122
は、上記巡回シフト処理の結果を示す。
Next, a cyclic shift process is performed on the processing variable WDR in the lower direction to newly generate a processing variable WDS (FIG. 2: step S111). The cyclic shift processing in the lower direction moves the k-th digit of the variable WDR to the (k-1) -th digit and moves the 0-th digit to the (n-1) -th digit. Step S11
In the case of 1, the shift processing is repeatedly executed by the number of search start points F (four times when F = 4). At this time, the processing variable W
Values shifted from the least significant digit are sequentially stored in the upper digit of DR. Steps S121 and S122 in FIG.
Indicates the result of the cyclic shift processing.

【0054】本制御は制御変数WDRのビット配列をラ
ウンドロビン検索順序に対応させるために行われるもの
であり、シフト処理が行われた後の処理変数WDSは、
最下位ビットがラウンドロビン検索の開始点であるFI
FOに対応し、下位桁から上位桁方向へのビット配列
は、各ビットが対応するFIFOのラウンドロビン検索
順序に対応する。
This control is performed in order to make the bit array of the control variable WDR correspond to the round robin search order. The processing variable WDS after the shift processing is performed is:
FI whose least significant bit is the starting point of the round robin search
The bit arrangement from the lower digit to the upper digit corresponding to the FO corresponds to the round robin search order of the FIFO corresponding to each bit.

【0055】次に処理変数WDSに対して下記式のよう
に1を加算する第1の演算処理を行い、演算結果を処理
変数WDBとする(ステップS112)。 WDB[n−1:0]=WDS+1 続いて処理変数WDSの各ビットを反転させたもの(/
WDSと表記)と先の演算結果WDBの各ビット間で下
記式のように論理積演算(AND処理)を行う第2の演
算処理により、処理変数WDCを生成する(ステップS
113)。 WDC[n−1:0]=/WDS.and.WDB
Next, a first calculation process of adding 1 to the processing variable WDS as in the following equation is performed, and the calculation result is set as a processing variable WDB (step S112). WDB [n-1: 0] = WDS + 1 Subsequently, the respective bits of the processing variable WDS are inverted (/
A processing variable WDC is generated by a second operation processing of performing a logical AND operation (AND processing) between each bit of the operation result WDB and the respective bits of the operation result WDB as in the following equation (step S).
113). WDC [n-1: 0] = / WDS.and.WDB

【0056】図3のステップS122及びステップS1
23を参照して上記演算処理を説明すれば、第1の演算
処理では、WDSの各ビットのうち0であるものの中で
最も下位の桁に位置するビットを0から1へ、それより
も下位の桁を全て1から0に変化させて、処理変数WD
Bとする。また第2の演算処理では、WDSとWDBの
各桁を比較して、WDSで0、かつ、WDBで1の桁の
み1である処理変数WDCを生成する。
Step S122 and step S1 in FIG.
23, in the first arithmetic processing, the bit located at the least significant digit among the bits of the WDS which are 0 is changed from 0 to 1 and lower than that in the first arithmetic processing. Are all changed from 1 to 0, and the processing variable WD
B. In the second arithmetic processing, each digit of WDS and WDB is compared to generate a processing variable WDC that is 0 in WDS and 1 in only the 1 digit in WDB.

【0057】上記一連の演算処理により所望のラウンド
ロビン検索処理が実現される。すなわち処理変数WDC
の導出は、WDSの各ビットのうちで最も下位に位置す
る0のビットを特定するものであり、これはWDSの最
下位桁に位置する検索開始点から検索順序に沿って最も
近傍にある選択可能位置を特定することを意味する。し
たがって、処理変数WDCの1であるビットに対応する
FIFOがラウンドロビン検索の結果、選択されたFI
FOに相当する。
A desired round robin search process is realized by the above series of arithmetic processes. That is, the processing variable WDC
Derivation specifies the least significant bit 0 of each bit of the WDS, and selects the nearest bit along the search order from the search start point located at the least significant digit of the WDS. This means specifying a possible position. Therefore, as a result of the round robin search, the FIFO corresponding to the bit that is 1 in the processing variable WDC is
FO.

【0058】なお、上記演算処理の結果として生成され
る処理変数WDB及びWDCは、WDSと同じビット幅
[n−1:0]の変数であり、第1の演算処理における
加算の結果がオーバーフローを起こす場合、すなわちW
DSの全ビットが1の場合は、演算の結果としてWDB
は全ビット0となり、WDCの全ビットは0となる。
The processing variables WDB and WDC generated as a result of the above-mentioned arithmetic processing are variables having the same bit width [n-1: 0] as the WDS, and the result of the addition in the first arithmetic processing causes an overflow. If it wakes up, ie W
If all bits of DS are 1, WDB
Becomes all bits 0, and all bits of WDC become 0.

【0059】処理変数WDCの全ビットが0であること
は(ステップS114でyes)、すなわちWDRの全
ビットが1であることを意味しており、したがって、パ
ケット102を送出可能なFIFOが存在しないと判断
して(ステップS115)、そのまま処理を終了する。
When all bits of the processing variable WDC are 0 (yes in step S114), that is, all bits of the WDR are 1, and therefore, there is no FIFO that can transmit the packet 102. Is determined (step S115), and the process ends.

【0060】他方、処理変数WDCが全ビット0ではな
い場合はいずれか1ビットが1であり、この際に処理変
数WDCに対して上位方向に巡回シフト処理を行い、処
理変数WDDを生成する(ステップS116)。上位方
向の巡回シフト処理は、変数WDCのk桁目をk+1桁
目に移動し、n−1桁目を0桁目に移動する処理であ
る。ステップS116の処理では、上記シフト処理を検
索開始点Fの数(F=4であれば4回)だけ繰り返し実
行する。図3のステップS124は、上位方向の巡回シ
フト処理の結果を示す。
On the other hand, when the processing variable WDC is not all the bits 0, one of the bits is 1, and at this time, the processing variable WDC is cyclically shifted upward to generate the processing variable WDD ( Step S116). The cyclic shift process in the upper direction moves the k-th digit of the variable WDC to the (k + 1) -th digit and moves the (n-1) -th digit to the 0-th digit. In the process of step S116, the shift process is repeatedly executed by the number of search start points F (four times when F = 4). Step S124 in FIG. 3 shows the result of the cyclic shift process in the upper direction.

【0061】ステップS116の処理は、前述のステッ
プS111の処理に対して逆の操作を行うものであるた
め、結果として得られる処理変数WDDの各ビットとF
IFOとの対応関係の認識が容易となる。すなわち処理
変数WDDの各ビットのうちいずれか1であるビットの
桁数をF’とすれば、ラウンドロビン検索の結果として
選択されたFIFOはF’番目であり、次に行うラウン
ドロビン検索は F=F’+1 を検索開始点とすればよい(ステップS117)。
Since the processing in step S116 is the reverse of the processing in step S111, each bit of the resulting processing variable WDD and F
It becomes easy to recognize the correspondence with the IFO. That is, if the number of digits of any one of the bits of the processing variable WDD is F ′, the FIFO selected as a result of the round robin search is F ′, and the next round robin search is = F '+ 1 may be set as the search start point (step S117).

【0062】なお、F’が検索順序の最後を示す場合、
すなわち F’=n−1 の場合は、次の検索開始点は F=0 に設定する。
When F ′ indicates the end of the search order,
That is, when F ′ = n−1, the next search start point is set to F = 0.

【0063】本実施形態に示す制御方法によれば、複数
のFIFOの中から1つを選択するラウンドロビン検索
を単純な演算処理にて実現することができ、そのため、
高速な制御が可能となる。本発明の制御によれば、ラウ
ンドロビンの検索順に該当FIFOが選択可能か否かの
判断を逐次行う手順ではなく、検索を行うタイミングで
一括して全FIFOの状態を処理に反映させることがで
きるため、特に制御対象のFIFO数が多い場合など、
一回のラウンドロビン検索における選択対象の数が多く
なっても、ほぼ一定時間内に処理を完了することができ
る。
According to the control method shown in this embodiment, a round robin search for selecting one from a plurality of FIFOs can be realized by a simple arithmetic processing.
High-speed control becomes possible. According to the control of the present invention, the state of all FIFOs can be reflected in the processing at the timing of search, instead of sequentially determining whether or not the corresponding FIFO can be selected in the round robin search order. Therefore, especially when the number of FIFOs to be controlled is large,
Even if the number of selection targets in one round robin search increases, the processing can be completed within a substantially fixed time.

【0064】ここで、本発明のラウンドロビン制御にお
いて、制御対象のFIFO数nが大きくなった場合に処
理速度の律則条件となるのは、図2のステップS112
に示す加算処理 WDB[n−1:0]=WDS+1 である。被加算数となる処理変数WDSのビット幅が大
きくなるため、加算処理における桁上げが最大n回行わ
れることになる。加算処理を高速化する手法として、計
算機などに用いられる階層化手法(キャリ・スキップ・
アダー回路)や桁上げ先読み機構(キャリ・ルック・ア
ヘッド機構)などの一般的な手法を導入することによ
り、ラウンドロビン検索自体の高速化が実現できる。
Here, in the round robin control of the present invention, when the number n of FIFOs to be controlled increases, the processing speed law condition is the condition of step S112 in FIG.
The addition process shown in FIG. 7 is WDB [n−1: 0] = WDS + 1. Since the bit width of the processing variable WDS serving as the augend becomes large, the carry in the addition processing is performed at most n times. As a method to speed up the addition process, a layering method (carry skip,
By introducing general methods such as an adder circuit and a carry look-ahead mechanism (carry look ahead mechanism), the speed of the round robin search itself can be increased.

【0065】制御の起点となる各FIFO状態のビット
表現は、ラウンドロビン検索に先立って装置内部で常に
実施しておくことが望ましい。ラウンドロビン検索の結
果、FIFOからパケット102を読み出す際に、その
時点で該当FIFOから送出可能な最後のパケット10
2であれば、FIFOの状態ビットを0から1へ変化さ
せラウンドロビン検索の非対象とする。また、通信装置
が受信したパケット102を新たにFIFOに格納する
際に、該当FIFOの状態ビットを1に設定し、ラウン
ドロビン検索の対象とする。処理変数WDRの生成時に
各FIFO状態を調べる方法に比べて、検索全体の処理
時間を大幅に低減することができる。
It is desirable that the bit representation of each FIFO state, which is the starting point of the control, is always implemented inside the apparatus prior to the round robin search. When the packet 102 is read from the FIFO as a result of the round robin search, the last packet 10 that can be transmitted from the FIFO at that time is read.
If it is 2, the status bit of the FIFO is changed from 0 to 1 and is not subject to the round robin search. Also, when the communication device newly stores the received packet 102 in the FIFO, the status bit of the FIFO is set to 1 to be a target of the round robin search. The processing time of the entire search can be significantly reduced as compared with the method of checking each FIFO state when the processing variable WDR is generated.

【0066】本発明は図2に示す下位方向シフトステッ
プS111と第1の演算ステップS112を行うことで
高速、かつ、容易にラウンドロビン検索を実現すること
を特徴とする。他方、第2の演算ステップS113は、
第1の演算ステップS112の結果として0から1に変
化したビット位置の特定を行うものであり、また、それ
に続く上位方向シフトステップS116は、先に特定さ
れたビット位置とFIFO番号の関連を認識しやすくす
るために実行する。そのため、第2の演算ステップS1
13及び上位方向のシフトステップS116は、本発明
の特徴・目的を逸脱しない範囲内で別の処理に置き換え
たり、あるいは省略することが可能である。
The present invention is characterized in that high-speed and easy round-robin search is realized by performing the lower-order shift step S111 and the first operation step S112 shown in FIG. On the other hand, the second calculation step S113
The bit position that has changed from 0 to 1 as a result of the first operation step S112 is specified, and the subsequent upward shift step S116 recognizes the association between the previously specified bit position and the FIFO number. Do it to make it easier. Therefore, the second calculation step S1
13 and the upward shift step S116 can be replaced with another process or can be omitted without departing from the features and objects of the present invention.

【0067】また図2及び図3に示した各処理変数は、
それぞれ独立した変数として生成・処理する必要はな
く、ある処理変数にシフト処理もしくは演算処理を実施
した結果を、元の処理変数として同じ記憶領域に格納す
ることも可能である。この場合、多くの処理変数を定義
する必要が無く、CPUのレジスタや主記憶メモリを節
約することができる。本実施形態ではFIFOに格納さ
れたパケット102が固定長パケットであることを前提
としているが、ラウンドロビン制御の説明を容易化する
ために条件を固定したものであり、本発明を限定するも
のではない。
The processing variables shown in FIGS. 2 and 3 are:
It is not necessary to generate and process them as independent variables, and it is also possible to store the result of performing a shift process or an arithmetic process on a certain process variable in the same storage area as the original process variable. In this case, there is no need to define many processing variables, and the registers and main memory of the CPU can be saved. In the present embodiment, it is assumed that the packet 102 stored in the FIFO is a fixed-length packet. However, the condition is fixed to facilitate the description of the round-robin control, and the present invention is not limited to this. Absent.

【0068】<第2の実施形態>次に本発明の第2の実
施形態について、図4及び図5を参照して説明する。第
2の実施形態では、複数設けられた通信用バッファの読
み出し制御として、高速で、かつ、簡易に優先制御型の
ラウンドロビン制御を実現する方法を示す。図4は優先
制御型ラウンドロビン制御方法を実現するために、送出
すべき通信パケット(単にパケットともいう)202を
格納する複数の通信用バッファ(単にバッファともい
う)201と、複数のバッファ201のいずれか1つか
らパケット202の読み出しを制御する出力制御部20
0を備えた通信制御装置を示す。バッファ201はFI
FOにて構成されており、各FIFOには3段階の選択
優先度が固定的に決められている。
<Second Embodiment> Next, a second embodiment of the present invention will be described with reference to FIGS. In the second embodiment, a method for quickly and easily implementing a priority control type round robin control as a read control of a plurality of communication buffers provided will be described. FIG. 4 shows a plurality of communication buffers (simply referred to as buffers) 201 for storing communication packets (simply referred to as packets) 202 to be transmitted and a plurality of buffers 201 for realizing the priority control type round robin control method. Output control unit 20 for controlling reading of packet 202 from any one of them
1 shows a communication control device with 0. Buffer 201 is FI
FOs, and three levels of selection priority are fixedly determined for each FIFO.

【0069】出力制御部200は各FIFOの選択優先
度を考慮した優先制御型のラウンドロビン制御を実現
し、パケット202を送出可能であるいずれか1つのF
IFOにパケット送出権を与える。FIFO毎に決めら
れた選択優先度が3段階であった場合、出力制御部20
0はまず優先度1のFIFOの中でパケットが送出可能
なものを検索し、選択可能なFIFOがなければ優先度
2のFIFOを対象として同様の検索を行い、それでも
選択可能なFIFOがなければ優先度3のFIFOを対
象として検索を行う。最大3回連続で行われる上記検索
は、いずれもラウンドロビン制御により、あらかじめ決
まった順序で行わる。検索の開始点は、先の検索にて選
択されたFIFOの次の順序に位置するFIFOとし、
同じ優先度をもつFIFO間で均等にパケットの送出機
会が与えられる。
The output control unit 200 realizes priority control type round robin control in consideration of the selection priority of each FIFO, and can output any one of the F which can transmit the packet 202.
The packet transmission right is given to the IFO. If the selection priority determined for each FIFO is three levels, the output control unit 20
0 first searches for a packet that can be sent out of the priority 1 FIFO, and if there is no selectable FIFO, performs a similar search for the priority 2 FIFO, and if there is still no selectable FIFO, A search is performed for the FIFO of priority 3. All of the above-described searches performed three times in succession are performed in a predetermined order by round-robin control. The starting point of the search is the FIFO located next to the FIFO selected in the previous search,
Packet transmission opportunities are equally provided between FIFOs having the same priority.

【0070】優先制御型のラウンドロビン制御は、例え
ば音声や映像など実時間性が要求される通信データを、
電子メールやファイル転送など、ある程度の装置内遅延
が許容される通信データよりも優先して送出したい場合
に利用される。実時間性を要求される通信データを優先
度1のFIFOに、遅延が許容される通信データを優先
度2のFIFOに格納することで、前者の通信データが
後者の通信データよりも常に優先して送出されることに
なる。
In the priority control type round robin control, for example, communication data that requires real-time properties, such as audio and video,
It is used when transmission is to be performed with a higher priority than communication data such as e-mail or file transfer that allows a certain delay in the device. By storing communication data requiring real-time performance in a priority 1 FIFO and storing delay-allowed communication data in a priority 2 FIFO, the former communication data always has priority over the latter communication data. Will be sent out.

【0071】図5は出力制御部200の制御手順の例を
示すフローチャートである。以下、図5を参照して優先
制御型ラウンドロビン制御の実現方法について詳説す
る。図4に示す通信制御装置において、パケット202
をFIFOから読み出すタイミングになると、出力制御
部200は処理変数pを1に初期化し、優先度が1(=
p)であるFIFOのパケット蓄積状況を集計して処理
変数WDpR[n−1:0]を生成する(ステップS2
10)。ここで処理変数pは出力制御部200が実施す
る一回のラウンドロビン検索において検索対象となる優
先度を示しており、制御変数pを増加させながら順次検
索を実施することで、優先制御型のラウンドロビン制御
を実現する。以下、優先度pの検索処理の一例について
説明を進める。
FIG. 5 is a flowchart showing an example of the control procedure of the output control section 200. Hereinafter, a method of implementing the priority control type round robin control will be described in detail with reference to FIG. In the communication control device shown in FIG.
Is read from the FIFO, the output control unit 200 initializes the processing variable p to 1 and sets the priority to 1 (=
The processing variable WDpR [n-1: 0] is generated by totalizing the packet accumulation status of the FIFO that is p) (step S2).
10). Here, the processing variable p indicates the priority to be searched in one round robin search performed by the output control unit 200. By performing the search sequentially while increasing the control variable p, the priority control type Realizes round robin control. Hereinafter, an example of the search processing of the priority p will be described.

【0072】処理変数WDpR[n−1:0]は、制御
対象となるFIFO#0〜#n−1の個数nと同じビッ
ト幅を有し、各ビットはそれぞれ対応するFIFO#0
〜#n−1が優先度pであって、かつ、送出可能なパケ
ット202が存在する場合に0、それ以外では1に設定
する。制御対象となる全てのFIFO#0〜#n−1
は,各優先度によらずラウンドロビン制御の検索順序に
従って0番〜n−1番まで番号付けされており、k番目
のFIFO#kは処理変数WDpRのk桁目に対応す
る。
The processing variable WDpR [n-1: 0] has the same bit width as the number n of the FIFOs # 0 to # n-1 to be controlled, and each bit corresponds to the corresponding FIFO # 0.
If # n-1 is the priority p and there is a packet 202 that can be transmitted, 0 is set. Otherwise, 1 is set. All FIFOs # 0 to # n-1 to be controlled
Are numbered from No. 0 to No. n-1 in accordance with the search order of the round-robin control regardless of the priority, and the k-th FIFO # k corresponds to the k-th digit of the processing variable WDpR.

【0073】次に処理変数WDpR[n−1:0]に対
して下位方向に巡回シフト処理を行い、処理変数WDS
[n−1:0]を生成する(ステップS211)。続い
て処理変数WDS[n−1:0]に対して1を加算する
第1の演算処理を行って、第1の演算結果=WDS+1
を処理変数WDB[n−1:0]とし(ステップS21
2)、さらに処理変数WDSの各ビットを反転させた/
WDSと先の演算結果WDBの各ビット間で下記式のよ
うに論理積演算を行う第2の演算処理により、処理変数
WDCを生成する(ステップS212)。 WDC[n−1:0]=/WDS.and.WDB 以上のステップS211、S212、S213は、それ
ぞれ第1の実施形態におけるステップS111、S11
2、S113と同様の処理であり、優先度pのFIFO
を対象としたラウンドロビン検索を行う。
Next, a cyclic shift process is performed on the processing variable WDpR [n−1: 0] in the lower direction, and the processing variable WDS
[N-1: 0] is generated (step S211). Subsequently, a first calculation process of adding 1 to the processing variable WDS [n−1: 0] is performed, and a first calculation result = WDS + 1
Is set as a processing variable WDB [n-1: 0] (step S21).
2) Further, each bit of the processing variable WDS is inverted /
A process variable WDC is generated by a second operation process of performing a logical AND operation between the WDS and each bit of the operation result WDB as in the following equation (step S212). WDC [n-1: 0] = / WDS.and.WDB The above steps S211, S212, and S213 are steps S111 and S11 in the first embodiment, respectively.
2, the same processing as in S113, and the FIFO with priority p
Performs a round-robin search for.

【0074】上記一連の処理の結果として生成された処
理変数WDCは、その1であるビットに対応するFIF
Oが優先度pのラウンドロビン検索の結果、選択された
FIFOに相当するが、処理変数WDCの全ビットが0
である場合(ステップS214でyes)は、パケット
202を送出可能な優先度pのFIFOが存在しないと
判断される。この際、優先度pが検索すべき最低の優先
度でなければ(ステップS215でno)、処理変数p
に1を加算して(ステップS216)ステップS210
に戻り、ステップS210〜S213の検索処理を繰り
返す。
The processing variable WDC generated as a result of the above series of processing is the FIF corresponding to the 1 bit.
O corresponds to the FIFO selected as a result of the round robin search with the priority p, but all bits of the processing variable WDC are 0.
Is satisfied (yes in step S214), it is determined that there is no FIFO having the priority p capable of transmitting the packet 202. At this time, if the priority p is not the lowest priority to be searched (no in step S215), the processing variable p
Is incremented by 1 (step S216) and step S210
And the search processing of steps S210 to S213 is repeated.

【0075】以上、一連の検索処理は優先度1の検索に
始まり、検索すべき最低優先度までの繰り返し実施され
る。ただし処理の過程で選択可能なFIFOが見つかっ
た場合は、以降の優先度の検索処理を行わず、その時点
で検索結果を判定する。
As described above, a series of search processing starts with the search of the priority 1 and is repeatedly performed up to the lowest priority to be searched. However, if a selectable FIFO is found in the course of the processing, the subsequent priority search processing is not performed, and the search result is determined at that time.

【0076】ステップS213における第2の演算処理
の結果、処理変数WDCが全ビット0ではなければ、そ
の時点のWDCに対して上位方向の巡回シフト処理を行
い、処理変数WDDを生成する(ステップS214→S
217)。処理変数WDDの1であるビットの桁数を
F’とすれば、第1の実施形態のステップS116と同
様にラウンドロビン検索の結果がF’番目のFIFOで
あり、次の検索開始点はF=F’+1番目のFIFOに
設定される(ステップS218)。ただしF’=n−1
であれば、次の検索開始点はF=0に設定される。一
方、検索すべき最低優先度の検索結果でも選択可能なF
IFOが見つからなかった場合(ステップS215でy
es)、全ての優先度のFIFOがパケットを送出不可
能であると判断して処理を停止する(ステップS21
9)。
If the result of the second operation in step S213 is that the processing variable WDC is not all bits 0, the WDC at that time is subjected to a cyclic shift process in the upper direction to generate a processing variable WDD (step S214). → S
217). If the number of digits of the 1 bit of the processing variable WDD is F ′, the result of the round robin search is the F′-th FIFO, as in step S116 of the first embodiment, and the next search start point is F ′. = F ′ + 1-th FIFO is set (step S218). Where F ′ = n−1
If so, the next search start point is set to F = 0. On the other hand, F which can be selected even in the search result of the lowest priority to be searched
If no IFO is found (y in step S215)
es), it is determined that all priority FIFOs cannot transmit the packet, and the process is stopped (step S21).
9).

【0077】これ以降、通信制御装置が再びパケット2
02を送出するタイミングになると、先に設定した検索
開始点を起点として、再び優先度1からラウンドロビン
検索処理を開始する。すなわち本実施形態によるラウン
ドロビン制御によれば、いずれかのFIFOからパケッ
トを読み出すたびに、必ず優先度1から検索処理を開始
する。これにより、優先度1のFIFOに送出可能なパ
ケット202が存在すれば必ずそのFIFOを選択し、
優先度1のいずれのFIFOにも送出可能なパケット2
02が存在しない場合に優先度2のFIFOを選択し、
優先度1も優先度2も選択できない場合に優先度3のF
IFOを選択するといった優先度型制御を実現すること
ができる。
After that, the communication control device returns to packet 2 again.
At the timing of sending 02, the round robin search processing is started again from the priority 1 starting from the previously set search start point. That is, according to the round robin control according to the present embodiment, every time a packet is read from any of the FIFOs, the search process is started from the priority 1 without fail. As a result, if there is a packet 202 that can be sent to the FIFO of priority 1, the FIFO is always selected,
Packet 2 that can be sent to any FIFO of priority 1
02 does not exist, select priority 2 FIFO,
If neither priority 1 nor priority 2 can be selected,
Priority type control such as selecting an IFO can be realized.

【0078】本実施形態に示す制御方法によれば、各々
優先度が決められた複数のFIFOから1つを選択する
優先制御型のラウンドロビン検索を単純な演算処理にて
実現することができ、それゆえ高速な制御が可能とな
る。本発明の制御によれば、制御対象のFIFO数が多
くなった場合でも、扱うべき優先度の個数が一定であれ
ば、ほぼ一定時間内に処理を完了することができる。
According to the control method shown in the present embodiment, a priority control type round robin search for selecting one from a plurality of FIFOs each having a predetermined priority can be realized by a simple arithmetic processing. Therefore, high-speed control becomes possible. According to the control of the present invention, even when the number of FIFOs to be controlled increases, if the number of priorities to be handled is constant, the processing can be completed within a substantially constant time.

【0079】本制御方法は、各優先度の検索処理を逐次
行う方法であり、扱うべき優先度の個数がpであれば、
最大p回の検索処理を必要とするが、各優先度について
図5に示すステップS210からステップS213まで
の処理をあらかじめ並列に実行しておくことで、全体処
理の高速化を図ることができる。この並列処理を行った
場合、例えば優先度1で送出権を割り当てるべきFIF
Oが見つからなければ、直ぐに優先度2の検索結果を示
す処理変数WDCを参照すればよい。この並列処理を伴
う制御方法によれば、全体制御の中で第1の演算処理が
占める処理時間は常に1回分であるため、扱うべき優先
度の個数が多くなった場合でも、処理性能の低下が軽減
される。
This control method is a method of sequentially performing a search process of each priority. If the number of priorities to be handled is p,
Although a maximum of p search processes are required, the overall process can be sped up by previously executing the processes from step S210 to step S213 shown in FIG. 5 for each priority in parallel. When this parallel processing is performed, for example, an FIF to which a transmission right should be assigned with priority 1
If O is not found, the processing variable WDC indicating the search result of priority 2 may be referred to immediately. According to this control method involving parallel processing, the processing time occupied by the first arithmetic processing in the overall control is always one time, so that even if the number of priorities to be handled increases, the processing performance is reduced. Is reduced.

【0080】本制御方法をハードウェアにて実現する場
合、あるいは並列処理機能を持つソフトウェア処理で実
現する場合、各優先度毎にステップS210からステッ
プS213までの処理を並列に実施しておくことが可能
であり、処理の高速化のため有効な手段となる。
When this control method is realized by hardware or by software processing having a parallel processing function, the processing from step S210 to step S213 may be performed in parallel for each priority. This is possible and is an effective means for speeding up the processing.

【0081】なお本実施形態において第2の演算処理
(ステップS213)や上位方向のシフト処理(ステッ
プS217)は、その機能と目的を損なわない範囲で、
別の処理への変更も可能である。また第1の実施形態と
同様に、変数の使用方法や通信パケットの種別について
制限するものではない。
In the present embodiment, the second arithmetic processing (step S 213) and the upward shift processing (step S 217) are performed within a range that does not impair the function and purpose.
A change to another processing is also possible. Further, similarly to the first embodiment, there is no limitation on the usage of variables or the types of communication packets.

【0082】<第3の実施形態>次に本発明の第3の実
施形態について、図6及び図7を参照して説明する。図
6は図4に示す出力制御部200の制御手順の他の例を
示すフローチャートであり、図7は図6の各処理内容を
詳細に説明する為の補足図である。以下、第2の実施形
態で示した優先制御型ラウンドロビン制御より簡易な第
3の実施形態を説明する。
<Third Embodiment> Next, a third embodiment of the present invention will be described with reference to FIGS. FIG. 6 is a flowchart showing another example of the control procedure of the output control unit 200 shown in FIG. 4, and FIG. 7 is a supplementary diagram for explaining the details of each processing in FIG. Hereinafter, a third embodiment which is simpler than the priority control type round robin control shown in the second embodiment will be described.

【0083】出力制御部200は、パケット202をい
ずれかのFIFOから読み出すタイミングになると、各
FIFOのパケット蓄積状況を集計して、各優先度毎に
処理変数WD1R、WD2R、WD3Rを生成する(ス
テップS220)。前提として、扱うべき優先度の個数
は優先度1〜3の3種類であるとし、処理変数WD1R
〜WD3Rはそれぞれ優先度1〜3のFIFOのパケッ
ト蓄積状況を表現する。
At the timing when the packet 202 is read from any of the FIFOs, the output control unit 200 tallies up the packet accumulation status of each FIFO and generates the processing variables WD1R, WD2R, and WD3R for each priority (step S1). S220). As a premise, it is assumed that the number of priorities to be handled is three types of priorities 1 to 3, and the processing variable WD1R
To WD3R represent the packet accumulation status of the FIFOs of the priorities 1 to 3, respectively.

【0084】図7に示すステップS230及びステップ
S231は、上記処理変数WD1R、WD2R、WD3
Rの生成方法を説明したものである。出力制御部200
にとって制御対象となる各FIFOは、パケット蓄積状
況と選択優先度がテーブル形式に管理されており、あら
かじめ設定されたラウンドロビン検索順に各FIFOの
番号付けがなされる。図7において、例えば5番目のF
IFOは、優先度が3で送出可能なパケットを有するた
めその優先度に対応する処理変数WD3Rの5桁目に0
が設定され、処理変数WD1R及びWD2Rの5桁目は
1が設定される。また4番目のFIFOは送出可能なパ
ケットを持たないため、その優先度にかかわらずWD1
R〜WD3Rのそれぞれ4桁目に1が設定される。
Steps S230 and S231 shown in FIG. 7 correspond to the processing variables WD1R, WD2R, WD3.
This is a description of a method of generating R. Output control unit 200
For each FIFO to be controlled, the packet accumulation status and the selection priority are managed in a table format, and the FIFOs are numbered in a preset round robin search order. In FIG. 7, for example, the fifth F
Since the IFO has a packet that can be transmitted with a priority of 3, a 0 is placed in the fifth digit of the processing variable WD3R corresponding to the priority.
Is set, and 1 is set in the fifth digit of the processing variables WD1R and WD2R. Also, since the fourth FIFO has no packets that can be sent, WD1 does not matter regardless of its priority.
1 is set in the fourth digit of each of R to WD3R.

【0085】次に処理変数WD1R〜WD3Rのそれぞ
れについて下位方向にF回の巡回シフト処理を行い、新
たに制御変数WD1S〜WD3Sを生成する(ステップ
S221)。本制御は、先の実施形態と同様、制御変数
のビット配列をラウンドロビン制御の検索順序に対応さ
せるために行われる。図7のステップS231、S23
2は、上記巡回シフト処理の概要を示す。制御変数WD
1S〜WD3Sは、それぞれの最下位ビットがラウンド
ロビン処理の検索開始点であるFIFOに対応し、制御
変数の下位桁から上位桁方向へのビット配列は、各ビッ
トが対応するFIFOのラウンドロビン検索順序に相当
する。
Next, a cyclic shift process is performed F times in the lower direction for each of the processing variables WD1R to WD3R, and new control variables WD1S to WD3S are generated (step S221). This control is performed to make the bit array of the control variable correspond to the search order of the round robin control, as in the previous embodiment. Steps S231 and S23 in FIG.
2 shows the outline of the cyclic shift processing. Control variable WD
1S to WD3S correspond to a FIFO whose least significant bit is a search start point of the round robin process, and the bit arrangement from the lower digit to the upper digit of the control variable is a round robin search of the FIFO corresponding to each bit. Corresponds to the order.

【0086】次に各nビットの処理変数WD3S、WD
2S、WD1Sの各ビット配列を順に連結して新たなn
×3ビットの処理変数WDA[3n−1:0]を生成す
る(ステップS222)。処理変数WD1S〜WD3S
は制御対象となるFIFOの個数nと同じビット幅をも
つ変数であり、それらを3つ連結した処理変数WDAは
3×n桁のビット幅をもつ。図7のステップS232に
示す通り、変数の連結順序はより高い優先度のFIFO
状態を示す変数ほど下位側にくるように、すなわちWD
3RよりもWD2Rが、WD2RよりもWD1Rが下位
に位置するように配置されて連結される。
Next, each of the n-bit processing variables WD3S, WD
2S and WD1S bit sequences are sequentially connected to form a new n
The processing variable WDA [3n-1: 0] of 3 bits is generated (step S222). Processing variables WD1S to WD3S
Is a variable having the same bit width as the number n of FIFOs to be controlled, and a processing variable WDA obtained by connecting three of them has a bit width of 3 × n digits. As shown in step S232 of FIG. 7, the connection order of the variables is set to a higher priority FIFO.
The variable indicating the status is placed on the lower side, that is, WD
WD2R is arranged and connected so that WD2R is positioned lower than 3R and WD1R is positioned lower than WD2R.

【0087】連結処理の前後で処理変数のビット情報を
比較すれば、優先度pのFIFO状態を示す制御変数W
DpSのk桁目と、連結後の処理変数WDAの(p−
1)×n+k桁目が等しくなるように、WDAが生成さ
れる。以上の結果、連結後の制御変数WDAはその最下
位ビットがラウンドロビン検索の開始点に相当し、下位
から上位方向へのビット配列が、優先制御型ラウンドロ
ビン制御の連続する検索順序に一致することになる。
By comparing the bit information of the processing variable before and after the concatenation processing, the control variable W indicating the FIFO state of the priority p is obtained.
The k-th digit of DpS and (p−
1) The WDA is generated such that the × n + k digits are equal. As a result, the least significant bit of the linked control variable WDA corresponds to the start point of the round robin search, and the bit arrangement from the lower order to the upper order matches the continuous search order of the priority control type round robin control. Will be.

【0088】この制御変数WDAに対して1を加算する
第1の演算処理を行い、結果を処理変数WDB[3n−
1:0]=WDA+1とする(ステップS223)。つ
づいて処理変数WDAの各ビットを反転させた/WDA
と先の演算結果WDBの各ビット間で下記式のように論
理積演算(AND処理)を行う第2の演算ステップS2
24により、処理変数WDCを生成する(ステップS2
24)。WDC[3n−1:0]=/WDA.and.WD
A first operation for adding 1 to the control variable WDA is performed, and the result is stored in the processing variable WDB [3n-
1: 0] = WDA + 1 (step S223). Subsequently, each bit of the processing variable WDA is inverted / WDA
And a second operation step S2 for performing a logical AND operation (AND processing) between each bit of the operation result WDB and the following equation
24, a process variable WDC is generated (step S2).
24). WDC [3n-1: 0] = / WDA.and.WD
B

【0089】制御変数WDCの1であるビット位置は、
WDAの最も下位に存在する0のビット位置に対応して
おり、それゆえ以上の演算処理は、パケットを送出可能
なFIFOの中で最も優先度が高く、かつ、ラウンドロ
ビンの検索順序が一番若いFIFOを選択する制御に相
当する。図7のステップS232及びステップS233
では、優先度1であるいずれのFIFOもパケットを送
出することができず、優先度2のFIFOが選択された
例を示している。
The bit position of 1 of the control variable WDC is
It corresponds to the bit position of 0 which is present at the lowest position of WDA, and therefore, the further arithmetic processing has the highest priority among the FIFOs that can transmit packets, and the search order of round robin is the highest. This corresponds to control for selecting a young FIFO. Steps S232 and S233 in FIG.
In this example, none of the FIFOs having the priority 1 can transmit a packet, and the FIFO having the priority 2 is selected.

【0090】なお、処理変数WDCの全てのビットが0
であるときは(ステップS225でyes)、全ての優
先度についてパケットを送出可能なFIFOが存在して
いない状態であり、この時点で処理を停止する(ステッ
プS226)。処理変数WDCが全ビット0ではない場
合はいずれか1ビットが1であり、この際にビット幅が
3×nの処理変数WDCを、ビット幅がnの処理変数W
DDへ圧縮する(ステップS227)。この圧縮処理
は、処理変数WDCの各ビットの中で同じFIFOに対
応するビット同士の論理和を計算して1ビットに縮退さ
せる処理であり、処理変数WDCのk桁目とn+k桁目
と2n+k桁目の論理和を処理変数WDDのk桁目に対
応させる。本処理は処理変数の各ビットとFIFOとの
対応を1対1とし、処理変数に示されたラウンドロビン
検索結果の認識を容易にするために実施される。
Note that all bits of the processing variable WDC are 0
Is satisfied (yes in step S225), there is no FIFO capable of transmitting packets for all priorities, and the process is stopped at this point (step S226). If the processing variable WDC is not all bits 0, one of the bits is 1, and at this time, the processing variable WDC having a bit width of 3 × n is replaced with the processing variable W having a bit width of n.
The data is compressed to DD (step S227). This compression process is a process of calculating the logical sum of the bits corresponding to the same FIFO among the bits of the processing variable WDC and degenerating it into 1 bit. The k-th digit, the n + k-th digit, and the 2n + k of the processing variable WDC The logical OR of the digit is made to correspond to the k-th digit of the processing variable WDD. This processing is performed in order to make it easy to recognize the round robin search result indicated by the processing variable by making the correspondence between each bit of the processing variable and the FIFO one-to-one.

【0091】処理変数WDDは、上記圧縮処理を経てF
IFO毎の優先度情報が排除され、持ち得る情報は第1
の実施形態あるいは第2の実施形態に示す処理変数WD
Cに等しい。したがって、処理変数WDDに上位方向の
巡回シフト処理を実施し(ステップS228)、得られ
た変数WDEの1であるビットの桁数から、検索結果と
次の検索開始点を特定することができる(ステップS2
29)。
The processing variable WDD becomes F
The priority information for each IFO is eliminated, and the information that can be held is the first
Variable WD shown in the second embodiment or the second embodiment
Equal to C. Therefore, a cyclic shift process in the upper direction is performed on the process variable WDD (step S228), and the search result and the next search start point can be specified based on the number of digits of the 1 bit of the obtained variable WDE ( Step S2
29).

【0092】本実施形態が特徴とするラウンドロビン検
索は、各FIFOの状態を表現する処理変数を優先度毎
に別々に生成し、それらを検索順序に従って結合させた
後に1回の加算処理を行って、全ての優先度に跨るラウ
ンドロビン検索を一括して行う。同じく優先制御型のラ
ウンドロビン制御を実現する第2の実施形態に比べて、
検索動作を実現する加算処理とそれに伴う結果の判定処
理を複数回繰り返す必要がなく、より高速な検索処理が
実現される。また、第2の実施形態に比べて処理性能の
劣化要因となる分岐処理の回数が少なく、常に処理時間
を一定に保つことができる。全体処理速度を向上させる
ためには加算処理を高速に行う機構を導入すればよく、
所望の性能実現のための最適化が容易である。
In the round robin search featured in the present embodiment, processing variables expressing the state of each FIFO are separately generated for each priority, and they are combined in the search order, and then one addition process is performed. Then, a round robin search across all priorities is performed collectively. Similarly to the second embodiment that implements the priority control type round robin control,
It is not necessary to repeat the addition process for realizing the search operation and the process of judging the result a plurality of times, and a higher-speed search process is realized. Further, the number of times of branch processing that causes deterioration of processing performance is smaller than in the second embodiment, and the processing time can always be kept constant. In order to improve the overall processing speed, a mechanism for performing the addition processing at a high speed may be introduced.
Optimization for achieving desired performance is easy.

【0093】本実施形態を改良することでさらに処理を
簡易化して、高速に検索を行うことも可能である。ステ
ップS220の処理において各FIFO状態を示す処理
変数を優先度毎に生成する過程で、各優先度毎に選択可
能なFIFOが存在するか否か、すなわち生成する制御
変数の全てのビットが1であるか否かをそれぞれ把握
し、選択可能なFIFOを有する優先度クラスの中か
ら、最も優先度が高いものの制御変数を1つだけ選択し
て、第1の実施の形態に示す検索処理を実施する。
By improving this embodiment, it is possible to further simplify the processing and perform a high-speed search. In the process of generating the processing variables indicating each FIFO state for each priority in the process of step S220, it is determined whether there is a FIFO that can be selected for each priority, that is, all bits of the control variable to be generated are 1 It is determined whether or not there is, and only one control variable having the highest priority is selected from the priority classes having selectable FIFOs, and the search processing shown in the first embodiment is performed. I do.

【0094】この制御方法では、処理対象となる変数の
選択に時間がかかるものの、以降はビット数nの変数処
理を1回行うだけで検索処理が完了する。この制御方法
の利点は、第2の実施形態のように繰り返し検索処理を
行う必要がなく、また、第3の実施形態のように大きな
ビット幅のデータを扱う必要が無いことである。本制御
方法をハードウェア処理として実現し、検索動作に先立
つ処理変数の選択を容易に行う手段を有するのであれ
ば、全体処理の高速化と演算器の簡素化が望める。
In this control method, although it takes time to select a variable to be processed, the search process is completed only by performing variable processing of n bits once. The advantage of this control method is that it is not necessary to repeatedly perform the search processing as in the second embodiment, and it is not necessary to handle data having a large bit width as in the third embodiment. If this control method is realized as hardware processing and a means for easily selecting a processing variable prior to a search operation is provided, it is expected that the overall processing can be speeded up and the arithmetic unit can be simplified.

【0095】第2の実施形態あるいは第3の実施形態に
示す制御を実現するにあたって各FIFOとその優先度
が物理的に固定されている必要はなく、例えば装置内部
のプロセッサ処理により本実施形態のラウンドロビン制
御を行うのであれば、プロセッサ側で認識する各FIF
Oの優先度をある時点で変更することで、物理的に何ら
変更することなく、それ以降の該当FIFOの優先度を
変化させることができる。従って各優先度対応にFIF
Oを準備する必要がなく、例えば通信コネクション対応
にFIFOを割り当てるのであれば、制御すべきコネク
ションの数だけFIFOを具備すればよい。
In implementing the control shown in the second or third embodiment, each FIFO and its priority need not be physically fixed. If round robin control is performed, each FIF recognized by the processor
By changing the priority of O at a certain point in time, the priority of the corresponding FIFO can be changed without any physical change. Therefore, for each priority,
If it is not necessary to prepare O, for example, if FIFOs are assigned to correspond to communication connections, FIFOs may be provided for the number of connections to be controlled.

【0096】なお、図6に示すステップS225とステ
ップS227は順番を入れ替えることも可能である。本
実施形態では、ステップS224における第2の演算処
理を行った後の3×nビットの処理変数に対して、全ビ
ットが0であるか否かの判定を行っているが、変数の圧
縮のためのステップS227の後に判定処理を行っても
よい。この場合、扱うべき変数のビット幅がnビットで
あるため、判定をより簡単に行うことができる。
Note that the order of steps S225 and S227 shown in FIG. 6 can be changed. In the present embodiment, it is determined whether or not all the bits are 0 for the 3 × n-bit process variable after the second operation process in step S224 is performed. The determination process may be performed after step S227. In this case, since the bit width of the variable to be handled is n bits, the determination can be performed more easily.

【0097】また、ステップS227に示す処理変数の
圧縮や第2の演算処理ステップS224、上位方向のシ
フト処理ステップS228は、検索結果の特定を目的に
実施するものであり、同じ目的を達成するその他の手段
に置きかえることも可能である。別の手段を用いた場合
でも、処理変数WDDからラウンドロビン検索結果を特
定できればよい。先の実施形態と同様に、変数の使用方
法や通信パケットの種別について制限するものではな
く、また扱うべき優先度の個数も任意に設定が可能であ
る。
The compression of the processing variables shown in step S227, the second arithmetic processing step S224, and the upward shift processing step S228 are performed for the purpose of specifying the search result. It is also possible to replace the means. Even if another means is used, it is sufficient that the round robin search result can be specified from the processing variable WDD. As in the previous embodiment, there is no restriction on how to use variables or types of communication packets, and the number of priorities to be handled can be set arbitrarily.

【0098】<第4の実施形態>次に第3の実施形態に
示した優先制御型ラウンドロビン制御の適用例を、図8
〜図11を参照して説明する。本実施形態では、固定長
パケットを扱う通信制御装置の帯域制御機構に、先の優
先制御型ラウンドロビン制御を適用する。図8は通信装
置により実現すべき帯域制御の一例を示す。この通信制
御装置は、装置に入力される複数コネクションを多重し
て出力する過程で、コネクション毎に設定された最低帯
域を保証し、かつ、上限帯域の制限を行う。制御すべき
各コネクションに属するパケット302はいずれも長さ
が一律に固定された固定長パケットであり、コネクショ
ン対応に設けられたFIFO301に個別に格納され
る。出力制御部300は一定速度で自走する内部タイマ
ーを具備し、特定の時間周期τのなかで各FIFOから
読み出すパケットの量を制御することで上記帯域制御を
実現する。
<Fourth Embodiment> Next, an application example of the priority control type round robin control shown in the third embodiment will be described with reference to FIG.
This will be described with reference to FIGS. In the present embodiment, the priority control type round-robin control is applied to the bandwidth control mechanism of the communication control device that handles fixed-length packets. FIG. 8 shows an example of band control to be realized by the communication device. In the process of multiplexing and outputting a plurality of connections input to the device, the communication control device guarantees a minimum bandwidth set for each connection and limits an upper limit bandwidth. Each of the packets 302 belonging to each connection to be controlled is a fixed-length packet having a fixed length, and is individually stored in a FIFO 301 provided for the connection. The output control unit 300 includes an internal timer that runs at a constant speed, and realizes the above-described band control by controlling the amount of packets read from each FIFO within a specific time period τ.

【0099】出力制御部300は、コネクション毎の最
低保証帯域と上限帯域からそれぞれ制御変数MPR(Mi
nimum Packet Rate)及びPPR(Peak Packet Rate)
を算出して帯域制御処理に利用する。制御変数MPRと
PPRは、それぞれ設定された帯域が処理周期τの中で
どれだけのパケット送出量に相当するかを示している。
例えば処理周期τの中で1パケットを送出した場合に3
2kbps(bit per second)の帯域の使用に相当するよ
うにτの値を設定したとすれば、図8のコネクション#
3は、時間τ毎に少なくとも4個のパケット送出するこ
とが保証され、また8個より多くのパケットを送出しな
いように制限される。
The output control unit 300 determines a control variable MPR (MiR) based on the minimum guaranteed band and the upper limit band for each connection.
nimum Packet Rate) and PPR (Peak Packet Rate)
Is used for bandwidth control processing. The control variables MPR and PPR indicate how much the set bandwidth corresponds to the packet transmission amount in the processing cycle τ.
For example, if one packet is transmitted during the processing cycle τ, 3
If the value of τ is set to correspond to the use of the bandwidth of 2 kbps (bit per second), the connection # in FIG.
3 is guaranteed to send at least 4 packets every time τ and is restricted to not sending more than 8 packets.

【0100】以上の帯域制御は、第3の実施形態に示し
た優先制御型ラウンドロビン制御を適用することで実現
可能である。出力制御部300は処理周期τの中での実
際のパケット送出量を制御変数APR(Acquired Packe
t Rate)として各FIFO対応に計数する。制御変数A
PRは処理周期τの更新時に0にリセットされ、対応す
るFIFOからパケットを読み出すたびに1が加算され
る。各FIFOの優先度は図9(a)に示す通り、上述
のMPRとAPRあるいは、PPRとAPRの比較から
決定され、APRが増えるに従って段階的に優先度が下
がるように動的に制御される。
The above band control can be realized by applying the priority control type round robin control shown in the third embodiment. The output control unit 300 determines the actual packet transmission amount in the processing cycle τ by using a control variable APR (Acquired Packe).
t Rate) for each FIFO. Control variable A
The PR is reset to 0 when the processing cycle τ is updated, and is incremented by 1 each time a packet is read from the corresponding FIFO. As shown in FIG. 9A, the priority of each FIFO is determined from the comparison between the MPR and the APR or the comparison between the PPR and the APR, and is dynamically controlled so that the priority decreases gradually as the APR increases. .

【0101】以下、図10及び図11を用いてより詳細
な制御手順を説明する。図10は優先度の決定方法を示
すフローチャートである。第3の実施形態に示す優先制
御型ラウンドロビン制御により、F’番目のFIFO#
F’を選択してパケット302を送出した場合(ステッ
プS310)、まずFIFO#F’の累計パケット送出
量APR(F’)に1を加算する(ステップS31
1)。次に上限帯域に相当するPPR値とAPR値の比
較を行い、APR値がPPR値以上であれば(ステップ
S312でyes)、τ時間内に送出可能なパケット数
を既に満たしているとして当該FIFO#F’の優先度
を0に設定し(ステップS313)、以降は選択不可能
なFIFOとして扱う。
Hereinafter, a more detailed control procedure will be described with reference to FIGS. 10 and 11. FIG. 10 is a flowchart showing a method of determining the priority. By the priority control type round robin control shown in the third embodiment, the F′-th FIFO #
When F ′ is selected and the packet 302 is transmitted (step S310), first, 1 is added to the total packet transmission amount APR (F ′) of FIFO # F ′ (step S31).
1). Next, a comparison is made between the PPR value corresponding to the upper limit band and the APR value. If the APR value is equal to or greater than the PPR value (yes in step S312), it is determined that the number of packets that can be transmitted within τ time has already been satisfied, and the FIFO The priority of #F 'is set to 0 (step S313), and thereafter, it is treated as an unselectable FIFO.

【0102】また、APRがPPRに達していない場合
は(ステップS312でno)、最低保証帯域に相当す
るMPR値とAPR値の比較を行い、APR値がMPR
値以上であれば(ステップS314でyes)、τ時間
内に保証すべき最低パケット送出量を既に満たしている
として優先度2に設定する(ステップS315)。AP
R値がMPR値に達しておらず、ステップS312及び
314のどちらにも該当しない場合は(ステップS31
4でno)、未だτ時間内に保証すべき最低パケット送
出量を満たしていないとして優先度1に設定する(ステ
ップS316)。
If the APR has not reached the PPR (NO in step S312), the MPR value corresponding to the minimum guaranteed bandwidth is compared with the APR value, and the APR value is set to the MPR value.
If the value is equal to or more than the value (yes in step S314), it is determined that the minimum packet transmission amount to be guaranteed within the time τ is already satisfied, and the priority is set to 2 (step S315). AP
If the R value has not reached the MPR value and does not correspond to any of steps S312 and 314 (step S31
No at 4), the priority is set to 1 because the minimum packet transmission amount to be guaranteed within the time τ has not yet been satisfied (step S316).

【0103】こうしていずれかのFIFOからパケット
を送出するたびに、該当FIFOの選択優先度を再計算
する。本実施形態では、ラウンドロビン検索にて扱うべ
き優先度の個数は優先度1と優先度2の2段階でよく、
また優先度0のFIFOは内部にパケット302を有し
ていたとしても選択不可能なFIFOとして扱う。以上
の動的な優先度制御と併せて優先制御型のラウンドロビ
ン制御を行うことにより、複数のFIFOの中で最低保
証帯域を満たしていないFIFOを、既に保証帯域を満
たしたFIFOよりも優先して選択することができる。
また上限帯域を満たしたFIFOに対しては、処理周期
τの中でそれ以降送出権を与えないよう制限をすること
ができる。
Thus, every time a packet is transmitted from any of the FIFOs, the selection priority of the FIFO is recalculated. In the present embodiment, the number of priorities to be handled in the round robin search may be two levels of priority 1 and priority 2,
Further, the FIFO having the priority 0 is treated as an unselectable FIFO even if it has the packet 302 inside. By performing the priority control type round robin control together with the dynamic priority control described above, the FIFO which does not satisfy the minimum guaranteed bandwidth among the plurality of FIFOs is given priority over the FIFO which has already satisfied the guaranteed bandwidth. Can be selected.
Further, it is possible to limit the FIFO that satisfies the upper limit band so as not to grant the transmission right thereafter in the processing cycle τ.

【0104】図11は処理周期τ毎に実施するタイマー
リセット処理(処理サイクル更新)手順を示す。出力制
御部300は自走する内部タイマーtsを常に監視して
(ステップS320)、内部タイマーtsが閾値τに達
した際に(ステップS321)各種変数のリセット処理
を行う。ts=τを検知した際は、まずタイマー値ts
を0にリセットし(ステップS322)、ついで全FI
FOの制御変数APRを0にリセットする(ステップS
323)。次に全FIFOの選択優先度を1にリセット
するが(ステップS324)、最低保証帯域が0である
FIFOはAPR≧MPRの条件を既に満たしているた
め優先度2に設定する(ステップS325)。FIFO
毎の累計送出量や優先度は、時間τ周期でリセットされ
て繰り返し同様の帯域制御が実施される。
FIG. 11 shows a procedure of a timer reset process (processing cycle update) performed for each processing cycle τ. The output control unit 300 constantly monitors the self-running internal timer ts (step S320), and performs reset processing of various variables when the internal timer ts reaches the threshold τ (step S321). When ts = τ is detected, first, the timer value ts
Is reset to 0 (step S322), and then all FIs
Reset the control variable APR of the FO to 0 (step S
323). Next, the selection priority of all the FIFOs is reset to 1 (step S324). However, since the FIFO whose minimum guaranteed bandwidth is 0 already satisfies the condition of APR ≧ MPR, the priority is set to 2 (step S325). FIFO
The total transmission amount and priority for each are reset in a period of time τ, and the same band control is repeatedly performed.

【0105】以上、図10及び図11で用いた制御変数
MPR、PPR、APRはいずれも各FIFO対応に設
けられる。すなわち本実施形態の帯域制御方法は、コネ
クション毎に個別に設定した最低帯域の保証と上限帯域
の制限が可能である。また最低保証帯域を0に設定した
コネクションでは、いわゆるベストエフォート型の帯域
制御が実施され、最低保証帯域と上限帯域を等しく設定
したコネクションではいわゆるギャランティ型の帯域制
御が実施される。本実施形態に示した制御により、固定
長パケットを制御する通信制御装置にて高速で厳密な帯
域制御を実現することができる。
As described above, the control variables MPR, PPR, and APR used in FIGS. 10 and 11 are all provided for each FIFO. That is, the bandwidth control method of the present embodiment can guarantee the minimum bandwidth and limit the upper limit bandwidth individually set for each connection. In a connection in which the minimum guaranteed bandwidth is set to 0, so-called best-effort bandwidth control is performed, and in a connection in which the minimum guaranteed bandwidth and the upper limit bandwidth are set equal, so-called guarantee type bandwidth control is performed. According to the control shown in the present embodiment, high-speed and strict band control can be realized by a communication control device that controls fixed-length packets.

【0106】応用として、上限帯域に達したFIFOで
あっても、他に選択可能なFIFOがない場合に送出権
を与えるようにする制御も可能である。この場合、図9
(b)に示すようにAPRがPPRに達した以降は優先
度3とし、優先制御型ラウンドロビン検索にて扱う優先
度の個数を3段階とすればよい。本実施形態は優先度の
個数に制限を与えるものではなく、最低保証帯域や上限
帯域の他に中間帯域を設けてより緻密な帯域制御を実現
することもできる。
As an application, even if the FIFO reaches the upper limit band, it is possible to control to give a transmission right when there is no other selectable FIFO. In this case, FIG.
As shown in (b), after the APR reaches the PPR, the priority is set to 3, and the number of priorities handled in the priority control type round robin search may be set to three levels. In the present embodiment, the number of priorities is not limited, and more precise band control can be realized by providing an intermediate band in addition to the minimum guaranteed band and the upper limit band.

【0107】なお、図11に示す優先度のプリセット処
理のためのステップS325は、各FIFOの帯域設定
を考慮する必要があるため処理負荷が大きい。帯域制御
の精度よりも処理速度を優先する場合は、この処理ステ
ップS325を省略することができる。そのほか本実施
形態は、制御対象となるFIFOの個数や制御変数MP
R、PPRの計算方法、制御周期τの設定について制限
を設けるものではなく、発明の効果を損なわない範疇で
任意の選択が可能である。
Note that the processing load of step S325 for the priority preset processing shown in FIG. 11 is large because it is necessary to consider the setting of the bandwidth of each FIFO. When the processing speed is prioritized over the band control accuracy, the processing step S325 can be omitted. In addition, in the present embodiment, the number of FIFOs to be controlled and the control variable MP
There is no limitation on the calculation method of R and PPR and the setting of the control period τ, and any selection can be made within a range that does not impair the effects of the present invention.

【0108】[0108]

【発明の効果】以上説明したように請求項1記載の発明
によれば、算術演算や論理演算による一括したラウンド
ロビン検索が可能となるので、固定的であれ動的であ
れ、複数の優先度クラスを扱うラウンドロビン検索を高
速で、かつ、簡単な構成で実現することができる。
As described above, according to the first aspect of the present invention, it is possible to perform a round-robin search collectively by an arithmetic operation or a logical operation. A round robin search that handles classes can be realized at high speed with a simple configuration.

【0109】請求項2記載の発明によれば、バッファを
構成する各FIFOの状態を示すビット表現をラウンド
ロビンの検索順序に従って配置した第1の二進変数を生
成し、第1の二進変数の0であるビットのうち最も下位
のビット位置を特定し、特定されたビット位置から選択
すべきバッファを特定する一連の制御を行うので、選択
優先度が等しく設定された複数バッファのうちいずれか
1つを選択するラウンドロビン制御を、単純な演算処理
で高速に実現することができる。
According to the second aspect of the present invention, a first binary variable in which bit representations indicating the status of each FIFO constituting the buffer are arranged according to a round robin search order is generated, and the first binary variable is generated. A series of controls are performed to specify the least significant bit position of the 0 bits of the above, and to specify a buffer to be selected from the specified bit position. Therefore, any one of a plurality of buffers with the same selection priority set. Round robin control for selecting one can be realized at high speed by simple arithmetic processing.

【0110】請求項3記載の発明によれば、必要となる
第1の二進変数を簡単な方法で生成することができる。
According to the third aspect of the present invention, the required first binary variable can be generated by a simple method.

【0111】請求項4記載の発明によれば、特定の優先
度に注目して、最も高い優先度から順次検索優先度を下
げながら第1の二進変数を繰り返し生成し、第1の二進
変数に0であるビットが含まれる場合には、第1の二進
変数の0であるビットのうち最も下位のビット位置を特
定し、特定されたビット位置から選択すべきバッファを
特定する一連の制御を行うので、選択優先度が個別に設
定された複数のバッファのうちいずれか1つを選択する
優先制御型のラウンドロビン制御を、単純な演算処理で
実現することができる。
According to the fourth aspect of the present invention, the first binary variable is repeatedly generated while paying attention to a specific priority while sequentially lowering the search priority from the highest priority. If the variable includes a bit that is 0, a series of steps that identify the least significant bit position of the 0 bits of the first binary variable and identify a buffer to select from the identified bit position Since control is performed, priority control type round robin control for selecting any one of a plurality of buffers for which selection priorities are individually set can be realized by simple arithmetic processing.

【0112】請求項5記載の発明によれば、必要となる
第1の二進変数を簡単な方法で生成することができる。
According to the present invention, the required first binary variable can be generated by a simple method.

【0113】請求項6記載の発明によれば、全ての優先
度毎に第1の二進変数をあらかじめ準備しておくこと
で、より高速なラウンドロビン制御を実現することがで
きる。
According to the sixth aspect of the present invention, a higher-speed round robin control can be realized by preparing the first binary variable for every priority in advance.

【0114】請求項7記載の発明によれば、加算処理の
結果からパケットの送出権を割り当てるべきバッファを
容易に認識することが可能となる。
According to the seventh aspect of the present invention, it is possible to easily recognize a buffer to which a packet transmission right is to be assigned from the result of the addition processing.

【0115】請求項8記載の発明によれば、全ての優先
度毎について生成した二進変数を優先度が高いものから
下位に配置されるように結合して第1の二進変数を生成
し、第1の二進変数の0であるビットのうち最も下位の
ビット位置を特定し、特定されたビット位置から選択す
べきバッファを特定する一連の制御を行うので、請求項
6の態様に比べて、検索動作を実現する加算処理とそれ
に伴う結果の判定処理を複数回繰り返す必要がなく、よ
り高速な検索処理が実現される。また、請求項6の態様
に比べて処理性能の劣化要因となる分岐処理の回数が少
なく、常に処理時間を一定に保つことができる。
According to the eighth aspect of the present invention, the first binary variable is generated by combining the binary variables generated for all priorities so as to be arranged in descending order of priority. A series of controls for specifying the least significant bit position among the 0 bits of the first binary variable and specifying a buffer to be selected from the specified bit position. Thus, it is not necessary to repeat the addition process for realizing the search operation and the process of determining the result associated therewith a plurality of times, so that a higher-speed search process is realized. In addition, the number of times of branch processing that causes deterioration of processing performance is smaller than in the case of the sixth aspect, and the processing time can always be kept constant.

【0116】請求項9記載の発明によれば、必要となる
第1の二進変数を簡単な方法で生成することができる。
According to the ninth aspect, the required first binary variable can be generated by a simple method.

【0117】請求項10記載の発明によれば、第1の二
進変数に1を加算することで第1の二進変数の0である
ビットのうち最も下位のビット位置を容易に特定するこ
とができ、全てのバッファを対象とするラウンドロビン
検索を、制御対象とするバッファ数や優先度の階数によ
らず一括して行うことができる。
According to the tenth aspect, by adding 1 to the first binary variable, it is possible to easily specify the least significant bit position among the 0 bits of the first binary variable. Thus, the round robin search for all buffers can be performed collectively regardless of the number of buffers to be controlled and the priority level.

【0118】請求項11記載の発明によれば、加算処理
の結果からパケットの送出権を割り当てるべきバッファ
を容易に認識することが可能となる。
According to the eleventh aspect of the present invention, it is possible to easily recognize the buffer to which the packet transmission right is to be assigned from the result of the addition processing.

【0119】請求項12記載の発明によれば、加算処理
を高速化することができ、ラウンドロビン検索の処理速
度が制御対象とするバッファ数や優先度の階数に依存し
ない、より高速な処理を実現することができる。
According to the twelfth aspect of the present invention, the addition processing can be sped up, and the processing speed of the round-robin search does not depend on the number of buffers to be controlled and the priority rank. Can be realized.

【0120】請求項13記載の発明によれば、各バッフ
ァからのパケット送出量を計数し、バッファ毎に設けら
れた複数の閾値と先の計数値の比較から動的に各バッフ
ァの選択優先度を変化させて優先制御型のラウンドロビ
ン制御を行うので、最低帯域保証を含む綿密な帯域制御
を容易、かつ、高速に実現することができる。
According to the thirteenth aspect of the present invention, the number of packets transmitted from each buffer is counted, and the selection priority of each buffer is dynamically determined based on a comparison between a plurality of threshold values provided for each buffer and the previous count value. , The priority control type round-robin control is performed, so that it is possible to easily and quickly perform detailed bandwidth control including minimum bandwidth guarantee.

【0121】請求項14記載の発明によれば、帯域制御
の処理時間サイクルを固定することで、実現すべき帯域
の認識をパケット数の認識に置き換えて処理を単純化す
ることができる。
According to the fourteenth aspect, by fixing the processing time cycle of the band control, the recognition of the band to be realized can be replaced with the recognition of the number of packets, thereby simplifying the processing.

【0122】請求項15記載の発明によれば、個々のバ
ッファ毎に設定される上限帯域制限を実現することがで
きる。
According to the fifteenth aspect of the present invention, it is possible to realize the upper limit band setting set for each buffer.

【0123】請求項16記載の発明によれば、上記に示
すラウンドロビン制御方法により高速で、かつ、簡易に
パケット送出制御が可能なパケット制御装置を実現する
ことができる。
According to the sixteenth aspect of the present invention, it is possible to realize a packet control device capable of performing high-speed and simple packet transmission control by the round robin control method described above.

【0124】請求項17記載の発明によれば、上記に示
す帯域制御方法により、高速で、かつ、簡易にパケット
送出制御が可能なパケット制御装置を実現することがで
きる。
According to the seventeenth aspect of the present invention, it is possible to realize a packet control device capable of performing high-speed and simple packet transmission control by the above-described band control method.

【0125】請求項18記載の発明によれば、コネクシ
ョン毎に最低帯域保証あるいは上限帯域制限が可能なセ
ルスケジューリング機構を搭載するATMセル交換制御
装置を実現することができる。
According to the eighteenth aspect of the present invention, it is possible to realize an ATM cell switching control device equipped with a cell scheduling mechanism capable of guaranteeing the minimum bandwidth or limiting the upper bandwidth for each connection.

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

【図1】本発明に係るラウンドロビン制御方法及びパケ
ット制御装置の第1の実施形態を示す説明図
FIG. 1 is an explanatory diagram showing a first embodiment of a round robin control method and a packet control device according to the present invention;

【図2】第1の実施形態によるラウンドロビン制御手順
を示すフローチャート
FIG. 2 is a flowchart showing a round robin control procedure according to the first embodiment;

【図3】図2の各処理内容を詳細に説明するための説明
FIG. 3 is an explanatory diagram for explaining each processing content of FIG. 2 in detail;

【図4】第2の実施形態による優先制御型ラウンドロビ
ン制御方法及びパケット制御装置を示す説明図
FIG. 4 is an explanatory diagram showing a priority control type round robin control method and a packet control device according to a second embodiment;

【図5】第2の実施形態による優先制御型ラウンドロビ
ン制御手順を示すフローチャート
FIG. 5 is a flowchart showing a priority control type round robin control procedure according to the second embodiment;

【図6】第3の実施形態による優先制御型ラウンドロビ
ン制御手順を示すフローチャート
FIG. 6 is a flowchart showing a priority control type round robin control procedure according to the third embodiment;

【図7】図6の各処理内容を詳細に説明するための説明
FIG. 7 is an explanatory diagram for describing each processing content of FIG. 6 in detail;

【図8】第4の実施形態による帯域制御方法及びパケッ
ト制御装置を示す説明図
FIG. 8 is an explanatory diagram showing a bandwidth control method and a packet control device according to a fourth embodiment;

【図9】第4の実施形態による帯域制御方法の優先度決
定方法を示す説明図
FIG. 9 is an explanatory diagram showing a priority determining method of the bandwidth control method according to the fourth embodiment;

【図10】第4の実施形態による帯域制御方法の優先度
決定手順を示すフローチャート
FIG. 10 is a flowchart illustrating a priority determination procedure of the bandwidth control method according to the fourth embodiment;

【図11】第4の実施形態による帯域制御方法の処理サ
イクル更新手順を示すフローチャート
FIG. 11 is a flowchart illustrating a processing cycle update procedure of the bandwidth control method according to the fourth embodiment;

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

100,200,300 出力制御部 101,201,301 バッファ(FIFO) 102,202,303 パケット 100, 200, 300 Output control unit 101, 201, 301 Buffer (FIFO) 102, 202, 303 Packet

Claims (18)

【特許請求の範囲】[Claims] 【請求項1】 複数の選択候補のいずれか1つを選択す
るラウンドロビン制御方法であって、 前記複数の選択候補の各々が選択可能であるか否かを示
す状態表現を定義して、全ての選択候補の前記状態表現
をラウンドロビン制御の検索順序に従って結合した制御
変数を生成し、 前記制御変数に対して算術演算あるいは論理演算して前
記制御変数に含まれる特定の状態表現を選択し、 前記特定された状態表現から選択すべき選択候補を特定
するラウンドロビン制御方法。
1. A round-robin control method for selecting any one of a plurality of selection candidates, wherein a state expression indicating whether each of the plurality of selection candidates is selectable is defined, and A control variable is generated by combining the state expressions of the selection candidates according to the search order of round robin control, and a specific state expression included in the control variable is selected by performing an arithmetic operation or a logical operation on the control variable, A round-robin control method for specifying a selection candidate to be selected from the specified state expression.
【請求項2】 受信パケットが格納された複数のバッフ
ァのいずれか1つをラウンドロビン方式により選択して
そのバッファに格納されたパケットを送信するラウンド
ロビン制御方法において、 前記複数のバッファに対するラウンドロビン検索順序の
k番目のバッファがパケットを送出可能である場合に最
下位からk番目のビットを0に設定してそれ以外は1に
設定した第1の二進変数を生成する第1の制御手順と、 前記第1の二進変数の0であるビットのうち最も下位に
位置するビットを特定する第2の制御手順と、 前記第2の制御手順により特定されたビット位置から選
択すべきバッファを特定する第3の制御手順とを、 有することを特徴とするラウンドロビン制御方法。
2. A round-robin control method for selecting one of a plurality of buffers storing received packets by a round-robin method and transmitting the packets stored in the buffers, the round-robin control method comprising: A first control procedure for generating a first binary variable in which the k-th bit from the least significant bit is set to 0 when the k-th buffer in the search order can transmit a packet and otherwise set to 1 A second control procedure for specifying the least significant bit among the bits of the first binary variable that are 0, and a buffer to be selected from the bit positions specified by the second control procedure. And a third control procedure to be specified.
【請求項3】 前記複数のバッファはあらかじめ固定的
な順序付けがなされており、 前記第1の制御手順は、 前記複数のバッファに対する前記あらかじめ固定的に決
められた順序のk番目のバッファがパケットを送出可能
である場合に最下位から数えてk番目のビットを0に設
定してそれ以外は1に設定した二進変数を生成し、 ラウンドロビン検索の開始点のバッファに対応するビッ
トが最下位桁にくるまで前記二進変数を巡回シフトさせ
て前記第1の二進変数を生成することを特徴とする請求
項2に記載のラウンドロビン制御方法。
3. The method according to claim 1, wherein the plurality of buffers have a fixed order in advance, and the first control procedure includes a step in which the k-th buffer in the fixed order with respect to the plurality of buffers transfers packets. If transmission is possible, a binary variable with the kth bit counted from the least significant bit set to 0 and otherwise set to 1 is generated, and the bit corresponding to the buffer at the start point of the round robin search is the least significant bit. 3. The method of claim 2, wherein the first binary variable is generated by cyclically shifting the binary variable until it reaches a digit.
【請求項4】 あらかじめ選択優先度が設定され、受信
パケットが格納された複数のバッファの選択可能なバッ
ファのうち、最も選択優先度が高いバッファからいずれ
か1つをラウンドロビン方式により選択してそのバッフ
ァに格納されたパケットを送信するラウンドロビン制御
方法において、 前記複数のバッファに対するラウンドロビン検索の対象
とする選択優先度を検索優先度として管理する優先度管
理手順と、 前記複数のバッファに対するラウンドロビン検索順序の
k番目のバッファがパケットを送出可能であって、か
つ、検索優先度と同じ選択優先度である場合に、最下位
から数えてk番目のビットを0に設定してそれ以外は1
に設定した第1の二進変数を生成する第1の制御手順
と、 最も高い優先度から順次検索優先度を下げながら前記第
1の制御手順を繰り返して、その第1の二進変数が0で
あるビットを含む場合には、前記第1の二進変数の0で
あるビットのうち最も下位に位置するビットを特定する
第2の制御手順と、 前記第2の制御手順により特定されたビット位置から選
択すべきバッファを特定する第3の制御手順とを、 有することを特徴とするラウンドロビン制御方法。
4. A method in which a selection priority is set in advance and one of a plurality of buffers which can store a received packet and which can be selected is selected from buffers having the highest selection priority by a round robin method. A round robin control method for transmitting packets stored in the buffer, wherein a priority management procedure of managing a selection priority to be a target of a round robin search for the plurality of buffers as a search priority; and a round for the plurality of buffers. If the k-th buffer in the Robin search order is capable of transmitting a packet and has the same selection priority as the search priority, the k-th bit counting from the least significant bit is set to 0, and otherwise 1
And the first control procedure is repeated while sequentially lowering the search priority from the highest priority, so that the first binary variable becomes 0. A second control procedure for specifying the least significant bit among the bits of the first binary variable that are 0, and a bit specified by the second control procedure. And a third control procedure for specifying a buffer to be selected from the position.
【請求項5】 前記複数のバッファはあらかじめ固定的
な順序付けがなされており、 前記第1の制御手順は、 前記複数のバッファに対する前記あらかじめ固定的に決
められた順序のk番目のバッファがパケットを送出可能
であって、かつ、検索優先度と同じ選択優先度である場
合に、最下位から数えてk番目のビットを0に設定して
それ以外は1に設定した二進変数を生成し、 ラウンドロビン検索の開始点のバッファに対応するビッ
トが最下位桁にくるまで前記二進変数を巡回シフトさせ
て前記第1の二進変数を生成することを特徴とする請求
項4に記載のラウンドロビン制御方法。
5. The method according to claim 1, wherein the plurality of buffers have a fixed order in advance, and the first control procedure includes a step in which the k-th buffer in the fixed order with respect to the plurality of buffers transfers packets. If it is possible to transmit and has the same selection priority as the search priority, a binary variable is generated in which the k-th bit counted from the least significant bit is set to 0 and the others are set to 1; The round according to claim 4, wherein the first binary variable is generated by cyclically shifting the binary variable until the bit corresponding to the buffer at the start point of the round robin search is at the least significant digit. Robin control method.
【請求項6】 前記第1の制御手順は、前記第1の二進
変数をあらかじめ各優先度毎に設定することを特徴とす
る請求項4又は5に記載のラウンドロビン制御方法。
6. The round robin control method according to claim 4, wherein the first control procedure sets the first binary variable in advance for each priority.
【請求項7】 前記第3の制御手順は、 k番目のビットが前記あらかじめ固定的に決められた順
序のk番目のバッファに対応するまで前記第4の二進変
数を巡回シフトさせて第5の二進変数を生成し、 前記第5の二進変数の1であるビットの位置から選択す
べきバッファを特定することを特徴とする請求項6に記
載のラウンドロビン制御方法。
7. The third control procedure comprises the steps of: cyclically shifting the fourth binary variable until a kth bit corresponds to the kth buffer in the predetermined fixed order; 7. The round robin control method according to claim 6, wherein a binary buffer is generated, and a buffer to be selected is specified from a position of a bit that is 1 of the fifth binary variable.
【請求項8】 あらかじめ選択優先度pが設定され、受
信パケットが格納されたn個のバッファの選択可能なバ
ッファのうち、最も選択優先度が高いバッファからいず
れか1つをラウンドロビン方式により選択してそのバッ
ファに格納されたパケットを送信する通信制御方法にお
いて、 前記複数のバッファに対するラウンドロビン検索順序の
k番目のバッファがパケットを送出可能であって、か
つ、p番目に高い優先度である場合に、最下位から数え
て(p−1)×n+k番目のビットを0に設定してそれ
以外は1に設定した第1の二進変数を生成する第1の制
御手順と、 前記第1の二進変数の0であるビットのうち最も下位に
位置するビットを特定する第2の制御手順と、 前記第2の制御手順にて特定されたビット位置から選択
すべきバッファを特定する第3の制御手順とを、 有することを特徴とするラウンドロビン制御方法。
8. A selection priority p is set in advance, and one of the n selectable buffers in which received packets are stored is selected by a round robin method from a buffer having the highest selection priority. And transmitting a packet stored in said buffer, wherein the k-th buffer in the round-robin search order for said plurality of buffers is capable of transmitting packets and has a p-th highest priority. A first control procedure for generating a first binary variable in which the (p−1) × n + kth bit counted from the least significant bit is set to 0, and otherwise set to 1; A second control procedure for specifying the least significant bit of the 0 bits of the binary variable, and a buffer to be selected from the bit positions specified in the second control procedure. Round robin control method characterized by a third control procedure to locate § has.
【請求項9】 前記複数のバッファはあらかじめ固定的
な順序付けがなされており、 前記第1の制御手順は、 前記あらかじめ固定的に決められた順序のk番目のバッ
ファがパケットを送出可能であって、かつ、注目する優
先度pである場合に、最下位から数えてk番目のビット
を0に設定してそれ以外は1に設定した二進変数を全て
の優先度毎に生成し、 前記二進変数の全てをラウンドロビン検索の開始点のバ
ッファに対応するビットが最下位桁にくるまで巡回シフ
トさせた後、優先度が高いものほど下位に位置するよう
に連結して前記第1の二進変数を生成することを特徴と
する請求項8に記載のラウンドロビン制御方法。
9. The method according to claim 1, wherein the plurality of buffers have a fixed order in advance, and the first control procedure is such that the k-th buffer in the predetermined order can transmit packets. And when the priority is the priority p of interest, a binary variable in which the k-th bit counted from the least significant bit is set to 0 and the others are set to 1 is generated for every priority, All the ternary variables are cyclically shifted until the bit corresponding to the buffer at the start point of the round robin search comes to the least significant digit, and then connected such that the higher priority is located lower, the first binary 9. The method according to claim 8, wherein a hexadecimal variable is generated.
【請求項10】 前記第2の制御手順は、 前記第1の二進変数に1を加算して第2の二進変数を生
成し、 前記第1の二進変数の各ビットを反転させて第3の二進
変数を生成し、 前記第2の二進変数と第3の二進変数の各同じビット位
置のビットを論理積演算して第4の二進変数を生成し、 前記第4の二進変数の1であるビットの位置から前記第
1の二進変数の0であるビットのうち最も下位のビット
位置を特定することを特徴とする請求項2から9のいず
れか1つに記載のラウンドロビン制御方法。
10. The second control procedure includes adding 1 to the first binary variable to generate a second binary variable, and inverting each bit of the first binary variable. Generating a third binary variable; performing a logical AND operation on the bits at the same bit position of the second binary variable and the third binary variable to generate a fourth binary variable; 10. The position of the least significant bit among the 0 bits of the first binary variable is specified from the position of the 1 binary bit of the first binary variable. The described round robin control method.
【請求項11】 前記第3の制御手順は、 前記第4の二進変数をnビットずつ分離して第5の二進
変数をp個生成し、 全ての第5の二進変数の各同じビット位置のビットを論
理積演算して第6の二進変数を生成し、 k番目のビットがあらかじめ固定的に決められた順序の
k番目のバッファに対応するまで、前記第6の二進変数
を巡回シフトさせて第7の二進変数を生成し、 前記第7の二進変数の1であるビットの位置から選択す
べきバッファを特定することを特徴とする請求項10に
記載のラウンドロビン制御方法。
11. The third control procedure may include: separating the fourth binary variable by n bits to generate p fifth binary variables, wherein each of the fifth binary variables has the same value. ANDing the bits at the bit positions to produce a sixth binary variable, the sixth binary variable until the kth bit corresponds to the kth buffer in a predetermined fixed order. 11. A round-robin method according to claim 10, wherein a seventh binary variable is generated by cyclically shifting, and a buffer to be selected is specified from a position of a bit that is 1 of the seventh binary variable. Control method.
【請求項12】 前記加算処理は、演算を高速化するた
めに桁上げビットの伝播機構が階層化されていることを
特徴とする請求項7、10、11のいずれか1つに記載
のラウンドロビン制御方法。
12. The round according to claim 7, wherein in the addition processing, a carry bit propagation mechanism is hierarchized in order to speed up the operation. Robin control method.
【請求項13】 請求項8から請求項11に記載のラウ
ンドロビン制御を用いた帯域制御方法であって、 前記パケットは固定長パケットであり、所定時間の制御
サイクルを設定して前記制御サイクル内で前記複数のバ
ッファのそれぞれからのパケット送出量を計数し、 前記バッファの各々に個別に設定された少なくとも1つ
以上の閾値と前記計数値を比較して各バッファの選択優
先度pを動的に決定し、 制御サイクル内でパケット送出量が多くなるほど当該バ
ッファの選択優先度pが下がるように制御することを特
徴とする帯域制御方法。
13. The bandwidth control method using round robin control according to claim 8, wherein the packet is a fixed-length packet, and a control cycle of a predetermined time is set, and The number of packets sent from each of the plurality of buffers is counted, and the count value is compared with at least one or more thresholds individually set for each of the buffers to dynamically select the priority p of each buffer. And controlling the selection priority p of the buffer to decrease as the packet transmission amount increases in a control cycle.
【請求項14】 所定サイクルを新たに開始する毎に、
前記パケット送出量の計数値をクリアして再度計数を開
始することを特徴とする請求項13に記載の帯域制御方
法。
14. Every time a predetermined cycle is newly started,
14. The bandwidth control method according to claim 13, wherein the count value of the packet transmission amount is cleared and counting is started again.
【請求項15】 前記パケット送出量の計数値がそのバ
ッファに設定された最大の閾値以上になった以降は、制
御サイクルが更新するまでの間、当該バッファからのパ
ケットを送出しないよう制限することを特徴とする請求
項14に記載の帯域制御方法。
15. After the count value of the packet transmission amount becomes equal to or more than the maximum threshold value set for the buffer, the packet is not transmitted from the buffer until the control cycle is updated. The bandwidth control method according to claim 14, wherein:
【請求項16】 請求項1から12のいずれか1つに記
載のラウンドロビン制御方法を用いたパケット制御装置
であって、 複数のポートから受信したパケットを複数のバッファの
いずれか1つに格納し、前記バッファのいずれか1つを
選択してパケットを送出することを特徴とするパケット
制御装置。
16. A packet control device using the round-robin control method according to claim 1, wherein packets received from a plurality of ports are stored in any one of a plurality of buffers. And a packet controller for selecting one of the buffers and transmitting the packet.
【請求項17】 請求項13から15のいずれか1つに
記載の帯域制御方法を用いたパケット制御装置であっ
て、 複数のポートから受信した固定長パケットを複数のバッ
ファのいずれか1つに格納し、前記バッファのいずれか
1つを選択してパケットを送出することを特徴とするパ
ケット制御装置。
17. A packet control device using the bandwidth control method according to claim 13, wherein a fixed-length packet received from a plurality of ports is transferred to one of a plurality of buffers. A packet control device for storing and transmitting a packet by selecting one of the buffers.
【請求項18】 前記固定長パケットはATMセルであ
って、前記バッファの各々に個別に設定された少なくと
も1つ以上の閾値は、そのバッファに対応するATMコ
ネクションに割り当てられた最低保証帯域又は上限帯域
又はその双方に関連して導出されることを特徴とする請
求項17に記載のパケット制御装置。
18. The fixed-length packet is an ATM cell, and at least one or more thresholds individually set for each of the buffers are a minimum guaranteed bandwidth or an upper limit assigned to an ATM connection corresponding to the buffer. 18. The packet control device according to claim 17, wherein the packet control device is derived in relation to a band or both.
JP2001068590A 2001-03-12 2001-03-12 Round-robin control, method, band control method and packet controller Pending JP2002271385A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001068590A JP2002271385A (en) 2001-03-12 2001-03-12 Round-robin control, method, band control method and packet controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001068590A JP2002271385A (en) 2001-03-12 2001-03-12 Round-robin control, method, band control method and packet controller

Publications (1)

Publication Number Publication Date
JP2002271385A true JP2002271385A (en) 2002-09-20

Family

ID=18926755

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001068590A Pending JP2002271385A (en) 2001-03-12 2001-03-12 Round-robin control, method, band control method and packet controller

Country Status (1)

Country Link
JP (1) JP2002271385A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008236265A (en) * 2007-03-19 2008-10-02 Fujitsu Ltd Communication equipment and output control method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008236265A (en) * 2007-03-19 2008-10-02 Fujitsu Ltd Communication equipment and output control method
US8213445B2 (en) 2007-03-19 2012-07-03 Fujitsu Limited Communication device and method for controlling the output of packets

Similar Documents

Publication Publication Date Title
US6049526A (en) Enhanced integrated rate based available bit rate scheduler
US8014288B1 (en) Packet latency based arbitration technique for a packet switch
KR100933917B1 (en) Bandwidth guarantee and overload protection method in network switch
US8654645B2 (en) Systems and methods for dropping data using a drop profile
US7372857B1 (en) Methods and apparatus for scheduling tasks
US8036117B1 (en) Dequeuing and congestion control systems and methods
US7000061B2 (en) Caching queue status updates
US7457296B2 (en) Method and apparatus for sorting packets in packet schedulers using a connected trie data structure
JP2001053807A (en) Packet scheduling device
JPH0856230A (en) Switching system
US20050038984A1 (en) Internal synchronization control for adaptive integrated circuitry
JP2003509902A (en) Apparatus and method for packet scheduling
US20060176883A1 (en) Scheduling items using mini-quantum values
WO2006107574A2 (en) Assigning resources to items such as processing contexts for processing packets
US20040095885A1 (en) Priority queuing method and apparatus
US20060274779A1 (en) Filling token buckets of schedule entries
JPH11275112A (en) Cell transmission scheduling device in atm network
US7684422B1 (en) Systems and methods for congestion control using random early drop at head of buffer
US7565496B2 (en) Sharing memory among multiple information channels
Kogan et al. Balancing work and size with bounded buffers
US6836475B2 (en) Method and apparatus for traffic shaping for IP router queues/egress
Chaskar et al. Fair scheduling with tunable latency: A Round Robin approach
US7350208B1 (en) Method and apparatus for scheduling using a resource variable decreased by amounts corresponding to the efficiency of the resource
US20090182714A1 (en) Sorting apparatus and method
JP2002271385A (en) Round-robin control, method, band control method and packet controller

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20031121