(57)【特許請求の範囲】
【請求項１】
複数のチャネルの信号に所定の処理を行い，該複数のチャネルの信号を伝送する伝送装置において，
１つのチャネルについての１または複数種類の制御データ要素が少なくとも１ワードのデータで構成された第１制御データをチャネルごとに異なる記憶セルに記憶する第１記憶部と，
前記第１記憶部に記憶された前記複数のチャネルの第１制御データから同種類の制御データ要素を選択し，該同種類の制御データ要素が１ワードのデータで構成されるように，前記第１制御データの構造を変換する第１データ構造変換部と，
前記第１データ構造変換部による変換後の第１制御データをワード単位で処理し，前記所定の処理に必要な第２制御データを生成するデータ生成部と，
を有することを特徴とする伝送装置。
【請求項２】
複数のチャネルの信号に所定の処理を行い，該複数のチャネルの信号を伝送する伝送装置におけるデータ処理方法であって，
１つのチャネルについての１または複数種類の制御データ要素が少なくとも１ワードのデータで構成された第１制御データをチャネルごとに異なる記憶セルに記憶し，
前記記憶セルに記憶された前記複数のチャネルの第１制御データから同種類の制御データ要素を選択し，該同種類の制御データ要素が１ワードのデータで構成されるように，前記第１制御データの構造を変換し，
前記変換後の第１制御データをワード単位で処理し，前記所定の処理に必要な第２制御データを生成する，
データ処理方法。
【請求項３】
複数のチャネルの信号に所定の処理を行い，該複数のチャネルの信号を伝送する伝送装置におけるデータ変換方法であって，
１つのチャネルについての１または複数種類の制御データ要素が少なくとも１ワードのデータで構成された第１制御データをチャネルごとに異なる記憶セルに記憶し，
前記記憶セルに記憶された前記複数のチャネルの第１制御データから同種類の制御データ要素を選択し，該同種類の制御データ要素が１ワードのデータで構成されるように，前記第１制御データの構造を変換する，
データ変換方法。
【請求項４】
複数のチャネルの信号に所定の処理を行い，該複数のチャネルの信号を伝送する伝送装置におけるコンピュータに，
１つのチャネルについての１または複数種類の制御データ要素が少なくとも１ワードのデータで構成された第１制御データがチャネルごとに異なる記憶セルに記憶されたメモリから，前記複数のチャネルの前記第１制御データを読み出す手順と，
前記読み出した前記複数のチャネルの第１制御データから同種類の制御データ要素を選択し，該同種類の制御データ要素が１ワードのデータで構成されるように，前記第１制御データの構造を変換する手順と，
前記変換後の第１制御データをワード単位で処理し，前記所定の処理に必要な第２制御データを生成する手順と，
を実行させるためのプログラム。
【請求項５】
複数のチャネルの信号に所定の処理を行い，該複数のチャネルの信号を伝送する伝送装置におけるコンピュータに，
１つのチャネルについての１または複数種類の制御データ要素が少なくとも１ワードのデータで構成された第１制御データがチャネルごとに異なる記憶セルに記憶されたメモリから，前記複数のチャネルの前記第１制御データを読み出す手順と，
前記読み出した前記複数のチャネルの第１制御データから同種類の制御データ要素を選択し，該同種類の制御データ要素が１ワードのデータで構成されるように，前記第１制御データの構造を変換する手順と，
前記変換後の第１制御データをワード単位で処理し，前記所定の処理に必要な第２制御データを生成する手順と，
を実行させるためのプログラムを記録したコンピュータ読み取りな可能記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は，複数のチャネルの信号に所定の処理を行い，該複数のチャネルの信号を伝送する伝送装置，該伝送装置におけるデータ処理方法，およびデータ変換方法に関する。また，本発明は，複数のチャネルの信号に所定の処理を行い，該複数のチャネルの信号を伝送する伝送装置におけるコンピュータにデータ処理およびデータ変換を実行させるためのプログラムに関する。
【０００２】
【従来の技術】
通信システムにおいてリアルタイム処理が要求される装置は，従来，高速処理を行うために専用のハードウェア回路によって実現されるのが一般的であった。たとえば，ＳＯＮＥＴ／ＳＤＨ（Synchronous Optical Network／Synchronous Digital Hierarchy）伝送方式の双方向リング（ＢＬＳＲ：Bi-directional Line Switched Ring）システムにおける回線切り替え制御部も，リアルタイム処理が要求されることから，従来，専用のハードウェア回路により実現されていた。
【０００３】
図２１（Ａ）は，ＳＯＮＥＴ／ＳＤＨ伝送方式のＢＬＳＲシステムの構成を示すブロック図である。このＢＬＳＲシステムは，一例として６つのノードｎ１〜ｎ６を有し，各ノード間が４本（４心）の光ファイバにより接続される４ＢＬＳＲシステムである。４本のうち２本は現用回線（Work）として使用され，残りの２本は予備回線（PTCT：Protection）として使用される。現用回線の１本および予備回線の１本は，時計方向への光信号の伝送に使用され，残りの各１本は，反時計方向への光信号の伝送に使用される。
【０００４】
１本の光ファイバには，複数のチャネルがタイムスロットにより多重化（時分割多重化）され，伝送される。たとえばＯＣ（Optical Carrier）−４８の場合にはチャネルｃｈ１〜ｃｈ４８が，ＯＣ−１９２の場合にはチャネルｃｈ１〜ｃｈ１９２が，それぞれ多重化される。
【０００５】
光ファイバまたはノードに障害が発生していない状態（通常状態）においては，現用回線により信号（主信号）の伝送が行われる。一方，光ファイバまたはノードに障害が発生すると，ＡＰＳ（Automatic Protection Switching）プロトコルによる切り替え処理が実行され，予備回線による主信号の伝送が行われる。具体的には，障害の状況に応じて，スパンスイッチ（Span-Switch）およびスパンブリッジ（Span-Bridge），または，リングスイッチ（Ring-Switch）およびリングブリッジ（Ring-Bridge）がノードにおいて実行される。
【０００６】
図２１（Ｂ）は，同図（Ａ）に示すＢＬＳＲシステムにおいて，ノードｎ２とｎ３との間の４本の光ファイバに障害が発生した場合の切り替え処理を示している。ノードｎ２−ｎ３間に障害が発生した場合，ＡＰＳプロトコルによりループバック（ノードｎ２のEast側およびノードｎ３のWest側のそれぞれにおけるリングスイッチおよびリングブリッジ）が実行され，主信号の救済が図られる。
【０００７】
なお，図示は省略するが，ノードｎ２−ｎ３間の現用回線のみに障害が発生した場合には，ループバックではなく，ノードｎ２−ｎ３間の現用回線の主信号を，ノードｎ２−ｎ３間の同一方向の予備回線側に切り替えるスパンスイッチおよびスパンブリッジが実行され，主信号の救済が図られる。たとえば，ノードｎ２からノードｎ３に向かう現用回線に障害が発生すると，ノードｎ２のEast側でスパンブリッジが実行され，主信号が予備回線を介してノードｎ３に伝送される。そして，ノードｎ３のWest側ではスパンスイッチが実行され，予備回線から入力された主信号が現用回線側に戻される。
【０００８】
このようなＡＰＳプロトコルによるノードの切り替え処理は，各ノードに設けられた回線切り替え制御部によって実行される。図２２は，ＢＬＳＲシステムにおける各ノードｎ１〜ｎ６の概略構成を示すブロック図である。
【０００９】
各ノードは，ホストプロセッサ１，回線切り替え制御部２００，スパンスイッチ部３，リングスイッチ部４，スパンブリッジ部５，およびリングブリッジ部６を有する。また，スパンスイッチ部３は，選択回路３１および３２，ならびにＡＩＳ（Alarm Indicated Signal）挿入回路３３および３４を有する。リングスイッチ部４は選択回路４１および４２を，スパンブリッジ部５は選択回路５１および５２を，リングブリッジ部６は選択回路６１および６２を，それぞれ有する。
【００１０】
なお，図示は省略するが，ノード内において主信号は電気信号により処理されるので，入力端には，光ファイバから入力された光信号を電気信号に変換する光電変換器が設けられ，出力端には，電気信号を光信号に変換する光電変換器が設けられる。また，タイムスロットの入れ替え（交換）を行うスイッチ部も設けられる。
【００１１】
ホストプロセッサ１は，ノードの運用管理を行うとともに，ノード間で通信される，ＡＰＳプロトコルによる障害に関する情報，装置の初期設定情報等を保持し，これらの情報を制御データとして回線切り替え制御部２００に与える。
【００１２】
回線切り替え制御部２００は，専用ハードウェア回路により構成される。この回線切り替え制御部２００は，ホストプロセッサ１から与えられた制御データに基づいて，スパンスイッチ部３〜リングブリッジ部６の各選択回路および／またはＡＩＳ挿入回路を制御するための制御信号を生成し，この制御信号をこれらの回路に与える。
【００１３】
この制御信号に基づいて，選択回路３１，３２，４１，４２，５１，５２，６１，および６２は，入力される２つの主信号の一方を選択して出力する。また，ＡＩＳ挿入回路３３および３４は，制御信号に基づいてＡＩＳを出力し，主信号内にＡＩＳを挿入する。これにより，通常時の主信号の送受信および障害発生時の切り替え処理（リングスイッチおよびリングブリッジ，または，スパンスイッチおよびスパンブリッジ）が実行される。
【００１４】
たとえば，スパンスイッチおよびスパンブリッジでは，現用回線のチャネルは同方向の予備回線のチャネルに切り替えられるとともに，予備回線のチャネルにＡＩＳが挿入される。リングスイッチおよびリングブリッジでは現用回線のチャネルは逆方向の予備回線のチャネルに切り替えられる。
【００１５】
【発明が解決しようとする課題】
しかし，ハードウェア回路により回線切り替え部を実現した場合に，ＩＴＵ−Ｔ等の標準勧告仕様の変更や小規模の仕様変更／追加／機能向上を行うごとに再度ハードウェア設計を行い，ハードウェアを作り直す必要がある。このため，開発期間が延びコストも増大していた。
【００１６】
一方で，早期の製品開発／出荷も要求されている。このため，リアルタイム処理が要求される回線切り替え制御部についても，ハードウェア回路ではなく，ソフトウェア（プログラム）によりその機能を実現し，安価な装置を短期間で開発することが求められている。
【００１７】
図２３は，回線切り替え制御部２００の処理をソフトウェアにより実現する場合の該回線切り替え制御部２００の従来の構成を示すブロック図である。回線切り替え制御部２００は，ＣＰＵ（ＲＩＳＣプロセッサ）２０１，メモリ（２ポートＲＡＭ）２０２および２０５，ワークメモリ（ＲＡＭ）２０３，命令格納メモリ（ＲＯＭ）２０４，ならびにパラレル／シリアル変換器（ＰＳ）２０６1〜２０６4を有する。
【００１８】
メモリ２０２には，ホストプロセッサ１から与えられる制御データが記憶される。図２４は，メモリ２０２に記憶された制御データを示している。
【００１９】
ホストプロセッサ１から与えられる制御データは，所定のアドレス（ここではＸ番地）から順に各メモリセルに記憶される。各メモリセルは３２ビットを有する。図中，各メモリセルの右端が第１ビット（最下位ビット）であり，左端が第３２ビット（最上位ビット）である。
【００２０】
制御データは，複数のチャネル単位（またはリング単位）（図２４で２４チャネル単位）で設けられる回線制御データ（Ａ，Ｂ，Ｃ，Ｄ，Ｘ，Ｙ）と，各チャネル単位に設けられる回線設定データ（チャネル設定データ）とを有する。
【００２１】
回線制御データには，２ビットのノード障害データＡ（以下「ＢＳＣ」ともいう。），１ビットのリングブリッジトリガデータＢ（以下「ＢＲ」ともいう。），１ビットのリングスイッチトリガデータＣ（以下「ＳＷ」ともいう。），１ビットの装置試験用制御データＤ（以下「TESTcont」ともいう。），１ビットのスパンスイッチトリガデータＸ（以下「Spanswcont」ともいう。），および１ビットのスパンブリッジトリガデータＹ（以下「Spanbrcont」ともいう。）が含まれる。
【００２２】
回線制御データは，図２４では２４チャネル単位に設けられる。具体的には，ノードのWest（入力側）からEast（出力側）に向かう（以下「East側」という。）チャネルｃｈ１〜ｃｈ２４に対して１組の回線制御データが設けられ，ノードのEast（入力側）からWest（出力側）に向かう（以下「West側」という。）チャネルｃｈ１〜ｃｈ２４に対して１組の回線制御データが設けられる。
【００２３】
チャネル数が２５以上ある場合には，同様にして，East側チャネルｃｈ２５〜ｃｈ４８までの２４チャネルに対して１組の回線制御データが設けられ，West側チャネルｃｈ２５〜ｃｈ４８までの２４チャネルに対して１組の回線制御データが設けられる。
【００２４】
ノード障害データＡ（ＢＳＣ）は，Ａ＝０の場合に障害が発生していないことを示し，Ａ＝１の場合に他のノードで障害が発生していることを示し，Ａ＝２の場合に自ノードのEast側チャネルに障害が発生していることを示し，Ａ＝３の場合に自ノードのWest側チャネルに障害が発生していることを示す。
【００２５】
リングブリッジトリガデータＢ（ＢＲ）は，Ｂ＝０の場合にリングブリッジを行わないことを示し，Ｂ＝１の場合にリングブリッジを行うことを示す。リングスイッチトリガデータＣ（ＳＷ）は，Ｃ＝０の場合にリングスイッチを行わないことを示し，Ｃ＝１の場合にリングスイッチを行うことを示す。装置試験用制御データＤ（TESTcont）は，Ｄ＝０の場合に装置試験を行わず，Ｄ＝１の場合に装置試験を行うことを示す。
【００２６】
スパンスイッチトリガデータＸ（Spanswcont）は，Ｘ＝０の場合にスパンスイッチを行わないことを示し，Ｘ＝１の場合にスパンスイッチを行うことを示す。スパンブリッジトリガデータＹ（Spanbrcont）は，Ｙ＝０の場合にスパンブリッジを行わないことを示し，Ｙ＝１の場合にスパンブリッジを行うことを示す。
【００２７】
回線設定データには，制御データ要素として，１ビットのＮＵＴチャネル（ＢＬＳＲによる救済を行わないチャネル）設定データＥ（以下，単に「ＮＵＴ」ともいう。），１ビットのサブマリンスイッチ制御データＦ（以下「SubmarineSW」ともいう。），１ビットの装置試験用リングスイッチ制御データＧ（以下「RingSWcont」ともいう。），１ビットのサブマリンブリッジ制御データＳ（以下「SubmarineBR」ともいう。），および１ビットの装置試験用リングブリッジ制御データＴ（以下「RingBRcont」ともいう。）が含まれる。これらの回線設定データは各チャネルに対して設けられる。
【００２８】
データＥ（ＮＵＴ）は，Ｅ＝０の場合に，対応するチャネルをＢＬＳＲにより救済するチャネルに設定し，Ｅ＝１の場合に，対応するチャネルをＢＬＳＲにより救済しないチャネルに設定することを示す。データＦ（SubmarineSW）は，Ｆ＝０の場合にサブマリンスイッチを行わず，Ｆ＝１の場合にサブマリンスイッチを行うことを示す。
【００２９】
データＧ（RingSWcont）は，Ｇ＝０の場合に装置試験用リングスイッチを行わず，Ｇ＝１の場合に装置試験用リングスイッチを行うことを示す。データＳ（SubmarineBR）は，Ｓ＝０の場合にサブマリンブリッジを行わず，Ｓ＝１の場合にサブマリンブリッジを行うことを示す。データＴ（RingBRcont）は，Ｔ＝０の場合に装置試験用リングブリッジを行わず，Ｔ＝１の場合に装置試験用リングブリッジを行うことを示す。
【００３０】
これらの回線制御データおよび回線設定データは，制御信号データに変換され，メモリ２０５に記憶される。
【００３１】
制御信号データには，図２５に示すように，データ要素として，リングスイッチ制御データＨ（以下「RingSW」ともいう。），リングブリッジ制御データＩ（以下「RingBR」ともいう。），スパンスイッチ制御データＪ（以下「SpanSW」ともいう。），およびスパンブリッジ制御データＫ（以下「SpanBR」ともいう。）が含まれる。これらの制御信号データは，East側の各チャネルおよびWest側の各チャネルに対して設けられる。
【００３２】
East側リングスイッチ制御データＨは，リングスイッチ部４の選択回路４１に与えられる。West側リングスイッチ制御データＨは，リングスイッチ部４の選択回路４２に与えられる。選択回路４１および４２は，Ｈ＝０の場合には第１入力（現用回線）側の主信号を選択／出力し，Ｈ＝１の場合には第２入力（予備回線）側の主信号を選択／出力する。
【００３３】
East側リングブリッジ制御データＩは，リングブリッジ部６の選択回路６１に与えられる。West側リングスイッチ制御データＩは，リングブリッジ部６の選択回路６２に与えられる。選択回路６１および６２は，Ｉ＝０の場合には第１入力（現用回線）側の主信号を選択／出力し，Ｉ＝１の場合には第２入力（予備回線）側の主信号を選択／出力する。
【００３４】
East側スパンスイッチ制御データＪは，スパンスイッチ部３の選択回路３１およびＡＩＳ挿入回路３３に与えられる。West側スパンスイッチ制御データＪは，スパンスイッチ部３の選択回路３２およびＡＩＳ挿入回路３４に与えられる。選択回路３１および３２は，Ｊ＝０の場合には第１入力（現用回線）側の主信号を選択／出力し，Ｊ＝１の場合には第２入力（予備回線）側の主信号を選択／出力する。また，ＡＩＳ挿入回路３３および３４は，Ｊ＝１の場合にＡＩＳを挿入／出力し，Ｊ＝０の場合には挿入／出力を行わない。
【００３５】
East側スパンブリッジ制御データＫは，スパンブリッジ部５の選択回路５１に与えられる。West側スパンスイッチ制御データＫは，スパンブリッジ部５の選択回路５２に与えられる。選択回路５１および５２は，Ｋ＝０の場合には第１入力（現用回線）側の主信号を選択／出力し，Ｋ＝１の場合には第２入力（予備回線）側の主信号を選択／出力する。
【００３６】
従来，ハードウェアにより実行されていた，回線制御データおよび回線設定データを制御信号データＨ〜Ｋに変換する処理をそのままソフトウェアによる処理に置き換えると，図２６に示すフローチャートとなる。このフローチャートは，East側のリングスイッチ制御データＨを生成する部分のみを示している。また，図２７は，このフローチャートに示す処理をプログラム言語Ｃ（Ｃ言語）およびＲＩＳＣプロセッサのアセンブリ言語で記述したプログラム例である。このプログラムは，命令格納メモリ２０４に格納されている。
【００３７】
ＣＰＵ２０１は，まず，チャネル番号を指定するインデックスとして使用される変数ｉを１に初期化し（Ｓ１０１），続いて，チャネルｃｈｉのＮＵＴが０であるかどうかを判定する（Ｓ１０２）。
【００３８】
ＣＰＵ２０１は，チャネルｃｈｉのＮＵＴが０でないならば（Ｓ１０２でＮ），チャネルｃｈｉのRingSW（データＨ）を０にし（Ｓ１０９），ＮＵＴが０であるならば（Ｓ１０２でＹ），TESTcontが０であるかどうかを判定する（Ｓ１０３）。
【００３９】
ＣＰＵ２０１は，TESTcontが０でないならば（Ｓ１０４でＮ），RingSWをRingSWcontの値にし（Ｓ１１０），TESTcontが０であるならば（Ｓ１０４でＹ），チャネルｃｈｉのSubmarineSWが，。０であるかどうかを判定する（Ｓ１０４）。
【００４０】
ＣＰＵ２０１は，SubmarineSWが０でないならば（Ｓ１０４でＮ），RingSWを１にし，SubmarineSWが０であるならば（Ｓ１０４でＹ），ＢＳＣが２（２進数表記では“１０”）であり，かつ，ＳＷが１であるかどうかを判定する（Ｓ１０５）。
【００４１】
ＣＰＵ２０１は，ＢＳＣが２であり，かつ，ＳＷが１であるならば（Ｓ１０５でＹ），RingSWを１にし（Ｓ１０６），それ以外の場合には（Ｓ１０５でＮ），RingSWを０にする（Ｓ１１２）。
【００４２】
その後，ＣＰＵ２０１は，変数ｉを１つインクリメントし，次のチャネルのデータＨを生成する（Ｓ１０７，Ｓ１０８）。このような処理がチャネル数Ｎ（たとえばＮ＝２４）回繰り返される。
【００４３】
このように，従来のハードウェア処理をそのままソフトウェアにより実現すると，チャネル単位の処理を収容されているチャネル数分繰り返すために，処理時間が長くなり許容時間内に処理できないという問題がある。
【００４４】
たとえば，図２７に示すように，ＲＩＳＣプロセッサの命令では，１チャネル当たり２２ステップを要する。リングブリッジ制御信号Ｉの生成も同様の処理なのでステップ数もほぼ同数となる。したがって，リングステップおよびリングブリッジを実行する場合には，ステップ数は約４４ステップとなる。
【００４５】
ＯＣ−１９２の４ＢＬＳＲシステムでは，７６８チャネルの処理を行う必要があるので，７６８×４４＝３３７９２（ステップ）を要する。
【００４６】
ＣＰＵ２０１の動作周波数を１００ＭＨｚ，１ステップの実行に要するクロック数を１クロックとすると，３３７９２×１０［ナノ秒］=３３８［マイクロ秒］を要することとなる。
【００４７】
これは，あくまでもリングスイッチ制御データＨおよびリングブリッジ制御データＩを生成するために必要な時間の一例であり，実際の処理は，ＲＩＰ（Ring Interworking on Protection）機能等を実現しているため，より複雑であり，さらに多くのステップ数を要する。
【００４８】
このため，回線切り替え設定部２００の機能をソフトウェアにより実現した場合に，障害が発生してから切り替えが完了するまでの許容時間（たとえば５０ミリ秒）を超えるおそれがあった。
【００４９】
ソフトウェア処理を高速化させるためには，ＣＰＵの動作周波数を上げたり，ＣＰＵのバンド幅（処理ビット数）を上げたり，あるいは，マルチプロセッサにする等が考えられるが，消費電力が増大し，また，ハードウェアの規模およびコストが増加することから好ましい対策ではない。
【００５０】
したがって，制御信号データＨ，Ｉ等を生成する処理に要するステップ数を減少させ，処理に要する時間を短縮する必要がある。
【００５１】
本発明は，このような背景に鑑みなされたものであり，その目的は，ＢＬＳＲシステムにおけるノード等の伝送装置におけるデータ処理の処理数を削減することにある。
【００５２】
【課題を解決するための手段】
前記目的を達成するために，本発明による伝送装置は，複数のチャネルの信号に所定の処理を行い，該複数のチャネルの信号を伝送する伝送装置において，１つのチャネルについての１または複数種類の制御データ要素が少なくとも１ワードのデータで構成された第１制御データをチャネルごとに異なる記憶セルに記憶する第１記憶部と，前記第１記憶部に記憶された前記複数のチャネルの第１制御データから同種類の制御データ要素を選択し，該同種類の制御データ要素が１ワードのデータで構成されるように，前記第１制御データの構造を変換する第１データ構造変換部と，前記第１データ構造変換部による変換後の第１制御データをワード単位で処理し，前記所定の処理に必要な第２制御データを生成するデータ生成部と，を有することを特徴とする。
【００５３】
本発明によるデータ処理方法は，複数のチャネルの信号に所定の処理を行い，該複数のチャネルの信号を伝送する伝送装置におけるデータ処理方法であって，１つのチャネルについての１または複数種類の制御データ要素が少なくとも１ワードのデータで構成された第１制御データをチャネルごとに異なる記憶セルに記憶し，前記記憶セルに記憶された前記複数のチャネルの第１制御データから同種類の制御データ要素を選択し，該同種類の制御データ要素が１ワードのデータで構成されるように，前記第１制御データの構造を変換し，前記変換後の第１制御データをワード単位で処理し，前記所定の処理に必要な第２制御データを生成するものである。
【００５４】
本発明によるデータ変換方法は，複数のチャネルの信号に所定の処理を行い，該複数のチャネルの信号を伝送する伝送装置におけるデータ変換方法であって，１つのチャネルについての１または複数種類の制御データ要素が少なくとも１ワードのデータで構成された第１制御データをチャネルごとに異なる記憶セルに記憶し，前記記憶セルに記憶された前記複数のチャネルの第１制御データから同種類の制御データ要素を選択し，該同種類の制御データ要素が１ワードのデータで構成されるように，前記第１制御データの構造を変換するものである。
【００５５】
また，本発明によるプログラムは，前記データ処理方法またはデータ変換方法をコンピュータに実行させるためのものであり，本発明によるコンピュータ読み取り可能な記録媒体は，本発明によるプログラムを該記録媒体に記録したものである。
【００５６】
本発明によると，複数のチャネルの第１制御データから同種類の制御データ要素が選択され，該同種類の制御データ要素が１ワードのデータで構成される。こおのため，１ワードのデータ内には，複数のチャネルの同種類の制御データ要素が含まれている。したがって，データ生成部の処理が，中央処理装置（ＣＰＵ）により実行されるプログラム（ソフトウェア）により記述されている場合であっても，ＣＰＵは，１ワードのデータ処理で，複数のチャネルの同種類の制御データ要素の処理を実行することができる。
【００５７】
これにより，処理数が削減され，処理に要する時間を短縮することができる。また，ソフトウェアにより機能を実現できることから，処理性能を保ちつつ，仕様変更に柔軟に対応できるシステムを，低コストで，かつ，短期間に開発することが可能となる。
【００５８】
【発明の実施の形態】
＜第１の実施の形態＞
図１は，本発明の第１の実施の形態による回線切り替え制御部２の構成を示すブロック図である。この回線切り替え制御部２は，前述したように，ＢＬＳＲシステムの各ノードに設けられる。ＢＬＳＲシステムの全体構成および各ノードの概略構成は，前述した図２１および図２２にそれぞれ示すものと同じであるので，その説明は省略する。図２２における回線切り替え制御部２００が回線制御部２に置換される。
【００５９】
この回線切り替え制御部２は，ＣＰＵ２０，メモリユニット２１，メモリ２２，ワークメモリ２３，命令格納メモリ２４，およびパラレル／シリアル変換器（ＰＳ）２５1〜２５4を備えている。
【００６０】
ＣＰＵ２０は，たとえばＲＩＳＣプロセッサである。ＣＰＵ２０の１ワード（一度に処理（読み出し／書き込み／演算）できる情報の単位）は，本実施の形態では３２ビットである。
【００６１】
命令格納メモリ２４は，たとえばＲＯＭであり，回線切り替え制御部２の処理（後述するデータ構造変換処理および制御信号データ生成処理を含む。）を記述したプログラムを記憶する。このプログラムは，ＣＰＵ２０により実行される。
【００６２】
ワークメモリ２３は，たとえば，各アドレスのメモリセル（１ワード）が３２ビットを有するＲＡＭであり，ＣＰＵ２０の処理において生成される中間データ等を記憶する。中間データには，ホストプロセッサ１から与えられた回線制御データおよび回線設定データのデータ構造を変換したもの（後述する図５参照）が含まれる。
【００６３】
メモリ２２は，たとえば，各アドレスのメモリセル（１ワード）が３２ビットを有する２ポートＲＡＭである。このメモリ２２には，一方のポートからＣＰＵ２０により制御信号データ（後述する図１４参照）が書き込まれ，他方のポートからこの制御信号データが読み出され，ＰＳ２５1〜２５4に与えられる。
【００６４】
ＰＳ２５1〜２５4（以下「ＰＳ２５」と総称する場合がある。）は，メモリ２２から与えられるパラレルデータ（たとえば３２ビットデータ）をシリアルデータ（ビット列）に変換して出力する。
【００６５】
ＰＳ２５1は，East側およびWest側のスパンスイッチ制御データＪをスパンスイッチ部３（図２２参照）に出力する。ＰＳ２５2は，East側およびWest側のリングスイッチ制御データＨをリングスイッチ部４（図２２参照）に出力する。ＰＳ２５3は，East側およびWest側のスパンブリッジ制御データＫをスパンブリッジ部５（図２２参照）に出力する。ＰＳ２５4は，East側およびWest側のリングブリッジ制御データＩをリングブリッジ部６（図２２参照）に出力する。各データＨ〜ＫのEast側およびWest側のデータは，時分割により，最初にEast側データが出力され，次にWest側データが出力される。
【００６６】
メモリユニット２１は，図２に示す構成を有し，メモリ２１ａ，遅延素子（ディレイ）２１ｂ，監視装置２１ｃ，およびレジスタ２１ｄを有する。
【００６７】
メモリ２１ａは，たとえば，各アドレスのメモリセル（１ワード）が３２ビットを有する２ポートＲＡＭであり，ホストプロセッサ１から与えられた回線制御データおよび回線設定データを記憶する。メモリ２１ａに記憶されたこれら回線制御データおよび回線設定データは，前述した図２４に示すものと同じであるので，ここではその説明を省略する。なお，回線制御データおよび回線設定データが記憶されるアドレス（図２４ではＸ番地以降）およびビット位置はあらかじめ定められている。
【００６８】
これらの回線制御データおよび回線設定データは，メモリ２１ａのアドレス（および書き込みイネーブル信号）とともに，ホストプロセッサ１から遅延素子２１ｂおよび監視装置２１ｃに与えられる。回線制御データおよび回線設定データは，一時にすべてが与えられる場合（たとえば初期設定時（Provisioning））もあるし，変化したチャネルの部分のみのデータが与えられる場合（たとえば運用時における障害発生時）もある。
【００６９】
遅延素子２１ｂは，制御データ（回線制御データ，回線設定データ）およびアドレス（ならびに書き込みイネーブル信号）を，所定の時間の後，メモリ２１ａに出力する。この所定の時間は，以下に述べる監視装置２１ｃによるメモリ２１ａからのデータの読み出しが終了するまでの時間であり，たとえばＣＰＵ２０に与えられるクロック信号の数クロック分の時間である。
【００７０】
メモリ２１ａは，遅延素子２１ｂから与えられたアドレスが指定するメモリセルに，遅延素子２１ｂから与えられた制御データ（回線制御データまたは回線設定データ）を記憶する。これにより，メモリ２１ａのメモリセルの内容が更新される。
【００７１】
監視装置２１ｃは，ホストプロセッサ１からデータおよびアドレスを受け取ると，受け取ったアドレスが指定するメモリセルに記憶されたデータをメモリ２１ａから読み出す。この読み出しは，前述したように，遅延素子２１ｂが，ホストプロセッサ１から受け取ったデータをメモリ２１ａに出力する（書き込む）前に行われる。したがって，監視装置２１ｃがメモリ２１ａから読み出すデータは，ホストプロセッサ１から与えられたデータによってメモリ２１ａが更新（置換）される前のデータである。
【００７２】
監視装置２１ｃは，メモリ２１ａから読み出した制御データ（回線制御データまたは回線設定データ）と，ホストプロセッサ１から受け取った制御データ（回線制御データまたは回線設定データ）とを比較する。監視装置２１ｃは，比較の結果，両データが異なる場合には，レジスタ２１ｄの所定のビットに“１”を書き込む。
【００７３】
レジスタ２１ｄはたとえば３２ビットを有する。レジスタ２１ｄの各ビットは１または２以上のチャネルに対応している。たとえば，第１ビットは，East側のチャネルｃｈ１〜ｃｈ２４およびWest側のチャネルｃｈ１〜ｃｈ２４の計４８チャネルに対応している。第２ビットは，East側のチャネルｃｈ２５〜ｃｈ４８およびWest側のチャネルｃｈ２５〜ｃｈ４８の計４８チャネルに対応している。他のビットについても同様である。このように１または２以上のチャネルを各ビットに対応させることにより，変化のあったビットに対応するチャネルの処理のみを行うことが可能となる。
【００７４】
監視装置２１ｃは，比較の結果，回線制御データおよび／または回線設定データに変化がある場合には，レジスタ２１ｄの対応するビットに“１”を書き込み，変化がない場合には，書き込みを行わない。
【００７５】
たとえばEast側および／またはWest側のチャネルｃｈ１〜ｃｈ２４の少なくとも１つの回線設定データに変化がある場合に，監視装置２１ｃは，レジスタ２１ｄの第１ビットに“１”を書き込む。また，East側および／またはWest側のチャネルｃｈ１〜ｃｈ２４の回線制御データ（Ｘ番地，（Ｘ＋１）番地，（Ｘ＋２６）番地，または（Ｘ＋２７）番地のデータ）に変化がある場合も，レジスタ２１ｄの第１ビットに“１”を書き込む。他のチャネルについても同様の処理が行われる。
【００７６】
ＣＰＵ２０は，所定の時間間隔でレジスタ２１ｄをポーリングし，レジスタ２１ｄの値を読み出す。この所定の時間間隔は，切り替えの許容時間（約５０ミリ秒）よりも十分に短い時間（たとえば数ミリ秒，数〜数百マイクロ秒）であることが好ましい。
【００７７】
ＣＰＵ２０は，レジスタ２１ｄの少なくとも１ビットの値が“１”である場合には，回線制御データおよび／または回線設定データに変化があると判断し，データ構造変換処理および制御信号データ生成処理を開始する。これにより，回線制御データおよび／または回線設定データの変化に同期してデータ構造変換処理等を開始することができる。
【００７８】
これらデータ構造変換処理および制御信号データ生成処理の前または後に，ＣＰＵ２０はレジスタ２１ｄの全ビットを“０”にリセットする。
【００７９】
まず，ＣＰＵ２０は，データ構造変換処理を実行し，その後，制御信号データ生成処理を実行する。
【００８０】
データ構造変換処理は，メモリ２１ａの各メモリセルに記憶された各チャネルの回線設定データ（図２４参照）を，図５に示すように，ワークメモリ２３の１つのメモリセル（１ワード）内に並べ換える処理である。
【００８１】
図５は，データ構造変換処理後の回線設定データを示している。この図５は，East側のチャネル数およびWest側のチャネル数が，ともに２４チャネルである場合の例を示している。
【００８２】
East側のチャネルｃｈ１〜ｃｈ２４の各ＮＵＴ設定データＥは，１つのメモリセルの第１ビットから第２４ビットに向けて順に格納される。すなわち，メモリ２１ａでは，図２４に示すように，アドレス（Ｘ＋２）番地から（Ｘ＋２５）番地まで直列に配置されていたデータＥが，ワークメモリ２３では，図５に示すように，アドレスＺ番地の１つのメモリセル内に並列に配置されている。West側２４チャネル分のＮＵＴ設定データＥも同様である。他の回線設定データＦ，Ｇ，Ｓ，およびＴについても同様に変換される。
【００８３】
なお，East側およびWest側ともに２５チャネル以上存在する場合には，２４チャネル分の回線設定データごとにメモリセルに並列に配置される。たとえばチャネルｃｈ２５〜ｃｈ４８の２４チャネル分のデータＥは，アドレス（Ｚ＋１）番地に格納される。
【００８４】
図３は，このようなデータ構造変換処理の流れを示すフローチャートである。このフローチャートは，一例として，East側チャネルｃｈ１〜ｃｈ２４の回線設定データＥ，Ｆ，Ｇ，Ｓ，Ｔのデータ構造変換処理を示している。
【００８５】
まず，ＣＰＵ２０は，チャネル番号を指定するインデックスとして使用される変数ｉを０にし，回線設定データの種類を指定するインデックスとして使用される変数ｊを０にする（Ｓ１）。また，ＣＰＵ２０は，一時記憶用の１ワード変数ｔｍｐ（３２ビット）に０を代入する（Ｓ１）。
【００８６】
続いて，ＣＰＵ２０は，メモリ２１ａの（Ｘ＋２＋ｉ）番地の回線設定データ（すなわちチャネルｃｈ（ｉ＋１）の回線設定データ，以下「ＣＨ［ｉ］データ」という。）の第ｊビット以外のビットの値を０にマスクする（Ｓ２）。これにより，処理対象となっている回線設定データ（たとえばｊ＝０ならばＮＵＴチャネル設定データＥ，ｊ＝１ならばサブマリンスイッチ制御データＦ）以外の値は０にされる。
【００８７】
続いて，ＣＰＵ２０は，マスクされたＣＨ［ｉ］データをビット数ｊだけ右にシフトした後，ビット数ｉだけ左にシフトする（Ｓ３）。これにより，チャネルｃｈ１のパラメータは第１ビット（最下位ビット）に，チャネルｃｈ２のパラメータは第２ビットに，チャネルｃｈｉのパラメータは第（ｉ＋１）ビットに，というように移動する。
【００８８】
続いて，ＣＰＵ２０は，シフトした値と変数ｔｍｐとの論理和演算（ＯＲ演算）を実行し，演算結果を変数ｔｍｐに代入する（Ｓ４）。その後，ＣＰＵ２０は，変数ｉを１つインクリメントし（Ｓ５），変数ｉとチャネル数Ｎ（ここではＮ＝２４）とを比較する（Ｓ６）。
【００８９】
変数ｉがチャネル数Ｎより小さいならば（Ｓ６でＹＥＳ），再びステップＳ２〜Ｓ６の処理が繰り返される。ステップＳ２〜Ｓ５の処理をＮ回繰り返すことにより，１つの回線設定データについてチャネルｃｈ１〜ｃｈＮのＮチャネル分のデータが，１ワード変数ｔｍｐに格納される。
【００９０】
ステップＳ６において，変数ｉがＮ以上であるならば（Ｓ６でＮＯ），ＣＰＵ２０は，変数ｔｍｐの値をワークメモリ２３のアドレス（Ｚ＋ｊ）に書き込む（Ｓ７）。
【００９１】
続いて，ＣＰＵ２０は，変数ｊを１つインクリメントし（Ｓ８），変数ｊと回線設定データの個数Ｍ（ここではＭ＝５）とを比較する（Ｓ９）。変数ｊがＭより小さいならば（Ｓ９でＹＥＳ），ＣＰＵ２０は，再びステップＳ２に戻り，ステップＳ２からの処理を繰り返す。変数ｊがＭ以上であるならば（Ｓ９でＮＯ），ＣＰＵ２０は，処理を終了する。これにより，図２２に示す回線設定データのデータ構造は，図５に示すデータ構造に変換される。
【００９２】
West側チャネルｃｈ１〜ｃｈ２４の回線設定データＥ，Ｆ，Ｇ，ＳおよびＴについても，同様の処理が行われる。
【００９３】
なお，図４（Ｃ）は，このようなデータの並べ替えを一般化したプログラム例（プログラム言語Ｃによるプログラム例）を示し，このプログラムは，同図（Ａ）の左側に示すデータ構造で記憶されたデータを，右側に示すデータ構造に変換するものである。
【００９４】
次に，ＣＰＵ２０は，回線制御データおよび構造変換された回線設定データ（図５参照）に基づいて制御信号データ生成処理を実行し，制御信号データＨ〜Ｋを生成する。
【００９５】
図６は，制御信号データＨ（リングスイッチ制御データ）の生成処理の流れを示すフローチャートである。このフローチャートも，East側チャネルｃｈ１〜ｃｈ２４を例にした処理である。図７は，図６のフローチャートに対応するＣ言語によるプログラム例およびＲＩＳＣプロセッサのアセンブリ言語によるプログラム例である。
【００９６】
まず，ＣＰＵ２０は，ＢＳＣ（ノード障害データＡ）が２と等しいかどうかと，ＳＷ（リングスイッチトリガデータＣ）が１に等しいかどうかとを判断する（Ｓ１１）。
【００９７】
ＢＳＣが２に等しく（すなわち自ノードのEast側チャネルに障害が発生），かつ，ＳＷが１に等しい（すなわちリングスイッチを実行）ならば（Ｓ１１でＹＥＳ），ＣＰＵ２０は，一時記憶用の１ワード（３２ビット）の変数ｔｍｐに１６進数の定数0xFFFFFFを代入する（Ｓ１２）。
【００９８】
すなわち，ＣＰＵ２０は，変数ｔｍｐの下位２４ビットの各ビットを１にし，上位８ビットの各ビットを０にする。一方，ＢＳＣが２に等しくないか，または，ＳＷが１に等しくないならば（Ｓ１１でＮＯ），ＣＰＵ２０は変数ｔｍｐに０を代入し，ｔｍｐの３２ビットの全ビットを０にする（Ｓ１３）。
【００９９】
続いて，ＣＰＵ２０は，TESTcont（装置試験用制御データＤ）が０に等しいかどうかを判断する（Ｓ１４）。
【０１００】
TESTcontが０に等しい（すなわち装置試験を行わない）ならば（Ｓ１４でＹＥＳ），ＣＰＵ２０は，変数ｔｍｐと，East側チャネルｃｈ１〜ｃｈ２４のサブマリンスイッチ制御データＦ（SubmarineSW）との論理和演算（ＯＲ演算）を行い，演算結果を変数ｔｍｐに代入する（Ｓ１５）。
【０１０１】
この論理和演算は，East側チャネルｃｈ１〜ｃｈ２４が前述したように１つのメモリセル（１ワード）内に格納され，また変数ｔｍｐも１ワードデータであるので，ＣＰＵ２０（具体的にはＡＬＵ）の１回（１ステップ）の演算で実行される。このように２４チャネル分のデータが１回の演算で実行されるので，従来よりも，演算数が大幅に減少し，処理時間が短縮される。
【０１０２】
続いて，ＣＰＵ２０は，変数ｔｍｐと，チャネルｃｈ１〜ｃｈ２４のＮＵＴ設定データＥ（NUT）の各ビットの０／１を反転したデータとの論理積演算（ＡＮＤ演算）を行い，演算結果を，East側チャネルｃｈ１〜ｃｈ２４のリングスイッチ制御データＨ（RingSW）として，メモリ２２のアドレスＹ番地（図１４参照）に格納し（Ｓ１６），処理を終了する。
【０１０３】
この０／１の反転処理も，チャネルｃｈ１〜ｃｈ２４のＮＵＴ設定データＥが１ワード内に格納されているので，ＣＰＵ２０の１回の演算で実行される。また，論理積演算も，ＡＬＵの１回の演算で実行される。これにより，従来よりも，演算数が大幅に減少し，処理時間が短縮される。
【０１０４】
一方，ステップＳ１４でTESTcontが０に等しくない（すなわち装置試験を行う）ならば（Ｓ１４でＮＯ），ＣＰＵ２０は，East側チャネルｃｈ１〜ｃｈ２４のリングスイッチ制御データＨ（RingSW），すなわちメモリ２２のアドレスＹ番地（図１４参照）に，East側チャネルｃｈ１〜ｃｈ２４の装置試験用リングスイッチ制御データＧ（RingSWcont）をそのまま格納する（Ｓ１７）。
【０１０５】
ここで，East側チャネルｃｈ１〜ｃｈ２４の装置試験用リングスイッチ制御データＧ（RingSWcnt）も１ワードのデータに変換されているので，メモリ２２へのこの格納処理も１回の処理により実行される。これにより，処理数が減少し，処理時間が短縮される。
【０１０６】
図７に示すように，ＲＩＳＣプロセッサ（ＣＰＵ２０）の処理数に換算すると，ステップＳ１１は８ステップとなり，ステップＳ１２またはＳ１３は２ステップとなる。また，ステップＳ１４は４ステップ，ステップＳ１５は４ステップ，ステップＳ１６は５ステップ，ステップＳ１７は２ステップとなる。したがって，ステップＳ１１，Ｓ１２，Ｓ１４，Ｓ１５，およびＳ１６の全ステップ数は２３ステップとなる。すなわち２３ステップにより，２４チャネル分の制御信号データが生成される。
【０１０７】
これにより，前述した図３のデータ構造変換処理の処理数を加味しても，従来よりも処理数が減少し，処理時間が短縮される。
【０１０８】
次に，リングブリッジ制御データＩの生成処理について説明する。図８は，リングブリッジ制御データＩの生成処理の流れを示すフローチャートである。図６と同じ処理には同じ符号を付し，その詳細な説明を省略する。図９は，図８のフローチャートに対応するＣ言語によるプログラム例である。
【０１０９】
まず，ＣＰＵ２０は，ＢＳＣ（ノード障害データＡ）が２と等しいかどうかと，ＢＲ（リングブリッジトリガデータＢ）が１に等しいかどうかとを判断する（Ｓ２１）。
【０１１０】
ＢＳＣが２に等しく，かつ，ＢＲが１に等しい（すなわちリングブリッジを実行）ならば（Ｓ２１でＹＥＳ），ＣＰＵ２０は，ステップＳ１２を実行し，そうでなければ，ステップＳ１３を実行する。
【０１１１】
続いて，ＣＰＵ２０は，ステップＳ１４の判断を行い，TESTcontが０に等しいならば（Ｓ１４でＹＥＳ），変数ｔｍｐと，East側チャネルｃｈ１〜ｃｈ２４のサブマリンブリッジ制御データＳ（SubmarineBR）との論理和演算を行い，演算結果を変数ｔｍｐに代入する（Ｓ２５）。この論理和演算も，前述したステップＳ１５と同様に，ＣＰＵ２０の１回の演算で実行され，演算数が従来より大幅に減少し，処理時間が短縮される。
【０１１２】
続いて，ＣＰＵ２０は，変数ｔｍｐと，チャネルｃｈ１〜ｃｈ２４のＮＵＴ設定データＥ（NUT）の各ビットの０／１を反転したデータとの論理積演算を行い，演算結果を，East側チャネルｃｈ１〜ｃｈ２４のリングブリッジ制御データＩ（RingBR）として，メモリ２２のアドレス（Ｙ＋２）番地（図１４参照）に格納し（Ｓ２６），処理を終了する。ここでも，ステップＳ１６と同様に，演算数が従来よりも大幅に減少し，処理時間が短縮される。
【０１１３】
一方，ステップＳ１４でTESTcontが０に等しくないならば（Ｓ１４でＮＯ），ＣＰＵ２０は，East側チャネルｃｈ１〜ｃｈ２４のリングブリッジ制御データＩ（RingBR）（Ｙ＋２番地（図１４参照））に，East側チャネルｃｈ１〜ｃｈ２４の装置試験用リングブリッジ制御データＴ（RingBRcont）をそのまま格納する（Ｓ２７）。ここでも，ステップＳ１７と同様に，処理数が減少し，処理時間が短縮される。
【０１１４】
この図８のフローチャートの処理も，図９から分かるように，ＲＩＳＣプロセッサによるステップ数にすると２３ステップとなる。
【０１１５】
次に，スパンスイッチ制御データＪの生成処理について説明する。図１０は，スパンスイッチ制御データＪの生成処理の流れを示すフローチャートである。図６と同じ処理には同じ符号を付し，その詳細な説明を省略する。図１１は，図１０のフローチャートに対応するＣ言語によるプログラム例である。
【０１１６】
まず，ＣＰＵ２０は，Spanswcont（スパンスイッチトリガデータＸ）が１と等しいかどうかを判断する（Ｓ３１）。Spanswcontが１に等しい（すなわちスパンスイッチを行う）ならば（Ｓ３１でＹＥＳ），ＣＰＵ２０はステップＳ１２を実行し，等しくないならば（Ｓ３１でＮＯ），ＣＰＵ２０はステップＳ１３を実行する。
【０１１７】
続いて，ＣＰＵ２０は，変数ｔｍｐと，チャネルｃｈ１〜ｃｈ２４のＮＵＴ設定データＥ（NUT）の各ビットの０／１を反転したデータとの論理積演算を行い，演算結果を，East側チャネルｃｈ１〜ｃｈ２４のスパンスイッチ制御データＪ（SpanSW）としてメモリ２２（図１４参照）に格納し（Ｓ３４），処理を終了する。ここでも，ステップＳ１６と同様に，演算数が従来よりも大幅に減少し，処理時間が短縮される。
【０１１８】
この図１０のフローチャートの処理は，図１１から分かるように，ＲＩＳＣプロセッサによるステップ数にすると１５ステップとなる。
【０１１９】
次に，スパンブリッジ制御データＫの生成処理について説明する。図１２は，スパンブリッジ制御データＫの生成処理の流れを示すフローチャートである。図６と同じ処理には同じ符号を付し，その詳細な説明を省略する。図１３は，図１２のフローチャートに対応するＣ言語によるプログラム例である。
【０１２０】
まず，ＣＰＵ２０は，Spanbrcont（スパンブリッジトリガデータＹ）が１と等しいかどうかを判断する（Ｓ４１）。Spanbrontが１に等しい（すなわちスパンブリッジを行う）ならば（Ｓ４１でＹＥＳ），ＣＰＵ２０はステップＳ１２を実行し，等しくないならば（Ｓ４１でＮＯ），ＣＰＵ２０はステップＳ１３を実行する。
【０１２１】
続いて，ＣＰＵ２０は，変数ｔｍｐと，チャネルｃｈ１〜ｃｈ２４のＮＵＴ設定データＥ（NUT）の各ビットの０／１を反転したデータとの論理積演算を行い，演算結果を，East側チャネルｃｈ１〜ｃｈ２４のスパンブリッジ制御データＫ（SpanBR）としてメモリ２２（図１４参照）に格納し（Ｓ４４），処理を終了する。ここでも，ステップＳ１６と同様に，演算数が従来よりも大幅に減少し，処理時間が短縮される。
【０１２２】
この図１２のフローチャートの処理は，図１３から分かるように，ＲＩＳＣプロセッサによるステップ数にすると１５ステップとなる。
【０１２３】
図１４は，このようにして生成され，メモリ２２に記憶された制御信号データを示している。この制御信号データは，メモリ２２の他方のポートから読み出され，ＰＳ２５に与えられる。
【０１２４】
ＰＳ２５1には，まずEast側スパンスイッチ制御データＪが与えられ，続いて，West側スパンスイッチ制御データＪが与えられる。すなわち，East側スパンスイッチ制御データＪおよびWest側スパンスイッチ制御データＪは，時分割により出力される。これらEast側スパンスイッチ制御データＪおよびWest側リングスイッチ制御データＪは，ＰＳ２５1からシリアルデータとしてスパンスイッチ部３（図２２参照）に入力される。
【０１２５】
スパンスイッチ部３では，ＰＳ２５1のデータの出力と同期して，East側スパンスイッチ制御データＪがＰＳ２５1から出力されている時は，選択回路３１およびＡＩＳ挿入回路３３がEast側スパンスイッチ制御データＪを受信し，West側スパンスイッチ制御データＪがＰＳ２５1から出力されている時は，選択回路３２およびＡＩＳ挿入回路３４がWest側スパンスイッチ制御データＪを受信するようになっている。
【０１２６】
同様にして，ＰＳ２５2から出力されたEast側リングスイッチ制御データＨは，リングスイッチ部４の選択回路４１により受信され，West側リングスイッチ制御データＨは，リングスイッチ部４の選択回路４２により受信される。ＰＳ２５3から出力されたEast側スパンブリッジ制御データＫは，スパンブリッジ部５の選択回路５１により受信され，West側スパンブリッジ制御データＫは，スパンブリッジ部５の選択回路５２により受信される。ＰＳ２５4から出力されたEast側リングブリッジ制御データＩは，リングブリッジ部６の選択回路６１により受信され，West側リングブリッジ制御データＩは，リングブリッジ部６の選択回路６２により受信される。
【０１２７】
選択回路３１および３２は，入力されるデータＪの値が“０”の場合には，そのデータに対応するチャネルについては，第１入力（現用回線）側のチャネルの主信号を選択して出力する。一方，入力されるデータＪの値が“１”の場合には，そのデータに対応するチャネルについては，第２入力（予備回線）側のチャネルの主信号を選択して出力する。
【０１２８】
ＡＩＳ挿入回路３３および３４は，入力されるデータＪの値が“０”の場合には，そのデータに対応するチャネルについては，ＡＩＳを出力せず，入力されるデータＪの値が“１”の場合には，そのデータに対応するチャネルについては，ＡＩＳを出力する。
【０１２９】
他の選択回路４１，４２，５１，５２，６１，および６２，ならびにＡＩＳ挿入回路６１および６２についても同様である。
【０１３０】
これにより，スパンスイッチおよびスパンブリッジ，または，リングスイッチおよびリングブリッジが実行される。
【０１３１】
このように，本実施の形態によると，ホストプロセッサ１から与えられた回線制御データおよび回線設定データに基づいて制御信号データを生成するソフトウェアによる処理のステップ数が減少し，処理時間が短縮される。ＣＰＵ２０（ＲＩＳＣプロセッサ）の動作周波数が１００ＭＨｚであっても，切り替え許容時間５０ミリ秒以内で切り替え処理を完了することができる。
【０１３２】
なお，監視装置２１ｃは，メモリ２１ａに記憶されるデータに変化があった場合には，割込み信号および変化のあったチャネルを示すデータ（チャネル番号等）をＣＰＵ２０に与えるようにすることもできる。
【０１３３】
また，図５または図１４は，制御データの一例であり，したがって「未使用」のビットには，他のデータが格納される場合もある。他のデータとしては，たとえば，ファーエンド（Far End）ノードＩＤ情報，スケルチテーブル情報（スケルチ判定に必要なソース側ノードＩＤ，シンク側のノードＩＤ等），ＲＩＰ（Ring Interworking on Protection）チャンネル設定情報，スイッチスケルチ制御情報，ブリッジスケルチ制御情報（スケルチ：ミスコネクションを起こしている回線に対してＡＩＳを挿入する機能），プロテクションスルー（Protection Through）制御情報，ドロップ（Drop）ＡＩＳ制御情報（障害時に予備回線のＡＤＤを停止しスルーする機能）等がある。
【０１３４】
さらに，レジスタ２１ｄの各ビットはEast側２４チャネルおよびWest側２４チャネルの計４８チャネル分の変化を反映するが，レジスタ２１ｄの各ビットに反映するチャネル数はこれとは異なる数であってもよい。
【０１３５】
＜第２の実施の形態＞
第１の実施の形態における図１４に示す制御信号データを，従来の図２５に示す制御信号データの構造に変換し，ＰＳ２５から出力することもできる。
【０１３６】
図１５は，図１４に示す制御信号データを，図２５に示す制御信号データの構造に変換する処理の流れを示すフローチャートである。このフローチャートに示す処理は，一例として，アドレスＹ番地のメモリセルに記憶された２４チャネル分のEast側リングスイッチデータHを変換する処理である。また，この処理は，命令格納メモリ２４に記憶されたプログラムに記述され，ＣＰＵ２０により実行される。
【０１３７】
まず，ＣＰＵ２０は，図１４のアドレスＹ番地のメモリセルのビット位置を指定する変数ｉの値を１にする（Ｓ５１）。すなわち，アドレスＹ番地のメモリセルのビット位置は，第ｉビットにより指定される。
【０１３８】
次に，ＣＰＵ２０は，アドレスＹ番地のメモリセルの第ｉビット以外のビットの値を０にマスクし（Ｓ５２），マスク結果をｉビットだけ右にシフトする（Ｓ５３）。これにより，チャネルｃｈｉのリングスイッチデータHが第１ビットに移動する。
【０１３９】
続いて，ＣＰＵ２０は，シフト結果を他のアドレス（アドレス（Ｙ’＋ｉ−１）とする。）のメモリセルに記憶する（Ｓ５３）。これにより，チャネルｃｈｉのリングスイッチデータHは，図２５に示すように，１つのメモリセルの第１ビット（最下位ビット）に記憶される。
【０１４０】
続いて，ＣＰＵ２０は，変数ｉを１つインクリメントし（Ｓ５５），変数ｉとチャネル数Ｎ（ここではＮ＝２４）とを比較する（Ｓ５６）。ｉ≦Ｎならば，ステップＳ５２から処理を繰り返し，次のチャネルのリングスイッチデータHが処理される。ｉ＞Ｎならば，処理は終了する。これにより，図１４に示すEast側リングスイッチ制御データは，図２５に示すように連続した２４個のメモリセルの第１ビットに配置される。
【０１４１】
これにより，回線切り替え制御部２と，スパンスイッチ部３，リングスイッチ部４，スパンブリッジ部５，およびリングブリッジ部６との間のインタフェースを既存のものとすることができ，ＰＳ２５に，図２３に示す既存のＰＳ２０６1〜２０６4を使用することができる。
【０１４２】
＜第３の実施の形態＞
第１の実施の形態におけるメモリユニット２１を図１６に示すように構成することもできる。図１６において，図２と同じ構成要素には同じ符号を付し，その詳細な説明を省略する。
【０１４３】
このメモリユニット２１は，メモリ２１ａ，遅延素子２１ｂ，監視装置２１ｃ，レジスタ２１ｄおよび２１ｅ，ＡＮＤゲート２１ｆ，およびゼロ判定回路２１ｇを有する。
【０１４４】
監視装置２１ｃは，第１の実施の形態の説明で述べたように，変化のあった回線制御データおよび／または回線設定データに対応するレジスタ２１ｄ（たとえば３２ビットレジスタ）のビットの値を“１”にする。
【０１４５】
レジスタ２１ｅは，レジスタ２１ｄと同じビット数（たとえば３２ビット）を有する。また，レジスタ２１ｅには，ＡＮＤゲート２１ｆからハイレベル“Ｈ”（“１”）またはローレベル“Ｌ”（“０”）の転写（複写）イネーブル信号が入力される。ハイレベルの転写イネーブル信号がレジスタ２１ｅに入力されると，レジスタ２１ｄの全ビットの値がレジスタ２１ｅに転写（複写）される（書き込まれる）。転写後，レジスタ２１ｄの値は０にリセットされる。
【０１４６】
ＣＰＵ２０は，レジスタ２１ｅの値を所定の時間間隔でポーリングにより読み出す。そして，ＣＰＵ２０は，第１の実施の形態と同様に，レジスタ２１ｅのビット値“１”に対応するチャネル（４８チャネル分）の回線制御データおよび回線設定データについて処理を実行し，制御信号データを生成／出力する。この処理の終了後，ＣＰＵ２０は，レジスタ２１ｅの全ビットの値を０にリセットする。
【０１４７】
ゼロ判定回路２１ｇは，レジスタ２１ｅの全ビットの値が“０”であるかどうかを判定する。そして，ゼロ判定回路２１ｇは，レジスタ２１ｅの全ビットの値が“０”である場合には，ハイレベル信号“Ｈ”（“１”）をＡＮＤゲート２１ｆに出力し，レジスタ２１ｅの少なくとも１ビットの値が“１”である場合には，ローレベル信号“Ｌ”（“０”）をＡＮＤゲート２１ｆに出力する。
【０１４８】
ＡＮＤゲート２１ｆには，ゼロ判定回路２１ｇからの信号に加えて，図示しない発振器から所定の周波数（たとえば８ｋＨｚ）の転写タイミング信号（クロック信号）が入力される。
【０１４９】
ＡＮＤゲート２１ｆは，ゼロ判定回路２１ｇからの信号および転写タイミング信号がともにハイレベルの場合にのみ，ハイレベルの転写イネーブル信号をレジスタ２１ｅに出力し，それ以外の場合には，ローレベルの転写イネーブル信号をレジスタ２１ｅに出力する。
【０１５０】
レジスタ２１ｅにＡＮＤゲート２１ｆから転写イネーブル信号が入力されるので，レジスタ２１ｅの値が０でなければ，レジスタ２１ｄの値がレジスタ２１ｅに転写されないこととなる。換言すると，ＣＰＵ２０が，あるチャネル（４８チャネル分）の回線制御データおよび回線設定データの処理を終了し，レジスタ２１ｅを０にリセットした後に，レジスタ２１ｄの値がレジスタ２１ｅに転写されることとなる。
【０１５１】
これにより，ＣＰＵ２０は，１回のポーリングにより処理すべきチャネル（チャネル群）を識別でき（ＣＰＵ２０の処理中はレジスタ２１ｅの値は変化しないので），処理効率を向上させることができる。
【０１５２】
＜第４の実施の形態＞
図２４に示すデータのうち回線設定データ（Ｅ，Ｆ，Ｇ等）は，ノードが運用状態になる前（たとえばノードの立ち上げ時等に行われる初期設定（Provisioning）時）においても回線切り替え制御部２に与えられる。その後，ノードの運用時において，障害が発生すると，図２４に示すデータのうち回線制御データ（Ａ，Ｂ等）が回線切り替え制御部２に与えられる。
【０１５３】
障害が発生しても，回線設定データには変化のないものが多く存在する。したがって，ノードの初期設定時にデータ変換処理を前もって実行しておくことにより，障害発生時において回線設定データに変化がない場合には，障害発生時にデータ変換処理を行う必要はなくなる。これにより，運用中にデータ構造変換処理を実行するのに要する時間を削減でき，ソフト処理時間の短縮を図ることができる。
【０１５４】
すなわち，ノードの初期設定時に，ホストプロセッサ１から回線設定データ（Ｅ，Ｆ，Ｇ，Ｓ，Ｔ等）が回線切り替え制御部２に与えられると，ＣＰＵ２０は，この初期設定処理の一部として，回線設定データのデータ構造変換処理（図３参照）を実行し，変換後のデータをワークメモリ２３に記憶する。
【０１５５】
初期設定終了後，ＣＰＵ２０は，回線切り替え制御部２を運用状態（イン・サービス）にする。
【０１５６】
その後，運用状態において障害が発生し，ホストプロセッサ１から回線制御データ（Ａ，Ｂ，Ｃ等）が回線切り替え制御部２のメモリユニット２１（監視装置２１ｃ，遅延素子２１ｂ，またはメモリ２１ａ）に与えられると，メモリユニット２１は，割込み信号をＣＰＵ２０に与える。
【０１５７】
ＣＰＵ２０は，この割込み信号により，前述した第２または第３の実施の形態におけるポーリングを開始し，回線制御データの変化のあったチャネルの制御信号データ生成処理を実行する。
【０１５８】
＜第５の実施の形態＞
第５の実施の形態は，データ構造変換処理をハードウェア回路により行うものである。図１７は，第５の実施の形態による回線切り替え制御部２ａの構成を示すブロック図である。図１に示す回線切り替え制御部２と同じ構成要素には同じ符号を付し，その詳細な説明を省略する。
【０１５９】
この回線切り替え制御部２ａは，ＣＰＵ２０，メモリ２２，命令格納メモリ２４，ワークメモリ２３ａ，データ構造変換装置２６，およびＰＳ２５1〜２５4を有する。
【０１６０】
ワークメモリ２３ａは，２ポートＲＡＭである点で，図１のワークメモリ（ＲＡＭ）２３と異なる。
【０１６１】
データ構造変換装置２６は，第１の実施の形態においてソフトウェアにより実行されていたデータ構造変換処理をハードウェア回路により実行するものである。図１８は，データ構造変換装置２６の詳細な構成を示すブロック図である。
【０１６２】
データ構造変換装置２６は，フォーマット変換回路２６１，フリップフロップ（ＦＦ）２６２，微分回路２６３，デコーダ２６４，ライト／リード制御回路２６５，およびアドレス生成回路２６６を有する。
【０１６３】
データ構造変換装置２６には，回線設定データ（ライトデータ），該回線設定データを書き込むためのワークメモリ２３ａのアドレス（書き込みアドレス），およびライトイネーブル信号（ライトＥＮ）がホストプロセッサ１から入力される。
【０１６４】
アドレスは，デコーダ２６４に入力される。デコーダ２６４は，入力されたアドレスに基づいて，該アドレスにより指定される回線設定データが属するデータ群の先頭アドレスを生成する。
【０１６５】
ここで，「アドレスにより指定される回線設定データが属するデータ群の先頭アドレス」とは，たとえば図２４に示すように，回線設定データが２４チャネルごとにグループ化されている場合には，このグループの先頭アドレス（図２４の（Ｘ＋２）番地，（Ｘ＋２８）番地等）をいい，また，このグループをデータ群という。
【０１６６】
たとえば，図２４において，デコーダ２６４は，アドレス（Ｘ＋２）〜（Ｘ＋２５）までのいずれかが入力されると，このアドレスに基づいて先頭アドレス（Ｘ＋２）を出力する。同様にして，デコーダ２６４は，アドレス（Ｘ＋２８）〜（Ｘ＋５１）までのいずれかが入力されると，このアドレスに基づいて先頭アドレス（Ｘ＋２８）を出力する。
【０１６７】
アドレス生成回路２６６は，デコーダ２６４から与えられた先頭アドレスに基づいて，データ群のアドレスを順次ワークメモリ２３ａ（アドレス入力端子ＡＤ）に出力する。たとえば，先頭アドレスが（Ｘ＋２）番地の場合に，アドレス生成回路は，アドレス（Ｘ＋２）〜（Ｘ＋２５）番地を順次出力する。これらのアドレスは，ワークメモリ２３ａに記憶された回線設定データの読み出しアドレスとして使用される。
【０１６８】
ライトＥＮ信号は，微分回路２６３に入力される。微分回路２６３は，ライトＥＮ信号の変化（たとえばアクティブロー（Active-Low）の場合にはハイレベルからローレベルへの立ち下がりエッジ，アクティブハイ（Active-High）の場合には立ち上がりエッジ）を検出すると，ＦＦ２６２およびライト／リード制御回路２６５にトリガ信号を出力する。
【０１６９】
このトリガ信号の入力により，ＦＦ２６２は，ホストプロセッサ１から与えられた回線設定データ（ライトデータ）をラッチ（記憶）する。
【０１７０】
また，ライト／リード制御回路２６５は，このトリガ信号の入力により，アドレス生成回路２６６の読み出しアドレスの出力と同期してリードイネーブル信号を，アドレス生成回路２６６から出力される読み出しアドレスの個数分，ワークメモリ２３ａ（リードイネーブル端子ＲＥＮ）に出力する。
【０１７１】
アドレス生成回路２６６からの読み出しアドレスおよびライト／リード制御回路２６５からのリードイネーブル信号により，ワークメモリ２３ａから回線設定データが順次読み出される。たとえば，アドレス（Ｘ＋２）番地から（Ｘ＋２５）番地までの２４チャネル分の回線設定データが順次読み出される。
【０１７２】
読み出された回線設定データは，フォーマット変換回路２６１に入力される。また，ＦＦ２６２にラッチされたデータもフォーマット変換回路２６１に入力される。
【０１７３】
フォーマット変換回路２６１は，ワークメモリ２３ａおよびＦＦ２６２から入力された複数個（２４チャネル分）の回線設定データを，図５に示すように，１ワードのデータに変換し，変換後の１ワードのデータをワークメモリ２３ａに出力する。
【０１７４】
アドレス生成回路２６６は，フォーマット変換回路２６１からの変換後のデータの出力に同期して，変換後のデータを書き込むアドレス（たとえば図５のアドレスＺ）をワークメモリ２３ａ（アドレス入力端子ＡＤ）に出力する。
【０１７５】
また，ライト／リード制御回路２６５は，フォーマット変換回路２６１からの変換後のデータの出力に同期して，ライトイネーブル信号をワークメモリ２３ａ（ライトイネーブル入力端子ＷＥＮ）に出力する。
【０１７６】
これにより，データ構造変換後の１ワードの回線設定データが，ワークメモリ２３ａに記憶される。
【０１７７】
変換後，フォーマット変換回路２６１等がＣＰＵ２０に割り込み信号等を与えることにより，ＣＰＵ２０は，制御信号データ生成処理を実行することができる。
【０１７８】
本実施の形態では，ハードウェア回路によりデータ構造変換処理が実行されるので，データ構造変換処理をより高速に実行することができる。また，メモリユニット２１（メモリ２１ａ）とワークメモリ２３とを１つのワークメモリ２３ａとして兼用できるので，ハードウェア量を減らすことができる。
【０１７９】
なお，回線制御データはデータ構造変換を要しないので，フォーマット変換回路２６１において変換されることなくワークメモリ２３ａに書き込まれるか，または，このデータ構造変換装置２６を迂回してワークメモリ２３ａに書き込まれる。
【０１８０】
また，この回線設定データのデータ構造変換と逆の処理を行うハードウェア回路を設けることにより，図１４に示す制御信号データのデータ構造を図２５に示すデータ構造に変換する処理をハードウェア回路により実行することもできる。
【０１８１】
＜第６の実施の形態＞
ＣＰＵ２０内に，データ構造変換処理用ハードウェア回路を組み込むこともできる。
【０１８２】
一般に，ＣＰＵは，ソースレジスタ，ＡＬＵ，およびデスティネーションレジスタを有し，ソースレジスタに格納されたデータをＡＬＵにおいて演算し，演算結果をデスティネーションレジスタに格納する処理を繰り返している。
【０１８３】
このソースレジスタとデスティネーションレジスタとの間にデータ構造変換処理回路を組み込むことができる。図１９は，ソースレジスタとデスティネーションレジスタとの間にデータ構造変換処理回路を組み込んだＣＰＵの概略構成を示すブロック図である。図２０は，データ構造変換処理回路の詳細な構成を示すブロック図である。
【０１８４】
ＣＰＵは，命令デコーダ２０ａ，ソースレジスタファイル２０ｂ，デスティネーションレジスタファイル２０ｃ，ＡＬＵ２０ｄ，およびデータ構造変換回路２０ｅを有する。
【０１８５】
ＣＰＵの命令セットには，データ構造変換回路２０ｅにデータ構造変換処理を実行させるためのデータ構造変換命令が追加される。このデータ構造変換命令がＣＰＵに与えられると，命令デコーダ２０ｇがこの命令をデコードし，データ構造変換回路２０ｅに与える。
【０１８６】
データ構造変換回路２０ｅは，図２０に示すように，少なくともＭ個（Ｍは前述した回線設定データの種類であり，図２４ではＭ＝５）のセレクタ２１０1〜２１０Mを有する。
【０１８７】
ソースレジスタファイル２０ｂは，少なくともＮ個（Ｎはチャネル数であり，図２４ではＮ＝２４）のレジスタ２２０1〜２２０Nを有する。各レジスタ２２０1〜２２０Nは３２ビットを有する。
【０１８８】
ＣＰＵは，各レジスタ２２０1〜２２０Nに，各チャネルの回線設定データを格納する。たとえば，図２４に示す例では，レジスタ２２０1〜２２０NにEast側チャネルｃｈ１〜ｃｈ２４の回線設定データがそれぞれ格納される。
【０１８９】
レジスタ２２０1〜２２０Nのそれぞれの第１ビットのデータは，セレクタ２１０1に与えられる。同様にして，レジスタ２２０1〜２２０Nのそれぞれの第２ビットから第Ｍビットの各ビットのデータは，セレクタ２１０2〜２１０Mに与えられる。
【０１９０】
デスティネーションレジスタファイル２０ｄは，少なくともＭ個のレジスタ２３０1〜２３０Mを有する。各レジスタ２３０1〜２３０Mは３２ビットを有する。
【０１９１】
命令デコーダ２０ａの命令は，セレクタ２１０1〜２１０Mに入力される。各セレクタ２１０2〜２１０Mに命令デコーダ２０ａからの命令が入力されると，各セレクタ２１０2〜２１０Mは，レジスタ２２０1〜２２０Nからのデータをレジスタ２３０1〜２３０Mに出力する。このとき，セレクタ２１０1〜２１０Mは，レジスタ２２０i（ｉは１〜Ｎの整数）からのデータ（１ビットデータ）をレジスタ２３０1〜２３０Mの第ｉビットに格納する。これにより，データ構造変換処理が実行される。
【０１９２】
このように，ＣＰＵ内にデータ構造変換回路を組み込み，ＣＰＵの命令セットにデータ構造変換命令を設けることによって，データ構造変換によって生じるソフト処理のオーバーヘッドを削減することができる。
【０１９３】
なお，このデータ構造変換回路２０ｅは，ＣＰＵのコプロセッサ（Co-Processor）のようにＣＰＵの外付け回路として実装することもできる。
【０１９４】
また，図１４に示す制御信号データのデータ構造を図２５に示すデータ構造に変換する処理をハードウェア回路により構成し，ＣＰＵ内のソースレジスタファイル２０ｂおよびデスティネーションレジスタファイル２０ｃの間に配置し，あるいは，コプロセッサのように外付け実装することもできる。
【０１９５】
＜他の実施の形態＞
回線設定部２とホストプロセッサ１とを分けて説明したが，回線設定部２の処理をホストプロセッサ１が実行し，回線設定部２を省略することもできる。
【０１９６】
（付記１）  複数のチャネルの信号に所定の処理を行い，該複数のチャネルの信号を伝送する伝送装置において，
１つのチャネルについての１または複数種類の制御データ要素が少なくとも１ワードのデータで構成された第１制御データをチャネルごとに異なる記憶セルに記憶する第１記憶部と，
前記第１記憶部に記憶された前記複数のチャネルの第１制御データから同種類の制御データ要素を選択し，該同種類の制御データ要素が１ワードのデータで構成されるように，前記第１制御データの構造を変換する第１データ構造変換部と，
前記第１データ構造変換部による変換後の第１制御データをワード単位で処理し，前記所定の処理に必要な第２制御データを生成するデータ生成部と，
を有することを特徴とする伝送装置。
【０１９７】
（付記２）  付記１において，
前記データ生成部が生成する前記第２制御データは，１ワード内に，前記複数のチャネルについての制御データ要素を有し，
前記第２制御データの１ワード内に含まれる複数のチャネルについての制御データ要素がそれぞれ異なるワードのデータで構成されるように，前記第２制御データの構造を変換する第２データ構造変換部をさらに有する，
ことを特徴とする伝送装置。
【０１９８】
（付記３）  付記１または２において，
前記第１記憶部に記憶された前記第１制御データの変化を監視し，前記第１制御データに変化があると，該変化があったことを前記第１データ構造変換部に通知する監視部をさらに有し，
前記第１データ構造変換部および前記データ生成部は，前記監視部の通知によりそれぞれの処理を開始する，
ことを特徴とする伝送装置。
【０１９９】
（付記４）  付記３において，
前記監視部は，変化のあった前記第１制御データに対応するチャネルを示す情報を前記第１データ構造変換部に通知し，
前記第１データ構造変換部および前記データ生成部は，前記監視部から通知された情報が示すチャネルについての第１制御データに対してそれぞれの処理を行う，
ことを特徴とする伝送装置。
【０２００】
（付記５）  付記４において，
各チャネルに対応した記憶セルを有する第２記憶部をさらに有し，
前記監視部は，前記変化のあった第１制御データのチャネルに対応する前記第２記憶部の記憶セルに前記変化があったことを示すデータを書き込み，
前記第１データ構造変換部は，所定の時間間隔で前記第２記憶部を読み出し，前記変化があったことを示すデータに基づいて変化を検出する，
ことを特徴とする伝送装置。
【０２０１】
（付記６）  付記５において，
各チャネルに対応した記憶セルを有し，該各記憶セルの内容がクリアされている場合に前記第２記憶部のデータが複写される第３記憶部をさらに有し，
前記第１データ構造変換部は，所定の時間間隔で前記第３記憶部を読み出して前記変化を検出し，
前記第１データ変換部または前記データ生成部は，処理終了後，前記第３記憶部の各記憶セルの内容をクリアする，
ことを特徴とする伝送装置。
【０２０２】
（付記７）  付記１から６のいずれか１つにおいて，
前記第１制御データは，該伝送装置が運用状態になる前に前記第１記憶部に記憶され，
前記第１データ構造変換部は，該伝送装置が前記運用状態になる前に前記処理を実行する，
ことを特徴とする伝送装置。
【０２０３】
（付記８）  付記１から７のいずれか１つにおいて，
該伝送装置は，複数のノードが光伝送路により接続された光双方向ラインスイッチリングシステムにおけるノードであり，
前記第１制御データは，前記双方向ラインスイッチリングシステムにおける前記各チャネルの切り替えを含む処理を制御する回線設定データを含み，
前記第２制御データは，前記光双方向ラインスイッチリングシステムにおける各チャネルの切り替えをどのように行うかを示すデータを含む，
ことを特徴とする伝送装置。
【０２０４】
（付記９）  付記１から８のいずれか１つにおいて，
前記第１データ構造変換部は，中央処理装置の内部に設けられたハードウェア回路または該中央処理装置のコプロセッサにより構成されていることを特徴とする伝送装置。
【０２０５】
（付記１０）  付記２において，
前記第２データ構造変換部は，中央処理装置の内部に設けられたハードウェア回路または該中央処理装置のコプロセッサにより構成されていることを特徴とする伝送装置。
【０２０６】
（付記１１）  複数のチャネルの信号に所定の処理を行い，該複数のチャネルの信号を伝送する伝送装置におけるデータ処理方法であって，
１つのチャネルについての１または複数種類の制御データ要素が少なくとも１ワードのデータで構成された第１制御データをチャネルごとに異なる記憶セルに記憶し，
前記記憶セルに記憶された前記複数のチャネルの第１制御データから同種類の制御データ要素を選択し，該同種類の制御データ要素が１ワードのデータで構成されるように，前記第１制御データの構造を変換し，
前記変換後の第１制御データをワード単位で処理し，前記所定の処理に必要な第２制御データを生成する，
データ処理方法。
【０２０７】
（付記１２）  複数のチャネルの信号に所定の処理を行い，該複数のチャネルの信号を伝送する伝送装置におけるデータ変換方法であって，
１つのチャネルについての１または複数種類の制御データ要素が少なくとも１ワードのデータで構成された第１制御データをチャネルごとに異なる記憶セルに記憶し，
前記記憶セルに記憶された前記複数のチャネルの第１制御データから同種類の制御データ要素を選択し，該同種類の制御データ要素が１ワードのデータで構成されるように，前記第１制御データの構造を変換する，
データ変換方法。
【０２０８】
（付記１３）  複数のチャネルの信号に所定の処理を行い，該複数のチャネルの信号を伝送する伝送装置におけるコンピュータに，
１つのチャネルについての１または複数種類の制御データ要素が少なくとも１ワードのデータで構成された第１制御データがチャネルごとに異なる記憶セルに記憶されたメモリから，前記複数のチャネルの前記第１制御データを読み出す手順と，
前記読み出した前記複数のチャネルの第１制御データから同種類の制御データ要素を選択し，該同種類の制御データ要素が１ワードのデータで構成されるように，前記第１制御データの構造を変換する手順と，
前記変換後の第１制御データをワード単位で処理し，前記所定の処理に必要な第２制御データを生成する手順と，
を実行させるためのプログラム。
【０２０９】
（付記１４）  複数のチャネルの信号に所定の処理を行い，該複数のチャネルの信号を伝送する伝送装置におけるコンピュータに，
１つのチャネルについての１または複数種類の制御データ要素が少なくとも１ワードのデータで構成された第１制御データがチャネルごとに異なる記憶セルに記憶されたメモリから，前記複数のチャネルの前記第１制御データを読み出す手順と，
前記読み出した前記複数のチャネルの第１制御データから同種類の制御データ要素を選択し，該同種類の制御データ要素が１ワードのデータで構成されるように，前記第１制御データの構造を変換する手順と，
前記変換後の第１制御データをワード単位で処理し，前記所定の処理に必要な第２制御データを生成する手順と，
を実行させるためのプログラムを記録したコンピュータ読み取りな可能記録媒体。
【０２１０】
（付記１５）  複数のチャネルの信号に所定の処理を行い，該複数のチャネルの信号を伝送する伝送装置におけるコンピュータに，
１つのチャネルについての１または複数種類の制御データ要素が少なくとも１ワードのデータで構成された第１制御データがチャネルごとに異なる記憶セルに記憶されたメモリから，前記複数のチャネルの前記第１制御データを読み出す手順と，
前記読み出した前記複数のチャネルの第１制御データから同種類の制御データ要素を選択し，該同種類の制御データ要素が１ワードのデータで構成されるように，前記第１制御データの構造を変換する手順と，
を実行させるためのプログラム。
【０２１１】
（付記１６）  複数のチャネルの信号に所定の処理を行い，該複数のチャネルの信号を伝送する伝送装置におけるコンピュータに，
１つのチャネルについての１または複数種類の制御データ要素が少なくとも１ワードのデータで構成された第１制御データがチャネルごとに異なる記憶セルに記憶されたメモリから，前記複数のチャネルの前記第１制御データを読み出す手順と，
前記読み出した前記複数のチャネルの第１制御データから同種類の制御データ要素を選択し，該同種類の制御データ要素が１ワードのデータで構成されるように，前記第１制御データの構造を変換する手順と，
を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【０２１２】
【発明の効果】
本発明によると，伝送装置における処理数が削減され，処理に要する時間を短縮することができる。また，ソフトウェアにより機能を実現できることから，処理性能を保ちつつ，仕様変更に柔軟に対応できるシステムを，低コストで，かつ，短期間に開発することが可能となる。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態による回線切り替え制御部の構成を示すブロック図である。
【図２】メモリユニット２１の詳細な構成を示すブロック図である。
【図３】データ構造変換処理の流れを示すフローチャートである。
【図４】（Ａ）はデータ構造変換前のデータ構造を示し，（Ｂ）はデータ構造変換後のデータ構造を示し，（Ｃ）はデータ構造変換処理を一般化したプログラム例を示す。
【図５】データ構造が変換された回線設定データを示す。
【図６】リングスイッチ制御データＨの生成処理の流れを示すフローチャートである。
【図７】図６のフローチャートに対応するＣ言語によるプログラム例およびＲＩＳＣプロセッサのアセンブリ言語によるプログラム例である。
【図８】リングブリッジ制御データＩの生成処理の流れを示すフローチャートである。
【図９】図８のフローチャートに対応するＣ言語によるプログラム例である。
【図１０】スパンスイッチ制御データＪの生成処理の流れを示すフローチャートである。
【図１１】図１０のフローチャートに対応するＣ言語によるプログラム例である。
【図１２】スパンブリッジ制御データＫの生成処理の流れを示すフローチャートである。
【図１３】図１２のフローチャートに対応するＣ言語によるプログラム例である。
【図１４】メモリ２２に記憶された制御信号データを示す。
【図１５】図１４に示す制御信号データを，図２５に示す制御信号データの構造に変換する処理の流れを示すフローチャートである。
【図１６】メモリユニット２１の他の構成を示すブロック図である。
【図１７】本発明の第５の実施の形態による回線切り替え制御部の構成を示すブロック図である。
【図１８】データ構造変換装置の詳細な構成を示すブロック図である。
【図１９】ソースレジスタとデスティネーションレジスタとの間にデータ構造変換処理回路を組み込んだＣＰＵの概略構成を示すブロック図である。
【図２０】データ構造変換処理回路の詳細な構成を示すブロック図である。
【図２１】（Ａ）は，ＳＯＮＥＴ／ＳＤＨ伝送方式のＢＬＳＲシステムの構成を示すブロック図であり，（Ｂ）は，（Ａ）に示すＢＬＳＲシステムにおいて，ノードｎ２とｎ３との間の４本の光ファイバに障害が発生した場合の切り替え処理を示す。
【図２２】ＢＬＳＲシステムにおける各ノードの概略構成を示すブロック図である。
【図２３】回線切り替え制御部の処理をソフトウェアにより実現する場合の該回線切り替え制御部の従来の構成を示すブロック図である。
【図２４】ホストプロセッサから与えられる制御データを示す。
【図２５】制御信号データを示す。
【図２６】制御データおよび回線設定データを制御信号データに変換する従来の処理の流れを示すフローチャートである。
【図２７】図２６のフローチャートに示す処理のＣ言語およびＲＩＳＣプロセッサのアセンブリ言語によるプログラム例である。
【符号の説明】
１  ホストプロセッサ
２，２ａ  回線切り替え設定部
３  スパンスイッチ部
４  リングスイッチ部
５  スパンブリッジ部
６  リングブリッジ部
２０  ＣＰＵ
２１  メモリユニット
２３，２３ａ  ワークメモリ
２４  命令格納メモリ
２２，２１ａ  メモリ
２５1〜２５4  パラレル／シリアル変換器
２１ｃ  監視装置
２１ｄ，２１ｅ  レジスタ
２１ｇ  ゼロ判定回路
２１ｆ  ＡＮＤゲート
２６  データ構造変換装置
２０ｆ  データ構造変換回路
【図１】
0003910063.tif 000002
【図２】
0003910063.tif 000003
【図３】
0003910063.tif 000004
【図４】
0003910063.tif 000005
【図５】
0003910063.tif 000006
【図６】
0003910063.tif 000007
【図７】
0003910063.tif 000008
【図８】
0003910063.tif 000009
【図９】
0003910063.tif 000010
【図１０】
0003910063.tif 000011
【図１１】
0003910063.tif 000012
【図１２】
0003910063.tif 000013
【図１３】
0003910063.tif 000014
【図１４】
0003910063.tif 000015
【図１５】
0003910063.tif 000016
【図１６】
0003910063.tif 000017
【図１７】
0003910063.tif 000018
【図１８】
0003910063.tif 000019
【図１９】
0003910063.tif 000020
【図２０】
0003910063.tif 000021
【図２１】
0003910063.tif 000022
【図２２】
0003910063.tif 000023
【図２３】
0003910063.tif 000024
【図２４】
0003910063.tif 000025
【図２５】
0003910063.tif 000026
【図２６】
0003910063.tif 000027
【図２７】
0003910063.tif 000028