(57)【特許請求の範囲】
【請求項１】
フレームのセット内のＡＴＭセルのタイムスロットに対するフレーム遅延を求める方法であって、
（１）前記フレームのセットの複数のフレームを調べて、前記複数のフレーム内の第１の連続した複数のタイムスロットの中身が所定の基準を満たすかどうかを判定し、前記所定の基準を満たした際に、
（２）どのフレームが前記基準を満たす中身を有していたかに従って、前記第１の連続した複数のタイムスロットのそれぞれについて、当該第１の連続した複数のタイムスロットに対する基準フレームから前記中身を有するフレームまでのフレーム数である遅延値を求めること、を含むことを特徴とする方法。
【請求項２】
ステップ（１）が第２の連続した複数のタイムスロットに対して繰り返され、ステップ（２）が前記第２の連続した複数のタイムスロットの少なくとも１つのタイムスロットに対して繰り返されることを特徴とする請求項１に記載の方法。
【請求項３】
前記第２の連続した複数のタイムスロットの構成が、前記第１の連続した複数のタイムスロットの構成と１つのタイムスロットだけ異なっていることを特徴とする請求項２に記載の方法。
【請求項４】
前記第１の連続した複数のタイムスロットがｑ個の連続したタイムスロットであり、ｑ個の連続したタイムスロットのＮ個についてステップ（１）が繰り返され、前記ｑ個の連続したタイムスロットのＮ個それぞれについてステップ（２）が少なくとも１つのタイムスロットに対して繰り返され、前記フレームのセット内のタイムスロットの数がＮ＋（ｑ＋１）であることを特徴とする請求項１に記載の方法。
【請求項５】
前記所定の基準が、前記第１の連続した複数のタイムスロットの中身が有効なヘッダ・エラー・チェック（ＨＥＣ）バイトを含むＡＴＭセル・ヘッダを構成することであることを特徴とする請求項１に記載の方法。
【請求項６】
前記所定の基準が、前記第１の連続した複数のタイムスロットの中身がアイドル・セルの有効なヘッダ・エラー・チェック（ＨＥＣ）バイトを含むＡＴＭセル・ヘッダを構成することであることを特徴とする請求項１に記載の方法。
【請求項７】
前記第１の連続した複数のタイムスロットが５つの連続したタイムスロットであることを特徴とする請求項１に記載の方法。
【請求項８】
ステップ（１）が探索木を用いて行われることを特徴とする請求項１に記載の方法。
【請求項９】
前記所定の基準が、前記第１の連続した複数のタイムスロットの中身が有効なヘッダ・エラー・チェック（ＨＥＣ）バイトを含むＡＴＭセル・ヘッダを構成することであり、前記第１の連続した複数のタイムスロットの第１のタイムスロットが第１のＡＴＭセルのヘッダの第１のバイトを含み、前記方法が更に、
（３）既知の関係を使用して、前記フレームのセットのどのフレームが、前記第１の連続した複数のタイムスロットの第２のタイムスロット内で開始している第２のＡＴＭセルのヘッダを有しているのかを判定することを含むことを特徴とする請求項１に記載の方法。
【請求項１０】
前記既知の関係が第１のＡＴＭセルと第２のＡＴＭセルとを分離しているフレームの数を示す値Ｘを提供し、前記既知の関係が、Ｘ＝（Ｙ＊５３）ｄｉｖ ＵＴＳ、であり、ここで、ＵＴＳは前記フレームのセットで使用されたタイムスロットの数であり、Ｙは、［（Ｙ＊５３）ｍｏｄ ＵＴＳ］＝１、となる値から選択されたものであることを特徴とする請求項９に記載の方法。
【請求項１１】
（４）前記第２のＡＴＭセルのヘッダのＨＥＣでないバイトを求めるために、前記第１の連続した複数のタイムスロットの第２及び後続するタイムスロットに対して前記ステップ（２）で求められた遅延値を使用すること、
（５）前記第２のＡＴＭセルのＨＥＣ値を計算するために、前記ステップ（４）で求められた前記第２のＡＴＭセルのヘッダのＨＥＣでないバイトの中身を使用すること、
（６）前記第２の連続した複数のタイムスロットの最後のタイムスロットにおける前記フレームのセットの複数のフレーム内で、前記ステップ（５）で計算されたＨＥＣ値の位置を決定すること、及び
（７）前記第２の連続した複数のタイムスロットの最後のタイムスロットに対して、前記ステップ（５）で計算されたＨＥＣ値が位置するフレームに従って、当該第２の連続した複数のタイムスロットに対する基準フレームから前記計算されたＨＥＣ値が位置するフレームまでのフレーム数である遅延値を求めること、を更に含むことを特徴とする請求項９に記載の方法。
【請求項１２】
前記フレームのセットの所定数のＡＴＭセルに対して、（３）から（７）のステップが繰り返されることを特徴とする請求項１１に記載の方法。
【請求項１３】
フレームのセット内のＡＴＭセルを受信し、前記フレームのセットの複数のフレームを調べて、前記複数のフレーム内の第１の連続した複数のタイムスロットの中身が所定の基準を満たすかどうかを判定し、前記第１の連続した複数のタイムスロット各々に関して、前記基準を満たしている中身を前記複数のフレームのどれが有していたかに従って、当該第１の連続した複数のタイムスロットに対する基準フレームから前記中身を有するフレームまでのフレーム数である遅延値を求めることを特徴とするＡＴＭノード。
【請求項１４】
複数のノードを有しており、少なくともその１つがＡＴＭノードである通信ネットワークであって、前記ＡＴＭノードが、
フレームのセットを受信するフレーマ及びアライナー回路と、
前記フレーマ及びアライナー回路から前記フレームのセットを受信し、前記フレームのセットの複数のフレームを調べて、前記複数のフレーム内の第１の連続した複数のタイムスロットの中身が所定の基準を満たすかどうかを判定し、前記第１の連続した複数のタイムスロット各々に関して、前記基準を満たしている中身を前記複数のフレームのどれが有していたかに従って、当該第１の連続した複数のタイムスロットに対する基準フレームから前記中身を有するフレームまでのフレーム数である遅延値を求める、タイムスロット・アライナーとを備えることを特徴とする通信ネットワーク。
【請求項１５】
フレームのセット内のＡＴＭセルのタイムスロットに対するフレーム遅延を求める方法であって、
（１）セル・ヘッダを見つけて、当該セル・ヘッダに対する基準フレームから当該セル・ヘッダを有するフレームまでのフレーム数であるフレーム遅延を求めること、
（２）前記ステップ（１）で見つけられた前記ヘッダの選択されたタイムスロットに基づいて、ウィンドウを形成すること、
（３）前記フレームのセットのタイムスロットに渡って前記ウィンドウをシフトさせること、及び前記ウィンドウに一致し、ＨＥＣでないタイムスロットを有する次のヘッダを見つけるために前記ウィンドウを使用すること、及び
（４）ステップ（３）で見つけられたヘッダを含むフレームからＨＥＣを有するフレームまでのフレーム数であるフレーム遅延を求めること、を含む方法。
【請求項１６】
ステップ（３）で見つけられた前記ヘッダの選択されたタイムスロットを使用して新たなウィンドウを形成すること、及び更に別のヘッダに関して（３）及び（４）のステップを繰り返すことを更に含むことを特徴とする請求項１５に記載の方法。
【請求項１７】
フレームのセット内のＡＴＭセルのタイムスロットに対するフレーム遅延を求める方法であって、
（１）最初のセル・ヘッダを見つけて、当該セル・ヘッダに対する基準フレームから当該セル・ヘッダを有するフレームまでのフレーム数であるフレーム遅延を求めること、
（２）前記ステップ（１）で見つけられた前記ヘッダの選択されたタイムスロットに基づいて、ウィンドウを形成すること、
（３）先行するヘッダの第１のタイムスロットに続くタイムスロット内で開始している次のヘッダを有するフレームを求めるのために、所定の関係を使用すること、
（４）前記次のヘッダのＨＥＣでないタイムスロットを見つけるために前記ウィンドウを使用すること、
（５）前記次のヘッダに対するＨＥＣバイトの値を計算すること、
（６）前記次のヘッダの前記ＨＥＣタイムスロットに対してステップ（５）で求められた前記ＨＥＣの値を有するフレームの位置を決定すること、
（７）前記次のヘッダを含むフレームからＨＥＣを含むフレームまでのフレーム数であるフレーム遅延を求めること、を含む方法。
【請求項１８】
見つけられた前記ヘッダの選択されたタイムスロットを使用して新たなウィンドウを形成すること、及び更に別のヘッダに関して（３）から（７）のステップを繰り返すことを更に含むことを特徴とする請求項１７に記載の方法。
【発明の詳細な説明】
【０００１】
［背景］
１．発明の分野
本発明は非同期転送モード（ＡＴＭ）として知られているパケット技術に関連し、詳細には独立同期デジタル・ハイアラーキ（ＰＨＤ）伝送ネットワークで受信されたタイムスロットの（フレームに関する）遅延を求めることに関連する。
【０００２】
２．関連する技術及び他の考慮すべき事項
マルチメディア・アプリケーション、ビデオ・オン・デマンド、テレビ電話、及びテレビ会議のような高い帯域のサービスに対する関心の増大により、広帯域統合サービス・デジタル・ネットワーク（Ｂ−ＩＳＤＮ）の開発が進んでいる。Ｂ−ＩＳＤＮをサポートするのに適した技術は非同期転送モード（ＡＴＭ）として知られており、これは電気通信能力のかなりの拡張をもたらす。
【０００３】
ＡＴＭはパケット指向の転送モードであり、非同期の時分割多重技術を使用する。パケットはセルと呼ばれ、伝統的には固定サイズである。伝統的ＡＴＭセルは５３個のオクテットを含んでおり、その５個がヘッダを形成し４８個が「ペイロード」すなわちセルの情報部分を構成する。ＡＴＭセルのヘッダはヘッダ誤り制御（ＨＥＣ）バイト、並びにセルが移動すべきＡＴＭネットワーク内の接続を識別するのに使用される２つの量、具体的にはＶＰＩ（仮想パス識別子）及びＶＣＩ（仮想チャネル識別子）を含んでいる。概して、仮想パスはネットワークの２つのスイッチング・ノード間で規定された主要なパスであり、仮想チャネルは主要なパスそれぞれに関する１つの特定の接続である。
【０００４】
その終端点で、ＡＴＭネットワークは、例えばＡＴＭネットワーク・ユーザなどの端末機器に接続されている。通常、ＡＴＭネットワーク終端点間には複数のスイッチング・ノードがあり、スイッチング・ノードは物理的伝送パスあるいはリンクに共に接続されるポートを有している。このように、発信元端末機器から送信先端末機器への移動で、メッセージを形成するＡＴＭセルはいくつかのスイッチング・ノードを通って移動する。
【０００５】
スイッチング・ノードは複数のポートを有しており、その各々はリンク回路及び他のノードへのリンクに接続され得る。リンク回路はリンクで使用されている特定のプロトコルに従ってセルのパッケージングを行う。スイッチング・ノードへの到着セルは第１のポートからスイッチング・ノードに入り、リンク回路を介して第２のポートから別のノードに接続されたリンクに出る。各リンクは複数の接続に対してセルを運ぶことができ、接続は例えば、発呼加入者あるいはパーティと着呼加入者あるいはパーティとの間の伝送である。
【０００６】
スイッチング・ノード各々は通常いくつかの機能部分を有しており、その主要なものはスイッチ・コアである。スイッチ・コアは基本的にスイッチのポート間の交差接続のように機能する。スイッチ・コア内部のパスは選択的に制御され、その結果、最終的にスイッチの入口側からスイッチの出口側へ、最終的には発信元端末機器から送信先端末機器へメッセージの移動を可能とするようにスイッチの特定のポートが一緒に接続される。
【０００７】
現在、低速のアプリケーションに対するＡＴＭ伝送ネットワークは、主として独立同期デジタル・ハイアラーキ（ＰＨＤ）伝送ネットワーク（ＩＴＵ−Ｔ勧告Ｇ．７０２参照）に基づいている。例えば、１５４４及び２０４８のフレーム構造両方に対する、異なったＰＨＤビット・レートでのＡＴＭセルの転送のためのマッピングが提供されている（ＩＴＵ−Ｔ勧告Ｇ．８０４、独立同期デジタル・ハイアラーキ（ＰＨＤ）へのＡＴＭセル・マッピング（１９９３年１１月）参照）。これらのフレーム構造は、ＩＴＵ−Ｔ勧告Ｇ．７０４、「１５４４、６３１２、２０４８、８４８８及び４４７３４ｋｂｉｔ／ｓ階層レベルで使用される同期フレーム構造」（１９９５年７月）に記載されており、マルチフレームの各フレームは一連のタイムスロットを有しており、タイムスロットはオクテット構造である。
【０００８】
ＡＴＭセルのＩＴＵ−Ｔ勧告Ｇ．８０４に記載されたフレームへのマッピングは、１．５及び２Ｍｂ／ｓのＰＣＭベースのＡＴＭ接続に対する一定の基本的原理を含んでいる。これらの基本的原理を以下に示す：（１）ＡＴＭセルは全てのタイムスロットに連続した順序でマップされる（各ＡＴＭセルがいくつかのタイムスロットをカバーしている）；（２）ＡＴＭセル内のバイトはフレームのオクテット構造にアライメントされる；（３）セルは５３バイトのレートでありフレーム構造にアライメントされない；（４）タイムスロット１−１５及び１７−３１は２Ｍｂ／ｓ接続のＡＴＭセルに使用される（タイムスロット１６は使用されない）；（５）タイムスロット１−２４は１．５Ｍｂ／ｓ接続のＡＴＭセルに使用される；（６）ＡＴＭセルのペイロードの４８バイトは、偽の記述から保護するためにスクランブルされ得る；（７）空のセルがフィラーとして伝送される。空のセルは３つのタイプがある、すなわち、アイドル・セル、非割り当てセル、及びＩＭＡフィラー・セルである。アイドル・セルは以下のオクテット値（１６進数を末尾にＨを付して示している）、すなわち、００Ｈ、００Ｈ、００Ｈ、０１Ｈ及び５２Ｈ（５２Ｈはヘッダ誤り制御（ＨＥＣ）バイトである）、を有する所定のヘッダを有している。ＡＴＭアイドル・セルのペイロードは４８個のオクテットそれぞれに６ＡＨの値を有している。非割り当てセルは以下のオクテット値、すなわち、００Ｈ、００Ｈ、００Ｈ、００Ｈ、５５Ｈのヘッダを有している。ＡＴＭに対する逆多重化（「ＩＭＡ」）では、フィラー・セルがアイドル・セルの代わりとなる。ＩＭＡのフィラー・セルは、００Ｈ、００Ｈ、００Ｈ、０ＢＨ、及び６４Ｈのパターンを有している。
【０００９】
フラクショナル・マッピングは、フレームのタイムスロットの一部、例えば、１から３０のタイムスロット、だけを使用することに係る。フラクショナル・マッピングは、各タイムスロットが「使用」状態あるいは「未使用」状態のいずれかであるスクリーニング・マスクとして概念化され得る。一般的なフラクショナル・マッピングは、ＩＴＵ−Ｔ勧告Ｇ．７０４に詳述されている。ＡＴＭのフラクショナル・マッピング自体はＩＴＵ−Ｔ勧告Ｇ．８０４に詳述されていないが、ＩＴＵ−Ｔ勧告Ｇ．７０４のフラクショナル・マッピングをＡＴＭに適用できる。
【００１０】
５３オクテットというＡＴＭセルの長さは最も重要な数であるので、ＡＴＭセルのヘッダは全てのタイムスロットに渡って（フレーム毎に使用されるタイムスロットの数が５３未満である限り）周期的に移動する。使用されるタイムスロットの数が５３未満であるとき、以下の特性が適用できる。すなわち、（１）各タイムスロットが、５３フレームの間隔内にちょうど１回ＡＴＭセルのスタート・バイトを含む；（２）５つの連続したタイムスロットが、５３フレームのマルチフレーム又は周期内に完全なＡＴＭヘッダを有する；（３）タイムスロットｎのＡＴＭセルの開始とタイムスロットｎ＋１のＡＴＭセルの開始との間に決定論的な数のフレームが存在する。
【００１１】
以下に述べるように、ＡＴＭ転送に使用されるタイムスロットが遅延され得る技術が想定されている。従って、必要とされ本発明の目的とするところは、そのような遅延を補償すべくタイムスロットをアライメントする技術である。
【００１２】
［本発明の簡単な要旨］
タイムスロット・アライナーは、独立同期デジタル・ハイアラーキ（ＰＨＤ）伝送ネットワークで受信されたフレームのタイムスロットの（フレームに関する）遅延を求める。本発明によるタイムスロットのフレーム／遅延決定技術によれば、タイムスロット・アライナーはすぐ近くのフレーム内の連続した５個のタイムスロットを調べてＡＴＭセルの最初のヘッダを見つける。一旦最初のヘッダが見つかると、ヘッダを含む各タイムスロットに対するフレーム／遅延値が求められる。そしてヘッダの選択されたタイムスロットに対するフレーム／遅延値が、次のヘッダを探すのに使用されるウィンドウを形成するのに使用される。次のＡＴＭセルに対する次のヘッダを探すのは、他のフレームまでウィンドウをスライドさせること、及びスライディング・ウィンドウによって囲まれたヘッダのＨＥＣバイトを形成する連続したタイムスロット内で、ある値を探すことを必然的に含む。次のヘッダの位置が見つかったとき、フレーム／遅延決定はヘッダの最後のタイムスロット、例えば、ＨＥＣバイトを形成したタイムスロット、に対してだけ行われる必要がある。そして最も最近得られたヘッダからのフレーム／遅延パターンを用いて新しいウィンドウが形成され、更に別のヘッダを探すためにその新しいウィンドウがスライドされる。ヘッダ位置、タイムスロットのフレーム／遅延決定、及び新しいウィンドウの形成が、全てのタイムスロットに対してフレーム／遅延が決定されるまで続けられる。
【００１３】
タイムスロットのフレーム／遅延決定技術の２つのモード、詳細にはトライアル及びＨＥＣ−エラー・モードとアイドル・セル・アライナー・モードとの２つのモードが提供される。アイドル・セル・アライナー・モードでは、一旦アイドル・セルの最初のヘッダの位置が見つかると、どのフレームが所定の位置、例えば、最初のヘッダの第２のタイムスロット、で始まる次のＡＴＭセルのヘッダを有しているのかを求めるのに既知の関係が用いられる。所定の関係と最初のヘッダのウィンドウとが、次のヘッダのＨＥＣでない全てのバイトの位置を見つけるのに使用される。次のヘッダのＨＥＣでないバイトの中身を使用して、次のヘッダに対するＨＥＣ値が計算される。そして計算されたＨＥＣ値は適切なタイムスロット内に配置され、それに対するフレーム／遅延が求められる。アイドル・セル・アライナー・モードは、全てのタイムスロットに対するフレーム／遅延の決定が行われるまで、新たなヘッダを探し、その最後のタイムスロット（ＨＥＣタイムスロット）のフレーム／遅延を求め、別のヘッダの位置を見つけるのに（既知の関係と共に）使用する新たなウィンドウを形成するのを続ける。
【００１４】
［詳細な説明］
本発明の上記及び他の目的、並びに利点は、様々な図を通じて同じ部分を同じ参照符号で参照している添付の図面に示された好適な実施形態のより詳細な説明から明らかになるであろう。図面に縮尺は必要ないが、代わりに本発明の原理を表わすように強調されている。
【００１５】
以下の記載では、本発明をより良く理解してもらうべく、特定のアーキテクチャ、インターフェース、技術、のような特定の詳細事項を記載するが、これは限定ではなく説明のためである。しかしながら、本発明がこれら特定の詳細事項とは異なる他の実施形態として実現できることは当業者には明らかであろう。他の例では、不必要な詳細事項により本発明の説明が解りにくくならないように、周知の装置、回路、及び方法の詳細な記載は省略した。
【００１６】
ＡＴＭセルがＰＤＨフレームにマッピングされる画期的な技術の例を、図１Ａ及び図１Ｂを参照して示す。図１Ａは、２４Ａで概略的に示された伝送ネットワークによって基地局コントローラ２２Ａに接続された基地局２０Ａを含む、従来技術の実際の移動体通信システムを示している。図示されていないが、基地局２０Ａがエア・インターフェースを介して無線周波数で移動局と通信していることは理解されるであろう。基地局コントローラ２２Ａは他の基地局コントローラに接続されていてもよく、また、（複数の）ゲートウェイを介して他の通信ネットワークに接続されていてもよい。ここで示した実施形態では、移動体通信システム１８Ａは、欧州で利用されている、移動体通信用グローバル・システム（ＧＳＭ）の形態を採用している。
【００１７】
図１Ａに示されたように、２Ｍｂ／ｓの伝送ネットワーク２４Ａは、ＧＳＭベースのサービスによって（２６Ａの矩形部分にハッチングで「専用線」と示されているように）その帯域幅の一部だけが利用されているかもしれない。既存のインフラストラクチャの未使用の容量を利用するために、変更が行われ、その結果移動体通信システム１８ＢにはＵＭＴＳとしても知られている新たなＡＴＭベースのサービスが加えられている。拡張した移動体通信システム１８Ｂでは、ＡＴＭベースの基地局３０Ｂは２Ｍｂ／ｓのリンク３１によってＧＳＭ基地局２０Ｂに接続され、ＡＴＭベースの無線ネットワーク・コントローラ（ＲＮＣ）３２Ｂは２Ｍｂ／ｓのリンク３３によってＧＳＭ基地局コントローラ２２Ｂに接続されている。ＡＴＭベースのサービスは、「専用線」として示されている矩形２６Ｂのような、既存のＧＳＭネットワークの予備の伝送容量を使用する。拡張は、既存の構成及びトラフィックの大きな変更や妨害を行わずに、ＡＴＭノードを既存のノードに追加することで実施される。
【００１８】
既存のＧＳＭネットワークのほとんどはタイムスロット指向であるが、多くのＧＳＭスイッチは６４ｋｂ／ｓの接続だけしか扱えない。その上、いくつかの６４ｋｂ／ｓのスイッチが一緒に切り替えられると、異なったタイムスロットの遅延が生じ得る。更に、ＡＴＭサービスに対するＰＣＭベースの１．５及び２Ｍｂ／ｓの接続で、タイムスロットのいくつかあるいは図べてを使用するのが望ましい状況も生じ得る。
【００１９】
図２Ａ及び図２Ｂは、フレームの一部を示す概略図である。ここで用いられているように、「フレーム」はＩＴＵ−Ｔ勧告Ｇ．８０４に記載されたのと同様であり、（例えば）３２又は３４個のタイムスロット（それぞれ２Ｍｂｐｓ及び１．５Ｍｂｐｓに対して）含んでいる。フレームは８ｋＨｚの繰り返し率で繰り返され、１つのタイムスロットがフレームの６４ｋｂｐｓのチャネルの１つに関連している。図２Ａでは、ＡＴＭセルのバイトＡ−Ｌが、同じフレーム、すなわちフレーム０の１２個の連続したタイムスロットで連続して受信されたものとして示されている。このように図２Ａは遅延がない状況を示している。一方、図２Ｂでは、図２Ｂのフレームが６４ｋｂ／ｓベースのスイッチで切り替えられた結果により生じ得るシナリオを示している。図２Ｂに示されたシナリオを参照すると、タイムスロット３のバイトＣは「１」のフレーム／遅延があり、タイムスロット５のバイトＥは「２」のフレーム／遅延がある、などと言える。
【００２０】
従って、図２Ｂに示されたように、そのような状況でＡＴＭセルを受信する接続を確立すると、各タイムスロットに対してフレーム／遅延を求めるあるいは較正する（calibrating）技術が必要となる。「フレーム／遅延」は、指定されたタイムスロットのバイトがＡＴＭセルの基準バイトからオフセットされたフレームの数を意味する。基準バイトは、例えば、最初のＡＴＭセルのヘッダの最初あるいは最後のバイト（ＨＥＣバイト）でもよい。後に理解されるであろうが、フレーム／遅延は正の数（指定されたタイムスロットのバイトが後続のフレームで見つかったことを示している）でも、負の数（指定されたタイムスロットのバイトが先行するフレームで見つかったことを示している）でもよい。タイムスロットに関してフレーム／遅延を求めるプロセスをここでは、「タイムスロット・アライメント決定」あるいはタイムスロット遅延較正と呼ぶ。
【００２１】
以下でより詳細に動作を説明する本発明のタイムスロット・アライメントは、ＡＴＭノードのタイムスロット・アライナーで実施される。図３は、本発明のタイムスロット・アライナー６０が利用され得るＡＴＭノード５０の例を示している。タイムスロット・アライナー６０は、インターフェース基板６２に設けられ、該基板はノードのＡＴＭスイッチ６４と外部インターフェース６６の中間に配置されている。例示したＡＴＭノード５０は、例えば、無線ネットワーク・コントローラ３２Ｂや基地局３０Ｂなどの移動体通信ネットワーク１８Ｂ（図１Ｂ参照）の何れかのノードでもよい。ＡＴＭノード５０が無線ネットワーク・コントローラ３２Ｂである場合、外部インターフェース６６はリンク３１に接続される。
【００２２】
外部インターフェース６６からのフレームは、インターフェース基板６２上のフレーマ及び回線回路７０で受信される。タイムスロット・アライナー６０は、フレーマ及び回線回路７０からフレーム・データ及びレート（ライン７２による）とフレーム同期信号（ライン７４で）との両方を受信する。フレーム・データ及びレートとフレーム同期信号とは、タイムスロット・アライナー６０から伝送集合回路７６にライン８２及び８４でそれぞれ出力される。ＡＴＭ層回路７６は伝送集合回路７６とＡＴＭスイッチ６４とを双方向に接続する。出口側では伝送集合回路７６はフレーマ及び回線回路７０に接続されている。
【００２３】
図３のインターフェース基板のようなインターフェース・ポートには、ＡＴＭ標準に従った３つの慣習的状態がある。これら３つの状態は、ハント（Hunt）、予備同期（Presync）、及び同期（Sync）である。本発明の全体的な目標（各タイムスロットに対する遅延補償を得る）を達成するために、図示した実施形態では、「アライン・ハント（Align Hunt）」と呼ぶ新たな状態を設けた。この新たなアライン・ハント状態には、ハント及び予備同期の状態が所定時間（例えば、３０秒）うまくいかなかったときに移る。本発明のモードが実行されるのはアライン・ハント状態においてである。サンプルが正しくアライメントされた（例えば、フレーム／遅延が各タイムスロットについて決定された）ときに、アライン・ハント状態から抜ける。しかしながら、ＬＯＳやＡＩＳのように回線の物理的媒体に故障があると、アライン・ハント状態には移らない。
【００２４】
上記で指摘したように、本発明の全体的な目標は各タイムスロットに対する遅延補償を得ることである。本発明のタイムスロット・アライナー６０で実行されるタイムスロット・アライメント決定技術には２つのモードがあるが、両方のモードは同じ基本的原理を利用する。第１のモードは「トライアル及びＨＥＣ−エラー」モードとして知られ、第２のモードは「アイドル・セル・アライナー」モードとして知られている。
【００２５】
トライアル及びＨＥＣ−エラー・モードに含まれる基本的ステップを図４に示す。図５Ａは、トライアル及びＨＥＣ−エラー・モードを説明するフレームのセットの例を表している。ここで用いる「フレームのセット」とは、アライニング手順で使用される複数の入力フレームを意味する。トライアル及びＨＥＣ−エラー・モードの場合、フレームのセットはアライメント手順の間に使用されるフレームの連続した流れである。説明する例ではフレームのセットは５３のフレームを含み、各フレームは（図５Ａのフレームのセットの上側に渡って符号を付けたように）１３のタイムスロットを有している。トライアル及びＨＥＣ−エラー・モードは、受信したデータを、例えば、ネットワークの他端にあるソースから提供される連続したデータを用いて、リアルタイムでモニタする。トライアル及びＨＥＣ−エラー・モードが始動されると、タイムスロットの異なった補償（例えば、遅延）をテストするために、フレーム遅延メモリにいくつかのフレームを格納することが必要となる。すなわち、トライアル及びＨＥＣ−エラー・アライメント技術では、初期解析のため、開始によりフレームのセットのいくつかのフレームがメモリに格納される。
【００２６】
図４のステップ４−１は、本発明のタイムスロット・アライメント決定技術のトライアル及びＨＥＣ−エラー・モードの開始を表している。開始のとき、フレームのセットの少なくともいくつかはメモリ内にロードされている。そして、トライアル及びＨＥＣ−エラー・モードの最初のステップ４−２が行われる。ステップ４−２では、タイムスロット・アライナー６０はフレームのセットの最初のヘッダを見つけ、最初のヘッダ内の各タイムスロットに対するアライメントを求める。
【００２７】
ステップ４−２に含まれるサブステップが図４Ａに示されている。最初のサブステップ４Ａ−１として、タイムスロット・アライナー６０は、１つ以上のフレームの第１の連続した複数のタイムスロットの内容が、所定の基準、例えば、有効なＨＥＣを有するヘッダを形成する、を満たすかどうかを判定するために、フレームのセットの１つ以上のフレームを調べる。再度述べるが、ＡＴＭヘッダは５オクテットであり、その５番目はヘッダ誤り制御（ＨＥＣ）バイトであり、そ中身はヘッダの最初の４つのバイトの中身に数学的に基づいている。このため、サブステップ４Ａ−１では、タイムスロット・アライナー６０は、フレームのセットの最初の５つのコラム（タイムスロット）を調べて、そこから有効なヘッダを構成できる最初の５つのタイムスロットを有する１つ以上のフレームを探す。すなわち、タイムスロット・アライナー６０は、これら５つのタイムスロットにおける異なった遅延の組み合わせを、有効な組合せ、例えば、有効なヘッダがみつかるまでテストする。「予備同期」として知られるヘッダの有効性確認（バリデーション）は、このヘッダ内の正しいヘッダをちょうど５３フレームに１回調べることで達成される。図５Ａの例のようになると、最初のヘッダＨＡがバイトＨＡ１−ＨＡ５（バイトＨＡ５はヘッダＨＡのＨＥＣである）で見つかる。便利なことに、ヘッダＨＡの全てのバイトが第１のフレーム（フレーム１）見つかったが、タイムスロット・アライナー６０は、フレーム１のタイムスロット０−１及び３−４に関する有効なヘッダを形成することとなる、タイムスロット２（第３のタイムスロット）のバイトを見つけるためにフレーム２を調べる必要がある。
【００２８】
ここで用いたように、「連続したタイムスロット」という語句は、ＡＴＭの観点から使用する。ＰＤＨフレームの使用したタイムスロットが連続している必要はない。換言すれば、ＡＴＭの観点から、フレームの最後の３つのタイムスロット及び最初の２つのタイムスロットは、連続したタイムスロットである。
【００２９】
サブステップ４Ａ−１で最初の有効なヘッダ（例えば、ヘッダＨＡ）の位置が見つかったら、サブステップ４Ａ−１で最初の有効なヘッダを形成するタイムスロットに対するフレーム／遅延値が求められる。図５Ａの例では、例えば、タイムスロット０−４は「０」のフレーム／遅延値を有しているが、最初の有効なヘッダ（例えば、ヘッダＨＡ）を構成するタイムスロット２のバイトは、最初の有効なヘッダに対する基準バイトのフレームから１フレームオフセットされているので、タイムスロット２は「１」のフレーム／遅延値を有している。このように、サブステップ４Ａ−２では、最初の複数の連続したタイムスロットそれぞれに対して遅延値が求められ、遅延値はどのフレームがヘッダの基準（例えば、ヘッダの他のオクテットからヘッダに属すると認定される内容及びヘッダの位置が見つかったＨＥＣ）を満たす内容を有しているかに従って決定される。
【００３０】
有効な最初のヘッダの検出（例えば、ヘッダＨＡ）及びそのタイムスロットに対するフレーム／遅延値が決定されると、ステップ４−２で、初期ヘッダの選択されたタイムスロットに基づいて初期ウィンドウが形成される。図示した例では、ヘッダの選択されたタイムスロットは、ヘッダの最初のタイムスロット以外の全てのタイムスロットである。例えば、図５Ａに示されたフレーム／遅延パターンは（ヘッダＨＡに対する）ウィンドウＷＡとして表わされている。ウィンドウＷＡは、０，＋１，０，０のフレーム／遅延パターンを有している。
【００３１】
ステップ４−４でウィンドウＷＡは、次のヘッダを見つけるためにフレームのセットのフレームの中を移動させられる。ウィンドウＷＡの移動は、図５Ｂに枠ＷＡの移動で示されたような方法で、フレームのセットの行方向に行われる。タイムスロット・アライナー６０は、フレームのセットのフレームに沿ってウィンドウＷＡのテンプレート状のパターンをスライドさせ、ウィンドウＷＡの各移動あるいは垂直方向にシフト毎に、移動ウィンドウＷＡによって枠組みされたバイトについて、ＨＥＣバイトを形成するバイトを探して、タイムスロット５のバイトだけをチェックする。図５Ｂは、ウィンドウＷＡを用いてタイムスロット・アライナー６０が次の有効なヘッダＨＢを見つけたのを示している。図５Ｂに示されたように、ヘッダＨＢは連続したタイムスロット１−５からの５つのオクテットＨＢ１−ＨＢ５を含んでいる。
【００３２】
次のヘッダ（例えば、ヘッダＨＢ）の位置が決定されたので、タイムスロット・アライナー６０はヘッダＨＢの最初の４つのバイトのフレーム／遅延を求める必要はない。なぜなら、これらタイムスロットのフレーム／遅延は１つのフレームから別のフレームまで一定であるからである。しかしながら、タイムスロット・アライナー６０は次のヘッダのＨＥＣバイト、例えば、図５Ｂの例でヘッダＨＢのＨＥＣバイトＨＢ５、の遅延を求める必要がある。ステップ４−５は、タイムスロット・アライナー６０が次のヘッダのＨＥＣを含むタイムスロットのフレーム／遅延を決定するのを示している。図５Ｂの例では、タイムスロット５にあるヘッダＨＢのＨＥＣバイトＨＢ５は、＋２のフレーム／遅延を有している。従って、フレームのセット全体を通じて、タイムスロット５は、＋２のフレーム／遅延を有するであろう。例えば、ヘッダＨＡを有するセルのペイロードの最初のオクテットＰＡが図５Ｂのフレーム３内に存在するように、ヘッダＨＡを有するセルのペイロードの最初のオクテットＰＡも＋２のフレーム／遅延を有するであろう。
【００３３】
ステップ４−６で、フレームのセットの全てのタイムスロットに対してアライメントが求められたかどうかの判定がなされる。図５Ａ及び図５Ｂを参照して述べた例では、１３のタイムスロットの５つのフレーム／遅延だけが求められたので、この条件に合わない。このように、フレーム／遅延を求めるタイムスロットがまだ残っているとき、処理はステップ４−７へ進み、ここで新たなウィンドウが（検討された限りにおいて）次のヘッダ（例えば、ヘッダＨＢ）の選択されたタイムスロット（例えば、第１以外の全てのタイムスロット）に基づいて形成される。ステップ４−７で、タイムスロット・アライナー６０は、ヘッダＨＢの最初以外の全てのバイトのフレーム／遅延パターンに基づいて、更に新しいウィンドウを形成する。この点について、図５Ｃは、ヘッダＨＢの最初以外の全てのバイトのフレーム／遅延パターンに基づいた新たなウィンドウＷＢを示している。
【００３４】
フレーム／遅延を求める必要のあるタイムスロットがまだ残っていると判定されたとき、また別のヘッダを見つけるために新たに形成されたウィンドウが利用されるように、処理はステップ４−４に戻る。例えば、ステップ４−４から４−８を含むループの２回目の実行において、（ステップ４−４で）次のヘッダ（図５Ｃの例に示されているヘッダＨＣ）を見つけるのにウィンドウＷＢが用いられる。次のヘッダのＨＥＣバイトのフレーム／遅延は、ステップ４−５で求められ、その後にステップ４−６の判定などが同様に行われる。
【００３５】
図４のループ処理のステップは、フレームのセット全てについてフレーム／遅延値が求められるまで実行される。図４のループの実行回数は、ｑをＡＴＭセルのヘッダに含まれるオクテット（バイト）の数（慣習的にはｑ＝５）とすると、Ｎ−（ｑ＋１）によって表わされる。このように、図５Ａから図５Ｃに示した例について、ステップ４−４から４−６のループが、最初のヘッダＨＡを求めた後、Ｎ＝８回実行される。
【００３６】
図６は、後続するタイムスロットに位置する最初のバイトを有するヘッダを探して、本発明のウィンドウがフレームのセットの中を移動するのを示している。例えば、図６のウィンドウＷＡは、フレームのセットの最初のヘッダＨＡの位置を決定するのに形成されたウィンドウを表している。図６のウィンドウＷＡ近辺の複数の両矢印は、ヘッダＨＡの全てのバイトに対して多重フレームを通して探す必要があったことを反映している。第２のヘッダ（例えば、ヘッダＨＢ）に対するウィンドウＷＢは、ウィンドウＷＡから１タイムスロットオフセットされている。ウィンドウＷＢ近辺の単一の両矢印は、ヘッダＨＢの最初の４バイトを見つけるのにウィンドウＷＡが利用でき、タイムスロット・アライナー６０が１つのタイムスロット、例えば、最後のタイムスロット（すなわち、ＨＥＣバイト）だけを探して、その１つのタイムスロットに対するフレーム／遅延値を求める必要があったことを示している。図６は更に、ウィンドウＷＣ、ＷＤ等の、フレームのセットに渡る水平のシフトを示している。単純化のため図６はウィンドウが垂直に下降するように移動するのを示しているが、単一方向のウィンドウの移動が必要なのではなく、（フレーム遅延に応じた）ウィンドウの垂直の移動（例えば、フレーム数に関しての）が変化することに留意されたい。
【００３７】
図６はまた、各タイムスロットに対するフレーム／遅延が５つのヘッダで検査されることを反映している。例えば、図６に示されているように、タイムスロット４のフレーム／遅延は、５回、すなわち、ＷＡ、ＷＢ、ＷＣ、ＷＤ及びＷＥについて検査される。
【００３８】
フレーム／遅延値が全てのタイムスロットについて図４のような方法で求められたとき、タイムスロット・アライナー６０はトライアル及びＨＥＣ−エラー・モードのタイムスロット・アライメント決定技術を終了し（ステップ４−８参照）、他のフレームのセットを受信可能であり、既に行ったタイムスロット・アライメント決定に基づいて、適切なスロットのアライメントを行うことによってフレームのセットを処理し、それによりＡＴＭセル全体を回復する。
【００３９】
図７は、図４に基本的に説明した機能（例えば、ステップ）を有する、トライアル及びＨＥＣ−エラー・モードのタイムスロット・アライメント決定技術を実施するタイムスロット・アライナー６０の主要な機能ブロックを示している。図７のタイムスロット・アライナー６０は、ライン７２でデータ及びレート、ライン７４でフレーム同期信号を受信する。フレーム同期信号は、コントローラ２００及びタイムスロット・カウンタ２０２の両方に供給される。データ及びレートは、タイムスロット・カウンタ２０２、スイッチ２０４、及びフレーム遅延メモリのバンク２０６に供給される。フレーム遅延メモリのバンク２０６のレジスタあるいはフレーム位置２０６Ａ、２０６Ｂ等の各々は、その出力を２０４又はフレーム遅延メモリ２０６の次に続く１つのいずれかに供給すべく接続されている。タイムスロット・カウンタ２０２で求められたタイムスロット・カウント値は、（ライン２１０で表わされているように）スイッチ・メモリ２１２及びウィンドウ・コントローラ２１４に出力される。スイッチ・メモリ２１２及びウィンドウ・コントローラ２１４の両方は、コントローラ２００に管理されている。セル・ヘッダ検出器２２０は、セル・ヘッダを探してスイッチ２０４の出力を解析するように接続されている。
【００４０】
較正段階において、タイムスロット・アライナー６０は、ＡＴＭ接続が確立されると、フレームのセットのサンプルの各タイムスロットについて、（トライアル及びＨＥＣ−エラー・モードに従って）フレーム／遅延決定を行う。その後、通常のトラフィック段階において、タイムスロット・アライナー６０は、較正段階で求められたフレーム／遅延に従って、フレームのトラフィックのセットについてタイムスロット・アライメントを行う。較正段階では、トライアル及びＨＥＣ−エラー・モード技術が行われるフレームのセットのサンプルから、連続したフレームがフレーム遅延メモリのバンク２０６の中に順次シフトされる。コントローラ２００に管理されて、コントローラ２００が、例えば、解析のために選択されたメモリのバンクからフレームを読み出すためにスイッチ・メモリ２１２を制御して、トライアル及びＨＥＣ−エラー・モード技術が開始される。セル・ヘッダ２２０は、初期ヘッダを見つける際、並びにウィンドウが移動されたときに後続するヘッダを見つける際に、図４のステップ４−２の機能を実行する。ウィンドウ・コントローラ２１４は、セル・ヘッダ検出器２２０から集められた情報を用い、コントローラ２００に管理されて、他のヘッダを探すのに関連するウィンドウの形成（ステップ４−３及びステップ４−７）とウィンドウの移動（ステップ４−４）とを受け持つ。
【００４１】
フレーム遅延メモリのバンク２０６は、先入れ先出しメモリであり、フレーム長（例えば、通常の２Ｍｂ／ｓの信号に対しては２５６バイト；１．５Ｍｂ／ｓに対しては１９３バイト）に対応する固定サイズでよい。スイッチ２０４は、異なるフレーム／遅延に対する読み出しを補償するように働く。スイッチの先頭位置は最大のフレーム／遅延に対応し、次の位置は１つ少ないフレーム／遅延に対応する、等々となっている。バンク２０６のフレーム遅延メモリ、スイッチ２０４、及びタイムスロット・カウンタ２０２は、単一の回路で実現されるのが好ましいが、個々の構成要素であってもよい。上述のように、タイムスロット・アライナー６０の様々な構成要素は、ＦＰＧＡ、ＰＧＡあるいはＡＳＩＣとして製造されてもよく、コントローラ２００は例えば、マイクロプロセッサによって実現されてもよい。
【００４２】
図８は、本発明のタイムスロット・アライメント決定技術のアイドル・セル・アライナー・モードに係る基本的ステップを示している。ステップ８−１は、アイドル・セル・アライナー・モードの開始を示しており、ここではとりわけ、タイムスロット・アライメント決定技術での使用のためにフレームの第１のセットが格納される。アイドル・セル・アライナー・モードの場合、フレームのセットは５３フレームにマージンとして付加的フレームを加えたものである。３１タイムスロットのフレームのセットには、約２キロバイトのメモリが必要である。ステップ８−２では、アイドル・セル・アライナー・モードに従って動作するタイムスロット・アライナー６０は、初期ヘッダを見つけそのタイムスロットのアライメントを求める。加えて、ステップ８−２では、タイムスロット・アライナー６０はヘッダの最初のバイトの位置（タイムスロット）を記録する。
【００４３】
図４のトライアル及びＨＥＣ−エラー・モードのステップ４−１と同様の目的を持っているが、アイドル・セル・アライナー・モードのステップ８−２は異なったやり方で実施する。ステップ８−２では、タイムスロット・アライナー６０は、アイドル・セルを探してフレームのセット全体を調べる。従来より、アイドル・セル・ヘッダは以下の値（１６進数を末尾にＨを付して示している）、すなわち、００Ｈ、００Ｈ、００Ｈ、０１Ｈ、５２Ｈを有するものとして定義されており、ここで５２Ｈはアイドル・セルのＨＥＣバイトである。ＡＴＭリンクの確立の間、セルのフローは最初はほとんど全体がアイドル・セルであり、そのためアイドル・セル・アライナー・モードの開始の間にアイドル・セルを探すのは問題とはならない。リンクの確立の後、アイドルセルの頻度はＡＴＭリンクの負荷に直接関係する。
【００４４】
アイドル・セル・アライナー・モードの最初の仕事である初期ヘッダの検出、例えば、ステップ８−２は、図８Ａに示される様々なサブステップを含んでいる。最初のサブステップ８Ａ−１で、アイドル・セルのＨＥＣバイト（すなわち、５２Ｈ）の位置を決定する。そして、サブステップ８Ａ−２のように、タイムスロット・アライナー６０は、ヘッダの先行する３つのバイト、すなわち、パターン０１Ｈ、００Ｈ、００Ｈを（逆の順番で）見つけるために、近くのフレームの先行する３つのタイムスロットを検査する。ヘッダの最初のバイトは既に述べた移動アライメント技術によって見つけられる。アイドル・セル・ヘッダ全体が見つかったら、サブステップ８Ａ−３のように最初のバイトの位置（例えば、タイムスロット）が記録される。そして、図４のトライアル及びＨＥＣ−エラー・モードのステップ４−１と同様の方法で、サブステップ８Ａ−４で、タイムスロット・アライナー６０は、アイドル・セル・ヘッダを形成するタイムスロット各々に関して、どのフレームがアイドル・セル・ヘッダの中身を有していたかに従って、フレーム／遅延値を求める。
【００４５】
図９は、アイドル・セル・アライナー・モードが、各フレームが３０のタイムスロットを有する５３のフレームを含むフレームのセットに対して動作する単純化した例を示している。図９の参照符号８Ａ−１は、アイドル・セル・ヘッダである可能性があるＨＥＣの位置を示している。アイドル・セル・ヘッダの先行する４つのバイトの位置決定は参照符号８Ａ−２で示されている。参照符号８Ａ−３は、見つけられたヘッダの最初のバイト、例えば、最初のタイムスロットの位置を正確に示している。単純化のため、最初に見つけられたアイドル・セル・ヘッダを形成する全てのバイトが同じフレーム（例えば、図９のフレームのセットの１行目のように示している）にあり、そのためこれら全てのタイムスロットに対するフレーム／遅延値がゼロとしている。常にあるいは普通にはこのようにはならないことを理解されたい。むしろ、例えば、図５に描かれたように、１つ以上のタイムスロットにフレーム遅延が存在するであろう。このような理由により、上記ではサブステップ８Ａ−２でタイムスロット・アライナー６０が、完全なアイドル・セル・ヘッダの残りを見つけるために近くのフレームの先行する４つのタイムスロットを検査すると明記した。
【００４６】
このように、図９は、アイドル・セル・ヘッダの最初のバイトがタイムスロット１４で始まっており、フレーム１で見つけられた最初のアイドル・セル・ヘッダを示している。最初のアイドル・セル・ヘッダはフレームのセットの最初のフレーム内に位置していなくてもよいことに留意すべきである。
【００４７】
ステップ８−３では、タイムスロット・アライナー６０は、最初のアイドル・セル・ヘッダから記録されたフレーム／遅延値のパターンに基づいて、ウィンドウを形成する。このようなウィンドウの形成は、図５Ａに関して既に説明した比較可能なウィンドウＷＡによって理解されるが、ウィンドウの構成はサブステップ８Ａ−４で記録されたフレーム／遅延値に応じたものである。再度述べるが、最初のアイドル・セル・ヘッダの最後の４つのタイムスロットだけがウィンドウに利用されるという点で、ウィンドウは選択されたタイムスロットに基づいている。
【００４８】
ステップ８−４では、タイムスロット・アライナー６０は、次のヘッダ、すなわち、先行するヘッダの最初のタイムスロットに続くタイムスロットで始まるヘッダ、を有するフレームを求めるのに、既知あるいは所定の関係を用いる。既知の関係により、最初のＡＴＭセルと第２のＡＴＭセルとを分離しているフレームの数を示す値Ｘが得られる。換言すれば、タイムスロット・アライナー６０は、ちょうど位置が決定されたヘッダを有するセルのＸフレーム後に、あるいはちょうど位置が決定されたヘッダを有するセルのＸフレーム前に、次のＡＴＭセルを見つけることができる。Ｘを求める関係は以下の式１によって与えられる。すなわち、
Ｘ＝（Ｙ＊５３）ｄｉｖ ＵＴＳ              式１
である。式１において、ＵＴＳはフレームのセットで使用されたタイムスロットの数であり、Ｙは、［（Ｙ＊５３）ｍｏｄ ＵＴＳ］＝１、を満たす最も小さい正の整数である。
【００４９】
このように、図９の例では、タイムスロット・アライナー６０は、次のタイムスロット、すなわち、タイムスロット１５で開始されるＡＴＭセルのヘッダを予測することができる。上記で説明した式１を用いて、ステップ８−４の実行でフレーム３１に対する次のヘッダの開始が予測される。
【００５０】
ステップ８−４で求められた次のヘッダの開始により、ステップ８−５で以前に作られたウィンドウ（例えば、ステップ８−３で作られたウィンドウ）を用いて、次のヘッダのＨＥＣ以外のバイトが求められる。すなわち、図９の例を参照すると、最初のアイドル・セルについて記録されたタイムスロット１４−１７のフレーム／遅延が次のセルにも適用可能であり、この結果次のセルの最初の４バイトの位置をステップ８−５で容易に決定することができる。
【００５１】
ステップ８−５で求められた次のヘッダの最初の４バイトに対する位置と、従ってその中身とから、これら最初の４バイトに関するＨＥＣがステップ８−６で計算される。４つの既知のバイトに関するＨＥＣの計算は当業者には周知であり、（例えば）IEEE Micro 3,40（１９８３年）のAvram Perezによる「バイト型ＣＲＣの計算(Byte-wise CRC Calculation)」に記載されている。
【００５２】
ステップ８−６で次のセルのヘッダに対するＨＥＣが計算されると、ステップ８−７で次のヘッダに対するＨＥＣに関連したタイムスロットで、計算された値を有するフレームを探すことは簡単である。ＨＥＣに関連したタイムスロットで、計算された値を有するフレームの位置が決定されると、ステップ８−８で、このタイムスロットに対するフレーム／遅延値が、計算されたＨＥＣ値が見つかったフレームに従って求められる。例えば、（図５Ｂのように）ＨＥＣ値がヘッダの他の部分から２フレームオフセットされていたら、＋２のフレーム／遅延値がこのタイムスロットに割り当てられる。
【００５３】
ステップ８−９ではステップ４−５と同様に、フレームのセットの全てのタイムスロットに対するフレーム／遅延値が求められたかどうかが判定される。フレーム／遅延がまだ求められていないタイムスロットが残っていたら、タイムスロット・アライナー６０は、ステップ８−１０で更に別のヘッダに関して使用する新たなウィンドウを、直前に検出されたヘッダに基づいて（トライアル及びＨＥＣ−エラー・モードのステップ４−７と同様の方法で）形成する。そして、新たに形成されたウィンドウを使用して、次のセルに対するヘッダを探すのに、少なくともステップ８−４からステップ８−９の繰り返しのためにステップ８−４へ処理を戻す。
【００５４】
ステップ８−９でフレーム／遅延が全てのタイムスロットについて求められたと判定されたら、アイドル・セル・アライナー・モードはステップ８−１１で示されるように終了する。ここでタイムスロット・アライナー６０は他のフレームのセットを受信可能であり、既に行われたタイムスロット・アライメントに基づいて、適切なスロット・アライメント及びそれによるＡＴＭセル全体の回復によりフレームのセットを処理する。
【００５５】
従って図９は、フレームのセットのすべてのタイムスロットに対するフレーム／遅延が求められるとすると、図８のロジックで定められた方法で連続したタイムスロットで開始するヘッダの位置決定を示している。フレームのセットに関して、文字「ｘｘ」はヘッダのＨＥＣでないバイトを表し、文字「ｙｙ」はヘッダのＨＥＣバイトを表していることに注意されたい。
【００５６】
アイドル・セル・アライナー・モードがアイドル・セル・ヘッダの位置で開始すると、アイドル・セル・アライナー・モードはその位置だけに制限されないこと、及び最初に位置決定されたセルに後続するセルはアイドル・セルでなくてもよいことに注意されたい。これは特に、ステップ８−６でアイドルでないセルのヘッダに対するＨＥＣが計算されることから説明される。次のセルがアイドル・セルであったら、もちろん、アイドル・セル・アライナー・モードのロジックによってＨＥＣはその場合でも位置が求められる。
【００５７】
加えて、アイドル・セル・アライナー・モードはアイドル・セルに用いられるだけでなく、このモードは他のタイプの空のセルに関しても使用され得ることを理解されたい。例えば、アイドル・セル・アライナー・モードを、代わりに上述のように所定のヘッダを有する非割り当てセル及びＩＭＡフィラー・セルに係るものとすることができる。このような場合アイドル・セル・アライナー・モードは、空のセル、例えば、非割り当てセル及びＩＭＡフィラー・セルそれぞれの所定のヘッダを探す。また、アイドル・セル・アライナー・モードを、最初にアイドル・セルを用いてアライメントを試み、アイドル・セルが見つからなかったら別のタイプの空のセル、例えば、フィラー・セル等について探すように構成することもできる。
【００５８】
図１０は、図８に基本的に示した機能（例えば、ステップ）を有するタイムスロット・アライメント決定技術のアイドル・セル・アライナー・モードを実施する、タイムスロット・アライナー６０の主要な機能ブロックを示している。図１０のタイムスロット・アライナー６０は、図７に記載したものと同様な機能を有している。詳細には、図１０のタイムスロット・アライナー６０は、コントローラ３００、タイムスロット・カウンタ３０２、フレーム遅延メモリのバンク、スイッチ３０４、及びスイッチ・メモリ３１２を有している。加えて、図９のタイムスロット・アライナー６０は、図８の動作に関して先に述べた目的で、少なくとも５３の連続したフレームを格納するメモリ３３０を有しており、このメモリはフレーム遅延を推定するためにコントローラ３００によって参照される。コントローラ３００内のロジックは、上記の検出処理に従ってセル・ヘッダを検出するセル・ヘッダ検出器として働く。
【００５９】
図４のトライアル及びＨＥＣ−エラー・モードと図８のアイドル・セル・アライナー・モードとに共通なのは、最初のヘッダを見つけるために複数のタイムスロット及び複数のフレームの中を探す最初の仕事である。本発明の一態様によれば、この最初のサーチは探索木を用いて達成される。加えて、ヘッダの１バイト（例えば、ＨＥＣバイト）を探してアライメントを移動させるのも、探索木によって実施できる。
【００６０】
探索木は、他の遅延値を試す前に、最も少なくかつ既知の、又はありえる遅延を最初に用いて、高速なサーチを可能とする。更に、探索木の使用は、分岐により偽の木が導かれたら、段階的ロールバックを可能とする。その上、探索木の使用は、例えば、非現実的な組合せを飛ばして、遅延が推定される最大差分値までにサーチを限定する。
【００６１】
図１１は、本発明のタイムスロット・アライメント技術に適した探索木による手法を示している。角が下側にある三角形で表した探索木の各ノードは、仮説を表しており、いくつかの代替案により新たな仮説が導かれる。仮説はその前のタイムスロットに対する補償のセットであり、代替案は新たなタイムスロットを優先順に設定することである。この点に関しては、ノード１００がそこから分岐するＮ個の代替案を有している図１１Ａを参照されたい。図１１に戻ると、タイムスロット１に対するノード１００１は２つの代替案を有しており、その１つは（破線で示しているように）既に無効なことがわかっている。ノード１００１からの他方の代替案は、３つの代替案を有するタイムスロット２のノード１００２に達している。図１１から、最初のフレームで見つかったタイムスロット１及び２のバイトと、後続するフレームで見つかったタイムスロット３及び４のバイトとにより、正解が得られたことが解るであろう。
【００６２】
探索木による手法では、フレーム補償（例えば、フレーム／遅延）の代替案は、以下のステップの優先順に選択される。
【００６３】
１．最も小さな補償から始まる仮説の範囲内で最初の代替案を試す。
【００６４】
２．第２の仮説各々を既存の仮説より大きくし、他の仮説を既存の仮説未満として、仮説の範囲外の補償をテストする。
【００６５】
３．補償と仮説の合計がありそうな値を越えたら（例えば、補償の最大範囲を越えたら）停止する。
【００６６】
例としては、補償（例えば、フレーム／遅延）の最大範囲を４に設定し、仮説が以前のタイムスロット｛０，１，０，−１，−１，０，０｝における補償を有していると仮定する。従って、タイムスロット８に対する補償は（第１の代替案、第２の代替案、等の順で）、以下の順番、−１，０，１，２，２，３，−３、となる。図１２にこれが描かれている。
【００６７】
ヘッダＨＡを有するセルのペイロードの最初のオクテットＰＡのアライメントを行い、タイムスロットのフレーム／遅延を求める本発明の技術は、図１Ｂで説明した特定の環境に限定されず、ＧＳＭネットワークあるいは他の特定のネットワークにも限定されないことを理解されたい。更に、図７及び図１０に示した機能ブロックは、本発明の技術を説明するための単なる例である。本発明はあらゆる構成や回路での実施に特定されるものではないので、本技術の各モードのステップは、多くの構造や構成によって実現される。
【００６８】
一般に、アイドル・セル・アライナー・モードは、トライアル及びＨＥＣ−エラー・モードよりも高速であると考えられている。これに関して、トライアル及びＨＥＣ−エラー・モードは、３フレームを越える最大遅延についてはより多くの時間を必要とするであろう。しかしながら、アイドル・セル・アライナー・モードは、較正が行われるフレームのセットのサンプル内に少なくとも１つのアイドル・セルを必要とする。全体の時間、較正、例えば、フレーム／遅延決定、の時間は、短くなり、使用される時間フレームの数及び最大遅延差分値に比例する。
【００６９】
トライアル及びＨＥＣ−エラー・モードを使用する較正の時間が、タイムスロット・アライナー６０をハードウェアで実施し、フレーム・レートを８ｋＨｚ（サイクル・レート６．６ｍｓ（＋５３／８））、３０のタイムスロットを使用し（例えば、２５の移動ウィンドウ）、各ヘッダの検出に６つの予備同期サイクルを用いるシナリオについて、図１３に記載されている。予備同期の値を少なくし、探索木のロジック（サーチで最も可能性の高い代替案が最初に選択されるとして）を使用すると、性能が向上することは明らかであろう。ここで使用する「予備同期」という用語は、Ｉ．４３２の４．５章を参照すれば解るであろうが、本発明に関して予備同期は、Ｉ．４３２の４．５章に定義された５３オクテットではなくて、５３フレームの反復レートに関係する。
【００７０】
一般に、トライアル及びＨＥＣ−エラー・モードとアイドル・セル・アライナー・モードとの両方は、ＡＴＭヘッダのＨＥＣをタイムスロットのフレーム／遅延の推定に使用するという基本的原理が共通である。ヘッダの５つの連続したタイムスロットの検出による最初の較正は、トライアル及びＨＥＣ−エラー・モードまたはアイドル・セル・アライナー・モードのいずれでも行われる。正しい較正により５つの連続したタイムスロットにある正しいヘッダ（例えば、４つのバイトとそれに続く有効なＨＥＣバイト）の検出が得られ、これらのタイムスロットは５３フレームの期間内に他のヘッダを有している。本発明のタイムスロット・アライメント決定技術に移動ウィンドウでは、ウィンドウは１つのタイムスロット毎に徐々に移動し、各移動でウィンドウが新たに遭遇したタイムスロットに関して較正を行う。これにより、もしあれば新たなヘッダが見つけられる。
【００７１】
このように、本発明のタイムスロット・アライメント決定技術は、テスト・パターンの発生のためのシグナリングの必要性をなくして高速な処理を提供する。本発明のタイムスロット・アライメント決定技術の較正は、通常のＡＴＭトラフィックを用いて実施される。その上、本発明のタイムスロット・アライメント決定技術は、使用されるタイムスロットの数が５３未満である限りは、あらゆるＰＣＭシステムで動作する。市場で入手可能なフレーマと伝送集中回路との間に位置するプログラマブル・ロジック・デバイス（ＰＬＤ）などにおいて、単純なロジックが様々な方法で容易に実現される。本発明のタイムスロット・アライメント決定技術は、ＡＴＭスイッチに全く悪影響を与えず、タイムスロット・スイッチの変更を全く必要としない。更にまた、便利な事に、タイムスロット・アライメント決定技術は、完全なフレームとタイムスロットの一部分が用いられるときとの両方で動作する。
【００７２】
トライアル及びＨＥＣ−エラー・モードは、セル・ヘッダを損なうビット・エラーに対して非常に抵抗力が有る。アイドル・セル・アライナー・モードは、５３フレーム内のヘッダの全てのビット、例えば、２１２０ビットの合計（８ビット／バイト×フレーム毎の５ヘッダ・バイト×５３フレーム）が正しいことを必要とする。１Ｅ−６のビット・エラー・レートは、０．２％の確率（１つのビットが誤っている）である。１Ｅ−３に対しては確率は８８％である。上述のアライン・ハント状態は、タイムスロット・アライナーが正しくアライメントされたサンプルが見つかるまで、新たなサンプルがある度に連続的に動作しているので、この高いエラー発生の確率を解決する。各アライメントのシーケンスの間、例えば、「アイドル・セル」と「ＩＭＡフィラー・セル」との間に、最初のサーチにおけるサーチするヘッダを変更することが出来る。アライン・ハント状態はまた、アイドル・セルの頻度が非常に低いという問題を解決する。
【００７３】
本発明を、最も現実的であると現在考えられるもの及び好適な実施形態に関して説明したが、本発明は説明した実施形態に限定されるものと理解すべきではなく、それとは逆に、特許請求の範囲の要旨及び範囲内に含まれる様々な変形や等価な構成もカバーするものと理解されたい。例えば、アイドル・セル・アライナー・モードを、ＩＭＡフィラー・セルに代えて利用することもできる。
【図面の簡単な説明】
【図１Ａ】  を予備の伝送容量を有する従来技術の移動体通信システムの概略図である。
【図１Ｂ】  予備の伝送容量を使用してＡＴＭベースのサービスを強化した移動体通信システムの概略図である。
【図２Ａ】  遅延が無い場合のフレームの一部の概略図である。
【図２Ｂ】  タイムスロットのフレーム／遅延がある場合のフレームの一部の概略図である。
【図３】  本発明のタイムスロット・アライナーを含むＡＴＭノードの概略図である。
【図４】  本発明のタイムスロット・アライメント決定技術のトライアル及びＨＥＣ−エラー・モードに関して実行される基本的ステップを示すローチャートである。
【図４Ａ】  図４の選択されたサブステップを示すローチャートである。
【図５Ａ】、
【図５Ｂ】、
【図５Ｃ】  図４に示したトライアル及びＨＥＣ−エラー・モードが動作するフレームの例を連続的に描いた図である。
【図６】  図４のトライアル及びＨＥＣ−エラー・モードに従った、いくつかのフレームに渡るウィンドウの移動を示す図である。
【図７】  図４のトライアル及びＨＥＣ−エラー・モードを実行するタイムスロット・アライナーで用いられる機能ブロックの概略図である。
【図８】  本発明のタイムスロット・アライメント決定技術のアイドル・セル・アライナー・モードに関して実行される基本的ステップを示すローチャートである。
【図８Ａ】  図８の選択されたサブステップを示すローチャートである。
【図９】  図８に示したアイドル・セル・アライナー・モードが動作するフレームの例の概略図である。
【図１０】  図８のアイドル・セル・アライナー・モードを実行するタイムスロット・アライナーで用いられる機能ブロックの概略図である。
【図１１】  本発明のタイムスロット・アライメント決定技術で使用されるのが好ましいサーチ・ツリーの動作を示す図である。
【図１１Ａ】  図１１のサーチ・ツリーによる推測ノードを示す図である。
【図１２】  本発明のタイムスロット・アライメント決定技術と共にサーチ・ツリーを実施した例を示すグラフである。
【図１３】  本発明のタイムスロット・アライメント決定技術の性能値を示す表である。
【図１Ａ】
0004430237.tif 000002
【図１Ｂ】
0004430237.tif 000003
【図２Ａ】
0004430237.tif 000004
【図２Ｂ】
0004430237.tif 000005
【図３】
0004430237.tif 000006
【図４】
0004430237.tif 000007
【図４Ａ】
0004430237.tif 000008
【図５Ａ】
0004430237.tif 000009
【図５Ｂ】
0004430237.tif 000010
【図５Ｃ】
0004430237.tif 000011
【図６】
0004430237.tif 000012
【図７】
0004430237.tif 000013
【図８】
0004430237.tif 000014
【図８Ａ】
0004430237.tif 000015
【図９】
0004430237.tif 000016
【図１０】
0004430237.tif 000017
【図１１】
0004430237.tif 000018
【図１１Ａ】
0004430237.tif 000019
【図１２】
0004430237.tif 000020
【図１３】
0004430237.tif 000021