IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ NECプラットフォームズ株式会社の特許一覧

特許7663208クロック発生回路、処理方法、およびプログラム
<>
  • 特許-クロック発生回路、処理方法、およびプログラム 図1
  • 特許-クロック発生回路、処理方法、およびプログラム 図2
  • 特許-クロック発生回路、処理方法、およびプログラム 図3
  • 特許-クロック発生回路、処理方法、およびプログラム 図4
  • 特許-クロック発生回路、処理方法、およびプログラム 図5
  • 特許-クロック発生回路、処理方法、およびプログラム 図6
  • 特許-クロック発生回路、処理方法、およびプログラム 図7
  • 特許-クロック発生回路、処理方法、およびプログラム 図8
  • 特許-クロック発生回路、処理方法、およびプログラム 図9
  • 特許-クロック発生回路、処理方法、およびプログラム 図10
  • 特許-クロック発生回路、処理方法、およびプログラム 図11
  • 特許-クロック発生回路、処理方法、およびプログラム 図12
  • 特許-クロック発生回路、処理方法、およびプログラム 図13
  • 特許-クロック発生回路、処理方法、およびプログラム 図14
  • 特許-クロック発生回路、処理方法、およびプログラム 図15
  • 特許-クロック発生回路、処理方法、およびプログラム 図16
  • 特許-クロック発生回路、処理方法、およびプログラム 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2025-04-08
(45)【発行日】2025-04-16
(54)【発明の名称】クロック発生回路、処理方法、およびプログラム
(51)【国際特許分類】
   H04L 7/033 20060101AFI20250409BHJP
【FI】
H04L7/033 700
【請求項の数】 5
(21)【出願番号】P 2023217039
(22)【出願日】2023-12-22
【審査請求日】2023-12-22
(73)【特許権者】
【識別番号】000227205
【氏名又は名称】NECプラットフォームズ株式会社
(74)【代理人】
【識別番号】100149548
【弁理士】
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100181135
【弁理士】
【氏名又は名称】橋本 隆史
(72)【発明者】
【氏名】根立 貴章
【審査官】北村 智彦
(56)【参考文献】
【文献】特開2013-046271(JP,A)
【文献】特開2014-171039(JP,A)
【文献】特開2015-191255(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 7/033
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
第1クロックと、
前記第1クロックと逆相である第2クロックと
が入力されるクロック発生回路であって、
前記第1クロックおよび前記第2クロックに応じて動作する装置の初期化時に、
前記第1クロックおよび前記第2クロックを第1周波数とした場合に、
前記第1クロックと前記第2クロックとの位相差として、
クロックデータリカバリ回路により実現可能な位相の最小調整量のj倍の位相差に相当する第1位相差を検出し、
前記第1クロックおよび前記第2クロックを前記第1周波数のk分の1の周波数とした場合に、
前記第1クロックと前記第2クロックとの位相差として、
前記位相の最小調整量の(j/k)倍の位相差に相当する第2位相差を検出する
検出手段と、
前記第1位相差を検出したタイミングにおける、前記第1周波数での前記第1クロックと前記第2クロックとを入力差動信号とした場合の出力信号である第1電圧の大きさの信号
前記第2位相差を検出したタイミングにおける前記第1周波数のk分の1の周波数での前記第1クロックと前記第2クロックとを入力差動信号とした場合の出力信号である第2電圧の大きさの信号
を出力する
出力手段と、
前記第1電圧の大きさの信号前記第2電圧の大きさの信号とを比較する
比較手段と、
前記比較手段による比較結果に基づいて、
前記第1位相差および前記第2位相差を調整する回路である補正回路に、
前記第1位相差および前記第2位相差を制御させる制御信号を送信する
送信手段と、
を備えるクロック発生回路。
【請求項2】
前記jは、2であり、
前記kは、2である、
請求項1に記載のクロック発生回路。
【請求項3】
第1クロックと、
前記第1クロックと逆相である第2クロックと
が入力されるクロック発生回路が実行する処理方法であって、
前記第1クロックおよび前記第2クロックに応じて動作する装置の初期化時に、
前記第1クロックおよび前記第2クロックを第1周波数とした場合に、
前記第1クロックと前記第2クロックとの位相差として、
クロックデータリカバリ回路により実現可能な位相の最小調整量のj倍の位相差に相当する第1位相差を検出する
ことと、
前記第1クロックおよび前記第2クロックを前記第1周波数のk分の1の周波数とした場合に、
前記第1クロックと前記第2クロックとの位相差として、
前記位相の最小調整量の(j/k)倍の位相差に相当する第2位相差を検出する
ことと、
前記第1位相差を検出したタイミングにおける前記第1周波数での前記第1クロックと前記第2クロックとを入力差動信号とした場合の出力信号である第1電圧の大きさの信号
前記第2位相差を検出したタイミングにおける前記第1周波数のk分の1の周波数での前記第1クロックと前記第2クロックとを入力差動信号とした場合の出力信号である第2電圧の大きさの信号
を出力する
ことと、
前記第1電圧の大きさの信号レベル前記第2電圧の大きさの信号とを比較する
ことと、
比較結果に基づいて、
前記第1位相差および前記第2位相差を調整する回路である補正回路に、
前記第1位相差および前記第2位相差を制御させる制御信号を送信する
ことと、
を含む処理方法。
【請求項4】
前記jは、2であり、
前記kは、2である、
請求項3に記載の処理方法。
【請求項5】
クロック発生回路のコンピュータに、請求項3または4に記載の処理方法を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、クロック発生回路、処理方法、およびプログラムに関する。
【背景技術】
【0002】
デジタルのデータを処理する装置では、クロックを基準とするタイミングでデータ処理が行われることがある。特許文献1には、関連する技術として、クロックの位相を調整する回路に関する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2014-116680号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、特許文献1に記載の技術に関連する回路では、適切な位相に調整されたクロックを生成することのできる技術が求められている。
【0005】
本開示の各態様は、上記の課題を解決することのできるクロック発生回路、処理方法、およびプログラムを提供することを目的としている。
【課題を解決するための手段】
【0006】
本開示の一態様によれば、クロック発生回路は、第1クロックと、前記第1クロックと逆相である第2クロックとが入力されるクロック発生回路であって、前記第1クロックおよび前記第2クロックに応じて動作する装置の初期化時に、前記第1クロックおよび前記第2クロックを第1周波数とした場合に、前記第1クロックと前記第2クロックとの位相差として、クロックデータリカバリ回路により実現可能な位相の最小調整量のj倍の位相差に相当する第1位相差を検出し、前記第1クロックおよび前記第2クロックを前記第1周波数のk分の1の周波数とした場合に、前記第1クロックと前記第2クロックとの位相差として、前記位相の最小調整量の(j/k)倍の位相差に相当する第2位相差を検出する検出手段と、前記第1位相差を検出したタイミングにおける、前記第1周波数での前記第1クロックと前記第2クロックとを入力差動信号とした場合の出力信号である第1電圧の大きさの信号と前記第2位相差を検出したタイミングにおける前記第1周波数のk分の1の周波数での前記第1クロックと前記第2クロックとを入力差動信号とした場合の出力信号である第2電圧の大きさの信号とを出力する出力手段と、前記第1電圧の大きさの信号と前記第2電圧の大きさの信号とを比較する比較手段と、前記比較手段による比較結果に基づいて、前記第1位相差および前記第2位相差を調整する回路である補正回路に、前記第1位相差および前記第2位相差を制御させる制御信号を送信する送信手段と、を備える
【0007】
本開示の別の態様によれば、処理方法は、第1クロックと、前記第1クロックと逆相である第2クロックとが入力されるクロック発生回路が実行する処理方法であって、前記第1クロックおよび前記第2クロックに応じて動作する装置の初期化時に、前記第1クロックおよび前記第2クロックを第1周波数とした場合に、前記第1クロックと前記第2クロックとの位相差として、クロックデータリカバリ回路により実現可能な位相の最小調整量のj倍の位相差に相当する第1位相差を検出することと、前記第1クロックおよび前記第2クロックを前記第1周波数のk分の1の周波数とした場合に、前記第1クロックと前記第2クロックとの位相差として、前記位相の最小調整量の(j/k)倍の位相差に相当する第2位相差を検出することと、前記第1位相差を検出したタイミングにおける前記第1周波数での前記第1クロックと前記第2クロックとを入力差動信号とした場合の出力信号である第1電圧の大きさの信号と前記第2位相差を検出したタイミングにおける前記第1周波数のk分の1の周波数での前記第1クロックと前記第2クロックとを入力差動信号とした場合の出力信号である第2電圧の大きさの信号とを出力することと、前記第1電圧の大きさの信号レベルと前記第2電圧の大きさの信号とを比較することと、比較結果に基づいて、前記第1位相差および前記第2位相差を調整する回路である補正回路に、前記第1位相差および前記第2位相差を制御させる制御信号を送信することと、を含む
【0008】
本開示の別の態様によれば、プログラムは、クロック発生回路のコンピュータに、上記の処理方法を実行させる
【発明の効果】
【0009】
本開示の各態様によれば、適切な位相に調整されたクロックを生成することができる。
【図面の簡単な説明】
【0010】
図1】本開示のいくつかの実施形態にかかる受信回路の構成の一例を示す図である。
図2】本開示のいくつかの実施形態におけるクロックIN000、IN090、IN180、およびIN270の一例を示す図である。
図3】本開示のいくつかの実施形態における位相切替時の各調整コードの一例を示す図である。
図4】本開示のいくつかの実施形態にかかる多相クロック発生回路の構成の一例を示す図である。
図5】本開示のいくつかの実施形態にかかる4相/8相変換部が出力するクロックの位相関係のイメージの一例を示す図である。
図6】本開示のいくつかの実施形態にかかるPI回路の構成の一例を示す図である。
図7】本開示のいくつかの実施形態にかかる8相出力切替部が出力するクロックの一例を示す図である。
図8】本開示のいくつかの実施形態にかかる受信回路の処理フローの第1の例を示す図である。
図9】本開示のいくつかの実施形態にかかる受信回路の処理フローの第2の例を示す図である。
図10】本開示のいくつかの実施形態にかかる8相出力切替部により生成されたクロックの一例を示す図である。
図11】本開示のいくつかの実施形態にかかるPI回路により補間して重ね書きした波形の一部を示す図である。
図12】本開示のいくつかの実施形態におけるクロックの補正を説明するための第1の図である。
図13】本開示のいくつかの実施形態におけるクロックの補正を説明するための第2の図である。
図14】本開示のいくつかの実施形態にかかる4相/8相変換部の構成の一例を示す図である。
図15】本開示のいくつかの実施形態にかかるクロック発生回路の構成の一例を示す図である。
図16】本開示のいくつかの実施形態にかかるクロック発生回路の処理フローの一例を示す図である。
図17】少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
【発明を実施するための形態】
【0011】
以下、図面を参照しながら実施形態について詳しく説明する。
<実施形態>
(受信回路の構成)
本開示の一実施形態による図1の受信回路1について図面を参照して説明する。受信回路1において、後述する多相クロック発生回路20は、クロックの速度を低速時(例えば、通常クロックの2分の1の速度で動作)に切り替えられた場合に発生するクロックデータリカバリ(CDR)回路による遅延調整の1STEPの遅延量のずれ幅(ばらつき幅)を、受信回路1の電源投入後に実施される受信回路1(クロックに応じて動作する装置の一例)の初期化時に検出し、補正する。
【0012】
図1は、本開示のいくつかの実施形態にかかる受信回路1の構成の一例を示す図である。受信回路1は、図1に示すように、PLL(Phase Locked Loop)10、多相クロック発生回路20、サンプリングラッチ30、Demux40、および位相検出回路50を備える。なお、受信回路1では、多相クロック発生回路20および位相検出回路50により、クロックデータリカバリ(CDR)回路が構成される。
【0013】
PLL10は、入力差動クロックIN000/IN180、およびIN090/IN270を出力する。クロックIN180は、クロックIN000に対して180°つまり位相反転したクロックである。クロックIN000とクロックIN180とで差動クロックのペアである入力差動クロックIN000/IN180を示す。クロックIN090は、クロックIN000の立ち上がりに対して90°位相が遅れた波形である。クロックIN270は、クロックIN090に対して180°つまり位相反転したクロックである。クロックIN090とクロックIN270とで差動クロックのペアである入力差動クロックIN090/IN270を示す。図2は、本開示のいくつかの実施形態におけるクロックIN000、IN090、IN180、およびIN270の一例を示す図である。クロックIN000、IN090、IN180、およびIN270は、図2に示すように、クロックIN000を基準に、クロックIN090、IN180、IN270の順に、90°、180°、270°位相が遅れた波形となる。
【0014】
サンプリングラッチ30、Demux40、および位相検出回路50により、クロックデータリカバリの機能であるデータとクロックの位相関係を検出する。この位相検出による結果でサンプリングクロックの位相を遅らせるのか、進ませるのかが位相検出回路50で決定される。図3は、本開示のいくつかの実施形態における位相切替時の各調整コードの一例を示す図である。位相検出回路50は、クロックの位相を遅らせる場合には、例えば、図3に示す制御コード対応表でステップをプラス方向(表の下方向)に制御し、遅らせる場合には、例えば、図3に示す制御コード対応表でステップをマイナス方向(表の上方向)に制御する。その結果、位相検出回路50は、図1の8相クロック出力(図3の出力)がデータに対して1ステッププラスに遅延させるか、1ステップマイナスに遅延させるかを制御することになる。なお、PLL10は、クロック発生源である。
【0015】
図4は、本開示のいくつかの実施形態にかかる多相クロック発生回路20の構成の一例を示す図である。多相クロック発生回路20は、図4に示すように、入力パス切替部201、4相/8相変換部202、8相出力切替部203、制御切替部204、および位相差検出部205を備える。
【0016】
入力パス切替部201は、位相差検出を実施(有効に)する際に入力するクロック信号のパスを切り替える。入力パス切替部201は、通常、入力パス切替信号によりLow(論理0)側を選択する。また、入力パス切替部201は、クロック位相差検出を実施する場合、入力パス切替信号をHigh(論理1)側に切り替える。
【0017】
4相/8相変換部202は、図4に示すように、バッファ202a、202bを備える。4相/8相変換部202は、前段の入力パス切替部201の出力である4相クロックを入力クロックとして受ける。
【0018】
バッファ202aは、例えば、CML(Current Mode Logic)バッファである。バッファ202aは、4相から8相を生成するため、入力差動クロックIN000/IN180、入力差動クロックIN090/IN270のそれぞれを45°遅延させる。この遅延量は、バッファ202aごとの製造ばらつきにより変動する。その結果、クロックデータリカバリ(CDR)回路としては、このバッファ202aごとのばらつきによるクロックジッタの影響を受けやすい回路となり、複数の周波数(伝送速度)に対応したクロックデータリカバリ(CDR)回路を構成するためには、それぞれで最適化をする必要がある。バッファ202bは、バッファ202aが出力した差動信号を受け、所望の差動信号を8相出力切替部203に出力する。
【0019】
図5は、本開示のいくつかの実施形態にかかる4相/8相変換部202が出力するクロックの位相関係のイメージの一例を示す図である。入力差動クロックIN000対応するクロックをクロックclk000i、入力差動クロックIN090対応するクロックをクロックclk090i、入力差動クロックIN180対応するクロックをクロックclk180i、入力差動クロックIN270対応するクロックをクロックclk270iとすると、4相/8相変換部202は、図5に示すように、クロックclk000i、clk045i、clk090i、clk135i、clk180i、clk225i、clk270i、およびclk315iの8相のクロックを出力する。なお、図5に示すように、クロックclk000iを基準に、クロックclk045i、clk090i、clk135i、clk180i、clk225i、clk270i、clk315iの順に、45°、90°、135°、180°、225°、270°、315°位相が遅れた波形となる。
【0020】
なお、図4に示す出力特性制御信号により、バッファ202a、202bのスルーレート(Slew Rate)の制御が可能となる。
【0021】
図6は、本開示のいくつかの実施形態にかかるPI回路203bの構成の一例を示す図である。PI回路203bは、第1~第4のMOSトランジスタM1~M4、第1、第2の抵抗R1、R2、第1、第2の電流源Ia、Ibを備える。第1と第3のMOSトランジスタM1、M3は、互いのソースが共通に接続されて、抵抗R1を介して電源電位VDDに接続される。第2と第4のMOSトランジスタM2、M4は、互いのソースが共通に接続されて、抵抗R2を介して電源電位VDDに接続される。第1と第2のMOSトランジスタM1、M2は、互いのドレインが共通に接続されて、電流源Iaに接続される。第3と第4のMOSトランジスタM3、M4は、互いのドレインが共通に接続されて、電流源Ibに接続される。
【0022】
また、第1のMOSトランジスタM1のゲートは入力端子Aに接続される。第2のMOSトランジスタM2のゲートは入力端子ABに接続される。第3のMOSトランジスタM3のゲートは入力端子Bに接続される。第4のMOSトランジスタM4のゲートは入力端子BBに接続される。また、電流源Iaには制御端子を通じて制御ビットSBが印可され、電流源Ibには制御端子を通じて制御ビットSAが印可される。そして、第2と第4のMOSトランジスタM2、M4の共通接続されたソースと抵抗R2との間に出力端子OUTが接続され、第1と第3のMOSトランジスタM1、M3の共通接続されたソースと抵抗R1との間に出力端子OUTBが接続される。
【0023】
8相出力切替部203は、前段部203a、および後段部203b(すなわち、上述のPI回路203b)を備える。8相出力切替部203は、4相/8相変換部202の出力を入力クロックとする。
【0024】
前段部203aは、SELC[7:0]の制御信号の1と0とを切り替えることによりクロックのパスを切り替える。後段部203bは、SELP1[15:0]、SELP2[15:0]の1と0との制御を切り替えることにより、1STEP刻みのサンプリングクロックを出力する。図7は、本開示のいくつかの実施形態にかかる8相出力切替部203が出力するクロックの一例を示す図であり、代表の8クロックのうちの3つのクロックを示している。図7の(a)の部分は、入力クロックを示している。図7の(c)の部分は、出力クロックを示している。図7の(b)の部分は、制御信号が1コード変化する度にクロックの位相が1STEP変化する様子を示している。出力クロックは、8クロックだけであるため、各クロックの位相は45°に保たれる。よって、図7の(c)の部分に示す出力クロックの制御コードが1STEPプラスに遅延させる制御コードである場合、8相クロック全体が1STEP遅延することになる。
【0025】
制御切替部204は、CDR回路の位相検出回路50からの位相切替信号により、2つのグループの位相制御信号を切り替える。1つ目のグループの位相制御信号は、位相制御信号(Auto)である。位相制御信号(Auto)は、SELC*、SELP*である。通常動作時は、制御切替部204の位相制御信号をLow(論理0)に設定(固定)する。これにより、位相制御信号(Auto)が伝播する8相出力切替部203へのパスが選択される。
【0026】
2つ目のグループの位相制御信号は、位相制御信号(Manual)である。制御切替部204は、制御切替信号をHigh(論理1)にする。これにより、位相制御信号(Manual)が伝播する8相出力切替部203へのパスが選択される。
【0027】
位相差検出部205は、8相出力切替部203が出力するOUT045とOUT135のクロックを入力として入力の差分の遅延量を検出する。そして、位相差検出部205は、出力として位相差を電圧のレベルを出力する。例えば、位相差検出部205の内部の回路は、一般的なPLLなどに使用される位相検出回路である。
【0028】
なお、本開示の一実施形態による受信回路1が行う処理は、上述の処理に限定されない。例えば、受信回路1は、以下で説明する処理を行うものであってもよい。
【0029】
(受信回路が行う処理)
次に、本開示の一実施形態による受信回路1が行う処理について説明する。図8は、本開示のいくつかの実施形態にかかる受信回路1の処理フローの第1の例を示す図である。図9は、本開示のいくつかの実施形態にかかる受信回路1の処理フローの第2の例を示す図である。まず、図8を参照して、通常動作時の多相クロック発生回路20全体の動作について説明する。
【0030】
なお、通常動作時の多相クロック発生回路20全体の動作前に、次に示すような設定が行われているものとする。
【0031】
通常動作時は、入力パス切替信号はLow(論理0)が選択される。これにより、入力パス切替部201がIN090/IN270を次段の4相/8相変換部202に出力するように設定がされているものとする。また、通常動作では、制御切替信号としてLow(0)が選択される。これにより、位相検出回路50が出力する位相制御信号(Auto)が選択されるように設定がされているものとする。また、4相/8相変換部202が、CMLバッファの遅延を利用して、4相のクロックについて0°~90°の間の位相を調整するように設定がされているものとする。
【0032】
入力パス切替部201は、PLL10が出力する位相ずれの関係にある図2に示すIN000、IN180、IN090、IN270の4相のクロックを受ける(ステップS1)。設定に従い、入力パス切替部201は、IN090/IN270を次段の4相/8相変換部202に出力する(ステップS2)。
【0033】
設定に従い、4相/8相変換部202は、CMLバッファの遅延を利用して、4相のクロックについて0°~90°の間の位相を調整する(ステップS3)。例えば、4相/8相変換部202は、図5に示すように、各クロック間で45°の位相がずれた8相のクロックを生成する。そして、4相/8相変換部202は、生成した8相のクロックを次段の8相出力切替部203に出力する。
【0034】
8相出力切替部203は、4相/8相変換部202が出力する図5に示す8相のクロックによりデータをサンプリングする(ステップS4)。8相出力切替部203は、SELC[7:0]、SELP1[15:0]、SELP2[15:0]による制御の下、8相のクロックの位相を最適化する(ステップS5)。
【0035】
設定に従い、位相検出回路50が出力する位相制御信号(Auto)が選択される。具体的には、例えば、8相出力切替部203の制御コードは、図3に示す制御コードである。8相出力切替部203は、図3に示すコードに従い、SELC[7:0]、SELP1[15:0]、SELP2[15:0]に応じて最適なクロックを生成する。
【0036】
図7の(c)の部分に、出力クロックOUT00、OUT045、OUT090の例が示されている。なお、図7の(c)の部分に示す出力クロックOUT00、OUT045、OUT090は、内部の制御コードとしてそれぞれSELC[7:0]=00000011、SELP1[15:0]=SELP2[15:0]=0000000011111111が選択された場合の例である。
【0037】
なお、この場合の8相出力切替部203の入力クロックの一部は、図7の(a)の部分に示すクロックclk000i、clk045i、clk090iである。また、図7の(b)の部分に示す波形が、SELP*[15:0]の16段階を2STEP毎に切り替えた場合に、PI回路203bが波形を補間した合成波形のイメージ図である。つまり、図7の(b)の部分に示す波形は、1STEP飛ばしで表示した場合の波形であり、16の波形のうち8の波形のみが表示され、さらに、PI回路203bが補間した8の波形が表示される。より具体的には、PI回路203bが図7の(a)の部分に示すクロックclk000iとclk045iの16STEP分の波形を補間し、クロックclk045iとclk090iの16STEP分の波形を補間し、クロックclk090iと次のクロックclk135iに補間した波形を重ね書きしたものが図7の(b)の部分に示す波形である。さらに図7の(c)の部分に示す波形は、8相出力切替部203から出力された最適なクロックのイメージ図である。ただし、図7の(c)の部分に示す波形では、OUT135以降の波形を省略している。
【0038】
図10は、本開示のいくつかの実施形態にかかる8相出力切替部203により生成されたクロックの一例を示す図である。結果として、8相出力切替部203は、図10に示すように、データの変化点のエッジとデータの中心に最適に調整されたクロックを生成する。そして、このように8相出力切替部203が生成したクロックは、サンプリングラッチのクロックとして使用される。
【0039】
ここで、図7の(b)の部分に示したPI回路203bにより補間して重ね書きした波形の詳細について考える。図11は、本開示のいくつかの実施形態にかかるPI回路203bにより補間して重ね書きした波形の一部を示す図である。図7の(b)の部分に示したPI回路203bにより補間して重ね書きした波形は、図11に示すように、1STEPの間隔で中心付近の遅延量が大きく、不均一な遅延量になる場合がある。これは、PI回路203bによるそれぞれの位相補間が、45°の位相差の波形で合成した位相補間であり、1STEPの位相差の最大は、SELP*[15:0]により中間を選択した波形によるためである。つまり、1STEPは、各クロック間の補正により作っており、45°の位相を16分割しているが、0-15の各STEPの位相差を同一の遅延差とすることは困難である場合がある。なお、1STEPの間隔で中心付近の遅延量が大きく、不均一な遅延量になる傾向は、クロックの波形の立ち上がりが早いほど、また、クロックの周波数が遅いほど顕著になる。結果として、サンプリングクロックの最適ポイントが変動し、クロックジッタになり、受信回路1の性能(例えば、伝送エラーレートの悪化(伝送エラー))に影響する場合がある。そのため、PI回路203bは、極力均一なSTEPになるようにクロックを補正する(すなわち、クロックの位相を補間する)ことが望ましい。
【0040】
次に、図9に示す本開示のいくつかの実施形態にかかる受信回路1の処理フローの第2の例について説明する。PI回路203bが極力均一なSTEPになるようにクロックを補正する方法の例としては、次に示す方法が挙げられる。多相クロック発生回路20において、入力パス切替部201の入力パス切替信号をHigh(論理1)にすることにより、IN000、IN180のクロックのみを使用する(ステップS11)。また、制御切替部204は、SELC[7:0]、SELP1[15:0]、SELP2[15:0]が自由に切り替えられるように制御切替信号をHigh(論理1)にすることにより、位相検出回路50の制御コードをフィードバックから切り離す(ステップS12)。図12は、本開示のいくつかの実施形態におけるクロックの補正を説明するための第1の図である。図13は、本開示のいくつかの実施形態におけるクロックの補正を説明するための第2の図である。ここでは、jSTEP(または任意のSTEP位置、STEP数)(例えば、1STEP)の位相を検出してクロックを補正する方法について説明する。
【0041】
図12の(a)の部分に示す図は、位相検出回路50のフィードバックから切り離した状態を示す図である。なお、制御コードSELC[7:0]=00000011であるものとする。位相差検出部205は、位相検出を実施する場合、入力パス切替部201を”1”に切り替える。そのため、SELP1 [15:0]とSELP2[15:0]が同一の値の場合には、8相出力切替部203は、クロックOUT045AとクロックOUT045B、クロックOUT225AとクロックOUT225Bに同一の位相のクロックを出力する。8相出力切替部203は、SELP1を固定したままSELP2を変更すると位相差が発生したクロックを出力する。例えば、制御コードSLEP1[0000000001111111]、SELP2[0000000111111111]を選択した場合、位相差検出部205は、図12の(a)の部分に示すクロックOUT045AとOUT045Bとに、図12の(b)の部分に示すjSTEP分(例えば、2STEP分)の位相差ΔTを検出した電圧レベルを出力する(ステップS13)。
【0042】
次に、PLL10のクロックの周波数をk分の1(例えば、2分の1)にし、更にSELP2[15:0]のみをSELP2[0000000011111111]を選択することにより、位相差検出部205は、図13の(a)の部分に示すクロックOUT045A’とOUT045B’とに、(j/k)STEP分(例えば、1STEP分)の位相差ΔT’を検出した電圧レベルを出力する(ステップS14)。クロックの周波数(速度)をk分の1(例えば、2分の1)、SLEP2[15:0]のSTEPを(j/k)STEP分(例えば、1STEP分)としたため、ΔT=ΔT’となり、理想的にはレベル出力が一致する(実際には近い値になる)。クロックの周波数が遅い場合は、遅延量のばらつきが顕著となる。そのため、位相差検出部205は、位相差ΔT’がSTEPのばらつきが小さい位相差ΔTとなるように、PLL10のクロックを通常クロックにした場合の(j/k)STEP分(例えば、2STEP分)の位相差ΔTの出力レベルを基準とし、クロックの周波数をk分の1(例えば、2分の1)にした場合の(j/k)STEP(例えば、1STEP)の位相差ΔT’の電圧レベルと比較しながら、図4に示す出力特性制御信号にフィードバックする。位相差検出部205によるこの処理により、(j/k)STEP分(例えば、1STEP分)の位相差を最適に調整することが可能となる(すなわち、(j/k)STEP(例えば、1STEP)ごとの遅延量が同一遅延となり、位相差のばらつきが揃うことにより、遅延量を積算したときの直線性が改善される)(ステップS15)。図3に示す出力特性信号は、バッファ202a、202bのCMLバッファの出力信号の立ち上がり/立ち下がりの制御を示している。位相差検出部205は、出力特性信号により、バッファ202a、202bのCMLバッファの出力信号をなまらせる制御を行うことで、8相出力切替部203の入力波形を変更する。なお、遅延量のばらつきとは、位相補間で作られる設計上の(j/k)STEP(例えば、1STEP)の遅延と実際の(j/k)STEP(例えば、1STEP)の遅延との差のことである。
【0043】
図14は、本開示のいくつかの実施形態にかかる4相/8相変換部202の構成の一例を示す図である。図14に示す4相/8相変換部202は、0°~45°の位相補間がスルーレートだけでは調整できない場合の4相/8相変換部の構成を示している。図14に示す4相/8相変換部202は、スルーレートを制御するだけではなく、45°の位相切替も周波数毎に変更することで、位相補間についてより広範囲な精度の高い調整を可能にする。
【0044】
以上、本開示の一実施形態にかかる受信回路1について説明した。受信回路1の多相クロック発生回路20(クロック発生回路の一例)において、位相差検出部205(検出手段の一例)は、受信回路1(クロックに応じて動作する装置の一例)の初期化時に、通常周波数でjステップ分の第1位相差と、前記通常周波数のk分の1の周波数で(j/k)ステップ分の第2位相差とを検出する(例えば、j、kのそれぞれは2であり、通常周波数で2ステップ分の第1位相差と、前記通常周波数の2分の1の周波数で1ステップ分の第2位相差とを検出する)。位相差検出部205(変換手段の一例、比較手段の一例、送信手段の一例)は、前記第1位相差と前記第2位相差のそれぞれをアナログの電圧値に変換し、変換後の2つの電圧値を比較して誤差が最小となる値で出力特性制御信号を4相/8相変換部202(補正回路の一例)に送信する。
【0045】
ここで、PI(Phase Interpolator)回路を用いた一般的な多相クロック発生回路について説明する。一般的な多相クロック発生回路は、位相(遅延)の異なるクロック波形を互いに合成することで中間的な位相を補間して生成し、データをサンプリングするための最適な位相を持つクロック波形を作り出す。例えば、PI回路により作成するデジタル回路構成のサンプリングクロックの位相は、360°の位相切り替えが可能である。そのため、入力の位相を360分割できる回路であれば、1°ずつずれた位相を作成することができる(180分割できる回路の場合には、2°ずつずれた位相を作成することができる)。
【0046】
しかしながら、45°(または90°)の位相のずれた波形を合成している場合には、周波数毎に最適化する必要があり、動作速度を変更する場合には、後段に分周回路等を搭載する、または、速度に合わせて制御する必要がある。一般的に、PI回路を用いた多相クロック発生回路の欠点の1つとして、単純に動作速度を下げてしまうと、合成した波形が最適な遅延からずれた位相が発生し、不均一なSTEP(遅延幅)となる。そして、設計によっては、波形に歪みが発生し、信号の伝送エラーの原因や設計時の仕様の制約となる場合がある。そのため、周波数に応じて、クロックを最適にする設計が必要である。一例として、位相差が大きい場合(例えば45°)、スルーレートを制御する機構により波形をなまらせることで位相をリニアにする、または、周波数に合わせた45°の位相の遅延を追加することでクロックの位相を調整する方法がある。ただし、スルーレートを制御する機能の追加だけでは波形歪みが発生し、クロックの位相調整に限界があるため、45°の位相を発生させる回路を追加することが望ましい。しかしながら、45°の位相を遅延バッファで作成するためLSIプロセスのばらつきに応じて、さらに精度よく設計する必要がある。
【0047】
このような一般的な多相クロック発生回路に対して、この受信回路1における多相クロック発生回路20により、適切な位相に調整されたクロックを生成することができる。
【0048】
<他の実施形態>
本開示の一実施形態にかかる多相クロック発生回路20は、4相入力、8相出力変換の多相クロック発生回路であるものとして説明した。しかしながら、本開示の他の実施形態にかかる多相クロック発生回路20は、4相入力、4相出力、または4相入力、16相出力などの多相クロック回路で本開示の一実施形態にかかる多相クロック発生回路20と同様な機能を実現するものであってもよい。
【0049】
また、本開示の一実施形態にかかる受信回路1では、1つの多相クロック発生回路20に、1つのPLL10が接続されるものとして説明した。しかしながら、本開示の他の実施形態にかかる受信回路1は、複数の多相クロック発生回路20を備え、それら複数の多相クロック発生回路20が1つのPLL10を共有するものであってもよい。こうすることにより。実装面積の大きいPLL10を削減することができ、全体の実装面積を削減することが可能となる。
【0050】
また、本開示の他の実施形態では、位相差検出部205を複数に増やしてもよい。
【0051】
図15は、本開示のいくつかの実施形態にかかるクロック発生回路300の構成の一例を示す図である。クロック発生回路300は、図15に示すように、検出手段301、変換手段302、比較手段303、および送信手段304を備える。
【0052】
検出手段301は、受信回路1の初期化時に、通常周波数でjステップ分の第1位相差と、前記通常周波数のk分の1の周波数で(j/k)ステップ分の第2位相差とを検出する。変換手段302は、前記第1位相差と前記第2位相差のそれぞれをアナログの電圧値に変換する。比較手段303は、前記変換手段302による変換後の2つの電圧値を比較する。送信手段304は、前記比較手段303による比較結果である誤差が最小となる値で補正回路に送信する。
【0053】
検出手段301、変換手段302、比較手段303、および送信手段304は、例えば、図4などに例示されている位相差検出部205が有する機能を用いて実現することができる。
【0054】
図16は、本開示のいくつかの実施形態にかかるクロック発生回路300の処理フローの一例を示す図である。次に、本開示の実施形態にかかるクロック発生回路300が行う処理について図16を参照して説明する。
【0055】
検出手段301は、受信回路1の初期化時に、通常周波数でjステップ分の第1位相差と、前記通常周波数のk分の1の周波数で(j/k)ステップ分の第2位相差とを検出する(ステップS101)。変換手段302は、前記第1位相差と前記第2位相差のそれぞれをアナログの電圧値に変換する(ステップS102)。比較手段303は、前記変換手段302による変換後の2つの電圧値を比較する(ステップS103)。送信手段304は、前記比較手段303による比較結果である誤差が最小となる値で補正回路に送信する(ステップS104)。
【0056】
以上、本開示の実施形態にかかるクロック発生回路300について説明した。このクロック発生回路300により、適切な位相に調整されたクロックを生成することができる。
【0057】
なお、本開示の実施形態における処理は、適切な処理が行われる範囲において、処理の順番が入れ替わってもよい。
【0058】
本開示の実施形態について説明したが、上述の受信回路1、多相クロック発生回路20、その他の制御装置は内部に、コンピュータシステムを有していてもよい。そして、上述した処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。コンピュータの具体例を以下に示す。
【0059】
図17は、少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。コンピュータ5は、図17に示すように、CPU(Central Processing Unit)6、メインメモリ7、ストレージ8、インターフェース9を備える。
【0060】
例えば、上述の受信回路1、多相クロック発生回路20、その他の制御装置のそれぞれは、コンピュータ5に実装される。そして、上述した各処理部の動作は、プログラムの形式でストレージ8に記憶されている。CPU6は、プログラムをストレージ8から読み出してメインメモリ7に展開し、当該プログラムに従って上記処理を実行する。また、CPU6は、プログラムに従って、上述した各記憶部に対応する記憶領域をメインメモリ7に確保する。
【0061】
ストレージ8の例としては、HDD(Hard Disk Drive)、SSD(Solid State Drive)、磁気ディスク、光磁気ディスク、CD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disc Read Only Memory)、半導体メモリ等が挙げられる。ストレージ8は、コンピュータ5のバスに直接接続された内部メディアであってもよいし、インターフェース9または通信回線を介してコンピュータ5に接続される外部メディアであってもよい。また、このプログラムが通信回線によってコンピュータ5に配信される場合、配信を受けたコンピュータ5が当該プログラムをメインメモリ7に展開し、上記処理を実行してもよい。少なくとも1つの実施形態において、ストレージ8は、一時的でない有形の記憶媒体である。
【0062】
また、上記プログラムは、前述した機能の一部を実現してもよい。さらに、上記プログラムは、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるファイル、いわゆる差分ファイル(差分プログラム)であってもよい。
【0063】
本開示のいくつかの実施形態を説明したが、これらの実施形態は、例であり、開示の範囲を限定しない。これらの実施形態は、開示の要旨を逸脱しない範囲で、種々の追加、省略、置き換え、変更を行ってよい。
【0064】
なお、上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0065】
(付記1)
クロックに応じて動作する装置の初期化時に、通常周波数でjステップ分の第1位相差と、前記通常周波数のk分の1の周波数で(j/k)ステップ分の第2位相差とを検出する検出手段と、
前記第1位相差と前記第2位相差のそれぞれをアナログの電圧値に変換する変換手段と、
前記変換手段による変換後の2つの電圧値を比較する比較手段と、
前記比較手段による比較結果である誤差が最小となる値で出力特性制御信号を補正回路に送信する送信手段と、
を備えるクロック発生回路。
【0066】
(付記2)
前記jは、2であり、
前記kは、2である、
付記1に記載のクロック発生回路。
【0067】
(付記3)
前記クロックの速度が低速に切り替えられた場合に、
前記検出手段は、前記第1位相差と、前記第2位相差とを検出し、
前記送信手段は、前記出力特性制御信号を前記補正回路に送信する、
付記1または付記2に記載のクロック発生回路。
【0068】
(付記4)
前記クロックの速度が低速に切り替えられた場合とは、前記クロックの速度が2分の1の速度に切り替えられた場合のことである、
付記3に記載のクロック発生回路。
【0069】
(付記5)
クロックに応じて動作する装置の初期化時に、通常周波数でjステップ分の第1位相差と、前記通常周波数のk分の1の周波数で(j/k)ステップ分の第2位相差とを検出することと、
前記第1位相差と前記第2位相差のそれぞれをアナログの電圧値に変換することと、
変換後の2つの電圧値を比較することと、
比較結果である誤差が最小となる値で出力特性制御信号を補正回路に送信することと、
を含む処理方法。
【0070】
(付記6)
前記jは、2であり、
前記kは、2である、
付記5に記載の処理方法。
【0071】
(付記7)
前記クロックの速度が低速に切り替えられた場合に、
前記第1位相差と、前記第2位相差とを検出することと、
前記出力特性制御信号を前記補正回路に送信することと、
を含む付記5または付記6に記載の処理方法。
【0072】
(付記8)
前記クロックの速度が低速に切り替えられた場合とは、前記クロックの速度が2分の1の速度に切り替えられた場合のことである、
付記7に記載の処理方法。
【0073】
(付記9)
クロックに応じて動作する装置の初期化時に、通常周波数でjステップ分の第1位相差と、前記通常周波数のk分の1の周波数で(j/k)ステップ分の第2位相差とを検出することと、
前記第1位相差と前記第2位相差のそれぞれをアナログの電圧値に変換し、変換後の2つの電圧値を比較して誤差が最小となる値で出力特性制御信号を補正回路に送信することと、
をコンピュータに実行させるプログラム。
【0074】
(付記10)
前記jは、2であり、
前記kは、2である、
付記9に記載のプログラム。
【0075】
(付記11)
前記クロックの速度が低速に切り替えられた場合に、
前記第1位相差と、前記第2位相差とを検出することと、
前記出力特性制御信号を前記補正回路に送信することと、
をコンピュータに実行させる付記9または付記10に記載のプログラム。
【0076】
(付記12)
前記クロックの速度が低速に切り替えられた場合とは、前記クロックの速度が2分の1の速度に切り替えられた場合のことである、
付記11に記載のプログラム。
【符号の説明】
【0077】
1・・・受信回路
5・・・コンピュータ
6・・・CPU
7・・・メインメモリ
8・・・ストレージ
9・・・インターフェース
10・・・PLL(Phase Locked Loop)
20・・・多相クロック発生回路
30・・・サンプリングラッチ
40・・・Demux
50・・・位相検出回路
201・・・入力パス切替部
202・・・4相/8相変換部
202a、202b・・・バッファ
203・・・8相出力切替部
203a・・・前段部
203b・・・後段部(PI(Phase Interpolation)回路)
204・・・制御切替部
205・・・位相差検出部
【要約】
【課題】適切な位相に調整されたクロックを生成することのできるクロック発生回路を提供する。
【解決手段】クロック発生回路は、クロックに応じて動作する装置の初期化時に、通常周波数でjステップ分の第1位相差と、前記通常周波数のk分の1の周波数で(j/k)ステップ分の第2位相差とを検出する検出手段と、前記第1位相差と前記第2位相差のそれぞれをアナログの電圧値に変換する変換手段と、前記変換手段による変換後の2つの電圧値を比較する比較手段と、前記比較手段による比較結果である誤差が最小となる値で出力特性制御信号を補正回路に送信する送信手段と、を備える。
【選択図】図15
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17