JP6871509B2 - 送信回路及び集積回路 - Google Patents

送信回路及び集積回路 Download PDF

Info

Publication number
JP6871509B2
JP6871509B2 JP2017033300A JP2017033300A JP6871509B2 JP 6871509 B2 JP6871509 B2 JP 6871509B2 JP 2017033300 A JP2017033300 A JP 2017033300A JP 2017033300 A JP2017033300 A JP 2017033300A JP 6871509 B2 JP6871509 B2 JP 6871509B2
Authority
JP
Japan
Prior art keywords
data
circuit
clock signal
phase
transmission
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.)
Active
Application number
JP2017033300A
Other languages
English (en)
Other versions
JP2018139354A (ja
Inventor
太郎 盛合
太郎 盛合
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.)
Socionext Inc
Original Assignee
Socionext Inc
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 Socionext Inc filed Critical Socionext Inc
Priority to JP2017033300A priority Critical patent/JP6871509B2/ja
Priority to US15/899,556 priority patent/US10374615B2/en
Publication of JP2018139354A publication Critical patent/JP2018139354A/ja
Application granted granted Critical
Publication of JP6871509B2 publication Critical patent/JP6871509B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
    • H03L7/08Details of the phase-locked loop
    • H03L7/085Details of the phase-locked loop concerning mainly the frequency- or phase-detection arrangement including the filtering or amplification of its output signal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
    • H03L7/08Details of the phase-locked loop
    • H03L7/085Details of the phase-locked loop concerning mainly the frequency- or phase-detection arrangement including the filtering or amplification of its output signal
    • H03L7/087Details of the phase-locked loop concerning mainly the frequency- or phase-detection arrangement including the filtering or amplification of its output signal using at least two phase detectors or a frequency and phase detector in the loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/04Distributors combined with modulators or demodulators
    • H04J3/047Distributors with transistors or integrated circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0685Clock or time synchronisation in a node; Intranode synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0008Synchronisation information channels, e.g. clock distribution lines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0091Transmitter details
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/10Arrangements for initial synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0038System on Chip

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Tests Of Electronic Circuits (AREA)

Description

