(57)【要約】【課題】回路の面積を増大させることなく、高い分解能及び広い抵抗値の範囲を有するターミネーション抵抗回路を提供すること。【解決手段】本発明に係るターミネーション抵抗回路は、キャリブレーションコードが所定値を有すると、論理値が、前記キャリブレーションコードが前記所定値と異なる値を有する場合の論理値から変化する制御信号を生成する制御信号生成部と、前記キャリブレーションコードに応答してそれぞれオン／オフされる、相互に並列接続された複数の並列抵抗と、前記制御信号に応答してターミネーション抵抗回路全体の抵抗値を変更する抵抗値変更手段とを備える。【選択図】図６
2010021994.tif 000002
【特許請求の範囲】
【請求項１】
キャリブレーションコードが所定値を有すると、論理値が、前記キャリブレーションコードが前記所定値と異なる値を有する場合の論理値から変化する制御信号を生成する制御信号生成部と、
前記キャリブレーションコードに応答してそれぞれオン／オフされる、相互に並列接続された複数の並列抵抗と、
前記制御信号に応答してターミネーション抵抗回路全体の抵抗値を変更する抵抗値変更手段と
を備えることを特徴とするターミネーション抵抗回路。
【請求項２】
前記制御信号生成部が、
ターミネーション抵抗回路の動作後、前記制御信号の論理値が変化すると、リセットされるまで前記制御信号の論理値のレベルを維持することを特徴とする請求項１に記載のターミネーション抵抗回路。
【請求項３】
前記制御信号生成部が、
前記キャリブレーションコードが前記複数の並列抵抗全体の抵抗値を所定値以下とするコード値であれば、前記抵抗値変更手段がターミネーション抵抗回路全体の抵抗値を減少させる前記制御信号を生成することを特徴とする請求項１に記載のターミネーション抵抗回路。
【請求項４】
前記制御信号生成部が、
前記キャリブレーションコードが前記複数の並列抵抗全体の抵抗値を所定値以上とするコード値であれば、前記抵抗値変更手段がターミネーション抵抗回路全体の抵抗値を増加させる前記制御信号を生成することを特徴とする請求項１に記載のターミネーション抵抗回路。
【請求項５】
それぞれのキャリブレーションコードに応答してそれぞれがオン／オフされる、相互に並列接続された複数の並列抵抗を備え、
前記キャリブレーションコードが所定のコード値を有すると、前記複数の並列抵抗のうち少なくとも１つの並列抵抗の抵抗値が、前記キャリブレーションコードが前記所定値と異なる値を有する場合の抵抗値から変化することを特徴とするターミネーション抵抗回路。
【請求項６】
抵抗値が変化する前記並列抵抗が、
前記複数の並列抵抗のうち、抵抗値が最も大きい並列抵抗であることを特徴とする請求項５に記載のターミネーション抵抗回路。
【請求項７】
抵抗値が変化する前記並列抵抗の抵抗値が一度変更されると、リセットされるまで変更された抵抗値が維持されることを特徴とする請求項５に記載のターミネーション抵抗回路。
【請求項８】
前記キャリブレーションコードが前記並列抵抗全体の抵抗値を所定値以下とするコード値であれば、抵抗値が変化する前記並列抵抗の抵抗値が減少することを特徴とする請求項５に記載のターミネーション抵抗回路。
【請求項９】
前記キャリブレーションコードが前記並列抵抗全体の抵抗値を所定値以上とするコード値であれば、抵抗値が変化する前記並列抵抗の抵抗値が増加することを特徴とする請求項５に記載のターミネーション抵抗回路。
【請求項１０】
前記ターミネーション抵抗回路が、
前記キャリブレーションコードが前記所定のコード値を有すると、論理値が、前記キャリブレーションコードが前記所定値と異なる値を有する場合の論理値から変化する制御信号を生成する制御信号生成部をさらに備え、
抵抗値が変化する前記並列抵抗が、
基本抵抗と、
該基本抵抗に並列または直列に接続され、前記制御信号に応答してオン／オフされる調整抵抗とを備えることを特徴とする請求項５に記載のターミネーション抵抗回路。
【請求項１１】
前記制御信号生成部が、
前記キャリブレーションコードの論理状態を結合して前記制御信号を生成する論理結合部と、
リセットされるまで前記制御信号のレベルを維持するラッチ部とを備えることを特徴とする請求項１０に記載のターミネーション抵抗回路。
【請求項１２】
それぞれのキャリブレーションコードに応答してそれぞれがオン／オフされる、相互に並列接続された複数の並列抵抗と、
前記キャリブレーションコードが所定のコード値を有すると、オン／オフ状態が、前記キャリブレーションコードが前記所定値と異なる値を有する場合のオン／オフ状態から変化する基準抵抗と
を備えることを特徴とするターミネーション抵抗回路。
【請求項１３】
前記基準抵抗が、
ターミネーション抵抗回路の動作前はオフされていることを特徴とする請求項１２に記載のターミネーション抵抗回路。
【請求項１４】
前記基準抵抗が、
前記キャリブレーションコードが前記複数の並列抵抗全体の抵抗値を所定値以下とするコード値を有すると、ターンオンされることを特徴とする請求項１２に記載のターミネーション抵抗回路。
【請求項１５】
前記基準抵抗が、
前記キャリブレーションコードが前記複数の並列抵抗全体の抵抗値を所定値以上とするコード値を有すると、ターンオフされることを特徴とする請求項１２に記載のターミネーション抵抗回路。
【請求項１６】
前記キャリブレーションコードが前記所定のコード値を有し、前記基準抵抗のオン／オフ状態が一度変更されると、リセットされるまでオン／オフ状態が維持されることを特徴とする請求項１２に記載のターミネーション抵抗回路。
【請求項１７】
前記ターミネーション抵抗回路が、
前記キャリブレーションコードが前記所定のコード値を有すると、論理値が、前記キャリブレーションコードが前記所定値と異なる値を有する場合の論理値から変化する制御信号を生成する制御信号生成部をさらに備え、
前記基準抵抗が、前記制御信号に応答してオン／オフされることを特徴とする請求項１２に記載のターミネーション抵抗回路。
【請求項１８】
前記制御信号生成部が、
前記キャリブレーションコードの論理状態を結合して前記制御信号を生成する論理結合部と、
リセットされるまで前記制御信号のレベルを維持するラッチ部とを備えることを特徴とする請求項１７に記載のターミネーション抵抗回路。
【請求項１９】
それぞれのキャリブレーションコードに応答してそれぞれがオン／オフされる、相互に並列接続された複数の並列抵抗と、
ターミネーション抵抗回路の抵抗値の範囲を維持する基準抵抗とを備え、
前記基準抵抗の抵抗値が、前記キャリブレーションコードが所定のコード値を有すると、前記キャリブレーションコードが前記所定値と異なる値を有する場合の抵抗値から変化することを特徴とするターミネーション抵抗回路。
【請求項２０】
前記基準抵抗が、
ターミネーション抵抗回路の動作前はオフされており、動作を始めるとターンオンされることを特徴とする請求項１９に記載のターミネーション抵抗回路。
【請求項２１】
前記キャリブレーションコードが前記複数の並列抵抗全体の抵抗値を所定値以下とするコード値を有すると、前記基準抵抗の抵抗値が減少することを特徴とする請求項１９に記載のターミネーション抵抗回路。
【請求項２２】
前記キャリブレーションコードが前記複数の並列抵抗全体の抵抗値を所定値以上とするコード値を有すると、前記基準抵抗の抵抗値が増加することを特徴とする請求項１９に記載のターミネーション抵抗回路。
【請求項２３】
前記基準抵抗の抵抗値が一度変更されると、リセットされるまで変更された前記抵抗値が維持されることを特徴とする請求項１９に記載のターミネーション抵抗回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、キャリブレーション回路、出力ドライバなどで用いられるターミネーション抵抗回路に関し、ターミネーション抵抗回路の抵抗値の範囲を拡大しながらも、分解能を高める技術に関する。
【背景技術】
【０００２】
ＣＰＵ、メモリ及びゲートアレイなどのように、集積回路チップとして具現される多様な半導体装置は、パソコン、サーバまたはワークステーションのような多様な電子機器内に組み込まれる。ほとんどの場合、半導体装置は、外部からの各種信号を入力パッドを介して受信する受信回路と、内部信号を出力パッドを介して外部に提供する出力回路とを備えている。
【０００３】
一方、電子機器の動作速度が高速化するにつれ、半導体装置間でインタフェースされる信号のスイング幅は次第に減少している。その理由は、信号の伝送にかかる遅延時間を最小化するためである。しかし、信号のスイング幅が減少するほど、外部ノイズの影響は大きくなり、インタフェース端（接合部）において、インピーダンス不整合による信号の反射も深刻になる。このようなインピーダンス不整合は、外部ノイズや、電源電圧の変動、動作温度の変化、製造工程の変化などに起因して発生する。インピーダンス不整合が発生すると、データの高速伝送が困難になり、半導体装置のデータ出力端から出力される出力データの歪みが生じ得る。したがって、受信側の半導体装置が、このような歪んだ出力信号を入力端で受信した場合、セットアップ／ホールドに失敗したり、または入力レベルの判断ミスなどの問題が頻繁に起こり得る。
【０００４】
特に、動作速度の高速化が要求されるメモリ装置は、上述した問題を解決するために、オンダイターミネーションと呼ばれるインピーダンス整合回路を、集積回路チップ内のパッドの近傍に採用している。通常、オンダイターミネーションスキームにおいて、伝送側では、出力回路によるソースターミネーションが行われ、受信側では、入力パッドに接続された受信回路に対して並列に接続されたターミネーション回路によって、並列ターミネーションが行われる。
【０００５】
ＺＱキャリブレーションとは、ＰＶＴ（Ｐｒｏｃｅｓｓ、Ｖｏｌｔａｇｅ、Ｔｅｍｐｅｒａｔｕｒｅ）条件によって変化するキャリブレーションコードを生成する過程を指し、ＺＱキャリブレーションの結果として生成されたキャリブレーションコードを用いて、ターミネーション抵抗値を調整する。
【０００６】
以下、キャリブレーションコードを生成するキャリブレーション回路、生成されたキャリブレーションコードを用いて入出力ノードをターミネートするターミネーション回路について説明する。
【０００７】
図１は、従来のキャリブレーション回路の構成図である。
【０００８】
同図に示すように、従来のキャリブレーション回路は、第１プルアップターミネーション抵抗回路１１０と、第２プルアップターミネーション抵抗回路１２０と、プルダウンターミネーション抵抗回路１３０と、基準電圧発生器１０２と、比較器１０３，１０４と、カウンタ１０５，１０６とを備えて構成される。
【０００９】
その動作をみると、比較器１０３は、ＺＱピン（ＺＱノードのチップの外部）に接続された基準抵抗１０１（一般的に、２４０Ω）及び第１プルアップターミネーション抵抗回路１１０の分圧により生成されるＺＱノードの電圧と、内部の基準電圧発生器１０２で生成される基準電圧ＶＲＥＦ（一般的に、１／２ＶＤＤＱに設定される）とを比較して、アップ／ダウン信号ＵＰ／ＤＯＷＮを生成する。
【００１０】
カウンタ１０５は、アップ／ダウン信号ＵＰ／ＤＯＷＮを受信してプルアップキャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞を生成する。生成されたプルアップキャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞は、第１プルアップターミネーション抵抗回路１１０内の相互に並列接続された並列抵抗をオン／オフして、第１プルアップターミネーション抵抗回路１１０全体の抵抗値を調整する。本明細書において、並列抵抗をオンするとは、並列抵抗に電流を流すことを意味し、オフするとは、並列抵抗に電流を流さないことを意味する。調整された第１プルアップターミネーション抵抗回路１１０の抵抗値は、再びＺＱノードの電圧に影響を与え、上記のような動作が繰り返される。その結果、第１プルアップターミネーション抵抗回路１１０全体の抵抗値が基準抵抗１０１の抵抗値と等しくなるまで、プルアップキャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞がカウントされる（プルアップキャリブレーション）。
【００１１】
上述したプルアップキャリブレーション動作により生成されるプルアップキャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞は、第２プルアップターミネーション抵抗回路１２０に入力されて、第２プルアップターミネーション抵抗回路１２０全体の抵抗値を決定する。すると、プルダウンキャリブレーション動作が始まり、プルアップキャリブレーションの場合と同様に、比較器１０４及びカウンタ１０６を用いて、Ａノードの電圧が基準電圧ＶＲＥＦと等しくなるように、すなわち、プルダウンターミネーション抵抗回路１３０全体の抵抗値が第２プルアップターミネーション抵抗回路１２０全体の抵抗値と等しくなるようにキャリブレーションされる（プルダウンキャリブレーション）。
【００１２】
上述したＺＱキャリブレーション動作の結果として生成されたキャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞，ＮＣＯＤＥ＜０：Ｎ＞は、ターミネーション回路（図２）に入力されて、ターミネーション抵抗値を調整する。
【００１３】
図２は、従来のターミネーション回路の構成図である。
【００１４】
ターミネーション回路とは、図１のようなキャリブレーション回路で生成されたキャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞，ＮＣＯＤＥ＜０：Ｎ＞を受信して、実際の入出力パッドをターミネートする回路を指す。図２には、ターミネーション回路の一例として、メモリ装置の出力ドライバを示す。
【００１５】
出力ドライバは、半導体メモリ装置においてデータを出力する部分であって、図２に示すように、上段及び下段に備えられているプリドライバ２１０，２２０と、データを出力するプルアップターミネーション抵抗回路２３０と、プルダウンターミネーション抵抗回路２４０とを備えて構成される。出力ドライバのプルアップターミネーション抵抗回路２３０及びプルダウンターミネーション抵抗回路２４０は、キャリブレーション回路の第１プルアップターミネーション抵抗回路１１０及びプルダウンターミネーション抵抗回路１３０と同様に構成される。
【００１６】
その動作を簡単に説明すると、上段及び下段に備えられているプリドライバ２１０，２２０は、プルアップターミネーション抵抗回路２３０及びプルダウンターミネーション抵抗回路２４０をそれぞれ制御し、共にローレベルのデータを出力するときは、プルアップターミネーション抵抗回路２３０がターンオンして（具体的には、ＰＭＯＳトランジスタをオンし、ＮＭＯＳトランジスタをオフして）データピンＤＱをハイ状態にし、共にハイレベルのデータを出力するときは、プルダウンターミネーション抵抗回路２４０がターンオンして（具体的には、ＮＭＯＳトランジスタをオンし、ＰＭＯＳトランジスタをオフして）データピンＤＱをロー状態にする。すなわち、データピンＤＱをプルアップまたはプルダウンターミネートさせて、ハイレベルまたはローレベルのデータを出力する。
【００１７】
このとき、ターンオンされるプルアップターミネーション抵抗回路２３０及びプルダウンターミネーション抵抗回路２４０内の並列抵抗のうち、どの並列抵抗をターンオンするのかは、プルアップキャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞及びプルダウンキャリブレーションコードＮＣＯＤＥ＜０：Ｎ＞によって決定される。すなわち、プルアップターミネーション抵抗回路２３０をターンオンするのか、あるいはプルダウンターミネーション抵抗回路２４０をターンオンするのかは、出力するデータの論理状態によって決定され、ターンオンされるプルアップターミネーション抵抗回路２３０及びプルダウンターミネーション抵抗回路２４０内の各抵抗のオン／オフは、キャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞，ＮＣＯＤＥ＜０：Ｎ＞によって決定される。
【００１８】
参考として、プルアップターミネーション抵抗回路２３０及びプルダウンターミネーション抵抗回路２４０の目標抵抗値は、必ずしもターミネーション抵抗回路（図１の１１０，１２０，１３０）の抵抗値（２４０Ω）と等しいものではなく、２４０Ωの１／２である１２０Ω、あるいは１／４である６０Ωであってもよい。
【００１９】
例えば、２４０Ωの抵抗回路（プルアップターミネーション抵抗回路２３０またはプルダウンターミネーション抵抗回路２４０）２つを並列に接続すると、１２０Ωの抵抗値を有し、４つを並列に接続すると、６０Ωの抵抗値を有することになる。
【００２０】
図２のプリドライバ２１０，２２０に入力されるＤＱｐ＿ＣＴＲＬ，ＤＱｎ＿ＣＴＲＬは、プリドライバ２１０，２２０に入力される複数の制御信号を一括化したもの（ひとまとめとして表したもの）である。
【００２１】
キャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞，ＮＣＯＤＥ＜０：Ｎ＞は、入力バッファ側のオンダイターミネーション抵抗回路にも入力されるが、入力バッファ側では、メモリ装置の種類や規格に応じて、入出力パッドＤＱをプルアップのみまたはプルダウンのみによってターミネートする場合がある。この場合、プルアップキャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞またはプルダウンキャリブレーションコードＮＣＯＤＥ＜０：Ｎ＞のみが用いられる。入力バッファ側に備えられるオンダイターミネーション抵抗回路も、先に示したターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０と同様に構成される。
【００２２】
メモリ装置によっては、出力ドライバが入力バッファのオンダイターミネーション抵抗回路としての役割を果たすこともある。これは、出力ドライバも入出力パッドＤＱをターミネートする役割を担うからである（ただし、規定によっては、抵抗値が異なり得る）。
【００２３】
図３は、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０をより詳細に示す図である。
【００２４】
同図の上段には、プルアップキャリブレーションコードＰＣＯＤＥ＜０：６＞を受信して抵抗値が決定されるプルアップターミネーション抵抗回路１１０，１２０，２３０を示し、同図の下段には、プルダウンキャリブレーションコードＮＣＯＤＥ＜０：６＞を受信して抵抗値が決定されるプルダウンターミネーション抵抗回路１３０，２４０を示す。
【００２５】
出力ドライバ（図２）に用いられるターミネーション抵抗回路２３０，２４０は、キャリブレーションコードＰＣＯＤＥ＜０：６＞，ＮＣＯＤＥ＜０：６＞を直接受信せず、プリドライバ２１０，２２０によって制御される。しかし、プリドライバ２１０，２２０が当該ターミネーション抵抗回路２３０，２４０をターンオンする場合には、自らが受信したキャリブレーションコードＰＣＯＤＥ＜０：６＞，ＮＣＯＤＥ＜０：６＞をそのままターミネーション抵抗回路２３０，２４０に伝達するので、図３には、ターミネーション抵抗回路２３０，２４０も、キャリブレーションコードＰＣＯＤＥ＜０：６＞，ＮＣＯＤＥ＜０：６＞が入力されるものとして示している。
【００２６】
ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０内の並列抵抗は、それぞれ２進重み（ｂｉｎａｒｙ  ｗｅｉｇｈｔ）を有する。すなわち、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０内の並列抵抗の抵抗値は互いに異なる。そうでなければ、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０が多様な抵抗値を有することができないからである。もちろん、ターミネーション抵抗回路内の並列抵抗は、いずれも同じ抵抗値を有するように設計され得るが、この場合、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０は、抵抗値が異なる場合よりも多様でない抵抗値を有することになる。
【００２７】
図４は、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０が、抵抗回路の動作時に常にターンオンされる抵抗を備える場合の、これらターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０を示す図である。
【００２８】
同図に示すように、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０は、動作時に常にターンオンされる抵抗を備えるように設計され得る。
【００２９】
図３を参照すると、キャリブレーションコードのうち、ＭＳＢ（Ｍｏｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ）コードであるＰＣＯＤＥ＜６＞，ＮＣＯＤＥ＜６＞が入力される抵抗は、ほぼ常にターンオンされる。仮に、ＰＣＯＤＥ＜６＞，ＮＣＯＤＥ＜６＞が入力される抵抗までターンオフされると、抵抗値の変化が非常に大きくなるからである。
【００３０】
したがって、動作中に常にターンオンされる抵抗であれば、キャリブレーションコードＰＣＯＤＥ＜６＞，ＮＣＯＤＥ＜６＞ではなく、他の信号（ＯＮ／ＯＦＦ＿Ｕ，ＯＮ／ＯＦＦ＿Ｄ）によって制御される抵抗を設けることが有利である。これは、メモリ装置が、ＺＱパッド付近にあるキャリブレーション回路から複数のＤＱパッド（最近のメモリには、３２個のＤＱパッドがある）に接続されている出力ドライバへキャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞，ＮＣＯＤＥ＜０：Ｎ＞を伝送するのに、多くの伝送ラインを必要とするので、キャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞，ＮＣＯＤＥ＜０：Ｎ＞のビット数を減らせるならば、伝送ラインの本数もそれだけ減らすことができるからである。
【００３１】
ただし、キャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞，ＮＣＯＤＥ＜０：Ｎ＞とは無関係に、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０内の抵抗全体が動作をしない（オフする）場合があるので、動作時に常にターンオンされる抵抗が、ＯＮ／ＯＦＦ＿Ｕ，ＯＮ／ＯＦＦ＿Ｄ信号の制御によりオン／オフされるように、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０を構成する。
【００３２】
例えば、出力ドライバのプルアップターミネーション抵抗回路２３０は、ハイレベルのデータを出力するときは動作するが、ローレベルのデータを出力するときは動作しない。そのため、ＯＮ／ＯＦＦ＿Ｕ信号は、ハイレベルのデータを出力するときにのみ、自ら制御する抵抗をターンオンするようにし、ローレベルのデータを出力するときは、自ら制御する抵抗をターンオフするようにする。
【００３３】
同じように、出力ドライバのプルダウンターミネーション抵抗回路２４０は、ローレベルのデータを出力するときは動作するが、ハイレベルのデータを出力するときは動作しない。そのため、ＯＮ／ＯＦＦ＿Ｄ信号は、ローレベルのデータを出力するときにのみ、自ら制御する抵抗をターンオンするようにし、ハイレベルのデータを出力するときは、自ら制御する抵抗をターンオフするようにする。
【００３４】
図５Ａ及び図５Ｂは、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０がとる抵抗値の範囲を示す図である。
【００３５】
図５Ａは、一般的な条件下においてキャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞，ＮＣＯＤＥ＜０：Ｎ＞を変化させたときの、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０がとり得る抵抗値の範囲を示す。同図に示すように、目標抵抗値は、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０がとり得る抵抗値の範囲内にあることがわかる。
【００３６】
図５Ｂは、最悪の条件下においてキャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞，ＮＣＯＤＥ＜０：Ｎ＞を変化させたときの、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０がとり得る抵抗値の範囲を示す。ここで、最悪の条件とは、ＰＶＴ条件の変化により、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０内の各並列抵抗の抵抗値が大きく変化した場合を意味する。この場合、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０がとり得る抵抗値の範囲は、一般的な条件下の場合とは非常に異なり、同図に示すように、目標抵抗値が、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０がとり得る抵抗値の範囲内に含まれない場合が生じ得る。この場合、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０は、適切な抵抗値をとり得ないので、データの円滑な送受信が行われなくなる。
【００３７】
このような問題は、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０がとり得る抵抗値の範囲を拡大することによって解決可能である。しかし、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０がとり得る抵抗値の範囲は、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０の分解能とトレードオフの関係にある。
【００３８】
仮に、キャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞，ＮＣＯＤＥ＜０：Ｎ＞が１つずつ増加または減少するたびに、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０全体の抵抗値が少しずつ変化するように設計すれば、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０の分解能は上昇するが、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０が調整可能な抵抗値の範囲は縮小してしまう。逆に、キャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞，ＮＣＯＤＥ＜０：Ｎ＞が１つずつ増加または減少するたびに、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０の抵抗値が大きく変化するように設計すれば、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０が調整可能な抵抗値の範囲は拡大するが、抵抗回路の抵抗値を細かく調整することはできなくなる。
【００３９】
一定の分解能を維持しながらも、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０がとり得る抵抗値の範囲を拡大する方法としては、キャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞，ＮＣＯＤＥ＜０：Ｎ＞のビット数を増やし、ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０内の並列抵抗の数を増やす方法が考えられる。しかし、この方法は、キャリブレーション回路（図１）の面積を増大させ、キャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞，ＮＣＯＤＥ＜０：Ｎ＞を伝送する伝送ラインの本数を増やし、出力ドライバ（図２に示すメモリ装置には、３２の出力ドライバがある）などの面積を増大させるので、半導体装置の実装面積という点で大きな損失を被るという問題があった。
【発明の概要】
【発明が解決しようとする課題】
【００４０】
本発明は、上記の従来技術の問題を解決するためになされたものであって、その目的は、回路の面積を増大させることなく、高い分解能及び広い抵抗値の範囲を有するターミネーション抵抗回路を提供することにある。
【課題を解決するための手段】
【００４１】
上記の目的を達成するため、本発明に係るターミネーション抵抗回路（１）は、キャリブレーションコードが所定値を有すると、論理値が、前記キャリブレーションコードが前記所定値と異なる値を有する場合の論理値から変化する制御信号を生成する制御信号生成部と、前記キャリブレーションコードに応答してそれぞれオン／オフされる、相互に並列接続された複数の並列抵抗と、前記制御信号に応答してターミネーション抵抗回路全体の抵抗値を変更する抵抗値変更手段とを備えることができる。
【００４２】
また、本発明に係るターミネーション抵抗回路（２）は、それぞれのキャリブレーションコードに応答してそれぞれがオン／オフされる、相互に並列接続された複数の並列抵抗を備え、前記キャリブレーションコードが所定のコード値を有すると、前記複数の並列抵抗のうち少なくとも１つの並列抵抗の抵抗値が、前記キャリブレーションコードが前記所定値と異なる値を有する場合の抵抗値から変化することができる。
【００４３】
また、本発明に係るターミネーション抵抗回路（３）は、それぞれのキャリブレーションコードに応答してそれぞれがオン／オフされる、相互に並列接続された複数の並列抵抗と、前記キャリブレーションコードが所定のコード値を有すると、オン／オフ状態が、前記キャリブレーションコードが前記所定値と異なる値を有する場合のオン／オフ状態から変化する基準抵抗とを備えることができる。
【００４４】
また、本発明に係るターミネーション抵抗回路（４）は、それぞれのキャリブレーションコードに応答してそれぞれがオン／オフされる、相互に並列接続された複数の並列抵抗と、ターミネーション抵抗回路の抵抗値の範囲を維持する基準抵抗とを備え、前記基準抵抗の抵抗値が、前記キャリブレーションコードが所定のコード値を有すると、前記キャリブレーションコードが前記所定値と異なる値を有する場合の抵抗値から変化することができる。
【発明の効果】
【００４５】
本発明に係るターミネーション抵抗回路は、キャリブレーションコードが所定値を有すると、抵抗回路がとり得る抵抗値の範囲を変更する。これにより、分解能を維持しながらも、抵抗回路がとり得る抵抗値の範囲を拡大することができるという長所がある。
【図面の簡単な説明】
【００４６】
【図１】従来のキャリブレーション回路の構成図である。
【図２】従来のターミネーション回路の構成図である。
【図３】ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０をより詳細に示す図である。
【図４】ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０が、抵抗回路の動作時に常にターンオンされる抵抗を備える場合の、これらターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０を示す図である。
【図５Ａ】ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０がとる抵抗値の範囲を示す図である。
【図５Ｂ】ターミネーション抵抗回路１１０，１２０，１３０，２３０，２４０がとる抵抗値の範囲を示す図である。
【図６】本発明に係るターミネーション抵抗回路の概念図である。
【図７Ａ】本発明の第１実施形態に係るターミネーション抵抗回路を示す図である。
【図７Ｂ】本発明の第１実施形態に係るターミネーション抵抗回路を示す図である。
【図８Ａ】図７Ａに示す制御信号生成部７１０＿Ａの第１の詳細な実施形態を示す図である。
【図８Ｂ】図７Ｂに示す制御信号生成部７１０＿Ｂの第１の詳細な実施形態を示す図である。
【図９Ａ】図７Ａに示す制御信号生成部７１０＿Ａの第２の詳細な実施形態を示す図である。
【図９Ｂ】図７Ｂに示す制御信号生成部７１０＿Ｂの第２の詳細な実施形態を示す図である。
【図１０】図７Ａのターミネーション抵抗回路が、図８Ａに示す制御信号生成部７１０＿Ａを用いる場合の抵抗値の変更過程を示す図である。
【図１１】図７Ａのターミネーション抵抗回路が、図９Ａに示す制御信号生成部を用いる場合の抵抗値の変更過程を示す図である。
【図１２Ａ】本発明の第２実施形態に係るターミネーション抵抗回路を示す図である。
【図１２Ｂ】本発明の第２実施形態に係るターミネーション抵抗回路を示す図である。
【図１３Ａ】本発明の第３実施形態に係るターミネーション抵抗回路を示す図である。
【図１３Ｂ】本発明の第３実施形態に係るターミネーション抵抗回路を示す図である。
【発明を実施するための形態】
【００４７】
以下、本発明の属する技術分野における通常の知識を有する者が本発明の技術的思想を実施することができる程度に、添付図面を参照して本発明の好ましい実施形態を詳細に説明する。
【００４８】
なお、本発明でいう抵抗は、単に抵抗性物質で構成された受動素子だけを意味するのではなく、抵抗として動作するように設計されたトランジスタ、ダイオードなどを含む。
【００４９】
図６は、本発明に係るターミネーション抵抗回路の概念図である。
【００５０】
本発明に係るターミネーション抵抗回路は、キャリブレーションコードＣＯＤＥ＜０：Ｎ＞が所定値を有する場合に、論理値が変化する制御信号ＲＡＮＧＥ＿ＣＯＮＴを生成する制御信号生成部６１０と、キャリブレーションコードＣＯＤＥ＜０：Ｎ＞に応答してそれぞれオン／オフされる複数の並列抵抗６２０と、制御信号ＲＡＮＧＥ＿ＣＯＮＴに応答してターミネーション抵抗回路全体の抵抗値を変更する抵抗値変更手段６３０とを備える。ここで、「キャリブレーションコード」は、１つ以上のキャリブレーションコードである。
【００５１】
本発明のターミネーション回路において、キャリブレーションコードＣＯＤＥ＜０：Ｎ＞に応答して複数の並列抵抗６２０がそれぞれオン／オフされるという点は、従来のターミネーション回路と同じである。ただし、本発明は、制御信号生成部６１０と、抵抗値変更手段６３０とをさらに備える。
【００５２】
制御信号生成部６１０は、キャリブレーションコードＣＯＤＥ＜０：Ｎ＞のコード値が所定値に達すると、制御信号ＲＡＮＧＥ＿ＣＯＮＴの論理レベルを変更し、ターミネーション抵抗回路が再びリセットされるまで、変更された論理レベルを維持する。そして、抵抗値変更手段６３０は、制御信号ＲＡＮＧＥ＿ＣＯＮＴの論理レベルに応答して、ターミネーション抵抗回路全体の抵抗値を変更する。制御信号生成部６１０は、各々のターミネーション抵抗回路毎に備えられることができ、或いは、複数のターミネーション抵抗回路が１つの制御信号生成部６１０を共有するようにも設計され得る。
【００５３】
ターミネーション抵抗回路は、プルアップ並列抵抗６２０を備える抵抗回路であり、プルアップキャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞を用いると仮定しよう。目標抵抗値が１９０Ωである場合に、ターミネーション抵抗回路がとり得る抵抗値の範囲が２００Ω〜４００Ωであれば、プルアップキャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞は、いずれも「０」の値をとることになる。しかし、プルアップキャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞がいずれも「０」の値をとり、全ての抵抗６２０がターンオンされても、ターミネーション抵抗回路は、２００Ωの抵抗値しかとることができない。
【００５４】
この場合、制御信号生成部６１０は、制御信号ＲＡＮＧＥ＿ＣＯＮＴのレベルを変更する。すると、抵抗値変更手段６３０は、ターミネーション抵抗回路全体の抵抗値を変更する。すなわち、ターミネーション抵抗回路がとり得る抵抗値の範囲を、２００Ω〜４００Ωから１８０Ω〜３８０Ωに変更する。そのため、ターミネーション抵抗回路は、目標抵抗値の１９０Ωをとることができるようになる。
【００５５】
逆に、目標抵抗値が４１０Ωであり、ターミネーション抵抗回路が２００Ω〜４００Ωの抵抗値をとるように設計された場合には、キャリブレーションコードＰＣＯＤＥ＜０：Ｎ＞が抵抗値を４００Ωとするコードであれば、制御信号ＲＡＮＧＥ＿ＣＯＮＴの論理レベルを変更するようにし、ターミネーション抵抗回路が２２０Ω〜４２０Ωの抵抗値を有するように抵抗値変更手段６３０が設計され得ることはいうまでもない。
【００５６】
すなわち、制御信号生成部６１０及び抵抗値変更手段６３０は、ターミネーション抵抗回路の抵抗値の範囲が最初の抵抗値の範囲より下降するように（２００Ω〜４００Ω→１８０Ω〜３８０Ω）も、或いは、ターミネーション抵抗回路の抵抗値の範囲が最初の抵抗値の範囲より上昇するように（２００Ω〜４００Ω→２２０Ω〜４２０Ω）も設計され得る。
【００５７】
前者の場合、キャリブレーションコードＣＯＤＥ＜０：Ｎ＞が複数の並列抵抗６２０全体の抵抗値を所定値以下とするコードであれば、抵抗値変更手段６３０がターミネーション抵抗回路全体の抵抗値を減少させるような制御信号ＲＡＮＧＥ＿ＣＯＮＴを生成するように、制御信号生成部６１０が設計され得る。そして、後者の場合、キャリブレーションコードＣＯＤＥ＜０：Ｎ＞が複数の並列抵抗６２０全体の抵抗値を所定値以上とするコードであれば、抵抗値変更手段６３０がターミネーション抵抗回路全体の抵抗値を増加させるような制御信号ＲＡＮＧＥ＿ＣＯＮＴを生成するように、制御信号生成部６１０が設計され得る。
【００５８】
参考として、ターミネーション抵抗回路の全ての並列抵抗６２０をオフさせた場合、ターミネーション抵抗回路は、理論的に無限大の抵抗値をとることができる。そのため、上記の例で説明した４００Ω、３８０Ω、４２０Ωなどの抵抗値の上限値は、ターミネーション抵抗回路がある程度の分解能を維持しながらとり得る抵抗値の上限値を意味する（例えば、少なくとも１つの抵抗をオンさせておいた場合の抵抗値）。
【００５９】
抵抗値変更手段６３０は、複数の並列抵抗６２０内に位置するようにも、或いは、複数の並列抵抗６２０の外部に位置するようにも設計され得る。より詳細な説明は、後述する実施形態に基づいて行う。
【００６０】
図７Ａ及び図７Ｂは、本発明の第１実施形態に係るターミネーション抵抗回路を示す図である。
【００６１】
図７Ａには、ターミネーション抵抗回路としてプルアップターミネーション抵抗回路を示し、図７Ｂには、ターミネーション抵抗回路としてプルダウンターミネーション抵抗回路を示す。両者は、使用するトランジスタの種類及び入力されるキャリブレーションコードＰＣＯＤＥ，ＮＣＯＤＥが異なるが、基本的に同様に構成される。もちろん、特性の低下を無視して、図７Ａのターミネーション抵抗回路としてプルダウンターミネーション抵抗回路を用いることもでき、図７Ｂのターミネーション抵抗回路としてプルアップターミネーション抵抗回路を用いることもできる。
【００６２】
図７Ａ及び図７Ｂは、使用するトランジスタの種類が異なることにより、入力される信号のレベルが互いに異なるだけであるので、以下では、図７Ａを参照して第１実施形態に係るターミネーション抵抗回路を説明する。
【００６３】
第１実施形態に係るターミネーション抵抗回路は、それぞれのキャリブレーションコードＰＣＯＤＥ＜０：５＞に応答してそれぞれがオン／オフされる複数の並列抵抗７２０＿Ａ〜７７０＿Ａを備えて構成され、複数の並列抵抗７２０＿Ａ〜７７０＿Ａのうち、少なくとも１つ以上の並列抵抗７７０＿Ａは、キャリブレーションコードＰＣＯＤＥ＜０：５＞が所定値を有する場合に、抵抗値が変更されることを特徴とする。図７Ａを図６と対比すると、抵抗値変更手段６３０は、並列抵抗７７０＿Ａ内に備えられているとみなすことができる。
【００６４】
キャリブレーションコードＰＣＯＤＥ＜０：５＞が所定のコード値を有する場合、制御信号生成部７１０＿Ａは、制御信号ＲＡＮＧＥ＿ＣＯＮＴのレベルを変更する。したがって、調整抵抗７７２＿Ａのオン／オフ状態が変化する。
【００６５】
キャリブレーションコードＰＣＯＤＥ＜０：５＞が所定のコード値（例えば、＜０，０，０，０，０，０＞）に達し、制御信号ＲＡＮＧＥ＿ＣＯＮＴがハイレベルからローレベルに変更される場合を説明する。初期値として制御信号ＲＡＮＧＥ＿ＣＯＮＴがハイレベルを維持するので、並列抵抗７７０＿Ａは基本抵抗７７１＿Ａによる抵抗値のみを有する。その後、キャリブレーションコードＰＣＯＤＥ＜０：５＞が＜０，０，０，０，０，０＞になると、制御信号ＲＡＮＧＥ＿ＣＯＮＴがローレベルに変更され、調整抵抗７７２＿Ａがターンオンされる。すると、並列に接続される抵抗の数が増えるので、並列抵抗７７０＿Ａの抵抗値は減少する。並列抵抗７７０＿Ａの抵抗値が減少したということは、キャリブレーション抵抗回路全体の抵抗値の範囲が、より低い値の範囲に移動することを意味する（例えば、２００Ω〜４００Ω→１８０Ω〜３８０Ω）。
【００６６】
逆に、キャリブレーションコードＰＣＯＤＥ＜０：５＞が所定のコード値（例えば、＜１，１，１，１，１，０＞）に達し、制御信号ＲＡＮＧＥ＿ＣＯＮＴがローレベルからハイレベルに変更される場合を説明する。初期値として制御信号ＲＡＮＧＥ＿ＣＯＮＴがローレベルを維持するので、並列抵抗７７０＿Ａは基本抵抗７７１＿Ａ及び調整抵抗７７２＿Ａによる抵抗値を有する。その後、キャリブレーションコードＰＣＯＤＥ＜０：５＞が＜１，１，１，１，１，０＞になると、制御信号ＲＡＮＧＥ＿ＣＯＮＴがハイレベルに変更され、調整抵抗７７２＿Ａがターンオフされる。すると、並列抵抗７７０＿Ａの抵抗値は増加する。並列抵抗７７０＿Ａの抵抗値が増加したということは、キャリブレーション抵抗回路全体の抵抗値の範囲が、より高い値の範囲に移動することを意味する（例えば、２００Ω〜４００Ω→２２０Ω〜４２０Ω）。
【００６７】
なお、図中には、調整抵抗７７２＿Ａを基本抵抗７７１＿Ａに並列に接続してオン／オフすることにより、並列抵抗７７０＿Ａの抵抗値を調整する例を示しているが、調整抵抗７７２＿Ａを基本抵抗７７１＿Ａに直列に接続してオン／オフすることにより、並列抵抗７７０＿Ａの抵抗値を調整してもよいことはいうまでもない。
【００６８】
図８Ａ及び図８Ｂは、図７Ａ及び図７Ｂに示す制御信号生成部７１０＿Ａ，７１０＿Ｂの第１の詳細な実施形態を示す図である。
【００６９】
図８Ａ及び図８Ｂに示す制御信号生成部７１０＿Ａ，７１０＿Ｂは、キャリブレーションコードが所定値（例えば、ＰＣＯＤＥ＜０：５＞＝＜０，０，０，０，０，０＞、ＮＣＯＤＥ＜０：５＞＝＜１，１，１，１，１，１＞）に達すると、キャリブレーション回路全体の抵抗値の範囲がより低い値の範囲に移動するように（例えば、２００Ω〜４００Ω→１８０Ω〜３８０Ω）、制御信号ＲＡＮＧＥ＿ＣＯＮＴ，ＲＡＮＧＥ＿ＣＯＮＴ’を生成する。
【００７０】
詳細には、図８Ａの制御信号生成部７１０＿Ａは、キャリブレーションコードＰＣＯＤＥ＜０：５＞が＜０，０，０，０，０，０＞になると、制御信号ＲＡＮＧＥ＿ＣＯＮＴをハイレベルからローレベルに変更し、図８Ｂの制御信号生成部７１０＿Ｂは、キャリブレーションコードＮＣＯＤＥ＜０：５＞が＜１，１，１，１，１，１＞になると、制御信号ＲＡＮＧＥ＿ＣＯＮＴ’をローレベルからハイレベルに変更する。図８Ａ及び図８Ｂに示す２つの回路の動作原理は同じであるため、以下では、図８Ａを参照して制御信号生成部の構成及び動作について説明する。
【００７１】
図８Ａに示すように、制御信号生成部７１０＿Ａは、キャリブレーションコードＰＣＯＤＥ＜０：５＞の論理状態を結合して制御信号ＲＡＮＧＥ＿ＣＯＮＴを生成する論理結合部８１０＿Ａと、リセットされるまで制御信号ＲＡＮＧＥ＿ＣＯＮＴのレベルを維持するラッチ部８２０＿Ａとを備えて構成される。
【００７２】
論理結合部８１０＿Ａは、入力されるキャリブレーションコードＰＣＯＤＥ＜０：５＞が＜０，０，０，０，０，０＞の場合には、ローレベルの信号（以下、ロー信号と略記する）を出力してトランジスタ８２１＿Ａをターンオンさせ、キャリブレーションコードＰＣＯＤＥ＜０：５＞が＜０，０，０，０，０，０＞でない場合には、ハイレベルの信号（以下、ハイ信号と略記する）を出力してトランジスタ８２１＿Ａをターンオフさせる。
【００７３】
ラッチ部８２０＿Ａは、回路の初期化時にイネーブルされるリセット信号ＲＥＳＥＴの活性化により、トランジスタ８２２＿Ａがターンオンされ、制御信号ＲＡＮＧＥ＿ＣＯＮＴはハイレベルになる。そして、ラッチ８２３＿Ａにより制御信号ＲＡＮＧＥ＿ＣＯＮＴをハイレベルに維持する。その後、論理結合部８１０＿Ａからロー信号が出力されると、トランジスタ８２１＿Ａがターンオンされ、制御信号ＲＡＮＧＥ＿ＣＯＮＴはローレベルに変更される。一度ローレベルに変更された制御信号ＲＡＮＧＥ＿ＣＯＮＴのレベルは、回路が再び初期化されるまで、すなわち、リセット信号ＲＥＳＥＴが再びイネーブルされるまで維持される。
【００７４】
図９Ａ及び図９Ｂは、図７Ａ及び図７Ｂに示す制御信号生成部７１０＿Ａ，７１０＿Ｂの第２の詳細な実施形態を示す図である。
【００７５】
図９Ａ及び図９Ｂに示す制御信号生成部７１０＿Ａ，７１０＿Ｂは、キャリブレーションコードが所定値（例えば、ＰＣＯＤＥ＜０：５＞＝＜１，１，１，１，１，０＞、ＮＣＯＤＥ＜０：５＞＝＜０，０，０，０，０，１＞）に達すると、キャリブレーション回路全体の抵抗値の範囲がより高い値の範囲に移動するように（例えば、２００Ω〜４００Ω→２２０Ω〜４２０Ω）、制御信号ＲＡＮＧＥ＿ＣＯＮＴ，ＲＡＮＧＥ＿ＣＯＮＴ’を生成する。
【００７６】
詳細には、図９Ａの制御信号生成部７１０＿Ａは、キャリブレーションコードＰＣＯＤＥ＜０：５＞が＜１，１，１，１，１，０＞になると、制御信号ＲＡＮＧＥ＿ＣＯＮＴをローレベルからハイレベルに変更し、図９Ｂの制御信号生成部７１０＿Ｂは、キャリブレーションコードＮＣＯＤＥ＜０：５＞が＜０，０，０，０，０，１＞になると、制御信号ＲＡＮＧＥ＿ＣＯＮＴ’をハイレベルからローレベルに変更する。図９Ａ及び図９Ｂに示す２つの回路の動作原理は同じであるため、以下では、図９Ａを参照して制御信号生成部の構成及び動作について説明する。
【００７７】
図９Ａに示すように、制御信号生成部７１０＿Ａは、キャリブレーションコードＰＣＯＤＥ＜０：５＞の論理状態を結合（論理演算）して制御信号ＲＡＮＧＥ＿ＣＯＮＴを生成する論理結合部９１０＿Ａと、リセットされるまで制御信号ＲＡＮＧＥ＿ＣＯＮＴのレベルを維持するラッチ部９２０＿Ａとを備えて構成される。
【００７８】
論理結合部９１０＿Ａは、入力されるキャリブレーションコードＰＣＯＤＥ＜０：５＞が＜１，１，１，１，１，０＞の場合には、ハイ信号を出力してトランジスタ９２１＿Ａをターンオンさせ、キャリブレーションコードＰＣＯＤＥ＜０：５＞が＜１，１，１，１，１，０＞でない場合には、ロー信号を出力してトランジスタ９２１＿Ａをターンオフさせる。
【００７９】
ラッチ部９２０＿Ａは、回路の初期化時にイネーブルされるリセット信号ＲＥＳＥＴの活性化により、トランジスタ９２２＿Ａがターンオンされ、制御信号ＲＡＮＧＥ＿ＣＯＮＴはローレベルになる。そして、ラッチ９２３＿Ａにより制御信号ＲＡＮＧＥ＿ＣＯＮＴをローレベルに維持する。その後、論理結合部９１０＿Ａからハイ信号が出力されると、トランジスタ９２１＿Ａがターンオンされ、制御信号ＲＡＮＧＥ＿ＣＯＮＴはハイレベルに変更される。一度ハイレベルに変更された制御信号ＲＡＮＧＥ＿ＣＯＮＴのレベルは、回路が再び初期化されるまで、すなわち、リセット信号ＲＥＳＥＴが再びイネーブルされるまで維持される。
【００８０】
図１０は、図７Ａのターミネーション抵抗回路が、図８Ａに示す制御信号生成部７１０＿Ａを用いる場合の抵抗値の変更過程を示す図である。
【００８１】
目標抵抗値が１９０Ωの場合、キャリブレーションコードＰＣＯＤＥ＜０：５＞が＜０，０，０，０，０，０＞になり、全ての並列抵抗７２０＿Ａ〜７７０＿Ａがターンオンされても、ターミネーション抵抗回路は２００Ωの抵抗値しかとることができない。この状況下で制御信号ＲＡＮＧＥ＿ＣＯＮＴのレベルが変更されると、ターミネーション抵抗回路がとり得る抵抗値の範囲が下降するので、ターミネーション抵抗回路は１９０Ωの抵抗値を有することになる。図１０の矢印は、ターミネーション抵抗回路の抵抗値が変更される過程を示す。
【００８２】
図１１は、図７Ａのターミネーション抵抗回路が、図９Ａに示す制御信号生成部７１０＿Ａを用いる場合の抵抗値の変更過程を示す図である。
【００８３】
ターミネーション抵抗回路の抵抗値の有効範囲（ある程度の分解能を維持しながら抵抗値のとり得る範囲）は４００Ωまでである。したがって、目標抵抗値が４１０Ωの場合、ターミネーション抵抗回路は、適切な目標抵抗値になることができない。キャリブレーションコードＰＣＯＤＥ＜０：５＞がターミネーション抵抗回路の抵抗値を大きくする方向に変更された後、＜１，１，１，１，１，０＞のコード値になると、制御信号ＲＡＮＧＥ＿ＣＯＮＴのレベルが変更される。したがって、ターミネーション抵抗回路の抵抗値の範囲が上昇するので、ターミネーション抵抗回路は４１０Ωの抵抗値を有することになる。図１１の矢印は、ターミネーション抵抗回路の抵抗値が変更される過程を示す。
【００８４】
図１２Ａ及び図１２Ｂは、本発明の第２実施形態に係るターミネーション抵抗回路を示す図である。
【００８５】
図１２Ａには、ターミネーション抵抗回路としてプルアップターミネーション抵抗回路を示し、図１２Ｂには、ターミネーション抵抗回路としてプルダウンターミネーション抵抗回路を示す。両者は、使用するトランジスタの種類及び入力されるキャリブレーションコード（ＰＣＯＤＥ＜０：５＞、ＮＣＯＤＥ＜０：５＞）が異なるが、基本的に同様に構成される。もちろん、特性の低下を無視して、図１２Ａのターミネーション抵抗回路としてプルダウンターミネーション抵抗回路を用いることもでき、図１２Ｂのターミネーション抵抗回路としてプルアップターミネーション抵抗回路を用いることもできる。
【００８６】
図１２Ａ及び図１２Ｂは、使用するトランジスタの種類が異なることにより、入力される信号のレベルが互いに異なるだけであるので、以下では、図１２Ａを参照して第２実施形態に係るターミネーション抵抗回路を説明する。
【００８７】
第２実施形態に係るターミネーション抵抗回路は、それぞれのキャリブレーションコードＰＣＯＤＥ＜０：５＞に応答してそれぞれがオン／オフされる複数の並列抵抗１２２０＿Ａ〜１２７０＿Ａと、キャリブレーションコードＰＣＯＤＥ＜０：５＞が所定のコード値を有する場合に、オン／オフ状態が変化する基準抵抗１２８０＿Ａとを備えて構成される。
【００８８】
制御信号生成部１２１０＿Ａは、キャリブレーションコードＰＣＯＤＥ＜０：５＞のコード値が所定値に達すると、制御信号ＲＡＮＧＥ＿ＣＯＮＴの論理レベルを変更し、ターミネーション抵抗回路が再びリセットされるまで、変更された論理レベルを維持する。このような制御信号生成部１２１０＿Ａは、図７Ａまたは図８Ａに示す制御信号生成部と同様に構成され得る。
【００８９】
基準抵抗１２８０＿Ａは、制御信号ＲＡＮＧＥ＿ＣＯＮＴに応答してオン／オフされる。したがって、基準抵抗１２８０＿Ａのオン／オフにより、ターミネーション抵抗回路がとり得る抵抗値の範囲が変化する。図１２Ａを図６と対比すると、基準抵抗１２８０＿Ａは、抵抗値変更手段６３０に対応するとみなすことができる。
【００９０】
図１２Ａ及び図１２Ｂを参照すると、基準抵抗１２８０＿Ａは、制御信号ＲＡＮＧＥ＿ＣＯＮＴとＯＮ／ＯＦＦ＿Ｕ信号との論理状態を、ＯＲゲートにより結合して受信することがわかる。背景技術で説明したように、ターミネーション抵抗回路は、キャリブレーションコードＰＣＯＤＥ＜０：５＞の値とは無関係に、抵抗全体がオフになるべき場合がある。例えば、ターミネーション抵抗回路を出力ドライバに適用した場合、データを出力しないときには全ての抵抗がオフにならなければならない。ＯＮ／ＯＦＦ＿Ｕ信号はこのような場合に用いられる。ＯＮ／ＯＦＦ＿Ｕ信号については背景技術で説明したため、ここではその説明を省略する。基準抵抗は、ＯＮ／ＯＦＦ＿Ｕ信号によって制御されるので、ターミネーション抵抗回路がターミネーション動作を行わないときにはオフになる（もちろん、この場合には他の抵抗もオフになる）。
【００９１】
ターミネーション抵抗回路がターミネーション動作を行うときには、ＯＮ／ＯＦＦ＿Ｕ信号はローレベルを有するので、制御信号ＲＡＮＧＥ＿ＣＯＮＴによってのみ、基準抵抗１２８０＿Ａのオン／オフが決定されるようになる。
【００９２】
第２実施形態は、基準抵抗１２８０＿Ａをオン／オフさせる方法により、ターミネーション回路がとり得る抵抗値の範囲を変更する点を除けば、第１実施形態のターミネーション回路と同じ特徴及び効果を有することから、これ以上の詳細な説明は省略する。
【００９３】
図１３Ａ及び図１３Ｂは、本発明の第３実施形態に係るターミネーション抵抗回路を示す図である。
【００９４】
図１３Ａには、ターミネーション抵抗回路としてプルアップターミネーション抵抗回路を示し、図１３Ｂには、ターミネーション抵抗回路としてプルダウンターミネーション抵抗回路を示す。両者は、使用するトランジスタの種類及び入力されるキャリブレーションコード（ＰＣＯＤＥ＜０：５＞、ＮＣＯＤＥ＜０：５＞）が異なるが、基本的に同様に構成される。もちろん、特性の低下を無視して、図１３Ａのターミネーション抵抗回路としてプルダウンターミネーション抵抗回路を用いることもでき、図１３Ｂのターミネーション抵抗回路としてプルアップターミネーション抵抗回路を用いることもできる。
【００９５】
図１３Ａ及び図１３Ｂは、使用するトランジスタの種類が異なることにより、入力される信号のレベルが互いに異なるだけであるので、以下では、図１３Ａを参照して第３実施形態に係るターミネーション抵抗回路を説明する。
【００９６】
第３実施形態に係るターミネーション抵抗回路は、それぞれのキャリブレーションコードＰＣＯＤＥ＜０：５＞に応答してそれぞれがオン／オフされる複数の並列抵抗１３２０＿Ａ〜１３７０＿Ａと、ターミネーション抵抗回路の抵抗値の範囲を維持する基準抵抗１３８０＿Ａとを備えて構成され、基準抵抗１３８０＿Ａの抵抗値が、キャリブレーションコードＰＣＯＤＥ＜０：５＞が所定のコード値を有する場合に変化することを特徴とする。
【００９７】
制御信号生成部１３１０＿Ａは、キャリブレーションコードＰＣＯＤＥ＜０：５＞のコード値が所定値に達すると、制御信号ＲＡＮＧＥ＿ＣＯＮＴの論理レベルを変更し、ターミネーション抵抗回路が再びリセットされるまで、変更された論理レベルを維持する。このような制御信号生成部１３１０＿Ａは、図７Ａまたは図８Ａに示す制御信号生成部と同様に構成され得る。
【００９８】
基準抵抗１３８０＿ＡはＯＮ／ＯＦＦ＿Ｕ信号に応答してオン／オフされる。上述のように、ターミネーション抵抗回路がターミネーション動作を行うときには、ＯＮ／ＯＦＦ＿Ｕ信号は常にローレベルを維持するので、基準抵抗１３８０＿Ａは、常にオンとなる抵抗であると考えられる。ただし、制御信号ＲＡＮＧＥ＿ＣＯＮＴにより基準抵抗１３８０＿Ａ内の変更抵抗１３８２＿Ａがオン／オフされるので、制御信号ＲＡＮＧＥ＿ＣＯＮＴの論理値に応じて基準抵抗１３８０＿Ａの抵抗値が変化する。
【００９９】
制御信号ＲＡＮＧＥ＿ＣＯＮＴに応答して基準抵抗１３８０＿Ａの抵抗値が変化すると、ターミネーション抵抗回路がとり得る抵抗値の範囲が変更される。図１３Ａを図６と対比すると、抵抗値変更手段６３０は、基準抵抗１３８０＿Ａ内に備えられているとみなすことができる。すなわち、変更抵抗１３８２＿Ａは、抵抗値変更手段６３０に対応する。
【０１００】
第３実施形態は、基準抵抗１３８０＿Ａの抵抗値を変化させる方法により、ターミネーション回路がとり得る抵抗値の範囲を変更する点を除けば、第１実施形態及び第２実施形態のターミネーション抵抗回路と同じ特徴及び効果を有することから、これ以上の詳細な説明は省略する。
【０１０１】
以上、本発明の技術的思想を上記の好ましい実施形態により具体的に記述したが、上記の実施形態は、実施形態の一例を説明するためのものであって、本発明の技術的範囲を制限するためのものではないことに留意しなければならない。また、本発明の技術分野における通常の専門家であれば、本発明の技術的思想の範囲内で多様な実施形態が可能であることを理解することができるであろう。
【符号の説明】
【０１０２】
６１０      制御信号生成部
６２０      複数の並列抵抗
６３０      抵抗値変更手段
【図１】
2010021994.tif 000003
【図２】
2010021994.tif 000004
【図３】
2010021994.tif 000005
【図４】
2010021994.tif 000006
【図５Ａ】
2010021994.tif 000007
【図５Ｂ】
2010021994.tif 000008
【図６】
2010021994.tif 000009
【図７Ａ】
2010021994.tif 000010
【図７Ｂ】
2010021994.tif 000011
【図８Ａ】
2010021994.tif 000012
【図８Ｂ】
2010021994.tif 000013
【図９Ａ】
2010021994.tif 000014
【図９Ｂ】
2010021994.tif 000015
【図１０】
2010021994.tif 000016
【図１１】
2010021994.tif 000017
【図１２Ａ】
2010021994.tif 000018
【図１２Ｂ】
2010021994.tif 000019
【図１３Ａ】
2010021994.tif 000020
【図１３Ｂ】
2010021994.tif 000021