遅延調整回路
【課題】遅延セルとして専用のハードマクロを必要とせず、かつ、遅延調整対象信号について高精度の遅延調整を行うことができる遅延調整回路を提供する。
【解決手段】位相比較器353で、セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数pと、ユニットセルの段数に換算したセレクタ351の遅延分qとを、基本情報として算出する。遅延制御器357で、クロック信号CLK及びデータ信号DATA1、DATA2を位相量θa°、θb°、θc°だけ遅延させるのに必要な遅延セル336、342、345内のユニットセルの段数wa、wb、wcを{(遅延位相量指示信号D_SETが指示する遅延位相量θa°、θb°又はθc°/360°)×p−q}という計算式で算出する。
【解決手段】位相比較器353で、セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数pと、ユニットセルの段数に換算したセレクタ351の遅延分qとを、基本情報として算出する。遅延制御器357で、クロック信号CLK及びデータ信号DATA1、DATA2を位相量θa°、θb°、θc°だけ遅延させるのに必要な遅延セル336、342、345内のユニットセルの段数wa、wb、wcを{(遅延位相量指示信号D_SETが指示する遅延位相量θa°、θb°又はθc°/360°)×p−q}という計算式で算出する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、信号ライン上の信号の遅延調整に使用する遅延調整回路に関する。
【背景技術】
【0002】
図4は従来の遅延調整回路の一例を示す回路図である。図4中、1は遅延調整対象信号であるクロック信号CLKを入力するためのクロック信号入力端子、2はクロック信号入力端子1から入力されたクロック信号CLKに対応して設けられた遅延調整用の遅延セルであり、その入力端子とその出力端子との間の遅延素子の段数を制御可能とされたもの、3は遅延セル2が出力するクロック信号CLK_OUTを外部に出力するためのクロック信号出力端子である。
【0003】
4は遅延調整対象信号であるデータ信号DATA1を入力するためのデータ信号入力端子、5はデータ信号入力端子4から入力されるデータ信号DATA1に対応して設けられた遅延調整用の遅延セルであり、その入力端子とその出力端子との間の遅延素子の段数を制御可能とされたもの、6は遅延セル5が出力するデータ信号DATA1_OUTを外部に出力するためのデータ信号出力端子である。
【0004】
7は遅延調整対象信号であるデータ信号DATA2を入力するためのデータ信号入力端子、8はデータ信号入力端子7から入力されるデータ信号DATA2に対応して設けられた遅延調整用の遅延セルであり、その入力端子とその出力端子との間の遅延素子の段数を制御可能とされたもの、9は遅延セル8が出力するデータ信号DATA2_OUTを外部に出力するためのデータ信号入力端子である。
【0005】
10は基準クロック信号REF_CLK1を入力するための基準クロック信号入力端子、11は基準クロック信号入力端子10から入力される基準クロック信号REF_CLK1に対応して設けられた遅延セルであり、その入力端子とその出力端子との間の遅延素子の段数を制御可能とされたもの、12は遅延セル11における入力端子と出力端子との間の遅延素子の段数を制御する256進カウンタであり、カウント値を遅延セル11に制御信号として与えるものである。なお、遅延セル2、5、8、11は同一構成とされる。
【0006】
13は基準クロック信号入力端子10から入力される基準クロック信号REF_CLK1と、遅延セル11が出力する基準クロック信号REF_CLK2と、256進カウンタ12のカウント値とから、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させるのに必要とした遅延セル11内の遅延素子の段数を検出する位相比較器である。
【0007】
14はクロック信号CLK及びデータ信号DATA1、DATA2の遅延調整を行うために、クロック信号CLKを遅延させる位相量θa°、データ信号DATA1を遅延させる位相量θb°及びデータ信号DATA2を遅延させる位相量θc°を指示する遅延位相量指示信号D_SETを入力するための遅延位相量指示信号入力端子である。
【0008】
15は位相比較器13が出力する基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させるために必要とした遅延セル11内の遅延素子の段数情報と、遅延位相量指示信号D_SETとから、遅延セル2、5、8の入力端子と出力端子との間の遅延素子の段数を制御して、クロック信号CLK及びデータ信号DATA1、DATA2の遅延位相量を制御する遅延制御器である。
【0009】
図4に示す従来の遅延調整回路は、位相比較器13で、基準クロック信号REF_CLK1と基準クロック信号REF_CLK2との位相を比較し、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させるために必要とした遅延セル11内の遅延素子の段数を検出し、この遅延素子の段数情報を元に、遅延制御器15により、遅延セル2、5、8の入力端子と出力端子との間の遅延素子の段数を制御し、クロック信号CLK及びデータ信号DATA1、DATA2の遅延調整を行うというものである。
【0010】
例えば、クロック信号CLKの遅延調整に必要な遅延セル2における入力端子と出力端子との間の遅延素子の段数は、遅延制御器15において、{(遅延位相量指示信号D_SETが指示する位相量θa°/360°)×(基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させるのに必要とした遅延セル11内の遅延素子の段数)}という計算式で計算される。
【0011】
図5は遅延セル11の第1構成例を示す回路図である。遅延セル11として第1構成例を使用する場合には、遅延セル2、5、8も、遅延セル11の第1構成例と同一の構成とされる。図5中、18は入力端子、19−0〜19−255は遅延素子をなすUDCM(Unit Delay Chain Module)、20は出力端子である。
【0012】
図6はUDCM19−0〜19−255の構成例を示す回路図である。図6中、23、24はインバータ、25は選択制御信号SELにより選択動作が制御されるセレクタであり、26はインバータ、27、28は伝送ゲートである。なお、UDCM19−0、19−64、19−128、19−192又はUDCM19−0、19−1、19−64、19−65、19−128、19−129、19−192、19−193をセレクタ25のみとする場合もある。
【0013】
図5に示す遅延セル11の第1構成例は、UDCM19−0〜19−63を含む遅延ライン、UDCM19−64〜19−127を含む遅延ライン、UDCM19−128〜19−191を含む遅延ライン、UDCM19−192〜19−255を含む遅延ラインの各遅延ラインで90°の遅延が行われ、全体として、基準クロック信号REF_CLK2が基準クロック信号REF_CLK1に対して1周期遅延するように、UDCM19−0〜19−255内のセレクタ25の制御を行うというものである。
【0014】
図7は遅延セル11の第2構成例を示す回路図である。遅延セル11として第2構成例を使用する場合には、遅延セル2、5、8も、遅延セル11の第2構成例と同一の構成とされる。図7中、31は入力端子、32は出力端子、33〜287は遅延素子をなすユニットセル、288〜319はNAND回路、320〜329はセレクタである。なお、ユニットセル33〜287は、図8に示すように、インバータ331、332を縦列接続して構成される。
【0015】
また、NAND回路288〜303には、それぞれ、16ビットのゲート制御信号CNT[31:16]内の1ビットが与えられ、NAND回路304〜319には、それぞれ、16ビットのゲート制御信号CNT[15:0]内の1ビットが与えられる。また、セレクタ320〜324には、それぞれ、4ビットの選択制御信号SEL[7:4]内の2ビットが与えられ、セレクタ325〜329には、それぞれ、4ビットの選択制御信号SEL[3:0]内の2ビットが与えられる。
【0016】
図9、図10及び図11は図7に示す遅延セル11の第2構成例における基準クロック信号REF−CLK1の通過ルート例を示す回路図であり、図9は遅延段数として0段を選択した場合、図10は遅延段数として20段を選択した場合、図11は遅延段数として152段を選択した場合を示している。
【特許文献1】特開2003−78399号公報
【発明の開示】
【発明が解決しようとする課題】
【0017】
図5に示す遅延セル11の第1構成例は、遅延ラインの配線抵抗・容量の影響が大きいため、等長配線等を施してハードマクロ化する必要があるが、専用のハードマクロを作成する場合には、その開発費が必要となり、コストアップを招き、また、チップレイアウトの自由度が低くなるという問題点がある。これに対して、図7に示す遅延セル11の第2構成例は、遅延素子としてユニットセルを使用しているので、専用のハードマクロを用意する手間を省くことができるという利点がある。
【0018】
ところで、図7に示す遅延セル11の第2構成例を使用する場合において、例えば、クロック信号CLKの遅延調整を行う場合には、遅延セル2における入力端子と出力端子との間の遅延素子の段数は、正確には、{(遅延位相量指示信号D_SETが指示する位相量θa°/360°)×(セレクタなしに基準クロック信号REF_CLK1を1周期遅延させるのに必要とする遅延セル11内のユニットセルの段数)−(ユニットセルの段数に換算した遅延セル11内のセレクタの遅延分)}でなければならない。
【0019】
しかしながら、図4に示す従来の遅延調整回路においては、図7に示す遅延セル11の第2構成例を使用する場合において、クロック信号CLKの遅延調整を行う場合には、遅延セル2における入力端子と出力端子との間のユニットセルの段数は、遅延制御器15において、{(遅延位相量指示信号D_SETが指示する位相量θa°/360°)×(基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させるのに必要とした遅延セル11内のユニットセルの段数)}という計算式で計算されることになり、クロック信号CLKの遅延調整を高精度に行うことができないという問題点があった。データ信号DATA1、DATA2の遅延調整を行う場合においても同様である。
【0020】
本発明は、かかる点に鑑み、遅延セルとして専用のハードマクロを必要とせず、かつ、遅延調整対象信号について高精度の遅延調整を行うことができるようにした遅延調整回路を提供することを目的とする。
【課題を解決するための手段】
【0021】
本出願で開示する遅延調整回路は、複数のユニットセルを縦列接続して構成され、基準クロック信号を遅延する遅延ラインと、選択制御信号に制御されて前記複数のユニットセルの出力信号から一つの出力信号を選択するセレクタとを備える遅延セルと、前記基準クロック信号と、前記セレクタの出力信号と、前記選択制御信号とから、前記セレクタなしに前記基準クロック信号を1周期遅延させるのに必要な前記ユニットセルの段数と、前記セレクタの遅延分とを、基本情報として算出する位相比較器とを備えるものである。
【発明の効果】
【0022】
開示した遅延調整回路によれば、前記遅延セルは、前記ユニットセルと前記セレクタとで構成されるので、前記遅延セルとして専用のハードマクロを必要としない。したがって、専用のハードマクロを用意することによるコストアップと、チップレイアウトの自由度の低下という不都合を避けることができる。
【0023】
また、前記セレクタなしに前記基準クロック信号を1周期遅延させるのに必要な前記ユニットセルの段数と前記セレクタの遅延分とが基本情報として算出されるので、遅延調整対象信号の位相をθ°だけ遅延させる場合には、{(θ°/360°)×(前記セレクタなしに前記基準クロック信号を1周期遅延させるのに必要な前記ユニットセルの段数)−(前記セレクタの遅延分)}を遅延制御信号として、前記遅延調整対象信号を遅延する遅延セルを制御する遅延制御器に与えることができる。したがって、前記遅延調整対象信号について高精度の遅延調整を行うことができる。
【発明を実施するための最良の形態】
【0024】
図1は本発明の一実施形態を示す回路図である。図1中、335は遅延調整対象信号であるクロック信号CLKを入力するためのクロック信号入力端子、336はクロック信号入力端子335から入力されたクロック信号CLKに対応して設けられた遅延調整用の遅延セル、337は遅延セル336が出力するクロック信号CLK_OUTを外部に出力するためのクロック信号出力端子である。
【0025】
遅延セル336において、338は遅延ラインである。遅延ライン338は、クロック信号入力端子335から入力されるクロック信号CLKを遅延するものであり、図8に示すユニットセルと同一構成の255個のユニットセル339−1〜339−255を縦列接続して構成したものである。但し、ユニットセル339−3、339−254間のユニットセル339−4〜339−253は図示を省略している。
【0026】
340はセレクタである。セレクタ340は、選択制御信号SL1により選択動作が制御されるものであり、ユニットセル339−1〜339−255の出力信号を入力して、選択制御信号SL1が指定する一つのユニットセルの出力信号を選択し、クロック信号CLK_OUTとして出力するものである。
【0027】
341は遅延調整対象信号であるデータ信号DATA1を入力するためのデータ信号入力端子、342はデータ信号入力端子341から入力されるデータ信号DATA1に対応して設けられた遅延調整用の遅延セル、343は遅延セル342が出力するデータ信号DATA1_OUTを外部に出力するためのデータ信号出力端子である。遅延セル342は、遅延セル336と同一構成とされ、セレクタ340に相当する遅延セル342内のセレクタには選択制御信号として選択制御信号SL2が与えられる。
【0028】
344は遅延調整対象信号であるデータ信号DATA2を入力するためのデータ信号入力端子、345はデータ信号入力端子344から入力されるデータ信号DATA2に対応して設けられた遅延調整用の遅延セル、346は遅延セル345が出力するデータ信号DATA2_OUTを外部に出力するためのデータ信号出力端子である。遅延セル345は、遅延セル336と同一構成とされ、セレクタ340に相当する遅延セル345内のセレクタには選択制御信号として選択制御信号SL3が与えられる。
【0029】
347は基準クロック信号REF−CLK1を入力するための基準クロック信号入力端子、348は基準クロック信号入力端子347から入力される基準クロック信号REF−CLK1に対応して設けられた遅延セルであり、遅延セル336と同一構成とされている。
【0030】
遅延セル348において、349は遅延ラインである。遅延ライン349は、基準クロック信号入力端子347から入力される基準クロック信号REF−CLK1を遅延するものであり、図8に示すユニットセルと同一構成の255個のユニットセル350−1〜350−255を縦列接続して構成したものである。但し、ユニットセル350−3、350−254間のユニットセル350−4〜350−253は図示を省略している。なお、遅延セル336、342、345、348内のユニットセルの遅延時間は同一とされる。
【0031】
351はセレクタである。セレクタ351は、選択制御信号SL0により選択動作が制御されるものであり、ユニットセル350−1〜350−255の出力信号を入力して、選択制御信号SL0が指定する一つのユニットセルの出力信号を選択し、これを基準クロック信号REF_CLK2として出力するものである。なお、遅延セル336、342、345、348内のセレクタの遅延時間は同一とされる。
【0032】
352はセレクタ351の選択動作を制御する選択制御信号SL0を生成するセレクタ・コントローラをなす256進カウンタである。この256進カウンタ352は、本発明の一実施形態の外部装置又は内部装置により制御され、セレクタ351がユニットセル350−1〜350−255の出力信号をユニットセル350−1の出力信号から順に選択することができる選択制御信号SL0を出力する。
【0033】
353は位相比較器である。位相比較器353は、基準クロック信号REF_CLK1と、基準クロック信号REF_CLK2と、選択制御信号SL0とから、セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数pと、ユニットセルの段数に換算したセレクタ351の遅延分qとを、基本情報として算出するものであり、位相比較部354と、第1の算出部355とを備えている。
【0034】
位相比較部354は、256進カウンタ352が選択制御信号SL0を出力してセレクタ351を制御するときに、位相比較器353に入力される基準クロック信号REF_CLK1と基準クロック信号REF_CLK2との位相を比較し、基準クロック信号REF_CLK2が基準クロック信号REF_CLK1に対して1周期遅延したタイミングと、基準クロック信号REF_CLK2が基準クロック信号REF_CLK1に対して2周期遅延したタイミングとを検出するものである。
【0035】
第1の算出部355は、位相比較部354の位相比較結果と選択制御信号SL0とから、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させた遅延セル348内のユニットセルの段数mと、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して2周期遅延させた遅延セル348内のユニットセルの段数nとを検出し、これらユニットセルの段数m、nから、セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数pと、ユニットセルの段数に換算したセレクタ351の遅延分qとを、基本情報として算出するものである。
【0036】
356はクロック信号CLK及びデータ信号DATA1、DATA2の遅延調整を行うために、クロック信号CLKを遅延させる位相量θa°、データ信号DATA1を遅延させる位相量θb°及びデータ信号DATA2を遅延させる位相量θc°を指示する遅延位相量指示信号D_SETを入力するための遅延位相量指示信号入力端子である。
【0037】
357は位相比較器353が出力する基本情報(セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数p及びユニットセルの段数に換算したセレクタ351の遅延分q)と、遅延位相量指示信号D_SETとを入力し、遅延セル336、342、345内のセレクタを制御する選択制御信号SL1、SL2、SL3を出力する遅延制御器であり、第2の算出部358と、選択制御信号生成部359とを備えている。
【0038】
第2の算出部358は、クロック信号CLK及びデータ信号DATA1、DATA2を遅延セル336、342、345により遅延位相量指示信号D_SETが指示した位相量θa°、θb°、θc°だけ遅延させるのに必要な遅延セル336、342、345内のユニットセルの段数wa、wb、wcを、{(遅延位相量指示信号D_SETが指示する位相量θa°、θb°又はθc°/360°)×(セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数p)−(ユニットセルの段数に換算したセレクタ351の遅延分q)}という計算式で算出するものである。選択制御信号生成部359は、第2の算出部358が算出したユニットセルの段数wa、wb、wcを元に、選択制御信号SL1、SL2、SL3を生成するものである。
【0039】
図2及び図3は本発明の一実施形態の動作を説明するための図である。本発明の一実施形態においては、クロック信号CLK及びデータ信号DATA1、DATA2の遅延調整を行う場合、まず、クロック信号CLKを遅延させる位相量θa°、データ信号DATA1を遅延させる位相量θb°及びデータ信号DATA2を遅延させる位相量θc°を指示する遅延位相量指示信号D_SETを遅延位相量指示信号入力端子に与え、そして、基準クロック信号REF_CLK1を基準クロック信号入力端子347に与え、更に、256進カウンタ352を制御し、セレクタ351がユニットセル350−1〜350−255の出力信号をユニットセル350−1の出力信号から順に選択することができる選択制御信号SL0を出力させる。
【0040】
ここで、図2(A)は基準クロック信号REF−CLK2が基準クロック信号REF−CLK1に対して1周期遅延した時の状態、図2(B)は位相比較部354が、基準クロック信号REF−CLK2が基準クロック信号REF−CLK1に対して1周期遅延したタイミングを検出したときのセレクタ351の選択状態を示している。
【0041】
また、図3(A)は基準クロック信号REF−CLK2が基準クロック信号REF−CLK1に対して2周期遅延した時の状態、図3(B)は位相比較部354が、基準クロック信号REF−CLK2が基準クロック信号REF−CLK1に対して2周期遅延したタイミングを検出したときのセレクタ351の選択状態を示している。
【0042】
図2に示すところでは、位相比較部354が、基準クロック信号REF−CLK2が基準クロック信号REF−CLK1に対して1周期遅延したタイミングを検出したときに、セレクタ351は、ユニットセル350−mの出力信号を選択しているので、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させた遅延セル348内のユニットセルの段数はm段である。この場合、遅延セル348における遅延段数は、{(基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させた遅延セル348内のユニットセルの段数m)+(ユニットセルの段数に換算したセレクタ351の遅延分q)}となる。
【0043】
また、図3に示すところでは、位相比較部354が、基準クロック信号REF−CLK2が基準クロック信号REF−CLK1に対して2周期遅延したタイミングを検出したときに、セレクタ351は、ユニットセル351−nの出力信号を選択しているので、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して2周期遅延させた遅延セル348内のユニットセルの段数はn段である。この場合、遅延セル348における遅延段数は、「(基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して2周期遅延させた遅延セル348内のユニットセルの段数n)+(ユニットセルの段数に換算したセレクタ351の遅延分q)」となる。
【0044】
ここで、基準クロック信号REF_CLK1の1周期の時間をT、1個のユニットセルの遅延時間をtdとすると、数1に示す式が成立する。
【0045】
【数1】
【0046】
したがって、また、数2に示す式が成立する。
【0047】
【数2】
【0048】
即ち、セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数pは(n−m)段となり、ユニットセルの段数に換算したセレクタ351の遅延分qは(n−2m)段となる。そこで、位相比較器353は、これらを計算し、「p=n−m」と「q=n−2m」とを基本情報として遅延制御器357に与える。
【0049】
遅延制御器357においては、第2の算出部358は、遅延位相量指示信号D_SETが、例えば、クロック信号CLKについては、位相量θa°だけ遅延させることを指示している場合には、クロック信号CLKを位相量θa°だけ遅延させるのに必要な遅延セル336内のユニットセルの段数waを数3の式で算出する。
【0050】
【数3】
【0051】
そして、選択制御信号生成部359は、遅延セル336内のセレクタ340がユニットセル339−waを選択するための選択制御信号SL1を生成し、これをセレクタ340に与える。このようにすると、セレクタ340が出力するクロック信号CLK_OUTは、クロック信号入力端子335に入力されるクロック信号CLKに対してθa°だけ遅延したものとなる。データ信号DATA1、DATA2を任意の位相量だけ遅延させる場合も同様に行うことができる。
【0052】
ここで、例えば、クロック信号CLKを120°だけ遅延させる場合において、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させるのに必要とした遅延セル348内のユニットセルの段数m=68、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して2周期遅延させるのに必要とした遅延セル348内のユニットセルの段数n=138であったとする。
【0053】
この場合には、セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数p=138−68=70、ユニットセルの段数に換算したセレクタ351の遅延分q=138−2×68=2となる。この結果、(120°/360°)×70−2=21.3となるので、この場合には、クロック信号CLKを位相量120°だけ遅延させるのに必要な遅延セル336内のユニットセルの段数waを22とする。
【0054】
これに対して、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させるのに必要とした遅延セル348内のユニットセルの段数mのみを検出し、従来手法で、クロック信号CLKを位相量120°だけ遅延させるのに必要な遅延セル336内のユニットセルの段数waを計算すると、(120°/360°)×68=22.7となるので、wa=23となる。この例の場合には、本発明の一実施形態による場合と従来手法とでは、ユニットセルの段数に1段の差が発生し、この分だけ、本発明の一実施形態によれば、クロック信号CLKの遅延調整を高精度に行うことができる。データ信号DATA1、DATA2の遅延調整を行う場合も同様である。
【0055】
以上のように、本発明の一実施形態においては、遅延セル336、342、345、348を複数のユニットセルを縦列接続してなる遅延ラインとセレクタとで構成しているので、遅延セル336、342、345、348として、専用のハードマクロを必要としない。したがって、専用のハードマクロを用意することによるコストアップと、チップレイアウトの自由度の低下という不都合を避けることができる。
【0056】
また、位相比較器353で、セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数pと、ユニットセルの段数に換算したセレクタ351の遅延分qとを、基本情報として算出することができる。
【0057】
したがって、また、遅延制御器357で、クロック信号CLK及びデータ信号DATA1、DATA2を位相量θa°、θb°、θc°だけ遅延させるのに必要な遅延セル336、342、345内のユニットセルの段数wa、wb、wcを、{(遅延位相量指示信号D_SETが指示する位相量θa°、θb°又はθc°/360°)×(セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数p)−(ユニットセルの段数に換算したセレクタ351の遅延分q)}という計算式で算出することができる。したがって、クロック信号CLK及びデータ信号DATA1、DATA2について高精度の遅延調整を行うことができる。
【0058】
なお、本発明の一実施形態においては、クロック信号CLK及びデータ信号DATA1、DATA2を遅延調整対象信号とした場合について説明したが、本発明は、この場合に限られるものではなく、複数のクロック信号を遅延調整対象信号とする場合や、1個又は3個以上のデータ信号を遅延調整対象信号とする場合や、複数のクロック信号及び1個以上のデータ信号を遅延調整対象信号とする場合などにも適用することができる。
【図面の簡単な説明】
【0059】
【図1】本発明の一実施形態を示す回路図である。
【図2】本発明の一実施形態の動作を説明するための図である。
【図3】本発明の一実施形態の動作を説明するための図である。
【図4】従来の遅延調整回路の一例を示す回路図である。
【図5】図4に示す従来の遅延調整回路が備える遅延セルの第1構成例を示す回路図である。
【図6】図5に示す遅延セルの第1構成例が備えるUDCM(Unit Delay Chain Module)の構成例を示す回路図である。
【図7】図4に示す遅延調整回路が備える遅延セルの第2構成例を示す回路図である。
【図8】図7に示す遅延セルの第2構成例が備えるユニットセルの構成を示す回路図である。
【図9】図7に示す遅延セルの第2構成例における基準クロック信号の通過ルート例(遅延段数として0段を選択した場合)を示す回路図である。
【図10】図7に示す遅延セルの第2構成例における基準クロック信号の通過ルート例(遅延段数として20段を選択した場合)を示す回路図である。
【図11】図7に示す遅延セルの第2構成例における基準クロック信号の通過ルート例(遅延段数として152段を選択した場合)を示す回路図である。
【符号の説明】
【0060】
1…クロック信号入力端子
2…遅延セル
3…クロック信号出力端子
4…データ信号入力端子
5…遅延セル
6…データ信号出力端子
7…データ信号入力端子
8…遅延セル
9…データ信号出力端子
10…基準クロック信号入力端子
11…遅延セル
12…256進カウンタ
13…位相比較器
14…遅延位相量指示信号入力端子
15…遅延制御器
18…入力端子
19−i…UDCM
20…出力端子
23、24…インバータ
25…セレクタ
26…インバータ
27、28…伝送ゲート
31…入力端子
32…出力端子
33〜287…ユニットセル
288〜319…NAND回路
320〜329…セレクタ
331、332…インバータ
335…クロック信号入力端子
336…遅延セル
337…クロック信号出力端子
338…遅延ライン
339−k…ユニットセル
340…セレクタ
341…データ信号入力端子
342…遅延セル
343…データ信号出力端子
344…データ信号入力端子
345…遅延セル
346…データ信号出力端子
347…基準クロック信号入力端子
348…遅延セル
349…遅延ライン
350−k…ユニットセル
351…セレクタ
352…256進カウンタ
353…位相比較器
354…位相比較部
355…第1の算出部
356…遅延位相量指示信号入力端子
357…遅延制御器
358…第2の算出部
359…選択制御信号生成部
【技術分野】
【0001】
本発明は、信号ライン上の信号の遅延調整に使用する遅延調整回路に関する。
【背景技術】
【0002】
図4は従来の遅延調整回路の一例を示す回路図である。図4中、1は遅延調整対象信号であるクロック信号CLKを入力するためのクロック信号入力端子、2はクロック信号入力端子1から入力されたクロック信号CLKに対応して設けられた遅延調整用の遅延セルであり、その入力端子とその出力端子との間の遅延素子の段数を制御可能とされたもの、3は遅延セル2が出力するクロック信号CLK_OUTを外部に出力するためのクロック信号出力端子である。
【0003】
4は遅延調整対象信号であるデータ信号DATA1を入力するためのデータ信号入力端子、5はデータ信号入力端子4から入力されるデータ信号DATA1に対応して設けられた遅延調整用の遅延セルであり、その入力端子とその出力端子との間の遅延素子の段数を制御可能とされたもの、6は遅延セル5が出力するデータ信号DATA1_OUTを外部に出力するためのデータ信号出力端子である。
【0004】
7は遅延調整対象信号であるデータ信号DATA2を入力するためのデータ信号入力端子、8はデータ信号入力端子7から入力されるデータ信号DATA2に対応して設けられた遅延調整用の遅延セルであり、その入力端子とその出力端子との間の遅延素子の段数を制御可能とされたもの、9は遅延セル8が出力するデータ信号DATA2_OUTを外部に出力するためのデータ信号入力端子である。
【0005】
10は基準クロック信号REF_CLK1を入力するための基準クロック信号入力端子、11は基準クロック信号入力端子10から入力される基準クロック信号REF_CLK1に対応して設けられた遅延セルであり、その入力端子とその出力端子との間の遅延素子の段数を制御可能とされたもの、12は遅延セル11における入力端子と出力端子との間の遅延素子の段数を制御する256進カウンタであり、カウント値を遅延セル11に制御信号として与えるものである。なお、遅延セル2、5、8、11は同一構成とされる。
【0006】
13は基準クロック信号入力端子10から入力される基準クロック信号REF_CLK1と、遅延セル11が出力する基準クロック信号REF_CLK2と、256進カウンタ12のカウント値とから、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させるのに必要とした遅延セル11内の遅延素子の段数を検出する位相比較器である。
【0007】
14はクロック信号CLK及びデータ信号DATA1、DATA2の遅延調整を行うために、クロック信号CLKを遅延させる位相量θa°、データ信号DATA1を遅延させる位相量θb°及びデータ信号DATA2を遅延させる位相量θc°を指示する遅延位相量指示信号D_SETを入力するための遅延位相量指示信号入力端子である。
【0008】
15は位相比較器13が出力する基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させるために必要とした遅延セル11内の遅延素子の段数情報と、遅延位相量指示信号D_SETとから、遅延セル2、5、8の入力端子と出力端子との間の遅延素子の段数を制御して、クロック信号CLK及びデータ信号DATA1、DATA2の遅延位相量を制御する遅延制御器である。
【0009】
図4に示す従来の遅延調整回路は、位相比較器13で、基準クロック信号REF_CLK1と基準クロック信号REF_CLK2との位相を比較し、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させるために必要とした遅延セル11内の遅延素子の段数を検出し、この遅延素子の段数情報を元に、遅延制御器15により、遅延セル2、5、8の入力端子と出力端子との間の遅延素子の段数を制御し、クロック信号CLK及びデータ信号DATA1、DATA2の遅延調整を行うというものである。
【0010】
例えば、クロック信号CLKの遅延調整に必要な遅延セル2における入力端子と出力端子との間の遅延素子の段数は、遅延制御器15において、{(遅延位相量指示信号D_SETが指示する位相量θa°/360°)×(基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させるのに必要とした遅延セル11内の遅延素子の段数)}という計算式で計算される。
【0011】
図5は遅延セル11の第1構成例を示す回路図である。遅延セル11として第1構成例を使用する場合には、遅延セル2、5、8も、遅延セル11の第1構成例と同一の構成とされる。図5中、18は入力端子、19−0〜19−255は遅延素子をなすUDCM(Unit Delay Chain Module)、20は出力端子である。
【0012】
図6はUDCM19−0〜19−255の構成例を示す回路図である。図6中、23、24はインバータ、25は選択制御信号SELにより選択動作が制御されるセレクタであり、26はインバータ、27、28は伝送ゲートである。なお、UDCM19−0、19−64、19−128、19−192又はUDCM19−0、19−1、19−64、19−65、19−128、19−129、19−192、19−193をセレクタ25のみとする場合もある。
【0013】
図5に示す遅延セル11の第1構成例は、UDCM19−0〜19−63を含む遅延ライン、UDCM19−64〜19−127を含む遅延ライン、UDCM19−128〜19−191を含む遅延ライン、UDCM19−192〜19−255を含む遅延ラインの各遅延ラインで90°の遅延が行われ、全体として、基準クロック信号REF_CLK2が基準クロック信号REF_CLK1に対して1周期遅延するように、UDCM19−0〜19−255内のセレクタ25の制御を行うというものである。
【0014】
図7は遅延セル11の第2構成例を示す回路図である。遅延セル11として第2構成例を使用する場合には、遅延セル2、5、8も、遅延セル11の第2構成例と同一の構成とされる。図7中、31は入力端子、32は出力端子、33〜287は遅延素子をなすユニットセル、288〜319はNAND回路、320〜329はセレクタである。なお、ユニットセル33〜287は、図8に示すように、インバータ331、332を縦列接続して構成される。
【0015】
また、NAND回路288〜303には、それぞれ、16ビットのゲート制御信号CNT[31:16]内の1ビットが与えられ、NAND回路304〜319には、それぞれ、16ビットのゲート制御信号CNT[15:0]内の1ビットが与えられる。また、セレクタ320〜324には、それぞれ、4ビットの選択制御信号SEL[7:4]内の2ビットが与えられ、セレクタ325〜329には、それぞれ、4ビットの選択制御信号SEL[3:0]内の2ビットが与えられる。
【0016】
図9、図10及び図11は図7に示す遅延セル11の第2構成例における基準クロック信号REF−CLK1の通過ルート例を示す回路図であり、図9は遅延段数として0段を選択した場合、図10は遅延段数として20段を選択した場合、図11は遅延段数として152段を選択した場合を示している。
【特許文献1】特開2003−78399号公報
【発明の開示】
【発明が解決しようとする課題】
【0017】
図5に示す遅延セル11の第1構成例は、遅延ラインの配線抵抗・容量の影響が大きいため、等長配線等を施してハードマクロ化する必要があるが、専用のハードマクロを作成する場合には、その開発費が必要となり、コストアップを招き、また、チップレイアウトの自由度が低くなるという問題点がある。これに対して、図7に示す遅延セル11の第2構成例は、遅延素子としてユニットセルを使用しているので、専用のハードマクロを用意する手間を省くことができるという利点がある。
【0018】
ところで、図7に示す遅延セル11の第2構成例を使用する場合において、例えば、クロック信号CLKの遅延調整を行う場合には、遅延セル2における入力端子と出力端子との間の遅延素子の段数は、正確には、{(遅延位相量指示信号D_SETが指示する位相量θa°/360°)×(セレクタなしに基準クロック信号REF_CLK1を1周期遅延させるのに必要とする遅延セル11内のユニットセルの段数)−(ユニットセルの段数に換算した遅延セル11内のセレクタの遅延分)}でなければならない。
【0019】
しかしながら、図4に示す従来の遅延調整回路においては、図7に示す遅延セル11の第2構成例を使用する場合において、クロック信号CLKの遅延調整を行う場合には、遅延セル2における入力端子と出力端子との間のユニットセルの段数は、遅延制御器15において、{(遅延位相量指示信号D_SETが指示する位相量θa°/360°)×(基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させるのに必要とした遅延セル11内のユニットセルの段数)}という計算式で計算されることになり、クロック信号CLKの遅延調整を高精度に行うことができないという問題点があった。データ信号DATA1、DATA2の遅延調整を行う場合においても同様である。
【0020】
本発明は、かかる点に鑑み、遅延セルとして専用のハードマクロを必要とせず、かつ、遅延調整対象信号について高精度の遅延調整を行うことができるようにした遅延調整回路を提供することを目的とする。
【課題を解決するための手段】
【0021】
本出願で開示する遅延調整回路は、複数のユニットセルを縦列接続して構成され、基準クロック信号を遅延する遅延ラインと、選択制御信号に制御されて前記複数のユニットセルの出力信号から一つの出力信号を選択するセレクタとを備える遅延セルと、前記基準クロック信号と、前記セレクタの出力信号と、前記選択制御信号とから、前記セレクタなしに前記基準クロック信号を1周期遅延させるのに必要な前記ユニットセルの段数と、前記セレクタの遅延分とを、基本情報として算出する位相比較器とを備えるものである。
【発明の効果】
【0022】
開示した遅延調整回路によれば、前記遅延セルは、前記ユニットセルと前記セレクタとで構成されるので、前記遅延セルとして専用のハードマクロを必要としない。したがって、専用のハードマクロを用意することによるコストアップと、チップレイアウトの自由度の低下という不都合を避けることができる。
【0023】
また、前記セレクタなしに前記基準クロック信号を1周期遅延させるのに必要な前記ユニットセルの段数と前記セレクタの遅延分とが基本情報として算出されるので、遅延調整対象信号の位相をθ°だけ遅延させる場合には、{(θ°/360°)×(前記セレクタなしに前記基準クロック信号を1周期遅延させるのに必要な前記ユニットセルの段数)−(前記セレクタの遅延分)}を遅延制御信号として、前記遅延調整対象信号を遅延する遅延セルを制御する遅延制御器に与えることができる。したがって、前記遅延調整対象信号について高精度の遅延調整を行うことができる。
【発明を実施するための最良の形態】
【0024】
図1は本発明の一実施形態を示す回路図である。図1中、335は遅延調整対象信号であるクロック信号CLKを入力するためのクロック信号入力端子、336はクロック信号入力端子335から入力されたクロック信号CLKに対応して設けられた遅延調整用の遅延セル、337は遅延セル336が出力するクロック信号CLK_OUTを外部に出力するためのクロック信号出力端子である。
【0025】
遅延セル336において、338は遅延ラインである。遅延ライン338は、クロック信号入力端子335から入力されるクロック信号CLKを遅延するものであり、図8に示すユニットセルと同一構成の255個のユニットセル339−1〜339−255を縦列接続して構成したものである。但し、ユニットセル339−3、339−254間のユニットセル339−4〜339−253は図示を省略している。
【0026】
340はセレクタである。セレクタ340は、選択制御信号SL1により選択動作が制御されるものであり、ユニットセル339−1〜339−255の出力信号を入力して、選択制御信号SL1が指定する一つのユニットセルの出力信号を選択し、クロック信号CLK_OUTとして出力するものである。
【0027】
341は遅延調整対象信号であるデータ信号DATA1を入力するためのデータ信号入力端子、342はデータ信号入力端子341から入力されるデータ信号DATA1に対応して設けられた遅延調整用の遅延セル、343は遅延セル342が出力するデータ信号DATA1_OUTを外部に出力するためのデータ信号出力端子である。遅延セル342は、遅延セル336と同一構成とされ、セレクタ340に相当する遅延セル342内のセレクタには選択制御信号として選択制御信号SL2が与えられる。
【0028】
344は遅延調整対象信号であるデータ信号DATA2を入力するためのデータ信号入力端子、345はデータ信号入力端子344から入力されるデータ信号DATA2に対応して設けられた遅延調整用の遅延セル、346は遅延セル345が出力するデータ信号DATA2_OUTを外部に出力するためのデータ信号出力端子である。遅延セル345は、遅延セル336と同一構成とされ、セレクタ340に相当する遅延セル345内のセレクタには選択制御信号として選択制御信号SL3が与えられる。
【0029】
347は基準クロック信号REF−CLK1を入力するための基準クロック信号入力端子、348は基準クロック信号入力端子347から入力される基準クロック信号REF−CLK1に対応して設けられた遅延セルであり、遅延セル336と同一構成とされている。
【0030】
遅延セル348において、349は遅延ラインである。遅延ライン349は、基準クロック信号入力端子347から入力される基準クロック信号REF−CLK1を遅延するものであり、図8に示すユニットセルと同一構成の255個のユニットセル350−1〜350−255を縦列接続して構成したものである。但し、ユニットセル350−3、350−254間のユニットセル350−4〜350−253は図示を省略している。なお、遅延セル336、342、345、348内のユニットセルの遅延時間は同一とされる。
【0031】
351はセレクタである。セレクタ351は、選択制御信号SL0により選択動作が制御されるものであり、ユニットセル350−1〜350−255の出力信号を入力して、選択制御信号SL0が指定する一つのユニットセルの出力信号を選択し、これを基準クロック信号REF_CLK2として出力するものである。なお、遅延セル336、342、345、348内のセレクタの遅延時間は同一とされる。
【0032】
352はセレクタ351の選択動作を制御する選択制御信号SL0を生成するセレクタ・コントローラをなす256進カウンタである。この256進カウンタ352は、本発明の一実施形態の外部装置又は内部装置により制御され、セレクタ351がユニットセル350−1〜350−255の出力信号をユニットセル350−1の出力信号から順に選択することができる選択制御信号SL0を出力する。
【0033】
353は位相比較器である。位相比較器353は、基準クロック信号REF_CLK1と、基準クロック信号REF_CLK2と、選択制御信号SL0とから、セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数pと、ユニットセルの段数に換算したセレクタ351の遅延分qとを、基本情報として算出するものであり、位相比較部354と、第1の算出部355とを備えている。
【0034】
位相比較部354は、256進カウンタ352が選択制御信号SL0を出力してセレクタ351を制御するときに、位相比較器353に入力される基準クロック信号REF_CLK1と基準クロック信号REF_CLK2との位相を比較し、基準クロック信号REF_CLK2が基準クロック信号REF_CLK1に対して1周期遅延したタイミングと、基準クロック信号REF_CLK2が基準クロック信号REF_CLK1に対して2周期遅延したタイミングとを検出するものである。
【0035】
第1の算出部355は、位相比較部354の位相比較結果と選択制御信号SL0とから、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させた遅延セル348内のユニットセルの段数mと、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して2周期遅延させた遅延セル348内のユニットセルの段数nとを検出し、これらユニットセルの段数m、nから、セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数pと、ユニットセルの段数に換算したセレクタ351の遅延分qとを、基本情報として算出するものである。
【0036】
356はクロック信号CLK及びデータ信号DATA1、DATA2の遅延調整を行うために、クロック信号CLKを遅延させる位相量θa°、データ信号DATA1を遅延させる位相量θb°及びデータ信号DATA2を遅延させる位相量θc°を指示する遅延位相量指示信号D_SETを入力するための遅延位相量指示信号入力端子である。
【0037】
357は位相比較器353が出力する基本情報(セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数p及びユニットセルの段数に換算したセレクタ351の遅延分q)と、遅延位相量指示信号D_SETとを入力し、遅延セル336、342、345内のセレクタを制御する選択制御信号SL1、SL2、SL3を出力する遅延制御器であり、第2の算出部358と、選択制御信号生成部359とを備えている。
【0038】
第2の算出部358は、クロック信号CLK及びデータ信号DATA1、DATA2を遅延セル336、342、345により遅延位相量指示信号D_SETが指示した位相量θa°、θb°、θc°だけ遅延させるのに必要な遅延セル336、342、345内のユニットセルの段数wa、wb、wcを、{(遅延位相量指示信号D_SETが指示する位相量θa°、θb°又はθc°/360°)×(セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数p)−(ユニットセルの段数に換算したセレクタ351の遅延分q)}という計算式で算出するものである。選択制御信号生成部359は、第2の算出部358が算出したユニットセルの段数wa、wb、wcを元に、選択制御信号SL1、SL2、SL3を生成するものである。
【0039】
図2及び図3は本発明の一実施形態の動作を説明するための図である。本発明の一実施形態においては、クロック信号CLK及びデータ信号DATA1、DATA2の遅延調整を行う場合、まず、クロック信号CLKを遅延させる位相量θa°、データ信号DATA1を遅延させる位相量θb°及びデータ信号DATA2を遅延させる位相量θc°を指示する遅延位相量指示信号D_SETを遅延位相量指示信号入力端子に与え、そして、基準クロック信号REF_CLK1を基準クロック信号入力端子347に与え、更に、256進カウンタ352を制御し、セレクタ351がユニットセル350−1〜350−255の出力信号をユニットセル350−1の出力信号から順に選択することができる選択制御信号SL0を出力させる。
【0040】
ここで、図2(A)は基準クロック信号REF−CLK2が基準クロック信号REF−CLK1に対して1周期遅延した時の状態、図2(B)は位相比較部354が、基準クロック信号REF−CLK2が基準クロック信号REF−CLK1に対して1周期遅延したタイミングを検出したときのセレクタ351の選択状態を示している。
【0041】
また、図3(A)は基準クロック信号REF−CLK2が基準クロック信号REF−CLK1に対して2周期遅延した時の状態、図3(B)は位相比較部354が、基準クロック信号REF−CLK2が基準クロック信号REF−CLK1に対して2周期遅延したタイミングを検出したときのセレクタ351の選択状態を示している。
【0042】
図2に示すところでは、位相比較部354が、基準クロック信号REF−CLK2が基準クロック信号REF−CLK1に対して1周期遅延したタイミングを検出したときに、セレクタ351は、ユニットセル350−mの出力信号を選択しているので、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させた遅延セル348内のユニットセルの段数はm段である。この場合、遅延セル348における遅延段数は、{(基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させた遅延セル348内のユニットセルの段数m)+(ユニットセルの段数に換算したセレクタ351の遅延分q)}となる。
【0043】
また、図3に示すところでは、位相比較部354が、基準クロック信号REF−CLK2が基準クロック信号REF−CLK1に対して2周期遅延したタイミングを検出したときに、セレクタ351は、ユニットセル351−nの出力信号を選択しているので、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して2周期遅延させた遅延セル348内のユニットセルの段数はn段である。この場合、遅延セル348における遅延段数は、「(基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して2周期遅延させた遅延セル348内のユニットセルの段数n)+(ユニットセルの段数に換算したセレクタ351の遅延分q)」となる。
【0044】
ここで、基準クロック信号REF_CLK1の1周期の時間をT、1個のユニットセルの遅延時間をtdとすると、数1に示す式が成立する。
【0045】
【数1】
【0046】
したがって、また、数2に示す式が成立する。
【0047】
【数2】
【0048】
即ち、セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数pは(n−m)段となり、ユニットセルの段数に換算したセレクタ351の遅延分qは(n−2m)段となる。そこで、位相比較器353は、これらを計算し、「p=n−m」と「q=n−2m」とを基本情報として遅延制御器357に与える。
【0049】
遅延制御器357においては、第2の算出部358は、遅延位相量指示信号D_SETが、例えば、クロック信号CLKについては、位相量θa°だけ遅延させることを指示している場合には、クロック信号CLKを位相量θa°だけ遅延させるのに必要な遅延セル336内のユニットセルの段数waを数3の式で算出する。
【0050】
【数3】
【0051】
そして、選択制御信号生成部359は、遅延セル336内のセレクタ340がユニットセル339−waを選択するための選択制御信号SL1を生成し、これをセレクタ340に与える。このようにすると、セレクタ340が出力するクロック信号CLK_OUTは、クロック信号入力端子335に入力されるクロック信号CLKに対してθa°だけ遅延したものとなる。データ信号DATA1、DATA2を任意の位相量だけ遅延させる場合も同様に行うことができる。
【0052】
ここで、例えば、クロック信号CLKを120°だけ遅延させる場合において、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させるのに必要とした遅延セル348内のユニットセルの段数m=68、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して2周期遅延させるのに必要とした遅延セル348内のユニットセルの段数n=138であったとする。
【0053】
この場合には、セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数p=138−68=70、ユニットセルの段数に換算したセレクタ351の遅延分q=138−2×68=2となる。この結果、(120°/360°)×70−2=21.3となるので、この場合には、クロック信号CLKを位相量120°だけ遅延させるのに必要な遅延セル336内のユニットセルの段数waを22とする。
【0054】
これに対して、基準クロック信号REF_CLK2を基準クロック信号REF_CLK1に対して1周期遅延させるのに必要とした遅延セル348内のユニットセルの段数mのみを検出し、従来手法で、クロック信号CLKを位相量120°だけ遅延させるのに必要な遅延セル336内のユニットセルの段数waを計算すると、(120°/360°)×68=22.7となるので、wa=23となる。この例の場合には、本発明の一実施形態による場合と従来手法とでは、ユニットセルの段数に1段の差が発生し、この分だけ、本発明の一実施形態によれば、クロック信号CLKの遅延調整を高精度に行うことができる。データ信号DATA1、DATA2の遅延調整を行う場合も同様である。
【0055】
以上のように、本発明の一実施形態においては、遅延セル336、342、345、348を複数のユニットセルを縦列接続してなる遅延ラインとセレクタとで構成しているので、遅延セル336、342、345、348として、専用のハードマクロを必要としない。したがって、専用のハードマクロを用意することによるコストアップと、チップレイアウトの自由度の低下という不都合を避けることができる。
【0056】
また、位相比較器353で、セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数pと、ユニットセルの段数に換算したセレクタ351の遅延分qとを、基本情報として算出することができる。
【0057】
したがって、また、遅延制御器357で、クロック信号CLK及びデータ信号DATA1、DATA2を位相量θa°、θb°、θc°だけ遅延させるのに必要な遅延セル336、342、345内のユニットセルの段数wa、wb、wcを、{(遅延位相量指示信号D_SETが指示する位相量θa°、θb°又はθc°/360°)×(セレクタ351なしに基準クロック信号REF_CLK1を1周期遅延させるのに必要な遅延セル348内のユニットセルの段数p)−(ユニットセルの段数に換算したセレクタ351の遅延分q)}という計算式で算出することができる。したがって、クロック信号CLK及びデータ信号DATA1、DATA2について高精度の遅延調整を行うことができる。
【0058】
なお、本発明の一実施形態においては、クロック信号CLK及びデータ信号DATA1、DATA2を遅延調整対象信号とした場合について説明したが、本発明は、この場合に限られるものではなく、複数のクロック信号を遅延調整対象信号とする場合や、1個又は3個以上のデータ信号を遅延調整対象信号とする場合や、複数のクロック信号及び1個以上のデータ信号を遅延調整対象信号とする場合などにも適用することができる。
【図面の簡単な説明】
【0059】
【図1】本発明の一実施形態を示す回路図である。
【図2】本発明の一実施形態の動作を説明するための図である。
【図3】本発明の一実施形態の動作を説明するための図である。
【図4】従来の遅延調整回路の一例を示す回路図である。
【図5】図4に示す従来の遅延調整回路が備える遅延セルの第1構成例を示す回路図である。
【図6】図5に示す遅延セルの第1構成例が備えるUDCM(Unit Delay Chain Module)の構成例を示す回路図である。
【図7】図4に示す遅延調整回路が備える遅延セルの第2構成例を示す回路図である。
【図8】図7に示す遅延セルの第2構成例が備えるユニットセルの構成を示す回路図である。
【図9】図7に示す遅延セルの第2構成例における基準クロック信号の通過ルート例(遅延段数として0段を選択した場合)を示す回路図である。
【図10】図7に示す遅延セルの第2構成例における基準クロック信号の通過ルート例(遅延段数として20段を選択した場合)を示す回路図である。
【図11】図7に示す遅延セルの第2構成例における基準クロック信号の通過ルート例(遅延段数として152段を選択した場合)を示す回路図である。
【符号の説明】
【0060】
1…クロック信号入力端子
2…遅延セル
3…クロック信号出力端子
4…データ信号入力端子
5…遅延セル
6…データ信号出力端子
7…データ信号入力端子
8…遅延セル
9…データ信号出力端子
10…基準クロック信号入力端子
11…遅延セル
12…256進カウンタ
13…位相比較器
14…遅延位相量指示信号入力端子
15…遅延制御器
18…入力端子
19−i…UDCM
20…出力端子
23、24…インバータ
25…セレクタ
26…インバータ
27、28…伝送ゲート
31…入力端子
32…出力端子
33〜287…ユニットセル
288〜319…NAND回路
320〜329…セレクタ
331、332…インバータ
335…クロック信号入力端子
336…遅延セル
337…クロック信号出力端子
338…遅延ライン
339−k…ユニットセル
340…セレクタ
341…データ信号入力端子
342…遅延セル
343…データ信号出力端子
344…データ信号入力端子
345…遅延セル
346…データ信号出力端子
347…基準クロック信号入力端子
348…遅延セル
349…遅延ライン
350−k…ユニットセル
351…セレクタ
352…256進カウンタ
353…位相比較器
354…位相比較部
355…第1の算出部
356…遅延位相量指示信号入力端子
357…遅延制御器
358…第2の算出部
359…選択制御信号生成部
【特許請求の範囲】
【請求項1】
複数の第1のユニットセルを縦列接続して構成され、基準クロック信号を遅延する第1の遅延ラインと、
第1の選択制御信号に制御されて前記複数の第1のユニットセルの出力信号から一つの出力信号を選択する第1のセレクタと
を備える第1の遅延セルと、
前記基準クロック信号と、前記第1のセレクタの出力信号と、前記第1の選択制御信号とから、前記第1のセレクタなしに前記基準クロック信号を1周期遅延させるのに必要な前記第1のユニットセルの段数と、前記第1のセレクタの遅延分とを、基本情報として算出する位相比較器と
を備えることを特徴とする遅延調整回路。
【請求項2】
前記位相比較器は、
前記基準クロック信号と前記第1のセレクタの出力信号との位相を比較する位相比較部と、
前記位相比較部の位相比較結果と前記第1の選択制御信号とから、前記第1のセレクタの出力信号を前記基準クロック信号に対して1周期遅延させた前記第1のユニットセルの段数と、前記第1のセレクタの出力信号を前記基準クロック信号に対して2周期遅延させた前記第1のユニットセルの段数とを検出し、前記第1のセレクタの出力信号を前記基準クロック信号に対して1周期遅延させた前記第1のユニットセルの段数と、前記第1のセレクタの出力信号を前記基準クロック信号に対して2周期遅延させた前記第1のユニットセルの段数とから、前記基本情報を算出する第1の算出部と
を備えることを特徴とする請求項1に記載の遅延調整回路。
【請求項3】
遅延時間を前記第1のユニットセルと同一とする複数の第2のユニットセルを縦列接続して構成され、遅延調整対象信号を遅延する第2の遅延ラインと、
遅延時間を前記第1のセレクタと同一とし、第2の選択制御信号に制御されて前記複数の第2のユニットセルの出力信号から一つの出力信号を選択する第2のセレクタと
を備える第2の遅延セルと、
前記遅延調整対象信号を遅延させる位相量θ°を指示する遅延位相量指示信号と、前記基本情報とから、前記第2の選択制御信号を生成する遅延制御器と
を備えることを特徴とする請求項1又は2に記載の遅延調整回路。
【請求項4】
前記遅延制御器は、
{(前記位相量θ°/360°)×(前記第1のセレクタなしに前記基準クロック信号を1周期遅延させるのに必要な前記第1のユニットセルの段数)−(前記第1のセレクタの遅延分)}を、前記遅延調整対象信号を前記第2の遅延セルにより前記遅延位相量指示信号が指示した位相量θ°だけ遅延させるのに必要な前記第2のユニットセルの段数として算出する第2の算出部と、
前記第2の算出部が算出した前記第2のユニットセルの段数を元に、前記第2の選択制御信号を生成する選択制御信号生成部と
を備えることを特徴とする請求項3に記載の遅延調整回路。
【請求項1】
複数の第1のユニットセルを縦列接続して構成され、基準クロック信号を遅延する第1の遅延ラインと、
第1の選択制御信号に制御されて前記複数の第1のユニットセルの出力信号から一つの出力信号を選択する第1のセレクタと
を備える第1の遅延セルと、
前記基準クロック信号と、前記第1のセレクタの出力信号と、前記第1の選択制御信号とから、前記第1のセレクタなしに前記基準クロック信号を1周期遅延させるのに必要な前記第1のユニットセルの段数と、前記第1のセレクタの遅延分とを、基本情報として算出する位相比較器と
を備えることを特徴とする遅延調整回路。
【請求項2】
前記位相比較器は、
前記基準クロック信号と前記第1のセレクタの出力信号との位相を比較する位相比較部と、
前記位相比較部の位相比較結果と前記第1の選択制御信号とから、前記第1のセレクタの出力信号を前記基準クロック信号に対して1周期遅延させた前記第1のユニットセルの段数と、前記第1のセレクタの出力信号を前記基準クロック信号に対して2周期遅延させた前記第1のユニットセルの段数とを検出し、前記第1のセレクタの出力信号を前記基準クロック信号に対して1周期遅延させた前記第1のユニットセルの段数と、前記第1のセレクタの出力信号を前記基準クロック信号に対して2周期遅延させた前記第1のユニットセルの段数とから、前記基本情報を算出する第1の算出部と
を備えることを特徴とする請求項1に記載の遅延調整回路。
【請求項3】
遅延時間を前記第1のユニットセルと同一とする複数の第2のユニットセルを縦列接続して構成され、遅延調整対象信号を遅延する第2の遅延ラインと、
遅延時間を前記第1のセレクタと同一とし、第2の選択制御信号に制御されて前記複数の第2のユニットセルの出力信号から一つの出力信号を選択する第2のセレクタと
を備える第2の遅延セルと、
前記遅延調整対象信号を遅延させる位相量θ°を指示する遅延位相量指示信号と、前記基本情報とから、前記第2の選択制御信号を生成する遅延制御器と
を備えることを特徴とする請求項1又は2に記載の遅延調整回路。
【請求項4】
前記遅延制御器は、
{(前記位相量θ°/360°)×(前記第1のセレクタなしに前記基準クロック信号を1周期遅延させるのに必要な前記第1のユニットセルの段数)−(前記第1のセレクタの遅延分)}を、前記遅延調整対象信号を前記第2の遅延セルにより前記遅延位相量指示信号が指示した位相量θ°だけ遅延させるのに必要な前記第2のユニットセルの段数として算出する第2の算出部と、
前記第2の算出部が算出した前記第2のユニットセルの段数を元に、前記第2の選択制御信号を生成する選択制御信号生成部と
を備えることを特徴とする請求項3に記載の遅延調整回路。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2009−124624(P2009−124624A)
【公開日】平成21年6月4日(2009.6.4)
【国際特許分類】
【出願番号】特願2007−298830(P2007−298830)
【出願日】平成19年11月19日(2007.11.19)
【出願人】(308014341)富士通マイクロエレクトロニクス株式会社 (2,507)
【Fターム(参考)】
【公開日】平成21年6月4日(2009.6.4)
【国際特許分類】
【出願日】平成19年11月19日(2007.11.19)
【出願人】(308014341)富士通マイクロエレクトロニクス株式会社 (2,507)
【Fターム(参考)】
[ Back to top ]