本発明は、送信回路及び集積回路に関する。
データ本体と、誤りを検出するための検出情報を含むデータブロックを使用し、基準クロック信号を用いて転送されるデータブロックを取り込む位相キャリブレーション回路が知られている(特許文献1参照)。受信クロック生成部は、基準クロック信号に対して位相をずらした第1のクロック信号と、第1のクロック信号に対して位相を早めた第2のクロック信号と、第1のクロック信号に対して位相を遅らせた第3のクロック信号とを少なくとも含む複数のクロック信号を生成する。判定部は、データブロックを、複数のクロック信号に応じて取り込み、検出情報を用いてリードエラーが発生したか否かを判定する。そして、判定部は、第1のクロック信号に応じて取り込んだデータブロックを判定した第1判定結果、第2のクロック信号に応じて取り込んだデータブロックを判定した第2判定結果、及び第3のクロック信号に応じて取り込んだデータブロックを判定した第3判定結果を少なくとも含む複数の判定結果を出力する。位相調整部は、複数の判定結果に応じて、第1のクロック信号の位相を調整することを受信クロック生成部へ指示する。
また、データ及びクロックを受信装置へ送信する送信装置が知られている(特許文献2参照)。データ送信部は、データを受信装置へ送信する。クロック送信部は、クロックを受信装置へ送信する。受信部は、受信装置からデータを受信する。制御部は、データ送信部によるデータ送信及びクロック送信部によるクロック送信を制御する。制御部は、通常データ、受信装置におけるデータ受信状態またはクロック受信状態を検出するための校正データ、この校正データの送信の開始を受信装置へ指示する校正開始指示データ、及び、受信装置が校正データをサンプリングして得た校正サンプルデータを送出することを受信装置へ指示する送信指示データ、それぞれを所定のタイミングでデータ送信部から受信装置へ送信させる。制御部は、受信装置から送出された校正サンプルデータを受信部が受信すると、この受信した校正サンプルデータに基づいて、データ送信部により送信されるデータとクロック送信部により送信されるクロックとの間の位相の調整、データ送信部により送信されるデータの振幅の調整、データ送信部により送信されるデータのデューティの調整、及び、クロック送信部により送信されるクロックのデューティの調整、のうち何れか1以上の制御を行う。
特開2011−90361号公報 特開2011−91745号公報
クロック信号が遅延すると、データに対してクロック信号の位相がずれてしまう。位相がずれたデータが送信されると、受信エラーの発生率が高くなる。特に、クロック信号の周波数が高くなると、受信エラーの発生率が高くなる。
1つの側面では、本発明の目的は、データに対するクロック信号の位相を調整することができる送信回路及び集積回路を提供することである。
送信回路は、第1のクロック信号と、前記第1のクロック信号より周波数が低い第2のクロック信号を生成するクロック生成回路と、前記第2のクロック信号に基づいて入力データを、前記入力データよりビット幅が狭い中間データに変換する第1の変換回路と、前記第1のクロック信号に基づいて前記中間データを、前記中間データよりビット幅が狭い出力データに変換する第2の変換回路と、前記出力データのデータ列を順次キャプチャするキャプチャ回路と、前記キャプチャしたデータ列の解析を行う解析回路と、前記解析の結果に基づいて前記第2のクロック信号の位相を調整する位相調整回路とを有し、前記解析回路は、前記キャプチャしたデータ列のエッジ数を検出し、前記位相調整回路は、前記入力データとしてテストデータが入力された場合、前記検出されたエッジ数が、前記テストデータに応じて定まる2以上の整数である閾値以下か、前記閾値より大きいかに応じて、前記第2のクロック信号の位相を調整する。
また、送信回路は、第1のクロック信号と、前記第1のクロック信号より周波数が低い第2のクロック信号を生成するクロック生成回路と、前記第2のクロック信号に基づいて入力データを、前記入力データよりビット幅が狭い中間データに変換する第1の変換回路と、前記第1のクロック信号に基づいて前記中間データを、前記中間データよりビット幅が狭い出力データに変換する第2の変換回路と、前記出力データのデータ列を順次キャプチャするキャプチャ回路と、前記キャプチャしたデータ列の解析を行う解析回路と、前記解析の結果に基づいて前記第2のクロック信号の位相を調整する位相調整回路とを有し、前記解析回路は、前記キャプチャしたデータ列のパルス幅を検出し、前記位相調整回路は、前記検出されたパルス幅に基づいて前記第2のクロック信号の位相を調整する。
1つの側面では、第1の変換回路における第2のクロック信号及び入力データ間、並びに第2の変換回路における第1のクロック信号及び中間データ間のタイミング関係を最適化でき、出力データにおけるビットエラーの発生を防止することができる。
図1は、本実施形態による送信回路の構成例を示す図である。 図2(A)及び(B)は、テストデータ生成回路の構成例を示す図である。 図3は、マルチプレクサの動作例を示す図である。 図4(A)及び(B)は、マルチプレクサの動作例を示す図である。 図5(A)及び(B)は、D型フリップフロップ回路の動作例を示す図である。 図6は、シフトレジスタの構成例を示す図である。 図7は、エッジカウンタの構成例を示す図である。 図8は、制御ブロックの制御方法を示すフローチャートである。 図9は、制御ブロックの処理を説明するための図である。 図10は、制御ブロックが第1の位相コード又は第2の位相コードを選択する方法を示すフローチャートである。 図11(A)〜(C)は、パルス幅検出回路を説明するための図である。 図12は、RC時定数に対するノードの電圧レベルの例を示すグラフである。 図13は、集積回路及び受信回路の構成例を示す図である。
図1は、本実施形態による送信回路の構成例を示す図である。送信回路は、32ビットパラレル送信データD1[31:0]をシリアル送信データD8に変換し、シリアル送信データD8を送信する。
電圧制御発振器(VCO)124は、第1のクロック信号CLK1を生成する。第1のクロック信号CLK1は、例えば28GHzである。2分周器125は、第1のクロック信号CLK1を2分周して第2のクロック信号CLK2を生成する。第2のクロック信号CLK2は、例えば14GHzであり、4相のクロック信号である。第2のクロック信号CLK2の周波数は、第1のクロック信号CLK1の周波数より低く、第1のクロック信号CLK1の周波数の1/2である。位相調整回路126は、例えば位相補間回路であり、位相コードPICに応じて、第2のクロック信号CLK2を基に第2のクロック信号CLK3の位相を調整する。第2のクロック信号CLK3は、4相のクロック信号であり、0°のクロック信号CLK3(0°)と90°のクロック信号CLK3(90°)と180°のクロック信号CLK3(180°)と270°のクロック信号CLK3(270°)を有する。第2のクロック信号CLK3の周波数は、第2のクロック信号CLK2の周波数と同じである。電圧制御発振器124及び2分周器125は、第1のクロック信号CLK1及び第2のクロック信号CLK2を生成するクロック生成回路である。
マルチプレクサ101は、第2のクロック信号CLK3(0°)及びCLK3(90°)に同期して、32ビットパラレル送信データD1[31:0]を多重化して4ビットパラレル送信データD3[0]〜D3[3]を生成する。すなわち、マルチプレクサ101は、第2のクロック信号CLK3(0°)及びCLK3(90°)に基づいて、32ビットパラレル送信データD1[31:0]を4ビットパラレル送信データD3[0]〜D3[3]に変換する。4ビットパラレル送信データD3[0]〜D3[3]は、32ビットパラレル送信データD1[31:0]よりビット幅が狭い。
テストデータ生成回路103は、固定値「1」を示すハイレベルの1ビットテストデータTD[0]を生成する。テストデータ生成回路104は、固定値「0」を示すローレベルの1ビットテストデータTD[1]を生成する。テストデータ生成回路105は、固定値「0」を示すローレベルの1ビットテストデータTD[2]を生成する。テストデータ生成回路106は、固定値「1」を示すハイレベルの1ビットテストデータTD[3]を生成する。
図2(A)は、図1のテストデータ生成回路103の構成例を示す図である。テストデータ生成回路103は、pチャネル電界効果トランジスタ201を有し、値「1」を示すハイレベルの1ビットテストデータTD[0]を生成する。pチャネル電界効果トランジスタ201は、ソースが電源電位VDDのノードに接続され、ゲートがグランド電位のノードに接続され、ドレインが1ビットテストデータTD[0]のノードに接続される。pチャネル電界効果トランジスタ201は、ゲートがグランド電位であるので、オンする。その結果、1ビットテストデータTD[0]は、値「1」を示すハイレベルに固定される。テストデータ生成回路106は、テストデータ生成回路103と同様の構成を有し、値「1」を示すハイレベルの1ビットテストデータTD[3]を生成する。
図2(B)は、図1のテストデータ生成回路104の構成例を示す図である。テストデータ生成回路104は、nチャネル電界効果トランジスタ204を有し、値「0」を示すローレベルの1ビットテストデータTD[1]を生成する。nチャネル電界効果トランジスタ204は、ソースがグランド電位のノードに接続され、ゲートが電源電位VDDのノードに接続され、ドレインが1ビットテストデータTD[1]のノードに接続される。nチャネル電界効果トランジスタ204は、ゲートが電源電位VDDであるので、オンする。その結果、1ビットテストデータTD[1]は、値「0」を示すローレベルに固定される。テストデータ生成回路105は、テストデータ生成回路104と同様の構成を有し、値「0」を示すローレベルの1ビットテストデータTD[2]を生成する。
図1において、制御ブロック138は、位相調整モード又は送信モードを示す選択信号SELをセレクタ107〜110に出力する。セレクタ107は、選択信号SELが位相調整モードを示す場合には、1ビットテストデータTD[0]を選択し、選択信号SELが送信モードを示す場合には、1ビット送信データD3[0]を選択し、その選択したデータを1ビット送信データD4[0]として出力する。
セレクタ108は、選択信号SELが位相調整モードを示す場合には、1ビットテストデータTD[1]を選択し、選択信号SELが送信モードを示す場合には、1ビット送信データD3[1]を選択し、その選択したデータを1ビット送信データD4[1]として出力する。
セレクタ109は、選択信号SELが位相調整モードを示す場合には、1ビットテストデータTD[2]を選択し、選択信号SELが送信モードを示す場合には、1ビット送信データD3[2]を選択し、その選択したデータを1ビット送信データD4[2]として出力する。
セレクタ110は、選択信号SELが位相調整モードを示す場合には、1ビットテストデータTD[3]を選択し、選択信号SELが送信モードを示す場合には、1ビット送信データD3[3]を選択し、その選択したデータを1ビット送信データD4[3]として出力する。
すなわち、セレクタ107〜110は、選択信号SELが位相調整モードを示す場合には、4ビットテストデータTD[0]〜TD[3]を選択し、選択信号SELが送信モードを示す場合には、4ビット送信データD3[0]〜D3[3]を選択し、その選択したデータを4ビット送信データD4[0]〜D4[3]として出力する。
まず、送信回路は、位相調整モードで、位相調整回路126の位相調整量を決定する。その後、送信回路は、送信モードで、位相調整量を固定し、32ビットパラレル送信データD1[31:0]をシリアル送信データD8に変換する。
マルチプレクサ111は、第2のクロック信号CLK3(0°)及びCLK3(90°)に同期して、4ビットパラレル送信データD4[0]〜D4[3]を多重化して2ビット送信データD5[0]及びD5[1]を生成する。マルチプレクサ111は、第1の変換回路であり、第2のクロック信号CLK3に基づいて、4ビットパラレル送信データ(入力データ)D4[0]〜D4[3]を2ビットパラレル送信データ(中間データ)D5[0]及びD5[1]に変換する。2ビットパラレル送信データD5[0]及びD5[1]は、4ビットパラレル送信データD4[0]〜D4[3]よりビット幅が狭い。
図3は、図1のマルチプレクサ111の動作例を示す図であり、位相調整モードの動作例を示す。セレクタ107〜110は、テストデータTD[0]〜TD[3]を選択する。送信データD4[0]は、値「1」を示すハイレベル固定のテストデータTD[0]と同じである。送信データD4[1]は、値「0」を示すローレベル固定のテストデータTD[1]と同じである。送信データD4[2]は、値「0」を示すローレベル固定のテストデータTD[2]と同じである。送信データD4[3]は、値「1」を示すハイレベル固定のテストデータTD[3]と同じである。
第2のクロック信号CLK3は、例えば14GHzである。図1のシリアル送信データD8の1ビット期間は1UI(ユニットインターバル)であり、第2のクロック信号CLK3の1周期は4UIである。
マルチプレクサ111は、第2のクロック信号CLK3(0°)がハイレベルの期間では、送信データD4[0]を送信データD5[0]として出力し、第2のクロック信号CLK3(0°)がローレベルの期間では、送信データD4[1]を送信データD5[0]として出力する。送信データD4[0]がハイレベル固定であり、送信データD4[1]がローレベル固定であるので、送信データD5[0]は、「101010」のパターンを繰り返す。
また、マルチプレクサ111は、第2のクロック信号CLK3(90°)がハイレベルの期間では、送信データD4[2]を送信データD5[1]として出力し、第2のクロック信号CLK3(90°)がローレベルの期間では、送信データD4[3]を送信データD5[1]として出力する。送信データD4[2]がローレベル固定であり、送信データD4[3]がハイレベル固定であるので、送信データD5[1]は、「101010」のパターンを繰り返す。
図1において、マルチプレクサ113は、第1のクロック信号CLK1に同期して、2ビットパラレル送信データD5[0]及びD5[1]を多重化してシリアル送信データD6を生成する。すなわち、マルチプレクサ113は、第2の変換回路であり、第1のクロック信号CLK1に基づいて、2ビットパラレル送信データ(中間データ)D5[0]及びD5[1]をシリアル送信データ(出力データ)D6に変換する。シリアル送信データD6は、2ビットパラレル送信データD5[0]及びD5[1]よりビット幅が狭い。
プリドライバ回路114は、シリアル送信データD6を入力し、シリアル送信データD7を出力する。ドライバ回路115は、シリアル送信データD7を入力し、シリアル送信データD8を出力する。
図4(A)は、図1のマルチプレクサ113の動作例を示す図であり、位相調整モードの動作例を示す。セレクタ107〜110は、テストデータTD[0]〜TD[3]を選択する。送信データD5[0]は、図3の送信データD5[0]と同じであり、「101010」のパターンを繰り返す。送信データD5[1]は、図3の送信データD5[1]と同じであり、「101010」のパターンを繰り返す。
第1のクロック信号CLK1は、例えば28GHzである。シリアル送信データD6の1ビット期間は1UIであり、第1のクロック信号CLK1の1周期は2UIである。
マルチプレクサ113は、第1のクロック信号CLK1がハイレベルの期間では、送信データD5[0]を送信データD6として出力し、第1のクロック信号CLK1がローレベルの期間では、送信データD5[1]を送信データD6として出力する。送信データD5[0]が「1010」のパターンの繰り返しであり、送信データD5[1]が「1010」のパターンの繰り返しであるので、送信データD6は、「11001100」のパターンを繰り返す。送信データD6のパルス幅は、すべてのサイクルで2UIの一定である。送信データD6の4UIでは、エッジ数が1個である。
図4(A)では、送信データD5[0],D5[1]の位相が、第1のクロック信号CLK1の位相に一致している。次に、図4(B)を参照しながら、送信データD5[0],D5[1]の位相が第1のクロック信号CLK1の位相に対してずれている場合を説明する。
図4(B)は、送信データD5[0],D5[1]の位相が第1のクロック信号CLK1の位相に対してずれている場合のマルチプレクサ113の動作例を示す図である。図4(B)の送信データD5[0]及びD5[1]は、図4(A)の送信データD5[0]及びD5[1]に対して位相がずれている。マルチプレクサ113は、第1のクロック信号CLK1がハイレベルの期間では、送信データD5[0]を送信データD6として出力し、第1のクロック信号CLK1がローレベルの期間では、送信データD5[1]を送信データD6として出力する。送信データD5[0]は、「1010」のパターンの繰り返しである。送信データD5[1]は、「1010」のパターンの繰り返しである。しかし、送信データD6は、パルス幅が1UIのサイクルと、パルス幅が0.5UIのサイクルとを有する。送信データD6の4UIでは、エッジ数が5個である。送信データD6は、1UIの期間の真中付近でデータ遷移するサイクルがあるので、ビットエラーの発生率が高くなる。
以上のように、図4(A)の送信データD6は、送信データD5[0],D5[1]と第1のクロック信号CLK1との位相関係が正常な場合のデータである。これに対し、図4(B)の送信データD6は、送信データD5[0],D5[1]と第1のクロック信号CLK1との位相関係が異常な場合のデータである。
すなわち、図4(A)の送信データD6は、位相調整回路126が調整する第2のクロック信号CLK3の位相が正常である場合のデータである。これに対し、図4(B)の送信データD6は、位相調整回路126が調整する第2のクロック信号CLK3の位相が異常である場合のデータである。したがって、図4(B)の異常な送信データD6が得られた場合には、位相調整回路126が第2のクロック信号CLK3の位相を調整することにより、図4(A)の正常な送信データD6を得ることができる。以下、その詳細な説明をする。
図1において、4分周器128は、図5(A)に示すように、第1のクロック信号CLK1を4分周し、0°のクロック信号DIV4_0及び90°のクロック信号DIV4_90を生成する。クロック信号DIV4_0及びDIV4_90は、例えば7GHzである。クロック信号DIV4_0及びDIV4_90の周波数は、第1のクロック信号CLK1の周波数より低く、第1のクロック信号CLK1の周波数の1/4である。クロック信号DIV4_0及びDIV4_90の間の位相差は2UIである。
インバータ131は、第1のクロック信号CLK1を論理反転したクロック信号CLK5を生成する。4分周器132は、クロック信号CLK5を4分周し、図5(A)に示すように、45°のクロック信号DIV4_45及び135°のクロック信号DIV4_135を生成する。クロック信号DIV4_45及びDIV4_135は、例えば7GHzである。クロック信号DIV4_45及びDIV4_135の周波数は、第1のクロック信号CLK1の周波数より低く、第1のクロック信号CLK1の周波数の1/4である。クロック信号DIV4_45及びDIV4_135の間の位相差は2UIである。クロック信号DIV4_0及びDIV4_45の間の位相差は1UIである。
遅延回路129は、クロック信号DIV4_0を遅延し、22.5°のクロック信号DIV4_0_2を生成する。遅延回路130は、クロック信号DIV4_90を遅延し、112.5°のクロック信号DIV4_90_2を生成する。遅延回路133は、クロック信号DIV4_45を遅延し、67.5°のクロック信号DIV4_45_2を生成する。遅延回路134は、クロック信号DIV4_135を遅延し、157.5°のクロック信号DIV4_135_2を生成する。遅延回路129,130,133,134の遅延時間は、0.5UIであり、1UIより短い。これらの8個のクロック信号DIV4_0〜DIV4_135_2は、図5(A)に示すように、8相クロック信号である。
図5(A)は、図1のD型フリップフロップ回路116〜123の動作例を示す図であり、図4(A)の正常の場合の動作例を示す。送信データD7は、図4(A)の正常な送信データD6と同じ論理値である。
D型フリップフロップ回路116は、クロック信号DIV4_0の立ち上がりエッジに同期して送信データD7をラッチし、そのラッチしたデータをデータOD0として出力する。データOD0は、値「1」である。
D型フリップフロップ回路117は、クロック信号DIV4_0_2の立ち上がりエッジに同期して送信データD7をラッチし、そのラッチしたデータをデータOD0_2として出力する。データOD0_2は、値「1」である。
D型フリップフロップ回路118は、クロック信号DIV4_45の立ち上がりエッジに同期して送信データD7をラッチし、そのラッチしたデータをデータOD1として出力する。データOD1は、値「1」である。
D型フリップフロップ回路119は、クロック信号DIV4_45_2の立ち上がりエッジに同期して送信データD7をラッチし、そのラッチしたデータをデータOD1_2として出力する。データOD1_2は、値「1」である。
D型フリップフロップ回路120は、クロック信号DIV4_90の立ち上がりエッジに同期して送信データD7をラッチし、そのラッチしたデータをデータOD2として出力する。データOD2は、値「0」である。
D型フリップフロップ回路121は、クロック信号DIV4_90_2の立ち上がりエッジに同期して送信データD7をラッチし、そのラッチしたデータをデータOD2_2として出力する。データOD2_2は、値「0」である。
D型フリップフロップ回路122は、クロック信号DIV4_135の立ち上がりエッジに同期して送信データD7をラッチし、そのラッチしたデータをデータOD3として出力する。データOD3は、値「0」である。
D型フリップフロップ回路123は、クロック信号DIV4_135_2の立ち上がりエッジに同期して送信データD7をラッチし、そのラッチしたデータをデータOD3_2として出力する。データOD3_2は、値「0」である。
以上のように、D型フリップフロップ回路116〜123は、送信データD7のデータ列を順次キャプチャするキャプチャ回路である。送信データD7の4UIのデータ列は、「1100」である。D型フリップフロップ回路116〜123は、送信データD7のデータ列の4UIに異なる8個のタイミングでキャプチャする。すなわち、D型フリップフロップ回路116〜123は、送信データD7のデータ列の1UIに異なる2個のタイミングでキャプチャする。
図5(B)は、図4(B)の異常の場合のD型フリップフロップ回路116〜123の動作例を示す図である。送信データD7は、図4(B)の異常な送信データD6と同じ論理値である。
D型フリップフロップ回路116は、クロック信号DIV4_0の立ち上がりエッジに同期して送信データD7をラッチし、そのラッチしたデータをデータOD0として出力する。データOD0は、値「1」である。
D型フリップフロップ回路117は、クロック信号DIV4_0_2の立ち上がりエッジに同期して送信データD7をラッチし、そのラッチしたデータをデータOD0_2として出力する。データOD0_2は、値「0」である。
D型フリップフロップ回路118は、クロック信号DIV4_45の立ち上がりエッジに同期して送信データD7をラッチし、そのラッチしたデータをデータOD1として出力する。データOD1は、値「1」である。
D型フリップフロップ回路119は、クロック信号DIV4_45_2の立ち上がりエッジに同期して送信データD7をラッチし、そのラッチしたデータをデータOD1_2として出力する。データOD1_2は、値「1」である。
D型フリップフロップ回路120は、クロック信号DIV4_90の立ち上がりエッジに同期して送信データD7をラッチし、そのラッチしたデータをデータOD2として出力する。データOD2は、値「0」である。
D型フリップフロップ回路121は、クロック信号DIV4_90_2の立ち上がりエッジに同期して送信データD7をラッチし、そのラッチしたデータをデータOD2_2として出力する。データOD2_2は、値「1」である。
D型フリップフロップ回路122は、クロック信号DIV4_135の立ち上がりエッジに同期して送信データD7をラッチし、そのラッチしたデータをデータOD3として出力する。データOD3は、値「0」である。
D型フリップフロップ回路123は、クロック信号DIV4_135_2の立ち上がりエッジに同期して送信データD7をラッチし、そのラッチしたデータをデータOD3_2として出力する。データOD3_2は、値「0」である。
図1において、分周器135は、第1のクロック信号CLK1を分周したクロック信号CLK6をシフトレジスタ136に出力する。シフトレジスタ136は、クロック信号CLK6に同期して、データOD0,OD0_2,OD1,OD1_2,OD2,OD2_2,OD3,OD3_2の列をラッチしてシフトすることにより、データ列D9を出力する。データ列D9は、データOD0,OD0_2,OD1,OD1_2,OD2,OD2_2,OD3,OD3_2の列である。エッジカウンタ137は、データ列D9のエッジ数CNTを検出する。制御ブロック138は、エッジ数CNTを基に、位相コードPICを決定する。位相調整回路126は、位相コードPICを基に、第2のクロック信号CLK3の位相を調整する。
図6は、図1のシフトレジスタ136の構成例を示す図である。シフトレジスタ136は、8個のセレクタ601〜608及び9個のD型フリップフロップ回路611〜619を有する。8個のセレクタ601〜608は、それぞれ、8個のデータOD3_2,OD3,OD2_2,OD2,OD1_2,OD1,OD0_2,OD0を入力する。
制御ブロック138は、位相調整モードでは、ハイレベルのリセット信号RSTを出力する。すると、D型フリップフロップ回路611〜619の記憶値は、0にリセットされる。次に、制御ブロック138は、ローレベルのリセット信号RSTを出力し、D型フリップフロップ回路611〜619のリセット状態を解除する。
次に、制御ブロック138は、ローレベルのイネーブル信号ENをD型フリップフロップ回路619に出力する。すると、D型フリップフロップ回路619は、クロック信号CLK6に同期して、ローレベルのイネーブル信号ENをラッチし、ローレベルのイネーブル信号EN1をセレクタ601〜608に出力する。すると、セレクタ601〜608は、それぞれ、データOD3_2,OD3,OD2_2,OD2,OD1_2,OD1,OD0_2,OD0をD型フリップフロップ回路611〜618の入力端子Dに出力する。D型フリップフロップ回路611〜618は、それぞれ、クロック信号CLK6に同期して、データOD3_2,OD3,OD2_2,OD2,OD1_2,OD1,OD0_2,OD0をラッチし、出力端子QからデータOD3_2,OD3,OD2_2,OD2,OD1_2,OD1,OD0_2,OD0を出力する。
次に、制御ブロック138は、ハイレベルのイネーブル信号ENをD型フリップフロップ回路619に出力する。すると、D型フリップフロップ回路619は、クロック信号CLK6に同期して、ハイレベルのイネーブル信号ENをラッチし、ハイレベルのイネーブル信号EN1をセレクタ601〜608に出力する。すると、セレクタ601は、値「0」をD型フリップフロップ回路611の入力端子Dに出力する。D型フリップフロップ回路611は、クロック信号CLK6に同期して、値「0」をラッチし、出力端子Qから値「0」を出力する。
セレクタ602〜608は、それぞれ、D型フリップフロップ回路611〜617の出力端子Qから出力されるデータOD3_2,OD3,OD2_2,OD2,OD1_2,OD1,OD0_2をD型フリップフロップ回路612〜618の入力端子Dに出力する。D型フリップフロップ回路612〜618は、それぞれ、クロック信号CLK6に同期して、データOD3_2,OD3,OD2_2,OD2,OD1_2,OD1,OD0_2をラッチし、出力端子QからデータOD3_2,OD3,OD2_2,OD2,OD1_2,OD1,OD0_2を出力する。
次に、D型フリップフロップ回路613〜618は、それぞれ、クロック信号CLK6に同期して、データOD3_2,OD3,OD2_2,OD2,OD1_2,OD1をラッチして出力する。その後、D型フリップフロップ回路611〜618は、クロック信号CLK6に同期して、ラッチ及び出力を繰り返す。その結果、最終段のフリップフロップ回路618は、データ列D9として、データOD0,OD0_2,OD1,OD1_2,OD2,OD2_2,OD3,OD3_2の列を出力する。図5(A)の場合、データ列D9は、「11110000」になる。図5(B)の場合、データ列D9は、「10110100」になる。
図7は、図1のエッジカウンタ137の構成例を示す図である。エッジカウンタ137は、エッジ検出器701及び3ビットカウンタ702を有する。エッジ検出器701は、遅延回路703及び排他的論理和回路704を有する。遅延回路703は、データ列D9を1データ分遅延したデータ列D10を出力する。排他的論理和回路704は、データ列D9及びD10の排他的論理和信号をエッジ信号D11として出力する。具体的には、排他的論理和回路704は、データ列D9及びD10の各データが同じ場合には、「0」のエッジ信号D11を出力し、データ列D9及びD10の各データが異なる場合には、「1」のエッジ信号D11を出力する。すなわち、エッジ検出器701は、データ列D9のうちのエッジである部分では、「1」のエッジ信号D11を出力し、データ列D9のうちのエッジでない部分では、「0」のエッジ信号D11を出力する。
3ビットカウンタ702は、D型フリップフロップ回路705〜707を有する。D型フリップフロップ回路705は、クロック端子がエッジ信号D11を入力し、入力端子Qが反転出力端子/Qに接続される。D型フリップフロップ回路706は、クロック端子がD型フリップフロップ回路705の出力端子Qに接続され、入力端子Qが反転出力端子/Qに接続される。D型フリップフロップ回路707は、クロック端子がD型フリップフロップ回路706の出力端子Qに接続され、入力端子Qが反転出力端子/Qに接続される。D型フリップフロップ回路705〜707の出力端子Qは、3ビットカウント値として、エッジ数CNT[0]〜CNT[2]を出力する。エッジ数CNT[0]〜CNT[2]は、図1のエッジ数CNTに対応する。
制御ブロック138は、ハイレベルのリセット信号RSTを出力する。すると、D型フリップフロップ回路705〜707の記憶値は、0にリセットされる。次に、制御ブロック138は、ローレベルのリセット信号RSTを出力する。すると、D型フリップフロップ回路705〜707のリセット状態は解除される。D型フリップフロップ回路705〜707は、それぞれ、出力端子Qから「0」を出力し、反転出力端子/Qから「1」を出力する。
1回目のエッジでは、エッジ信号D11が「1」から「0」に変化し、D型フリップフロップ回路705は、入力端子Dの「1」をラッチし、「1」のエッジ数CNT[0]を出力する。D型フリップフロップ回路706は、「0」のエッジ数CNT[1]を出力する。D型フリップフロップ回路707は、「0」のエッジ数CNT[2]を出力する。
2回目のエッジでは、エッジ信号D11が「1」から「0」に変化し、D型フリップフロップ回路705は、入力端子Dの「0」をラッチし、「0」のエッジ数CNT[0]を出力する。D型フリップフロップ回路706は、「1」のエッジ数CNT[1]を出力する。D型フリップフロップ回路707は、「0」のエッジ数CNT[2]を出力する。
同様に、3回目のエッジでは、エッジ数CNT[0]及びCNT[1]は「1」になり、エッジ数CNT[2]は「0」になる。エッジ数CNT[0]〜CNT[2]は、データ列D9のエッジの3ビットカウント値を示す。図5(A)に示すように、データ列D9が「11110000」である場合、エッジ数CNT[0]〜CNT[2]は、1になる。また、図5(B)に示すように、データ列D9が「10110100」である場合、エッジ数CNT[0]〜CNT[2]は、5になる。
図8は、図1の制御ブロック138の制御方法を示すフローチャートである。ステップS801では、制御ブロック138は、位相コードPICを0にする。位相調整回路126は、位相コードPICに応じて、第2のクロック信号CLK3の位相を調整する。
次に、ステップS802では、制御ブロック138は、送信回路の状態安定後、リセット信号RSTにより、シフトレジスタ136及びエッジカウンタ137をリセットする。次に、制御ブロック138は、イネーブル信号ENにより、エッジカウンタ137によるエッジ数CNTカウントをスタートさせる。
次に、ステップS803では、制御ブロック138は、4UI内のエッジ数CNTが2以下であるか否かを判断する。制御ブロック138は、エッジ数CNTが2以下である場合には、図5(A)のように、位相コードPICの時の送信データD7が正常であると判断し、ステップS804に処理を進める。これに対し、制御ブロック138は、エッジ数CNTが3以上である場合には、図5(B)のように、位相コードPICの時の送信データD7が異常であると判断し、ステップS805に処理を進める。
ステップS804では、制御ブロック138は、位相コードPICの正常フラグOK[PIC]に1を設定し、正常フラグOK[PIC]を記録し、ステップS806に処理を進める。
ステップS805では、制御ブロック138は、位相コードPICの正常フラグOK[PIC]に0を設定し、正常フラグOK[PIC]を記録し、ステップS806に処理を進める。
ステップS806では、制御ブロック138は、位相コードPICが最大コードであるか否かを判断する。そして、制御ブロック138は、位相コードPICが最大コードでない場合には、ステップS807に処理を進め、位相コードPICが最大コードである場合には、ステップS808に処理を進める。
ステップS807では、制御ブロック138は、位相コードPICをインクリメントする。位相調整回路126は、位相コードPICに応じて、第2のクロック信号CLK3の位相を調整する。その後、制御ブロック138は、ステップS802に処理を戻し、ステップS802〜S806の処理を繰り返す。これにより、制御ブロック138は、図9に示すように、第2のクロック信号CLK3の1周期内のすべての位相コードPICの正常フラグOK[PIC]を設定することができる。
ステップS808では、制御ブロック138は、正常フラグOK[PIC]を基に、第1の位相コードP1及び第2の位相コードP2を計算する。その詳細は、図9を参照しながら説明する。
図9は、図8のステップS808の処理を説明するための図である。上記のように、制御ブロック138は、第2のクロック信号CLK3の1周期内のすべての位相コードPICの正常フラグOK[PIC]を設定する。例えば、位相範囲901は、正常フラグOK[PIC]が1に設定されている正常な位相範囲である。位相範囲902は、正常フラグOK[PIC]が0に設定されている異常な位相範囲である。この場合、制御ブロック138は、正常な位相範囲901の真中の位相を示す位相コードPICを決定するために、以下に示す方法により、第1の位相コードP1及び第2の位相コードP2を計算する。
まず、制御ブロック138は、正常コードOK[PIC]が1である位相範囲901と正常コードOK[PIC]が0である位相範囲902との間の2個の境界の位相コードPICのうちの小さい方の位相コードを位相コードCMINとして設定し、大きい方の位相コードを位相コードCMAXとして設定する。
次に、制御ブロック138は、下記の第1のデータDEL1及び第2のデータDEL2を計算する。ここで、データMAXは、1周期内の最大の位相を示す位相コードPICである。
DEL1=(CMAX−CMIN)/2
DEL2={MAX−(CMAX−CMIN)}/2
次に、制御ブロック138は、下記の第1の位相コードP1及び第2の位相コードP2を計算する。
P1=CMIN+DEL1
P2_1=CMIN−DEL2
P2_2=CMAX+DEL2
P2_2>MAXの時には、P2=P2_1、
P2_2≦MAXの時には、P2=P2_2
第1の位相コードP1は、位相範囲901の真中の位相を示す位相コードである。第2の位相コードP2は、位相範囲902の真中の位相を示す位相コードである。ただし、この時点では、制御ブロック138は、位相範囲901及び902のうちのいずれが正常な位相範囲であるのかは認識していない。次に、制御ブロック138は、位相範囲901及び902のうちのいずれが正常な位相範囲であるのかを判断する。そして、制御ブロック138は、位相範囲901が正常な位相範囲である場合には、第1の位相コードP1を選択し、位相範囲902が正常な位相範囲である場合には、第2の位相コードP2を選択する。以下、その詳細を図10を参照しながら説明する。
図10は、制御ブロック138が第1の位相コードP1又は第2の位相コードP2を選択する方法を示すフローチャートである。ステップS1001では、制御ブロック138は、正常フラグOK[P1]が1であるか否かを判断する。第1の位相コードP1は、位相範囲901の真中の位相を示す。正常フラグOK[P1]は、位相範囲901の真中の位相を示す第1の位相コードP1の正常フラグOK[PIC]である。制御ブロック138は、正常フラグOK[P1]が1である場合には、位相範囲901が正常な位相範囲であると判断し、ステップS1002に処理を進める。これに対し、制御ブロック138は、正常フラグOK[P1]が0である場合には、位相範囲901が正常な位相範囲でないと判断し、ステップS1003に処理を進める。
ステップS1003では、制御ブロック138は、正常フラグOK[P2]が1であるか否かを判断する。第2の位相コードP2は、位相範囲902の真中の位相を示す。正常フラグOK[P2]は、位相範囲902の真中の位相を示す第2の位相コードP2の正常フラグOK[PIC]である。制御ブロック138は、正常フラグOK[P2]が1である場合には、位相範囲902が正常な位相範囲であると判断し、ステップS1004に処理を進める。これに対し、制御ブロック138は、正常フラグOK[P2]が0である場合には、位相範囲902が正常な位相範囲でないと判断し、ステップS1005に処理を進める。
ステップS1002では、制御ブロック138は、第1の位相コードP1を位相コードPICとして設定し、処理を終了する。位相調整回路126は、位相コードPICに応じて、第2のクロック信号CLK3の位相を調整する。
ステップS1004では、制御ブロック138は、第2の位相コードP2を位相コードPICとして設定し、処理を終了する。位相調整回路126は、位相コードPICに応じて、第2のクロック信号CLK3の位相を調整する。
ステップS1005では、制御ブロック138は、エラーフラグERRに1を設定することにより、エラーを通知し、処理を終了する。
以上のように、制御ブロック138は、ステップS1002又はS1004で、最適な位相コードPICを設定する。位相調整回路126は、正常な位相範囲901の真中の位相の位相コードになるように、第2のクロック信号CLK3の位相を調整する。具体的には、位相調整回路126は、エッジ数CNTが閾値以下(2以下)になるように、第2のクロック信号CLK3の位相を調整する。これにより、図4(A)に示すように、第1のクロック信号CLK1と送信データD5[0],D5[1]の位相が一致し、正常な送信データD6を得ることができる。
制御ブロック138は、上記の位相調整モードの後、送信モードを示す選択信号SELをセレクタ107〜110に出力する。すると、セレクタ107〜110は、送信データD3[0]〜D3[3]を送信データD4[0]〜D4[3]として出力する。送信モードでは、送信回路は、32ビットパラレル送信データD1[31:0]をシリアル送信データD8に変換し、シリアル送信データD8を送信する。位相調整回路126の位相調整により、シリアル送信データD8の位相は、第1のクロック信号CLK1の位相と一致している。これにより、シリアル送信データD8のビットエラー(受信エラー)を低減することができる。
仮に、位相調整回路126がない場合には、マルチプレクサ111は、第2のクロック信号CLK2に同期して動作する。その場合、第2のクロック信号CLK2は、第1のクロック信号CLK1に対して遅延しているため、図4(B)のように、異常な送信データD6が得られ、ビットエラーが増大する。
また、ユーザが位相調整回路126の位相コードPICを環境に応じてマニュアル設定する方法が考えられが、その方法は煩雑である。本実施形態によれば、制御ブロック138は、自動で最適な位相コードPICを設定することができる。
なお、テストデータTD[0]〜TD[3]は、送信データD6が1100又は0011になるようなテストデータであればよい。
図11(A)は、他の実施形態による送信回路のパルス幅検出回路1100の構成例を示す図である。パルス幅検出回路1100は、図1のエッジカウンタ137の代わりに設けられる。パルス幅検出回路1100は、nチャネル電界効果トランジスタ1101,1102、抵抗1103、容量1104、及び比較器1105を有し、データ列D9のパルス幅を検出する。
nチャネル電界効果トランジスタ1101は、ドレインが抵抗1103を介して電源電位VDDのノードに接続され、ゲートがデータ列D9を入力し、ソースがノードNPに接続される。容量1104は、ノードNP及びグランド電位のノード間に接続される。nチャネル電界効果トランジスタ1102は、ドレインがノードNPに接続され、ゲートがリセット信号RST1を入力し、ソースがグランド電位のノードに接続される。比較器1105は、ノードNPの電位と参照電位Vrefとを比較し、その比較の結果をパルス幅信号OUTとして出力する。ノードNPの電位が参照電位Vrefより低い場合は、パルス幅信号OUTは、ハイレベルになる。これに対し、ノードNPの電位が参照電位Vrefより高い場合は、パルス幅信号OUTは、ローレベルになる。nチャネル電界効果トランジスタ1102は、リセット信号RST1により、所定間隔でオンし、ノードNPを0Vにリセットする。
図11(B)は、図5(A)と同様に、正常なシリアル送信データD7を示す図である。シリアル送信データD7のパルス幅は、2UIである。この場合、データ列D9は、「11110000」になる。データ列D9のパルス幅が2UIの場合、ノードNPの電位は、図12に示すように、参照電位Vrefより高くなり、パルス幅信号OUTは、ローレベルになる。制御ブロック138は、パルス幅信号OUTがローレベルになると、送信データD7が正常であると判断し、正常フラグOK[PIC]に1を設定する。
図11(C)は、図5(B)と同様に、異常なシリアル送信データD7を示す図である。シリアル送信データD7は、1UIのパルス幅と、0.5UIのパルス幅を有する。この場合、データ列D9は、「10110100」になる。データ列D9のパルス幅が1UI及び0.5UIの場合、ノードNPの電位は、図12に示すように、参照電位Vrefより低くなり、パルス幅信号OUTは、ハイレベルを維持する。制御ブロック138は、パルス幅信号OUTがハイレベルの場合には、送信データD7が異常であると判断し、正常フラグOK[PIC]に0を設定する。
図12は、RC時定数τに対するノードNPの電圧レベルの例を示すグラフである。データ列D9のパルス幅が2UIの場合、RC時定数が2τである場合を例に説明する。データ列D9のパルス幅が1.4UIの場合に、ノードNPは、0.75Vになる。そこで、参照電位Vrefは、例えば0.75Vに設定される。比較器1105は、データ列D9のパルス幅が1.4UIより広い場合には、ローレベルのパルス幅信号OUTを出力する。これに対し、比較器1105は、データ列D9のパルス幅が1.4UIより狭い場合には、ハイレベルのパルス幅信号OUTを出力する。
図11(B)のように、データ列D9のパルス幅が2UIの場合、比較器1105は、0.6UIの期間、ローレベルのパルス幅信号OUTを出力する。そして、図11(C)のように、データ列D9のパルス幅が1UI及び0.5UIの場合、比較器1105は、ハイレベルのパルス幅信号OUTを出力する。
上記のように、図1のエッジカウンタ137及びパルス幅検出回路1100は、データ列D9の解析を行う解析回路である。位相調整回路126は、解析回路の解析の結果に基づいて、第2のクロック信号CLK3の位相を調整する。例えば、位相調整回路126は、データ列D9のパルス幅が閾値(1.4UI)より広くなるように、第2のクロック信号CLK3の位相を調整する。
図13は、集積回路1301及び受信回路1304の構成例を示す図である。集積回路1301は、内部回路1302と、送信回路1303とを有する。内部回路1302は、32ビットパラレル送信データ(内部データ)D1[31:0]を生成する。送信回路1303は、図1の送信回路であり、32ビットパラレル送信データD1[31:0]を内部回路1302から受けとり、シリアル送信データD8を受信回路1304に出力する。受信回路1304は、クロックデータリカバリ(CDR)回路を有し、シリアル送信データD8を基に、データ及びクロック信号を再生する。上記のように、送信回路の位相調整回路126が位相調整することにより、受信回路1304は、データ再生のエラーを低減することができる。
本実施形態によれば、マルチプレクサ111における第2のクロック信号CLK3及び送信データD4[0]〜D4[3]間、並びにマルチプレクサ113における第1のクロック信号CLK1及び送信データD5[0],D5[1]間のタイミング関係を最適化でき、送信データD6におけるビットエラーの発生を防止することができる。
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
101,111,113 マルチプレクサ
103〜106 テストデータ生成回路
107〜110 セレクタ
114 プリドライバ回路
115 ドライバ回路
116〜123 D型フリップフロップ回路
124 電圧制御発振器
125 2分周器
126 位相調整回路
128,132 4分周器
129,130,133,134 遅延回路
131 インバータ
135 分周器
136 シフトレジスタ
137 エッジカウンタ
138 制御ブロック

Claims (14)

  1. 第1のクロック信号と、前記第1のクロック信号より周波数が低い第2のクロック信号を生成するクロック生成回路と、
    前記第2のクロック信号に基づいて入力データを、前記入力データよりビット幅が狭い中間データに変換する第1の変換回路と、
    前記第1のクロック信号に基づいて前記中間データを、前記中間データよりビット幅が狭い出力データに変換する第2の変換回路と、
    前記出力データのデータ列を順次キャプチャするキャプチャ回路と、
    前記キャプチャしたデータ列の解析を行う解析回路と、
    前記解析の結果に基づいて前記第2のクロック信号の位相を調整する位相調整回路と
    を有し、
    前記解析回路は、前記キャプチャしたデータ列のエッジ数を検出し、
    前記位相調整回路は、前記入力データとしてテストデータが入力された場合、前記検出されたエッジ数が、前記テストデータに応じて定まる2以上の整数である閾値以下か、前記閾値より大きいかに応じて、前記第2のクロック信号の位相を調整する送信回路。
  2. 第1のクロック信号と、前記第1のクロック信号より周波数が低い第2のクロック信号を生成するクロック生成回路と、
    前記第2のクロック信号に基づいて入力データを、前記入力データよりビット幅が狭い中間データに変換する第1の変換回路と、
    前記第1のクロック信号に基づいて前記中間データを、前記中間データよりビット幅が狭い出力データに変換する第2の変換回路と、
    前記出力データのデータ列を順次キャプチャするキャプチャ回路と、
    前記キャプチャしたデータ列の解析を行う解析回路と、
    前記解析の結果に基づいて前記第2のクロック信号の位相を調整する位相調整回路と
    を有し、
    前記解析回路は、前記キャプチャしたデータ列のパルス幅を検出し、
    前記位相調整回路は、前記検出されたパルス幅に基づいて前記第2のクロック信号の位相を調整する送信回路。
  3. 前記キャプチャ回路は、前記出力データのデータ列の1UIに異なる複数のタイミングでキャプチャする請求項1又は2に記載の送信回路。
  4. さらに、送信データ又はテストデータを選択して前記入力データとして前記第1の変換回路に出力するセレクタを有し、
    前記位相調整回路は、前記セレクタが前記テストデータを選択した場合に、前記第2のクロック信号の位相を調整する請求項1乃至のいずれか1項に記載の送信回路。
  5. 前記解析回路は、前記第2のクロック信号の1周期に相当する位相の範囲に対して、前記キャプチャしたデータ列の解析を行い、
    前記位相調整回路は、前記解析の結果が正常である位相の範囲の真中の位相になるように、前記第2のクロック信号の位相を調整する請求項に記載の送信回路。
  6. 前記位相調整回路は、前記検出されるエッジ数が前記閾値以下になるように、前記第2のクロック信号の位相を調整する請求項に記載の送信回路。
  7. 前記位相調整回路は、前記検出されるパルス幅が閾値より広くなるように、前記第2のクロック信号の位相を調整する請求項に記載の送信回路。
  8. 内部データを生成する内部回路と、
    前記内部データを受けとる送信回路とを有し、
    前記送信回路は、
    第1のクロック信号と、前記第1のクロック信号より周波数が低い第2のクロック信号を生成するクロック生成回路と、
    前記第2のクロック信号に基づいて入力データを、前記入力データよりビット幅が狭い中間データに変換する第1の変換回路と、
    前記第1のクロック信号に基づいて前記中間データを、前記中間データよりビット幅が狭い出力データに変換する第2の変換回路と、
    前記出力データのデータ列を順次キャプチャするキャプチャ回路と、
    前記キャプチャしたデータ列の解析を行う解析回路と、
    前記解析の結果に基づいて前記第2のクロック信号の位相を調整する位相調整回路と
    を有し、
    前記解析回路は、前記キャプチャしたデータ列のエッジ数を検出し、
    前記位相調整回路は、前記入力データとしてテストデータが入力された場合、前記検出されたエッジ数が、前記テストデータに応じて定まる2以上の整数である閾値以下か、前記閾値より大きいかに応じて、前記第2のクロック信号の位相を調整する集積回路。
  9. 内部データを生成する内部回路と、
    前記内部データを受けとる送信回路とを有し、
    前記送信回路は、
    第1のクロック信号と、前記第1のクロック信号より周波数が低い第2のクロック信号を生成するクロック生成回路と、
    前記第2のクロック信号に基づいて入力データを、前記入力データよりビット幅が狭い中間データに変換する第1の変換回路と、
    前記第1のクロック信号に基づいて前記中間データを、前記中間データよりビット幅が狭い出力データに変換する第2の変換回路と、
    前記出力データのデータ列を順次キャプチャするキャプチャ回路と、
    前記キャプチャしたデータ列の解析を行う解析回路と、
    前記解析の結果に基づいて前記第2のクロック信号の位相を調整する位相調整回路と
    を有し、
    前記解析回路は、前記キャプチャしたデータ列のパルス幅を検出し、
    前記位相調整回路は、前記検出されたパルス幅に基づいて前記第2のクロック信号の位相を調整する集積回路。
  10. 前記キャプチャ回路は、前記出力データのデータ列の1UIに異なる複数のタイミングでキャプチャする請求項8又は9に記載の集積回路。
  11. 前記送信回路は、さらに、送信データ又はテストデータを選択して前記入力データとして前記第1の変換回路に出力するセレクタを有し、
    前記位相調整回路は、前記セレクタが前記テストデータを選択した場合に、前記第2のクロック信号の位相を調整する請求項乃至10のいずれか1項に記載の集積回路。
  12. 前記解析回路は、前記第2のクロック信号の1周期に相当する位相の範囲に対して、前記キャプチャしたデータ列の解析を行い、
    前記位相調整回路は、前記解析の結果が正常である位相の範囲の真中の位相になるように、前記第2のクロック信号の位相を調整する請求項に記載の集積回路。
  13. 前記位相調整回路は、前記検出されるエッジ数が前記閾値以下になるように、前記第2のクロック信号の位相を調整する請求項に記載の集積回路。
  14. 前記位相調整回路は、前記検出されるパルス幅が閾値より広くなるように、前記第2のクロック信号の位相を調整する請求項に記載の集積回路。
JP2017033300A 2017-02-24 2017-02-24 送信回路及び集積回路 Active JP6871509B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017033300A JP6871509B2 (ja) 2017-02-24 2017-02-24 送信回路及び集積回路
US15/899,556 US10374615B2 (en) 2017-02-24 2018-02-20 Transmission circuit and integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017033300A JP6871509B2 (ja) 2017-02-24 2017-02-24 送信回路及び集積回路

Publications (2)

Publication Number Publication Date
JP2018139354A JP2018139354A (ja) 2018-09-06
JP6871509B2 true JP6871509B2 (ja) 2021-05-12

Family

ID=63246541

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017033300A Active JP6871509B2 (ja) 2017-02-24 2017-02-24 送信回路及び集積回路

Country Status (2)

Country Link
US (1) US10374615B2 (ja)
JP (1) JP6871509B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113094309A (zh) * 2019-12-23 2021-07-09 深圳市中兴微电子技术有限公司 一种数据位宽转换方法和装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4323873B2 (ja) * 2003-06-13 2009-09-02 富士通株式会社 入出力インタフェース回路
JP2011090361A (ja) 2009-10-20 2011-05-06 Renesas Electronics Corp 位相キャリブレーション回路、メモリカード制御装置、及び位相キャリブレーション方法
JP5017348B2 (ja) 2009-10-26 2012-09-05 ザインエレクトロニクス株式会社 送信装置、受信装置、送受信システムおよび画像表示システム
JPWO2013065208A1 (ja) * 2011-11-04 2015-04-02 パナソニックIpマネジメント株式会社 タイミングリカバリ回路およびそれを備えたレシーバ回路
JP6575390B2 (ja) * 2016-02-19 2019-09-18 富士通株式会社 パラレル・シリアル変換回路、情報処理装置、およびタイミング調整方法

Also Published As

Publication number Publication date
JP2018139354A (ja) 2018-09-06
US20180248557A1 (en) 2018-08-30
US10374615B2 (en) 2019-08-06

Similar Documents

Publication Publication Date Title
CN113841334B (zh) 多相时钟占空比与时偏的测量和校正
US6753712B2 (en) Clock and data recovery circuit and clock control method thereof
US9520883B2 (en) Frequency detection circuit and reception circuit
US7817761B2 (en) Test techniques for a delay-locked loop receiver interface
US10009166B2 (en) Hybrid clock data recovery circuit and receiver
JP4886276B2 (ja) クロックデータ復元装置
US11387813B2 (en) Frequency multiplier and delay-reused duty cycle calibration method thereof
US20070024336A1 (en) Jitter producing circuitry and methods
US9722590B1 (en) Skew adjustment circuit, semiconductor device, and skew calibration method
US9455725B2 (en) Phase detector and associated phase detecting method
US9887831B2 (en) Clock data recovery circuit, integrated circuit including the same, and clock data recovery method
JP6871509B2 (ja) 送信回路及び集積回路
CN113078899B (zh) 时钟和数据恢复电路
US7830190B2 (en) Data latch circuit with a phase selector
CN110545093A (zh) 半导体装置以及半导体测试设备
US7750711B2 (en) Phase select circuit with reduced hysteresis effect
US6856207B1 (en) Jitter-less phase detector in a clock recovery circuit
US9350527B1 (en) Reception unit and receiving method
US9461811B1 (en) Clock and data recovery circuit and clock and data recovery method
KR20230087029A (ko) 디스플레이의 클럭 데이터 복원 회로 및 그의 클럭 복원 회로
US20040190667A1 (en) Clock extracting circuit and clock extracting method
US11843385B1 (en) Semiconductor device having duty-cycle corrector
US11973506B2 (en) Semiconductor device having duty-cycle corrector
US8189727B2 (en) Differential transmitter and auto-adjustment method of data strobe thereof
JP4917341B2 (ja) インターフェース回路

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200121

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201117

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210107

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: 20210316

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210329

R150 Certificate of patent or registration of utility model

Ref document number: 6871509

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150