米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 電気素子 -> 株式会社日立製作所

発明の名称 可変遅延回路及び可変遅延回路を用いたクロック信号供給装置
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開平6−97788
公開日 平成6年(1994)4月8日
出願番号 特願平4−241723
出願日 平成4年(1992)9月10日
代理人 【弁理士】
【氏名又は名称】小川 勝男
発明者 益田 昇 / 山本 一道 / 中島 和則 / 岡部 年宏 / 山際 明 / 山岸 幹生 / 小出 一夫 / 藤田 文一 / 川島 誠一
要約 目的
CMOSLSIのように素子の遅延時間バラツキの大きな回路で、また、温度変動の大きな環境でも高精度に位相調整ができるクロック位相調整装置およびそのための可変遅延回路を提供する。

構成
トランスファゲート101〜104,111〜114によって負荷の大きさを切り替え得るようにして可変遅延回路を構成する。また、セレクタ回路によって遅延時間の異なる経路を選択するような構成の可変遅延回路において、遅延時間の短い経路を選択する時には一部のセレクタ回路のバイパスするような経路を設ける。以上のような2種類の可変遅延回路を使い、前者の可変遅延回路で温度変化に追従させ、後者の可変遅延回路で素子バラツキによる位相差を調整する。
特許請求の範囲
【請求項1】入力端子と、該入力端子から入力された信号を受けるバッファ回路と、該バッファ回路の出力に接続されたトランスファゲート回路と、上記バッファ回路の出力とトランスファゲート回路の接続点からの信号を出力する出力端子とを有し、上記トランスファゲート回路の導通状態を制御して入出力間の信号伝達時間を制御することを特徴とする可変遅延回路。
【請求項2】上記トランスファゲート回路は、直列接続された複数のトランスファゲートからなり、導通状態のトランスファゲートの数を制御することにより上記信号伝達時間を制御することを特徴とする請求項1記載の可変遅延回路。
【請求項3】上記トランスファゲート回路は、直列接続された複数のトランスファゲートからなるトランスファゲート群を並列接続して構成され、導通状態のトランスファゲートの数を制御して上記信号伝達時間を制御することを特徴とする請求項1記載の可変遅延回路。
【請求項4】上記トランスファゲート群の間に少なくとも1つのインバータ回路を有することを特徴とする請求項3記載の可変遅延回路。
【請求項5】上記トランスファゲートは、ゲートに制御信号が入力されるPMOS素子と、上記PMOS素子とソース及びドレインが共通に接続され、ゲートに上記制御信号と反対極性の制御信号が入力されるNMOS素子とから構成されることを特徴とする請求項2乃至4記載の可変遅延回路。
【請求項6】それぞれ遅延時間の異なる複数の経路中から1つを選択することにより入力信号の伝達時間を制御して出力する可変遅延回路において、上記経路は、遅延時間が一定な第1の経路と、遅延時間を制御可能な第2の経路とを含んでなることを特徴とする可変遅延回路。
【請求項7】上記第2の経路は、多段接続された複数のセレクタ回路からなるセレクタ回路群を有し、上記セレクタ回路はそれぞれ、他のセレクタ回路を介して伝えられる信号と、他のセレクタ回路を介することなく伝えられる信号とを選択して出力するように構成されることを特徴とする請求項6記載の可変遅延回路。
【請求項8】上記第2の経路は、さらに、遅延時間が一定な第3の経路と、遅延時間を制御可能な第4の経路と、上記第3の経路と第4の経路のいずれか一方を選択して出力するセレクタ回路とを有し、該セレクタ回路の出力を上記セレクタ回路群への入力とすることを特徴とする請求項7記載の可変遅延回路。
【請求項9】上記第4の経路は、それぞれ遅延時間の異なる複数の経路と該複数の経路から1つを選択して出力するセレクタ回路とからなる複数の遅延手段を直列接続してなることを特徴とする請求項8記載の可変遅延回路。
【請求項10】第1のクロック信号および該第1のクロック信号の位相調整のための参照信号を生成するクロック信号発生部と、該クロック信号発生部から上記第1のクロック信号および上記参照信号を受け、上記第1のクロック信号および上記参照信号に基づいて第2のクロック信号を生成する位相調整手段と、上記第2のクロック信号を受けて動作する機能回路をそれぞれ備えた複数のクロック供給先ブロックとからなるクロック信号供給装置において、上記位相調整手段は、第1及び第2の可変遅延回路を直列接続して構成され、上記第1のクロック信号を入力し上記第2のクロック信号を出力する可変遅延手段と、上記参照信号と上記第2のクロック信号の位相を比較し、該比較結果を出力する位相比較回路と、上記位相比較回路からの出力および上記クロック信号発生部から送られるシーケンス信号に基づいて上記可変遅延手段を制御する制御回路とを備え、上記制御回路は、初期調整時に上記第1の可変遅延回路を制御すると共に、上記機能回路の稼働時には上記第2の可変遅延回路を制御するように構成されることを特徴とするクロック信号供給装置。
【請求項11】上記クロック信号発生部は、上記初期調整状態を示すシーケンス信号を生成し、上記制御回路は、上記初期調整状態を示すシーケンス信号に基づいて上記第1および第2の可変遅延回路のいずれを制御するかを決定することを特徴とする請求項10記載のクロック信号供給装置。
【請求項12】上記制御回路は、上記初期調整時に上記第2の可変遅延回路における遅延時間が、可変範囲の略中心となるように上記第2の可変遅延回路を制御することを特徴とする請求項10または11記載のクロック信号供給装置。
【請求項13】上記第1の可変遅延回路は、遅延時間が一定な第1の経路と、遅延時間を制御可能な第2の経路とを含む複数の経路と該複数の経路の中から1つを選択するセレクタ回路とからなり、上記制御回路からの信号に基づいて上記セレクタ回路を切り換えることを特徴とする請求項10乃至12記載のクロック信号供給装置。
【請求項14】上記第2の可変遅延回路は、入力端子と、該入力端子から入力された信号を受けるバッファ回路と、該バッファ回路の出力に接続されたトランスファゲート回路と、上記バッファ回路の出力とトランスファゲート回路の接続点からの信号を出力する出力端子とを有し、上記制御回路からの信号に基づいて上記トランスファゲート回路の導通状態を制御することを特徴とする請求項10乃至13記載のクロック信号供給装置。
【請求項15】上記クロック信号発生部は、それぞれ位相の異なる複数の参照信号を生成する手段と、該参照信号のそれぞれを識別するシーケンス信号を生成する手段と、該シーケンス信号に基づいていずれかの相の参照信号を選択して出力する選択手段とを有し、上記位相調整手段は、上記可変遅延手段を複数備え、上記制御手段は上記シーケンス信号に基づいて上記可変遅延手段を制御し、上記参照信号のそれぞれに対応する位相をもつ複数の第2のクロック信号を生成することを特徴とする請求項10乃至14記載のクロック信号供給装置。
【請求項16】上記複数の可変遅延手段に含まれる上記第2の可変遅延回路は、共通の制御信号により制御されることを特徴とする請求項15記載のクロック信号供給装置。
【請求項17】上記参照信号の周波数が上記第1のクロック信号の周波数よりも低いことを特徴とする請求項10乃至16記載のクロック信号供給装置。
【請求項18】上記クロック信号発生部は、上記初期調整の終了後上記第1のクロック信号の供給を一時的に停止するクリーンスタート回路を備えることを特徴とする請求項10乃至17記載のクロック信号供給装置。
【請求項19】上記クロック信号発生部は、上記第1のクロック信号としてそれぞれ周波数の異なる複数のクロック信号を生成し、上記供給先ブロックに、上記複数の第1のクロック信号のうち所定の周波数のクロック信号を供給することを特徴とする請求項10乃至18記載のクロック信号供給装置。
【請求項20】上記クロック信号発生部は、基準となる周波数の信号を発生する発信器と、該発信器の出力を入力し所定の周波数のクロック信号を出力する逓倍回路と、該逓倍回路の出力を受け、位相の調整されたクロック信号を出力する第2の位相調整手段とを備えることを特徴とする請求項19記載のクロック信号供給装置。
【請求項21】上記位相調整手段は、上記逓倍回路の出力を受ける可変遅延回路と、該可変遅延回路の出力と上記基準信号の位相とを比較する位相比較回路と、該位相比較回路の出力に応じて上記可変遅延回路を制御する制御回路とを有することを特徴とする請求項20記載のクロック信号供給装置。
発明の詳細な説明
【0001】
【産業上の利用分野】本発明はコンピュータ等の情報処理装置のクロック信号供給系に関し、特に、クロック信号の位相を調整して位相バラツキ(スキュー)を低減する機構、および、そのための可変遅延回路に関する。
【0002】
【従来の技術】従来のクロック信号供給装置としては、例えば、特開昭63−231516号公報,特開昭63−305611号公報あるいは特開平2−168308 号等に開示されるように、クロック発生部から複数の分配先へクロック信号と参照信号を供給し、各分配先毎に可変遅延回路を経由したクロック信号の位相を参照信号の位相に合わせるように構成されたものが知られている。これらのクロック信号供給装置で位相精度の高いクロック信号を得るためには、如何にして位相精度の高い参照信号を供給するか、および、如何にして精度の高い位相比較を行なうかがポイントになる。上記の各文献では、このための参照信号を供給する回路および方法,位相比較をする回路および方法等について種々のものが開示されている。
【0003】
【発明が解決しようとする課題】従来のクロック信号供給装置における位相調整装置では、位相調整が終了した直後には正確な位相のクロック信号が得られるが、その後装置の温度が変化すると、クロック信号の位相も変化する。従って、定常状態における温度変動範囲の狭いシステム(すなわち、水冷装置等を備えた高価なシステム等)でない限り、温度変化に追従して遅延時間を制御する何らかの手段がなければ位相精度が悪くなる。例えば、特開平2−168308 号公報には温度変化に追従できる可変遅延回路の一例が示されているが、遅延時間制御の分解能(ある制御信号を加えた時の遅延時間と、その制御信号を1ステップだけ変化させた時の遅延時間の差)を粗くせずに追従できる範囲を広くしようとすると、この回路ではセレクタの段数が多くなって最小遅延時間(可変遅延回路の遅延時間が最小になるような制御信号を加えた時の遅延時間)が増大する。すると、同じ温度変化に対する位相変動の幅が大きくなり、これを補正するために更に広い追従範囲が必要となる。従って、特開平2−168308 号公報に開示される技術を使用して温度変化に追従させる場合には、位相制御の分解能をある程度粗くせざるを得なかった。これが第1の課題である。
【0004】また、特開平2−168308 号公報に開示される技術では、出力のクロック信号にスパイク状のノイズを生じさせないようにするためフリップフロップを使ってセレクタの切り替えのタイミングがクロック信号の立ち上がりや立ち下がりと重ならないようにしている。しかし、このようなフリップフロップにはクロック信号の周波数に追従できる高速な回路が要求される。これが第2の課題である。
【0005】また、従来のクロック位相調整装置に使用されていた可変遅延回路では、可変遅延回路の可変幅を大きくすると、セレクタの段数が多く必要となり最小遅延時間が増大する。さらに、この可変遅延回路を構成する半導体素子の製造バラツキに起因するスキューも大きくなり、これを補正するために更に大きな可変幅が必要となる。特に、安価なシステムによく使われるCMOS回路では、遅延時間バラツキが大きいためこの問題が顕著になる。これが第3の課題である。
【0006】本発明の目的は、これらの課題を解決し容易に安定なクロック信号を供給することのできるクロック信号供給装置を提供することに有る。
【0007】
【課題を解決するための手段】上記第1及び第2の課題を解決し、上記目的を達成するために、本発明による可変遅延回路は、入力端子と、該入力端子から入力された信号を受けるバッファ回路と、このバッファ回路の出力に接続されたトランスファゲート回路と、バッファ回路の出力とトランスファゲート回路の接続点からの信号を出力する出力端子とを有し、トランスファゲート回路の導通状態を制御して入出力間の信号伝達時間を制御することを特徴としている。
【0008】また、上記第3の課題を解決して上記目的を達成するために本発明による可変遅延回路は、それぞれ遅延時間の異なる複数の経路中から1つを選択することにより入力信号の伝達時間を制御して出力する可変遅延回路において、上記経路は、遅延時間が一定な第1の経路と、遅延時間を制御可能な第2の経路を含んでなることを特徴としている。
【0009】さらに、上記目的は、これらの可変遅延回路を用いて、第1のクロック信号および該第1のクロック信号の位相調整のための参照信号を生成するクロック信号発生部と、クロック信号発生部から第1のクロック信号および参照信号を受け、第1のクロック信号および参照信号に基づいて第2のクロック信号を生成する位相調整手段と、第2のクロック信号を受けて動作する機能回路をそれぞれ備えた複数のクロック供給先ブロックとからなるクロック信号供給装置において、位相調整手段は、第1及び第2の可変遅延回路を直列接続して構成され、第1のクロック信号を入力し第2のクロック信号を出力する可変遅延手段と、参照信号と第2のクロック信号の位相を比較し、この比較結果を出力する位相比較回路と、位相比較回路からの出力およびクロック信号発生部から送られるシーケンス信号に基づいて可変遅延手段を制御する制御回路とを備え、制御回路は、初期調整時に第1の可変遅延回路を制御すると共に、機能回路の稼働時には第2の可変遅延回路を制御するように構成されることを特徴としたクロック信号供給装置により達成される。
【0010】
【作用】バッファ回路の出力に接続されるトランスファゲートの導通状態を制御してバッファ回路の負荷を変えることにより、最小遅延時間を大きくすることなく遅延時間制御の分解能を細かくすることができる。また、クロック信号の経路を切り替えることなく遅延時間を制御することができ、遅延時間の切り替えに伴って発生するスパイク状のノイズの発生をなくすことができる。
【0011】また、遅延時間が一定な経路を経た信号と、遅延時間を可変可能な経路を経た信号を選択して出力することにより、最小遅延時間を増大させることなく遅延時間設定値の個数を増加させることができる。
【0012】さらに、このような可変遅延回路を組み合わせてクロック信号の位相調整を行なうことにより、位相精度が高く、安定したクロック信号を供給することのできるクロック信号供給装置を得ることができる。
【0013】
【実施例】図1に、本発明による可変遅延回路の第1の実施例を示す。図1において、101〜104はトランスファゲートとして使用するP型のMOS素子、111〜114はトランスファゲートとして使用するN型のMOS素子、121,122は負荷変動による波形歪の影響を他の回路に伝えないためのバッファ回路、131は負荷の一部を構成する容量性素子である。また、151はクロック信号の入力端子、152はクロック信号の出力端子、161〜164は制御信号を入力する制御端子である。この回路は、制御端子161〜164に加える制御信号を全てハイレベルにすると、全てのトランスファゲートが導通状態になってバッファ回路121の負荷が最も重くなり、入力端子151から出力端子152までの信号伝播時間が最大になる。ここで、制御端子164に加えている制御信号のみをローレベルにすると、トランスファゲート104および114のみが遮断状態となり、MOS素子104,114のドレイン側のゲート容量および容量性素子131の分だけバッファ回路121の負荷が軽くなる。従って、入力端子151から出力端子152までの信号伝播時間はその分だけ短くなる。また、制御端子163に加えている制御信号をローレベルにすると、トランスファゲート103および113が遮断状態となり、バッファ回路121の負荷は上記のほかMOS素子104,114のソース側とMOS素子103,113のドレイン側のゲート容量の分が更に軽くなる。従って、入力端子151から出力端子152までの信号伝播時間はその分だけ更に短くなる。同様に、制御端子161に加えている制御信号をローレベルにした時、入力端子151から出力端子152までの伝播時間が最も短くなる。ここで、その時の伝播時間は、トランスファゲートの段数に関わらず、バッファ回路121,122の基本遅延時間および負荷駆動能力とMOS素子101,111のゲート容量のみによって決まる。すなわち、図1の回路を用いれば、遅延時間制御の分解能を細かくしたい場合に、最小遅延時間を増大させることなく設計することができる。更に、図1の回路には、従来用いられていた可変遅延回路のように、クロック信号の伝播経路自体を切り替える回路は使用されていないため、トランスファゲート101〜114のゲートに加える制御信号の切り替えを極端に急峻に行なわない限りスパイク状のノイズが生じる恐れはない。従って、クロック信号が伝播するバッファ回路121,122と同程度以上に高速に動作する制御回路は必要無い。
【0014】図2には、本発明による可変遅延回路の第2の実施例を示す。図2において、101〜108はトランスファゲートとして使用するP型のMOS素子、111〜118はトランスファゲートとして使用するN型のMOS素子、121,122は負荷変動による波形歪の影響を他の回路に伝えないためのバッファ回路、131,132は負荷の一部を構成する容量性素子である。また、151はクロック信号の入力端子、152はクロック信号の出力端子、161〜168は制御信号を入力する制御端子である。図2に示す回路は、図1に示す回路のトランスファゲートを並列に設けたもので、図1の回路と同様にトランスファゲートの開閉によって負荷の重さを切り替え、遅延時間を制御するようになっている。図1の回路では、トランスファゲートの段数をある程度以上に増やすと、トランスファゲートの直列抵抗が大きくなってバッファ回路121から遠い負荷が遅延時間の切り替えにあまり寄与しなくなる。本実施例では、トランスファゲートを並列にすることによりこのような問題を回避している。
【0015】図3には、本発明による可変遅延回路の第3の実施例を示す。図3において、101〜108はトランスファゲートとして使用するP型のMOS素子、111〜118はトランスファゲートとして使用するN型のMOS素子、121,122は負荷変動による波形歪の影響を他の回路に伝えないためのバッファ回路、123はこの可変遅延回路内における信号振幅の減少を避けるためのバッファ回路、131,132は負荷の一部を構成する容量性素子である。また、151はクロック信号の入力端子、152はクロック信号の出力端子、161〜168は制御信号を入力する制御端子である。図1あるいは図2の回路では、遅延時間の可変範囲をクロック信号の周期の約4分の1以上にするとバッファ回路121の出力振幅が減少し始め、約2分の1以上にするとバッファ回路122に信号が伝わらなくなる。このような問題を避けるために本実施例ではバッファ回路123によって前後を分離している。例えば、バッファ回路121から123の間、および、バッファ回路123から122の間での遅延時間の可変幅をそれぞれクロック信号の周期の4分の1ずつにすることにより、回路内での信号振幅を大きく減少させずに全体での遅延時間の可変幅をクロック信号の周期の2分の1にすることができる。また、バッファ回路121の負荷駆動能力は一般に信号の立ち上がり時と立ち下がり時で異なるため、第1および第2の実施例の回路で負荷を重くすると、クロック信号のデューティーが入力から出力へ伝播する間に変化してしまうのに対し、本実施例の回路を用いれば、バッファ回路123の前後の負荷の重さをほぼ均等にすることによりデューティーの変化が補正されるという効果もある。
【0016】図4は、本発明による可変遅延回路の第4の実施例を示したものであり、図2の回路と図3の回路を組み合わせたものである。すなわち、バッファ回路121および122の間にバッファ回路123を設け、更に、バッファ回路121および123の負荷としてそれぞれに複数のトランスファゲートを直列に接続したものを複数組並列に付加した構成になっている。なお、図4に示すように、本実施例では、容量性素子131をソース電極とドレイン電極を電源に接続したMOS素子によって構成している。また、図1〜図4に示したような可変遅延回路を複数個用意して何段にもつなぐことにより、更に大きな可変幅を持った可変遅延回路を得ることもできる。
【0017】図5には、本発明による可変遅延回路の第5の実施例を示す。図5において、501〜508はセレクタ回路、521〜529はクロック信号の極性を合わせるためのインバータ回路である。また、551はクロック信号の入力端子、552はクロック信号の出力端子、561〜568は制御信号を入力する制御端子である。本実施例において、全てのセレクタ回路が図の下側の入力(例えば、セレクタ回路501の場合はノード511)を選択するような制御信号を制御端子561〜568に入力すると、入力端子551に入力されたクロック信号は、全てのインバータ回路および全てのセレクタ回路を経由して出力端子552に出力される。この状態がこの回路の最大遅延時間に設定された状態である。ここで制御端子568に入力されている制御信号を切り替えると、セレクタ回路508はインバータ回路527からの信号を選択するようになり、インバータ回路528,529を経由しない信号が出力される。従って、信号伝播時間はインバータ回路528,529の遅延時間分だけ短くなる。また、制御端子567に入力されている制御信号を切り替えると、セレクタ回路507がインバータ回路526からの信号を選択するようになり、さらにインバータ回路527およびセレクタ回路508をも経由しない信号が出力される。従って、信号伝播時間を更にその分だけ短くなる。同様に、制御端子561に入力されている制御信号を切り替えるとセレクタ回路501以外の回路を全く経由しない信号が出力されることになる。この時の入力端子151から出力端子152までの信号伝播時間は、全体でのセレクタ回路の数に関わらずセレクタ回路501の遅延時間のみによって決まり、最も短くなる。すなわち、本実施例によれば、最小遅延時間を増大させることなく最大遅延時間を任意に設計することができる。
【0018】図6は、図5の遅延回路の構成要素であるセレクタ回路501の一例を示したものである。図6において、601〜604はP型のMOS素子、611〜614はN型のMOS素子、621はインバータ回路である。また、551はクロック信号の入力端子、552はクロック信号の出力端子、561は制御信号を入力する制御端子、511は図5においてセレクタ回路502の出力に接続する端子、Vddは正極性の電源に接続する端子である。この回路は、制御端子561にローレベルの制御信号を加えると、PMOS素子604とNMOS素子613が遮断状態となりPMOS素子603とNMOS素子614は導通状態となる。従って、出力端子552に現われる信号はPMOS素子602とNMOS素子612の状態によって決まることになる。すなわち、入力端子551に加えられる信号を反転したものが出力端子552に現われることになり、入力端子511に加えられる信号の影響は受けない。逆に、制御端子561にハイレベルの制御信号を加えると、PMOS素子603とNMOS素子614は遮断状態となりPMOS素子604とNMOS素子613が導通状態となる。この場合には、入力端子511に加えられる信号を反転したものが出力端子552に現われることになり、入力端子551に加えられる信号の影響は受けない。このようにして、図6に示す回路501はセレクタ回路として動作する。図5における他のセレクタ回路502〜508も同様に構成することができる。また、クロック信号を差動で送る場合には、例えば特開平2−168308 号公報の図23に示されるようなセレクタ回路を使えばよい。なお、クロック信号を差動で送る場合には極性の反転や非反転は接続方法のみによって自由に設定できるため、図5のインバータ回路521〜528が不要になることは自明である。
【0019】以上説明した第1〜第5の実施例の可変遅延回路への制御信号を生成する制御回路の一実施例を図7に示す。
【0020】図7において、901〜906はフリップフロップ回路である。また、961〜966は可変遅延回路へ与える制御信号の出力端子、971は遅延時間を増加させるためのUP信号を入力する端子、981は遅延時間を減少させるためのDOWN信号を入力する端子、991はこの回路を動作させるために例えば低周波のクロック信号を入力する端子である。この回路は、端子971および981にローレベルの信号が加えられている時には、内部ノード972〜976および982〜986に現われる信号は全てローレベルとなる。すると、フリップフロップ回路901〜906の入力に加えられる信号はそれぞれ961〜966の端子に現われている信号と同じものとなり、端子991にクロック信号が加えられても全フリップフロップ回路の状態はそのままに保持される。次に、端子981をローレベルにしたまま端子971にハイレベルの信号を加えた場合を考える。ここで、例えば、仮に出力端子961〜963にハイレベル,出力端子964にローレベルが現われているとする。この時、内部ノード972〜974に現われる信号はハイレベルとなり、内部ノード975,976に現われる信号はローレベルとなる。この状態で端子991にクロック信号を加えると、出力端子964に現われる信号はローレベルからハイレベルに変化し、出力端子961〜963はハイレベルのままとなる。また、出力端子965〜966に現われる信号は、そのままに保持される。すなわち、端子981をローレベルにしたまま端子971にハイレベルの信号を加えると、端子991にクロック信号が加えられる毎に、出力端子961〜966の中で最も右側に有るローレベルの端子のみがハイレベルに変わり、その他の出力は保持される。同様に、端子971をローレベルにしたまま端子981にハイレベルの信号を加えると、入力端子991にクロック信号が加えられる毎に、出力端子961〜966の中で最も左側に有るハイレベルの端子のみがローレベルに変わり、その他の出力は保持される。従って、出力端子961〜966に現われる信号を図1〜図5に示した可変遅延回路の制御信号として与えると、端子971にハイレベルの信号を加えた時には、端子991にクロック信号が加わる毎に遅延時間が長くなり、端子981にハイレベルの信号を加えた時には端子991にクロック信号が加わる毎に遅延時間が短くなるように制御される。また、図9の回路は出力信号が1ビットずつ変化するため、図1〜図4の可変遅延回路の制御に使用すれば、最小分解能以上の遅延時間変化が一度に起きる心配はない。なお、図9は制御信号が6ビットの場合について示したが、図の破線で囲んだ部分の数を増減することによって制御信号のビット数を任意に増減することができる。
【0021】図8には、本発明による可変遅延回路の第7の実施例を示す。後述するように、図5の回路は遅延時間の設定値の個数に比例して制御回路を構成する素子の数が多くなるという欠点がある。本実施例はこの欠点を補ったもので、所望の遅延時間が最小遅延時間に近い時には図5の回路と同じように動作させ、遅延時間を大きくしたい時には制御回路が簡便な従来の可変遅延回路を併用するようになっている。図8において、501〜506、および、701はセレクタ回路、522〜527はクロック信号の極性を合わせるためのインバータ回路、551はクロック信号の入力端子、552はクロック信号の出力端子、561〜566、および、761〜765は制御信号を入力する制御端子である。また、710は制御の簡便な可変遅延回路であり、例えば図9に示すような可変遅延回路を用いることができる。本実施例では、セレクタ回路501〜506の段数は、セレクタ回路503〜506およびインバータ回路522〜527からなる部分の遅延時間の総和が、可変遅延回路710の最小遅延時間および、遅延時間制御の分解能と同程度またはそれ以上になるように設定しておく。本実施例の回路は、セレクタ回路701の入力のうち入力端子551に直接接続される側が選択されるような制御信号を制御端子761に加えた時には図5の回路と同じ動作をする。一方、制御端子761に、セレクタ回路701が可変遅延回路710の出力(ノード751)を選択するような制御信号を加え、かつ、制御端子161にセレクタ回路501がセレクタ回路502の出力(ノード511)を選択するような制御信号を加えた時には、可変遅延回路710の遅延時間が加算されることになる。すなわち、本実施例ではセレクタ回路501が入力端子551からの信号を選択した時に最小遅延時間となり、セレクタ回路501の1段分の遅延時間のみとなる。これは、図5の回路の最小遅延時間と同じである。また、最大遅延時間は、遅延回路を構成する全ての回路の遅延時間(可変遅延回路710は最大遅延時間)の総和となり、最大遅延時間に寄与しない無駄な部分は無い。そして、遅延時間制御の分解能は、セレクタ回路2段分(701と502)の遅延時間の和、または、セレクタ回路とインバータ回路1段ずつ(503と522等)の遅延時間の和、または、インバータ回路2段分(526と527)の遅延時間の和の内のいずれかとなり、図5の回路の分解能とほぼ同じである。なお、先に述べた通り、セレクタ回路503〜506およびインバータ回路522〜527からなる部分の最大遅延時間は、可変遅延回路710の最小遅延時間と同程度以上になるように設定してあるので、セレクタ回路701を切り替える前後の遅延時間の可変範囲はオーバラップする。可変遅延回路710の遅延時間を1ステップずつ増加させていく場合についても同様である。従って、遅延時間制御の分解能が上記3つのいずれよりも大きくなることはない。
【0022】図9は、可変遅延回路710の構成の一例を示したものである。図9において、801〜804はセレクタ回路、821〜824は遅延時間差を作るためのインバータ回路群である。また、図5と共通する部分には、図5と同一の番号を付してある。図9の回路は、各セレクタ回路801〜804の制御端子762〜755に与える制御信号により、遅延時間の短い経路(セレクタ回路の遅延時間だけの経路)と長い経路(セレクタ回路とインバータ回路群の遅延時間の和となる経路)をそれぞれ選択できるようになっている。インバータ回路群822の遅延時間をインバータ回路群821の遅延時間の2倍より少し小さい値となるように、インバータ回路群823の遅延時間がインバータ回路群822の遅延時間の約2倍より少し小さい値となるように、かつ、インバータ回路群824の遅延時間がインバータ回路群823の遅延時間の約2倍より少し小さい値となるようにそれぞれ設定しておけば、制御信号762〜765を適当に設定することにより、インバータ回路群821の遅延時間を最小分解能として自由に制御することが可能である。なお、この回路の最小遅延時間はセレクタ回路801〜804の遅延時間の和となり、最大遅延時間はこれにインバータ回路群821〜824の遅延時間を加えたものになる。
【0023】図10は、上述した第7の実施例の可変遅延回路への制御信号を生成する制御回路の一実施例を示したものである。図10において、1001はフリップフロップ回路、1002は図9とほぼ同じ構成の回路、1003はUP/DOWNカウンタである。961〜966および1061〜1065は図7の可変遅延回路へ与える制御信号の出力端子であり、それぞれ図8の回路の制御端子561〜566および761〜765に接続される。また、971,981は遅延時間を増減するための信号を入力する端子、991はこの回路を動作させるために例えば低周波のクロック信号を入力する端子である。
【0024】図11(a)はUP/DOWNカウンタ1003の一例を示したものである。図11(a)において図10と共通する部分には図10と同一の番号が付されている。この回路は、ノード1072および1081が共にローレベルとなったときには出力端子1062〜1065に出力される信号は変化しないが、ノード1072がハイレベル、ノード1081がローレベルであるときは、端子991にクロック信号が加えられる毎に出力端子1062〜1065に出力される2進数の信号が1カウントずつカウントアップされる。逆に、ノード1072がローレベル,ノード1081がハイレベルであるときは、クロック信号が加えられる毎に1カウントずつカウントダウンされる。また、このカウンタは、出力端子1062〜1065に出力される信号が全てハイレベルの時には、ノード1072に加えられた信号が抑制されるように構成されている。同様に、出力が全てローレベルの時にはノード1081に加えられた信号が抑制されるように構成されている。これにより、オーバーフローやアンダーフローに伴う誤動作を生じさせないようになっている。
【0025】図11(b)は回路1002の構成を示したものであり図7の回路とほぼ同じ構成になっている。図11(b)において、図7および図10と共通する部分には図7および図10と同一の番号を付している。回路1002では、出力端子961に出力される信号がハイレベルからローレベルに変化するための条件だけが図7の回路とは異なる。回路1002ではノード1073がハイレベル(従って、図10の出力端子1061の出力信号がローレベル)である場合にのみ出力端子961に出力される信号がハイレベルからローレベルに変化し得る。
【0026】図10において、端子971および981にローレベルの信号を加えている時は、図7の場合と同様に出力端子961〜966に出力される制御信号は変化しない。また、この場合には内部ノード1071,1072,1081も全てローレベルとなり、出力端子1061〜1065に出力される制御信号も変化しない。ここで、端子981をローレベルにしたまま端子971に加える信号をハイレベルにした場合を考える。この時、出力端子961〜966の端子の中に1つでもローレベルのものが有れば、内部ノード1071,1072,1081は全てローレベルのままで出力端子1061〜1065に出力される信号は変化せず、出力端子961〜966に出力される信号のみが図9の場合と同様に変化する。出力端子1061の出力がローレベルであるときに出力端子961〜966が全てハイレベルになると、次に端子991にクロック信号が加わった時に、出力端子1061がハイレベルに変わる。このとき端子1062〜1065に出力される信号は変化しない。出力端子961〜966および1061に出力される信号が全てハイレベルになると、その次から端子991にクロック信号が加わる毎に出力端子1062〜1065に出力される2進数の信号が1カウントずつカウントアップされる。そして、出力端子961〜966および1061〜1065に出力される信号が全てハイレベルになるとそれ以上は変化しない。
【0027】次に、端子971をローレベルにしたまま端子981に加える信号をハイレベルにした場合を考える。この時、出力端子962〜966に出力される信号の中に1つでもハイレベルのものが有れば、内部ノード1071,1072,1081は全てローレベルのままで出力端子1061〜1065に出力される信号は変化しない。この時、出力端子962〜966に出力される信号のみ図9の場合と同様に変化する。出力端子962〜966に出力される信号が全てローレベルになると、出力端子961,1061の端子の状態に関わらず内部ノード1081がハイレベルになる。従って、その次から端子991にクロック信号が加わる毎に出力端子1062〜1065の端子に出力される2進数の信号がカウントダウンされる。出力端子1061に出力される信号は、出力端子1062〜1065の中に1つでもハイレベルの信号がある内は変化しないが、出力端子1062〜1065および962〜966が全てローレベルになると、次にクロック信号が加わった時には、もしその時に出力端子1061に出力されている信号がハイレベルであれば出力端子1061がローレベルに変わる。出力端子961は、出力端子1061がハイレベルの間は変化しないが、出力端子1061および962〜966が全てローレベルになると、次にクロック信号が加わった時にローレベルに変わる。そして、出力端子961〜966および1061〜1065に出力される信号が全てローレベルになるとそれ以上は変化しない。このようにして、端子971および981に加える信号を適当に切り替えながら所望の遅延時間が得られるまで制御信号を変化させることになる。
【0028】以上のような回路を使って図8の可変遅延回路を制御すれば、可変遅延回路710の部分を使う時には先にこの可変遅延回路710を接続してから遅延時間を増加させ、切り離す時には先に遅延時間を最小にしてから切り離すように制御される。
【0029】なお、図7の回路と図11(a)の回路を比べた場合、図7の回路は6ビットで7段階(nビットでn+1段階)の遅延時間制御を行なうのに対し、図11(a)の回路は4ビットで16段階(nビットで2のn乗段階)の制御を行なうことができる。1ビット当たりの回路規模は、図9の回路も図11(a)の回路も殆ど同じ(フリップフロップ回路の物量が殆どを占める)であるため、多段階の制御をする場合には図11(a)の回路の方が小規模ですむ。しかしながら、図11(a)の回路で図5等の可変遅延回路を制御しようとすると、複雑なデコーダが必要となる。従って、図10のように両方の回路を組み合わせた制御回路で図8のような可変遅延回路を制御すれば、あまり回路規模を大きくすることなく図5の回路の利点を持った可変遅延回路を実現することができる。
【0030】次に、以上述べた可変遅延回路が適用される一例として、計算機システム等に用いられるクロック位相調整装置について説明する。
【0031】図12は、クロック位相調整回路の一実施例を示す構成図である。図12において、1200はクロック信号の供給源、1210はそのクロック信号を受ける分配先である。また、1220はクロック信号を使って情報処理等を行なう論理回路群であり、複数の分配先1210にまたがって配置されている。クロック信号供給源1200の中の1201はクロック信号の源となる高周波の信号を発生する高周波発振器、1202は高周波発振器1201が出力する高周波信号からクロック信号および参照信号を生成するクロック信号発生回路、1203はクロック信号および参照信号を各分配先1210へ送るためのバッファ回路、1231はクロック信号および参照信号を各分配先1210へ送るための配線である。また、各分配先1210の中の1211は、参照信号を使ってクロック信号の位相を調整する位相調整回路であり、上述した可変遅延回路はこの中に使用する。1212は位相調整されたクロック信号を論理回路群1220へ送るためのバッファ回路である。また、この回路で参照信号を生成したり位相調整を行なったりするためには、その時に送る参照信号や調整するべき可変遅延回路を決めるためのシーケンス信号が必要である。図12のシステム全体が他のコンピュータ等に制御されて動く場合にはそのコンピュータ等からシーケンス信号を送ることも可能であるが、図12のシステムが単独でも動作可能にするためには、リセット信号等からシーケンス信号を生成するシーケンス回路がクロック信号発生回路1202の中に必要である。1251はそのためのリセット信号等を入力する端子、1204はシーケンス信号を各分配先1210へ送るためのバッファ回路、1232はシーケンス信号を各分配先1210へ送るための配線である。1251の端子に入力するリセット信号には、電源スイッチ投入後に電源電圧が安定すると出力される信号(いわゆるパワーオンリセット信号)や、装置に何らかの異常が発生した時に手動でスイッチ等を操作して送られるリセット信号等を使うことができる。
【0032】位相調整の精度や範囲により異なるが、位相調整回路1211の規模が約千〜数千ゲートであるため、1個の論理LSIの規模が数千ゲート以下の場合には複数のLSIを搭載した配線基板等が1個の分配先1210になる。しかし、1個の論理LSIの規模が1万ゲート以上になると1個のLSIを1個の分配先1210とすることもできる。更に規模の大きなLSIでは、1個のLSIの中に複数の分配先1210を持つこともできる。また、配線1231は配線基板上に敷設した金属膜の配線である場合も有り得るし、ケーブル等による配線である場合も有り得るが、少なくとも参照信号を送る側(できればクロック信号を送る側も)の配線1231は、なるべく信号の伝播時間が等しく(電気的に等長に)なるように設計する。また、クロック信号や参照信号は高速の信号であり、位相精度も要求される信号であるため、バッファ回路1203には駆動能力の高い回路を使用するのが望ましい。これに対し、シーケンス信号ははるかに遅い信号であるため、バッファ回路1204の駆動能力や配線12326の等長性にはあまり高いものは必要無い。
【0033】論理回路群1220の中には複数のフリップフロップ回路1221があり、クロック信号に同期しながらフリップフロップ回路間を信号が伝達することによって情報処理等が行なわれる。従って、各フリップフロップ回路に供給されるクロック信号の位相が所定の位相からある程度以上ずれると、情報処理に誤動作を起こす恐れが生じる。特に、高速動作を要求されるフリップフロップ回路ほど許容される位相ズレの限度が小さくなる。本実施例では、この位相ズレを防ぐため、各分配先1210に位相調整回路1211を設けて複数の分配先1210の中にある複数のフリップフロップ回路1221に供給されるクロック信号の位相を全て所定の位相に合わせるようになっている。以下に、位相調整回路1211およびクロック信号発生回路1202等について説明する。
【0034】図13は、位相調整回路1211の一実施例を示したものである。図13において、1301はこの回路を搭載するLSIの入力バッファ回路、1302および1303は可変遅延回路、1312および1313は可変遅延回路1302および1303を制御するための制御回路、1305はセレクタ回路、1306は分周回路、1307は位相比較回路、1308は制御回路1304やセレクタ回路1305等に必要な信号を供給するためのデコーダ回路である。また、1321は論理回路群1220にて使用する第1相のクロック信号を伝達するための配線、1322は論理回路群1220にて使用する第2相のクロック信号を伝達するための配線、1350はクロック信号を入力する端子、1351は参照信号を入力する端子、1352はシーケンス信号を入力する端子である。
【0035】ここで、可変遅延回路1302は論理回路群1220の稼働中に生じた温度変化等に起因するクロック信号の位相ズレを補正するためのものであり、例えば図1〜図4に示したようなスパイク状のノイズの発生しない可変遅延回路が使用される。また、可変遅延回路1303は半導体素子の製造バラツキ等に起因する固定的な位相ズレを補正するためのものであり、図5や図7に示したような可変範囲の大きな可変遅延回路が使用される。可変遅延回路1303の遅延時間の切り替えは、リセット信号等を受けてから論理回路群1220が稼働し始めるまでの間に行なわれる。制御回路1312,1313としては、可変遅延回路1302や1303の種類に応じて図7や図10に示した回路等が使用される。セレクタ回路1305は、論理回路群1220に送られるクロック信号の中から位相比較の対象になる相のクロック信号を選択するための回路であり、例えば、図6に示したような回路が使用される。分周回路1306は、クロック信号入力端子1350に加えられるクロック信号を分周して制御回路1312,1313や位相比較回路1307等に必要な低周波のクロック信号を生成する。分周回路1306の分周比は、例えば8分周程度でもよい。位相比較回路1307は、論理回路群1220に送られるクロック信号の位相と参照信号入力端子1351に加えられる参照信号の位相を比較する回路である。デコーダ回路1308は、シーケンス信号(その時に送られている参照信号の種類および論理回路群1220を稼働させる時期か否かを示す情報等)に従って、いずれの相のクロック信号をセレクタ回路1305から位相比較回路1307に伝達するかを決め、また、位相比較回路1307の出力をいずれの制御回路1312,1313に伝達するかを決めると共に、論理回路群1220を稼働させるか否かを決める信号1320を供給するための回路である。位相比較回路1307およびデコーダ回路1308の詳細については図14および図15に後述する。
【0036】図14には、位相比較回路1307の一例を示す。図14において、1541は参照信号を入力する端子、1452はセレクタ回路1305で選択されたクロック信号を入力する端子、991は分周回路1306によって生成された低周波のクロック信号を入力する端子である。1471および1481は、判定結果を出力する端子であり、端子1452に入力されたクロック信号の方が1451の端子に入力された参照信号より早い(可変遅延回路の遅延時間を増加させる)場合は、端子1471に、また、端子1452に入力されたクロック信号の方が端子1451に入力された参照信号より遅い(可変遅延回路の遅延時間を減少させる)場合は、端子1481に信号が出力される。1401は互いに入出力を交差接続された2個の2入力NAND回路であり、1周期毎に参照信号およびクロック信号の位相の早遅関係を判定する。1402は2入力NAND回路1401の判定結果を1周期の間保持しておくためのフリップフロップ回路、1403は2入力NAND回路1401に付加される負荷を均等にするためのフリップフロップ回路、1404は2入力NAND回路1401の出力をゲート遅延によって少し遅らせ、フリップフロップ回路1402を確実に動作させるタイミング信号を作成するための回路、1405はフリップフロップ回路1402の出力を端子991から入力された低周波のクロック信号の周期で取り込むと共に前段のフリップフロップ回路の出力が中間値で保持されることによる誤動作を防止するためのフリップフロップ回路群である。また、1406は端子991から入力された低周波クロック信号の周期でカウントが進む4ビットカウンタ回路であり、フリップフロップ回路群1405の出力に従っていずれか片方のカウンタ1406のみカウントが進む。この回路は、2入力NAND回路1401がノイズ等の影響によって突発的に誤判定を行なってもその信号が後段の回路へは伝わらないようにするために設けられる。1407は、カウンタ回路1406を通った後の判定結果を低周波クロック信号の1周期の間保持するフリップフロップ回路である。カウンタ回路1406は、例えば図11(a)に示したような回路でも実現できる。ただし、ノード1464がハイレベルになるとカウンタ回路1406内の全てのフリップフロップ回路がリセットされてオール0になるように構成するものとする。ここで、カウンタ回路1406の一方のカウント数が15に達し出力がオール1となって内部ノード1462または1463のいずれかがローレベルになったとする。この時、他方のカウンタ回路1406のカウント数が11以下であると、出力端子1471または1481に可変遅延回路の遅延時間を増減させる信号が出力されるが、他方のカウンタ回路1406のカウント数も12以上に達していると出力端子1471および1481はローレベルのままである。いずれの場合でも、一方のカウント数が15に達するとノード1464がハイレベルとなって両方のカウンタ回路1406がリセットされ0からカウントし直しとなる。即ち、2入力NAND回路1401の判定結果の出現率が15:11以上の比率でいずれかに片寄っていれば可変遅延回路の遅延時間を増減させる信号が出力されるが、15:12以内の比率であればほぼ同数とみなされて遅延時間を変える信号は出力されない。なお、図14の位相比較回路の詳細な原理については、例えば特開平2−168308 号公報に開示されている。
【0037】図15には、図13の中のデコーダ回路1308の一実施例を示す。図15において、1301はシーケンス信号入力端子1352に接続された入力バッファ回路である。また、1501は3入力NAND回路、1502は4入力NAND回路、1503はシーケンス信号を低周波クロック信号に同期して取り込むためのフリップフロップ回路である。1551はその時に送られている参照信号が第1相のクロック信号の位相を表すものか第2相のクロック信号の位相を表すものかを伝えるシーケンス信号が入力される端子、1552は初期調整の段階か稼働状態の時期かを伝えるシーケンス信号が入力される端子、1553は他のシーケンス信号や参照信号がある状態から他の状態へ移りつつある時期か否かを伝えるシーケンス信号が入力される端子である。図に示すように、端子1551に入力されるシーケンス信号を基に、セレクタ回路1305を制御すると共に、いずれの相の制御回路1312,1313へ位相比較回路からの信号を伝えるかを制御する。また、端子1552に入力されるシーケンス信号を基に、初期調整時であるか否かを示す信号が論理回路群1220と共に、制御回路1312,1313に伝えられる。各制御回路1312内では、この信号がハイレベルになると予め定めたいくつかのフリップフロップ回路が“0”のリセットされ、他のフリップフロップ回路が“1”にセットされる。これによって可変遅延回路1302の遅延量が可変範囲の中心(もしくは予め定めた適当な値)に設定され、稼働時に於ける調整可能範囲を充分に確保される。この状態は、初期調整が終るまで続く。初期調整が終ると、制御回路1312が通常の制御動作を開始すると共に、制御回路1313には遅延時間を変化させる信号が行かなくなって初期調整終了時の制御信号が保持される。また、論理回路群1220には稼働状態になったことを示す信号が伝えられる。なお、これらのシーケンス信号や参照信号の状態が変化する時には、端子1553に加えられるシーケンス信号がローレベルになって遅延時間を増減する信号をどの制御回路1312,1313にも行かないようにし、誤動作を防ぐようになっている。
【0038】図16には、図12のクロック信号発生回路1202の一実施例を示す。図16において、1601は高周波発振器1201の出力を分周してクロック信号の周波数を作り出すためのフリップフロップ回路、1602は第1相および第2相のクロック信号の位相差と同じ位相差を持った2つの信号を作り出すためのフリップフロップ回路、1603はフリップフロップ回路1602の出力のうちのいずれか一方をシーケンス信号に従って選択し、参照信号を生成するためのセレク回路、1604はクロック信号と参照信号を高周波発振器の出力に同期させることによって所定の位相関係に合わせるためのフリップフロップ回路、1605は参照信号を各分配先1210へ送る前に予め一律に遅らせ、分配先1210内のバッファ回路1212と位相調整回路1211内の可変遅延回路1302および1303によるクロック信号の遅延時間と釣り合いをとるための遅延素子、1606はシーケンス信号を生成するシーケンス回路、1607はシーケンス回路を動作させるための低周波のクロック信号を生成する分周回路である。また、1651はクロック信号を出力する端子、1652は参照信号を出力する端子、1661〜1663はそれぞれ図15の端子1551〜1553に供給するシーケンス信号を出力する端子、1251はリセット信号を入力する端子である。なお、分周回路1607の分周比は図13の分周回路1306より大きく、例えば、1024分周前後のものを使う。また、遅延素子1605によって参照信号を遅らせる代わりにクロック信号の1周期以上前のエッジを参照信号に合わせるようにすれば、遅延素子1605は必ずしも必要ではない。
【0039】図17はシーケンス回路1606の一実施例を示したものである。図17において、1701は端子1251に入力されたリセット信号を分周回路1607から供給される低周波のクロック信号に同期して取り込むためのフリップフロップ回路、1702はフリップフロップ回路1701の出力がハイレベルとローレベルの中間の値で保持された時(いわゆるハザードが発生した時)に誤動作を起こさないようにするために再び同じクロック信号で同期し直すためのフリップフロップ回路、1703は低周波のクロック信号を更に分周して一定周期で参照信号を切り替えるための信号を作る分周回路、1704はその信号を2分周していずれの相の参照信号を送るかを決めるシーケンス信号を作るフリップフロップ回路である。また、1705〜1707は分周回路1607が出力する低周波のクロック信号に同期して動作するシフトレジスタ回路を構成するフリップフロップ回路であり、参照信号を切り替える信号(端子1661に出力される信号)と、参照信号の切り替え中か否かの指標となる信号(端子1663に出力される信号)を作るためのものである。1708は1251の端子に入力するリセット信号が解除された後に参照信号を切り替える信号が一巡したことを検出するためのフリップフロップ回路、1709と1710はその信号を端子1661に出力される信号と同期して変化させるためのフリップフロップ回路である。また、フリップフロップ回路1708に接続する端子1750には常にハイレベルの信号を加えておく。なお、分周回路1703の分周比は、この分周回路の出力の周期が図13の中の可変遅延回路1303の遅延時間調整に必要な時間以上となるように設定する。例えば、可変遅延回路1303の遅延時間の切り替え範囲が1280段階,分周回路1306が8分周,図14のカウンタ回路1406が4ビットカウンタ(16分周),図16のフリップフロップ回路1601による分周比が2分周であり、また、分周回路1607が1024分周であるとすると、分周回路1703の分周比は320(1280×8×16×2÷1024)以上であればよい。分周回路は分周比が2のべき乗となるようにすると構成が容易であり、この例の場合には512分周以上にすればよい。ただし、実用上は更に分周比を大きくし、装置全体の温度がある程度安定するまでの間時間を稼ぐように構成した方が、図13の中の可変遅延回路1302の可変幅が小さくて済む。
【0040】図17において、端子1251に入力されるリセット信号がハイレベルの間は、フリップフロップ回路1702の出力はハイレベルであり、分周回路1703およびフリップフロップ回路1704,1708は全てリセットされた状態になる。ここで、端子1251に入力されるリセット信号がローレベルになると、フリップフロップ回路1702の出力がローレベルとなって分周回路1703およびフリップフロップ回路1704,1708のリセットが解除される。すると、分周回路1703が動きだすと共に、フリップフロップ回路1708はノード1751に信号の立ち上がりのエッジが現われるのを待つ状態となる。リセット信号が解除された直後はノード1751は既にハイレベルであるため、フリップフロップ回路1708の出力が変化するのは、ノード1751に現われる信号が一度ローレベルになってから再びハイレベルになる時(すなわち参照信号を切り替える信号が一巡した後)である。その後は、再び端子1251に入力されるリセット信号がハイレベルにならない限り、フリップフロップ回路1708の出力はハイレベルが保持される。また、フリップフロップ回路1705〜1707が構成するシフトレジスタ回路によってノード1751に現われた信号が1段ずつシフトされるため、フリップフロップ回路1705と1707の出力の排他的論理和によってこの間にあるフリップフロップ回路1706の出力が変化するか否かを検出することができる。以上のようにして、図12のクロック位相調整装置1200により所望の位相に調整された多相のクロック信号およびシーケンス信号を複数の分配先1210に供給することができる。
【0041】図18は、クロック信号発生回路1202の他の実施例を示したものであり、論理回路群1220に4相のクロック信号を供給する場合に使用するクロック信号発生回路1202の一実施例を示したものである。図18に示す回路は、高周波発振器1201の出力を分周してクロック信号の周波数を作り出すフリップフロップ回路1601が4分周の分周回路を構成する点、クロック信号の位相差と同じ位相差を持った信号を作り出すフリップフロップ回路1602が4相分の信号を出力するように構成される点、参照信号として出力する相を選択するシーケンス信号(端子1661に出力する信号)が2ビット必要となる点、参照信号として出力する相を選択するセレクタ回路1603が4つの信号の中から1つを選択する構成にした点等において図16に示す回路と異なる。図18では、図16と同一の機能を有する部分については図16と同一の番号を付してある。なお、セレクタ回路1603は、4対1のセレクタ回路で一気に4つの信号の中から1つを選択するような構成にもできる。4対1のセレクタ回路の遅延時間ではフリップフロップ回路1602から1604まで信号が届かないような高速なクロック信号を必要とする場合等には、図18に示すように2対1のセレクタ回路を2段通るような構成にして、間にフリップフロップ回路1801を挿入することにより、2対1のセレクタ回路の遅延時間にまで短縮できる。
【0042】図19は、クロック信号発生回路1202の更に他の実施例を示したものであり、最初に周波数の低いクロック信号で図13の可変遅延回路1303の遅延時間の粗調整を行なった後に、実際に使う周波数で微調整を行なう場合に使用するクロック信号発生回路を示したものである。図19において、1901は粗調整用の低周波のクロック信号を作るための分周回路を構成するフリップフロップ回路、1902はフリップフロップ回路1901および1601の出力を高周波発振器1201の出力に同期した信号にするためのフリップフロップ回路、1903は粗調整用の低周波のクロック信号と実際に使う周波数のクロック信号を切り替えるためのセレクタ回路である。また、1961は粗調整の期間であるか微調整の期間であるかを示すシーケンス信号を出力する端子である。なお、各分配先1210においては粗調整の期間であるか微調整の期間であるかがわからなくても位相調整は可能であるが、粗調整の時には可変遅延回路の遅延時間変化幅の小さい制御信号(例えば図7の162〜166の端子に加える制御信号)を一定値に固定するような構成にすれば、粗調整にかかる時間を短縮することができる。
【0043】図20は、例えば、図19に示すクロック信号発生回路に使用されるシーケンス回路1606の一実施例を示したものである。図20の回路が図17の回路と異なる点は、参照信号として出力する相を決めるシーケンス信号(端子1661に出力するシーケンス信号)を作るフリップフロップ回路1704を2個にして2ビットの信号を出力するように構成した点、端子1661に出力するシーケンス信号が一巡したことを検出するフリップフロップ回路1709の他にシーケンス信号が二巡したことを検出するフリップフロップ回路2001を設けた点である。そして、一巡目に標調整を、二巡目には微調整を行ない、二巡目が終了したところで制御する可変遅延回路を1303から1302に切り替えると共に論理回路群1220を稼働状態にする。なお、同様にしてシーケンス信号が三巡したことを検出できるようにすれば、二巡目が終了したところでは制御する可変遅延回路のみを切り替え、三巡目が終了してから論理回路群1220を稼働状態にするような構成にすることもできる。
【0044】図21は、クロック信号発生回路1202の更に他の実施例を示したものであり、クロック信号の出力端子と参照信号の出力端子を多重化してクロック信号供給源1200と各分配先1210の間をつなぐ配線と端子(LSIの信号ピン)の物量を節約したものである。図21において、2101はセレクタ回路、2102はフリップフロップ回路である。図21の回路が図19の回路と異なる点は、セレクタ回路2101を設けてクロック信号と参照信号の両者を1651の端子に出力できるようにした点である。そして、例えば、参照信号として第1相または第3相のクロック信号の位相に相当する信号を送る時には、図21で上側の端子1651′からクロック信号を送り、下側の端子1651′から参照信号を送る。また、参照信号として第2相または第4相のクロック信号の位相に相当する信号を送る時には、逆に図21の下側の端子1651′からクロック信号を送り、上側の端子1651′から参照信号を送るる。このようにすれば、参照信号を送るための配線等が1組節約できる。なお、フリップフロップ回路2102は、高周波発振器1201の出力の1周期の間にフリップフロップ回路1801からセレクタ回路1603および2101を経由してフリップフロップ回路1604まで信号が届かない場合に必要となる。また、このようにして送ったクロック信号および参照信号から論理回路群1220に供給するためのクロック信号を生成する方法については、図26に後述する。
【0045】図22は、クロック信号発生回路1202の更に他の実施例を示したものであり、クロック信号の位相調整が終了してから論理回路群1220を稼働させるまでの間にクロック信号を一度停止させるようにしたものである。この回路を使えば、シーケンス信号を伝送する経路にスキューがあっても論理回路群1220内のフリップフロップを一斉にスタートさせることが可能になる。図22において、2251は位相調整が終了してから稼働状態に入るまでの間のみハイレベルとなるシーケンス信号、2200はクリーンスタート回路である。クリーンスタート回路2200は、シーケンス信号2251がローレベルの間は、図19や図21のフリップフロップ回路1601,1901,1902と同様に高周波発振器1201の出力を分周した信号を出力するが、シーケンス信号2251がハイレベルになると出力がローレベルになるように構成される。シーケンス信号2251は、例えば、図20のフリップフロップ回路2001からつながるフリップフロップ回路1710,1711の後にもう1段のフリップフロップ回路を設け、1段目のフリップフロップ回路1710と追加した3段目のフリップフロップ回路の出力が一致しない時のみシーケンス信号2251がハイレベルになるようにして作成することができる。
【0046】図23は、クリーンスタート回路2200の一例を示す構成図である。図23において、2201は端子2251から入力されたシーケンス信号を高周波発振器1201の出力に同期して取り込むと共に、ハザードの発生を防止するためのフリップフロップ回路、2202はフリップフロップ回路2201の出力がハイレベルの間だけ停止するクロック信号を作るためのNOR回路である。この回路は、フリップフロップ回路2201の出力がローレベルの間はフリップフロップ回路1601,1901でNOR回路2202を経由して出力されるクロック信号を順次分周し、フリップフロップ回路1902で高周波発振器1201の出力に同期した出力をセレクタ回路1903に送るようになっている。しかし、フリップフロップ回路2201の出力がハイレベルになると、NOR回路2202の出力はローレベルに固定されると共にフリップフロップ回路1601はリセットされて出力がローレベルに固定される。ここで再びフリップフロップ回路2201の出力がローレベルになると、フリップフロップ回路1601は再び分周の動作を開始する。これらの動作において、フリップフロップ回路2201の出力が変化する瞬間にはNOR回路2202のもう一方の入力はハイレベルになった直後であり、シーケンス信号2251が変化した時に、NOR回路2202からスパイク状のノイズが出力されることは無い。
【0047】図24は、クロック信号発生回路1202の更に他の実施例を示したものであり、クロック信号を粗調整の時と微調整の時とで周波数を変えて送り、参照信号は常に周波数の低い信号を送るように構成したものである。図19の回路ではセレクタ回路1903の出力をクロック信号(端子1651から出力する信号)と参照信号(端子1652から出力する信号)の両方に使っているのに対し、図24の回路ではセレクタ回路1903の出力をクロック信号のみに使用し、参照信号には常に周波の低い信号を出力するフリップフロップ回路1902の出力を直接フリップフロップ回路1602につないでいる。フリップフロップ回路2301は、クロック信号として出力する信号と参照信号として出力する信号の位相関係を合わせるためのものである。特にクロック信号に周波数が200〜300MHz以上になると、参照信号を同じ周波数で且つ正確な位相で伝達することは困難になる。このような場合に、図23のような回路を使えば粗調整時と同じ周波数で微調整時の参照信号を送ることができる。なお、このようにして送ったクロック信号および参照信号から論理回路群1220に供給するためのクロック信号を生成する方法については、図27に後述する。
【0048】図25は、クロック信号発生回路1202の更に他の実施例を示したものであり、分配先1210毎に異なる周波数のクロック信号を伝送できるようにしたものである。この回路は、図24に示す回路において、セレクタ回路1903およびフリップフロップ回路2301をもう1組設け、さらに2分の1分周した周波数のクロック信号も供給できるようになっている。論理回路群1220の中には、回路の速度が性能に直結するために少しでも高速な回路を必要とする部分(例えば中央処理装置)もあれば、少しくらい速度が遅くても安価な素子で構成したい部分(例えば入出力装置)もある。この場合、前者では高速のクロック信号が必要になるが後者では低速のクロック信号でなければ動作しないということも起こり得る。図25の回路はこのような場合に有効であり、一部の分配先1210には高速なクロック信号を供給し、他の分配先1210にはその2分の1の周波数のクロック信号を供給することができる。なお、参照信号は、いずれの分配先にも共通の信号を供給すればよい。
【0049】図26は、クロック信号発生回路1202の更に他の実施例を示したものであり、互いに倍数と約数の関係にない2種類の周波数のクロック信号(例えば800MHzと600MHz)を供給したい場合に使用する。この場合、この2種類の周波数の最小公倍数(この例では2400MHz)の周波数の発振器を設けてその出力を分周しても実現できるが、その周波数で動作する回路が実現できないかもしくは非常に高価になる場合には、図26の回路によって実現することができる。図26において、2501は逓倍回路、2502は位相調整回路、2503は分周回路、2504は分周回路2503と概ね等しい遅延時間で信号を伝達する遅延回路である。また、2505は図19等に示す回路におけるフリップフロップ回路1602,1801,1604およびセレクタ回路1603等で構成される部分と同様の回路である。図26の回路では、高周波発振器1201の発振周波数は2種類のクロック信号の周波数の最大公約数(上記の例では200MHz)とし、逓倍回路2501によって必要な周波数にまで逓倍する。この例の場合は3逓倍と4逓倍であるが、4逓倍回路は2逓倍回路2段で構成できることは明らかである。このようにして作成した600MHzおよび800MHzの信号を位相調整回路2502によって200MHzの信号の位相に合わせ、クロック信号として出力する。なお、分周回路2503およびセレクタ回路1903は図19等においてフリップフロップ回路1901の構成する分周回路およびセレクタ回路1903等が構成する回路と同様に、粗調整もしくは微調整を行なうために必要な信号を生成,選択して供給する回路である。また、等価遅延回路2504は粗調整時の信号経路と微調整時の信号経路の遅延時間を概ね合わせるために設けられている。図19等に示す回路では最高周波数の信号が2つに分離した後に同じセレクタに入力されるような経路は無く、また、その他の周波数の信号はセレクタで1本にしぼられた後出力されるまでの間にフリップフロップ1604によって位相を合わせ直しているためにこのような等価遅延回路は不要であるが、図26の回路では800MHzおよび600MHzの信号自体をセレクトして、そのまま出力する構成としているため、等価遅延回路2504が必要となる。なお、図26の回路の参照信号は200MHzの信号を800MHzのクロック信号でシフトさせて作成しているため、600MHzのクロック信号に対しては第1相のクロック信号とそれを反転させた第2相のクロック信号の位相に相当する参照信号を供給することができるが、800MHzのクロック信号に対しては第1相のクロック信号の位相に相当する参照信号のみを供給することになる。
【0050】図27に、位相調整回路2502の一実施例を示す。図27において、2507は可変遅延回路、2508は遅延制御回路、2509はフリップフロップ回路、2510および2513はセレクタ回路、2511および2514は数段のゲート回路により信号を遅延させる遅延回路、2512は位相比較回路である。図27の回路では、端子2551に入力されたクロック信号は、可変遅延回路2507によって位相調整された後に端子2553に出力される。ここで、端子2553に出力される信号の位相は、端子2554に出力される信号の位相よりフリップフロップ回路2509とセレクタ回路2510による遅延時間分だけ早くなるように調整される。従って、これらの遅延時間が図26のセレクタ回路1903と分周回路2503または等価遅延回路2504による遅延時間と概ね一致するように設計しておけば、シフト回路2505に入力される信号の位相を概ね一致させることができる。また、いずれか一方を大きくしておけば所望の早遅関係にすることも可能である。また、遅延回路2511は、端子2553に出力される信号と端子2554に出力される信号が上記のような位相関係にある時にフリップフロップ回路2509が内部ノード2555に現われる信号を確実に取り込めるようにタイミング関係をずらすための回路である。また、セレクタ回路2513および遅延回路2514は、位相調整が一度終了した後に端子2554に出力される信号の位相を少しずらして再調整させるための回路である。この回路は、位相比較回路2512に入力される信号の位相がちょうど180度ずれていた場合に、早遅いずれの信号も出力されなくなり、位相調整が進まなくなるのを防ぐために必要となる。位相調整を開始してから調整に必要な時間が経過すると、位相がちょうど180度ずれた状態、もしくは位相の合った状態のいずれかになり、その途中の状態は無くなる。ここで、端子2554に出力される信号を位相比較回路2512が180度のずれを判別できるだけずらせると、180度ずれていた場合には位相調整が開始され、合っていた場合には少しずらされた分が再調整される。従って、再調整させた後には必ず位相の合った状態に落ち着くことになる。端子2562に入力されるシーケンス信号は、この再調整を行なうための信号である。端子2563に入力されるシーケンス信号は、制御回路2508の中のフリップフロップ回路を適当にリセットまたはセットして可変遅延回路2507の遅延時間が可変幅の真中くらいになるようにするためのものであり、最初の調整を開始する前にこの設定を行なう。また、端子2561に入力されるシーケンス信号は2組ある可変遅延回路2507および遅延制御回路2508を1組ずつ調整するためのものであり、この信号によって1個の位相比較回路2512を両方の信号の位相調整に兼用できる。なお、シーケンス信号を変化させる順序は、まず最初に端子2563から入力する信号によって可変遅延回路2507の中心値設定を行ない、次に端子2561から入力する信号をハイレベルおよびローレベルの両方の状態で位相調整を行なうのに充分な時間間隔で変化させ、さらに端子2562から入力する信号を切り替え、最後に再び端子2561から入力する信号をハイレベルおよびローレベルの両方の状態で位相調整を行なうのに充分な時間間隔で変化させてこの回路の位相調整を終了する。そして、この回路の位相調整が終了した後に、端子1661〜1663および1961に出力するシーケンス信号を通常通りに変化させて各分配先1210内の位相調整回路1211の調整を行なう。また、図27の回路についても温度変化に常時追従させるような構成にしたい場合には、温度変化に追従させない部分の制御回路の出力を固定するシーケンス信号を別途設け、上記の順序で位相調整が終了した後にこの信号によって固定する。その後は、端子2561から入力する信号(端子1661に出力する信号と同じ信号でもよい)を定期的に変化させ、各分配先1210内の調整を開始する。
【0051】図28は各分配先1210の中に使用する位相調整回路1211の他の実施例を示したものであり、図21に示したようにクロック信号を伝送する経路と参照信号を伝送する経路を兼用させる場合に使用する回路を示す。図28において、2601はセレクタ回路、2602は遅延時間がセレクタ回路1305と等しくなるように構成された遅延回路である。その他の部分は、2相用が4相用になっている点を除いて図13の回路と同様である。図28の回路を使って位相調整を行なう場合、第1相および第3相のクロック信号を合わせる時には、図中、下側の入力端子1350から入力された信号をセレクタ回路2601によって選択し位相比較回路1307に入力する。また、第2相および第4相のクロック信号の位相調整を行なう時には第1相のクロック信号の経路を経由して供給された参照信号をセレクタ2601によって選択し位相比較回路1307に入力する。従って、第1相および第3相のクロック信号については、図13の回路と同様にチップに入力された参照信号と直接比較しながら調整される。また、第2相および第4相のクロック信号については、既に調整された第1相のクロック信号の経路を経由して送られてくる参照信号と比較するため、間接的に図の下側の入力端子1350から入力した参照信号と比較することになる。従って、全ての相に関して図の下側の入力端子1350から入力した参照信号に合わせられることになる。なお、参照信号の経路を独立に設ける方が位相調整の精度が上がることはいうまでもないが、システム全体を安価に作成したい時には高速信号の経路を節約できる本実施例は有効である。また、図28の回路で論理回路群1220の稼働時に温度変化に追従させるような制御を行なう場合、どれか1つの相のクロック信号に合う参照信号が図の下側のクロック信号を入力する端子1350から入力する信号と一致するようにしておくことにより、その相だけは追従させることが可能である。複数の相について温度変化に追従させたい場合には、図30を用いて後述するように、その相を代表相として他の相にも同じ制御信号を加えればよい。
【0052】図29は各分配先1210内で使用する位相調整回路1211の更に他の実施例を示したものであり、図24に示したように参照信号がクロック信号より低い周波数で伝送される場合に使用する回路である。この回路は、粗調整時にクロック信号と参照信号が同じ周波数で送られてきた場合に位相比較を行なう系と、微調整時および稼働時にクロック信号のみが高い周波数で送られてきた場合に位相比較を行なう系を備えている。図29の回路では、クロック信号と参照信号が同じ周波数の時には、図中、下側の位相比較回路1307を使用する。また、クロック信号の周波数の方が高い時には、フリップフロップ回路2701によって参照信号をクロック信号に同期させた信号と元の参照信号の位相を比較する。なお、図29の回路では、位相比較回路1307を2回路設けているが、位相比較回路内で比較結果を低周波のクロック信号に同期させる部分(図14のフリップフロップ回路1405)以降を1つの回路を共用することもできる。また、図29に示す回路に代えて、例えば、特開昭63−231516号公報の図12,図15〜図18等に開示される回路を使用することもできる。
【0053】図30は各分配先1210内で使用する位相調整回路1211の更に他の実施例を示したものであり、稼働時に温度変化等に追従させるための制御回路1312の物量を節約したものである。すなわち、論理回路群1220を稼働状態にする前の粗調整および微調整は今までと同じく可変遅延回路1303を制御する制御回路1313を順次調整して行なうが、稼働時に温度変化等に追従させる時にはどれか1つの相のクロック信号を代表相として、その相だけを合わせるようにする。そして他の相の可変遅延回路1302にも同じ制御信号を加える。位相調整回路1211やバッファ回路1212が1つのLSIの中にあれば、これらの回路を構成する回路素子は常に概ね等しい温度にあると推定できる。従って、この中の1つに追従する制御信号が得られれば、他についても同じ制御信号で概ね追従できると考えられる。なお、ゲート段数によって遅延時間を変える図5や図7の可変遅延回路は負荷の重さによって遅延時間を変える図1〜図4の可変遅延回路に比べて遅延時間変化の分解能が粗いため、これだけで初期調整を終ると代表相以外の相は位相精度が粗くなってしまう。図30の回路では、これを避けるために負荷の重さで遅延時間を切り替える可変遅延回路2801を付加し、可変遅延回路1303の分解能を補っている。この可変遅延回路2801の可変幅は、可変遅延回路1303の最小分解能より大きくなるように設定しておけば充分である。また、このような制御を行なう場合には、例えば稼働状態にするか否かを決める信号(シーケンス回路1606から端子1662に出力される信号)がハイレベルになった後は、どの相の参照信号を伝送するかを決めるシーケンス信号(端子1661に出力される信号)を固定することにより、常に代表相のクロック信号に相当する参照信号を伝送しながらその相のみを調整するようにできる。また、2802は入力バッファ回路1301と概ね等しい遅延時間で信号を伝達する回路である。この回路によって、入力回路1301の遅延時間のLSI毎のバラツキを相殺し、LSI内の2つの回路(入力バッファ1301と遅延回路2802)の遅延時間の相対バラツキ分程度に抑えることができる。また、遅延回路2802と2602の間で互いに概ね等しい遅延時間となる部分があれば、その両方を省略することも可能である。
【0054】図31は、図28〜図30等の実施例によって得られたデューティー50%4相のクロック信号からデューティー25%4相のクロック信号を生成する回路の一実施例を示したものである。本発明によれば精度よく位相調整された4相のクロック信号を得ることができるので、このような回路が実用化できる。この回路は、可変遅延回路1303とクロック信号を出力する端子2651〜2654の間にNAND回路2901および2902を挿入したものであり、可変遅延回路1303から2951〜2954の内部ノードに出力されたデューティー50%の各相のクロック信号を次の相のクロック信号で抑制することによってデューティー25%のクロック信号を生成している。位相調整は各相のクロック信号の片側のエッジ(例えば、立ち上がりのエッジ)のみについて行なうことにより、もう一方のエッジについても自動的に調整されることになる。なお、粗調整の前にクロック信号の周期の25%以上の位相ズレがあると所定のパルスが出ない恐れがあるため、粗調整時には内部ノード2955をローレベルにしてデューティー50%のまま調整し、微調整時および稼働時にノード2955をハイレベルにしてデューティー25%のクロック信号を出力している。図32は、この時に各ノードに現われる信号波形を示したものであり、例えばノード2651に現われる波形は、ノード2951がハイレベルでノード2953がローレベルの時のみローレベル、その他の時はハイレベルとなる。これらのクロック信号は、バッファ回路1212の段数によって正負いずれの極性のクロック信号としても供給できる。そして、これと同じ信号を位相比較回路1307にも供給することにより、フリップフロップ回路1221に供給されるのと同じ波形で位相比較ができる。
【0055】なお、図13以降に示した回路で使用されるセレクタ回路は、信号を上下いずれの入力端子から入力しても同じ遅延時間で出力されるのが望ましいが、図6に示したセレクタ回路ではPMOS側に対して非対称でありこの仕様を満足しない。そこで、図33にこの問題を解消したセレクタ回路の一例を示す。図33の回路では、図6のセレクタ回路を2個並べて出力端子152を共通に接続すると共に、上下の入力端子151および551が互いに交差するように接続している。また、制御端子161から入力した信号は、互いに逆極性で使用する。このように構成すれば、入力端子151および551から出力端子152までの回路は互いに対称となって遅延時間を等しくすることができる。
【0056】
【発明の効果】以上述べたように、本発明によれば最小遅延時間が小さく可変幅の大きな可変遅延回路、あるいは、動作中に遅延時間を変化させてもスパイク状のノイズが発生しない可変遅延回路および遅延制御回路が実現できる。更に、これらの可変遅延回路を用いてクロック信号の位相調整装置を構成することにより、位相精度良くクロック信号を供給することができる。




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013