(57)【特許請求の範囲】
【請求項１】
内部のインピーダンスが変更可能に構成され、入力信号を伝播する外部の伝送路のインピーダンスと整合させるための終端回路と、
前記終端回路を介して入力された前記入力信号の信号レベルに応じてクロック信号を生成するクロック信号生成部と、
前記クロック信号に基づいて、前記終端回路のインピーダンスを調整する制御部と、を有する半導体装置であって、
前記制御部は、前記クロック信号に同期して、目標とするインピーダンスになるように前記終端回路のインピーダンスを調整するための処理を行うとともに、前記クロック信号が異常であると判断したら、前記終端回路のインピーダンスを所定のインピーダンスに変更し、
前記入力信号は外部クロック信号であって、
前記クロック信号生成部は、前記外部クロック信号の信号レベルと基準電圧の信号レベルを比較する比較回路を含み、
前記比較回路は比較結果を前記クロック信号として出力し、
前記所定のインピーダンスは、前記クロック信号生成部に入力される前記外部クロック信号のハイレベルの電圧が前記基準電圧より大きく、且つ前記外部クロック信号のローレベルの電圧が前記基準電圧よりも小さくなるようなインピーダンスである、半導体装置。
【請求項２】
前記制御部は、前記クロック信号が期待されるハイレベル期間又はローレベル期間よりも長い所定期間、ハイレベル又はローレベルとなったら、前記クロック信号が異常であると判断する、請求項１の半導体装置。
【請求項３】
前記制御部は、前記所定期間が変更可能に構成される、請求項２の半導体装置。
【請求項４】
前記終端回路のインピーダンスの初期値は前記所定のインピーダンスであって、
前記制御部は、前記終端回路のインピーダンスを調整するインピーダンス調整部と、
前記クロック信号を監視し、前記クロック信号が異常であると判断したらリセット信号を出力する監視部と、を有し、
前記インピーダンス調整部は、前記クロック信号に同期して、目標とするインピーダンスになるように前記終端回路のインピーダンスを調整するとともに、前記リセット信号が出力されたら、前記終端回路のインピーダンスを前記初期値に再設定する、請求項１の半導体装置。
【請求項５】
前記所定のインピーダンスは、前記終端回路のインピーダンスとして設定可能な範囲の中間の値に基づいて決定される、請求項１の半導体装置。
【請求項６】
前記クロック信号に基づいて動作する内部回路を更に有し、
前記内部回路は、前記リセット信号によって初期化が可能に構成される、請求項４の半導体装置。
【請求項７】
前記内部回路は、データを格納するための記憶領域を備えるメモリ部と、
前記クロック信号に基づく信号に同期して前記メモリ部に対するデータの書き込みと読み出しを行うためのメモリ制御部と、を有する請求項６の半導体装置。
【請求項８】
前記所定のインピーダンスは、前記終端回路が高インピーダンス状態になることによって決定される、請求項１の半導体装置。
【請求項９】
前記制御部は、前記終端回路のインピーダンスを調整するインピーダンス調整部と、
前記クロック信号を監視し、前記クロック信号が異常であると判断したらリセット信号を出力する監視部と、を有し、
前記インピーダンス調整部は、前記リセット信号が出力されたら、前記終端回路を高インピーダンス状態にするとともに、前記クロック信号に同期して前記目標とするインピーダンスの値を算出する処理を行い、所定時間の経過後、前記終端回路のインピーダンスを前記算出した値に更新する、請求項１の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力信号を伝播する伝送路のインピーダンスと整合させるための終端回路に関し、特に、インピーダンスが変更可能なオン・ダイ・ターミネーション（Ｏｎ  Ｄｉｅ  Ｔｅｒｍｉｎａｔｉｏｎ：ＯＤＴ）を内蔵する半導体装置に適用して有効な技術に関する。
【背景技術】
【０００２】
高周波の信号を伝送する場合、反射ノイズによる信号の歪みを防止するため、伝送路やデバイス相互間のインピーダンスを整合する終端回路が必要となる。例えば、２つのＩＣ間で高速の信号の送受信を行う場合には、ＩＣ間に外付けの終端回路を設けることが多いが、高速のＳＲＡＭ等のメモリＩＣの分野では、部品点数の削減のため、メモリＩＣに終端回路を内蔵した製品も多い。
【０００３】
半導体装置に内蔵される終端回路の従来技術として、特許文献１に開示がある。特許文献１には、高周波の信号が入力されるノードと電源ラインとの間に設けられた複数の抵抗の接続をスイッチによって切り替えることで、前記ノードのインピーダンスを変更可能にするＯＤＴ回路（終端回路）が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−１７９７２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１のＯＤＴ回路では、前記ノードと電源ラインとの間に設けられた複数の抵抗のうち、いずれの抵抗を接続するかを指示する信号（インピーダンスコード）によって、対応するスイッチのオン・オフが制御される。これにより、前記ノードのインピーダンスを可変にしている。
【０００６】
本願発明者は、本願発明に先立って、上記のようにインピーダンスが変更可能な終端回路を、外部クロック信号に基づいて生成した内部クロック信号に同期して動作する半導体装置に内蔵することを検討した。当該検討の結果、以下のような問題があることを本願発明者は見出した。
【０００７】
図１５に、本願発明者が先立って検討した、外部クロック信号を入力する入力回路にインピーダンスが変更可能なＯＤＴ回路を適用した半導体装置のブロック図を例示する。
【０００８】
同図に示される半導体装置８は、入力端子Ｋから入力された外部クロック信号に基づいて内部クロック信号を生成し、前記内部クロック信号に同期して動作するロジック回路である。半導体装置８は、図示されない電源端子から電源電圧ＶＤＤＱ、電源電圧ＶＤＤＩ、及びグラウンド電圧ＧＮＤが供給される。
【０００９】
半導体装置８は、外部クロック信号が入力される入力端子Ｋと、基準電圧が供給される入力端子ＶＲＥＦと、入力端子Ｋのインピーダンスを整合するためのＯＤＴ回路（ＯＤＴ）８０と、ＯＤＴ回路８０のインピーダンスを調整する制御部（ＣＮＴ）８１と、内部クロック信号ＣＬＫを生成する比較器（ＣＭＰ）８２と、内部クロック信号ＣＬＫに基づいて動作するコアロジック回路８３と、を含んで構成される。図示はされないが、半導体装置８は電源端子を更に有し、電源端子から電源電圧ＶＤＤＱ、電源電圧ＶＤＤＩ、及びグラウンド電圧ＧＮＤが供給される。
【００１０】
コアロジック回路８３は、例えばメモリ回路であり、データを格納するためのメモリアレイと、前記メモリアレイに対するデータの書き込みと読み出しを制御するためのメモリ制御部等から構成され、内部クロック信号ＣＬＫに同期して、前記メモリアレイに対するデータの書き込みと読み出しが制御される。
【００１１】
図１５において、入力端子Ｋに入力された外部クロック信号はＯＤＴ回路８０を介して比較器８２に入力される。前記外部クロック信号は、例えば、ＨＳＴＬ（Ｈｉｇｈ  Ｓｐｅｅｄ  Ｔｒａｎｓｃｅｉｖｅｒ  Ｌｏｇｉｃ）レベルの信号であり、振幅が比較的小さい。比較器８２は基準電圧ＶＲＥＦと、ＯＤＴ回路８０を介して入力された外部クロック信号の電圧の比較を行い、比較結果を出力する。基準電圧ＶＲＥＦは、例えば１／２ＶＤＤＱとなる電圧であって、電源電圧ＶＤＤＱの抵抗分圧で生成される。比較器８２に入力されるクロック信号Ｋは、例えば高周波の信号であり、ＯＤＴ回路８０によってインピーダンス整合されることにより反射等が抑止される。これにより、比較器８２に入力されるクロック信号Ｋは、基準電圧ＶＲＥＦを略中心とする電圧振幅の信号となる。その結果、比較器５２による比較結果は、外部クロック信号Ｋの周期と略等しい周期のクロック信号ＣＬＫとして出力される。当該クロック信号（内部クロック信号）ＣＬＫは、コアロジック回路８３や制御部８１等の動作クロックとして供給される。
【００１２】
制御部８１は、ＯＤＴ回路８０のインピーダンスを調整するための回路である。例えば、制御部８１は、内部クロック信号ＣＬＫに同期して、前記ＯＤＴ回路８０のインピーダンスが目的とするインピーダンスになるように、インピーダンスコードを生成する。前記ＯＤＴ回路８０は、生成された前記インピーダンスコードによってＭＯＳトランジスタＭＰ０〜ＭＰ７及びＭＮ０〜ＭＮ７のオン・オフが制御されることにより、抵抗値が調整される。前記インピーダンスコードのうち、ＰチャネルＭＯＳトランジスタＭＰ０〜ＭＰ７のゲートを制御するＰ側インピーダンスコードをｐｃｏｄｅ［７：０］と表し、ＮチャネルＭＯＳトランジスタＭＮ０〜ＭＮ７のゲートを制御するＮ側インピーダンスコードをｎｃｏｄｅ［７：０］と表す。ここで、Ｐ側インピーダンスコードｐｃｏｄｅ及びＮ側インピーダンスコードｎｃｏｄｅの初期値は、終端回路５０の電源ＶＤＤＱ側のプルアップ（ｐｕｌｌ−ｕｐ）抵抗とグラウンド側のプルダウン（ｐｕｌｌ−ｄｏｗｎ）抵抗とが略等しい値となるインピーダンスコードとされ、そのときのＰ側インピーダンスコードｐｃｏｄｅを、例えば“１０００００００”とし、Ｎ側インピーダンスコードｎｃｏｄｅを、例えば“１０００００００”とする。
【００１３】
図１６は、半導体装置８における各ノードの電圧変化の一例を示すタイミングチャートである。同図は、ノイズ等が発生しない理想的な環境での半導体装置８の動作が例示されている。
【００１４】
先ず、コアロジック回路８３等の電源となる電源ＶＤＤＩが供給されると、図示されないリセット回路によりパワーオンリセット信号ｒｓｔ＿ｐが出力され、インピーダンスコードとして初期値（イニシャルコード）が出力される。その後、電源ＶＤＤＱと基準電圧ＶＲＥＦの供給が開始される。このとき、クロック信号Ｋを供給する外部ドライバ回路６が非活性状態（出力が高インピーダンス（Ｈｉ−Ｚ）状態）である場合には、入力端子Ｋに接続されるノードの電圧は、基準電圧ＶＲＥＦに近接した電圧となる。そして、外部ドライバ回路６が活性化されてクロック信号Ｋが供給されると、比較器８２は内部クロック信号ＣＬＫを生成する。制御部８１は、生成された内部クロック信号ＣＬＫに同期してＯＤＴ回路８０のインピーダンスの調整を開始し、目標とするインピーダンスになるようにＯＤＴ回路８０の抵抗値を調整する。同図には、前記目標とするインピーダンスに対応したインピーダンスコードとして、Ｐ側インピーダンスコードｐｃｏｄｅを“１００００００１”とし、Ｎ側インピーダンスコードｎｃｏｄｅを“０１１１１１１１”とした場合が例示される。
【００１５】
図１７は、半導体装置８における各ノードの電圧変化の別の一例を示すタイミングチャートである。同図には、電源投入時にノイズが発生した場合の半導体装置８の動作が例示される。
【００１６】
例えば、電源電圧ＶＤＤＱの投入時にグラウンドノイズが発生し、入力端子Ｋが接続されるノードにそのノイズが重畳されると、比較器８２における２つの入力端子の電圧の大小関係が反転し、内部クロック信号ＣＬＫが発生する虞がある。一旦このような不正な内部クロック信号ＣＬＫが発生すると、制御部８１は不正な内部クロック信号ＣＬＫを動作クロックとして、インピーダンスコードの更新を開始する。しかしながら、電源電圧ＶＤＤＱや基準電圧ＶＲＥＦが十分に立ち上がっていない場合や、クロック信号ＣＬＫのパルス幅及び周期が正常ではない場合には、制御部８１は正常にインピーダンス調整を行うことができず、不正なインピーダンスコードをＯＤＴ回路８０に設定してしまう虞がある。例えば、図１７に示されるように、誤ったインピーダンスコードとして、ＯＤＴ回路８０のプルアップ抵抗が最大となるＰ側インピーダンスコード“１１１１１１１１”が設定され、ＯＤＴ回路８０のプルダウン抵抗が最小となるＮ側インピーダンスコード“００００００００”が設定されると、比較器８０に入力されるクロック信号Ｋのハイレベルの電圧が基準電圧ＶＲＥＦを下回ることになる。一旦このような状態に陥ると、比較器８２の２つの入力端子の電圧の大小関係が変化しないことになり、内部クロック信号ＣＬＫが発生しない。すなわち、制御回路８１は、動作クロックとしての内部クロック信号ＣＬＫが供給されないため、インピーダンスコードを更新することができない。その結果、ＯＤＴ回路８０のインピーダンスが異常な状態のまま保持され、外部からクロック信号Ｋが供給されているにも関わらず、内部クロック信号ＣＬＫが発生しないデッドロック状態となる。これにより、コアロジック回路８３は動作することができず、いかなるリード／ライト命令も受け付けることができない不良となる。このようなデッドロック状態に陥った場合には、例えば電源電圧の再投入によらなければ復帰できない。
【００１７】
本発明の目的は、インピーダンスが変更可能な終端回路を内蔵した半導体装置において、前記終端回路の安定性を高めることにある。
【００１８】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１９】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記のとおりである。
【００２０】
すなわち、本半導体装置は、インピーダンスが変更可能に構成される終端回路を介して入力された入力信号に基づいてクロック信号を生成するクロック信号生成部と、前記クロック信号に基づいて、前記終端回路のインピーダンスを調整する制御部とを有する。前記制御部は、前記クロック信号に同期して、目標とするインピーダンスになるように前記終端回路のインピーダンスを調整するための処理を行うとともに、前記クロック信号が異常であると判断したら、前記終端回路のインピーダンスを所定のインピーダンスに変更する。
【発明の効果】
【００２１】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
【００２２】
すなわち、本半導体装置によれば、インピーダンスが変更可能な終端回路の安定性を高めることができる。
【図面の簡単な説明】
【００２３】
【図１】図１は、実施の形態１に係る、インピーダンスが変更可能なＯＤＴ回路を適用した半導体装置のブロック図である。
【図２】図２は、インピーダンス検出回路２０１の回路構成の一例を示すブロック図である。
【図３】図３は、クロック信号異常検出回路２０４の回路構成の一例を示すブロック図である。
【図４】図４は、ローレベル検出部２０４０の動作を例示するタイミングチャートである。
【図５】図５は、ＯＤＴ回路１０のインピーダンス調整方法の流れの一例を示すフローチャートである。
【図６】図６は、半導体装置１における各ノードの電圧変化の一例を示すタイミングチャートである。
【図７】図７は、実施の形態２に係るインピーダンスが変更可能なＯＤＴ回路を適用した半導体装置のブロック図である。
【図８】図８は、クロック信号異常検出回路２１４の回路構成の一例を示すブロック図である。
【図９】図９は、ローレベル検出部２１４０の動作を例示するタイミングチャートである。
【図１０】図１０は、実施の形態３に係るインピーダンスが変更可能なＯＤＴ回路を適用した半導体装置のブロック図である。
【図１１】図１１は、半導体装置３におけるＯＤＴ回路１０のインピーダンス調整方法の流れの一例を示すフローチャートである。
【図１２】図１２は、半導体装置３における各ノードの電圧変化の一例を示すタイミングチャートである。
【図１３】図１３は、実施の形態４に係るインピーダンスが変更可能なＯＤＴ回路を適用した半導体装置のブロック図である。
【図１４】図１４は、入力端子Ｋの周辺回路の詳細なブロック図である。
【図１５】図１５は、本願発明者が先立って検討した、インピーダンスが変更可能な終端回路を適用した半導体装置のブロック図である。
【図１６】図１６は、半導体装置８における各ノードの電圧変化の一例を示すタイミングチャートである。
【図１７】図１７は、半導体装置８における各ノードの電圧変化の別の一例を示すタイミングチャートである。
【発明を実施するための形態】
【００２４】
１．実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
【００２５】
〔１〕（内部クロック信号の異常状態を検出したらＯＤＴ回路のインピーダンスを変更する）
本発明の代表的な実施の形態に係る半導体装置（１〜４）は、内部のインピーダンスが変更可能に構成され、入力信号（Ｋ）を伝播する外部の伝送路のインピーダンスと整合させるための終端回路（１０）と、前記終端回路を介して入力された前記入力信号の信号レベルに応じてクロック信号（ｉｎｔＣＬＫ）を生成するクロック信号生成部（５０）と、前記クロック信号に基づいて、前記終端回路のインピーダンスを調整する制御部（２０〜２２）と、を有する。前記制御部は、前記クロック信号に同期して、目標とするインピーダンスになるように前記終端回路のインピーダンスを調整するための処理を行うとともに、前記クロック信号が異常であると判断したら、前記終端回路のインピーダンスを所定のインピーダンスに変更する。
【００２６】
例えば、前記終端回路のインピーダンスが適切な値に設定されないことにより前記入力信号の信号レベルが異常となり、前記クロック信号がハイレベル又はローレベルに固定された信号となった場合を考える。前述した図１５の半導体装置８では、このような場合、クロック信号が実質的に出力されない状態となるので、制御部によるクロック信号に同期した終端回路のインピーダンスの調整は停止してしまう。そこで、項１の半導体装置によれば、前記制御部が前記クロック信号の異常を検出すると、前記終端回路のインピーダンスを前記所定のインピーダンスに変更するので、前記クロック信号生成部に入力される前記入力信号の信号レベルを変化させることができる。これにより、異常なクロック信号が生成されている状態から脱することが可能となる。
【００２７】
〔２〕（所定のインピーダンスは）
項１の半導体装置において、前記入力信号は外部クロック信号であって、前記クロック信号生成部は、前記外部クロック信号の信号レベルと基準電圧（ＶＲＥＦ）の信号レベルを比較する比較回路（５０）を含み、前記比較回路は比較結果を前記クロック信号として出力する。前記所定のインピーダンスは、前記クロック信号生成部に入力される前記外部クロック信号のハイレベルの電圧が前記基準電圧より大きく、且つ前記外部クロック信号のローレベルの電圧が前記基準電圧よりも小さくなるようなインピーダンスである。
【００２８】
これによれば、前記終端回路のインピーダンスの異常に起因して前記入力信号の信号レベルが異常となることにより停止してしまったクロック信号を、再度出力させることが可能となる。これにより、クロック信号の異常を検出した後に、終端回路のインピーダンスを目標とする値に設定するための処理を再開することができる。
【００２９】
〔３〕（クロック異常検出回路の具体例）
項１又は２の半導体装置（１、３、４）において、前記制御部は、前記クロック信号が期待されるハイレベル期間又はローレベル期間よりも長い所定期間（ｔｄ）ハイレベル又はローレベルとなったら、前記クロック信号が異常であると判断する。
【００３０】
これによれば、例えば、クロック信号がハイレベル又はローレベルに固定された場合のみならず、クロック信号のデューティ比が目標とする範囲から外れた場合も、クロック信号の異常として検出することができる。
【００３１】
〔４〕（異常状態の検出期間は変更可能）
項３の半導体装置（２）において、前記所定期間が変更可能に構成される。
【００３２】
これによれば、例えば、当該半導体装置の仕様等に応じて、クロック信号が異常であると判断する基準を変更することができる。
【００３３】
〔５〕（クロック信号の異常状態を検出したらリセット信号を出力する）
項２乃至４のいずれかの半導体装置において、前記終端回路のインピーダンスの初期値は前記所定のインピーダンスである。前記制御部は、前記終端回路のインピーダンスを調整するインピーダンス調整部（２０１、２０２、２０５）と、前記クロック信号を監視し、前記クロック信号が異常であると判断したらリセット信号を出力する監視部（２０４）と、を有する。前記インピーダンス調整部は、前記クロック信号に同期して、目標とするインピーダンスになるように前記終端回路のインピーダンスを調整するとともに、前記リセット信号が出力されたら、前記終端回路のインピーダンスを前記初期値に再設定する。
【００３４】
これによれば、前記終端回路のインピーダンスに起因したクロック信号の異常状態から脱するための機能を容易に実現することができる。
【００３５】
〔６〕（初期値は中間のインピーダンス値）
項２乃至５のいずれかの半導体装置において、前記所定のインピーダンスは、前記終端回路のインピーダンスとして設定可能な範囲の中間の値に基づいて決定される。
【００３６】
これによれば、例えば、外部クロック信号のハイレベルが電源電圧、ローレベルがグラウンド電圧であり、前記基準電圧が電源電圧の半分の電圧であるとすると、多くの場合、容易に、前記クロック信号生成部に入力される前記外部信号のハイレベルの電圧を前記基準電圧よりも高くし、且つローレベルの電圧を前記基準電圧よりも低くすることができる。
【００３７】
〔７〕（コアロジック回路のリセット信号として用いる）
項５の半導体装置（４）は、前記クロック信号に基づいて動作する内部回路（６０、６１）を更に有する。前記内部回路は、前記リセット信号によって初期化が可能に構成される。
【００３８】
これによれば、クロック信号が異常になった場合に前記内部回路をリセットすることが可能となる。例えば、外部クロック信号を停止することで、電源再投入を行うことなく前記内部回路をリセットすることが可能となり、また、リセット専用の外部端子を更に設ける必要もない。
【００３９】
〔８〕（メモリ回路）
項７の半導体装置（４）において、前記内部回路は、データを格納するための記憶領域を備えるメモリ部（６１３）と、前記クロック信号に基づく信号（Ｃ＿ＣＬＫ）に同期して前記メモリ部に対するデータの書き込みと読み出しを行うためのメモリ制御部（６１０、６１１、６１２、６１４）と、を有する。
【００４０】
これによれば、例えば、外部クロック信号を停止することで、電源再投入を行うことなく前記メモリ部及び前記メモリ制御部をリセットすることが可能となり、また、リセット専用の外部端子を更に設ける必要もない。
【００４１】
〔９〕（ＯＤＴ回路の強制オフ）
項２乃至５、７、又は８のいずれかの半導体装置（３）において、前記所定のインピーダンスは、前記終端回路が高インピーダンス状態になることによって決定される。
【００４２】
これによれば、例えば、外部クロック信号のハイレベルが電源電圧、ローレベルがグラウンド電圧であり、前記基準電圧が電源電圧の半分の電圧であるとすると、波形の品質は落ちるが、前記クロック信号生成部に入力される前記外部信号のハイレベルの電圧が電源電圧程度の電圧となり、ローレベルの電圧がグラウンド電圧程度の電圧となる。すなわち、容易に、前記クロック信号生成部に入力される前記外部信号のハイレベルの電圧を前記基準電圧よりも高くし、且つローレベルの電圧を前記基準電圧よりも低くすることができる。
【００４３】
〔１０〕（リセット検出後、所定期間Ｈｉｚ）
項２乃至４のいずれかの半導体装置（３）において、前記制御部は、前記終端回路のインピーダンスを調整するインピーダンス調整部（２０１、２０２、２０５、２１０）と、前記クロック信号を監視し、前記クロック信号が異常であると判断したらリセット信号（ｓｔｏｐｃ）を出力する監視部（２０４）と、を有する。前記インピーダンス調整部は、前記リセット信号が出力されたら、前記終端回路を高インピーダンス状態にするとともに、前記クロック信号に同期して前記目標とするインピーダンスの値を算出する処理を行い、所定時間（例えば１０２４サイクル）の経過後、前記終端回路のインピーダンスを前記算出した値に更新する。
【００４４】
前記入力信号を供給する外部ドライバ回路のオン抵抗や電源電圧範囲等の条件によっては、前記入力信号のパルスを前記半導体装置の内部に伝播して前記クロック信号を発生させることができるようなインピーダンスコードの初期値を見つけることが困難な場合がある。一方、項９で述べたように、例えば、外部クロック信号のハイレベルが電源電圧、ローレベルがグラウンド電圧であり、前記基準電圧が電源電圧の半分の電圧である場合には、前記終端回路を高インピーダンス（Ｈｉ−Ｚ）状態にすることでより確実にクロック信号を生成することができる。そこで、項１０の半導体装置のように、前記クロック信号の異常状態を検出してから一定期間は前記終端回路を高インピーダンス状態にすることで、より確実に前記クロック信号を発生させ、そのクロック信号に基づいて、前記目標とするインピーダンスの値を算出する。これにより、クロック信号の異常を検出してから、前記初期値にリセットする場合に比べて、より確実に終端回路のインピーダンスを目標とする値に設定することができる。
【００４５】
２．実施の形態の詳細
実施の形態について更に詳述する。
【００４６】
図１に、外部クロック信号が入力される入力端子の終端回路として、インピーダンスが変更可能なＯＤＴ回路を適用した半導体装置のブロック図を例示する。
【００４７】
同図に示される半導体装置１は、特に制限されないが、公知のＣＭＯＳ集積回路の製造技術によって１個の単結晶シリコンのような半導体基板に形成されている。
【００４８】
半導体装置１は、入力端子Ｋから入力された外部クロック信号に基づいて動作するロジック回路である。具体的には、半導体装置１は、入力端子Ｋのインピーダンスを整合するためのＯＤＴ回路（ＯＤＴ）１０と、前記ＯＤＴ回路１０のインピーダンスを調整する制御部（ＩＭＰ＿ＣＮＴ）２０と、基準電圧ＺＲＥＦを生成する基準電圧生成回路３０と、リセット回路（ＲＥＳＥＴ）４０と、内部クロック信号ＣＬＫを生成する比較器（ＣＭＰ）５０と、内部クロック信号ＣＬＫに基づいて動作するコアロジック回路（ＣＩＲ）６０と、を含んで構成される。コアロジック回路６０は、例えばメモリ回路であり、データを格納するためのメモリアレイと、前記メモリアレイに対するデータの書き込みと読み出しを制御するためのメモリ制御部等から構成され、内部クロック信号ＣＬＫに同期して、前記メモリアレイに対するデータの書き込みと読み出しが制御される。その他に、図示されないが、メモリ回路に対するアドレス信号やリード信号及びライト信号等の入力信号を受けるための入力インターフェース回路や、データ等を出力するための出力インターフェース回路も備える。
【００４９】
また半導体装置１は、外部端子として、外部クロック信号が入力される入力端子Ｋと、基準電圧が供給される入力端子ＶＲＥＦと、ＯＤＴ回路のインピーダンスを決定するための基準となる外付け抵抗を接続するための入力端子ＺＱと、を備える。その他、図示されないが、電源電圧が供給される電源端子ＶＤＤＱ、電源電圧が供給される電源端子ＶＤＤＩ、グラウンド電圧が供給されるグラウンド端子ＧＮＤ等も備える。なお、参照符号ＶＤＤＱ、ＶＤＤＩ、及びＧＮＤは、端子のみならず、その端子に供給される電圧をも表すものとする。電源電圧ＶＤＤＩは、コアロジック回路６０等の内部回路の電源として供給される。電源電圧ＶＤＤＱは、ＯＤＴ回路１０等のＩ／Ｏ部の電源として供給される。電源電圧ＶＤＤＩ及び電源電圧ＶＤＤＱの電圧は、半導体装置１の製造プロセスに依存するが、例えば、電源電圧ＶＤＤＩは１．１Ｖであり、電源電圧ＶＤＤＱは１．５Ｖ〜１．８Ｖである。
【００５０】
なお以下の説明では、参照符号Ｋは、入力端子のみならず、その端子に接続されるノード及びその端子に供給される外部クロック信号をも表すものとする。また参照符号ＶＲＥＦは、入力端子のみならず、その端子に接続されるノード及びその端子に供給される基準電圧をも表すものとする。更に参照符号ＺＱは、入力端子のみならず、その端子に接続されるノード及びその端子に発生する電圧をも表すものする。
【００５１】
図１に示されるように、入力端子Ｋに外部ドライバ回路６から外部クロック信号が供給される。入力された外部クロック信号Ｋは、ＯＤＴ回路１０を介して比較器５０の一方の入力端子に入力される。外部ドライバ回路６から入力端子Ｋに供給される外部クロック信号Ｋは、例えば、ＨＳＴＬ（Ｈｉｇｈ  Ｓｐｅｅｄ  Ｔｒａｎｓｃｅｉｖｅｒ  Ｌｏｇｉｃ）レベルの信号であり、振幅が比較的小さい。そのため、比較回路５０によって、当該外部クロック信号Ｋの電圧レベルと基準電圧ＶＲＥＦの電圧レベルとを比較し、その比較結果を出力することで、小さい振幅の外部クロック信号Ｋから大きな振幅（ＶＤＤＱ−ＧＮＤ）の内部クロック信号ｉｎｔＣＬＫを生成することができる。これにより、外部クロック信号Ｋの同相ノイズを低減しつつ、外部クロック信号Ｋの高速伝送を可能とする。基準電圧ＶＲＥＦは、例えば、１／２ＶＤＤＱとなる電圧であって、外部抵抗Ｒによって電源電圧ＶＤＤＱを分圧することにより生成される。
【００５２】
外部クロック信号Ｋは、比較的高い周波数の信号であり、例えば５００ＭＨｚ以上の周波数の信号である。そのため、入力端子Ｋにおける信号の反射等を抑えるため、外部クロック信号Ｋを伝播する外部の伝送路のインピーダンスと整合させる必要がある。そこで、半導体装置１は入力端子Ｋに接続されるＯＤＴ回路１０を備える。詳細は後述するが、ＯＤＴ回路１０は、内部クロック信号ｉｎｔＣＬＫの生成に適した信号レベルの外部クロック信号Ｋが比較器５０に伝播されるように終端抵抗の抵抗値が調整される。例えば、比較器５０に入力される外部クロック信号Ｋが、基準電圧ＶＲＥＦを略中心とする振幅の信号となるように抵抗値が調整される。これにより、内部クロック信号ｉｎｔＣＬＫは、外部クロック信号Ｋの周期と略等しい周期であって、ハイレベルがＶＤＤＱレベルであり、ローレベルがＧＮＤレベルの信号となる。内部クロック信号ｉｎｔＣＬＫは、コアロジック回路６０や制御部２０等に供給される。
【００５３】
リセット回路４０は、電源電圧ＶＤＤＩを監視し、リセット信号ｒｓｔを生成する。例えば、電源ＶＤＤＩの投入直後に一定期間リセット信号ｒｓｔをハイレベルにする。
【００５４】
ＯＤＴ回路１０は、ノードＫのインピーダンスを変更可能にするため、ノードＫに接続される複数の抵抗の接続が切り替え可能に構成される。ＯＤＴ回路は、例えばテブナン終端を構成する終端回路であって、プルアップ（ｐｕｌｌ−ｕｐ）抵抗ＲＰ０〜ＲＰ７、プルダウン（ｐｕｌｌ−ｄｏｗｎ）抵抗ＲＮ０〜ＲＮ７、ＰＭＯＳトランジスタＭＰ０〜ＭＰ７、及びＮＭＯＳトランジスタＭＮ０〜ＭＮ７を備える。具体的には、複数のプルアップ抵抗ＲＰ０〜ＲＰ７の一端が夫々ノードＫに接続され、プルアップ抵抗ＲＰ０〜ＲＰ７の他端が対応するＰＭＯＳトランジスタＭＰ０〜ＭＰ７のドレイン側に接続され、ＰＭＯＳトランジスタＭＰ０〜ＭＰ７のソース側が電源ノードＶＤＤＱに接続される。また、複数のプルダウン抵抗ＲＮ０〜ＲＮ７の一端が夫々ノードＫに接続され、プルダウン抵抗ＲＮ０〜ＲＮ７の他端が対応するＮＭＯＳトランジスタＭＮ０〜ＭＮ７のドレイン側に接続され、ＮＭＯＳトランジスタＭＮ０〜ＭＮ７のソース側がグラウンドノードＧＮＤに接続される。ＰＭＯＳトランジスタＭＰ０〜ＭＰ７及びＮＭＯＳトランジスタＭＮ０〜ＭＮ７は、スイッチとして機能し、制御部２０から供給されるインピーダンスコードによってオン・オフが制御されることにより、ノードＫのプルアップ抵抗値及びプルダウン抵抗値が調整される。前述の図１６と同様に、前記インピーダンスコードのうち、ＰチャネルＭＯＳトランジスタＭＰ０〜ＭＰ７のゲートを制御するＰ側インピーダンスコードをｐｃｏｄｅと表し、ＮチャネルＭＯＳトランジスタＭＮ０〜ＭＮ７のゲートを制御するＮ側インピーダンスコードをｎｃｏｄｅと表す。図１では、８個のＰＭＯＳトランジスタ及び８個のＮＭＯＳトランジスタを制御するため、Ｐ側インピーダンスコードｐｃｏｄｅ及びＮ側インピーダンスコードｎｃｏｄｅのビット数を８ビットとしている。なお、図１では、８個のプルアップ抵抗及び８個のプルダウン抵抗の接続と遮断を制御するために８個のＰＭＯＳトランジスタ及び８個のＮＭＯＳトランジスタを備えるＯＤＴ回路を例示しているが、これに限られず、インピーダンスの調整幅によって、抵抗及びＭＯＳトランジスタの数を任意に変更してもよい。
【００５５】
制御部２０は、ＯＤＴ回路１０のインピーダンスを調整するための回路である。制御部２０は、目標とするインピーダンスになるように、ＯＤＴ回路１０のプルアップ抵抗及びプルダウン抵抗を調整する。前記目標とするインピーダンスは、入力端子ＺＱに接続される外付け抵抗ＲＱに基づいて決定される。例えば、制御部２０は、ＯＤＴ回路１０のプルアップ抵抗及びプルダウン抵抗が、外付け抵抗ＲＱと同一の抵抗値になるように調整する。
【００５６】
具体的に、制御部２０は、インピーダンス検出回路（ＲＥＰ）２０１、インピーダンスコード生成回路（ＩＭＰＣ＿ＧＥＮ）２０２、インピーダンスコード保持レジスタ２０５、カウンタ（ＣＴＲ）２０３、クロック信号異常検出回路２０４、及びＯＲ回路２０６を含んで構成される。
【００５７】
インピーダンス検出回路２０１は、入力端子ＺＱに接続された抵抗ＲＱの抵抗値を検出するための回路である。具体的には、インピーダンス検出回路２０１は、入力端子ＺＱに接続された抵抗ＲＱに基づいて生成された電圧と基準電圧ＺＲＥＦとを比較し、比較結果ｎ＿ｕｐ，ｐ＿ｄｎを出力する。
【００５８】
図２に、インピーダンス検出回路２０１の回路構成の一例を示す。インピーダンス検出回路２０１は、ＯＤＴ回路１０のプルアップ側の抵抗値を決定するためのレプリカ回路２０１１と、ＯＤＴ回路１０のプルダウン側の抵抗値を決定するためのレプリカ回路２０１２とから構成される。
【００５９】
レプリカ回路２０１１において、複数のプルアップ抵抗ＲＰＲ０〜ＲＰＲ７の夫々の一端は、入力端子ＺＱが接続されるノードＺＱに接続され、プルアップ抵抗ＲＰＲ０〜ＲＰＲ７の夫々の他端は、対応するＰＭＯＳトランジスタＭＰＲ０〜ＭＰＲ７のドレイン側に接続される。ＰＭＯＳトランジスタＭＰＲ０〜ＭＰＲ７のソース側は電源ラインＶＤＤＱに接続される。プルアップ抵抗ＲＰＲ０〜ＲＰＲ７は、例えば、ＯＤＴ回路１０のプルアップ抵抗ＲＰ０〜ＲＰ７と同一の抵抗値とされる。
【００６０】
インピーダンスコード生成回路２０２から出力された制御信号ｐｒｅ＿ｐｃｏｄｅが、レベル変換回路２０１３によって反転されるとともに、電源電圧ＶＤＤＱレベルの信号に変換されて、ＰＭＯＳトランジスタＭＰＲ０〜ＭＰＲ７のゲートに供給される。制御信号ｐｒｅ＿ｐｃｏｄｅは、レプリカ回路２０１１のプルアップ抵抗値を決めるためのインピーダンスコードであり、ＰＭＯＳトランジスタＭＰＲ０〜ＭＰＲ７のオン・オフを制御するゲート駆動信号である。制御信号ｐｒｅ＿ｐｃｏｄｅは、例えば、ＰＭＯＳトランジスタＭＰＲ０〜ＭＰＲ７のゲート数に応じたビット数の信号であり、図２の場合、８ビットの信号である。制御信号ｐｒｅ＿ｐｃｏｄｅにより、ＰＭＯＳトランジスタＭＰＲ０〜ＭＰＲ７のオン・オフが制御されることにより、ノードＺＱのプルアップ抵抗の抵抗値が調整される。
【００６１】
比較器（ＣＭＰ）２０１４は、ノードＺＱの電圧と基準電圧生成回路３０によって生成された基準電圧ＺＲＥＦとを比較し、比較結果ｐ＿ｄｎを出力する。基準電圧ＺＲＥＦは、例えば、１／２ＶＤＤＱとなる電圧であり、抵抗分圧によって生成される。ノードＺＱの電圧は、ノードＺＱのプルアップ抵抗と、外付け抵抗ＲＱとの抵抗分圧によって決定される。したがって、例えば、ノードＺＱのプルアップ抵抗が外付け抵抗ＲＱより小さい場合には、ノードＺＱの電圧は１／２ＶＤＤＱよりも高くなる。
【００６２】
比較器２０１４による比較結果ｐ＿ｄｎは、インピーダンスコード生成回路２０２に供給される。インピーダンスコード生成回路２０２は、内部クロック信号ｉｎｔＣＬＫに同期して動作し、比較結果ｐ＿ｄｎ、ｎ＿ｕｐに基づいて制御信号ｐｒｅ＿ｐｃｏｄｅ、ｐｒｅ＿ｎｃｏｄｅを生成する。具体的には、インピーダンスコード生成回路２０２は、比較結果ｐ＿ｄｎに応じて、制御信号ｐｒｅ＿ｐｃｏｄｅを内部クロック信号ｉｎｔＣＬＫに同期して随時更新することで、ノードＺＱが基準電圧ＺＲＥＦと同電位になるまで制御信号ｐｒｅ＿ｐｃｏｄｅの更新を繰り返し行う。例えば、比較結果ｐ＿ｄｎがハイ（Ｈｉｇｈ）の場合には、インピーダンスコード生成回路２０２は、次のコード値の更新時（アップデート時）に、制御信号ｐｒｅ＿ｐｃｏｄｅを現状のコード値から“−１”したコード値に変更する。また、比較結果ｐ＿ｄｎがロー（Ｌｏｗ）の場合には、インピーダンスコード生成回路２０２は、次のコード値の更新時（コードアップデート時）に、制御信号ｐｒｅ＿ｐｃｏｄｅを現状のコード値から“＋１”したコード値に変更する。これらの処理は、ノードＺＱが基準電圧ＺＲＥＦと同電位になるまで繰り返し行われる。これにより、ノードＺＱのプルアップ抵抗の抵抗値が外付け抵抗ＲＱと略同一の抵抗値になるような制御信号ｐｒｅ＿ｐｃｏｄｅが生成される。
【００６３】
レプリカ回路２０１２は、電源ノードＶＤＤＱとグラウンドノードＧＮＤとの間に、ＯＤＴ回路１０と同様の回路構成の抵抗群とＭＯＳトランジスタ群を備える。
【００６４】
レプリカ回路２０１２の電源ノードＶＤＤＱ側の具体的な回路構成は以下である。複数のプルアップ抵抗ＲＮＰＲ０〜ＲＮＰＲ７の夫々の一端がノードＺＮに接続され、プルアップ抵抗ＲＮＰＲ０〜ＲＮＰＲ７の他端が、対応するＰＭＯＳトランジスタＭＮＰＲ０〜ＭＮＰＲ７のドレイン側に接続され、ＰＭＯＳトランジスタＭＮＰＲ０〜ＭＮＰＲ７のソース側が電源ラインＶＤＤＱに接続される。プルアップ抵抗ＲＮＰＲ０〜ＲＮＰＲ７は、例えば、レプリカ回路２０１１のプルアップ抵抗ＲＰＲ０〜ＲＰＲ７と同一の抵抗値とされる。すなわち、ＯＤＴ回路１０のプルアップ抵抗ＲＰ０〜ＲＰ７と同一の抵抗値とされる。レプリカ回路２０１１と同様に、インピーダンスコード生成回路２０２から出力された制御信号ｐｒｅ＿ｐｃｏｄｅに基づいてＰＭＯＳトランジスタＭＰＲ０〜ＭＰＲ７のオン・オフが制御されることにより、ノードＺＮのプルアップ側の抵抗値が調整される。
【００６５】
レプリカ回路２０１２のグラウンドノードＧＮＤ側の具体的な回路構成は以下である。複数のプルダウン抵抗ＲＮＮＲ０〜ＲＮＮＲ７の夫々の一端がノードＺＮに並列に接続され、プルダウン抵抗ＲＮＮＲ０〜ＲＮＮＲ７の夫々の他端が対応するＮＭＯＳトランジスタＭＮＮＲ０〜ＭＮＮＲ７のドレイン側に接続され、ＮＭＯＳトランジスタＭＮＮＲ０〜ＭＮＮＲ７のソース側がグラウンドラインＧＮＤに接続される。プルダウン抵抗ＲＮＮＲ０〜ＲＮＮＲ７は、例えば、ＯＤＴ回路１０のプルダウン抵抗ＲＮ０〜ＲＮ７と同一の抵抗値とされる。
【００６６】
インピーダンスコード生成回路２０２から出力された制御信号ｐｒｅ＿ｎｃｏｄｅ［７：０］がレベル変換回路２０１６によって電源電圧ＶＤＤＱレベルの信号に変換されて、ＮＭＯＳトランジスタＭＮＮＲ０〜ＭＮＮＲ７のゲートに供給される。制御信号ｐｒｅ＿ｎｃｏｄｅは、レプリカ回路２０１２のプルダウン抵抗値を決めるためのインピーダンスコードである。これにより、ＮＭＯＳトランジスタＭＮＮＲ０〜ＭＮＮＲ７のオン・オフが制御されることにより、ノードＺＮのプルダウン側の抵抗値が調整される。
【００６７】
比較器（ＣＭＰ）２０１５は、ノードＺＮの電圧と基準電圧ＺＲＥＦとを比較し、比較結果ｎ＿ｕｐを出力する。ノードＺＮの電圧は、ノードＺＮのプルアップ抵抗とプルダウン抵抗との抵抗分圧によって決定される。したがって、例えば、ノードＺＮのプルアップ抵抗がプルダウン抵抗より小さい場合には、ノードＺＱの電圧はＺＶＲＥＦ（＝１／２ＶＤＤＱ）よりも高くなる。
【００６８】
比較器２０１５による比較結果ｎ＿ｕｐは、インピーダンスコード生成回路２０２に供給される。インピーダンスコード生成回路２０２は、比較結果ｎ＿ｄｎに応じて、制御信号ｐｒｅ＿ｎｃｏｄｅを内部クロック信号ｉｎｔＣＬＫに同期して随時更新することで、ノードＺＮが基準電圧ＺＲＥＦと同電位になるまで制御信号ｐｒｅ＿ｎｃｏｄｅの更新を繰り返し行う。例えば、インピーダンスコード生成回路２０２は、比較結果ｎ＿ｕｐがハイ（Ｈｉｇｈ）の場合には制御信号ｐｒｅ＿ｎｃｏｄｅを現状のコード値から“＋１”したコード値に変更し、比較結果ｎ＿ｕｐがロー（Ｌｏｗ）の場合には制御信号ｐｒｅ＿ｎｃｏｄｅを現状のコード値から“−１”したコード値に変更する。これにより、最終的に、ノードＺＮのプルダウン側の抵抗値が、ノードＺＮのプルアップ側の抵抗値と同一の抵抗値となるように調整される。すなわち、ノードＺＮのプルダウン抵抗が外付け抵抗ＲＱと略同一の抵抗値になるような制御信号ｐｒｅ＿ｎｃｏｄｅが生成される。
【００６９】
インピーダンスコード生成部２０２は、信号ｒｓｔｏｄｔをリセット信号として入力する。信号ｒｓｔｏｄｔは、リセット回路４０から出力されるリセット信号ｒｓｔとクロック信号異常検出回路２０４から出力される検出信号ｓｔｏｐｃとの論理和を取った信号である。例えば、インピーダンスコード生成部２０２は、信号ｒｓｔｏｄｔの信号レベルがハイ（Ｈｉｇｈ）レベルになったら、制御信号ｐｒｅ＿ｐｃｏｄｅ、ｎｒｅ＿ｐｃｏｄｅのコード値を初期値に再設定する。前記初期値は、比較器５０に入力される外部クロック信号Ｋのハイレベルの電圧が基準電圧ＶＲＥＦよりも大きく、且つ外部クロック信号Ｋのローレベルの電圧が基準電圧ＶＲＥＦよりも小さくなるようなコード値である。例えば、ＯＤＴ回路１０のインピーダンスが設定可能なインピーダンス範囲の中間値となるようなコード値を初期値とする。ここでは、一例として、制御信号ｐｒｅ＿ｐｃｏｄｅ、ｐｒｅ＿ｎｃｏｄｅの初期値を、制御信号ｐｒｅ＿ｐｃｏｄｅ、ｐｒｅ＿ｎｃｏｄｅとして設定可能な８ビットの値の中間値、すなわち、“８’ｂ１０００００００”とする。
【００７０】
インピーダンスコード生成部２０２によって生成された制御信号ｐｒｅ＿ｐｃｏｄｅ、ｐｒｅ＿ｎｃｏｄｅは、インピーダンス検出回路２０１に出力されるとともに、インピーダンスコード保持レジスタ２０５にも出力される。インピーダンスコード保持レジスタ２０５は、Ｐ側の制御信号ｐｒｅ＿ｐｃｏｄｅを保持するフリップフロップ（ＦＦ）回路２０５１と、Ｎ側の制御信号ｐｒｅ＿ｎｃｏｄｅを保持するＦＦ回路２０５２と、から構成される。ＦＦ回路２０５１は、例えば、カウンタ２０３によって内部クロック信号ｉｎｔＣＬＫを２５６分周したｓｔｒｂ信号をクロック入力とし、信号ｒｓｔｏｄｔをリセット信号として入力する。これにより、ＦＦ回路２０５１は、２５６サイクル毎に制御信号ｐｒｅ＿ｐｃｏｄｅの値を取り込む。取り込んだ値は、Ｐ側インピーダンスコードｐｃｏｄｅ［７：０］としてＯＤＴ回路１０に出力される。ＦＦ回路２０５２も同様に、２５６サイクル毎に制御信号ｐｒｅ＿ｎｃｏｄｅ［７：０］を取り込み、取り込んだ値をＮ側インピーダンスコードｎｃｏｄｅ［７：０］としてＯＤＴ回路１０に出力する。すなわち、外付け抵抗ＲＱと同一の抵抗値になるように調整された制御信号ｐｒｅ＿ｐｃｏｄｅ，ｐｒｅ＿ｎｃｏｄｅがインピーダンスコードｐｃｏｄｅ，ｎｃｏｄｅとして、ＯＤＴ回路１０に供給される。これにより、ＯＤＴ回路１０のプルアップ抵抗とプルダウン抵抗が、外付け抵抗ＲＱと同一の抵抗値になるように調整される。なお、Ｐ側インピーダンスコードｐｃｏｄｅ及びＮ側インピーダンスコードｎｃｏｄｅを更新する時間間隔は、２５６サイクルに限られず、任意に設定可能である。
【００７１】
クロック信号異常検出回路２０４は、内部クロック信号ｉｎｔＣＬＫを監視し、内部クロック信号ｉｎｔＣＬＫの異常を検出したら、検出信号ｓｔｏｐｃの信号レベルを、例えばローレベルからハイレベルに切り替える。本実施の形態において、内部クロック信号ｉｎｔＣＬＫの異常とは、例えば、内部クロック信号ｉｎｔＣＬＫが期待されるローベル期間よりも長い所定期間（ｔｄ）ローレベルになること、及び、内部クロック信号ｉｎｔＣＬＫが期待されるハイベル期間よりも長い所定期間（ｔｄ）ハイレベルになることをいう。
【００７２】
図３にクロック信号異常検出回路２０４の回路構成の一例を示す。同図に示されるように、クロック信号異常検出回路２０４は２つの検出部を有する。１つの検出部は、ローレベル検出部２０４０であり、内部クロック信号ｉｎｔＣＬＫが期待されるローベル期間よりも長い期間ローレベルとなったことを検出する。ローベル検出回路２０４０は、遅延回路１０１を含んで構成される。遅延回路１０１は、内部クロック信号ｉｎｔＣＬＫを入力し、内部クロック信号ｉｎｔＣＬＫが所定期間ｔｄ以上ローレベルとなったら、出力信号ＬＦＩＸをハイレベルからローレベルに切り替える。前記所定期間ｔｄは、ノードＮ１の電圧が次段のインバータ（ＩＮＶ）の閾値電圧を上回るまでの時間であり、図３における抵抗Ｒ１と容量Ｃ１とに基づく時定数によって決定される。ここで、抵抗Ｒ１は抵抗Ｒ２よりも十分大きい抵抗値とされる。これにより、ノードＮ１の電圧降下に要する時間よりも電圧上昇に要する時間の方が長くなる。ローベル検出回路２０４０の出力信号ＬＦＩＸはＮＡＮＤ回路１００に入力され、ＮＡＮＤ回路１００の出力が検出信号ｓｔｏｐｃとなる。
【００７３】
図４は、ローレベル検出部２０４０の動作を例示するタイミングチャートである。
【００７４】
同図に示されるように、例えば、時刻ｔ４０において内部クロック信号ｉｎｔＣＬＫがローレベルになると、ノードＮ１の電圧が上昇する。そして、抵抗Ｒ１と容量Ｃ１との時定数に基づいて決定される所定時間ｔｄが経過した時刻ｔ４１において、出力信号ＬＦＩＸがハイレベルからローレベルに切り替わる。これにより、検出信号ｓｔｏｐｃの信号レベルがローレベルからハイレベルに切り替わる。その後、時刻ｔ４２において再び内部クロック信号ｉｎｔＣＬＫが正常に出力されると、抵抗Ｒ２と容量Ｃ１との時定数に基づいて決定される時間が経過した時刻ｔ４３において、出力信号ＬＦＩＸがローレベルからハイレベルに切り替わり、検出信号ｓｔｏｐｃの信号レベルがハイレベルからローレベルに切り替わる。
【００７５】
クロック信号異常検出回路２０４におけるもう１つの検出部は、ハイレベル検出部２０４１であり、内部クロック信号ｉｎｔＣＬＫが期待されるハイレベル期間よりも長い期間ハイレベルとなったことを検出する。ハイレベル検出回路２０４１は、インバータ１０４と、遅延回路１０１を含んで構成される。内部クロック信号ｉｎｔＣＬＫがインバータ１０４に入力され、インバータ１０４によって反転された信号が後段の遅延回路１０１の入力となる。以降の動作は、ローレベル検出回路２０４０の遅延回路１０１と同様である。ハイベル検出回路２０４１の出力信号ＨＦＩＸは、出力信号ＬＦＩＸと同様に、ＮＡＮＤ回路１００に入力される。
【００７６】
検出信号ｓｔｏｐｃは、リセット回路４０からのリセット信号ｒｓｔともにＯＲ回路２０６に入力され、ＯＲ回路２０６の出力信号ｒｓｔｏｄｔが、インピーダンスコード生成回路２０２、インピーダンスコード保持レジスタ２０５、及びカウンタ２０３のリセット信号となる。したがって、Ｐ側インピーダンスコードｐｃｏｄｅ、Ｎ側インピーダンスｎｃｏｄｅ、及び制御信号ｐｒｅ＿ｐｃｏｄｅ、ｐｒｅ＿ｎｃｏｄｅは、電源投入直後のみならず、ＯＤＴ回路１０のインピーダンスコードが異常となり、内部クロック信号ｉｎｔＣＬＫがハイレベル又はローレベルに固定となった場合にもリセットされる。
【００７７】
図５は、ＯＤＴ回路１０のインピーダンス調整方法の流れの一例を示すフローチャートである。
【００７８】
先ず、半導体装置１に電源電圧ＶＤＤＩ、ＶＤＤＱが投入される（Ｓ１０１）。電源投入後、リセット信号ｒｓｔが有効にされると、インピーダンスコード生成回路２０２が、制御信号ｐｒｅ＿ｐｃｏｄｅ，ｐｒｅ＿ｎｃｏｄｅとして、初期値“８’ｂ１０００００００”を設定する（Ｓ１０２）。その後外部クロック信号Ｋが入力されて、内部クロック信号ｉｎｔＣＬＫが生成されると、インピーダンスコード生成回路２０２がｐｒｅ＿ｐｃｏｄｅ，ｐｒｅ＿ｎｃｏｄｅの更新を開始する（Ｓ１０３）。そして、カウンタ２０３は内部クロック信号ｉｎｔＣＬＫのカウントを開始する（Ｓ１０４）。カウンタ２０３のカウント値が、２５６サイクルのＮ（Ｎは１以上の整数）倍の値となったら、インピーダンスコード生成回路２０２は、制御信号ｐｃｏｄｅ、ｎｃｏｄｅの値を夫々、ｐｒｅ＿ｐｃｏｄｅ、ｐｒｅ＿ｎｃｏｄｅの値に更新する（Ｓ１０４）。これにより、ＯＤＴ回路１０の抵抗値が更新され、入力端子Ｋのインピーダンス整合が行われる。
【００７９】
その間、クロック信号異常検出回路２０４は、内部クロック信号ｉｎｔＣＬＫが所定期間ｔｄ以上ローレベル又はハイレベルになったか否かを判別する（Ｓ１０６）。内部クロック信号ｉｎｔＣＬＫが正常に出力されている場合には、ステップ１０３に移行し、制御信号ｐｒｅ＿ｐｃｏｄｅ，ｐｒｅ＿ｎｃｏｄｅの更新を継続する。一方、内部クロック信号ｉｎｔＣＬＫが所定期間ｔｄ以上ローレベル又はハイレベルになった場合には、クロック信号異常検出回路２０４は検出信号ｓｔｏｐｃをローレベルからハイレベルに切り替える（Ｓ１０７）。これにより、インピーダンスコード生成回路２０２等がリセットされ、ステップ１０２に移行する。
【００８０】
図６は、半導体装置１における各ノードの電圧変化の一例を示すタイミングチャートである。
【００８１】
先ず、時刻ｔ６０において電源電圧ＶＤＤＩが投入されると、リセット回路４０からのリセット信号ｒｓｔがハイレベルにされることにより、リセット信号ｒｓｔｏｄｔがハイレベルになる。これにより、インピーダンスコード生成回路２０２等がリセットされ、インピーダンスコード生成回路２０２は、Ｐ側のインピーダンスコードｐｃｏｄｅとＮ側のインピーダンスコードｎｃｏｄｅとして、初期値（ｉｎｉｔｉａｌ  ｃｏｄｅ）“８’１０００００００“を設定する。このとき、外部クロック信号Ｋを生成する外部ドライバ回路６が非活性状態（出力が高インピーダンス（Ｈｉ−Ｚ）状態）である場合とする。
【００８２】
その後、時刻ｔ６１において電源電圧ＶＤＤＱが供給されるとともに、基準電圧ＶＲＥＦが供給される。電源電圧ＶＤＤＱが上昇している間、外部ドライバ回路６が非活性状態であると、入力端子Ｋに接続されるノードＫの電圧は、基準電圧ＶＲＥＦに近接した電圧となる。この状態において、何らかの原因でグラウンドノイズが発生し、入力端子Ｋに接続されるノードにグラウンドノイズが重畳されると、前述したように、比較器５０における２つの入力端子の電圧の大小関係が反転し、正常でない内部クロック信号ｉｎｔＣＬＫが発生する。この正常でない内部クロック信号ｉｎｔＣＬＫは、インピーダンスコード生成回路２０２の動作クロックとして供給されるため、インピーダンスコード生成回路２０２はインピーダンスコードの更新を開始する。しかしながら、電源電圧ＶＤＤＱや基準電圧ＶＲＥＦが十分に立ち上がっておらず、また、クロック信号ＣＬＫのパルス幅及び周期が正常ではない状態では、不正なインピーダンスコードをＯＤＴ回路１０に設定してしまう虞がある。図６では、不正なインピーダンスコードの一例として、プルアップ抵抗が最大となるＰ側インピーダンスコードｐｃｏｄｅ“１１１１１１１１”が設定され、プルダウン抵抗が最小となるＮ側インピーダンスコードｎｃｏｄｅ“００００００００”が設定された場合が示されている。この場合、入力端子Ｋのプルダウン抵抗がプルアップ抵抗よりも十分小さい抵抗値となってしまうため、比較器５０に伝播される外部クロック信号Ｋの信号レベルが低くなる。例えば、外部クロック信号Ｋのハイレベルの電圧が基準電圧ＶＲＥＦを下回ることになる。一旦このような状態に陥ると、比較器５２の２つの入力端子の電圧の大小関係が変化しないことになり、時刻ｔ６２において内部クロック信号ＣＬＫはローレベルに固定される。内部クロック信号ｉｎｔＣＬＫがローレベルに固定されてからｔｄ時間経過した時刻ｔ６３において、クロック信号異常検出回路２０４は、内部クロック信号ｉｎｔＣＬＫの異常を検出して、検出信号ｓｔｏｐｃをローレベルからハイレベルに切り替える。その結果、リセット信号ｒｓｔｏｄｔがハイレベルとなり、インピーダンスコード生成回路２０２等がリセットされ、Ｐ側のインピーダンスコードｐｃｏｄｅとＮ側のインピーダンスコードｎｃｏｄｅが、初期値（ｉｎｉｔｉａｌ  ｃｏｄｅ）“８’１０００００００“に再設定される。これにより、ノードＫのインピーダンスが異常な状態から脱することができるため、適正な信号レベルの外部クロック信号Ｋが比較回路５０に伝播され、内部クロック信号ｉｎｔＣＬＫが正常に出力される。その後、インピーダンスコード生成回路２０２によって、インピーダンスコードの更新が正常に行われ、外部抵抗ＲＱに基づくインピーダンスコードになるようにＯＤＴ回路１０の抵抗値が調整される。
【００８３】
前述した図１５の半導体装置８では、ＯＤＴ回路のインピーダンスの異常により内部クロック信号ＣＬＫがローレベル又はハイレベルに固定されてしまうと、デッドロック状態となり、電源電圧の再投入等によらなければ復帰できなかった。しかしながら、本実施の形態に係る半導体装置１によれば、ＯＤＴ回路のインピーダンスの異常により内部クロック信号ＣＬＫがローレベル又はハイレベルに固定されたとしても、その状態が一定期間継続した場合には、インピーダンスコードがリセットされるため、ＯＤＴ回路のインピーダンスの異常状態から脱することができる。これにより、より安定したＯＤＴ回路を実現することができる。
【００８４】
≪実施の形態２≫
図７に、実施の形態２に係るインピーダンスが変更可能なＯＤＴ回路を適用した半導体装置のブロック図を例示する。同図において、実施の形態１に係る半導体装置１と同様の構成要素には同一の符号を付して、その詳細な説明を省略する。
【００８５】
実施の形態２では、内部クロック信号ｉｎｔＣＬＫが異常であると判断するための、内部クロック信号ｉｎｔＣＬＫがハイレベル又はローレベルに固定される所定時間が選択可能に構成される。具体的には、半導体装置２は、クロック信号異常検出回路２０４の代わりに、クロック信号異常検出回路２１４を備える。
【００８６】
図８にクロック信号異常検出回路２１４の回路構成の一例を示す。同図に示されるクロック信号異常検出回路２１４は、２つの検出部を有する。クロック信号異常検出回路２１４における１つの検出部は、ローレベル検出部２１４０であり、内部クロック信号ｉｎｔＣＬＫが期待されるローベル期間よりも長い期間ローレベルとなったことを検出する。具体的には、ローベル検出回路２１４２は、複数の遅延回路１０１＿Ａ〜１０１＿Ｃとセレクタ１０２を含んで構成される。遅延回路１０１＿Ａ〜１０１＿Ｃの回路構成は、前述の遅延回路１０１と同様である。遅延回路１０１＿Ａ〜１０１＿Ｃは複数個直列に接続され、夫々の遅延回路１０１の出力がセレクタ１０２に入力される。具体的には、遅延回路１０１＿Ａは、内部クロック信号ｉｎｔＣＬＫを入力し、遅延回路１０１＿Ｂは、遅延回路１０１＿Ａの出力信号ＳＥＬ０１Ｌを入力し、遅延回路１０１＿Ｃは、遅延回路１０１＿Ｂの出力信号ＳＥＬ００Ｌを入力する。これにより、内部クロック信号ｉｎｔＣＬＫがローレベルに切り替わってから一定時間経過後に信号レベルが切り替わる信号を、３種類生成することができる。セレクタ１０２は、上記３種類の信号のうち１つの信号を指示する選択信号ＳＥＬ［１：０］に基づいて、対応する遅延回路１０１＿Ａ〜１０１＿Ｃの出力信号を選択して出力する。例えば、選択信号ＳＥＬ［１：０］＝２’ｂ００の場合には、遅延回路１０１＿Ｂの出力が選択され、出力信号ＬＦＩＸのパルス幅はｔＬｏｗ−２ｔｄとなる。この場合、内部クロック信号ｉｎｔＣＬＫのローレベルの期間が２ｔｄ以上となると、検出信号ｓｔｏｐｃがハイレベルとなる。また、選択信号ＳＥＬ［１：０］＝２’ｂ０１の場合には、遅延回路１０１＿Ａの出力が選択され、内部クロック信号ｉｎｔＣＬＫのローレベルの期間がｔｄ以上となると、検出信号ｓｔｏｐｃがハイレベルとなる。更に、選択信号ＳＥＬ［１：０］＝２’ｂ１０の場合には、遅延回路１０１＿Ｃの出力が選択され、内部クロック信号ｉｎｔＣＬＫのローレベルの期間が３ｔｄ以上となると、検出信号ｓｔｏｐｃがハイレベルとなる。なお、選択信号ＳＥＬは、外部から入力しても良いし、半導体装置２の内部に設けられたレジスタ等の値を入力しても良い。また、選択信号ＳＥＬを、ヒューズ（ＦＵＳＥ）やボンディングオプションで変更できるようにすれば、使用されるシステムにあわせた調整が可能となる。
【００８７】
図９にローレベル検出部２１４０の動作状態を表すタイミングチャートを例示する。同図において、時刻ｔ９０で内部クロック信号ｉｎｔＣＬＫがローレベルになると、遅延回路１０１＿ＡにおけるノードＮ１の電圧が上昇する。その後、時刻ｔ９１でノードＮ１の電圧がインバータの閾値電圧に到達すると、遅延回路１０１＿Ａの出力信号ＳＥＬ０１Ｌの信号レベルがハイレベルからローレベルに切り替わる。これにより、遅延回路１０１＿ＢにおけるノードＮ１の電圧上昇が開始される。そして、時刻ｔ９２で当該ノードＮ１の電圧がインバータの閾値電圧に到達すると、遅延回路１０１＿Ｂの出力信号ＳＥＬ００Ｌの信号レベルがハイレベルからローレベルに切り替わる。これにより、遅延回路１０１＿ＣにおけるノードＮ１の電圧上昇が開始される。そして、時刻ｔ９３で当該ノードＮ１の電圧がインバータの閾値電圧に到達すると、遅延回路１０１＿Ｃの出力信号ＳＥＬ１０Ｌの信号レベルがハイレベルからローレベルに切り替わる。前述したように、セレクタ１０２は、選択信号ＳＥＬに基づいて、遅延回路１０１＿Ａ〜１０１＿Ｃのいずれかの出力信号を選択する。図９では、例えば選択信号ＳＥＬ［１：０］＝２’ｂ００であり、遅延回路１０１＿Ｂの出力信号ＳＥＬ００Ｌが選択されて、ローレベル検出部２１４０の出力信号ＬＦＩＸとして出力される場合が例示される。これにより、検出信号ｓｔｏｐｃは、時刻ｔ９２でハイレベルとなり、クロック信号が正常に戻った時刻ｔ９４でローレベルとなる。
【００８８】
クロック信号異常検出回路２１４におけるもう１つの検出部は、ハイレベル検出部２１４１であり、内部クロック信号ｉｎｔＣＬＫが期待されるハイレベル期間よりも長い期間ハイレベルとなったことを検出する。具体的には、図８に示されるように、ハイレベル検出回路２１４３は、インバータ１０４と、複数の遅延回路１０１＿Ｄ〜１０１＿Ｆと、セレクタ１０３とを含んで構成される。遅延回路１０１＿Ｄ〜１０１＿Ｆの回路構成は、前述の遅延回路１０１と同様である。内部クロック信号ｉｎｔＣＬＫがインバータ１０４に入力され、インバータの出力が遅延回路１０１＿Ｄの入力となる。その他の接続関係は、ローレベル検出部２１４０と同様である。
【００８９】
以上、実施の形態２に係る半導体装置２によれば、半導体装置１と同様に、より安定したＯＤＴ回路を実現することができる。また、内部クロック信号ｉｎｔＣＬＫが異常であると判断するための、内部クロック信号ｉｎｔＣＬＫがハイレベル又はローレベルに固定される所定時間を選択信号ＳＥＬによって選択することができるので、適用するシステムに合わせて容易に前記所定時間を調整することができる。
【００９０】
≪実施の形態３≫
図１０に、実施の形態３に係るインピーダンスが変更可能なＯＤＴ回路を適用した半導体装置のブロック図を例示する。同図において、半導体装置１、２と同様の構成要素には同一の符号を付して、その詳細な説明を省略する。
【００９１】
半導体装置１では内部クロック信号ｉｎｔＣＬＫの異常状態が検出されると、インピーダンスコードを初期値に再設定する。しかしながら、外部クロック信号Ｋを供給する外部ドライバ回路６のオン抵抗や電源電圧範囲等の条件によっては、外部クロック信号Ｋのパルスを比較器５０に伝播して内部クロック信号ｉｎｔＣＬＫを発生させることができるようなインピーダンスコードの初期値を見つけることが困難な場合がある。そこで、半導体装置３では、インピーダンス整合がなされていない初期状態において、より確実に内部クロック信号ｉｎｔＣＬＫを発生させるため、クロック信号の異常状態を検出してから一定期間は、入力端子Ｋが接続されるノードを高インピーダンス状態にする。具体的には、半導体装置３は、図１０に示されるように、インピーダンスコード保持レジスタ２０５とＯＤＴ回路１０との間にインピーダンスコード制御部２１０を設ける。
【００９２】
インピーダンスコード制御部２１０は、カウンタ２１０１と、２つのＡＮＤ回路２１０２、２１０３とを含んで構成される。カウンタ２１０１は、内部クロック信号ｉｎｔＣＬＫをカウントし、カウント値が所定のサイクル数となったら、出力信号ｈｚｏｄｔの信号レベルをローレベルからハイレベルに切り替える。カウント値は、リセット信号ｒｓｔｏｄｔによってリセット可能とされる。前記所定のサイクル数は、特に制限されないが、例えば１０２４サイクルとする。
【００９３】
出力信号ｈｚｏｄｔは、インピーダンスコード保持レジスタ２０５に保持されたコード値と共にＡＮＤ回路２１０２、２１０３に入力される。そして、ＡＮＤ回路２１０２の出力がＰ側インピーダンスｐｃｏｄｅとしてＰＭＯＳトランジスタＭＰ０〜ＭＰ７のゲートに入力され、ＡＮＤ回路２１０３の出力がＮ側インピーダンスｎｃｏｄｅとしてＮＭＯＳトランジスタＭＮ０〜ＭＮ７のゲートに入力される。したがって、出力信号ｈｚｏｄｔがローレベルである場合には、Ｐ側インピーダンスコードｐｃｏｄｅ及びＮ側インピーダンスコードｎｃｏｄｅは、インピーダンスコード保持レジスタ２０５に保持されたコード値によらず、“８’００００００００”となる。これにより、ＯＤＴ回路１０の電源ＶＤＤＱ側のＰＭＯＳトランジスタＭＰ０〜ＭＰ７はオフとなり、ＯＤＴ回路１０のグラウンドＧＮＤ側のＮＭＯＳトランジスタＭＰ０〜ＭＰ７はオフとなるため、ノードＫは高インピーダンス状態となる。仮に、この状態で外部クロック信号Ｋが入力端子Ｋに供給されると、外部クロック信号Ｋは、外部ドライバ回路６が出力する信号レベルのまま比較回路５０に伝播される。例えば、外部ドライバ回路６が出力する外部クロック信号ＫのハイレベルがＶＤＤＱであり、ローレベルがＧＮＤレベルである場合には、波形の品質は落ちるが、ハイレベルがＶＤＤＱ電位と同程度の電位であり、且つローレベルがＧＮＤ電位と同程度の電位となる信号が比較回路５０に入力される。これにより、基準電圧ＶＲＥＦを１／２ＶＤＤＱとすれば、比較回路５０の入力の大小関係が交互に切り替わることになるので、ハイレベルとローレベルが交互に切り替わる内部クロック信号ｉｎｔＣＬＫを生成することができる。
【００９４】
一方、出力信号ｈｚｏｄｔがハイレベルである場合には、インピーダンスコード保持レジスタ２０５の値がＰ側インピーダンスコードｐｃｏｄｅ及びＮ側インピーダンスコードｎｃｏｄｅとしてＯＤＴ回路１０に供給される。
【００９５】
図１１は、半導体装置３におけるＯＤＴ回路１０のインピーダンス調整方法の流れの一例を示すフローチャートである。
【００９６】
先ず、半導体装置１に電源電圧ＶＤＤＩ，ＶＤＤＱが投入される（Ｓ２０１）。電源投入後、リセット信号ｒｓｔが有効にされると、インピーダンスコード生成回路２０２が、制御信号ｐｒｅ＿ｐｃｏｄｅ，ｐｒｅ＿ｎｃｏｄｅに初期値“８’ｂ１０００００００”を設定する（Ｓ２０２）。また、リセット信号ｒｓｔに応じて、インピーダンスコード制御部２１０が出力信号ｈｚｏｄｔの信号レベルをローレベルすることで、ＯＤＴ回路１０のＭＯＳトランジスタＭＰ０〜ＭＰ７及びＭＮ０〜ＭＮ７が強制的にオフにされ、ノードＫが高インピーダンス状態（ＯＤＴ回路１０が強制オフ状態）となる（Ｓ２０３）。その後、外部クロック信号Ｋが入力されて、内部クロック信号ｉｎｔＣＬＫが生成されると、インピーダンスコード生成回路２０２が制御信号ｐｒｅ＿ｐｃｏｄｅ，ｐｒｅ＿ｎｃｏｄｅの更新を開始する（Ｓ２０４）。
【００９７】
その間、インピーダンスコード制御部２１０におけるカウンタ２１０１は、カウント値が１０２４サイクルになるまでカウントを続ける（Ｓ２０５）。カウンタ２１０１のカウント値が“１０２４”になったら、インピーダンスコード制御部２１０が出力信号ｈｚｏｄｔの信号レベルをローレベルからハイレベルに切り替えることで、ＯＤＴ回路１０の強制オフ状態が解除される（Ｓ２０６）。その後も、インピーダンスコード生成回路２０２による制御信号ｐｒｅ＿ｐｃｏｄｅ，ｐｒｅ＿ｐｃｏｄｅの更新が継続される（Ｓ２０７）。その間、カウンタ２０３は、カウント値が２５６サイクルのＮ（Ｎは１以上の整数）倍の値となるまで、内部クロック信号ｉｎｔＣＬＫのカウントを続ける（Ｓ２０８）。カウンタ２０３のカウント値が、２５６サイクルのＮ（Ｎは１以上の整数）倍の値となったら、インピーダンスコード生成回路２０２は、制御信号ｐｃｏｄｅ、ｎｃｏｄｅの値を夫々、ｐｒｅ＿ｐｃｏｄｅ、ｐｒｅ＿ｎｃｏｄｅの値に更新する（Ｓ２０９）。その間、クロック信号異常検出回路２０４は、内部クロック信号ｉｎｔＣＬＫが正常に出力されているか否かを監視する（Ｓ２１０）。内部クロック信号ｉｎｔＣＬＫが正常に出力されている場合には、ステップ２０７に移行し、ｐｒｅ＿ｐｃｏｄｅ，ｐｒｅ＿ｎｃｏｄｅの更新を継続する。一方、内部クロック信号ｉｎｔＣＬＫの異常が検出された場合には、クロック信号異常検出回路２０４は検出信号ｓｔｏｐｃをローレベルからハイレベルに切り替える（Ｓ２１１）。これにより、インピーダンスコード生成回路２０２等がリセットされ、ステップ２０２に移行する。
【００９８】
図１２は、半導体装置３における各ノードの電圧変化の一例を示すタイミングチャートである。
【００９９】
先ず、時刻ｔ１２０において電源電圧ＶＤＤＩが投入されると、リセット回路４０からのリセット信号ｒｓｔがハイレベルにされることに伴いリセット信号ｒｓｔｏｄｔがハイレベルとなり、インピーダンスコード生成回路２０２及びインピーダンスコード制御部２１０等がリセットされる。これにより、カウンタ２１０１の出力信号ｈｚｏｄｔがローレベルとなり、Ｐ側のインピーダンスコードｐｃｏｄｅ［７：０］とＮ側のインピーダンスコードｎｃｏｄｅ［７：０］は“８’００００００００“となる。また、インピーダンスコード生成回路２０２は、リセット信号ｒｓｔｏｄｔに応じて、制御信号ｐｒｅ＿ｐｃｏｄｅ，ｐｒｅ＿ｎｃｏｄｅとして初期値“８’１０００００００“を設定する。
【０１００】
その後、時刻ｔ１２１において電源電圧ＶＤＤＱが供給されるとともに、基準電圧ＶＲＥＦが供給される。電源電圧ＶＤＤＱが上昇している間、何らかの原因でグラウンドノイズが発生し、入力端子Ｋに接続されるノードにグラウンドノイズが重畳されると、前述したように、比較器５０における２つの入力端子の電圧の大小関係が反転し、正常でない内部クロック信号ｉｎｔＣＬＫが発生する。この正常でない内部クロック信号ｉｎｔＣＬＫは、インピーダンスコード生成回路２０２の動作クロックとして供給されるため、インピーダンスコード生成回路２０２はインピーダンスコードの更新を開始する。しかしながら、半導体装置３によれば、制御信号ｐｒｅ＿ｐｃｏｄｅ，ｐｒｅ＿ｎｃｏｄｅのコード値は更新されるが、インピーダンスコード制御部２１０により、ＯＤＴ回路１０が強制オフ状態となっているため、ＯＤＴ回路１０の抵抗値は更新されず、ノードＫは高インピーダンス状態が維持される。
【０１０１】
その後、時刻ｔ１２２で異常な内部クロック信号ｉｎｔＣＬＫの出力が停止すると、クロック信号異常検出回路２０４が計時を開始し、時刻ｔ１２２からｔｄ時間経過した時刻ｔ１２３において、クロック信号異常検出回路２０４は、検出信号ｓｔｏｐｃをローレベルからハイレベルに切り替える。これにより、リセット信号ｒｓｔｏｄｔがハイレベルとなり、インピーダンスコード生成回路２０２等がリセットされ、制御信号ｐｒｅ＿ｐｃｏｄｅ，ｐｒｅ＿ｎｃｏｄｅ［７：０］として、初期値“８’１０００００００“が再設定される。
【０１０２】
その後、外部ドライバ回路６が活性状態となり、外部クロック信号Ｋが供給されると、比較回路５０に入力される外部クロック信号Ｋの振幅は、略ＶＤＤＱとなる。これは、ＯＤＴ回路１０が強制オフ状態であることからノードＫが高インピーダンス状態であるため、外部ドライバ回路６が出力する信号レベルのまま外部クロック信号Ｋが伝播されるからである。そして、時刻ｔ１２４で、リセット状態が解除されると、インピーダンスコード制御部２１０におけるカウンタ２１０１がカウントを開始し、カウント値が“１０２４サイクル”となった時刻ｔ１２５で、カウンタ２１０１の出力信号ｈｚｏｄｔがハイレベルとなる。これにより、インピーダンスコード保持レジスタ２０６に保持されていたインピーダンスコードが、Ｐ側インピーダンスコードｐｃｏｄｅ及びＮ側インピーダンスコードｎｃｏｄｅとして、ＯＤＴ回路１０に供給される。
【０１０３】
以上、実施の形態３に係る半導体装置３によれば、内部クロック信号ｉｎｔＣＬＫが所定回数（上記例では１０２４サイクル）入力されるまでは、ＯＤＴ回路１０を強制オフ状態としてノードＫを高インピーダンス状態にするので、外部クロック信号Ｋは十分な振幅を持って比較器５０に伝播される。これにより、比較器５０は内部クロック信号ｉｎｔＣＬＫを出力することができ、内部クロック信号ｉｎｔＣＬＫを動作クロックとするインピーダンスコード生成部２０２は、目標とするインピーダンスコードを生成することができる。したがって、半導体装置１と同様に、より安定したＯＤＴ回路を実現することができる。
【０１０４】
≪実施の形態４≫
図１３に、実施の形態４に係るインピーダンスが変更可能なＯＤＴ回路を適用した半導体装置のブロック図を例示する。同図に示される半導体装置４において、半導体装置１乃至３と同様の構成要素には同一の符号を付して、その詳細な説明を省略する。
【０１０５】
半導体装置４は、例えば、ＱＤＲ（Ｑｕａｄ  Ｄａｔａ  Ｒａｔｅ）  ＳＲＡＭ（Ｄｏｕｂｌｅ  Ｄａｔａ  Ｒａｔｅ）であり、データ入力端子Ｄとデータ出力端子ＤＱが分離され、メモリアレイ（ＭＲＹ＿ＡＲＲ）６１３に対するデータの読み出しと書き込みを同時に行うことが可能とされる。
【０１０６】
半導体装置４は、入力端子として、入力アドレス端子ＳＡ、リード端子ＸＲ、ライト端子ＸＷ、バイトライト端子ＸＢＷ、データ入力端子Ｄ、入力端子Ｋ、入力端子ＶＲＥＦ、及び入力端子ＺＱと、出力端子としてデータ出力端子ＤＱを備える。なお図示されないが、半導体装置４は、半導体装置１乃至３と同様に、電源電圧ＶＤＤＱが供給される電源端子ＶＤＤＱ、電源電圧ＶＤＤＩが供給される電源端子ＶＤＤＩ、グラウンド電圧が供給されるグラウンド端子ＧＮＤ等も備える。入力アドレス端子ＳＡは、メモリアレイにおけるデータの書き込み先や読み出し先を指定するアドレス信号が入力される。リード端子ＸＲは、読み出しを指示するリード信号が入力される。ライト端子ＸＷは、書き込みを指示するライト信号が入力される。バイトライト端子ＸＢは、入力されたデータのうち特定のバイトをメモリアレイに書き込むことを指示するバイトライト信号が入力される。なお、リード信号、ライト信号、及びバイトライト信号はアクティブロー（ａｃｔｉｖｅ−Ｌｏｗ）の信号である。データ入力端子Ｄは、書き込み対象のデータが入力される。入力端子Ｋ、入力端子ＶＲＥＦ、入力端子ＺＱは、半導体装置１乃至３と同様である。
【０１０７】
データ入力端子Ｄに入力される入力データは、外部クロック信号Ｋと同様に、ＨＳＴＬレベルの信号であり振幅が比較的小さい。そのため、外部クロック信号Ｋと同様に、比較器５０＿２によって、当該外部クロック信号Ｋの電圧レベルと基準電圧ＶＲＥＦの電圧レベルとを比較し、その比較結果を出力することで、小さい振幅の入力データから大きな振幅（ＶＤＤＱ−ＧＮＤ）のデータに変換することができる。当該比較結果はデータレジスタ６２に入力される。データレジスタ６２は比較器５０＿１から出力される内部クロック信号ｉｎｔＣＬＫに同期して、比較器５０＿２の比較結果を保持する。バックライト信号ＸＢＷ、ライト信号ＸＷ、リード信号ＸＲ、及びアドレス信号ＳＡも同様に振幅の小さい信号であり、比較器５０＿３、５０＿４、５０＿５、５０＿６によって基準電圧ＶＲＥＦと比較された結果が、内部クロック信号ｉｎｔＣＬＫに同期して、コントロールレジスタ６３、６４、６５、及びアドレスレジスタ６６に夫々取り込まれる。
【０１０８】
データ入力端子Ｄに入力される入力データは、外部クロック信号Ｋと同様に、５００ＭＨｚ以上の周波数の信号となる可能性が高いので、データ入力端子Ｄには、終端回路としてＯＤＴ回路１０＿２が接続される。ＯＤＴ回路１０＿１、１０＿２の回路構成は、前述のＯＤＴ回路１０と同様であり、制御部２０からのＰ側インピーダンスコードｐｃｏｄｅ及びＮ側インピーダンスコードｎｃｏｄｅによってインピーダンスが調整される。
【０１０９】
コアロジック回路６１は、例えば、データを格納するためのメモリアレイ６１３と、前記メモリアレイ６１３に対するデータの書き込みと読み出しを制御するためのメモリ制御部と、内部クロック信号ｉｎｔＣＬＫに基づいてクロック信号Ｃ＿ＣＬＫを生成するＰＬＬ回路（ＰＬＬ）６１５と、から構成される。前記メモリ制御部は、例えば、アドレスデコーダ（ＡＤＤ＿ＤＥＣ）６１０、リード／ライト制御部（Ｒ／Ｗ＿ＣＮＴ）６１１、ライトデータバス（Ｗ＿ＤＡＴＡ＿ＢＵＳ）６１２、及びリードデータバス（Ｒ＿ＤＡＴＡ＿ＢＵＳ）６１４を含んで構成される。アドレスデコーダ６１０は、アドレスレジスタ６６に保持されたアドレス情報に基づいて、Ｘアドレス（Ｘ＿ＡＤＤ）、及びＹアドレス（Ｙ＿ＡＤＤ）を生成してメモリアレイ６１３に出力する。リード／ライト制御部６１１は、コントロールレジスタ６３〜６５に保持された情報に基づいて、リード命令ＭＲ＿ＣＮＴ及びライト命令ＭＷ＿ＣＮＴを発行する。ライトデータバス６１２は、リード／ライト制御部６１１から発行されたライト命令ＭＷ＿ＣＮＴに応じて、データレジスタ６２に格納されたライトデータＷ＿ＤＡＴＡをメモリアレイ６１３に出力する。リードデータバス６１４は、リード／ライト制御部６１１から発行されたリード命令ＭＲ＿ＣＮＴに応じて、メモリアレイ６１３から読み出されたリードデータＲ＿ＤＡＴＡを出力バッファ６７に出力する。出力バッファ６７は、ＰＬＬ回路６１５から出力されるクロック信号Ｃ＿ＣＬＫに同期して、リードデータＲ＿ＤＡＴＡをデータ出力端子ＤＱから出力する。
【０１１０】
図１４に、入力端子Ｋ周辺の詳細なブロック図を例示する。制御部２０、ＯＤＴ回路１０、基準電圧生成回路３０、比較器５０＿１、及びリセット回路４０の接続関係は、実施の形態１の半導体装置１と同様である。異なるのは、制御部２０におけるクロック信号異常検出回路２０４の出力信号ｓｔｏｐｃがコアロジック回路６１のリセット信号として入力される点である。すなわち、メモリアレイ６１３を含むコアロジック回路６１は、電源監視を行うリセット回路４０からのリセット信号ｒｓｔのみならず、クロック信号異常検出回路２０４の出力信号ｓｔｏｐｃによってもリセット可能とされる。これによれば、内部クロック信号ｉｎｔＣＬＫが異常になった場合に、ＯＤＴ回路１０のインピーダンスのみならず、コアロジック回路６１もリセットすることが可能となる。すなわち、半導体装置４によれば、外部クロック信号Ｋを停止する（外部クロック信号Ｋの信号レベルをハイレベル又はローレベルに固定する）ことで、コアロジック回路６１をリセットすることが可能となるから、コアロジック回路６１をリセットするために電源を再投入したり、リセット専用端子を別途設けてリセット信号を入力したりする必要がない。
【０１１１】
以上、実施の形態４によれば、実施の形態１と同様に、内部クロック信号ＣＬＫがローレベル又はハイレベルに固定されたとしても、その状態が一定期間継続した場合には、インピーダンスコードがリセットされるため、ＯＤＴ回路のインピーダンスの異常状態から脱することができ、より安定したＯＤＴ回路を実現することができる。また、内部クロック信号ｉｎｔＣＬＫの異常検出に係る信号ｓｔｏｐｃを、コアロジック回路６１のリセット信号として用いることで、電源を再投入したり、リセット専用端子を別途設けてリセット信号を入力したりすることなく、コアロジック回路６１をリセットすることができる。
【０１１２】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【０１１３】
例えば、実施の形態１において、制御信号ｐｒｅ＿ｐｃｏｄｅ，ｐｒｅ＿ｎｃｏｄｅ、Ｐ側インピーダンスコードｐｃｏｄｅ、及びＮ側インピーダンスコードｎｃｏｄｅの初期値として、ＯＤＴ回路１０のインピーダンスがＯＤＴ回路１０のインピーダンスとして設定可能な範囲の中間値となるようなコード値“８’ｂ１０００００００”とする場合を例示したが、これに限られない。例えば、実施の形態３のように、入力端子Ｋが接続されるノードＫが高インピーダンス状態となるコード値“８’ｂ００００００００”でもよい。これによれば、より確実に、内部クロック信号ｉｎｔＣＬＫが停止した状態から、内部クロック信号ｉｎｔＣＬＫが出力される状態に移行させることができる。
【０１１４】
また、実施の形態４における半導体装置４において、ＯＤＴ回路１０＿１、１０＿２のインピーダンス調整を行う回路として制御部２０を適用する場合を例示したが、これに限られない。例えば、制御部２０の代わりに、制御部２１、２２を適用することも可能である。
【符号の説明】
【０１１５】
１〜４  半導体装置
６  外部ドラバ回路
ＲＱ  外付け抵抗
ＺＱ  外部端子、ノード
Ｋ  入力端子、ノード、外部クロック信号
ＶＲＥＦ  入力端子、基準電圧
ＺＲＥＦ  基準電圧、ノード
ＶＤＤＱ、ＶＤＤＩ  電源電圧
ＧＮＤ  グラウンド電圧
１０  ＯＤＴ回路（ＯＤＴ）
ＭＰ０〜ＭＰ７  ＰＭＯＳトランジスタ
ＭＮ０〜ＭＮ７  ＮＭＯＳトランジスタ
ＲＰ０〜ＲＰ７  ノードＫのプルアップ抵抗
ＲＮ０〜ＲＮ７  ノードＫのプルダウン抵抗
ｐｃｏｄｅ  Ｐ側インピーダンスコード
ｎｃｏｄｅ  Ｎ側インピーダンスコード
２０  制御部
２０１  インピーダンス検出回路（ＲＥＰ）
２０２  インピーダンスコード生成回路（ＩＭＰＣ＿ＧＥＮ）
２０３  カウンタ（ＣＴＲ）
２０４  クロック信号異常検出回路
２０５  インピーダンスコード保持レジスタ
２０５１、２０５２  フリップフロップ回路
２０６  ＯＲ回路
ｐ＿ｄｎ、ｎ＿ｕｐ  比較結果
ｐｒｅ＿ｐｃｏｄｅ、ｐｒｅ＿ｎｃｏｄｅ  制御信号
ｓｔｒｂ  カウンタ２０３の出力
ｉｎｔＣＬＫ  内部クロック信号
ｒｓｔ  リセット信号
ｓｔｏｐｃ  クロック信号異常検出回路の出力
ｒｓｔｏｄｔ  リセット信号
３０  基準電圧生成回路
４０  リセット回路（ＲＥＳＥＴ）
５０  比較器（ＣＭＰ）
６０  コアロジック回路（ＣＩＲ）
２０１１、２０１２  レプリカ回路
２０１３  反転機能付きレベル変換回路
２０１６  レベル変換回路
２０１４  比較器
２０１５  比較器
ＺＮ  ノード
ＭＰＲ０〜ＭＰＲ７、ＭＮＰＲ０〜ＭＮＰＲ７  ＰＭＯＳトランジスタ
ＭＮＮＲ０〜ＭＮＮＲ７  ＮＭＯＳトランジスタ
ＲＰＲ０〜ＲＰＲ７  ノードＺＱのプルアップ抵抗
ＲＮＰＲ０〜ＲＮＰＲ７  ノードＺＮのプルアップ抵抗
ＲＮＮＲ０〜ＲＮＮＲ７  ノードＺＮのプルダウン抵抗
２０４０  ローレベル検出部
２０４１  ハイレベル検出部
１００  ＮＡＮＤ回路
１０１  遅延回路
ｔ６０〜ｔ６４  タイミング（時刻）
２１  制御部
２１４  クロック信号異常検出回路
２１４０  ローレベル検出部
２１４１  ハイレベル検出部
１０１＿Ａ〜１０１＿Ｆ  遅延回路
１０２、１０３  セレクタ
ＳＥＬ  選択信号
ＳＥＬ１０Ｌ  遅延回路１０１＿Ｃの出力
ＳＥＬ００Ｌ  遅延回路１０１＿Ｂの出力
ＳＥＬ０１Ｌ  遅延回路１０１＿Ａの出力
ＳＥＬ１０Ｈ  遅延回路１０１＿Ｆの出力
ＳＥＬ００Ｈ  遅延回路１０１＿Ｅの出力
ＳＥＬ０１Ｈ  遅延回路１０１＿Ｄの出力
２２  制御部
２１０  インピーダンスコード制御部
２１０１  カウンタ
２１０２、２１０３  ＡＮＤ回路
ＳＡ  入力アドレス端子
ＸＲ  リード端子
ＸＷ  ライト端子
ＸＢＷ  バイトライト端子
Ｄ  データ入力端子
Ｋ  入力端子
ＶＲＥＦ  入力端子
ＺＱ  外部端子
ＤＱ  データ出力端子
１０＿１、１０＿２  ＯＤＴ回路
５０＿１〜５０＿６  比較器
６２  データレジスタ
６３〜６５  コントロールレジスタ
６６  アドレスレジスタ
６７  出力バッファ
６１  コアロジック回路
６１０  アドレスデコーダ（ＡＤＤ＿ＤＥＣ）
６１１  リード／ライト制御部（Ｒ／Ｗ＿ＣＮＴ）
６１２  ライトデータバス（Ｗ＿ＤＡＴＡ＿ＢＵＳ）
６１４  リードデータバス（Ｒ＿ＤＡＴＡ＿ＢＵＳ）
６１５  ＰＬＬ回路（ＰＬＬ）
Ｃ＿ＣＬＫ  クロック信号
８  半導体装置
８０  ＯＤＴ回路（ＯＤＴ）
８１  制御部（ＣＮＴ）
８２  比較器（ＣＭＰ）
８３  内部回路（ＣＩＲ）
ｒｓｔ＿ｐ  パワーオンリセット信号
【図１】
0005757888.tif 000002
【図２】
0005757888.tif 000003
【図３】
0005757888.tif 000004
【図４】
0005757888.tif 000005
【図５】
0005757888.tif 000006
【図６】
0005757888.tif 000007
【図７】
0005757888.tif 000008
【図８】
0005757888.tif 000009
【図９】
0005757888.tif 000010
【図１０】
0005757888.tif 000011
【図１１】
0005757888.tif 000012
【図１２】
0005757888.tif 000013
【図１３】
0005757888.tif 000014
【図１４】
0005757888.tif 000015
【図１５】
0005757888.tif 000016
【図１６】
0005757888.tif 000017
【図１７】
0005757888.tif 000018