(57)【要約】【解決手段】送信ソースが、ペイロードのフレーム境界を定め、ペイロードのサブセットの関数として値を計算し、その値を、フレームの送信前に、フレーム境界内のペイロードに付加する、通信リンクを確立するためのシステムおよび技術。受信ソースは、ペイロードのサブセットの関数として値を計算し、計算した値を受信した値と比較し、比較の関数として、正当なペイロードを検出する。
2005526414.tif 000002
【特許請求の範囲】
【請求項１】
下記を具備する、ペイロードをフレーム化する方法：
ペイロードのフレーム境界を定める；
ペイロードのサブセットの関数として値を計算する；および
前記値を前記フレーム境界内の前記ペイロードに付加する。
【請求項２】
前記フレームの境界を定めることは、前記ペイロードの開始にプリアンブルを付加することを具備し、前記プリアンブルは前記値を有する、請求項１の方法。
【請求項３】
前記ペイロードは複数のバイトを具備し、前記ペイロードの前記サブセットは、前記プリアンブルに続く、前記ペイロードの第３バイト、第４バイト、および第５バイトを具備する、請求項２の方法。
【請求項４】
前記ペイロードのバイト数を示すレングスフィールドを前記プリアンブル内に配置することをさらに具備し、前記値の計算は、さらに、前記レングスフィールドの関数である、請求項３の方法。
【請求項５】
前記値の前記計算は、前記ペイロードの前記サブセットおよび前記レングスフィールドをイクスクルーシブＯＲすることを具備する、請求項４の方法。
【請求項６】
前記ペイロードの第２のサブセットの関数として第２の値を計算し、前記第２の値を前記フレーム境界内の前記ペイロードの最後に付加することを具備する、請求項５の方法。
【請求項７】
前記ペイロードの前記第２のサブセットは、前記プリアンブルに続く前記ペイロードの前記第３バイト、前記第４バイト、および前記第５バイト、および前記ペイロードの最後のバイトを具備し、前記第２の値の前記計算は、前記ペイロードの前記サブセットと前記レングスフィールドをイクスクルーシブＯＲすることを具備する、請求項６の方法。
【請求項８】
前記フレームの境界を定めることは、前記値を、前記ペイロードの最後に付加することを具備する、請求項１の方法。
【請求項９】
前記ペイロードは、複数のバイトを具備し、前記ペイロードの前記サブセットは、前記プリアンブルに続く前記ペイロードの前記第３バイト、前記第４バイト、および前記第５バイト、および前記ペイロードの前記最後のバイトを具備する、請求項８の方法。
【請求項１０】
前記フレームの境界を定めることは、レングスフィールドを有するプリアンブルを前記ペイロードの前記開始に付加することを具備し、前記値の前記計算は、さらに前記レングスフィールドの関数である、請求項９の方法。
【請求項１１】
前記値の前記計算は、前記ペイロードの前記サブセットおよび前記レングスフィールドをイクスクルーシブＯＲすることを具備する、請求項１０の方法。
【請求項１２】
前記ペイロードは、最大数のバイトを具備し、前記フレームの境界を定めることは、プリアンブルを前記ペイロードの前記開始に付加することを具備し、前記プリアンブルは、第１のバイト、前記開始フラッグに続く値、および前記値に続くレングスフィールドを有する開始フラッグを具備し、前記レングスフィールドは、前記ペイロード内のバイト数を示し、前記値および前記レングスフィールドの一部分は、第２バイトを具備し、前記第２バイトは、前記ペイロード内の最大バイト数によるバイト値のサブセットに制限され、前記方法は、前記第２バイトに利用可能な前記バイト値のサブセットと異なるバイト値を有する開始フラッグを選択することを具備する、請求項１の方法。
【請求項１３】
前記値は５ビットを具備し、前記レングスフィールドは、少なくとも３ビットを具備し、前記第２バイトは、前記５ビット値に続けて前記レングスフィールドの３つの最上位ビットを具備する、請求項１２の方法。
【請求項１４】
下記を具備する、フレーム内の正当なペイロードを決定する方法：
ペイロードに付加された最初の値を有するペイロードを有するフレームを識別する；
前記ペイロードのサブセットの関数として第２の値を計算する；
前記第２の値を前記第１の値と比較する；および
前記比較の関数として正当なペイロードを検出する。
【請求項１５】
前記フレームの識別は、開始フラッグを検出することを具備する、請求項１４の方法。
【請求項１６】
前記ペイロードは、複数のバイトを具備し、前記方法はさらに、前記ペイロード内のバイト数を示す前記フレーム内のレングスフィールドを識別することを具備する、請求項１４の方法。
【請求項１７】
前記第２の値の前記計算は、さらに、前記レングスフィールドの関数である、請求項１６の方法。
【請求項１８】
前記ペイロードの前記サブセットは、前記プリアンブルに続く前記ペイロードの第３バイト、第４バイト、および第５バイトを具備し、前記第２の値の前記計算は、前記ペイロードの前記サブセットおよび前記レングスフィールドをイクスクルーシブＯＲすることを具備する、請求項１７の方法。
【請求項１９】
前記レングスフィールドにより示されるペイロードバイトの数が閾値を越えるかどうか判断することをさらに具備し、前記正当なフレームの検出は、前記レングスフィールド判断の関数である、請求項１６の方法。
【請求項２０】
前記ペイロードを含む前記フレームは複数のバイトを具備し、前記方法はさらに、シリアルバイトストリームで前記フレームを受信し、前記第１のペイロードバイトの受信から所定の時間内にすべてのペイロードバイトが受信されたかどうかを判断することを具備し、前記正当なフレーム検出はさらにペイロードバイト判断の関数である、請求項１４の方法。
【請求項２１】
前記ペイロード内のバイト数を示す前記フレーム内のレングスフィールドを識別することをさらに具備し、前記ペイロードバイト判断は、前記レングスフィールド表示の関数である、請求項２０の方法。
【請求項２２】
前記ペイロードを含む前記フレームは、複数のバイトを具備し、前記方法は、シリアルバイトストリームで前記フレームを受信し、所定の時間内に受信したペイロードバイトの数をカウントし、および前記所定時間内の前記ペイロードバイトカウント値が閾値を下回るなら、正当なフレームを宣言することをさらに具備する、請求項１４の方法。
【請求項２３】
前記所定時間内のペイロードバイトが前記閾値を越えるなら、第２の所定時間内に受信したペイロードバイトの数を再カウントすることをさらに具備する、請求項２２の方法。
【請求項２４】
前記第１の値は、前記ペイロードの前記開始に付加され、前記フレームは、前記ペイロードの前記最後に付加された第３の値を具備し、前記方法は、前記ペイロードの第２のサブセットの関数として第４の値を計算し、および前記第４の値を前記第３の値と比較することをさらに具備し、前記正当なペイロードの検出は、前記第１の値と前記第２の値の比較と、前記第３の値と前記第４値の比較の両方の関数である、請求項１４の方法。
【請求項２５】
正当なペイロード検出は、前記第３の値の直後の前記フレーム内の停止フラッグを確認することをさらに具備する、請求項２４の方法。
【請求項２６】
前記ペイロードは、複数のバイトを具備し、前記方法は、前記ペイロード内のバイト数を示す前記フレーム内のレングスフィールドを識別することをさらに具備する、請求項２４の方法。
【請求項２７】
前記第２の値の前記計算および前記第４の値の前記計算は、ともに、さらに前記レングスフィールドの関数である、請求項２６の方法。
【請求項２８】
前記ペイロードの前記サブセットは、前記プリアンブルに続く前記ペイロードの第３バイト、第４バイトおよび第５バイトを具備し、前記ペイロードの前記第２サブセットは、前記プリアンブルに続く前記ペイロードの前記第３バイト、前記第４バイト、および前記第５バイト、および前記ペイロードの前記最後のバイトを具備する、請求項２７の方法。
【請求項２９】
前記第２の値の計算は、前記ペイロードの前記サブセットおよび前記レングスフィールドをイクスクルーシブＯＲすることを具備し、前記第４の値の前記計算は、前記ペイロードの前記第２サブセットおよび前記レングスフィールドをイクスクルーシブＯＲすることを具備する、請求項２８の方法。
【請求項３０】
ペイロードをフレーム化する方法を実行するためにコンピュータにより実行可能な命令群のプログラムを具現化するコンピュータ読み出し可能な媒体において、前記方法は、
ペイロードのフレーム境界を定め；
前記ペイロードのサブセットの関数として計算し；および
前記フレーム境界内で、前記値を前記ペイロードに付加する；
ことを具備する。
【請求項３１】
前記フレームの境界を定めることは、前記ペイロードの開始にプリアンブルを付加することを具備し、前記プリアンブルは値を有する、請求項３０のコンピュータ読み出し可能媒体。
【請求項３２】
前記フレームの境界を定めることは、前記ペイロードの開始にプリアンブルを付加することを具備し、前記プリアンブルは前記値を有する、請求項３１のコンピュータ読み出し可能媒体。
【請求項３３】
前記方法は、前記ペイロードのバイト数を示すレングスフィールドを前記プリアンブル内に配置することをさらに具備し、前記値の計算は、さらに、前記レングスフィールドの関数である、請求項３２のコンピュータ読み出し可能媒体。
【請求項３４】
前記値の前記計算は、前記ペイロードの前記サブセットおよび前記レングスフィールドをイクスクルーシブＯＲすることを具備する、請求項３３のコンピュータ読み出し可能媒体。
【請求項３５】
前記方法は、前記ペイロードの第２のサブセットの関数として第２の値を計算し、前記第２の値を前記フレーム境界内の前記ペイロードの最後に付加することを具備する、請求項３４のコンピュータ読み出し可能媒体。
【請求項３６】
前記ペイロードの前記第２のサブセットは、前記プリアンブルに続く前記ペイロードの前記第３バイト、前記第４バイト、および前記第５バイト、および前記ペイロードの最後のバイトを具備し、前記第２の値の前記計算は、前記ペイロードの前記サブセットと前記レングスフィールドをイクスクルーシブＯＲすることを具備する、請求項３５のコンピュータ読み出し可能媒体。
【請求項３７】
前記フレームの境界を定めることは、前記値を、前記ペイロードの最後に付加することを具備する、請求項３０のコンピュータ読み出し可能媒体。
【請求項３８】
前記ペイロードは、複数のバイトを具備し、前記ペイロードの前記サブセットは、前記プリアンブルに続く前記ペイロードの前記第３バイト、前記第４バイト、および前記第５バイト、および前記ペイロードの前記最後のバイトを具備する、請求項３０のコンピュータ読み出し可能媒体。
【請求項３９】
前記フレームの境界を定めることは、レングスフィールドを有するプリアンブルを前記ペイロードの前記開始に付加することを具備し、前記値の前記計算は、さらに前記レングスフィールドの関数である、請求項３８のコンピュータ読み出し可能媒体。
【請求項４０】
前記値の前記計算は、前記ペイロードの前記サブセットおよび前記レングスフィールドをイクスクルーシブＯＲすることを具備する、請求項３９のコンピュータ読み出し可能媒体。
【請求項４１】
前記ペイロードは、最大数のバイトを具備し、前記フレームの境界を定めることは、プリアンブルを前記ペイロードの前記開始に付加することを具備し、前記プリアンブルは、第１のバイト、前記開始フラッグに続く値、および前記値に続くレングスフィールドを有する開始フラッグを具備し、前記レングスフィールドは、前記ペイロード内のバイト数を示し、前記値および前記レングスフィールドの一部分は、第２バイトを具備し、前記第２バイトは、前記ペイロード内の最大バイト数によるバイト値のサブセットに制限され、前記方法は、前記第２バイトに利用可能な前記バイト値のサブセットと異なるバイト値を有する開始フラッグを選択することを具備する、請求項３０のコンピュータ読み出し可能媒体。
【請求項４２】
前記値は５ビットを具備し、前記レングスフィールドは、少なくとも３ビットを具備し、前記第２バイトは、前記５ビット値に続けて前記レングスフィールドの３つの最上位ビットを具備する、請求項４１のコンピュータ読み出し可能媒体。
【請求項４３】
ペイロードをフレーム化する方法を実行するためにコンピュータにより実行可能な命令群のプログラムを具現化するコンピュータ読み出し可能な媒体において、前記方法は、
ペイロードに付加された最初の値を有するペイロードを有するフレームを識別する；
前記ペイロードのサブセットの関数として第２の値を計算する；
前記第２の値を前記第１の値と比較する；および
前記比較の関数として正当なペイロードを検出する。
【請求項４４】
前記フレームの識別は、開始フラッグを検出することを具備する、請求項４３のコンピュータ読み出し可能媒体。
【請求項４５】
前記ペイロードは、複数のバイトを具備し、前記方法はさらに、前記ペイロード内のバイト数を示す前記フレーム内のレングスフィールドを識別することを具備する、請求項４３のコンピュータ読み出し可能媒体。
【請求項４６】
前記第２の値の前記計算は、さらに、前記レングスフィールドの関数である、請求項４５のコンピュータ読み出し可能媒体。
【請求項４７】
前記ペイロードの前記サブセットは、前記プリアンブルに続く前記ペイロードの第３バイト、第４バイト、および第５バイトを具備し、前記第２の値の前記計算は、前記ペイロードの前記サブセットおよび前記レングスフィールドをイクスクルーシブＯＲすることを具備する、請求項４６のコンピュータ読み出し可能媒体。
【請求項４８】
前記方法は、前記レングスフィールドにより示されるペイロードバイトの数が閾値を越えるかどうか判断することをさらに具備し、前記正当なフレームの検出は、前記レングスフィールド判断の関数である、請求項４５のコンピュータ読み出し可能媒体。
【請求項４９】
前記ペイロードを含む前記フレームは複数のバイトを具備し、前記方法はさらに、シリアルバイトストリームで前記フレームを受信し、前記第１のペイロードバイトの受信から所定の時間内にすべてのペイロードバイトが受信されたかどうかを判断することを具備し、前記正当なフレーム検出はさらにペイロードバイト判断の関数である、請求項４３のコンピュータ読み出し可能媒体。
【請求項５０】
前記ペイロード内のバイト数を示す前記フレーム内のレングスフィールドを識別することをさらに具備し、前記ペイロードバイト判断は、前記レングスフィールド表示の関数である、請求項４３のコンピュータ読み出し可能媒体。
【請求項５１】
前記ペイロードを含む前記フレームは、複数のバイトを具備し、前記方法は、シリアルバイトストリームで前記フレームを受信し、所定の時間内に受信したペイロードバイトの数をカウントし、および前記所定時間内の前記ペイロードバイトカウント値が閾値を下回るなら、正当なフレームを宣言することをさらに具備する、請求項４３のコンピュータ読み出し可能媒体。
【請求項５２】
前記所定時間内のペイロードバイトが前記閾値を越えるなら、第２の所定時間内に受信したペイロードバイトの数を再カウントすることをさらに具備する、請求項５１のコンピュータ読み出し可能媒体。
【請求項５３】
前記第１の値は、前記ペイロードの前記開始に付加され、前記フレームは、前記ペイロードの前記最後に付加された第３の値を具備し、前記方法は、前記ペイロードの第２のサブセットの関数として第４の値を計算し、および前記第４の値を前記第３の値と比較することをさらに具備し、前記正当なペイロードの検出は、前記第１の値と前記第２の値の比較と、前記第３の値と前記第４値の比較の両方の関数である、請求項４３のコンピュータ読み出し可能媒体。
【請求項５４】
正当なペイロード検出は、前記第３の値の直後の前記フレーム内の停止フラッグを確認することをさらに具備する、請求項５３のコンピュータ読み出し可能媒体。
【請求項５５】
前記ペイロードは、複数のバイトを具備し、前記方法は、前記ペイロード内のバイト数を示す前記フレーム内のレングスフィールドを識別することをさらに具備する、請求項５３のコンピュータ読み出し可能媒体。
【請求項５６】
前記第２の値の前記計算および前記第４の値の前記計算は、ともに、さらに前記レングスフィールドの関数である、請求項５５のコンピュータ読み出し可能媒体。
【請求項５７】
前記ペイロードの前記サブセットは、前記プリアンブルに続く前記ペイロードの第３バイト、第４バイトおよび第５バイトを具備し、前記ペイロードの前記第２サブセットは、前記プリアンブルに続く前記ペイロードの前記第３バイト、前記第４バイト、および前記第５バイト、および前記ペイロードの前記最後のバイトを具備する、請求項５６のコンピュータ読み出し可能媒体。
【請求項５８】
前記第２の値の計算は、前記ペイロードの前記サブセットおよび前記レングスフィールドをイクスクルーシブＯＲすることを具備し、前記第４の値の前記計算は、前記ペイロードの前記第２サブセットおよび前記レングスフィールドをイクスクルーシブＯＲすることを具備する、請求項５７のコンピュータ読み出し可能媒体。
【請求項５９】
下記を具備する通信装置：
ペイロードのフレーム境界を定め、前記ペイロードのサブセットの関数として値を計算し、および前記フレーム境界内で前記値を前記ペイロードに付加するように構成されたプロセッサ；および
前記処理したフレームを送信するように構成された送信器。
【請求項６０】
前記プロセッサは、さらに、前記ペイロードの開始にプリアンブルを付加するように構成され、前記プリアンブルは前記値を有する、請求項５９の通信装置。
【請求項６１】
前記プロセッサは、さらに、前記ペイロードの第２のサブセットの関数として第２の値を計算し、前記第２の値を前記フレーム境界内の前記ペイロードの最後に付加するように構成される、請求項６０の通信装置。
【請求項６２】
前記ペイロードは複数のバイトから構成され、前記プロセッサはさらに、前記プリアンブルに、前記ペイロード内のバイト数を示すレングスフィールドを配置し、前記ペイロードの第２サブセットおよび前記レングスフィールドの関数として、前記第２の値を計算するように構成される、請求項６１の通信装置。
【請求項６３】
前記ペイロードの前記第２のサブセットは、前記プリアンブルに続く前記ペイロードの前記第３バイト、前記第４バイト、および前記第５バイト、および前記ペイロードの最後のバイトを具備し、前記プロセッサはさらに、前記ペイロードの前記サブセットと前記レングスフィールドをイクスクルーシブＯＲすることにより前記第２の値を計算するようにさらに構成される、請求項６２の通信装置。
【請求項６４】
前記ペイロードは、複数のバイトを具備し、前記プロセッサは、さらに、前記プリアンブルに、前記ペイロード内のバイト数を示すレングスフィールドを配置し、前記ペイロードのサブセットおよび前記レングスフィールドの関数として前記値を計算するように構成される、請求項５９の通信装置。
【請求項６５】
前記ペイロードのサブセットは、前記プリアンブルに続く、前記ペイロードの第３バイト、第４バイトおよび第５バイトを具備し、前記プロセッサはさらに、前記ペイロードの前記サブセットと前記レングスフィールドをイクスクルーシブＯＲすることにより前記値を計算するように構成される、請求項６４の通信装置。
【請求項６６】
前記送信器は、無線送信器を具備する、請求項５９の通信装置。
【請求項６７】
前記送信器は、符号分割多重アクセス送信器を具備する、請求項６６の通信装置。
【請求項６８】
第２のペイロードに付加された第２の値を有する第２のペイロードを有する第２のフレームを受信する受信器をさらに具備し、前記プロセッサは、さらに前記第２ペイロードの第２の値の関数として第３の値を計算し、前記第３の値を前記第２の値と比較し、前記比較の関数として正当な第２のペイロードを検出するように構成される、請求項５９の通信装置。
【請求項６９】
前記受信器は、無線受信器を具備する、請求項６８の通信装置。
【請求項７０】
前記受信器は、符号分割多重アクセス受信器を具備する、請求項６９の通信装置。
【請求項７１】
下記を具備する通信装置：
ペイロードに付加された第１の値を有するペイロードを有するフレームを受信するように構成された受信器；および
前記ペイロードのサブセットの関数として第２の値を計算し、前記第２の値を前記第１の値と比較し、前記比較の結果の関数として正当なペイロードを検出するように構成されたプロセッサ。
【請求項７２】
前記ペイロードは複数のバイトを具備し、前記プロセッサはさらに、前記ペイロード内のバイト数を示すフレーム内のレングスフィールドを識別し、前記ペイロードの前記サブセットおよび前記レングスフィールドの関数として、前記第２の値を計算するように構成される、請求項７１の通信装置。
【請求項７３】
前記フレームはさらに、前記ペイロードの開始に付加された前記第１の値を有するプリアンブルをさらに具備し、前記ペイロードの前記サブセットは、前記プリアンブルに続く、第３バイト、第４バイト、および第５バイトを具備し、前記プロセッサはさらに、前記ペイロードのサブセットおよび前記レングスフィールドをイクスクルーシブＯＲすることにより前記第２の値を計算するように構成される、請求項７２の通信装置。
【請求項７４】
前記プロセッサは、前記レングスフィールドにより示されるペイロードバイトの数が閾値を越えるかどうかを判断するように構成され、前記正当なペイロードの検出は、前記レングスフィールド判断の関数である、請求項７２の通信装置。
【請求項７５】
前記ペイロードを含む前記フレームが複数のバイトを具備し、前記受信器はさらに、シリアルバイトストリームで前記フレームを受信するように構成され、前記プロセッサは、さらに、最初のペイロードバイトの受信から所定時間内にすべてのペイロードバイトが受信されたかどうかを判断するように構成され、前記プロセッサによる前記正当なフレームの検出は、さらに前記ペイロードバイト判断の関数である、請求項７１の通信装置。
【請求項７６】
前記プロセッサは、さらに前記ペイロード内のバイト数を示す前記フレーム内のレングスフィールドを識別するように構成され、前記ペイロードバイト判断は、前記レングスフィールド表示の関数である、請求項７５の通信装置。
【請求項７７】
前記ペイロードを含む前記フレームは複数のバイトを具備し、前記受信器はさらに、シリアルバイトストリームで前記フレームを受信するように構成され、前記プロセッサは、さらに、所定時間内に受信したペイロードバイトの数をカウントし、前記所定時間内の前記ペイロードバイトカウントが閾値を下回るなら、不当なフレームであることを宣言するように構成される、請求項７４の通信装置。
【請求項７８】
前記プロセッサは、前記所定時間内の前記ペイロードバイトが前記閾値を越えるなら第２の所定時間内に受信したペイロードバイトの数を再カウントするように構成される、請求項７７の通信装置。
【請求項７９】
前記最初の値は、前記ペイロードの開始に付加され、前記フレームは、前記ペイロードの最後に付加された第３の値を具備し、前記プロセッサは、前記ペイロードの第２サブセットの関数として第４の値を計算し、前記第４の値を前記第３の値と比較するように構成され、前記プロセッサによる正当なペイロード検出は、前記第１の値と前記第２の値の比較、および前記第３の値と前記第４の値の比較の両方の関数である、請求項７１の通信装置。
【請求項８０】
前記ペイロードは、複数のバイトを具備し、前記プロセッサは、さらに前記ペイロード内のバイトの数を示す前記フレーム内のレングスフィールドを識別するように構成され、前記プロセッサによる前記第２の値と前記第４の値の両方の計算はさらに、前記レングスフィールドの関数である、請求項７９の通信装置。
【請求項８１】
前記ペイロードの前記サブセットは、前記プリアンブルに続く、第３バイト、第４バイトおよび第５バイトを具備し、前記ペイロードの前記第２サブセットは、前記プリアンブルに続く、前記ペイロードの前記第３バイト、前記第４バイト、および前記第５バイトを具備し、前記ペイロードの前記第２のサブセットは、前記プリアンブルに続く前記ペイロードの前記第３バイト、前記第４バイト、および前記第５バイト、および前記ペイロードの最後のバイトを具備する、請求項８０の通信装置。
【請求項８２】
前記プロセッサはさらに、前記ペイロードの前記サブセットおよび前記レングスフィールドをイクスクルーシブＯＲすることにより前記第２の値を計算し、前記ペイロードの前記第２のサブセットと前記レングスフィールドをイクスクルーシブＯＲすることにより前記第４の値を計算するように構成される、請求項８１の通信装置。
【請求項８３】
前記受信器は無線受信器を具備する、請求項７１の通信装置。
【請求項８４】
前記受信器は、符号分割多重アクセス受信器を具備する、請求項８３の通信装置。
【請求項８５】
前記プロセッサはさらに第２ペイロードの第２フレーム境界を定め、前記第２ペイロードの第２サブセットの関数として第３の値を計算し、前記第３の値を前記第２フレーム境界内の前記ペイロードに付加するように構成され、前記通信装置は、さらに前記処理した第２フレームを送信するように構成された送信器を具備する、請求項７１の通信装置。
【請求項８６】
前記送信器は、無線送信器を具備する、請求項８５の通信装置。
【請求項８７】
前記送信器は、符号分割多重アクセス送信器を具備する、請求項８６の通信装置。
【請求項８８】
下記を具備する通信装置：
ペイロードのフレーム境界を定める手段；
前記ペイロードのサブセットの関数として値を計算するための計算手段；および
前記値を前記フレーム境界内の前記ペイロードに付加する付加手段。
【請求項８９】
前記付加手段は、プリアンブルを前記ペイロードの開始に付加し、前記プリアンブルは前記値を有する、請求項８８の通信装置。
【請求項９０】
前記ペイロードの第２サブセットの関数として第２の値を計算する手段と、前記第２の値を前記フレーム境界内の前記ペイロードの最後に付加する第２付加手段をさらに具備する、請求項８９の通信装置。
【請求項９１】
前記ペイロードは、複数のバイトを具備し、前記付加手段は、前記プリアンブルに、前記ペイロード内のバイトの数を示すレングスフィールドを配置し、前記第２計算手段は、前記ペイロードの前記第２サブセットおよび前記レングスフィールドの関数として前記第２の値を計算する、請求項９０の通信装置。
【請求項９２】
前記ペイロードの前記第２サブセットは、前記プリアンブルに続く、第３バイト、第４バイト、および第５バイト、および前記ペイロードの最後のバイトを具備し、前記第２の計算手段は、前記ペイロードの前記第２サブセットおよび前記レングスフィールドをイクスクルーシブＯＲすることにより、前記第２の値を計算する、請求項９１の通信装置。
【請求項９３】
前記ペイロードは複数のバイトを具備し、前記付加手段は、前記プリアンブルに、前記ペイロード内のバイトの数を示すレングスフィールドを配置し、前記計算手段は、前記ペイロードの前記サブセットおよび前記レングスフィールドの関数として前記値を計算する、請求項８９の通信装置。
【請求項９４】
前記ペイロードの前記サブセットは、前記プリアンブルに続く、第３バイト、第４バイトおよび第５バイトを具備し、前記計算手段は、前記ペイロードの前記サブセットおよび前記レングスフィールドをイクスクルーシブＯＲすることにより前記値を計算する、請求項９３の通信装置。
【請求項９５】
下記を具備する通信装置：
ペイロードに付加された第１の値を有するペイロードを有するフレームを識別する手段；
前記ペイロードのサブセットの関数として第２の値を計算する計算手段；
前記第２の値を前記第１の値と比較する手段；および
前記比較の関数として正当なペイロードを検出する検出手段。
【請求項９６】
前記ペイロードは、複数のバイトを具備し、前記通信装置は、さらに前記ペイロード内のバイトの数を示す前記フレーム内のレングスフィールドを識別する手段をさらに具備し、前記計算手段は、前記ペイロードの前記サブセットと前記レングスフィールドの関数として前記第２の値を計算する、請求項９５の通信装置。
【請求項９７】
前記ペイロードの開始に付加された前記最初の値を有するプリアンブルをさらに具備し、前記ペイロードの前記サブセットは、前記プリアンブルに続く前記ペイロードの第３バイト、第４バイト、および第５バイトを具備し、前記計算手段は、前記ペイロードのサブセットと前記レングスフィールドをイクスクルーシブＯＲすることにより、前記第２の値を計算する、請求項９６の通信装置。
【請求項９８】
前記レングスフィールドにより示されるペイロードバイトの数が閾値を越えるかどうかを判断する手段をさらに具備し、前記検出手段は、さらに、レングスフィールド判断の関数として正当なペイロードを検出する、請求項９６の通信装置。
【請求項９９】
ペイロードを含むフレームは、複数のバイトを具備し、前記通信装置は、シリアルバイトストリームで前記フレームを受信する手段と、前記第１のペイロードバイトの受信から所定時間内にすべてのペイロードバイトが受信されたかどうかを判断する手段をさらに具備し、前記検出手段は、さらに、前記ペイロードバイト判断の関数として正当なペイロードを検出する、請求項９５の通信装置。
【請求項１００】
前記ペイロードを含む前記フレームは、複数のバイトを具備し、前記通信装置は、シリアルバイトストリームで前記フレームを受信する手段と、所定時間内に受信したペイロードバイトの数をカウントする手段と、前記所定時間内の前記ペイロードバイトカウントが閾値を下回るなら不当なフレームであることを宣言する手段とをさらに具備する、請求項９５の通信装置。
【請求項１０１】
前記所定時間内の前記ペイロードバイトが前記閾値を越えるなら、第２の所定値内で受信したペイロードバイトの数を再カウントする手段をさらに具備する、請求項１００の通信装置。
【請求項１０２】
前記第１の値は、前記ペイロードの開始に付加され、前記フレームは、前記ペイロードの最後に付加された第３の値を具備し、前記通信装置は、前記ペイロードの第２サブセットの関数として第４の値を計算する手段と、前記第４の値を前記第３の値と比較する第２の比較手段をさらに具備し、前記検出手段は、前記第１の値と前記第２の値の比較、および前記第３の値と前記第４の値の比較の両方の関数として、正当なペイロードを検出する、請求項９５の通信装置。
【請求項１０３】
前記ペイロードは複数のバイトを具備し、前記通信装置は、前記ペイロード内のバイトの数を示す前記フレーム内のレングスフィールドを識別する手段をさらに具備し、前記計算手段および前記第２計算手段は各々、前記レングスフィールドの関数としてさらにそれぞれ第２の値および第４の値を計算する、請求項１０２の通信装置。
【請求項１０４】
前記ペイロードの前記サブセットは、前記プリアンブルに続く前記ペイロードの第３バイト、第４バイトおよび第５バイトを具備し、前記ペイロードの前記第２サブセットは、前記プリアンブルに続く前記第３バイト、前記第４バイト、および前記第５バイト、および前記ペイロードの最後のバイトを具備する、請求項１０３の通信装置。
【請求項１０５】
前記計算手段は、前記ペイロードのサブセットおよび前記レングスフィールドをイクスクルーシブＯＲすることにより前記第２の値を計算し、前記第２計算手段は、前記ペイロードの前記サブセットと前記レングスフィールドをイクスクルーシブＯＲすることにより前記第４の値を計算する、請求項１０４の通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、一般に通信システムに関し、特に、ペイロードのためのフレームプロトコル（framing protocol)に関する。
【背景技術】
【０００２】
コンピュータ等のような、複数の処理装置を含むアプリケーションにおいて、データを交換するために適切な通信ネットワークが使用される。何らかの通信ネットワークと関連するのは、装置間に通信路を可能にするアクセスプロトコルのセットである。特定の基準を支持するなんらかの処理装置におけるアプリケーションプロセスが、同じ基準を指示するその他の処理装置におけるアプリケーションプロセスと自由に通信可能にするために長い間に、種々のアクセスプロトコルが標準化されてきた。
【０００３】
コンピュータにおいて、そのような基準を実施する試みは、しばしば、試験し、変更することが困難であった単一の、複雑で、組織化されていないソフトウエアプログラムに基づいていた。この問題を克服するために、国際標準化機構（ＩＳＯ）は基準モデルとして階層化された手法を提案した。ＩＳＯ基準モデル下では、通信サブシステムは、多数の層に分解され、各層の各々は自分自身とそのすぐ上の層およびそのすぐ下の層との間の良く定義されたインターフェースを用いて、良く定義された機能を実行する。
【０００４】
ＩＳＯ基準モデルは、７つの層から成る。下位の３つの層はネットワークに独立しており、ネットワーク上で２以上の処理装置を連結するためのプロトコルに関係している。下位の３つの層は、物理層、リンク層、およびネットワーク層を含む。リンク層は、ネットワーク層に信頼できる情報を供給することにより、処理装置とネットワークとの間の物理接続に基づく。リンク層は、典型的にエラー訂正および同様の機能を提供する。ネットワーク層は、リンク層の上に置かれており、ネットワーク接続を確立する責任がある。
【０００５】
処理装置により使用される共通のデータリンクプロトコルはポイントツーポイントプロトコル（ＰＰＰ）である。ＰＰＰは、同じリンク上で同時に異なるネットワーク層プロトコルを多重化するための標準のカプセル化を提供する。基本的な手続き、方法論およびプロトコルフォーマットは、１９９４年７月に、Simpson, Wにより編集された「ポイントツーポイントプロトコル（ＰＰＰ）＠、ＳＴＤ、５１、ＲＦＣ１６６１に定義され、この内容は参照することにより本願明細書に組み込まれる。
【０００６】
各ＨＤＬＣフレームは、０ｘ７４ｅにより表されるフラッグフィールドで開始され、終了する。ＨＤＬＣフレームペイロード内のフラッグフィールドを不当に検出するのを回避するために、バイト埋めをする逃避機制が使用される。特に、送信する前に、ＨＤＬＣフレームペイロードは、フラッグシーケンス０ｘ７ｅに対して調べられる。フラッグシーケンスがペイロード内に検出されるなら、フラッグシーケンスは、０ｘ７ｄから構成される２バイトのシーケンスの後に、０ｘ２０を有したフラッグシーケンスイクスクルーシブｏｒ＝ｄが続くものと交換される。さらに、ペイロード内でバイト０ｘ７ｄが検出されるなら、バイト０ｘ７もまた０ｘ７ｄから構成される２バイトシーケンスの後に０ｘ２０を有した０ｘ７ｄイクスクルーシブｏｒ＝ｄが続くものと交換される。この手法はかなり効率的であるけれども、ペイロードをフレーム化することに関連する計算上のオーバーヘッドが増大する。
【０００７】
ＨＤＬＣフレームの完全性はペイロード上の１６または３２ビット巡回冗長検査を用いて監視することができる。ＣＲＣは、ペイロードを形成するバイナリビットストリーム上の周知のアルゴリズムを実行することにより計算される。受信側において、ＣＲＣは、受信したペイロードに基づいて再計算することができ、計算されたＣＲＣは、ＨＤＬＣフレーム内の送信されたＣＲＣと比較することができる。計算されたＣＲＣがＨＤＬＣフレーム内の送信されたＣＲＣに一致しないなら、ＣＲＣエラーフラッグがセットされる。このＣＲＣ手法は、エラー検出能力を改良するけれども、ペイロードをフレーム化することに関連した計算上のオーバーヘッドを増加させるという望ましくない効果も有する。
【０００８】
現在の技術をサポートするのに必要なデータレートの著しい増加を考えると、ＰＰＰのためにＨＤＬＣにより課せられるオーバーヘッドは、徐々に、より耐え難い負担となる。これは、特に、アプリケーションレベルの処理に比べてネットワーキングプロトコルの計算上のプロトコルが重要である、セル式自動車電話および携帯端末のようなハンドヘルド無線装置にとってはそうである。従って、計算上のオーバーヘッドを低減し、ペイロードを簡素化するために特定のアプリケーションに合わせることができる、効率的で堅固なフレームプロトコルを持つことが好都合であろう。
【発明の開示】
【課題を解決するための手段】
【０００９】
この発明の第１の観点において、ペイロードをフレーム化する方法は、ペイロードのフレーム境界を定める、ペイロードのサブセットの関数として値を計算する、そして、その値をフレーム境界内のペイロードに付加することを含む。
【００１０】
この発明の他の観点において、フレーム内の正当なペイロードを決定する方法は、ペイロードに付加された第１の値を有するペイロードを有するフレームを識別すること、ペイロードのサブセットの関数として第２の値を計算すること、第２の値を第１の値と比較し、比較の関数として正当なペイロードを検出することを含む。
【００１１】
この発明のさらなる観点において、コンピュータにより実行可能な命令のプログラムを具現化するコンピュータ読み出し可能な媒体は、ペイロードのフレーム境界を定めること、ペイロードのサブセットの関数として値を計算すること、フレーム境界内のペイロードに値を付加することを含むペイロードをフレーム化する方法を実行する。
【００１２】
この発明のさらなる観点において、コンピュータにより実行可能な命令のプログラムを具現化するコンピュータ読み出し可能な媒体は、ペイロードに付加された第１の値を有するペイロードを有するフレームを識別すること、ペイロードのサブセットの関数として第２の値を計算すること、第２の値を第１の値と比較すること、および比較の関数として正当なペイロードを検出することを含むフレーム内の正当なペイロードを決定する方法を実行する。
【００１３】
この発明のさらなる観点において、通信装置は、ペイロードのフレーム境界を定め、ペイロードのサブセットの関数として値を計算し、その値をフレーム境界内のペイロードに付加するように構成されたプロセッサと、処理されたフレームを送信するように構成された送信器を含む。
【００１４】
この発明の他の観点において、通信装置は、ペイロードに付加された第１の値を有するペイロードを有するフレームを受信するように構成された受信器と、ペイロードのサブセットの関数として第２の値を計算し、第２の値を第１の値と比較し、比較の関数として正当なペイロードを検出するように構成されたプロセッサを含む。
【００１５】
この発明のさらに他の観点において、通信装置は、ペイロードのフレーム境界を定める手段と、ペイロードのサブセットの関数として値を計算する計算手段と、および値をフレーム境界内のペイロードに付加する付加手段とを含む。
【００１６】
この発明のさらなる観点において、通信装置は、ペイロードに付加された第１の値を有するペイロードを有するフレームを識別する手段と、ペイロードのサブセットの関数として第２の値を計算する計算手段と、第２の値を第１の値を比較する比較手段と、および比較の関数として正当なペイロードを検出する検出手段を含む。
【００１７】
この発明の他の実施の形態は、以下の詳細な説明から当業者に容易に明白になるであろう。実例として、この発明の実施形態のみが示され記載されている。実現されるように、この発明は他のおよび異なる実施形態が可能であり、そのいくつかの詳細は、この発明の精神と範囲から逸脱することなく、種々の他の観点において変更可能である。従って、図面と詳細な説明は制限するものではなく、実例と見なされるべきである。
【発明を実施するための最良の形態】
【００１８】
通信システムの例示実施形態において、低オーバーヘッドフレームプロトコル(low overhead framing protocol)はネットワーク層トラヒックのために使用することができる。低オーバーヘッドフレームプロトコルは、特定のアプリケーションに合わせることができ、周知のパラメータに基づいて計算上のオーバーヘッドを低減することができる。一例として、エラー検出能力を有した送信制御プロトコル（ＴＣＰ）ネットワーク層は、ＰＰＰカプセル化されたデータ上でしばしば実行される。従って、ＰＰＰカプセル化されたデータのための低オーバーヘッドフレームプロトコルの計算上のオーバーヘッドは、リンク層において、エラー訂正機能を消去することにより低減することができる。符号分割多重アクセス（ＣＤＭＡ）セルラシステム内の加入者局と無線ネットワークとの間の地上波リンクにおいて、計算上のオーバーヘッドの低減は、最大ペイロードが周知であるので、実現可能である。ケーブルモデム、デジタル加入者線、光ファイバーリンク、衛星システム、等のようなＣＤＭＡセルラシステム以外の通信システムにおいて、周知の通信パラメータを使用して、計算上のオーバーヘッドを低減する種々の方法で低オーバーヘッドフレームプロトコルを構築することができる。従って、ＣＤＭＡセルラシステムとの関連で低オーバーヘッドフレームプロトコルへの言及は、この発明の発明の観点を説明するのみ意図される。そのような観点は多種多様の通信システムに適用可能である。
【００１９】
図１は、ＣＤＭＡセルラシステムのための簡略化された例示プロトコル規範モデルである。より詳細なプロトコル規範モデルは、２０００年１２月に発行されたＴＩＡ／ＥＩＡＩＳ−８３５；ｃｄｍａ２０００無線ＩＰネットワーク標準に見出すことができる。この内容は参照することにより本願明細書に組み込まれる。図１を参照すると、加入者装置１２は、無線ネットワーク１４と通信しているように図示される。例示加入者装置１２は物理層１８上で無線リンクプロトコル（ＲＬＰ）１６を実行する。物理層１８は、改悪されたフレームを検出するためのＣＲＣ方法論を含む。欠陥のあるＣＲＣを有するフレームは破棄される。これらの破棄されたフレームは、無線ネットワーク１４からの再送信を要求する否定応答（ＮＡＫ）を有するＲＬＰにより検出される。
【００２０】
低オーバーヘッドフレームプロトコル２０は、ＲＬＰ層１６上で実行することができる。例示加入者装置１２は改悪されたフレーム検出のためにＣＲＣを利用する物理層１８を有し、ＲＬＰ１６を用いてフレームエラーレートを低減するので、１つ以上のＮＡＫの試みが失敗しても低オーバーヘッドフレームプロトコルは失われたバイトにのみ関わっていればよいので、低オーバーヘッドフレームプロトコルはオーバーヘッドを最小にするために構築することができる。低オーバーヘッドプロトコル２０は、ＰＰＰ層２２と通信し、ＰＰＰカプセル化されたデータを交換する。次には、ＰＰＰ層２２はＩＰ層２４と通信しＰＰＰペイロードを交換する。
【００２１】
記載した例示ＣＤＭＡセルラシステムにおいて、加入者装置は、１つ以上の基地局を介してネットワーク２６と通信する。基地局は、加入者装置からの通信を、基地局および基地局コントローラを介して、パケットデータサービスノード（ＰＤＳＮ）２８に送る。基地局と基地局コントローラは、図１において、無線ネットワーク１４により表される。無線ネットワーク１４は、物理層３２の上でＲＬＰ３０を実行する。物理層３２は、リンク層トラヒックが無線ネットワーク１４に透過な状態で加入者装置１２とＰＤＳＮ２８との間の物理リンクを供給する。ＰＤＳＮ２８は、ネットワーク２６に対してゲートウエイを供給する。ＰＤＳＮ２８はまたＰＰＰリンク３８を終端し、ネットワーク２６に適したリンク層プロトコル４０を採用するように、適合される。
【００２２】
低オーバーヘッドフレームプロトコルを利用する例示ＣＤＭＡセルラシステムは図２に示される。加入者装置１２は、トランシーバ４４に接続されたプロセッサ４２を含む。加入者装置１２は、無線ネットワーク１４を介してＰＤＳＮ２８と双方向通信している。ＰＤＳＮ２８はまたトランシーバ４８に接続されたプロセッサ４６を含む。
【００２３】
プロセッサ４２、４６は、一例として、マイクロプロセッサ上で実行される通信ソフトウエアを含む種々の技術を用いて実施することができる。あるいは、一方または両方のプロセッサ４２、４６を、いずれかの一般的なプロセッサ、コントローラ、マイクロコントローラ、プログラマブル論理装置、ロジックエレメントのアレイまたはステートマシンを用いて実施することができる。順方向リンク（これは、ＰＤＳＮ２８から加入者装置１２への送信を呼ぶ）において、プロセッサ４６は、ペイロード、一例としてＰＰＰカプセル化されたデータを、低オーバーヘッドフレームプロトコルを用いてフレーム化する責任がある。特に、プロセッサ４６は、フレームを定め、ペイロードをフレーム限界内に配置し、一部のペイロードの関数として１つ以上の値を計算し、計算された値をフレーム限界内のペイロードに付加する。次に、フレーム化されたペイロードは、トランシーバ４８に接続される。トランシーバは、フレームを、（無線ネットワーク１４を介して）加入者装置１２に送信するのに適したレベルに変調し増幅する送信器（図示せず）を含む。
【００２４】
加入者装置１２におけるトランシーバ４４は、フレームを増幅し、濾波し、および復調する受信器（図示せず）を含む。次に、復調されたフレームはプロセッサ４２に接続され、ペイロードが正当かどうか判断する。プロセッサ４２は、一部のペイロードの関数として１つ以上の値を計算し、次に、計算した値を、ペイロードに付加された受信した値と比較する。その比較に基づいて、プロセッサ４２は、ペイロードが正当かどうか検出する。
【００２５】
逆方向リンク（これは、加入者装置１２からＰＤＳＮ２８への送信と呼ぶ）において、加入者装置内のプロセッサ４２は、低オーバーヘッドフレームプロトコルでペイロードをフレーム化する責任がある。プロセッサ４２は、フレームの範囲を定め、ペイロードをフレーム限界内に配置し、一部のペイロードの関数として１つ以上の値を計算し、計算した値をフレーム限界内のペイロードに付加する。次に、フレームペイロードは、トランシーバ４４に接続される。トランシーバは、フレームを、（無線ネットワーク１４を介して）ＰＤＳＮ２８に送信するのに適したレベルに変調し、増幅する送信器（図示せず）を含む。
【００２６】
ＰＤＳＮ２８におけるトランシーバ４８は、フレームを増幅し、濾波し、復調する受信器（図示せず）を含む。復調されたフレームは、プロセッサ４６に接続され、ペイロードが正当かどうか判断する。プロセッサ４６は、一部のペイロードの関数として１つ以上の値を計算し、次に、計算した値をペイロードに付加された受信した値と比較する。その比較に基づいて、プロセッサ４６は、ペイロードが正当かどうか検出する。
【００２７】
例示ＣＤＭＡセルラシステム、並びに、同様の通信パラメータを有する他のシステムにおいて、（バイト埋めを介して）フラッグ系列を免れる、およびペイロード全体に対してＣＲＣを計算する必要性を除去するために、低オーバーヘッドフレームプロトコルを構築することができる。これは、起こった順番に、スタートフラッグ(start flag)、イニシャルチェックサム(initial checksum)、レングスフィールド(length field)、ファイナルチェックサム(final checksum)およびストップフラッグ(stop flag)を有するフレーム構造を用いて達成することができる。フレーム内の各バイトを処理するのを回避するために、ペイロード内の小さな部分集合のバイトに対してイニシャルチェックサムおよびファイナルチェックサムを計算することができる。
【００２８】
図３は、低オーバーヘッドフレームプロトコルのための例示フォーマットである。ビットは、最上位のビット（ＭＳＢ）が最初に送信され、連続的に左から右に送信される。フレームは、プリアンブル５０、ペイロード５２、およびポストアンブル５４を含む。プリアンブルは３バイトの長さであり、８ビットのスタートフラッグ、５ビットのイニシャルチェックサム５８、および１１ビットのレングスフィールド６０を含む。プリアンブルの最初のバイトがスタートフラッグ５６である。プリアンブルの第２バイトは、５ビットのイニシャルチェックサム５８を含み、３つのＭＳＢのレングスフィールド６０が続く。レングスフィールドの残りの８つの最下位ビット（ＬＳＢ）はプリアンブル２２の第３バイトを構成する。ペイロードはいかなる数のバイト数であり得、記載した例示ＣＤＭＡセルラシステムにおいては、最大１５０２バイトに制限される。ポストアンブル５４は、２バイトの長さであり、１バイトのファイナルチェックサム６２および１バイトのストップフラッグ６４を含む。
【００２９】
スタートフラッグは定数値または時間に対して変化する低数値であり得る。記載した例示ＣＤＭＡセルラシステムにおいて、開始フラッグは０ｘ（ｄｅ）に設定される。開始フラッグを０ｘ（ｄｅ）に設定することにより、スタートフラッグ５６と、プリアンブルの第２バイトとの間の差別化処理は、プリアンブルの第２バイトが決して０ｘ（ｄｅ）になることはありえないので簡略化することができる。これは、最大ペイロードが１５０２バイトだからであり、それゆえ、レングスフィールドは、０ｘ（５ｃｄ）に等しい値を超えることはできない。プリアンブルの第２バイトの４つのＬＳＢ＝ｓは、レングスフィールドの３つのＭＳＢ＝ｓを含むので、プリアンブルの第２バイトの４つのＬＳＢ＝ｓは決して０ｘ（ｅ）になることはできないし、同様に、０ｘ６、０ｘ７または０ｘ（ｆ）になることはできないことは容易にわかる。もちろん、多くの他の値を、スタートフラッグとプリアンブルの第２バイトとの間の同じ程度の差別化を供給することができるスターとフラッグとして選択することができる。一例として、スタートフラッグは、０ｘ（ｄ６）、０ｘ（ｄ７）または０ｘ（ｄｆ）で設定することができ、スタートフラッグから容易に区別することができる。事実、プリアンブルの第２バイトの４つのＭＳＢ＝ｓはいかなる値にも設定することができ、スタートフラッグとプリアンブルの第２バイトとの間の差別化の容易性は、４つのＬＳＢ＝ｓを０ｘ６、０ｘ７、０ｘ（ｅ）または０ｘ（ｆ）に設定することにより維持することができる。スタートフラッグのために選択された特定の値は一般的に設計上の問題である。
【００３０】
スタートフラッグ５６のために選択された値もストップフラッグ６４のために使用することができる。この手法は、１つのフレームのストップフラッグを次のフレームの開始フラッグとして使用することによりオーバーヘッドを低減することができる。２つの連続するフレーム間に遅延が存在するなら、新しいフレームの開始を示すために、別個の開始フラッグを送らなければならない。
【００３１】
開始チェックサム５８は、ビットのいずれかの組み合わせを用いて計算することができる。記載した例示ＣＤＭＡセルラシステムにおいて、初期チェックサム５８はレングスフィールドの８つのＬＳＢ（すなわち、プリアンブルの第３バイト）およびペイロードの第３、第４、および第５バイトに対してイクスクルーシブＯＲを実行することにより計算される。８ビットイクスクルーシブＯＲ＝ｄの５つのＭＳＢが使用される。ペイロードが５バイト未満を含むなら、利用可能なバイトのみが使用される。ペイロードの第３、第４および第５バイトを用いてチェックサムを計算する。何故なら、殆どの場合、これらのバイトはパケットがヘッダ圧縮されるとき、ＴＣＰチェックサムを含むであろう。ＴＣＰチェックサムはペイロードの残りよりも大きな度合いの予測不可能性をたぶん呈示するであろう。それにより、初期チェックサムをできるだけランダムにさせる。ランダム初期チェックサムはデータが破損したフレームを肯定的に検出する確率を減少しなければならない。
【００３２】
レングスフィールド６０はペイロード内のバイトの数を示し、最終チェックサム６２のロケーションはフレーム内にある。記載した例示ＣＤＭＡセルラシステムにおいて、このフィールドの最大許容値は１５０２であり、ＰＰＰプロトコルフィールドの２バイトとペイロードの１５００バイトを含む。
【００３３】
初期チェックサム５８同様に、最終チェックサム６２は、ビットのいずれかの組合せを用いて計算することができる。記載した例示ＣＤＭＡセルラシステムにおいて、最終チェックサムは、レングスフィールドの８つのＬＳＢ（すなわち、プリアンブルの第３バイト）、およびペイロードの第３、第４、第５、および最終バイトについてイクスクルーシブＯＲを実行することにより計算される。ペイロードが５バイト未満を含むなら、利用可能なバイトのみが使用される。
【００３４】
チェックサム計算は、以下の２つの例を参照することにより、最もよく理解される。第１の例において、フレームが２バイトのペイロードを有するなら、（ペイロードの他の必要とされるどれひとつとして存在しないので）、レングスフィールドの最終バイトのみが初期
チェックサム計算に使用されるであろう。最終チェックサムは、レングスフィールドの８つのＬＳＢおよびペイロードの第２バイトを用いて計算されるであろう。
【００３５】
一例として、ペイロードの第１バイトが０ｘ２１であり、ペイロードの第２バイトが０ｘ（ａａ）であるなら、初期チェックサムは、（２バイトのペイロードを示す）０ｘ０２であるレングスフィールドの８つのＬＳＢを用いて計算されるであろう。初期チェックサムはレングスフィールドの５つのＭＳＢ、すなわち０ｘ００に等しいであろう。最終チェックサムは、レングスフィールドの８つのＭＳＢである０ｘ０２と、ペイロードの最後のバイトである０ｘ（ａａ）とのイクルクルーシブＯＲを取ることにより計算され、０ｘ（ａ８）の最終チェックサムを生じるであろう。最終例示フレームは、以下のように構築されるであろう（但し、ペイロードは、＊文字間にある）
ｄｅ  ００  ０２＊２１＊ａ８  ｄｅ
第２の例において、フレームが５バイトのペイロードを有するなら、初期チェックサムは、レングスフィールドの８つのＬＳＢ、およびペイロードの第３、第４、および第５バイトを用いて計算されるであろう。最終チェックサムは、レングスフィールドの８つのＬＳＢ＝ｓおよびペイロードの第３、第４、および第５バイト、およびペイロードの最終バイト（この場合も第５バイトである）を用いて計算されるであろう。
【００３６】
一例として、５バイトペイロードが０ｘ２１、０ｘ０ｂ、０ｘ２２、０ｘ３ａ、０ｘ０ａなら、初期チェックサムは、０ｘ０５であるレングスフィールドの８つのＬＳＢを、０ｘ２２、０ｘ３ａ、０ｘ０ａとイクルクルーシブＯＲすることにより計算されるであろう。初期チェックサムは、０ｘ（ｉｄ）（０５ＸＯＲ  ２２  ＸＯＲ  ３ａ  ＸＯＲ  ０ａ  ＸＯＲ  ０ａ）であろう。最終例示フレームは以下のように構築されるであろう（但し、ペイロードは＊文字間にある）。
【００３７】
ｄｅ  １０  ０５＊２１  ０ｂ  ２２  ３ａ  ０ａ＊１ｄ  ｄｅ
図４を参照すると、低オーバーヘッドフレームプロトコルの例示検出方法論を実証するフローチャートが示される。ステップ６６において、受信器は開始フラッグのためのシリアルバイトストリームを走査する。開始フラッグが検出されると、受信器は初期チェックサムを計算できるように、必要なバイト数が到達するのを待つ。記載された例示ＣＤＭＡセルラシステムにおいて、初期チェックサム、レングスフィールド、およびペイロードの最初の５バイトを、初期チェックサムを計算するために受信しなければならない。ステップ６８において、受信器は初期チェックサムを計算する。次に、ステップ７０において、計算された初期チェックサムが送信された初期チェックサムと比較される。計算された初期チェックサムが、送信された初期チェックサムと一致しないなら、正しくないプリアンブルが検出された。正しくないプリアンブルに応答して、検出された開始フラッグが破棄され、受信器はステップ６６に戻り、破棄された開始フラッグの直後のバイトで始まる新しい開始フラッグのためのシリアルバイトストリームの走査を開始する。反対に、計算された初期チェックサムが送信された初期チェックサムと一致するなら、次に、ステップ７２において、レングスフィールドの値が最大値と比較される。レングスフィールドの値が最大値を越えるなら、正しくないプリアンブルが検出された。上述したように、正しくないプリアンブルは、受信器に、検出された開始フラッグを破棄させ、ステップ６６に戻り、破棄された開始フラッグの直後のバイトで始まる新しい開始フラッグのためのシリアルバイトストリームの走査を開始させる。反対に、レングスフィールドが最大値以下ならば、受信器は肯定的にプリアンブルを検出した。
【００３８】
プリアンブルを肯定的に検出するための手続きは、送信されたチェックサムに対して計算されたチェックサムをシーケンシャルに比較し、次に、レングスフィールドの値を調べることにより記載したが、順番を逆にしてもよいし、あるいは、チェックサムの比較とレングスフィールドの調査は並列に行なっても良いことは当業者は理解するであろう。さらに、代わりの実施の形態において、肯定的なプリアンブルを検出する手続きは、初期チェックサム比較またはレングスフィールド値の調査の一方に限定することができる。その際、初期チェックサム比較のみに限定してもよいし、レングスフィールド値の調査のみに限定してもよいし、あるいは他の周知の技術と組み合わせて限定してもよい。
【００３９】
プリアンブルが肯定的に検出されると、受信器は、何らかのさらなるフレーム処理を実行する前にレングスフィールドにより指定されたすべてのペイロードバイトを受信するまで待つ。これは、プリアンブルが正しくなく検出されたなら、受信器を立ち往生させるかもしれない。受信器の立ち往生の可能性を回避するために、すべてのペイロードバイトは、特定の時間期間内に受信されなければならない。ステップ７４において、レングスフィールドにおいて指定されたすべてのペイロードが受信される前に時間期間が経過するなら、検出された開始フラッグは破棄され、受信器はステップ６６に戻り、破棄された開始フラッグの直後のバイトで始まる新しい開始フラッグのためのシリアルバイトストリームの走査を開始する。反対に時間期間が経過する前に、レングスフィールドで指定されたすべてのペイロードバイトが受信されるなら、最終チェックサムを計算することができる。
【００４０】
ステップ７６において、最終チェックサムが計算される。次に、ステップ７８において、計算された最終チェックサムは、送信された採集チェックサムと比較される。計算された最終チェックサムが送信された最終チェックサムと一致しないなら、正しくないポストアンブルが検出された。正しくないポストアンブルに応答して、検出された開始フラッグが破棄され、受信器はステップ６６に戻り、破棄された開始フラッグ直後のバイトで始まる新しい開始フラッグのためのシリアルバイトストリームの操作を開始する。反対に、計算された最終チェックサムが送信されたチェックサムと一致するなら、ステップ８０において、最終チェックサムの直後のバイトがストップフラッグのためにチェックされる。バイトがストップフラッグでなければ、フレームはデータが破壊される。データが破壊されたフレームに応答して、検出された開始フラッグが破棄され、受信器はステップ６６に戻り、破棄された開始フラッグの直後のバイトで始まる新しい開始フラッグのためのシリアルバイトストリームの走査を開始する。反対に、ストップフラッグが最終チェックサムの直後に検出されるなら、フレームは肯定的に検出され、受信器はステップ８２において、ペイロードを上層に渡す。
【００４１】
フレームを肯定的に検出するための上述したステップのシーケンスは一例であり、限定するものではない。当業者は、これらの手続きがいかなる順番でも実行できる、すなわち、シリアルに、パラレルに、あるいは、シリアル手続きとパラレル手続きのいずれかの組合せで実行できることを理解するであろう。さらに、１つ以上の特定の手続きを省略してもよいし、または技術的に知られているいづれかの他の技術と組み合わせても良い。
【００４２】
受信器の立ち往生は、多くのアプリケーションにおいて大きな懸念であり得る。従って、ペイロードバイトの配信の期間に受信が立ち往生するのを防止するためにある手続きを行使してもよい。一例として、最大ペイロードに対して推定される最悪配信時間のためのタイマを設定することができる。レングスフィールドで指定された全てのペイロードバイトが受信される前にタイマが切れるなら、受信器は、立ち往生を宣言し、以前に検出した開始フラッグ直後のバイトで始まる新しい開始フラッグのためのシリアルバイトストリームの走査を開始する。
【００４３】
あるいは、図５の流れ図に概説される手続きを用いて、受信器の立ち往生に対するより早い応答時間を達成することができる。ステップ８４において、最初のペイロードバイトが受信される。これに応答して、ステップ８６において、ペイロードバイトカウントをゼロに設定し、ステップ８８において、タイマはｔ１ミリ秒（ｍｓ）でタイムアウトに設定され、ステップ９０において、タイマバイトカウントはゼロに設定される。
【００４４】
ステップ９２において、受信したペイロードバイトの数を反映させるために、ペイロードバイトカウントがインクリメントされる。次に、ステップ９４において、ペイロードバイトカウントは、レングスフィールド値と比較される。ペイロードバイトカウント値がレングスフィールド値と等しいなら、ペイロードバイト配信は完了し、ステップ９６において、最終チェックサムを計算することができる。反対に、ペイロードバイトカウントがレングスフィールド値未満なら、ステップ９８において、タイマバイトカウントがインクリメントされ、タイマがセットされてから受信したバイト数を反映する。
【００４５】
次に、ステップ１００において、受信器は、次のペイロードバイトを待つ。タイマが切れる前に、次のペイロードバイトが受信されるなら、受信器は、バイトカウントループ１０２に入る。バイトカウントループ１０２において、ステップ９２において、バイトカウントがインクリメントされ受信したペイロードバイトの数を反映し、ステップ９４において、インクリメントされたバイトカウントが再びレングスフィールド値と比較され、ペイロード配信が完了したかどうか判断する。インクリメントされたバイトカウントがレングスフィールド値に等しいなら、受信器はバイトカウントループ１０２を出て、ステップ９６において最終チェックサムを計算する。反対に、バイトカウントが、レングスフィールド値未満なら、ステップ９８において、タイマバイトカウントがインクリメントされ、タイマが設定されてから受信したバイト数を反映する。受信器は、ペイロード配信が完了するかまたは最初のペイロードバイトを受信後、タイマがｔ１ｍｓ経過するまで、バイトカウントループ１０２に留まる。
【００４６】
タイマが切れると（最初のペイロードが受信された後のｔ１ｍｓ）、ステップ１０４においてタイマバイトカウントは実装時定義の定数Ｋと比較される。タイマバイトカウントが定数Ｋより大きければ、ペイロードが積極的に受信されている確率が高くなる。この結果、受信器はタイマループ１０６に入る。タイマループ１０６において、タイマは、ステップ８８においてｔ１ｍｓにおけるタイムアウトでタイムアウトにリセットされ、ステップ９０において、タイマバイトカウントはゼロにリセットされる。次に、受信器は、ペイロード配信が完了するかまたはタイマが切れるまでバイトカウントループ１０２に入る。
【００４７】
タイマが切れると、ステップ１０４において、タイマバイトカウントは再び定数Ｋと比較される。タイマバイトカウントが定数Ｋを越えるなら、受信器は、ペイロード配信が完了するかまたは定数Ｋ以下のタイマバイトカウントでタイマが切れるまでタイマループ１０６に留まる。タイマが定数以下のタイマバイトカウントで切れるなら、ペイロードバイトが受信されない確率が高くなる。その場合には、受信器はステップ１０８において、受信器立ち往生を宣言し、以前に検出した開始フラッグ直後のバイトで始まる新しい開始フラッグのためのシリアルバイトストリームの走査を開始する。
【００４８】
記載した例示ＣＤＭＡセルラシステムにおいて、ｔ１は、等時性の方法で物理層からの最大ペイロードを受信するのにかかる時間に設定することができる。この方法が使用されるなら、８０００ｂｐｓ物理リンクに基づいて、１５０２バイトに適合するために、ｔ１は、１．５秒に設定されるであろう。しかしながら、ｔ１の値は、物理層内の速度変化を処理するために順応可能である。定数Ｋは１０に設定することができる。または上層バイトストリームの周知のパラメータに基づいて定数Ｋを最適化するために順応できる。
【００４９】
当業者は、ここに開示した実施形態に関連して記載した種々の例示論理ブロック、モジュール、回路、およびアルゴリズムは、電子ハードウエア、コンピュータソフトウエア、または両方の組合せとして実施できることを理解するであろう。ハードウエアとソフトウエアのこの互換性を明瞭に説明するために、種々の例示部品、ブロック、モジュール、回路、およびアルゴリズムは、一般的のそれらの機能性の観点から上述した。そのような機能性がハードウエアまたはソフトウエアとして実施されるかどうかは、特定のアプリケーションおよび全体のシステムに課せられた設計制約に依存する。当業者、各特定のアプリケーションに対してさまざまな方法で、記載した機能性を実施することができるが、そのような実施の決定は、この発明の範囲からの逸脱を生じるものとして解釈されるべきでない。
【００５０】
ここに開示された実施の形態に関連して記載された種々の実例となる論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタルシグナルプロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）または他のプログラマブル論理装置、ディスクリートゲートまたはトランジスタロジック、ディスクリートハードウエアコンポーネント、またはここに記載した機能を実行するように設計されたいずれかの組合せを用いて実施または実行することができる。汎用プロセッサは、マイクロプロセッサであってよいが、別の方法では、プロセッサは、いずれかの一般的なプロセッサ、コントローラ、マイクロコントローラ、またはステートマシンであってよい。プロセッサはまた、計算装置の組合せとしても実施できる。例えば、ＤＳＰとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、ＤＳＰコアと協力した１つ以上のマイクロプロセッサまたはいずれかの他のそのような構成として実施することもできる。
【００５１】
ここに開示された実施の形態に関連して記載された方法またはアルゴリズムのステップは、ハードウエアにおいて、プロセッサにより実行されるソフトウエアモジュールにおいて、または両者の組合せにおいて直接具現化することができる。ソフトウエアモジュールは、ＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハードディスク、脱着可能ディスク、ＣＤ−ＲＯＭ、または技術的に知られているその他のいずれかの形態の記憶媒体に存在することができる。例示記憶媒体は、プロセッサに接続される。そのようなプロセッサは記憶媒体から情報を読み出し、記憶媒体に情報を書き込むことができる。別の方法では、記憶媒体は、プロセッサに集積可能である。プロセッサと記憶媒体はＡＳＩＣに存在してもよい。ＡＳＩＣはユーザ端末に存在してもよい。別の方法では、プロセッサと記憶媒体はユーザ端末内のディスクリートコンポーネントとして存在してもよい。
【００５２】
開示した実施形態の上述の記載は当業者がこの発明を製作または使用することを可能にするために提供される。これらの実施の形態に対する種々の変更は当業者には容易に明白であろう、そしてここに定義される包括的原理は発明力の使用なしに他の実施の形態に適用可能である。従って、この発明は、ここに示した実施の形態に限定されることを意図したものではなく、ここに開示した原理と新規な特徴に一致する最も広い範囲が許容されるべきである。
【００５３】
この発明の例示実施形態について記載したけれども、添付されたクレームの範囲を制限するように解釈されるべきでない。当業者は、記載した実施の形態に種々の変更を行なうことができることを理解するであろう。さらに、多様な技術における熟達した人にとって、ここに記載した発明自体が他の仕事への解決および他のアプリケーションに対する適応を示唆するであろう。それゆえ、この実施の形態は、あらゆる面において、例示として、そして制限的なものでないものとして考察され、この発明の範囲を示すために参照は、上述した記載よりもむしろ添付されたクレームに対して成されるべきであることが望ましい。
【図面の簡単な説明】
【００５４】
【図１】図１は例示実施形態に従うＣＤＭＡセルラシステムの機能ブロック図である。
【図２】図２は、例示実施形態に従って、低オーバーヘッドフレームプロトコルを利用するＣＤＭＡセルラシステムの機能ブロック図である。
【図３】図３は、例示実施形態に従う低オーバーヘッドフレーミングプロトコルのためのフォーマットである。
【図４】図４は、例示実施形態に従って、低オーバーヘッドフレーミングプロトコルを使用するペイロードのための検出方法論を立証するフローチャートである。
【図５】図５は、例示実施形態に従って、受信器区画を検出するための方法論を立証するフローチャートである。
【図１】
2005526414.tif 000003
【図２】
2005526414.tif 000004
【図３】
2005526414.tif 000005
【図４】
2005526414.tif 000006
【図５】
2005526414.tif 000007
【国際調査報告】
2005526414.tif 000008
2005526414.tif 000009
2005526414.tif 000010