JP2001111557A - スケジューラ - Google Patents

スケジューラ

Info

Publication number
JP2001111557A
JP2001111557A JP28235899A JP28235899A JP2001111557A JP 2001111557 A JP2001111557 A JP 2001111557A JP 28235899 A JP28235899 A JP 28235899A JP 28235899 A JP28235899 A JP 28235899A JP 2001111557 A JP2001111557 A JP 2001111557A
Authority
JP
Japan
Prior art keywords
data
rearranging
output
input
groups
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP28235899A
Other languages
English (en)
Other versions
JP3344383B2 (ja
Inventor
Ryuichi Ikematsu
龍一 池松
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP28235899A priority Critical patent/JP3344383B2/ja
Priority to DE2000148860 priority patent/DE10048860B4/de
Priority to US09/676,815 priority patent/US6731636B1/en
Publication of JP2001111557A publication Critical patent/JP2001111557A/ja
Application granted granted Critical
Publication of JP3344383B2 publication Critical patent/JP3344383B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/624Altering the ordering of packets in an individual queue
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5638Services, e.g. multimedia, GOS, QOS
    • H04L2012/5646Cell characteristics, e.g. loss, delay, jitter, sequence integrity
    • H04L2012/5651Priority, marking, classes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5679Arbitration or scheduling

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

(57)【要約】 【課題】 入力する系統の数Mと出力する系統の数Nが
異なるようなデータを入力してシャッフリングを行う場
合にシャッフルパタンを記憶するメモリの総量を低減す
ることのできるスケジューラを得ること。 【解決手段】 M個ずつN系等のリクエストデータ30
1、302、……30Nは、系統別に用意された出力並
び替え手段311〜31Nに入力され、ここでまず数値
N、Mの公約数である値k個ずつ並び替えを行った後
に、これら並び替え後のグループ単位で並び替えを行
う。この後、入力並び替え手段329に入力されて同様
にグループ内とグループ同士の並び替えが行われる。こ
れらの並び替えには、比較的サイズの小さなシャッフル
パタンを使用できるので、メモリの総量を低減できる。
入力並び替え手段329の出力側には、検索テーブルを
基にして検索を行うことでこれらM個ずつN群のデータ
の検索する経路の順序を変更する検索手段339が設け
られている。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はたとえば非同期転送
モードネットワークで使用する交換機に使用するスケジ
ューラに係わり、特にシャフルパタンを使用して複数の
データ宛先に対する接続を制御するスケジューラに関す
る。
【0002】
【従来の技術】一般に、入力側のN(Nは2以上の正の
整数)系統のデータを出力側のM(Mは2以上の正の整
数)系統に割り当てようとするとき、その割り当てを公
平に行うためにシャッフルパタンを使用したスケジュー
ラが使用される。
【0003】図18は、従来提案されたスケジューラの
構成の概要を表わしたものである。特開平9−3268
28号公報にも同様の技術として開示されているこのス
ケジューラ100は、パケット交換機のクロスバスイッ
チに使用されるもので、入力インタフェースがM個で出
力インタフェースがM個のスイッチとして構成されてい
る。このスケジューラ100は、図示しない第1〜第N
の入力インタフェースからM個ずつ出力される割り当て
要求のためのリクエストデータ101〜10Nを同じく
図示しない第1〜第Nの出力インタフェースに割り当て
ることになる。
【0004】スケジューラ100は、入力インタフェー
ス部からM個ずつそれぞれ出力されるリクエストデータ
101〜10Nを入力する第1〜第Nの出力並び替え手
段111〜11Nと、これら第1〜第Nの出力並び替え
手段111〜11Nの出力する並び替え後のリクエスト
データ121〜12Nを入力する入力並び替え手段12
9を備えている。
【0005】入力並び替え手段129からM個ずつ出力
される並び替え後のデータ131〜13Nは、検索手段
139に入力され、それぞれ許可信号141〜14Nが
出力されるようになっている。このスケジューラ100
には、データの並び替えを行うためのシャフルパタンを
記憶したシャッフルパタン記憶手段151が設けられて
おり、これから出力される一方のシャッフルパタン15
2は第1〜第Nの出力並び替え手段111〜11Nに供
給されて、リクエストデータ101〜10Nの並び替え
に使用される。またシャッフルパタン記憶手段151か
ら出力される他方のシャッフルパタン153は入力並び
替え手段129に供給され、データの並び替えに使用さ
れる。
【0006】図19は、この従来のスケジューラにおけ
る第1の出力並び替え手段の具体的な構成を表わしたも
のである。第1〜第Nの出力並び替え手段111〜11
Nは共に同一の構成となっているので、ここでは第1の
出力並び替え手段111の構成を代表的に表わしてい
る。第1の出力並び替え手段111は、M個のリクエス
トデータ1011〜101Mを入力する1つの並び替え手
段161を備えている。この並び替え手段161には、
図18に示したシャッフルパタン記憶手段151からシ
ャッフルパタン152が供給され、リクエストデータ1
011〜101Mの並び替えがこのパタンに応じて一度に
行われる。並び替えられたリクエストデータ1211
121Mは、図18に示した入力並び替え手段129に
入力される。
【0007】図20は、図18に示したスケジューラに
おける入力並び替え手段の具体的な構成を表わしたもの
である。入力並び替え手段129は、並び替え後のリク
エストデータ121〜12Nを入力する並び替え手段1
76を備えている。並び替え手段176には、図18に
示したシャッフルパタン記憶手段151からシャッフル
パタン153が供給され、リクエストデータ121〜1
2Nの並び替えがこのパタンに応じて一度に行われる。
並び替えられたリクエストデータ131〜13Nは、図
18に示した検索手段139に入力される。
【0008】
【発明が解決しようとする課題】ところで、これら図1
9および図20に示した並び替え手段161、176で
はデータの並び替えをそれぞれ一度で行うようにしてい
る。このような従来技術では、入力する系統の数Mと出
力する系統の数Nが異なるような場合、並び替えのため
のシャッフルパタンを各々個別に用意する必要がある。
これを次に説明する。
【0009】図21は、12個の入力を並び替えるシャ
ッフルパタンの一例を表わしたものである。このような
シャッフルパタンの一部を用いて、12個よりも小さな
8個のシャッフルパタンとして使用することはできな
い。これを更に説明する。図21に示した12個用のシ
ャッフルパタンでは、それぞれの番号(No.)のパタ
ンが“1”から“12”までの値をアクセスの順に対し
て1つずつランダムに配置したものである。したがっ
て、この図21に示したシャッフルパタンから固定的に
8個のデータを取り出すようにしても、その中に常に8
個のシャッフルに必要な“1”から“8”までの値をす
べて含ませるようにすることは不可能だからである。し
たがって、これらを記憶するメモリも別個に用意するこ
とになる。
【0010】今、数Mが“8”で数Nが“12”の場合
を例にとり説明する。このような8×12のスケジュー
リングを行う場合、8個のデータを並び替えるシャッフ
ルパタンは、1個の情報量が24ビットのため、すべて
の並び方のパタン数は8の階乗としての“40320”
となる。また、12個のデータでは1組のシャッフルパ
タンは48ビット、パタン数は12の階乗としての“4
79001600”となる。したがって、40320ワ
ード×24ビットと479001600ワード×48ビ
ットのメモリ容量のメモリを用意する必要がある。ま
た、メモリのアクセスを8ビットのバスで行うと、
“8”のシャッフルパタンの読み出しに3回、また“1
2”のシャッフルパタンの読み出しに6回のメモリアク
セスが必要になる。
【0011】これら2つのメモリへのアクセスを並列に
行って時間を短縮することも考えられる。しかしなが
ら、このような並列処理を行うことにすると、これら2
つのメモリへのアクセスのためにアドレスやデータ制御
信号等のインタフェース信号を2組用意することにな
る。したがって、スケジューラをLSIまたはFPGA
等の集積回路で実現しようとすると、端子数が不足する
事態の発生も考えられる。
【0012】そこで本発明の目的は、入力する系統の数
Mと出力する系統の数Nが異なるようなデータを入力し
てシャッフリングを行う場合にシャッフルパタンを記憶
するメモリの総量を低減することのできるスケジューラ
を提供することにある。
【0013】
【課題を解決するための手段】請求項1記載の発明で
は、(イ)M個(Mは2以上の整数)ずつN群(Nは2
以上の整数)のデータをそれぞれの群別に入力し、M個
の出力側の並び替えを行う手段であって、それぞれ数値
Mと数値Nの公約数である数値k単位でM個のデータを
分割し、これら分割されたk個ずつのデータを入力して
供給されたシャッフルパタンに応じてこれらの並び替え
を行うM/k個の第1の並び替え手段と、これらM/k
個の第1の並び替え手段によって並び替えられた後のそ
れぞれk個ずつのデータをグループとして供給されたシ
ャッフルパタンに応じてこれらM/k個のグループ間の
並び替えを行う第2の並び替え手段とから構成される第
1〜第Nの出力並び替え手段と、(ロ)これら第1〜第
Nの出力並び替え手段によって並び替えられたM個ずつ
N群からなるデータを入力してM個単位でデータの並び
替えを行う手段であって、それぞれM個ずつのグループ
をk個単位のNグループに分割して入力して供給された
シャッフルパタンに応じてこれらの並び替えを行うN個
の第3の並び替え手段と、これらN個の第3の並び替え
手段によって並び替えられた後のそれぞれk個ずつのデ
ータをグループとして供給されたシャッフルパタンに応
じてこれらN個のグループ間の並び替えを行う第4の並
び替え手段とから構成される入力並び替え手段と、
(ハ)この入力並び替え手段によって並び替えたM個ず
つN群のデータを入力して予め定めた検索テーブルを基
にして検索を行うことでこれらM個ずつN群のデータの
検索する経路の順序を変更する検索手段とをスケジュー
ラに具備させる。
【0014】すなわち請求項1記載の発明では、スケジ
ューラをM個ずつN群のデータをそれぞれの群別に入力
する第1〜第Nの出力並び替え手段と、これによって並
び替えられた後のデータを並び替える入力並び替え手段
と、この入力並び替え手段によって最終的に並び替えら
れたデータの検索する経路の順序を変更する検索手段と
から構成されている。ここで第1〜第Nの出力並び替え
手段は、それぞれ数値Mと数値Nの公約数である数値k
単位でM個のデータを分割し、これら分割されたk個ず
つのデータを入力して供給されたシャッフルパタンに応
じてこれらの並び替えを行うM/k個の第1の並び替え
手段と、これらM/k個の第1の並び替え手段によって
並び替えられた後のそれぞれk個ずつのデータをグルー
プとして供給されたシャッフルパタンに応じてこれらM
/k個のグループ間の並び替えを行う第2の並び替え手
段とから構成されており、数値Mと数値Nの公約数であ
る数値kの単位で並び替えを行うことでシャッフルパタ
ン記憶手段のメモリ容量の小型化と共通化を図ってい
る。入力並び替え手段についても同様に2段階構成でシ
ャッフルを行うことで、シャッフルパタン記憶手段のメ
モリ容量の小型化と共通化を図っている。入力並び替え
手段で最終的にシャッフリングが終了したデータが検索
手段に入力されてM個ずつN群のデータの検索する経路
の順序が変更される。
【0015】請求項2記載の発明では、(イ)M個(M
は2以上の整数)よりも少ないL個(Lは2以上の整
数)ずつN群(Nは2以上の整数)のデータをそれぞれ
の群別に入力し、M個の出力側の並び替えを行う手段で
あって、それぞれ数値Mと数値Nの公約数である数値k
単位でL個のデータを分割し、L個とM個の差分に相当
する個数のダミーデータを補充し、補充した後のこれら
分割されたk個ずつのデータを入力して供給されたシャ
ッフルパタンに応じてこれらの並び替えを行うM/k個
の第1の並び替え手段と、これらM/k個の第1の並び
替え手段によって並び替えられた後のそれぞれk個ずつ
のデータをグループとして供給されたシャッフルパタン
に応じてこれらM/k個のグループ間の並び替えを行う
第2の並び替え手段とから構成される第1〜第Nの出力
並び替え手段と、(ロ)これら第1〜第Nの出力並び替
え手段によって並び替えられたM個ずつN群からなるデ
ータを入力してM個単位でデータの並び替えを行う手段
であって、それぞれM個ずつのグループをk個単位のN
グループに分割して入力して供給されたシャッフルパタ
ンに応じてこれらの並び替えを行うN個の第3の並び替
え手段と、これらN個の第3の並び替え手段によって並
び替えられた後のそれぞれk個ずつのデータをグループ
として供給されたシャッフルパタンに応じてこれらN個
のグループ間の並び替えを行う第4の並び替え手段とか
ら構成される入力並び替え手段と、(ハ)この入力並び
替え手段によって並び替えたM個ずつN群のデータを入
力して前記したダミーデータを除外した形で予め定めた
検索テーブルを基にして検索を行うことでこれらM個ず
つN群のデータの検索する経路の順序を変更する検索手
段とをスケジューラに具備させる。
【0016】すなわち請求項2記載の発明では、請求項
1記載の発明が数値Mと数値Nの公約数である数値k単
位で複数組のデータのシャッフリングを行うことにして
いるのに対して、このような数値kの条件を満たさない
場合における発明の適用の道を開いている。すなわちM
個よりも少ないL個(Lは2以上の整数)という数値概
念を導入し、数値Mと数値Nの公約数である数値k単位
でL個のデータを分割し、L個とM個の差分に相当する
個数のダミーデータを補充することで、請求項1記載の
発明と同様の装置動作を可能にし、ダミーデータを補充
した後のデータに対してシャッフルパタンに応じてこれ
らの並び替えを行うようにしている。ダミーデータは最
終的には検索手段で検索の影響がでないように処置する
ようにしている。なお、請求項1および請求項2記載の
発明で、数値Mと数値Nは相違する整数であってもよい
し、同一の整数であってもよい。グループ内とグループ
外の2段階の並び替えを行う場合には、同一の整数でも
適用できるからである。
【0017】請求項3記載の発明では、請求項1または
請求項2記載のスケジューラでk個のデータのシャッフ
ルを行うシャッフルパタンと、N個のデータのシャッフ
ルを行うシャッフルパタンおよびM/k個のデータのシ
ャッフルを行うシャッフルパタンのそれぞれを供給する
シャッフルパタン記憶手段を具備することを特徴として
いる。すなわち請求項3記載の発明では、請求項1また
は請求項2記載のスケジューラの場合、3種類のシャッ
フルパタンを用意すればよい。
【0018】請求項4記載の発明では、請求項3記載の
スケジューラでM個ずつN群のデータは、入力側のN系
統のデータを出力側のM系統に割り当てるための要求を
行うリクエストデータであり、これらのリクエストデー
タはリクエストの有りを示すデータまたはリクエストの
無しを示すデータのいずれかでそれぞれ構成されてお
り、検索手段は、リクエストの有りとされるリクエスト
データを対象に検索を行い入力側のN系統のデータを出
力側のM系統に割り当てることを特徴としている。
【0019】すなわち請求項4記載の発明では、請求項
3記載のスケジューラには入力側のN系統のデータを出
力側のM系統に割り当てるリクエストデータが供給され
るようになっており、リクエスト有りとされるリクエス
トデータに対して検索が行われることを示している。検
索の順序によって入力側のN系統のデータのどれを出力
側のM系統に割り当てるかについて優劣が生じるので、
検索手段に入力される前の段階で入力側のN系統のデー
タの並び替えが行われる。
【0020】請求項5記載の発明では、請求項4記載の
スケジューラでシャッフルパタン記憶手段は、入力側の
系統ごとの優先度に応じてそれぞれの供給先に対する各
シャッフルパタンの出力される回数を調整するシャッフ
ルパタン出力制御手段を具備することを特徴としてい
る。
【0021】すなわち請求項5記載の発明では、請求項
4記載のスケジューラで各並び替え手段に対するシャッ
フルパタンの与え方により入力側の系統ごとに出力側に
対する優先度を調整することができることを明らかにし
ている。
【0022】請求項6記載の発明では、請求項3記載の
スケジューラを構成するシャッフルパタン記憶手段の全
部または一部はレジスタによって構成されていることを
特徴としている。このようにシャッフルパタン記憶手段
の全部または一部をレジスタで構成することで、本来の
メモリに対するアクセス回数を減少させることが可能に
なる。
【0023】
【発明の実施の形態】
【0024】
【実施例】以下実施例につき本発明を詳細に説明する。
【0025】実施例
【0026】図1は本発明の実施例におけるスケジュー
ラの構成を表わしたものである。このスケジューラ20
0は、たとえばATM(asynchronous transfer mode:
非同期転送モード)スイッチとしての入力インタフェー
スが8個で出力インタフェースが12個のスイッチとし
て構成されている。このスケジューラ200は、第1〜
第8の入力インタフェースから出力されるリクエストデ
ータ201〜208を第1〜第12の出力インタフェー
スに割り当てるための調停を行う役割をもっている。図
1に示すスケジューラ200の具体的な構成を説明する
前に、その概要を説明する。
【0027】図2は、入力インタフェースと出力インタ
フェースの対応関係を表わしたものである。この図で縦
軸は、第1〜第8の入力インタフェース(I/F)を表
わしており、縦軸は第1〜第12の出力インタフェース
(I/F)を表わしている。また、この図で信号“1”
となっている箇所が入力インタフェース側で出力インタ
フェース側にリクエストを行っている状態を示してお
り、信号“0”となっている箇所ではこのようなリクエ
ストが行われていない。
【0028】この図でたとえば第1の出力インタフェー
スを見てみると、少なくとも第3および第8の入力イン
タフェースが出力をリクエストしている。第2の出力イ
ンタフェースの箇所を見てみると、少なくとも第1、第
3および第8の入力インタフェースが出力をリクエスト
している。第3の出力インタフェースの箇所を見てみる
と、少なくとも第1および第2の入力インタフェースが
出力をリクエストしている。すなわち、これらのリクエ
ストが出力インタフェース側で競合している。スケジュ
ーラ200は、このような競合が生じた場合に、調停を
行う機能を備えている。この例では、リクエストの有り
無しをそれぞれリクエストの形態と解釈すると、全部で
96個(8×12個)のリクエストの中から、出力イン
タフェースごとに1個ずつのリクエストに対して許可
(グラント)信号を与えるようにしている。調停をそれ
ぞれの入力インタフェースに対して公平に行うために
は、それぞれのリクエストをシャッフルする必要があ
る。
【0029】図1に戻って説明を行う。スケジューラ2
00は、図示しない8個の入力インタフェース部からそ
れぞれ出力される12個ずつのリクエストデータ201
〜208を入力する第1〜第8の出力並び替え手段21
1〜218と、これら第1〜第8の出力並び替え手段2
11〜218の出力する並び替え後の12個ずつのリク
エストデータ221〜228を入力する入力並び替え手
段229を備えている。ここで12個ずつのリクエスト
データ201〜208は、それぞれ入力インタフェース
ごとに出力インタフェースをリクエストするデータであ
る。
【0030】入力並び替え手段229から出力される並
び替え後のそれぞれ12個ずつのデータ231〜238
は、検索手段239に入力され、それぞれ12個ずつの
許可信号241〜248が出力されるようになってい
る。このスケジューラ200には、8個および12個の
データの並び替えを行うためのシャフルパタンを記憶し
た第1のシャッフルパタン記憶手段251が設けられて
おり、これから出力される一方のシャッフルパタン25
2は第1〜第8の出力並び替え手段211〜218に供
給されて、12個ずつのリクエストデータ201〜20
8の並び替えに使用される。また第1のシャッフルパタ
ン記憶手段251から出力される他方のシャッフルパタ
ン253は入力並び替え手段229に供給され、12個
ずつのグループ単位でのデータの並び替えに使用され
る。
【0031】すなわち、実施例のスケジューラ200
で、第1の出力並び替え手段211は前記した第1の入
力インタフェース部から入力され前記した第1〜第8の
出力インタフェースにそれぞれ対応させた12個のリク
エストデータ201を受信する。そしてシャッフルパタ
ン252に従い、第1の出力並び替え手段211によっ
て12個のリクエストの並び替えを行う。第2の出力並
び替え手段212は前記した第2の入力インタフェース
部から入力された12個のリクエストデータ202を受
信して、シャッフルパタン252に従い、第2の出力並
び替え手段212によって同様に12個のリクエストの
並び替えを行う。以下同様であり、第8の出力並び替え
手段218は前記した第8の入力インタフェース部から
入力された12個のリクエストデータ208を受信し
て、シャッフルパタン252に従い、第8の出力並び替
え手段218によって12個のリクエストの並び替えを
行う。
【0032】このようにして第1〜第8の出力並び替え
手段211〜218から出力された12個ずつのリクエ
ストデータ221〜228は、入力並び替え手段229
に入力される。入力並び替え手段229では、これら1
2個ずつを1組として、シャッフルパタン253にした
がって8組のリクエスト群の並び替えが行われる。検索
手段239は、並び替え後のリクエストデータ231〜
238としての8組のリクエスト群を検索テーブルとし
て検索を行う。そして、図2で概要を説明したように、
競合した出力インタフェースへの割り当てについては調
停を行い、順次、転送許可の割り当てを行うようになっ
ている。
【0033】図3は、検索手段の検索のためのアルゴリ
ズムを説明するためのものである。この図で縦軸は入力
インタフェース番号を例示しており、横軸は出力インタ
フェース番号を例示している。ただし、この図では説明
を簡単にするために入力インタフェースと出力インタフ
ェースが5つずつの場合の簡単な例を示している。
【0034】この図3から分るように、図1に示した検
索手段239は、2次元のデータを図で左から右方向に
走査し、右端まで到達したら次の入力インタフェース番
号にカウントアップして、再び図で左から右方向に走査
して出力インタフェース番号を1つずつカウントアップ
する。このように左から右へ、そして上から下へ順にリ
クエストの有無を判断していく。そして、すでに転送許
可が割り当てられた入力インタフェースおよび出力イン
タフェースに対しては、二重に割り当てが行われないよ
うにするというアルゴリズムを実現している。
【0035】入力インタフェース部に複数の転送許可を
与えたとしても、ある時刻には1つのデータしか転送、
すなわち送信を行うことができない。したがって、この
ようにして1つの入力インタフェース部または1つの出
力インタフェース部に同時に転送許可を与えないように
している。
【0036】これを先に示した図2の例に基づいて具体
的に説明する。図3に示すようなテレビジョンのラスタ
走査のような形式で走査を行う場合には、まず第1の入
力インタフェースについて、第2の出力インタフェース
に対応させてリクエストが有ることが分る。これは第1
〜第12の出力インタフェースに対応する最初のものな
ので、その経路の予約が無条件に行われる。これ以後
は、この第1の入力インタフェースについては他の出力
インタフェースへの経路の予約は行われない。すなわ
ち、次の検索で第1の入力インタフェースについて第3
の出力インタフェースにリクエストが有るのが分るが、
これについての経路の予約は行わない。
【0037】図2に示した例で更に検索を続けていく
と、第2の入力インタフェースについて、第3の出力イ
ンタフェースに対応させてリクエストが有ることが分
る。この時点では第2の入力インタフェースと第3の出
力インタフェースの双方についての予約が行われていな
い。したがって、これらを結ぶ経路の予約が行われる。
以下同様にしてリクエストの検索と経路の予約が行われ
ていく。このようにして、スケジューラ200は最大で
96個(8×12個)のリクエストを調停して、データ
転送を行ってもよい経路を選択し、選択された経路に対
して転送許可(グラント)を行うことになる。
【0038】装置内のデータ転送は、実際にはスイッチ
を用いて行っている。したがって、同じ入力インタフェ
ースから複数の出力インタフェースに対して同時にデー
タを送ることはできない。同様にあるひとつの出力イン
タフェースは複数の入力インタフェースから同時にデー
タを受信することもできない。したがって、スケジュー
ラ200は同一の入力インタフェースについて同時に複
数の出力インタフェースへ転送許可を出すことがないよ
うに、また同一の出力インタフェースについて複数の入
力インタフェースが転送許可を得ないように調停を行う
ようになっている。
【0039】なお、本発明に直接関係しないために図1
には示していないが、検索手段239の後段には並び替
え手段が配置されている。この図示しない並び替え手段
は、第1〜第8の出力並び替え手段211〜218およ
び入力並び替え手段229で並び替えたシャッフルパタ
ンを逆変換して元の並びに戻すためのものである。公平
な検索が行われるためにシャッフルを行ったので、その
処理が行われた後は元に戻すことにしたのである。
【0040】第1のシャッフルパタン記憶手段251
は、4個のデータの並び替えを行うためのシャッフルパ
タンを記憶している。このシャッフルパタンは、図示し
ないCPU(中央処理装置)によって計算されてシャッ
フルパタン記憶手段251に格納されている。1組のシ
ャッフルパタンは、グループ番号“1”、“2”、
“3”および“4”を表わすデータが任意の順序で並ん
だものである。もちろん、シャッフルパタン記憶手段2
51に格納されるシャッフルパタンは、たとえば手入力
によって設定され記憶されるようなものであってもよ
い。
【0041】図4は、図1に示した出力並び替え手段の
具体的な構成を表わしたものである。第1〜第8の出力
並び替え手段211〜218は共に同一の構成となって
いるので、ここでは第1の出力並び替え手段211の構
成を代表的に表わしている。第1の出力並び替え手段2
11は、12個のリクエストデータ2011〜2011 2
を4個ずつまとめて入力する第1−1〜第1−3の並び
替え手段261〜263を備えている。これらには、図
1にも示した第1のシャッフルパタン記憶手段251か
らシャッフルパタン252が供給され、4個ずつのリク
エストデータ2011〜2014、2015〜2018、2
019〜20112の並び替えがこのパタンに応じて行わ
れる。並び替えられたそれぞれのリクエストデータ26
1〜26512は、第2の並び替え手段266に入力さ
れる。
【0042】第2の並び替え手段266には、新たなシ
ャッフルパタン記憶手段としての第2のシャッフルパタ
ン記憶手段268からシャッフルパタン269が供給さ
れており、これに基づいて今度は4個ずつのグループ単
位で並び替えが行われる。このようにして並び替えられ
たリクエストデータ221が第1の出力並び替え手段2
11から出力されることになる。
【0043】図5は、図1に示したスケジューラにおけ
る入力並び替え手段の具体的な構成を表わしたものであ
る。入力並び替え手段229は、図1に示した第1〜第
8の出力並び替え手段211〜218から出力されるそ
れぞれ12個ずつのリクエストデータ221〜228を
12個ずつをグループとして4組ずつ入力する第3−1
および第3−2の並び替え手段271、272と、これ
らによって並び替えた後の4×12個ずつのリクエスト
データ273、274を入力してこれらを並び替える第
4の並び替え手段276を備えている。これによって並
び替えた後の12個ずつのデータ231〜238は、図
1に示した検索手段239に入力されることになる。
【0044】この入力並び替え手段229の第3−1お
よび第3−2の並び替え手段271、272には、図1
に示した第1のシャッフルパタン記憶手段251からシ
ャッフルパタン253が供給される。また、第4の並び
替え手段276には、新たなシャッフルパタン記憶手段
としての第3のシャッフルパタン記憶手段278からシ
ャッフルパタン279が供給される。シャッフルパタン
253は、第3−1および第3−2の並び替え手段27
1、272でそれぞれ12個ずつの4組について並び替
えを行い、第4の並び替え手段276は4×12個ずつ
の合計2組についての並び替えを行う。
【0045】ここで、第3のシャッフルパタン記憶手段
278は、2種類のシャッフルパタンを記憶するだけで
よい。したがって、第3のシャッフルパタン記憶手段2
78には、メモリとして専用のものを割り当てる必要は
特になく、一部のメモリ領域を兼用して使用してもよい
し、レジスタでも十分対応させることができる。
【0046】ところで、図1に示した第1〜第8の出力
並び替え手段211〜218におけるリクエストデータ
のグループ内で並び替えを行う手段としての第1−1〜
第1−3の並び替え手段261〜263(図4)は、同
じく図1に示した入力並び替え手段229と、並び替え
る組の数が共に4組であるという点で共通している。も
ちろん、前者の第1−1〜第1−3の並び替え手段26
1〜263の場合には1組として扱うデータの量が1個
であるのに対して、後者の入力並び替え手段229の場
合にはデータ量が12個であるという相違があることを
前提としての共通点である。
【0047】このように両者は並び替える組の数が共通
する。したがって、第1のシャッフルパタン記憶手段2
51から出力される2種類のシャッフルパタン252、
253を共用することが可能である。すなわち、それぞ
れに使用するシャッフルパタンは、第1のシャッフルパ
タン記憶手段251に記憶した複数のシャッフルパタン
の中から任意に選択することが可能になる。
【0048】また、第1−1〜第1−3の並び替え手段
261〜263のそれぞれで使用するシャッフルパタン
2521は、同じパタンを使用してもよいし、互いに異
なるパタンを使用しても構わない。図5に示した第3−
1および第3−2の並び替え手段271、272につい
ても同様である。
【0049】図6〜図8はシャッフルパタン記憶手段内
のパタンの一例をそれぞれ表わしたものである。このう
ち図6は第1のシャッフルパタン記憶手段251に格納
されたパタンを表わしている。番号(No.)で示した
それぞれのパタンには、グループの番号を示す“1”、
“2”、“3”および“4”の値が1つずつ含まれてい
る。図6に示すこのような4個のデータ(値)を並び替
えるシャッフルパタンは全部で24通り存在する。した
がって、シャッフルパタンの番号は“1”から“24”
まで存在している。
【0050】図7は第2のシャッフルパタン記憶手段2
68に格納されたパタンを表わしている。番号(N
o.)で示したそれぞれのパタンには、グループの番号
を示す“1”、“2”および“3”の値が1つずつ含ま
れている。このような3個のデータ(値)を並び替える
シャッフルパタンは全部で6通り存在する。したがっ
て、シャッフルパタンの番号は“1”から“6”まで存
在している。
【0051】図8は第3のシャッフルパタン記憶手段2
78に格納されたパタンを表わしたものである。番号
(No.)で示したそれぞれのパタンには、グループの
番号を示す“1”および“2”の値が1つずつ含まれて
いる。このような2個のデータ(値)を並び替えるシャ
ッフルパタンは全部で2通り存在する。したがって、シ
ャッフルパタンの番号は“1”から“2”まで存在する
ことになる。
【0052】図9および図10は、8×12スケジュー
リングのシャッフルの様子を表わしたものである。ここ
で図9(a)〜(e)は入力インタフェース側の処理の
様子を表わしている。また図10(a)〜(e)はこれ
に対応させて出力インタフェース側の処理の様子を表わ
したものである。
【0053】スケジューラ200による並び替えの前の
段階では、図9および図10の(a)に共に示すよう
に、入力インタフェースと出力インタフェースの並びは
物理的に入力された順序となっている。すなわち、スケ
ジューラ200は入力インタフェースが8個で出力イン
タフェースが12個のスイッチを構成しているので、第
1〜第8の入力インタフェースから出力されるリクエス
トデータ201〜208をそれぞれ“1”から“8”で
表わし、このうちの“1”から“4”までを第1グルー
プとして“5”から“8”までを第2グループとする
と、出力インタフェースの同様の表記は図10(a)に
示すように、第1グループから第3グループにかけて
“1”から“12”の順序となる。
【0054】図10の(b)では、出力グループ内の並
び替えを、図6に示した第1のシャッフルパタン記憶手
段251に格納された番号(No.1)で示した“3,
4,2,1”のパタンを用いて行った場合を示してい
る。この例では、第1〜第3の各グループで同一のシャ
ッフルパタンを使用している。この結果として、第1の
グループでは“3,4,2,1”の順序となり、第2の
グループでは“5,6,7,8”が“7,8,6,5”
の順序となり、第3のグループでは“9,10,11,
12”が“11,12,10,9”の順序となる。
【0055】次に、出力インタフェースのグループ間の
並び替えを行う。これは図10(c)に示している。こ
れについては、図7の第2のシャッフルパタン記憶手段
268の番号(No.5)で示した“3,1,2”のパ
タンで行うとする。この場合には、第3グループが最初
に配置され、第1グループがこれに続いて配置され、第
2グループが最後に配置される。この結果、これらの配
置結果を順に並べると、“(11,12,10,9)、
(3,4,2,1)、(7,8,6,5)”となる。こ
のようにグループ間でシャッフルを行う場合には、グル
ープ内の並び(順序)は変わらない。
【0056】次に図9(d)は、入力インタフェースの
グループ内の並び替えを図6の第1のシャッフルパタン
記憶手段251に格納された番号(No.4)で示した
“2,4,1,3”のパタンを用いて行った場合を示し
ている。これにより、リクエストデータ201〜208
の“1,2,3,4,5,6,7,8”が“2,4,
1,3,6,8,5,7”の順序となる。
【0057】最後に図9(e)は、入力インタフェース
内のグループ間の並び替えを図8の第3のシャッフルパ
タン記憶手段278による“2,1”のパタンを使用し
て行った場合を示している。これにより、リクエストデ
ータ201〜208の“2,4,1,3,6,8,5,
7”が“6,8,5,7,2,4,1,3”の順序とな
る。ここで、出力インタフェースにおけるグループ内シ
ャッフル、同じく出力インタフェースにおけるグループ
間シャッフル、入力インタフェースにおけグループ内シ
ャッフルならびに入力インタフェースにおけるグループ
間シャッフルの4種類の配備される順序は、図9および
図10の(b)〜(e)で示した順序以外の任意の順序
となっていてもよく、このように順序を変えてシャッフ
ルを行ったとしても同じシャッフル結果を得ることがで
きる。しかも、すべてのパタンを順に使用していくこと
で、シャッフル後の検索によって、割り当ての機会の公
平性を保証することが可能になる。
【0058】以上説明したように本実施例では8種類の
入力インタフェースと12種類の出力インタフェースを
最大公約数としての4つずつのグループに分け、それぞ
れについてグループ内でのシャッフルとグループ間のシ
ャッフルの2段階のシャッフルを行うことにしている。
これを一般化して考えると、数値Nと、この数値Nとは
異なる数値Mの2種類のサイズのデータのシャッフルを
行う場合に、これらの数値N、Mの公約数kごとにこれ
らをグループ化して、それぞれについてグループ内での
シャッフルとグループ間のシャッフルの2段階のシャッ
フルを行うことになる。
【0059】スケジューラの一般化
【0060】図11は、この一般化されたスケジューラ
の構成を表わしたものである。このスケジューラ300
は、それぞれM個ずつN通りの図示しない入力インタフ
ェースから供給されるリクエストデータ301、30
2、……30Nを入力する第1〜第Nの出力並び替え手
段311、312、……31Nと、これら第1〜第Nの
出力並び替え手段311、312、……31Nによって
並び替えられたM個ずつN系統のリクエストデータ32
1〜32Nを入力する入力並び替え手段329を備えて
いる。ここで、数値NおよびMは正の整数であり、後に
説明する数値kはこれらの公約数である。
【0061】また、第1の出力並び替え手段311は、
第1の入力インタフェースから受信した出力インタフェ
ースごとのリクスト情報のうち出力インタフェースの並
びを変更する手段である。第2の出力並び替え手段31
2は、第2の入力インタフェースから受信した出力イン
タフェースごとのリクスト情報のうち出力インタフェー
スの並びを変更する手段である。以下同様にして、第N
の出力並び替え手段31Nは、第Nの入力インタフェー
スから受信した出力インタフェースごとのリクスト情報
のうち出力インタフェースの並びを変更する手段であ
る。入力並び替え手段329は、1つの入力インタフェ
ースから受信したM個のデータを1組として、全部でN
組のデータを入力して、組単位で入力インタフェースか
らのリクエストを並び替えるようになっている。
【0062】入力並び替え手段329から出力される並
び替え後のそれぞれM個ずつN系統のデータ331〜3
3Nは、検索手段339に入力され、検索が行われる。
そして、順次、転送許可の割り当てが行われて、M個ず
つN系統の許可信号341〜34Nが出力されるように
なっている。
【0063】このスケジューラ300には、k個ずつの
データを並び替えるためのデータとしてのシャッフルパ
タンを出力する第1のシャッフルパタン記憶手段351
が設けられている。これから出力される一方のシャッフ
ルパタン352は第1〜第Nの出力並び替え手段311
〜31Nに供給されて、リクエストデータ301〜30
Nの並び替えに使用される。また第1のシャッフルパタ
ン記憶手段351から出力される他方のシャッフルパタ
ン353は入力並び替え手段329に供給され、同様に
データの並び替えに使用される。
【0064】なお、実施例で説明したように検索手段3
39の後段には図示しない並び替え手段が設けられてい
る。この並び替え手段は、第1〜第Nの出力並び替え手
段311、312、……31Nおよび入力並び替え手段
329によって並び替えたシャッフルパタンを逆変換し
て元の並びに直すためのものである。
【0065】図12は、出力並び替え手段の構成を具体
的に表わしたものである。ここでは、第1の出力並び替
え手段311を示しているが、残りの第2〜第Nの出力
並び替え手段312、……31Nも同一の構成となって
いる。第1の出力並び替え手段311の回路構成は、先
の実施例における図4に示した回路を一般化したもので
ある。
【0066】すなわち、第1の出力並び替え手段311
は、M個のリクエストデータ301 1〜301Mをk個ず
つまとめて入力する第1〜第Xの並び替え手段361〜
36X(ただしX=M/k)を備えている。これらに
は、図11にも示した第1のシャッフルパタン記憶手段
351からシャッフルパタン352が供給され、k個ず
つのリクエストデータ3011〜301k、301k+1
3012k、301M-k+1〜301Mの並び替えがこのパタ
ンに応じて行われる。並び替えられたそれぞれのリクエ
ストデータ3651〜365Mは、並び替え手段366に
入力される。
【0067】並び替え手段366には、新たなシャッフ
ルパタン記憶手段としての第2のシャッフルパタン記憶
手段368からシャッフルパタン369が供給されてお
り、これに基づいて今度はk個ずつのグループ単位で並
び替えが行われる。このようにして並び替えられたリク
エストデータ321が第1の出力並び替え手段311か
ら出力されることになる。
【0068】図13は、図11に示した一般化された構
成のスケジューラにおける入力並び替え手段の具体的な
構成を表わしたものである。入力並び替え手段329
は、図11に示した第1〜第Nの出力並び替え手段31
1〜21Nから出力されるそれぞれM個ずつのリクエス
トデータ321〜32NをM×k個分ずつ入力して並び
替える第3−1〜第3−Nの並び替え手段371……3
7Nと、これらによって並び替えた後のK×M個ずつの
リクエストデータ373、374、……37Nを入力し
てこれらを並び替える第4の並び替え手段376を備え
ている。これによって並び替えた後のk×M個ずつのデ
ータ331〜33Nは、図11に示した検索手段339
に入力されることになる。
【0069】この入力並び替え手段329の第3−1〜
第3−Nの並び替え手段371〜37Nには、図11に
示した第1のシャッフルパタン記憶手段351からシャ
ッフルパタン353が供給される。また、第4の並び替
え手段376には、新たなシャッフルパタン記憶手段と
しての第3のシャッフルパタン記憶手段378からシャ
ッフルパタン379が供給される。シャッフルパタン3
53は、第3−1〜第3−Nの並び替え手段371〜3
7NでそれぞれM個ずつのk組について並び替えを行
い、第4の並び替え手段376は更に大きなk×M個ず
つの合計N組についての並び替えを行う。第3−1〜第
3−Nの並び替え手段371〜37Nはいずれも同一の
構成をとっている。
【0070】第1の変形例
【0071】ところで一般にN×Mのスケジューラでシ
ャッフルを行うとすると、従来のスケジューラではシャ
ッフルパタンを記憶するために以下の(1)式で示すメ
モリ容量のメモリと(2)式で示すメモリ容量のメモリ
の2種類のメモリが必要であった。
【0072】
【数1】
【0073】
【数2】
【0074】これに対して本発明では次の(3)〜
(5)の各メモリ容量のメモリを備えるだけでよいの
で、用意するメモリの総量を削減することができる。
【0075】
【数3】
【0076】
【数4】
【0077】
【数5】
【0078】なお、前記した式(1)〜(5)は、使用
されている変数としての値N、M、kに条件がある。こ
れらの値N、M、kが2の乗数であるということと、値
kが値N、Mの公約数であるということである。これら
の条件を満たさないと、対数計算の部分や分数が整数に
ならない。これらの条件を満たさない値が設定された場
合には、分数部分の値を「計算値以上の最小の整数」に
切り上げるとか、「対数をとる値以上の2の乗数」にす
るといった変換を行う必要がある。また、請求項2記載
の発明で説明したダミーデータを追加するような場合に
は、値N、Mにダミーデータを加えた値を数式計算上の
値N、Mとする必要がある。
【0079】図14は、本発明の第1の変形例における
シャッフルパタンの例を表わしたものである。このよう
なシャッフルパタン411は、先の実施例の第1のシャ
ッフルパタン記憶手段251(図6参照)に代わって用
意するシャッフルパタンである。このような4通りのシ
ャッフルパタン411の場合には、“1”が最優先とな
る確率は1/2である。また、“2”および“3”が最
優先となる確率はそれぞれ1/4となる。更に、“2”
および“1”が最低の優先となる確率はそれぞれ1/4
であり、“3”が最低の優先となる確率は1/2とな
る。したがって、統計的に見ると、優先度は“1”、
“2”、“3”の順序になる。
【0080】ここでは図1に示した第1〜第8の出力並
び替え手段211〜218のそれぞれのグループ内での
並び替えを行う場合のシャッフルパタン411について
示したが、入力並び替え手段229内の第3のシャッフ
ルパタン記憶手段278(図8)についても同様の制御
が可能である。
【0081】考え得るすべてのシャッフルパタンを用意
しておけば、最優先に位置付けられる確率は、すべての
グループにおいて等しい。同様に、2番目以降の優先に
割り当てられる確率についても、それぞれ、すべてのグ
ループで等しい。実施例ではすべてのシャッフルパタン
の組み合わせを1組用意するという手法をとっていな
い。すなわち、ある場合にはすべてのシャッフルパタン
の組み合わせの中の一部を使用し、別の場合には、同じ
シャッフルパタンを複数記憶させておくことで、グルー
プ間の優先度を自由に制御できるようにしている。たと
えば、ある特定のグループが最優先となる確率を、統計
的に他のグループよりも大きくしたりすることが可能で
ある。
【0082】第2の変形例
【0083】以上説明した実施例およびこれに基づいた
一般的なスケジューラの説明では、数値kは数値Nおよ
びMの公約数であるものとした。しかしながら、このよ
うな前提は必ずしも必要としない。
【0084】図15は、第2の変形例におけるスケジュ
ーラの構成を表わしたものである。この図で図1と同一
部分には同一の符号を付しており、これらの説明を適宜
省略する。この第2の変形例で、スケジューラ500
は、たとえばATM(asynchronous transfer mode:非
同期転送モード)スイッチとしての入力インタフェース
が8個で出力インタフェースが16個のスイッチとして
構成されている。
【0085】スケジューラ500は、図示しない8個の
入力インタフェース部からそれぞれ出力される12個ず
つのリクエストデータ201〜208を入力する第1〜
第8の出力並び替え手段511〜518と、これら第1
〜第8の出力並び替え手段511〜518の出力する並
び替え後の16個ずつのリクエストデータ521〜52
8を入力する入力並び替え手段529を備えている。こ
こで16個ずつのリクエストデータ501〜508は、
それぞれ入力インタフェースごとに出力インタフェース
をリクエストするデータである。
【0086】入力並び替え手段529から出力される並
び替え後のそれぞれ16個ずつのデータ531〜538
は、検索手段539に入力され、それぞれ16個ずつの
許可信号541〜548が出力されるようになってい
る。このスケジューラ500には、データの並び替えを
行うためのシャフルパタンを記憶した第1のシャッフル
パタン記憶手段551が設けられており、これから出力
される一方のシャッフルパタン552は第1〜第8の出
力並び替え手段511〜518に供給されて、16個ず
つのリクエストデータ201〜208の並び替えに使用
される。また第1のシャッフルパタン記憶手段551か
ら出力される他方のシャッフルパタン553は入力並び
替え手段529に供給され、16個ずつのグループ単位
でのデータの並び替えに使用される。入力並び替え手段
529から出力される並び替え後のそれぞれ16個ずつ
のデータ531〜538は、検索手段539に入力さ
れ、それぞれ16個ずつの許可信号541〜548が出
力されるようになっている。
【0087】図16は、図15に示した出力並び替え手
段の具体的な構成を表わしたものである。第1〜第8の
出力並び替え手段511〜518は共に同一の構成とな
っているので、ここでは第1の出力並び替え手段511
の構成を代表的に表わしている。第1の出力並び替え手
段511は、12個のリクエストデータ2011〜20
12を8個ずつ1つのグループとして入力する第1−1
および第1−2の並び替え手段561、562を備えて
いる。ただし、12個のリクエストデータ2011〜2
0112を用いるので、2つ目のグループには4個のリク
エストデータ2019〜20112しかない。そこで4つ
のダミーデータ564をこのグループには代わって入力
するようにしている。ただし、4つのダミーデータ56
4はリクエスト無しの状態を示すデータである。
【0088】第1−1および第1−2の並び替え手段5
61、562には、図1にも示した第1のシャッフルパ
タン記憶手段551からシャッフルパタン552が供給
され、入力されたリクエストデータ(あるいはダミーデ
ータ)の並び替えがこのパタンに応じて行われる。並び
替えられたそれぞれのリクエストデータ5651〜56
16は、第2の並び替え手段566に入力される。
【0089】第2の並び替え手段566には、新たなシ
ャッフルパタン記憶手段としての第2のシャッフルパタ
ン記憶手段568からシャッフルパタン569が供給さ
れており、これに基づいて今度は8個ずつのグループ単
位で並び替えが行われる。このようにして並び替えられ
たリクエストデータ521が第1の出力並び替え手段5
11から出力されることになる。4つのダミーデータ5
64はリクエスト無しの状態を示すデータなので、有効
なリクエストデータよりも優先度の高い順序に並び替え
られても、有効なリクエストデータの割り当てに影響を
与えることはない。
【0090】図17は、図15に示したスケジューラに
おける入力並び替え手段の具体的な構成を表わしたもの
である。入力並び替え手段529は、図15に示した第
1〜第8の出力並び替え手段511〜518から出力さ
れるそれぞれ16個ずつのリクエストデータ521〜5
28を16個ずつをグループとして8組一度に入力する
並び替え手段571を備えている。8組ずつグループ化
すると1つのグループしかできない。そこでこの場合に
はグループ間の並び替えは不要である。並び替え手段5
71にはシャッフルパタン553が供給される。
【0091】図15に示した検索手段539では、8×
16の転送許可の割り当てを行い、その出力としての1
6個ずつの許可信号541〜548が後段の図示しない
回路部分で元のインタフェース番号の並びに戻される。
この時点で、図16の第2の並び替え手段562の箇所
で挿入されたダミーデータ564に対応する許可信号が
取り除かれることになる。
【0092】以上説明したように、数値kが2つの数値
N、Mの公約数でない場合にも、2つの数値N、Mが擬
似的に数値kの公倍数になるようにダミーデータを付加
することで、数値kが2つの数値N、Mの公約数である
場合と同様の並び替えが可能になる。
【0093】なお、実施例ではシャッフルパタン記憶手
段からの各シャッフルパタンの読み出しを平等に行うこ
とを前提とし、これによって各入力インタフェースのリ
クエストに対する平等を図ることにしたが、入力インタ
フェースによって優先度を設けることも可能である。こ
のような場合には、入力側の系統ごとの優先度に応じて
それぞれの供給先に対する各シャッフルパタンの出力さ
れる回数を調整するシャッフルパタン出力制御手段を用
意するようにすればよい。
【0094】また、実施例および変形例ではスケジュー
ラの入出力インタフェースを並び替える2次元のシャッ
フル手法について説明したが、本発明がこれに限定され
るものではない。たとえば2以上の複数次元のデータに
ついてのシャッフルについても同様の考えを適用するこ
とができる。また、実施例および変形例ではグループ内
およびグループ間という2段階のシャッフルについて説
明したが、シャッフルを更に多段にすることも可能であ
る。
【0095】
【発明の効果】以上説明したように請求項1〜請求項6
記載の発明によれば、M個ずつN群のデータをそれぞれ
の群別に入力し、M個の出力側の並び替えを行う場合
に、入力されたデータを複数のグループに区分けしてそ
れぞれについて並び替えを行い、並び替えられたそれぞ
れのグループ単位で並び替えを行うようにした。したが
って、それぞれのデータまたはグループ単位のデータの
並び替えに必要なシャッフルパタンを小さなデータとし
て作成することができ、シャッフルパタンを格納するメ
モリの必要容量を大幅に軽減することができる。
【0096】また、請求項5記載の発明では、請求項4
記載のスケジューラでシャッフルパタン記憶手段は、入
力側の系統ごとの優先度に応じてそれぞれの供給先に対
する各シャッフルパタンの出力される回数を調整するシ
ャッフルパタン出力制御手段を具備することにしている
ので、各並び替え手段に対するシャッフルパタンの与え
方により入力側の系統ごとに出力側に対する優先度を調
整したり、その反対に出力側の系統ごとに入力側に対す
る優先度を調整することができる。
【0097】更に請求項6記載の発明では、請求項3記
載のスケジューラでシャッフルパタン記憶手段の全部ま
たは一部はレジスタによって構成することにしたので、
本来のメモリに対するアクセス回数を減少させることが
可能になる。
【図面の簡単な説明】
【図1】本発明の実施例におけるスケジューラの構成を
表わした説明図である。
【図2】本実施例における入力インタフェースと出力イ
ンタフェースの対応関係を表わした説明図である。
【図3】実施例で検索手段の検索のためのアルゴリズム
を示した説明図である。
【図4】実施例で図1に示した出力並び替え手段の具体
的な構成を表わしたブロック図である。
【図5】図1に示したスケジューラにおける入力並び替
え手段の具体的な構成を表わしたブロック図である。
【図6】実施例で第1のシャッフルパタン記憶手段に格
納されたパタンを表わした説明図である。
【図7】実施例で第2のシャッフルパタン記憶手段に格
納されたパタンを表わした説明図である。
【図8】実施例で第3のシャッフルパタン記憶手段に格
納されたパタンを表わした説明図である。
【図9】実施例で8×12スケジューリングのシャッフ
ルについて入力インタフェース側の処理の様子を表わし
た説明図である。
【図10】実施例で8×12スケジューリングのシャッ
フルについて出力インタフェース側の処理の様子を表わ
した説明図である。
【図11】実施例を基にして一般化されたスケジューラ
の構成を表わしたブロック図である。
【図12】図11に示した一般化された構成のスケジュ
ーラにおける出力並び替え手段の構成を具体的に表わし
たブロック図である。
【図13】図11に示した一般化された構成のスケジュ
ーラにおける入力並び替え手段の具体的な構成を表わし
たブロック図である。
【図14】本発明の第1の変形例におけるシャッフルパ
タンの例を表わしたブロック図である。
【図15】本発明の第2の変形例におけるスケジューラ
の全体的な構成を表わしたブロック図である。
【図16】図15に示した出力並び替え手段の具体的な
構成を表わしたブロック図である。
【図17】図15に示したスケジューラにおける入力並
び替え手段の具体的な構成を表わしたブロック図であ
る。
【図18】従来提案されたスケジューラの構成の概要を
表わしたブロック図である。
【図19】図18に示したスケジューラにおける第1の
出力並び替え手段の具体的な構成を表わしたブロック図
である。
【図20】図18に示したスケジューラにおける入力並
び替え手段の具体的な構成を表わしたブロック図であ
る。
【図21】12個の入力を並び替えるシャッフルパタン
の一例を表わした説明図である。
【符号の説明】
200、300、500 スケジューラ 201〜208 リクエストデータ 211〜218 第1〜第8の出力並び替え手段 229 入力並び替え手段 239 検索手段 241〜248 許可信号 251 第1のシャッフルパタン記憶手段 252、253、269 シャッフルパタン 261〜263 第1−1〜第1−3の並び替え手段
(第1の並び替え手段) 266、366、566 第2の並び替え手段 268 第2のシャッフルパタン記憶手段 271 第3−1の並び替え手段(第3の並び替え手
段) 272 第3−2の並び替え手段(第3の並び替え手
段) 276、376 第4の並び替え手段 278、378 第3のシャッフルパタン記憶手段 301、302、……30N リクエストデータ 361〜36X 第1−1〜第1−Xの並び替え手段
(第1の並び替え手段) 371〜37N 第3−1〜第3−Nの並び替え手段
(第3の並び替え手段) 561、562 第1−1および第1−2の並び替え手
段(第1の並び替え手段)

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 M個(Mは2以上の整数)ずつN群(N
    は2以上の整数)のデータをそれぞれの群別に入力し、
    M個の出力側の並び替えを行う手段であって、それぞれ
    数値Mと数値Nの公約数である数値k単位でM個のデー
    タを分割し、これら分割されたk個ずつのデータを入力
    して供給されたシャッフルパタンに応じてこれらの並び
    替えを行うM/k個の第1の並び替え手段と、これらM
    /k個の第1の並び替え手段によって並び替えられた後
    のそれぞれk個ずつのデータをグループとして供給され
    たシャッフルパタンに応じてこれらM/k個のグループ
    間の並び替えを行う第2の並び替え手段とから構成され
    る第1〜第Nの出力並び替え手段と、 これら第1〜第Nの出力並び替え手段によって並び替え
    られたM個ずつN群からなるデータを入力してM個単位
    でデータの並び替えを行う手段であって、それぞれM個
    ずつのグループをk個単位のNグループに分割して入力
    して供給されたシャッフルパタンに応じてこれらの並び
    替えを行うN個の第3の並び替え手段と、これらN個の
    第3の並び替え手段によって並び替えられた後のそれぞ
    れk個ずつのデータをグループとして供給されたシャッ
    フルパタンに応じてこれらN個のグループ間の並び替え
    を行う第4の並び替え手段とから構成される入力並び替
    え手段と、 この入力並び替え手段によって並び替えたM個ずつN群
    のデータを入力して予め定めた検索テーブルを基にして
    検索を行うことでこれらM個ずつN群のデータの検索す
    る経路の順序を変更する検索手段とを具備することを特
    徴とするスケジューラ。
  2. 【請求項2】 M個(Mは2以上の整数)よりも少ない
    L個(Lは2以上の整数)ずつN群(Nは2以上の整
    数)のデータをそれぞれの群別に入力し、M個の出力側
    の並び替えを行う手段であって、それぞれ数値Mと数値
    Nの公約数である数値k単位でL個のデータを分割し、
    L個とM個の差分に相当する個数のダミーデータを補充
    し、補充した後のこれら分割されたk個ずつのデータを
    入力して供給されたシャッフルパタンに応じてこれらの
    並び替えを行うM/k個の第1の並び替え手段と、これ
    らM/k個の第1の並び替え手段によって並び替えられ
    た後のそれぞれk個ずつのデータをグループとして供給
    されたシャッフルパタンに応じてこれらM/k個のグル
    ープ間の並び替えを行う第2の並び替え手段とから構成
    される第1〜第Nの出力並び替え手段と、 これら第1〜第Nの出力並び替え手段によって並び替え
    られたM個ずつN群からなるデータを入力してM個単位
    でデータの並び替えを行う手段であって、それぞれM個
    ずつのグループをk個単位のNグループに分割して入力
    して供給されたシャッフルパタンに応じてこれらの並び
    替えを行うN個の第3の並び替え手段と、これらN個の
    第3の並び替え手段によって並び替えられた後のそれぞ
    れk個ずつのデータをグループとして供給されたシャッ
    フルパタンに応じてこれらN個のグループ間の並び替え
    を行う第4の並び替え手段とから構成される入力並び替
    え手段と、 この入力並び替え手段によって並び替えたM個ずつN群
    のデータを入力して前記ダミーデータを除外した形で予
    め定めた検索テーブルを基にして検索を行うことでこれ
    らM個ずつN群のデータの検索する経路の順序を変更す
    る検索手段とを具備することを特徴とするスケジュー
    ラ。
  3. 【請求項3】 k個のデータのシャッフルを行うシャッ
    フルパタンと、N個のデータのシャッフルを行うシャッ
    フルパタンおよびM/k個のデータのシャッフルを行う
    シャッフルパタンのそれぞれを供給するシャッフルパタ
    ン記憶手段を具備することを特徴とする請求項1または
    請求項2記載のスケジューラ。
  4. 【請求項4】 M個ずつN群のデータは、入力側のN系
    統のデータを出力側のM系統に割り当てるための要求を
    行うリクエストデータであり、これらのリクエストデー
    タはリクエストの有りを示すデータまたはリクエストの
    無しを示すデータのいずれかでそれぞれ構成されてお
    り、前記検索手段は、リクエストの有りとされるリクエ
    ストデータを対象に検索を行い入力側のN系統のデータ
    を出力側のM系統に割り当てることを特徴とする請求項
    3記載のスケジューラ。
  5. 【請求項5】 前記シャッフルパタン記憶手段は、入力
    側の系統ごとの優先度に応じてそれぞれの供給先に対す
    る各シャッフルパタンの出力される回数を調整するシャ
    ッフルパタン出力制御手段を具備することを特徴とする
    請求項4記載のスケジューラ。
  6. 【請求項6】 前記シャッフルパタン記憶手段の全部ま
    たは一部はレジスタによって構成されていることを特徴
    とする請求項3記載のスケジューラ。
JP28235899A 1999-10-04 1999-10-04 スケジューラ Expired - Fee Related JP3344383B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP28235899A JP3344383B2 (ja) 1999-10-04 1999-10-04 スケジューラ
DE2000148860 DE10048860B4 (de) 1999-10-04 2000-10-02 Ablaufsteuerung, die Durchmischungsmuster kleiner Größe in einem ATM-Netzwerk verwendet
US09/676,815 US6731636B1 (en) 1999-10-04 2000-10-02 Scheduler using small sized shuffle pattern in ATM network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28235899A JP3344383B2 (ja) 1999-10-04 1999-10-04 スケジューラ

Publications (2)

Publication Number Publication Date
JP2001111557A true JP2001111557A (ja) 2001-04-20
JP3344383B2 JP3344383B2 (ja) 2002-11-11

Family

ID=17651378

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28235899A Expired - Fee Related JP3344383B2 (ja) 1999-10-04 1999-10-04 スケジューラ

Country Status (3)

Country Link
US (1) US6731636B1 (ja)
JP (1) JP3344383B2 (ja)
DE (1) DE10048860B4 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7227860B2 (en) 2000-03-01 2007-06-05 Nec Corporation Packet switch and method of scheduling the same
WO2019073858A1 (ja) * 2017-10-12 2019-04-18 日本電信電話株式会社 置換装置、置換方法、およびプログラム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7539199B2 (en) * 2003-02-21 2009-05-26 Gireesh Shrimali Switch fabric scheduling with fairness and priority consideration
US7245203B2 (en) * 2004-04-01 2007-07-17 Grote Industries, Inc. Indicator apparatus and method for a vehicle using side-emitting light-emitting diode
CN102737007B (zh) * 2011-04-07 2015-01-28 中兴通讯股份有限公司 一种支持多个数据单元任意置换的方法和装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5043979A (en) * 1986-09-16 1991-08-27 Hitachi, Ltd. Time-division channel arrangement
US5043980A (en) * 1988-03-14 1991-08-27 Bell Communications Research, Inc. Switching cell for packet switching network
WO1993006676A1 (en) * 1991-09-26 1993-04-01 Communications Satellite Corporation Nonblocking point-to-point fast packet/circuit switching networks
US5299190A (en) * 1992-12-18 1994-03-29 International Business Machines Corporation Two-dimensional round-robin scheduling mechanism for switches with multiple input queues
US5436886A (en) * 1994-07-14 1995-07-25 Northern Telecom Limited ATM switch in dual switch plane operation
US5687172A (en) * 1994-12-30 1997-11-11 Lucent Technologies Inc. Terabit per second distribution network
US5724352A (en) * 1995-08-31 1998-03-03 Lucent Technologies Inc. Terabit per second packet switch having assignable multiple packet loss probabilities
US5734649A (en) 1996-05-31 1998-03-31 Bbn Corporation Data packet router
FI103312B (fi) * 1996-11-06 1999-05-31 Nokia Telecommunications Oy Kytkentämatriisi
US5940389A (en) * 1997-05-12 1999-08-17 Computer And Communication Research Laboratories Enhanced partially self-routing algorithm for controller Benes networks
JPH1155283A (ja) * 1997-08-06 1999-02-26 Fujitsu Ltd Atm交換機
JP3077647B2 (ja) * 1997-11-04 2000-08-14 日本電気株式会社 コンセントレータ型atmスイッチシステム
JP2000059370A (ja) * 1998-08-04 2000-02-25 Fujitsu Ltd トラヒック制御装置およびその方法
US6473428B1 (en) * 1998-12-31 2002-10-29 Nortel Networks Limited Multi-threaded, multi-cast switch

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7227860B2 (en) 2000-03-01 2007-06-05 Nec Corporation Packet switch and method of scheduling the same
WO2019073858A1 (ja) * 2017-10-12 2019-04-18 日本電信電話株式会社 置換装置、置換方法、およびプログラム

Also Published As

Publication number Publication date
JP3344383B2 (ja) 2002-11-11
US6731636B1 (en) 2004-05-04
DE10048860A1 (de) 2001-07-12
DE10048860B4 (de) 2007-03-22

Similar Documents

Publication Publication Date Title
US5500858A (en) Method and apparatus for scheduling cells in an input-queued switch
US8005092B2 (en) Two-dimensional pipelined scheduling technique
JP5603481B2 (ja) 中継装置
US6999457B2 (en) Arbiter circuit and method of carrying out arbitration
EP1374072B1 (en) Apparatus and method for efficiently sharing memory bandwidth in a network processor
CN105468546B (zh) 互连电路的数据处理装置和方法
CN108139882B (zh) 针对网络装置实施阶层分布式链接列表的系统及方法
JPH05507805A (ja) 複数の要求のトグリング優先順位を調停するシステム
US20070091797A1 (en) Method and apparatus for fast 2-key scheduler implementation
EP1439467B1 (en) System and method for allocating a plurality of sources to a plurality of channels
US7664901B2 (en) Data processing apparatus and method for arbitrating access to a shared resource
US6728256B1 (en) Shared buffer control device
JP3698079B2 (ja) データ転送方法、データ転送装置及びプログラム
JP3344383B2 (ja) スケジューラ
US8032543B2 (en) Sorting apparatus and method
CN117176638A (zh) 一种路由路径确定方法及相关组件
US9407578B2 (en) System and method of arbitrating access to interconnect
US20100246590A1 (en) Dynamic assignment of data to switch-ingress buffers
JPH10229404A (ja) セルスイッチ
CN117891758B (zh) 一种基于仲裁的存储访问系统、处理器及计算设备
US7301942B2 (en) Method for determining combination of data for transfer, and combination determining circuit
KR100545634B1 (ko) 파이프라인 방식의 힙 관리기 및 그의 우선순위 정렬 방법
JP2000078148A (ja) スケジューリング制御装置
US20080172508A1 (en) Method and an Arrangement for Arbitrating Requests to Grant Access to Shared Resources
WO2023099603A1 (en) Neural network device, method and system comprising the device

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070830

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080830

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080830

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090830

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090830

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100830

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees