JP2738064B2 - 共通バッファ型スイッチ - Google Patents
共通バッファ型スイッチInfo
- Publication number
- JP2738064B2 JP2738064B2 JP26150589A JP26150589A JP2738064B2 JP 2738064 B2 JP2738064 B2 JP 2738064B2 JP 26150589 A JP26150589 A JP 26150589A JP 26150589 A JP26150589 A JP 26150589A JP 2738064 B2 JP2738064 B2 JP 2738064B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- common buffer
- cell
- read
- block
- 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
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Use Of Switch Circuits For Exchanges And Methods Of Control Of Multiplex Exchanges (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、非同期転送モード(ATM)を用いたスイッ
チ装置あるいはセル多重装置等に適用される共通バッフ
ァ型スイッチに係り、詳しくは、入力ポートと出力ポー
トと共通バッファとを備えると共に、入力ポートから入
力されるセルを記憶すべき共通バッファの未使用アドレ
スを管理する未使用アドレス管理手段と、セルの記憶さ
れた共通バッファの使用アドレスを管理する使用アドレ
ス管理手段とを備え、未使用アドレス管理手段から与え
られる共通バッファの未使用アドレスに入力ポートから
入力されるセルを記憶し、使用アドレス管理手段から与
えられる共通バッファの使用アドレスからセルを読出し
て所定の出力ポートに供給することにより入出力ポート
間でのスイッチ動作を行なう共通バッファ型スイッチに
関する。
チ装置あるいはセル多重装置等に適用される共通バッフ
ァ型スイッチに係り、詳しくは、入力ポートと出力ポー
トと共通バッファとを備えると共に、入力ポートから入
力されるセルを記憶すべき共通バッファの未使用アドレ
スを管理する未使用アドレス管理手段と、セルの記憶さ
れた共通バッファの使用アドレスを管理する使用アドレ
ス管理手段とを備え、未使用アドレス管理手段から与え
られる共通バッファの未使用アドレスに入力ポートから
入力されるセルを記憶し、使用アドレス管理手段から与
えられる共通バッファの使用アドレスからセルを読出し
て所定の出力ポートに供給することにより入出力ポート
間でのスイッチ動作を行なう共通バッファ型スイッチに
関する。
従来の共通バッファ形スイッチの第一の例を第9図に
示す(引用文献:Jean−pierre COUDREUSE and Michel S
ERVEL “PRELUDE:AN ASYNCHRONOUS TIME−DIVISION SWI
TCHED NETWORK" IEEE International Conference on Co
mmunications '87:Comunication−Sound to Light.Proc
eedings pp.769−773 vol.2)。
示す(引用文献:Jean−pierre COUDREUSE and Michel S
ERVEL “PRELUDE:AN ASYNCHRONOUS TIME−DIVISION SWI
TCHED NETWORK" IEEE International Conference on Co
mmunications '87:Comunication−Sound to Light.Proc
eedings pp.769−773 vol.2)。
この例では、入力ポート数と出力ポート数は等しく、
それぞれ4の場合を示す。符号i1〜i4は入力ポート1〜
4を示し、各入力ポートから同時刻にセルic1〜ic4がブ
ロック分割部80に入力される。セルは、入力ポート数と
同数の均等なブロックに分割されて処理される。従っ
て、第9図では4分割される。セルの先頭から順に第1,
第2,第3,第4ブロックと呼ぶことにし、ic1における1
01,102,103,104のごとく表し、各ブロックの時刻はt
ij(i=0,1,2,3,j=0,1,2,3,4,5,6)で表す。以下の記
述において時刻の単位はこの1ブロック分の時間を1と
する。また、各部の入出力ポートはことわりのないかぎ
り図中上から下へポート1,2,3,4と表す。ブロック分割
部80の構成を第10図に示す。第10図では入力ポートは上
からポート1,2,3,4,出力ポートは上からポート4,3,2,1
である。符号90−1〜90−3はそれぞれ1,2,3ブロック
分の遅延を与える遅延回路、符号91はバレルシフタを示
す。第10図にバレルシフタの一巡の入力ポートと出力ポ
ートの接続関係の変化を示す。接続関係は4ブロック時
間で一巡し、その4つの接続関係をそれぞれ時間順に第
10図(a),(b),(c),(d)に示す。入力セル
ic1に対して入力セルic2,ic3,ic4はそれぞれ遅延回路90
−1〜90−3により1ブロック分、2ブロック分、3ブ
ロック分の遅延を与えられ、その後バレルシフタ91によ
り各セルの第1,第2,第3,第4ブロックはそれぞれブロッ
ク分割部80の出力ポート1,2,3,4に出力される。一例と
してic2を取り上げると、ic1の第1ブロック101が時刻t
10に出力されるのでそれより1ブロック分遅れて、第1
ブロック201は時刻t11にブロック分割部80の出力ポート
1に、第2ブロック202は時刻t12に出力ポート2に、第
3ブロックは203は時刻t13に出力ポート3に、第4ブロ
ック204は時刻t14に出力ポート4にそれぞれ出力され
る。したがって、ブロック分割部80の出力ポート1〜4
には同時刻に各入力ポートから入力されたセルの第1〜
第4ブロックの集合ib1〜ib4が1ブロック分ずつ時刻が
ずれて出力される。共通バッファ82はブロック分割数と
等しいr1〜r4の4つのRAMメモリから構成され、それぞ
れに第1〜第4ブロックが記憶される。書き込みアドレ
ス制御部83は共通バッファ82を構成するRAMメモリの全
アドレス(第9図における0〜n)を一巡とするサイク
リックカウンタで構成されており、1ブロック時間に1
ずつカウントアップする。このカウンタの値をRAMメモ
リへの書き込みアドレスとして、共通バッファ82を構成
するRAMメモリr1〜r4に同時に与える。ある時刻τにib1
中のブロック401が共通バッファに入力され、その時刻
に書き込みアドレス制御部83からアドレス“23"が与え
られたとすると、RAMメモリr1〜r4のアドレス“23"には
それぞれブロック401,302,203,104が書き込まれる。
ic1を構成するブロック101〜104に注目すると、時刻
(τ−3)にはRAMメモリr1のアドレス“20"に入力セル
ic1の第1ブロック101が、時刻(τ−2)にはRAMメモ
リr2のアドレス“21"に第2ブロック102が、時刻(τ−
1)にはRAMメモリr3のアドレス“22"に第3ブロック10
3が、時刻τにはRAMメモリr4のアドレス“23"に第4ブ
ロック104が書き込まれる。すなわち、入力セルの第1
ブロックがRAMメモリr1のアドレス“a"に書き込まれた
とすると、第2,第3、第4ブロックはそれぞれRAMメモ
リr2,r3,r4のアドレス“a+1",“a+2",“a+3"に書
き込まれる。一方、第1ブロックを書き込んだRAMメモ
リr1のアドレスはアドレス記憶部84に送られ、出力ポー
ト読み取り部81でその第1ブロックから読みだした出力
ポート番号によってアドレス振り分け部85により該当す
るファーストイン・ファーストアウト動作するメモリ
(以下ではFIFOメモリと表す)に振り分けられて記憶さ
れる。符号f1〜f4はそれぞれ出力ポートo1〜o4に対応す
るアドレス記憶用FIFOメモリを示す。したがって、入力
セルic1が出力ポートo3に出力されるとすると、第1ブ
ロック101を書き込んだRAMメモリr1のアドレス“20"は
アドレス記憶部84のFIFOメモリf3に記憶される。
それぞれ4の場合を示す。符号i1〜i4は入力ポート1〜
4を示し、各入力ポートから同時刻にセルic1〜ic4がブ
ロック分割部80に入力される。セルは、入力ポート数と
同数の均等なブロックに分割されて処理される。従っ
て、第9図では4分割される。セルの先頭から順に第1,
第2,第3,第4ブロックと呼ぶことにし、ic1における1
01,102,103,104のごとく表し、各ブロックの時刻はt
ij(i=0,1,2,3,j=0,1,2,3,4,5,6)で表す。以下の記
述において時刻の単位はこの1ブロック分の時間を1と
する。また、各部の入出力ポートはことわりのないかぎ
り図中上から下へポート1,2,3,4と表す。ブロック分割
部80の構成を第10図に示す。第10図では入力ポートは上
からポート1,2,3,4,出力ポートは上からポート4,3,2,1
である。符号90−1〜90−3はそれぞれ1,2,3ブロック
分の遅延を与える遅延回路、符号91はバレルシフタを示
す。第10図にバレルシフタの一巡の入力ポートと出力ポ
ートの接続関係の変化を示す。接続関係は4ブロック時
間で一巡し、その4つの接続関係をそれぞれ時間順に第
10図(a),(b),(c),(d)に示す。入力セル
ic1に対して入力セルic2,ic3,ic4はそれぞれ遅延回路90
−1〜90−3により1ブロック分、2ブロック分、3ブ
ロック分の遅延を与えられ、その後バレルシフタ91によ
り各セルの第1,第2,第3,第4ブロックはそれぞれブロッ
ク分割部80の出力ポート1,2,3,4に出力される。一例と
してic2を取り上げると、ic1の第1ブロック101が時刻t
10に出力されるのでそれより1ブロック分遅れて、第1
ブロック201は時刻t11にブロック分割部80の出力ポート
1に、第2ブロック202は時刻t12に出力ポート2に、第
3ブロックは203は時刻t13に出力ポート3に、第4ブロ
ック204は時刻t14に出力ポート4にそれぞれ出力され
る。したがって、ブロック分割部80の出力ポート1〜4
には同時刻に各入力ポートから入力されたセルの第1〜
第4ブロックの集合ib1〜ib4が1ブロック分ずつ時刻が
ずれて出力される。共通バッファ82はブロック分割数と
等しいr1〜r4の4つのRAMメモリから構成され、それぞ
れに第1〜第4ブロックが記憶される。書き込みアドレ
ス制御部83は共通バッファ82を構成するRAMメモリの全
アドレス(第9図における0〜n)を一巡とするサイク
リックカウンタで構成されており、1ブロック時間に1
ずつカウントアップする。このカウンタの値をRAMメモ
リへの書き込みアドレスとして、共通バッファ82を構成
するRAMメモリr1〜r4に同時に与える。ある時刻τにib1
中のブロック401が共通バッファに入力され、その時刻
に書き込みアドレス制御部83からアドレス“23"が与え
られたとすると、RAMメモリr1〜r4のアドレス“23"には
それぞれブロック401,302,203,104が書き込まれる。
ic1を構成するブロック101〜104に注目すると、時刻
(τ−3)にはRAMメモリr1のアドレス“20"に入力セル
ic1の第1ブロック101が、時刻(τ−2)にはRAMメモ
リr2のアドレス“21"に第2ブロック102が、時刻(τ−
1)にはRAMメモリr3のアドレス“22"に第3ブロック10
3が、時刻τにはRAMメモリr4のアドレス“23"に第4ブ
ロック104が書き込まれる。すなわち、入力セルの第1
ブロックがRAMメモリr1のアドレス“a"に書き込まれた
とすると、第2,第3、第4ブロックはそれぞれRAMメモ
リr2,r3,r4のアドレス“a+1",“a+2",“a+3"に書
き込まれる。一方、第1ブロックを書き込んだRAMメモ
リr1のアドレスはアドレス記憶部84に送られ、出力ポー
ト読み取り部81でその第1ブロックから読みだした出力
ポート番号によってアドレス振り分け部85により該当す
るファーストイン・ファーストアウト動作するメモリ
(以下ではFIFOメモリと表す)に振り分けられて記憶さ
れる。符号f1〜f4はそれぞれ出力ポートo1〜o4に対応す
るアドレス記憶用FIFOメモリを示す。したがって、入力
セルic1が出力ポートo3に出力されるとすると、第1ブ
ロック101を書き込んだRAMメモリr1のアドレス“20"は
アドレス記憶部84のFIFOメモリf3に記憶される。
共通バッファ82からの読み出しアドレスは、アドレス
読み出し部86から与えられる。アドレス読み出し部86は
FIFOメモリf1〜f4の順にサイクリックに1ブロック時間
に1つずつアドレスを読み出す。読みだされたアドレス
を“a"とすると、まず共通バッファ82のRAMメモリr1の
アドレス“a"から第1ブロックが読みだされる。その1
ブロック時間後にアドレス“a"はアドレス加算部87−1
で1加算されRAMメモリr2のアドレス“a+1"から第2
ブロックが読みだされる。さらにその1ブロック時間後
にアドレス“a+1"はアドレス加算部87−2で1加算さ
れRAMメモリr3のアドレス“a+2"から第3ブロックが
読みだされる。最後にその1ブロック時間後にアドレス
“a+2"はアドレス加算部87−3で1加算されRAMメモ
リr4のアドレス“a+3"から第4ブロックが読み出され
る。第9図により説明すると、時刻t21にFIFOメモリf2
からアドレス“22"が読みだされたとすると、時刻t21に
RAMメモリr1のアドレス“22"から第1ブロック301が読
みだされ、時刻t22にRAMメモリr2のアドレス“23"から
第2ブロック302が読みだされ、時刻t23にRAMメモリr3
のアドレス“24"から第3ブロック303が読みだされ、時
刻t24にRAMメモリr4のアドレス“25"から第4ブロック3
04が読みだされる。上述のようにしてあるセルを構成す
る第1、第2,第3,第4ブロックはそれぞれ1ブロック時
間ずつ遅れて共通バッファ82の出力ポート1〜4に出力
される。すなわち、共通バッファ82の出力ポート1〜4
にはそれぞれ第1〜第4ブロックの集合ob1〜ob4が出力
される。ob1〜ob4はブロック結合部88に入力される。ブ
ロック結合部88の構成を第11図に示す。第11図では、入
力ポートは上からポート1,2,3,4,出力ポートは上から4,
3,2,1である。ブロック分割部と同様のバレルシフタと
それぞれ3,2,1ブロック分の遅延を与える遅延回路10−
1,10−3により構成される。各ブロックはバレルシフタ
91により対応する出力ポートに接続され、第1〜第4ブ
ロックが結合されてセルの形態に戻され、遅延回路10−
1〜10−3により出力ポート間でずれているセルの先頭
時刻をあわせて出力ポートに出力される。
読み出し部86から与えられる。アドレス読み出し部86は
FIFOメモリf1〜f4の順にサイクリックに1ブロック時間
に1つずつアドレスを読み出す。読みだされたアドレス
を“a"とすると、まず共通バッファ82のRAMメモリr1の
アドレス“a"から第1ブロックが読みだされる。その1
ブロック時間後にアドレス“a"はアドレス加算部87−1
で1加算されRAMメモリr2のアドレス“a+1"から第2
ブロックが読みだされる。さらにその1ブロック時間後
にアドレス“a+1"はアドレス加算部87−2で1加算さ
れRAMメモリr3のアドレス“a+2"から第3ブロックが
読みだされる。最後にその1ブロック時間後にアドレス
“a+2"はアドレス加算部87−3で1加算されRAMメモ
リr4のアドレス“a+3"から第4ブロックが読み出され
る。第9図により説明すると、時刻t21にFIFOメモリf2
からアドレス“22"が読みだされたとすると、時刻t21に
RAMメモリr1のアドレス“22"から第1ブロック301が読
みだされ、時刻t22にRAMメモリr2のアドレス“23"から
第2ブロック302が読みだされ、時刻t23にRAMメモリr3
のアドレス“24"から第3ブロック303が読みだされ、時
刻t24にRAMメモリr4のアドレス“25"から第4ブロック3
04が読みだされる。上述のようにしてあるセルを構成す
る第1、第2,第3,第4ブロックはそれぞれ1ブロック時
間ずつ遅れて共通バッファ82の出力ポート1〜4に出力
される。すなわち、共通バッファ82の出力ポート1〜4
にはそれぞれ第1〜第4ブロックの集合ob1〜ob4が出力
される。ob1〜ob4はブロック結合部88に入力される。ブ
ロック結合部88の構成を第11図に示す。第11図では、入
力ポートは上からポート1,2,3,4,出力ポートは上から4,
3,2,1である。ブロック分割部と同様のバレルシフタと
それぞれ3,2,1ブロック分の遅延を与える遅延回路10−
1,10−3により構成される。各ブロックはバレルシフタ
91により対応する出力ポートに接続され、第1〜第4ブ
ロックが結合されてセルの形態に戻され、遅延回路10−
1〜10−3により出力ポート間でずれているセルの先頭
時刻をあわせて出力ポートに出力される。
前記RAMメモリへの書き込み、及び読み出しは1ブロ
ック時間にそれぞれ1回行われる。
ック時間にそれぞれ1回行われる。
前述のようにして共通バッファを利用した任意の入力
ポートから任意の出力ポートへのスイッチ動作が行なわ
れる。
ポートから任意の出力ポートへのスイッチ動作が行なわ
れる。
従来の共通バッファ形スイッチの第二の例を第12図に
示す(引用文献:遠藤昇,小崎尚彦,櫻井義人,郷原忍
“ATM交換アーキテクチャの一提案",信学技報SSE88−56
pp.37−42 1988)。
示す(引用文献:遠藤昇,小崎尚彦,櫻井義人,郷原忍
“ATM交換アーキテクチャの一提案",信学技報SSE88−56
pp.37−42 1988)。
この例では、入力ポート数4,出力ポート数4の場合を
示す。符号110は共通バッファに接続する入力ポートを
選択する入力選択部、符号111は次回読み出しを行うア
ドレスを記憶するアドレスチェーン記憶部、符号112は
セルデータを記憶する共通セルバッファ部、符号113は
共通セルバッファから読みだしたセルを該当する出力ポ
ートに接続する出力選択部、符号114は出力ポート別に
次回書き込みアドレスを保持する書き込みアドレス保持
部、wp1〜wp4はそれぞれ出力ポートo1〜o4に対応する書
き込みアドレスポインタ、符号115は出力ポート別に次
回読み出しアドレスを保持する読み出しアドレス保持
部、rp1〜rp4はそれぞれ出力ポートo1〜o4に対応する読
み出しアドレスポインタ、符号116は共通セルバッファ
部112の空きアドレスを保持する空きアドレスバッファ
を示す。
示す。符号110は共通バッファに接続する入力ポートを
選択する入力選択部、符号111は次回読み出しを行うア
ドレスを記憶するアドレスチェーン記憶部、符号112は
セルデータを記憶する共通セルバッファ部、符号113は
共通セルバッファから読みだしたセルを該当する出力ポ
ートに接続する出力選択部、符号114は出力ポート別に
次回書き込みアドレスを保持する書き込みアドレス保持
部、wp1〜wp4はそれぞれ出力ポートo1〜o4に対応する書
き込みアドレスポインタ、符号115は出力ポート別に次
回読み出しアドレスを保持する読み出しアドレス保持
部、rp1〜rp4はそれぞれ出力ポートo1〜o4に対応する読
み出しアドレスポインタ、符号116は共通セルバッファ
部112の空きアドレスを保持する空きアドレスバッファ
を示す。
入力ポートから入力されたセルから出力ポート読み取
り部81でその出力先を読み取り、その出力ポートに対応
する書き込みアドレスポインタ“a"を書き込みアドレス
保持部114から読み出し、共通セルバッファ部112のアド
レス“a"にセルを書き込む、また、空きアドレスバッフ
ァ116から空きアドレスを1つ読み出し、そのアドレス
を書き込みアドレス保持部114の前記アドレス“a"を読
みだした書き込みアドレスポインタに保持すると共にア
ドレスチェーン記憶部111のアドレス“a"に記憶しアド
レスチェーンを構成する。今、入力ポートi2から出力ポ
ートo1に接続されるセルが入力されたとすると、出力ポ
ートo1に対応する書き込みアドレス保持部114の書き込
みアドレスポインタwp1にしたがってセルは共通セルバ
ッファ112のアドレス“3"に書き込まれ、空きアドレス
バッファ116からアドレス“6"が読みだされ、wp1に“6"
を書き込み、また、アドレスチェーン記憶部111のアド
レス“3"にアドレス“6"が書き込まれる。読み出しアド
レス保持部115には出力ポート毎に形成されたアドレス
チェーンの最も古い時点のアドレスが保持されており、
このアドレスにしたがってセルが該当する出力ポートに
読みだされる。また、セルを読みだした後、アドレスチ
ェーン記憶部111のそのセルを読みだしたアドレスから
次回読み出すアドレスを読み出し、読み出しアドレス保
持部に保持する。また、セルを読みだしたアドレスは空
き状態になるので空きアドレスバッファ116に記憶す
る。出力ポートo3にセルを読み出すと、するとrp3より
アドレス“4"を読み出し、共通セルバッファ部112のア
ドレス“4"から読み出し出力ポートo3に出力する。ま
た、アドレスチェーン記憶部111のアドレス“4"から次
回読み出すアドレス“9"を読み出してrp3に記憶する。
また、アドレス“4"は空きアドレスとなるため空きアド
レスバッファ116に記憶する。
り部81でその出力先を読み取り、その出力ポートに対応
する書き込みアドレスポインタ“a"を書き込みアドレス
保持部114から読み出し、共通セルバッファ部112のアド
レス“a"にセルを書き込む、また、空きアドレスバッフ
ァ116から空きアドレスを1つ読み出し、そのアドレス
を書き込みアドレス保持部114の前記アドレス“a"を読
みだした書き込みアドレスポインタに保持すると共にア
ドレスチェーン記憶部111のアドレス“a"に記憶しアド
レスチェーンを構成する。今、入力ポートi2から出力ポ
ートo1に接続されるセルが入力されたとすると、出力ポ
ートo1に対応する書き込みアドレス保持部114の書き込
みアドレスポインタwp1にしたがってセルは共通セルバ
ッファ112のアドレス“3"に書き込まれ、空きアドレス
バッファ116からアドレス“6"が読みだされ、wp1に“6"
を書き込み、また、アドレスチェーン記憶部111のアド
レス“3"にアドレス“6"が書き込まれる。読み出しアド
レス保持部115には出力ポート毎に形成されたアドレス
チェーンの最も古い時点のアドレスが保持されており、
このアドレスにしたがってセルが該当する出力ポートに
読みだされる。また、セルを読みだした後、アドレスチ
ェーン記憶部111のそのセルを読みだしたアドレスから
次回読み出すアドレスを読み出し、読み出しアドレス保
持部に保持する。また、セルを読みだしたアドレスは空
き状態になるので空きアドレスバッファ116に記憶す
る。出力ポートo3にセルを読み出すと、するとrp3より
アドレス“4"を読み出し、共通セルバッファ部112のア
ドレス“4"から読み出し出力ポートo3に出力する。ま
た、アドレスチェーン記憶部111のアドレス“4"から次
回読み出すアドレス“9"を読み出してrp3に記憶する。
また、アドレス“4"は空きアドレスとなるため空きアド
レスバッファ116に記憶する。
(発明が解決しようとする課題) 上述した従来の共通バッファ型スイッチの第一の例で
は、書き込みアドレスはカウンタにより周期的に与えら
れ、読み出しアドレスは出力ポートによりランダムに与
えられるため、書き込みアドレスが一巡するまでに読み
だしが完了している必要があり、必要なメモリ量より余
分なメモリを設ける必要があるという不具合がある。あ
るいは、読み出しが行なわれる前に書き込みアドレスが
巡回してきて上書きをしてしまい、セル廃棄を起こすと
いう不具合がある。また、異なるRAMメモリの同一アド
レスには入力ポートの異なるセルのブロックが同時に書
き込まれるため、入力セルの無いポートが存在してもそ
のアドレスに無効なデータを書き込む必要がありメモリ
の無駄を生じるという不具合がある。すなわち、ハード
的には同一メモリを全ポートが共通に使用しているが論
理的にはメモリ量は均等に入力ポートに割り当てられて
いるため、入力ポート別に異なるメモリを設けているこ
とと等価であり、完全な共通バッファになっていない。
は、書き込みアドレスはカウンタにより周期的に与えら
れ、読み出しアドレスは出力ポートによりランダムに与
えられるため、書き込みアドレスが一巡するまでに読み
だしが完了している必要があり、必要なメモリ量より余
分なメモリを設ける必要があるという不具合がある。あ
るいは、読み出しが行なわれる前に書き込みアドレスが
巡回してきて上書きをしてしまい、セル廃棄を起こすと
いう不具合がある。また、異なるRAMメモリの同一アド
レスには入力ポートの異なるセルのブロックが同時に書
き込まれるため、入力セルの無いポートが存在してもそ
のアドレスに無効なデータを書き込む必要がありメモリ
の無駄を生じるという不具合がある。すなわち、ハード
的には同一メモリを全ポートが共通に使用しているが論
理的にはメモリ量は均等に入力ポートに割り当てられて
いるため、入力ポート別に異なるメモリを設けているこ
とと等価であり、完全な共通バッファになっていない。
上述した従来の共通のバッファ型スイッチの第二の例
では完全な共通バッファにはなっているが、アドレスが
チェーンになっているため1つでも誤りが発生すると連
鎖的に波及し、正常状態に復帰しないという不具合があ
る。
では完全な共通バッファにはなっているが、アドレスが
チェーンになっているため1つでも誤りが発生すると連
鎖的に波及し、正常状態に復帰しないという不具合があ
る。
そこで、本発明の課題は、完全な共通バッファを維持
しつつ、アドレスに誤りが生じた場合に、その誤りが他
のアドレスに波及しないようにし、全体のスイッチ作動
に支障をきたさないようにすることである。
しつつ、アドレスに誤りが生じた場合に、その誤りが他
のアドレスに波及しないようにし、全体のスイッチ作動
に支障をきたさないようにすることである。
本発明は、第1図(a),(b)に示すような構成と
なる。入力ポート1と出力ポート3と共通バッファ2と
を備えると共に、入力ポート1から入力されるセルCを
記憶すべき共通バッファ2の未使用アドレスを管理する
未使用アドレス管理手段4と、セルCの記憶された共通
バッファ2の使用アドレスを管理する使用アドレス管理
手段5とを備え、未使用アドレス管理手段4から与えら
れる共通バッファ2の未使用アドレスに入力ポート1か
ら入力されるセルCを記憶し、使用アドレス管理手段5
から与えられる共通バッファ2の使用アドレスからセル
Cを読出して所定の出力ポートに供給することにより入
出力ポート1,3間でのスイッチ動作を行なう共通バッフ
ァ型スイッチを前提としており、当該共通バッファ型ス
イッチにおいて、上記課題を解決するための技術的手段
は、第1図(a)に示すように、上記未使用アドレス管
理手段4が、入力ポート1から入力されるセルCに対し
て共通バッファ2の未使用アドレスを共通に管理するも
のとなると共に、上記使用アドレス管理手段5が、共通
バッファ2の使用アドレスを、そのアドレスに記憶され
ているセルCの出力すべき態様に応じて管理するものと
なり、共通バッファ2の各アドレスについて、そのアド
レスが管理される手段を示す識別子を記憶する識別子記
憶手段6と、共通バッファ2のアクセスに際し、そのア
ドレスを実際に管理している手段と識別子記憶手段6内
の当該アドレスに対応した識別子との比較によりアドレ
スの誤りを検出するアドレス誤り検出手段7と、アドレ
ス誤り検出手段7がアドレスの誤りを検出したときに、
その誤りアドレスの使用を禁止するアドレス廃棄手段8
とを備えたものである。
なる。入力ポート1と出力ポート3と共通バッファ2と
を備えると共に、入力ポート1から入力されるセルCを
記憶すべき共通バッファ2の未使用アドレスを管理する
未使用アドレス管理手段4と、セルCの記憶された共通
バッファ2の使用アドレスを管理する使用アドレス管理
手段5とを備え、未使用アドレス管理手段4から与えら
れる共通バッファ2の未使用アドレスに入力ポート1か
ら入力されるセルCを記憶し、使用アドレス管理手段5
から与えられる共通バッファ2の使用アドレスからセル
Cを読出して所定の出力ポートに供給することにより入
出力ポート1,3間でのスイッチ動作を行なう共通バッフ
ァ型スイッチを前提としており、当該共通バッファ型ス
イッチにおいて、上記課題を解決するための技術的手段
は、第1図(a)に示すように、上記未使用アドレス管
理手段4が、入力ポート1から入力されるセルCに対し
て共通バッファ2の未使用アドレスを共通に管理するも
のとなると共に、上記使用アドレス管理手段5が、共通
バッファ2の使用アドレスを、そのアドレスに記憶され
ているセルCの出力すべき態様に応じて管理するものと
なり、共通バッファ2の各アドレスについて、そのアド
レスが管理される手段を示す識別子を記憶する識別子記
憶手段6と、共通バッファ2のアクセスに際し、そのア
ドレスを実際に管理している手段と識別子記憶手段6内
の当該アドレスに対応した識別子との比較によりアドレ
スの誤りを検出するアドレス誤り検出手段7と、アドレ
ス誤り検出手段7がアドレスの誤りを検出したときに、
その誤りアドレスの使用を禁止するアドレス廃棄手段8
とを備えたものである。
上記使用アドレス管理手段5は、具体的に、通常の1
対1スイッチにおけるセルの出力形態、優先制御に従っ
たセルの出力形態及び全出力ポートに同一セルを出力す
る放送形式のスイッチにおけるセルの出力形態のいずれ
かに応じて、共通バッファの使用アドレスを管理するも
のである。
対1スイッチにおけるセルの出力形態、優先制御に従っ
たセルの出力形態及び全出力ポートに同一セルを出力す
る放送形式のスイッチにおけるセルの出力形態のいずれ
かに応じて、共通バッファの使用アドレスを管理するも
のである。
また、誤りアドレスが増加した場合に、使用可能なア
ドレスの単純な減少を防止してより適正なスイッチ作動
を保証する観点から、第1図(b)に示すように、上記
構成に加え、共通バッファのアドレス空間の各アドレス
からアドレス廃棄手段での使用禁止により欠落したアド
レスを検索し、そのアドレスを未使用アドレス管理手段
の管理下に戻すことによって当該欠落したアドレスを復
元するアドレス復元手段9を備えたものとする。
ドレスの単純な減少を防止してより適正なスイッチ作動
を保証する観点から、第1図(b)に示すように、上記
構成に加え、共通バッファのアドレス空間の各アドレス
からアドレス廃棄手段での使用禁止により欠落したアド
レスを検索し、そのアドレスを未使用アドレス管理手段
の管理下に戻すことによって当該欠落したアドレスを復
元するアドレス復元手段9を備えたものとする。
入力ポート1から入力されるセルCが未使用アドレス
管理手段4から与えられる共通バッファ2の未使用アド
レスに記憶され、使用中となったそのアドレスは使用ア
ドレス管理手段5にて管理されるようになる。そして、
使用アドレス管理手段5から与えられる共通バッファ2
の使用アドレスからセルCが読出され、そのセルCが所
定の出力ポート3から出力される。この共通バッファ2
からのセルCの読出しにより、未使用中となったアドレ
スは未使用アドレス管理手段4での管理に移される。こ
のようにして共通バッファ2のアドレスが未使用アドレ
ス管理手段4と使用アドレス管理手段5との間で巡回さ
れて共通バッファ2が管理され、それにより入出力ポー
ト1,3間でのスイッチ動作がなされる。
管理手段4から与えられる共通バッファ2の未使用アド
レスに記憶され、使用中となったそのアドレスは使用ア
ドレス管理手段5にて管理されるようになる。そして、
使用アドレス管理手段5から与えられる共通バッファ2
の使用アドレスからセルCが読出され、そのセルCが所
定の出力ポート3から出力される。この共通バッファ2
からのセルCの読出しにより、未使用中となったアドレ
スは未使用アドレス管理手段4での管理に移される。こ
のようにして共通バッファ2のアドレスが未使用アドレ
ス管理手段4と使用アドレス管理手段5との間で巡回さ
れて共通バッファ2が管理され、それにより入出力ポー
ト1,3間でのスイッチ動作がなされる。
上記スイッチ動作の過程で、識別子記憶手段6は共通
バッファ2の各アドレスについて、そのアドレスが管理
される手段を示す識別子を記憶する。そして、共通バッ
ファ2のアクセスに際し、アドレス誤り検出手段7が共
通バッファ2のアクセスされたアドレスを実際に管理し
ている手段と、上記識別子記憶手段6内の当該アドレス
に対応した識別子との比較によりアドレスの誤りを検出
すると、アドレス廃棄手段8がその検出した誤りアドレ
スの使用を禁止する。これにより、以後のスイッチ動作
の過程では、その誤りの検出されたアドレスについて
は、使用、未使用の管理の対象からはずされる。即ち、
共通バッファ2の当該誤りアドレスについてのアクセス
はなされない。
バッファ2の各アドレスについて、そのアドレスが管理
される手段を示す識別子を記憶する。そして、共通バッ
ファ2のアクセスに際し、アドレス誤り検出手段7が共
通バッファ2のアクセスされたアドレスを実際に管理し
ている手段と、上記識別子記憶手段6内の当該アドレス
に対応した識別子との比較によりアドレスの誤りを検出
すると、アドレス廃棄手段8がその検出した誤りアドレ
スの使用を禁止する。これにより、以後のスイッチ動作
の過程では、その誤りの検出されたアドレスについて
は、使用、未使用の管理の対象からはずされる。即ち、
共通バッファ2の当該誤りアドレスについてのアクセス
はなされない。
更に、アドレス修復手段9を備える場合、このアドレ
ス修復手段9は、共通バッファのアドレス空間の各アド
レスから上記アドレス廃棄手段8での使用禁止により欠
落したアドレスを検索し、そのアドレスを未使用アドレ
ス管理手段4の管理下に戻すことによって当該欠落した
アドレスの修復を行う。それ以後、修復されたアドレス
は、通常と同様に、未使用アドレスとして管理され、使
用されたときに使用アドレスとしての管理に切換えられ
る 〔実施例〕 以下本発明の実施例を図面に基づいて説明する。
ス修復手段9は、共通バッファのアドレス空間の各アド
レスから上記アドレス廃棄手段8での使用禁止により欠
落したアドレスを検索し、そのアドレスを未使用アドレ
ス管理手段4の管理下に戻すことによって当該欠落した
アドレスの修復を行う。それ以後、修復されたアドレス
は、通常と同様に、未使用アドレスとして管理され、使
用されたときに使用アドレスとしての管理に切換えられ
る 〔実施例〕 以下本発明の実施例を図面に基づいて説明する。
第2図は、本発明の第一実施例である共通バッファ型
スイッチを説明する図である。
スイッチを説明する図である。
本第一実施例は、共通バッファを構成するRAMメモリ
の空きアドレスを共通な一つのFIFOメモリで管理するた
め、共通バッファの大きさが必要最小限ですみ、さら
に、使用アドレスを出力ポート毎にFIFOメモリにより管
理しているため、アドレスに誤りが生じた場合にもその
アドレスのみで誤りは終わり、他のアドレスに誤りが波
及することが無い。また、アドレスが管理されている場
所を記憶する対応記憶部を設け、アドレスをFIFOメモリ
に書き込む場合にそのFIFOメモリを示す識別子を対応記
憶部に記憶し、FIFOメモリから読み出す場合にその対応
記憶部に記憶されている識別子が示すFIFOメモリと同一
のFIFOメモリから実際に読みだされたかどうかを検査す
ることによりアドレスの誤りを検出し、その誤りアドレ
スを使用禁止にすることができるという特徴がある。
の空きアドレスを共通な一つのFIFOメモリで管理するた
め、共通バッファの大きさが必要最小限ですみ、さら
に、使用アドレスを出力ポート毎にFIFOメモリにより管
理しているため、アドレスに誤りが生じた場合にもその
アドレスのみで誤りは終わり、他のアドレスに誤りが波
及することが無い。また、アドレスが管理されている場
所を記憶する対応記憶部を設け、アドレスをFIFOメモリ
に書き込む場合にそのFIFOメモリを示す識別子を対応記
憶部に記憶し、FIFOメモリから読み出す場合にその対応
記憶部に記憶されている識別子が示すFIFOメモリと同一
のFIFOメモリから実際に読みだされたかどうかを検査す
ることによりアドレスの誤りを検出し、その誤りアドレ
スを使用禁止にすることができるという特徴がある。
入力ポート数と出力ポート数はそれぞれ任意の数でよ
い。ここでは一例として、入力ポート数4,出力ポート数
4の場合を示す。入力ポートi1〜i4から共通バッファ82
の入力までの動作および共通バッファ82の出力から出力
ポートo1〜o4までの動作は従来の第一の例と同じなので
省略する。
い。ここでは一例として、入力ポート数4,出力ポート数
4の場合を示す。入力ポートi1〜i4から共通バッファ82
の入力までの動作および共通バッファ82の出力から出力
ポートo1〜o4までの動作は従来の第一の例と同じなので
省略する。
符号11−1,11−2,11−3,11−4はそれぞれRAMメモリr
1〜r4に書き込みアドレスを与える書き込みアドレスレ
ジスタ、符号12−1,12−2,12−3,12−4はそれぞれRAM
メモリr1〜r4に読み出しアドレスを与える読み出しアド
レスレジスタを示す。
1〜r4に書き込みアドレスを与える書き込みアドレスレ
ジスタ、符号12−1,12−2,12−3,12−4はそれぞれRAM
メモリr1〜r4に読み出しアドレスを与える読み出しアド
レスレジスタを示す。
初期状態では、共通バッファを構成するRAMメモリは
全て空き状態であるから、空きアドレスバッファ10には
RAMメモリのアドレスが全て記憶されており、アドレス
記憶部には何も記憶されていない状態である。また、書
き込みアドレスレジスタ11−1〜11−4および読み出し
アドレスレジスタ12−1〜12−4は後述する入力セルの
無い場合、および読み出しセルの無い場合に相当する状
態になっている。
全て空き状態であるから、空きアドレスバッファ10には
RAMメモリのアドレスが全て記憶されており、アドレス
記憶部には何も記憶されていない状態である。また、書
き込みアドレスレジスタ11−1〜11−4および読み出し
アドレスレジスタ12−1〜12−4は後述する入力セルの
無い場合、および読み出しセルの無い場合に相当する状
態になっている。
第3図は共通バッファへのブロックの書き込み動作を
説明する図である。書き込み動作に関係の無い結線等は
省略している。
説明する図である。書き込み動作に関係の無い結線等は
省略している。
ある時刻τに入力セルic1の第1ブロック101が共通バ
ッファに書き込まれるとする。また、ic1〜ic4はそれぞ
れ出力ポートo3,o1,o4,o2に出力されるものとする。第
3図(a),(b),(c),(d),(e)はそれぞ
れ時刻(τ−1),τ,(τ+1),(τ+2),(τ
+3)の状態を示す。時刻(τ−1)には(第3図
(a)参照)書き込みアドレスレジスタ11−1〜11−4
には何がしかのアドレス(*1〜*4で表す)が保持さ
れている。空きアドレスバッファ10には先頭から“2",
“23",“5",“20",“27"…の空きアドレスが記憶されて
おり、この順に読みだされる。時刻τには(第3図
(b)参照)空きアドレスバッファ10から空きアドレス
“2"が読みだされ、書き込みアドレスレジスタ11−1に
保持され、時刻(τ−1)に書き込みアドレスレジスタ
11−1〜11−3に保持されていたアドレスはそれぞれ書
き込みアドレスレジスタ11−2〜11−4にシフトされて
保持され、書き込みアドレスレジスタ11−4に保持され
ていたアドレスは書き込み終了ということで消滅し、RA
Mメモリr1のアドレス“2"にブロック101,r2〜r4にはそ
れぞれアドレス“*1"〜“*3"に時刻τに共通バッファ
の入力ポート2〜4に入力されたブロックが書き込まれ
る。また、出力ポート読み取り部81でブロック101から
出力ポート先のo3が読みだされ、これをもとにアドレス
記憶部84に送られたアドレス“2"はアドレス振り分け部
85により出力ポートo3に対応するFIFOメモリf3に記憶さ
れる。時刻(τ+1)には(第3図(c)参照)空きア
ドレスバッファ10からアドレス“23"が読み出され、時
刻τの場合と同様にしてRAMメモリr1,r2にはそれぞれア
ドレス“23"と“2"にブロック201と102が書き込まれ、F
IFOメモリf1にアドレス“23"が記憶される。時刻(τ+
2)には(第3図(d)参照)空きアドレスバッファ10
からアドレス“5"が読みだされ、同様にしてRAMメモリr
1,r2,r3にはそれぞれアドレス“5",“23",“2"にブロッ
ク301,202,103が書き込まれ、FIFOメモリf4にアドレ
ス“5"が記憶される。時刻(τ+3)には(第3図
(e)参照)空きアドレスバッファ10からアドレス“2
0"が読みだされ、同様にしてRAMメモリr1,r2,r3,r4には
それぞれアドレス“20",“5",“23",“2"にブロック4
01,302,203,104が書き込まれ、FIFOメモリf2にアド
レス“20"が記憶される。以上のようにして入力セルic1
の全ブロックはRAMメモリr1〜r4の同一アドレスに書き
込まれる。入力セルの無い場合は、空きアドレスは読み
出さず、RAMメモリへの書き込みを行わない。または、
空きアドレスは読み出さず、特定のアドレスをセルの無
い場合の書き込みに割り当てておき、そのアドレスにセ
ルの無いことを示すデータを書き込む。または、空きア
ドレスを読み出し、そのアドレスにセルの無いことを示
すデータを書き込み、そのアドレスをアドレス記憶部84
には記憶しないで空きアドレスバッファ10に書き込む。
ッファに書き込まれるとする。また、ic1〜ic4はそれぞ
れ出力ポートo3,o1,o4,o2に出力されるものとする。第
3図(a),(b),(c),(d),(e)はそれぞ
れ時刻(τ−1),τ,(τ+1),(τ+2),(τ
+3)の状態を示す。時刻(τ−1)には(第3図
(a)参照)書き込みアドレスレジスタ11−1〜11−4
には何がしかのアドレス(*1〜*4で表す)が保持さ
れている。空きアドレスバッファ10には先頭から“2",
“23",“5",“20",“27"…の空きアドレスが記憶されて
おり、この順に読みだされる。時刻τには(第3図
(b)参照)空きアドレスバッファ10から空きアドレス
“2"が読みだされ、書き込みアドレスレジスタ11−1に
保持され、時刻(τ−1)に書き込みアドレスレジスタ
11−1〜11−3に保持されていたアドレスはそれぞれ書
き込みアドレスレジスタ11−2〜11−4にシフトされて
保持され、書き込みアドレスレジスタ11−4に保持され
ていたアドレスは書き込み終了ということで消滅し、RA
Mメモリr1のアドレス“2"にブロック101,r2〜r4にはそ
れぞれアドレス“*1"〜“*3"に時刻τに共通バッファ
の入力ポート2〜4に入力されたブロックが書き込まれ
る。また、出力ポート読み取り部81でブロック101から
出力ポート先のo3が読みだされ、これをもとにアドレス
記憶部84に送られたアドレス“2"はアドレス振り分け部
85により出力ポートo3に対応するFIFOメモリf3に記憶さ
れる。時刻(τ+1)には(第3図(c)参照)空きア
ドレスバッファ10からアドレス“23"が読み出され、時
刻τの場合と同様にしてRAMメモリr1,r2にはそれぞれア
ドレス“23"と“2"にブロック201と102が書き込まれ、F
IFOメモリf1にアドレス“23"が記憶される。時刻(τ+
2)には(第3図(d)参照)空きアドレスバッファ10
からアドレス“5"が読みだされ、同様にしてRAMメモリr
1,r2,r3にはそれぞれアドレス“5",“23",“2"にブロッ
ク301,202,103が書き込まれ、FIFOメモリf4にアドレ
ス“5"が記憶される。時刻(τ+3)には(第3図
(e)参照)空きアドレスバッファ10からアドレス“2
0"が読みだされ、同様にしてRAMメモリr1,r2,r3,r4には
それぞれアドレス“20",“5",“23",“2"にブロック4
01,302,203,104が書き込まれ、FIFOメモリf2にアド
レス“20"が記憶される。以上のようにして入力セルic1
の全ブロックはRAMメモリr1〜r4の同一アドレスに書き
込まれる。入力セルの無い場合は、空きアドレスは読み
出さず、RAMメモリへの書き込みを行わない。または、
空きアドレスは読み出さず、特定のアドレスをセルの無
い場合の書き込みに割り当てておき、そのアドレスにセ
ルの無いことを示すデータを書き込む。または、空きア
ドレスを読み出し、そのアドレスにセルの無いことを示
すデータを書き込み、そのアドレスをアドレス記憶部84
には記憶しないで空きアドレスバッファ10に書き込む。
第4図は共通バッファからのブロックの読み出し動作
を説明する図である。読み出し動作に関係の無い結線等
は省略している。
を説明する図である。読み出し動作に関係の無い結線等
は省略している。
ある時刻τに出力ポートo1に出力されるセルが読みだ
されたとする。第4図(a),(b),(c),
(d),(e)はそれぞれ時刻(τ−1),τ,(τ+
1),(τ+2),(τ+3)の状態を示す。時刻(τ
−1)には(第4図(a)参照)読み出しアドレスレジ
スタ12−1〜12−4に何がしかのアドレス(*1〜*4
で表す)が保持されている。アドレス記憶部84のFIFOメ
モリf1〜f4の先頭にはそれぞれアドレス“23",“20",
“2",“5"が記憶されているものとする。時刻τには
(第4図(b)参照)FIFOメモリf1から出力ポートo1に
出力するセルが書き込まれているアドレス“23"がアド
レス読み出し部86により読みだされ、読み出しアドレス
レジスタ12−1に保持され、時刻(τ−1)に読み出し
アドレスレジスタ12−1〜12−3に保持されていたアド
レスはそれぞれ読み出しアドレスレジスタ12−2〜12−
4にシフトされて保持され、読み出しアドレスレジスタ
12−4に保持されていたアドレスは読み出し終了という
ことで消滅し、RAMメモリr1のアドレス“23"からブロッ
ク201,r2〜r4のそれぞれのアドレス“*1"〜“*3"から
共通バッファの出力ポート2〜4に出力されるブロック
が読みだされる。また、アドレス“23"は空きアドレス
となるため空きアドレスバッファ10に記憶される。時刻
(τ+1)には(第4図(c)参照)FIFOメモリf2から
アドレス“20"が読み出され、時刻τの場合と同様にし
てRAMメモリr1,r2のそれぞれのアドレス“20"と“23"よ
りブロック401と202が読みだされ、空きアドレスバッフ
ァ10にアドレス“20"が記憶される。時刻(τ+2)
(第4図(d)参照)にはFIFOメモリf3からアドレス
“2"が読みだされ、同様にしてRAMメモリr1,r2,r3のそ
れぞれのアドレス“2",“20",“23"よりブロック101,4
02,203が読みだされ、空きアドレスバッファ10にアド
レス“2"が記憶される。時刻(τ+3)(第4図(e)
参照)にはFIFOメモリf4からアドレス“5"が読みださ
れ、同様にしてRAMメモリr1,r2,r3,r4のそれぞれのアド
レス“5",“2",“20",“23"よりブロック301,102,4
03,204が読みだされ、空きアドレスバッファ10にアド
レス“5"が記憶される。以上のようにして出力ポートo1
に出力されるセルoc1を構成する4ブロック201〜204が
読み出される。アドレス記憶部84にアドレスの記憶され
ていないFIFOメモリが存在する場合は、RAMメモリの読
みだしを禁止する。または、アドレスが存在しない場合
に読み出す特定のデータを書き込んだ特定のアドレスを
決めておき、そのアドレスからデータを読み出す。また
は、そのFIFOメモリはとばして次のFIFOメモリに書かれ
ているアドレスを読み出す。
されたとする。第4図(a),(b),(c),
(d),(e)はそれぞれ時刻(τ−1),τ,(τ+
1),(τ+2),(τ+3)の状態を示す。時刻(τ
−1)には(第4図(a)参照)読み出しアドレスレジ
スタ12−1〜12−4に何がしかのアドレス(*1〜*4
で表す)が保持されている。アドレス記憶部84のFIFOメ
モリf1〜f4の先頭にはそれぞれアドレス“23",“20",
“2",“5"が記憶されているものとする。時刻τには
(第4図(b)参照)FIFOメモリf1から出力ポートo1に
出力するセルが書き込まれているアドレス“23"がアド
レス読み出し部86により読みだされ、読み出しアドレス
レジスタ12−1に保持され、時刻(τ−1)に読み出し
アドレスレジスタ12−1〜12−3に保持されていたアド
レスはそれぞれ読み出しアドレスレジスタ12−2〜12−
4にシフトされて保持され、読み出しアドレスレジスタ
12−4に保持されていたアドレスは読み出し終了という
ことで消滅し、RAMメモリr1のアドレス“23"からブロッ
ク201,r2〜r4のそれぞれのアドレス“*1"〜“*3"から
共通バッファの出力ポート2〜4に出力されるブロック
が読みだされる。また、アドレス“23"は空きアドレス
となるため空きアドレスバッファ10に記憶される。時刻
(τ+1)には(第4図(c)参照)FIFOメモリf2から
アドレス“20"が読み出され、時刻τの場合と同様にし
てRAMメモリr1,r2のそれぞれのアドレス“20"と“23"よ
りブロック401と202が読みだされ、空きアドレスバッフ
ァ10にアドレス“20"が記憶される。時刻(τ+2)
(第4図(d)参照)にはFIFOメモリf3からアドレス
“2"が読みだされ、同様にしてRAMメモリr1,r2,r3のそ
れぞれのアドレス“2",“20",“23"よりブロック101,4
02,203が読みだされ、空きアドレスバッファ10にアド
レス“2"が記憶される。時刻(τ+3)(第4図(e)
参照)にはFIFOメモリf4からアドレス“5"が読みださ
れ、同様にしてRAMメモリr1,r2,r3,r4のそれぞれのアド
レス“5",“2",“20",“23"よりブロック301,102,4
03,204が読みだされ、空きアドレスバッファ10にアド
レス“5"が記憶される。以上のようにして出力ポートo1
に出力されるセルoc1を構成する4ブロック201〜204が
読み出される。アドレス記憶部84にアドレスの記憶され
ていないFIFOメモリが存在する場合は、RAMメモリの読
みだしを禁止する。または、アドレスが存在しない場合
に読み出す特定のデータを書き込んだ特定のアドレスを
決めておき、そのアドレスからデータを読み出す。また
は、そのFIFOメモリはとばして次のFIFOメモリに書かれ
ているアドレスを読み出す。
以上のようにしてスイッチ動作が行われる。
入力ポート数と出力ポート数が異なる場合は、多い方
のポート数と同数にブロック分割する。出力ポート数が
多い場合の一例として、入力ポート数2,出力ポート数4
の場合を取り上げる。この場合は、前述の入力ポート数
4,出力ポート数4の場合において、任意の2つの入力ポ
ートからの入力が常に無い場合と等価であり、実際には
その2つの入力ポートが存在せず、そのポートに関する
回路も無いものと考えればよい。
のポート数と同数にブロック分割する。出力ポート数が
多い場合の一例として、入力ポート数2,出力ポート数4
の場合を取り上げる。この場合は、前述の入力ポート数
4,出力ポート数4の場合において、任意の2つの入力ポ
ートからの入力が常に無い場合と等価であり、実際には
その2つの入力ポートが存在せず、そのポートに関する
回路も無いものと考えればよい。
入力ポート数が多い場合の一例として、入力ポート数
4,出力ポート数2の場合を取り上げる。この場合は、前
述の入力ポート数4,出力ポート数4の場合において、ア
ドレス記憶部84のFIFOメモリの内任意の2つのFIFOメモ
リに常にアドレスが記憶されておらず、前述したように
そのFIFOメモリをとばして次のFIFOメモリからアドレス
を読み出す場合と等価であり、実際には2つに相当する
FIFOメモリおよびそれらに対応する出力ポートが存在せ
す、そのFIFOメモリおよび出力ポートに関する回路も無
いものと考えればよい。
4,出力ポート数2の場合を取り上げる。この場合は、前
述の入力ポート数4,出力ポート数4の場合において、ア
ドレス記憶部84のFIFOメモリの内任意の2つのFIFOメモ
リに常にアドレスが記憶されておらず、前述したように
そのFIFOメモリをとばして次のFIFOメモリからアドレス
を読み出す場合と等価であり、実際には2つに相当する
FIFOメモリおよびそれらに対応する出力ポートが存在せ
す、そのFIFOメモリおよび出力ポートに関する回路も無
いものと考えればよい。
以下にアドレス誤りの検出および誤りアドレスを使用
禁止にする方法を説明する。
禁止にする方法を説明する。
一例として、共通バッファ82を構成するRAMメモリの
アドレスが0〜31の場合を示す。この場合、アドレス数
は32であるから5ビットでアドレスを表現する。アドレ
ス記憶場所を示す識別子を記憶する対応記憶部13は5ビ
ットで表現できるアドレス全てを有するRAMメモリで構
成する。すなわち、ここでは0〜31のアドレスを有する
RAMメモリで構成する。したがって、アドレスに誤りが
生じて異なるアドレスに変化してもやはりそのアドレス
は対応記憶部13のアドレスに含まれるため誤り検出が可
能である。
アドレスが0〜31の場合を示す。この場合、アドレス数
は32であるから5ビットでアドレスを表現する。アドレ
ス記憶場所を示す識別子を記憶する対応記憶部13は5ビ
ットで表現できるアドレス全てを有するRAMメモリで構
成する。すなわち、ここでは0〜31のアドレスを有する
RAMメモリで構成する。したがって、アドレスに誤りが
生じて異なるアドレスに変化してもやはりそのアドレス
は対応記憶部13のアドレスに含まれるため誤り検出が可
能である。
一例として、アドレスが空きアドレスバッファ10に記
憶されている場合は“0000"、FIFOメモリf1〜f4に記憶
されている場合はそれぞれ“0001" “0010" “0100"
“1000"をアドレス記憶場所を示す識別子とする。前
述のスイッチ動作中、共通バッファ82を構成するRAMメ
モリのあるアドレス“a"を空きアドレスバッファ10また
はFIFOメモリf1〜f4に書き込む場合には対応記憶部13の
アドレス“a"に前記アドレス記憶場所を示す識別子を記
憶する。空きアドレスバッファ10またはFIFOメモリf1〜
f4からあるアドレス“b"を読み出した場合には対応記憶
部13のアドレス“b"に記憶されているアドレス記憶場所
を示す識別子を読み出し、実際にその識別子が示す場所
から読みだされたかどうかをアドレス誤り検査部14で検
査し、一致していれば正常と判断して、そのアドレスに
関する前述のスイッチ動作を継続して行う。一致してい
ない場合は、アドレスかあるいは対応記憶部13に誤りが
あると判断して、そのアドレスに関する動作を行わな
い。また、そのアドレスは、空きアドレスバッファ10あ
るいはFIFOメモリf1〜f4のいずれにも書き込まないで廃
棄し、使用禁止にする。
憶されている場合は“0000"、FIFOメモリf1〜f4に記憶
されている場合はそれぞれ“0001" “0010" “0100"
“1000"をアドレス記憶場所を示す識別子とする。前
述のスイッチ動作中、共通バッファ82を構成するRAMメ
モリのあるアドレス“a"を空きアドレスバッファ10また
はFIFOメモリf1〜f4に書き込む場合には対応記憶部13の
アドレス“a"に前記アドレス記憶場所を示す識別子を記
憶する。空きアドレスバッファ10またはFIFOメモリf1〜
f4からあるアドレス“b"を読み出した場合には対応記憶
部13のアドレス“b"に記憶されているアドレス記憶場所
を示す識別子を読み出し、実際にその識別子が示す場所
から読みだされたかどうかをアドレス誤り検査部14で検
査し、一致していれば正常と判断して、そのアドレスに
関する前述のスイッチ動作を継続して行う。一致してい
ない場合は、アドレスかあるいは対応記憶部13に誤りが
あると判断して、そのアドレスに関する動作を行わな
い。また、そのアドレスは、空きアドレスバッファ10あ
るいはFIFOメモリf1〜f4のいずれにも書き込まないで廃
棄し、使用禁止にする。
前述の誤り検出方法において、誤ったアドレスと同じ
正常なアドレスが同一場所に管理されている場合は誤り
検出ができない。しかしながら、アドレスは異なるFIFO
メモリ間を巡回しており、同一FIFOメモリに管理され続
ける確率はきわめて小さいため、永久に誤り検出ができ
ない確率はほぼ0である。
正常なアドレスが同一場所に管理されている場合は誤り
検出ができない。しかしながら、アドレスは異なるFIFO
メモリ間を巡回しており、同一FIFOメモリに管理され続
ける確率はきわめて小さいため、永久に誤り検出ができ
ない確率はほぼ0である。
前記共通バッファ82の0〜31のアドレスを6ビット以
上で表現する場合は、対応記憶部13のアドレスのうち共
通バッファ82のアドレス0〜31に対応するアドレス以外
のアドレスには場所を示す識別子以外のデータを用いて
そのアドレスが存在しえないことを予め書き込んでお
く。
上で表現する場合は、対応記憶部13のアドレスのうち共
通バッファ82のアドレス0〜31に対応するアドレス以外
のアドレスには場所を示す識別子以外のデータを用いて
そのアドレスが存在しえないことを予め書き込んでお
く。
前記対応記憶部13は、共通バッファ82のRAMメモリに
ブロック記憶領域と管理場所の識別子の記憶領域を設け
ることにより1つのメモリで実現することもできる。
ブロック記憶領域と管理場所の識別子の記憶領域を設け
ることにより1つのメモリで実現することもできる。
第5図により上記誤り検出の方法を更に具体的に説明
する。誤り検出に関係の無い結線等は省略してある。第
5図に示すようにアドレスが記憶されており、対応記憶
部13にその状態が記憶されているとする。空きアドレス
バッファ10からアドレス“3"が読みだされた場合、対応
記憶部13のアドレス“3"には記憶場所を設ける識別子と
して“0000"が記憶されており、この識別子は空きアド
レスバッファ10を示しているから正常であるので、動作
を継続し、例えばアドレス“3"を出力に対応するFIFOメ
モリf2に記憶し、対応記憶部13のアドレス“3"の位置に
新しい記憶場所として“0010"を書き込む。また、FIFO
メモリf3からアドレス“6"が読みだされた場合、対応記
憶部13のアドレス“6"には記憶場所として“0001"が記
憶されており、この識別子はFIFOメモリf1を示している
から実際に読みだしを行ったFIFOメモリf3とは異なるの
で誤りがあると判断し、アドレス“6"に関する動作は中
止し、アドレス“6"自体もどこにも書き込まず廃棄す
る。具体的には、読出しアドレスレジスタ12−1に対す
る格納タイミング信号及び、FIFO10に対する書込みタイ
ミング信号を制御することにより、アドレス“6"を読出
しアドレスレジスタ12−1,FIFO10に格納しないようにす
る。また、上記FIFO10からのアドレス“3"がかりに誤っ
ていた場合には、上記と同様タイミング信号の制御によ
り書き込みアドレスレジスタ11−1及びアドレス振り分
け部85へのアドレス格納が禁止される。
する。誤り検出に関係の無い結線等は省略してある。第
5図に示すようにアドレスが記憶されており、対応記憶
部13にその状態が記憶されているとする。空きアドレス
バッファ10からアドレス“3"が読みだされた場合、対応
記憶部13のアドレス“3"には記憶場所を設ける識別子と
して“0000"が記憶されており、この識別子は空きアド
レスバッファ10を示しているから正常であるので、動作
を継続し、例えばアドレス“3"を出力に対応するFIFOメ
モリf2に記憶し、対応記憶部13のアドレス“3"の位置に
新しい記憶場所として“0010"を書き込む。また、FIFO
メモリf3からアドレス“6"が読みだされた場合、対応記
憶部13のアドレス“6"には記憶場所として“0001"が記
憶されており、この識別子はFIFOメモリf1を示している
から実際に読みだしを行ったFIFOメモリf3とは異なるの
で誤りがあると判断し、アドレス“6"に関する動作は中
止し、アドレス“6"自体もどこにも書き込まず廃棄す
る。具体的には、読出しアドレスレジスタ12−1に対す
る格納タイミング信号及び、FIFO10に対する書込みタイ
ミング信号を制御することにより、アドレス“6"を読出
しアドレスレジスタ12−1,FIFO10に格納しないようにす
る。また、上記FIFO10からのアドレス“3"がかりに誤っ
ていた場合には、上記と同様タイミング信号の制御によ
り書き込みアドレスレジスタ11−1及びアドレス振り分
け部85へのアドレス格納が禁止される。
上述のスイッチにおいて同一出力ポートへのセルの出
力順序に優先制御を容易に付加できる。すなわち、優先
制御を行う出力ポートに対応するFIFOメモリを優先度に
応じて個別に設け、アドレスを書き込む場合にアドレス
振り分け部85において宛先出力ポートと優先度の両方に
対するFIFOメモリに書き込み、アドレスを読み出す場合
はある出力ポートに関してアドレスが書き込まれている
優先度の最も大きなFIFOメモリからアドレスを読み出す
ようにすれば実現できる。
力順序に優先制御を容易に付加できる。すなわち、優先
制御を行う出力ポートに対応するFIFOメモリを優先度に
応じて個別に設け、アドレスを書き込む場合にアドレス
振り分け部85において宛先出力ポートと優先度の両方に
対するFIFOメモリに書き込み、アドレスを読み出す場合
はある出力ポートに関してアドレスが書き込まれている
優先度の最も大きなFIFOメモリからアドレスを読み出す
ようにすれば実現できる。
また、上述のスイッチにおいて1つのセルを全出力ポ
ートに出力する放送形式のスイッチも容易に実現でき
る。すなわち、全出力ポートに出力するセルのアドレス
を読み出す場合はFIFOメモリの読み出しポインタをその
アドレスが書き込まれている位置に固定し、アドレス読
み出し部86も読み出しFIFOメモリをそのアドレスが書き
込まれているFIFOメモリに本来一巡する間固定すれば全
出力ポートに対して同一アドレスからセルが読みだされ
るため、放送形式のスイッチが容易に実現できる。
ートに出力する放送形式のスイッチも容易に実現でき
る。すなわち、全出力ポートに出力するセルのアドレス
を読み出す場合はFIFOメモリの読み出しポインタをその
アドレスが書き込まれている位置に固定し、アドレス読
み出し部86も読み出しFIFOメモリをそのアドレスが書き
込まれているFIFOメモリに本来一巡する間固定すれば全
出力ポートに対して同一アドレスからセルが読みだされ
るため、放送形式のスイッチが容易に実現できる。
第6図は、本発明の第二実施例である共通バッファ型
スイッチを説明する図である。
スイッチを説明する図である。
入力ポート数と出力ポート数はそれぞれ任意の数でよ
い。ここでは一例として、入力ポート数2,出力ポート数
2の場合を示す。入力セルは入力ポート数と出力ポート
数の和の数にブロック分割される。したがってここでは
4分割される。符号50−1〜50−4はRAMメモリr1〜r4
にアドレスを与えるアドレスレジスタを示す。
い。ここでは一例として、入力ポート数2,出力ポート数
2の場合を示す。入力セルは入力ポート数と出力ポート
数の和の数にブロック分割される。したがってここでは
4分割される。符号50−1〜50−4はRAMメモリr1〜r4
にアドレスを与えるアドレスレジスタを示す。
ブロック分割部80において入力セルic1に対してic2は
1又は2又は3ブロック分の遅延が与えられ、かつ、各
セルの第1,第2,第3,第4ブロックはそれぞれブロック分
割部80の出力ポート1,2,3,4に出力される。遅延量は、
全ての入力ポートから同時刻に入力されるセルの第1ブ
ロックが1セル時間内に入っていればよい。ここでは、
遅延量を2ブロック分としている。ic2を取り上げる
と、ic1の第1のブロック101が時刻t10に出力されるの
でそれより2ブロック分遅れて、第1ブロック201は時
刻t12にブロック分割部80の出力ポート1に、第2ブロ
ック202は時刻t13に出力ポート2に、第3ブロックは20
3は時刻t14に出力ポート3に、第4ブロック204は時刻t
15に出力ポート4に出力される。
1又は2又は3ブロック分の遅延が与えられ、かつ、各
セルの第1,第2,第3,第4ブロックはそれぞれブロック分
割部80の出力ポート1,2,3,4に出力される。遅延量は、
全ての入力ポートから同時刻に入力されるセルの第1ブ
ロックが1セル時間内に入っていればよい。ここでは、
遅延量を2ブロック分としている。ic2を取り上げる
と、ic1の第1のブロック101が時刻t10に出力されるの
でそれより2ブロック分遅れて、第1ブロック201は時
刻t12にブロック分割部80の出力ポート1に、第2ブロ
ック202は時刻t13に出力ポート2に、第3ブロックは20
3は時刻t14に出力ポート3に、第4ブロック204は時刻t
15に出力ポート4に出力される。
第7図は共通バッファへのブロックの書き込み、およ
び共通バッファからのブロックの読み出し動作を説明す
る図である。動作に関係の無い結線等は省略している。
び共通バッファからのブロックの読み出し動作を説明す
る図である。動作に関係の無い結線等は省略している。
ある時刻τに入力セルic1の第1ブロック101が共通バ
ッファに書き込まれるとする。また、ic1,ic2はそれぞ
れ出力ポートo2,o1に出力されるものとする。第7図
(a),(b),(c),(d),(e),(f)はそ
れぞれ時刻(τ−1),τ,(τ+1),(τ+2),
(τ+3),(τ+4)の状態を示す。空きアドレスバ
ッファ10には先頭から“2",“23",“5"…の空きアドレ
スが記憶されている。また、アドレス記憶部84のFIFOメ
モリf1,f2の先頭にはそれぞれアドレス“20",“1"が記
憶されており、RAMメモリr1〜r4のアドレス“20"と“1"
にはそれぞれブロック111〜114と211〜214が記憶されて
いる。時刻(τ−1)には(第7図(a)参照)アドレ
スレジスタ50−1〜50−4に何がしかのアドレス(*1
〜*4で表す)が保持されている。時刻τには(第7図
(b)参照)空きアドレスバッファ10から空きアドレス
“2"が読みだされ、アドレスレジスタ50−1に保持さ
れ、時刻(τ−1)にアドレスレジスタ50−1〜50−3
に保持されていたアドレスはそれぞれアドレスレジスタ
50−2〜50−4にシフトされて保持され、アドレスレジ
スタ50−4に保持されていたアドレスは消滅し、RAMメ
モリr1のアドレス“2"にブロック101,RAMメモリr3のア
ドレス“*2"に時刻τに共通バッファの入力ポート3に
入力されたブロックが書き込まれる。また、出力ポート
読み取り部81でブロック101から出力ポート先のo2が読
みだされ、これをもとにアドレス記憶部84に送られたア
ドレス“2"はアドレス振り分け部85により出力ポートo2
に対応するFIFOメモリf2に記憶される。また、RAMメモ
リr2,r4のアドレス“*1",“*3"から共通バッファの出
力ポート2,4に出力されるブロックが読みだされる。時
刻(τ+1)には(第7図(c)参照)FIFOメモリf1か
ら出力ポートo1に出力するセルが書き込まれているアド
レス“20"がアドレス読み出し部86により読みだされ、
アドレスレジスタ50−1に保持され、時刻τにアドレス
レジスタ50−1〜50−3に保持されていたアドレス
“2",“*1",“*2"はそれぞれアドレスレジスタ50−2
〜50−4にシフトされて保持され、アドレスレジスタ50
−4に保持されていたアドレス“*3"は消滅し、RAMメ
モリr1のアドレス“20"からブロック111,r3のアドレス
“*1"から共通バッファの出力ポート3に出力されるブ
ロックが読みだされる。また。アドレス“20"は空きア
ドレスとなるため空きアドレスバッファ10に記憶され
る。また、RAMメモリr2のアドレス“2"にブロック102,r
4のアドレス“*2"に時刻(τ+1)に共通バッファの
入力ポート4に入力されたブロックが書き込まれる。時
刻(τ+2)には空きアドレスバッファ10から空きアド
レス“23"が読みだされ、アドレスレジスタ50−1に保
持され、時刻(τ+1)にアドレスレジスタ50−1〜50
−3に保持されていたアドレスはそれぞれぞれアドレス
レジスタ50−2〜50−4にシフトされて保持され、アド
レスレジスタ50−4に保持されていたアドレスは消滅
し、RAMメモリr1のアドレス“23"にブロック201、RAMメ
モリr3のアドレス“2"にブロック103が書き込まれる。
また、出力ポート読み取り部81でブロック201から出力
ポート先のo1が読みだされ、これをもとにアドレス記憶
部84に送られたアドレス“23"はアドレス振り分け部85
により出力ポートo1に対応するFIFOメモリf1に記憶され
る。また、RAMメモリr2のアドレス“20"からブロック11
2,r4のアドレス“*1"から共通バッファの出力ポート4
に出力されるブロックが読みだされる。時刻(τ+3)
にはFIFOメモリf2から出力ポートo2に出力するセルが書
き込まれているアドレス“1"がアドレス読み出し部86に
より読みだされ、アドレスレジスタ50−1に保持され、
時刻(τ+2)にアドレスレジスタ50−1〜50−3に保
持されていたアドレス“23",“20",“2"はそれぞれアド
レスレジスタ50−2〜50−4にシフトされて保持され、
アドレスレジスタ50−4に保持されていたアドレス“*
1"は消滅し、RAMメモリr1のアドレス“1"からブロック2
11、r3のアドレス“20"からブロック113が読みだされ
る。また、アドレス“1"は空きアドレスとなるため空き
アドレスバッファ10に記憶される。また、RAMメモリr2
のアドレス“23"にブロック202,r4のアドレス“2"にブ
ロック104が書き込まれる。時刻(τ+4)には空きア
ドレスバッファ10から空きアドレス“5"が読みだされ、
アドレスレジスタ50−1に保持され、時刻(τ+3)に
アドレスレジスタ50−1〜50−3に保持されていたアド
レスはそれぞれアドレスレジスタ50−2〜50−4にシフ
トされて保持され、アドレスレジスタ50−4に保持され
ていたアドレスは消滅し、RAMメモリr1のアドレス“5"
に時刻(τ+4)に共通バッファ84の入力ポート1に入
力されたブロック、RAMメモリr3のアドレス“23"にブロ
ック203が書き込まれる。また、出力ポート読み取り部8
1でr1に書き込んだブロックから出力ポート先が読みだ
され、これをもとにアドレス記憶部84に送られたアドレ
ス“5"はアドレス振り分け部85により出力ポートに対応
するFIFOメモリに記憶される。また、RAMメモリr2のア
ドレス“1"からブロック212が、r4のアドレス“20"から
ブロック114が読みだされる。以上のようにして入力セ
ルic1を構成するブロック101〜104が書き込まれ、出力
セルを構成するブロック111〜114が読みだされる。この
ようにして4ブロック時間の内2ブロック時間は書き込
みアドレスを与え、2ブロック時間は読み出しアドレス
を与えて共通バッファの書き込み・読みだしを行う。こ
こでは、入力セルic2をic1に対して2ブロック分遅延さ
せたため書き込みと読みだしのアドレスを交互に与えた
が、遅延の与え方に応じて4ブロック時間の内に2回ず
つ書き込みあるいは読み出しアドレスを与えれば順番は
任意でよい。
ッファに書き込まれるとする。また、ic1,ic2はそれぞ
れ出力ポートo2,o1に出力されるものとする。第7図
(a),(b),(c),(d),(e),(f)はそ
れぞれ時刻(τ−1),τ,(τ+1),(τ+2),
(τ+3),(τ+4)の状態を示す。空きアドレスバ
ッファ10には先頭から“2",“23",“5"…の空きアドレ
スが記憶されている。また、アドレス記憶部84のFIFOメ
モリf1,f2の先頭にはそれぞれアドレス“20",“1"が記
憶されており、RAMメモリr1〜r4のアドレス“20"と“1"
にはそれぞれブロック111〜114と211〜214が記憶されて
いる。時刻(τ−1)には(第7図(a)参照)アドレ
スレジスタ50−1〜50−4に何がしかのアドレス(*1
〜*4で表す)が保持されている。時刻τには(第7図
(b)参照)空きアドレスバッファ10から空きアドレス
“2"が読みだされ、アドレスレジスタ50−1に保持さ
れ、時刻(τ−1)にアドレスレジスタ50−1〜50−3
に保持されていたアドレスはそれぞれアドレスレジスタ
50−2〜50−4にシフトされて保持され、アドレスレジ
スタ50−4に保持されていたアドレスは消滅し、RAMメ
モリr1のアドレス“2"にブロック101,RAMメモリr3のア
ドレス“*2"に時刻τに共通バッファの入力ポート3に
入力されたブロックが書き込まれる。また、出力ポート
読み取り部81でブロック101から出力ポート先のo2が読
みだされ、これをもとにアドレス記憶部84に送られたア
ドレス“2"はアドレス振り分け部85により出力ポートo2
に対応するFIFOメモリf2に記憶される。また、RAMメモ
リr2,r4のアドレス“*1",“*3"から共通バッファの出
力ポート2,4に出力されるブロックが読みだされる。時
刻(τ+1)には(第7図(c)参照)FIFOメモリf1か
ら出力ポートo1に出力するセルが書き込まれているアド
レス“20"がアドレス読み出し部86により読みだされ、
アドレスレジスタ50−1に保持され、時刻τにアドレス
レジスタ50−1〜50−3に保持されていたアドレス
“2",“*1",“*2"はそれぞれアドレスレジスタ50−2
〜50−4にシフトされて保持され、アドレスレジスタ50
−4に保持されていたアドレス“*3"は消滅し、RAMメ
モリr1のアドレス“20"からブロック111,r3のアドレス
“*1"から共通バッファの出力ポート3に出力されるブ
ロックが読みだされる。また。アドレス“20"は空きア
ドレスとなるため空きアドレスバッファ10に記憶され
る。また、RAMメモリr2のアドレス“2"にブロック102,r
4のアドレス“*2"に時刻(τ+1)に共通バッファの
入力ポート4に入力されたブロックが書き込まれる。時
刻(τ+2)には空きアドレスバッファ10から空きアド
レス“23"が読みだされ、アドレスレジスタ50−1に保
持され、時刻(τ+1)にアドレスレジスタ50−1〜50
−3に保持されていたアドレスはそれぞれぞれアドレス
レジスタ50−2〜50−4にシフトされて保持され、アド
レスレジスタ50−4に保持されていたアドレスは消滅
し、RAMメモリr1のアドレス“23"にブロック201、RAMメ
モリr3のアドレス“2"にブロック103が書き込まれる。
また、出力ポート読み取り部81でブロック201から出力
ポート先のo1が読みだされ、これをもとにアドレス記憶
部84に送られたアドレス“23"はアドレス振り分け部85
により出力ポートo1に対応するFIFOメモリf1に記憶され
る。また、RAMメモリr2のアドレス“20"からブロック11
2,r4のアドレス“*1"から共通バッファの出力ポート4
に出力されるブロックが読みだされる。時刻(τ+3)
にはFIFOメモリf2から出力ポートo2に出力するセルが書
き込まれているアドレス“1"がアドレス読み出し部86に
より読みだされ、アドレスレジスタ50−1に保持され、
時刻(τ+2)にアドレスレジスタ50−1〜50−3に保
持されていたアドレス“23",“20",“2"はそれぞれアド
レスレジスタ50−2〜50−4にシフトされて保持され、
アドレスレジスタ50−4に保持されていたアドレス“*
1"は消滅し、RAMメモリr1のアドレス“1"からブロック2
11、r3のアドレス“20"からブロック113が読みだされ
る。また、アドレス“1"は空きアドレスとなるため空き
アドレスバッファ10に記憶される。また、RAMメモリr2
のアドレス“23"にブロック202,r4のアドレス“2"にブ
ロック104が書き込まれる。時刻(τ+4)には空きア
ドレスバッファ10から空きアドレス“5"が読みだされ、
アドレスレジスタ50−1に保持され、時刻(τ+3)に
アドレスレジスタ50−1〜50−3に保持されていたアド
レスはそれぞれアドレスレジスタ50−2〜50−4にシフ
トされて保持され、アドレスレジスタ50−4に保持され
ていたアドレスは消滅し、RAMメモリr1のアドレス“5"
に時刻(τ+4)に共通バッファ84の入力ポート1に入
力されたブロック、RAMメモリr3のアドレス“23"にブロ
ック203が書き込まれる。また、出力ポート読み取り部8
1でr1に書き込んだブロックから出力ポート先が読みだ
され、これをもとにアドレス記憶部84に送られたアドレ
ス“5"はアドレス振り分け部85により出力ポートに対応
するFIFOメモリに記憶される。また、RAMメモリr2のア
ドレス“1"からブロック212が、r4のアドレス“20"から
ブロック114が読みだされる。以上のようにして入力セ
ルic1を構成するブロック101〜104が書き込まれ、出力
セルを構成するブロック111〜114が読みだされる。この
ようにして4ブロック時間の内2ブロック時間は書き込
みアドレスを与え、2ブロック時間は読み出しアドレス
を与えて共通バッファの書き込み・読みだしを行う。こ
こでは、入力セルic2をic1に対して2ブロック分遅延さ
せたため書き込みと読みだしのアドレスを交互に与えた
が、遅延の与え方に応じて4ブロック時間の内に2回ず
つ書き込みあるいは読み出しアドレスを与えれば順番は
任意でよい。
入力ポート数と出力ポート数が異なる場合は、前記第
一実施例で説明したのと同様にして実現できる。
一実施例で説明したのと同様にして実現できる。
アドレスの誤り検出およびアドレスを使用禁止にする
方法は、前記第一実施例においてFIFOメモリ数をf1とf2
の2つにした場合と同様である。
方法は、前記第一実施例においてFIFOメモリ数をf1とf2
の2つにした場合と同様である。
本第二実施例においても前記第一実施例と同様にして
優先制御および放送形式のスイッチを容易に実現でき
る。
優先制御および放送形式のスイッチを容易に実現でき
る。
本発明の第三実施例は前記第一実施例および第二実施
例において誤り検出によりあるアドレスを使用禁止とい
して廃棄したために欠落したアドレスを修復する機能を
付加したものである。スイッチ動作および誤り検出を行
う部分は第2図あるいは第5図および第6図と同じなの
で、アドレス修復部に関する部分のみを第8図に示す。
一例として、共通バッファ82を構成するRAMメモリのア
ドレスが0〜31の場合(第8図においてn=31の場合)
を示す。70はアドレスが存在しているかどうかをチェッ
クするアドレストチェック記憶部、71は誤りアドレス数
を計数する誤り計数部、72はアドレスチェック記憶部70
を検査し、欠落したアドレスを修復するアドレス修復部
を示す。共通バッファ82を構成するRAMメモリのアドレ
スは0〜31であるから、アドレスチェック記憶部70は0
〜31のアドレスを持つRAMメモリで構成する。
例において誤り検出によりあるアドレスを使用禁止とい
して廃棄したために欠落したアドレスを修復する機能を
付加したものである。スイッチ動作および誤り検出を行
う部分は第2図あるいは第5図および第6図と同じなの
で、アドレス修復部に関する部分のみを第8図に示す。
一例として、共通バッファ82を構成するRAMメモリのア
ドレスが0〜31の場合(第8図においてn=31の場合)
を示す。70はアドレスが存在しているかどうかをチェッ
クするアドレストチェック記憶部、71は誤りアドレス数
を計数する誤り計数部、72はアドレスチェック記憶部70
を検査し、欠落したアドレスを修復するアドレス修復部
を示す。共通バッファ82を構成するRAMメモリのアドレ
スは0〜31であるから、アドレスチェック記憶部70は0
〜31のアドレスを持つRAMメモリで構成する。
誤り計数部71は誤りアドレスが存在しない場合“0"で
ある。誤りが生ずると、そのたびに1ずつカウントアッ
プする。誤り計数部71の値が1以上になった時点でアド
レスチェック記憶部70のRAMメモリの全アドレスのデー
タを“0"にする。その後、空きアドレスバッファ10ある
いはFIFOメモリf1〜f4からアドレスを読みだした場合に
はアドレスチェック記憶部70のRAMメモリのそのアドレ
スにアドレスが存在した印として、“1"を書き込む。あ
らかじめ定めた時間経過したのち、アドレス修復部72に
よりアドレスチェック記憶部70のRAMメモリの全アドレ
スのデータをチェックし、“0"の数と“0"が記憶されて
いたアドレスを検査する。その結果、“0"の数が誤り計
数部71の値と等しい場合には、“0"が記憶されていたア
ドレスが欠落したアドレスと判断して空きアドレスバッ
ファ10に書き込むことによりアドレスを修復し、誤り計
数部71の値を0にする。“0"の数が誤り計数部71の値よ
り小さい場合には、アドレスチェックを終了したアドレ
スがその後に誤った場合なので、“0"が記憶されていた
アドレスを空きアドレスバッファ10に記憶することによ
りアドレスを修復し、誤り計数部71の値から修復したア
ドレス数を減算し、再度アドレスチェック記憶部70の全
アドレスのデータを“0"にして前述の処理を行うことに
より残りの欠落アドレスを修復する。“0"の数が誤り計
数部71の値により大きい場合には、存在しているアドレ
スがまだ全てチェックされていないので、引続きチェッ
クを行い、ある時間経過した後同様の処理を行う。
ある。誤りが生ずると、そのたびに1ずつカウントアッ
プする。誤り計数部71の値が1以上になった時点でアド
レスチェック記憶部70のRAMメモリの全アドレスのデー
タを“0"にする。その後、空きアドレスバッファ10ある
いはFIFOメモリf1〜f4からアドレスを読みだした場合に
はアドレスチェック記憶部70のRAMメモリのそのアドレ
スにアドレスが存在した印として、“1"を書き込む。あ
らかじめ定めた時間経過したのち、アドレス修復部72に
よりアドレスチェック記憶部70のRAMメモリの全アドレ
スのデータをチェックし、“0"の数と“0"が記憶されて
いたアドレスを検査する。その結果、“0"の数が誤り計
数部71の値と等しい場合には、“0"が記憶されていたア
ドレスが欠落したアドレスと判断して空きアドレスバッ
ファ10に書き込むことによりアドレスを修復し、誤り計
数部71の値を0にする。“0"の数が誤り計数部71の値よ
り小さい場合には、アドレスチェックを終了したアドレ
スがその後に誤った場合なので、“0"が記憶されていた
アドレスを空きアドレスバッファ10に記憶することによ
りアドレスを修復し、誤り計数部71の値から修復したア
ドレス数を減算し、再度アドレスチェック記憶部70の全
アドレスのデータを“0"にして前述の処理を行うことに
より残りの欠落アドレスを修復する。“0"の数が誤り計
数部71の値により大きい場合には、存在しているアドレ
スがまだ全てチェックされていないので、引続きチェッ
クを行い、ある時間経過した後同様の処理を行う。
“0"の数が誤り計数部71の値より大きい場合にはカウ
ンタの誤り等により永久に“0"の数が誤り計数部71の値
より大きく、アドレス修復が行われない可能性がある。
したがって、前記定められたアドレスチェック時間に比
べて十分長い時間経過した後も“0"の数が誤り計数部71
の値より大きい場合には一旦“0"が記憶されていたアド
レスをすべて空きアドレスバッファ10に書き込み、誤り
のない状態と同じ状態にする機能を設けてもよい。この
場合、修復したアドレスの中に誤りアドレスが含まれて
いる可能性があるが、その誤りは前述の方法で検出され
るので問題無い。
ンタの誤り等により永久に“0"の数が誤り計数部71の値
より大きく、アドレス修復が行われない可能性がある。
したがって、前記定められたアドレスチェック時間に比
べて十分長い時間経過した後も“0"の数が誤り計数部71
の値より大きい場合には一旦“0"が記憶されていたアド
レスをすべて空きアドレスバッファ10に書き込み、誤り
のない状態と同じ状態にする機能を設けてもよい。この
場合、修復したアドレスの中に誤りアドレスが含まれて
いる可能性があるが、その誤りは前述の方法で検出され
るので問題無い。
上記実施例では、特に入力ポート間でセルの位相をず
らし、セルをブロックに分割し、ブロック毎に異なるRA
Mメモリに記憶するため、共通バッファメモリの動作速
度を入力ポートの速度以下にすることが可能となる。
らし、セルをブロックに分割し、ブロック毎に異なるRA
Mメモリに記憶するため、共通バッファメモリの動作速
度を入力ポートの速度以下にすることが可能となる。
以上説明してきたように、本発明によれば、共通バッ
ファの未使用アドレス及び使用アドレスを夫々未使用ア
ドレス管理手段と使用アドレス管理手段との間で巡回し
て管理することにより、完全な共通バッファが維持さ
れ、必要最小限の共通バッファ量でスイッチが実現でき
ると共にアドレスに誤りが生じた場合もその誤り1つの
みで波及しない。そして、アドレスの誤りを検出して、
その誤りアドレスを使用禁止にするようにしたため、誤
りが巡回してしまうことが防止される。
ファの未使用アドレス及び使用アドレスを夫々未使用ア
ドレス管理手段と使用アドレス管理手段との間で巡回し
て管理することにより、完全な共通バッファが維持さ
れ、必要最小限の共通バッファ量でスイッチが実現でき
ると共にアドレスに誤りが生じた場合もその誤り1つの
みで波及しない。そして、アドレスの誤りを検出して、
その誤りアドレスを使用禁止にするようにしたため、誤
りが巡回してしまうことが防止される。
また、セル自体は共通バッファに記憶され、その制御
はセルを記憶しているアドレスによって行なっているた
め、放送形式のスイッチ等が容易に実現できる。
はセルを記憶しているアドレスによって行なっているた
め、放送形式のスイッチ等が容易に実現できる。
更に、誤りアドレスを修復するようにしたため、使用
禁止によって使用可能メモリ量が減少することを防止で
きる。
禁止によって使用可能メモリ量が減少することを防止で
きる。
【図面の簡単な説明】 第1図は本発明の原理構成図、 第2図は本発明の第一実施例を示す図、 第3図は本発明の第一実施例におけるセルの書き込み動
作を説明する図、 第4図は本発明の第一実施例におけるセルの読み出し動
作を説明する図、 第5図は本発明の第一実施例におけるアドレスの誤りを
検出する方法を説明する図、 第6図は本発明の第二実施例を示す図、 第7図は本発明の第二実施例におけるセルの書き込み・
読み出し動作を説明する図、 第8図は本発明の第三実施例を示す図、 第9図は従来の共通バッファ型スイッチの第一例を示す
図、 第10図は従来の共通バッファ型スイッチの第一例におけ
るブロック分割部を示す図、 第11図は従来の共通バッファ型スイッチの第一例におけ
るブロック結合部を示す図、 第12図は従来の共通バッファ型スイッチの第二例を示す
図である。 1…入力ポート、2…出力ポート、3…共通バッファ、
4…未使用アドレス管理手段、5…使用アドレス管理手
段、6…識別子記憶手段、7…アドレス誤り検出手段、
8…アドレス廃棄手段、9…アドレス修復手段、10…空
きアドレスバッファ、11−1〜11−4…書き込みアドレ
スレジスタ、12−1〜12−4…読み出しアドレスレジス
タ、13…対応記憶部、14…アドレス誤り検査部、50−1
〜50−4…アドレスレジスタ、70…アドレスチェック記
憶部、71…誤り計数部、72…アドレス修復部、80…ブロ
ック分割部、81…出力ポート読み取り部、82…共通バッ
ファ、83…書き込みアドレス制御部、84…アドレス記憶
部、85…アドレス振り割り部、86…アドレス読み出し
部、87−1〜87−3…アドレス加算部、88…ブロック結
合部、90−1〜90−3…遅延回路、91…バレルシフタ、
10−1〜10−3…遅延回路、110…入力選択部、111…ア
ドレスチェーン記憶部、112…共通セルバッファ部、113
…出力選択部、114…書き込みアドレス保持部、115…読
み出しアドレス保持部、116…空きアドレスバッファ、i
1〜i4…入力ポート1〜4、o1〜o4…出力ポート1〜
4、ic1〜ic4…入力ポート1〜4から同時刻に入力させ
るセル、ib1〜ib4…入力セルを構成する第1〜第4ブロ
ックの集合、oc1〜oc4…出力ポート1〜4に同時刻に出
力されるセル、ob1〜ob4…出力セルを構成する第1〜第
4ブロックの集合、r1〜r4…共通バッファを構成するRA
Mメモリ、f1〜f4…アドレス記憶部を構成するFIFOメモ
リ、wp1〜wp4…書き込みアドレスポインタ、rp1〜rp4…
読み出しアドレスポインタ。
作を説明する図、 第4図は本発明の第一実施例におけるセルの読み出し動
作を説明する図、 第5図は本発明の第一実施例におけるアドレスの誤りを
検出する方法を説明する図、 第6図は本発明の第二実施例を示す図、 第7図は本発明の第二実施例におけるセルの書き込み・
読み出し動作を説明する図、 第8図は本発明の第三実施例を示す図、 第9図は従来の共通バッファ型スイッチの第一例を示す
図、 第10図は従来の共通バッファ型スイッチの第一例におけ
るブロック分割部を示す図、 第11図は従来の共通バッファ型スイッチの第一例におけ
るブロック結合部を示す図、 第12図は従来の共通バッファ型スイッチの第二例を示す
図である。 1…入力ポート、2…出力ポート、3…共通バッファ、
4…未使用アドレス管理手段、5…使用アドレス管理手
段、6…識別子記憶手段、7…アドレス誤り検出手段、
8…アドレス廃棄手段、9…アドレス修復手段、10…空
きアドレスバッファ、11−1〜11−4…書き込みアドレ
スレジスタ、12−1〜12−4…読み出しアドレスレジス
タ、13…対応記憶部、14…アドレス誤り検査部、50−1
〜50−4…アドレスレジスタ、70…アドレスチェック記
憶部、71…誤り計数部、72…アドレス修復部、80…ブロ
ック分割部、81…出力ポート読み取り部、82…共通バッ
ファ、83…書き込みアドレス制御部、84…アドレス記憶
部、85…アドレス振り割り部、86…アドレス読み出し
部、87−1〜87−3…アドレス加算部、88…ブロック結
合部、90−1〜90−3…遅延回路、91…バレルシフタ、
10−1〜10−3…遅延回路、110…入力選択部、111…ア
ドレスチェーン記憶部、112…共通セルバッファ部、113
…出力選択部、114…書き込みアドレス保持部、115…読
み出しアドレス保持部、116…空きアドレスバッファ、i
1〜i4…入力ポート1〜4、o1〜o4…出力ポート1〜
4、ic1〜ic4…入力ポート1〜4から同時刻に入力させ
るセル、ib1〜ib4…入力セルを構成する第1〜第4ブロ
ックの集合、oc1〜oc4…出力ポート1〜4に同時刻に出
力されるセル、ob1〜ob4…出力セルを構成する第1〜第
4ブロックの集合、r1〜r4…共通バッファを構成するRA
Mメモリ、f1〜f4…アドレス記憶部を構成するFIFOメモ
リ、wp1〜wp4…書き込みアドレスポインタ、rp1〜rp4…
読み出しアドレスポインタ。
Claims (2)
- 【請求項1】入力ポートと出力ポートと共通バッファと
を備えると共に、入力ポートから入力されるセルを記憶
すべき共通バッファの未使用アドレスを管理する未使用
アドレス管理手段と、セルの記憶された共通バッファの
使用アドレスを管理する使用アドレス管理手段とを備
え、 未使用アドレス管理手段から与えられる共通バッファの
未使用アドレスに入力ポートから入力されるセルを記憶
し、使用アドレス管理手段から与えられる共通バッファ
の使用アドレスからセルを読み出して所定の出力ポート
に供給することにより、入出力ポート間でのスイッチ動
作を行う共通バッファ型スイッチにおいて、 上記未使用アドレス管理手段が、入力ポートから入力さ
れるセルに対して共通バッファの未使用アドレスを共通
に管理するものとなると共に、 上記使用アドレス管理手段が、通常の1対1スイッチに
おけるセルの出力形態、優先制御に従ったセルの出力形
態及び全出力ポートに同一セルを出力する放送形式のス
イッチにおけるセルの出力形態のいずれかに応じて、共
通バッファの使用アドレスを管理するものとなり、 共通バッファの各アドレスについて、そのアドレスが管
理される手段を示す識別子を記憶する識別子記憶手段
と、 共通バッファのアクセスに際し、そのアドレスを実際に
管理している手段と識別子記憶手段内の当該アドレスに
対応した識別子との比較によりアドレスの誤りを検出す
るアドレス誤り検出手段と、 アドレス誤り検出手段が、アドレスの誤りを検出したと
きに、その誤りアドレスの使用を禁止するアドレス廃棄
手段とを備えたことを特徴とする共通バッファ型スイッ
チ。 - 【請求項2】請求項1記載の共通バッファ型スイッチに
おいて、 共通バッファのアドレス空間の各アドレスからアドレス
廃棄手段での使用禁止により欠落したアドレスを検索
し、そのアドレスを未使用アドレス管理手段の管理下に
戻すことによって当該欠落したアドレスを復元するアド
レス修復手段を備えたことを特徴とする共通バッファ型
スイッチ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP26150589A JP2738064B2 (ja) | 1989-10-06 | 1989-10-06 | 共通バッファ型スイッチ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP26150589A JP2738064B2 (ja) | 1989-10-06 | 1989-10-06 | 共通バッファ型スイッチ |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH03123238A JPH03123238A (ja) | 1991-05-27 |
JP2738064B2 true JP2738064B2 (ja) | 1998-04-08 |
Family
ID=17362839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP26150589A Expired - Fee Related JP2738064B2 (ja) | 1989-10-06 | 1989-10-06 | 共通バッファ型スイッチ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2738064B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07321795A (ja) * | 1994-05-20 | 1995-12-08 | Nec Corp | バッファアドレス管理方法 |
JP2928165B2 (ja) * | 1996-08-16 | 1999-08-03 | 日本電気マイコンテクノロジー株式会社 | Atmスイッチ |
JPWO2008099472A1 (ja) * | 2007-02-14 | 2010-05-27 | 富士通株式会社 | データスイッチ方法及び回路 |
JP5430369B2 (ja) * | 2009-11-27 | 2014-02-26 | 富士通株式会社 | バッファメモリ装置、及び、バッファリング方法 |
-
1989
- 1989-10-06 JP JP26150589A patent/JP2738064B2/ja not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
電子情報通信学会春季全国大会講演論文集(分冊3),(1990−3−5),B−579 |
Also Published As
Publication number | Publication date |
---|---|
JPH03123238A (ja) | 1991-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3700797B2 (ja) | メモリ試験装置 | |
JPH01310433A (ja) | 倍密度走査用ラインメモリ | |
US8661223B1 (en) | Buffer management architecture | |
JP2738064B2 (ja) | 共通バッファ型スイッチ | |
WO2001042926A1 (en) | Interface for a memory unit | |
JP2628701B2 (ja) | 優先順位付き情報パケット用交換装置 | |
JP3103298B2 (ja) | Atmスイッチのアドレス生成回路 | |
JP3167228B2 (ja) | Vccテーブルのアクセス方法及びバーチャルチャネル変換装置 | |
JP2873229B2 (ja) | バッファメモリ制御装置 | |
JP3761962B2 (ja) | タイムスイッチメモリのデータ制御装置 | |
JP2964958B2 (ja) | Atmスイッチ | |
JPH0426249A (ja) | 共通セルバッファ型スイッチ | |
KR950014088B1 (ko) | 일반 메모리를 사용한 fifo회로 | |
JPH04220834A (ja) | Atmスイッチにおける優先制御バッファの制御方式 | |
JPH1051469A (ja) | Atmスイッチ | |
JPH03201846A (ja) | Atm交換機のバッファ制御方式 | |
JPH09274599A (ja) | バッファメモリ装置 | |
KR100233844B1 (ko) | 제한적 공유 메모리 방식의 비동기 전송 모드 스위치의 구조 및 그 태그 제어 방법 | |
KR100218669B1 (ko) | 비동기 전송 모드 스위치에서의 주소 오류 제거방법 | |
JPH11175312A (ja) | データ転送制御装置 | |
JP2758736B2 (ja) | セル位相乗換回路 | |
JP3317819B2 (ja) | シングルポートramの2ポートアクセスの制御方式 | |
JPH11340998A (ja) | Atmスイッチ及びatmセル用バッファ管理方法 | |
JPH0336843A (ja) | パケット交換機 | |
JPH05244188A (ja) | Upc回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |