JP2017108271A - Bit synchronization circuit and bit synchronization method - Google Patents
Bit synchronization circuit and bit synchronization method Download PDFInfo
- Publication number
- JP2017108271A JP2017108271A JP2015240233A JP2015240233A JP2017108271A JP 2017108271 A JP2017108271 A JP 2017108271A JP 2015240233 A JP2015240233 A JP 2015240233A JP 2015240233 A JP2015240233 A JP 2015240233A JP 2017108271 A JP2017108271 A JP 2017108271A
- Authority
- JP
- Japan
- Prior art keywords
- lane
- pattern
- bit
- speed serial
- lanes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 15
- 238000001514 detection method Methods 0.000 claims abstract description 76
- 230000003252 repetitive effect Effects 0.000 claims abstract description 8
- 230000005540 biological transmission Effects 0.000 description 5
- 238000000926 separation method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000001934 delay Effects 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 230000010363 phase shift Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 101150071746 Pbsn gene Proteins 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
Description
本発明は、高速シリアル信号を複数レーンの低速シリアル信号に分割してデシリアライズした際に生じるスキューを吸収してビット同期を確立するビット同期回路及びビット同期方法に関する。 The present invention relates to a bit synchronization circuit and a bit synchronization method for absorbing a skew generated when a high-speed serial signal is divided into low-speed serial signals of a plurality of lanes and deserialized to establish bit synchronization.
従来、大容量のデータ伝送を行う際のビット同期を実現した多チャネルデータ伝送方式におけるインタフェース装置としては、例えば下記特許文献1に開示されるものが知られている。この特許文献1に開示されるインタフェース装置では、多チャネルデータと多チャネル基準信号を選択的に送信するデータ送信部と、多チャネル受信データのビット同期を行うビット同期部と、多チャネル受信データ間のデスキューを行うデスキュー部とを備え、大幅な設計時間の短縮、レイアウトの自由度、および高密度実装を可能とし、大容量のルータやスイッチの実現を可能としている。
Conventionally, as an interface device in a multi-channel data transmission system that realizes bit synchronization when performing large-capacity data transmission, for example, one disclosed in
ところが、上述した特許文献1は、データ送信部とデータ受信部をインタフェース装置に備え、データ伝送のビット同期をインタフェース装置のパッケージ内で完結してデータを出力する構成である。これに対し、外部からの信号を受信するレシーバ(受信回路)として、CMOS ICを用いてFPGA(field-programmable gate array )トランシーバを構成した場合、現在のCMOS技術では高速シリアル信号(例えば32Gbit/s以上)を直接受信することができない。このため、FPGAトランシーバでは直接受信できない高速シリアル信号をFPGAで解析したい場合には、MMICなどのデマルチプレクサを使用して高速シリアル信号を複数レーンの低速シリアル信号に分割し、FPGAトランシーバが取り扱えるビットレートに落として接続する必要があった。
However,
しかしながら、レシーバとしてFPGAトランシーバが扱えるビットレートまで落として高速シリアル信号を複数レーンの低速シリアル信号に分割したとき、受信する高速シリアル信号のビットレートが高いと、各FPGAトランシーバがデシリアライズするタイミングを揃えることが難しく、FPGAトランシーバ間のビットスキューを0とすることが困難であるという問題を生じる。そして、ビットスキューが発生した場合、元のシリアルビット列への復元ができないと考えられていた。 However, when the bit rate of the high-speed serial signal to be received is high when the high-speed serial signal is divided into a plurality of low-speed serial signals of multiple lanes by reducing the bit rate that can be handled by the FPGA transceiver as a receiver, the timing at which each FPGA transceiver deserializes is aligned. This causes a problem that it is difficult to reduce the bit skew between the FPGA transceivers to zero. When bit skew occurs, it has been considered that the original serial bit string cannot be restored.
さらに説明すると、上述したビットスキューは、低速シリアル信号の配線長のばらつき、各レシーバのクロック位相のばらつきにより複数レーンの低速シリアル信号の各レーン内においても発生する。このビットスキューは各レーンで異なる値となり、各レーンのビット位置の回転量が異なる。その結果、各レシーバから出力される信号に位相ずれが生じる。このため、従来のビット同期回路では、デマルチプレクサから各レシーバまでの低速シリアル信号の配線長やクロック位相をユーザが適宜調整することで位相ずれの問題に対処していた。しかし、このような対処方法では、作業が面倒でユーザにかかる負担が大きく、調整作業にも個人差が生じ、高速シリアル信号のビット同期を確立させて元のシリアル列に復元するまでに手間と時間を要していた。 More specifically, the bit skew described above also occurs in each lane of a plurality of low-speed serial signals due to variations in the wiring length of the low-speed serial signal and variations in the clock phase of each receiver. This bit skew has a different value in each lane, and the amount of rotation of the bit position in each lane differs. As a result, a phase shift occurs in the signal output from each receiver. For this reason, in the conventional bit synchronization circuit, the user has appropriately dealt with the phase shift problem by appropriately adjusting the wiring length and clock phase of the low-speed serial signal from the demultiplexer to each receiver. However, with such a coping method, the work is cumbersome and the burden on the user is great, and there are individual differences in the adjustment work, and it takes time and effort to establish bit synchronization of the high-speed serial signal and restore it to the original serial string. It took time.
そこで、本発明は上記問題点に鑑みてなされたものであって、ユーザにかかる負担を無くして高速シリアル信号のビット同期を確立することができるビット同期回路およびビット同期方法を提供することを目的としている。 Accordingly, the present invention has been made in view of the above problems, and an object thereof is to provide a bit synchronization circuit and a bit synchronization method that can establish bit synchronization of a high-speed serial signal without burdening the user. It is said.
上記目的を達成するため、本発明の請求項1に記載されたビット同期回路は、高速シリアル信号を複数レーンの低速シリアル信号に分割するデマルチプレクサ12と、該デマルチプレクサにて分割された複数レーンの低速シリアル信号をパラレルデータに変換する複数のレシーバ14とを含む受信装置11に用いられるビット同期回路1であって、
前記高速シリアル信号のビット列中に存在する複数の繰り返しパターンからなる検出パターンと、想定スキュー量のビットを先頭とする全ての前記複数レーンのパラレルデータとをレーン毎に比較するパターン比較部23と、
前記パターン比較部の比較結果に基づき、レーン順に前記検出パターンが検出されるか否かを判別し、先頭に前記検出パターンを検出したレーンを仮先頭レーン位置として決定する仮先頭レーン位置決定部24と、
前記仮先頭レーン位置決定部が決定した仮先頭パターン位置で一致する前記検出パターンの検出回数をカウントし、レーン順を守りながら設定回数以上連続して前記検出パターンを検出するか否かにより前記仮先頭レーン位置の良否を判定する判定部26と、
前記判定部が前記仮先頭レーン位置を良と判定したときのビット位置からスキュー量を算出してデスキューを行い、前記レシーバから入力される複数レーンのパラレルデータをシリアルビット列順に並び替えて出力する処理部28とを備えたことを特徴とする。
In order to achieve the above object, a bit synchronization circuit according to
A
Based on the comparison result of the pattern comparison unit, it is determined whether or not the detection pattern is detected in the order of lanes, and the tentative lane
The number of detection times of the detection pattern that coincides with the temporary head pattern position determined by the temporary head lane position determination unit is counted, and the temporary pattern is determined depending on whether the detection pattern is detected continuously for a set number of times or more while maintaining the lane order. A determination unit 26 for determining the quality of the first lane position;
A process of calculating a skew amount from a bit position when the determination unit determines that the temporary head lane position is good, performing a deskew, and rearranging parallel data of a plurality of lanes input from the receiver in order of a serial bit string and outputting the data And a
請求項2に記載されたビット同期方法は、高速シリアル信号を複数レーンの低速シリアル信号に分割し、この分割された複数レーンの低速シリアル信号のパラレルデータを入力としてビット同期を取るビット同期方法であって、
前記高速シリアル信号のビット列中に存在する複数の繰り返しパターンからなる検出パターンと、想定スキュー量のビットを先頭とする全ての前記複数レーンのパラレルデータとをレーン毎に比較するステップと、
前記比較の結果に基づき、レーン順に前記検出パターンが検出されるか否かを判別し、先頭に前記検出パターンを検出したレーンを仮先頭レーン位置として決定するステップと、
前記決定した仮先頭パターン位置で一致する前記検出パターンの検出回数をカウントし、レーン順を守りながら設定回数以上連続して前記検出パターンを検出するか否かにより前記仮先頭パターン位置の良否を判定するステップと、
前記仮先頭レーン位置を良と判定したときのビット位置からスキュー量を算出してデスキューを行い、前記複数レーンのパラレルデータをシリアルビット列順に並び替えて出力するステップとを含むことを特徴とする。
The bit synchronization method according to
Comparing a detection pattern consisting of a plurality of repetitive patterns present in the bit string of the high-speed serial signal with parallel data of all the plurality of lanes starting from a bit of an assumed skew amount for each lane;
Determining whether or not the detection pattern is detected in lane order based on the result of the comparison, and determining the lane that has detected the detection pattern at the head as a temporary head lane position;
Counts the number of detection times of the detected pattern that matches at the determined temporary head pattern position, and determines whether the temporary head pattern position is good or not based on whether or not the detection pattern is detected continuously for a set number of times or more while maintaining the lane order. And steps to
And a step of calculating a skew amount from a bit position when the provisional head lane position is determined to be good, performing deskew, and rearranging the parallel data of the plurality of lanes in the order of serial bit strings and outputting them.
本発明によれば、FPGAトランシーバでは直接受信できない高速シリアル信号であっても、ユーザに一切負担をかけることなく、高速シリアル信号を複数レーンの低速シリアル信号に分割してデシリアライズした際に生じるスキューを吸収してビット同期を確立することができる。 According to the present invention, even when a high-speed serial signal cannot be directly received by the FPGA transceiver, the skew generated when the high-speed serial signal is divided into a plurality of low-speed serial signals of multiple lanes and deserialized without any burden on the user. Can be absorbed to establish bit synchronization.
以下、本発明を実施するための形態について、添付した図面を参照しながら詳細に説明する。 Hereinafter, embodiments for carrying out the present invention will be described in detail with reference to the accompanying drawings.
本発明は、例えば既知のパターン信号(テスト信号)の入力に伴うPCIeデバイスやUSBデバイスなどの被測定物(DUT)からの高速シリアル信号を複数レーンの低速シリアル信号に分割し、この分割した複数レーンの低速シリアル信号をデシリアライズしてパラレルデータに変換した際に生じるレーン内やレーン間のスキューを吸収(デスキュー)してビット同期を確立するビット同期回路及びビット同期方法に関するものである。 The present invention divides, for example, a high-speed serial signal from a device under test (DUT) such as a PCIe device or a USB device accompanying input of a known pattern signal (test signal) into low-speed serial signals of a plurality of lanes. The present invention relates to a bit synchronization circuit and a bit synchronization method for establishing bit synchronization by absorbing (de-skew) skew in or between lanes generated when deserializing a lane low-speed serial signal and converting it into parallel data.
図1及び図2に示すように、ビット同期回路1は、デマルチプレクサ12、クロック発生器13、レシーバ14とともに受信装置11の一部として組み込まれる。
As shown in FIGS. 1 and 2, the
受信装置11は、特に図示はしないが、例えばPCIeデバイスやUSBデバイスなどの被測定物(DUT)にパターン信号(PRBSパターンやプログラマブルパターンによる既知パターン)を送信するパターン発生器とともに誤り率測定装置を構成する。誤り率測定装置は、パターン発生器から被測定物に既知のパターン信号をテスト信号として入力したときに、このテスト信号の入力に伴う被測定物からの信号(高速シリアル信号)を受信装置にて受信し、受信した信号と既知のテスト信号との比較によってビット誤り率を測定する。
Although not particularly shown, the
デマルチプレクサ12は、例えばPCIeデバイスやUSBデバイスなどの被測定物から入力される高速シリアル信号(例えば32Gbit/s)を、後段のレシーバ14が扱えるビットレート(例えば4Gbit/s)の複数レーン(例えば8レーン)の低速シリアル信号に分割(DMUX)する。
For example, the
なお、本例のデマルチプレクサ12は、説明の簡略を図るため、1段のみの構成として図示しているが、入力される高速シリアル信号のビットレートに応じた段数で適宜構成することができる。例えば32Gbit/sの高速シリアル信号を分割する場合には、デマルチプレクサ12を2段構成とし、32Gbit/s→16Gbit/s→4Gbit/sと段階的に分離する。また、入力される高速シリアル信号は、被測定物からの信号に限らず、レシーバ14で直接受信することができないビットレートの信号を対象としている。
Note that the
クロック発生器13は、デマルチプレクサ12にて分割された低速シリアル信号をレシーバ14が取り込むための基準クロックを発生し、発生した基準クロックをレシーバ14に入力する。
The
レシーバ14は、CMOS ICを用いたFPGAトランシーバからなる受信回路であり、デマルチプレクサ12にて分割される低速シリアル信号のレーンの数に対応して複数設けられる。具体的には、図2に示すように、高速シリアル信号がデマルチプレクサ12にて8レーンの低速シリアル信号に分割された場合、各レーンに対応して1ずつ合計8つのレシーバ14(14A,14B,14C,14D,14E,14F,14G,14H)が設けられる。
The
レシーバ14は、CDR(Clock Data Recovery )14a、デシリアライザ14b、分周器14cを含んで構成される。なお、図2では、レシーバ14AのみにCDR14aとデシリアライザ14bを図示しているが、全てのレシーバ14A〜14HにCDR14a、デシリアライザ14b、分周器14cが含まれるものである。
The
CDR14aは、クロック発生部13からの基準クロックを参照して、デマルチプレクサ12から入力される低速シリアル信号からクロック信号を再生する。デシリアライザ14bは、デマルチプレクサ12にて分割された低速シリアル信号をCDR14aからのクロック信号(再生クロック)のタイミングで取り込み、CDR14aにて再生されるクロック信号を分周器14cにて分周したクロック信号のタイミングで低速シリアル信号をデシリアライズしてパラレルデータに変換して出力する。これにより、各レシーバ14にてデシリアライズされた8レーンのパラレルデータがビット同期回路1に入力される。
The
図1や図2に示すように、ビット同期回路1は、上述したビット同期を確立する機能を実現するため、入力側が複数のレシーバ14(14A〜14H)に接続され、クロックドメイン分離部21、検出パターン発生部22、パターン比較部23、仮先頭レーン位置決定部24、第1の遅延部25、判定部26、第2の遅延部27、処理部28を含んでFPGAで構成される。
As shown in FIGS. 1 and 2, the
クロックドメイン分離部21は、パターン比較部23の入力側と出力側に接続され、クロック周期調整用のFIFOで構成される。クロックドメイン分離部21は、パターン比較部23が別クロック(4倍速クロック:clk×4)で動作しているため、クロックドメインを分離する機能を有する。
The clock
検出パターン発生部22は、パターン比較部23においてレシーバ14からのパラレルデータに基づく被比較用データ(レーン0〜7)と比較するための検出パターンを発生する。検出パターンは、受信装置11が受信する高速シリアル信号と同期を取るため、高速シリアル信号のビット列中に存在する繰り返しパターンに基づく異なるビット配列の複数種類のパターンからなる。
The
さらに説明すると、本例の検出パターン発生部22は、接続相手との規格によって決まる固定値を設定値とした複数種類の検出パターンを発生する。例えばPCIe規格のモード(Gen1、Gen2、Gen3、Gen4)では、160ビットの5種類(Gen1とGen2では4種類、Gen3とGen4では1種類)の固定値を設定値とする。そして、検出パターン発生部22では、モードに応じて設定値を選択し、選択した設定値のMSB側から1ビットずつ順番にパターン0→パターン1→パターン2→…→パターン6→パターン7に割り振り、これを繰り返して検出パターンを発生する。
More specifically, the detection
具体的に、PCIeのGen3の場合は、図3に示すように、pt0をパターン0、pt1をパターン1、pt2をパターン3、pt4をパターン4、pt5をパターン5、pt6をパターン6、pt7をパターン7といったように、設定値のMSB(pt0)側から1ビットずつ順番にパターン0→パターン1→パターン2→…→パターン6→パターン7に割り振り、これを繰り返して異なるビット配列の8種類の検出パターンを発生する。なお、図3において、縦軸はビットインターリーブにより分割された検出パターンの種類(パターン0〜7)、横軸は各検出パターンの1フレームのビット位置である。
Specifically, in the case of PCIe Gen3, as shown in FIG. 3, pt0 is
このように、検出パターン発生部22は、高速シリアル信号のビット列中に存在する繰り返しパターン(PCIeのモードに応じた設定値)の160ビットを8レーンにビットインターリーブし、例えば図3に示すような8種類のパターン(パターン0、パターン1、パターン2、パターン3、パターン4、パターン5、パターン6、パターン7)を検出パターンとして発生する。従って、検出パターンは、設定値の種類毎にパターン0〜7の内容(ビット配列)が異なる。
In this way, the detection
なお、検出パターンは、接続相手に応じて複数の種類(パターン0〜7の組み合わせ)を切り替えて使用する。また、検出パターンは、図3に示すように、20ビット長まで拡張して精度を上げているが、このビット長に限定されるものではない。 In addition, a detection pattern switches and uses several types (combination of the patterns 0-7) according to a connection other party. Further, as shown in FIG. 3, the detection pattern is extended to 20 bits to improve accuracy, but is not limited to this bit length.
パターン比較部23は、レシーバ14の数、言い換えればパラレルデータのレーン数に対応して設けられる。本例では、8つのレシーバ14A〜14Hを備えて8レーンのパラレルデータを出力するので、各レシーバ14A〜14Hに対応して8つのパターン比較部23が設けられる。
The
パターン比較部23は、レーン内で発生が想定されるスキュー量を加味したパラレルデータを被比較用データとし、この被比較用データと検出パターンとの比較を複数レーンのレーン毎に行い、その比較結果を出力する。なお、本例では、想定スキュー量を±8ビット(+8:8通り、±0:1通り、−8:8通りの合計17通り)とし、この±8ビットの範囲全てにおけるパラレルデータを被比較用データとしている。
The
パターン比較部23は、対応するレシーバ14からの入力データバス(16ビット幅)を3段のシフトレジスタに入力し、この3段分のデータをつなげ、レーン内のスキュー量(想定スキュー量±8ビット)による違いに対応するため、ビット位置(±8ビット分)をずらした被比較用データを作成する。
The
パターン比較部23は、作成した被比較用データと、図3の全ての検出パターン(パターン0〜7)について比較し、この比較動作を各レーン毎に実施する。
The
例えば図3のパターン0に着目すると、全ての検出パターン(パターン0〜7)と17通りの被比較用データとを比較する。この検出パターン(パターン0〜7)と被比較用データ(17通り)との比較を複数レーンのレーン毎に行う。これにより、パターン比較部23からは、全体として17通り×8パターン×8レーン=1088個の比較結果が出力される。
For example, paying attention to
仮先頭レーン位置決定部24は、各パターン比較部23から入力される比較結果に基づき、レーン順に必要な検出パターンが検出されるか否かを判別し、先頭に必要な検出パターンを検出したレーンを仮先頭レーン位置として決定する。
The temporary head lane
なお、必要な検出パターンとは、検出パターンのパターン0〜7が順番に揃う組み合わせを意味する。例えばレーン1を先頭と見た場合には、レーン1にはパターン0、次のレーン2にはパターン1、その次のレーン3にはパターン2といったように、レーン順にパターン0〜7が並ぶ組み合わせである。
The necessary detection pattern means a combination in which the
仮先頭レーン位置決定部24は、図4のAに示すように、レーン0を先頭にパターン0〜7を検出すると、レーン0を仮先頭レーン位置として決定する。以下同様にして、図4のBに示すように、レーン1を先頭にパターン0〜7を検出すると、レーン1を仮先頭レーン位置として決定する。図4のCに示すように、レーン2を先頭にパターン0〜7を検出すると、レーン2を仮先頭レーン位置として決定する。図4のDに示すように、レーン3を先頭にパターン0〜7を検出すると、レーン3を仮先頭レーン位置として決定する。図4のEに示すように、レーン4を先頭にパターン0〜7を検出すると、レーン4を仮先頭レーン位置として決定する。図4のFに示すように、レーン5を先頭にパターン0〜7を検出すると、レーン5を仮先頭レーン位置として決定する。図4のGに示すように、レーン6を先頭にパターン0〜7を検出すると、レーン6を仮先頭レーン位置として決定する。図4のHに示すように、レーン7を先頭にパターン0〜7を検出すると、レーン7を仮先頭レーン位置として決定する。
As shown in A of FIG. 4, the temporary head lane
なお、図4では、レーン7からレーン0への遷移を分かり易くするため展開した形式で図示したが、実際にはレーン0→レーン1→…→レーン6→レーン7→レーン0といったように繰り返す。
In FIG. 4, the transition from
このように、仮先頭レーン位置決定部24は、あるレーンを先頭にパターン0〜7が順番に並ぶ組み合わせ(各レーンを先頭とする組み合わせ:図4のA〜Hの8通り)を検出し、この組み合わせを検出した時点でそのレーンを仮先頭レーン位置として決定し、仮先頭レーン位置データ(レーン内で何ビットずれているかを示す位置ずれ情報を含む)を判定部26に出力する。
In this way, the temporary head lane
第1の遅延部25は、パターン比較部23からの比較結果を遅延させ、この遅延させた比較結果と、仮先頭レーン位置決定部24から判定部26への仮先頭レーン位置データとの位相を合わせる。
The
ここで、検出パターン長(160ビット)と、レーン数(8レーン)×1レーンのビット幅(16ビット)とが等しくないため、検出パターン160ビットが存在するレーン位置とビット位置は周期性をもって移動する。このため、判定部26では、検出パターンが発生するレーン位置とビット位置を算出し、算出したレーン位置とビット位置にて検出パターンを設定回数以上連続して検出するか否かを判定する。その際、設定回数は、パターンの長さによって出現頻度が異なるため、短いパターンのときは多い回数(例えば10回)、長いパターンのときは少ない回数(例えば8回)となるように、パターンの長さに応じて適宜設定される。
Here, since the detection pattern length (160 bits) is not equal to the number of lanes (8 lanes) × 1 lane bit width (16 bits), the lane position and the bit position where the detection pattern 160 bits exist have periodicity. Moving. For this reason, the
すなわち、判定部26は、仮先頭レーン位置決定部24からの仮先頭パターン位置データを元に検出パターンの移動先(検出パターンが存在するレーン位置とビット位置の移動先)を予測し、その位置で一致する検出パターンの検出回数(一致回数)をカウントし、レーン順を守りながら、かつ設定回数以上連続して一致する検出をするか、否かにより仮先頭レーン位置のビットの良否を判定する。そして、判定部26は、レーン順を守りながら、かつ設定回数以上連続して仮先頭レーン位置で一致する検出パターンを検出してパターン検出条件を満たすと、仮先頭パターン位置に決定したレーンを確定先頭パターン位置と判定し、確定先頭パターン位置データ(レーン内で何ビットずれているかを示す位置ずれ情報を含む)を判定結果として処理部28に出力する。また、判定部26は、検出パターンを連続して検出したときのビット位置別のカウント値を判定結果として処理部28に出力する。
That is, the
第2の遅延部27は、各レシーバ14からの入力データ(レーン0〜7のパラレルデータ)を遅延させ、この遅延させた入力データと、判定部26から処理部28への判定結果との位相を合わせる。
The
処理部28は、判定部26から確定先頭パターン位置データが入力されると、そのビット位置からスキュー量(レーン内及びレーン間のスキュー量:図3の縦方向と横方向のスキュー量)を算出し、算出したスキュー量によりレーン0〜7のパラレルデータのデスキューを行い、デスキューしたパラレルデータをシリアルビット列順(高速シリアル信号のビット列順)に並び替えて出力する。これにより、処理部28からは、高速シリアル信号にビット同期したシリアルデータが出力される。
When the determined head pattern position data is input from the
次に、上述したビット同期回路1を用いた高速シリアル信号のビット同期方法について説明する。ここでは、高速シリアル信号をデマルチプレクサにて8レーンの低速シリアル信号に変換し、この8レーンの低速シリアル信号を8つのレシーバ14にてパラレルデータ(16ビット)に変換する場合を例にとって説明する。
Next, a bit synchronization method for a high-speed serial signal using the above-described
ビット同期回路1では、各レシーバ14からパラレルデータが入力されると、検出パターンと被比較用データとを各パターン比較部23で比較する。例えばレーン0に対応したパターン比較部23では、レシーバ14からのパラレルデータをビットシフトして、±8ビットの17通りの被比較用データを作成し、作成した17通りの被比較用データと検出パターン(パターン0〜7)とを比較し、両者が一致するものを全て見つけ出す。他のレーン1〜7のそれぞれに対応したパターン比較部23でも並行して同様の処理を行う。
In the
次に、仮先頭レーン位置決定部24は、パターン比較部23からの8レーンの比較結果を全て取得し、取得した比較結果をもとに、レーン順に検出パターンが検出されるかを判別し、検出パターンの先頭が存在するレーンを仮先頭レーン位置とする。このとき、検出される順番は、レーン単位で見ると、レーン0→レーン1→…→レーン6→レーン7→レーン0→レーン1→…の順であるが、検出パターンの先頭が存在するレーンは起動時によって異なる。このため、検出パターン(パターン0)はレーン0で検出されるとは限らない。また、複数箇所で見つかる場合もある。
Next, the temporary head lane
判定部26は、仮先頭レーン位置決定部24にて仮先頭レーン位置を確定した後、以後のパターン比較部23の比較結果から検出パターンの一致回数をカウントする。ここで、入力データに含まれるパターンの同期ビット数と、クロック毎の8レーン分ビット数(16ビット×8レーン=128ビット)が異なるため、検出すべきパターンは周期性をもって移動する。
After determining the temporary head lane position by the temporary head lane
そこで、判定部26は、検出パターンの移動先を予測し、その位置で一致する検出パターンの検出回数をカウントする。そして、レーン順を守りながら、かつ設定回数以上連続して一致する検出をするか否かを判別する。判定部26は、レーン順を守りながら、かつ設定回数以上連続して一致する検出をすると、仮先頭パターン位置に決定したレーンを確定先頭パターン位置と判定し、確定先頭パターン位置データを判定結果として処理部28に出力する。
Therefore, the
処理部28は、判定部26の判定結果から仮先頭レーン位置を良と判定すると、パターン検出条件を満たしたときのスキュー量を元に、レシーバ14から入力される複数レーンのパラレルデータのデスキューを行い、複数レーンのパラレルデータをシリアルビット列順に並び替えて出力する。また、処理部28は、仮先頭レーン位置を不良と判定すると、仮先頭レーン位置決定部24、判定部26の仮先頭レーン位置をクリアする信号を出力する。このクリアにより、次のレーン位置で再度周期性のチェックを行い、判定部26による仮先頭レーン位置の判定からやり直す。
If the
このように、本実施の形態のビット同期回路1によれば、高速シリアル信号をデマルチプレクサ12にて複数レーンの低速シリアル信号に分割し、高速シリアルビット列中に存在する繰り返しパターンを検出パターンとして使用し、レシーバ(FPGAトランシーバ)14間で発生するビットスキューの推定とデスキューを行い、元のシリアルビット列を復元してビット同期を確立している。これにより、レシーバ(FPGAトランシーバ)に直接接続できない高速シリアル信号であっても、従来のようなユーザによる配線長やクロック位相の調整作業が不要となり、ユーザに一切負担をかけることなく、高速シリアル信号を複数レーンの低速シリアル信号に分割してデシリアライズした際に生じるレーン内やレーン間のスキューを吸収してビット同期を確立することができる。また、ビットスキューの推定を全ビット同時に行うことにより、デスキューとビット同期の確立を高速に行うことができる。
As described above, according to the
以上、本発明に係るビット同期回路及びビット同期方法の最良の形態について説明したが、この形態による記述及び図面により本発明が限定されることはない。すなわち、この形態に基づいて当業者等によりなされる他の形態、実施例及び運用技術などはすべて本発明の範疇に含まれることは勿論である。 Although the best mode of the bit synchronization circuit and the bit synchronization method according to the present invention has been described above, the present invention is not limited to the description and drawings according to this mode. That is, it is a matter of course that all other forms, examples, operation techniques, and the like made by those skilled in the art based on this form are included in the scope of the present invention.
1 ビット同期回路
11 受信装置
12 デマルチプレクサ
13 クロック発生部
14(14A〜14H) レシーバ
14a CDR
14b デシリアライザ
14c 分周器
21 クロックドメイン分離部
22 検出パターン発生部
23 パターン比較部
24 仮先頭レーン位置決定部
25 第1の遅延部
26 判定部
27 第2の遅延部
28 処理部
1
Claims (2)
前記高速シリアル信号のビット列中に存在する複数の繰り返しパターンからなる検出パターンと、想定スキュー量のビットを先頭とする全ての前記複数レーンのパラレルデータとをレーン毎に比較するパターン比較部(23)と、
前記パターン比較部の比較結果に基づき、レーン順に前記検出パターンが検出されるか否かを判別し、先頭に前記検出パターンを検出したレーンを仮先頭レーン位置として決定する仮先頭レーン位置決定部(24)と、
前記仮先頭レーン位置決定部が決定した仮先頭パターン位置で一致する前記検出パターンの検出回数をカウントし、レーン順を守りながら設定回数以上連続して前記検出パターンを検出するか否かにより前記仮先頭レーン位置の良否を判定する判定部(26)と、
前記判定部が前記仮先頭レーン位置を良と判定したときのビット位置からスキュー量を算出してデスキューを行い、前記レシーバから入力される複数レーンのパラレルデータをシリアルビット列順に並び替えて出力する処理部(28)とを備えたことを特徴とするビット同期回路。 Reception including a demultiplexer (12) that divides the high-speed serial signal into low-speed serial signals of a plurality of lanes, and a plurality of receivers (14) that convert the low-speed serial signals of the plurality of lanes divided by the demultiplexer into parallel data. A bit synchronization circuit (1) used in the device (11),
A pattern comparison unit (23) for comparing, for each lane, a detection pattern composed of a plurality of repetitive patterns present in the bit string of the high-speed serial signal and parallel data of all the plurality of lanes starting from a bit of an assumed skew amount. When,
Based on the comparison result of the pattern comparison unit, it is determined whether or not the detection pattern is detected in lane order, and a tentative head lane position determination unit (determining a lane in which the detection pattern is detected at the head as a temporary head lane position) 24)
The number of detection times of the detection pattern that coincides with the temporary head pattern position determined by the temporary head lane position determination unit is counted, and the temporary pattern is determined depending on whether the detection pattern is detected continuously for a set number of times or more while maintaining the lane order. A determination unit (26) for determining the quality of the first lane position;
A process of calculating a skew amount from a bit position when the determination unit determines that the temporary head lane position is good, performing a deskew, and rearranging parallel data of a plurality of lanes input from the receiver in order of a serial bit string and outputting the data And a bit synchronization circuit.
前記高速シリアル信号のビット列中に存在する複数の繰り返しパターンからなる検出パターンと、想定スキュー量のビットを先頭とする全ての前記複数レーンのパラレルデータとをレーン毎に比較するステップと、
前記比較の結果に基づき、レーン順に前記検出パターンが検出されるか否かを判別し、先頭に前記検出パターンを検出したレーンを仮先頭レーン位置として決定するステップと、
前記決定した仮先頭パターン位置で一致する前記検出パターンの検出回数をカウントし、レーン順を守りながら設定回数以上連続して前記検出パターンを検出するか否かにより前記仮先頭パターン位置の良否を判定するステップと、
前記仮先頭レーン位置を良と判定したときのビット位置からスキュー量を算出してデスキューを行い、前記複数レーンのパラレルデータをシリアルビット列順に並び替えて出力するステップとを含むことを特徴とするビット同期方法。 A bit synchronization method that divides a high-speed serial signal into low-speed serial signals of a plurality of lanes and takes bit synchronization using parallel data of the divided low-speed serial signals of the plurality of lanes as an input,
Comparing a detection pattern consisting of a plurality of repetitive patterns present in the bit string of the high-speed serial signal with parallel data of all the plurality of lanes starting from a bit of an assumed skew amount for each lane;
Determining whether or not the detection pattern is detected in lane order based on the result of the comparison, and determining the lane that has detected the detection pattern at the head as a temporary head lane position;
Counts the number of detection times of the detected pattern that matches at the determined temporary head pattern position, and determines whether the temporary head pattern position is good or not based on whether or not the detection pattern is detected continuously for a set number of times or more while maintaining the lane order. And steps to
A step of calculating a skew amount from a bit position when the provisional head lane position is determined to be good, performing deskew, and rearranging the parallel data of the plurality of lanes in the order of serial bit strings and outputting the bit. Synchronization method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015240233A JP6332701B2 (en) | 2015-12-09 | 2015-12-09 | Bit synchronization circuit and bit synchronization method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015240233A JP6332701B2 (en) | 2015-12-09 | 2015-12-09 | Bit synchronization circuit and bit synchronization method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017108271A true JP2017108271A (en) | 2017-06-15 |
JP6332701B2 JP6332701B2 (en) | 2018-05-30 |
Family
ID=59060220
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015240233A Active JP6332701B2 (en) | 2015-12-09 | 2015-12-09 | Bit synchronization circuit and bit synchronization method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6332701B2 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000307563A (en) * | 1999-04-21 | 2000-11-02 | Nec Eng Ltd | Frame synchronization detection circuit |
JP2010130574A (en) * | 2008-11-28 | 2010-06-10 | Nippon Telegr & Teleph Corp <Ntt> | Method and apparatus of parallel transmission |
US20120063557A1 (en) * | 2010-09-15 | 2012-03-15 | Sony Corporation | Phase adjustment circuit, receiving apparatus and communication system |
JP2013017166A (en) * | 2011-06-09 | 2013-01-24 | Kawasaki Microelectronics Inc | Receiver |
-
2015
- 2015-12-09 JP JP2015240233A patent/JP6332701B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000307563A (en) * | 1999-04-21 | 2000-11-02 | Nec Eng Ltd | Frame synchronization detection circuit |
JP2010130574A (en) * | 2008-11-28 | 2010-06-10 | Nippon Telegr & Teleph Corp <Ntt> | Method and apparatus of parallel transmission |
US20120063557A1 (en) * | 2010-09-15 | 2012-03-15 | Sony Corporation | Phase adjustment circuit, receiving apparatus and communication system |
JP2012065094A (en) * | 2010-09-15 | 2012-03-29 | Sony Corp | Phase adjustment circuit, receiver, and communication system |
JP2013017166A (en) * | 2011-06-09 | 2013-01-24 | Kawasaki Microelectronics Inc | Receiver |
Also Published As
Publication number | Publication date |
---|---|
JP6332701B2 (en) | 2018-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8760325B2 (en) | Scheme for balancing skew between lanes of high-speed serial digital interface | |
US6658363B2 (en) | Digital data pattern detection methods and arrangements | |
WO2003021521A1 (en) | Relative dynamic skew compensation of parallel data lines | |
TW200408195A (en) | Data recovery circuit, phase detection circuit and method for detecting and correcting phase conditions | |
TW201347495A (en) | A clock recovery circuit and a parallel output circuit | |
US7876873B2 (en) | Asynchronous ping-pong counter and thereof method | |
US9952281B2 (en) | Clock jitter and power supply noise analysis | |
US7340021B1 (en) | Dynamic phase alignment and clock recovery circuitry | |
US10797984B1 (en) | Systems and methods for timestamping a data event | |
US11178036B2 (en) | Systems and methods for measuring latency in a network device | |
JP6332701B2 (en) | Bit synchronization circuit and bit synchronization method | |
US20100150255A1 (en) | Semiconductor integrated circuit including transmitter and receiver which conducts loopback test and test method thereof | |
US7428283B2 (en) | Data recovery algorithm using data position detection and serial data receiver adopting the same | |
KR101218364B1 (en) | data receiving device | |
TWI635706B (en) | Method for determining sampling phase of sampling clock signal and associated electronic device | |
US8711018B2 (en) | Providing a feedback loop in a low latency serial interconnect architecture | |
US20230006903A1 (en) | Systems and methods for timing a signal | |
JP6360578B1 (en) | Deskew circuit and deskew method | |
US5294844A (en) | Sampling signal generation circuit | |
JP3868776B2 (en) | Bidirectional data transmission / reception method and system | |
JP3791762B2 (en) | Simultaneous bidirectional transmission / reception device and signal transmission / reception system | |
JP5765088B2 (en) | Transmission circuit and deskew circuit | |
JP6695200B2 (en) | Serial data receiving circuit, transceiver circuit, electronic device, idle state detection method | |
KR101907021B1 (en) | Apparatus and Method of Determining Simultaneous Signals | |
JP5540906B2 (en) | Data receiving circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170919 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171003 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171106 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20180327 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180418 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6332701 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |