JP6237156B2 - Scheduling device, cell processing device, and traffic shaping method - Google Patents

Scheduling device, cell processing device, and traffic shaping method Download PDF

Info

Publication number
JP6237156B2
JP6237156B2 JP2013242651A JP2013242651A JP6237156B2 JP 6237156 B2 JP6237156 B2 JP 6237156B2 JP 2013242651 A JP2013242651 A JP 2013242651A JP 2013242651 A JP2013242651 A JP 2013242651A JP 6237156 B2 JP6237156 B2 JP 6237156B2
Authority
JP
Japan
Prior art keywords
time
cell
current time
port
output
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.)
Active
Application number
JP2013242651A
Other languages
Japanese (ja)
Other versions
JP2015103937A (en
Inventor
勉 國正
勉 國正
偉久 竹内
偉久 竹内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP2013242651A priority Critical patent/JP6237156B2/en
Publication of JP2015103937A publication Critical patent/JP2015103937A/en
Application granted granted Critical
Publication of JP6237156B2 publication Critical patent/JP6237156B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明はスケジューリング装置、セル処理装置及びトラヒックシェーピング方法に関し、例えば、交換装置や伝送装置に適用されるATM(Asynchronous Transfer Mode)セル処理装置のトラヒックシェーピングに適用し得るものである。   The present invention relates to a scheduling device, a cell processing device, and a traffic shaping method, and can be applied to traffic shaping of an ATM (Asynchronous Transfer Mode) cell processing device applied to an exchange device or a transmission device, for example.

ATMセルのトラヒックシェーピング方法については、例えば、特許文献1に記載の方法がある。特許文献1の記載技術は、到着セルを複数のキューのうちの対応するキューに記憶し、そのキューの格納セルに対する読出時刻を、連想メモリ(Content Addressable Memory;以下、CAMと呼ぶ)を用いて設定して、設定した読出時刻に、該当するキューにセル出力を指示することにより、スケジューリングを行うものである。   As a traffic shaping method for ATM cells, for example, there is a method described in Patent Document 1. The technology described in Patent Document 1 stores an arrival cell in a corresponding queue among a plurality of queues, and uses a content addressable memory (hereinafter referred to as CAM) to read a read time for the storage cell of the queue. The scheduling is performed by instructing cell output to the corresponding queue at the set read time.

特開2002−368785号公報JP 2002-368785 A

特許文献1の記載技術は、以下のような課題を有する。   The technique described in Patent Document 1 has the following problems.

<課題1>
図9に示すように、対向するATMセル処理装置1、1間では、複数(図9では4)のATMポートP1〜P4のATMセルを多重して伝送し、各ATMセル処理装置1においては、対向するATMセル処理装置から到来した多重ATMセルを、ATMポートP1〜P4毎に多重分離して自己の各ATMポートP1〜P4に振り分ける。そして、各ATMセル処理装置1において、多重分離されたATMセルのATMポートP1〜P4毎に、ATMセルのトラヒックシェーピングを実施する場合、特許文献1に記載のトラヒックシェーピング方法を適用したスケジューリング装置2をATMポートの数(=4)だけ設けなければならず、ATMセル処理装置1のハードウェア規模を大規模にし、若しくは、ソフトウェア処理の処理量を多大にする。
<Problem 1>
As shown in FIG. 9, between ATM cell processing devices 1 and 1 facing each other, ATM cells of a plurality (4 in FIG. 9) of ATM ports P1 to P4 are multiplexed and transmitted, and each ATM cell processing device 1 Multiplexed ATM cells arriving from the opposing ATM cell processing device are demultiplexed for each ATM port P1 to P4 and distributed to the respective ATM ports P1 to P4. When each ATM cell processing device 1 performs ATM cell traffic shaping for each ATM port P1 to P4 of the demultiplexed ATM cell, the scheduling device 2 to which the traffic shaping method described in Patent Document 1 is applied. Must be provided by the number of ATM ports (= 4), and the hardware scale of the ATM cell processing apparatus 1 is increased or the processing amount of software processing is increased.

<課題2>
特許文献1の記載技術では、CAMへのセル入力時や出力時における各処理において、実時刻と次読出時刻との時刻の大小比較を行っている。実時刻を計時する時刻カウンタは、一般的な実装では、カウンタ値が有限なものを適用するので、カウンタ値は周期的に0へ戻る。カウント値の一巡周期をポート数等に応じて単純に定めた場合には、両時刻の大小比較は、単なる数値の大小比較となる。そのため、一方についてのみカウンタ値のリセットが生じたような場合には、比較判定結果が本来の結果から逆になってしまう場合がある。このような点に鑑み、特許文献1の記載技術では、理論的に定められる周期の3倍の周期を有する時刻カウンタを適用し、CAMからの読出時刻を定期的に更新する処理が提案されている。しかしながら、一巡周期が長い時刻カウンタを適用した場合には、処理の複雑化や構成の複雑化を招くことが懸念される。
<Problem 2>
In the technique described in Patent Document 1, the actual time and the next read time are compared in each process at the time of cell input or output to the CAM. In a general implementation, a time counter that counts the actual time uses a finite counter value, so that the counter value periodically returns to zero. When the round cycle of the count value is simply determined according to the number of ports or the like, the magnitude comparison at both times is simply a magnitude comparison. Therefore, when the counter value is reset only for one of the cases, the comparison determination result may be reversed from the original result. In view of such a point, the technique described in Patent Document 1 proposes a process of periodically updating the reading time from the CAM by applying a time counter having a period three times the theoretically determined period. Yes. However, when a time counter with a long round cycle is applied, there is a concern that the processing may be complicated and the configuration may be complicated.

そのため、ハードウェア規模を小さくできる、若しくは、処理を簡単にでき、構成を簡易にできるスケジューリング装置、セル処理装置及びトラヒックシェーピング方法が望まれている。   Therefore, a scheduling device, a cell processing device, and a traffic shaping method that can reduce the hardware scale, simplify processing, and simplify the configuration are desired.

第1の本発明は、入力セルのヘッダに含まれているコネクション番号に基づいて、コネクション番号毎に用意されている複数のキューのうちの対応するキューに入力セルを格納し、上記各キューについて、格納セルに対する次出力時刻を設定し、現時刻が設定されている次出力時刻に合致する格納セルの出力指示を形成するスケジューリング装置において、(1)コネクション番号毎に次出力時刻を格納し、入力された現時刻に合致する次出力時刻の検索が所定周期で指示される毎に検索を実行する連想メモリ手段と、(2)現時刻をカウントアップする現時刻時計手段と、(3)現時刻と基本的な更新周期が同じマスタ時刻を計時するマスタ時計手段と、(4)上記連想メモリ手段の検索時に、現時刻に合致する次出力時刻が複数あった場合以外では、上記現時刻時計手段による現時刻をカウントアップさせ、現時刻に合致する次出力時刻が複数あった場合には、上記現時刻時計手段による現時刻のカウントアップを停止させ、この停止により現時刻がマスタ時刻より遅れた分を、現時刻に合致する次出力時刻がないときに、上記現時刻時計手段のカウントアップ周期を速めて解消させる現時刻時計制御手段とを有し、(5)入力セルのヘッダにポート番号が含まれており、上記連想メモリ手段、上記現時刻時計手段、上記マスタ時計手段及び上記現時刻時計制御手段がポート番号毎に設けられ、上記各連想メモリ手段が検索するタイミングがずれていることを特徴とする。 According to the first aspect of the present invention, an input cell is stored in a corresponding queue among a plurality of queues prepared for each connection number based on the connection number included in the header of the input cell. In the scheduling device for setting the next output time for the storage cell and forming the output instruction of the storage cell that matches the next output time for which the current time is set, (1) storing the next output time for each connection number; An associative memory means for executing a search every time a search for a next output time that matches the input current time is instructed at a predetermined period; (2) a current time clock means for counting up the current time; and (3) a current time clock means. Master clock means for measuring a master time having the same basic update cycle as the time, and (4) when there are a plurality of next output times that match the current time when searching the associative memory means. Otherwise, the current time by the current time clock means is counted up, and if there are a plurality of next output times that match the current time, the current time count by the current time clock means is stopped, the amount that the current time is later than the master time, when there is no next output time matching the current time, possess a current time clock control means for eliminating expediting the count-up period of the current time clock means, (5 The port number is included in the header of the input cell. The associative memory means, the current time clock means, the master clock means, and the current time clock control means are provided for each port number, and each associative memory means The search timing is shifted .

第2の本発明は、コネクション番号毎に複数のキューを有するセル記憶手段と、入力セルのヘッダに含まれているコネクション番号に基づいて、複数のキューのうちの対応するキューに入力セルを格納し、上記各キューについて、格納セルに対する次出力時刻を設定し、現時刻が設定されている次出力時刻に合致する格納セルの出力指示を形成するスケジューリング装置とを有するセル処理装置において、上記スケジューリング装置として、第1の本発明のスケジューリング装置を適用したことを特徴とする。   According to the second aspect of the present invention, cell storage means having a plurality of queues for each connection number and the input cells are stored in the corresponding queues among the plurality of queues based on the connection numbers included in the headers of the input cells. A scheduling unit configured to set a next output time for the storage cell for each of the queues and form an output instruction for the storage cell that matches the next output time for which the current time is set. As a device, the scheduling device according to the first aspect of the present invention is applied.

第3の本発明は、入力セルのヘッダに含まれているコネクション番号に基づいて、コネクション番号毎に用意されている複数のキューのうちの対応するキューに入力セルを格納し、上記各キューについて、格納セルに対する次出力時刻を設定し、現時刻が設定されている次出力時刻に合致する格納セルの出力指示を形成するスケジューリング装置におけるトラヒックシェーピング方法において、(1)連想メモリ手段は、コネクション番号毎に次出力時刻を格納し、入力された現時刻に合致する次出力時刻の検索が所定周期で指示される毎に検索を実行し、(2)現時刻時計手段は、現時刻をカウントアップし、(3)マスタ時計手段は、現時刻と基本的な更新周期が同じマスタ時刻を計時し、(4)現時刻時計制御手段は、上記連想メモリ手段の検索時に、現時刻に合致する次出力時刻が複数あった場合以外では、上記現時刻時計手段による現時刻をカウントアップさせ、現時刻に合致する次出力時刻が複数あった場合には、上記現時刻時計手段による現時刻のカウントアップを停止させ、この停止により現時刻がマスタ時刻より遅れた分を、現時刻に合致する次出力時刻がないときに、上記現時刻時計手段のカウントアップ周期を速めて解消させ、(5)入力セルのヘッダにポート番号が含まれており、上記連想メモリ手段、上記現時刻時計手段、上記マスタ時計手段及び上記現時刻時計制御手段がポート番号毎に設けられ、上記各連想メモリ手段が検索するタイミングがずれていることを特徴とする。 According to a third aspect of the present invention, an input cell is stored in a corresponding queue among a plurality of queues prepared for each connection number based on the connection number included in the header of the input cell. In the traffic shaping method in the scheduling device for setting the next output time for the storage cell and forming an output instruction for the storage cell that matches the next output time for which the current time is set, (1) the associative memory means includes a connection number Each time the next output time is stored, the search is executed every time a search for the next output time that matches the input current time is instructed in a predetermined cycle. (2) The current time clock means counts up the current time (3) The master clock means measures the master time having the same basic update cycle as the current time, and (4) the current time clock control means is the above associative memory. When there is a plurality of next output times that match the current time at the stage search, the current time by the current time clock means is counted up, and when there are a plurality of next output times that match the current time, Stop counting the current time by the current time clock means, and count up the current time clock means when there is no next output time that matches the current time because the current time is delayed from the master time by this stop. (5) The port number is included in the header of the input cell, and the associative memory means, the current time clock means, the master clock means, and the current time clock control means are provided for each port number. Provided, and the search timing of each of the associative memory means is shifted .

本発明によれば、ハードウェア規模を小さくできる、若しくは、処理を簡単にでき、構成を簡易にできるスケジューリング装置、セル処理装置及びトラヒックシェーピング方法を実現できる。   According to the present invention, it is possible to realize a scheduling device, a cell processing device, and a traffic shaping method that can reduce the hardware scale, simplify processing, and simplify the configuration.

実施形態のATMセル処理装置及び実施形態のスケジューリング装置の構成を示すブロック図である。It is a block diagram which shows the structure of the ATM cell processing apparatus of embodiment and the scheduling apparatus of embodiment. 実施形態のATMセル処理装置におけるバッファ管理情報記憶部のアドレスマップの一例を示す説明図である。It is explanatory drawing which shows an example of the address map of the buffer management information storage part in the ATM cell processing apparatus of embodiment. 実施形態のATMセル処理装置におけるスケジューラ内のCAMのアドレスマップの一例を示す説明図である。It is explanatory drawing which shows an example of the address map of CAM in the scheduler in the ATM cell processing apparatus of embodiment. 実施形態のATMセル処理装置における各部タイミングチャートである。It is each part timing chart in the ATM cell processing apparatus of embodiment. 実施形態のATMセル処理装置におけるATMセルが入力された際の動作を示すフローチャートである。It is a flowchart which shows the operation | movement when the ATM cell in the ATM cell processing apparatus of embodiment is input. 実施形態のATMセル処理装置におけるATMセルを読出す際の動作を示すフローチャート(1)である。It is a flowchart (1) which shows the operation | movement at the time of reading the ATM cell in the ATM cell processing apparatus of embodiment. 実施形態のATMセル処理装置におけるATMセルを読出す際の動作を示すフローチャート(2)である。It is a flowchart (2) which shows the operation | movement at the time of reading the ATM cell in the ATM cell processing apparatus of embodiment. 実施形態のATMセル処理装置におけるあるスケジューラで多重一致が生じた際のポート時刻の変化を示すタイミングチャートである。It is a timing chart which shows the change of the port time when multiple coincidence occurs in a certain scheduler in the ATM cell processing device of the embodiment. 従来の課題の説明図である。It is explanatory drawing of the conventional subject.

(A)主たる実施形態
以下、本発明によるスケジューリング装置、セル処理装置及びトラヒックシェーピング方法の一実施形態を、図面を参照しながら説明する。実施形態のセル処理装置は、ATMセルを取扱う交換装置や伝送装置などのATMセル処理装置である。
(A) Main Embodiment Hereinafter, an embodiment of a scheduling device, a cell processing device, and a traffic shaping method according to the present invention will be described with reference to the drawings. The cell processing apparatus according to the embodiment is an ATM cell processing apparatus such as an exchange apparatus or a transmission apparatus that handles ATM cells.

(A−1)実施形態の構成
図1は、実施形態のATMセル処理装置及び実施形態のスケジューリング装置の構成を示すブロック図である。図1において、スケジューラについては、ポートP1のスケジューラ14−1についてのみ詳細構成を図示しているが、ポートP2〜PM(Mは2以上の整数)のスケジューラ14−2〜14−Mもスケジューラ14−1と同様な詳細構成を有する。
(A-1) Configuration of Embodiment FIG. 1 is a block diagram illustrating configurations of an ATM cell processing device of the embodiment and a scheduling device of the embodiment. 1, the detailed configuration of the scheduler is illustrated only for the scheduler 14-1 of the port P1, but the schedulers 14-2 to 14-M of the ports P2 to PM (M is an integer of 2 or more) are also included in the scheduler 14. It has the same detailed configuration as -1.

図1において、実施形態のATMセル処理装置10は、セル入力処理部11、セル記憶部12、出力周期記憶部13、スケジューラ14−1〜14−M、ポートセレクタ15、タイミングカウンタ16、マスタ時計17、次出力時刻算出部18、バッファ制御部19及びバッファ管理情報記憶部20を有する。セル記憶部12を除いた構成部分は、実施形態のスケジューリング装置の構成要素にもなっている。   In FIG. 1, an ATM cell processing apparatus 10 according to an embodiment includes a cell input processing unit 11, a cell storage unit 12, an output cycle storage unit 13, schedulers 14-1 to 14-M, a port selector 15, a timing counter 16, and a master clock. 17, a next output time calculation unit 18, a buffer control unit 19, and a buffer management information storage unit 20. The components excluding the cell storage unit 12 are also components of the scheduling apparatus according to the embodiment.

各スケジューラ14−m(mは1〜M)はそれぞれ、CAM41−m、CAM検索制御部42−m、ポート時計43−m、ポート時計制御部44−m及びマスタ時計位相シフト部45−mを有する。   Each scheduler 14-m (m is 1 to M) includes a CAM 41-m, a CAM search control unit 42-m, a port clock 43-m, a port clock control unit 44-m, and a master clock phase shift unit 45-m. Have.

以下、各部の機能を説明するが、機能の詳細については動作説明の項でも明らかにする。   The function of each part will be described below, but the details of the function will also be clarified in the description of the operation.

セル入力処理部11は、入力されたATMセル(入力セル)S100から、ポート番号、装置内コネクション番号などのヘッダ情報S101を抽出し、抽出したヘッダ情報S101をバッファ制御部19及び全てのスケジューラ14−1〜14−M内のCAM41−1〜41−Mへ出力する。また、セル入力処理部11は、入力セルS100をセル記憶部12へそのまま出力する。   The cell input processing unit 11 extracts header information S101 such as a port number and an in-device connection number from the input ATM cell (input cell) S100, and uses the extracted header information S101 as the buffer control unit 19 and all schedulers 14. Output to CAM 41-1 to 41-M in -1 to 14-M. Further, the cell input processing unit 11 outputs the input cell S100 to the cell storage unit 12 as it is.

ここで、抽出するポート番号は、ATMセルの出力先のATMポート(以下、ポートと適宜略称する)を示す識別子である。また、装置内コネクション番号は、ATMセルが属するATM回線(コネクション)を示す識別子である。ポート番号及び装置内コネクション番号は、ATMセル処理装置10に入力されるATMセルS100のヘッダに格納されている。   Here, the port number to be extracted is an identifier indicating an ATM port (hereinafter, abbreviated as a port as appropriate) as an ATM cell output destination. The in-device connection number is an identifier indicating the ATM line (connection) to which the ATM cell belongs. The port number and the in-device connection number are stored in the header of the ATM cell S100 input to the ATM cell processing device 10.

セル記憶部12は、装置内コネクション毎のキューバッファQ1〜QNの集合体である。セル記憶部12には、セル入力処理部11から入力セルS100が与えられると共に、バッファ制御部19からセル書込指示S104及びセル読出指示S103が与えられ、セル記憶部12は、入力セルS100を、セル書込指示S104で規定されるキューバッファQw(wは1〜N)に書き込み、セル読出指示S103で規定されるキューバッファQr(rは1〜N)からATMセルS200を読み出す。セル記憶部12から読み出されたATMセルS200は、スケジューリングされたものであり、後段の回路に与えられる。   The cell storage unit 12 is an aggregate of queue buffers Q1 to QN for each in-device connection. The cell storage unit 12 is provided with an input cell S100 from the cell input processing unit 11, and is also provided with a cell write instruction S104 and a cell read instruction S103 from the buffer control unit 19, and the cell storage unit 12 receives the input cell S100. Then, the data is written to the queue buffer Qw (w is 1 to N) defined by the cell write instruction S104, and the ATM cell S200 is read from the queue buffer Qr (r is 1 to N) defined by the cell read instruction S103. The ATM cell S200 read from the cell storage unit 12 has been scheduled and is given to the subsequent circuit.

バッファ制御部19は、バッファ管理情報記憶部20から、ライトポインタ、リードポインタ、時刻設定フラグ等を含むバッファ状態情報S111を取込んでセル記憶部12の記憶されているセルの状況の変更に応じて更新し、更新後のバッファ状態情報S112をバッファ管理情報記憶部20へ出力するものである。ここで、ライトポインタは、ATMセルを書込むキューバッファQw内のセル書込み開始アドレスであり、リードポインタは、ATMセルを読出すキューバッファQr内のセル読出し開始アドレスである。時刻設定フラグは、今回の入力セルのポート番号に対応するCAM41−mに対して、次出力時刻が設定されたか否かを示すものであり、次出力時刻が設定されたときに「1」が時刻設定フラグにセットされる。   The buffer control unit 19 fetches buffer status information S111 including a write pointer, a read pointer, a time setting flag, etc. from the buffer management information storage unit 20, and responds to a change in the status of the cell stored in the cell storage unit 12. The updated buffer status information S112 is output to the buffer management information storage unit 20. Here, the write pointer is a cell write start address in the queue buffer Qw for writing the ATM cell, and the read pointer is a cell read start address in the queue buffer Qr for reading the ATM cell. The time setting flag indicates whether or not the next output time is set for the CAM 41-m corresponding to the port number of the current input cell, and “1” is set when the next output time is set. Set to the time setting flag.

バッファ制御部19は、セル入力処理部11から、入力セルS100の装置内コネクション番号を入力し、その装置内コネクション番号に係るキューバッファへの書込みを指示するバッファ書込み指示S104をセル記憶部12へ出力する。   The buffer control unit 19 inputs the in-device connection number of the input cell S100 from the cell input processing unit 11, and sends to the cell storage unit 12 a buffer write instruction S104 for instructing writing to the queue buffer related to the in-device connection number. Output.

バッファ制御部19には、ポートセレクタ15から、選択されたCAM検索一致情報S106が入力され、バッファ制御部19は、CAM検索一致情報S106における装置内コネクション番号に係るキューバッファからの読出しを指示するセル読出指示S103をセル記憶部12へ出力する。また、バッファ制御部19は、次出力時刻算出部18へ次出力時刻算出指示S109を出力する。   The selected CAM search match information S106 is input from the port selector 15 to the buffer control unit 19, and the buffer control unit 19 instructs reading from the queue buffer related to the in-device connection number in the CAM search match information S106. Cell read instruction S103 is output to cell storage unit 12. Further, the buffer control unit 19 outputs a next output time calculation instruction S109 to the next output time calculation unit 18.

バッファ制御部19は、スケジューラ14−1〜14−MのCAM41−1〜41−MへCAM登録指示S110を出力し、次出力時刻を登録させる。   The buffer control unit 19 outputs a CAM registration instruction S110 to the CAMs 41-1 to 41-M of the schedulers 14-1 to 14-M and registers the next output time.

バッファ管理情報記憶部20は、装置内コネクション番号に対応したアドレス毎に、ライトポインタ、リードポインタ、時刻設定フラグを記憶している。図2は、バッファ管理情報記憶部20のアドレスマップの一例を示している。図2において、装置内コネクション番号毎(CONID=0、1、2、…、255(=N))に、19ビットのメモリ領域が割り当てられ、そのメモリ領域における下位側9ビットにリードポインタRP[8:0]が割り当てられ、それより上位側の9ビットにライトポインタWP[8:0]が割り当てられ、最上位ビットに時刻設定フラグFが割り当てられている。リードポインタRP[8:0]及びライトポインタWP[8:0]は9ビットで表現される最大値を超えるタイミングでリセットされる(すなわち、巡回的に更新される)ものである。従って、ある装置内コネクション番号に係るキューバッファがフルである場合には、リードポインタRP[8:0]がライトポインタWP[8:0]より1だけ大きく、そのキューバッファが空である場合には、リードポインタRP[8:0]とライトポインタWP[8:0]とは等しい。   The buffer management information storage unit 20 stores a write pointer, a read pointer, and a time setting flag for each address corresponding to the in-device connection number. FIG. 2 shows an example of an address map of the buffer management information storage unit 20. In FIG. 2, a 19-bit memory area is allocated for each in-device connection number (CONID = 0, 1, 2,..., 255 (= N)), and a read pointer RP [ 8: 0] is assigned, the write pointer WP [8: 0] is assigned to the higher 9 bits, and the time setting flag F is assigned to the most significant bit. The read pointer RP [8: 0] and the write pointer WP [8: 0] are reset (that is, updated cyclically) at a timing exceeding the maximum value represented by 9 bits. Accordingly, when the queue buffer related to a certain in-device connection number is full, the read pointer RP [8: 0] is larger than the write pointer WP [8: 0] by 1 and the queue buffer is empty. Is equal to the read pointer RP [8: 0] and the write pointer WP [8: 0].

出力周期記憶部13は、各コネクションについての基本的なセル間隔(言い換えると、設定帯域)を記憶しているものである。出力周期記憶部13に記憶されているセル間隔S102は、次出力時刻算出部18によって読み出される。   The output cycle storage unit 13 stores a basic cell interval (in other words, a set bandwidth) for each connection. The cell interval S102 stored in the output cycle storage unit 13 is read by the next output time calculation unit 18.

次出力時刻算出部18には、バッファ制御部19から次出力時刻算出指示S109が入力され、ポートセレクタ15から選択されたポート時刻S107が入力され、出力周期記憶部13からセル間隔S102が入力され、次出力時刻算出部18は、これらの入力情報に基づいて、セル記憶部12へ入力されたATMセルのコネクション(装置内コネクション番号)の次出力時刻S108を算出し、全てのスケジューラ14−1〜14−MのCAM41−1〜41−Mに出力する。   The next output time calculation unit 18 receives the next output time calculation instruction S 109 from the buffer control unit 19, the port time S 107 selected from the port selector 15, and the cell interval S 102 from the output cycle storage unit 13. The next output time calculation unit 18 calculates the next output time S108 of the ATM cell connection (connection number in the apparatus) input to the cell storage unit 12 based on the input information, and all the schedulers 14-1 To 14-M CAMs 41-1 to 41-M.

タイミングカウンタ16は、1セル時間毎に1だけカウントアップするカウンタである。タイミングカウンタ16は、1セル時間にスケジューラ数(=ポート数)乗算した期間(以下、ポート時間と呼ぶことがある)を一巡周期とするカウンタである。タイミングカウンタ16は、ポートセレクタ15、CAM検索制御部42−1〜42−M及びポート時計43−1〜43−Mへ、そのカウンタ値であるセルタイミング情報S601を出力する。   The timing counter 16 is a counter that counts up by 1 every cell time. The timing counter 16 is a counter whose period is a period obtained by multiplying one cell time by the number of schedulers (= number of ports) (hereinafter also referred to as port time). The timing counter 16 outputs cell timing information S601 that is a counter value to the port selector 15, the CAM search control units 42-1 to 42-M, and the port clocks 43-1 to 43-M.

マスタ時計17は、全スケジューラ14−1〜14−Mに対して、基準となる時刻情報を供給するものである。マスタ時計17は、ポート時間毎に1だけカウントアップするカウンタである。すなわち、マスタ時計17は、ATMポート数がMであるのでMセル時間毎にカウントアップする。マスタ時計17は、マスタ時計位相シフト部45−1〜45−Mへ、そのカウンタ値であるマスタ時刻S701を出力する。   The master clock 17 supplies reference time information to all the schedulers 14-1 to 14-M. The master clock 17 is a counter that counts up by 1 every port time. That is, since the number of ATM ports is M, the master clock 17 counts up every M cell time. The master clock 17 outputs the master time S701 that is the counter value to the master clock phase shift units 45-1 to 45-M.

ポートPm用のスケジューラ14−mは、セル記憶部12に記憶されたポート番号Pm宛てのATMセルの出力時刻(セル記憶部12からの読出時刻)を決定する(スケジューリングする)ものである。   The scheduler 14-m for the port Pm determines (schedules) the output time (read time from the cell storage unit 12) of the ATM cell addressed to the port number Pm stored in the cell storage unit 12.

スケジューラ14−mにおけるCAM41−mは、特許文献1に記載されているような連想メモリで構成され、装置内コネクション番号に対応したアドレス毎に、各キューの次出力時刻及びCAM登録有効無効ビットを記憶するものである。図3は、CAM41−mのアドレスマップの一例を示している。図3において、装置内コネクション番号毎(CONID=0、1、2、…、255)に、13ビットのメモリ領域が割り当てられ、そのメモリ領域における下位側12ビットに次出力時刻[11:0]が割り当てられ、最上位ビットにCAM登録有効無効ビットVが割り当てられている。CAM登録有効無効ビットは、CAM41−mに記憶されている次出力時刻が有効か無効かを示す情報であり、有効であるとき「1」を、有効でないとき「0」をとる。   The CAM 41-m in the scheduler 14-m is composed of an associative memory as described in Patent Document 1, and the next output time of each queue and the CAM registration valid / invalid bit are set for each address corresponding to the in-device connection number. It is something to remember. FIG. 3 shows an example of the address map of the CAM 41-m. In FIG. 3, a 13-bit memory area is allocated for each in-device connection number (CONID = 0, 1, 2,..., 255), and the next output time [11: 0] is assigned to the lower 12 bits in the memory area. Is assigned, and the CAM registration valid / invalid bit V is assigned to the most significant bit. The CAM registration valid / invalid bit is information indicating whether the next output time stored in the CAM 41-m is valid or invalid, and takes “1” when valid and “0” when invalid.

CAM41−mには、バッファ制御部19から次出力時刻設定指示S105が入力され、セル入力処理部11からヘッダ情報S101が入力され、バッファ制御部19からCAM登録指示S110が入力され、次出力時刻算出部18から次出力時刻S108が入力され、CAM検索制御部42−mからCAM検索実施指示S402−mが入力され、ポート時計43−mからポート時刻S401−mが入力される。   The CAM 41-m receives the next output time setting instruction S105 from the buffer control unit 19, receives the header information S101 from the cell input processing unit 11, receives the CAM registration instruction S110 from the buffer control unit 19, and receives the next output time. The next output time S108 is input from the calculation unit 18, the CAM search execution instruction S402-m is input from the CAM search control unit 42-m, and the port time S401-m is input from the port clock 43-m.

CAM41−mは、次出力時刻設定指示S105、ヘッダ情報S101、CAM登録指示S110、次出力時刻S108等の入力情報に基づき、記憶内容の更新処理等を行う。   The CAM 41-m performs storage content update processing based on input information such as the next output time setting instruction S105, header information S101, CAM registration instruction S110, and next output time S108.

また、CAM41−mは、有効なCAM検索実施指示S402−mが入力された際のポート時刻S401−mに一致するアドレス(装置内コネクション番号)の検索を実施し、ポートセレクタ15及びポート時計制御部44−mへ、一致フラグ及び一致アドレス(装置内コネクション番号)を含むCAM検索結果であるCAM検索一致情報S406−mを出力すると共に、ポート時計制御部44−mへCAM検索多重一致フラグS403−mを出力する。CAM41−mの検索では、複数の一致アドレスが検索されること(多重一致)もあり、このときに、CAM検索多重一致フラグS403−mは「1」となる。このような場合でも、CAM検索一致情報S406−mには一つの一致アドレス(例えば、最も若い番号のアドレス)だけが含まれる。   The CAM 41-m searches for an address (connection number in the apparatus) that matches the port time S401-m when a valid CAM search execution instruction S402-m is input, and controls the port selector 15 and the port clock. CAM search match information S406-m, which is a CAM search result including a match flag and a match address (intra-device connection number), is output to the unit 44-m, and a CAM search multiple match flag S403 is output to the port clock control unit 44-m. -M is output. In the search of the CAM 41-m, a plurality of match addresses may be searched (multiple match). At this time, the CAM search multiple match flag S403-m becomes “1”. Even in such a case, the CAM search match information S406-m includes only one match address (for example, the address of the youngest number).

CAM検索制御部42−mは、CAM検索を実行させるものである。CAM検索制御部42−mには、タイミングカウンタ16からセルタイミング情報S601が入力されると共に、ポート時計43−mからポート時刻S401−mが入力され、CAM検索制御部42−mは、これら情報に基づいて、自ポートPmについて定まっているタイミングでCAM検索実施指示S402−mを形成してCAM41−mへ出力する。   The CAM search control unit 42-m performs a CAM search. Cell timing information S601 is input from the timing counter 16 to the CAM search control unit 42-m, and port time S401-m is input from the port clock 43-m. The CAM search control unit 42-m The CAM search execution instruction S402-m is formed at the timing determined for the own port Pm based on, and output to the CAM 41-m.

ポート時計43−mは、スケジューラ14−mが実際に次セルの出力時刻を決定するのに使用する時刻情報(ポート時刻)S401−mを生成するものである。   The port clock 43-m generates time information (port time) S401-m used by the scheduler 14-m to actually determine the output time of the next cell.

ポート時計43−mは、ポートPmのポート時刻S401−mをカウントアップするものであり、ポート時刻S401−mは、1セル時間×ポート数のタイミング毎に1インクリメントされる。ポート時計43−mには、タイミングカウンタ16からセルタイミング情報S601が入力され、ポート時計制御部44−mからポート時計制御信号S404−mが入力され、ポート時計43−mは、これらに基づいて適宜更新したポート時刻S401−mを、CAM41−m、CAM検索制御部42−m及びポートセレクタ15へ出力する。各スケジューラ14−1〜14−Mのポート時計43−1〜43−Mは、セルタイミング情報S601によって、そのインクリメントタイミングが、1セル時間ずつずらされている。   The port clock 43-m counts up the port time S401-m of the port Pm, and the port time S401-m is incremented by 1 every timing of 1 cell time × number of ports. The cell clock information S601 is input from the timing counter 16 to the port clock 43-m, and the port clock control signal S404-m is input from the port clock controller 44-m. The port clock 43-m is based on these. The appropriately updated port time S401-m is output to the CAM 41-m, the CAM search control unit 42-m, and the port selector 15. Increment timings of the port clocks 43-1 to 43-M of the schedulers 14-1 to 14-M are shifted by one cell time by the cell timing information S601.

図4のタイミングチャートは、各スケジューラ14−1〜14−M内のポート時刻S401−1〜S401−Mのタイミングチャートも含んでいる。図4は、ポート数Mが4の場合を示している。タイミングカウンタ16から出力されるセルタイミング情報S601は、ポート数M(=4)に応じて値を巡回させるものであり、図4の例では値「0」〜「3」を巡回変化させている。各スケジューラ14−m内のポート時刻S401−mは、セルタイミング情報S601が値「m−1」をとるときに1インクリメントされ、これにより、ポート時刻S401−1〜S401−Mは、そのインクリメントタイミングが、1セル時間ずつずらされている。図4において、「他ポートセル出力時間」と記載している期間は、ポート時刻S401−mに係るポートPm以外のポートがセルを出力する時間であり、後述するように、「自ポートセル出力時間」と「他ポートセル出力時間」とでスケジューラ14−mの動作が異なっている。   The timing chart of FIG. 4 also includes timing charts of port times S401-1 to S401-M in the respective schedulers 14-1 to 14-M. FIG. 4 shows a case where the number of ports M is four. The cell timing information S601 output from the timing counter 16 circulates in accordance with the number of ports M (= 4). In the example of FIG. 4, the values “0” to “3” are cyclically changed. . The port time S401-m in each scheduler 14-m is incremented by 1 when the cell timing information S601 takes the value “m−1”, whereby the port times S401-1 to S401-M are incremented by the increment timing. Are shifted by one cell time. In FIG. 4, the period described as “another port cell output time” is a time during which a port other than the port Pm related to the port time S401-m outputs a cell. And the “other port cell output time”, the operation of the scheduler 14-m is different.

ポート時計43−mは、上述したように、対応するポートPmでのセル出力時間をカウントする機能を有する。また、ポート時計43−mは、ポート時計制御部44−mからのポート時計制御信号S404−mによって、そのカウントの停止、あるいは、カウントの早回しを実施する機能を有する。カウントの停止や早回しを行う理由については動作の項で明らかにする。   As described above, the port clock 43-m has a function of counting the cell output time at the corresponding port Pm. The port clock 43-m has a function of stopping the count or speeding up the count according to the port clock control signal S404-m from the port clock control unit 44-m. The reason why the count is stopped or fast-turned will be clarified in the operation section.

ポート時計制御部44−mは、ポート時計43−mのカウントの停止/早回し制御などを実施するものでる。ポート時計制御部44−mには、CAM41−mからCAM検索多重一致フラグS403−mとCAM検索一致情報S406−mとが入力され、ポート時計43−mからポート時刻S401−mが入力され、マスタ時計位相シフト部45−mから対応ポートPmのマスタ時刻S405−mが入力され、ポート時計制御部44−mは、これら入力に基づいて生成したポート時計制御信号S404−mをポート時計43−mへ出力する。   The port clock control unit 44-m implements stop / fast-forward control of the count of the port clock 43-m. The port clock control unit 44-m receives the CAM search multiple match flag S403-m and the CAM search match information S406-m from the CAM 41-m, and receives the port time S401-m from the port clock 43-m. Master time S405-m of corresponding port Pm is input from master clock phase shift unit 45-m, and port clock control unit 44-m uses port clock control signal S404-m generated based on these inputs as port clock 43-m. output to m.

マスタ時計位相シフト部45−mには、マスタ時計17からマスタ時刻S701が入力されると共に、タイミングカウンタ16からセルタイミング情報S601が入力され、マスタ時計位相シフト部45−mは、これら入力に基づいて、対応ポートPmについて定まっているだけマスタ時刻S701の位相をずらせたマスタ時刻S405−mを生成してポート時計制御部44−mへ出力する。   Master clock phase shift unit 45-m receives master time S701 from master clock 17 and cell timing information S601 from timing counter 16, and master clock phase shift unit 45-m is based on these inputs. Thus, a master time S405-m in which the phase of the master time S701 is shifted by a predetermined amount for the corresponding port Pm is generated and output to the port clock controller 44-m.

図4のタイミングチャートは、各スケジューラ14−1〜14−M内のポート対応のマスタ時刻S405−1〜S405−Mのタイミングチャートも含んでいる。マスタ時計位相シフト部45−mは、セルタイミング情報S601が値「m−1」をとるときに、対応ポートPmのマスタ時刻S405−mが更新させるように、マスタ時刻S701を位相シフトさせる。これにより、各ポートP1〜PMに対応するマスタ時刻S405−1〜S405−Mは、その位相(変化タイミング)が1セル時間ずつずれている。   The timing chart of FIG. 4 also includes timing charts of the master times S405-1 to S405-M corresponding to the ports in the schedulers 14-1 to 14-M. The master clock phase shift unit 45-m shifts the phase of the master time S701 so that the master time S405-m of the corresponding port Pm is updated when the cell timing information S601 takes the value “m−1”. Thereby, the phases (change timings) of the master times S405-1 to S405-M corresponding to the ports P1 to PM are shifted by one cell time.

ポートセレクタ15には、タイミングカウンタ16からセルタイミング情報S601が入力され、ポート時計43−1〜43−Mからポート時刻S401−1〜S401−Mが入力され、CAM41−1〜41−MからCAM検索一致情報S406−1〜S406−Mが入力され、ポートセレクタ15は、ポート時刻S401−1〜S401−Mと、CAM検索一致情報S406−1〜S406−Mの中から、セルタイミング情報S601のその時点の値で定まるポート時刻とCAM検索一致情報とを選択し、次出力時刻算出部18へ選択したポート時刻S107を出力すると共に、バッファ制御部19へ選択したCAM検索一致情報S106を出力する。   Cell timing information S601 is input from the timing counter 16 to the port selector 15, port times S401-1 to S401-M are input from the port clocks 43-1 to 43-M, and CAMs 41-1 to 41-M to CAM. The search match information S406-1 to S406-M is input, and the port selector 15 selects the cell timing information S601 from the port times S401-1 to S401-M and the CAM search match information S406-1 to S406-M. The port time determined by the value at that time and the CAM search match information are selected, the selected port time S107 is output to the next output time calculation unit 18, and the selected CAM search match information S106 is output to the buffer control unit 19. .

(A−2)実施形態の動作
次に、以上のような構成を有する実施形態のATMセル処理装置10の動作を、セル入力時の動作、セル出力時の動作に分けて、順に説明する。
(A-2) Operation of Embodiment Next, the operation of the ATM cell processing apparatus 10 of the embodiment having the above-described configuration will be described in order by dividing the operation at the time of cell input and the operation at the time of cell output.

<セル入力時の動作>
図5は、ATMセルが入力された際のATMセル処理装置10の動作を示すフローチャートである。
<Operation during cell input>
FIG. 5 is a flowchart showing the operation of the ATM cell processing apparatus 10 when an ATM cell is input.

ATMセルが入力されると、セル入力処理部11が入力されたセルのヘッダ情報S101を抽出し(ステップST100)、抽出されたヘッダ情報S101内の装置内コネクション番号に基づき、バッファ制御部19が、バッファ管理情報記憶部20から、ライトポインタ、リードポインタ及び時刻設定フラグを含むバッファ状態情報S111(図2参照)を読出す(ステップST101)。   When an ATM cell is input, the cell input processing unit 11 extracts the header information S101 of the input cell (step ST100), and based on the in-device connection number in the extracted header information S101, the buffer control unit 19 Then, the buffer management information storage unit 20 reads the buffer status information S111 (see FIG. 2) including the write pointer, the read pointer, and the time setting flag (step ST101).

そして、バッファ制御部19は、バッファ状態情報S111に基づき、入力セルの装置内コネクション番号に対応するキューバッファQnがフルであるか否かを判別する(ステップST102)。例えば、リードポインタがライトポインタ+1の場合に、キューバッファQnがフルであると判定する。   Then, based on the buffer status information S111, the buffer control unit 19 determines whether or not the queue buffer Qn corresponding to the in-device connection number of the input cell is full (step ST102). For example, when the read pointer is write pointer + 1, it is determined that the queue buffer Qn is full.

キューバッファQnがフルであると、バッファ制御部19は、バッファ書込み指示S103を発行せず(バッファ書込みを実施させず)、入力されたATMセルを廃棄させる(ステップST103)。   If the queue buffer Qn is full, the buffer control unit 19 does not issue the buffer write instruction S103 (does not perform buffer write), and discards the input ATM cell (step ST103).

キューバッファQnがフルでないと、バッファ制御部19は、入力セルの装置内コネクション番号に対応するキューバッファQnが空で、しかも、時刻設定フラグが「0」(無効)になっているか否かを判別する(ステップST104)。例えば、リードポインタとライトポインタとが一致しているときに、キューバッファQnが空であると判定する。   If the queue buffer Qn is not full, the buffer control unit 19 determines whether or not the queue buffer Qn corresponding to the in-device connection number of the input cell is empty and the time setting flag is “0” (invalid). It discriminate | determines (step ST104). For example, it is determined that the queue buffer Qn is empty when the read pointer matches the write pointer.

入力セルの装置内コネクション番号に対応するキューバッファQnが空で、しかも、時刻設定フラグが「0」であると、バッファ制御部19は、CAMへの次出力時刻の設定、入力セルのキューバッファへの書込み、ライトポインタの更新を実行させるように制御する(ステップST105〜ST107)。これら3つの動作を実行させる制御の順番は、図5に示す順序に限定されるものではない。   When the queue buffer Qn corresponding to the in-device connection number of the input cell is empty and the time setting flag is “0”, the buffer control unit 19 sets the next output time to the CAM, the queue buffer of the input cell Control is performed to execute writing to the disk and updating the write pointer (steps ST105 to ST107). The order of control for executing these three operations is not limited to the order shown in FIG.

キューバッファQnがフルでない場合において、キューバッファQnが空でないか、若しくは、時刻設定フラグが「1」であると、バッファ制御部19は、入力セルのキューバッファへの書込み、ライトポインタの更新を実行させるように制御する(ステップST108、ST109)。これら2つの動作を実行させる制御の順番は、図5に示す順序に限定されるものではない。また、図5では、入力セルのキューバッファへの書込みステップとして、ステップST106とステップST108とを別に記載しているが、これらステップを同じ処理ルーチンで実行させるようにしても良い。同様に、ライトポインタの更新ステップST107及びステップST109を同じ処理ルーチンで実行させるようにしても良い。   When the queue buffer Qn is not full and the queue buffer Qn is not empty or the time setting flag is “1”, the buffer control unit 19 writes the input cell to the queue buffer and updates the write pointer. Control is performed (steps ST108 and ST109). The order of control for executing these two operations is not limited to the order shown in FIG. In FIG. 5, step ST106 and step ST108 are separately described as the step of writing the input cell into the queue buffer. However, these steps may be executed by the same processing routine. Similarly, the write pointer update step ST107 and step ST109 may be executed by the same processing routine.

CAMへの次出力時刻の設定ステップST105においては、バッファ制御部19は、全ての(ポートの)スケジューラ14−1〜14−M宛に、次出力時刻設定指示S105を発行する。各スケジューラ14−m(mは1〜M)のCAM41−mは、セル入力処理部11から入力されるヘッダ情報S101内のポート番号から、自己が次出力時刻の設定を行うCAMであるか否か(言い換えると、当該スケジューラに係るポートが設定を行うポートであるか否か)を判断する。次出力時刻の設定を行うCAM41−mは、入力セルのヘッダ情報S101内の装置内コネクション番号に対応したアドレスに、次セル出力時刻として現ポート時刻+1を設定すると共に、CAM登録有効無効ビットを「1」(有効)に設定する(図3参照)。   In step ST105 for setting the next output time to the CAM, the buffer control unit 19 issues a next output time setting instruction S105 to all (port) schedulers 14-1 to 14-M. The CAM 41-m of each scheduler 14-m (m is 1 to M) is a CAM that sets the next output time based on the port number in the header information S101 input from the cell input processing unit 11. (In other words, whether or not the port related to the scheduler is a port to be set). The CAM 41-m that sets the next output time sets the current port time +1 as the next cell output time to the address corresponding to the in-device connection number in the header information S101 of the input cell, and sets the CAM registration valid / invalid bit. Set to “1” (valid) (see FIG. 3).

入力セルのキューバッファへの書込みステップST106、ST108においては、バッファ制御部19は、バッファ書込指示S103をセル記憶部12に発行し、入力セルS100を該当キューバッファQnに書き込む。   In writing steps ST106 and ST108 of input cells to the queue buffer, the buffer control unit 19 issues a buffer write instruction S103 to the cell storage unit 12, and writes the input cell S100 to the corresponding queue buffer Qn.

ライトポインタの更新ステップST107、ST109においては、バッファ制御部19は、バッファ管理情報記憶部20から取り込んだライトポインタを1だけ増大させ(但し、更新前が最大値の場合には最小値に更新させる)、更新後のライトポインタを含むバッファ状態情報S112をバッファ管理情報記憶部20へ出力して上書きさせる。   In the write pointer update steps ST107 and ST109, the buffer control unit 19 increases the write pointer fetched from the buffer management information storage unit 20 by 1 (however, if the value before update is the maximum value, it is updated to the minimum value). ) The buffer state information S112 including the updated write pointer is output to the buffer management information storage unit 20 and overwritten.

上述のように、セル入力時(セル受信時)に、該当コネクションの時刻設定フラグ=0であれば、次セル時刻を出力時刻として登録するようにしたので、前回の出力セルからのセル間隔を確保しつつ、かつ、前回の出力セル時刻からセル間隔以上たっているときには、セル入力後、即時にセル出力することが可能となる。後述する多重一致時の動作によりセル出力が遅れた装置内コネクション番号のセル出力を早め、平均的なセル間隔を所定のセル間隔に近付けることができる。   As described above, if the time setting flag = 0 of the connection at the time of cell input (cell reception), the next cell time is registered as the output time, so the cell interval from the previous output cell is If the cell interval is greater than the previous output cell time while ensuring, cell output can be immediately performed after cell input. The cell output of the in-device connection number whose cell output is delayed by the operation at the time of multiple coincidence described later can be advanced, and the average cell interval can be made closer to the predetermined cell interval.

<セル出力時>
図6及び図7はそれぞれ、ATMセルを読み出す際のATMセル処理装置10の動作を示すフローチャートであり、図6は、ポートセレクタ15が自ポートのスケジューラからのCAM検索一致情報を選択するセル時間のそのスケジューラの動作を中心的に示しており、図7は、ポートセレクタ15が他ポートのスケジューラからのCAM検索一致情報を選択するセル時間のそのスケジューラの動作を中心的に示している。
<At cell output>
FIGS. 6 and 7 are flowcharts showing the operation of the ATM cell processing apparatus 10 when reading an ATM cell. FIG. 6 shows the cell time during which the port selector 15 selects CAM search match information from the scheduler of its own port. 7 mainly shows the operation of the scheduler, and FIG. 7 mainly shows the operation of the scheduler in the cell time when the port selector 15 selects the CAM search match information from the scheduler of the other port.

上述した図4では、自ポートセル出力時間と他ポートセル出力時間とを時系列的に示している。   In FIG. 4 described above, the own port cell output time and the other port cell output time are shown in time series.

各スケジューラ14−1〜14−Mにおいては、1セル時間毎に、当該スケジューラ内のポート時計43−1〜43−Mが表すポート時刻S401−1〜S401−MとCAM登録有効無効ビットの「1」(有効)とを検索キーとし、CAM検索制御部42−1〜42−MからのCAM検索実施指示S402−1〜S402−Mによって、CAM41−1〜41−Mの検索が起動される。CAM41−1〜41−Mはそれぞれ、検索を実行し、CAM検索結果であるCAM検索一致情報S406−1〜S406−Mをポートセレクタ15へ渡し、CAM検索多重一致フラグS403−1〜S403−Mをポート時計制御部44−1〜44−Mに渡し、ポートセレクタ15は、セルタイミング情報S601に基づいて、各ポートについて定まっているATMセルを出力するセル時間(例えば、ポートP1の場合であれば、セルタイミング情報S601が「3」のタイミング;図4参照)でそのポートに係るCAM検索一致情報S406−mが選択され、選択後のCAM検索一致情報S106としてバッファ制御部19に与えられ、また、(ステップST200)。なお、CAM検索一致情報S406−1〜S406−Mには、上述したように、一致フラグ及び一致アドレス(装置内コネクション番号)の情報が含まれている。   In each scheduler 14-1 to 14-M, for each cell time, port times S401-1 to S401-M represented by the port clocks 43-1 to 43-M in the scheduler and the CAM registration valid / invalid bit “ 1 ”(valid) is used as a search key, and the search for CAMs 41-1 to 41-M is activated by the CAM search execution instructions S402-1 to S402-M from the CAM search control units 42-1 to 42-M. . Each of the CAMs 41-1 to 41-M executes a search, passes the CAM search match information S406-1 to S406-M, which is a CAM search result, to the port selector 15, and sets the CAM search multiple match flags S403-1 to S403-M. Are transmitted to the port clock control units 44-1 to 44-M, and the port selector 15 outputs the ATM time determined for each port based on the cell timing information S601 (for example, in the case of the port P1). For example, when the cell timing information S601 is “3” (see FIG. 4), the CAM search match information S406-m related to the port is selected and given to the buffer control unit 19 as the selected CAM search match information S106. Also (step ST200). Note that, as described above, the CAM search match information S406-1 to S406-M includes information on the match flag and the match address (internal connection number).

各ポートのスケジューラの出力セルタイミングが競合しないように、各ポートのスケジューラ14−1、…、14−Mは、1セル時間ずつずれて動作し、図4に示すように、タイミングカウンタ16から入力されるセルタイミング情報S601の値から、自ポートのセル出力時間を一意に識別し、協働してセル出力を制御する。   The schedulers 14-1,..., 14-M of each port operate by shifting by one cell time so that the output cell timings of the schedulers of the respective ports do not compete with each other, and input from the timing counter 16 as shown in FIG. The cell output time of the own port is uniquely identified from the value of the cell timing information S601, and the cell output is controlled in cooperation.

例えば、ポートP1のスケジューラ14−1から見た場合、自ポートがセル出力するセル時間は、セルタイミング情報S601が「3」のときであり、他ポートP2〜P4がセル出力するセル時間は、セルタイミング情報S601が「0」、「1」及び「2」のときである。また例えば、ポートP2のスケジューラ14−2から見た場合、自ポートがセル出力するセル時間は、セルタイミング情報S601が「0」のときであり、他ポートP1、P3、P4がセル出力するセル時間は、セルタイミング情報S601が「1」〜「3」のときである。ポートP3やP4のスケジューラ14−3や14−4についても、同様にセル時間が定まっている。   For example, when viewed from the scheduler 14-1 of the port P 1, the cell time that the own port outputs the cell is when the cell timing information S 601 is “3”, and the cell time that the other ports P 2 to P 4 output the cell is This is when the cell timing information S601 is “0”, “1”, and “2”. Further, for example, when viewed from the scheduler 14-2 of the port P2, the cell time that the own port outputs the cell is when the cell timing information S601 is “0”, and the cells that the other ports P1, P3, and P4 output the cell. The time is when the cell timing information S601 is “1” to “3”. The cell times are similarly determined for the schedulers 14-3 and 14-4 of the ports P3 and P4.

バッファ制御部19は、CAM一致アドレスを用いて、バッファ管理情報記憶部20からライトポインタ及びリードポインタを読んでバッファ状態を識別し、その結果に応じて、セル出力処理、ポート時刻制御処理、CAMクリア処理(CAMのCAM登録有効無効ビットに「0」を書く)を行うと共に、ATMセルの出力後は、自ポートのCAMに新たなセル出力時刻(セル時刻+設定帯域(出力周期))を設定し、また、時刻設定フラグを「1」に設定する(ステップST201〜ST215、ST250〜ST254)。また、ポート時計制御部44−mも、CAM検索一致情報S406−mに応じた制御動作を実行する。   The buffer control unit 19 uses the CAM match address to read the write pointer and the read pointer from the buffer management information storage unit 20 to identify the buffer state, and according to the result, cell output processing, port time control processing, CAM Performs clear processing (writes “0” to the CAM registration valid / invalid bit of CAM), and after output of the ATM cell, outputs a new cell output time (cell time + set band (output cycle)) to the CAM of its own port. Further, the time setting flag is set to “1” (steps ST201 to ST215, ST250 to ST254). The port clock controller 44-m also executes a control operation according to the CAM search match information S406-m.

以下、自ポートのセル出力時刻(図6参照)、他ポートのセル出力時刻(図7参照)に分けて、選択後のCAM検索一致情報S106に応じた動作を説明する。   The operation according to the selected CAM search match information S106 will be described below by dividing into the cell output time of the own port (see FIG. 6) and the cell output time of other ports (see FIG. 7).

バッファ制御部19は、一致フラグに基づいて、自ポートのスケジューラ14−mに係るCAM41−mの検索で一致したものがあったか否かを判別する(ステップST201)。   Based on the match flag, the buffer control unit 19 determines whether there is a match in the search of the CAM 41-m related to the scheduler 14-m of the own port (step ST201).

バッファ制御部19は、CAM41−mの検索で一致したものがない場合には、セル出力処理を実行させることなく、また、バッファ管理情報記憶部20の時刻設定フラグやCAM41−mのCAM登録情報有効無効ビットを操作させることない。この場合には、ポート時計制御部44−mによるポート時刻を1インクリメントする動作だけが実行される(ステップST202)。   If there is no match in the search of the CAM 41-m, the buffer control unit 19 does not execute the cell output process, and also sets the time setting flag of the buffer management information storage unit 20 and the CAM registration information of the CAM 41-m. The valid / invalid bit is not manipulated. In this case, only the operation of incrementing the port time by 1 by the port clock control unit 44-m is executed (step ST202).

バッファ制御部19は、CAM41−mの検索で一致したものがあれば、一致アドレス(装置内コネクション番号)が規定するセル記憶部12内のキューバッファが空か(CAM検索一致あり、かつ、キューバッファ空)否かを判別する。キューバッファが空か否かは、上述したように、バッファ管理情報記憶部20から得たリードポインタ及びライトポインタが一致するか否かで認識する。   If there is a match in the search of the CAM 41-m, the buffer control unit 19 determines whether the queue buffer in the cell storage unit 12 defined by the match address (device connection number) is empty (there is a CAM search match and the queue It is determined whether or not the buffer is empty. Whether or not the queue buffer is empty is recognized based on whether or not the read pointer and the write pointer obtained from the buffer management information storage unit 20 match as described above.

バッファ制御部19は、CAM41−mの検索で一致したものがある場合において、一致アドレス(装置内コネクション番号)が規定するキューバッファが空でなければ、一致アドレス(装置内コネクション番号)が規定するセル記憶部12内のキューバッファのリードポインタが示す位置のATMセルを出力させ(ステップST204)、新たな(次の)出力時刻(読出時刻)として、ポート時刻S107が指示する現在のポート時刻に、出力周期記憶部13からの一致アドレス(装置内コネクション番号)に係る出力周期を加算した時刻を得てCAM41−mに登録させると共に、CAM登録有効無効ビットを「1」に設定させ(ステップST205)、また、一致アドレス(装置内コネクション番号)に係る時刻設定フラグに「1」を設定させ(ステップST206)、また、バッファ管理情報記憶部20から取り込んだリードポインタを1だけ増大させ(但し、更新前が最大値の場合には最小値に更新させる)、更新後のリードポインタを含むバッファ状態情報S112をバッファ管理情報記憶部20へ出力して上書きさせる(ステップST207)。以上の処理は、セル出力時においてキューバッファが空になったか確認することなく、まだATMセルが残っているとみなして各種パラメータを更新していることになり、次の出力タイミングで空であるかを確認することになっている。   If there is a match in the search of the CAM 41-m and the queue buffer specified by the match address (in-device connection number) is not empty, the buffer control unit 19 specifies the match address (in-device connection number). The ATM cell at the position indicated by the read pointer of the queue buffer in the cell storage unit 12 is output (step ST204), and the current port time indicated by the port time S107 is designated as the new (next) output time (read time). The time obtained by adding the output periods related to the coincidence address (in-device connection number) from the output period storage unit 13 is obtained and registered in the CAM 41-m, and the CAM registration valid / invalid bit is set to “1” (step ST205). ) In addition, “1” is set in the time setting flag related to the coincidence address (internal connection number). In addition, the read pointer fetched from the buffer management information storage unit 20 is incremented by 1 (however, if the pre-update is the maximum value, the read pointer is updated to the minimum value), and the post-update read pointer is updated. The included buffer status information S112 is output to the buffer management information storage unit 20 and overwritten (step ST207). In the above processing, without confirming whether or not the queue buffer is empty at the time of cell output, it is assumed that there are still ATM cells remaining, and various parameters are updated, and are empty at the next output timing. It is supposed to be confirmed.

CAM41−mの検索で一致したものがあり、一致アドレス(装置内コネクション番号)が規定するキューバッファが空でない場合においても、ポート時計制御部44−mには、CAM41−mの検索に関連した情報として、CAM検索一致情報S406−mとCAM検索多重一致フラグS403−mとが与えられる。ここで、ポート時計制御部44−mによる制御動作は、バッファ制御部19による制御動作とは独立して実行され、ポート時計制御部44−mは、CAM検索一致情報S406−mで一致アドレスがあることを独立して認識する。ポート時計制御部44−mは、CAM検索多重一致フラグS403−mが設定されているか否かを判別する(ステップST208)。言い換えると、現ポート時刻をセル出力時刻として設定されている装置内コネクション番号が複数あるか否かを判別する。ポート時計制御部44−mは、CAM検索多重一致フラグS403−mが設定されていないと、ポート時刻を1だけ増大させ(ステップST209)、CAM検索多重一致フラグS403−mが設定されていると、ポート時刻を更新させない(カウントを停止させる;ステップST210)。   Even when there is a match in the search of the CAM 41-m and the queue buffer specified by the match address (intra-device connection number) is not empty, the port clock control unit 44-m is related to the search for the CAM 41-m. As information, CAM search match information S406-m and CAM search multiple match flag S403-m are given. Here, the control operation by the port clock control unit 44-m is executed independently of the control operation by the buffer control unit 19, and the port clock control unit 44-m has a match address in the CAM search match information S406-m. Recognize something independently. The port clock control unit 44-m determines whether or not the CAM search multiple match flag S403-m is set (step ST208). In other words, it is determined whether or not there are a plurality of in-device connection numbers in which the current port time is set as the cell output time. If the CAM search multiple match flag S403-m is not set, the port clock control unit 44-m increments the port time by 1 (step ST209), and the CAM search multiple match flag S403-m is set. The port time is not updated (the count is stopped; step ST210).

バッファ制御部19は、CAM41−mの検索で一致したものがある場合において、一致アドレス(装置内コネクション番号)が規定するキューバッファが空であれば、CAM登録有効無効ビットを「0」に更新し(ステップST211)、また、一致アドレス(装置内コネクション番号)に係る時刻設定フラグに「0」を設定させる(ステップST212)。   The buffer control unit 19 updates the CAM registration valid / invalid bit to “0” if there is a match in the search of the CAM 41-m and the queue buffer defined by the match address (in-device connection number) is empty. Then, “0” is set to the time setting flag related to the coincidence address (connection number in apparatus) (step ST212).

CAM41−mの検索で一致したものがあり、一致アドレス(装置内コネクション番号)が規定するキューバッファが空の場合におけるポート時計制御部44−mによる制御動作は、キューバッファが空でない場合におけるポート時計制御部44−mによる制御動作と同様であるので、その詳細説明は省略する(ステップST213〜ST215)。   When there is a match in the search of the CAM 41-m and the queue buffer specified by the match address (device connection number) is empty, the control operation by the port clock control unit 44-m is the port when the queue buffer is not empty. Since it is the same as the control operation by the timepiece control unit 44-m, detailed description thereof is omitted (steps ST213 to ST215).

図7は、タイミングカウンタ16から入力されるセルタイミング情報S601の値が、自ポート以外の他ポートのセル出力時間を表している場合における自ポート(セルタイミング情報S601が表すポートから見ると他ポート)のスケジューラ14−e(eは1〜M)内のポート時計制御部44−mによる制御動作を示している。なお、バッファ制御部19は、セルタイミング情報S601の値が示すポートに関する制御処理を実行するが(図6参照)、セルタイミング情報S601の値が示すポート以外のポートに関する制御処理を実行しないものである。   FIG. 7 shows the own port (the other port when viewed from the port represented by the cell timing information S601) when the value of the cell timing information S601 input from the timing counter 16 represents the cell output time of the other port other than the own port. ) Shows a control operation by the port clock control unit 44-m in the scheduler 14-e (e is 1 to M). The buffer control unit 19 executes control processing related to the port indicated by the value of the cell timing information S601 (see FIG. 6), but does not execute control processing related to ports other than the port indicated by the value of the cell timing information S601. is there.

