(57)【要約】【課題】ＺＱキャリブレーションの時間を減らし、データ転送の制限を抑制する。【解決手段】半導体記憶装置は、メモリセルアレイ１０と、前記メモリセルアレイに記憶されたデータを外部のコントローラ３００に出力する第１回路１１と、前記第１回路に対してキャリブレーションを実行する第２回路２０と、を具備する。前記第２回路は、前記コントローラから第１コマンドＮｏｒｍａｌＺＱｃａｌＣＭＤを受信した時に第１モードキャリブレーションを実行し、前記コントローラから前記第１コマンドと異なる第２コマンドＳＰＺＱｃａｌＣＭＤを受信した時に前記第１モードキャリブレーションと異なる第２モードキャリブレーションを実行する。【選択図】      図２
2018028957.tif 000002
【特許請求の範囲】
【請求項１】
メモリセルアレイと、
前記メモリセルアレイに記憶されたデータを外部のコントローラに出力する第１回路と、
前記第１回路に対してキャリブレーションを実行する第２回路と、
を具備し、
前記第２回路は、
前記コントローラから第１コマンドを受信した時に第１モードキャリブレーションを実行し、
前記コントローラから前記第１コマンドと異なる第２コマンドを受信した時に前記第１モードキャリブレーションと異なる第２モードキャリブレーションを実行する
半導体記憶装置。
【請求項２】
前記第１モードキャリブレーションは、前記第１回路に対してキャリブレーションを実行することを含み、
前記第２モードキャリブレーションは、前記第１回路の第１情報と前記第１回路の第２情報とを比較してその差が第１値以上である場合に前記第１回路に対してキャリブレーションを実行することを含む
請求項１の半導体記憶装置。
【請求項３】
メモリセルアレイと、
前記メモリセルアレイに記憶されたデータを外部のコントローラに出力する第１回路と、
前記第１回路に対してキャリブレーションを実行する第２回路と、
を具備し、
前記第２回路は、
前記第１回路の第１情報を取得するとともに前記第１回路に対してキャリブレーションを実行し、
前記第１回路の第２情報を取得するとともに前記第１情報と前記第２情報とを比較してその差が第１値以上である場合に前記第１回路に対してキャリブレーションを実行する
半導体記憶装置。
【請求項４】
前記第１値は、電源オン時に受信される第１コマンドに応じて設定される請求項３の半導体記憶装置。
【請求項５】
前記第１情報および前記第２情報は、前記第１回路の温度情報である請求項３に記載の半導体記憶装置。
【請求項６】
前記第１情報および前記第２情報は、前記第１回路に印加された電圧情報である請求項３に記載の半導体記憶装置。
【請求項７】
メモリセルアレイと、
前記メモリセルアレイに記憶されたデータを外部のコントローラに出力する第１回路と、
前記第１回路に対してキャリブレーションを実行する第２回路と、
を具備し、
前記第２回路は、
前記第１回路の第１情報を取得するとともに前記メモリセルアレイに対して第１動作を実行し、
前記第１回路に対してキャリブレーションを実行し、
前記第１回路の第２情報を取得するとともに前記メモリセルアレイに対して第２動作を実行し、
前記第１情報と前記第２情報とを比較してその差が第１値以上である場合に前記第１回路に対してキャリブレーションを実行する
半導体記憶装置。
【請求項８】
前記第１動作および前記第２動作は、読み出しである請求項７の半導体記憶装置。
【請求項９】
前記第１値は、電源オン時に受信される第１コマンドに応じて設定される請求項７の半導体記憶装置。
【請求項１０】
前記第１情報および前記第２情報は、前記第１回路の温度情報である請求項７に記載の半導体記憶装置。
【請求項１１】
前記第１情報および前記第２情報は、前記第１回路に印加された電圧情報である請求項７に記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
実施形態は、半導体記憶装置に関する。
【背景技術】
【０００２】
半導体記憶装置におけるデータ等の入出力バッファ（入出力回路）の特性は、ＰＶＴ(Process Voltage Temperature)の変動によって変化する。この特性が適正範囲から外れると、高速なデータ転送が困難になる。このため、入出力回路の特性変化を補正して適正範囲に収める必要がある。
【０００３】
この方法として、ＺＱ（Zero Quotient）キャリブレーション機能が提案されている。ＺＱキャリブレーションは、入出力回路の信号線に接続された終端抵抗を用いることで、入出力回路の信号線のインピーダンスを動的に補正する。このＺＱキャリブレーションは、入出力回路の信号を維持するために頻繁に実行される。
【０００４】
しかし、ＺＱキャリブレーション中において、入出力回路の利用はできない。このため、ＺＱキャリブレーションが頻繁に実行されると、入出力回路によるデータ転送を実行することができず、データ転送が制限されてしまう。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】米国特許出願公開第２０１４／０１８５３８４号明細書
【特許文献２】米国特許出願公開第２０１５／００６７２９２号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ＺＱキャリブレーションの時間を減らし、データ転送の制限を抑制する半導体記憶装置を提供する。
【課題を解決するための手段】
【０００７】
実施形態による半導体記憶装置は、メモリセルアレイと、前記メモリセルアレイに記憶されたデータを外部のコントローラに出力する第１回路と、前記第１回路に対してキャリブレーションを実行する第２回路と、を具備する。前記第２回路は、前記コントローラから第１コマンドを受信した時に第１モードキャリブレーションを実行し、前記コントローラから前記第１コマンドと異なる第２コマンドを受信した時に前記第１モードキャリブレーションと異なる第２モードキャリブレーションを実行する。
【図面の簡単な説明】
【０００８】
【図１】第１実施形態に係るメモリシステムおよびホストを示す図。
【図２】第１実施形態に係る半導体記憶装置を示す図。
【図３】第１実施形態に係る半導体記憶装置におけるメモリセルアレイを示す図。
【図４】第１実施形態に係る半導体記憶装置におけるＺＱキャリブレーション実行回路の一例を示す図。
【図５】第１実施形態に係る半導体記憶装置におけるプルアップ回路２１Ａを示す図。
【図６】第１実施形態に係る半導体記憶装置におけるプルアップ回路２１Ｂを示す図。
【図７】第１実施形態に係る半導体記憶装置におけるプルダウン回路２１Ｃを示す図。
【図８】第１実施形態に係る半導体記憶装置におけるＺＱキャリブレーション時の各種信号のタイミングチャートの一例を示す図。
【図９】第１実施形態に係る半導体記憶装置におけるＺＱキャリブレーションシーケンスを示すフローチャート。
【図１０】図９のフローチャートにおける各種信号の具体例を示すタイミングチャート。
【図１１】第１実施形態に係る半導体記憶装置におけるコマンドシーケンスの第１例を示す図。
【図１２】第１実施形態に係る半導体記憶装置におけるコマンドシーケンスの第１例を示す図。
【図１３】第１実施形態に係る半導体記憶装置におけるコマンドシーケンスの第２例を示す図。
【図１４】第１実施形態に係る半導体記憶装置におけるコマンドシーケンスの第２例を示す図。
【図１５】第１実施形態に係る半導体記憶装置におけるコマンドシーケンスの第２例を示す図。
【図１６】第２実施形態に係る半導体記憶装置におけるＺＱキャリブレーションシーケンスを示すフローチャート。
【図１７】図１６のフローチャートにおける各種信号の具体例を示すタイミングチャート。
【図１８】図１７の変形例を示すタイミングチャート。
【図１９】第３実施形態に係る半導体記憶装置を示す図。
【図２０】第３実施形態に係る半導体記憶装置におけるＺＱキャリブレーションシーケンスを示すフローチャート。
【図２１】第４実施形態に係る半導体記憶装置におけるＺＱキャリブレーションシーケンスを示すフローチャート。
【発明を実施するための形態】
【０００９】
本実施形態を以下に図面を参照して説明する。図面において、同一部分には同一の参照符号を付す。
【００１０】
＜第１実施形態＞
以下に図１乃至図１５を用いて、第１実施形態に係る半導体記憶装置について説明する。以下では、半導体記憶装置がＮＡＮＤメモリである場合について説明するが、これに限らず、半導体記憶装置は任意の不揮発性半導体メモリであってもよい。また、以下の説明において、「接続」は直接接続される場合だけではなく、任意の素子を介して接続される場合も含む。
【００１１】
［第１実施形態の構成例］
図１は、第１実施形態に係るメモリシステム１００およびホスト２００を示す図である。
【００１２】
図１に示すように、メモリシステム１００は、コントローラ３００およびＮＡＮＤメモリ（半導体記憶装置）４００を備える。
【００１３】
コントローラ３００は、例えばホスト２００からのデータ（ユーザデータ等）、コマンド、およびアドレスに基づいて、ＮＡＮＤメモリ４００を制御する。コントローラ３００は、ホスト２００からのデータ、コマンド、およびアドレスをＮＡＮＤメモリ４００に転送する。また、コントローラ３００は、各種信号を生成してＮＡＮＤメモリ４００に出力する。なお、図１において、５個のＮＡＮＤメモリ４００が配置されているが、これに限らず、適宜変更可能である。
【００１４】
図２は、第１実施形態に係る半導体記憶装置４００を示す図である。図３は、第１実施形態に係る半導体記憶装置４００におけるメモリセルアレイ１０を示す図である。
【００１５】
図２に示すように、半導体記憶装置４００は、メモリセルアレイ１０、入出力回路１１、ロジック制御回路１２、レディー／ビジー制御回路１３、レジスタ１４、シーケンサ１５、電圧生成回路１６、ロウデコーダ１７、センスアンプ１８、およびＺＱキャリブレーション制御回路２０を備える。
【００１６】
メモリセルアレイ１０は、複数のブロックＢＬＫ（ＢＬＫ０、ＢＬＫ１、…）を備える。より具体的には、図３に示すように、ブロックＢＬＫ０は、複数のＮＡＮＤストリングＳＴを含む。各ＮＡＮＤストリングＳＴは、例えばｎ個（ｎは２以上の整数）のメモリセルトランジスタＭＣ（ＭＣ０〜ＭＣｎ−１）と、選択トランジスタＳ１，Ｓ２とを含む。
【００１７】
メモリセルトランジスタＭＣ（以下、単にメモリセルＭＣと称することもある）は、制御ゲートと電荷蓄積層とを含む積層ゲートを備え、データを不揮発に保持する。メモリセルトランジスタＭＣ０〜ＭＣｎ−１は、その電流経路が直列に形成される。一端側のメモリセルトランジスタＭＣｎ−１の第１端子は選択トランジスタＳ１の第１端子に接続され、他端側のメモリセルトランジスタＭＣ０の第１端子は選択トランジスタＳ２の第１端子に接続される。
【００１８】
複数の選択トランジスタＳ１のゲートは、セレクトゲート線ＳＧＤに共通接続される。一方、複数の選択トランジスタＳ２のゲートは、セレクトゲート線ＳＧＳに共通接続される。また、メモリセルトランジスタＭＣ０〜ＭＣｎ−１の制御端子はそれぞれ、ワード線ＷＬ０〜ＷＬｎ−１のそれぞれに共通接続される。
【００１９】
また、メモリセルアレイ１０内でマトリクス状に配置されたＮＡＮＤストリングＳＴのうち、同一カラムにある（ブロックＢＬＫ間で並ぶ）ＮＡＮＤストリングＳＴの選択トランジスタＳ１の第２端子は、いずれかのビット線ＢＬ（ＢＬ０〜ＢＬｍ−１、ｍは２以上の整数）に共通接続される。また、選択トランジスタＳ２の第２端子はソース線ＳＬに共通接続される。ソース線ＳＬは、例えば複数のブロックＢＬＫ内で共通である。
【００２０】
同一ブロックＢＬＫ内にあるメモリセルトランジスタＭＣのデータは、例えば一括して消去される。これに対して、データの読み出しおよび書き込みは、いずれかのブロックＢＬＫのいずれかのワード線ＷＬに共通に接続された複数のメモリセルトランジスタＭＣにつき、一括して実行される。このデータ単位を「ページ」と呼ぶ。
【００２１】
ブロックＢＬＫ１，ＢＬＫ２の構造は、ブロックＢＬＫ０と同様であるため、省略する。
【００２２】
図２に示すように、入出力回路１１は、半導体記憶装置４００の外部（コントローラ３００）から信号ＤＱ（ＤＱ０〜ＤＱ７）を送受信する。信号ＤＱは、コマンド、アドレス、およびデータ等を含む。入出力回路１１は、外部からのコマンドおよびアドレスをレジスタ１４に転送する。入出力回路１１は、外部からの書き込みデータをセンスアンプ１８に転送し、センスアンプ１８からの読み出しデータを外部に転送する。また、入出力回路１１は、外部から電圧Ｖｒｅｆを受信する。電圧Ｖｒｅｆは、基準電圧であり、諸動作における電圧の基準となる。また、入出力回路１１は、読み出しデータとともに外部にデータストローブ信号ＤＱＳ，／ＤＱＳを送信する。読み出しデータは、信号ＤＱＳ，／ＤＱＳに同期して読み出される。
【００２３】
ロジック制御回路１２は、外部から各種制御信号を受信し、入出力回路１１およびシーケンサ１５を制御する。この制御信号としては、例えばチップイネーブル信号／ＣＥ、コマンドラッチイネーブル信号ＣＬＥ、アドレスラッチイネーブル信号ＡＬＥ、ライトイネーブル信号／ＷＥ、リードイネーブル信号ＲＥ，／ＲＥ、ライトプロテクト信号／ＷＰ、およびデータストローブ信号ＤＱＳ，／ＤＱＳが使用される。信号／ＣＥは、半導体記憶装置４００をイネーブルにする。信号ＣＬＥ及びＡＬＥはそれぞれ、信号ＤＱがコマンドおよびアドレスであることを入出力回路１１に通知する。信号／ＷＥは、信号ＤＱの入力を入出力回路１１に指示する。信号ＲＥ，／ＲＥは、信号ＤＱの出力を入出力回路１１に指示する。信号／ＷＰは、例えば電源のオンオフ時に半導体記憶装置４００を保護状態にする。信号ＤＱＳ，／ＤＱＳは、書き込みデータとともに受信される。書き込みデータは、信号ＤＱＳ，／ＤＱＳに同期して書き込まれる。
【００２４】
レディー／ビジー制御回路１３は、信号／ＲＢを外部に転送して半導体記憶装置４００の状態を外部に通知する。信号／ＲＢは、半導体記憶装置４００がレディー状態（外部からの命令を受け付ける状態）であるか、ビジー状態（外部からの命令を受け付けない状態）であるかを示す。
【００２５】
レジスタ１４は、コマンドおよびアドレスを保持する。レジスタ１４は、アドレスをロウデコーダ１７およびセンスアンプ１８に転送するとともに、コマンドをシーケンサ１５に転送する。また、レジスタ１４は、コマンドに基づいて実行されるシーケンスを制御するための各種テーブルを保持する。
【００２６】
シーケンサ１５は、コマンドを受信し、レジスタ１４の各種テーブルを参照する。そして、シーケンサ１５は、各種テーブルに示される情報に従って、半導体記憶装置４００の全体を制御する。
【００２７】
電圧生成回路１６は、シーケンサ１５の制御に従って、データの書き込み、読み出し、および消去等の動作に必要な電圧を生成する。電圧生成回路１６は、生成した電圧をロウデコーダ１７およびセンスアンプ１８に供給する。
【００２８】
ロウデコーダ１７は、レジスタ１４からロウアドレスを受信し、ロウアドレスに基づいてメモリセルアレイ１０内のワード線ＷＬを選択する。そして、ロウデコーダ１７は、選択されたワード線ＷＬに電圧生成回路１６からの電圧を供給する。
【００２９】
センスアンプ１８は、メモリセルアレイ１０内のビット線ＢＬを介してメモリセルＭＣのデータを読み出したり、ビット線ＢＬを介してメモリセルアレイ１０内のメモリセルＭＣにデータを書き込んだりする。センスアンプ１８は図示せぬデータラッチを含み、データラッチは書き込みデータおよび読み出しデータを一時的に記憶する。センスアンプ１８は、レジスタ１４からカラムアドレスを受信し、カラムアドレスに基づいてデータラッチのデータを入出力回路１１に出力する。
【００３０】
ＺＱキャリブレーション制御回路２０は、ＺＱキャリブレーション実行回路２１、温度測定回路２２、および温度記憶回路２３を備える。
【００３１】
温度測定回路２２は、シーケンサ１５の制御に従って、入出力回路１１の温度を測定し、温度情報を取得する。
【００３２】
温度記憶回路２３は、例えばラッチであり、シーケンサ１５の制御に従って温度測定回路２２により取得された温度情報を記憶する。
【００３３】
ＺＱキャリブレーション実行回路２１は、シーケンサ１５の制御に従って、入出力回路
１１に対してＺＱキャリブレーション（以下、キャリブレーションと称す場合がある）を実行する。また、ＺＱキャリブレーション実行回路２１は、シーケンサ１５の制御に従って、温度記憶回路２３に記憶された温度情報（第１温度情報）と温度測定回路２２で新たに取得された温度情報（第２温度情報）とを比較する。そして、ＺＱキャリブレーション実行回路２１は、その比較結果に応じて入出力回路１１に対してＺＱキャリブレーションを実行する、または実行しない。
【００３４】
ここで、ＺＱキャリブレーションとは、ＺＱキャリブレーション実行回路２１に接続された外部抵抗（終端抵抗）Ｒを用いて、入出力回路１１の出力インピーダンス（出力抵抗）を調整する機能である。より具体的には、ＺＱキャリブレーション実行回路２１内（抵抗Ｒと入出力回路１１との間）に、並列接続された複数のトランジスタが設けられる。そして、選択的にトランジスタをオンすることで、チャネルが導通したトランジスタの数（導通したチャネル幅の和）を調整し、入出力回路１１の出力抵抗が調整される。このＺＱキャリブレーションは、主にデータを外部に出力する時に実行される。以下に、ＺＱキャリブレーションについて詳説する。
【００３５】
図４は、第１実施形態に係る半導体記憶装置４００におけるＺＱキャリブレーション実行回路２１の一例を示す図である。
【００３６】
図４に示すように、ＺＱキャリブレーション実行回路２１は、プルアップ回路２１Ａ，２１Ｂ、プルダウン回路２１Ｃ、およびプルアップ／プルダウン制御回路２１Ｄを含む。
【００３７】
プルアップ／プルダウン制御回路２１Ｄは、信号ＰＵＬＬＵＰ，ＰＵＬＬＤＯＷＮを受信し、プルアップ回路２１Ａ，２１Ｂおよびプルダウン回路２１Ｃを制御する。
【００３８】
プルアップ／プルダウン制御回路２１Ｄは、プルアップ回路２１Ａに電圧ＶＺＱＰ０−ＶＺＱＰ４を供給する。プルアップ回路２１Ａは、ＺＱパッドＺＱＰに電気的に接続される。ＺＱパッドＺＱＰは、抵抗Ｒを介して接地される。ＺＱパッドＺＱＰの電圧ＶＰＵＬＬＵＰは、プルアップ／プルダウン制御回路２１Ｄに供給される。
【００３９】
一方、プルアップ回路２１Ｂおよびプルダウン回路２１Ｃは、レプリカバッファを構成する。プルアップ／プルダウン制御回路２１Ｄは、プルアップ回路２１Ｂに電圧ＶＺＱＰ０−ＶＺＱＰ４を供給し、プルダウン回路２１Ｃに電圧ＶＺＱＮ０−ＶＺＱＮ４を供給する。プルアップ回路２１Ｂおよびプルダウン回路２１Ｃは、ノードＡに電気的に接続される。ノードＡの電圧ＶＰＵＬＬＤＯＷＮは、プルアップ／プルダウン制御回路２１Ｄに供給される。
【００４０】
図５は第１実施形態に係る半導体記憶装置４００におけるプルアップ回路２１Ａを示す図であり、図６は第１実施形態に係る半導体記憶装置４００におけるプルアップ回路２１Ｂを示す図であり、図７は第１実施形態に係る半導体記憶装置４００におけるプルダウン回路２１Ｃを示す図である。
【００４１】
図５に示すように、プルアップ回路２１Ａは、ＰＭＯＳトランジスタＰ０Ａ−Ｐ４Ａを含む。ＰＭＯＳトランジスタＰ０Ａ−Ｐ４Ａの第１端子（ソースおよびドレインの一方）にはそれぞれ電圧ＶＣＣＱが供給され、ＰＭＯＳトランジスタＰ０Ａ−Ｐ４Ａの第２端子（ソースおよびドレインの他方）はそれぞれＺＱパッドＺＱＰに電気的に接続される。また、ＰＭＯＳトランジスタＰ０Ａ−Ｐ４Ａのゲートにはそれぞれ、電圧ＶＺＱＰ０−ＶＺＱＰ４のそれぞれが供給される。
【００４２】
図６に示すように、プルアップ回路２１Ｂは、ＰＭＯＳトランジスタＰ０Ｂ−Ｐ４Ｂを含む。ＰＭＯＳトランジスタＰ０Ｂ−Ｐ４Ｂの第１端子（ソースおよびドレインの一方）にはそれぞれ電圧ＶＣＣＱが供給され、ＰＭＯＳトランジスタＰ０Ｂ−Ｐ４Ｂの第２端子（ソースおよびドレインの他方）はそれぞれノードＡに電気的に接続される。また、ＰＭＯＳトランジスタＰ０Ｂ−Ｐ４Ｂのゲートにはそれぞれ、電圧ＶＺＱＰ０−ＶＺＱＰ４のそれぞれが供給される。
【００４３】
図７に示すように、プルダウン回路２１Ｃは、ＮＭＯＳトランジスタＮ０−Ｎ４を含む。ＮＭＯＳトランジスタＮ０−Ｎ４の第１端子（ソースおよびドレインの一方）はそれぞれノードＡに電気的に接続され、ＮＭＯＳトランジスタＮ０−Ｎ４の第２端子（ソースおよびドレインの他方）はそれぞれ接地される。また、ＭＯＳトランジスタＮ０−Ｎ４のゲートにはそれぞれ、電圧ＶＺＱＮ０−ＶＺＱＮ４のそれぞれが供給される。
【００４４】
ＺＱキャリブレーションは、図４に示すように、ＺＱパッドＺＱＰに抵抗Ｒを接続して実行される。この抵抗Ｒは、入出力回路１１の所望とする抵抗値である。ＺＱキャリブレーションでは、抵抗Ｒとプルアップ回路２１Ａ，２１Ｂのインピーダンスとが同じくなるように、電圧ＶＺＱＰ０−ＶＺＱＰ４が決定される。さらに、プルアップ回路２１Ｂのインピーダンスとプルダウン回路２１Ｃのインピーダンスとが同じくなるように、電圧ＶＺＱＮ０−ＶＺＱＮ４が決定される。そして、得られた電圧ＶＺＱＰ０−ＶＺＱＰ４，ＶＺＱＮ０−ＶＺＱＮ４が入出力回路１１の図示せぬ各トランジスタのゲートに適宜供給されることで、入出力回路１１の出力インピーダンスが最適値に調整される。以下に、ＺＱキャリブレーションの一例を説明する。
【００４５】
図８は、第１実施形態に係る半導体記憶装置４００におけるＺＱキャリブレーション時の各種信号のタイミングチャートの一例を示す図である。図８において、ＺＱパッドＺＱＰに印加される電圧は電圧ＶＰＵＬＬＵＰであり、ノードＡに印加される電圧は電圧ＶＰＵＬＬＤＯＷＮである。
【００４６】
図８に示すように、まず、時刻Ｔ１において、半導体記憶装置４００は、ビジー状態になる。すると、信号ＰＵＬＬＵＰが活性化される（Ｈレベルになる）。この信号ＰＵＬＬＵＰが活性化されている期間において、プルアップ回路２１Ａのインピーダンス調整が行われる。プルアップ回路２１Ａのインピーダンス調整では、プルアップ／プルダウン制御回路２１Ｄは、ＺＱパッドＺＱＰの電圧ＶＰＵＬＬＵＰと基準電圧ＶＣＣＱ／２とを比較し、これらが等しくなるように電圧ＶＺＱＰ０−ＶＺＱＰ４を調整する。
【００４７】
より具体的には、まず、プルアップ／プルダウン制御回路２１Ｄは、初期値として電圧ＶＺＱＰ０−ＶＺＱＰ４をオールＨレベル（１１１１１）に設定する。これにより、プルアップ回路２１ＡのＰＭＯＳトランジスタＰ０Ａ−Ｐ４Ａは、オフする。このとき、ＺＱパッドＺＱＰの電圧ＶＰＵＬＬＵＰは、例えば接地電圧であり、基準電圧ＶＣＣＱ／２よりも小さい。その結果、プルアップ／プルダウン制御回路２１Ｄは、電圧ＶＺＱＰ０−ＶＺＱＰ４をカウントダウンし、電圧ＶＺＱＰ０−ＶＺＱＰ４を（０１１１１）に設定する。ここで、カウントダウンとは、電圧ＶＺＱＰ０−ＶＺＱＰ４のいずれかの０（Ｌレベル）を１（Ｈレベル）に変えることを示す。また、カウントアップとは、電圧ＶＺＱＰ０−ＶＺＱＰ４のいずれかの１（Ｈレベル）を０（Ｌレベル）に変えることを示す。
【００４８】
電圧ＶＺＱＰ０−ＶＺＱＰ４が（０１１１１）に設定されると、プルアップ回路２１ＡのＰＭＯＳトランジスタＰ０Ａがオンし、ＰＭＯＳトランジスタＰ１Ａ−Ｐ４Ａがオフする。これにより、ＺＱパッドＺＱＰの電圧ＶＰＵＬＬＵＰは、電圧ＶＣＣＱによってわずかに大きくなる。
【００４９】
ここで、電圧ＶＰＵＬＬＵＰが基準電圧ＶＣＣＱ／２よりも未だに小さければ、プルアップ／プルダウン制御回路２１Ｄは電圧ＶＺＱＰ０−ＶＺＱＰ４を（００１１１）にカウントダウンする。その結果、ＺＱパッドＺＱＰの電圧ＶＰＵＬＬＵＰは、電圧ＶＣＣＱによってさらに大きくなる。このように、電圧ＶＰＵＬＬＵＰが基準電圧ＶＣＣＱ／２よりも小さければ、電圧ＶＺＱＰ０−ＶＺＱＰ４のカウントダウンが順次繰り返され、電圧ＶＰＵＬＬＵＰが大きくなる。すなわち、プルアップ回路２１Ａのインピーダンスが低下していく。
【００５０】
一方、電圧ＶＰＵＬＬＵＰが基準電圧ＶＣＣＱ／２よりも大きくなると、電圧ＶＺＱＰ０−ＶＺＱＰ４がカウントアップされる。例えば、電圧ＶＺＱＰ０−ＶＺＱＰ４が（０００１１）だった場合、（００１１１）に設定される。このようにＺＱパッドＺＱＰの電圧ＶＰＵＬＬＵＰと基準電圧ＶＣＣＱ／２との大小により、電圧ＶＺＱＰ０−ＶＺＱＰ４はカウントダウン／アップされる。その結果、ＺＱパッドＺＱＰの電圧ＶＰＵＬＬＵＰは、基準電圧ＶＣＣＱ／２近傍で安定する。
【００５１】
ＺＱパッドＺＱＰの電圧ＶＰＵＬＬＵＰが基準電圧ＶＣＣＱ／２近傍で安定すると、信号ＰＵＬＬＵＰが非活性化される（Ｌレベルになる）。これにより、プルアップ／プルダウン制御回路２１Ｄは電圧ＶＺＱＰ０−ＶＺＱＰ４のカウントを終了し、そのときのカウント値は固定される。そして、電圧ＶＺＱＰ０−ＶＺＱＰ４が確定することで、プルアップ回路２１Ａのインピーダンス調整は終了する。このときのプルアップ回路２１Ａのインピーダンスは、抵抗Ｒと等しい値である。
【００５２】
上記動作の期間に、プルアップ回路２１Ｂのインピーダンス調整も同様に行われる。より具体的には、プルアップ回路２１Ｂにおいてもプルアップ回路２１Ａと同じ電圧ＶＺＱＰ０−ＶＺＱＰ４が設定される。すなわち、プルアップ回路２１Ｂのインピーダンスは、プルアップ回路２１Ａと同じに設定される。
【００５３】
次に、プルダウン回路２１Ｃのインピーダンスが、プルアップ回路２１Ａのインピーダンスと同じになるように調整される。より具体的には、プルアップ回路２１Ａのインピーダンスが固定された状態、すなわち、プルアップ回路２１Ｂのインピーダンスが固定された状態で、信号ＰＵＬＬＤＯＷＮが活性化される（Ｈレベルになる）。この信号ＰＵＬＬＤＯＷＮが活性化されている期間において、プルダウン回路２１Ｃのインピーダンス調整が行われる。プルダウン回路２１Ｃのインピーダンス調整では、プルアップ／プルダウン制御回路２１Ｄは、ノードＡの電圧ＶＰＵＬＬＤＯＷＮと基準電圧ＶＣＣＱ／２とを比較し、これらが等しくなるように電圧ＶＺＱＮ０−ＶＺＱＮ４を調整する。
【００５４】
より具体的には、まず、プルアップ／プルダウン制御回路２１Ｄは、初期値として電圧ＶＺＱＮ０−ＶＺＱＮ４をオールＬレベル（０００００）に設定する。これにより、プルダウン回路２１ＣのＮＭＯＳトランジスタＮ０−Ｎ４は、オフする。このとき、ノードＡの電圧ＶＰＵＬＬＤＯＷＮは、例えば電源電圧であり、基準電圧ＶＣＣＱ／２よりも大きい。その結果、プルアップ／プルダウン制御回路２１Ｄは、電圧ＶＺＱＮ０−ＶＺＱＮ４をカウントアップし、電圧ＶＺＱＮ０−ＶＺＱＮ４を（１００００）に設定する。
【００５５】
電圧ＶＺＱＮ０−ＶＺＱＮ４が（１００００）に設定されると、プルダウン回路２１ＣのＮＭＯＳトランジスタＮ０がオンし、ＮＭＯＳトランジスタＮ１−Ｎ４がオフする。これにより、ノードＡの電圧ＶＰＵＬＬＤＯＷＮは、接地電圧によって小さくなる。そして、電圧ＶＰＵＬＬＤＯＷＮが基準電圧ＶＣＣＱ／２よりも大きければ、プルアップ／プルダウン制御回路２１Ｄは電圧ＶＺＱＮ０−ＶＺＱＮ４を（１１０００）にカウントアップする。その結果、ノードＡの電圧ＶＰＵＬＬＤＯＷＮは、接地電圧によってさらに小さくなる。このように、電圧ＶＰＵＬＬＤＯＷＮが基準電圧ＶＣＣＱ／２よりも大きければ、電圧ＶＺＱＮ０−ＶＺＱＮ４のカウントアップが順次繰り返され、電圧ＶＰＵＬＬＤＯＷＮが小さくなる。すなわち、プルダウン回路２１Ｃのインピーダンスが低下していく。
【００５６】
一方、電圧ＶＰＵＬＬＤＯＷＮが基準電圧ＶＣＣＱ／２よりも小さくなると、電圧ＶＺＱＮ０−ＶＺＱＮ４がカウントダウンされる。例えば、電圧ＶＺＱＮ０−ＶＺＱＮ４が（１１１００）だった場合、（１１０００）に設定される。このようにノードＡの電圧ＶＰＵＬＬＤＯＷＮと基準電圧ＶＣＣＱ／２との大小により、電圧ＶＺＱＮ０−ＶＺＱＮ４はカウントアップ／ダウンされる。その結果、ノードＡの電圧ＶＰＵＬＬＤＯＷＮは、基準電圧ＶＣＣＱ／２近傍で安定する。
【００５７】
ノードＡの電圧ＶＰＵＬＬＤＯＷＮが基準電圧ＶＣＣＱ／２近傍で安定すると、時刻Ｔ２において、信号ＰＵＬＬＤＯＷＮが非活性化される（Ｌレベルになる）。そして、半導体記憶装置４００は、レディー状態になる。これにより、プルアップ／プルダウン制御回路２１Ｄは電圧ＶＺＱＮ０−ＶＺＱＮ４のカウントを終了し、そのときのカウント値は固定される。そして、電圧ＶＺＱＮ０−ＶＺＱＮ４が確定することで、プルダウン回路２１Ｃのインピーダンス調整は終了する。このときのプルダウン回路２１Ｃのインピーダンスは、プルアップ回路２１Ｂのインピーダンスと等しい値である。すなわち、プルアップ回路２１Ａ，２１Ｂ，２１Ｃのインピーダンスは、抵抗Ｒと等しい値に設定される。
【００５８】
なお、ＺＱキャリブレーション実行回路２１、温度測定回路２２、および温度記憶回路２３がＺＱキャリブレーション制御回路２０に設けられる例を示したが、これに限らず、これらは独立して設けられてもよい。
【００５９】
［第１実施形態のＺＱキャリブレーションシーケンス］
図９は、第１実施形態に係る半導体記憶装置４００におけるＺＱキャリブレーションシーケンスを示すフローチャートである。図９に示す各動作は、シーケンサ１５の制御に従った各回路によって実行される。
【００６０】
図９に示すように、まず、ステップＳ１１において、入出力回路１１により、外部のコントローラ３００から１回目（最初）のＺＱキャリブレーションコマンドが受信される。
【００６１】
次に、ステップＳ１２において、温度測定回路２２により、入出力回路１１の温度が測定され、この測定された温度が第１温度情報として取得される。また、ＺＱキャリブレーション実行回路２１により、入出力回路１１に対してキャリブレーションが実行される。さらに、温度測定回路２２で取得された第１温度情報が、温度記憶回路２３に記憶される。その後、諸動作が実行される。
【００６２】
次に、ステップＳ１３において、入出力回路１１により、外部のコントローラ３００から２回目のＺＱキャリブレーションコマンドが受信される。
【００６３】
次に、ステップＳ１４において、温度測定回路２２により、入出力回路１１の温度が測定され、この測定された温度が第２温度情報として取得される。
【００６４】
次に、ステップＳ１５において、ＺＱキャリブレーション実行回路２１により、温度記憶回路２３に記憶された第１温度情報と温度測定回路２２で取得された第２温度情報とが比較される。より具体的には、第１温度情報と第２温度情報との差が第１値以上であるか否かが判断される。第１値は、予め設定される値、または後述するset featureシーケンスによって設定される値である。第１値は、例えば半導体記憶装置の動作速度の必要性に応じて適宜設定される。例えば、高速動作の場合に第１値は２〜３℃程度であり、低速動作の場合に第１値は１０℃程度である。
【００６５】
ステップＳ１５において第１温度情報と第２温度情報との差が第１値以上である場合、ステップＳ１６においてＺＱキャリブレーション実行回路２１により入出力回路１１に対してキャリブレーションが実行される。また、温度測定回路２２で取得された第２温度情報が、温度記憶回路２３に記憶される。すなわち、温度記憶回路２３の温度情報が第１温度情報から第２温度情報に更新される。
【００６６】
一方、ステップＳ１５において第１温度情報と第２温度情報との差が第１値よりも小さい場合、キャリブレーションおよび温度情報の更新は行われない。
【００６７】
図１０は、図９のフローチャートにおける各種信号の具体例を示すタイミングチャートである。より具体的には、図１０（ａ）は図９のステップＳ１５においてＮｏである場合（第１具体例）を示し、図１０（ｂ）は図９のステップＳ１５においてＹｅｓである場合（第２具体例）を示す。
【００６８】
図１０（ａ）に示すように、第１具体例では、まず、時刻Ｔ１において入出力回路１１はコントローラ３００から信号ＤＱとして１回目のＺＱキャリブレーションコマンドＺＱｃａｌＣＭＤを受信する（ステップＳ１１）。これにより、時刻Ｔ２において、半導体記憶装置４００はビジー状態になる。そして、温度測定回路２２は第１温度情報を取得し、ＺＱキャリブレーション実行回路２１はキャリブレーションを実行し、温度記憶回路２３は第１温度情報を記憶する（ステップＳ１２）。その後、時刻Ｔ３において、半導体記憶装置４００は、レディー状態になる。
【００６９】
次に、時刻Ｔ４において、入出力回路１１はコントローラ３００から信号ＤＱとして２回目のＺＱキャリブレーションコマンドＺＱｃａｌＣＭＤを受信する（ステップＳ１３）。これにより、時刻Ｔ５において、半導体記憶装置４００はビジー状態になる。そして、温度測定回路２２は第２温度情報を取得し、ＺＱキャリブレーション実行回路２１は第１温度情報と第２温度情報とを比較する（ステップＳ１４，１５）。第１具体例では、第１温度情報と第２温度情報との差が第１値より小さいため（ステップＳ１５のＮｏ）、キャリブレーションおよび温度情報の更新（ステップＳ１６）が行われない。その結果、時刻Ｔ６において、半導体記憶装置４００は、レディー状態になる。
【００７０】
その後、時刻Ｔ７において、コントローラ３００からロジック制御回路１２にリードイネーブル信号／ＲＥが入力されることで、入出力回路１１はデータをコントローラ３００に出力する。
【００７１】
一方、図１０（ｂ）に示すように、第２具体例では、時刻Ｔ１〜Ｔ４において、第１具体例と同様の動作が実行される（ステップＳ１１〜Ｓ１３）。
【００７２】
時刻Ｔ４において２回目のＺＱキャリブレーションコマンドＺＱｃａｌＣＭＤが受信されると、時刻Ｔ５において半導体記憶装置４００はビジー状態になる。そして、温度測定回路２２は第２温度情報を取得し、ＺＱキャリブレーション実行回路２１は第１温度情報と第２温度情報とを比較する（ステップＳ１４，１５）。第２具体例では、第１温度情報と第２温度情報との差が第１値以上であるため（ステップＳ１５のＹｅｓ）、ＺＱキャリブレーション実行回路２１はキャリブレーションを実行し、温度記憶回路２３は第２温度情報を記憶する（ステップＳ１６）。その結果、時刻Ｔ８において、半導体記憶装置４００は、レディー状態になる。
【００７３】
その後、時刻Ｔ９において、コントローラ３００からロジック制御回路１２にリードイネーブル信号／ＲＥが入力されることで、入出力回路１１はデータをコントローラ３００に出力する。
【００７４】
このように、第１具体例ではステップＳ１６が行われないため、２回目のＺＱキャリブレーションコマンドＺＱｃａｌＣＭＤに基づくレディー状態の期間（時刻Ｔ５〜Ｔ６）は、第２具体例におけるレディー状態の期間（時刻Ｔ５〜Ｔ８）よりも短くなる。結果的に、第２具体例よりも第１具体例の方が、データ出力の開始時刻および終了時刻が早くなる。
【００７５】
［第１実施形態のコマンドシーケンス］
上述したＺＱキャリブレーションシーケンスでは、ＺＱキャリブレーション実行回路２１は、第１モードキャリブレーションおよび第２モードキャリブレーションを実行する。第１モードキャリブレーションでは、ＺＱキャリブレーションコマンドを受信すると、常にキャリブレーションが実行される（ステップＳ１２）。一方、第２モードキャリブレーションでは、ＺＱキャリブレーションコマンドを受信すると、第１温度情報と第２温度情報との差に応じてキャリブレーションが実行される、または実行されない（ステップＳ１５，Ｓ１６）。以下に、これら第１モードキャリブレーションおよび第２モードキャリブレーションを実行するためのコマンドシーケンスについて説明する。
【００７６】
図１１および図１２は、第１実施形態に係る半導体記憶装置４００におけるコマンドシーケンスの第１例（特殊コマンドシーケンス）を示す図である。第１例は、特殊コマンドを用いて第１モードキャリブレーションおよび第２モードキャリブレーションを実行する例である。
【００７７】
より具体的には、図１１（ａ）は第１例における第２モードキャリブレーションにおいてキャリブレーションが行われない場合を示す図であり、図１１（ｂ）は第１例における第２モードキャリブレーションにおいてキャリブレーションが実行される場合を示す図である。また、図１２は、第１例における第１モードキャリブレーションを示す図である。
【００７８】
図１１（ａ）および図１１（ｂ）に示すように、第１例における第２モードキャリブレーションでは、時刻Ｔ１において、入出力回路１１はコントローラ３００から信号ＤＱとしてコマンドＳＰＺＱｃａｌＣＭＤを受信する。コマンドＳＰＺＱｃａｌＣＭＤは、特殊コマンドであり、通常のキャリブレーション用のコマンドＮｏｒｍａｌＺＱｃａｌＣＭＤとは異なるコマンドである。このコマンドＳＰＺＱｃａｌＣＭＤは、ステップＳ１３で受信される２回目のＺＱキャリブレーションコマンドに対応する。
【００７９】
コマンドＳＰＺＱｃａｌＣＭＤが受信されると、時刻Ｔ２において半導体記憶装置４００はビジー状態になる。そして、第２モードキャリブレーションが実行される。すなわち、図１１（ａ）に示すように、第１温度情報と第２温度情報との差が第１値よりも小さい場合にキャリブレーションは行われず、時刻Ｔ３において半導体記憶装置４００はレディー状態になる。その後、時刻Ｔ４においてデータが外部に出力される。また、図１１（ｂ）に示すように、第１温度情報と第２温度情報との差が第１値以上である場合にキャリブレーションは行われ、時刻Ｔ５において半導体記憶装置４００はレディー状態になる。その後、時刻Ｔ６においてデータが外部に出力される。
【００８０】
一方、図１２に示すように、第１例における第１モードキャリブレーションでは、時刻Ｔ１において、入出力回路１１はコントローラ３００から信号ＤＱとして通常のキャリブレーション用のコマンドＮｏｒｍａｌＺＱｃａｌＣＭＤを受信する。このコマンドＮｏｒｍａｌＺＱｃａｌＣＭＤは、ステップＳ１１で受信される１回目のＺＱキャリブレーションコマンドに対応する。
【００８１】
コマンドＮｏｒｍａｌＺＱｃａｌＣＭＤが受信されると、時刻Ｔ２において半導体記憶装置４００はビジー状態になる。そして、第１モードキャリブレーションが実行される。すなわち、常にキャリブレーションが行われ、時刻Ｔ３において半導体記憶装置４００はレディー状態になる。その後、時刻Ｔ４においてデータが外部に出力される。
【００８２】
このように、第１例では、特殊コマンドであるコマンドＳＰＺＱｃａｌＣＭＤを用いて第２モードキャリブレーションが実行され、通常のコマンドＮｏｒｍａｌＺＱｃａｌＣＭＤを用いて第１モードキャリブレーションが実行される。
【００８３】
図１３乃至図１５は、第１実施形態に係る半導体記憶装置４００におけるコマンドシーケンスの第２例（set featureコマンドシーケンス）を示す図である。第２例は、set featureコマンドを用いて第１モードキャリブレーションおよび第２モードキャリブレーションを設定する例である。
【００８４】
より具体的には、図１３は、第２例における電源オン時のコマンドシーケンスを示す図である。図１４（ａ）は第２例における第２モードキャリブレーションにおいてキャリブレーションが行われない場合を示し、図１４（ｂ）は第２例における第２モードキャリブレーションにおいてキャリブレーションが実行される場合を示す。また、図１５は、第２例における第１モードキャリブレーションを示す。
【００８５】
図１３に示すように、set featureは、コマンドＳＦＣＭＤ、アドレスＡＤＤ、およびデータ０〜３で構成される。図示するように、第２例において電源がオンすると、時刻Ｔ１において、入出力回路１１はコントローラ３００から信号ＤＱとしてコマンドＳＦＣＭＤを受信する。引き続き、時刻Ｔ２において、入出力回路１１はコントローラ３００から信号ＤＱとしてアドレスＡＤＤを受信する。その後、時刻Ｔ３において、入出力回路１１はコントローラ３００から信号ＤＱとしてデータ０〜３を順次受信する。
【００８６】
アドレスＡＤＤは機能番号を指定し、データ０〜３は機能番号にて示される機能のパラメータを設定する。すなわち、アドレスＡＤＤによって、キャリブレーション機能が指定される。そして、データ０〜３によって、キャリブレーション機能が第１モードなのか第２モードなのかが設定される。また、データ０〜３によって、上述した第２モード時の第１値等も設定される。
【００８７】
その後、時刻Ｔ４において、半導体記憶装置４００はビジー状態になる。これにより、上記機能が有効化し、キャリブレーション機能が第１モードまたは第２モードに設定される。有効化の後、時刻Ｔ５において、半導体記憶装置４００はレディー状態になる。
【００８８】
図１４（ａ）および図１４（ｂ）に示すように、第２例における第２モードキャリブレーションでは、時刻Ｔ１において、入出力回路１１はコントローラ３００から信号ＤＱとしてコマンドＮｏｒｍａｌＺＱｃａｌＣＭＤを受信する。コマンドＮｏｒｍａｌＺＱｃａｌＣＭＤは、第１例の特殊コマンドと異なり、通常のキャリブレーション用のコマンドである。このコマンドＮｏｒｍａｌＺＱｃａｌＣＭＤは、ステップＳ１３で受信される２回目のＺＱキャリブレーションコマンドに対応する。
【００８９】
コマンドＮｏｒｍａｌＺＱｃａｌＣＭＤが受信されると、時刻Ｔ２において半導体記憶装置４００はビジー状態になる。そして、第２モードキャリブレーションが実行される。すなわち、図１４（ａ）に示すように、第１温度情報と第２温度情報との差が第１値よりも小さい場合にキャリブレーションは行われず、時刻Ｔ３において半導体記憶装置４００はレディー状態になる。その後、時刻Ｔ４においてデータが外部に出力される。また、図１４（ｂ）に示すように、第１温度情報と第２温度情報との差が第１値以上である場合にキャリブレーションは行われ、時刻Ｔ５において半導体記憶装置４００はレディー状態になる。その後、時刻Ｔ６においてデータが外部に出力される。
【００９０】
一方、図１５に示すように、第２例における第１モードキャリブレーションでは、第１例と同様に、時刻Ｔ１において、入出力回路１１はコントローラ３００から信号ＤＱとして通常のキャリブレーション用のコマンドＮｏｒｍａｌＺＱｃａｌＣＭＤを受信する。このコマンドＮｏｒｍａｌＺＱｃａｌＣＭＤは、ステップＳ１１で受信される１回目のＺＱキャリブレーションコマンドに対応する。その後は、図１２に示す第１例と同様のシーケンスとなる。
【００９１】
このように、第２例では、電源オン時のset featureによって第１モードキャリブレーションか第２モードキャリブレーションかが設定され、その設定に基づいて通常のコマンドＮｏｒｍａｌＺＱｃａｌＣＭＤを用いて第１モードキャリブレーションまたは第２モードキャリブレーションが実行される。すなわち、第２例では、特殊コマンドを用いることなく、第１モードキャリブレーションまたは第２モードキャリブレーションが実行される。
【００９２】
［第１実施形態の効果］
上記第１実施形態によれば、半導体記憶装置４００は、ＺＱキャリブレーション制御回路２０を備える。ＺＱキャリブレーション制御回路２０は、キャリブレーション時に温度情報を取得し、取得された温度情報と以前のキャリブレーション時の温度情報とを比較する。そして、ＺＱキャリブレーション制御回路２０は、温度変化が小さい時（特性の変化が小さい時）にキャリブレーションを行わず、温度変化の大きい時（特性の変化が大きい時）のみにキャリブレーションを実行する。これにより、キャリブレーションの時間を最小限にすることができ、データ転送の制限を抑制することができる。
【００９３】
＜第２実施形態＞
以下に図１６および図１７を用いて、第２実施形態に係る半導体記憶装置について説明する。上記第１実施形態では、温度測定回路２２がキャリブレーションの時に温度情報を取得した。これに対し、第２実施形態では、温度測定回路２２は、キャリブレーション直前のコア動作の時に温度情報を取得する。以下に、第２実施形態について詳説する。
【００９４】
なお、第２実施形態では、主に上記第１実施形態と異なる点について説明し、同様の点については省略する。
【００９５】
［第２実施形態のＺＱキャリブレーションシーケンス］
図１６は、第２実施形態に係る半導体記憶装置４００におけるＺＱキャリブレーションシーケンスを示すフローチャートである。
【００９６】
図１６に示すように、まず、ステップＳ２１において、入出力回路１１により、外部のコントローラ３００からコア動作コマンドが受信される。コア動作コマンドは、例えば書き込みコマンド、読み出しコマンド、または消去コマンドである。
【００９７】
次に、ステップＳ２２において、メモリセルアレイ１０に対してコア動作（書き込み、読み出し、または消去）が実行される。また、温度測定回路２２により、入出力回路１１の温度が測定され、この測定された温度が第１温度情報として取得される。
【００９８】
次に、ステップＳ２３において、入出力回路１１により、外部のコントローラ３００から１回目（最初）のＺＱキャリブレーションコマンドが受信される。
【００９９】
次に、ステップＳ２４において、ＺＱキャリブレーション実行回路２１により、入出力回路１１に対してキャリブレーションが実行される。さらに、温度測定回路２２で取得された第１温度情報が、温度記憶回路２３に記憶される。その後、諸動作が実行される。
【０１００】
次に、ステップＳ２５において、入出力回路１１により、外部のコントローラ３００から再度コア動作コマンドが受信される。このコア動作コマンドは、ステップＳ２１において受信されたコア動作コマンドと同じコマンドである。
【０１０１】
次に、ステップＳ２６において、メモリセルアレイ１０に対してコア動作が実行される。また、温度測定回路２２により、入出力回路１１の温度が測定され、この測定された温度が第２温度情報として取得される。
【０１０２】
次に、ステップＳ２７において、入出力回路１１により、外部のコントローラ３００から２回目のＺＱキャリブレーションコマンドが受信される。
【０１０３】
次に、ステップＳ２８において、ＺＱキャリブレーション実行回路２１により、温度記憶回路２３に記憶された第１温度情報と温度測定回路２２で取得された第２温度情報とが比較される。より具体的には、第１温度情報と第２温度情報との差が第１値以上であるか否かが判断される。
【０１０４】
ステップＳ２８において第１温度情報と第２温度情報との差が第１値以上である場合、ステップＳ２９においてＺＱキャリブレーション実行回路２１により入出力回路１１に対してキャリブレーションが実行される。また、温度測定回路２２で取得された第２温度情報が、温度記憶回路２３に記憶される。すなわち、温度記憶回路２３の温度情報が第１温度情報から第２温度情報に更新される。
【０１０５】
一方、ステップＳ２８において第１温度情報と第２温度情報との差が第１値よりも小さい場合、キャリブレーションおよび温度情報の更新は行われない。
【０１０６】
図１７は、図１６のフローチャートにおける各種信号の具体例を示すタイミングチャートである。より具体的には、図１７（ａ）は図１６のステップＳ２８においてＮｏである場合（第１具体例）を示し、図１７（ｂ）は図１６のステップＳ２８においてＹｅｓである場合（第２具体例）を示す。
【０１０７】
図１７（ａ）に示すように、第１具体例では、まず、時刻Ｔ１において入出力回路１１はコントローラ３００から信号ＤＱとしてコア動作コマンド（読み出しコマンドＲＥＡＤＣＭＤ）を受信する（ステップＳ２１）。ここでは、コア動作として読み出しを行う例を示している。これにより、時刻Ｔ２において、半導体記憶装置４００はビジー状態になる。そして、メモリセルアレイ１０のデータが、センスアンプ１８内の図示せぬラッチに読み出される。また、温度測定回路２２は、第１温度情報を取得する（ステップＳ２２）。その後、時刻Ｔ３において、半導体記憶装置４００は、レディー状態になる。
【０１０８】
引き続き、時刻Ｔ４において入出力回路１１はコントローラ３００から信号ＤＱとして１回目のＺＱキャリブレーションコマンドＺＱｃａｌＣＭＤを受信する（ステップＳ２３）。これにより、時刻Ｔ５において、半導体記憶装置４００はビジー状態になる。そして、ＺＱキャリブレーション実行回路２１はキャリブレーションを実行し、温度記憶回路２３は第１温度情報を記憶する（ステップＳ２４）。その後、時刻Ｔ６において、半導体記憶装置４００は、レディー状態になる。図示はしないが、その後、センスアンプ１８内のラッチのデータが、入出力回路１１によって外部に出力される。
【０１０９】
次に、時刻Ｔ７において入出力回路１１はコントローラ３００から信号ＤＱとして再度読み出しコマンドＲＥＡＤＣＭＤを受信する（ステップＳ２５）。これにより、時刻Ｔ８において、半導体記憶装置４００はビジー状態になる。そして、メモリセルアレイ１０のデータが、センスアンプ１８内のラッチに読み出される。また、温度測定回路２２は、第２温度情報を取得する（ステップＳ２６）。その後、時刻Ｔ９において、半導体記憶装置４００は、レディー状態になる。
【０１１０】
引き続き、時刻Ｔ１０において、入出力回路１１はコントローラ３００から信号ＤＱとして２回目のＺＱキャリブレーションコマンドＺＱｃａｌＣＭＤを受信する（ステップＳ２７）。これにより、時刻Ｔ１１において、半導体記憶装置４００はビジー状態になる。そして、ＺＱキャリブレーション実行回路２１は第１温度情報と第２温度情報とを比較する（ステップＳ２８）。
【０１１１】
第１具体例では、第１温度情報と第２温度情報との差が第１値より小さいため（ステップＳ２８のＮｏ）、キャリブレーションおよび温度情報の更新（ステップＳ２９）が行われない。その結果、時刻Ｔ１２において、半導体記憶装置４００は、レディー状態になる。
【０１１２】
その後、時刻Ｔ１３において、コントローラ３００からロジック制御回路１２にリードイネーブル信号／ＲＥが入力されることで、入出力回路１１はセンスアンプ１８内のラッチのデータをコントローラ３００に出力する。
【０１１３】
一方、図１７（ｂ）に示すように、第２具体例では、時刻Ｔ１〜Ｔ１０において、第１具体例と同様の動作が実行される（ステップＳ２１〜Ｓ２７）。
【０１１４】
時刻Ｔ１０において２回目のＺＱキャリブレーションコマンドＺＱｃａｌＣＭＤが受信されると、時刻Ｔ１１において半導体記憶装置４００はビジー状態になる。そして、ＺＱキャリブレーション実行回路２１は第１温度情報と第２温度情報とを比較する（ステップＳ２８）。
【０１１５】
第２具体例では、第１温度情報と第２温度情報との差が第１値以上であるため（ステップＳ２８のＹｅｓ）、ＺＱキャリブレーション実行回路２１はキャリブレーションを実行し、温度記憶回路２３は第２温度情報を記憶する（ステップＳ２９）。その結果、時刻Ｔ１４において、半導体記憶装置４００は、レディー状態になる。
【０１１６】
その後、時刻Ｔ１５において、コントローラ３００からロジック制御回路１２にリードイネーブル信号／ＲＥが入力されることで、入出力回路１１はデータをコントローラ３００に出力する。
【０１１７】
このように、第１具体例ではステップＳ２９が行われないため、２回目のＺＱキャリブレーションコマンドＺＱｃａｌＣＭＤに基づくレディー状態の期間（時刻Ｔ１１〜Ｔ１２）は、第２具体例におけるレディー状態の期間（時刻Ｔ１１〜Ｔ１４）よりも短くなる。結果的に、第２具体例よりも第１具体例の方が、データ出力の開始時刻および終了時刻が早くなる。
【０１１８】
図１８は、図１７の変形例を示すタイミングチャートである。より具体的には、図１８（ａ）は図１７（ａ）の第１具体例の変形例を示し、図１８（ｂ）は図１７（ａ）の第２具体例の変形例を示す。
【０１１９】
図１８（ａ）および図１８（ｂ）に示すように、変形例では、時刻Ｔ８において半導体記憶装置４００がビジー状態になると、ビジー状態のままで２回目のＺＱキャリブレーションコマンドＺＱｃａｌＣＭＤが受信される。そして、２回目のＺＱキャリブレーションコマンドＺＱｃａｌＣＭＤに伴う動作が終了するまで、半導体記憶装置４００はビジー状態である。すなわち、第１具体例においては時刻Ｔ８〜Ｔ１０までビジー状態であり、第２具体例においては時刻Ｔ８〜Ｔ１２までビジー状態である。
【０１２０】
［第２実施形態の効果］
通常、ＮＡＮＤメモリでは、コア動作の時に温度情報が取得される。上記第２実施形態では、ＺＱキャリブレーション制御回路２０は、キャリブレーション直前のコア動作時に温度情報を取得し、取得された温度情報と以前のキャリブレーション直前のコア動作時の温度情報とを比較する。すなわち、温度情報は、ＺＱキャリブレーションコマンドではなく、通常通りにコア動作コマンドに応じて取得される。このため、ＺＱキャリブレーションコマンドに応じて温度情報を取得する必要はなく、第１実施形態よりもＺＱキャリブレーションコマンドに応じた動作を減らすことができる。その結果、データ出力の制限をより抑制することができる。
【０１２１】
＜第３実施形態＞
以下に図１９および図２０を用いて、第３実施形態に係る半導体記憶装置について説明する。上記第１実施形態では、ＺＱキャリブレーション制御回路２０が、温度情報を取得し、温度情報の変化に応じてキャリブレーションを行った。これに対し、第３実施形態では、ＺＱキャリブレーション制御回路２０が、電圧情報を取得し、電圧情報の変化に応じてキャリブレーションを行う。以下に、第３実施形態について詳説する。
【０１２２】
なお、第３実施形態では、主に上記第１実施形態と異なる点について説明し、同様の点については省略する。
【０１２３】
［第３実施形態の構成例］
図１９は、第３実施形態に係る半導体記憶装置４００を示す図である。
【０１２４】
図１９に示すように、ＺＱキャリブレーション制御回路２０は、ＺＱキャリブレーション実行回路２１、電圧測定回路２４、および電圧記憶回路２５を備える。
【０１２５】
電圧測定回路２４は、シーケンサ１５の制御に従って、入出力回路１１に印加された電圧を測定し、電圧情報を取得する。
【０１２６】
電圧記憶回路２５は、例えばラッチであり、シーケンサ１５の制御に従って電圧測定回路２４により取得された電圧情報を記憶する。
【０１２７】
ＺＱキャリブレーション実行回路２１は、シーケンサ１５の制御に従って、電圧記憶回路２５に記憶された電圧情報（第１電圧情報）と電圧測定回路２４で新たに取得された電圧情報（第２電圧情報）とを比較する。そして、ＺＱキャリブレーション実行回路２１は、その比較結果に応じて入出力回路１１に対してＺＱキャリブレーションを実行する、または実行しない。
【０１２８】
なお、ＺＱキャリブレーション実行回路２１、電圧測定回路２４、および電圧記憶回路２５がＺＱキャリブレーション制御回路２０に設けられる例を示したが、これに限らず、これらは独立して設けられてもよい。
【０１２９】
［第３実施形態のＺＱキャリブレーションシーケンス］
図２０は、第３実施形態に係る半導体記憶装置４００におけるＺＱキャリブレーションシーケンスを示すフローチャートである。
【０１３０】
図２０に示すように、まず、ステップＳ３１において、入出力回路１１により、外部のコントローラ３００から１回目（最初）のＺＱキャリブレーションコマンドが受信される。
【０１３１】
次に、ステップＳ３２において、電圧測定回路２４により、入出力回路１１に印加された電圧が測定され、この測定された電圧が第１電圧情報として取得される。また、ＺＱキャリブレーション実行回路２１により、入出力回路１１に対してキャリブレーションが実行される。さらに、電圧測定回路２４で取得された第１電圧情報が、電圧記憶回路２５に記憶される。その後、諸動作が実行される。
【０１３２】
次に、ステップＳ３３において、入出力回路１１により、外部のコントローラ３００から２回目のＺＱキャリブレーションコマンドが受信される。
【０１３３】
次に、ステップＳ３４において、電圧測定回路２４により、入出力回路１１に印加された電圧が測定され、この測定された電圧が第２電圧情報として取得される。
【０１３４】
次に、ステップＳ３５において、ＺＱキャリブレーション実行回路２１により、電圧記憶回路２５に記憶された第１電圧情報と電圧測定回路２４で取得された第２電圧情報とが比較される。より具体的には、第１電圧情報と第２電圧情報との差が第１値以上であるか否かが判断される。
【０１３５】
ステップＳ３５において第１電圧情報と第２電圧情報との差が第１値以上である場合、ステップＳ３６においてＺＱキャリブレーション実行回路２１により入出力回路１１に対してキャリブレーションが実行される。また、電圧測定回路２４で取得された第２電圧情報が、電圧記憶回路２５に記憶される。すなわち、電圧記憶回路２５の電圧情報が第１電圧情報から第２電圧情報に更新される。
【０１３６】
一方、ステップＳ３５において第１電圧情報と第２電圧情報との差が第１値よりも小さい場合、キャリブレーションおよび電圧情報の更新は行われない。
【０１３７】
［第３実施形態の効果］
上記第３実施形態によれば、ＺＱキャリブレーション制御回路２０は、キャリブレーション時に電圧情報を取得し、取得された電圧情報と以前のキャリブレーション時の電圧情報とを比較する。そして、ＺＱキャリブレーション制御回路２０は、電圧変化が小さい時（特性の変化が小さい時）にキャリブレーションを行わず、電圧変化の大きい時（特性の変化が大きい時）のみにキャリブレーションを実行する。これにより、第１実施形態と同様の効果を得ることができる。
【０１３８】
＜第４実施形態＞
以下に図２１を用いて、第４実施形態に係る半導体記憶装置について説明する。第４実施形態は、第２実施形態と第３実施形態の組み合わせである。すなわち、第４実施形態では、電圧測定回路２４は、キャリブレーション直前のコア動作時に電圧情報を取得する。以下に、第４実施形態について詳説する。
【０１３９】
なお、第４実施形態では、主に上記第２実施形態および第３実施形態と異なる点について説明し、同様の点については省略する。
【０１４０】
［第４実施形態のＺＱキャリブレーションシーケンス］
図２１は、第４実施形態に係る半導体記憶装置４００におけるＺＱキャリブレーションシーケンスを示すフローチャートである。
【０１４１】
図２１に示すように、まず、ステップＳ４１において、入出力回路１１により、外部のコントローラ３００からコア動作コマンドが受信される。
【０１４２】
次に、ステップＳ４２において、メモリセルアレイ１０に対してコア動作が実行される。また、電圧測定回路２４により、入出力回路１１に印加された電圧が測定され、この測定された電圧が第１電圧情報として取得される。
【０１４３】
次に、ステップＳ４３において、入出力回路１１により、外部のコントローラ３００から１回目（最初）のＺＱキャリブレーションコマンドが受信される。
【０１４４】
次に、ステップＳ４４において、ＺＱキャリブレーション実行回路２１により、入出力回路１１に対してキャリブレーションが実行される。さらに、電圧測定回路２４で取得された第１電圧情報が、電圧記憶回路２５に記憶される。その後、諸動作が実行される。
【０１４５】
次に、ステップＳ４５において、入出力回路１１により、外部のコントローラ３００から再度コア動作コマンドが受信される。
【０１４６】
次に、ステップＳ４６において、メモリセルアレイ１０に対してコア動作が実行される。また、電圧測定回路２４により、入出力回路１１の電圧が測定され、この測定された電圧が第２電圧情報として取得される。
【０１４７】
次に、ステップＳ４７において、入出力回路１１により、外部のコントローラ３００から２回目のＺＱキャリブレーションコマンドが受信される。
【０１４８】
次に、ステップＳ４８において、ＺＱキャリブレーション実行回路２１により、電圧記憶回路２５に記憶された第１電圧情報と電圧測定回路２４で取得された第２電圧情報とが比較される。より具体的には、第１電圧情報と第２電圧情報との差が第１値以上であるか否かが判断される。
【０１４９】
ステップＳ４８において第１電圧情報と第２電圧情報との差が第１値以上である場合、ステップＳ４９においてＺＱキャリブレーション実行回路２１により入出力回路１１に対してキャリブレーションが実行される。また、電圧測定回路２４で取得された第２電圧情報が、電圧記憶回路２５に記憶される。すなわち、電圧記憶回路２５の電圧情報が第１電圧情報から第２電圧情報に更新される。
【０１５０】
一方、ステップＳ４８において第１電圧情報と第２電圧情報との差が第１値よりも小さい場合、キャリブレーションおよび電圧情報の更新は行われない。
【０１５１】
［第４実施形態の効果］
上記第４実施形態では、ＺＱキャリブレーション制御回路２０は、キャリブレーション直前のコア動作時に電圧情報を取得し、取得された電圧情報と以前のキャリブレーション直前のコア動作時の電圧情報とを比較する。このため、ＺＱキャリブレーションコマンドに応じて電圧情報を取得する必要はなく、第３実施形態よりもＺＱキャリブレーションコマンドに応じた動作を減らすことができる。その結果、第２実施形態と同様の効果を得ることができる。
【０１５２】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を実行することができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１５３】
１０…メモリセルアレイ、１１…入出力回路、２０…ＺＱキャリブレーション制御回路、３００…コントローラ、４００…ＮＡＮＤメモリ（半導体記憶装置）。
【図１】
2018028957.tif 000003
【図２】
2018028957.tif 000004
【図３】
2018028957.tif 000005
【図４】
2018028957.tif 000006
【図５】
2018028957.tif 000007
【図６】
2018028957.tif 000008
【図７】
2018028957.tif 000009
【図８】
2018028957.tif 000010
【図９】
2018028957.tif 000011
【図１０】
2018028957.tif 000012
【図１１】
2018028957.tif 000013
【図１２】
2018028957.tif 000014
【図１３】
2018028957.tif 000015
【図１４】
2018028957.tif 000016
【図１５】
2018028957.tif 000017
【図１６】
2018028957.tif 000018
【図１７】
2018028957.tif 000019
【図１８】
2018028957.tif 000020
【図１９】
2018028957.tif 000021
【図２０】
2018028957.tif 000022
【図２１】
2018028957.tif 000023