JPWO2008099472A1 - データスイッチ方法及び回路 - Google Patents
データスイッチ方法及び回路 Download PDFInfo
- Publication number
- JPWO2008099472A1 JPWO2008099472A1 JP2008557930A JP2008557930A JPWO2008099472A1 JP WO2008099472 A1 JPWO2008099472 A1 JP WO2008099472A1 JP 2008557930 A JP2008557930 A JP 2008557930A JP 2008557930 A JP2008557930 A JP 2008557930A JP WO2008099472 A1 JPWO2008099472 A1 JP WO2008099472A1
- Authority
- JP
- Japan
- Prior art keywords
- data
- shared buffer
- predetermined length
- address
- output port
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/103—Packet switching elements characterised by the switching fabric construction using a shared central buffer; using a shared memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3027—Output queuing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Time-Division Multiplex Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Use Of Switch Circuits For Exchanges And Methods Of Control Of Multiplex Exchanges (AREA)
Abstract
共有バッファを用いたスイッチ装置の規模増大を抑えるため、複数の入力ポートに位相がずらされた形で入力した、各セグメントにおける所定の数分だけ直列に接続された所定長データの各々を、該所定の数分だけ並列に設けた共有バッファ中の各セグメントに対応した同一のアドレスに順番に書き込み、その度毎に該アドレスを該セグメントに設定された出力ポート毎に記憶する。該記憶されたアドレスを該出力ポート毎に順次参照して各共有バッファ中の該参照したアドレスから各所定長データを該順番に対応して読み出し、直列に接続して該出力ポートに対して出力する。
Description
本発明は、データスイッチ方法及び回路に関し、特に共有バッファを用いたスイッチ装置におけるデータスイッチ方法及び回路に関するものである。
図6は、従来より一般的に知られている共有バッファを用いたL2スイッチ装置(以下、単にスイッチ装置と称することがある。)の構成を示したものである。このスイッチ装置1は、n個のインタフェースカード2_0−2_nと、これらのカード2_0−2_nにポートP0−Pnを介して接続された共通のスイッチカード4とで構成されている。
インタフェースカード2_0−2_nにフレームFRが入力された時、これらのカード2_0−2_n内の宛先情報付加/削除部3_0−3_nは、それぞれ、フレームFR中に設定された宛先アドレス(図示せず)を用いてデータベースDBを検索し、フレーム転送先のカード情報及びポート情報(以下、宛先情報)を取得すると共に、この宛先情報をフレームFRに付加した入力信号INをスイッチカード4のポートP0−Pnに与える。
スイッチカード4内のスイッチ回路5は、各ポートP0−Pnを介して受信した入力信号INをセグメント(宛先情報を含む。)SGに分割して共有バッファB500に保持する。この時、スイッチ回路5は、共有バッファB500の保持アドレスを宛先であるポート(以下、出力ポート)毎に設けられて管理される後述のFIFOに格納する。共有バッファB500からの読出に際しては、スイッチ回路5が、各出力ポート毎にFIFOからアドレスを取得する。この時、スイッチ回路5は、取得したアドレスで共有バッファB500からセグメントSGを読み出して復元し、入力信号INと同一形式の出力信号OUTとして宛先インタフェースカードへ転送する。
これを受けたインタフェースカード2_0−2_n内の宛先情報付加/削除部3_0−3_nは、それぞれ、出力信号OUTに付加されている宛先情報を削除した元のフレームFRを後段に送出する。
このようなスイッチ装置1におけるスイッチカード4の従来の具体的な構成と動作を、図7−9を参照して以下に説明する。
従来例:図7−9
図7は、共有バッファB500と共にスイッチカード4を構成するスイッチ回路5の従来例を示したものである。但し、説明を分かり易くするため、スイッチ回路5の外部に設けられた共有バッファ500についても同図中に点線で示している。
図7は、共有バッファB500と共にスイッチカード4を構成するスイッチ回路5の従来例を示したものである。但し、説明を分かり易くするため、スイッチ回路5の外部に設けられた共有バッファ500についても同図中に点線で示している。
このスイッチ回路5は、図示の例のように、各々のデータ幅が32ビットである48個の入力ポートPI00−PI47(以下、符号PIで総称することがある。)でそれぞれ受信した入力信号IN00−IN47を、クロック変換用FIFOA100−A147にそれぞれ格納する入力部10と、これらのFIFO A100−A147から入力信号IN00−IN47中のデータを32個分ずつ直列に接続したセグメントSG00−SG47に分割して読み出すと共にこれらのセグメントSG00−SG47を共有バッファB500に書き込み、各々のデータ幅が32ビットである48個の出力ポートPO00−PO47(以下、符号POで総称することがある。)毎に読み出すことによりスイッチ処理を行なう共有バッファ処理部20と、共有バッファB500に対する書込アドレスWA及び読出アドレスRAを管理し、これらのアドレスWA及びRAを共有バッファ処理部20に与える共有バッファアドレス管理部30と、共有バッファ処理部20によりスイッチ処理されたセグメントSGをクロック変換用FIFOD100−D147にそれぞれ一旦格納してから読み出すことにより復元し、出力信号OUT00−OUT47として出力ポートPO00−PO47を介して送出する出力部40とで構成されている。
共有バッファへの書込動作例:図7及び8
共有バッファB500への書込動作において、まず入力部10が、入力ポートPI00−PI47を介して書込イネーブルWEと共に受信した入力信号IN00−IN47を、クロック変換用FIFOA100−A147にそれぞれ書き込む。この時、書込を行ったクロック変換用FIFO A100−A147は、それぞれに接続されて共有バッファ処理部20を構成する読出アドレス生成部B100−B147に、書込完了パルスWPを与える。
共有バッファB500への書込動作において、まず入力部10が、入力ポートPI00−PI47を介して書込イネーブルWEと共に受信した入力信号IN00−IN47を、クロック変換用FIFOA100−A147にそれぞれ書き込む。この時、書込を行ったクロック変換用FIFO A100−A147は、それぞれに接続されて共有バッファ処理部20を構成する読出アドレス生成部B100−B147に、書込完了パルスWPを与える。
読出アドレス生成部B100−B147は、上記の書込完了パルスWPを受け且つ書込用タイムスロット生成部B400により発生された共有バッファ書込用タイムスロットTS_Wを受けた時、クロック変換用FIFOA100−A147に読出アドレスRA_Fを与えることによりセグメントSG00−SG47を読み出してS/P変換回路B200−B247に与える。
ここで、上記のタイムスロットTS_Wは、図8に示すように“0”,…,“47”が循環して設定されるものである。この例では、読出アドレス生成部B100−B147がそれぞれタイムスロットTS_W=“0”,…,“47”の受信をトリガとして読出アドレスRA_Fを生成するようにしているため、クロック変換用FIFOA100−A147からは、図示の如くそれぞれタイムスロットTS_Wが“1”,…,“47”,“0”を示す時点から32個のタイムスロットに渡ってセグメントSG00−SG47が読み出され、各々の位相が互いに1タイムスロットずつずれた状態となる。
S/P変換回路B200−B247は、これらのセグメントSG00−SG47中の32個のデータD0−D31(各32ビット)を1024ビットに直並列変換してマルチプレクサB300に与える。
マルチプレクサB300は、タイムスロットTS_Wに応じてS/P変換回路B200−B247からそれぞれ入力されるセグメントSG00−SG47のいずれかを選択して共有バッファB500に与える。この例では、マルチプレクサB300が、S/P変換回路B200−B247における直並列変換の完了タイミング(タイムスロットTS_W=“33”,…,“47”,“0”,…,“32”)に合わせて、セグメントSG00−SG47を順次選択するようにしている。
また同時に、マルチプレクサB300は、共有バッファアドレス管理部30を構成する共有バッファ書込アドレスFIFOC400に共有バッファ書込アドレス送出要求RQを与えると共に、セグメントSGに設定された宛先情報DIを抽出して読出アドレス管理部C500に与える。
ここで、書込アドレスFIFO C400には共有バッファB500の書込用空きアドレスが格納されており、書込アドレスFIFOC400は、アドレス送出要求RQを受ける度毎に、これらの空きアドレスを書込アドレスWAとして順次発生して共有バッファB500に与える。これにより、図8に点線(1)で示す如く共有バッファB500中のアドレスWAにセグメントSGが書き込まれる。
また、共有バッファ書込アドレスFIFO C400から出力された書込アドレスWAは、宛先情報DIと同位相で読出アドレス管理部C500にも与えられ、読出アドレス管理部C500は、この書込アドレスWAを宛先情報DIに応じて、各出力ポートPO00−PO47に対応して設けられた共有バッファ読出アドレスFIFOC100−C147のいずれかに格納する。
共有バッファからの読出動作例:図7及び9
一方、共有バッファB500からの読出動作においては、まず読出用タイムスロット生成部C200から共有バッファ読出用タイムスロットTS_Rを受けた読出アドレスセレクタC300が、タイムスロットTS_Rに応じて共有バッファ読出アドレスFIFOC100−C147のいずれかから読出アドレスRAを取得して共有バッファB500に与える。また同時に、読出アドレスセレクタC300は、所得した読出アドレスRAを共有バッファ書込アドレスFIFOC400に格納する。これにより、この読出アドレスRAが、共有バッファB500における次回以降の書込用空きアドレスとして使用されることになる。
一方、共有バッファB500からの読出動作においては、まず読出用タイムスロット生成部C200から共有バッファ読出用タイムスロットTS_Rを受けた読出アドレスセレクタC300が、タイムスロットTS_Rに応じて共有バッファ読出アドレスFIFOC100−C147のいずれかから読出アドレスRAを取得して共有バッファB500に与える。また同時に、読出アドレスセレクタC300は、所得した読出アドレスRAを共有バッファ書込アドレスFIFOC400に格納する。これにより、この読出アドレスRAが、共有バッファB500における次回以降の書込用空きアドレスとして使用されることになる。
ここで、上記のタイムスロットTS_Rは、図9に示すように“0”,…,“47”が循環して設定されるものである。この例では、読出アドレスセレクタC300が、タイムスロットTS_R=“1”,…,“47”,“0”をそれぞれ読出アドレスFIFOC100−C147に対するアドレスRAの取得トリガとし、読出アドレスFIFO C100−C147からアドレスRAを順次取得して共有バッファB500に与えるようにしている。これにより、共有バッファB500中の読出アドレスRAから、各出力ポートPO00−PO47に対応するセグメントSGが順次読み出されてデマルチプレクサB600に与えられる。
デマルチプレクサB600は、タイムスロットTS_Rが“2”を示す時に、P/S変換回路B700を選択してセグメントSGを与え、タイムスロットTS_Rが“3”を示す時に、P/S変換回路B701を選択してセグメントSGを与え、…、タイムスロットTS_Rが“0”を示す時に、P/S変換回路B746を選択してセグメントSGを与え、タイムスロットTS_Rが“1”を示す時に、P/S変換回路B747を選択してセグメントSGを与えるというように、タイムスロットTS_Rに応じてセグメントSGの出力先を選択する。
P/S変換回路B700−B747は、図9に点線(2)で示す如く、セグメントSG(1024ビット)を32個のデータD0−D31(各32ビット)に並直列変換してクロック変換用FIFOD100−D147に与える。これにより、各出力ポートPO00−PO47を介して各出力信号OUT00−OUT47が送出されることとなる。
このようにして、スイッチ回路5は、入力ポートPIから入力された入力信号INを所望の出力ポートPOにスイッチ処理させることが可能となる。
なお、参考例として、以下の(1)及び(2)に示すものがある。
参考例(1)
直並列変換した入力データをメモリに対してシーケンシャルに書き込んだ後、該メモリからランダムにデータを読み出して並直列変換することにより該入力信号のチャネル入替を行なう時分割スイッチ回路(例えば、特許文献1参照。)。
直並列変換した入力データをメモリに対してシーケンシャルに書き込んだ後、該メモリからランダムにデータを読み出して並直列変換することにより該入力信号のチャネル入替を行なう時分割スイッチ回路(例えば、特許文献1参照。)。
参考例(2)
データ信号の1ビットの期間を分割したnチャネルの信号の順序をメモリを用いて変更するタイムスロット入替回路(例えば、特許文献2参照。)
特開平04-130896号公報
特開平03-201734号公報
データ信号の1ビットの期間を分割したnチャネルの信号の順序をメモリを用いて変更するタイムスロット入替回路(例えば、特許文献2参照。)
図7−9に示した従来例では、直並列変換回路及び並直列変換回路の両者を用いてスイッチ処理を行なっているが、これらの回路には変換ビット幅に応じてその数が増加するフリップフロップ回路が含まれるため、スイッチ装置の規模が増大してしまうという課題があった。
すなわち、図7に示した例では、S/P変換回路B200−B247がそれぞれ32ビットから1024ビットへの直並列変換を行っているが、この時にS/P変換回路B200−B247がそれぞれ必要とするフリップフロップ回路数は図10に示す如く1024個であり、同様に、P/S変換回路B700−B747が1024ビットから32ビットへの並直列変換を行う際にそれぞれ必要とするフリップフロップ回路数も1024個であり、合計で98304個{(1024個×48)×2}のフリップフロップ回路が必要となる。
従って、本発明では、共有バッファを用いたスイッチ装置において、その装置規模の増大を抑えることが可能なデータスイッチ方法及び回路を提供することを目的とする。
上記の目的を達成するため、本発明の一態様に係るデータスイッチ方法(又は回路)は、複数の入力ポートに位相がずらされた形で入力した、各セグメントにおける所定の数分だけ直列に接続された所定長データの各々を、該所定の数分だけ並列に設けた共有バッファ中の各セグメントに対応した同一のアドレスに順番に書き込む第1ステップ(又は手段)と、該書込が行われる度毎に、該アドレスを該セグメントに設定された出力ポート毎に記憶する第2ステップ(又は手段)と、該記憶されたアドレスを該出力ポート毎に順次参照して各共有バッファ中の該参照したアドレスから各所定長データを該順番に対応して読み出す第3ステップ(又は手段)と、該読み出された各所定長データを直列に接続して該出力ポートに対して出力する第4ステップ(又は手段)とを備えたことを特徴とする。
このように、本発明では、セグメントに対する直並列変換及び並直列変換のいずれも行なわずにスイッチ処理を行なうことが可能である。
[2]また、上記[1]において、該第1ステップ(又は手段)が、各入力ポート毎に各セグメントを該所定の数分の所定長データに並列分離するステップ(又は手段)と、該並列分離された各入力ポートの所定長データを多重化して各共有バッファに与えるステップ(又は手段)と、各入力ポートのいずれかに該セグメントが入力される度毎に、各共有バッファに共通の書込用空きアドレスを発生するステップ(又は手段)と、各書込用空きアドレスを、該多重化された各所定長データの位相に合わせて各共有バッファに与えるステップ(又は手段)とを含み、以て各共有バッファ中の同一アドレスに各セグメントにおける各所定長データを書込可能にしても良い。
[3]また、上記[1]において、該第3ステップ(又は手段)が、各出力ポート毎に参照したアドレスの位相を該順番に対応してずらして各共有バッファに与えることにより、各所定長データをその位相が該順番に対応してずれた状態で読み出すステップ(又は手段)と、各共有バッファ毎に該読み出された所定長データを該出力ポートに応じて分離するステップ(又は手段)とを含み、該第4ステップが、該分離された各共有バッファの所定長データを多重化して各出力ポートに与えるステップ(又は手段)を含むようにしても良い。
上記[2]及び[3]のように、共有バッファの書込側及び読出側を共に簡易な構成とすることができる。
[4]また、上記[1]において、該第3ステップ(又は手段)が、各出力ポート毎に参照したアドレスの位相を、各共有バッファを該出力ポートのデータ幅に基づき区分けしたグループ同士間で該順番に対応してずらして各共有バッファに与えることにより、各所定長データをその位相が該グループ同士間で該順番に対応してずれた状態で並列に読み出すステップ(又は手段)と、各グループ毎に該読み出された並列所定長データを該出力ポートに応じて分離するステップ(又は手段)とを含み、該第4ステップ(又は手段)が、該分離された各グループの並列所定長データを多重化して各出力ポートに与えるステップ(又は手段)を含むようにしても良い。
すなわち、この場合、出力ポートの種々のデータ幅に対応してスイッチ処理を行なうことが可能である。
本発明によれば、直並列変換回路及び並直列変換回路に含まれるフリップフロップ回路を削減してスイッチ装置規模の増大を抑えることができ、以てスイッチ装置の小型化及び消費電力の削減を図ることができる。
本発明に係るデータスイッチ方法及びこれを使用する回路の実施例[1]及び[2]を、図1−5を参照して以下に説明する。
実施例[1]:図1−3
構成例:図1
図1に示す本発明の実施例[1]に係るスイッチ回路5では、セグメントSG中の32ビットのデータの直列接続数(32)に合わせて32個の共有バッファB500−B531が並列に設けられ、セグメントSG00−SG47を書込用タイムスロットTS_Wに応じて共有バッファ単位に多重化して各共有バッファB500−B531に与えるマルチプレクサB900−B931と、共有バッファ書込アドレスFIFOC400から出力された書込アドレスWAの位相を、マルチプレクサB900−B931から出力された各データの位相に合わせてシフトして各共有バッファB500−B531に与える位相シフト部B1001−B1031と、読出アドレスセレクタC300から出力された読出アドレスRAの位相を、各位相シフト部B1001−B1031による書込アドレスWAの位相シフトの順番に対応してシフトして各共有バッファB500−B531に与える位相シフト部B1101−B1131と、各共有バッファB500−B531から読み出されたデータを読出用タイムスロットTS_Rに応じて出力ポート単位に多重化してクロック変換用FIFOD100−D147に与えるマルチプレクサB1300−B1347とを備えている点が図7に示した従来例と異なっている。
構成例:図1
図1に示す本発明の実施例[1]に係るスイッチ回路5では、セグメントSG中の32ビットのデータの直列接続数(32)に合わせて32個の共有バッファB500−B531が並列に設けられ、セグメントSG00−SG47を書込用タイムスロットTS_Wに応じて共有バッファ単位に多重化して各共有バッファB500−B531に与えるマルチプレクサB900−B931と、共有バッファ書込アドレスFIFOC400から出力された書込アドレスWAの位相を、マルチプレクサB900−B931から出力された各データの位相に合わせてシフトして各共有バッファB500−B531に与える位相シフト部B1001−B1031と、読出アドレスセレクタC300から出力された読出アドレスRAの位相を、各位相シフト部B1001−B1031による書込アドレスWAの位相シフトの順番に対応してシフトして各共有バッファB500−B531に与える位相シフト部B1101−B1131と、各共有バッファB500−B531から読み出されたデータを読出用タイムスロットTS_Rに応じて出力ポート単位に多重化してクロック変換用FIFOD100−D147に与えるマルチプレクサB1300−B1347とを備えている点が図7に示した従来例と異なっている。
動作例:図2及び3
次に、本実施例の動作を説明するが、まず共有バッファB500−B531への書込動作を、図2を参照して説明する。そして、共有バッファB500−B531からの読出動作を、図3を参照して説明する。
次に、本実施例の動作を説明するが、まず共有バッファB500−B531への書込動作を、図2を参照して説明する。そして、共有バッファB500−B531からの読出動作を、図3を参照して説明する。
共有バッファへの書込動作例:図2
図2に示すように、まず各入力ポートPI00−PI47を介して受信した入力信号IN00−IN47は、図8と同様、クロック変換用FIFOA100−A147と読出アドレス生成部B100−B147との相互動作により、各々の位相が互いに1タイムスロットずつずれたセグメントSG00−SG47の単位で共有バッファ処理部20に与えられる。
図2に示すように、まず各入力ポートPI00−PI47を介して受信した入力信号IN00−IN47は、図8と同様、クロック変換用FIFOA100−A147と読出アドレス生成部B100−B147との相互動作により、各々の位相が互いに1タイムスロットずつずれたセグメントSG00−SG47の単位で共有バッファ処理部20に与えられる。
セグメントSG00を例に取ると、共有バッファ処理部20内のマルチプレクサB900は、共有バッファ書込用タイムスロットTS_Wが“1”を示す時、クロック変換用FIFOA100からのデータD0を共有バッファB500に与える。マルチプレクサB901−B931は、タイムスロットTS_Wがそれぞれ“2”,…,“32”を示す時、クロック変換用FIFOA100からのデータD1−D31を選択して共有バッファB501−B531に与える。この時、セグメントSG00中の先頭のデータD0を受けたマルチプレクサB900は、入力ポートPI00−PI47のいずれかに対応するセグメントSGが新たに与えられたことを検知して共有バッファ書込アドレスFIFOC400に共有バッファ書込アドレス送出要求RQを与えると共に、このデータD0に設定された宛先情報DIを抽出して読出アドレス管理部C500に与える。
書込アドレスFIFO C400から出力された書込アドレスWA=“A0”は、まずデータD0と同一の位相(タイムスロットTS_W=“2”)で共有バッファB500に与えられ、以てデータD0が共有バッファB500中のアドレス“A0”に最初に書き込まれる。位相シフト部B1001−1031は、書込アドレスWAの位相を次段のタイムスロットTS_W=“3”,…,“33”に合わせて順次シフトしてデータD1−D31と同一の位相(タイムスロットTS_W=“3”,…,“33”)で共有バッファB501−B531に与える。
これにより、図2に点線(1)で示すように、各データD1−D31が各共有バッファB501−B531中のアドレス“A0”に順番に書き込まれる。
セグメントSG01−SG47については、マルチプレクサB900−B931が、タイムスロットTS_Wがそれぞれ“2”,…,“33”を示す時にクロック変換用FIFOA101からのデータD0−D31を選択し、タイムスロットTS_Wがそれぞれ“3”,…,“34”を示す時にクロック変換用FIFO A102からのデータD0−D31を選択し、…、タイムスロットTS_Wがそれぞれ“0”,…,“31”を示す時にクロック変換FIFOA147からのデータD0−D31を選択するというように、タイムスロットTS_Wに応じてデータの選択を行なう。
また、位相シフト部B1001−B1031は、書込アドレスFIFOC400から出力された書込アドレスWA=“A0”−“A47”の位相を上記と同様にシフトする。これにより、各セグメントSG01−SG47中のデータD0−D31が、各共有バッファB500−B531中の各セグメントSG01−SG47に対応した同一のアドレス“A1”−“A47”に順番に書き込まれることとなる。
共有バッファからの読出動作例:図3
図3に示すように、読出アドレスセレクタC300は、図9と同様、共有バッファ読出用タイムスロットTS_R=“1”,…,“47”,“0”をそれぞれ共有バッファ読出アドレスFIFOC100−C147に対する共有バッファ読出アドレスRAの取得トリガとし、各読出アドレスFIFO C100−C147から読出アドレスRA=“A0”−“A47”を順次取得して共有バッファB500に与える。この時、位相シフト部B1101−B1131は、読出アドレスRA=“A0”−“A47”の位相をそれぞれ次段のタイムスロットTS_R={“2”,…,“32”}、{“3”,…,“33”}、…、及び{“1”,…,“31”}に合わせて順次シフトして共有バッファB501−B531に与える。
図3に示すように、読出アドレスセレクタC300は、図9と同様、共有バッファ読出用タイムスロットTS_R=“1”,…,“47”,“0”をそれぞれ共有バッファ読出アドレスFIFOC100−C147に対する共有バッファ読出アドレスRAの取得トリガとし、各読出アドレスFIFO C100−C147から読出アドレスRA=“A0”−“A47”を順次取得して共有バッファB500に与える。この時、位相シフト部B1101−B1131は、読出アドレスRA=“A0”−“A47”の位相をそれぞれ次段のタイムスロットTS_R={“2”,…,“32”}、{“3”,…,“33”}、…、及び{“1”,…,“31”}に合わせて順次シフトして共有バッファB501−B531に与える。
これにより、各共有バッファ中のアドレス“A0”−“A47”から、各データD0−D31が上記の書込動作例で説明した書込順番に対応して1タイムスロットずつ位相がずれた状態で読み出される。
図3に点線(2)で示す如く、各共有バッファB500−B531中のアドレス“A0”からデータD0−D31が読み出された場合を例に取ると、マルチプレクサB1300は、タイムスロットTS_Rがそれぞれ“1”,…,“32”を示す時、これらのデータD0−D31をクロック変換用FIFOD100に順次与える。これにより、入力信号INと同一形式の出力信号OUT00が出力ポートPO00を介して送出されることとなる。
各共有バッファB500−B531中のアドレス“A1”−“A47”から読み出されたデータD0−D31については、マルチプレクサB1300−B1347が、タイムスロットTS_Rがそれぞれ“2”,…,“33”を示す時にクロック変換用FIFOD101にデータD0−D31を与え、タイムスロットTS_Rがそれぞれ“3”,…,“34”を示す時にクロック変換用FIFO D102にデータD0−D31を与え、…、タイムスロットTS_Rがそれぞれ“0”,…,“31”を示す時にクロック変換用FIFOD147にデータD0−D31を与えるというように、タイムスロットTS_Rに応じてデータの出力先を選択する。これにより、出力信号OUT01−OUT47がそれぞれ出力ポートPO01−PO47を介して送出されることとなる。
このようにして、本実施例のスイッチ回路5では、直並列変換回路及び並直列変換回路を用いること無くスイッチ処理を行い、図7に示した従来例と比較して約98300個のフリップフロップ回路を削減できる。
なお、位相シフト部B1001−B1031及びB1101−B1031がそれぞれ1個ずつ計数十個程度のフリップフロップ回路を含み得るが、このフリップフロップ回路数は直並列変換回路及び並直列変換回路に含まれる数に比べてはるかに小さいため、スイッチ回路5全体の実装面積及び消費電力にはほとんど影響を及ぼさない。また、32個の共有バッファB500−B531もそれぞれフリップフロップ回路を含み得るが、本実施例の共有バッファB500−B531の総容量は図1に示す如く1Mビット{(32ビット×1k)×32個}であり、図7に示した従来例の共有バッファB500の容量(1Mビット(1024ビット×1k))と同一であるため、スイッチ回路5中のフリップフロップ回路数は増加しない。
実施例[2]:図4及び5
図4に示す本発明の実施例[2]に係るスイッチ回路5では、各々のデータ幅が128ビットである8個の出力ポートPO00−PO07が設けられ、これらの出力ポートPO00−PO07のデータ幅に合わせて共有バッファB500−B531が4個(32ビット×4)ずつ8つのグループGRP0−GRP7に区分けされている点が上記の実施例[1]と異なっている。
図4に示す本発明の実施例[2]に係るスイッチ回路5では、各々のデータ幅が128ビットである8個の出力ポートPO00−PO07が設けられ、これらの出力ポートPO00−PO07のデータ幅に合わせて共有バッファB500−B531が4個(32ビット×4)ずつ8つのグループGRP0−GRP7に区分けされている点が上記の実施例[1]と異なっている。
また、共有バッファ処理部20は、グループGRP0−GRP7同士間で共有バッファ読出アドレスRAの位相を順番にシフトする位相シフト部B1101−B1107と、各グループGRP0−GRP7に対応させて設けたマルチプレクサB1300−B1307を備えている。
また、共有バッファアドレス管理部30内の読出アドレス管理部C500が管理する読出アドレスFIFOの数を、出力ポート数(8)に対応させて8個(C100−C107)に変更している。
なお、図を簡略化するため、図1に示した入力部10、共有バッファ処理部20内の読出アドレス生成部B100−B147、及び出力部40の記載を省略している。
次に、本実施例の動作を説明するが、共有バッファB500−B531への書込動作については上記の実施例[1]と同様であるため、その説明は省略し、共有バッファB500−B531からの読出動作についてのみ図5を参照して以下に説明する。
図5に示すように、読出アドレスセレクタC300は、“0”,…,“7”が循環して設定される共有バッファ読出用タイムスロットTS_Rがそれぞれ“1”,…,“7”,“0”を示す時、各共有バッファ読出アドレスFIFOC100−C107から読出アドレスRA=“A0”−“A7”を取得し、共有バッファグループGRP0内の共有バッファB500−B531に同一の位相で与える。
この時、位相シフト部B1101−B1107は、読出アドレスRA=“A0”−“A7”の位相をそれぞれ次段のタイムスロットTS_R={“2”,…,“7”,“0”}、{“3”,…,“7”,“0”,“1”}、…、及び{“1”,…,“7”}に合わせて順次シフトして共有バッファグループGRP1−GRP7に与える。
これにより、各共有バッファ中のアドレス“A0”−“A7”から各データD0−D31が、図5に点線(2)で示す如く、共有バッファグループGRP0−GRP7同士間で上記の実施例[1]で説明した書込順番に応じて1タイムスロットずつ位相がずれた状態で並列に読み出される。
各共有バッファB500−B531中のアドレス“A0”からデータD0−D31が読み出された場合を例に取ると、マルチプレクサB1300−B1307は、タイムスロットTS_Rがそれぞれ“1”,…,“7”,“0”を示す時、128ビットの並列データD0−D3、D4−D7、…、及びD28−D31をクロック変換FIFO D100に順次与える。これにより、ビット幅=“128ビット”の出力信号OUT00が出力ポートPO00を介して送出されることとなる。
各共有バッファB500−B531中のアドレス“A1”−“A47”から読み出されたデータD0−D31については、マルチプレクサB1300−B1307が、タイムスロットTS_Rに応じて並列データD0−D3、D4−7、…、及びD28−D31の出力先としてクロック変換FIFOD 100−D107のいずれかを選択する。これにより、ビット幅=“128ビット”の出力信号OUT01−OUT47がそれぞれ出力ポートPO01−PO47を介して送出されることとなる。
なお、上記実施例によって本発明は限定されるものではなく、特許請求の範囲の記載に基づき、当業者によって種々の変更が可能なことは明らかである。
1 スイッチ装置
2, 2_0−2_n インタフェースカード
3, 3_0−3_n 宛先情報付加/削除部
4 スイッチカード
5 スイッチ回路
10 入力部
20 共有バッファ処理部
30 共有バッファアドレス管理部
40 出力部
PI, PI00−PI47 入力ポート
PO, PO00−PO47 出力ポート
A100−A147,D100−D147 クロック変換用FIFO
B100−B147 読出アドレス生成部
B200−B247 S/P変換回路
B300, B900−B931,B1300−B1347 マルチプレクサ
B400 書込用タイムスロット生成部
B500−B531 共有バッファ
B600 デマルチプレクサ
B700−B747 P/S変換回路
B1001−B1031,B1101−B1131 位相シフト部
C100−C147 共有バッファ読出アドレスFIFO
C200 読出用タイムスロット生成部
C300 読出アドレスセレクタ
C400 共有バッファ書込アドレスFIFO
C500 読出アドレス管理部
DB データベース
FR フレーム
IN, IN00−IN47 入力信号
OUT, OUT00−OUT47 出力信号
SG, SG00−SG47 セグメント
WE 書込イネーブル
RA_F 読出アドレス
WP 書込完了パルス
TS_W 共有バッファ書込用タイムスロット
TS_R 共有バッファ読出用タイムスロット
RQ 共有バッファ書込アドレス送出要求
WA 共有バッファ書込アドレス
RA 共有バッファ読出アドレス
DI 宛先情報
GRP0−GRP7 共有バッファグループ
図中、同一符号は同一又は相当部分を示す。
2, 2_0−2_n インタフェースカード
3, 3_0−3_n 宛先情報付加/削除部
4 スイッチカード
5 スイッチ回路
10 入力部
20 共有バッファ処理部
30 共有バッファアドレス管理部
40 出力部
PI, PI00−PI47 入力ポート
PO, PO00−PO47 出力ポート
A100−A147,D100−D147 クロック変換用FIFO
B100−B147 読出アドレス生成部
B200−B247 S/P変換回路
B300, B900−B931,B1300−B1347 マルチプレクサ
B400 書込用タイムスロット生成部
B500−B531 共有バッファ
B600 デマルチプレクサ
B700−B747 P/S変換回路
B1001−B1031,B1101−B1131 位相シフト部
C100−C147 共有バッファ読出アドレスFIFO
C200 読出用タイムスロット生成部
C300 読出アドレスセレクタ
C400 共有バッファ書込アドレスFIFO
C500 読出アドレス管理部
DB データベース
FR フレーム
IN, IN00−IN47 入力信号
OUT, OUT00−OUT47 出力信号
SG, SG00−SG47 セグメント
WE 書込イネーブル
RA_F 読出アドレス
WP 書込完了パルス
TS_W 共有バッファ書込用タイムスロット
TS_R 共有バッファ読出用タイムスロット
RQ 共有バッファ書込アドレス送出要求
WA 共有バッファ書込アドレス
RA 共有バッファ読出アドレス
DI 宛先情報
GRP0−GRP7 共有バッファグループ
図中、同一符号は同一又は相当部分を示す。
Claims (8)
- 複数の入力ポートに位相がずらされた形で入力した、各セグメントにおける所定の数分だけ直列に接続された所定長データの各々を、該所定の数分だけ並列に設けた共有バッファ中の各セグメントに対応した同一のアドレスに順番に書き込む第1ステップと、
該書込が行われる度毎に、該アドレスを該セグメントに設定された出力ポート毎に記憶する第2ステップと、
該記憶されたアドレスを該出力ポート毎に順次参照して各共有バッファ中の該参照したアドレスから各所定長データを該順番に対応して読み出す第3ステップと、
該読み出された各所定長データを直列に接続して該出力ポートに対して出力する第4ステップと、
を備えたことを特徴とするデータスイッチ方法。 - 請求項1において、
該第1ステップが、各入力ポート毎に各セグメントを該所定の数分の所定長データに並列分離するステップと、
該並列分離された各入力ポートの所定長データを多重化して各共有バッファに与えるステップと、
各入力ポートのいずれかに該セグメントが入力される度毎に、各共有バッファに共通の書込用空きアドレスを発生するステップと、
各書込用空きアドレスを、該多重化された各所定長データの位相に合わせて各共有バッファに与えるステップとを含み、以て各共有バッファ中の同一アドレスに各セグメントにおける各所定長データを書込可能にしたことを特徴としたデータスイッチ方法。 - 請求項1において、
該第3ステップが、各出力ポート毎に参照したアドレスの位相を該順番に対応してずらして各共有バッファに与えることにより、各所定長データをその位相が該順番に対応してずれた状態で読み出すステップと、各共有バッファ毎に該読み出された所定長データを該出力ポートに応じて分離するステップとを含み、
該第4ステップが、該分離された各共有バッファの所定長データを多重化して各出力ポートに与えるステップを含むことを特徴としたデータスイッチ方法。 - 請求項1において、
該第3ステップが、各出力ポート毎に参照したアドレスの位相を、各共有バッファを該出力ポートのデータ幅に基づき区分けしたグループ同士間で該順番に対応してずらして各共有バッファに与えることにより、各所定長データをその位相が該グループ同士間で該順番に対応してずれた状態で並列に読み出すステップと、各グループ毎に該読み出された並列所定長データを該出力ポートに応じて分離するステップとを含み、
該第4ステップが、該分離された各グループの並列所定長データを多重化して各出力ポートに与えるステップを含むことを特徴としたデータスイッチ方法。 - 複数の入力ポートに位相がずらされた形で入力した、各セグメントにおける所定の数分だけ直列に接続された所定長データの各々を、該所定の数分だけ並列に設けた共有バッファ中の各セグメントに対応した同一のアドレスに順番に書き込む第1手段と、
該書込が行われる度毎に、該アドレスを該セグメントに設定された出力ポート毎に記憶する第2手段と、
該記憶されたアドレスを該出力ポート毎に順次参照して各共有バッファ中の該参照したアドレスから各所定長データを該順番に対応して読み出す第3手段と、
該読み出された各所定長データを直列に接続して該出力ポートに対して出力する第4手段と、
を備えたことを特徴とするデータスイッチ回路。 - 請求項5において、
該第1手段が、各入力ポート毎に各セグメントを該所定の数分の所定長データに並列分離する手段と、
該並列分離された各入力ポートの所定長データを多重化して各共有バッファに与える手段と、
各入力ポートのいずれかに該セグメントが入力される度毎に、各共有バッファに共通の書込用空きアドレスを発生する手段と、
各書込用空きアドレスを、該多重化された各所定長データの位相に合わせて各共有バッファに与える手段とを含み、以て各共有バッファ中の同一アドレスに各セグメントにおける各所定長データを書込可能にしたことを特徴としたデータスイッチ回路。 - 請求項5において、
該第3手段が、各出力ポート毎に参照したアドレスの位相を該順番に対応してずらして各共有バッファに与えることにより、各所定長データをその位相が該順番に対応してずれた状態で読み出す手段と、各共有バッファ毎に該読み出された所定長データを該出力ポートに応じて分離する手段とを含み、
該第4手段が、該分離された各共有バッファの所定長データを多重化して各出力ポートに与える手段を含むことを特徴としたデータスイッチ回路。 - 請求項5において、
該第3手段が、各出力ポート毎に参照したアドレスの位相を、各共有バッファを該出力ポートのデータ幅に基づき区分けしたグループ同士間で該順番に対応してずらして各共有バッファに与えることにより、各所定長データをその位相が該グループ同士間で該順番に対応してずれた状態で並列に読み出す手段と、各グループ毎に該読み出された並列所定長データを該出力ポートに応じて分離する手段とを含み、
該第4手段が、該分離された各グループの並列所定長データを多重化して各出力ポートに与える手段を含むことを特徴としたデータスイッチ回路。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2007/052604 WO2008099472A1 (ja) | 2007-02-14 | 2007-02-14 | データスイッチ方法及び回路 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2008099472A1 true JPWO2008099472A1 (ja) | 2010-05-27 |
Family
ID=39689731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008557930A Pending JPWO2008099472A1 (ja) | 2007-02-14 | 2007-02-14 | データスイッチ方法及び回路 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20090296698A1 (ja) |
JP (1) | JPWO2008099472A1 (ja) |
WO (1) | WO2008099472A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8374039B2 (en) * | 2010-12-22 | 2013-02-12 | Advanced Micro Devices, Inc. | Multi-port memory array |
JP5978792B2 (ja) * | 2012-06-12 | 2016-08-24 | 富士通株式会社 | 伝送装置及び伝送方法 |
FR3094593B1 (fr) * | 2019-03-29 | 2021-02-19 | Teledyne E2V Semiconductors Sas | Procédé de synchronisation de données numériques envoyées en série |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59135994A (ja) * | 1982-12-29 | 1984-08-04 | ミケル・セルベル | Tdmスイツチングシステム |
JPH02111138A (ja) * | 1987-12-24 | 1990-04-24 | France Etat | バッファキュー書込みポインタ制御回路 |
JPH033448A (ja) * | 1989-05-31 | 1991-01-09 | Hitachi Ltd | スイツチングシステム |
JPH03123238A (ja) * | 1989-10-06 | 1991-05-27 | Nippon Telegr & Teleph Corp <Ntt> | 共通バッファ型スイッチ |
JPH04100358A (ja) * | 1990-08-17 | 1992-04-02 | Matsushita Electric Ind Co Ltd | セル転送回路 |
JPH08223170A (ja) * | 1995-02-13 | 1996-08-30 | Fujitsu Ltd | Atmセルスイッチ |
JP2001177509A (ja) * | 1999-12-16 | 2001-06-29 | Oki Electric Ind Co Ltd | クロック載せ換え方法及び装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6711170B1 (en) * | 1999-08-31 | 2004-03-23 | Mosaid Technologies, Inc. | Method and apparatus for an interleaved non-blocking packet buffer |
-
2007
- 2007-02-14 JP JP2008557930A patent/JPWO2008099472A1/ja active Pending
- 2007-02-14 WO PCT/JP2007/052604 patent/WO2008099472A1/ja active Application Filing
-
2009
- 2009-08-12 US US12/539,762 patent/US20090296698A1/en not_active Abandoned
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59135994A (ja) * | 1982-12-29 | 1984-08-04 | ミケル・セルベル | Tdmスイツチングシステム |
JPH02111138A (ja) * | 1987-12-24 | 1990-04-24 | France Etat | バッファキュー書込みポインタ制御回路 |
JPH033448A (ja) * | 1989-05-31 | 1991-01-09 | Hitachi Ltd | スイツチングシステム |
JPH03123238A (ja) * | 1989-10-06 | 1991-05-27 | Nippon Telegr & Teleph Corp <Ntt> | 共通バッファ型スイッチ |
JPH04100358A (ja) * | 1990-08-17 | 1992-04-02 | Matsushita Electric Ind Co Ltd | セル転送回路 |
JPH08223170A (ja) * | 1995-02-13 | 1996-08-30 | Fujitsu Ltd | Atmセルスイッチ |
JP2001177509A (ja) * | 1999-12-16 | 2001-06-29 | Oki Electric Ind Co Ltd | クロック載せ換え方法及び装置 |
Also Published As
Publication number | Publication date |
---|---|
US20090296698A1 (en) | 2009-12-03 |
WO2008099472A1 (ja) | 2008-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190385683A1 (en) | Semiconductor device | |
JPWO2008099472A1 (ja) | データスイッチ方法及び回路 | |
US4922485A (en) | System for changing priority of packets of data | |
KR100498233B1 (ko) | 선입선출 메모리 회로 및 그 구현 방법 | |
EP0504710A1 (en) | Cross-point type switch using common memories | |
US7536499B2 (en) | Memory access control device and processing system having same | |
JP3103298B2 (ja) | Atmスイッチのアドレス生成回路 | |
US7042874B1 (en) | Digital switching system and method of switching data of same | |
JP2964958B2 (ja) | Atmスイッチ | |
JP5491282B2 (ja) | データ入出力装置、データ記憶方法及びプログラム | |
US7653053B2 (en) | Programmable bit rates in a constant bandwidth TDM switch | |
JP2970583B2 (ja) | 時分割多重時間スイッチ装置 | |
JP2582461B2 (ja) | セルスイッチ | |
JP2765887B2 (ja) | データ多重方式 | |
JPH05308686A (ja) | 異速度分岐多重回路 | |
JP2713487B2 (ja) | パケットバッファ回路及びパケット処理回路 | |
JPS6219120B2 (ja) | ||
EP1416373A3 (en) | Method and apparatus to reduce access time in synchronous fifos with zero latency overhead | |
JPS63123236A (ja) | 多元多重化回路 | |
JP2845781B2 (ja) | メモリ書き込み制御回路 | |
JPS6057446A (ja) | デ−タ記憶装置 | |
JPH10312356A (ja) | データ転送装置 | |
JPH11328006A (ja) | メモリ装置用アドレス制御回路 | |
JPH06101715B2 (ja) | 多重・分離方式 | |
JP2004199814A (ja) | 記憶装置、データ処理装置、及びデータ処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100608 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100809 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20101005 |