ポート時計制御部44−eは、他ポートのセル時間であるが、CAM検索一致情報S406−eに基づいて一致するものがあるか否かを判別する(ステップST250)。一致するものがあると、ポート時計制御部44−mは、現ポート時刻を継続させる(ステップST251)。一致するものがなければ、ポート時計制御部44−mは、当該ポートPeのマスタ時刻S405−eとポート時刻S401−eとが一致しているか否かを判別する(ステップST252)。両時刻が一致していると、ポート時計制御部44−mは、現ポート時刻を継続させる(ステップST253)。これに対して、両時刻が一致していないと、ポート時計制御部44−mは、現ポート時刻を1だけ増大させ、マスタ時刻に近付ける(ステップST254)。   The port clock control unit 44-e determines whether there is a match based on the CAM search match information S406-e, although it is the cell time of the other port (step ST250). If there is a match, the port clock control unit 44-m continues the current port time (step ST251). If there is no match, the port clock control unit 44-m determines whether the master time S405-e of the port Pe matches the port time S401-e (step ST252). If the two times coincide, the port clock control unit 44-m continues the current port time (step ST253). On the other hand, if both times do not match, the port clock control unit 44-m increases the current port time by 1 and approaches the master time (step ST254).

以下は、以上の動作を場合分けして整理して記載したものである。以下の記載のように各種パラメータを更新したり動作を制御したりできるのであれば、動作は、図6及び図7に示す手順に限定されるものではない。   The following is a list of the above operations, organized by case. As long as various parameters can be updated and the operation can be controlled as described below, the operation is not limited to the procedure shown in FIGS.

(ア)自ポートセル出力時刻時の動作
(ア−1)CAM検索一致なしの場合
・セル出力処理:セル出力しない
・ポート時刻制御:ポート時刻=ポート時刻+1
・時刻設定フラグ設定:処理なし
・CAM登録有効無効ビット:処理なし
(ア−2)CAM検索一致あり かつ バッファ空でない
・セル出力処理:セル出力する
・ポート時刻制御:
・多重一致なしの場合:ポート時刻=ポート時刻+1
・多重一致ありの場合:ポート時刻=ポート時刻(カウント停止)
・時刻設定フラグ設定:1を設定
・CAM登録有効無効ビット:1を設定
(ア−3)CAM検索一致あり かつ バッファ空
・セル出力処理:セル出力しない
・ポート時刻制御:
・多重一致なしの場合:ポート時刻=ポート時刻+1
・多重一致ありの場合:ポート時刻=ポート時刻(カウント停止)
・時刻設定フラグ設定:0を設定
・CAM登録有効無効ビット:0を設定
(イ)他ポートセル出力時刻時の動作
(イ−1)CAM検索一致なし
・セル出力処理:セル出力しない
・ポート時刻制御:
・マスタ時刻=ポート時刻の場合:ポート時刻=ポート時刻
・マスタ時刻≠ポート時刻の場合:ポート時刻=ポート時刻+1(カウント早回し)
・時刻設定フラグ設定:処理なし
・CAM登録有効無効ビット:処理なし
(イ−2)CAM検索一致あり
・セル出力処理:セル出力しない
・ポート時刻制御:ポート時刻=ポート時刻
・時刻設定フラグ設定:処理なし
・CAM登録有効無効ビット:処理なし
あるスケジューラにおいて、現在のポート時刻をセル出力時刻としている装置内コネクション番号が複数ある場合でも、そのうちの一つの装置内コネクション番号に応じたATMセルの出力が実行される。このような場合においてポート時刻を更新させたときには、次の検索時には、前回検索されたがATMセルの出力が実行されていない装置内コネクション番号が検索されなくなり、ATMセルの出力も実行されない。そのため、ステップST210やST215のポート時刻の継続処理(カウンタ(ポート時計)の停止制御)や、ステップST254の他ポートのセル出力時間におけるポート時刻の1増大処理(カウンタの早回し制御)を実行することとした。
(A) Operation at time of own port cell output (A-1) When CAM search does not match-Cell output processing: No cell output-Port time control: Port time = Port time + 1
-Time setting flag setting: No processing-CAM registration valid / invalid bit: No processing (A-2) CAM search match and buffer not empty-Cell output processing: Cell output-Port time control:
-When there is no multiple match: port time = port time + 1
-When there is multiple match: port time = port time (count stop)
• Time setting flag setting: 1 set • CAM registration valid / invalid bit: 1 set (a-3) CAM search match and buffer empty • Cell output processing: No cell output • Port time control:
-When there is no multiple match: port time = port time + 1
-When there is multiple match: port time = port time (count stop)
-Time setting flag setting: 0 is set-CAM registration valid / invalid bit: 0 is set (a) Operation at the time of other port cell output (i-1) No CAM search match-Cell output processing: No cell output-Port time control :
-When master time = port time: Port time = port time-When master time ≠ port time: Port time = port time + 1 (count forward)
-Time setting flag setting: No processing-CAM registration valid / invalid bit: No processing (b-2) CAM search match-Cell output processing: No cell output-Port time control: Port time = Port time-Time setting flag setting: No processing-CAM registration valid / invalid bit: No processing Even if there is a plurality of in-device connection numbers using the current port time as the cell output time in a certain scheduler, an ATM cell output corresponding to one of the in-device connection numbers is output. Is executed. In such a case, when the port time is updated, in the next search, the connection number in the apparatus that has been searched last time but the ATM cell output is not executed is not searched, and the ATM cell output is not executed. Therefore, the port time continuation process (counter (port clock) stop control) in steps ST210 and ST215, and the port time 1 increment process (counter fast-forward control) in the cell output time of other ports in step ST254 are executed. It was decided.

図8は、多重一致が生じた際のこのようなポート時刻などの変化を示すタイミングチャートである。図8は、ポートP1に係るスケジューラ14−1のポート時刻などの変化を示している。   FIG. 8 is a timing chart showing such changes in port time when multiple matches occur. FIG. 8 shows changes in the port time of the scheduler 14-1 related to the port P1.

スケジューラ14−1のポート時計43−1は、セルタイミング情報S601が「3」のときにCAM41−1の検索を行い、基本的には(検索できないとき及び一つのみ検索できたとき)、ポート時刻S401−1を1インクリメントするものである。   The port clock 43-1 of the scheduler 14-1 searches for the CAM 41-1 when the cell timing information S601 is “3”. Basically (when it cannot be searched and when only one is searched), the port clock 43-1 The time S401-1 is incremented by one.

図8においては、スケジューラ14−1におけるマスタ時刻S405−1が「1」でセルタイミング情報S601が「3」のときに行ったCAM検索で多重一致が発生したので、上述したステップST210によって、ポート時刻S401−1の「1」は継続される。   In FIG. 8, since multiple coincidence occurred in the CAM search performed when the master time S405-1 in the scheduler 14-1 is “1” and the cell timing information S601 is “3”, the port ST is described in step ST210 described above. “1” at time S401-1 is continued.

スケジューラ14−1におけるマスタ時刻S405−1が「2」で、セルタイミング情報S601が「0」、「1」又は「2」である他ポートセル出力時間では、上述したステップST251によって、ポート時刻S401−1の「1」は継続される。スケジューラ14−1におけるマスタ時刻S405−1が「2」でセルタイミング情報S601が「3」のときに行ったCAM検索で多重一致が発生したので、上述したステップST210によって、ポート時刻S401−1の「1」は継続される。   In the other port cell output time in which the master time S405-1 in the scheduler 14-1 is “2” and the cell timing information S601 is “0”, “1” or “2”, the port time S401- “1” of 1 is continued. Since multiple matches occurred in the CAM search performed when the master time S405-1 in the scheduler 14-1 is “2” and the cell timing information S601 is “3”, the above-described step ST210 causes the port time S401-1 to be changed. “1” is continued.

スケジューラ14−1におけるマスタ時刻S405−1が「3」で、セルタイミング情報S601が「0」、「1」又は「2」である他ポートセル出力時間では、上述したステップST251によって、ポート時刻S401−1の「1」は継続される。スケジューラ14−1におけるマスタ時刻S405−1が「3」でセルタイミング情報S601が「3」のときに行ったCAM検索では一つの一致が発生したので、上述したステップST209によって、ポート時刻S401−1が「2」に更新される。   In the other port cell output time in which the master time S405-1 in the scheduler 14-1 is “3” and the cell timing information S601 is “0”, “1” or “2”, the port time S401- “1” of 1 is continued. In the CAM search performed when the master time S405-1 in the scheduler 14-1 is “3” and the cell timing information S601 is “3”, one match has occurred, so that the port time S401-1 is determined by the above-described step ST209. Is updated to “2”.

スケジューラ14−1におけるマスタ時刻S405−1が「4」で、セルタイミング情報S601が「0」である他ポートセル出力時間では、上述したステップST254によって、ポート時刻S401−1が「3」に更新される。スケジューラ14−1におけるマスタ時刻S405−1が「4」で、セルタイミング情報S601が「1」である他ポートセル出力時間では、上述したステップST254によって、ポート時刻S401−1が「4」に更新される。スケジューラ14−1におけるマスタ時刻S405−1が「4」で、セルタイミング情報S601が「2」である他ポートセル出力時間では、上述したステップST253によって、ポート時刻S401−1の「4」が継続される。   In the other port cell output time in which the master time S405-1 in the scheduler 14-1 is “4” and the cell timing information S601 is “0”, the port time S401-1 is updated to “3” by the above-described step ST254. The In the other port cell output time in which the master time S405-1 in the scheduler 14-1 is “4” and the cell timing information S601 is “1”, the port time S401-1 is updated to “4” by the above-described step ST254. The In the other port cell output time in which the master time S405-1 in the scheduler 14-1 is “4” and the cell timing information S601 is “2”, “4” of the port time S401-1 is continued by the above-described step ST253. The

以上のようなポート時刻の制御により、CAM検索で多重一致が生じたときにも、そのポート時刻を次出力時刻としている全ての装置内コネクション番号のATMセルを出力でき、しかも、全ての出力が終了したときに、ポート時刻を通常の状態に復帰させることができる。
(A−3)実施形態の効果
上記実施形態によれば、ポート時計のカウントを、CAM一致結果によってカウント停止又はカウント早回しを実施することにより、多重一致発生時においても順次セルを送信することができ、多重一致発生時においてセルを送出するための出力時刻記憶部やその制御部は不要であり、ハードウェア規模を抑えることができる。
By controlling the port time as described above, even when multiple matches occur in the CAM search, it is possible to output ATM cells of all the connection numbers within the apparatus having the port time as the next output time, and all outputs are output. When finished, the port time can be returned to the normal state.
(A-3) Effect of Embodiment According to the above-described embodiment, the cell clock is sequentially transmitted even when multiple matches occur, by stopping the count of the port clock according to the CAM match result or by rotating the count fast. This eliminates the need for an output time storage unit and its control unit for transmitting a cell when multiple matches occur, and can reduce the hardware scale.

