JP2017108271A - Bit synchronization circuit and bit synchronization method - Google Patents

Bit synchronization circuit and bit synchronization method Download PDF

Info

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
Application number
JP2015240233A
Other languages
Japanese (ja)
Other versions
JP6332701B2 (en
Inventor
城所 久生
Hisao Kidokoro
久生 城所
紀夫 本田
Norio Honda
紀夫 本田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Anritsu Corp
Original Assignee
Anritsu Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Anritsu Corp filed Critical Anritsu Corp
Priority to JP2015240233A priority Critical patent/JP6332701B2/en
Publication of JP2017108271A publication Critical patent/JP2017108271A/en
Application granted granted Critical
Publication of JP6332701B2 publication Critical patent/JP6332701B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

PROBLEM TO BE SOLVED: To establish bit synchronization of high-speed serial signals that cannot be directly received by an FPGA transceiver.SOLUTION: A bit synchronization circuit 1 comprises: a pattern comparison part 23 for comparing a detection pattern consisting of a plurality of repetitive patterns being present in a high-speed serial signal with parallel data of all multiple lanes including bits of an estimated screw amount in the head in a low-speed serial signal obtained by dividing the high-speed serial signal, for each lane; a temporary leading lane position determination part 24 for determining a lane in which the detection pattern is detected in the head in the order of lanes as a temporary leading lane position based on comparison results; a bit discrimination part 26 for discriminating whether the detection patterns matched at the determined temporary leading pattern position are detected continuously as many as or more than preset times while keeping the order of lanes; and a processing part 28 for calculating a skew amount from a bit position in the case where the temporary leading lane position is discriminated satisfactory, performing deskew and outputting parallel data of a plurality of lanes while rearranging the parallel data in the order of serial bit streams.SELECTED DRAWING: Figure 1

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 Patent Document 1 below is known. In the interface device disclosed in Patent Document 1, a data transmission unit that selectively transmits multi-channel data and a multi-channel reference signal, a bit synchronization unit that performs bit synchronization of multi-channel reception data, and multi-channel reception data And a deskew unit for performing deskewing, enabling a significant reduction in design time, flexibility in layout, and high-density mounting, and realizing a large-capacity router or switch.

特開2002−223208号公報JP 2002-223208 A

ところが、上述した特許文献1は、データ送信部とデータ受信部をインタフェース装置に備え、データ伝送のビット同期をインタフェース装置のパッケージ内で完結してデータを出力する構成である。これに対し、外部からの信号を受信するレシーバ(受信回路)として、CMOS ICを用いてFPGA(field-programmable gate array )トランシーバを構成した場合、現在のCMOS技術では高速シリアル信号(例えば32Gbit/s以上)を直接受信することができない。このため、FPGAトランシーバでは直接受信できない高速シリアル信号をFPGAで解析したい場合には、MMICなどのデマルチプレクサを使用して高速シリアル信号を複数レーンの低速シリアル信号に分割し、FPGAトランシーバが取り扱えるビットレートに落として接続する必要があった。   However, Patent Document 1 described above has a configuration in which a data transmission unit and a data reception unit are provided in an interface device, and data transmission bit synchronization is completed within a package of the interface device to output data. On the other hand, when a FPGA (field-programmable gate array) transceiver is configured using a CMOS IC as a receiver (receiver circuit) for receiving an external signal, a high-speed serial signal (for example, 32 Gbit / s) is used in the current CMOS technology. The above cannot be received directly. For this reason, if you want to analyze a high-speed serial signal that cannot be received directly by the FPGA transceiver with the FPGA, use a demultiplexer such as MMIC to divide the high-speed serial signal into low-speed serial signals of multiple lanes and handle the bit rate that the FPGA transceiver can handle. It was necessary to drop and connect.

しかしながら、レシーバとして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 claim 1 of the present invention includes a demultiplexer 12 that divides a high-speed serial signal into low-speed serial signals of a plurality of lanes, and a plurality of lanes divided by the demultiplexer. A bit synchronization circuit 1 used in a receiving device 11 including a plurality of receivers 14 for converting a low-speed serial signal into parallel data,
A pattern comparison unit 23 that compares, for each lane, a detection pattern composed of a plurality of repetitive patterns existing 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;
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 position determination unit 24 determines the lane in which the detection pattern is detected at the head as the tentative head lane position. When,
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 unit 28.

請求項2に記載されたビット同期方法は、高速シリアル信号を複数レーンの低速シリアル信号に分割し、この分割された複数レーンの低速シリアル信号のパラレルデータを入力としてビット同期を取るビット同期方法であって、
前記高速シリアル信号のビット列中に存在する複数の繰り返しパターンからなる検出パターンと、想定スキュー量のビットを先頭とする全ての前記複数レーンのパラレルデータとをレーン毎に比較するステップと、
前記比較の結果に基づき、レーン順に前記検出パターンが検出されるか否かを判別し、先頭に前記検出パターンを検出したレーンを仮先頭レーン位置として決定するステップと、
前記決定した仮先頭パターン位置で一致する前記検出パターンの検出回数をカウントし、レーン順を守りながら設定回数以上連続して前記検出パターンを検出するか否かにより前記仮先頭パターン位置の良否を判定するステップと、
前記仮先頭レーン位置を良と判定したときのビット位置からスキュー量を算出してデスキューを行い、前記複数レーンのパラレルデータをシリアルビット列順に並び替えて出力するステップとを含むことを特徴とする。
The bit synchronization method according to claim 2 is 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 by using parallel data of the divided low-speed serial signals of the plurality of lanes as an input. There,
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.

本発明に係るビット同期回路の内部構成の一例を示すブロック図である。It is a block diagram which shows an example of the internal structure of the bit synchronous circuit which concerns on this invention. 本発明に係るビット同期回路を含む受信装置の概略構成を示すブロック図である。It is a block diagram which shows schematic structure of the receiver containing the bit synchronous circuit which concerns on this invention. 検出パターンのビットインターリーブとレーン分割の一例を示す説明図である。It is explanatory drawing which shows an example of the bit interleaving and lane division | segmentation of a detection pattern. 図3の検出パターンを用いて先頭レーン位置を決めるときの概略説明図である。FIG. 4 is a schematic explanatory diagram when a head lane position is determined using the detection pattern of FIG. 3.

以下、本発明を実施するための形態について、添付した図面を参照しながら詳細に説明する。   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 bit synchronization circuit 1 is incorporated as a part of the reception device 11 together with the demultiplexer 12, the clock generator 13, and the receiver 14.

受信装置11は、特に図示はしないが、例えばPCIeデバイスやUSBデバイスなどの被測定物(DUT)にパターン信号(PRBSパターンやプログラマブルパターンによる既知パターン)を送信するパターン発生器とともに誤り率測定装置を構成する。誤り率測定装置は、パターン発生器から被測定物に既知のパターン信号をテスト信号として入力したときに、このテスト信号の入力に伴う被測定物からの信号(高速シリアル信号)を受信装置にて受信し、受信した信号と既知のテスト信号との比較によってビット誤り率を測定する。   Although not particularly shown, the receiving apparatus 11 includes an error rate measuring apparatus together with a pattern generator that transmits a pattern signal (a known pattern based on a PRBS pattern or a programmable pattern) to a device under test (DUT) such as a PCIe device or a USB device. Configure. When the error rate measuring device inputs a known pattern signal from the pattern generator to the device under test as a test signal, the receiving device receives the signal (high-speed serial signal) from the device under test when the test signal is input. The bit error rate is measured by comparing the received signal with a known test signal.

デマルチプレクサ12は、例えばPCIeデバイスやUSBデバイスなどの被測定物から入力される高速シリアル信号(例えば32Gbit/s)を、後段のレシーバ14が扱えるビットレート(例えば4Gbit/s)の複数レーン(例えば8レーン)の低速シリアル信号に分割(DMUX)する。   For example, the demultiplexer 12 can process a high-speed serial signal (for example, 32 Gbit / s) input from a device under test such as a PCIe device or a USB device in a plurality of lanes (for example, 4 Gbit / s) that can be handled by the subsequent receiver 14. Divide into 8 low-speed serial signals (DMUX).

なお、本例のデマルチプレクサ12は、説明の簡略を図るため、1段のみの構成として図示しているが、入力される高速シリアル信号のビットレートに応じた段数で適宜構成することができる。例えば32Gbit/sの高速シリアル信号を分割する場合には、デマルチプレクサ12を2段構成とし、32Gbit/s→16Gbit/s→4Gbit/sと段階的に分離する。また、入力される高速シリアル信号は、被測定物からの信号に限らず、レシーバ14で直接受信することができないビットレートの信号を対象としている。   Note that the demultiplexer 12 of this example is illustrated as a single-stage configuration for the sake of simplicity, but can be appropriately configured with the number of stages according to the bit rate of the input high-speed serial signal. For example, in the case of dividing a 32 Gbit / s high-speed serial signal, the demultiplexer 12 has a two-stage configuration and is separated in stages from 32 Gbit / s → 16 Gbit / s → 4 Gbit / s. Further, the input high-speed serial signal is not limited to the signal from the device under test, and is intended for a bit rate signal that cannot be directly received by the receiver 14.

クロック発生器13は、デマルチプレクサ12にて分割された低速シリアル信号をレシーバ14が取り込むための基準クロックを発生し、発生した基準クロックをレシーバ14に入力する。   The clock generator 13 generates a reference clock for the receiver 14 to capture the low-speed serial signal divided by the demultiplexer 12 and inputs the generated reference clock to the receiver 14.

レシーバ14は、CMOS ICを用いたFPGAトランシーバからなる受信回路であり、デマルチプレクサ12にて分割される低速シリアル信号のレーンの数に対応して複数設けられる。具体的には、図2に示すように、高速シリアル信号がデマルチプレクサ12にて8レーンの低速シリアル信号に分割された場合、各レーンに対応して1ずつ合計8つのレシーバ14(14A,14B,14C,14D,14E,14F,14G,14H)が設けられる。   The receiver 14 is a receiving circuit composed of an FPGA transceiver using a CMOS IC, and a plurality of receivers 14 are provided corresponding to the number of low-speed serial signal lanes divided by the demultiplexer 12. Specifically, as shown in FIG. 2, when the high-speed serial signal is divided into eight-lane low-speed serial signals by the demultiplexer 12, a total of eight receivers 14 (14A, 14B) are provided, one for each lane. , 14C, 14D, 14E, 14F, 14G, 14H).

レシーバ14は、CDR(Clock Data Recovery )14a、デシリアライザ14b、分周器14cを含んで構成される。なお、図2では、レシーバ14AのみにCDR14aとデシリアライザ14bを図示しているが、全てのレシーバ14A〜14HにCDR14a、デシリアライザ14b、分周器14cが含まれるものである。   The receiver 14 includes a CDR (Clock Data Recovery) 14a, a deserializer 14b, and a frequency divider 14c. In FIG. 2, the CDR 14a and the deserializer 14b are shown only in the receiver 14A, but all the receivers 14A to 14H include the CDR 14a, the deserializer 14b, and the frequency divider 14c.

CDR14aは、クロック発生部13からの基準クロックを参照して、デマルチプレクサ12から入力される低速シリアル信号からクロック信号を再生する。デシリアライザ14bは、デマルチプレクサ12にて分割された低速シリアル信号をCDR14aからのクロック信号(再生クロック)のタイミングで取り込み、CDR14aにて再生されるクロック信号を分周器14cにて分周したクロック信号のタイミングで低速シリアル信号をデシリアライズしてパラレルデータに変換して出力する。これにより、各レシーバ14にてデシリアライズされた8レーンのパラレルデータがビット同期回路1に入力される。   The CDR 14 a refers to the reference clock from the clock generator 13 and regenerates the clock signal from the low-speed serial signal input from the demultiplexer 12. The deserializer 14b receives the low-speed serial signal divided by the demultiplexer 12 at the timing of the clock signal (reproduced clock) from the CDR 14a, and the clock signal obtained by dividing the clock signal reproduced by the CDR 14a by the divider 14c. At this timing, the low-speed serial signal is deserialized, converted into parallel data, and output. As a result, 8-lane parallel data deserialized by each receiver 14 is input to the bit synchronization circuit 1.

