図面 (/)
課題
解決手段
概要
背景
半導体記憶装置におけるデータ等の入出力バッファ(入出力回路)の特性は、PVT(Process Voltage Temperature)の変動によって変化する。この特性が適正範囲から外れると、高速なデータ転送が困難になる。このため、入出力回路の特性変化を補正して適正範囲に収める必要がある。
この方法として、ZQ(Zero Quotient)キャリブレーション機能が提案されている。ZQキャリブレーションは、入出力回路の信号線に接続された終端抵抗を用いることで、入出力回路の信号線のインピーダンスを動的に補正する。このZQキャリブレーションは、入出力回路の信号を維持するために頻繁に実行される。
しかし、ZQキャリブレーション中において、入出力回路の利用はできない。このため、ZQキャリブレーションが頻繁に実行されると、入出力回路によるデータ転送を実行することができず、データ転送が制限されてしまう。
概要
ZQキャリブレーションの時間を減らし、データ転送の制限を抑制する。半導体記憶装置は、メモリセルアレイ10と、前記メモリセルアレイに記憶されたデータを外部のコントローラ300に出力する第1回路11と、前記第1回路に対してキャリブレーションを実行する第2回路20と、を具備する。前記第2回路は、前記コントローラから第1コマンドNormalZQcalCMDを受信した時に第1モードキャリブレーションを実行し、前記コントローラから前記第1コマンドと異なる第2コマンドSPZQcalCMDを受信した時に前記第1モードキャリブレーションと異なる第2モードキャリブレーションを実行する。
目的
米国特許出願公開第2014/0185384号明細書
米国特許出願公開第2015/0067292号明細書
ZQキャリブレーションの時間を減らし、データ転送の制限を抑制する半導体記憶装置を提供する
効果
実績
- 技術文献被引用数
- 0件
- 牽制数
- 0件
この技術が所属する分野
(分野番号表示ON)※整理標準化データをもとに当社作成
請求項1
メモリセルアレイと、前記メモリセルアレイに記憶されたデータを外部のコントローラに出力する第1回路と、前記第1回路に対してキャリブレーションを実行する第2回路と、を具備し、前記第2回路は、前記コントローラから第1コマンドを受信した時に第1モードキャリブレーションを実行し、前記コントローラから前記第1コマンドと異なる第2コマンドを受信した時に前記第1モードキャリブレーションと異なる第2モードキャリブレーションを実行する半導体記憶装置。
請求項2
前記第1モードキャリブレーションは、前記第1回路に対してキャリブレーションを実行することを含み、前記第2モードキャリブレーションは、前記第1回路の第1情報と前記第1回路の第2情報とを比較してその差が第1値以上である場合に前記第1回路に対してキャリブレーションを実行することを含む請求項1の半導体記憶装置。
請求項3
メモリセルアレイと、前記メモリセルアレイに記憶されたデータを外部のコントローラに出力する第1回路と、前記第1回路に対してキャリブレーションを実行する第2回路と、を具備し、前記第2回路は、前記第1回路の第1情報を取得するとともに前記第1回路に対してキャリブレーションを実行し、前記第1回路の第2情報を取得するとともに前記第1情報と前記第2情報とを比較してその差が第1値以上である場合に前記第1回路に対してキャリブレーションを実行する半導体記憶装置。
請求項4
前記第1値は、電源オン時に受信される第1コマンドに応じて設定される請求項3の半導体記憶装置。
請求項5
前記第1情報および前記第2情報は、前記第1回路の温度情報である請求項3に記載の半導体記憶装置。
請求項6
請求項7
メモリセルアレイと、前記メモリセルアレイに記憶されたデータを外部のコントローラに出力する第1回路と、前記第1回路に対してキャリブレーションを実行する第2回路と、を具備し、前記第2回路は、前記第1回路の第1情報を取得するとともに前記メモリセルアレイに対して第1動作を実行し、前記第1回路に対してキャリブレーションを実行し、前記第1回路の第2情報を取得するとともに前記メモリセルアレイに対して第2動作を実行し、前記第1情報と前記第2情報とを比較してその差が第1値以上である場合に前記第1回路に対してキャリブレーションを実行する半導体記憶装置。
請求項8
前記第1動作および前記第2動作は、読み出しである請求項7の半導体記憶装置。
請求項9
前記第1値は、電源オン時に受信される第1コマンドに応じて設定される請求項7の半導体記憶装置。
請求項10
前記第1情報および前記第2情報は、前記第1回路の温度情報である請求項7に記載の半導体記憶装置。
請求項11
前記第1情報および前記第2情報は、前記第1回路に印加された電圧情報である請求項7に記載の半導体記憶装置。
技術分野
0001
実施形態は、半導体記憶装置に関する。
背景技術
0002
半導体記憶装置におけるデータ等の入出力バッファ(入出力回路)の特性は、PVT(Process Voltage Temperature)の変動によって変化する。この特性が適正範囲から外れると、高速なデータ転送が困難になる。このため、入出力回路の特性変化を補正して適正範囲に収める必要がある。
0003
この方法として、ZQ(Zero Quotient)キャリブレーション機能が提案されている。ZQキャリブレーションは、入出力回路の信号線に接続された終端抵抗を用いることで、入出力回路の信号線のインピーダンスを動的に補正する。このZQキャリブレーションは、入出力回路の信号を維持するために頻繁に実行される。
0004
しかし、ZQキャリブレーション中において、入出力回路の利用はできない。このため、ZQキャリブレーションが頻繁に実行されると、入出力回路によるデータ転送を実行することができず、データ転送が制限されてしまう。
先行技術
0005
米国特許出願公開第2014/0185384号明細書
米国特許出願公開第2015/0067292号明細書
発明が解決しようとする課題
0006
ZQキャリブレーションの時間を減らし、データ転送の制限を抑制する半導体記憶装置を提供する。
課題を解決するための手段
0007
実施形態による半導体記憶装置は、メモリセルアレイと、前記メモリセルアレイに記憶されたデータを外部のコントローラに出力する第1回路と、前記第1回路に対してキャリブレーションを実行する第2回路と、を具備する。前記第2回路は、前記コントローラから第1コマンドを受信した時に第1モードキャリブレーションを実行し、前記コントローラから前記第1コマンドと異なる第2コマンドを受信した時に前記第1モードキャリブレーションと異なる第2モードキャリブレーションを実行する。
図面の簡単な説明
0008
第1実施形態に係るメモリシステムおよびホストを示す図。
第1実施形態に係る半導体記憶装置を示す図。
第1実施形態に係る半導体記憶装置におけるメモリセルアレイを示す図。
第1実施形態に係る半導体記憶装置におけるZQキャリブレーション実行回路の一例を示す図。
第1実施形態に係る半導体記憶装置におけるプルアップ回路21Aを示す図。
第1実施形態に係る半導体記憶装置におけるプルアップ回路21Bを示す図。
第1実施形態に係る半導体記憶装置におけるプルダウン回路21Cを示す図。
第1実施形態に係る半導体記憶装置におけるZQキャリブレーション時の各種信号のタイミングチャートの一例を示す図。
第1実施形態に係る半導体記憶装置におけるZQキャリブレーションシーケンスを示すフローチャート。
図9のフローチャートにおける各種信号の具体例を示すタイミングチャート。
第1実施形態に係る半導体記憶装置におけるコマンドシーケンスの第1例を示す図。
第1実施形態に係る半導体記憶装置におけるコマンドシーケンスの第1例を示す図。
第1実施形態に係る半導体記憶装置におけるコマンドシーケンスの第2例を示す図。
第1実施形態に係る半導体記憶装置におけるコマンドシーケンスの第2例を示す図。
第1実施形態に係る半導体記憶装置におけるコマンドシーケンスの第2例を示す図。
第2実施形態に係る半導体記憶装置におけるZQキャリブレーションシーケンスを示すフローチャート。
図16のフローチャートにおける各種信号の具体例を示すタイミングチャート。
図17の変形例を示すタイミングチャート。
第3実施形態に係る半導体記憶装置を示す図。
第3実施形態に係る半導体記憶装置におけるZQキャリブレーションシーケンスを示すフローチャート。
第4実施形態に係る半導体記憶装置におけるZQキャリブレーションシーケンスを示すフローチャート。
実施例
0009
本実施形態を以下に図面を参照して説明する。図面において、同一部分には同一の参照符号を付す。
0010
<第1実施形態>
以下に図1乃至図15を用いて、第1実施形態に係る半導体記憶装置について説明する。以下では、半導体記憶装置がNANDメモリである場合について説明するが、これに限らず、半導体記憶装置は任意の不揮発性半導体メモリであってもよい。また、以下の説明において、「接続」は直接接続される場合だけではなく、任意の素子を介して接続される場合も含む。
0011
[第1実施形態の構成例]
図1は、第1実施形態に係るメモリシステム100およびホスト200を示す図である。
0012
図1に示すように、メモリシステム100は、コントローラ300およびNANDメモリ(半導体記憶装置)400を備える。
0013
コントローラ300は、例えばホスト200からのデータ(ユーザデータ等)、コマンド、およびアドレスに基づいて、NANDメモリ400を制御する。コントローラ300は、ホスト200からのデータ、コマンド、およびアドレスをNANDメモリ400に転送する。また、コントローラ300は、各種信号を生成してNANDメモリ400に出力する。なお、図1において、5個のNANDメモリ400が配置されているが、これに限らず、適宜変更可能である。
0015
図2に示すように、半導体記憶装置400は、メモリセルアレイ10、入出力回路11、ロジック制御回路12、レディー/ビジー制御回路13、レジスタ14、シーケンサ15、電圧生成回路16、ロウデコーダ17、センスアンプ18、およびZQキャリブレーション制御回路20を備える。
0016
メモリセルアレイ10は、複数のブロックBLK(BLK0、BLK1、…)を備える。より具体的には、図3に示すように、ブロックBLK0は、複数のNANDストリングSTを含む。各NANDストリングSTは、例えばn個(nは2以上の整数)のメモリセルトランジスタMC(MC0〜MCn−1)と、選択トランジスタS1,S2とを含む。
0017
メモリセルトランジスタMC(以下、単にメモリセルMCと称することもある)は、制御ゲートと電荷蓄積層とを含む積層ゲートを備え、データを不揮発に保持する。メモリセルトランジスタMC0〜MCn−1は、その電流経路が直列に形成される。一端側のメモリセルトランジスタMCn−1の第1端子は選択トランジスタS1の第1端子に接続され、他端側のメモリセルトランジスタMC0の第1端子は選択トランジスタS2の第1端子に接続される。
0018
複数の選択トランジスタS1のゲートは、セレクトゲート線SGDに共通接続される。一方、複数の選択トランジスタS2のゲートは、セレクトゲート線SGSに共通接続される。また、メモリセルトランジスタMC0〜MCn−1の制御端子はそれぞれ、ワード線WL0〜WLn−1のそれぞれに共通接続される。
0019
また、メモリセルアレイ10内でマトリクス状に配置されたNANDストリングSTのうち、同一カラムにある(ブロックBLK間で並ぶ)NANDストリングSTの選択トランジスタS1の第2端子は、いずれかのビット線BL(BL0〜BLm−1、mは2以上の整数)に共通接続される。また、選択トランジスタS2の第2端子はソース線SLに共通接続される。ソース線SLは、例えば複数のブロックBLK内で共通である。
0020
同一ブロックBLK内にあるメモリセルトランジスタMCのデータは、例えば一括して消去される。これに対して、データの読み出しおよび書き込みは、いずれかのブロックBLKのいずれかのワード線WLに共通に接続された複数のメモリセルトランジスタMCにつき、一括して実行される。このデータ単位を「ページ」と呼ぶ。
0021
ブロックBLK1,BLK2の構造は、ブロックBLK0と同様であるため、省略する。
0022
図2に示すように、入出力回路11は、半導体記憶装置400の外部(コントローラ300)から信号DQ(DQ0〜DQ7)を送受信する。信号DQは、コマンド、アドレス、およびデータ等を含む。入出力回路11は、外部からのコマンドおよびアドレスをレジスタ14に転送する。入出力回路11は、外部からの書き込みデータをセンスアンプ18に転送し、センスアンプ18からの読み出しデータを外部に転送する。また、入出力回路11は、外部から電圧Vrefを受信する。電圧Vrefは、基準電圧であり、諸動作における電圧の基準となる。また、入出力回路11は、読み出しデータとともに外部にデータストローブ信号DQS,/DQSを送信する。読み出しデータは、信号DQS,/DQSに同期して読み出される。
0023
ロジック制御回路12は、外部から各種制御信号を受信し、入出力回路11およびシーケンサ15を制御する。この制御信号としては、例えばチップイネーブル信号/CE、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号/WE、リードイネーブル信号RE,/RE、ライトプロテクト信号/WP、およびデータストローブ信号DQS,/DQSが使用される。信号/CEは、半導体記憶装置400をイネーブルにする。信号CLE及びALEはそれぞれ、信号DQがコマンドおよびアドレスであることを入出力回路11に通知する。信号/WEは、信号DQの入力を入出力回路11に指示する。信号RE,/REは、信号DQの出力を入出力回路11に指示する。信号/WPは、例えば電源のオンオフ時に半導体記憶装置400を保護状態にする。信号DQS,/DQSは、書き込みデータとともに受信される。書き込みデータは、信号DQS,/DQSに同期して書き込まれる。
0024
レディー/ビジー制御回路13は、信号/RBを外部に転送して半導体記憶装置400の状態を外部に通知する。信号/RBは、半導体記憶装置400がレディー状態(外部からの命令を受け付ける状態)であるか、ビジー状態(外部からの命令を受け付けない状態)であるかを示す。
0025
レジスタ14は、コマンドおよびアドレスを保持する。レジスタ14は、アドレスをロウデコーダ17およびセンスアンプ18に転送するとともに、コマンドをシーケンサ15に転送する。また、レジスタ14は、コマンドに基づいて実行されるシーケンスを制御するための各種テーブルを保持する。
0026
シーケンサ15は、コマンドを受信し、レジスタ14の各種テーブルを参照する。そして、シーケンサ15は、各種テーブルに示される情報に従って、半導体記憶装置400の全体を制御する。
0027
電圧生成回路16は、シーケンサ15の制御に従って、データの書き込み、読み出し、および消去等の動作に必要な電圧を生成する。電圧生成回路16は、生成した電圧をロウデコーダ17およびセンスアンプ18に供給する。
0028
ロウデコーダ17は、レジスタ14からロウアドレスを受信し、ロウアドレスに基づいてメモリセルアレイ10内のワード線WLを選択する。そして、ロウデコーダ17は、選択されたワード線WLに電圧生成回路16からの電圧を供給する。
0029
センスアンプ18は、メモリセルアレイ10内のビット線BLを介してメモリセルMCのデータを読み出したり、ビット線BLを介してメモリセルアレイ10内のメモリセルMCにデータを書き込んだりする。センスアンプ18は図示せぬデータラッチを含み、データラッチは書き込みデータおよび読み出しデータを一時的に記憶する。センスアンプ18は、レジスタ14からカラムアドレスを受信し、カラムアドレスに基づいてデータラッチのデータを入出力回路11に出力する。
0031
温度測定回路22は、シーケンサ15の制御に従って、入出力回路11の温度を測定し、温度情報を取得する。
0032
温度記憶回路23は、例えばラッチであり、シーケンサ15の制御に従って温度測定回路22により取得された温度情報を記憶する。
0033
ZQキャリブレーション実行回路21は、シーケンサ15の制御に従って、入出力回路
11に対してZQキャリブレーション(以下、キャリブレーションと称す場合がある)を実行する。また、ZQキャリブレーション実行回路21は、シーケンサ15の制御に従って、温度記憶回路23に記憶された温度情報(第1温度情報)と温度測定回路22で新たに取得された温度情報(第2温度情報)とを比較する。そして、ZQキャリブレーション実行回路21は、その比較結果に応じて入出力回路11に対してZQキャリブレーションを実行する、または実行しない。
0034
ここで、ZQキャリブレーションとは、ZQキャリブレーション実行回路21に接続された外部抵抗(終端抵抗)Rを用いて、入出力回路11の出力インピーダンス(出力抵抗)を調整する機能である。より具体的には、ZQキャリブレーション実行回路21内(抵抗Rと入出力回路11との間)に、並列接続された複数のトランジスタが設けられる。そして、選択的にトランジスタをオンすることで、チャネルが導通したトランジスタの数(導通したチャネル幅の和)を調整し、入出力回路11の出力抵抗が調整される。このZQキャリブレーションは、主にデータを外部に出力する時に実行される。以下に、ZQキャリブレーションについて詳説する。
0035
図4は、第1実施形態に係る半導体記憶装置400におけるZQキャリブレーション実行回路21の一例を示す図である。
0038
プルアップ/プルダウン制御回路21Dは、プルアップ回路21Aに電圧VZQP0−VZQP4を供給する。プルアップ回路21Aは、ZQパッドZQPに電気的に接続される。ZQパッドZQPは、抵抗Rを介して接地される。ZQパッドZQPの電圧VPULLUPは、プルアップ/プルダウン制御回路21Dに供給される。
0039
一方、プルアップ回路21Bおよびプルダウン回路21Cは、レプリカバッファを構成する。プルアップ/プルダウン制御回路21Dは、プルアップ回路21Bに電圧VZQP0−VZQP4を供給し、プルダウン回路21Cに電圧VZQN0−VZQN4を供給する。プルアップ回路21Bおよびプルダウン回路21Cは、ノードAに電気的に接続される。ノードAの電圧VPULLDOWNは、プルアップ/プルダウン制御回路21Dに供給される。
0040
図5は第1実施形態に係る半導体記憶装置400におけるプルアップ回路21Aを示す図であり、図6は第1実施形態に係る半導体記憶装置400におけるプルアップ回路21Bを示す図であり、図7は第1実施形態に係る半導体記憶装置400におけるプルダウン回路21Cを示す図である。
0041
図5に示すように、プルアップ回路21Aは、PMOSトランジスタP0A−P4Aを含む。PMOSトランジスタP0A−P4Aの第1端子(ソースおよびドレインの一方)にはそれぞれ電圧VCCQが供給され、PMOSトランジスタP0A−P4Aの第2端子(ソースおよびドレインの他方)はそれぞれZQパッドZQPに電気的に接続される。また、PMOSトランジスタP0A−P4Aのゲートにはそれぞれ、電圧VZQP0−VZQP4のそれぞれが供給される。
0042
図6に示すように、プルアップ回路21Bは、PMOSトランジスタP0B−P4Bを含む。PMOSトランジスタP0B−P4Bの第1端子(ソースおよびドレインの一方)にはそれぞれ電圧VCCQが供給され、PMOSトランジスタP0B−P4Bの第2端子(ソースおよびドレインの他方)はそれぞれノードAに電気的に接続される。また、PMOSトランジスタP0B−P4Bのゲートにはそれぞれ、電圧VZQP0−VZQP4のそれぞれが供給される。
0043
図7に示すように、プルダウン回路21Cは、NMOSトランジスタN0−N4を含む。NMOSトランジスタN0−N4の第1端子(ソースおよびドレインの一方)はそれぞれノードAに電気的に接続され、NMOSトランジスタN0−N4の第2端子(ソースおよびドレインの他方)はそれぞれ接地される。また、MOSトランジスタN0−N4のゲートにはそれぞれ、電圧VZQN0−VZQN4のそれぞれが供給される。
0044
ZQキャリブレーションは、図4に示すように、ZQパッドZQPに抵抗Rを接続して実行される。この抵抗Rは、入出力回路11の所望とする抵抗値である。ZQキャリブレーションでは、抵抗Rとプルアップ回路21A,21Bのインピーダンスとが同じくなるように、電圧VZQP0−VZQP4が決定される。さらに、プルアップ回路21Bのインピーダンスとプルダウン回路21Cのインピーダンスとが同じくなるように、電圧VZQN0−VZQN4が決定される。そして、得られた電圧VZQP0−VZQP4,VZQN0−VZQN4が入出力回路11の図示せぬ各トランジスタのゲートに適宜供給されることで、入出力回路11の出力インピーダンスが最適値に調整される。以下に、ZQキャリブレーションの一例を説明する。
0045
図8は、第1実施形態に係る半導体記憶装置400におけるZQキャリブレーション時の各種信号のタイミングチャートの一例を示す図である。図8において、ZQパッドZQPに印加される電圧は電圧VPULLUPであり、ノードAに印加される電圧は電圧VPULLDOWNである。
0046
図8に示すように、まず、時刻T1において、半導体記憶装置400は、ビジー状態になる。すると、信号PULLUPが活性化される(Hレベルになる)。この信号PULLUPが活性化されている期間において、プルアップ回路21Aのインピーダンス調整が行われる。プルアップ回路21Aのインピーダンス調整では、プルアップ/プルダウン制御回路21Dは、ZQパッドZQPの電圧VPULLUPと基準電圧VCCQ/2とを比較し、これらが等しくなるように電圧VZQP0−VZQP4を調整する。
0047
より具体的には、まず、プルアップ/プルダウン制御回路21Dは、初期値として電圧VZQP0−VZQP4をオールHレベル(11111)に設定する。これにより、プルアップ回路21AのPMOSトランジスタP0A−P4Aは、オフする。このとき、ZQパッドZQPの電圧VPULLUPは、例えば接地電圧であり、基準電圧VCCQ/2よりも小さい。その結果、プルアップ/プルダウン制御回路21Dは、電圧VZQP0−VZQP4をカウントダウンし、電圧VZQP0−VZQP4を(01111)に設定する。ここで、カウントダウンとは、電圧VZQP0−VZQP4のいずれかの0(Lレベル)を1(Hレベル)に変えることを示す。また、カウントアップとは、電圧VZQP0−VZQP4のいずれかの1(Hレベル)を0(Lレベル)に変えることを示す。
0048
電圧VZQP0−VZQP4が(01111)に設定されると、プルアップ回路21AのPMOSトランジスタP0Aがオンし、PMOSトランジスタP1A−P4Aがオフする。これにより、ZQパッドZQPの電圧VPULLUPは、電圧VCCQによってわずかに大きくなる。
0049
ここで、電圧VPULLUPが基準電圧VCCQ/2よりも未だに小さければ、プルアップ/プルダウン制御回路21Dは電圧VZQP0−VZQP4を(00111)にカウントダウンする。その結果、ZQパッドZQPの電圧VPULLUPは、電圧VCCQによってさらに大きくなる。このように、電圧VPULLUPが基準電圧VCCQ/2よりも小さければ、電圧VZQP0−VZQP4のカウントダウンが順次繰り返され、電圧VPULLUPが大きくなる。すなわち、プルアップ回路21Aのインピーダンスが低下していく。
0050
一方、電圧VPULLUPが基準電圧VCCQ/2よりも大きくなると、電圧VZQP0−VZQP4がカウントアップされる。例えば、電圧VZQP0−VZQP4が(00011)だった場合、(00111)に設定される。このようにZQパッドZQPの電圧VPULLUPと基準電圧VCCQ/2との大小により、電圧VZQP0−VZQP4はカウントダウン/アップされる。その結果、ZQパッドZQPの電圧VPULLUPは、基準電圧VCCQ/2近傍で安定する。
0051
ZQパッドZQPの電圧VPULLUPが基準電圧VCCQ/2近傍で安定すると、信号PULLUPが非活性化される(Lレベルになる)。これにより、プルアップ/プルダウン制御回路21Dは電圧VZQP0−VZQP4のカウントを終了し、そのときのカウント値は固定される。そして、電圧VZQP0−VZQP4が確定することで、プルアップ回路21Aのインピーダンス調整は終了する。このときのプルアップ回路21Aのインピーダンスは、抵抗Rと等しい値である。
0052
上記動作の期間に、プルアップ回路21Bのインピーダンス調整も同様に行われる。より具体的には、プルアップ回路21Bにおいてもプルアップ回路21Aと同じ電圧VZQP0−VZQP4が設定される。すなわち、プルアップ回路21Bのインピーダンスは、プルアップ回路21Aと同じに設定される。
0053
次に、プルダウン回路21Cのインピーダンスが、プルアップ回路21Aのインピーダンスと同じになるように調整される。より具体的には、プルアップ回路21Aのインピーダンスが固定された状態、すなわち、プルアップ回路21Bのインピーダンスが固定された状態で、信号PULLDOWNが活性化される(Hレベルになる)。この信号PULLDOWNが活性化されている期間において、プルダウン回路21Cのインピーダンス調整が行われる。プルダウン回路21Cのインピーダンス調整では、プルアップ/プルダウン制御回路21Dは、ノードAの電圧VPULLDOWNと基準電圧VCCQ/2とを比較し、これらが等しくなるように電圧VZQN0−VZQN4を調整する。
0054
より具体的には、まず、プルアップ/プルダウン制御回路21Dは、初期値として電圧VZQN0−VZQN4をオールLレベル(00000)に設定する。これにより、プルダウン回路21CのNMOSトランジスタN0−N4は、オフする。このとき、ノードAの電圧VPULLDOWNは、例えば電源電圧であり、基準電圧VCCQ/2よりも大きい。その結果、プルアップ/プルダウン制御回路21Dは、電圧VZQN0−VZQN4をカウントアップし、電圧VZQN0−VZQN4を(10000)に設定する。
0055
電圧VZQN0−VZQN4が(10000)に設定されると、プルダウン回路21CのNMOSトランジスタN0がオンし、NMOSトランジスタN1−N4がオフする。これにより、ノードAの電圧VPULLDOWNは、接地電圧によって小さくなる。そして、電圧VPULLDOWNが基準電圧VCCQ/2よりも大きければ、プルアップ/プルダウン制御回路21Dは電圧VZQN0−VZQN4を(11000)にカウントアップする。その結果、ノードAの電圧VPULLDOWNは、接地電圧によってさらに小さくなる。このように、電圧VPULLDOWNが基準電圧VCCQ/2よりも大きければ、電圧VZQN0−VZQN4のカウントアップが順次繰り返され、電圧VPULLDOWNが小さくなる。すなわち、プルダウン回路21Cのインピーダンスが低下していく。
0056
一方、電圧VPULLDOWNが基準電圧VCCQ/2よりも小さくなると、電圧VZQN0−VZQN4がカウントダウンされる。例えば、電圧VZQN0−VZQN4が(11100)だった場合、(11000)に設定される。このようにノードAの電圧VPULLDOWNと基準電圧VCCQ/2との大小により、電圧VZQN0−VZQN4はカウントアップ/ダウンされる。その結果、ノードAの電圧VPULLDOWNは、基準電圧VCCQ/2近傍で安定する。
0057
ノードAの電圧VPULLDOWNが基準電圧VCCQ/2近傍で安定すると、時刻T2において、信号PULLDOWNが非活性化される(Lレベルになる)。そして、半導体記憶装置400は、レディー状態になる。これにより、プルアップ/プルダウン制御回路21Dは電圧VZQN0−VZQN4のカウントを終了し、そのときのカウント値は固定される。そして、電圧VZQN0−VZQN4が確定することで、プルダウン回路21Cのインピーダンス調整は終了する。このときのプルダウン回路21Cのインピーダンスは、プルアップ回路21Bのインピーダンスと等しい値である。すなわち、プルアップ回路21A,21B,21Cのインピーダンスは、抵抗Rと等しい値に設定される。
0058
なお、ZQキャリブレーション実行回路21、温度測定回路22、および温度記憶回路23がZQキャリブレーション制御回路20に設けられる例を示したが、これに限らず、これらは独立して設けられてもよい。
0059
[第1実施形態のZQキャリブレーションシーケンス]
図9は、第1実施形態に係る半導体記憶装置400におけるZQキャリブレーションシーケンスを示すフローチャートである。図9に示す各動作は、シーケンサ15の制御に従った各回路によって実行される。
0060
図9に示すように、まず、ステップS11において、入出力回路11により、外部のコントローラ300から1回目(最初)のZQキャリブレーションコマンドが受信される。
0061
次に、ステップS12において、温度測定回路22により、入出力回路11の温度が測定され、この測定された温度が第1温度情報として取得される。また、ZQキャリブレーション実行回路21により、入出力回路11に対してキャリブレーションが実行される。さらに、温度測定回路22で取得された第1温度情報が、温度記憶回路23に記憶される。その後、諸動作が実行される。
0062
次に、ステップS13において、入出力回路11により、外部のコントローラ300から2回目のZQキャリブレーションコマンドが受信される。
0063
次に、ステップS14において、温度測定回路22により、入出力回路11の温度が測定され、この測定された温度が第2温度情報として取得される。
0064
次に、ステップS15において、ZQキャリブレーション実行回路21により、温度記憶回路23に記憶された第1温度情報と温度測定回路22で取得された第2温度情報とが比較される。より具体的には、第1温度情報と第2温度情報との差が第1値以上であるか否かが判断される。第1値は、予め設定される値、または後述するset featureシーケンスによって設定される値である。第1値は、例えば半導体記憶装置の動作速度の必要性に応じて適宜設定される。例えば、高速動作の場合に第1値は2〜3℃程度であり、低速動作の場合に第1値は10℃程度である。
0065
ステップS15において第1温度情報と第2温度情報との差が第1値以上である場合、ステップS16においてZQキャリブレーション実行回路21により入出力回路11に対してキャリブレーションが実行される。また、温度測定回路22で取得された第2温度情報が、温度記憶回路23に記憶される。すなわち、温度記憶回路23の温度情報が第1温度情報から第2温度情報に更新される。
0066
一方、ステップS15において第1温度情報と第2温度情報との差が第1値よりも小さい場合、キャリブレーションおよび温度情報の更新は行われない。
0067
図10は、図9のフローチャートにおける各種信号の具体例を示すタイミングチャートである。より具体的には、図10(a)は図9のステップS15においてNoである場合(第1具体例)を示し、図10(b)は図9のステップS15においてYesである場合(第2具体例)を示す。
0068
図10(a)に示すように、第1具体例では、まず、時刻T1において入出力回路11はコントローラ300から信号DQとして1回目のZQキャリブレーションコマンドZQcalCMDを受信する(ステップS11)。これにより、時刻T2において、半導体記憶装置400はビジー状態になる。そして、温度測定回路22は第1温度情報を取得し、ZQキャリブレーション実行回路21はキャリブレーションを実行し、温度記憶回路23は第1温度情報を記憶する(ステップS12)。その後、時刻T3において、半導体記憶装置400は、レディー状態になる。
0069
次に、時刻T4において、入出力回路11はコントローラ300から信号DQとして2回目のZQキャリブレーションコマンドZQcalCMDを受信する(ステップS13)。これにより、時刻T5において、半導体記憶装置400はビジー状態になる。そして、温度測定回路22は第2温度情報を取得し、ZQキャリブレーション実行回路21は第1温度情報と第2温度情報とを比較する(ステップS14,15)。第1具体例では、第1温度情報と第2温度情報との差が第1値より小さいため(ステップS15のNo)、キャリブレーションおよび温度情報の更新(ステップS16)が行われない。その結果、時刻T6において、半導体記憶装置400は、レディー状態になる。
0070
その後、時刻T7において、コントローラ300からロジック制御回路12にリードイネーブル信号/REが入力されることで、入出力回路11はデータをコントローラ300に出力する。
0071
一方、図10(b)に示すように、第2具体例では、時刻T1〜T4において、第1具体例と同様の動作が実行される(ステップS11〜S13)。
0072
時刻T4において2回目のZQキャリブレーションコマンドZQcalCMDが受信されると、時刻T5において半導体記憶装置400はビジー状態になる。そして、温度測定回路22は第2温度情報を取得し、ZQキャリブレーション実行回路21は第1温度情報と第2温度情報とを比較する(ステップS14,15)。第2具体例では、第1温度情報と第2温度情報との差が第1値以上であるため(ステップS15のYes)、ZQキャリブレーション実行回路21はキャリブレーションを実行し、温度記憶回路23は第2温度情報を記憶する(ステップS16)。その結果、時刻T8において、半導体記憶装置400は、レディー状態になる。
0073
その後、時刻T9において、コントローラ300からロジック制御回路12にリードイネーブル信号/REが入力されることで、入出力回路11はデータをコントローラ300に出力する。
0074
このように、第1具体例ではステップS16が行われないため、2回目のZQキャリブレーションコマンドZQcalCMDに基づくレディー状態の期間(時刻T5〜T6)は、第2具体例におけるレディー状態の期間(時刻T5〜T8)よりも短くなる。結果的に、第2具体例よりも第1具体例の方が、データ出力の開始時刻および終了時刻が早くなる。
0075
[第1実施形態のコマンドシーケンス]
上述したZQキャリブレーションシーケンスでは、ZQキャリブレーション実行回路21は、第1モードキャリブレーションおよび第2モードキャリブレーションを実行する。第1モードキャリブレーションでは、ZQキャリブレーションコマンドを受信すると、常にキャリブレーションが実行される(ステップS12)。一方、第2モードキャリブレーションでは、ZQキャリブレーションコマンドを受信すると、第1温度情報と第2温度情報との差に応じてキャリブレーションが実行される、または実行されない(ステップS15,S16)。以下に、これら第1モードキャリブレーションおよび第2モードキャリブレーションを実行するためのコマンドシーケンスについて説明する。
0076
図11および図12は、第1実施形態に係る半導体記憶装置400におけるコマンドシーケンスの第1例(特殊コマンドシーケンス)を示す図である。第1例は、特殊コマンドを用いて第1モードキャリブレーションおよび第2モードキャリブレーションを実行する例である。
0077
より具体的には、図11(a)は第1例における第2モードキャリブレーションにおいてキャリブレーションが行われない場合を示す図であり、図11(b)は第1例における第2モードキャリブレーションにおいてキャリブレーションが実行される場合を示す図である。また、図12は、第1例における第1モードキャリブレーションを示す図である。
0078
図11(a)および図11(b)に示すように、第1例における第2モードキャリブレーションでは、時刻T1において、入出力回路11はコントローラ300から信号DQとしてコマンドSPZQcalCMDを受信する。コマンドSPZQcalCMDは、特殊コマンドであり、通常のキャリブレーション用のコマンドNormalZQcalCMDとは異なるコマンドである。このコマンドSPZQcalCMDは、ステップS13で受信される2回目のZQキャリブレーションコマンドに対応する。
0079
コマンドSPZQcalCMDが受信されると、時刻T2において半導体記憶装置400はビジー状態になる。そして、第2モードキャリブレーションが実行される。すなわち、図11(a)に示すように、第1温度情報と第2温度情報との差が第1値よりも小さい場合にキャリブレーションは行われず、時刻T3において半導体記憶装置400はレディー状態になる。その後、時刻T4においてデータが外部に出力される。また、図11(b)に示すように、第1温度情報と第2温度情報との差が第1値以上である場合にキャリブレーションは行われ、時刻T5において半導体記憶装置400はレディー状態になる。その後、時刻T6においてデータが外部に出力される。
0080
一方、図12に示すように、第1例における第1モードキャリブレーションでは、時刻T1において、入出力回路11はコントローラ300から信号DQとして通常のキャリブレーション用のコマンドNormalZQcalCMDを受信する。このコマンドNormalZQcalCMDは、ステップS11で受信される1回目のZQキャリブレーションコマンドに対応する。
0081
コマンドNormalZQcalCMDが受信されると、時刻T2において半導体記憶装置400はビジー状態になる。そして、第1モードキャリブレーションが実行される。すなわち、常にキャリブレーションが行われ、時刻T3において半導体記憶装置400はレディー状態になる。その後、時刻T4においてデータが外部に出力される。
0082
このように、第1例では、特殊コマンドであるコマンドSPZQcalCMDを用いて第2モードキャリブレーションが実行され、通常のコマンドNormalZQcalCMDを用いて第1モードキャリブレーションが実行される。
0083
図13乃至図15は、第1実施形態に係る半導体記憶装置400におけるコマンドシーケンスの第2例(set featureコマンドシーケンス)を示す図である。第2例は、set featureコマンドを用いて第1モードキャリブレーションおよび第2モードキャリブレーションを設定する例である。
0084
より具体的には、図13は、第2例における電源オン時のコマンドシーケンスを示す図である。図14(a)は第2例における第2モードキャリブレーションにおいてキャリブレーションが行われない場合を示し、図14(b)は第2例における第2モードキャリブレーションにおいてキャリブレーションが実行される場合を示す。また、図15は、第2例における第1モードキャリブレーションを示す。
0085
図13に示すように、set featureは、コマンドSFCMD、アドレスADD、およびデータ0〜3で構成される。図示するように、第2例において電源がオンすると、時刻T1において、入出力回路11はコントローラ300から信号DQとしてコマンドSFCMDを受信する。引き続き、時刻T2において、入出力回路11はコントローラ300から信号DQとしてアドレスADDを受信する。その後、時刻T3において、入出力回路11はコントローラ300から信号DQとしてデータ0〜3を順次受信する。
0086
アドレスADDは機能番号を指定し、データ0〜3は機能番号にて示される機能のパラメータを設定する。すなわち、アドレスADDによって、キャリブレーション機能が指定される。そして、データ0〜3によって、キャリブレーション機能が第1モードなのか第2モードなのかが設定される。また、データ0〜3によって、上述した第2モード時の第1値等も設定される。
0087
その後、時刻T4において、半導体記憶装置400はビジー状態になる。これにより、上記機能が有効化し、キャリブレーション機能が第1モードまたは第2モードに設定される。有効化の後、時刻T5において、半導体記憶装置400はレディー状態になる。
0088
図14(a)および図14(b)に示すように、第2例における第2モードキャリブレーションでは、時刻T1において、入出力回路11はコントローラ300から信号DQとしてコマンドNormalZQcalCMDを受信する。コマンドNormalZQcalCMDは、第1例の特殊コマンドと異なり、通常のキャリブレーション用のコマンドである。このコマンドNormalZQcalCMDは、ステップS13で受信される2回目のZQキャリブレーションコマンドに対応する。
0089
コマンドNormalZQcalCMDが受信されると、時刻T2において半導体記憶装置400はビジー状態になる。そして、第2モードキャリブレーションが実行される。すなわち、図14(a)に示すように、第1温度情報と第2温度情報との差が第1値よりも小さい場合にキャリブレーションは行われず、時刻T3において半導体記憶装置400はレディー状態になる。その後、時刻T4においてデータが外部に出力される。また、図14(b)に示すように、第1温度情報と第2温度情報との差が第1値以上である場合にキャリブレーションは行われ、時刻T5において半導体記憶装置400はレディー状態になる。その後、時刻T6においてデータが外部に出力される。
0090
一方、図15に示すように、第2例における第1モードキャリブレーションでは、第1例と同様に、時刻T1において、入出力回路11はコントローラ300から信号DQとして通常のキャリブレーション用のコマンドNormalZQcalCMDを受信する。このコマンドNormalZQcalCMDは、ステップS11で受信される1回目のZQキャリブレーションコマンドに対応する。その後は、図12に示す第1例と同様のシーケンスとなる。
0091
このように、第2例では、電源オン時のset featureによって第1モードキャリブレーションか第2モードキャリブレーションかが設定され、その設定に基づいて通常のコマンドNormalZQcalCMDを用いて第1モードキャリブレーションまたは第2モードキャリブレーションが実行される。すなわち、第2例では、特殊コマンドを用いることなく、第1モードキャリブレーションまたは第2モードキャリブレーションが実行される。
0092
[第1実施形態の効果]
上記第1実施形態によれば、半導体記憶装置400は、ZQキャリブレーション制御回路20を備える。ZQキャリブレーション制御回路20は、キャリブレーション時に温度情報を取得し、取得された温度情報と以前のキャリブレーション時の温度情報とを比較する。そして、ZQキャリブレーション制御回路20は、温度変化が小さい時(特性の変化が小さい時)にキャリブレーションを行わず、温度変化の大きい時(特性の変化が大きい時)のみにキャリブレーションを実行する。これにより、キャリブレーションの時間を最小限にすることができ、データ転送の制限を抑制することができる。
0093
<第2実施形態>
以下に図16および図17を用いて、第2実施形態に係る半導体記憶装置について説明する。上記第1実施形態では、温度測定回路22がキャリブレーションの時に温度情報を取得した。これに対し、第2実施形態では、温度測定回路22は、キャリブレーション直前のコア動作の時に温度情報を取得する。以下に、第2実施形態について詳説する。
0094
なお、第2実施形態では、主に上記第1実施形態と異なる点について説明し、同様の点については省略する。
0095
[第2実施形態のZQキャリブレーションシーケンス]
図16は、第2実施形態に係る半導体記憶装置400におけるZQキャリブレーションシーケンスを示すフローチャートである。
0096
図16に示すように、まず、ステップS21において、入出力回路11により、外部のコントローラ300からコア動作コマンドが受信される。コア動作コマンドは、例えば書き込みコマンド、読み出しコマンド、または消去コマンドである。
0097
次に、ステップS22において、メモリセルアレイ10に対してコア動作(書き込み、読み出し、または消去)が実行される。また、温度測定回路22により、入出力回路11の温度が測定され、この測定された温度が第1温度情報として取得される。
0098
次に、ステップS23において、入出力回路11により、外部のコントローラ300から1回目(最初)のZQキャリブレーションコマンドが受信される。
0099
次に、ステップS24において、ZQキャリブレーション実行回路21により、入出力回路11に対してキャリブレーションが実行される。さらに、温度測定回路22で取得された第1温度情報が、温度記憶回路23に記憶される。その後、諸動作が実行される。
0100
次に、ステップS25において、入出力回路11により、外部のコントローラ300から再度コア動作コマンドが受信される。このコア動作コマンドは、ステップS21において受信されたコア動作コマンドと同じコマンドである。
0101
次に、ステップS26において、メモリセルアレイ10に対してコア動作が実行される。また、温度測定回路22により、入出力回路11の温度が測定され、この測定された温度が第2温度情報として取得される。
0102
次に、ステップS27において、入出力回路11により、外部のコントローラ300から2回目のZQキャリブレーションコマンドが受信される。
0103
次に、ステップS28において、ZQキャリブレーション実行回路21により、温度記憶回路23に記憶された第1温度情報と温度測定回路22で取得された第2温度情報とが比較される。より具体的には、第1温度情報と第2温度情報との差が第1値以上であるか否かが判断される。
0104
ステップS28において第1温度情報と第2温度情報との差が第1値以上である場合、ステップS29においてZQキャリブレーション実行回路21により入出力回路11に対してキャリブレーションが実行される。また、温度測定回路22で取得された第2温度情報が、温度記憶回路23に記憶される。すなわち、温度記憶回路23の温度情報が第1温度情報から第2温度情報に更新される。
0105
一方、ステップS28において第1温度情報と第2温度情報との差が第1値よりも小さい場合、キャリブレーションおよび温度情報の更新は行われない。
0106
図17は、図16のフローチャートにおける各種信号の具体例を示すタイミングチャートである。より具体的には、図17(a)は図16のステップS28においてNoである場合(第1具体例)を示し、図17(b)は図16のステップS28においてYesである場合(第2具体例)を示す。
0107
図17(a)に示すように、第1具体例では、まず、時刻T1において入出力回路11はコントローラ300から信号DQとしてコア動作コマンド(読み出しコマンドREADCMD)を受信する(ステップS21)。ここでは、コア動作として読み出しを行う例を示している。これにより、時刻T2において、半導体記憶装置400はビジー状態になる。そして、メモリセルアレイ10のデータが、センスアンプ18内の図示せぬラッチに読み出される。また、温度測定回路22は、第1温度情報を取得する(ステップS22)。その後、時刻T3において、半導体記憶装置400は、レディー状態になる。
0108
引き続き、時刻T4において入出力回路11はコントローラ300から信号DQとして1回目のZQキャリブレーションコマンドZQcalCMDを受信する(ステップS23)。これにより、時刻T5において、半導体記憶装置400はビジー状態になる。そして、ZQキャリブレーション実行回路21はキャリブレーションを実行し、温度記憶回路23は第1温度情報を記憶する(ステップS24)。その後、時刻T6において、半導体記憶装置400は、レディー状態になる。図示はしないが、その後、センスアンプ18内のラッチのデータが、入出力回路11によって外部に出力される。
0109
次に、時刻T7において入出力回路11はコントローラ300から信号DQとして再度読み出しコマンドREADCMDを受信する(ステップS25)。これにより、時刻T8において、半導体記憶装置400はビジー状態になる。そして、メモリセルアレイ10のデータが、センスアンプ18内のラッチに読み出される。また、温度測定回路22は、第2温度情報を取得する(ステップS26)。その後、時刻T9において、半導体記憶装置400は、レディー状態になる。
0110
引き続き、時刻T10において、入出力回路11はコントローラ300から信号DQとして2回目のZQキャリブレーションコマンドZQcalCMDを受信する(ステップS27)。これにより、時刻T11において、半導体記憶装置400はビジー状態になる。そして、ZQキャリブレーション実行回路21は第1温度情報と第2温度情報とを比較する(ステップS28)。
0111
第1具体例では、第1温度情報と第2温度情報との差が第1値より小さいため(ステップS28のNo)、キャリブレーションおよび温度情報の更新(ステップS29)が行われない。その結果、時刻T12において、半導体記憶装置400は、レディー状態になる。
0112
その後、時刻T13において、コントローラ300からロジック制御回路12にリードイネーブル信号/REが入力されることで、入出力回路11はセンスアンプ18内のラッチのデータをコントローラ300に出力する。
0113
一方、図17(b)に示すように、第2具体例では、時刻T1〜T10において、第1具体例と同様の動作が実行される(ステップS21〜S27)。
0114
時刻T10において2回目のZQキャリブレーションコマンドZQcalCMDが受信されると、時刻T11において半導体記憶装置400はビジー状態になる。そして、ZQキャリブレーション実行回路21は第1温度情報と第2温度情報とを比較する(ステップS28)。
0115
第2具体例では、第1温度情報と第2温度情報との差が第1値以上であるため(ステップS28のYes)、ZQキャリブレーション実行回路21はキャリブレーションを実行し、温度記憶回路23は第2温度情報を記憶する(ステップS29)。その結果、時刻T14において、半導体記憶装置400は、レディー状態になる。
0116
その後、時刻T15において、コントローラ300からロジック制御回路12にリードイネーブル信号/REが入力されることで、入出力回路11はデータをコントローラ300に出力する。
0117
このように、第1具体例ではステップS29が行われないため、2回目のZQキャリブレーションコマンドZQcalCMDに基づくレディー状態の期間(時刻T11〜T12)は、第2具体例におけるレディー状態の期間(時刻T11〜T14)よりも短くなる。結果的に、第2具体例よりも第1具体例の方が、データ出力の開始時刻および終了時刻が早くなる。
0119
図18(a)および図18(b)に示すように、変形例では、時刻T8において半導体記憶装置400がビジー状態になると、ビジー状態のままで2回目のZQキャリブレーションコマンドZQcalCMDが受信される。そして、2回目のZQキャリブレーションコマンドZQcalCMDに伴う動作が終了するまで、半導体記憶装置400はビジー状態である。すなわち、第1具体例においては時刻T8〜T10までビジー状態であり、第2具体例においては時刻T8〜T12までビジー状態である。
0120
[第2実施形態の効果]
通常、NANDメモリでは、コア動作の時に温度情報が取得される。上記第2実施形態では、ZQキャリブレーション制御回路20は、キャリブレーション直前のコア動作時に温度情報を取得し、取得された温度情報と以前のキャリブレーション直前のコア動作時の温度情報とを比較する。すなわち、温度情報は、ZQキャリブレーションコマンドではなく、通常通りにコア動作コマンドに応じて取得される。このため、ZQキャリブレーションコマンドに応じて温度情報を取得する必要はなく、第1実施形態よりもZQキャリブレーションコマンドに応じた動作を減らすことができる。その結果、データ出力の制限をより抑制することができる。
0121
<第3実施形態>
以下に図19および図20を用いて、第3実施形態に係る半導体記憶装置について説明する。上記第1実施形態では、ZQキャリブレーション制御回路20が、温度情報を取得し、温度情報の変化に応じてキャリブレーションを行った。これに対し、第3実施形態では、ZQキャリブレーション制御回路20が、電圧情報を取得し、電圧情報の変化に応じてキャリブレーションを行う。以下に、第3実施形態について詳説する。
0122
なお、第3実施形態では、主に上記第1実施形態と異なる点について説明し、同様の点については省略する。
0123
[第3実施形態の構成例]
図19は、第3実施形態に係る半導体記憶装置400を示す図である。
0125
電圧測定回路24は、シーケンサ15の制御に従って、入出力回路11に印加された電圧を測定し、電圧情報を取得する。
0126
電圧記憶回路25は、例えばラッチであり、シーケンサ15の制御に従って電圧測定回路24により取得された電圧情報を記憶する。
0127
ZQキャリブレーション実行回路21は、シーケンサ15の制御に従って、電圧記憶回路25に記憶された電圧情報(第1電圧情報)と電圧測定回路24で新たに取得された電圧情報(第2電圧情報)とを比較する。そして、ZQキャリブレーション実行回路21は、その比較結果に応じて入出力回路11に対してZQキャリブレーションを実行する、または実行しない。
0128
なお、ZQキャリブレーション実行回路21、電圧測定回路24、および電圧記憶回路25がZQキャリブレーション制御回路20に設けられる例を示したが、これに限らず、これらは独立して設けられてもよい。
0129
[第3実施形態のZQキャリブレーションシーケンス]
図20は、第3実施形態に係る半導体記憶装置400におけるZQキャリブレーションシーケンスを示すフローチャートである。
0130
図20に示すように、まず、ステップS31において、入出力回路11により、外部のコントローラ300から1回目(最初)のZQキャリブレーションコマンドが受信される。
0131
次に、ステップS32において、電圧測定回路24により、入出力回路11に印加された電圧が測定され、この測定された電圧が第1電圧情報として取得される。また、ZQキャリブレーション実行回路21により、入出力回路11に対してキャリブレーションが実行される。さらに、電圧測定回路24で取得された第1電圧情報が、電圧記憶回路25に記憶される。その後、諸動作が実行される。
0132
次に、ステップS33において、入出力回路11により、外部のコントローラ300から2回目のZQキャリブレーションコマンドが受信される。
0133
次に、ステップS34において、電圧測定回路24により、入出力回路11に印加された電圧が測定され、この測定された電圧が第2電圧情報として取得される。
0134
次に、ステップS35において、ZQキャリブレーション実行回路21により、電圧記憶回路25に記憶された第1電圧情報と電圧測定回路24で取得された第2電圧情報とが比較される。より具体的には、第1電圧情報と第2電圧情報との差が第1値以上であるか否かが判断される。
0135
ステップS35において第1電圧情報と第2電圧情報との差が第1値以上である場合、ステップS36においてZQキャリブレーション実行回路21により入出力回路11に対してキャリブレーションが実行される。また、電圧測定回路24で取得された第2電圧情報が、電圧記憶回路25に記憶される。すなわち、電圧記憶回路25の電圧情報が第1電圧情報から第2電圧情報に更新される。
0136
一方、ステップS35において第1電圧情報と第2電圧情報との差が第1値よりも小さい場合、キャリブレーションおよび電圧情報の更新は行われない。
0137
[第3実施形態の効果]
上記第3実施形態によれば、ZQキャリブレーション制御回路20は、キャリブレーション時に電圧情報を取得し、取得された電圧情報と以前のキャリブレーション時の電圧情報とを比較する。そして、ZQキャリブレーション制御回路20は、電圧変化が小さい時(特性の変化が小さい時)にキャリブレーションを行わず、電圧変化の大きい時(特性の変化が大きい時)のみにキャリブレーションを実行する。これにより、第1実施形態と同様の効果を得ることができる。
0138
<第4実施形態>
以下に図21を用いて、第4実施形態に係る半導体記憶装置について説明する。第4実施形態は、第2実施形態と第3実施形態の組み合わせである。すなわち、第4実施形態では、電圧測定回路24は、キャリブレーション直前のコア動作時に電圧情報を取得する。以下に、第4実施形態について詳説する。
0139
なお、第4実施形態では、主に上記第2実施形態および第3実施形態と異なる点について説明し、同様の点については省略する。
0140
[第4実施形態のZQキャリブレーションシーケンス]
図21は、第4実施形態に係る半導体記憶装置400におけるZQキャリブレーションシーケンスを示すフローチャートである。
0141
図21に示すように、まず、ステップS41において、入出力回路11により、外部のコントローラ300からコア動作コマンドが受信される。
0142
次に、ステップS42において、メモリセルアレイ10に対してコア動作が実行される。また、電圧測定回路24により、入出力回路11に印加された電圧が測定され、この測定された電圧が第1電圧情報として取得される。
0143
次に、ステップS43において、入出力回路11により、外部のコントローラ300から1回目(最初)のZQキャリブレーションコマンドが受信される。
0144
次に、ステップS44において、ZQキャリブレーション実行回路21により、入出力回路11に対してキャリブレーションが実行される。さらに、電圧測定回路24で取得された第1電圧情報が、電圧記憶回路25に記憶される。その後、諸動作が実行される。
0145
次に、ステップS45において、入出力回路11により、外部のコントローラ300から再度コア動作コマンドが受信される。
0146
次に、ステップS46において、メモリセルアレイ10に対してコア動作が実行される。また、電圧測定回路24により、入出力回路11の電圧が測定され、この測定された電圧が第2電圧情報として取得される。
0147
次に、ステップS47において、入出力回路11により、外部のコントローラ300から2回目のZQキャリブレーションコマンドが受信される。
0148
次に、ステップS48において、ZQキャリブレーション実行回路21により、電圧記憶回路25に記憶された第1電圧情報と電圧測定回路24で取得された第2電圧情報とが比較される。より具体的には、第1電圧情報と第2電圧情報との差が第1値以上であるか否かが判断される。
0149
ステップS48において第1電圧情報と第2電圧情報との差が第1値以上である場合、ステップS49においてZQキャリブレーション実行回路21により入出力回路11に対してキャリブレーションが実行される。また、電圧測定回路24で取得された第2電圧情報が、電圧記憶回路25に記憶される。すなわち、電圧記憶回路25の電圧情報が第1電圧情報から第2電圧情報に更新される。
0150
一方、ステップS48において第1電圧情報と第2電圧情報との差が第1値よりも小さい場合、キャリブレーションおよび電圧情報の更新は行われない。
0151
[第4実施形態の効果]
上記第4実施形態では、ZQキャリブレーション制御回路20は、キャリブレーション直前のコア動作時に電圧情報を取得し、取得された電圧情報と以前のキャリブレーション直前のコア動作時の電圧情報とを比較する。このため、ZQキャリブレーションコマンドに応じて電圧情報を取得する必要はなく、第3実施形態よりもZQキャリブレーションコマンドに応じた動作を減らすことができる。その結果、第2実施形態と同様の効果を得ることができる。
0152
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を実行することができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
0153
10…メモリセルアレイ、11…入出力回路、20…ZQキャリブレーション制御回路、300…コントローラ、400…NANDメモリ(半導体記憶装置)。