また、上記実施形態によれば、セル入力時やセル出力時において、時刻の大小比較を行う必要がなく、特許文献1記載の従来技術で必要であった3倍周期のカウンタや、出力時刻定期更新処理等の処理が不要となり、処理を簡単なものとできる。   In addition, according to the above-described embodiment, it is not necessary to compare the time at the time of cell input or cell output, and the counter with the triple period required in the prior art described in Patent Document 1 or the periodic output time Processing such as update processing becomes unnecessary, and processing can be simplified.

上記実施形態によれば、スケジューラをポート毎に設けているが、セル記憶部は全てのポートで共通のため、特許文献1記載の従来技術に比較し、規模を小規模にすることができる。   According to the above embodiment, the scheduler is provided for each port. However, since the cell storage unit is common to all ports, the scale can be reduced as compared with the prior art described in Patent Document 1.

上記実施形態によれば、セル入力時(セル受信時)に、該当コネクションの時刻設定フラグが「0」であれば、次セル時刻を出力時刻として登録するようにしたので、前回の出力セルからのセル間隔を確保しつつ、かつ、前回の出力セル時刻からセル間隔以上たっているときには、セル入力後、即時にセル出力することが可能となる。   According to the above-described embodiment, when the time setting flag of the corresponding connection is “0” at the time of cell input (cell reception), the next cell time is registered as the output time. When the cell interval is secured and the cell interval is longer than the previous output cell time, the cell can be output immediately after cell input.

(B)他の実施形態
上記実施形態では、ATMポートが複数有するATMセル処理装置を示したが、ATMポートが一つのATMセル処理装置に対しても、本発明の技術思想を適用することができる。例えば、図4に示すセルタイミング情報S601の「0」〜「2」を他ポート期間として用いるのではなく、早回し用の期間として利用することにより、ATMポートが一つのATMセル処理装置に対しても、本発明の技術思想を適用することができる。
(B) Other Embodiments In the above embodiment, an ATM cell processing device having a plurality of ATM ports is shown. However, the technical idea of the present invention can be applied to an ATM cell processing device having one ATM port. it can. For example, “0” to “2” of the cell timing information S601 shown in FIG. 4 is not used as the other port period, but is used as a period for fast forwarding, so that the ATM port can be used for one ATM cell processing apparatus. However, the technical idea of the present invention can be applied.

また、セル処理装置が取り扱うセルはATMセルに限定されず、他の固定長パケット(セル)を取扱うセル処理装置に対しても、本発明の技術思想を適用することができる。   The cell handled by the cell processing apparatus is not limited to the ATM cell, and the technical idea of the present invention can be applied to a cell processing apparatus handling other fixed-length packets (cells).

10…ATMセル処理装置、11…セル入力処理部、12…セル記憶部、13…出力周期記憶部、14−1〜14−M…スケジューラ、15…ポートセレクタ、16…タイミングカウンタ、17…マスタ時計、18…次出力時刻算出部、19…バッファ制御部、20…バッファ管理情報記憶部、41−1〜41−M…CAM、42−1〜42−M…CAM検索制御部、43−1〜43−M…ポート時計、44−1〜44−M…ポート時計制御部、45−1〜45−M…マスタ時計位相シフト部。   DESCRIPTION OF SYMBOLS 10 ... ATM cell processing apparatus, 11 ... Cell input process part, 12 ... Cell memory | storage part, 13 ... Output period memory | storage part, 14-1-14-M ... Scheduler, 15 ... Port selector, 16 ... Timing counter, 17 ... Master Clock 18 Next output time calculation unit 19 Buffer control unit 20 Buffer management information storage unit 41-1 to 41-M CAM 42-1 to 42-M CAM search control unit 43-1 ˜43-M... Port clock, 44-1 to 44-M... Port clock controller, 45-1 to 45-M... Master clock phase shift unit.

Claims (3)

入力セルのヘッダに含まれているコネクション番号に基づいて、コネクション番号毎に用意されている複数のキューのうちの対応するキューに入力セルを格納し、上記各キューについて、格納セルに対する次出力時刻を設定し、現時刻が設定されている次出力時刻に合致する格納セルの出力指示を形成するスケジューリング装置において、
コネクション番号毎に次出力時刻を格納し、入力された現時刻に合致する次出力時刻の検索が所定周期で指示される毎に検索を実行する連想メモリ手段と、
現時刻をカウントアップする現時刻時計手段と、
現時刻と基本的な更新周期が同じマスタ時刻を計時するマスタ時計手段と、
上記連想メモリ手段の検索時に、現時刻に合致する次出力時刻が複数あった場合以外では、上記現時刻時計手段による現時刻をカウントアップさせ、現時刻に合致する次出力時刻が複数あった場合には、上記現時刻時計手段による現時刻のカウントアップを停止させ、この停止により現時刻がマスタ時刻より遅れた分を、現時刻に合致する次出力時刻がないときに、上記現時刻時計手段のカウントアップ周期を速めて解消させる現時刻時計制御手段とを有し、
入力セルのヘッダにポート番号が含まれており、
上記連想メモリ手段、上記現時刻時計手段、上記マスタ時計手段及び上記現時刻時計制御手段がポート番号毎に設けられ、上記各連想メモリ手段が検索するタイミングがずれている
ことを特徴とするスケジューリング装置。
Based on the connection number included in the header of the input cell, the input cell is stored in a corresponding queue among a plurality of queues prepared for each connection number, and for each of the queues, the next output time for the storage cell In the scheduling device that forms the output instruction of the storage cell that matches the next output time for which the current time is set,
An associative memory means for storing a next output time for each connection number and executing a search each time a search for a next output time matching the input current time is instructed at a predetermined period;
Current time clock means for counting up the current time;
Master clock means for measuring the master time having the same basic update cycle as the current time;
When searching the associative memory means, when there are a plurality of next output times that match the current time, the current time by the current time clock means is counted up, and there are a plurality of next output times that match the current time. The current time clock means stops when the current time count by the current time clock means is stopped, and when there is no next output time that matches the current time, the current time is delayed from the master time by this stop. have a and the current time clock control means be eliminated to speed up the count-up period of,
The port number is included in the header of the input cell,
The associative memory means, the current time clock means, the master clock means, and the current time clock control means are provided for each port number, and the timing for searching for each associative memory means is shifted. .
コネクション番号毎に複数のキューを有するセル記憶手段と、入力セルのヘッダに含まれているコネクション番号に基づいて、複数のキューのうちの対応するキューに入力セルを格納し、上記各キューについて、格納セルに対する次出力時刻を設定し、現時刻が設定されている次出力時刻に合致する格納セルの出力指示を形成するスケジューリング装置とを有するセル処理装置において、
上記スケジューリング装置として、請求項1に記載のものを適用したことを特徴とするセル処理装置。
Based on the cell storage means having a plurality of queues for each connection number, and the connection number included in the header of the input cell, the input cells are stored in the corresponding queues among the plurality of queues. In a cell processing device having a scheduling device for setting a next output time for a storage cell and forming an output instruction for the storage cell that matches the next output time for which the current time is set,
2. A cell processing apparatus according to claim 1, wherein the scheduling apparatus is one according to claim 1 .
入力セルのヘッダに含まれているコネクション番号に基づいて、コネクション番号毎に用意されている複数のキューのうちの対応するキューに入力セルを格納し、上記各キューについて、格納セルに対する次出力時刻を設定し、現時刻が設定されている次出力時刻に合致する格納セルの出力指示を形成するスケジューリング装置におけるトラヒックシェーピング方法において、
連想メモリ手段は、コネクション番号毎に次出力時刻を格納し、入力された現時刻に合致する次出力時刻の検索が所定周期で指示される毎に検索を実行し、
現時刻時計手段は、現時刻をカウントアップし、
マスタ時計手段は、現時刻と基本的な更新周期が同じマスタ時刻を計時し、
現時刻時計制御手段は、上記連想メモリ手段の検索時に、現時刻に合致する次出力時刻が複数あった場合以外では、上記現時刻時計手段による現時刻をカウントアップさせ、現時刻に合致する次出力時刻が複数あった場合には、上記現時刻時計手段による現時刻のカウントアップを停止させ、この停止により現時刻がマスタ時刻より遅れた分を、現時刻に合致する次出力時刻がないときに、上記現時刻時計手段のカウントアップ周期を速めて解消させ
入力セルのヘッダにポート番号が含まれており、
上記連想メモリ手段、上記現時刻時計手段、上記マスタ時計手段及び上記現時刻時計制御手段がポート番号毎に設けられ、上記各連想メモリ手段が検索するタイミングがずれている
ことを特徴とするトラヒックシェーピング方法。
Based on the connection number included in the header of the input cell, the input cell is stored in a corresponding queue among a plurality of queues prepared for each connection number, and for each of the queues, the next output time for the storage cell In the traffic shaping method in the scheduling device for forming the output instruction of the storage cell that matches the next output time set to the current time,
The associative memory means stores the next output time for each connection number, and executes a search every time a search for the next output time that matches the input current time is instructed in a predetermined cycle,
The current time clock means counts up the current time,
The master clock means keeps the master time having the same basic update cycle as the current time,
The current time clock control means counts up the current time by the current time clock means to match the current time except when there are a plurality of next output times that match the current time when searching the associative memory means. When there are multiple output times, stop counting the current time by the current time clock means, and when there is no next output time that matches the current time, the current time is delayed from the master time. To cancel the count-up cycle of the current time clock means ,
The port number is included in the header of the input cell,
The traffic shaping, wherein the associative memory means, the current time clock means, the master clock means, and the current time clock control means are provided for each port number, and the search timing of each associative memory means is shifted. Method.
JP2013242651A 2013-11-25 2013-11-25 Scheduling device, cell processing device, and traffic shaping method Active JP6237156B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013242651A JP6237156B2 (en) 2013-11-25 2013-11-25 Scheduling device, cell processing device, and traffic shaping method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013242651A JP6237156B2 (en) 2013-11-25 2013-11-25 Scheduling device, cell processing device, and traffic shaping method

Publications (2)

Publication Number Publication Date
JP2015103937A JP2015103937A (en) 2015-06-04
JP6237156B2 true JP6237156B2 (en) 2017-11-29

Family

ID=53379326

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013242651A Active JP6237156B2 (en) 2013-11-25 2013-11-25 Scheduling device, cell processing device, and traffic shaping method

Country Status (1)

Country Link
JP (1) JP6237156B2 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3011159B2 (en) * 1997-11-06 2000-02-21 日本電気株式会社 ATM communication controller

Also Published As

Publication number Publication date
JP2015103937A (en) 2015-06-04

Similar Documents

Publication Publication Date Title
US11709702B2 (en) Work conserving, load balancing, and scheduling
US6952824B1 (en) Multi-threaded sequenced receive for fast network port stream of packets
US6947425B1 (en) Multi-threaded sequenced transmit software for packet forwarding device
CN1520112B (en) network protocol offload engine
US7546399B2 (en) Store and forward device utilizing cache to store status information for active queues
JP4779955B2 (en) Packet processing apparatus and packet processing method
US20120275459A1 (en) Processing packets by a network device
US20070002172A1 (en) Linking frame data by inserting qualifiers in control blocks
US6976256B2 (en) Pipeline processing type shaping apparatus and its method
CN102104541A (en) Header processing engine
US10038571B2 (en) Method for reading and writing forwarding information base, and network processor
US20020016905A1 (en) Packet processing device
JP2011024027A (en) Packet transmission control apparatus, hardware circuit, and program
US6570885B1 (en) Segment-controlled process for controlling castouts from a communication cache in a port in any of multiple nodes in a communications network
JP4530806B2 (en) Packet transmission equipment
EP2777230A1 (en) Parallel processing of network packets
JP6237156B2 (en) Scheduling device, cell processing device, and traffic shaping method
JP6835758B2 (en) Flow control device and method
US7293158B2 (en) Systems and methods for implementing counters in a network processor with cost effective memory
US7822034B2 (en) Path controls apparatus and table updating method
JP2003092591A (en) Packet processor and packet processor system
JP6482296B2 (en) Packet processing system, communication system, packet processing device, packet processing method, and program
US6961337B2 (en) Interleaved processing system for processing frames within a network router
CN107968748A (en) The method and device that a kind of multichannel run-off is sent
WO2003090018A2 (en) Network processor architecture

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160816

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170608

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170725

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170922

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171003

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171016

R150 Certificate of patent or registration of utility model

Ref document number: 6237156

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150