(57)【特許請求の範囲】
【請求項１】
出力回路と、
出力ノードを有する前記出力回路のレプリカ回路と、
前記レプリカ回路の前記出力ノードの電位と所定の電位とを比較し、該比較の結果をコンパレータ信号として出力する比較回路と、
前記コンパレータ信号に基づいてそのカウント値を更新して前記出力回路及び前記レプリカ回路のインピーダンスを調整するインピーダンス調整信号を出力し、キャリブレーション動作の完了に応じて前記カウント値の更新を停止するカウンタ回路と、
前記カウンタ回路にカウンタ更新クロック信号を供給するカウンタ更新クロックゲート回路と、
前記キャリブレーション動作の完了を判定し、前記カウンタ更新クロックゲート回路にヒット判定信号を出力する判定回路と、を有し、
前記キャリブレーション動作が完了したとき、前記判定回路は前記ヒット判定信号を活性化して前記カウンタ更新クロック信号を非活性化し、それに応じて前記カウンタ回路は前記カウント値の更新を停止する、ことを特徴とするキャリブレーション回路。
【請求項２】
前記判定回路は、前記コンパレータ信号に基づき前記キャリブレーション動作の完了を判定することを特徴とする請求項１に記載のキャリブレーション回路。
【請求項３】
外部から入力されるキャリブレーションコマンドに基づくイネーブル信号が活性化されたとき、外部から入力されるクロック信号に基づく基準更新クロック信号より第１の更新クロック信号を生成する第１の更新クロックゲート回路をさらに有し、
前記ヒット判定信号が活性化されるまでは、前記カウンタ更新クロックゲート回路が前記第１の更新クロック信号より前記カウンタ更新クロック信号を生成することを特徴とする請求項２に記載のキャリブレーション回路。
【請求項４】
前記外部から入力されるクロック信号を分周し前記基準更新クロック信号として出力する分周回路をさらに有することを特徴とする請求項３に記載のキャリブレーション回路。
【請求項５】
前記イネーブル信号が、前記第１の更新クロックゲート回路に前記基準更新クロック信号の１番目のクロックパルスが供給された後、かつ前記第１の更新クロックゲート回路に前記基準更新クロック信号の２番目のクロックパルスが供給される前に、活性化されることを特徴とする請求項３に記載のキャリブレーション回路。
【請求項６】
前記第１の更新クロックゲート回路が、
第１のラッチ回路と、
前記イネーブル信号を反転させて前記第１のラッチ回路の入力端子へ供給する第１のインバータと、
前記基準更新クロック信号の反転信号と前記第１のラッチ回路の出力とのノア論理を求めその結果を前記第１の更新クロック信号として出力する第１のノア回路と、を有し、
前記カウンタ更新クロックゲート回路が、
第２のラッチ回路と、
前記ヒット判定信号と前記イネーブル信号の反転信号とのノア論理を求めその結果を前記第２のラッチ回路の入力端子へ供給する第２のノア回路と、
前記第１の更新クロック信号の反転信号と前記第２のラッチ回路の出力とのノア論理を求めその結果を前記カウンタ更新クロック信号として出力する第３のノア回路と、を有することを特徴とする請求項３に記載のキャリブレーション回路。
【請求項７】
前記出力回路は、プルアップ側ドライバとプルダウン側ドライバとを備え、
前記レプリカ回路は、前記プルアップ側ドライバのレプリカ回路であるプルアップ側レプリカ回路、又は、前記プルアップ側レプリカ回路及び前記プルダウン側ドライバのレプリカ回路であるプルダウン側レプリカ回路を有しており、
前記レプリカ回路の前記出力ノードは、前記プルアップ側レプリカ回路と外部ピンに接続された所定の抵抗との中間ノード、又は前記プルアップ側レプリカ回路と前記プルダウン側レプリカ回路との中間ノードであることを特徴とする請求項１に記載のキャリブレーション回路。
【請求項８】
プルアップ側ドライバとプルダウン側ドライバとを備える出力回路のキャリブレーション回路であって、
前記プルアップ側ドライバのレプリカ回路であるプルアップ側レプリカ回路と、
前記プルダウン側ドライバのレプリカ回路であるプルダウン側レプリカ回路と、
前記プルアップ側レプリカ回路の出力ノードの電位と所定の電位とを比較し、該比較の結果をプルアップ側コンパレータ信号として出力するプルアップ側比較回路と、
前記プルダウン側レプリカ回路の出力ノードの電位と所定の電位とを比較し、該比較の結果をプルダウン側コンパレータ信号として出力するプルダウン側比較回路と、
前記プルアップ側レプリカ回路のインピーダンスに基づくプルアップ側コンパレータ信号をカウントして、前記プルアップ側ドライバ及び前記プルアップ側レプリカ回路のインピーダンスを調整するプルアップ側インピーダンス調整信号を出力するプルアップ側カウンタ回路と、
前記プルダウン側レプリカ回路のインピーダンスに基づくプルダウン側コンパレータ信号をカウントして、前記プルダウン側ドライバ及び前記プルダウン側レプリカ回路のインピーダンスを調整するプルダウン側インピーダンス調整信号を出力するプルダウン側カウンタ回路と、を有し、
前記プルアップ側カウンタ回路は、前記プルアップ側ドライバのキャリブレーション動作の完了に応じてカウント動作を停止し、
前記プルダウン側カウンタ回路は、前記プルダウン側ドライバのキャリブレーション動作の完了に応じてカウント動作を停止し、
前記キャリブレーショ回路はさらに、
前記プルアップ側カウンタ回路にプルアップ側カウンタ更新クロック信号を供給するプルアップ側カウンタ更新クロックゲート回路と、
前記プルダウン側カウンタ回路にプルダウン側カウンタ更新クロック信号を供給するプルダウン側カウンタ更新クロックゲート回路と、
前記プルアップ側ドライバのキャリブレーション動作の完了を判定し該判定の結果を示すプルアップ側ヒット判定信号を前記プルアップ側カウンタ更新クロックゲート回路に出力するプルアップ側判定回路と、
前記プルダウン側ドライバのキャリブレーション動作の完了を判定し該判定の結果を示すプルダウン側ヒット判定信号を前記プルダウン側カウンタ更新クロックゲート回路に出力するプルダウン側判定回路と、を有し、
前記プルアップ側ドライバのキャリブレーション動作が完了した場合、前記プルアップ側カウンタ更新クロックゲート回路の前記プルアップ側カウンタ更新クロック信号を非活性化することで前記プルアップ側カウンタ回路のカウント動作を停止し、
前記プルダウン側ドライバのキャリブレーション動作が完了した場合、前記プルダウン側カウンタ更新クロックゲート回路の前記プルダウン側カウンタ更新クロック信号を非活性化することで前記プルダウン側カウンタ回路のカウント動作を停止する、ことを特徴とするキャリブレーション回路。
【請求項９】
前記プルアップ側カウンタ更新クロック信号と前記プルダウン側カウンタ更新クロック信号とが、互いに独立に制御されることを特徴とする請求項８に記載のキャリブレーション回路。
【請求項１０】
第１の端子と、
前記第１の端子に接続され、第１及び第２のインピーダンスをそれぞれ有する第１及び第２のドライバ回路と、
第１のクロック信号を受けているとき、前記第１のドライバ回路の前記第１のインピーダンスを調整する第１のカウンタ回路と、
第２のクロック信号を受けているとき、前記第２のドライバ回路の前記第２のインピーダンスを調整する第２のカウンタ回路と、
前記第１及び第２のクロック信号の一方を前記第１及び第２のカウンタ回路のうちの関連する一方へ供給し、その間、前記第１及び第２のクロック信号の他方を前記第１及び第２のカウンタ回路のうち関連する他方へ供給するのを停止するように動作する制御回路と、
を備え、
前記制御回路は、第１及び第２のクロックゲート回路と第１及び第２の判定回路とを含み、
前記第１及び第２のクロックゲート回路はそれぞれ前記第１及び第２のクロック信号を生成し、
前記第１の判定回路は、前記第１のドライバ回路の前記第１のインピーダンスが第１の基準値に達し又は超えたとき、前記第１のクロックゲート回路へ第１のヒット信号を供給し、前記第１のクロックゲート回路は、前記第１のヒット信号に応じて、前記第１のカウンタ回路への前記第１のクロック信号の供給を停止し、
前記第２の判定回路は、前記第２のドライバ回路の前記第２のインピーダンスが第２の基準値に達し又は超えたとき、前記第２のクロックゲート回路へ第２のヒット信号を供給し、前記第２のクロックゲート回路は、前記第２のヒット信号に応じて、前記第２のカウンタ回路への前記第２のクロック信号の供給を停止する、ことを特徴とする装置。
【請求項１１】
前記制御回路は、第３及び第４のクロック信号をそれぞれ出力する第３及び第４のクロックゲート回路を含み、
前記第３のクロックゲート回路は、前記第３のクロック信号を前記第１のクロックゲート回路及び前記第１の判定回路へ供給し、
前記第１のクロックゲート回路は、前記第３のクロック信号を遅延させて前記第１のクロック信号を生成し、
前記第１の判定回路は、前記第３のクロック信号に応じて前記第１のヒット信号を出力し、
前記第４のクロックゲート回路は、前記第４のクロック信号を前記第２のクロックゲート回路及び前記第２の判定回路へ供給し、
前記第２のクロックゲート回路は、前記第４のクロック信号を遅延させて前記第２のクロック信号を生成し、
前記第２の判定回路は、前記第４のクロック信号に応じて前記第２のヒット信号を出力する、ことを特徴とする請求項１０に記載の装置。
【請求項１２】
前記制御回路は、分周回路、コマンドラッチ回路及び同期回路を含み、入力クロック信号及び第１のコマンド信号を受け、
前記分周回路は、前記入力クロック信号を受け、当該入力クロック信号を予め定められた分周比で分周して分周クロック信号を生成し、
前記コマンドラッチ回路は、前記第１のコマンド信号に応じて第１及び第２のイネーブル信号の一方を出力し、
前記同期回路は、前記分周クロック信号と前記第１及び第２のイネーブル信号の一方とを受け、前記分周クロック信号に応じて前記第１及び第２のイネーブル信号の一方を出力し、
前記第１及び第３のクロックゲート回路は、前記第１のイネーブル信号により活性化され、前記第２及び第４のクロックゲート回路は、前記第２のイネーブル信号により活性化される、ことを特徴とする請求項１１に記載の装置。
【請求項１３】
第２の端子と、
前記第１のインピーダンスに関連する第１のレプリカインピーダンスを示す第１及び第２のレプリカ回路と、
前記第２のインピーダンスに関連する第２のレプリカインピーダンスを示し、第１のノードが前記第２レプリカ回路に接続された第３のレプリカ回路と、
前記第２の端子の電圧レベルをあらかじめ定められた電圧と比較し、第１の比較信号を前記第１の判定回路へ出力する第１の比較器と、
前記第１のノードの電圧レベルをあらかじめ定められた電圧と比較し、第２の比較信号を前記第２の判定回路へ出力する第２の比較器と、をさらに含み、
前記第１のレプリカ回路は前記第２の端子に接続され、
前記第１の判定回路は、前記第１の比較信号に基づいて前記第１のドライバ回路の前記第１のインピーダンスが前記基準値に達し又は超えたか否か判定し、
前記第２の判定回路は、前記第２の比較信号に基づいて前記第２のドライバ回路の前記第２のインピーダンスが前記基準値に達し又は超えたか否か判定する、ことを特徴とする請求項１０に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置に関し、特に、ＺＱキャリブレーション回路を備えた半導体装置に関する。
【背景技術】
【０００２】
ＤＤＲ３と呼ばれる半導体装置（ＤＲＡＭ）は、その出力バッファのインピーダンスを自動調整するＺＱキャリブレーション回路を搭載している。従来のＺＱキャリブレーション回路のブロック図を図８に示す。
【０００３】
図８に示すように、ＤＱパッド８０１には、プルアップドライバ８０２とプルダウンドライバ８０３とが接続されている。ＺＱキャリブレーション回路は、ＺＱパッド８０４に接続される外部抵抗（２４０［Ω］）８０５を利用して、プルアップドライバ８０２とプルダウンドライバ８０３の出力インピーダンスを調節する。
【０００４】
一般的なＺＱキャリブレーション方法では、まず、プルアップ（Ｐｃｈ）側、即ち、プルアップドライバ８０２を調整し、その後、プルダウン（Ｎｃｈ）側、即ち、プルダウンドライバ８０３を調整する二段階調整方法が採用されている。
【０００５】
詳述すると、まずＰｃｈ側の調整を行うため、ＺＱパッド８０４を介して外部抵抗８０５に接続されたＰｃｈ側第１ＤＱレプリカ８０６の出力とＰｃｈ側ＶＤＤ／２発生回路８０７の出力（ＶＤＤ／２［Ｖ］）とをＰｃｈ側コンパレータ８０８で比較する。ＺＱ制御回路８０９は、Ｐｃｈ側コンパレータ８０８の出力に基づきＰｃｈ側第１ＤＱレプリカ８０６の出力がＶＤＤ／２［Ｖ］と等しくなるようにＰｃｈレプリカコードを発生する。Ｐｃｈ側レプリカ制御回路８１０は、Ｐｃｈレプリカコードに応じてＰｃｈ側第１ＤＱレプリカ８０６（及びＰｃｈ側第２ＤＱレプリカ８１１）の出力インピーダンスを制御する。上記動作を繰り返し、Ｐｃｈ側第１ＤＱレプリカ８０６の出力がＶＤＤ／２［Ｖ］と等しくなると、ＺＱ制御回路８０９は、Ｐｃｈ側第１ＤＱレプリカ８０６の出力インピーダンスが外部抵抗２４０［Ω］と等しくなったと判断し、プルアップドライバ８０２の状態をＰｃｈ側第１ＤＱレプリカ８０６と同一にするためのＰｃｈＤＱコードを生成する。これにより、プルアップドライバ８０２の出力インピーダンスが外部抵抗８０５に等しい２４０［Ω］に設定される。
【０００６】
次に、Ｎｃｈ側の調整を行う。上述したＰｃｈ側の調整動作により、Ｐｃｈ側第２ＤＱレプリカ８１１の出力インピーダンスは２４０［Ω］に設定されている。このＰｃｈ側第２ＤＱレプリカ８１１に接続されたＮｃｈ側ＤＱレプリカ８１２の出力とＮｃｈ側ＶＤＤ／２発生回路８１３の出力とをＮｃｈ側コンパレータ８１４で比較する。ＺＱ制御回路８０９は、Ｎｃｈ側コンパレータ８１４の出力に応じてＮｃｈレプリカコードを発生する。Ｎｃｈ側レプリカ制御回路８１５は、Ｎｃｈレプリカコードに応じてＮｃｈ側ＤＱレプリカ８１２の出力インピーダンスを調整する。上記動作を繰り返し、Ｎｃｈ側ＤＱレプリカ８１２の出力とＮｃｈ側ＶＤＤ／２発生回路８１３の出力とが等しくなると、ＺＱ制御回路８０９は、プルダウンドライバ８０３の状態をＮｃｈ側ＤＱレプリカ８１２と同一にするためのＮｃｈＤＱコードを生成する。
【０００７】
以上のようにして、プルアップドライバ８０２及びプルダウンドライバ８０３の出力インピーダンスが外部抵抗８０５に等しい値に調整される。
【０００８】
ＪＥＤＥＣでは、ＺＱキャリブレーションのコマンドとして、ＺＱＣＬ（init, oper）コマンドと、ＺＱＣＳコマンドの２種が規定されている。
【０００９】
ＺＱＣＬコマンドは、電源投入後及びセルフリフレッシュ後など、長時間ＤＲＡＭにアクセスせず温度・電圧が変動している際に入力されるキャリブレーションコマンドである。ＺＱＣＬコマンドが入力されると、５１２ｔＣＫ期間(init)又は２５６ｔＣＫ期間(oper)でＺＱキャリブレーションが実施される。また、ＺＱＣＳコマンドは、通常ＤＲＡＭアクセス時に、定期的（例えば１２８ｍｓ毎）に入力されるＺＱキャリブレーションコマンドである。ＺＱＣＳコマンドが入力されると、６４ｔＣＫ期間でＺＱキャリブレーションが実施される。
【００１０】
ＺＱキャリブレーションではキャリブレーション動作におけるコンパレータでの電圧比較やＤＱレプリカバッファのインピーダンス変更などにある程度の一定の時間を必要とする。このことから外部クロックの周波数が高い場合には、外部クロックが活性化する度にインピーダンス調整を行うことは不可能である。そこて、ＺＱキャリブレーションでは、外部クロックを分周した内部クロックにてインピーダンス調整を行うことが一般的である。
【００１１】
図９に分周回路を備えた従来のＺＱ制御回路８０９の構成を示す。
【００１２】
図９のＺＱ制御回路８０９は、分周回路９０１、Ｂ／Ｅカウンタ９０２、コマンドラッチ回路９０３、Ｐｃｈ側ヒット判定回路９０４、Ｐｃｈ側マスク回路９０５、Ｐｃｈ側アンド回路９０６、Ｐｃｈ側アップダウンカウンタ回路９０７、Ｐｃｈ側初期コード記憶部９０８、第１及び第２ラッチ回路９０９，９１０、Ｎｃｈ側ヒット判定回路９１１、Ｎｃｈ側マスク回路９１２、Ｎｃｈ側アンド回路９１３、Ｎｃｈ側アップダウンカウンタ回路９１４、Ｎｃｈ側初期コード記憶部９１５、及び第３ラッチ回路９１６を備えている。
【００１３】
図９の回路では、分周回路９０１において外部クロックＣＫを所定の分周数（例えば、１６）で分周し、Ｐｃｈ側及びＮｃｈ側のヒット判定回路９０４，９１１、マスク回路９０５，９１２、及びアップダウンカウンタ回路９０７，９１４に更新クロックＣＫＬとして供給している。つまり、図９のＺＱ制御回路８０９では、１系統の更新クロックＣＬＫをその基本クロックとしている。
【００１４】
このように、図９のＺＱ制御回路８０９では、Ｐｃｈ側の回路とＮｃｈ側の回路とに共通の更新クロックＣＬＫが供給されている。それゆえ、プルアップ側とプルダウン側とで単一のアップダウンカウンタを共有するように構成することも可能である。その場合、ＺＱ制御回路８０９の占有面積を小さくすることができる。
【００１５】
次に、図９に加え図１０をも参照して、ＺＱ制御回路８０９の動作について説明する。図１０は、図９のＺＱ制御回路８０９における各部の信号波形図である。
【００１６】
分周回路９０１は、外部クロックＣＫを分周して更新クロックＣＬＫを発生させる。
【００１７】
Ｂ／Ｅカウンタ９０２は、入力されるコマンドｃｍｄに応じて規定されている数（５１２，２５６もしくは６４ｔＣＫ）の外部クロックＣＫをカウントし、コマンドラッチ回路９０３にカウント終了（ＺＱキャリブレーション終了）を通知する。
【００１８】
コマンドラッチ回路９０３は、入力されたコマンドｃｍｄ（ＺＱＣＬ又はＺＱＣＳ）に応じてＰｃｈイネーブル信号又はＮｃｈイネーブル信号を出力し、Ｂ／Ｅカウンタ２０２からの通知に応じてその出力を停止する。
【００１９】
図１０では、分周回路９０１の分周数を１６としている。また、コマンドｃｍｄとしてＺＱＣＳコマンドが入力され、コマンドラッチ回路９０３からＰｃｈイネーブル信号が出力されたとする。さらに、初期コード記憶部９０８，９１５には、初期コード＃０５が格納されているとする。
【００２０】
ＺＱＣＳコマンドが入力されると、コマンドラッチ回路９０３は、Ｐｃｈイネーブル信号を出力する。ＺＱＣＳコマンドによるキャリブレーション期間は６４ｔＣＫと規定されているので、Ｐｃｈイネーブル信号は、６４／１６＝４［更新クロック］の期間だけハイレベルとなる。
【００２１】
Ｐｃｈイネーブル信号がハイレベルになると、Ｐｃｈ側アップダウンカウンタ９０７は、次の更新クロックＣＬＫの立ち上がりで、Ｐｃｈ側初期コード記憶部９０８記憶された初期コードを取り込む。これにより、Ｐｃｈ側アップダウンカウンタ９０７の出力Ｄは、＃０５となる。
【００２２】
この後、Ｐｃｈ側アップダウンカウンタ９０７は、更新クロックＣＬＫの立ち上がりのタイミング毎に、Ｐｃｈ側ヒット判定回路９０４からの出力Ｅに応じてカウント値をアップ又はダウンする。これにより、Ｐｃｈ側アップダウンカウンタ９０７の出力は、＃０５→＃０６→＃０７→＃０８と変化する。
【００２３】
Ｐｃｈ側ヒット判定回路９０４は、Ｐｃｈ側コンパレータ（図８の８０８）からの出力に基づいてヒット判定を行う。図１０は、Ｐｃｈイネーブル信号がハイレベルの期間内に“ヒット”と判定されなかった場合を示しており、この場合、Ｐｃｈイネーブル信号がローレベルに変化したときのＰｃｈ側アップダウンカウンタ回路９０７の出力Ｄ＝＃０７が、第１及び第２のラッチ回路９０９及び９１０にラッチされる。また、この場合、Ｐｃｈ側アップダウンカウンタ回路９０７の有効な更新回数（＝調整ステップ数）は、キャリブレーション期間中（６４／１６＝４回中）、２番目及び３番目の更新クロックＣＬＫに対応する２回である。
【００２４】
第１及び第２のラッチ回路９０９及び９１０にラッチされた出力Ｄは、それぞれＰｃｈレプリカコード及びＰｃｈＤＱコードとして外部出力される。また、ＰｃｈＤＱコードは、新たな初期コードとして初期コード記憶部９０８に記憶される。
【００２５】
図１１に、Ｐｃｈイネーブル信号がハイレベルの期間内に、Ｐｃｈ側ヒット判定回路９０４が“ヒット”と判定した場合の波形図を示す。
【００２６】
Ｐｃｈ側ヒット判定回路９０４から“ヒット”を表すパルス信号ＰＨＩＴが出力されると、このパルス信号は、Ｐｃｈ側アンド回路９０６の出力ＣとしてＢ／Ｅカウンタ９０２へ供給される。その結果、Ｂ／Ｅカウンタ９０２は外部クロックＣＫのカウントを停止し、カウント停止をコマンドラッチ回路９０３に通知する。
【００２７】
コマンドラッチ回路９０３は、Ｂ／Ｅカウンタ９０２からのカウント停止の通知を受けて、Ｐｃｈイネーブル信号をローレベルに変化させる。この結果、Ｐｃｈイネーブル信号がローレベルに変化したときのＰｃｈ側アップダウンカウンタ回路９０７の出力Ｄ＝＃０６が、第１及び第２のラッチ回路９０９及び９１０にラッチされる。なお、この場合、Ｐｃｈイネーブル信号がハイレベルである期間は６４ｔＣＫよりも短くなる。
【００２８】
Ｎｃｈ側においても、上記と同様にしてＮｃｈレプリカコード及びＮｃｈＤＱコードが生成される。
【００２９】
さて、図１０及び図１１からも理解されるように、Ｐｃｈ側アップダウンカウンタ回路９０７は、ＺＱキャリブレーションが行われているか否か、即ち、Ｐｃｈイネーブル信号がハイレベルであるか否かに関わらず、カウントアップ又はダウンを継続して行っている。そして、Ｐｃｈ側ヒット判定回路９０４もまた、Ｐｃｈ側アップダウンカウンタ回路９０７の出力に基づくコンパレータ信号の入力を受け、Ｐｃｈイネーブル信号がハイレベルであるか否かに関わらずヒット判定を行っている。それゆえ、Ｐｃｈ側ヒット判定回路９０４は、Ｐｃｈイネーブル信号がハイレベルに変化した後、最初の更新クロックＣＬＫの立ち上がりでもヒット判定を示すパルス信号ＰＦＡＬＳＥを出力するおそれがある。
【００３０】
このようなパルス信号ＰＦＡＬＳＥがＢ／Ｅカウンタ回路９０２に入力されてしまうと、Ｐｃｈイネーブル信号がローレベルに変更され、何らＺＱキャリブレーション動作が実行されることなくＺＱキャリブレーション期間が終了してしまう。
【００３１】
そこで、キャリブレーション開始時にパルス信号ＰＦＡＬＳＥが出力されるおそれのある期間中、Ｐｃｈ側マスク回路９０５からマスク信号を出力Ｂとして出力させる。マスク信号をＰｃｈ側アンド回路９０６へ供給し、パルス信号ＰＦＡＬＳＥをマスクする。これにより、パルス信号ＰＦＡＬＳＥがＢ／Ｅカウンタ回路９０２に入力されるのを防止し、ＺＱキャリブレーションが正常に開始される。
【００３２】
Ｎｃｈ側においても、Ｎｃｈ側マスク回路９１２及びアンド回路９１３を用いて、Ｎｃｈイネーブル信号がハイレベルに変更された後、Ｎｃｈ側ヒット判定回路９１１から最初に出力されるヒット判定を示すパルス信号ＰＦＡＬＳＥが、Ｂ／Ｅカウンタ回路９０２へ入力されるのを防止している。
【００３３】
ところで、前述のようにＺＱＣＬコマンドに基づくＺＱキャリブレーション期間はＺＱＣＳコマンドに基づくＺＱキャリブレーション期間よりも長くなっている。このため、例えば、ＺＱＣＬコマンドが入力された場合、Ｐｃｈ側の調整を終えた後続けてＮｃｈ側の調整を行うように制御することが考えられる。
【００３４】
図１２を参照して、ＺＱＣＬinitコマンドが入力された場合にＰｃｈ側の調整を終えた後続けてＮｃｈ側の調整を行うように構成されたＺＱ制御回路８０９の動作について説明する。Ｐｃｈ側及びＮｃｈ側それぞれのキャリブレーション動作は上述した動作と同様であるので、ここでは、Ｐｃｈ側のキャリブレーション動作からＮｃｈ側のキャリブレーション動作への切り替えについて主に説明する。
【００３５】
ＺＱＣＬコマンドが入力されると、上記と同様にＰｃｈ側のキャリブレーションが行われる。そして、Ｐｃｈ側ヒット判定回路９０４からヒット判定を示すパルス信号ＰＨＩＴが１ショットで出力されると、このパルス信号は、Ｐｃｈ側アンド回路９０６の出力ＣとしてＢ／Ｅカウンタ９０２に伝播する。このパルス信号を受けて、Ｂ／Ｅカウンタ９０２はカウント値を初期化するとともに、出力Ｚをコマンドラッチ回路９０３へ供給する。コマンドラッチ回路９０３は、Ｂ／Ｅカウンタ９０２からの出力Ｚを受けて、Ｐｃｈイネーブル信号を立ち下げ、Ｎｃｈイネーブル信号を起動する。この後、上記と同様にプルダウン側のキャリブレーションが行われる。
【００３６】
ＺＱＣＬコマンドが実行された場合、キャリブレーション期間中（全更新クロック３２回（＝５１２／１６））、調整ステップに利用な更新クロックは２８回である。
【００３７】
以上のようにして、従来のＺＱ制御回路では、入力コマンドに応じてキャリブレーションが行われている。
【００３８】
上述したＺＱ制御回路では、アップダウンカウンタ回路が常時動作しているが、他の従来技術として、キャリブレーションを行うときのみアップダウンカウンタ回路を動作させ、それ以外ではアップダウンカウンタ回路を停止させるようにしたものもある（例えば、特許文献１参照）。
【００３９】
【特許文献１】特開２００８−４８３６１号公報
【発明の開示】
【発明が解決しようとする課題】
【００４０】
キャリブレーション期間は、外部クロック数によって規定されている。それゆえ、外部クロックが高速化されるとその時間は短くなる。したがって、限られた数の更新クロックを有効に利用する必要がある。
【００４１】
従来のＺＱ制御回路では、キャリブレーション開始時に、毎回初期コードをアップダウンカウンタに取り込む必要があるため、初期コードの読み込みに更新クロックを必要とし、調整ステップに利用可能な更新クロックの数が減少するという問題点がある。
【００４２】
また、従来のＺＱ制御回路では、キャリブレーション開始時にヒット判定回路から出力される信号をマスクするようにしているが、外部クロックが高速化されると複数の更新クロック（例えば２更新クロック）にわたってマスクしなければならなくなるおそれがあり、これによっても、調整ステップに利用可能な更新クロックの数が減少するという問題点がある。
【００４３】
さらに、従来のＺＱ制御回路では、ＺＱＣＬコマンドによるキャリブレーションの際、Ｐｃｈ側においてヒット信号が出力されてからＮｃｈイネーブル信号をハイレベルにするまでの動作を、調整ステップ数を考慮して、１更新クロックで行う必要があるが、更新クロックとＰｃｈ及びＮｃｈイネーブル信号との同期が取られていないため、タイミングスキューが存在し、タイミングマージンに関して厳しいという問題点がある。そして、Ｎｃｈイネーブル信号が次の更新クロックよりも遅くなってしまうと、調整ステップに利用可能な更新クロックの数がさらに１つ少なくなるという問題点がある。
【００４４】
また、上述の特許文献１に記載のキャリブレーション回路は、ヒット判定回路を有していないため、外部から発行されるキャリブレーションコマンド又は該キャリブレーションコマンドに基づくセット信号及びリセット信号によって、アップダウンカウンタ回路の動作クロックを停止する構成となっている。このため、所定の期間以内に出力バッファのインピーダンス調整が完了した場合にも、所定の期間が経過するまでは、アップダウンカウンタを動作させ続ける必要があり、消費電力が増加する恐れがあった。
【００４５】
さらに、特許文献１に記載のキャリブレーション回路では、ＺＱＣＬコマンドに基づくロングキャリブレーション時には、キャリブレーション期間が半分経過したことに基づき活性化されるリセット信号に応じて、Ｐｃｈ側のキャリブレーションからＮｃｈ側のキャリブレーションに移行する構造となっている。このため、たとえ、Ｐｃｈ側のキャリブレーションが前記キャリブレーション期間が半分経過する前に完了した場合でも、前記キャリブレーション期間が半分経過するまではＮｃｈ側のキャリブレーション動作に移行できないという恐れもあった。
【００４６】
本発明は、キャリブレーション期間中に調整ステップに利用可能な更新クロックを増加させることを目的とする。
【００４７】
また、本発明は、キャリブレーション期間が経過する前でも、出力バッファのインピーダンス調整が完了したことに応じて、アップダウンカウンタの動作を停止することを目的とする。
【課題を解決するための手段】
【００４８】
本発明の一形態に係るキャリブレーション回路は、出力回路と、出力ノードを有する前記出力回路のレプリカ回路と、前記レプリカ回路の前記出力ノードの電位と所定の電位とを比較し、該比較の結果をコンパレータ信号として出力する比較回路と、前記コンパレータ信号に基づいてそのカウント値を更新して前記出力回路及び前記レプリカ回路のインピーダンスを調整するインピーダンス調整信号を出力し、キャリブレーション動作の完了に応じて前記カウント値の更新を停止するカウンタ回路と、前記カウンタ回路にカウンタ更新クロック信号を供給するカウンタ更新クロックゲート回路と、前記キャリブレーション動作の完了を判定し、前記カウンタ更新クロックゲート回路にヒット判定信号を出力する判定回路と、を有し、前記キャリブレーション動作が完了したとき、前記判定回路は前記ヒット判定信号を活性化して前記カウンタ更新クロック信号を非活性化し、それに応じて前記カウンタ回路は前記カウント値の更新を停止することを特徴とする。
【００４９】
また、本発明の他の形態に係るキャリブレーション回路は、プルアップ側ドライバとプルダウン側ドライバとを備える出力回路のキャリブレーション回路であって、前記プルアップ側ドライバのレプリカ回路であるプルアップ側レプリカ回路と、前記プルダウン側ドライバのレプリカ回路であるプルダウン側レプリカ回路と、前記プルアップ側レプリカ回路の出力ノードの電位と所定の電位とを比較し、該比較の結果をプルアップ側コンパレータ信号として出力するプルアップ側比較回路と、前記プルダウン側レプリカ回路の出力ノードの電位と所定の電位とを比較し、該比較の結果をプルダウン側コンパレータ信号として出力するプルダウン側比較回路と、前記プルアップ側レプリカ回路のインピーダンスに基づくプルアップ側コンパレータ信号をカウントして、前記プルアップ側ドライバ及び前記プルアップ側レプリカ回路のインピーダンスを調整するプルアップ側インピーダンス調整信号を出力するプルアップ側カウンタ回路と、前記プルダウン側レプリカ回路のインピーダンスに基づくプルダウン側コンパレータ信号をカウントして、前記プルダウン側ドライバ及び前記プルダウン側レプリカ回路のインピーダンスを調整するプルダウン側インピーダンス調整信号を出力するプルダウン側カウンタ回路と、を有し、前記プルアップ側カウンタ回路は、前記プルアップ側ドライバのキャリブレーション動作の完了に応じてカウント動作を停止し、前記プルダウン側カウンタ回路は、前記プルダウン側ドライバのキャリブレーション動作の完了に応じてカウント動作を停止し、前記キャリブレーショ回路はさらに、前記プルアップ側カウンタ回路にプルアップ側カウンタ更新クロック信号を供給するプルアップ側カウンタ更新クロックゲート回路と、前記プルダウン側カウンタ回路にプルダウン側カウンタ更新クロック信号を供給するプルダウン側カウンタ更新クロックゲート回路と、前記プルアップ側ドライバのキャリブレーション動作の完了を判定し該判定の結果を示すプルアップ側ヒット判定信号を前記プルアップ側カウンタ更新クロックゲート回路に出力するプルアップ側判定回路と、前記プルダウン側ドライバのキャリブレーション動作の完了を判定し該判定の結果を示すプルダウン側ヒット判定信号を前記プルダウン側カウンタ更新クロックゲート回路に出力するプルダウン側判定回路と、を有し、前記プルアップ側ドライバのキャリブレーション動作が完了した場合、前記プルアップ側カウンタ更新クロックゲート回路の前記プルアップ側カウンタ更新クロック信号を非活性化することで前記プルアップ側カウンタ回路のカウント動作を停止し、前記プルダウン側ドライバのキャリブレーション動作が完了した場合、前記プルダウン側カウンタ更新クロックゲート回路の前記プルダウン側カウンタ更新クロック信号を非活性化することで前記プルダウン側カウンタ回路のカウント動作を停止する、ことを特徴とする。
【００５０】
さらに、本発明の他の形態に係る装置は、第１の端子と、前記第１の端子に接続され、第１及び第２のインピーダンスをそれぞれ有する第１及び第２のドライバ回路と、第１のクロック信号を受けているとき、前記第１のドライバ回路の前記第１のインピーダンスを調整する第１のカウンタ回路と、第２のクロック信号を受けているとき、前記第２のドライバ回路の前記第２のインピーダンスを調整する第２のカウンタ回路と、前記第１及び第２のクロック信号の一方を前記第１及び第２のカウンタ回路のうちの関連する一方へ供給し、その間、前記第１及び第２のクロック信号の他方を前記第１及び第２のカウンタ回路のうち関連する他方へ供給するのを停止するように動作する制御回路と、を備え、前記制御回路は、第１及び第２のクロックゲート回路と第１及び第２の判定回路とを含み、前記第１及び第２のクロックゲート回路はそれぞれ前記第１及び第２のクロック信号を生成し、前記第１の判定回路は、前記第１のドライバ回路の前記第１のインピーダンスが第１の基準値に達し又は超えたとき、前記第１のクロックゲート回路へ第１のヒット信号を供給し、前記第１のクロックゲート回路は、前記第１のヒット信号に応じて、前記第１のカウンタ回路への前記第１のクロック信号の供給を停止し、前記第２の判定回路は、前記第２のドライバ回路の前記第２のインピーダンスが第２の基準値に達し又は超えたとき、前記第２のクロックゲート回路へ第２のヒット信号を供給し、前記第２のクロックゲート回路は、前記第２のヒット信号に応じて、前記第２のカウンタ回路への前記第２のクロック信号の供給を停止する、ことを特徴とする。
【発明の効果】
【００５１】
本発明によれば、第１のゲート手段を用いてヒット判定回路に供給される動作クロックを、コマンドに応じた期間であって、その期間の最初のクロックパルスに相当する期間を除いた期間内に制限するとともに、ヒット判定回路に供給される動作クロックを分岐遅延させたクロックを、第２のゲート手段を用いてアップダウン回路へその動作クロックとして供給し、ヒット判定回路からヒット信号が出力されると直ちにアップダウンカウンタへの動作クロックの供給を停止するようにしたことで、キャリブレーション期間中に実行できる調整ステップの数を増やすことができる。また、キャリブレーション期間が経過する前でも、出力バッファのインピーダンス調整が完了したことに応じて、アップダウンカウンタの動作を停止させることができる。また、従来必要とされたマスク回路や初期コード記憶部が不要となり、回路構成が簡略化される。さらに、初期コードの読み込みが不要となるので、動作の高速化を実現することができる。
【発明を実施するための最良の形態】
【００５２】
以下、図面を参照して本発明の実施の形態について説明する。
【００５３】
図１に本発明の第１の実施の形態に係るＺＱ制御回路の構成図を示す。このＺＱ制御回路は、分周回路１０１、Ｂ／Ｅカウンタ１０２、コマンドラッチ回路１０３、同期回路１０４、Ｐｃｈ（プルアップ）側ヒット判定回路１０５、Ｐｃｈ側アップダウンカウンタ回路１０６、Ｎｃｈ（プルダウン）側ヒット判定回路１０７、Ｎｃｈ側アップダウンカウンタ回路１０８、プルアップ側第１の更新クロックゲート回路であるプルアップ側第１クロックゲート回路（以下、第１クロックゲート回路と称する）１０９、プルアップ側カウンタ更新クロックゲート回路であるプルアップ側第２クロックゲート回路（以下、第２クロックゲート回路と称する）１１０、プルダウン側第１の更新クロックゲート回路であるプルダウン側第１クロックゲート回路（以下、第３クロックゲート回路と称する）１１１、プルダウン側カウンタ更新クロックゲート回路であるプルダウン側第２クロックゲート回路（以下、第４クロックゲート回路と称する）１１２、及び第１、第２の出力ラッチ回路１１３，１１４を備えている。
【００５４】
分周回路１０１は、外部クロックＣＫを所定の分周数（たとえば１６）で分周した分周クロックを基本クロックとしてＢ／Ｅカウンタ１０２及び同期回路１０４へ供給する。また、分周回路１０１からの分周クロックは、図示しないキャリブレーション回路（図８参照）の基本クロックとしても用いられる。
【００５５】
コマンドラッチ回路１０３は、入力されるコマンドｃｍｄに応じてＢ／Ｅカウンタ１０２へコマンドの種別を通知し、また、Ｐｃｈイネーブル信号又はＮｃｈイネーブル信号を出力する。
【００５６】
Ｂ／Ｅカウンタ１０２は、コマンドラッチ回路１０３から通知されるコマンド種別に応じた数（例えば、５１２／１６＝３２，２５６／１６＝１６又は６４／１６＝４）の分周クロックのカウントを開始する。Ｂ／Ｅカウンタ回路１０２は、また、ヒット判定回路１０５又は１０７からヒット信号が入力されるとカウント値を初期化し、カウントを停止する。
【００５７】
同期回路１０４は、分周回路１０１からの分周クロックを基準更新クロックＣＬＫとして第１及び第３のクロックゲート回路１０９，１１１へ出力する。
【００５８】
第１のクロックゲート回路１０９は、基準更新クロック及びＰｃｈイネーブル信号とに基づいてプルアップ側第１の更新クロック信号であるプルアップ側第１更新クロック（以下、第１の更新クロック）ＣＬＫ１を生成する。第１の更新クロックＣＬＫ１は、コマンドに応じて定まる期間（キャリブレーション期間）であって、その最初の期間のクロックパルスを除いた期間に、第１のクロックゲートに入力される基準更新クロックに相当する。
【００５９】
Ｐｃｈ側ヒット判定回路１０５は、図示しないＰｃｈ側コンパレータ（図８の８０８）からの出力信号である第１のコンパレータ信号（プルアップ側コンパレータ信号）と第１の更新クロックＣＬＫ１とに応じて第１のヒット信号を出力する。
【００６０】
第２のクロックゲート回路１１０は、第１の更新クロックＣＬＫ１、ヒット信号、及びＰｃｈイネーブル信号に応じて、プルアップ側カウンタ更新クロック信号であるプルアップ側第２更新クロック（以下、第２の更新クロック）ＣＬＫ２を生成する。第２の更新クロックＣＬＫ２は、第１の更新クロックＣＬＫ１を遅延させたものであるが、ヒット信号が第２のクロックゲート回路１１０に入力された後は、出力されない。
【００６１】
Ｐｃｈ側アップダウンカウンタ回路１０６は、Ｐｃｈ側ヒット判定回路１０５を介して入力される第１のコンパレータ信号を第２の更新クロックＣＬＫ２によりカウントし、インピーダンス調整信号であるＰｃｈレプリカコード及びＰｃｈＤＱコードを生成する。
【００６２】
第１の出力ラッチ回路１１３は、Ｐｃｈ側アップダウンカウンタ回路１０６からのＰｃｈＤＱコードをＰｃｈイネーブル信号の立ち下がりでラッチし、外部出力する。
【００６３】
プルダウン側の各回路の動作はプルアップ側の各回路の動作を同様である。
【００６４】
詳述すると、第３のクロックゲート回路１１１は、基準更新クロックＣＬＫとＮｃｈイネーブル信号とに基づいて、プルダウン側第１の更新クロック信号であるプルダウン側第１更新クロック（以下、第３の更新クロック）ＣＬＫ３を生成する。
【００６５】
Ｎｃｈ側ヒット判定回路１０７は、図示しないＮｃｈ側コンパレータ（図８の８１４）からの出力信号である第２のコンパレータ信号（プルダウン側コンパレータ信号）と第３の更新クロックＣＬＫ３とに応じて第２のヒット信号を出力する。
【００６６】
第４のクロックゲート回路１１２は、ヒット信号、第３の更新クロックＣＬＫ３及びＮｃｈイネーブル信号に応じて、プルダウン側カウンタ更新クロック信号であるプルダウン側第２更新クロック（以下、第４の更新クロック）ＣＬＫ４を生成する。
【００６７】
Ｎｃｈ側アップダウンカウンタ回路１０８は、Ｎｃｈ側ヒット判定回路１０７を介して入力される第２のコンパレータ信号と第４の更新クロックＣＬＫ４によりカウントし、インピーダンス調整信号であるＮｃｈレプリカコード及びＮｃｈＤＱコードを生成する。
【００６８】
第２の出力ラッチ回路１１４は、Ｎｃｈ側アップダウンカウンタ１０８からのＮｃｈＤＱコードをＮｃｈイネーブル信号の立ち下がりでラッチし、外部出力する。
【００６９】
第１〜第４のクロックゲート回路１０９〜１１２は、例えば、図２に示されるように構成される。
【００７０】
詳述すると、第１のクロックゲート回路１０９は、第１のラッチ回路２０１と、Ｐｃｈイネーブル信号を論理反転させて第１のラッチ回路２０１の入力端子へ供給するインバータ２０２と、基準更新クロックＣＬＫの反転信号と第１のラッチ回路２０１の出力とのノア（ＮＯＲ）を求め、第１の更新クロックＣＬＫ１として出力する第１のノア回路２０３を有している。
【００７１】
また、第２のクロックゲート回路１１０は、第２のラッチ回路２０４と、Ｐｃｈ側ヒット判定回路１０５の出力とＰｃｈイネーブル信号の反転信号とのノアを求め第２のラッチ回路２０５の入力端子へ供給する第２のノア回路２０５と、第１の更新クロックＣＬＫ１の反転信号と第２のラッチ回路２０４の出力とのノアを求め、第２の更新クロックＣＬＫ２として出力する第３のノア回路２０６とを有している。
【００７２】
また、第３のクロックゲート回路１１１は、第３のラッチ回路２０７と、Ｎｃｈイネーブル信号を論理反転させて第３のラッチ回路２０７の入力端子へ供給するインバータ２０８と、基準更新クロックＣＬＫの反転信号と第３のラッチ回路２０７の出力とのノアを求め、第３の更新クロックとして出力する第４のノア回路２０９を有している。
【００７３】
さらに、第４のクロックゲート回路１１２は、第４のラッチ回路２１０と、Ｎｃｈ側ヒット判定回路１０７の出力とＮｃｈイネーブル信号の反転信号とのノアを求め第４のラッチ回路２１０の入力端子へ供給する第５のノア回路２１１と、第３の更新クロックＣＬＫ３の反転信号と第４のラッチ回路２１０の出力とのノアを求め、第４の更新クロックＣＬＫ２として出力する第６のノア回路２１２とを有している。
【００７４】
次に、図２のＺＱ制御回路の動作を図３をも参照して説明する。
【００７５】
図３は、コマンドラッチ回路１０３にＺＱＣＳコマンド入力された場合の各部の動作波形図である。分周回路１０１における分周数は１６、初期状態で第１の出力ラッチ回路にラッチされているＰｃｈＤＱコードは＃５であるとする。
【００７６】
コマンドラッチ回路１０３は、ＺＱＣＳコマンドが入力されると、ＺＱＣＳコマンドの入力があったことをＢ／Ｅカウンタ回路１０２に通知し、Ｐｃｈイネーブル信号を起動する。
【００７７】
Ｂ／Ｅカウンタ回路１０２は、コマンドに基づき定まる数までの分周クロックのカウントを開始する。
【００７８】
同期回路１０４は、分周クロックを受けて基準更新クロックＣＬＫ及びＰｃｈイネーブル信号を出力する。このＰｃｈイネーブル信号は、インバータ２０２により反転され、０番目の基準更新クロックＣＬＫよりも若干遅れて第１のラッチ回路２０１に供給される。
【００７９】
第１のラッチ回路２０１は、基準更新クロックＣＬＫの立ち下がりで反転Ｐｃｈイネーブル信号をラッチし、次の更新クロックＣＬＫの立ち下がりまで保持する。Ｐｃｈ側ヒット判定回路１０５からヒット信号が出力されなければ、第１のラッチ回路２０１の出力Ｅは、図３に示すように、０番目の基準更新クロックＣＬＫの立ち下がりから３番目の更新クロックＣＬＫの立ち下がりまでの間ローレベルとなる。
【００８０】
第１のラッチ回路２０１の出力Ｅがローレベルの間、第１のノア回路２０３は、基準更新クロックＣＬＫを通過させる。これにより、１〜３番目の基準更新クロックＣＬＫに対応する第１の更新クロックＣＬＫ１が得られる。
【００８１】
ヒット判定回路１０５には、０番目の第１の更新クロックＣＬＫ１は入力されない。それゆえ、ヒット判定回路１０５からの、キャリブレーション開始時のコンパレータ信号に基づく誤ったヒット信号の出力が防止される。これにより、従来必要であったマスク回路が不要となる。
【００８２】
Ｐｃｈイネーブル信号がハイレベルの間に、Ｐｃｈ側ヒット判定回路１０５からヒット信号が出力されなければ、ノア回路２０５からは遅延したＰｃｈイネーブル信号の反転信号が出力される。このＰｃｈイネーブル信号の反転信号は、第２のラッチ回路２０４によりラッチされ、出力Ｇとしてノア回路２０６に供給される。その結果、ノア回路２０６からは、更新クロックＣＬＫ１を（必要により遅延回路２１３を用いて）遅延させた信号Ｆが、更新クロックＣＬＫ２として出力され、Ｐｃｈ側アップダウンカウンタ回路１０６へ供給される。
【００８３】
こうして、Ｐｃｈアップダウンカウンタ回路１０６には、１〜３番目の基準更新クロックＣＬＫに対応する第２の更新クロックＣＬＫ２が供給される。Ｐｃｈ側アップダウンカウンタ回路１０６は、Ｐｃｈ側ヒット判定回路１０５の出力Ｂに応じ、第２の更新クロックＣＬＫ２に同期してカウント値をアップ又はダウンし、カウント値をＰｃｈレプリカコードとして出力する。このように、本実施の形態では、１キャリブレーション期間中に、従来よりも１回多い３回の調整ステップを実行することができる。また、キャリブレーション期間以外では、第２の更新クロックＣＬＫ２が活性化されない（ハイレベルとならない）ので、Ｐｃｈアップダウンカウンタ回路１０６のカウント値が次のキャリブレーション動作の開始まで保持される。よって、次のキャリブレーション開始時に初期コードを読み込む必要がない。
【００８４】
Ｐｃｈイネーブル信号がローレベルに変化すると、第１の出力ラッチ回路１１３はＰｃｈ側アップダウンカウンタ回路１０６のカウント値をラッチし、ＰｃｈＤＱコードとして出力する。
【００８５】
次に、図４を参照してヒット判定回路１０５よりヒット信号が出力された場合の図２のＺＱ制御回路の動作について説明する。ヒット信号が出力されるまでのＺＱ制御回路の動作は、上述したとおりである。
【００８６】
３番目の基準更新クロックＣＬＫに対応する第１の更新クロックＣＬＫ１の立ち上がりで、Ｐｃｈ側ヒット判定回路１０５が第１のコンパレータ信号に基づいてヒットした（キャリブレーション値が目標値に達した）と判定したとする。
【００８７】
Ｐｃｈ側ヒット判定回路１０５は、ヒットしたと判定すると１ショットパルスのヒット信号Ａを出力する。このヒット信号Ａに応じてノア回路２０５の出力はローレベルに変化し、第２のラッチ回路２０４の出力Ｇは、ハイレベルに変化する。
【００８８】
ノア回路２０６は、第２のラッチ回路２０４の出力Ｇがハイレベルになると、第１の更新クロックＣＬＫ１を遅延させた信号Ｆの通過を直ちに阻止する。これにより、Ｐｃｈ側アップダウンカウンタ回路１０６への第２の更新クロックＣＬＫ２の供給が停止され、Ｐｃｈ側アップダウンカウンタ回路１０６は、ヒットと判定されたときのカウント値を保持する。したがって、この場合においても、次にキャリブレーションが開始された場合に初期コードの読み込みを行う必要がない。
【００８９】
この後、Ｐｃｈイネーブル信号がローレベルに変化すると、第１の出力ラッチ回路１１３はＰｃｈ側アップダウンカウンタ回路１０６のカウント値をラッチし、ＰｃｈＤＱコードとして出力する。
【００９０】
以上説明したように、アップダウンカウンタは、ヒットしたか否かに関わらず、キャリブレーション期間の終了時のカウント値を保持しているので、次のキャリブレーション動作開始時に初期コードを読み込む必要がなく、回路構成の簡易化と動作の高速化とが実現できる。
【００９１】
Ｎｃｈ側においても、上述したＰｃｈ側と同様にキャリブレーションが行われる。
【００９２】
次に、図５を参照して、ＺＱＣＬｉｎｉｔコマンドに基づくキャリブレーション動作におけるＰｃｈ側からＮｃｈ側への調整切り替え動作について説明する。
【００９３】
図５は、図２の回路における各部の信号波形図である。ここでは、Ｎｃｈレプリカコードの初期値を＃０５としている。
【００９４】
ＺＱＣＬコマンドがコマンドラッチ回路１０３に入力されると、上述したように、Ｐｃｈ側のキャリブレーション動作が実行される。Ｐｃｈ側ヒット判定回路１０５から１ショットパルスであるヒット信号Ａが出力されると、Ｂ／Ｅカウンタ回路１０２は、カウント値を初期化するとともに、ヒット信号Ａの入力を知らせるため、コマンドラッチ部１０３へ通知信号Ｚを出力する。
【００９５】
コマンドラッチ回路１０３は、Ｐｃｈイネーブル信号を立ち下げ、Ｎｃｈイネーブル信号を起動する。同期回路１０３は、Ｐｃｈイネーブル信号の立ち下げとＮｃｈイネーブル信号の立ち上げを分周クロックに同期させて行う。本実施の形態では、Ｐｃｈイネーブル信号の立ち下げとＮｃｈイネーブル信号の立ち上げとの間にタイミングスキューが存在しないので、ＺＱ制御回路は、次の更新クロックＣＬＫから直ちにＮｃｈ側の調整を始めることができる。それゆえ、このＺＱ制御回路は、外部クロックがより高速化されたときにも対応可能である。
【００９６】
その後、Ｎｃｈ側のレプリカコードを初期コード（＃０５）に切り替え、Ｎｃｈ側のキャリブレーションを行う。この場合のＺＱＣＬコマンドの調整ステップは全更新クロック３２回（＝５１２／１６）の中２９回となる。
【００９７】
次に、図６及び図７を参照して、本発明の第２の実施の形態について説明する。
【００９８】
図６のＺＱ制御回路は、Ｐｃｈイネーブル信号に代えてＮｃｈイネーブル信号が第１の出力回路１１３に供給されている点で、図２のものと異なっている。
【００９９】
図７に示すように、ＺＱＣＳコマンドは、１２８ｍｓの間隔をあけて周期的にＺＱ制御回路に入力される。本発明の第２の実施の形態におけるＺＱ制御回路は、ＺＱＣＳコマンドが入力されるたびに、Ｐｃｈ側のキャリブレーションとＮｃｈ側のキャリブレーションとを交互に行うように構成されている。本実施の形態では、Ｐｃｈ側のキャリブレーションが終了しても第１の出力ラッチ回路１１３の更新を行わず、Ｎｃｈ側のキャリブレーションが終了したときに第１及び第２の出力ラッチ回路１１３，１１４の更新を同時に行う。これにより、プルアップドライバ（図８の８０２）とプルダウンドライバ（図８の８０３）とのアンバランスを防止することができ、ＤＱ出力の高精度化が図れる。
【０１００】
従来回路では、アップダウンカウンタ回路が、キャリブレーション終了時のカウント値を保持できなかったので、プルアップ側及びプルダウン側のそれぞれのキャリブレーションを終了した時点でＤＱコードを出力せざるを得なかった。ＺＱＣＳコマンドに基づくキャリブレーションでは、プルアップ側とプルダウン側のキャリブレーションが間隔をあけて交互に行われるため、プルアップ側又はプルダウン側の片方しか更新されないケースが発生し、次のＺＱＣＳコマンドが完了するまで長時間に渡り、プルアップドライバとプルダウンドライバとの間にアンバランスが発生していた。本実施の形態では、プルアップ側及びプルダウン側の両方のＤＱコードのラッチタイミングをＮｃｈイネーブル信号により同時に行うようにしたことで、このようなアンバランス状態を回避することができる。
【図面の簡単な説明】
【０１０１】
【図１】本発明の第１の実施の形態に係るＺＱ制御回路の構成を示す図である。
【図２】図１のＺＱ制御回路におけるクロックゲート回路の構成例を明らかにする図である。
【図３】図２のＺＱ制御回路のＺＱＣＳコマンドによる動作における各部の信号波形の一例を示す図である。
【図４】図２のＺＱ制御回路のＺＱＣＳコマンドによる動作における各部の信号波形の他の例を示す図である。
【図５】図２のＺＱ制御回路のＺＱＣＬコマンドによる動作における各部の信号波形の一例を示す図である。
【図６】本発明の第２の実施の形態に係るＺＱ制御回路の構成を示す図である。
【図７】図６のＺＱ制御回路のＺＱＣＬコマンドによる動作における各部の信号波形の一例を示す図である。
【図８】従来のキャリブレーション回路の一構成例を示す図である。
【図９】図８のキャリブレーション回路に含まれるＺＱ制御回路の構成例を示す図である。
【図１０】図９のＺＱ制御回路のＺＱＣＳコマンドによる動作における各部の信号波形の一例を示す図である。
【図１１】図９のＺＱ制御回路のＺＱＣＳコマンドによる動作における各部の信号波形の他の例を示す図である。
【図１２】図９のＺＱ制御回路のＺＱＣＬコマンドによる動作における各部の信号波形の一例を示す図である。
【符号の説明】
【０１０２】
１０１    分周回路
１０２    Ｂ／Ｅカウンタ
１０３    コマンドラッチ回路
１０４    同期回路
１０５    Ｐｃｈ側ヒット判定回路
１０６    Ｐｃｈ側アップダウンカウンタ回路
１０７    Ｎｃｈ側ヒット判定回路
１０８    プルダウン側アップダウンカウンタ回路
１０９〜１１２    第１〜第４のクロックゲート回路
１１３    第１の出力ラッチ回路
１１４    第１の出力ラッチ回路
２０１    第１のラッチ回路
２０２    インバータ
２０３    第１のノア回路
２０４    第２のラッチ回路
２０５    第２のラッチ回路
２０６    第３のノア回路
２０７    第３のラッチ回路
２０８    インバータ
２０９    第４のノア回路
２１０    第４のラッチ回路
２１１    第５のノア回路
２１２    第６のノア回路
８０１    ＤＱパッド
８０２    プルアップドライバ
８０３    プルダウンドライバ
８０４    ＺＱパッド
８０５    外部抵抗
８０６    Ｐｃｈ側第１ＤＱレプリカ
８０７    Ｐｃｈ側ＶＤＤ／２発生回路
８０８    Ｐｃｈ側コンパレータ
８０９    ＺＱ制御回路
８１０    Ｐｃｈ側レプリカ制御回路
８１１    Ｐｃｈ側第２ＤＱレプリカ
８１２    Ｎｃｈ側ＤＱレプリカ
８１３    Ｎｃｈ側ＶＤＤ／２発生回路
８１４    Ｎｃｈ側コンパレータ
８１５    Ｎｃｈ側レプリカ制御回路
９０１    分周回路
９０２    Ｂ／Ｅカウンタ
９０３    コマンドラッチ回路
９０４    Ｐｃｈ側ヒット判定回路
９０５    Ｐｃｈ側マスク回路
９０６    Ｐｃｈ側アンド回路
９０７    Ｐｃｈ側アップダウンカウンタ回路
９０８    Ｐｃｈ側初期コード記憶部
９０９    第１ラッチ回路
９１０    第２ラッチ回路
９１１    Ｎｃｈ側ヒット判定回路
９１２    Ｎｃｈ側マスク回路
９１３    Ｎｃｈ側アンド回路
９１４    Ｎｃｈ側アップダウンカウンタ回路
９１５    Ｎｃｈ側初期コード記憶部
９１６    第３ラッチ回路
【図１】
0005675035.tif 000002
【図２】
0005675035.tif 000003
【図３】
0005675035.tif 000004
【図４】
0005675035.tif 000005
【図５】
0005675035.tif 000006
【図６】
0005675035.tif 000007
【図７】
0005675035.tif 000008
【図８】
0005675035.tif 000009
【図９】
0005675035.tif 000010
【図１０】
0005675035.tif 000011
【図１１】
0005675035.tif 000012
【図１２】
0005675035.tif 000013