図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 bit synchronization circuit 1 has an input side connected to a plurality of receivers 14 (14 </ b> A to 14 </ b> H) in order to realize the above-described function of establishing bit synchronization, and a clock domain separation unit 21, The detection pattern generation unit 22, the pattern comparison unit 23, the provisional head lane position determination unit 24, the first delay unit 25, the determination unit 26, the second delay unit 27, and the processing unit 28 are configured by the FPGA.

クロックドメイン分離部21は、パターン比較部23の入力側と出力側に接続され、クロック周期調整用のFIFOで構成される。クロックドメイン分離部21は、パターン比較部23が別クロック(4倍速クロック:clk×4)で動作しているため、クロックドメインを分離する機能を有する。   The clock domain separation unit 21 is connected to the input side and the output side of the pattern comparison unit 23, and includes a FIFO for adjusting the clock cycle. The clock domain separation unit 21 has a function of separating the clock domains because the pattern comparison unit 23 operates with another clock (4 × speed clock: clk × 4).

検出パターン発生部22は、パターン比較部23においてレシーバ14からのパラレルデータに基づく被比較用データ(レーン0〜7)と比較するための検出パターンを発生する。検出パターンは、受信装置11が受信する高速シリアル信号と同期を取るため、高速シリアル信号のビット列中に存在する繰り返しパターンに基づく異なるビット配列の複数種類のパターンからなる。   The detection pattern generator 22 generates a detection pattern for comparison with the data to be compared (lanes 0 to 7) based on the parallel data from the receiver 14 in the pattern comparator 23. In order to synchronize with the high-speed serial signal received by the receiving device 11, the detection pattern is composed of a plurality of types of patterns having different bit arrangements based on the repetitive pattern existing in the bit string of the high-speed serial signal.

さらに説明すると、本例の検出パターン発生部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 pattern generation unit 22 of this example generates a plurality of types of detection patterns with a fixed value determined by the standard with the connection partner as a set value. For example, in the PCIe standard mode (Gen1, Gen2, Gen3, Gen4), 160 bits of 5 types (4 types for Gen1 and Gen2, 1 type for Gen3 and Gen4) are set values. Then, the detection pattern generation unit 22 selects a set value according to the mode, and assigns the selected set value to the pattern 0 → pattern 1 → pattern 2 →... → pattern 6 → pattern 7 in order of 1 bit from the MSB side. This is repeated to generate a detection pattern.

具体的に、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 pattern 0, pt1 is pattern 1, pt2 is pattern 3, pt4 is pattern 4, pt5 is pattern 5, pt6 is pattern 6, and pt7 is As in pattern 7, the setting value is assigned to the pattern 0 → pattern 1 → pattern 2 →... → pattern 6 → pattern 7 in order from the MSB (pt0) side of the set value, and this is repeated and eight types of different bit arrangements are repeated. Generate a detection pattern. In FIG. 3, the vertical axis represents the types of detection patterns (patterns 0 to 7) divided by bit interleaving, and the horizontal axis represents the bit position of one frame of each detection pattern.

このように、検出パターン発生部22は、高速シリアル信号のビット列中に存在する繰り返しパターン(PCIeのモードに応じた設定値)の160ビットを8レーンにビットインターリーブし、例えば図3に示すような8種類のパターン(パターン0、パターン1、パターン2、パターン3、パターン4、パターン5、パターン6、パターン7)を検出パターンとして発生する。従って、検出パターンは、設定値の種類毎にパターン0〜7の内容(ビット配列)が異なる。   In this way, the detection pattern generation unit 22 bit-interleaves 160 bits of a repetitive pattern (set value according to the PCIe mode) present in the bit string of the high-speed serial signal into 8 lanes, for example, as shown in FIG. Eight types of patterns (pattern 0, pattern 1, pattern 2, pattern 3, pattern 4, pattern 5, pattern 6, pattern 7) are generated as detection patterns. Therefore, the detection patterns differ in the contents (bit arrangement) of the patterns 0 to 7 for each type of set value.

なお、検出パターンは、接続相手に応じて複数の種類(パターン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 pattern comparison unit 23 is provided corresponding to the number of receivers 14, in other words, the number of lanes of parallel data. In this example, since eight receivers 14A to 14H are provided to output 8-lane parallel data, eight pattern comparison units 23 are provided corresponding to the respective receivers 14A to 14H.

パターン比較部23は、レーン内で発生が想定されるスキュー量を加味したパラレルデータを被比較用データとし、この被比較用データと検出パターンとの比較を複数レーンのレーン毎に行い、その比較結果を出力する。なお、本例では、想定スキュー量を±8ビット(+8:8通り、±0:1通り、−8:8通りの合計17通り)とし、この±8ビットの範囲全てにおけるパラレルデータを被比較用データとしている。   The pattern comparison unit 23 uses the parallel data taking into account the amount of skew that is expected to occur in the lane as the data to be compared, and compares the data to be compared with the detection pattern for each lane of the plurality of lanes. Output the result. In this example, the assumed skew amount is ± 8 bits (+8: 8 ways, ± 0: 1 ways, −8: 8 ways, 17 ways in total), and parallel data in the entire range of ± 8 bits is compared. Data.

パターン比較部23は、対応するレシーバ14からの入力データバス(16ビット幅)を3段のシフトレジスタに入力し、この3段分のデータをつなげ、レーン内のスキュー量(想定スキュー量±8ビット)による違いに対応するため、ビット位置(±8ビット分)をずらした被比較用データを作成する。   The pattern comparison unit 23 inputs the input data bus (16-bit width) from the corresponding receiver 14 to the three-stage shift register, connects the data of the three stages, and the skew amount in the lane (assumed skew amount ± 8) In order to deal with the difference due to (bit), data to be compared is generated by shifting the bit position (± 8 bits).

パターン比較部23は、作成した被比較用データと、図3の全ての検出パターン(パターン0〜7)について比較し、この比較動作を各レーン毎に実施する。   The pattern comparison unit 23 compares the created data for comparison with all the detection patterns (patterns 0 to 7) in FIG. 3 and performs this comparison operation for each lane.

例えば図3のパターン0に着目すると、全ての検出パターン(パターン0〜7)と17通りの被比較用データとを比較する。この検出パターン(パターン0〜7)と被比較用データ(17通り)との比較を複数レーンのレーン毎に行う。これにより、パターン比較部23からは、全体として17通り×8パターン×8レーン=1088個の比較結果が出力される。   For example, paying attention to pattern 0 in FIG. 3, all detection patterns (patterns 0 to 7) are compared with 17 types of data to be compared. The detection pattern (patterns 0 to 7) and the comparison data (17 patterns) are compared for each lane of a plurality of lanes. As a result, the pattern comparison unit 23 outputs 17 patterns × 8 patterns × 8 lanes = 1088 comparison results as a whole.

仮先頭レーン位置決定部24は、各パターン比較部23から入力される比較結果に基づき、レーン順に必要な検出パターンが検出されるか否かを判別し、先頭に必要な検出パターンを検出したレーンを仮先頭レーン位置として決定する。   The temporary head lane position determination unit 24 determines whether a necessary detection pattern is detected in the order of lanes based on the comparison result input from each pattern comparison unit 23, and detects the detection pattern necessary for the head. Is determined as the temporary top lane position.

なお、必要な検出パターンとは、検出パターンのパターン0〜7が順番に揃う組み合わせを意味する。例えばレーン1を先頭と見た場合には、レーン1にはパターン0、次のレーン2にはパターン1、その次のレーン3にはパターン2といったように、レーン順にパターン0〜7が並ぶ組み合わせである。   The necessary detection pattern means a combination in which the detection pattern patterns 0 to 7 are arranged in order. For example, when lane 1 is regarded as the head, pattern 0 to pattern 7 are arranged in lane order, such as pattern 0 for lane 1, pattern 1 for the next lane 2, and pattern 2 for the next lane 3. It is.

仮先頭レーン位置決定部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 position determination unit 24 determines Lane 0 as the temporary head lane position when detecting patterns 0 to 7 starting from Lane 0. Similarly, as shown in FIG. 4B, when patterns 0 to 7 are detected starting from lane 1, lane 1 is determined as the temporary head lane position. As shown in FIG. 4C, when patterns 0 to 7 are detected starting from lane 2, lane 2 is determined as the temporary head lane position. As shown in FIG. 4D, when patterns 0 to 7 are detected with lane 3 at the head, lane 3 is determined as a temporary head lane position. As shown in E of FIG. 4, when patterns 0 to 7 are detected starting from lane 4, lane 4 is determined as a temporary head lane position. As shown in F of FIG. 4, when patterns 0 to 7 are detected starting from lane 5, lane 5 is determined as a temporary head lane position. As shown in G of FIG. 4, when patterns 0 to 7 are detected starting from lane 6, lane 6 is determined as a temporary head lane position. As shown in FIG. 4H, when patterns 0 to 7 are detected starting from lane 7, lane 7 is determined as the temporary head lane position.

なお、図4では、レーン7からレーン0への遷移を分かり易くするため展開した形式で図示したが、実際にはレーン0→レーン1→…→レーン6→レーン7→レーン0といったように繰り返す。   In FIG. 4, the transition from lane 7 to lane 0 is illustrated in an expanded form so as to be easily understood. However, in practice, lane 0 → lane 1 →... → lane 6 → lane 7 → lane 0 is repeated. .

このように、仮先頭レーン位置決定部24は、あるレーンを先頭にパターン0〜7が順番に並ぶ組み合わせ(各レーンを先頭とする組み合わせ:図4のA〜Hの8通り)を検出し、この組み合わせを検出した時点でそのレーンを仮先頭レーン位置として決定し、仮先頭レーン位置データ(レーン内で何ビットずれているかを示す位置ずれ情報を含む)を判定部26に出力する。   In this way, the temporary head lane position determination unit 24 detects a combination in which patterns 0 to 7 are arranged in order starting from a certain lane (a combination starting from each lane: eight patterns A to H in FIG. 4), When this combination is detected, the lane is determined as the temporary head lane position, and temporary head lane position data (including positional shift information indicating how many bits are shifted in the lane) is output to the determination unit 26.

第1の遅延部25は、パターン比較部23からの比較結果を遅延させ、この遅延させた比較結果と、仮先頭レーン位置決定部24から判定部26への仮先頭レーン位置データとの位相を合わせる。   The first delay unit 25 delays the comparison result from the pattern comparison unit 23, and compares the phase of the delayed comparison result with the temporary head lane position data from the temporary head lane position determination unit 24 to the determination unit 26. Match.

ここで、検出パターン長(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 determination unit 26 calculates the lane position and the bit position where the detection pattern is generated, and determines whether or not the detection pattern is continuously detected for the set number of times or more at the calculated lane position and bit position. At this time, since the appearance frequency varies depending on the length of the pattern, the number of times of the pattern is set so that the number of times is large (for example, 10 times) for a short pattern and the number of times for a long pattern (for example, 8 times). It is set as appropriate according to the length.

すなわち、判定部26は、仮先頭レーン位置決定部24からの仮先頭パターン位置データを元に検出パターンの移動先(検出パターンが存在するレーン位置とビット位置の移動先)を予測し、その位置で一致する検出パターンの検出回数(一致回数)をカウントし、レーン順を守りながら、かつ設定回数以上連続して一致する検出をするか、否かにより仮先頭レーン位置のビットの良否を判定する。そして、判定部26は、レーン順を守りながら、かつ設定回数以上連続して仮先頭レーン位置で一致する検出パターンを検出してパターン検出条件を満たすと、仮先頭パターン位置に決定したレーンを確定先頭パターン位置と判定し、確定先頭パターン位置データ(レーン内で何ビットずれているかを示す位置ずれ情報を含む)を判定結果として処理部28に出力する。また、判定部26は、検出パターンを連続して検出したときのビット位置別のカウント値を判定結果として処理部28に出力する。   That is, the determination unit 26 predicts the movement destination of the detection pattern (the lane position where the detection pattern exists and the movement destination of the bit position) based on the temporary head pattern position data from the temporary head lane position determination unit 24, and the position Count the number of detections of matching patterns (number of matches) in, and determine whether the bit at the temporary head lane position is good or not based on whether or not matching is detected continuously while maintaining the lane order. . Then, when the detection unit 26 detects a detection pattern that matches at the temporary head lane position continuously while maintaining the lane order and satisfies the pattern detection condition, the determination unit 26 determines the lane determined as the temporary head pattern position. The head pattern position is determined, and the confirmed head pattern position data (including position shift information indicating how many bits are shifted in the lane) is output to the processing unit 28 as a determination result. Further, the determination unit 26 outputs the count value for each bit position when the detection pattern is continuously detected to the processing unit 28 as a determination result.

第2の遅延部27は、各レシーバ14からの入力データ(レーン0〜7のパラレルデータ)を遅延させ、この遅延させた入力データと、判定部26から処理部28への判定結果との位相を合わせる。   The second delay unit 27 delays input data from each receiver 14 (parallel data in lanes 0 to 7), and the phase between the delayed input data and the determination result from the determination unit 26 to the processing unit 28. Adjust.

処理部28は、判定部26から確定先頭パターン位置データが入力されると、そのビット位置からスキュー量(レーン内及びレーン間のスキュー量:図3の縦方向と横方向のスキュー量)を算出し、算出したスキュー量によりレーン0〜7のパラレルデータのデスキューを行い、デスキューしたパラレルデータをシリアルビット列順(高速シリアル信号のビット列順)に並び替えて出力する。これにより、処理部28からは、高速シリアル信号にビット同期したシリアルデータが出力される。   When the determined head pattern position data is input from the determination unit 26, the processing unit 28 calculates a skew amount (intra-lane and inter-lane skew amounts: vertical and horizontal skew amounts in FIG. 3) from the bit position. Then, the deskew of the parallel data in lanes 0 to 7 is performed according to the calculated skew amount, and the deskewed parallel data is rearranged in the serial bit string order (the bit string order of the high-speed serial signal) and output. As a result, the processing unit 28 outputs serial data that is bit-synchronized with the high-speed serial signal.

次に、上述したビット同期回路1を用いた高速シリアル信号のビット同期方法について説明する。ここでは、高速シリアル信号をデマルチプレクサにて8レーンの低速シリアル信号に変換し、この8レーンの低速シリアル信号を8つのレシーバ14にてパラレルデータ(16ビット)に変換する場合を例にとって説明する。   Next, a bit synchronization method for a high-speed serial signal using the above-described bit synchronization circuit 1 will be described. Here, an example will be described in which a high-speed serial signal is converted into an 8-lane low-speed serial signal by a demultiplexer, and the 8-lane low-speed serial signal is converted into parallel data (16 bits) by eight receivers 14. .

ビット同期回路1では、各レシーバ14からパラレルデータが入力されると、検出パターンと被比較用データとを各パターン比較部23で比較する。例えばレーン0に対応したパターン比較部23では、レシーバ14からのパラレルデータをビットシフトして、±8ビットの17通りの被比較用データを作成し、作成した17通りの被比較用データと検出パターン(パターン0〜7)とを比較し、両者が一致するものを全て見つけ出す。他のレーン1〜7のそれぞれに対応したパターン比較部23でも並行して同様の処理を行う。   In the bit synchronization circuit 1, when parallel data is input from each receiver 14, each pattern comparison unit 23 compares the detection pattern with the data to be compared. For example, in the pattern comparison unit 23 corresponding to lane 0, the parallel data from the receiver 14 is bit-shifted to generate 17 kinds of data to be compared of ± 8 bits, and the 17 kinds of data to be compared and the detected data are detected. The patterns (patterns 0 to 7) are compared, and all of them that match are found. The pattern comparison unit 23 corresponding to each of the other lanes 1 to 7 performs the same processing in parallel.

次に、仮先頭レーン位置決定部24は、パターン比較部23からの8レーンの比較結果を全て取得し、取得した比較結果をもとに、レーン順に検出パターンが検出されるかを判別し、検出パターンの先頭が存在するレーンを仮先頭レーン位置とする。このとき、検出される順番は、レーン単位で見ると、レーン0→レーン1→…→レーン6→レーン7→レーン0→レーン1→…の順であるが、検出パターンの先頭が存在するレーンは起動時によって異なる。このため、検出パターン(パターン0)はレーン0で検出されるとは限らない。また、複数箇所で見つかる場合もある。   Next, the temporary head lane position determination unit 24 acquires all the comparison results of 8 lanes from the pattern comparison unit 23, and determines whether the detection pattern is detected in the lane order based on the acquired comparison results. The lane where the head of the detection pattern exists is set as the temporary head lane position. At this time, the order of detection is, in lane units, lane 0 → lane 1 → ... → lane 6 → lane 7 → lane 0 → lane 1 → ..., but the lane where the head of the detection pattern exists Depends on startup. For this reason, the detection pattern (pattern 0) is not always detected in lane 0. It may also be found at multiple locations.

判定部26は、仮先頭レーン位置決定部24にて仮先頭レーン位置を確定した後、以後のパターン比較部23の比較結果から検出パターンの一致回数をカウントする。ここで、入力データに含まれるパターンの同期ビット数と、クロック毎の8レーン分ビット数(16ビット×8レーン=128ビット)が異なるため、検出すべきパターンは周期性をもって移動する。   After determining the temporary head lane position by the temporary head lane position determination unit 24, the determination unit 26 counts the number of detection pattern matches from the comparison result of the pattern comparison unit 23 thereafter. Here, since the number of synchronization bits of the pattern included in the input data is different from the number of bits for 8 lanes per clock (16 bits × 8 lanes = 128 bits), the pattern to be detected moves with periodicity.

そこで、判定部26は、検出パターンの移動先を予測し、その位置で一致する検出パターンの検出回数をカウントする。そして、レーン順を守りながら、かつ設定回数以上連続して一致する検出をするか否かを判別する。判定部26は、レーン順を守りながら、かつ設定回数以上連続して一致する検出をすると、仮先頭パターン位置に決定したレーンを確定先頭パターン位置と判定し、確定先頭パターン位置データを判定結果として処理部28に出力する。   Therefore, the determination unit 26 predicts the movement destination of the detection pattern and counts the number of detections of the detection pattern that matches at that position. And it is discriminate | determined whether the detection which corresponds continuously over the setting frequency | count is observed, keeping a lane order. If the determination unit 26 detects that the lane order is maintained and matches continuously for a set number of times or more, the determination unit 26 determines that the lane determined as the temporary head pattern position is the determined head pattern position, and uses the determined head pattern position data as the determination result. The data is output to the processing unit 28.

処理部28は、判定部26の判定結果から仮先頭レーン位置を良と判定すると、パターン検出条件を満たしたときのスキュー量を元に、レシーバ14から入力される複数レーンのパラレルデータのデスキューを行い、複数レーンのパラレルデータをシリアルビット列順に並び替えて出力する。また、処理部28は、仮先頭レーン位置を不良と判定すると、仮先頭レーン位置決定部24、判定部26の仮先頭レーン位置をクリアする信号を出力する。このクリアにより、次のレーン位置で再度周期性のチェックを行い、判定部26による仮先頭レーン位置の判定からやり直す。   If the processing unit 28 determines that the temporary leading lane position is good from the determination result of the determination unit 26, the processing unit 28 performs deskewing of parallel data of a plurality of lanes input from the receiver 14 based on the skew amount when the pattern detection condition is satisfied. The parallel data of a plurality of lanes are rearranged in the order of serial bit strings and output. When the processing unit 28 determines that the temporary head lane position is defective, the processing unit 28 outputs a signal for clearing the temporary head lane position of the temporary head lane position determination unit 24 and the determination unit 26. By this clearing, the periodicity is checked again at the next lane position, and the determination unit 26 restarts the determination of the temporary head lane position.

このように、本実施の形態のビット同期回路1によれば、高速シリアル信号をデマルチプレクサ12にて複数レーンの低速シリアル信号に分割し、高速シリアルビット列中に存在する繰り返しパターンを検出パターンとして使用し、レシーバ(FPGAトランシーバ)14間で発生するビットスキューの推定とデスキューを行い、元のシリアルビット列を復元してビット同期を確立している。これにより、レシーバ(FPGAトランシーバ)に直接接続できない高速シリアル信号であっても、従来のようなユーザによる配線長やクロック位相の調整作業が不要となり、ユーザに一切負担をかけることなく、高速シリアル信号を複数レーンの低速シリアル信号に分割してデシリアライズした際に生じるレーン内やレーン間のスキューを吸収してビット同期を確立することができる。また、ビットスキューの推定を全ビット同時に行うことにより、デスキューとビット同期の確立を高速に行うことができる。   As described above, according to the bit synchronization circuit 1 of the present embodiment, the high-speed serial signal is divided into the low-speed serial signals of a plurality of lanes by the demultiplexer 12, and the repetitive pattern existing in the high-speed serial bit string is used as the detection pattern. The bit skew generated between the receivers (FPGA transceivers) 14 is estimated and deskewed, and the original serial bit string is restored to establish bit synchronization. As a result, even for high-speed serial signals that cannot be directly connected to the receiver (FPGA transceiver), the conventional adjustment of the wiring length and clock phase by the user is unnecessary, and the high-speed serial signal is not burdened to the user at all. Bit synchronization can be established by absorbing the skew in the lanes or between lanes that occurs when the signal is divided into a plurality of low-speed serial signals and deserialized. In addition, by performing bit skew estimation simultaneously for all bits, it is possible to establish deskew and bit synchronization at high speed.

以上、本発明に係るビット同期回路及びビット同期方法の最良の形態について説明したが、この形態による記述及び図面により本発明が限定されることはない。すなわち、この形態に基づいて当業者等によりなされる他の形態、実施例及び運用技術などはすべて本発明の範疇に含まれることは勿論である。   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 bit synchronization circuit 11 receiver 12 demultiplexer 13 clock generator 14 (14A to 14H) receiver 14a CDR
14b Deserializer 14c Frequency divider 21 Clock domain separation unit 22 Detection pattern generation unit 23 Pattern comparison unit 24 Temporary head lane position determination unit 25 First delay unit 26 Judgment unit 27 Second delay unit 28 Processing unit

Claims (2)

高速シリアル信号を複数レーンの低速シリアル信号に分割するデマルチプレクサ(12)と、該デマルチプレクサにて分割された複数レーンの低速シリアル信号をパラレルデータに変換する複数のレシーバ(14)とを含む受信装置(11)に用いられるビット同期回路(1)であって、
前記高速シリアル信号のビット列中に存在する複数の繰り返しパターンからなる検出パターンと、想定スキュー量のビットを先頭とする全ての前記複数レーンのパラレルデータとをレーン毎に比較するパターン比較部(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.
JP2015240233A 2015-12-09 2015-12-09 Bit synchronization circuit and bit synchronization method Active JP6332701B2 (en)

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)

* Cited by examiner, † Cited by third party
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
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