JP3220599B2 - データ待ち行列装置 - Google Patents

データ待ち行列装置

Info

Publication number
JP3220599B2
JP3220599B2 JP21295094A JP21295094A JP3220599B2 JP 3220599 B2 JP3220599 B2 JP 3220599B2 JP 21295094 A JP21295094 A JP 21295094A JP 21295094 A JP21295094 A JP 21295094A JP 3220599 B2 JP3220599 B2 JP 3220599B2
Authority
JP
Japan
Prior art keywords
data
destination
input
bit
queuing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP21295094A
Other languages
English (en)
Other versions
JPH07235931A (ja
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP21295094A priority Critical patent/JP3220599B2/ja
Priority to US08/365,637 priority patent/US5649119A/en
Publication of JPH07235931A publication Critical patent/JPH07235931A/ja
Application granted granted Critical
Publication of JP3220599B2 publication Critical patent/JP3220599B2/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
    • 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
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/104Asynchronous transfer mode [ATM] switching fabrics
    • H04L49/105ATM switching elements
    • H04L49/108ATM switching elements using shared central buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3081ATM peripheral units, e.g. policing, insertion or extraction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/40Constructional details, e.g. power supply, mechanical construction or backplane
    • H04L49/405Physical details, e.g. power supply, mechanical construction or backplane of ATM switches
    • 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

Landscapes

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明はデータ待ち行列装置に
関して、特に、音声,データ,画像などのマルチメディ
アの種々の情報をブロック化したフレーム構造の情報や
固定長パケットのような有限長のデータを一時的に記憶
し、遅延を与えたりデータ交換を行なったりするときに
用いるデータ交換装置や共通バッファ型のデータ交換装
置のアドレスを制御するためのデータ待ち行列装置に関
する。
【0002】
【従来の技術】ATM通信方式では、たとえば回線信号
や音声のような連続的な信号およびデータや動画像のよ
うなバースト的な信号をすべて固定の長さに分解して、
それに宛先情報などを示したルーティングヘッダを付加
してパケットを作り、同一形式のパケットで情報が転送
される。端末装置と伝送路とはフレームなどの同期が不
要となり、端末装置と伝送路との速度は独立でよいた
め、いかなる端末装置に対しても対応することができ
る。しかし、高速パケットスイッチでは、ランダムにパ
ケットが到着するため、ある瞬間には、1つの宛先に複
数のパケットが殺到することがあり、情報の欠落を防ぐ
ために、パケットの待ち合わせをする必要が生じる。
【0003】この問題に対して、たとえば、文献 Inter
national Conference on Communications,1987, セッシ
ョン22、論文番号2、Jean-Pierre Coudreuse,Michel
Sorvel,"PRELUDE:An Asynchronous Time-Division Swi
tched Network, "の第5図および第6図には、高速パケ
ットスイッチが提案されている。この文献は、回線交換
データやパケット交換データを効率よく多重および伝送
する非同期転送モード(ATM)通信方式における高速
パケットスイッチに関するものであり、従来のデータ待
ち行列装置は、その制御回路に見ることができる。
【0004】図41は従来のデータ待ち行列装置を含む
高速パケットスイッチを示すブロック図である。図41
において、入力線111〜11mはパケット多重回路1
3にm(m≧2)のデータを入力するものであり、入力
線111〜11mから入力されるパケットは固定長であ
る。パケット多重回路13は入力されたパケットを多重
化するものであり、到着したルーティングヘッダを制御
回路16に与え、パケットをメモリ14に与える。メモ
リ14は指定したアドレスにデータを書込むことが可能
でありかつアドレスを指定することによって書込順とは
無関係にデータを読出すことができる。メモリ14から
読出されたデータはパケット分離回路15に与えられ、
読出したパケットが分離され、出力線121〜12mに
出力される。制御回路16はパケットの交換を制御す
る。
【0005】図42は図41に示した制御回路をより具
体的に示したブロック図である。この制御回路16は、
上述の文献の第10図に記載されているデータ待ち行列
装置を、説明のために簡略化して示したものである。図
42において、制御回路16はヘッダ変換回路17と循
環セレクタ20とを含む。ヘッダ変換回路17は到着パ
ケットのルーティングヘッダから、そのパケットをメモ
リ14に書込むアドレスを決定し、パケットの宛先出力
線121〜12mを判定し、新しいルーティングヘッダ
に変換するものであり、循環セレクタ20は情報順に選
ぶ。データ待ち行列装置18には、入力線1を介してメ
モリ14への書込アドレス信号が入力されるとともに、
宛先指示入力線31〜3mを介してそのパケットの宛先
が入力され、出力線21〜2mを介してアドレスを待ち
合わせした後に出力する。データ待ち行列装置18は、
出力線121〜12mのそれぞれに対応して設けられた
メモリ191〜19mを含む。データ待ち行列装置18
は、到着したパケットの書込アドレス信号を出力線21
〜2mのそれぞれに対応して並べ、待ち行列を作り、出
力線121〜12mごとに到着順にアドレス信号を出力
する。
【0006】図41に示した高速パケットスイッチの複
数の入力線111〜11mに到着したパケットは、パケ
ット多重回路13で多重化され、メモリ14に書込まれ
る。また、到着パケットの宛先情報を含むルーティング
ヘッダは、制御回路16に与えられ、ヘッダ変換回路1
7によって宛先出力線121〜12mのいずれであるか
が判定され、新しいルーティングヘッダに変換される。
また、メモリ14に書込まれたアドレスはデータ待ち行
列装置18によって宛先出力線121〜12mのそれぞ
れに対応する行列に変換される。データ待ち行列装置1
8では、先入れ先出しメモリ(FIFO)191〜19
mが使用される。
【0007】一方、データ待ち行列装置18から読出さ
れたアドレスに従って、メモリ14からパケットが読出
され、パケット分離回路15で分離されて、パケットが
所定の出力線121〜12mに出力される。上述のデー
タ待ち行列装置18の動作によって、入力線111〜1
1m上のパケットが所望の出力線121〜12mに出力
され、パケットの交換が実現される。
【0008】
【発明が解決しようとする課題】従来のデータ待ち行列
装置は、上述のように構成されているので、たとえばメ
モリ14にP個のパケットの書込容量がある場合には、
先入れ先出しメモリ191〜19mでのアドレスの溢れ
による欠落を防ぐためには、1つ当たりP個のアドレス
を保持できる容量を要する。このため、データ待ち行列
装置18全体では、P×m個のアドレス保持容量を要す
ることになり、その結果として装置の規模が大きくなっ
てしまう。
【0009】一方、本願発明者らは、特願平5−252
80号において、データの待ち行列を保持するメモリを
複数個用意する必要はなく、データの待ち行列を保持す
るメモリをすべての出力線で共有化することにより、メ
モリ容量を少なくして装置全体の規模を小さくするとと
もに、メモリ容量を越えることで生じるデータの廃棄率
を下げることが可能なデータ待ち行列装置を提案した。
【0010】それゆえに、この発明の主たる目的は、上
述の提案されたデータ待ち行列装置に鑑み、複数の出力
線で検索回路を共用する場合に、各構成要素を効率的に
配置できるようなデータ待ち行列装置を提供することで
ある。
【0011】この発明の他の目的は、低消費電力化を図
ることのできるようなデータ待ち行列装置を提供するこ
とである。
【0012】
【課題を解決するための手段】請求項1に係る発明で
は、それぞれがデータ入力部を有し、保持するデータを
このデータ入力部を介してのみ入力し、かつ入力された
データを保持しながらシフトする複数のデータシフト手
段と、それぞれのデータシフト手段に対応して設けら
れ、それぞれのデータの宛先を示す宛先表示ビットを記
憶する宛先表示ビット記憶手段と、宛先表示ビットを検
索して検索されたデータを出力する検索手段とを備えた
データ待ち行列装置において、検索手段は宛先表示ビッ
ト記憶手段に隣接して配置される。
【0013】請求項2に係る発明では、請求項1の宛先
表示ビット記憶手段は、宛先表示ビットをラッチするラ
ッチ手段と、ラッチ手段が宛先表示ビットを保持してい
ないとき、前段からの宛先表示ビットをラッチ手段に保
持させ、後段のラッチ手段が宛先表示ビットを保持して
いないとき、ラッチ手段の宛先表示ビットを後段にシフ
トさせる制御手段とを備えて構成される。
【0014】請求項3に係る発明では、それぞれがデー
タ入力部を有し、保持するデータをこのデータ入力部を
介してのみ入力し、かつ入力されたデータを保持しなが
らシフトする複数のデータシフト手段と、それぞれのデ
ータシフト手段に対応して設けられ、それぞれのデータ
の宛先を示す宛先表示ビットを記憶する宛先表示ビット
記憶手段と、宛先表示ビットを検索して検索されたデー
タを出力する検索手段とを備えたデータ待ち行列装置に
おいて、検索手段は複数の宛先表示ビット記憶手段の中
央に沿って配置される。
【0015】請求項4に係る発明では、複数の宛先表示
ビット記憶手段からの表示ビットを時分割して検索手段
に導くためのバスを含む。
【0016】請求項5に係る発明では、請求項4の検索
手段は各宛先表示ビットをパイプライン処理して検索す
る。
【0017】請求項6に係る発明は、それぞれがデータ
入力部を有し、保持するデータをこのデータ入力部を介
してのみ入力し、かつ入力されたデータを保持しながら
シフトする複数のデータシフト手段と、それぞれのデー
タシフト手段に対応して設けられ、それぞれのデータの
宛先を示す宛先表示ビットを記憶する複数の宛先表示ビ
ット記憶手段と、複数の宛先表示ビットを検索して検索
されたデータを出力する検索手段を含むデータ待ち行列
部を複数段カスケード接続し、各データ待ち行列部は前
段からのデータと宛先表示ビットを受け、後段が空いて
いることに応じて、そのデータと宛先表示ビットを出力
する。
【0018】請求項7に係る発明では、それぞれがデー
タ入力部を有し、保持するデータをこのデータ入力部を
介してのみ入力し、かつ入力されたデータを保持しなが
らシフトする複数のデータシフト手段と、前記それぞれ
のデータシフト手段に対応して設けられ、それぞれのデ
ータの宛先を示す宛先表示ビットを記憶する複数の宛先
表示ビット記憶手段と、複数の宛先表示ビットを検索し
て検索されたデータを出力する検索手段を含むデータ待
ち行列部を複数段カスケード接続し、各データ待ち行列
部は前段からのデータと宛先表示ビットを受け、後段が
空いていることに応じて、そのデータと宛先表示ビット
を出力し、複数段のデータ待ち行列部のうちのk段目
(k<N)のデータを受ける側より前段の装置は、検索
手段による宛先表示ビットの検索を行なわない先入れ先
出しメモリとして用いられる。
【0019】請求項8に係る発明では、請求項7のk段
目のデータを受ける側より前段のデータ待ち行列部には
有効を示す検索入力信号が与えられる。
【0020】請求項9に係る発明では、請求項6の各段
のデータ待ち行列部分の間に設けられ、有効なデータを
蓄積していない段のデータ待ち行列部のシフト動作を停
止させるためのゲート手段を含む。
【0021】請求項10に係る発明では、それぞれがデ
ータ入力部を有し、保持するデータをこのデータ入力部
を介してのみ入力し、かつ入力されたデータを保持しな
がらシフトする複数のデータシフト手段と、それぞれの
データシフト手段に対応して設けられ、それぞれのデー
タの宛先を示す宛先表示ビットを記憶する複数の宛先表
示ビット記憶手段と、複数の宛先表示ビットを検索して
検索されたデータを出力する検索手段とを含むデータ待
ち行列部を複数段カスケード接続し、複数段のデータ待
ち行列部の各々最前部にあるデータシフト手段は、入力
線に共通に接続されてデータを受ける第1のデータ入力
と、前段のデータ待ち行列部からデータを受ける第2の
データ入力とを含み、各データ待ち行列部における最前
段以外のデータシフト手段はデータ入力部を有し、その
保持するデータはそのデータ入力部を介してのみ入力さ
れ、各データ待ち行列部は、自段がある値以上の個数の
データを蓄積したか否かを示す信号を前段へ出力し、後
段から受ける当該信号に応じて、その入力するデータの
受け取り先を前段の装置から入力線に切替える。
【0022】請求項11に係る発明では、請求項10の
各段のデータ待ち行列部のうち、使用されている段のデ
ータ待ち行列部に対応する検索手段のみを有効化する。
【0023】請求項12に係る発明では、請求項6の発
明に、さらに優先度を記憶するための優先度記憶手段を
含み、検索手段は優先度記憶手段に記憶されている優先
度と宛先表示ビットの論理積出力に基づいて検索を行な
う。
【0024】請求項13に係る発明では、それぞれがデ
ータ入力部を有し、保持するデータをこのデータ入力部
を介してのみ入力し、かつ入力されたデータを保持しな
がらシフトする複数のデータシフト手段と、それぞれの
データシフト手段に対応して設けられ、それぞれのデー
タの宛先を示す宛先表示ビットを記憶する複数の宛先表
示ビット記憶手段と、複数の宛先表示ビットを検索して
検索されたデータを出力する検索手段を含むデータ待ち
行列部を複数段カスケード接続し、各データ待ち行列部
は前段からのデータと宛先表示ビットを受けて後段が空
いていることに応じて、そのデータと宛先表示ビットを
出力し、さらに優先度を記憶するための優先度記憶手段
と、各段のデータ待ち行列部のそれぞれに対応して設け
られ、当該データ待ち行列部に優先データが入力される
ごとに加算され、当該データ待ち行列部から優先データ
が出力されるごとに減算されるカウンタとを含み、検索
手段は、カウンタの計数値が所定の値になったことに応
じて、優先度記憶手段に記憶されている優先度と宛先表
示ビットの論理積出力に基づいて検索を行なう。
【0025】請求項14に係る発明では、カウンタは各
段のデータ待ち行列部のそれぞれに対応して複数の優先
度に応じて複数設けられ、さらに各カウンタの出力のう
ち優先度の高い出力を選択し、その出力と宛先表示ビッ
トとの論理積を求めて検索手段に与える論理積手段を含
む。
【0026】請求項15に係る発明では、それぞれがデ
ータ入力部を有し、保持するデータをこのデータ入力部
を介してのみ入力し、かつ入力されたデータを保持しな
がらシフトする複数のデータシフト手段と、それぞれの
データシフト手段に対応して設けられ、それぞれのデー
タの宛先を示す宛先表示ビットを記憶する複数の宛先表
示ビット記憶手段と、複数の宛先表示ビットを検索して
検索されたデータを出力する検索手段を含むデータ待ち
行列部を複数段カスケード接続し、各データ待ち行列部
は前段からのデータと宛先表示ビットを受けて後段が空
いていることに応じて、そのデータと宛先表示ビットを
出力し、優先度を記憶するための優先度記憶手段と、各
段のデータ待ち行列部のそれぞれに対応して設けられ、
当該データ待ち行列部に優先データが入力されるごとに
加算され、当該データ待ち行列部から優先データが出力
されるごとに減算されるカウンタとを含み、検索手段
は、カウンタの計数値が所定の値になったことに応じ
て、優先度記憶手段に記憶されている優先度と宛先表示
ビットの論理積出力に基づいて検索を行ない、さらに一
定の割合で優先記憶手段によって高優先度が指定された
データより低い優先度のデータを優先して一定の割合で
読み出すための手段を含む。
【0027】請求項16に係る発明では、それぞれがデ
ータ入力部を有し、保持するデータをこのデータ入力部
を介してのみ入力し、かつ入力されたデータを保持しな
がらシフトする複数のデータシフト手段と、それぞれの
データシフト手段に対応して設けられ、それぞれのデー
タの宛先を示す宛先表示ビットを記憶する複数の宛先表
示ビット記憶手段と、複数の宛先表示ビットを検索して
検索されたデータを出力する検索手段を含むデータ待ち
行列部を複数段カスケード接続し、各データ待ち行列部
のうち、後段で有効なデータが検出されても、前段で高
優先度の有効なデータが検出されたデータ待ち行列部
は、後段に無効化信号を送出し、前段のデータ待ち行列
部は保持しているデータの優先度が高くなかった場合、
検出信号の送出を停止する。
【0028】請求項17に係る発明では、後段のデータ
待ち行列部は、保持しているデータの優先度が前段のデ
ータ待ち行列部から与えられる無効化信号による優先度
より低い場合に検出信号の送出を停止する。
【0029】請求項18に係る発明では、それぞれがデ
ータ入力部を有し、保持するデータをこのデータ入力部
を介してのみ入力し、かつ入力されたデータを保持しな
がらシフトする複数のデータシフト手段と、それぞれの
データシフト手段に対応して設けられ、それぞれのデー
タの宛先を示す宛先表示ビットを記憶する複数の宛先表
示ビット記憶手段と、複数の宛先表示ビットを検索して
検索されたデータを出力する検索手段を含むデータ待ち
行列部を複数段カスケード接続し、各データ待ち行列部
は前段からのデータと宛先表示ビットを受け、後段が空
いていることに応じて、そのデータと宛先表示ビットを
出力し、さらに、低い優先度のデータを廃棄するための
指令が与えられたことに応じて、その指令と前記優先ビ
ットとの論理積を求めて、当該データ待ち行列部のデー
タをクリアするための論理積手段を含む。
【0030】請求項19に係る発明では、請求項18の
各データ待ち行列部に対応して設けられ、対応のデータ
待ち行列部にデータが入力されるごとに加算され、デー
タが出力されるごとに減算され、所定の計数値になった
ことに応じて、優先度の低いデータを廃棄させるための
カウンタを含む。
【0031】請求項20に係る発明では、請求項19の
カウンタは、データシフト手段の各宛先表示ビットごと
に設けられる。
【0032】請求項21に係る発明では、それぞれがデ
ータを保持しながらシフトする複数のデータシフト手段
と、それぞれのデータシフト手段に対応して設けられ、
それぞれのデータの宛先を示す宛先表示ビットを記憶す
る宛先表示ビット記憶手段と、宛先表示ビットを検索し
て検索されたデータを出力する検索手段とを備えたデー
タ待ち行列装置において、宛先表示ビットは複数の宛先
表示ビットを単位として複数にグループ化されていて、
データ待ち行列装置は、前段に設けられ、複数のグルー
プごとにデータと宛先表示ビットを出力する前段データ
待ち行列回路と、複数のグループごとに設けられ、前段
待ち行列回路から出力されたデータと宛先表示ビットと
が与えられる複数の後段データ待ち行列回路とを備え
る。
【0033】請求項22に係る発明では、請求項21の
複数にグループ化された宛先表示ビットは、宛先表示ビ
ットとその宛先表示ビットの属するグループを識別する
ための表示ビットとを含み、前段のデータ待ち行列回路
および後段の複数のデータ待ち行列回路のそれぞれのデ
ータシフト手段は、データと宛先表示ビットとを保持す
るためのエリアを含み、宛先表示ビット記憶手段は、前
段の、宛先表示ビットの属するグループを識別するため
の表示ビットに応じて、データシフト手段によってデー
タと前記表示ビットとを保持させるための制御手段を含
み、後段の各データ待ち行列回路の各々は、その一部の
入力に前段のデータ待ち行列回路から出力されるデータ
を受け、その残りの入力が接地されたエリアを含み、後
段の制御手段は、後段のデータシフト手段から与えられ
た宛先表示ビットに応じて前段からのデータを後段のデ
ータシフト手段に保持させる。
【0034】請求項23に係る発明は、複数にグループ
化された宛先表示ビットは、宛先表示ビットとその宛先
表示ビットの属するグループを識別するための表示ビッ
トとを含み、データシフト手段と宛先表示ビット記憶手
段は、複数のグループのそれぞれに対応して設けられて
いて、さらに各グループに対応する宛先表示ビットとデ
ータとを対応するデータシフト手段と宛先表示ビット記
憶手段に与えるアドレスフィルタ手段を含む。
【0035】請求項24に係る発明は、請求項1の検索
手段は、複数の出力線に接続され、宛先表示ビット記憶
手段が、複数の出力線をそれぞれに対応付けられた複数
のビットを保持し、複数のビットがそれぞれ宛先表示ビ
ットを示すときに、その対応付けられた出力線にデータ
を出力する。
【0036】請求項25に係る発明では、請求項6の検
索手段は、複数の出力線に接続され、宛先表示ビット記
憶手段が、複数の出力線をそれぞれに対応付けられた複
数のビットを保持し、複数のビットがそれぞれ宛先表示
ビットを示すときに、その対応付けられた出力線にデー
タを出力する。
【0037】請求項26に係る発明では、請求項6のデ
ータ待ち行列部は、検索されたデータを後段の待ち行列
部へ転送する。
【0038】請求項27に係る発明では、各データ待ち
行列部は、自段が入力線からデータを受けておりかつ自
段にデータがなくなったときに、その後段へ別の信号を
出力し、前段から受け取る当該信号に応じて入力するデ
ータの受け取り先を入力線から後段装置へその入力を切
替える。
【0039】
【作用】請求項1に係る発明では、検索手段を宛先表示
ビットに隣接して配置することによりレイアウトを効率
化できる。
【0040】請求項2に係る発明では、請求項1の宛先
表示ビット記憶手段はラッチ手段と制御手段とを含み、
ラッチ手段は宛先表示ビットを保持していないとき、後
段からの宛先表示ビットをラッチ手段に保持させ、前段
のラッチ手段が宛先表示ビットを保持していないとき、
ラッチ手段の宛先表示ビットを前段にシフトさせる。
【0041】請求項3に係る発明では、請求項1の検索
手段を複数の宛先表示ビット記憶手段の中央に沿って配
置することにより、レイアウトを効率化できる。
【0042】請求項4に係る発明では、複数の宛先表示
ビット記憶手段からの表示ビットを次分割してバスを介
して検索手段に導く。
【0043】請求項5に係る発明では、請求項4の検索
手段は各宛先表示ビットをパイプライン処理で検索す
る。
【0044】請求項6に係る発明は、それぞれがデータ
入力部を有し、保持するデータをこのデータ入力部を介
してのみ入力し、かつ入力されたデータを保持しながら
シフトする複数のデータシフト手段と、それぞれのデー
タシフト手段に対応して設けられ、それぞれのデータの
宛先を示す宛先表示ビットを記憶する複数の宛先表示ビ
ット記憶手段と、複数の宛先表示ビットを検索して検索
されたデータを出力する検索手段を含むデータ待ち行列
部を複数段カスケード接続し、各データ待ち行列部は後
段からのデータと宛先表示ビットを受け、前段が空いて
いることに応じて、そのデータと宛先表示ビットを出力
する。
【0045】請求項7に係る発明では、複数段のデータ
待ち行列部のうちのk段目(k<N)のデータを受ける
側より前段の装置は、検索手段による宛先表示ビットの
検索を行なわない先入れ先出しメモリとして用いる。
【0046】請求項8に係る発明では、請求項7のk段
目以降のデータ待ち行列部に有効を示す検索入力信号を
与える。
【0047】請求項9に係る発明では、請求項6の各段
のデータ待ち行列部の間に、ゲート手段を設け、有効な
データを蓄積していない段のデータ待ち行列部のシフト
動作を停止させる。
【0048】請求項10に係る発明では、各データ待ち
行列部は自段がある値以上の個数のデータを蓄積したか
否かを示す信号を前段へ出力し、後段から受ける当該信
号に応じて、その入力するデータの受け取り先を前段の
装置から入力線に切替える。
【0049】請求項11に係る発明では、各段のデータ
待ち行列部のうち、使用されている段のデータ待ち行列
部に対応する検索手段のみを有効化する。
【0050】請求項12に係る発明では、優先度記憶手
段に記憶されている優先度と宛先表示ビットの論理積出
力に基づいて検索を行なう。
【0051】請求項13に係る発明では、データ待ち行
列部に優先データが入力されるごとにカウンタを加算
し、データ待ち行列部から優先データが出力されるごと
にカウンタを減算し、カウンタの計測値が所定の値にな
ったことに応じて検索を行なう。
【0052】請求項14に係る発明では、各段のデータ
待ち行列部のそれぞれに対応して複数の優先度に応じて
カウンタを複数設け、各カウンタの出力のうち優先度の
高い出力を選択し、その出力と宛先表示ビットとの論理
積を求めて検索手段に与える。
【0053】請求項15に係る発明では、一定の割合で
優先度記憶手段をクリアして低い優先度のデータを一定
の割合で読出す。
【0054】請求項16に係る発明では、各データ待ち
行列部のうち、前段で有効なデータが検出されても、次
段で高い優先度の有効なデータが検出された待ち行列部
から前段に無効化信号を送出し、保持しているデータの
優先度が高くなった場合に、前段のデータ待ち行列部か
ら検出信号の送出を停止する。
【0055】請求項17に係る発明では、保持している
データの優先度が後段のデータ待ち行列部から与えられ
る無効化信号による優先度より低い場合に検出信号の送
出を停止する。
【0056】請求項18に係る発明では、低い優先度の
データを廃棄するための指令が与えられたことに応じ
て、その指令と優先ビットとの論理積を求めてデータ待
ち行列部のデータをクリアする。
【0057】請求項19に係る発明では、対応のデータ
待ち行列部にデータが入力されるごとにカウンタを加算
し、データが出力されるごとにカウンタを減算し、所定
の計数値になったことに応じて優先度の低いデータを廃
棄する。
【0058】請求項20に係る発明では、データシフト
手段の各ビットごとにカウンタを設ける。
【0059】請求項21に係る発明では、複数の宛先表
示ビットを単位として複数のグループ化し、データ待ち
行列回路を階層化し、前段のデータ待ち行列回路が複数
のグループごとにデータと宛先表示ビットを後段のデー
タ待ち行列回路に出力し、前段の待ち行列回路から出力
されたデータと宛先表示ビットを各グループごとに出力
する。
【0060】請求項22に係る発明では、宛先表示ビッ
トとその宛先表示ビットの属するグループを識別するた
めの表示ビットとを設け、前段のデータシフト手段でデ
ータと宛先表示ビットとを保持し、前段の制御手段を表
示ビットに応じてデータと宛先表示ビットとをデータシ
フト手段に保持させ、後段の制御手段は前段のデータシ
フト手段から与えられた宛先表示ビットに応じて前段か
らのデータを後段のデータシフト手段に保持させる。
【0061】請求項23に係る発明では、宛先表示ビッ
トとその宛先表示ビットの属するグループを識別するた
めの表示ビットとを設け、前段のアドレスフィルタ手段
によって各グループごとに宛先表示ビットとデータとを
後段のデータ待ち行列回路に出力する。
【0062】請求項24に係る発明では、請求項1の検
索手段は複数のビットがそれぞれ宛先ビットを示すとき
に対応付けられた出力線にデータを出力する。
【0063】請求項25に係る発明では、請求項6の検
索手段は複数のビットがそれぞれ宛先ビットを示すとき
に対応付けられた出力線にデータを出力する。
【0064】請求項26に係る発明では、請求項6のデ
ータ待ち行列部は、検索されたデータを後段の待ち行列
部へ転送する。
【0065】請求項27に係る発明では、請求項10の
データ待ち行列部は、入力線からデータを受けかつ自段
にデータがなくなったときに、前段へ別の信号を出力
し、後段から受けるその信号に応じて入力するデータの
受け取り先を入力線から後段の装置へその入力を切替え
る。
【0066】
【実施例】図1は前述の特願平5−25280号に開示
されたデータ待ち行列装置を示すブロック図である。図
1において、入力線1は有限長のデータを入力するもの
であり、入力されたデータはシフトメモリ4kに与えら
れる。シフトメモリ4kは入力線1に与えたデータを順
次後段にシフトする。以下の説明では、データがシフト
してくる元の側(データを受ける側)を「前段」と称
し、データがシフトして行く先の側(データを出力する
側)を「後段」と称する。
【0067】各シフトメモリ41,42…4kのそれぞ
れに対応して、宛先表示ビットメモリ511〜5kmが
設けられる。たとえば、宛先表示ビットメモリ512は
シフトメモリ41に記憶されているデータが出力線22
を宛先としているか否かを1ビットの情報で示してい
る。また、他の例で、たとえば宛先表示ビットメモリ5
kmはシフトメモリ4kに記憶されているデータが出力
線2mを宛先としているか否かを示している。出力線2
1,22,23…2mに対応して検索回路61,62,
63…6mが設けられる。たとえば、検索回路61は宛
先表示ビットメモリ511,521…5k1に接続され
ている。セレクタ71,72,73…7mは出力線2
1,22,…2mに対応して設けられている。たとえ
ば、セレクタ71は出力線21に対応して、シフトメモ
リ41〜41kから検索回路61の指示に従って、該当
するデータを選択して出力線21に出力する。
【0068】図2〜図4は図1の各部のタイミングを示
すタイムチャートであり、入力線1の本数が1本,出力
線21〜2mの本数mが4本で、シフトメモリ41〜4
kの個数kが6個である場合の各部の状態の変化を示し
ている。
【0069】図2〜図4では、(a)が横軸方向に時間
の流れをタイムスロット単位に示しており、(b)は入
力線1に入力されるデータの一例を示し、(c)は入力
データの宛先を示す宛先指示入力34,33,32,3
1をこの順で示している。(d)〜(o)は、シフトメ
モリ41〜46と宛先表示ビットメモリ511〜564
の各タイムスロットの状態の一例を示している。また、
(p)〜(s)は出力線21〜24に出力されるデータ
を示している。
【0070】入力線1に入力されるデータは有限長の情
報であり、たとえば定められた固定時間に対して区切目
を持つフレーム構造の情報や固定長のアドレス情報や固
定長パケットのようなものである。図2〜図4では、固
定長の時間を定義し、説明のため、タイムスロット1か
ら順に番号をふり、時刻を定義している。また、図2〜
図4では、単位タイムスロットには、1つのデータが到
着するものとしている。
【0071】タイムスロット1以前には、データが到着
していないか、あるいはデータが到着し出力されてから
十分な時間が経過し、内部のシフトメモリ41〜46に
はデータが存在していない例を示している。また、デー
タはタイムスロット1,2,3,4,6,7,8にそれ
ぞれ1つずつ到着している。さらに、図2〜図4は、出
力線21〜24の読出しが、4タイムスロットごとにま
とめて行なわれる場合を示していて、実際にはタイムス
ロット4およびタイムスロット8でデータが読出されて
いる。
【0072】データが入力線1から入力すると同時に、
宛先指示入力31〜34から宛先情報が入力される。た
とえば、入力されたデータが出力線24を宛先とする場
合、宛先指示入力34が有意状態となっている。図2〜
図4では、有意ビット“1”としているので、このとき
入力される宛先指示入力34,33,32,31は、
1,0,0,0となっている。タイムスロット1では、
出力線24宛のデータaがタイムスロット2では、出力
線21宛のデータbが入力されている。今、タイムスロ
ット1ではシフトメモリ46が空いているため、入力デ
ータaはすぐにシフトする。このとき、宛先指示入力3
1〜34は、宛先表示ビット564〜561に取込まれ
る。
【0073】同様にして、タイムスロット2では、シフ
トメモリ45が空いているため、データaがシフトし、
空いたシフトメモリ46には入力したデータbがシフト
してくる。データaがシフトメモリ46から45へシフ
トすると同時に、元の宛先表示ビットメモリ564〜5
61は、次のシフトメモリ45に対応した宛先表示ビッ
トメモリ554〜551へシフトされる。
【0074】次に、出力線21〜24へのデータの読出
しについて説明する。図2には、タイムスロット4でデ
ータをまとめて出力する例を示している。タイムスロッ
ト4でデータを出力するために、タイムスロット4の初
めで、検索回路61〜64は出力すべきデータの検索を
行なう。もし、対応する宛先表示ビットメモリ511〜
564の中にそれぞれ有意ビットがあれば、それが対応
するセレクタ71〜74に通知される。セレクタ71〜
74は、通知のあったシフトメモリ41〜46から1つ
を選択し、データをそれぞれ出力線21〜24に出力す
る。たとえば、出力線21に出力するデータを検索する
のは、検索回路61であり、宛先表示ビットメモリ51
1,521,531,541,551,561の内容が
この順番で読取られ、この中から有意ビット“1”が探
し出される。もし、その中に有意ビットがあれば、セレ
クタ71に通知される。セレクタ71は、図1では6個
のものから1つを選択するセレクタであり、検索回路6
1の指示に従って、6個のシフトメモリ41〜46から
1つを選択し、該当データを出力線216に出力する。
【0075】上述の出力線21にデータを出力させるた
めの動作は、他の出力線22〜24のそれとは独立であ
るので、同時にかつ別々に動作が可能である。検索回路
61〜64によって検索された宛先表示ビットメモリ5
11〜564は、検索の結果、選択されると有意ビット
が消される。また、データが読出されたシフトメモリ4
1〜46は、そのデータが消去される。もし、そのシフ
トメモリ41〜46の後段にデータがあれば、後ろから
シフトされる。
【0076】次に、図2〜図4を参照して、より詳細な
動作について説明する。図2のタイムスロット1〜タイ
ムスロット4においては、データa,b,c,dがそれ
ぞれ入力され、入力されたデータa,b,c,dは、入
力された順にシフトメモリ41〜4kに記憶され、シフ
トされる。タイムスロット4においては、前述のごとく
出力線21〜24へのデータの読出しが行なわれる。
【0077】以下、図2の例で、タイムスロット4にお
いて、出力線21に出力されるデータについて具体的に
説明する。タイムスロット4において、検索回路61は
宛先表示ビットメモリ511,521,531,54
1,551,561の内容をこの順番で読取る。この値
は、それぞれ0,0,0,0,1,1である。この中か
ら有意ビット“1”をこの順番で探すと宛先表示ビット
メモリ551の内容が該当するので、これがセレクタ7
1に通知される。セレクタ71は検索回路61の指示に
従って、6個のシフトメモリ41〜46から45を選択
し、データbを出力線21に出力する。データbが出力
線21に出力されると、タイムスロット4でデータbが
存在していたシフトメモリ45が空き、図3に示すタイ
ムスロット5で後段にあったデータcがシフトメモリ4
5にシフトしてくる。また、データcに付随して、宛先
表示ビットメモリ564,563,562,561の情
報も宛先表示ビットメモリ554,553,552,5
51にシフトしてくる。同様にして、出力線24にはデ
ータaが出力される。
【0078】また、出力線22に該当する宛先表示ビッ
トメモリ512,522,532,542,552,5
62は0,0,0,0,0,0と有意ビットがないた
め、検索回路62は出力するデータがないことをセレク
タ72に通知する。そのため、出力線22からはデータ
は出力されない。同様にして、出力線23からも出力さ
れるデータはない。
【0079】タイムスロット5においては、データが入
力されないため、タイムスロット5におけるデータが空
きのまま順にシフトされる。さらに、タイムスロット6
〜タイムスロット8においては、データe,f,gが順
に入力される。入力されたデータはシフトメモリに記憶
されてシフトされる。
【0080】タイムスロット8においては、前述したよ
うに出力線へのデータの読出しが行なわれる。この場合
には、出力線21に出力するデータとして、検索回路6
1がデータcを検索する。また、出力線22に出力され
るデータとして、検索回路62がデータeを検索する。
これら検索されたデータcとデータeは、それぞれの出
力線に出力される。出力線23および出力線24に関し
ては、宛先表示ビットに有意ビットがないため、検索回
路63および検索回路64は、出力データがないことを
判断する。したがって、出力線23および出力線24に
はデータは出力されない。次に、タイムスロット9〜タ
イムスロット11においては、入力線からデータが入力
されない。この場合には、既にシフトメモリに記憶され
ているデータが順次シフトされる。また、図4に示すタ
イムスロット10では、データdがシフトメモリ41中
に存在しているが、シフトメモリ41は最終段であるの
で、データdはこれ以上シフトできずに、タイムスロッ
ト11でもシフトメモリ41中に存在している。このデ
ータdは、タイムスロット12において、検索回路61
によって出力線21に出力するデータであると検索さ
れ、セレクタ71によって出力線21に出力される。上
述の例では、入力したデータをすべてシフトメモリ46
に書込むことができたが、すべてのシフトメモリ41〜
46にデータが存在する場合にはデータを書込むことが
できないので、このデータは廃棄される。
【0081】図5はこの発明の一実施例のブロック図で
ある。前述の図1に示した例では、回路が3次元的に描
かれている。しかし、図1に示した回路を2次元的な集
積回路へ実現しようとした場合、何らかの工夫が必要と
なる。3次元集積回路などの技術もあるが、現時点で複
数層にわたって、アクティブな回路ブロックを低価格で
実現したものは見当たらないため、2次元で効率よく実
現する必要がある。
【0082】そこで、この発明の一実施例では、図5に
示すように、宛先表示ビットメモリ511〜5k1に隣
接して検索回路61が設けられ、宛先表示ビットメモリ
512〜5k2に隣接して検索回路62が設けられ、宛
先表示ビットメモリ513〜5k3に隣接して検索回路
63が設けられ、宛先表示ビットメモリ514〜5k4
に隣接して検索回路64が配置される。このように配置
することによって、宛先表示ビットと検索回路のブロッ
ク間の配線が他に影響を与えることがないという利点が
ある。さらに、宛先表示ビットと検索回路の組合わせの
レイアウト配置を宛先表示ビット分繰返せばよく、レイ
アウトの作業効率がよくなるという利点がある。
【0083】図6は図5に示した検索回路の具体的な回
路図である。検索回路61には、宛先表示ビットメモリ
511〜5k1から宛先表示ビットが与えられ、これら
の宛先表示ビットは4入力ORゲート62に与えられる
とともに、ORゲート631〜634とNANDゲート
639〜642のそれぞれの一方入力端に与えられる。
ORゲート631の他方入力端には、前段からORチェ
イン信号が与えられる。ORゲート632〜634に
は、前の段のORゲートの出力が与えられる。さらに、
ORゲート631〜634の出力はEXORゲート63
5〜638の一方入力端に与えられ、他方入力端には前
段のORゲートの出力信号が与えられる。NANDゲー
ト639〜642の他方入力端にはEXORゲート63
5〜638の出力信号が与えられる。
【0084】図6に示した検索回路61は、宛先表示ビ
ットメモリ511〜5k1にラッチされている宛先表示
ビットが図6において右方向にシフトするに従って、O
Rゲート631〜634の出力もほぼ同時に変化し、E
XORゲート635〜638およびNANDゲート63
9〜642の出力もそれに従って変化する。シフト動作
後はほぼシフト終了と同時に、宛先表示ビットの中で最
も前方に位置する“1”の位置が選択位置として負論理
で得られることになる。つまり、図6に示した検索回路
によれば、検索時間はほぼ0となる。また、読出し動作
が生じて選択されていたステージの宛先表示ビットがク
リアされると、たとえば以下に示すキャリイ伝搬が生じ
る。
【0085】 (読出し前) 宛先表示ビット 1001000100000000 ORチェイン出力 後1111111100000000前 選択出力 1111111011111111 (読出し後) 宛先表示ビット 1001000000000000 ORチェイン出力 後1111000000000000前 選択出力 1110111111111111 上述の宛先表示ビット,ORチェイン出力,選択出力の
うちアンダーライン部分が変化したところである。
【0086】図6に示したNANDゲート639〜64
2は、万一クリア後の時間経過が不十分なときに次の読
出し動作を行なってしまった場合、間違った遷移中の箇
所を選択することのないように宛先表示ビットと論理積
を取って選択している。このように、宛先表示ビットご
とに検索回路61を設けると、クロック同期の検索回路
ではなく、宛先表示ビットメモリ511〜5k1に直結
した回路を使うことにより、検索にかかる時間を見かけ
上見えなくできる。
【0087】図7は図5に示したシフトメモリと宛先表
示ビットメモリをシフトさせるためのC素子の一例を示
すブロック図であり、図8は図7に示したラッチの具体
的な回路図であり、図9は図7に示したC素子の具体的
な回路図である。図5に示したシフトメモリ41と宛先
表示ビットメモリ511は、図7に示すようにラッチ回
路によって構成されており、R1〜Rnはラッチ回路C
素子510によってシフト制御される。すなわち、後段
にデータをシフトするときには、後段に転送要求信号R
EQoが出力され、後段のラッチが空いていれば、転送
許可信号ACKiがC素子510に与えられる。また、
前段から転送要求信号REQiが与えられると、C素子
510はシフトメモリ41および宛先表示ビットメモリ
511が空であれば、前段に対して転送許可信号ACK
o出力する。
【0088】図7に示したラッチR1〜RnとC素子は
それぞれ図8および図9に示すように構成される。すな
わち、ラッチR1は、インバータ101,104,10
5および106とpチャネルトランジスタ102とnチ
ャネルトランジスタ103とを含む。C素子510から
“H”レベルのLE信号がnチャネルトランジスタ10
3のゲートに与えられるとともに、インバータ101で
反転されてpチャネルトランジスタ102のゲートに与
えられると、これらのトランジスタが導通し、データが
インバータ104と105とからなるラッチ回路にラッ
チされ、そのラッチ出力がインバータ106を介して出
力される。
【0089】また、C素子510はNORゲート111
とRSフリップフロップ112,113とインバータ1
14とORゲート115と遅延回路116〜118とを
含む。
【0090】上述のラッチR1とC素子510について
は、たとえば“An Elastic Pipeline Mechanism by Sel
f-Timed Circuits"IEEE JOURNAL OF SOLID-STATE CIRCU
ITS,Vol.23,No.1,1998 年2月に詳細に記載されている
ため、ここではその説明を省略する。
【0091】図10はこの発明の他の実施例のシステム
ブロック図であって、検索回路を共用した例を示し、図
11は図10に示した検索回路と宛先表示ビットメモリ
の具体的な配置例を示す図である。
【0092】図10において、宛先表示ビットメモリ5
11〜5k4はそれぞれ検索回路60に共通に接続さ
れ、この検索回路60によって宛先表示ビットメモリ5
11〜5k4の宛先表示ビットの検索が行なわれる。こ
の場合、すべて宛先表示ビットメモリ512〜5k4の
上を配線が複数通過することになる。一般に配線本数が
増加すると、レイアウト面積が段数方向に大きくなり、
多くの段数を並べて配置する場合には、その影響を無視
できない。これを少しでも解消する方法として、図11
に示すように、検索回路60を、この検索回路60が受
持つ複数の出力線の中央に配置する。この図11に示し
た例では、宛先表示ビットのレイアウトセルの上を通過
する配線の本数を図10に比べて半分にでき、かつ宛先
表示ビットメモリから検索回路60までの配線の最長距
離も半分になり、動作速度の面でも、あるいは寄生容量
も半減するので、消費電力の面でも有利となる。
【0093】図12は宛先表示ビットメモリを、バスを
介して検索回路に接続した例を示す図であり、図13は
図12に示した動作手順を説明するための図である。
【0094】図12に示すように、縦列の宛先表示ビッ
トメモリ511〜514,521〜524,531〜5
34,5k1〜5k4がそれぞれバス201〜20kを
介して検索回路61に接続される。これは、各宛先表示
ビットメモリ511〜514…から検索回路61への接
続を1本の配線を共用することによって順次データ転送
できるため、各段(以下、ステージと称する)の段方向
のレイアウトを小さくできるという利点がある。すなわ
ち、検索回路61は宛先表示ビットメモリ511〜5k
4の宛先表示ビットを基にして、最も先頭(データを入
力する側を後ろとして、データのシフト転送されて行く
先を先頭と称する)から順にデータを検索していき、最
も先頭に近い位置にある有効ビット(正論理であれば1
が有効であり、負論理であれば逆であり、そのステージ
の宛先表示ビットの宛先が検索している出力行であった
場合、宛先表示ビットの内容は「有効」となっている)
を検索する。通常検索には1サイクル以上かかるが、検
索対象が広がれば、つまり待ち行列の規模が増大すれば
検索にかかる時間も増大する。
【0095】図12に示した実施例の動作は図13に示
すようになる。すなわち、たとえば#nとして宛先表示
ビットメモリ511の宛先表示ビットが検索回路61に
転送され、検索回路61によって検索が行なわれている
間、#n+1として宛先表示ビットメモリ512の宛先
表示ビットが検索回路61に転送され、#nの検査およ
び選択が終了して読出しが行なわれている間、#n+1
の検索および選択が行なわれる。このように、検索回路
61への宛先表示ビットの転送,検索動作,選択動作お
よび読出し動作を並列に実行可能であるため、これらを
パイプライン処理することにより検索回路61に転送す
る時間をマスクでき、高速化を達成できるという利点が
ある。
【0096】図14は図12に示したバスと各宛先表示
ビットメモリとの接続関係を示す図である。図14にお
いて、宛先表示ビットメモリ511は、図8に示した構
成に加えて、ラッチR1の出力がそのゲートに与えられ
るnチャネルトランジスタ231とセレクト信号がその
ゲートに与えられるnチャネルトランジスタ221とを
含む。nチャネルトランジスタ221のソースはnチャ
ネルトランジスタ231のドレインに接続され、nチャ
ネルトランジスタ231のソースは接地される。nチャ
ネルトランジスタ221のドレインはバス201に接続
され、バス201はpチャネルトランジスタ210のド
レインに接続され、pチャネルトランジスタ210のゲ
ートにはプリチャージ信号が与えられ、ソースは電源ラ
インに接続される。バス201は検索回路61に含まれ
るインバータ601の入力に接続される。インバータ6
01の出力はインバータ602を介してラッチ603に
接続される。ラッチ603の出力は図6に示したORゲ
ート631の一方入力端に接続される。他の宛先表示ビ
ットメモリ512〜514も同様にして構成される。
【0097】次に図15を参照して、図14の動作につ
いて説明する。pチャネルトランジスタ210のゲート
に“L”レベルのプリチャージ信号が与えられると、こ
のpチャネルトランジスタ210が導通する。応じて、
バス201は図15(a)に示すように電源電位にプリ
チャージされる。そして、セレクト信号がnチャネルト
ランジスタ221のゲートに与えられると、このnチャ
ネルトランジスタ221がオンする。ラッチR1から図
15(b)に示すように、“H”レベルのデータが出力
されると、nチャネルトランジスタ231が導通し、図
15(c)に示すようなデータがバス201に出力され
る。
【0098】一方、検索回路61のインバータ601は
バス201に出力されたデータを受け、インバータ60
2を介してラッチ603にそのデータをラッチさせる。
以下、前述の図6に示したように、検索動作が行なわれ
る。
【0099】図16はデータ待ち行列装置をカスケード
接続した例を示すブロック図である。この図16に示し
た実施例は、同じデータ待ち行列装置300と301と
をカスケード接続し、転送要求信号REQと転送許可信
号ACKのやり取りによる待ち行列間のデータの転送と
検索結果の後段から前段への転送を実現することによ
り、拡張が可能となる。図16に示すデータ入力は図1
の入力線に対応し、データ出力は出力線に対応する。こ
の実施例では、後段から転送要求信号REQがデータ待
ち行列装置300に入力され、転送許可信号ACKを後
段に伝えると、データが入力され、データ待ち行列装置
300からカスケード出力を介して後段のデータ待ち行
列装置301に伝達される。一方、検索入力は後段のデ
ータ待ち行列装置からデータ待ち行列装置301に与え
られ、前段のデータ待ち行列装置300に転送される。
すなわち、検索信号はデータ入力の流れとは逆に伝達さ
れる。
【0100】図16に示した実施例において、あまり多
くのデータ待ち行列装置をカスケード接続した場合、検
索に必要な時間が、その段数に比例して長くなるという
欠点がある。これを解消するために、たとえば、N段の
カスケード接続を行なっている場合、データシフトを受
けるk(k<N)段目より前段のデータ待ち行列装置を
単なるFIFOとして用いればよい。
【0101】図17はそのような例を示すブロック図で
ある。図17に示した例は、k段目のデータ待ち行列装
置302をFIFOとして用い、後段のデータ待ち行列
装置301に接続されている。この例では、FIFOと
して用いるデータ待ち行列装置302の検索入力は接地
され、後段のデータ待ち行列装置301から検索出力が
与えられない。これによって、キューのトータル長さが
大きく取れかつ検索範囲を限定したために、これによる
データの検索時間がキューのトータル長に比例して長く
かかるというデメリットを解消することができる。
【0102】データ待ち行列装置302の検索入力を接
地することにより、検索入力信号が負論理であるとする
と、検索入力を接地することは、それより前で読出すべ
きデータが発見されたことを示すので、k段目は読出し
動作を行なわない。
【0103】図18は前述の特願平5−25280号に
記載された他の実施例を示すブロック図である。この図
18は以下の点を除いて図1と同様にして構成される。
すなわち、シフトメモリ41〜4kに対応してシフト検
出回路81〜8kが設けられる。このシフト検出回路8
1〜8kは宛先表示ビットメモリ511〜5kmの中の
対応するm個の宛先表示ビットがすべて有意でないこと
を検出すると、シフトメモリ41〜4kにシフトを行な
わすものである。たとえば、シフト検出回路82は2番
目のシフトメモリ42に対応して設けられたものである
が、対応する宛先表示ビットメモリ521,522,…
52mがすべて有意でないことを検出すると、前段のシ
フトメモリ43にシフトを促す。
【0104】図19〜図21は図18の動作を説明する
ためのタイムチャートである。図19〜図21において
は、入力線1の本数が1本であり、出力線21〜2mの
本数mが4本であり、シフトメモリ41〜4kの個数k
が6個である場合の各部の状態の変化を示している。そ
して、図19〜図21では、(a)が横軸方向に時間の
流れをタイムスロット単位に示し、(b)は入力線1に
入力されるデータの一例を示し、(c)は入力データの
宛先を示す宛先指示入力34,33,32,31をこの
順で示している。(d)〜(u)は、シフトメモリ41
〜46と宛先表示ビットメモリ511〜564の各タイ
ムスロットの状態の一例を示している。また、(v)〜
(y)は、出力線21〜24に出力されるデータを示し
ている。
【0105】タイムスロット1以前には、データが到着
していないか、あるいはデータが到着し出力されてから
十分な時間が経過し、内部のシフトメモリ41〜46に
はデータが存在していない例を示してある。データはタ
イムスロット1,2,3,4,6,7,8,9,11に
それぞれ1つずつ到着している。また、図19〜図21
は、出力線21〜24の読出しが4タイムスロットごと
にまとめて行なわれる場合を示していて、実際にはタイ
ムスロット4,タイムスロット8およびタイムスロット
10にデータが読出されている。
【0106】データが入力線1から入力されると同時
に、宛先指示入力31〜34から宛先ビットが入力され
る。たとえば、タイムスロット9で入力されるデータh
は出力線24を宛先としているが、宛先指示入力34が
有意状態となっている。図では、有意ビットを“1”と
しているので、このとき入力される宛先指示入力{3
4,33,32,31}は、{1,0,0,0}となっ
ている。
【0107】また、入力データが複数の出力線に出力さ
れる場合、すなわち同報データであった場合には、宛先
指示入力31〜34には数個のビットが有意となってい
る。たとえば、タイムスロット1で入力されるデータa
は出力線21と出力線24を宛先としているが、宛先指
示入力31と34が有意状態となっている。すなわち、
入力される宛先指示入力{34,33,32,31}
は、{1,0,0,1}となっている。タイムスロット
1では、出力線21と24宛のデータaが入力され、タ
イムスロット2では出力線22宛のデータbが入力され
ている。タイムスロット1では、シフトメモリ46が空
いているため、入力データaはすぐにシフトされる。こ
のとき、宛先指示入力31〜34は宛先表示ビットメモ
リ564〜561に取込まれる。同様にして、タイムス
ロット2では、シフトメモリ45が空いているため、デ
ータaがシフトし、空いたシフトメモリ46には入力さ
れたデータbがシフトしてくる。データaがシフトメモ
リ46から45へシフトすると同時に、元の宛先表示ビ
ットメモリ564〜561の内容は、次のシフトメモリ
45に対応した宛先表示ビットメモリ554〜551へ
シフトする。
【0108】シフト検出回路81〜86は、シフトメモ
リ41〜46に対応して設けられ、宛先表示ビットメモ
リ511〜564の中の対応するm個の宛先表示がすべ
て有意ビットでない状態を検出している。図の例では、
有意ビットが1つでもあれば“1”となり、1つもなけ
れば“0”のように状態定義を行なっている。たとえ
ば、タイムスロット1でのシフトメモリ46に対応する
宛先表示ビットメモリ561〜564はすべて“0”で
あるので、シフト検出回路86の状態は“0”となる。
また、タイムスロット2でのシフトメモリ46に対応す
る宛先表示ビットメモリ561〜564の中には1つ
“1”があるので、シフト検出回路86の状態は“1”
となる。
【0109】次に、出力線21〜24へのデータの読出
しについて説明する。図19にはタイムスロット4でデ
ータをまとめて出力する例を示している。タイムスロッ
ト4でデータを出力するために、タイムスロット4の始
めと検索回路61〜64は出力すべきデータの検索を行
なう。もし、対応する宛先表示ビットメモリ511〜5
64の中にそれぞれ有意ビットがあれば、それが対応す
るセレクタ71〜74に通知される。セレクタ71〜7
4は、通知のあったシフトメモリ41〜46から1つを
選択し、データをそれぞれ出力線21〜24に出力す
る。たとえば、出力線21に出力するデータを検索する
のは、検索回路61であり、宛先表示ビットメモリ51
1,521,531,541,551,561をこの順
番で読取り、この中から有意ビットがあれば、それがセ
レクタ71に通知される。セレクタ71は、図では、6
個のものから1つを選択するセレクタであり、検索回路
61の指示に従って、6個のシフトメモリ41〜46か
ら1つを選択し、該当するデータを出力線21に出力す
る。出力線21にデータを出力させるための動作は、他
の出力線22〜24のそれとは独立であるので、同時に
かつ別々に動作が可能である。
【0110】検索回路61〜64によって検索された宛
先表示ビットメモリ511〜564は、検索の結果、選
択されると有意ビットが消される。そうすると、シフト
検出回路81〜86が新しい状態になった宛先表示ビッ
トメモリ511〜564の値により、当該シフトメモリ
41〜46のシフトの可否を判定する。もし、シフト可
能と判定され、そのシフトメモリ41〜46の前段にデ
ータがあれば、前からシフトされる。
【0111】以下、タイムスロット4において、出力線
21に出力されるデータについて具体的に説明する。タ
イムスロット4において、検索回路61は宛先表示ビッ
トメモリ511,521,53,541,551,56
1をこの順番で読取る。この値は、それぞれ0,0,
0,1,0,1である。この中から有意ビット“1”を
この順番で探すと、宛先表示ビットメモリ541が該当
するので、これがセレクタ71に通知される。セレクタ
71は、検索回路61の指示に従って、6個のシフトメ
モリ41〜46から44を選択し、データaを出力線2
1に出力する。データaが出力線21に出力されると、
該当する宛先表示ビットメモリ541の有意ビットがク
リアされる。同様にして、タイムスロット4において、
検索回路64は出力線24に出力するデータとして、シ
フトメモリ44に格納されているデータaを検索する。
データaが出力線24に出力されると、該当する宛先表
示ビットメモリ544の有意ビットもクリアされる。
【0112】タイムスロット4において、データaが格
納されていたシフトメモリ44に対応する宛先指示入力
{544,543,542,541}は、データaが出
力線21および24に出力されることにより、{1,
0,0,1}から{0,0,0,0}へと変化し、これ
に伴ってシフト検出回路84の値も1から0へと変化す
る。シフト検出回路84の値が1から0へと変化する
と、タイムスロット4でシフトメモリ44に存在してい
たデータaはすべての所望の宛先の出力線21および2
4に出力されたことを意味するので、データaは消去さ
れる。
【0113】同様にして、タイムスロット4でデータb
も出力線22に出力されている。データbの格納されて
いるシフトメモリ45の後段46には、データcが存在
しているので、タイムスロット5でデータcがシフトし
てくる。また、データcに付随して宛先表示ビットメモ
リ564,563,562,561の情報も宛先表示ビ
ットメモリ554,553,552,551にシフトし
てくる。また、出力線23に該当する宛先表示ビットメ
モリ513,523,533,543,553,563
は0,0,0,0,0,0と有意ビットはないため、検
索回路62は出力するデータがないことをセレクタ72
に通知する。そのため、出力線23からは、データは出
力されない。
【0114】次に、タイムスロット5では、入力線にデ
ータが入力されず、タイムスロット6〜タイムスロット
8においてデータe,f,gが入力される。タイムスロ
ット8においては、検索回路が出力すべきデータを検索
する。この場合には、データcが出力線21に出力され
る。また、データdが出力線22に出力される。データ
dは出力線21と出力線22に対する同報データである
が、既に出力線21のデータcが出力されることが決定
されているため、データdは出力線22にのみ出力され
る。また、データeはすべての出力線に出力される同報
データであるが、この場合には既に出力線21および2
2には、データcとデータdが出力されることが先に検
索されているため、データeは出力線23と出力線24
とに出力される。
【0115】次に、タイムスロット9においては、デー
タhが入力され、タイムスロット10においては、デー
タは何も入力されない。また、タイムスロット10で
は、データdがシフトメモリ41中に存在しているが、
シフトメモリ41は最終段であるので、データdはこれ
以上シフトできずに、タイムスロット11でもシフトメ
モリ41中に存在している。このデータdはタイムスロ
ット12において出力線21に出力される。データdが
出力線21に出力されると、宛先表示ビットに有意ビッ
トがなくなるため、シフト検出回路の値は1から0へと
変化する。したがって、データdは消去される。
【0116】図22はmステージごとにゲート回路と蓄
積検出器を設けた例を示すブロック図である。図22に
おいて、#n段目のデータ待ち行列装置310は、mス
テージ分のシフトメモリと宛先表示ビット用メモリを含
んでいて、その先頭のステージにはゲート回路311が
設けられている。また、mステージのそれぞれに有効デ
ータが蓄積されている数を検出するために蓄積数検出器
331が設けられる。後段の#n+1段目のデータ待ち
行列装置320も同様にして構成され、ゲート回路32
1と蓄積数検出器332とを含む。
【0117】次に、動作について説明する。動作開始直
後は、待ち行列内部には有効なデータはなく空きとなっ
ている。動作中でも、適当な入力負荷の状態にあるとき
は、待ち行列装置内で滞留するデータは多くはなく、ほ
とんどのデータメモリは空になっている。このため、#
n段目のデータ待ち行列装置310のゲート回路311
は閉じられていて、データ待ち行列装置310から後段
のデータ待ち行列装置320にデータを通過させない。
このためキューの長さはmで動作する。負荷が増加して
きて、データ待ち行列装置310のステージ利用率(m
ステージ中、Mステージが使用されていたら使用率は
[M/m×100]%である。)が、たとえば、利用率
が80%を超えると、これを蓄積数検出器231が検出
して、ゲート回路311を開く。この時点で、キューの
長さは2mとなる。負荷が2m以上になれば、蓄積数検
出器332はゲート回路321を開く。
【0118】次に、一旦負荷が増大して、多くのゲート
を開いた後に負荷が減少した場合には、キューの中に残
留するデータの数が徐々に減少していく。それは、入っ
てくるデータより出力されていくデータのほうが多くな
るからである。ただし、一旦長くなった実行キュー長を
短くするのは容易ではない。それは、シフト動作の速度
が有限であるため、キューの先頭ステージにすべてのデ
ータが前詰めされているわけではなく、前段から入力さ
れるデータもあるので、キューの中のばらばらの位置に
データが存在している。これらの残留データは、先頭の
ステージに近い位置に存在する古いデータから順に出力
線ごとに読出されていく。これを元の必要最小限のキュ
ー長に復帰させるため、たとえばデータ待ち行列装置3
10の利用率がたとえば20%以下に下がると、ゲート
回路311が閉じられる。このようにすることにより、
キュー中の疎らなデータ存在確率の中で、特にデータの
少ないところは、その範囲の利用率が80%を越えるま
で転送が行なわれない。このため、疎らなデータはいず
れかの範囲に詰まってくることになる。比較的疎らな領
域で、後段が20%以下であるとゲート回路が閉じられ
てデータが前段から入ってこないことになるので、いず
れはすべてのデータが読出され、その範囲をキューから
解放することが可能になる。解放状態はゲート回路が閉
じられている状態なので、特別な制御を不要にできる。
【0119】ステージ間には、後段のステージが空いて
いれば、そのデータが選択された読出されない限り、デ
ータが前詰めされていくので、キューが長ければ、転送
動作が頻繁に生じて電力を消費する。これに対して、図
22に示した例では、負荷の状況に応じてキューの長さ
を制御できるので、利用されていない部分で消費される
電力を節約でき、低電力化が可能になる。同時に、キュ
ーが短いため、検索回路で検索に必要な時間が短くてよ
いことになり、その分だけ高速動作が可能になる。
【0120】図23は図22の各ステージ間における境
目を具体的に示した図である。図23において、各ステ
ージに対応したシフト検出回路312,322が設けら
れ、シフト検出回路312,322は後段のシフト促進
信号を前段に伝える。シフト検出回路312と322と
の間には図22に示したゲート回路311が挿入されて
いて、ゲート回路311の一方入力端にはシフト検出回
路322からのシフト促進信号が与えられ、他方入力端
には蓄積数検出器331から制御信号が与えられる。ゲ
ート回路311の出力は前段のシフト検出回路312に
与えられる。
【0121】後段から“H”レベルのシフト促進信号が
与えられると、シフト検出回路322はそのシフト促進
信号をゲート回路311に与える。蓄積数検出器331
は前段のデータ待ち行列装置310に所定の有効データ
数が詰まっていなければ、“L”レベルの制御信号をゲ
ート回路311に与え、このゲートを閉じる。このた
め、後段のシフト検出回路322からシフト促進信号が
シフト検出回路312に与えられない。それによって、
図22で説明したように、キューはmステージの長さと
なる、データ待ち行列装置310のシフトメモリに所定
数の有効データが詰まっていると、制御信号が“H”レ
ベルにされてゲート回路311が開かれる。それによっ
て、シフト検出回路322からシフト促進信号が前段の
シフト検出回路312に与えられ、キューの長さは2m
となる。
【0122】図24は図22に示した蓄積数検出器の具
体例を示す回路図である。図24において、シフトメモ
リ41,42…と宛先表示ビットメモリ511,512
…とC素子51,52…は前述の図7に示したように構
成されており、C素子51,52…から出力される制御
信号LEはインバータ411,412…で反転され、n
チャネルトランジスタ412,422…の各ゲートに与
えられる。nチャネルトランジスタ412,422…の
各ドレインは共通接続されて電流加算ノードとなり、p
チャネルトランジスタ452のドレインとゲートおよび
pチャネルトランジスタ451のゲートに接続される。
pチャネルトランジスタ452,451のソースには電
源電圧が与えられる。nチャネルトランジスタ412,
422…の各ソースには定電流源となるnチャネルトラ
ンジスタ413,423…の各ドレインに接続され、n
チャネルトランジスタ413,423…のソースは接地
され、nチャネルトランジスタ413,423の各ゲー
トにはバイアス電圧が与えられる。pチャネルトランジ
スタ451のドレインには基準定電流源となる複数のn
チャネルトランジスタ461,462…が並列接続され
るとともに、インバータ470の入力に接続される。n
チャネルトランジスタ461,462…の各ゲートには
バイアス電圧が与えられる。
【0123】C素子51,52…はシフトメモリ41,
42…と宛先表示ビットメモリ511,512…にデー
タの書込みが可能であれば制御信号LEを“H”レベル
にし、自分のデータを後段に送出しないときは制御信号
LEを“L”レベルにする。したがって、制御信号LE
が“L”レベルになっている段数を調べれば、有効なデ
ータを蓄積している段数が判明する。すなわち、たとえ
ばC素子51から出力される制御信号LEが“L”レベ
ルになると、インバータ411によって“H”レベルに
反転され、nチャネルトランジスタ412は導通し、n
チャネルトランジスタ412のドレインには電流Iが流
れる。したがって、有効なデータを蓄えている段数がk
であるとすれば、kIの電流が電流加算ノードに流れ
る。pチャネルトランジスタ451と452はいわゆる
カレントミラー回路を構成しており、pチャネルトラン
ジスタ451のドレインにはkIの電流が流れる。この
電流kIはnチャネルトランジスタ461〜464に流
れる基準電流Irefと加算され、kI>Irefであ
ればインバータ470の出力は“L”レベルであり、R
以上蓄積されたことを示し、kI<Irefであればイ
ンバータ470の出力は“H”レベルであり、R以下蓄
積されたことを示す。ここで、Rはnチャネルトランジ
スタ461〜464の個数である。
【0124】図25はキュー(カスケード接続されたデ
ータ待ち行列全体を指す)が空いている状態では、後段
側に位置するデータ待ち行列装置にデータを与えるよう
にした構成を示す。この際、各データ待ち行列装置に共
通に接続された入力線を介してデータが与えられる。図
25において、#k段目のデータ待ち行列装置340の
最前部ステージ341には、前段の#k−1からのデー
タと入力線からのデータの2つのデータ入力部が設けら
れている。#k段目の入力は前段の#k−1段目からで
なく、入力線から与えられる。後段に位置する#k段目
がほぼ満杯になると、前段の#k−1の入力部343
は、入力線からデータを取るように選択され、同時にス
テージ341は前段の#k−1からデータを取るように
選択される。
【0125】蓄積数検出器333,334には、(自段
から見て)後段の装置がR以上のデータを蓄えているこ
とを示す信号Bと、自段の装置の蓄積数を調べるための
信号X(各ステージから受ける信号)と、(自段から見
て)前段の装置からキュー長を縮めることを要求する信
号Fとを受ける。蓄積数検出器333,334は、それ
ぞれ最前部のステージ391,393における2つのデ
ータ入力部の切換を行うとともに、その後段に対して信
号Fを送出し、その前段に対して信号Bを送出する。
【0126】後段がR以上のデータを蓄えると、後段か
らの信号Bが有意となり、自段の入力は、前段の装置か
らでなく入力線に切替えられる。自段の装置のデータの
蓄積数がRを越えると、前段にそれを表す信号Bを伝え
るとともに、自段の入力が入力線からでなく、前段側に
切替えられる。
【0127】復帰は、自段が現在入力線からデータを入
力しかつ自段にデータがなくなったときで、後段へ信号
Fが送出され、自段の入力は入力線から前段の装置側に
切替えられる。信号Fを受ける後段は、データの入力を
その前段から入力線に切替えられる。
【0128】図26は前述の図25に示した実施例を変
形したものであり、検索回路の消費電力を削減するよう
にしたものである。すなわち、蓄積数検出器333,3
34に対応して検索回路335,336が設けられる。
これらの検索回路335,336は前述のORチェイン
機能を持たせたものである。蓄積数検出器333,33
4は、「初期状態」にあるときは自分の受持ち範囲は未
使用であるので、シフトによりデータを受ける側の装置
も未使用となる。よって、検索をシフトによりデータを
受ける側について行なうことは無意味であるため、対応
の検索回路335,336にその旨を伝える。具体的に
は、ORチェインによる検索回路では、“1”が伝わっ
てくると自分よりも後のステージで読出すべき有効デー
タが見つかったことを示すので、「初期状態」にあると
きは、検索回路335,336のC入力が“1”にさ
れ、検索が無効化される。C入力はその範囲の検索回路
の初段のOR回路に入力される。
【0129】これによって、検索回路335,336内
をキャリイ伝搬のごとく“1”が伝わるのを加速して、
特に大掛かりな回路の増大なしに検索動作を高速化でき
る。ORチェインを用いた検索回路の出力は1つ後のス
テージのOR出力と次段のOR出力のEXORを取るこ
とで選択出力を得ているが、“1”が初めから入力され
ていればEXOR入力が変化することもなく、その意味
で消費電力の削減にも効果がある。
【0130】図27は遅延優先度を示すビットを各ステ
ージに設けた例を示す図である。一般に、ATM通信に
おける遅延優先度とは、入力されてくるデータに遅延優
先度を持たせてやって、高い優先度のデータはキューか
ら早く読出されるようにすることである。これによっ
て、たとえば、ファイル転送などの比較的リアルタイム
性を必要としないアプリケーションと、電話やテレビ電
話などのリアルタイム性を必要とするアプリケーション
を区別して扱うことが可能になる。2レベルの遅延優先
度をサポートしたとして、リアルタイム性の高い電話な
どのデータに高い優先度を割り当てれば、たとえ、その
データより早くにファイル転送のデータがキューに入力
されていても、これを追い越して電話の音声データが装
置を通過していくことができる。
【0131】図27に示した実施例では、そのデータの
遅延優先度を示すビットを各ステージに設けることによ
り、遅延優先度を効率的にサポートすることを目的とし
ている。
【0132】図27において、データ用のシフトメモリ
41と宛先表示ビットメモリ511に対応して、優先ビ
ットメモリ81が設けられるとともに、宛先表示ビット
メモリ511から所望の出力線を選択するための宛先選
択線82が設けられている。たとえば、出力線#3用の
宛先選択線#3を立上げると、検索回路61への入力は
#3のビットの出力が接続される。
【0133】図28は図27に示した例の具体的な回路
図である。検索回路620はインバータ621,622
とANDゲート623,624とOR回路625とを含
む。インバータ621には、図14で説明したバス20
1が接続され、インバータ622には優先選択信号が与
えられる。
【0134】優先データがキュー内に存在するときは、
“H”レベルの優先選択信号が入力され、各宛先表示ビ
ットと優先ビットとの論理積がANDゲート623と6
24とによってとられ、ORゲート625を介して図6
に示した検索回路に入力される。これによって、現在検
索対象となっている宛先に有効なデータが保持されてい
てかつ優先ビットに“1”が立っているところが検索対
象のステージになる。これらの条件を満たすもののう
ち、最もキューの先頭に近いものが選択される。キュー
内に優先度を持ったデータがないときは、優先選択信号
を“L”レベルにしておけば通常の選択結果が得られ
る。
【0135】図29は上述のキュー内に優先度を持った
データが存在するか否かを判別する回路を設けた例を示
すブロック図である。図29において、キュー351
は、シフトメモリと宛先表示ビットメモリと検索回路を
含んでおり、後段側にシフトメモリ41と宛先表示ビッ
トメモリ511と優先ビットメモリ81が接続され、前
段側にはシフトメモリ42と宛先表示ビットメモリ51
2と優先ビットメモリ82とが接続されている。さら
に、キュー351に対応してアップダウンカウンタ35
2が設けられ、前段側の宛先表示ビットメモリ512と
優先ビットメモリ82の出力がANDゲート354によ
って論理積が求められ、アップダウンカウンタ352の
UP入力に与えられる。後段側の宛先表示ビットメモリ
511と優先ビットメモリ81の出力がANDゲート3
53によって論理積が求められ、アップダウンカウンタ
352のdown入力として与えられる。アップダウン
カウタン352の出力は優先選択信号としてキュー35
1に与えられる。
【0136】この図29に示した実施例では、キュー3
51のデータ入力時に、ANDゲート354によって前
段の優先ビットと宛先表示ビットの論理積が取られ、カ
ウンタ352がupされ、同様にしてキュー351から
データが読出されるときには、優先ビットと宛先表示ビ
ットとがANDゲート353によって論理積が取られ、
カウンタ352がdownされる。このようにカウンタ
352は現在キュー351の中に蓄積されている対応す
る宛先の優先度を持ったデータの数がストアされること
になる。そして、カウンタ352の計数値が0でなけれ
ば、優先選択信号が“1”にされ、カウンタ値が0であ
れば優先選択信号が“0”にされる。
【0137】図30は優先度が複数ある場合に、優先度
に応じた優先選択信号を出力する回路例を示す図であ
る。前述の図28に示した例では、1つの優先ビットと
1つの宛先表示ビットに対して1つのカウンタを用意し
たが、優先度が複数ある場合には、それぞれの優先度に
応じたカウンタ361,362,363が設けられる。
図30ではカウンタ361の出力が最も優先度の高いも
のとし、カウンタ361の出力がORゲート364で論
理和が求められ、優先度の最も高い信号として出力され
る。カウンタ362は2番目に優先度が高く、そのカウ
ンタ出力がORゲート365によって論理和が求めら
れ、ANDゲート367の一方入力端に与えられる。A
NDゲート367の他方入力端にはORゲート364の
出力がインバータ369で反転されて与えられる。さら
に、カウンタ363は3番目の優先度であって、その出
力がORゲート366によって論理和が求められ、AN
Dゲート368に与えられる。ANDゲート368の1
つの入力端子には、ORゲート365の出力がインバー
タ370で反転されて与えられ、他の1つはインバータ
369の出力が与えられる。このように論理回路を組合
わせることによって、優先度に応じて優先選択信号が
“1”となり、その他は“0”になる。
【0138】図31は優先度の低いデータであっても一
定の割合で処理するようにした例を示す図である。上述
の各実施例は、常に高い優先度を持ったデータが先に処
理されるようにしたが、低優先度のデータも一定の低い
割合で処理するほうがより場合もある。それは、高い優
先度の処理のために、低優先度のデータが大量にキュー
351内に蓄積されてしまい、受け側でエラーが生じた
と誤判断されるような事態が起きる可能性がないとはい
えないからである。このために、図31に示すようにカ
ウンタ352のほかに別個のカウンタ355が設けら
れ、このカウンタ355は内部クロック信号を計数し、
キャリイ出力が得られたとき、それをインバータ356
で反転し、ANDゲート358を閉じる。ANDゲート
358が閉じられることによって、カウンタ352の出
力の論理和を求めるORゲート357からの優先信号が
キュー351に与えられなくなり、一定の割合で低い優
先度のデータが読出される。カウンタ355はロードさ
れたLVから最大数まで計数し続けるので、ロード値を
適当に設定することにより、場合に応じて低優先データ
の読出し確率を設定できる。
【0139】図32は優先度を検出するための検出回路
の他の例を示すブロック図である。この図32に示した
例は、無効化信号を検出回路600に与えるようにし、
対応するステージに優先度によらず読出すべきデータが
あれば検出信号を前段に送り、優先度の高い読出すべき
データがあれば無効化信号を後段におくる。検出信号を
受取った場合には、その検出信号が前段に伝えられ、無
効化信号を前段から受取った場合は、無効化信号を後段
へ伝えると同時に、優先度の低い読出すべきデータを備
えている場合は、自分の出力している検出信号を停止
し、後段からの検出信号は伝えるようにする。優先度の
高い読出すべきデータを備えている場合には何もしな
い。さらに、読出すべきデータを蓄えていない場合には
何もしない。
【0140】図33は図32に示した検出回路の具体的
な回路図である。検出回路600はANDゲート60
1,602とORゲート603,604とNANDゲー
ト605とインバータ606とを含み、このような論理
回路によって、上述の動作を実行することができる。
【0141】図34はキュー中に蓄えられている低優先
度のデータを一括廃棄できるようにした例を示すブロッ
ク図である。廃棄優先は交換機などの装置内のバッファ
が溢れそうになったとき、低優先度のデータを廃棄し
て、全体が動作不能に陥るのを防ぐ、あるいは高優先度
のデータの通信に支障がないようにするためのものであ
る。従来の遅延優先処理は、バッファが溢れそうになっ
た場合、新たに装置に流入するデータのうち、低優先度
のものを受付けないという処理が一般的である。宛先表
示ビットメモリ512の出力はカウンタ352のup入
力に与えられ、キュー351から出力される宛先表示ビ
ットはカウンタ352のdown入力に与えられる。カ
ウンタ352はキュー351に宛先表示ビットが入力さ
れるごとにカウンタアップし、キュー351から宛先表
示ビットが出力されるごとにダウンする。したがって、
カウンタ352には、キュー351に蓄えられている有
効データの数がストアされることになる。カウンタ35
2の値が予め定められているしきい値を越えると、制御
回路83はキュー351に対して廃棄指令を出す。廃棄
指令を受けたキュー351は優先ビット(この場合は遅
延優先ビットではなく廃棄優先ビット)と、廃棄指令の
信号の論理積で、低優先のデータを蓄えている段をクリ
アする。クリアの具体的な方法としては、すべての宛先
表示ビットをクリアするか、あるいは前述の図9に示し
たC素子をクリアするようにしてもよい。
【0142】なお、図34に示したカウンタ352を各
宛先表示ビットごとに用意すれば、出力線ごとのキュー
の利用率の情報を得ることができる。
【0143】図35は宛先表示ビットメモリを廃棄指令
によってクリアする例を示すブロック図である。優先ビ
ットメモリ81の出力と廃棄指令と論理積を求めるため
にANDゲート84が設けられ、ANDゲート84の出
力が宛先表示ビットメモリ511のクリア端子に入力さ
れる。これによってある出力行のデータで低優先のもの
だけをクリアすることができる。
【0144】図36はこの発明のキューを用いてスイッ
チ規模を拡大した例を示す図であり、図37はキューを
ツリー接続した例を示す図である。
【0145】図36において、ATMセルには、ルーテ
ィングヘッダa1〜a4,b1〜b4のように階層化さ
れて付加される。ルーティングヘッダa1〜a4は複数
のグループを識別するための表示ビットである。ATM
セルは図37に示す1段目のキュー700に入力され
る。キュー700はATMセルに付加されているルーテ
ィングヘッダa1〜a4を参照してスイッチングし、2
段目のキュー701〜704のうちの該当するキューに
出力する。キュー701はルーティングヘッダb1〜b
4を参照してスイッチングし、それぞれのルーティング
ヘッダb1〜b4ごとにATMセルを出力する。したが
って、図37に示した実施例は、4つの宛先を持つキュ
ーを用いて16の宛先に信号を送信できる。なお、図3
7に示した例は、1段目のキュー700と2段目のキュ
ー701〜704の2階層で構成したが、さらにキュー
の段数を増やすことによってさらにスイッチング処理を
拡大するようにしてもよい。
【0146】図38は階層化されたルーティングヘッダ
とツリー接続とを組合わせた例を示す図である。この実
施例は、キュー711がルーティングヘッダaを参照し
てスイッチングし、キュー712がルーティングヘッダ
bを参照してスイッチングする。ATMセルのビット幅
m,ルーティングヘッダbのビット幅h,宛先ビットa
のビット幅hとすると、ATMセルとルーティングヘッ
ダbがキュー711のデータ入力端子DIに入力され、
宛先ビットaがキュー711のスイッチング用入力端子
に入力される。キュー711はルーティングヘッダbを
データとして扱い、宛先ビットaでスイッチングする。
キュー711は宛先ビットaでスイッチングしたので、
出力として宛先ビットaを除いたATMセルとルーティ
ングヘッダbのみを出力して次段のキュー712に与え
る。キュー712のデータ入力端子DIにはmビットの
ATMセルが与えられるが、データ入力端子DIのうち
hビットの入力は接地され、ルーティングヘッダaがス
イッチング用入力端子に与えられる。したがって、キュ
ー712は、ルーテヘングヘッダaを宛先ビットと見な
してスイッチングし、ATMセルを出力する。なお、キ
ュー712は、データ入力端子DIのうち接地されてい
るビットを破棄する。
【0147】この実施例では、キュー711と712は
ともに共通のハードウェアを用いることができる。ま
た、この実施例では、2階層のものを示したが、ルーテ
ィングヘッダを増し、キューをこの例に応じて接続する
ことにより、階層をさらに増やすこともできる。
【0148】図39は図38に示した実施例の改良例を
示す図である。図38において、キュー712のデータ
入力端子DIのうち、hビットの入力端子を接地した
が、ルーティングヘッダの出力と交差してしまう。これ
を避けるためには、複雑な配線が必要となる。そこで、
図39に示した実施例では、データ入力端子DIのう
ち、スイッチング用入力端子から最も遠い端子を接地す
ることにより、他のラインとの交差を避け、配線を容易
にすることができる。
【0149】図40は図37に示した実施例の改良例を
示す図である。図37に示した例では、1段目にキュー
700を設け、2段目に複数のキュー701〜704を
設けたが、この実施例では1段目のキュー700に代え
てアドレスフィルタ801〜804を設けるようにした
ものである。アドレスフィルタ801〜804はそれぞ
れルーティングヘッダa1〜a4を参照し、該当するセ
ルのみを出力する。すなわち、アドレスフィルタ801
はルーテヘングヘッダa1のセルを出力し、アドレスフ
ィルタ802はルーティングヘッダa2のセルを出力
し、アドレスフィルタ803はルーティングヘッダa3
のセルを出力し、アドレスフィルタ804はルーティン
グヘッダa4のセルをそれぞれキュー701〜704に
出力する。したがって、この実施例においては、4つの
宛先を持つキューを4つ用いて16の宛先に信号を送信
できる。
【0150】上述の実施例においても、第1段のアドレ
スフィルタ801〜804と2段目のキュー701〜7
04との2階層でATMスイッチを構成したが、ルーテ
ィングヘッダの階層を増やすとともに、キューの段数を
増加することによって、さらにスイッチング規模を拡大
してもよい。
【0151】
【発明の効果】以上のように、請求項1に係る発明によ
れば、検索手段を宛先表示ビット記憶手段に隣接して配
置することにより、回路ブロックを2次元で効率よく実
現することができる。
【0152】さらに、より好ましくは、データが蓄積さ
れていない段のデータ待ち行列部のシフト動作を停止す
ることにより、電力消費を削減できる。
【0153】請求項6に係る発明では、複数のデータ待
ち行列部をカスケード接続し、各データ待ち行列部は前
段からのデータと宛先表示ビットとを受け、後段が空い
ていることに応じてデータと宛先表示ビットを出力する
ことにより、データ待ち行列装置の規模の拡張を容易に
できる。
【0154】さらに、より好ましくは、データに遅延優
先度を持たせ、高い優先度のデータは早く読出すように
することによって、リアルタイム性の高い電話等のデー
タに高い優先度を割当てれば、そのデータより早くにデ
ータ待ち行列装置に入力されていても、それを追い越し
てデータを通過させることができる。
【図面の簡単な説明】
【図1】 この発明の前提となるデータ待ち行列装置を
示すブロック図である。
【図2】 図1に示したブロック図の各部における信号
のタイミングを示すタイムチャートである。
【図3】 図1に示したブロック図の各部における信号
のタイムチャートである。
【図4】 図1に示したブロック図の各部における信号
のタイミングを示すタイムチャートである。
【図5】 この発明の一実施例を示すブロック図であっ
て、図1に示した各要素の配置例を示す図である。
【図6】 図5に示したシフトメモリの具体例を示す図
である。
【図7】 図5に示したシフトメモリのシフトさせるた
めのC素子の一例を示すブロック図である。
【図8】 図7に示したラッチの具体的な回路図であ
る。
【図9】 図7に示したC素子の具体的な回路図であ
る。
【図10】 この発明の他の実施例を示すブロック図で
あって、検索回路を共用した例を示す図である。
【図11】 図10に示した検索回路と宛先表示ビット
メモリの具体的な配置例を示す図である。
【図12】 宛先表示ビットメモリの出力をバスを介し
て検索回路に接続した例を示す図である。
【図13】 図12に示した動作手順を説明するための
図である。
【図14】 図12に示したバスと各宛先表示ビットメ
モリとの接続関係を示す図である。
【図15】 図14の動作を説明するためのタイムチャ
ートである。
【図16】 データ待ち行列装置をカスケード接続した
例を示すブロック図である。
【図17】 k段目のデータ待ち行列装置をFIFOと
して用いるようにした例を示すブロック図である。
【図18】 この発明の前提によるデータ待ち行列装置
の他の例を示すブロック図である。
【図19】 図18に示したブロック図の各部における
信号のタイミングを示すタイムチャートである。
【図20】 図18に示したブロック図の各部における
信号のタイミングを示すタイムチャートである。
【図21】 図18に示したブロック図の各部における
信号のタイミングを示すタイムチャートである。
【図22】 mステージごとにゲート回路と蓄積数検出
器を設けた例を示すブロック図である。
【図23】 シフト検出回路を用いた例を示す図であ
る。
【図24】 図22に示した蓄積数検出器の具体例を示
す図である。
【図25】 キューが空きの状態では最も先頭の範囲n
へ入力し、nが満杯になったとき次のキューにデータを
入力するようにした例を示す図である。
【図26】 初期状態において、未使用のときには検索
を無効化するようにした例を示すブロック図である。
【図27】 遅延優先度を示すビットを各ステージに設
けた例を示す図である。
【図28】 優先選択回路を設けた例を示すブロック図
である。
【図29】 優先選択のためのカウンタを設けた例を示
す図である。
【図30】 優先度が複数ある場合に優先度に応じた優
先選択信号を出力する回路を示す図である。
【図31】 低い優先度のデータを一定の割合で出力す
るようにした例を示す図である。
【図32】 優先度を検出するための検出回路の他の例
を示す図である。
【図33】 図32の具体的な回路図である。
【図34】 キュー中に蓄えられている低優先度のデー
タを一括廃棄できるようにした例を示す図である。
【図35】 低優先のデータをクリアできるようにした
例を示す図である。
【図36】 この発明のキューを用いてスイッチング規
模を拡大した例を示す図である。
【図37】 キューをツリー接続した例を示す図であ
る。
【図38】 階層化されたルーティングヘッダとツリー
接続とを組合わせた例を示す図である。
【図39】 図38に示した実施例の改良例を示す図で
ある。
【図40】 図37に示した実施例の改良例を示す図で
ある。
【図41】 従来のデータ待ち行列装置を含む高速パケ
ットスイッチを示すブロック図である。
【図42】 従来のデータ待ち行列装置を示すブロック
図である。
【符号の説明】
41〜4k シフトメモリ、61〜64,335,33
6 検索回路、81優先ビットメモリ、201 バス、
300〜302,310,320,340,342 デ
ータ待ち行列装置、311,321 ゲート回路、33
1〜334蓄積数検出器、510 C素子、511〜5
k4 宛先表示ビットメモリ。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 石脇 昌彦 兵庫県伊丹市瑞原4丁目1番地 三菱電 機株式会社システム エル・エス・アイ 開発研究所内 (72)発明者 野谷 宏美 兵庫県伊丹市瑞原4丁目1番地 三菱電 機株式会社システム エル・エス・アイ 開発研究所内 (56)参考文献 特開 平6−296181(JP,A) 特開 平3−159437(JP,A) (58)調査した分野(Int.Cl.7,DB名) H04L 12/56 H04L 12/28

Claims (27)

    (57)【特許請求の範囲】
  1. 【請求項1】 それぞれがデータ入力部を有し、保持す
    るデータをこのデータ入力部を介してのみ入力し、かつ
    入力されたデータを保持しながらシフトする複数のデー
    タシフト手段と、前記それぞれのデータシフト手段に対
    応して設けられ、前記それぞれのデータの宛先を示す宛
    先表示ビットを記憶する宛先表示ビット記憶手段と、前
    記宛先表示ビットを検索して検索されたデータを出力す
    る検索手段とを備えたデータ待ち行列装置において、 前記検索手段は、前記宛先表示ビット記憶手段に隣接し
    て配置されることを特徴とする、データ待ち行列装置。
  2. 【請求項2】 前記宛先表示ビット記憶手段は、 宛先表示ビットをラッチするラッチ手段と、 前記ラッチ手段が宛先表示ビットを保持していないと
    き、前段からの宛先表示ビットを前記ラッチ手段に保持
    させ、後段のラッチ手段が宛先表示ビットを保持してい
    ないとき、前記ラッチ手段の宛先表示ビットを後段にシ
    フトさせる制御手段とを含む、請求項1のデータ待ち行
    列装置。
  3. 【請求項3】 それぞれがデータ入力部を有し、保持す
    るデータをこのデータ入力部を介してのみ入力し、かつ
    入力されたデータを保持しながらシフトする複数のデー
    タシフト手段と、前記それぞれのデータシフト手段に対
    応して設けられ、前記それぞれのデータの宛先を示す宛
    先表示ビットを記憶する宛先表示ビット記憶手段と、前
    記宛先表示ビットを検索して検索されたデータを出力す
    る検索手段とを備えたデータ待ち行列装置において、 前記検索手段は、前記複数の宛先表示ビット記憶手段の
    中央に沿って配置される、データ待ち行列装置。
  4. 【請求項4】 さらに、前記複数の宛先表示ビット記憶
    手段からの表示ビットを時分割して前記検索手段に導く
    ためのバスを含む、請求項3のデータ待ち行列装置。
  5. 【請求項5】 前記検索手段は前記各宛先表示ビットを
    パイプライン処理で検索することを特徴とする、請求項
    4のデータ待ち行列装置。
  6. 【請求項6】 それぞれがデータ入力部を有し、保持す
    るデータをこのデータ入力部を介してのみ入力し、かつ
    入力されたデータを保持しながらシフトする複数のデー
    タシフト手段と、前記それぞれのデータシフト手段に対
    応して設けられ、前記それぞれのデータの宛先を示す宛
    先表示ビットを記憶する複数の宛先表示ビット記憶手段
    と、前記複数の宛先表示ビットを検索して検索されたデ
    ータを出力する検索手段を含むデータ待ち行列部を複数
    段カスケード接続し、 各データ待ち行列部は前段からのデータと宛先表示ビッ
    トを受け、後段が空いていることに応じて、そのデータ
    と宛先表示ビットを出力することを特徴とする、データ
    待ち行列装置。
  7. 【請求項7】 それぞれがデータ入力部を有し、保持す
    るデータをこのデータ入力部を介してのみ入力し、かつ
    入力されたデータを保持しながらシフトする複数のデー
    タシフト手段と、前記それぞれのデータシフト手段に対
    応して設けられ、前記それぞれのデータの宛先を示す宛
    先表示ビットを記憶する複数の宛先表示ビット記憶手段
    と、前記複数の宛先表示ビットを検索して検索されたデ
    ータを出力する検索手段を含むデータ待ち行列部を複数
    段カスケード接続し、 各データ待ち行列部は前段からのデータと宛先表示ビッ
    トを受け、後段が空いていることに応じて、そのデータ
    と宛先表示ビットを出力し、 前記複数段のデータ待ち行列部のうちのk段目(k<
    N)のデータを受ける側より前段の装置は、前記検索手
    段による宛先表示ビットの検索を行なわない先入れ先出
    しメモリとして用いられることを特徴とする、データ待
    ち行列装置。
  8. 【請求項8】 前記k段目のデータを受ける側より後段
    のデータ待ち行列部には有効を示す検索入力信号が与え
    られる、請求項7のデータ待ち行列装置。
  9. 【請求項9】 前記各段のデータ待ち行列部分の間に設
    けられ、有効なデータを蓄積していない段のデータ待ち
    行列部のシフト動作を停止させるためのゲート手段を含
    む、請求項6のデータ待ち行列装置。
  10. 【請求項10】 それぞれがデータ入力部を有し、保持
    するデータをこのデータ入力部を介してのみ入力し、か
    つ入力されたデータを保持しながらシフトする複数のデ
    ータシフト手段と、前記それぞれのデータシフト手段に
    対応して設けられ、前記それぞれのデータの宛先を示す
    宛先表示ビットを記憶する複数の宛先表示ビット記憶手
    段と、前記複数の宛先表示ビットを検索して検索された
    データを出力する検索手段とを含むデータ待ち行列部を
    複数段カスケード接続し、 前記複数段のデータ待ち行列部の各々最前部にあるデー
    タシフト手段は、入力線に共通に接続されてデータを受
    ける第1のデータ入力と、前段のデータ待ち行列部から
    データを受ける第2のデータ入力とを含み、 前記各データ待ち行列部における前記最前段以外のデー
    タシフト手段はデータ入力部を有し、その保持するデー
    タはそのデータ入力部を介してのみ入力され、 前記各データ待ち行列部は、自段がある値以上の個数の
    データを蓄積したか否かを示す信号を前段へ出力し、後
    段から受ける当該信号に応じて、その入力するデータの
    受け取り先を前段の装置から前記入力線に切替えること
    を特徴とする、データ待ち行列装置。
  11. 【請求項11】 前記各段のデータ待ち行列部のうち、
    使用されている段のデータ待ち行列部に対応する検索手
    段のみを有効化することを特徴とする、請求項10のデ
    ータ待ち行列装置。
  12. 【請求項12】 さらに、優先度を記憶するための優先
    度記憶手段を含み、前記検索手段は前記優先度記憶手段
    に記憶されている優先度と前記宛先表示ビットの論理積
    出力に基づいて検索を行なうことを特徴とする、請求項
    6のデータ待ち行列装置。
  13. 【請求項13】 それぞれがデータ入力部を有し、保持
    するデータをこのデータ入力部を介してのみ入力し、か
    つ入力されたデータを保持しながらシフトする複数のデ
    ータシフト手段と、前記それぞれのデータシフト手段に
    対応して設けられ、前記それぞれのデータの宛先を示す
    宛先表示ビットを記憶する複数の宛先表示ビット記憶手
    段と、前記複数の宛先表示ビットを検索して検索された
    データを出力する検索手段を含むデータ待ち行列部を複
    数段カスケード接続し、 各データ待ち行列部は前段からのデータと宛先表示ビッ
    トを受けて後段が空いていることに応じて、そのデータ
    と宛先表示ビットを出力し、さらに優先度を記憶するた
    めの優先度記憶手段と、 各段のデータ待ち行列部のそれぞれに対応して設けら
    れ、当該データ待ち行列部に優先データが入力されるご
    とに加算され、当該データ待ち行列部から優先データが
    出力されるごとに減算されるカウンタとを含み、 前記検索手段は、前記カウンタの計数値が所定の値にな
    ったことに応じて、前記優先度記憶手段に記憶されてい
    る優先度と前記宛先表示ビットの論理積出力に基づいて
    検索を行なうことを特徴とする、データ待ち行列装置。
  14. 【請求項14】 前記カウンタは各段のデータ待ち行列
    部のそれぞれに対応して複数の優先度に応じて複数設け
    られ、さらに 前記各カウンタの出力のうち優先度の高い出力を選択
    し、その出力と前記宛先表示ビットとの論理積を求めて
    前記検索手段に与える論理積手段を含む、請求項13の
    データ待ち行列装置。
  15. 【請求項15】 それぞれがデータ入力部を有し、保持
    するデータをこのデータ入力部を介してのみ入力し、か
    つ入力されたデータを保持しながらシフトする複数のデ
    ータシフト手段と、前記それぞれのデータシフト手段に
    対応して設けられ、前記それぞれのデータの宛先を示す
    宛先表示ビットを記憶する複数の宛先表示ビット記憶手
    段と、前記複数の宛先表示ビットを検索して検索された
    データを出力する検索手段を含むデータ待ち行列部を複
    数段カスケード接続し、 各データ待ち行列部は前段からのデータと宛先表示ビッ
    トを受けて後段が空いていることに応じて、そのデータ
    と宛先表示ビットを出力し、 優先度を記憶するための優先度記憶手段と、 各段のデータ待ち行列部のそれぞれに対応して設けら
    れ、当該データ待ち行列部に優先データが入力されるご
    とに加算され、当該データ待ち行列部から優先データが
    出力されるごとに減算されるカウンタとを含み、 前記検索手段は、前記カウンタの計数値が所定の値にな
    ったことに応じて、前記優先度記憶手段に記憶されてい
    る優先度と前記宛先表示ビットの論理積出力に基づいて
    検索を行ない、さらに一定の割合で前記優先記憶手段に
    よって高優先度が指定されたデータより低い優先度のデ
    ータを優先して一定の割合で読み出すための手段を含む
    ことを特徴とする、データ待ち行列装置。
  16. 【請求項16】 それぞれがデータ入力部を有し、保持
    するデータをこのデータ入力部を介してのみ入力し、か
    つ入力されたデータを保持しながらシフトする複数のデ
    ータシフト手段と、前記それぞれのデータシフト手段に
    対応して設けられ、前記それぞれのデータの宛先を示す
    宛先表示ビットを記憶する複数の宛先表示ビット記憶手
    段と、前記複数の宛先表示ビットを検索して検索された
    データを出力する検索手段を含むデータ待ち行列部を複
    数段カスケード接続し、 前記各データ待ち行列部のうち、後段で有効なデータが
    検出されても、前段で高優先度の有効なデータが検出さ
    れたデータ待ち行列部は、後段に無効化信号を送出し、 前記前段のデータ待ち行列部は保持しているデータの優
    先度が高くなかった場合、検出信号の送出を停止するこ
    とを特徴とする、データ待ち行列装置。
  17. 【請求項17】 前記後段のデータ待ち行列部は、保持
    しているデータの優先度が前段のデータ待ち行列部から
    与えられる無効化信号による優先度より低い場合に前記
    検出信号の送出を停止することを特徴とする、請求項1
    6のデータ待ち行列装置。
  18. 【請求項18】 それぞれがデータ入力部を有し、保持
    するデータをこのデータ入力部を介してのみ入力し、か
    つ入力されたデータを保持しながらシフトする複数のデ
    ータシフト手段と、前記それぞれのデータシフト手段に
    対応して設けられ、前記それぞれのデータの宛先を示す
    宛先表示ビットを記憶する複数の宛先表示ビット記憶手
    段と、前記複数の宛先表示ビットを検索して検索された
    データを出力する検索手段を含むデータ待ち行列部を複
    数段カスケード接続し、 各データ待ち行列部は前段からのデータと宛先表示ビッ
    トを受け、後段が空いていることに応じて、そのデータ
    と宛先表示ビットを出力し、 さらに、低い優先度のデータを廃棄するための指令が与
    えられたことに応じて、その指令と前記優先ビットとの
    論理積を求めて、当該データ待ち行列部のデータをクリ
    アするための論理積手段を含む、データ待ち行列装置。
  19. 【請求項19】 さらに、各データ待ち行列部に対応し
    て設けられ、対応のデータ待ち行列部にデータが入力さ
    れるごとに加算され、データが出力されるごとに減算さ
    れ、所定の計数値になったことに応じて、優先度の低い
    データを廃棄させるためのカウンタを含む、請求項18
    のデータ待ち行列装置。
  20. 【請求項20】 前記カウンタは前記データシフト手段
    の各宛先表示ビットごとに設けられる、請求項19のデ
    ータ待ち行列装置。
  21. 【請求項21】 それぞれがデータを保持しながらシフ
    トする複数のデータシフト手段と、前記それぞれのデー
    タシフト手段に対応して設けられ、それぞれのデータの
    宛先を示す宛先表示ビットを記憶する宛先表示ビット記
    憶手段と、前記宛先表示ビットを検索して検索されたデ
    ータを出力する検索手段とを備えたデータ待ち行列装置
    において、 前記宛先表示ビットは複数の宛先表示ビットを単位とし
    て複数にグループ化されていて、 前記データ待ち行列装置は、 前段に設けられ、前記複数のグループごとにデータと宛
    先表示ビットを出力する前段データ待ち行列回路と、 前記複数のグループごとに設けられ、前記前段待ち行列
    回路から出力されたデータと宛先表示ビットとが与えら
    れる複数の後段データ待ち行列回路とを備えた、データ
    待ち行列装置。
  22. 【請求項22】 前記複数にグループ化された宛先表示
    ビットは、宛先表示ビットとその宛先表示ビットの属す
    るグループを識別するための表示ビットとを含み、 前記前段のデータ待ち行列回路および後段の複数のデー
    タ待ち行列回路のそれぞれのデータシフト手段は、前記
    データと前記宛先表示ビットとを保持するためのエリア
    を含み、 前記宛先表示ビット記憶手段は、前段の、前記宛先表示
    ビットの属するグループを識別するための表示ビットに
    応じて、前記データシフト手段によって前記データと前
    記宛先表示ビットとを保持させるための制御手段を含
    み、 前記後段の各データ待ち行列回路の各々は、その一部の
    入力に前記前段のデータ待ち行列回路から出力されるデ
    ータを受け、その残りの入力が接地されたエリアを含
    み、 前記後段の制御手段は、後段のデータシフト手段から与
    えられた宛先表示ビットに応じて前段からのデータを前
    記後段のデータシフト手段に保持させる手段を含む、請
    求項21のデータ待ち行列装置。
  23. 【請求項23】 前記複数にグループ化された宛先表示
    ビットは、宛先表示ビットとその宛先表示ビットの属す
    るグループを識別するための表示ビットとを含み、 前記データシフト手段と前記宛先表示ビット記憶手段
    は、前記複数のグループのそれぞれに対応して設けられ
    ていて、さらに前記各グループに対応する宛先表示ビッ
    トと前記データとを対応するデータシフト手段と宛先表
    示ビット記憶手段に与えるアドレスフィルタ手段を含
    む、請求項21のデータ待ち行列装置。
  24. 【請求項24】 前記検索手段は、複数の出力線に接続
    され、前記宛先表示ビット記憶手段が、前記複数の出力
    線をそれぞれに対応付けられた複数のビットを保持し、
    複数のビットがそれぞれ宛先表示ビットを示すときに、
    その対応付けられた出力線にデータを出力する、請求項
    1のデータ待ち行列装置。
  25. 【請求項25】 前記検索手段は、複数の出力線に接続
    され、前記宛先表示ビット記憶手段が、前記複数の出力
    線をそれぞれに対応付けられた複数のビットを保持し、
    複数のビットがそれぞれ宛先表示ビットを示すときに、
    その対応付けられた出力線にデータを出力する、請求項
    6のデータ待ち行列装置。
  26. 【請求項26】 前記データ待ち行列部は、前記検索さ
    れたデータを後段の待ち行列部へ転送する、請求項6の
    データ待ち行列装置。
  27. 【請求項27】 前記各データ待ち行列部は、自段が前
    記入力線からデータを受けておりかつ自段にデータがな
    くなったときに、その後段へ別の信号を出力し、前段か
    ら受け取る当該信号に応じて入力するデータの受け取り
    先を前記入力線から前記前段の装置へその入力を切替え
    る、請求項10のデータ待ち行列装置。
JP21295094A 1993-12-28 1994-09-06 データ待ち行列装置 Expired - Fee Related JP3220599B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP21295094A JP3220599B2 (ja) 1993-12-28 1994-09-06 データ待ち行列装置
US08/365,637 US5649119A (en) 1993-12-28 1994-12-28 Data queuing apparatus

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP5-337107 1993-12-28
JP33710793 1993-12-28
JP21295094A JP3220599B2 (ja) 1993-12-28 1994-09-06 データ待ち行列装置

Publications (2)

Publication Number Publication Date
JPH07235931A JPH07235931A (ja) 1995-09-05
JP3220599B2 true JP3220599B2 (ja) 2001-10-22

Family

ID=26519530

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21295094A Expired - Fee Related JP3220599B2 (ja) 1993-12-28 1994-09-06 データ待ち行列装置

Country Status (2)

Country Link
US (1) US5649119A (ja)
JP (1) JP3220599B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19811201A1 (de) * 1998-03-09 1999-09-16 Gmd Gmbh Schieberegister und Mikroprozessorenanordnung
US7302704B1 (en) 2000-06-16 2007-11-27 Bbn Technologies Corp Excising compromised routers from an ad-hoc network
US7269198B1 (en) 2001-11-19 2007-09-11 Bbn Technologies Corp. Systems and methods for beaconing in wireless networks with low probability of detection
US7421257B1 (en) 2001-11-30 2008-09-02 Stragent, Llc Receiver scheduling in ad hoc wireless networks
US7983239B1 (en) 2003-01-07 2011-07-19 Raytheon Bbn Technologies Corp. Systems and methods for constructing a virtual model of a multi-hop, multi-access network
US20040246902A1 (en) * 2003-06-02 2004-12-09 Weinstein Joseph J. Systems and methods for synchronizing multple copies of a database using datablase digest
US7881229B2 (en) 2003-08-08 2011-02-01 Raytheon Bbn Technologies Corp. Systems and methods for forming an adjacency graph for exchanging network routing data
US7606927B2 (en) 2003-08-27 2009-10-20 Bbn Technologies Corp Systems and methods for forwarding data units in a communications network
US8166204B2 (en) * 2003-08-29 2012-04-24 Raytheon Bbn Technologies Corp. Systems and methods for automatically placing nodes in an ad hoc network
US7668083B1 (en) 2003-10-28 2010-02-23 Bbn Technologies Corp. Systems and methods for forwarding data in a communications network
US7369512B1 (en) 2003-11-06 2008-05-06 Bbn Technologies Corp. Systems and methods for efficient packet distribution in an ad hoc network
US7532623B2 (en) * 2004-03-24 2009-05-12 Bbn Technologies Corp. Methods for wireless mesh multicasting
US8139504B2 (en) * 2009-04-07 2012-03-20 Raytheon Bbn Technologies Corp. System, device, and method for unifying differently-routed networks using virtual topology representations

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2538976A1 (fr) * 1982-12-29 1984-07-06 Servel Michel Systeme de commutation de paquets synchrones de longueur fixe
US5504741A (en) * 1993-02-15 1996-04-02 Mitsubishi Denki Kabushiki Kaisha Data queuing apparatus and ATM cell switch based on shifting and searching

Also Published As

Publication number Publication date
JPH07235931A (ja) 1995-09-05
US5649119A (en) 1997-07-15

Similar Documents

Publication Publication Date Title
JP3220599B2 (ja) データ待ち行列装置
KR0155554B1 (ko) 가변 길이 셀을 전송하기 위한 통신 스위칭장치 및 방법
Kuwahara et al. A shared buffer memory switch for an ATM exchange
JP3150941B2 (ja) Atmスイッチシステムの入力バッファ制御装置及び論理バッファサイズ決定方法
EP0379709B1 (en) Single-fifo high speed combining switch
EP0502873A1 (en) BASIC ELEMENT FOR THE CONNECTION NETWORK OF A FAST PACKET SWITCHING NODE.
JPH07254906A (ja) 優先処理機能を有するシフトレジスタ、それを用いたパケット通信用スイッチング装置及びそれを用いたatmネットワーク並びに優先処理を伴うパケット通信方式及び優先処理を伴うatm通信方式
US7352766B2 (en) High-speed memory having a modular structure
US5285444A (en) Multi-stage link switch
US7126959B2 (en) High-speed packet memory
US20010023469A1 (en) Distributed type input buffer switch system for transmitting arbitration information efficiently and method for processing input data using the same
US6426940B1 (en) Large scaled fault tolerant ATM switch and a self-routing method in a 2N×N multiplexing switch
US6195361B1 (en) Network communication device
US7293132B2 (en) Apparatus and method for efficient data storage using a FIFO memory
JPH11219344A (ja) プロセッサ間ネットワークのフロー制御方法および装置
Lee et al. A limited shared output buffer switch for ATM
US6789176B2 (en) Address release method, and common buffering device for ATM switching system which employs the same method
Kondoh et al. An efficient self-timed queue architecture for ATM switch LSIs
US6831920B1 (en) Memory vacancy management apparatus and line interface unit
JP2857446B2 (ja) Atm交換機
JP3519608B2 (ja) セル交換装置、アドレス管理装置及びセル情報管理方法
JP2899609B2 (ja) セル送出装置
JP3169502B2 (ja) データ待ち行列装置及びデータ待ち行列システム及びデータキューイング方法及びatmスイッチ
JPH11340998A (ja) Atmスイッチ及びatmセル用バッファ管理方法
JP2583501B2 (ja) デ−タ伝送回路

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010731

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20070810

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20080810

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20080810

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090810

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20090810

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100810

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20110810

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20110810

Year of fee payment: 10

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20110810

Year of fee payment: 10

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20110810

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20120810

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees