説明

受信装置

【課題】特定パターンの連続検出を効率良く行い、かつ連続検出回数を正しく判断することができる受信装置を提供する。
【解決手段】受信装置は、Mビット長の特定パターンを含むシリアルデータをNビット(N<M)幅のパラレルデータに変換するシリアルパラレル変換回路と、所定のビット幅のパラレルデータを格納するレジスタ群と、所定のビット幅のパラレルデータのうちの連続するMビットの複数の格納パターンのそれぞれと特定パターンとを比較する比較回路と、比較回路が、パラレルクロックの第1の周期内に、Nビットの範囲の先頭からKビット目(K=0〜N−1)を先頭とする格納パターンと特定パターンとの一致を検出し、さらに、M/Nの商をQ、余りをRとして、Nビットの範囲およびK、N、Q、Rによって決まる特定の周期内に、特定のビットを先頭とする格納パターンと特定パターンとの一致を検出して、特定パターンを含むシリアルデータの受信を検出する検出回路とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、既知のビットパターン(特定パターン)を、複数のブロック、連続して含むシリアルデータ(シリアルパターン)を受信し、所定ブロック数、連続して特定パターンを含むシリアルデータが受信されたことを検出する受信装置に関するものである。
【背景技術】
【0002】
高速シリアル通信技術で採用されている多くの通信プロトコル(規約)が特定パターンの検出処理を前提としている。最も一般的なシリアルパターンの構成は、図15に示すように、プリアンブル(Preamble)+スタートデリミタ(StartDelimiter)+ペイロード(Payload)+エンドオブバースト(EOB)(もしくは、エンドデリミタ(EndDelimiter))となっており、データ格納領域であるペイロード以外はそれぞれの通信プロトコルにおいて特定ビット数の特定パターンとして規定されている。
【0003】
本発明に関連性のある先行技術文献には、特許文献1〜3がある。
【0004】
特許文献1には、直列データをnビットの並列データに変換し、nビットの並列データを受け取ってn+m−1ビット(mは特定パターンのビット長)の並列データをレジスタに記憶し、N個のMビット比較器により、レジスタに記憶されたn+m−1ビットのデータの開始ビットを1ビットずつずらして、N通りの連続するmビットのデータのそれぞれと、mビットの特定パターンとの一致検出を並列に行うことが記載されている。
【0005】
特許文献2および3には、並列データと特定パターンとをビット毎に比較し、伝送線路の影響により、両者の間でビットの値が一致しないビット誤りが含まれていても、その数が規定数以下であれば特定パターンに一致すると判定することが記載されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開平7−202865号公報
【特許文献2】特開2005−260500号公報
【特許文献3】特開平8−65294号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
10G−EPON向け標準規格IEEE802.3avで規定されるようなプリアンブルやエンドオブバーストは、66ビットの特定パターンを1ブロックとして、連続する複数のブロックで構成される。また、エンドオブバーストでは、許容されるビット誤り数は連続する2ブロック内に含まれる数として規定されているが、そのビット誤り数を判定するための判定ウィンドウは1ブロックごとにシフトする。連続する複数ブロックに特定パターンを設けることによって、特定パターンの検出を確実に行うことが可能である。また、特定パターンを複数回連続して検出したことを条件としてシリアルデータの受信を検出することにより、ノイズ等による特定パターンの誤検出が発生した場合にも、シリアルデータの受信を誤って検出することを防止できる。
【0008】
これに対し、特許文献1では、このような連続する複数ブロックに特定パターンを設けたシリアルデータの受信は想定されていない。それぞれのブロック内での特定パターンの検出処理は行われるとしても、連続する複数ブロックにおける検出結果に基づいて、誤りなくシリアルデータの受信を検出する技術は開示されていない。
【0009】
また、特定パターンの連続するブロックの規定回数分に含まれるビット誤り数の計算において、特許文献2および3では特定パターン1回分の計算は可能であるが、特定パターンの連続する規定回数分を計算するための手段が設けられていない。そのため、特許文献2および3の手法においても、ビット誤り数の連続検出回数を正しく判断することができないという問題がある。
【0010】
本発明の目的は、特定パターンの連続検出を効率よく行い、かつ連続検出回数を正しく判断することができる受信装置を提供することにある。
また、本発明の他の目的は、さらに、ビット誤り数の連続検出回数を正しく判断することができる受信装置を提供することにある。
【課題を解決するための手段】
【0011】
上記目的を達成するために、本発明は、Mビット長の既知のビットパターンを有する検出対象部分を、複数、連続して含むシリアルデータを受信する受信装置であって、
受信したシリアルデータを構成する各ビットのデータを、受信した順に並べてNビット(N<M)幅のパラレルデータを生成するシリアルパラレル変換回路と、
前記Nビット幅のパラレルデータの1ワードが格納される第1のレジスタ、および、該第1のレジスタに格納されたパラレルデータが、順次、パラレルクロックに同期してシフトされて格納される1つもしくは複数の第2のレジスタとからなるレジスタ群と、
前記レジスタ群に格納されたパラレルデータを構成するビットの、前記シリアルデータとして受信した順に連続する、Mビットの複数の格納パターンのそれぞれと、前記既知のビットパターンとを、比較する比較回路と、
前記比較回路が、前記パラレルクロックの第1の周期内に、前記レジスタ群に格納されたパラレルデータを構成するビットの前記シリアルデータとして受信した順に連続する特定のNビットの範囲の先頭からKビット目(K=0〜N−1)を先頭とするMビットの格納パターンと、前記既知のビットパターンとの一致を検出し、さらに、M/Nの商をQ、余りをRとして、前記パラレルクロックのK、N、Q、Rによって決まる特定の周期内に、前記レジスタ群に格納されたパラレルデータを構成するビットの前記特定のNビットの範囲およびK、N、Rによって決まる特定のビットを先頭とするMビットの格納パターンと、前記既知のビットパターンとの一致を検出したことを条件として、前記シリアルデータの受信を検出する検出回路とを備えることを特徴とする受信装置を提供するものである。
【0012】
ここで、(1A)K<N−Rである場合には、前記特定の周期が前記パラレルクロックの第1の周期からQ周期後の周期であり、前記特定のビットが前記特定のNビットの範囲の先頭からK+Rビット目のビットであり、
(2A)N−R≦Kである場合には、前記特定の周期が前記パラレルクロックの第1の周期からQ+1周期後の周期であり、前記特定のビットが前記特定のNビットの範囲の先頭からK+R−Nビット目のビットであることが好ましい。
【0013】
また、前記比較回路が、前記レジスタ群に格納されたパラレルデータを構成するビットの前記特定のNビットの範囲のそれぞれのビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行うN個の比較器を備え、
前記特定の周期内に、
(1A)K<N−Rである場合には、前記N個の比較器のうちの、前記特定のNビットの範囲の先頭からK+Rビット目のビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行う比較器が、
(2A)N−R≦Kである場合には、前記N個の比較器のうちの、前記特定のNビットの範囲の先頭からK+R−Nビット目のビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行う比較器が、
一致を検出したことを条件として、前記検出回路が前記シリアルデータの受信を検出することが好ましい。
【0014】
また、前記特定の周期が前記パラレルクロックの第1の周期からQ周期後の周期であり、前記特定のビットが、
(1A)K<N−Rである場合には、前記特定のNビットの範囲の先頭からK+Rビット目のビットであり、
(2B)N−R≦Kである場合には、前記特定のNビットの範囲の直後のRビットの範囲の先頭からK+R−Nビット目のビットであるか、
もしくは、
前記特定の周期が前記パラレルクロックの第1の周期からQ+1周期後の周期であり、前記特定のビットが、
(1B)K<N−Rである場合には、前記特定のNビットの範囲の直前のN−Rビットの範囲の先頭からKビット目のビットであり、
(2A)N−R≦Kである場合には、前記特定のNビットの範囲の先頭からK+R−Nビット目のビットであることが好ましい。
【0015】
また、前記比較回路が、
前記レジスタ群に格納されたパラレルデータを構成するビットの前記特定のNビットの範囲のそれぞれのビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行うN個の第1の比較器を備えるとともに、
前記レジスタ群に格納されたパラレルデータを構成するビットの前記特定のNビットの範囲の直後のRビットの範囲のそれぞれのビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行うR個の第2の比較器と、前記レジスタ群に格納されたパラレルデータを構成するビットの前記特定のNビットの範囲の直前のN−Rビットの範囲のそれぞれのビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行うN−R個の第3の比較器と、の少なくとも一方を備え、
前記検出回路が、
前記特定の周期を前記第1の周期からQ周期後の周期とし、該特定の周期内に、
(1A)K<N−Rである場合には、前記第1の比較器のうちの、前記特定のNビットの範囲の先頭からK+Rビット目のビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行う比較器が、
(2B)N−R≦Kである場合には、前記第2の比較器のうちの、前記特定のNビットの範囲の直後のRビットの範囲の先頭からK+R−Nビット目のビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行う比較器が、
一致を検出したときに前記シリアルデータの受信を検出する、
もしくは、
前記特定の周期を前記第1の周期からQ+1周期後の周期とし、該特定の周期内に、
(1B)K<N−Rである場合には、前記第3の比較器のうちの、前記特定のNビットの範囲の直前のN−Rビットの範囲の先頭からKビット目のビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行う比較器が、
(2A)N−R≦Kである場合には、前記第1の比較器のうちの、前記特定のNビットの範囲の先頭からK+R−Nビット目のビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行う比較器が、
一致を検出したことを条件として前記シリアルデータの受信を検出することが好ましい。
【0016】
また、前記比較回路が、前記特定の周期内に、前記特定のビットを先頭とするMビットの格納パターンのみと前記既知のビットパターンとの比較を行うことが好ましい。
【0017】
また、前記比較回路が、前記第1の周期と前記特定の周期との間の前記パラレルクロックの周期内の比較動作を停止することが好ましい。
【0018】
また、前記比較回路が、前記Mビットの複数の格納パターンのそれぞれと前記既知のビットパターンとの比較を行い、一致を検出しなかったビットの個数を格納する第1の不一致ビット数レジスタを備えるとともに、前記第1の不一致ビット数レジスタに格納された個数がシフトされて格納される少なくとも1段の第2の不一致ビット数レジスタを備えることが好ましい。
【0019】
また、前記比較回路が、前記第1の不一致ビット数レジスタに格納された、前記特定の周期内での前記特定のビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較によって一致を検出しなかったビットの個数と、前記第2の不一致ビット数レジスタに格納された、前記第1の周期内での前記Kビット目を先頭とするMビットの格納パターンと前記既知のビットパターンとの比較によって一致を検出しなかったビットの個数との和が、許容数未満であったときに、前記第1の周期内での前記Kビット目を先頭とするMビットの格納パターンと前記既知のビットパターンとの一致、および、前記特定の周期内での前記特定のビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの一致を検出することが好ましい。
【0020】
また、前記比較回路が、前記レジスタ群に格納されたパラレルデータを構成するビットの前記特定のNビットの範囲のそれぞれのビットを先頭とするMビットの格納パターンのうちの複数の格納パターンと前記既知のビットパターンとの一致を検出したときに、前記検出回路が、該一致を検出した複数の格納パターンのなかから、所定の基準に基づいて選択した格納パターンの先頭ビットに基づいて、前記特定の周期および特定のビットを決定することが好ましい。
【0021】
また、前記比較回路が、前記複数の格納パターンごとの比較結果を出力するものであり、
前記検出回路が、前記比較結果から、前記特定のビットを先頭とする格納パターンについての比較結果を選択する選択回路を備え、該選択した比較結果に基づいて、前記比較回路が前記特定のビットを先頭とする格納パターンと前記既知のビットパターンとの一致を検出したと判断することが好ましい。
【0022】
前記検出回路が、さらに、マスク回路を備え、該マスク回路によって、前記第1の周期と前記特定の周期との間の前記パラレルクロックの周期内の前記特定のビットを先頭とする格納パターンと前記既知のビットパターンとの一致を表す比較結果がマスクされた、前記選択した比較結果に基づいて、前記比較回路が前記特定のビットを先頭とする格納パターンと前記既知のビットパターンとの一致を検出したと判断することが好ましい。
【発明の効果】
【0023】
本発明によれば、最初に既知のビットパターンとの一致が検出されたとき以降は既知のビットパターンの一致条件を、既知のビットパターンのビット数に基づいて1通りに予測し、その限定された条件下で一致判定を行うので、既知のビットパターンの連続検出回数を正しく判定することができる。
【0024】
また、既知のビットパターンの連続するブロックの規定回数分に含まれるビット誤り数の計算において、ビット誤り数結果を保持するレジスタを用意し、それを必要クロックサイクル分だけ保持しておくので、既知のビットパターンの複数ブロックに対するビット誤り数の計算は、常に該当するレジスタの和として実現できる。その結果、ビット誤り数の連続検出回数を正しく判断できる。
【図面の簡単な説明】
【0025】
【図1】本発明の受信装置の構成を表す一実施形態のブロック図である。
【図2】シリアルパラレル変換回路の構成を表す一例の回路図である。
【図3】受信パターン格納レジスタの構成を表す一例の回路図である。
【図4】受信パターン格納レジスタに格納されたパラレルデータの格納状態を表す一例の概念図である。
【図5】偶数番目の格納パターンの格納状態を表す一例の概念図である。
【図6】奇数番目の格納パターンの格納状態を表す一例の概念図である。
【図7】パターン比較回路の構成を表す一例の概念図である。
【図8】パターン比較回路の構成を表す一例のブロック図である。
【図9】第1の加算回路の構成を表す一例の回路図である。
【図10】第2の加算回路の構成を表す一例の回路図である。
【図11】(A),(B)および(C)は、パターン比較結果選択回路の構成を表す一例の回路図である。
【図12】パターン比較結果選択回路の動作を表す一例のステートダイアグラムである。
【図13】格納パターンと特定パターンとの一致検出動作を表す一例のタイミング図である。
【図14】格納パターンと特定パターンとの一致検索動作を表す一例のタイミング図である。
【図15】シリアルパターンの構成を表す一例の概念図である。
【発明を実施するための形態】
【0026】
以下に、添付の図面に示す好適実施形態に基づいて、本発明の受信装置を詳細に説明する。
【0027】
図1は、本発明の受信装置の構成を表す一実施形態のブロック図である。同図に示す受信装置10は、Mビット長の既知のビットパターン(特定パターン)を有する検出対象部分を、複数のブロック、連続して含むシリアルデータを受信し、所定ブロック数、連続して特定パターンを含むシリアルデータが受信されたことを検出するものであって、シリアルパラレル変換回路12と、受信パターン格納レジスタ14と、パターン比較回路16と、パターン検出回路18とによって構成されている。
【0028】
シリアルデータは、前述の通り、図15に示すように、プリアンブル+スタートデリミタ+ペイロード+エンドオブバーストの順序で受信装置10に入力される。プリアンブルが、前述のMビット長の特定パターンであり、複数のブロックが連続して入力される。
【0029】
シリアルパラレル変換回路12は、連続して受信したシリアルデータを構成する各ビットのデータを、シリアルクロックに同期して、受信した順に並べてNビット(N<M)幅のパラレルデータを生成する。なお、シリアルパラレル変換回路12は、シリアルデータを構成する各ビットのデータを、シリアルパラレル変換回路12を構成するレジスタの最上位ビット側から最下位ビット側に向かって並べてパラレルデータを生成してもよいし、その逆向きに並べてパラレルデータを生成してもよい。
【0030】
受信パターン格納レジスタ14は、シリアルパラレル変換回路12から入力されたNビット幅のパラレルデータを、パラレルクロックに同期して、入力された順に並べて順次シフトして、常に、例えば、最新(最後)の(N+M−1)ビット幅のパラレルデータを格納する領域をもつ。なお、(N+M−1)ビット幅以上のデータの格納領域を用意してもよい。受信パターン格納レジスタ14からは、受信パターン格納レジスタ14に格納されたパラレルデータを構成するビットの、シリアルデータとして受信した順に連続するNビットの範囲のそれぞれのビットを先頭とするMビットの部分(N通りの格納パターン)が出力される。受信パターン格納レジスタ14は、シリアルパラレル変換回路12が生成したNビット幅のパラレルデータが格納される第1のレジスタ、および、第1のレジスタに格納されたパラレルデータが、順次、パラレルクロックに同期してシフトされて格納される1つもしくは複数の第2のレジスタを備えるパイプライン構造のレジスタ群で構成される。
【0031】
パターン比較回路16は、N個の比較器を備え、前述のN通りの、Mビットの格納パターンのそれぞれと、あらかじめ設定されたMビット長の特定パターンとを、各々対応するビット毎に比較し、その比較結果となるN個のパターン一致フラグを出力する。また、パターン比較回路16は、ビット誤り数(格納パターンと特定パターンとの間で一致しないビットの数)と、あらかじめ設定されたビット誤り許容数との大小関係を比較して、ビット誤り数がビット誤り許容数よりも小さい場合には、特定パターンとの一致が検出されたと見なすビット誤り耐性調整機能を備えている。
【0032】
パターン検出回路18は、パターン比較回路16が、パラレルクロックの第1の周期内に、受信パターン格納レジスタ14に格納されたパラレルデータを構成するビットの、連続するNビットの範囲の先頭からKビット目(K=0〜N−1)を先頭とするMビットの格納パターンと、Mビット長の特定パターンとの一致を検出し、さらに、M/Nの商をQ、余りをRとして、パラレルクロックのK、N、Q、Rによって決まる特定の周期内に、受信パターン格納レジスタ14に格納されたパラレルデータを構成するビットの、連続するNビットの範囲およびK、N、Rによって決まる特定のビットを先頭とするMビットの格納パターンと、Mビット長の特定パターンとの一致を検出したことを条件として、Mビット長の特定パターンを連続して複数のブロック含むシリアルデータの受信を検出する。
【0033】
以上の回路構成により受信回路10は以下のように一致検出を行う。受信装置10では、受信したシリアルデータ(シリアル受信データ)の各ビットのデータが、シリアルパラレル変換回路12により、シリアルクロックに同期して、Nビット幅のパラレルデータ(パラレル受信データ)に変換される。
【0034】
そして、パターン比較回路16により、受信パターン格納レジスタ14に格納されたパラレルデータに含まれるN通りのMビットの格納パターンのそれぞれと、Mビット長の特定パターンとが、各々対応するビット毎に比較される。この時、パターン比較回路16は、所定ブロック数、連続する格納パターン内に含まれるビット誤り数がビット誤り許容数よりも小さい場合には、両者が一致すると見なす。
【0035】
パターン検出回路18は、パターン比較回路16が、最初に、N通りの格納パターンのいずれかと特定パターンとの一致を検出した後、さらに、K、N、Q、Rによって必然的に決まる、パラレルクロックの所定の周期(サイクル)後に、所定のビットを先頭とする格納パターンと特定パターンとの一致を所定の回数検出することによって、所定ブロック数、連続した特定パターンを含むシリアルデータが受信されたことを検出する。
【0036】
以下、M=66ビット、N=32ビット、つまり、Q=2、R=2であり、ビット誤り許容数=15ビットの場合の具体例を挙げて説明を続ける。
【0037】
本具体例のシリアルパラレル変換回路12は、図2に示すように、シリアルパラレル変換回路12が生成した32ビット幅のパラレル受信データが格納されるレジスタ28によって構成されている。シリアル受信データの各ビットのデータは、シリアルパラレル変換回路12により、レジスタ28の最上位ビット側から最下位ビット側に向かってシフトされて32ビット幅のパラレル受信データ[31:0]に変換される。つまり、パラレル受信データ[0]が、シリアル受信データの先頭側のビットのデータである。
【0038】
次に、受信パターン格納レジスタ14について説明する。
【0039】
図3は、受信パターン格納レジスタの構成を表す一例の回路図である。同図に示す受信パターン格納レジスタ14は、32ビットの3つのFF(フリップフロップ)30,32,34と、1ビットの1つのFF36とを直列に接続して構成されている。
【0040】
シリアルパラレル変換回路12から入力された32ビット幅のパラレル受信データ[31:0]は、パラレルクロックに同期して、初段のFF30に保持されるとともに、前段のFF30,32,34に保持された32ビット幅のパラレルデータ[31:0]が、順次、後段のFF32,34,36にシフトされる。つまり、パラレル受信データは32ビット単位でシフトされる。そして、受信パターン格納レジスタ14からは、それぞれのFF30,32,34,36の出力信号reg32[0:31]、出力信号shift1_reg32[0:31]、出力信号shift2_reg32[0:31]、出力信号shift3_reg32_31bからなる97ビット幅のパラレルデータが出力される。出力信号shift3_reg32_31bが受信したシリアルデータの先頭側のビットのデータであり、以下、出力信号shift2_reg32[0:31]、出力信号shift1_reg32[0:31]、出力信号reg32[0:31]の順に97ビットのデータが連続する。
【0041】
なお、初段のFF(第1のレジスタ)30は必須ではなく、シリアルパラレル変換回路12を構成するレジスタ28を初段のFF30として利用してもよい。この場合、受信パターン格納レジスタ14は、シリアルパラレル変換回路12を構成するレジスタ(第1のレジスタ)28と、2段目以降のFF(第2のレジスタ)32,34,36で構成され、レジスタ28に格納されたパラレル受信データが、2段目以降のFF32,34,36に順次シフトされる。
【0042】
続いて、受信パターン格納レジスタ14への66ビット長の特定パターンの格納状態について説明する。
【0043】
図4は、受信パターン格納レジスタに格納されたパラレルデータの格納状態を表す一例の概念図である。受信パターン格納レジスタ14の、図中左端のビットがシリアルデータの先頭側のビット(出力信号shift3_reg32_31b)である。同図に示すように、受信パターン格納レジスタ14内には、比較用データとなる66ビット幅の格納パターン0〜31が、その先頭から連続する66ビットのビットを1ビットずつずらして、合計32通りの状態で格納される。ここでは、パラレルデータを構成するビットの、先頭側のビットから連続する32ビットの範囲の先頭からKビット目(K=0〜N−1)を先頭とする66ビットの格納パターン#nを、#n=31−Kと定義している。
【0044】
図4に示すように、格納パターン#nと特定パターン1との一致が検出された場合、その次に、特定パターン2との一致を検出する必要がある格納パターンは、一致が検出された格納パターン#nの最後のビットに続く次の66ビット幅の格納パターンである。前述のように、受信パターン格納レジスタ14に格納された97ビット幅のパラレルデータは、パラレルクロックに同期して32ビット単位でシフトされる。そのため、この格納パターンが受信パターン格納レジスタ14内に格納されるのは、格納パターン#nと特定パターンとの一致が検出されてから所定の周期後となる。同図の例では、特定パターン2との一致を検出する必要がある格納パターンは、格納パターン#nと特定パターン1との一致が検出されてから2周期後に受信パターン格納レジスタ14内に格納されている。
【0045】
また、図5には、偶数番目の格納パターンだけ、図6には、奇数番目の格納パターンだけを記載している。図5および図6に示す、それぞれの格納パターン#nは、受信パターン格納レジスタ14を構成する各FF30,32,34,36の出力信号reg32、shift1_reg32、shift2_reg32、shift3_reg32_31bに対応して記載されている。前述のように、出力信号shift3_reg32_31bが受信したシリアルデータの先頭側のビットのデータであり、以下、出力信号shift2_reg32[0:31]、出力信号shift1_reg32[0:31]、出力信号reg32[0:31]の順でデータが連続する。
【0046】
例えば、図5に示す、格納パターン0は、出力信号shift2_reg32[30]から、出力信号reg32[31]まで連続する66ビットで構成されている。同様に、図6に示す、格納パターン1は、66ビットの格納パターン0を、シリアルデータの先頭側に1ビットだけシフトした出力信号shift2_reg32[29]から、出力信号reg32[30]まで連続する66ビットで構成されている。
【0047】
例えば、格納パターン0と特定パターンとの一致が検出された場合、その次に、特定パターンとの一致を検出する必要がある格納パターン#nは、格納パターン0の最後のビットである出力信号reg32[31]に続いて、出力信号shift2_reg32[0]から、出力信号reg32[1]まで連続する66ビットで構成される格納パターン30となる。この格納パターン30が受信パターン格納レジスタ14内に格納されるのは、格納パターン0と特定パターンとの一致が検出されてから3周期後となる。
【0048】
続いて、格納パターン30と特定パターンとの一致が検出された場合、その次に、特定パターンとの一致を検出する必要がある格納パターン#nは、格納パターン30の最後のビットである出力信号reg32[1]のデータに続いて、出力信号shift2_reg32[2]から、出力信号reg32[3]まで連続する66ビットのデータで構成される格納パターン28となる。そして、この格納パターン28が受信パターン格納レジスタ14内に格納されるのは、格納パターン30と特定パターンとの一致が検出されてから2周期後となる。
【0049】
これ以後も同様に、格納パターン28,26,24,…と特定パターンとの一致が検出された場合、その次に、特定パターンとの一致を検出する必要がある格納パターン#n=26,24,22,…となる。また、その格納パターン#nが受信パターン格納レジスタ14内に格納されるのは、格納パターン0と特定パターンとの一致が検出された場合には3周期後となり、それ以外の格納パターン30,28,26,…と特定パターンとの一致が検出された場合には2周期後となる。
【0050】
同様に、格納パターン1と特定パターンとの一致が検出された場合、その次に、特定パターンとの一致を検出する必要がある格納パターン#nは、3周期後に受信パターン格納レジスタ14内に格納される格納パターン31となる。また、格納パターン31,29,27,…と特定パターンとの一致が検出された場合、その次に、特定パターンとの一致を検出する必要がある格納パターン#nは、2周期後に受信パターン格納レジスタ14内に格納される格納パターン29,27,25,…となる。
【0051】
つまり、本実施形態の場合、特定パターンと一致する格納パターンを#nとすると、その次に、特定パターンとの一致を検出する必要がある格納パターンは、#(n−2)となる。ただし、#(n−2)<0となる場合には、#(n−2+32)となる。また、特定パターンと一致する格納パターンが検出されてから、その次に、特定パターンとの一致を検出する必要がある格納パターンが受信パターン格納レジスタ14内に格納されるまでの周期数は、格納パターン0および1の場合には3周期後、それ以外の格納パターン2〜31の場合には2周期後となる。
【0052】
このように、特定パターンと一致する格納パターンが検出された場合に、その次に、特定パターンとの一致を検出する必要がある格納パターンの格納状態には規則性があり、連続するNビットの範囲、K、N、Rによって1通りに決定される。また、特定パターンと一致する格納パターンが検出されてから、その次に、特定パターンとの一致を検出する必要がある格納パターンが受信パターン格納レジスタ14内に格納されるまでの周期数にも規則性があり、K、N、Q、Rによって一意に決定される。
【0053】
次に、パターン比較回路16について説明する。
【0054】
図7は、パターン比較回路の構成を表す一例の概念図である。同図に示すように、パターン比較回路16には、あらかじめ設定された特定パターン[65:0]およびビット誤り許容数と、受信パターン格納レジスタ14からの32通りの格納パターン#n[65:0]とが入力される。パターン比較回路16では、32通りの格納パターン#n[65:0]のそれぞれと、特定パターン[65:0]とが、各々対応するビット毎に比較され、その比較結果であるパターン一致フラグ[n]が出力される。
【0055】
この時、連続した所定ブロック数の格納パターンに含まれるビット誤り数がビット誤り許容数=15よりも小さい場合には、連続した所定ブロック数の特定パターンと格納パターンとが一致すると見なされ、パターン一致フラグとして“1”が出力される。一方、ビット誤り数がビット誤り許容数=15以上である場合には、両者が不一致であると見なされ、パターン一致フラグとして“0”が出力される。
【0056】
続いて、図8は、パターン比較回路の構成を表す一例のブロック図である。同図に示すパターン比較回路16は、66個のEXOR(排他的論理和)回路(比較器)38を備えるパターン比較器と、第1の加算回路40と、ビット誤り格納レジスタ42と、第2の加算回路44と、比較器45とを備えている。なお、図示を省略しているが、66個のEXOR回路38を備えるパターン比較器は、各々の格納パターン#nに対応して1つずつ、合計で32個設けられている。
【0057】
それぞれの格納パターン#n[65:0]と、特定パターン[65:0]とは、EXOR回路によって、各々対応するビット毎に比較される。両者の比較結果xo[65:0]は、各々対応するビットが一致する場合に“0”、不一致の場合には“1”となる。
【0058】
第1の加算回路40は、全てのEXOR回路38から入力される合計66ビット分の比較結果を加算することによって、それぞれの格納パターン#n[65:0]と特定パターン[65:0]との間の不一致のビット数、つまり、それぞれの格納パターン#n[65:0]に含まれるビット誤り数be_t0_#31〜0を4ビット幅で算出する。そして、ビット誤り数be_t0_#31〜0が15よりも大きい場合には、ビット誤り数be_t0_#31〜0を15として出力し、15以下の場合には、実際のビット誤り数を出力する。
【0059】
第1の加算回路40は、それぞれのパターン#31〜0ごとに、図9に示すように、例えば、加算器(adder)46と、4つのOR回路48と、4ビットのFF50とによって構成される。この例では、比較結果xo[65:0]を加算器46で加算することによって、0〜15までのビット誤り数を表す4ビットの加算結果sum[3:0]と、ビット誤り許容数に基づいて、ビット誤り数が15以上であることを表す1ビットのキャリー(carry)が出力される。キャリーが“1”である場合には、OR回路48によって4ビットの加算結果sum[3:0]がオール1となって15に固定される。OR回路48の出力信号は、パラレルクロックに同期してFF50に保持され、ビット誤り数be_t0_#31〜0として出力される。
【0060】
ビット誤り格納レジスタ42は、それぞれのパターン#31〜0ごとに、第1の加算回路40からのビット誤り数be_t0_#31〜0を格納する第1の不一致ビット数レジスタと、比較を行う毎に第1の不一致ビット数レジスタに格納された個数がシフトされて格納される少なくとも1段の第2の不一致ビット数レジスタを備えている。同図に示すビット誤り格納レジスタ42は、直列に接続された4個の4ビットのFF52,54,56,58を備えている。初段のFF52が第1の不一致ビット数レジスタであり、残りのFF54,56,58が第2の不一致ビット数レジスタである。
【0061】
第1の加算回路40から入力されたビット誤り数be_t0_#31〜0は、パラレルクロックに同期して、初段のFF52に保持されるとともに、前段のFF52,54,56に保持されたビット誤り数が後段のFF54,56,58に順次シフトされる。初段のFF52の出力信号が、現在、受信パターン格納レジスタ14に格納されている格納パターンのビット誤り数be_t1_#31〜0を表し、3段目および最終段のFF56,58の出力信号が、それぞれ、2周期前および3周期前に受信パターン格納レジスタ14に格納された格納パターンのビット誤り数be_t3_#31〜0およびbe_t4_#31〜0を表す。
【0062】
第2の加算回路44は、格納パターン30および31の場合には、現在の格納パターンのビット誤り数be_t1_#nと3周期前の格納パターンのビット誤り数be_t4_#(n+2)とを加算し、それ以外の格納パターン0〜29場合には、現在の格納パターンのビット誤り数be_t1_#nと2周期前の格納パターンのビット誤り数be_t3_#(n+2)とを加算することによって、所定のブロック数に渡るビット誤り数の連続検出回数を4ビット幅で算出する。また、第2の加算回路44は、ビット誤り数がある上限を超えた場合には一律に固定した数を出力するようにもでき、実施例ではビット誤り数が15よりも大きい場合には、これを15に固定する。
【0063】
第2の加算回路44は、図10に示すように、それぞれのパターン#31〜0ごとに、例えば、マルチプレクサ60と、加算器(adder)62と、4つのOR回路64と、4ビットのFF66とによって構成される。格納パターン30および31の場合には3周期前のビット誤り数be_t4_#(n+2)、それ以外の格納パターン0〜29の場合には2周期前のビット誤り数be_t3_#(n+2)がマルチプレクサ60から出力される。そして、現在の格納パターンのビット誤り数be_t1_#nとマルチプレクサ60の出力信号とが加算器62で加算される。これ以後の動作は第1の加算回路40の場合と同じであり、FF66からは、合計のビット誤り数が出力される。
【0064】
前述とは逆に、2回目に一致が検出されたとき、格納パターン30および31の場合には、それぞれ、3周期前に格納パターン#(n+2)=0および1で最初の一致が検出されていたことになる。一方、2回目の一致が検出されたとき、格納パターン0〜29の場合には、それぞれ、2周期前に格納パターン#(n+2)=2〜31で最初の一致が検出されていたことになる。従って、上記のように、格納パターン#nに応じて場合分けすることにより、ビット誤り数の連続検出回数を正しく判断することができる。
【0065】
また、この例のように、ビット誤り許容数が15の場合には、ビット誤り数が15よりも大きい範囲で厳密に計算しても意味がない。そのため、同図の例では、ビット誤り数の計算の過程で、ビット誤り数が15よりも大きくなったらビット誤り数を15に固定している。これにより、第1および第2の加算回路40,44、ならびに、ビット誤り格納レジスタ42の回路規模を削減することができる。
【0066】
第2の加算回路44から出力されたビット誤り数は、比較器45によって、予め設定されたビット誤り許容数と比較され、それぞれのパターン#31〜0ごとに、パターン一致フラグとして出力される。前述したように、連続した所定ブロック数の格納パターンに含まれるビット誤り数がビット誤り許容数=15よりも小さい場合には、連続した所定ブロック数の特定パターンと格納パターンとが一致すると見なされ、パターン一致フラグとして“1”が出力される。一方、ビット誤り数がビット誤り許容数=15以上である場合には、両者が不一致であると見なされ、パターン一致フラグとして“0”が出力される。
【0067】
本実施形態の受信装置は、図8に示されたビット誤り格納レジスタ42および第2の加算回路44を備えることにより、2以上の複数の連続するブロックの合計のビット誤り数に対して許容ビット誤り数が定められている場合に好適に適用することができる。一方、許容ビット誤り数が個々のブロックに対して定められている場合には、ビット誤り格納レジスタ42および第2の加算回路44を省略することも可能である。この場合には、比較器45は、第1の加算回路40から出力されるそれぞれの格納パターンのビット誤り数をビット誤り許容数と比較し、パターン一致フラグを出力する。
【0068】
次に、パターン検出回路18について説明する。
【0069】
パターン検出回路18は、図1に示すように、パターン比較結果選択回路20と、パターン比較結果マスク回路22と、パターン一致回数カウンタ24と、パターン一致判定回路26とを備えている。
【0070】
ここで、最初に特定パターンとの一致が検出された場合には、32通りの格納パターンのうちの複数の格納パターンと特定パターンとの間で一致が検出され、複数のパターン一致フラグが“1”となる場合がある。
【0071】
そのため、パターン比較結果選択回路20は、パターン比較回路16が、32通りの格納パターンのうちの複数の格納パターンと特定パターンとの一致を検出したときに、一致した複数の格納パターンのなかで、所定の基準に基づいて、例えば、シリアルデータの先頭側のビットに最も近いビットを先頭とする66ビット幅の格納パターンの先頭ビットに基づいて、前述の特定の周期および特定のビットを決定する。
【0072】
つまり、パターン比較結果選択回路20は、最初に特定パターンとの一致が検出された場合に、一致が検出された1ないし複数の格納パターンのうち、シリアルデータの先頭側のビットに最も近い格納パターンのパターン一致フラグだけを選択する。また、パターン比較結果選択回路20は、次に一致を検出する必要がある格納データのパターン一致フラグだけを、次に一致を検出する必要がある周期数後に順次選択状態とする。
【0073】
図11(A),(B)および(C)は、パターン比較結果選択回路の構成を表す一例の回路図である。同図に示すパターン比較結果選択回路20は、32個のAND回路68と、マスク信号生成回路70と、3つのOR回路72とによって構成されている。
【0074】
それぞれのAND回路68には、同図(A)に示すように、32ビットのパターン一致フラグ_t2[31:0]およびマスク信号[31:0]のうちの各々対応するビットが入力され、AND回路68からは、各々対応するビットのパターン一致条件[31:0]が出力される。パターン一致フラグ_t2は、後述するように、マスク信号[31:0]とタイミング同期されたパターン一致フラグ[31:0]である。マスク信号[31:0]のうちの1つのマスク信号が“1”になると、それぞれのAND回路68によって、対応するその値が“1”のパターン一致フラグ_t2[n]が選択されて、対応するパターン一致条件[n]だけが“1”となり、その他の全てのパターン一致条件は“0”となる。
【0075】
マスク信号生成回路70は、パターン一致フラグ[31:0]からマスク信号[31:0]を生成する。なお、同図には、パターン一致フラグ[31:0]からパターン一致フラグ_t2[31:0]を生成する回路も記載されている。マスク信号生成回路70は、同図(B)に示すように、2個の直列に接続された32ビットのFF74,76と、ワンホット(One Hot)信号生成回路78と、マルチプレクサ80と、32ビットのFF82と、ローテート回路84とによって構成されている。
【0076】
直列に接続された2個のFF74,76は、パターン比較回路16から出力されたパターン一致フラグ[31:0]を、マスク信号[31:0]を生成するために必要な2周期分だけ遅延させる。それぞれのFF74,76からは、パターン一致フラグ[31:0]を1周期分、および、2周期分だけ遅延させたパターン一致フラグ_t1[31:0]およびパターン一致フラグ_t2[31:0]が出力される。これにより、パターン一致フラグ[31:0]とマスク信号[31:0]との間のタイミングが同期される。
【0077】
ワンホット信号生成回路78は、パラレルクロックに同期して、パターン一致フラグ[31:0]のうち、その値が“1”であって、かつ、シリアルデータの先頭側のビットに最も近い格納状態の格納パターン#nのパターン一致フラグ[n]だけ、つまり、本実施形態の場合には、格納パターン#nが最大のもののパターン一致フラグ[n]だけを“1”、それ以外のものを“0”とし、元マスク信号[31:0]として出力する。
【0078】
つまり、ワンホット信号生成回路78は、パターン一致フラグ[31]が“1”の場合には元マスク信号[31]だけを“1”とし、他の元マスク信号[30:0]を全て“0”にする。パターン一致フラグ[31:n+1]が全て“0”で、かつ、パターン一致フラグ[n]が“1”の場合には、元マスク信号[n]だけを“1”とし、それ以外の全ての元マスク信号を“0”にする。パターン一致フラグ[31:0]がオール“0”の場合には、全ての元マスク信号[31:0]を“0”にする。
【0079】
ローテート回路84は、マスク信号[31:0]を下位ビット側に2ビットだけローテートする。つまり、マスク信号[31:0]=マスク信号[1:0,31:2]となるようにローテートする。
【0080】
マルチプレクサ80は、選択信号SELが、“0”、“1”、“2”の場合に、それぞれ、ワンホット信号生成回路からの元マスク信号[31:0]、FFの出力信号(マスク信号[31:0])、ローテート回路84の出力信号(マスク信号[31:0]が下位ビット側に2ビットだけローテートされた信号)を出力する。マルチプレクサ80の出力信号は、パラレルクロックに同期して、FF82に保持され、マスク信号[31:0]として出力される。つまり、マスク信号[31:0]として、選択信号が“0”の場合には元マスク信号[31:0]が出力され、“1”の場合にはマスク信号[31:0]がそのまま保持され、”2”の場合には、下位ビット側に2ビットだけローテートされたマスク信号[31:0]が出力される。
【0081】
同図(C)に示す、上側のOR回路72は、パターン一致条件[1:0]の論理和、同中央のOR回路72は、パターン一致条件[31:2]の論理和、同下側のOR回路72は、全てのパターン一致条件[31:0]の論理和をとって、それぞれ、パターン一致信号0_1、パターン一致信号2_31、パターン一致信号として出力する。つまり、パターン一致信号0_1はパターン一致条件[1:0]のいずれか、パターン一致信号2_31はパターン一致条件[31:2]のいずれか、パターン一致信号はパターン一致条件[31:0]のいずれかが“1”のときに“1”となる。
【0082】
図12のステートダイアグラムに示すように、まず、初期化ステート(Init)において、マスク信号生成回路70のFF82がリセットされ、全てのマスク信号[31:0]が“0”に初期化される。また、選択信号SEL=“0”とされる。これにより、全てのパターン一致条件[31:0]が“0”となり、その結果、パターン一致信号0_1、パターン一致信号2_31、パターン一致信号も“0”となる。
【0083】
続いて、最初に特定パターンとの一致が検出された場合(元マスク信号[31:0]≠“0”)に、マスク信号のロードステート(Load)において、ワンホット信号生成回路78により、パラレルクロックに同期して、その値が“1”であって、かつ、シリアルデータの先頭のビットに最も近い格納状態の格納パターン#nのパターン一致フラグ[n]に対応する元マスク信号[n]だけが“1”とされる。また、選択信号SEL=“0”であるから、ワンホット信号生成回路78からの元マスク信号[31:0]がマルチプレクサ80から出力され、パラレルクロックに同期して、FF82に保持され、マスク信号[31:0]として出力される。その後、選択信号SEL=“1”とされ、マスク信号[31:0]がそのままFF82に保持される。
【0084】
マスク信号[31:0]が更新されると、AND回路68により、マスク信号[n]およびパターン一致フラグ[n]の両方が“1”のAND回路68から出力されたパターン一致条件[n]だけが“1”となる。つまり、その値が“1”であって、かつ、シリアルデータの先頭のビットに最も近い格納状態の格納パターン#nのパターン一致フラグ[n]に対応するパターン一致条件[n]だけが“1”となる。そして、OR回路72により、パターン一致条件[31:0]に応じて、パターン一致信号0_1、パターン一致信号2_31、パターン一致信号が更新される。
【0085】
続いて、パターン一致信号のチェックステート(Check)において、パターン一致信号2_31=“1”の場合、つまり、最初に特定パターンとの一致が検出された場合に、パターン一致フラグ[31:2]のいずれかで一致が検出された場合には、選択信号SEL=”2”とされる。この場合、次に特定パターンとの一致を検出する必要があるのは2周期後である。
【0086】
パターン一致信号2_31=“1”の場合、2周期後に、2回目の特定パターンとの一致が検出された場合(元マスク信号[31:0]≠“0”)には、マスク信号の更新ステート(Update)において、ローテート回路84の出力信号がマルチプレクサ80から出力され、下位ビット側に2ビットシフトされたマスク信号[31:0]が、パラレルクロックに同期して、FF82に保持される。すなわち、最初に格納パターン#nと特定パターンとの間の一致が検出された場合、マスク信号[31:0]を、次に一致が検出されるべき格納パターンに対応するマスク信号#n−2だけが“1”となったものに更新する。従って、格納パターン#n−2との一致が検出され、対応するパターン一致フラグ_t2#n−2が“1”になった場合のみ、対応するパターン一致条件が“1”になる。そして、OR回路72により、パターン一致信号が“1”にセットされる。
また、このようにマスク信号を更新することにより、次に一致が検出されるべき格納パターン以外の格納パターンとの一致が検出された場合にマスクすることができる。すなわち、次に一致が検出されるべき格納パターン以外の格納パターンとの一致が誤って検出され、対応するパターン一致フラグ_t2が“1”になった場合にも、次に一致が検出されるべき格納パターン以外の総ての格納パターンに対応するマスク信号が“0”であるため、いずれのパターン一致条件[31:0]も“1”にはならない。従って、パターン一致信号は“0”の状態を保つ。その後、選択信号SEL=“1”とされ、マスク信号[31:0]がそのまま保持される。そして、チェックステートに戻り、上記動作が繰り返される。
【0087】
一方、2周期後に、特定パターンとの一致が検出されなかった場合(元マスク信号[31:0]=“0”)には、初期化ステートに戻り、上記動作が繰り返される。
【0088】
また、パターン一致信号のチェックステート(Check)において、パターン一致信号0_1=“1”の場合、つまり、最初に特定パターンとの一致が検出された場合に、パターン一致フラグ[1:0]のいずれかで一致が検出された場合には、選択信号SEL=“1”とされる。この場合、次に特定パターンとの一致を検出する必要があるのは3周期後である。
【0089】
パターン一致信号0_1=“1”の場合、周期の経過ステート(Nop)において1周期が経過した後の、3周期後に、2回目の特定パターンとの一致が検出された場合(元マスク信号[31:0]≠“0”)には、マスク信号の更新ステート(Update)に進み、上記動作が繰り返される。
【0090】
一方、3周期後に、特定パターンとの一致が検出されなかった場合(元マスク信号[31:0]=“0”)には、初期化ステートに戻り、上記動作が繰り返される。
【0091】
次に、パターン比較結果マスク回路22は、特定パターンとの一致が検出された場合に、次に特定パターンとの一致を検出する必要があるまでの所定の周期の間、パターン一致信号をマスクする。例えば、パターン比較結果マスク回路22は、パターン比較結果選択回路20からパターン一致信号を受信し、マスク済みパターン一致信号を生成し、マスク済みパターン一致信号が連続して“1”となる回数をカウントするパターン一致回数カウンタ24に出力する。パターン比較結果マスク回路22は、パターン比較結果選択回路20から受信したパターン一致信号を、所定の周期の間は、マスクする。すなわち、“1”のパターン一致信号を受信した場合にも、“0”のマスク済みパターン一致信号を出力する。本実施形態の場合、パターン比較結果マスク回路22は、パターン一致信号0_1=“1”の場合にはパターン一致信号を2周期マスクし、パターン一致信号2_31=“1”の場合にはパターン一致信号を1周期マスクする。これにより、パターン一致回数カウンタ24には、最初の一致に対応する“1”のパターン一致信号が供給された後、次の一致が検出されるべき周期において特定パターンとの一致が検出された場合のみ、“1”のパターン一致信号が供給される。
このように、最初の一致の検出の後、次の一致が検出されるべき周期より前に、パターン比較結果選択回路20がパターン一致信号を“1”に設定したとしても、パターン比較結果マスク回路22が、誤って設定されたパターン一致信号をマスクする。これに加えて、前述のように、次に一致が検出されるべき格納パターン以外の格納パターンとの一致が誤って検出された場合には、パターン比較結果選択回路20がマスクする。従って、最初の一致に対応する“1”のパターン一致信号がパターン一致回数カウンタ24に供給された後、続いて“1”のパターン一致信号が供給されるのは、次に一致が検出されるべき格納パターンとの一致が、次に一致が検出されるべき特定の周期において検出された場合のみである。
【0092】
前述のように、パターン一致回数カウンタ24は、パターン一致信号が連続して“1”となった回数をカウントすることによって、連続して特定パターンとの一致が検出されたブロック数をカウントする。本実施形態の場合、パターン一致回数カウンタ24は、例えば、マスク済みのパターン一致信号が“1”になるとパターン一致カウンタ数を1インクリメントし、次に一致が検出されるべき周期での検出結果を示すパターン一致信号が“0”になるとパターン一致カウンタ数を0にリセットする。
【0093】
最後に、パターン一致判定回路26は、パターン一致回数カウンタ24によりカウントされたパターン一致カウンタ数が、あらかじめ設定されたパターン一致回数に一致する規定回数に到達したとき、受信したシリアルデータの中に特定パターンと一致するビットパターンが規定のブロック数だけ検出されたと見なす。
【0094】
これにより、受信装置10では、Mビット長の特定パターンを1ブロックとして、所定ブロック数、連続した特定パターンを含むシリアルデータが受信されたことを検出することができる。特に、所定ブロック数に渡るビット誤り数を考慮しつつ、シリアルデータが受信されたことを検出することができる。
【0095】
また、受信装置10では、最初に特定パターンとの一致が検出されたときに、2回目以降は、特定パターンの一致条件を1通りに限定し、その限定された条件でのみ一致判定を行う。その結果、特定パターンの連続検出回数を正しく判定することができる。例えば、連続する検出の間の周期が変化した場合にも正しく判定できる。また、ノイズによる特定パターンの誤検出とシリアルデータ受信による正しい特定パターンの検出とが近接して発生したときに、2回分の連続検出が起きたと誤って判定することを防止できる。
【0096】
また、特定パターンの連続するブロックの規定回数分に含まれるビット誤り数の計算において、ビット誤り数結果を保持するレジスタを用意し、それを必要クロックサイクル分だけ保持しておくので、特定パターンの複数ブロックに対するビット誤り数の計算は、常に該当するレジスタの和として実現できる。その結果、ビット誤り数の連続検出回数を正しく判断できる。また保持するレジスタのシリアル接続の数を増加させるだけで、ブロックの規定回数を増やすことができ、ビット誤り数の連続検出機能を容易に拡張することができる。
【0097】
なお、MおよびN、受信パターン格納レジスタ14のビット幅、連続するNビットの範囲、ビット誤り許容数、ならびに、パターン一致回数などは特に限定されない。
【0098】
本発明の受信装置は、プリアンブルに限らず、エンドオブバーストなどのように、あらかじめ設定された所定ビット長の特定パターンを、複数のブロック、連続して含むシリアルデータから、所定ブロック数、連続して特定パターンを検出することができる。
【0099】
特定パターンと一致する格納パターンが検出されてから、その次に、特定パターンと一致する格納パターンを検出するために、上記実施形態のように、パターン比較回路16が、全ての格納パターンと特定パターンとの比較を行い、パターン検出回路18(パターン比較結果選択回路)が、複数のパターン一致フラグの中から1つのパターン一致フラグだけを選択してもよい。上記実施形態では、パターン比較結果選択回路20が、次に一致が検出されるべき格納パターン以外の格納パターンとの一致を表すパターン一致フラグをマスクし、特定パターンとの一致が検出された場合のみにパターン一致信号を生成する。さらに、次に一致が検出されるべき特定の周期以外の周期において特定パターンとの一致が検出され、パターン比較結果選択回路20がパターン一致信号を生成した場合には、パターン比較結果マスク回路22が、誤って生成されたパターン一致信号をマスクする。これにより、パターン比較結果マスク回路22は、誤って生成された、次に一致が検出されるべき特定の周期以外の周期での一致を表すパターン一致フラグをマスクする。このため、本願の受信装置では、連続する一致を正確に検出することができる。
あるいは、パターン比較回路16が、前述の特定の周期内に、特定のビットを先頭とするMビットの格納パターンのみと特定パターンとの比較を行って、ある1つのパターン一致フラグだけに“1”を出力してもよい。
【0100】
また、特定パターンと一致する格納パターンが検出されてから、その次に、特定パターンと一致する格納パターンを検出する場合、前述の第1の周期から特定の周期までの間の周期において、格納パターンと特定パターンとの一致を検出しても、その比較結果であるパターン一致フラグは使用されない。そのため、パターン比較回路16が、前述の第1の周期と特定の周期との間のパラレルクロックの周期内の比較動作を停止するようにしてもよい。これにより、消費電力を低減することができる。
【0101】
上記実施形態では、特定パターンと一致する格納パターンが検出されてから、その次に、特定パターンとの一致を検出する必要がある格納パターンが受信パターン格納レジスタ14内に格納されるまでの周期数が、2周期後の場合と、3周期後の場合がある。しかし、これに限定されず、MおよびNの関係を調整することによって、例えば、全てのパターン格納状態において2周期後とすることもできる。
【0102】
また、上記実施形態の受信装置10の場合には、特定パターンと一致する格納パターンが検出されてから、その次に、特定パターンとの一致を検出する必要がある格納パターンが受信パターン格納レジスタ14内に格納されるまでの周期数に応じて、2周期後もしくは3周期後に、次の格納パターンと特定パターンとの一致を検出しているが、これも限定されない。
【0103】
図13に、上記実施形態のように、M=66,N=32,Q=2,R=2の場合について、1回目および2回目の比較を行う時の66ビット長の特定パターンの格納状態の一例を概念的に示す。DATA1〜DATA4は受信パターン格納レジスタ14であり、ここでは、4個の32ビットFFで構成したことを想定する。図4と同様に、図中左側のビットがシリアルデータの先頭側のビットである。そして、左端のビットから連続するNビット(32ビット)の範囲の先頭からKビット目を先頭とする格納パターンを、格納パターン#n(#n=N−K−1=31−K)と定義した。1回目の比較では、図13の上側に示すように、66ビット長の特定パターンが31〜0の32通りのパターンで格納される可能性がある。このいずれかのパターンで1回目の一致が検出されたあと、その次に連続する66ビット長の特定パターンは、パラレルクロックの2周期後には、図13の下側に実線で示した位置に格納される。
【0104】
1回目に特定パターンが31〜2の30通りのパターンで格納されていた場合には、2回目の特定パターンが、それぞれ、29〜0のパターンで格納される。これらの場合には、パターン比較回路16が、1回目の一致の検出のために備える32個の比較器38のうちの、パターン29〜0を検出するための比較器を利用して、2回目の一致を検出することが可能である。このように、1回目の特定パターンが連続するNビットの範囲の先頭からKビット目を先頭とするパターンで格納され、かつ、K<N−Rである場合には、2回目の特定パターンを、Q周期後に、連続するNビットの範囲の先頭からK+Rビット目を先頭とする格納パターンを検出するための比較器を利用して検出することができる。
【0105】
しかし、1回目に1,0の2通りのパターンで格納されていた場合には、2周期後には、2回目の特定パターンが31〜0のいずれとも異なるパターン(連続するNビットの範囲の先頭から32ビット目および33ビット目を先頭とする格納パターン−1,−2)で格納される。このため、パターン比較回路16が備える32個の比較器38のいずれでも検出することができない。これらの場合には、もう1周期待って3周期後に検出を行う。すなわち、図13の下端部に破線で示したように、3周期後には2回目の特定パターンがパターン31,30で格納されるので、パターン比較回路16が備える32個の比較器38のうちの、これらの格納パターンを検出するための比較器を利用して検出することができる。このように、1回目の特定パターンが連続するNビット(32ビット)の範囲の先頭からKビット目を先頭とするパターンで格納され、N−R≦K(K=30,31)である場合には、Q+1周期後に、連続するNビットの範囲の先頭からK+R−Nビット目を先頭とする格納パターンを検出するための比較器を利用して検出することができる。
【0106】
もしくは、格納パターン−1,−2を検出する比較器を追加し、全部で34個の比較器を備えるものとしてパターン比較回路16を構成することにより、32通りの全ての場合に同一の周期(1回目の特定パターンの検出から2周期後)に、2回目の検出を行うようにすることも可能である。すなわち、1回目の特定パターンが連続するNビット(32ビット)の範囲の先頭からKビット目を先頭とするパターンで格納され、N−R≦K(K=30,31)である場合に、連続するNビットの範囲の直後のRビット(2ビット)の範囲の、先頭からK+R−Nビット目(0,1ビット目)を先頭とするパターンを検出する比較器を追加することにより、1回目の格納パターンがいずれの場合でも、同一の周期(1回目の検出からQ周期後)に、2回目の検出を行う事が可能である。比較器の追加はパターン比較回路16の回路規模の増大につながる。しかし、2回目の検出を行う周期を1つにそろえることにより、パターン検出回路18の回路規模の削減、および、パターン検出回路18の動作検証に要するコストの低減を実現できる。
【0107】
図14には、M=60,N=32,Q=1,R=28の場合について、1回目および2回目の比較を行う時の特定パターンの格納状態の一例を概念的に示す。DATA1〜DATA3は受信パターン格納レジスタ14であり、ここでは、3個の32ビットFFで構成したことを想定する。図4と同様に、図中左側のビットがシリアルデータの先頭側のビットである。そして、左端から5ビット目から連続するNビット(32ビット)の範囲の先頭からKビット目を先頭とする格納パターンを、格納パターン#n(#n=N−K−1=31−K)と定義した。1回目の比較では、図14の上側に示すように、60ビット長の特定パターンが31〜0の32通りのパターンで格納される可能性がある。このいずれかのパターンで1回目の一致が検出されたあと、その次に連続する60ビット長の特定パターンは、パラレルクロックの2周期後には、図14の下側に実線で示した位置に格納される。
【0108】
1回目に特定パターンが27〜0の28通りのパターンで格納されていた場合には、2回目の特定パターンが、それぞれ、31〜4のパターンで格納される。これらの場合には、パターン比較回路16が1回目の一致の検出のために備える32個の比較器38のうちの、パターン31〜4を検出するための比較器を利用して、2回目の一致を検出することが可能である。このように、1回目の特定パターンが連続するNビットの範囲の先頭からKビット目を先頭とするパターンで格納され、かつ、N−R≦Kである場合には、2回目の特定パターンを、Q+1周期後に、連続するNビットの範囲の先頭からK+R−Nビット目を先頭とする格納パターンを検出するための比較器を利用して検出することができる。
【0109】
しかし、1回目に31〜28の4通りのパターンで格納されていた場合には、2周期後には、2回目の特定パターンが31〜0のいずれとも異なるパターン(連続するNビットの範囲の先頭から−4〜−1ビット目を先頭とする格納パターン35〜32)で格納される。このため、パターン比較回路16が備える32個の比較器38のいずれでも検出することができない。これらの場合には、他のパターンよりも1周期早く、1回目の検出から1周期後に検出を行う。すなわち、図14の中央部に破線で示したように、1周期後には2回目の特定パターンがパターン3〜0で格納されるので、パターン比較回路16が備える32個の比較器38のうちの、これらの格納パターンを検出するための検出器を利用して検出することができる。このように、1回目の特定パターンが連続するNビット(32ビット)の範囲の先頭からKビット目を先頭とするパターンで格納され、K<N−R(K=0〜3)である場合には、Q周期後に、連続するNビットの範囲の先頭からK+Rビット目を先頭とする格納パターンを検出するための比較器を利用して検出することができる。
【0110】
もしくは、格納パターン35〜32を検出する比較器を追加し、全部で36個の比較器を備えるものとしてパターン比較回路16を構成することにより、32通りの全ての場合に同一の周期(1回目の特定パターンの検出から2周期後)に、2回目の検出を行うようにすることも可能である。すなわち、1回目の特定パターンが連続するNビット(32ビット)の範囲の先頭からKビット目を先頭とするパターンで格納され、K<N−R(K=0〜3)である場合に、連続するNビットの範囲の直前のN−Rビット(4ビット)の範囲の、先頭からKビット目(0〜3ビット目)を先頭とするパターンを検出する比較器を追加することにより、1回目の格納パターンがいずれの場合でも、同一の周期(1回目の検出からQ+1周期後)に、2回目の検出を行う事が可能である。
【0111】
比較器を追加して全ての格納パターンの2回目の一致検出を同一の周期で行う場合、上記のように、1回目の検出からQ周期後に2回目の検出を行うことも、Q+1周期後に2回目の検出を行うことも可能である。図13の例のように、R<N/2の場合には、Q周期後に2回目の検出を行う方が追加する比較器の個数を少なくできる。逆に、図14の例のようにR>N/2の場合には、Q+1周期後に2回目の検出を行う方が追加する比較器の個数を少なくできる。
【0112】
本発明は、基本的に以上のようなものである。
以上、本発明について詳細に説明したが、本発明は上記実施形態に限定されず、本発明の主旨を逸脱しない範囲において、種々の改良や変更をしてもよいのはもちろんである。
【符号の説明】
【0113】
10 受信装置
12 シリアルパラレル変換回路
14 受信パターン格納レジスタ
16 パターン比較回路
18 パターン検出回路
20 パターン比較結果選択回路
22 パターン比較結果マスク回路
24 パターン一致回数カウンタ
26 パターン一致判定回路
28 レジスタ
30,32,34,36,50,52,54,56,58,66,74,76,82 FF(フリップフロップ)
38 EXOR(排他的論理和)回路
40,44 加算回路
42 ビット誤り格納レジスタ
45 比較器
46,62 加算器
48,64,72 OR回路
60,80 マルチプレクサ
68 AND回路
70 マスク信号生成回路
78 ワンホット信号生成回路
84 ローテート回路

【特許請求の範囲】
【請求項1】
Mビット長の既知のビットパターンを有する検出対象部分を、複数、連続して含むシリアルデータを受信する受信装置であって、
受信したシリアルデータを構成する各ビットのデータを、受信した順に並べてNビット(N<M)幅のパラレルデータを生成するシリアルパラレル変換回路と、
前記Nビット幅のパラレルデータの1ワードが格納される第1のレジスタ、および、該第1のレジスタに格納されたパラレルデータが、順次、パラレルクロックに同期してシフトされて格納される1つもしくは複数の第2のレジスタとからなるレジスタ群と、
前記レジスタ群に格納されたパラレルデータを構成するビットの、前記シリアルデータとして受信した順に連続する、Mビットの複数の格納パターンのそれぞれと、前記既知のビットパターンとを、比較する比較回路と、
前記比較回路が、前記パラレルクロックの第1の周期内に、前記レジスタ群に格納されたパラレルデータを構成するビットの前記シリアルデータとして受信した順に連続する特定のNビットの範囲の先頭からKビット目(K=0〜N−1)を先頭とするMビットの格納パターンと、前記既知のビットパターンとの一致を検出し、さらに、M/Nの商をQ、余りをRとして、前記パラレルクロックのK、N、Q、Rによって決まる特定の周期内に、前記レジスタ群に格納されたパラレルデータを構成するビットの前記特定のNビットの範囲およびK、N、Rによって決まる特定のビットを先頭とするMビットの格納パターンと、前記既知のビットパターンとの一致を検出したことを条件として、前記シリアルデータの受信を検出する検出回路とを備えることを特徴とする受信装置。
【請求項2】
(1A)K<N−Rである場合には、前記特定の周期が前記パラレルクロックの第1の周期からQ周期後の周期であり、前記特定のビットが前記特定のNビットの範囲の先頭からK+Rビット目のビットであり、
(2A)N−R≦Kである場合には、前記特定の周期が前記パラレルクロックの第1の周期からQ+1周期後の周期であり、前記特定のビットが前記特定のNビットの範囲の先頭からK+R−Nビット目のビットである、
ことを特徴とする請求項1記載の受信装置。
【請求項3】
前記比較回路が、前記レジスタ群に格納されたパラレルデータを構成するビットの前記特定のNビットの範囲のそれぞれのビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行うN個の比較器を備え、
前記特定の周期内に、
(1A)K<N−Rである場合には、前記N個の比較器のうちの、前記特定のNビットの範囲の先頭からK+Rビット目のビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行う比較器が、
(2A)N−R≦Kである場合には、前記N個の比較器のうちの、前記特定のNビットの範囲の先頭からK+R−Nビット目のビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行う比較器が、
一致を検出したことを条件として、前記検出回路が前記シリアルデータの受信を検出することを特徴とする請求項2記載の受信装置。
【請求項4】
前記特定の周期が前記パラレルクロックの第1の周期からQ周期後の周期であり、前記特定のビットが、
(1A)K<N−Rである場合には、前記特定のNビットの範囲の先頭からK+Rビット目のビットであり、
(2B)N−R≦Kである場合には、前記特定のNビットの範囲の直後のRビットの範囲の先頭からK+R−Nビット目のビットであるか、
もしくは、
前記特定の周期が前記パラレルクロックの第1の周期からQ+1周期後の周期であり、前記特定のビットが、
(1B)K<N−Rである場合には、前記特定のNビットの範囲の直前のN−Rビットの範囲の先頭からKビット目のビットであり、
(2A)N−R≦Kである場合には、前記特定のNビットの範囲の先頭からK+R−Nビット目のビットである、
ことを特徴とする請求項1記載の受信装置。
【請求項5】
前記比較回路が、
前記レジスタ群に格納されたパラレルデータを構成するビットの前記特定のNビットの範囲のそれぞれのビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行うN個の第1の比較器を備えるとともに、
前記レジスタ群に格納されたパラレルデータを構成するビットの前記特定のNビットの範囲の直後のRビットの範囲のそれぞれのビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行うR個の第2の比較器と、前記レジスタ群に格納されたパラレルデータを構成するビットの前記特定のNビットの範囲の直前のN−Rビットの範囲のそれぞれのビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行うN−R個の第3の比較器と、の少なくとも一方を備え、
前記検出回路が、
前記特定の周期を前記第1の周期からQ周期後の周期とし、該特定の周期内に、
(1A)K<N−Rである場合には、前記第1の比較器のうちの、前記特定のNビットの範囲の先頭からK+Rビット目のビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行う比較器が、
(2B)N−R≦Kである場合には、前記第2の比較器のうちの、前記特定のNビットの範囲の直後のRビットの範囲の先頭からK+R−Nビット目のビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行う比較器が、
一致を検出したときに前記シリアルデータの受信を検出する、
もしくは、
前記特定の周期を前記第1の周期からQ+1周期後の周期とし、該特定の周期内に、
(1B)K<N−Rである場合には、前記第3の比較器のうちの、前記特定のNビットの範囲の直前のN−Rビットの範囲の先頭からKビット目のビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行う比較器が、
(2A)N−R≦Kである場合には、前記第1の比較器のうちの、前記特定のNビットの範囲の先頭からK+R−Nビット目のビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較を行う比較器が、
一致を検出したことを条件として前記シリアルデータの受信を検出することを特徴とする請求項4記載の受信装置。
【請求項6】
前記比較回路が、前記特定の周期内に、前記特定のビットを先頭とするMビットの格納パターンのみと前記既知のビットパターンとの比較を行うことを特徴とする請求項1ないし5のいずれかに記載の受信装置。
【請求項7】
前記比較回路が、前記第1の周期と前記特定の周期との間の前記パラレルクロックの周期内の比較動作を停止することを特徴とする請求項1ないし6のいずれかに記載の受信装置。
【請求項8】
前記比較回路が、前記Mビットの複数の格納パターンのそれぞれと前記既知のビットパターンとの比較を行い、一致を検出しなかったビットの個数を格納する第1の不一致ビット数レジスタを備えるとともに、前記第1の不一致ビット数レジスタに格納された個数がシフトされて格納される少なくとも1段の第2の不一致ビット数レジスタを備えることを特徴とする請求項1ないし7のいずれかに記載の受信装置。
【請求項9】
前記比較回路が、前記第1の不一致ビット数レジスタに格納された、前記特定の周期内での前記特定のビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの比較によって一致を検出しなかったビットの個数と、前記第2の不一致ビット数レジスタに格納された、前記第1の周期内での前記Kビット目を先頭とするMビットの格納パターンと前記既知のビットパターンとの比較によって一致を検出しなかったビットの個数との和が、許容数未満であったときに、前記第1の周期内での前記Kビット目を先頭とするMビットの格納パターンと前記既知のビットパターンとの一致、および、前記特定の周期内での前記特定のビットを先頭とするMビットの格納パターンと前記既知のビットパターンとの一致を検出することを特徴とする請求項8記載の受信装置。
【請求項10】
前記比較回路が、前記レジスタ群に格納されたパラレルデータを構成するビットの前記特定のNビットの範囲のそれぞれのビットを先頭とするMビットの格納パターンのうちの複数の格納パターンと前記既知のビットパターンとの一致を検出したときに、前記検出回路が、該一致を検出した複数の格納パターンのなかから、所定の基準に基づいて選択した格納パターンの先頭ビットに基づいて、前記特定の周期および特定のビットを決定することを特徴とする請求項1ないし9のいずれかに記載の受信装置。
【請求項11】
前記比較回路が、前記複数の格納パターンごとの比較結果を出力するものであり、
前記検出回路が、前記比較結果から、前記特定のビットを先頭とする格納パターンについての比較結果を選択する選択回路を備え、該選択した比較結果に基づいて、前記比較回路が前記特定のビットを先頭とする格納パターンと前記既知のビットパターンとの一致を検出したと判断することを特徴とする請求項1ないし5のいずれかに記載の受信装置。
【請求項12】
前記検出回路が、さらに、マスク回路を備え、該マスク回路によって、前記第1の周期と前記特定の周期との間の前記パラレルクロックの周期内の前記特定のビットを先頭とする格納パターンと前記既知のビットパターンとの一致を表す比較結果がマスクされた、前記選択した比較結果に基づいて、前記比較回路が前記特定のビットを先頭とする格納パターンと前記既知のビットパターンとの一致を検出したと判断することを特徴とする請求項11記載の受信装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2013−17166(P2013−17166A)
【公開日】平成25年1月24日(2013.1.24)
【国際特許分類】
【出願番号】特願2012−131844(P2012−131844)
【出願日】平成24年6月11日(2012.6.11)
【出願人】(501285133)川崎マイクロエレクトロニクス株式会社 (449)
【Fターム(参考)】