JP2018019209A - 伝送路切替制御装置,及び伝送路切替制御方法 - Google Patents
伝送路切替制御装置,及び伝送路切替制御方法 Download PDFInfo
- Publication number
- JP2018019209A JP2018019209A JP2016147205A JP2016147205A JP2018019209A JP 2018019209 A JP2018019209 A JP 2018019209A JP 2016147205 A JP2016147205 A JP 2016147205A JP 2016147205 A JP2016147205 A JP 2016147205A JP 2018019209 A JP2018019209 A JP 2018019209A
- Authority
- JP
- Japan
- Prior art keywords
- area
- information
- transmission path
- processing
- transmission
- 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
Landscapes
- Bus Control (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【課題】冗長化された伝送路の切替時間が許容範囲を超過するのを回避可能とする。【解決手段】伝送路切替制御装置は、複数の伝送路のうち冗長化された第1伝送路の切替に係る第1情報を記憶する第1領域と第1伝送路以外の第2伝送路に係る第2情報を記憶する第2領域とを有する記憶部と、第1領域からの第1情報の読み出し及び処理を第2領域からの第2情報の読み出し及び処理より優先して行う処理部とを含む。【選択図】図2
Description
本発明は、伝送路切替制御装置,及び伝送路切替制御方法に関する。
パスやリングなどの伝送路を介して隣接装置へ信号を伝送する伝送装置(ノードと呼ばれる)がある。伝送路は、運用系と、運用系の障害時に切り替えられる予備系とを含む冗長構成を有する。
パスプロテクションを規定したITU−T勧告である規格G.8031や、リングプロテクションを規定したITU−T勧告であるG.8032では、運用系から予備系への切替時間を50msec以下とすることが勧告されている。
伝送装置において、障害が検出された伝送路の情報はメモリに記憶される。複数の伝送路の障害に係る情報がメモリに記憶された場合、記憶順で情報はメモリから読み出され、読み出された情報を用いた伝送路の切替に係る処理が行われる。
しかしながら、上記構成では、メモリへの記憶順で処理が行われる。このため、メモリに多くの伝送路に係る情報が記憶される場合には、或る伝送路についての情報が読み出し待ちの間に或る伝送路の切替時間が許容範囲を超過してしまうおそれがあった。このような切替時間が許容範囲を超過するおそれは、伝送装置が管理する伝送路の数が増える程大きくなると考えられる。
本発明は、冗長化された伝送路の切替時間が許容範囲を超過するのを回避可能とする伝送路切替制御装置,及び伝送路切替制御方法を提供することを目的とする。
一つの態様は、伝送路の切替を制御する伝送路切替制御装置である。伝送路切替制御装置は、複数の伝送路のうち冗長化された第1伝送路の切替に係る第1情報を記憶する第1領域と、前記第1伝送路以外の第2伝送路に係る第2情報を記憶する第2領域とを有する記憶部と、前記第1領域からの前記第1情報の読み出し及び処理を前記第2領域からの前記第2情報の読み出し及び処理より優先して行う処理部とを含む。
一側面では、冗長化された伝送路の切替時間が許容範囲を超過するのを回避可能となる。
以下、図面を参照し、伝送装置,及び伝送路切替制御方法の実施形態について説明する。但し、実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。
<伝送装置>
図1は、実施形態に係る伝送装置の構成例を示す。図1には、複数の伝送路を介して接続された二つの伝送装置10(伝送装置10A,伝送装置10B)が例示されている。伝送装置10Aは、それぞれ複数のパスを収容する複数のラインインタフェースユニット(LIU:ラインカードとも呼ばれる)11と、LIU間のパス切替を行うラインスイッチ(SW)12とを含む。図1の例では、伝送装置10Aは、複数のLIU11として、LIU11a,LIU11b,LIU11cを有する。少なくとも1つのLIU11は「信号を伝送する複数の伝送路を収容する収容部」の一例である。
図1は、実施形態に係る伝送装置の構成例を示す。図1には、複数の伝送路を介して接続された二つの伝送装置10(伝送装置10A,伝送装置10B)が例示されている。伝送装置10Aは、それぞれ複数のパスを収容する複数のラインインタフェースユニット(LIU:ラインカードとも呼ばれる)11と、LIU間のパス切替を行うラインスイッチ(SW)12とを含む。図1の例では、伝送装置10Aは、複数のLIU11として、LIU11a,LIU11b,LIU11cを有する。少なくとも1つのLIU11は「信号を伝送する複数の伝送路を収容する収容部」の一例である。
伝送装置10Aは、さらに、制御装置13とCentral Processing Unit(CPU)14
とを含む。制御装置13は、シリアルハードウェアバス(SHB)15と呼ばれるローカルバスを介して複数のLIU11と接続される。図1の例では、SHB15はn個(nは正の整数)設けられている。
とを含む。制御装置13は、シリアルハードウェアバス(SHB)15と呼ばれるローカルバスを介して複数のLIU11と接続される。図1の例では、SHB15はn個(nは正の整数)設けられている。
制御装置13は。SHB15を介して各LIU11から受信されるデータを、Quad Data Rate(QDR)メモリ16に記憶する。QDRメモリ16は、高速な通信機器でデータの宛先や不正データのチェックなどを目的として実装される、書き込み、読み出しが同時に可能なメモリである。伝送装置10に要求される性能に応じて、QDRメモリの代わりに、DDR(Double Data Rate)メモリやSDR(Single Data Rate)メモリが適用される場合もあり得る。
また、制御装置13は、QDRメモリ16からのデータの読み出しをCPU14の代わりに行うDMA(Direct Memory Access)コントローラ17(以下、DMA17と表記)を含む。制御装置13は、例えば、Field Programmable Gate Array(FPGA),FP
GA以外の集積回路(LSI,Application Specific Integrated Circuit(ASIC)
など),FPGAとFPGA以外の集積回路との組み合わせによって形成される。伝送装置10Bは、伝送装置10Aと同様の構成を有しているので説明を省略する。
GA以外の集積回路(LSI,Application Specific Integrated Circuit(ASIC)
など),FPGAとFPGA以外の集積回路との組み合わせによって形成される。伝送装置10Bは、伝送装置10Aと同様の構成を有しているので説明を省略する。
<伝送路の切替>
次に、伝送装置10Aと伝送装置10Bとの間における冗長化された伝送路の切替処理について説明する。図1において、伝送装置10Aと伝送装置10Bとの間には、LIU11a−SW12a−LIU11b−LIU11d−SW12b−LIU11fを辿る運用系(Work)のパスP1が設定されている。パスP1は、図1の紙面の左右方向に主信号
が流れる双方向のパスである。
次に、伝送装置10Aと伝送装置10Bとの間における冗長化された伝送路の切替処理について説明する。図1において、伝送装置10Aと伝送装置10Bとの間には、LIU11a−SW12a−LIU11b−LIU11d−SW12b−LIU11fを辿る運用系(Work)のパスP1が設定されている。パスP1は、図1の紙面の左右方向に主信号
が流れる双方向のパスである。
パスP1に対する予備系(Protection)のパス(伝送路)として、LIU11a−SW12a−LIU11c−LIU11e−SW12b−LIU11fを辿るパスP2が設定されている。パスP2も図1の紙面の左右方向に主信号が流れる双方向のパスである。このようにパスP1とパスP2とで冗長化された伝送路が形成されている。
ここで、パスP1に障害が発生し、伝送装置10AのLIU11bで障害が検出されたと仮定する。この場合、LIU11bは、パスP1の障害を検出すると、SHB15を介して切替トリガとなる情報(切替情報)を制御装置13aに送る。制御装置13aでは、切替情報がQDRメモリ16に記憶される。
切替情報はDMA17によって読み出されCPU14aに供給される。CPU14aは、切替情報を解析し、パスP2への切替指示を生成・出力する。切替指示は、SHB15を介してLIU11aの切替テーブル18(18a)に送られる。切替テーブル18aは、切替指示に応じて、図1の紙面の左からLIU11aに入力される信号の接続先を、LIU11b(パスP1)からLIU11c(パスP2)に切り替える。
また、CPU14から予備系のLIU11cに対し、障害通知信号(APS−SFと呼ばれる)の送信指示を発行し、LIU11cからパスP2を介して障害通知信号を伝送装置10Bに送信する。
伝送装置10BのLIU11eは、障害通知信号を検出すると、切替情報をSHB15を介して制御装置13bに送る。切替情報はQDRメモリ16に記憶される。切替情報はDMA17によって読み出され、CPU14bに供給される。
CPU14bは、切替情報を解析してパスP2への切替指示を出力する。切替指示はSHB15を介してLIU11fの切替テーブル18bに送られる。切替テーブル18bは、切替指示に応じて、図1の紙面の右からLIU11fに入力される信号の接続先を、LIU11d(パスP1)からLIU11e(パスP2)に切り替える。このようにして、パスP1からパスP2への切替が行われる。
図1では図示を省略するが、伝送装置10Aと伝送装置10Bとの間には、複数のパスが設けられている。一例として、伝送装置10Aと伝送装置10Bとの間には、32k(k=1024)本のパスが設けられる。そのうちの1k本のパスが上記したような冗長構成を有し、G.8031で規定された切替時間の許容範囲内(50msec以下)での切替が要求されるパス(第1パスとする)であると仮定する。但し、パスの総数、冗長化され許容範囲内での切替が要求される第1パスの数は適宜設定可能である。上記したパスP1,P2を含む1k本の第1パスは「第1伝送路」の一例である。1k本以外のパス(第2パスとする)は「第2伝送路」の一例である。図1には、第2パスの一例であるパスPx,Py,Pzが図示されている。
パスP1などの第1パスに係る切替情報は「第1情報」の一例であり、第1パス以外の第2パスに係る情報は「第2情報」の一例である。第2伝送路は必ずしも冗長化されていなくても良い。冗長化されていないパスの障害が生じた場合には、障害を検出したLIU11から警報の情報が送信されQDRメモリ16に記憶される。警報の情報はDMA17を介してCPU14に供給され、警報に応じた処理をCPU14は行う。このように、第2伝送路に係る情報は、切替情報以外の情報を含む。
パスP1を含む多数のパスの障害が短い時間の間に起こると、多数の切替情報や警報が
QDRメモリ16に記憶される。このとき、QDRメモリ16からのデータの読み出し順がQDRメモリ16への記憶順(制御装置13への到着順)であると、以下の問題がおこる。すなわち、パスP1についての警報データが読み出し待ちである間に切替時間の許容範囲を超過するおそれがある。以下、このような問題を解決し得る、実施形態に係る制御装置13の構成について説明する。
QDRメモリ16に記憶される。このとき、QDRメモリ16からのデータの読み出し順がQDRメモリ16への記憶順(制御装置13への到着順)であると、以下の問題がおこる。すなわち、パスP1についての警報データが読み出し待ちである間に切替時間の許容範囲を超過するおそれがある。以下、このような問題を解決し得る、実施形態に係る制御装置13の構成について説明する。
なお、伝送装置の一例として、G.8031に準拠し得る伝送装置の構成を図1に例示したが、以下に説明する制御装置13及びCPU14の構成は、G.8032に適合ないし準拠してリングプロテクションを行う伝送装置にも適用できる。そのような伝送装置が接続されるリングはパスの一種であり、リングはパス乃至伝送路の一例である。
<制御装置の構成例>
図2は、制御装置13の構成例を示す。制御装置13は、受信フレーム処理部131と、受信FIFO(First-in First-out)132と、QDR割り付けテーブル133と、QUE制御部134と、管理表135と、DMA転送FIFO136とを含む。なお、図1と異なり、QDRメモリ16は、制御装置13の外に配置されている。
図2は、制御装置13の構成例を示す。制御装置13は、受信フレーム処理部131と、受信FIFO(First-in First-out)132と、QDR割り付けテーブル133と、QUE制御部134と、管理表135と、DMA転送FIFO136とを含む。なお、図1と異なり、QDRメモリ16は、制御装置13の外に配置されている。
QDRメモリ16は、「メモリ」,「記憶装置」,「記憶部」の一例である。CPU14は「処理部」の一例である。QDRメモリ16,制御装置13及びCPU14が「伝送路切替制御装置」の一例である。QUE制御部134は「書き込み部」の一例である。
受信フレーム処理部131は、LIU11からSHB15を介して到着するデータブロックのエラーチェックを行う。図3は、データブロックのデータ構造例を示す。図3に示すように、データブロックは、先頭から順に、「種類」,「種別」,「ラインカード情報」,「情報の長さ」,「情報」の各フィールドを有する。
「種類」として、情報の種類を示す情報が格納される(切替情報,警報など)。「種別」は、「情報」フィールドに格納された情報の優先度(QDRメモリ16からの読み出しの優先度)を示す情報である。本実施形態では、切替情報は警報より高い優先順位を持つ。「情報の長さ」は、「情報」フィールドに格納された情報のデータ長を示す。「情報」フィールドには、伝達対象の情報が格納される。
種別として、例えば、0〜15の値をとり得る。番号が小さい順或いは大きい順で優先順位が設定される。種別の数は適宜設定可能で有り、本実施形態では、種別A(第1伝送路)と種別B(第1伝送路以外の伝送路(第2伝送路))の2つである場合を例示する。
図2に戻って、受信FIFO132は、データブロックを一時的に記憶する。QDR割り付けテーブル133は、データブロックの種別を参照し、種別に応じたQDRメモリ16内のデータブロックの記憶領域を指定する情報をQUE制御部134に与える。QUE制御部134は、指定情報に応じた記憶領域に受信FIFO132から出力されたデータブロックを書き込む(記憶する)。また、QUE制御部134はDMA制御部142(図6)からの指示に応じたデータ(データブロック)をQDRメモリ16から読み出し、DMA転送FIFO136に格納する。
管理表135は、QDRメモリ16に記憶された情報の管理データを記憶する。管理表135は、例えば複数のレジスタの組み合わせで形成し得る。図4は、管理表のデータ構造例を示す。図5は、QDRメモリ16のデータ構造を示す。
図4に示すように、管理表135は、種別毎に、書き込み開始アドレスと、受信量と、RCVビットとを管理する。なお、図4では、種別A〜Dについての管理表135が例示
されているが、本実施形態では、種別C及び種別Dは存在しない。
されているが、本実施形態では、種別C及び種別Dは存在しない。
書き込み開始アドレスは「書き込み開始位置」の一例であり、受信量は「情報量」の一例であり、RCVビットは「対応する領域に記憶された情報の有無を示すフラグ」の一例である。
図5に示すように、QDRメモリ16は、種別毎のデータブロックの記憶領域を有している。本実施形態では、種別は種別Aと種別Bとの二つであるので、図5に示すように、QDRメモリ16は、種別Aのデータブロックが記憶される第1領域16aと、種別Bのデータブロックが記憶される第2領域16bとを有している。但し、種別の数に応じて3以上の記憶領域をもつ場合もあり得る。なお、本実施形態では、1つのQDRメモリが種別に応じた複数の記憶領域(アドレス空間)を持つ例を示したが、種別毎の複数のQDRメモリ(複数の記憶媒体)が用意され、各QDRMメモリが記憶領域として用いられても良い。
データブロックは、第1領域16a,第2領域16bのそれぞれにおいて連続して記憶される。第1領域16a,第2領域16bのそれぞれにおける先頭のデータブロックの先頭位置が、ポインタ(開始アドレス)となり、先頭のデータブロックから最後尾のデータブロックの末尾までの長さがLength(データ長)となる。開始アドレスは「読み出し開始位置」の一例である。
書き込み開始アドレスは、第1領域16a,第2領域16bのそれぞれ対して次に書き込みを開始する位置を示し、既に書き込まれているデータブロックの末尾の次のアドレスである。受信量は、記憶領域に記憶されているデータ量であるので、書き込み開始アドレスから受信量分アドレスを遡れば、開始アドレス(ポインタ)を割り出すことができる。
RCVビットはQDRメモリ16における、対応する種別のデータの有無を示す。本実施形態ではRCVビット“1”がデータ有り(情報あり)を示しRCVビット“0”がデータなし(情報なし)を示す。
QUE制御部134は、第1領域16a及び第2領域16bに対応する書き込み開始位置及び受信量を管理しており、各領域にデータブロックを記憶する場合に、データブロックの「情報の長さ」を用いて受信量を更新する。QUE制御部134は、書き込み開始アドレス及び更新した受信量を管理表15の該当種別の欄に書き込む。
図2を用いて、種別Aのデータブロックの到着時における制御装置13における動作を説明すると、おおよそ以下の通りとなる。データブロックは、受信FIFO132を経由してQUE制御部134により、第1領域16aへ書き込まれる(記憶される)(図2<1>)。
QUE制御部134は、データブロック“種別”(種別A),“書き込み開始アドレス”,“受信量”を管理表15の該当箇所に記憶させる(図2<2>)。管理表15の更新によって、種別AのRCVフラグがON(0→1)になる場合には、制御装置13は、Message Signaled Interrupt(MSI)割り込みをCPU14向けに発行する(図2<3−1>)。
CPU14は、割り込みが上がると、該当種別(種別A)の書き込み開始アドレスと受信量とを読み出す(図2<3−2>,<3−3>)。CPU14は、書き込み開始アドレスと受信量とを用いて割り出した開始アドレス及びデータ長(length)を指定する。指定に従い、DMAが実行され、対応する種別AのデータブロックがQDRメモリ16から転
送FIFO136経由でCPU14に供給される(図2<4>)。
送FIFO136経由でCPU14に供給される(図2<4>)。
図2には図示しないが、CPU14は、第1領域16aから読み出されたデータブロック中の切替情報を基に切替指示を生成して出力する。切替指示は、SHB15を介して宛先のLIU11へ転送される。QDRメモリ16に記憶された種別Aのデータブロックの読み出しが完了すると、CPU14は、管理表135の種別Aに対応するRCVビットをオフ(1→0)にする(図2<5>)。
<CPUの構成例>
図6は、CPU14の構成例を示す図である。図6において、CPU14は、インタフェース(I/F)141と、DMA制御部142と、フラグ制御部143と、割り込み受信部144と、CPU制御部145と含む。
図6は、CPU14の構成例を示す図である。図6において、CPU14は、インタフェース(I/F)141と、DMA制御部142と、フラグ制御部143と、割り込み受信部144と、CPU制御部145と含む。
I/F141は、データの送受信処理を司る。I/F141はデータの授受に係る調停も行う。DMA制御部142は、図1に示したDMA17に相当する。このように、DMAコントローラは制御装置13に含まれていても、CPU14に内蔵されても良い。
DMA制御部142は、複数のDMAチャネル(DMA−CH)を有し、各DMAチャネルを用いて第1領域16a,第2領域16bに対する読み出しを個別に(並列に)実行することができる。また、DMA制御部142は複数のDMAチャネルを用いて第1領域16a,第2領域16bのそれぞれから読み出すデータのバースト長(一時に読み出すデータ長)を個別に設定することもできる。
フラグ制御部143は、I/F141を介して管理表15の対応するRCVビットをオフ(1→0)に設定することができる。割り込み受信部144は、割り込みパケット用のインタフェース(I/F)と、割り込み内容解析部147とを含み、割り込みの検出(検知)に使用される。割り込み内容は、CPU制御部145に送られる。
CPU制御部145は、CPU14の全体の制御を行う。すなわち、CPU制御部145は、DMA制御部142やフラグ制御部143の動作を制御する。また、切替情報を用いて切替指示を生成し、I/F141から出力させる処理をCPU制御部145は行う。
CPU14は、メモリ19と接続されている。メモリ19は主記憶装置と補助記憶装置とを含む。主記憶装置はCPU14の作業領域、プログラムやデータの記憶領域などとして使用される。主記憶装置は、Random Access Memory(RAM)、或いはRAMとRead Only Memory(ROM)との組み合わせで形成される。
補助記憶装置は、例えば、ハードディスクドライブ(HDD),Solid State Drive(
SSD),フラッシュメモリ,Electrically Erasable Programmable Read-Only Memory
(EEPROM)などである。補助記憶装置は、CPU14で実行されるプログラムと、プログラムの実行に際して使用されるデータとを記憶する。メモリ19は、「記憶部」,「記憶装置」,「記憶媒体」の一例である。CPU14は、メモリ19に記憶されたプログラムを実行することによって、図6に示したDMA制御部142,フラグ制御部143,割り込み受信部144としての動作を行う。
SSD),フラッシュメモリ,Electrically Erasable Programmable Read-Only Memory
(EEPROM)などである。補助記憶装置は、CPU14で実行されるプログラムと、プログラムの実行に際して使用されるデータとを記憶する。メモリ19は、「記憶部」,「記憶装置」,「記憶媒体」の一例である。CPU14は、メモリ19に記憶されたプログラムを実行することによって、図6に示したDMA制御部142,フラグ制御部143,割り込み受信部144としての動作を行う。
<動作例>
次に、伝送装置10の制御装置13及びCPU14の動作例について説明する。
<<第1動作例>>
図7は、第1動作例におけるCPU14の処理例を示すフローチャートである。ここに、CPU14は、種別数に応じた個数、又はマルチコア構成を有し、第1領域16a,第
2領域16bのそれぞれについて、図7に示す処理を並列に実行可能である。以下の説明は、第1領域16aに関連づけられた図7の処理について説明する。
次に、伝送装置10の制御装置13及びCPU14の動作例について説明する。
<<第1動作例>>
図7は、第1動作例におけるCPU14の処理例を示すフローチャートである。ここに、CPU14は、種別数に応じた個数、又はマルチコア構成を有し、第1領域16a,第
2領域16bのそれぞれについて、図7に示す処理を並列に実行可能である。以下の説明は、第1領域16aに関連づけられた図7の処理について説明する。
001の処理では、CPU14は、割り込み通知(MSI割り込み)が割り込み受信部144にて受信されたか否かを判定する。割り込み通知があると判定される場合には、処理が002に進み、そうでない場合には処理が001に戻る。
002の処理では、CPU14は、割り込み内容解析部147において、受信した割り込みから、該当種別の“書き込み開始アドレス”と“受信量”とを確認する。すなわち、第1領域16aに貯まったデータの量を確認する。
003の処理では、“書き込み開始アドレス”と“受信量”とを用いてポインタ(開始アドレス)及びデータ長(length:リード量)とを算出する。すなわち、CPU14が第1領域から1回の読み出しで読み出したいデータ量が算出される。
004の処理では、CPU14は、高優先メモリ(第1領域16a)のRCVビットによる割り込みか否かを判定する。高優先メモリの割り込みであると判定される場合には処理が005に進み、そうでなければ006に処理が進む。
005の処理では、CPU14は高優先メモリ(第1領域16a)に対する1回のDMAのバースト量を設定し、処理を007に進める。このとき、CPU14は、1回のバースト量を低優先メモリ(第2領域16b)のバースト量よりも大きい値に設定する。バースト量は、1回のDMAによって読み出されるデータ量を示す。
006の処理では、CPU14は低優先メモリ(第2領域16b)に対する1回のDMAのバースト量を設定、処理を007に進める。このとき、CPU14は、1回のバースト量を高優先メモリ(第1領域16a)のバースト量よりも小さい値に設定する。バースト量は、1回のDMAによって読み出されるデータ量(読み出し量)を示す。
007の処理では、CPU14は、DMAを実行する。すなわち、CPU制御部145がDMA制御部142に対し、対応する記憶領域(第1領域16a又は第2領域16b)からの読み出し要求を発行する。DMA制御部142は、QUE制御部134に第1領域16aからの1回のバースト量のデータの読み出しを指示し、DMA転送FIFO136を介して受け取るデータブロック(切替情報)をCPU制御部145に供給する。
008の処理では、CPU14は、CPU処理、すなわちCPU制御部145による処理が実行される。この結果、第1パスに対する切替指示が発行され、宛先のLIU11へ転送される。これによって、予備系への切替がなされる。
009の処理では、CPU14は、データ長分のデータブロック(切替情報)読み出し済か否かを判定する。このとき、読み出し済と判定される場合には処理が010に進み、そうでない場合には処理が007に進む。
010の処理では、CPU14は、フラグ制御部143を用いて、管理表15の対応する種別(種別A)のRCVビットを“0”に設定する。これにより、QDRメモリ16からの読み出しが停止される。また、CPU14は、第1領域16aの開始アドレス(ポインタ)を更新する。すなわち、1回のバースト量分だけ、開始アドレスを進める。その後、処理が001に戻る。
なお、第1領域16a(種別A)に係る処理と第2領域16b(種別B)に係る処理と
が並列に行われる結果、読み出しタイミングが衝突する場合には、I/F141などを用いた調停が行われる。
が並列に行われる結果、読み出しタイミングが衝突する場合には、I/F141などを用いた調停が行われる。
図8は、第1動作例におけるQDRメモリ16の蓄積内容の例を示し、図9は、CPU14への出力を示す。図8には、種別A(高優先)のデータブロックが14個第1領域16aに記憶され、種別B(低優先)のデータブロックが20個第2領域16bに記憶されている場合が図示されている。説明を簡単にするため、1個のデータブロックのサイズは同じである。
この場合に、第1領域16aからの1回のバースト量がデータブロック6個分に設定されたとする。この場合、第1領域16aからデータブロックA−1〜A−6が読み出され、CPU14へ転送される(図8(1),図9(1))。
種別B(低優先)については、CPU14におけるデータブロックA−1〜A−6を用いた処理で、次のデータブロックA−7以降を読み出すことができない時間(データブロックA−1〜A−6のCPU処理時間)内に転送可能な分が読み出し・転送される。そのようなバースト量の設定がなされる。すなわち、データブロックB−1及びB−2が第2領域16bからCPU14へ転送される(図8(2),図9(2))。
その後、第1領域16aからデータブロック6個分のデータ(データブロックA−7〜A−12)がCPU14へ転送され(図8(3),図9(3))、続いてデータブロックB−3及びB−4が第2領域16bから読み出される(図8(4),図9(4))。その後、残りの種別AのデータブロックA−13及びA−14が第1領域16aから読み出される(図8(5),図9(5))。
このように、第1領域16aにデータブロックがなくなった後は、第2領域16bからバースト量分のデータブロックが隙間のないように(CPU処理時間を挟んで)読み出される(図8(6),(7),(8)、図9(6),(7),(8))。
このようにして、第1領域16aに記憶されたデータブロック(第1情報の一例)が第2領域16bに記録されたデータブロック(第2情報の一例)よりも優先して読み出され、各データブロックに基づく処理が優先的に実行される。
<<第2動作例>>
図10は、第2動作例におけるCPU14の処理例を示すフローチャートである。CPU14は、第1動作例と同様に、種別数に応じた個数、又はマルチコア構成を有し、第1領域16a,第2領域16bのそれぞれについて、図10に示す処理を並列に実行可能である。以下の説明は、第1領域16aに関連づけられた図10の処理について説明する。
図10は、第2動作例におけるCPU14の処理例を示すフローチャートである。CPU14は、第1動作例と同様に、種別数に応じた個数、又はマルチコア構成を有し、第1領域16a,第2領域16bのそれぞれについて、図10に示す処理を並列に実行可能である。以下の説明は、第1領域16aに関連づけられた図10の処理について説明する。
101〜106の処理は、図7に示した001〜006の処理と同じであるので説明を省略する。107の処理において、CPU14は、高優先データ(第1領域16aから読み出されるデータブロック)のCPU14への転送中でないか否かを判定する。転送中であれば、転送が完了するまで、107の処理を繰り返す状態となる。転送が完了し、伝送中でないと判定される場合、処理が108に進む。
108,110,112の処理は、図7に示した第1動作例における007,009,010の処理と同じであるので説明を省略する。第1動作例との差異は、CPU制御部145によるデータブロックを用いた処理の実行と、第1領域16aからの読み出しとが並列に行われることである。第2動作例では、107において、種別Aが読み出し中であれば、種別Bの転送はなされないため、種別Bを読み出す機会を設けることなく、連続して
種別Aのデータブロックを第1領域16aから読み出すことができる。
種別Aのデータブロックを第1領域16aから読み出すことができる。
図11は、第2動作例におけるQDRメモリ16の蓄積内容の例を示し、図12は、CPU14への出力を示す。図12には、種別A(高優先)のデータブロックが14個第1領域16aに記憶され、種別B(低優先)のデータブロックが20個第2領域16bに記憶されている場合が図示されている。説明を簡単にするため、1個のデータブロックのサイズは同じである。
この場合に、第1領域16aからの1回のバースト量がデータブロック6個分に設定されたとする。この場合、第1領域16aからデータブロックA−1〜A−6が読み出され、CPU14へ転送される(図11(1),図12(1))。
種別B(低優先)の読み出しは、種別A(高優先)の読み出しが完了するまで停止される(図10,107)。このため、データブロックA−1〜A−6の読み出しに続いて、次のバースト(データブロックA−7〜A−12)の読み出しが行われる(図11(2),図12(2))。その後、残りのデータブロックA−13及びA−14が種別Bに優先して読み出される(図11(3),図12(3))。
種別Aのデータブロックの全ての転送が完了し、第1領域16aが空になると、第1領域16aに対応するRCVビットがオフとなるので、第1領域16aからの読み出しは停止される。転送完了を契機に、第2領域16bからのデータブロックの読み出しが開始される(図11(4),図12(4)以降)。
第2動作例においても、第1パスに係る種別Aのデータブロックの読み出しが種別Bより優先して行われ、データブロック(切替情報)を用いた処理が種別Bより優先して実行される。
<実施形態の効果>
実施形態によれば、冗長化された第1パスに係る情報(第1情報)の読み出し及び切替に係る処理が第2パスに係る情報(第2情報)の読み出し及び処理に優先して実行される。このため、CPU14における切替情報を用いた処理及び切替指示の出力タイミングを早めることができ、予備系への切替時間を許容範囲内とすることが可能となる。
実施形態によれば、冗長化された第1パスに係る情報(第1情報)の読み出し及び切替に係る処理が第2パスに係る情報(第2情報)の読み出し及び処理に優先して実行される。このため、CPU14における切替情報を用いた処理及び切替指示の出力タイミングを早めることができ、予備系への切替時間を許容範囲内とすることが可能となる。
また、第1動作例に関して説明したように、第1情報のバースト量を第2情報のバースト量より多くすることで、第1情報の読み出し及び処理を優先させることができる。また、第1動作例で説明したように、第1領域16aから読み出された第1情報の処理の間に第2領域16bからの第2情報の読み出しを行うことで、隙間のない第1情報の読み出しが可能となる。
また、第2動作例に関して説明したように、第1領域16aに記憶された第1情報の全ての読み出しが終了するまで第2領域16bからの読み出しを停止することによって、第1情報の読み出し及び処理を優先させることができる。なお、実施形態では優先順位が2段階の場合について説明したが、3段階以上であっても良い。実施形態で説明した構成は、適宜組み合わせることができる。
10・・・伝送装置
11・・・LIU
13・・・制御装置
14・・・CPU
16・・・QDRメモリ
134・・・QUE制御部
135・・・管理表
142・・・DMA制御部
144・・・割り込み受信部
145・・・CPU制御部
11・・・LIU
13・・・制御装置
14・・・CPU
16・・・QDRメモリ
134・・・QUE制御部
135・・・管理表
142・・・DMA制御部
144・・・割り込み受信部
145・・・CPU制御部
Claims (7)
- 伝送路の切替を制御する伝送路切替制御装置において、
複数の伝送路のうち冗長化された第1伝送路の切替に係る第1情報を記憶する第1領域と、前記第1伝送路以外の第2伝送路に係る第2情報を記憶する第2領域とを有する記憶部と、
前記第1領域からの前記第1情報の読み出し及び処理を前記第2領域からの前記第2情報の読み出し及び処理より優先して行う処理部と
を含むことを特徴とする伝送路切替制御装置。 - 前記処理部は、前記第2領域からの一回の読み出し量より多い一回の読み出し量で前記第1領域からの読み出しを行う
請求項1に記載の伝送路切替制御装置。 - 前記処理部は、前記第1領域から読み出された前記第1情報の処理の間に前記第2領域からの前記第2情報の読み出しを行う
請求項1又は2に記載の伝送路切替制御装置。 - 前記処理部は、前記第1領域に記憶された第1情報の全ての読み出しが終了するまで前記第2領域からの読み出しを停止する
請求項1又は2に記載の伝送路切替制御装置。 - 前記第1領域及び前記第2領域のそれぞれについて、情報の書き込み開始位置と、対応する領域に記憶された情報量と、対応する領域に記憶された情報の有無を示すフラグとを記憶する管理表と、
障害が検出された第1伝送路の第1情報を前記第1領域に書き込み、前記第1領域に係る書き込み開始位置及び情報量を更新するとともに前記第1領域に係る前記フラグを情報ありに設定する処理と、障害が検出された第2伝送路の第2情報を前記第2領域に書き込み、前記第2領域に係る書き込み開始位置及び情報量を更新するとともに前記第2領域に係る前記フラグを情報ありに設定する処理とを行う書き込み部とをさらに含み、
前記処理部は、前記フラグの情報有りの設定により発生する割り込みを検出し、前記フラグに対応する領域の書き込み開始位置及び情報量から対応する領域の読み出し開始位置を割り出し、前記読み出し開始位置からの読み出しを行う
請求項1から4のいずれか1項に記載の伝送路切替制御装置。 - 複数の伝送路のうち冗長化された第1伝送路の切替に係る第1情報を第1領域に記憶し、
前記第1伝送路以外の第2伝送路に係る第2情報を第2領域に記憶し、
前記第1情報を用いた前記切替に係る処理と前記第2情報を用いた処理とを行う処理部において、前記第1領域からの前記第1情報の読み出し及び前記切替に係る処理を前記第2領域からの前記第2情報の読み出し及び処理より優先して行う
ことを含む伝送路切替制御方法。 - 信号を伝送する複数の伝送路を収容する収容部と、
複数の伝送路のうち冗長化された第1伝送路の切替に係る第1情報を記憶する第1領域と、前記第1伝送路以外の第2伝送路に係る第2情報を記憶する第2領域とを有する記憶部と、
前記第1領域からの前記第1情報の読み出し及び処理を前記第2領域からの前記第2情報の読み出し及び処理より優先して行う処理部と
を含む伝送装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016147205A JP2018019209A (ja) | 2016-07-27 | 2016-07-27 | 伝送路切替制御装置,及び伝送路切替制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016147205A JP2018019209A (ja) | 2016-07-27 | 2016-07-27 | 伝送路切替制御装置,及び伝送路切替制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018019209A true JP2018019209A (ja) | 2018-02-01 |
Family
ID=61082059
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016147205A Pending JP2018019209A (ja) | 2016-07-27 | 2016-07-27 | 伝送路切替制御装置,及び伝送路切替制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018019209A (ja) |
-
2016
- 2016-07-27 JP JP2016147205A patent/JP2018019209A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10402361B2 (en) | Storage system | |
US7631244B2 (en) | Soft error correction method, memory control apparatus and memory system | |
WO2011065354A1 (ja) | バスモニタ回路及びバスモニタ方法 | |
JP2008097646A (ja) | データ処理装置およびトレース信号発生方法 | |
JP4632099B2 (ja) | メモリ制御装置及びその制御方法 | |
JP2010211322A (ja) | ネットワークプロセッサ、受信コントローラ、及びデータ受信処理方法 | |
US8144606B1 (en) | Interfacing messages between a host and a network | |
JP6517474B2 (ja) | プログラマブルコントローラ、及び演算処理システム | |
JP2018019209A (ja) | 伝送路切替制御装置,及び伝送路切替制御方法 | |
US20140281043A1 (en) | System and method for transferring data between components of a data processor | |
JP6056576B2 (ja) | 割り込み要因を特定する方法及び装置 | |
JP4410270B2 (ja) | バス制御装置 | |
JP4947722B2 (ja) | インタフェース制御回路および情報処理装置 | |
US8392621B2 (en) | Managing dataflow in a temporary memory | |
CN115473795A (zh) | 发送流量的方法以及装置 | |
JP2017098700A (ja) | 伝送装置及び情報転送方法 | |
JP6535516B2 (ja) | マルチ・プログラマブルデバイス・システムとその制御方法 | |
KR20220132333A (ko) | PCIe 인터페이스 장치 및 그 동작 방법 | |
US20130212338A1 (en) | Multicore processor | |
JPH06188909A (ja) | 異常パケット処理方式 | |
JP2000242523A (ja) | マイクロプロセッサおよびデバッグ装置 | |
WO2019038853A1 (ja) | 転送装置、転送方法および転送プログラム | |
JP2006178614A (ja) | フォルトトレラント・コンピュータとそのバス選択制御方法 | |
JP2010067167A (ja) | データ転送装置 | |
KR20050067324A (ko) | 마스터/슬레이브 디바이스간의 인터페이스 장치 및 그 방법 |