(57)【特許請求の範囲】
【請求項１】
予め定められた領域を有するフレーム内のデータのうち、データを書き換える可変領域と、データを書き換えない不変領域とに、データを分離するフレームデータ分離手順と、
前記フレームデータ分離手順で分離した前記フレームのフレーム長情報を取得するフレーム長情報取得手順と、
前記フレームデータ分離手順で分離した前記不変領域のデータに対しＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）演算を行う第一のＣＲＣ演算手順と、
前記フレーム長情報取得手順で取得した前記フレーム長情報を前記可変領域のデータに割当てるフレーム長情報割当て手順と、
前記フレーム長情報割当て手順で前記フレーム長情報を割当てた可変領域のデータに対しＣＲＣ演算を行う第二のＣＲＣ演算手順と、
前記第一のＣＲＣ演算手順の算出結果と、前記第二のＣＲＣ演算手順の算出結果とに対してＣＲＣ演算を行う第三のＣＲＣ演算手順と、を
行うことを特徴とするフレームデータ処理方法。
【請求項２】
前記第一のＣＲＣ演算手順及び前記第二のＣＲＣ演算手順を同一クロック内で
行うことを特徴とする請求項１に記載のフレームデータ処理方法。
【請求項３】
予め定められた領域を有するフレーム内のデータのうち、データを書き換える可変領域と、データを書き換えない不変領域とに、データを分離するフレームデータ分離回路と、
前記フレームのフレーム長情報を取得するフレーム長情報取得回路と、
前記不変領域のデータに対しＣＲＣ演算を行う第一のＣＲＣ演算回路と、
前記フレーム長情報を前記可変領域のデータに割当てるフレーム長情報割当て回路と、
前記フレーム長情報割当て回路で前記フレーム長情報を割当てた可変領域のデータに対しＣＲＣ演算を行う第二のＣＲＣ演算回路と、
前記第一のＣＲＣ演算回路の算出結果と、前記第二のＣＲＣ演算回路の算出結果とに対してＣＲＣ演算を行う第三のＣＲＣ演算回路と、を
備えることを特徴とするフレームデータ処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、送受信フレームのデータをＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）演算を行うフレームデータ処理方法及びフレームデータ処理装置に関する。
【背景技術】
【０００２】
送受信フレームをメモリ等に格納するシステムにおいては、信頼性向上のため、メモリ内でのデータの書き変わり等のソフトエラーの発生を検知する機能を備える必要がある。ＣＲＣ演算は、データの転送や格納時にデータのエラーを検出するチェックサムとして一般的に使用されている（例えば、特許文献１参照。）。
【０００３】
図１は、入力フレームのデータをＣＲＣ演算する場合のタイミングチャートを示す。１１はシステムのクロック、１２は入力フレームデータの有効領域を示す信号、１３は入力フレームデータ、１４は入力フレーム長、１５はＣＲＣ演算時間を示す。
【０００４】
入力フレーム長１４はｎサイクルクロック分のデータを有する。ＣＲＣ演算は、入力されたフレームデータに対して逐次演算を実施して結果を求めるため、演算時間は入力フレーム長１４に依存する。ここで、最終のＣＲＣ演算結果が得られる時間（ＣＲＣ演算結果時間）を式１に示す。
（数１）
Ｔ×ｎ＋ＴＣＲＣ        （１）
式１においてＴは１サイクル時間、ＴＣＲＣは１〜ｎのデータのＣＲＣ演算時間１５を示す。システムによっては、入力フレームの入力完了後に書き換えデータが確定し、その確定データを入力フレームに対して、書き換えるような場合がある。例えばパケット信号をメモリに格納するようなシステムがあげられる。
【０００５】
次に、メモリにフレームデータを格納する時にフレームデータを書き換える必要がある例について説明する。図２及び図３はフレーム長情報１９の取得タイミングと読み出し制御（リードイネーブル１７）信号のタイムチャートを示す。
【０００６】
図２は、フレームデータの書き換えがない場合のフレームデータを読み出す場合であり、フレームにフレームデータ長がなく、フレームの末尾でフレーム長がわかった場合のタイムチャートを示す。１１はシステムのクロック、１６は読み出し要求信号、１７はリードイネーブル信号、１８はリードデータ、１９はフレーム長情報を示す。この場合、リードイネーブル信号１７はフレーム長がわかった時点からオフ（読み出し不可）とするため、余分のリードイネーブル信号１７を出力しているアンダフロー状態（書き込みデータ以上に読み出す状態）となる。このような状態では無効データを読み出すことで、誤認識、誤りデータを送信する等の誤動作を招く可能性がある。
【０００７】
図３は、フレームデータの書き換えがある場合のフレームデータを読み出す場合であり、フレームの先頭にフレーム長情報１９がある場合のタイムチャートを示す。この場合、フレームの先頭に読み出し時にフレームの長さがわかるので、リードイネーブル信号１７はフレーム長に対応するクロック分の長さでオフとすることができる。従ってメモリにフレームデータを格納するときにフレームの先頭にフレーム長情報１９を書き換えることにより、メモリからフレームを読み出す時に、フレームの長さに応じてリードイネーブル信号１７の出力期間を制御することができ、上記図２のような問題を解消することができる。
【０００８】
図４は入力フレームに対してデータの書き換えがある場合のＣＲＣ演算のタイミングチャートを示す。１１はシステムのクロック、１２は入力フレームデータの有効領域を示す信号、１３は入力フレームデータ、２１は書き換え後の入力フレームデータ、１４は入力フレーム長、１５はＣＲＣ演算時間、１９はフレーム長情報であるＬｅｎを示す。入力フレームデータ１３のデータ読み出し後にフレーム長情報１９を示すＬｅｎが確定し、入力フレームデータ１３の先頭のプリアンブルをフレーム長情報１９を示すＬｅｎに書き換えて、メモリに格納する。この場合における、最終のＣＲＣ演算結果が得られる時間（ＣＲＣ演算結果時間）の算出式を式２に示す。
（数２）
Ｔ×２ｎ＋ＴＣＲＣ        （２）
式２に示す書き換え後の入力フレームデータ２１に対するＣＲＣ演算結果時間はフレーム長の２倍の時間とＣＲＣ演算時間ＴＣＲＣとを要する。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００２−１３５３５５号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
関連技術では、送受信入力フレームを書き換えてメモリ内に格納して、メモリ内の入力フレームに対してＣＲＣ演算をする場合、フレーム長の２倍の時間とＣＲＣ演算時間ＴＣＲＣがかかるという課題があった。
【００１１】
前記課題を解決するために、本発明は、入力フレームデータの書き換える領域と書き換えない領域を分離させ、書き換えない領域のＣＲＣ演算は入力に対して逐次演算で実施し、書き換える領域のＣＲＣ演算は書換え入力完成後に実施する。その後、書き換える領域と書き換えない領域のＣＲＣ演算結果を合わせて再度ＣＲＣ演算を行うことを目的とする。
【課題を解決するための手段】
【００１２】
上記目的を達成するため、本発明では、入力フレームにおいて、書き換える領域又は書き換えない領域に分離し、ＣＲＣ演算を行う。
【００１３】
具体的には、本発明に係るフレームデータ処理方法は
予め定められた領域を有するフレーム内のデータのうち、データを書き換える可変領域と、データを書き換えない不変領域とに、データを分離するフレームデータ分離手順と、
前記フレームデータ分離手順で分離した前記フレームのフレーム長情報を取得するフレーム長情報取得手順と、
前記フレームデータ分離手順で分離した前記不変領域のデータに対しＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）演算を行う第一のＣＲＣ演算手順と、
前記フレーム長情報取得手順で取得した前記フレーム長情報を前記可変領域のデータに割当てるフレーム長情報割当て手順と、
前記フレーム長情報割当て手順で前記フレーム長情報を割当てた可変領域のデータに対しＣＲＣ演算を行う第二のＣＲＣ演算手順と、
前記第一のＣＲＣ演算手順の算出結果と、前記第二のＣＲＣ演算手順の算出結果とに対してＣＲＣ演算を行う第三のＣＲＣ演算手順と、を行う。
【００１４】
本発明に係るフレームデータ処理方法では、
前記第一のＣＲＣ演算手順及び前記第二のＣＲＣ演算手順を同一クロック内で行われてもよい。
【００１５】
具体的には、本発明に係るフレームデータ処理装置は
予め定められた領域を有するフレーム内のデータのうち、データを書き換える可変領域と、データを書き換えない不変領域とに、データを分離するフレームデータ分離回路と、
前記フレームのフレーム長情報を取得するフレーム長情報取得回路と、
前記不変領域のデータに対しＣＲＣ演算を行う第一のＣＲＣ演算回路と、
前記フレーム長情報を前記可変領域のデータに割当てるフレーム長情報割当て回路と、
前記フレーム長情報割当て回路で前記フレーム長情報を割当てた可変領域のデータに対しＣＲＣ演算を行う第二のＣＲＣ演算回路と、
前記第一のＣＲＣ演算回路の算出結果と、前記第二のＣＲＣ演算回路の算出結果とに対してＣＲＣ演算を行う第三のＣＲＣ演算回路と、を備える。
【００１６】
なお、上記各発明は、可能な限り組み合わせることができる。
【発明の効果】
【００１７】
本発明によれば、入力フレームデータの書き換える領域と書き換えない領域を分離し、書き換えない領域のＣＲＣ演算は入力に対して逐次演算で実施し、書き換える領域のＣＲＣ演算は書換え入力完成後に演算を実施する。その後、書き換える領域と書き換えない領域のＣＲＣ演算結果を合わせて再度ＣＲＣ演算するため、本発明では、関連技術に比べＣＲＣ演算結果時間を約１／２に短縮することができる。
【図面の簡単な説明】
【００１８】
【図１】関連技術に係るＣＲＣ演算におけるタイミングチャートの一例を示す。
【図２】関連技術に係るフレームデータの書き換えがない場合のタイミングチャートの一例を示す。
【図３】関連技術に係るフレームデータを書き換えがある場合のタイミングチャートの一例を示す。
【図４】関連技術に係るフレームデータの書き換えがある場合におけるＣＲＣ演算のタイミングチャートの一例を示す。
【図５】本実施形態に係るフレームデータ処理装置の構成の一例を示す。
【図６】本実施形態に係るＣＲＣ演算におけるタイミングチャートの一例を示す。
【図７】本実施形態に係るＣＲＣ演算におけるフローチャートの一例を示す。
【発明を実施するための形態】
【００１９】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。なお、本発明は、以下に示す実施形態に限定されるものではない。これらの実施の例は例示に過ぎず、本発明は当業者の知識に基づいて種々の変更、改良を施した形態で実施することができる。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。
【００２０】
（実施形態１）
図５は、本実施形態に係るフレームデータ処理装置３１の構成の一例を示す。本実施形態に係るフレームデータ処理装置３１は、フレームデータ分離回路３２と、フレーム長情報取得回路３３と、第一のＣＲＣ演算回路３４と、フレーム長情報割当て回路３５と、第二のＣＲＣ演算回路３６と、第三のＣＲＣ演算・付与回路３７と、を備える。
【００２１】
本実施形態に係るフレームデータ処理方法では、フレームデータ分離手順と、フレーム長情報取得手順と、第一のＣＲＣ演算手順と、第二のＣＲＣ演算手順と、第三のＣＲＣ演算手順と、を行う。フレーム長情報取得手順及び第一のＣＲＣ演算手順の順序はこれに限定されない。例えば、第一のＣＲＣ演算手順の後にフレーム長情報取得手順を行ってもよい。また、第一のＣＲＣ演算手順及びフレーム長情報取得手順を同時に行ってもよい。
【００２２】
本実施形態に係るフレームデータ処理装置３１における、フレームデータ分離回路３２は、予め定められた領域を有するフレーム内のデータのうち、データを書き換える可変領域と、データを書き換えずデータの領域に対して不変である不変領域とに、データを分離する。フレーム長情報取得回路３３は、フレームのフレーム長情報を取得する。第一のＣＲＣ演算回路３４は、不変領域のデータに対しＣＲＣ演算を行う。
【００２３】
また、本実施形態に係るフレームデータ処理装置３１における、フレーム長情報割当て回路３５は、フレーム長情報を可変領域のデータに割当てる。第二のＣＲＣ演算回路３６は、フレーム長情報割当て回路３５でフレーム長情報を割当てた可変領域のデータに対しＣＲＣ演算を行う。第三のＣＲＣ演算・付与回路３７は、第一のＣＲＣ演算回路３４の算出結果と、第二のＣＲＣ演算回路３６の算出結果とに対してＣＲＣ演算を行う。
【００２４】
本実施形態に係るフレームデータ処理方法では、フレームデータ分離手順と、フレーム長情報取得手順と、第一のＣＲＣ演算手順と、第二のＣＲＣ演算手順と、第三のＣＲＣ演算手順と、を行う。本実施形態に係るフレームデータの処理方法の一例を図６に示す。図６では、１１はシステムのクロック、１２は入力フレームデータの有効領域を示す信号、１３は入力フレームデータ、２１は領域Ｂにおける書き換え後のフレームデータ、１４は入力フレーム長、１９はフレーム長情報Ｌｅｎを示す。
【００２５】
図６に示したフレームデータ処理方法の各手順を以下に説明する。図６では、ステップ５０１は書き換え無の領域ＡのＣＲＣ演算時間を算出する手順、ステップ５０２は書き換え有りの領域ＢのＣＲＣ演算時間１５を算出する手順、ステップ５０３はフレーム全体のＣＲＣ演算時間１５を算出する手順を示す。ここで、以下にフレームデータの処理方法について図７のフローチャートを用いてさらに説明する。
【００２６】
（１）本実施形態に係るフレームデータ処理方法では、入力フレームデータ１３を読み出すとともに、書き換え無の領域ＡのＣＲＣ演算を行う（ステップ１０１）。
（２）フレーム長情報取得回路３３でフレーム長情報取得手順を実行する。具体的には、入力フレームデータ１３の読み出し後、フレーム長情報１９を取得する（ステップ１０２）。
（３）フレーム長情報割当て回路３５が書き換え有りの領域Ｂに対し、書き換え後のデータのＣＲＣ演算を行う（ステップ１０３）。
（４）フレーム長情報１９を書き換えた、書き換え後のデータのＣＲＣ演算を行う（ステップ１０４）。
（５）最後に、書き換えられた入力フレームデータ１３のＣＲＣ演算を、書き換え無しの領域ＡのＣＲＣ演算結果と書き換え後の領域ＢのＣＲＣ演算結果を用いて行う（ステップ１０５）。ここで、本実施形態に係る各ＣＲＣ演算では、例えば、第一のＣＲＣ演算〜第三のＣＲＣ演算では、それぞれ同一の生成多項式を用いてＣＲＣ演算してもよい。
【００２７】
上述のフレームデータ処理方法では、書き換える領域である可変領域と、書き換えない領域である不変領域とに分けることで、ＣＲＣ演算を分離して演算処理が可能となるよう、フレームデータ分離手順で、予め定められた領域を有するフレーム内のデータのうち、データを書き換える可変領域と、データを書き換えない不変領域とに、データを分離する。具体的には、フレームデータ分離手順では、フレームデータの有効領域を示す信号１２が“１”の期間をカウントし、カウント数に応じて領域を分離する。例えば、カウント数が０の場合は可変領域とし、１〜８の場合は不変領域というように分けることで可変領域及び不変領域に分離することを実現できる。
【００２８】
図５では、本実施形態に係るフレームデータ処理装置３１及びフレームデータ受信装置４１の構成の一例を示す。フレームデータ処理装置３１は、フレームデータ分離回路３２と、フレーム長情報取得回路３３と、第一のＣＲＣ演算回路３４と、フレーム長情報割当て回路３５と、第二のＣＲＣ演算回路３６と、第三のＣＲＣ演算・付与回路３７と、を備える。一方、フレームデータ受信装置４１では、フレームデータ受信装置４１側において、フレームデータ分離回路４２と、第一のＣＲＣ演算回路４３と、第二のＣＲＣ演算回路４４と、第三のＣＲＣ演算・チェック回路４５と、を備える。また、フレームデータは、メモリ４０を介して処理装置３１からフレームデータ受信装置４１に送出される。
【００２９】
具体的には、フレームデータ受信装置４１側では、フレームデータ分離回路４２は、メモリ４０から送出されたフレームデータを書き換える領域及び書き換えない領域に分離し、書き換えない領域に分離したデータを第一のＣＲＣ演算回路４３に送出し、書き換える領域データに分離したデータを第二のＣＲＣ演算回路４４に送出する。第一のＣＲＣ演算回路４３は書き換えない領域に分離したデータをＣＲＣ演算し、第二のＣＲＣ演算回路４４は書き換える領域に分離したデータをＣＲＣ演算する。第三のＣＲＣ演算・チェック回路４５は、第一のＣＲＣ演算回路４３及び第二のＣＲＣ演算回路４４で演算したＣＲＣ演算結果をチェックする。
【００３０】
図５におけるフレームデータ処理装置３１及びフレームデータ受信装置４１の構成例では、メモリ４０においてフレームデータを取得した際、当該メモリ４０で発生するソフトエラーを検知する場合がある。そこで、フレームデータ処理装置３１は、フレームをライトする時に予めＣＲＣを付与しておき、フレームデータ受信装置４１でフレームをリードする際に、第三のＣＲＣ演算・チェック回路４５でチェックする。ここで、フレームデータ受信装置４１でフレームをリードする場合、フレーム長の情報が必要となり、フレームデータの書き換えが必要となる。本実施形態では、上述した書き換えが発生するような場合において、ＣＲＣ演算を短縮することができる。
（数３）
Ｔ×ｎ＋Ｔ×２＋ＴＣＲＣ        （３）
上記式３の演算処理により、ＣＲＣ演算時間１５を約１／２に短縮することができる（入力フレーム長１４に対して、書き換え有りの領域Ｂが十分小さい場合。）。
【００３１】
また、書き換え領域Ｂを増やすことにより、フレーム長情報１９以外の情報も書き換えることができる。例えば領域Ｂをｍクロック分とすると、この場合のＣＲＣ演算結果時間を以下の式４に示す。
（数４）
Ｔ×ｎ＋Ｔ×（ｍ＋１）＋ＴＣＲＣ        （４）
上記式４の演算処理により、ＣＲＣ演算結果時間を低減することができる（（式２）及び（式４）の（ｍ＋１）がｎより小さい場合。）。なお、１０ＧのＰＯＮシステムにおけるｎは、約６４〜２０００である。
【産業上の利用可能性】
【００３２】
本発明は情報通信産業に適用することができる。
【符号の説明】
【００３３】
１１：クロック
１２：有効領域信号
１３：入力フレームデータ
１４：入力フレーム長
１５：ＣＲＣ演算時間
１６：読み出し要求信号
１７：リードイネーブル信号
１８：リードデータ
１９：フレーム長情報
２１：書き換え後フレームデータ
３１：フレームデータ処理装置
３２、４２：フレームデータ分離回路
３３：フレーム長情報取得回路
３４、４３：第一のＣＲＣ演算回路
３５：フレーム長情報割当て回路
３６、４４：第二のＣＲＣ演算回路
３７：第三のＣＲＣ演算・付与回路
４０：メモリ
４１：フレームデータ受信装置
４５：第三のＣＲＣ演算・チェック回路
【図１】
0005855165.tif 000002
【図２】
0005855165.tif 000003
【図３】
0005855165.tif 000004
【図４】
0005855165.tif 000005
【図５】
0005855165.tif 000006
【図６】
0005855165.tif 000007
【図７】
0005855165.tif 000008