以下、実施形態につき図面を参照して説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
1.第1実施形態
第1実施形態に係る不揮発性半導体記憶装置及びメモリシステムについて説明する。以下では不揮発性半導体記憶装置として、NAND型フラッシュメモリを例に挙げて説明する。
1.1 構成について
1.1.1 メモリシステムの全体構成について
まず、本実施形態に係るメモリシステムの全体構成について、図1を用いて説明する。
図1に示すように、メモリシステム1は、例えば複数のメモリ10(10_0、10_1、10_2、…)、及び1つのコントローラ100を備える。
複数のメモリ10は、NANDバスを介してコントローラ100に接続される。メモリ10は、不揮発性半導体記憶装置であり、例えばNAND型フラッシュメモリである。メモリ10は、それぞれが複数のメモリチップを備えることが可能である。ここで、メモリ10は、任意のメモリチップを用いることができ、より具体的には、例えば、あらゆるタイプのNAND型フラッシュメモリチップを用いることが可能である。なお、図1では、メモリ10は3個配置されているが、3個に限らず、適宜変更可能である。また、本実施形態では、不揮発性半導体記憶装置として、NAND型フラッシュメモリを用いているが、必ずしもこれに限らない。
コントローラ100は、ホスト機器200に接続される。コントローラ100は、例えばホスト機器200からのコマンドに基づいて、各メモリ10の制御や、データの送受信等を行う。
1.1.2 メモリの構成について
次にメモリ10の構成について、図2及び図3を用いて説明する。以下ではメモリ10_0について説明するが、他のメモリ10(10_1、10_2、…)も同様の構成である。
まずメモリ10_0の断面構成について説明する。
図2に示すように、メモリ10_0は、パッケージ基板40、インターフェースチップ20、及び複数(例えば8個)のメモリチップ30(30a〜30f)を備える。例えばインターフェースチップ20及び複数のメモリチップ30は、パッケージ基板40上に、モールド樹脂(図示せず)によって封止される。
パッケージ基板40は、インターフェースチップ20及びメモリチップ30を実装する。パッケージ基板40は、メモリチップ30及びインターフェースチップ20に例えば電源電圧VCC及び接地電圧VSSを供給する。また、パッケージ基板40は、コントローラ100とインターフェースチップ20との間で、データ等を転送する。
インターフェースチップ20は、パッケージ基板40と各メモリチップ30との間で、データ等を転送する。
メモリチップ30は、コントローラ100からのデータ等を記憶する。なお、図2では、メモリチップ30(30a〜30f)は8個積層されているが、8個に限らず、適宜変更可能である。
次にメモリ10_0の断面構成について、より具体的に説明する。
パッケージ基板(半導体基板)40の下面に、バンプ41が設けられる。不揮発性半導体記憶装置がBGA(Ball Grid Array)パッケージの場合、バンプ41は、はんだボールである。パッケージ基板40は、バンプ41を介してコントローラ100に電気的に接続される。
パッケージ基板40の上面に、インターフェースチップ(半導体チップ)20が設けられる。
インターフェースチップ20及びパッケージ基板40の上面の上方に、8個のメモリチップ30(30a〜30f)が設けられる。8個のメモリチップ30a〜30hは、下方側から順に積層される。最上層のメモリチップ30hを除く各メモリチップ30a〜30gの各々には、その上面から下面に達する貫通電極(TSV:through silicon via)31が設けられる。そして、隣接する2つのメモリチップ30の間には、各メモリチップ30のTSV31を電気的に接続するためにバンプ32が設けられている。なお、最上層のメモリチップ30hは、TSV31を含んでいても良い。
最下層のメモリチップ30aの下面上に、配線33が設けられる。この配線33とインターフェースチップ20との間に、バンプ21が設けられる。配線33とパッケージ基板40との間に、バンプ42が設けられる。
次にインターフェースチップ20及びメモリチップ30の構成について説明する。
図3に示すように、インターフェースチップ20及び各メモリチップ30はTSV31を介して接続されている。そして各メモリチップ30はインターフェースチップ20を介してコントローラとデータ等を送受信する。
メモリチップ30は、データ等を記憶するためのメモリセルアレイ53を含む。例えばメモリチップ30は、メモリセルが半導体基板上に二次元に配置されたメモリセルアレイ53を含む平面型NAND型フラッシュメモリでも良く、メモリセルが半導体基板上方に三次元に配置されたメモリセルアレイ53を含む三次元積層型NAND型フラッシュメモリでも良い。
なお、三次元積層型NAND型フラッシュメモリにおけるメモリセルアレイ53の構成については、例えば、“三次元積層不揮発性半導体メモリ(THREE DIMENSIONAL STACKED NONVOLATILE SEMICONDUCTOR MEMORY)”という2009年3月19日に出願された米国特許出願12/407,403号に記載されている。また、“三次元積層不揮発性半導体メモリ(THREE DIMENSIONAL STACKED NONVOLATILE SEMICONDUCTOR MEMORY)”という2009年3月18日に出願された米国特許出願12/406,524号、“不揮発性半導体記憶装置及びその製造方法(NON-VOLATILE SEMICONDUCTOR STORAGE DEVICE AND METHOD OF MANUFACTURING THE SAME)”という2010年3月25日に出願された米国特許出願12/679,991号“半導体メモリ及びその製造方法(SEMICONDUCTOR MEMORY AND METHOD FOR MANUFACTURING SAME)”という2009年3月23日に出願された米国特許出願12/532,030号に記載されている。これらの特許出願は、その全体が本願明細書において参照により援用されている。
インターフェースチップ20は、入出力制御回路50、ロジック回路51、及びODT(on die termination)制御回路52を含む。また、インターフェースチップ20は、外部(コントローラ100)とデータを含む各信号の送受信を行うため、8ビットのデータ線DQ[7:0]、クロック信号DQS、DQSn、リードイネーブル信号RE、REn、チップイネーブル信号CEn、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号WEn、ライトプロテクト信号WPn、及びODTイネーブル信号ODTENに対応する複数の端子を含む。
ロジック回路51は、各制御信号、例えばリードイネーブル信号RE及びREn、チップイネーブル信号CEn、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号WEn、ライトプロテクト信号WPn、並びにODTイネーブル信号ODTENをコントローラ100から受信する。ロジック回路51は、複数の制御信号に対応した複数の端子に接続される。ロジック回路51は、例えばリードイネーブル信号RE及びREnを受信する端子に接続される図示せぬODT回路を含む(詳細は後述する)。ODT回路は、信号の入出力において、外部(コントローラ100)との間で生じる信号の反射を終端させる回路である。また、ロジック回路51は、受信した信号を、ODT制御回路52に転送する。
チップイネーブル信号CEnは、メモリ10をイネーブルにするための信号であり、low(“L”)レベルでアサートされる。コマンドラッチイネーブル信号CLEは、入出力信号I/Oがコマンドであることを示す信号であり、high(“H”)レベルでアサートされる。アドレスラッチイネーブル信号ALEは、入出力信号I/Oがアドレスであることを示す信号であり、“H”レベルでアサートされる。ライトイネーブル信号WEnは、受信した信号をメモリ10内へ取り込むための信号であり、コントローラ100よりコマンド、アドレス、及びデータ等を受信する度に、“L”レベルでアサートされる。よって、WEnがトグルされる度に、信号がメモリ10に取り込まれる。リードイネーブル信号RE及びREnは、コントローラ100が、メモリ10から各データを読み出すための信号である。リードイネーブル信号REnは、信号REの反転信号である。例えばリードイネーブル信号REnは、“L”レベルでアサートされる 。ライトプロテクト信号WPnは、書き込み動作の禁止を命令するための信号であり、“L”レベルでアサートされる。ODTイネーブル信号ODTENは、メモリ10内のODT回路のON/OFF状態を制御する信号であり、“H”レベルでアサートされる。
入出力制御回路50は、データ線DQ[7:0]、並びにクロック信号DQS及びDQSnに対応する端子に接続される。入出力制御回路50は、データ線DQ[7:0]、並びにクロック信号DQS及びDQSnに対応する端子に接続されるODT回路を含む。入出力制御回路50は、コントローラ100とメモリ10との間でデータ線DQ[7:0]を介して送受信される8ビットの入出力データ信号IO[7:0]、並びにクロック信号DQS及びDQSnの入出力を制御する。入出力データ信号IO[7:0]は、8ビットのデータ信号であり、各種コマンド、アドレス、データ等を含む。なお、入出力データ信号IOは8ビットに限定されず、適宜設定可能である。クロック信号DQS及びDQSnは、データの入出力の際に用いられるクロック信号であり、クロック信号DQSnは、クロック信号DQSの反転信号である。
以下、特に限定しない限り、各種信号は、コントローラ100及び各メモリ10を共通に接続する信号線(以下、「共通信号線」と呼ぶ)を介して送受信される。
なお、本実施形態では、チップイネーブル信号CEn、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号WEn、及びODTイネーブル信号ODTENに関しては、共通信号線を用いても良く、コントローラ100と各メモリ10とを個別に接続する信号線(以下、「個別信号線」と呼ぶ)を用いても良い。
ODT制御回路52は、パラメータ記憶部54を含む。ODT制御回路52は、パラメータ記憶部54に記憶したパラメータの設定と、ロジック回路51から送信されたODTイネーブル信号及び他の信号とに応じて、入出力制御回路50及びロジック回路51が含むODT回路を制御する。
パラメータ記憶部54は、ODT回路に関するパラメータを記憶する。なお、ODT制御回路52はメモリ領域を含んでいなくても良く、他のメモリ領域にパラメータを保存しても良い。
1.1.3 ODT回路の構成について
次にODT回路の構成について、図4及び図5を用いて説明する。
まず入出力制御回路50に含まれるODT回路について説明する。
図4に示すように、入出力制御回路50は、対応する端子毎に、ODT回路60、入力レシーバ64、及び出力ドライバ65を含む。
入力レシーバ64は、例えばバッファとして機能し、コントローラ100からの入力信号を、例えばメモリ10内で処理するための適正な電圧レベルに変換して、インターフェースチップ20内の他の回路、及びメモリチップ30に転送する。
出力ドライバ65は、例えばバッファとして機能し、メモリチップ30から転送された信号を、適正な電圧レベルに変換して、コントローラ100に出力する。
ODT回路60は、端子と入力レシーバ64の間に設けられる。ODT回路60は、pチャネルMOSトランジスタ61、nチャネルMOSトランジスタ62、並びに可変抵抗素子63a及び63bを含む。
pチャネルMOSトランジスタ61は、ゲートに信号ODTSnが入力され、ソースに電源電圧VCCが印加され、ドレインが可変抵抗素子63aの一端に接続される。pチャネルMOSトランジスタ61は、電源電圧VCCが印加されている電圧線(電源電圧線)と可変抵抗素子63aを接続するための第1スイッチ素子として機能する。
可変抵抗素子63aの他端は、端子と入力レシーバとを接続する配線、及び可変抵抗素子63bの一端に接続される。ODT制御回路52は、Set Feature時に書き込まれたパラメータに応じて可変抵抗素子63a及び63bの抵抗値を設定する。
nチャネルMOSトランジスタ62は、ゲートに信号ODTSが入力され、ドレインが可変抵抗素子63bの他端に接続され、ソースに接地電圧VSSが印加される。nチャネルMOSトランジスタ62は、接地電圧VSSが印加されている電圧線(接地電圧線)と可変抵抗素子63bを接続するための第21スイッチ素子として機能する。
信号ODTS及び信号ODTSnは、ODT回路60を制御するためにODT制御回路52から与えられる信号である。信号ODTSnは、信号ODTSの反転信号である。ODT制御回路52は、ODT回路60をオンにする場合、信号ODTSを“H”レベルにし、信号ODTSnを“L”レベルにする。
次にロジック回路51に含まれるODT回路60について説明する。
図5に示すように、ロジック回路51は、対応する端子(図5の参照符号“PAD”)毎に、入力レシーバ64を含む。そしてリードイネーブル信号REn及びREに対応する端子と入力レシーバ64との間には、ODT回路60が設けられている。
なお、リードイネーブル信号REn及びREに対応する端子に接続されるODT回路60が設けられていなくても良く、他の端子に接続されるODT回路60が設けられていても良く、任意に設定可能である。
1.2 ODT回路の動作について
次にODT回路60の動作について説明する。ODT制御回路52は「DINモード」と「DOUTモード」と呼ばれる2つの制御モードを有する。ODT制御回路52は、それぞれの制御モードに応じて、オンにするODT回路60を選択する。DINモードは、いずれかのメモリ10でデータの書き込み動作を行う際、コントローラ100がデータを出力する場合に選択されるモードである。他方で、DOUTモードは、いずれかのメモリ10でデータの読み出し動作を行う際、対象となるメモリ10がデータを出力する場合に選択されるモードである。以下、本実施形態では、DINモード時に、データ線DQ[7:0]、並びにクロック信号DQS及びDQSnに対応するODT回路60がオンとされ、DOUTモード時に、データ線DQ[7:0]、クロック信号DQS及びDQSn、並びにリードイネーブル信号REn及びREに対応するODT回路60がオンとされる場合について説明する。
1.2.1 ODT回路の制御の流れについて
まず、ODT回路60の制御の流れについて、図6を用いて説明する。
図6に示すように、ODT回路60の制御には、大きく分けて2つの動作がある。まず第1動作において、コントローラ100は、ODT回路60のパラメータを設定する(ステップS1)。以下、パラメータの書き込み動作を「Set Feature」と呼ぶ。Set Featureでは、ODT回路60以外の各種パラメータの書き込みも行われる。
より具体的には、コントローラ100は、例えば電源投入後、第1動作において、Set Featureを実行し、各種パラメータを設定する。この時、コントローラ100は、各メモリ10のインターフェースチップ20において、ODT回路60を使用するかしないかを設定する。例えばコントローラ100とメモリ10とを接続する信号線(NANDバス)の長さがもっとも長いメモリ10のインターフェースチップ20だけODT回路60を使用して、他のメモリ10のインターフェースチップ20はODT回路60を使用しないように設定する。そして、コントローラ100は、ODT回路60を使用するインターフェースチップ20に対して、DINモード及びDOUTモード時の可変抵抗素子63a及び63bの抵抗値をそれぞれ設定する。各インターフェースチップ20のODT制御回路52は、ODT回路60の使用可否、及び可変抵抗素子63a及び63bの抵抗値に関するパラメータ情報をパラメータ記憶部54に保存する。
次に第2動作において、コントローラ100は、ODTイネーブル信号ODTENを送信する。各メモリ10のインターフェースチップ20のODT制御回路52は、第1動作で設定したパラメータ情報と、ODTイネーブル信号ODTENとに応じて、ODT回路60のオン/オフを制御する。
より具体的には、まずコントローラ100は、ODTイネーブル信号ODTENを“H”レベルにして各メモリ10に送信する(ステップS2)。
ODTイネーブル信号を受信した各メモリ10のODT制御回路52は、ステップS1においてODT回路60が使用可能とされている場合(ステップS3_Yes)、ODT回路60の制御モードを選択する。他方でODT回路60が使用不可とされている場合(ステップS3_No)、ステップS3以降のODT回路60の制御動作は省略される。
ODT制御回路52は、いずれかのメモリ10において書き込み動作が実行されている場合(ステップS4_Yes)、DINモードを選択する。
次にODT制御回路52は、データ線DQ[7:0]、並びにクロック信号DQS及びDQSnに対応するODT回路60をオンにする(ステップS5)。より具体的には、ODT制御回路52は、対応するODT回路60の信号ODTSを“H”レベルにし、信号ODTSnを“L”レベルにする。これによりトランジスタ61及び62がオンとなり、ODT回路60がオンとなる。
他方で、ODT制御回路52は、いずれのメモリ10においても書き込み動作が実行されていない場合、すなわち読み出し動作の場合、DOUTモードを選択し、データ線DQ[7:0]、クロック信号DQS及びDQSn、並びにリードイネーブル信号REn及びREに対応するODT回路60をオンにする(ステップS6)。
次に、コントローラ100はODTイネーブル信号ODTENを“L”レベルにする。これに応じて、ODT制御回路52は、ODT回路60をオフにする(ステップS7)。
コントローラ100は、パラメータの変更が不要な場合、書き込み及び読み出し動作に応じて第2動作を繰り返して、ODT回路60を制御する。
1.2.2 ODT回路の制御モード選択について
次に、ODT回路60の制御モードの選択について、図7を用いて説明する。
図7に示すように、メモリ10(ODT制御回路52)は、ODTイネーブル信号ODTENが“L”から“H”レベルに切り替わるタイミングで、リードイネーブル信号REnをラッチする。そしてリードイネーブル信号REnが“H”レベルの場合、メモリ10は、DINモードを選択して対応するODT回路60をオンにする。他方でリードイネーブル信号REnが“L”レベルの場合、メモリ10は、DOUTモードを選択して対応するODT回路60をオンにする。すなわち、コントローラ100は書き込み動作の場合、リードイネーブル信号REnを“H”レベルにして、ODTイネーブル信号ODTENを“L”から“H”レベルに切り替え、読み出し動作の場合、リードイネーブル信号REnを“L”レベルにして、ODTイネーブル信号ODTENを“L”から“H”レベルに切り替える。
またODTイネーブル信号ODTENが“L”レベルの間、メモリ10は、ODT回路60をオフにする。
1.2.3 Set Featureについて
次に、Set Feature時におけるコントローラ100と各メモリ10との間での信号の送受信について、図8を用いて説明する。
図8に示すように、まずコントローラ100は、チップイネーブル信号CEnをアサート(“L”レベル)する。
次にコントローラ100は、Set Featureを実行することを通知するコマンド、例えば“D5h”を発行するとともに、コマンドラッチイネーブル信号CLEをアサート(“H”レベル)する。
次にコントローラ100は、アドレスデータ“xxh”及び“yyh”を発行するとともにアドレスラッチイネーブル信号ALEをアサート(“H”レベル)する。例えば、アドレスデータ“xxh”は、Set Featureの設定に関するアドレスデータであり、“yyh”は、対応するメモリ10を示すアドレスデータである。なお、アドレスデータの詳細及びサイクル数については特に限定されない。
これらのコマンド及びアドレスは、ライトイネーブル信号WEnがトグルされる度に、対応するメモリ10にそれぞれ格納される。
次にコントローラ100は、クロック信号DQS及びDQSnを送信するとともに、データ“W−B0”〜“W−B3”を発行する。例えば“W−B0”がODT回路60の使用可否及び可変抵抗素子63a及び63bの設定に関するデータを示し、データ“W−B1”〜“W−B3”は他のパラメータに関するデータを示す。なお、データのサイクル数は、設定が必要なパラメータに応じて任意に設定可能である。
メモリ10は、パラメータの書き込みを開始し、ビジー状態となる。メモリ10は、ビジー状態の間、各種信号を受け付けない状態にあることを通知するレディ/ビジー信号R/Bnを“L”レベルとしてコントローラ100に送信する。
メモリ10が書き込み動作を完了すると、レディ/ビジー信号R/Bnは“H”レベルに復帰する。
1.2.4 書き込み動作におけるODT回路の制御について
次に、書き込み動作時におけるコントローラ100と各メモリ10との間での信号の送受信について、特に非選択メモリ10におけるODT回路60の制御に着目して、図9を用いて説明する。図9では、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE等は省略されている。
図9に示すように、まずコントローラ100は、チップイネーブル信号CEnをアサート(“L”レベル)する。また、コントローラ100は、書き込み動作では、リードイネーブル信号REnを“H”レベルに維持する。
次にコントローラ100は、書き込み動作を実行することを通知するコマンド、例えば“80h”及びアドレスデータ“AD1”、“AD2”、“AD3”、“AD4”、及び“AD5”を発行する。例えばアドレスデータ“AD1”及び“AD2”はメモリチップ30におけるカラムアドレスを示し、アドレスデータ“AD3”、“AD4”、及び“AD5”は、ロウアドレスを示す。選択メモリ10では、ライトイネーブル信号WEnがトグルされる度に、コマンド及びアドレスデータがメモリ10内に保持される。
なお、アドレスデータのサイクル数は5サイクルに限定されず、任意に設定可能である。更にアドレスデータは、メモリ10を指定するアドレス、メモリ10内におけるメモリチップ30を指定するチップアドレス(CADD)を含んでいても良い。更にロウアドレスは、ブロックアドレス、ページアドレスを含んでいても良い。更にページアドレスは、例えばワード線WL、奇数/偶数ビット線(E/O)、ストリングアドレス、あるいは下位ページ/中間ページ/上位ページ(L/M/U)等に関する情報を含んでいても良い。
ページアドレスの構成については、例えば、“不揮発性半導体記憶装置及びその制御方法(NONVOLATILE SEMICONDUCTOR MEMORY DEVICE AND CONTROL METHOD THEREOF)”という2013年3月4日に出願された米国特許出願13/784,753号に記載されている。本特許出願は、その全体が本願明細書において参照により援用されている。
次にコントローラ100は、ODTイネーブル信号ODTENを“H”レベルにする。この時、ODT回路60が使用可能な、すなわち第1動作(Set Feature)でODT回路60のパラメータが設定された、非選択メモリ10では、リードイネーブル信号REnが“H”レベルのため、ODT制御回路52は、DINモードを選択して対応するODT回路60をオンにする。他方で、ODT回路60を使用しない、すなわち第1動作(Set Feature)でODT回路60のパラメータが設定されていない、非選択メモリ10では、ODT制御回路52は、ODTイネーブル信号ODTENによらず、ODT回路60をオンにしない。
次にコントローラ100は、クロック信号DQS及びDQSnを送信するとともに、書き込みデータ“WD”を発行する。
選択メモリ10における書き込み動作が完了すると、コントローラ100は、チップイネーブル信号CEnを“H”レベルにし、ODTイネーブル信号ODTENを“L”レベルにする。ODT回路60が使用可能な非選択メモリ10は、ODTイネーブル信号ODTENが“L”レベルにされるとODT回路60をオフにする。
1.2.5 読み出し動作におけるODT回路の制御について
次に、読み出し動作時におけるコントローラ100と各メモリ10との間での信号の送受信について、特に非選択メモリ10におけるODT回路60の制御に着目して、図10を用いて説明する。図10では、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE等は省略されている。
図10に示すように、コントローラ100は、チップイネーブル信号CEnをアサート(“L”レベル)する。
次にコントローラ100は、読み出し動作を実行することを通知するコマンド、例えば“05h”、アドレスデータ“AD1”〜“AD5”、及び読み出し動作を実行させるコマンド、例えば“E0h”を順に発行する。選択メモリ10では、ライトイネーブル信号WEnがトグルされる度に、コマンド及びアドレスデータがメモリ10内に保持される。
次にコントローラ100は、リードイネーブル信号REnをある期間“L”レベルにする。そしてコントローラ100は、この期間内に、ODTイネーブル信号ODTENを“L”から“H”レベルにする。この時、ODT回路60が使用可能な非選択メモリ10では、リードイネーブル信号REnが“L”レベルのため、ODT制御回路52は、DOUTモードを選択して対応するODT回路60をオンにする。他方で、ODT回路60を使用しない非選択メモリ10では、ODT制御回路52は、ODTイネーブル信号ODTENによらず、ODT回路60をオンにしない。
次に選択メモリ10では読み出し動作が実行され、リードイネーブル信号REn及びREのトグルに応じて、読み出しデータ“RD”及びクロック信号DQS及びDQSnを出力する。
選択メモリ10における読み出し動作が完了すると、コントローラ100は、チップイネーブル信号CEnを“H”レベルにし、ODTイネーブル信号ODTENを“L”レベルにする。ODT回路60が使用可能な非選択メモリ10は、ODTイネーブル信号ODTENが“L”レベルにされるとODT回路60をオフにする。
1.2.6 ODT回路の動作タイミングについて
次に、ODTイネーブル信号ODTENとODT回路60のオン/オフの切り替えのタイミングについて、図11を用いて説明する。
図11に示すように、メモリ10は、ライトイネーブル信号WEnが“L”から“H”レベルに切り替わってから、予め設定された期間、リードイネーブル信号REnを含む各種信号を受け付けないように設定されている。あるいは、コントローラ100がこの期間、自発的に各種信号を発行しないように設定されていても良い。以下、予め設定された期間、すなわちライトイネーブル信号WEnが“L”から“H”レベルに切り替わってから、リードイネーブル信号REnが受け付け可能とされるまでの待機期間を「tWHR」と呼ぶ。例えば、書き込み動作においてはアドレスデータ“AD5”の入力後(図9)、読み出し動作においてはコマンド“30h”の入力後(図10)、この待機期間tWHRが設けられる。
待機期間tWHR経過後、メモリ10は、リードイネーブル信号REnを受け付ける(リードイネーブル信号REnが有効となる)。コントローラ100は、待機期間tWHR終了後から25nsec以上の期間、リードイネーブル信号REnを、書き込み動作の場合は“H”レベルで維持し、読み出し動作の場合は“L”レベルで維持する(以下、この期間を「REn維持期間」と呼ぶ)。コントローラ100は、REn維持期間開始(すなわち待機期間tWHR終了)から5nsec以上経過してから、REn維持期間が終了するまでの間(例えば20nsecの間)に、ODTイネーブル信号ODTENを“L”から“H”レベルに切り替える。すなわち、コントローラ100は、REn維持期間開始から5nsec以上経過すれば、他の信号と非同期でODTイネーブル信号ODTENを切り替えることができる。
ODT制御回路52は、ODTイネーブル信号ODTENが“L”から“H”レベルに切り替わったタイミングで、リードイネーブル信号REnをラッチし、ODT回路60の制御モードを選択する。そしてODT制御回路52は、ODTイネーブル信号ODTENが“L”から“H”レベルに切り替わってから、例えば25nsec経過後、対応するODT回路60をオンにする。またODT制御回路52は、ODTイネーブル信号ODTENが“H”から“L”レベルに切り替わってから、例えば25nsec経過後、対応するODT回路60をオフにする。
1.3 本実施形態に係る効果について
本実施形態に係る構成では、処理能力を向上することができる。以下、本効果について説明する。
バスによりコントローラ100と複数のメモリ10が共通に接続されているメモリシステム1においては、非選択メモリ10からの信号の反射が、信号の入力先である選択メモリ10あるいはコントローラ100へ伝わるため、この反射信号が入力信号におけるノイズとなる。このためODT回路60を用いて、信号の反射を抑制する方法が知られている。
例えば非選択メモリ10においてODT回路60のオン/オフ動作を制御する場合、書き込みまたは読み出し動作の前後に、非選択メモリ10に、ODT回路60の使用開始と終了を通知するコマンド(及びアドレスデータ)をそれぞれ送信する方法がある。但し、この場合、書き込みまたは読み出し動作とは別に、非選択メモリ10への通知が必要となるため、書き込み及び読み出し動作における処理時間が長くなり、メモリシステム1の処理能力が低下する。
また、書き込み動作と読み出し動作とでは、コントローラ100及び選択メモリ10間で送受信される信号の状態が異なる。より具体的には、例えば読み出し動作では、リードイネーブル信号REnのトグルに応じてデータが読み出されるのに対し、書き込み動作では、リードイネーブル信号REnは、“H”レベルに維持される。従って、リードイネーブル信号REnに対応するODT回路60は、読み出し動作時に使用され、書き込み動作時には使用されない方が好ましい。このように、メモリシステムの動作状態に応じて、ODT回路60のオン/オフを制御する必要がある。
これに対し本実施形態に係る構成では、コントローラ100は、ODT回路60を制御するための信号(ODTイネーブル信号ODTEN)を発行することができる。そして、コントローラ100は、書き込み及び読み出し動作中に、ODTイネーブル信号ODTENを各メモリ10に送信することができる。また各メモリ10は、ODTイネーブル信号ODTENに応じてODT回路60を制御することができる。これにより、コントローラ100は、書き込みまたは読み出し動作の前後に行っていた非選択メモリ10へのODT回路60に関する通知を省略できる。よって書き込み及び読み出し動作の処理時間を短縮でき、メモリシステムの処理能力を向上することができる。
更に本実施形態に係る構成では、リードイネーブル信号REnに応じてODTの制御モードを切り替えることができる。より具体的には、メモリ10は、ODTイネーブル信号ODTENが“L”から“H”レベルに切り替わった際、リードイネーブル信号REnが“H”レベルの場合、DINモードを選択し、“L”レベルの場合、DOUTモードを選択することができる。これにより、メモリ10は、書き込み及び読み出し動作において、最適なODT回路60の制御状態を選択することができる。よって、信号の反射によるノイズを効果的に低減でき、信号の品質を向上することができる。従って、信号の劣化による誤動作を抑制でき、メモリシステムの信頼性を向上できる。
2.第2実施形態
次に第2実施形態について説明する。第1実施形態と異なる点は、メモリ10の構成が異なり、各メモリチップがODT回路を含む点である。以下、第1実施形態と異なる点についてのみ説明する。
2.1 メモリの構成について
本実施形態のメモリ10の構成について、図12及び図13を用いて説明する。以下ではメモリ10_0について説明するが、他のメモリ10(10_1、10_2、…)も同様の構成である。
まずメモリ10の断面構成について説明する。
図12に示すように、メモリ10_0は、パッケージ基板40、及び8個のメモリチップ70(70a〜70h)を備える。例えば複数のメモリチップ70は、パッケージ基板40上に、モールド樹脂(図示せず)によって封止される。なお、本実施形態におけるメモリ10_0では、第1実施形態の図2及び図3で説明したインターフェースチップ20が廃されている。
メモリチップ70は、第1実施形態の図2及び図3で説明したメモリチップ30と同様に、コントローラ100からのデータ等を記憶する。なお、メモリチップ70(70a〜60f)は8個積層されているが、8個に限らず、適宜変更可能である。各メモリチップ70は、外部(コントローラ100等)と信号を送受信するための複数の端子71をメモリチップ70の上面に備える。
メモリチップ70a〜70hは、端子71が露出するように、例えば階段状に中心をずらした状態で、パッケージ基板40の上面上に、下方側から順に積層される。そして各メモリチップ70の端子71は、例えば金配線によりパッケージ基板40と電気的に接続される。
次にメモリチップ70の構成について説明する。以下ではメモリチップ70aについて説明するが、他のメモリチップ70b〜70hも同じ構成である。
図13に示すように、メモリチップ70aは、第1実施形態の図3で説明したインターフェースチップ20が含む入出力制御回路50、ロジック回路51、及びODT制御回路52と、メモリチップ30が含むメモリセルアレイ53を含む。また、メモリチップ70aは、リードイネーブル信号RE及びREn、チップイネーブル信号CEn、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号WEn、ライトプロテクト信号WPn、並びにODTイネーブル信号ODTENにそれぞれ対応する端子を含む。よって、第1実施形態と同様に、メモリチップ70aの入出力制御回路50は、データ線DQ[7:0]、並びにクロック信号DQS及びDQSnに対応する端子に接続されるODT回路60を含み、ロジック回路51は、リードイネーブル信号REn及びREに対応する端子に接続されるODT回路60を含む。
2.2 ODT回路の動作について
次に、各メモリチップ70が含むODT回路60の動作について説明する。ODT回路60の制御の流れについては、第1実施形態の図6と同じである。但し、第1動作において、コントローラ100は、Set Featureを実行する際、第1実施形態ではメモリ10(インターフェースチップ20)毎に、ODT回路60に関するパラメータを設定していたのに対し、本実施形態ではメモリチップ70毎にODT回路60に関するパラメータを設定する。そして、第2動作では、コントローラ100と送受信される信号に応じて、各メモリチップ70のODT制御回路52が、ODT回路60の動作を制御する。
2.3 本実施形態に係る効果について
本実施形態に係る構成であると、第1実施形態と同様の効果を得ることができる。
更に本実施形態に係る構成では、各メモリチップ70がODT回路60を含んでいるため、メモリチップ70毎にODT回路60が設定できる。これにより、メモリシステム1は、反射信号を抑制するためのより詳細な設定をすることができる。よって、信号の反射によるノイズをより効果的に低減でき、信号の品質を向上することができる。
3.第3実施形態
次に、第3実施形態について説明する。第1及び第2実施形態と異なる点は、ODT回路60の制御モードを決定する際、チップイネーブル信号CEnも判定に用いている点である。以下、第1及び第2実施形態と異なる点についてのみ、説明する。
3.1 メモリシステムの全体構成について
まずメモリシステム1の全体構成について説明する。本実施形態におけるメモリシステム1では、チップイネーブル信号CEnに関して、コントローラ100と各メモリ10(10_0、10_1、10_2、…)とが個別信号線で接続されている。すなわち、コントローラ100は、個別信号線を用いて各メモリ10に、それぞれ異なるチップイネーブル信号CEnを送信できる。以下、コントローラ100が個別信号線を用いてチップイネーブル信号CEnを送信する場合、すなわち複数のチップイネーブル信号CEnを表す場合は、チップイネーブル信号「CEnx」と呼ぶ。
なお、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号WEn、及びODTイネーブル信号ODTENに関しては、共通信号線を用いても良く、個別信号線を用いても良い。
3.2 ODT回路の制御モード選択について
まずODT回路60の制御モードの選択について、図14を用いて説明する。
図14に示すように、本実施形態では、ODT制御回路52は、ODTイネーブル信号ODTENが“L”レベルから“H”レベルに切り替わるタイミングで、チップイネーブル信号CEnx及びリードイネーブル信号REnをラッチする。そしてチップイネーブル信号CEnx及びリードイネーブル信号REnがともに“H”レベルの場合、ODT制御回路52は、DINモードを選択して、対応するODT回路60をオンにする。また、チップイネーブル信号CEnxが“H”レベルでリードイネーブル信号REnが“L”レベルの場合、ODT制御回路52は、DOUTモードを選択して、対応するODT回路60をオンにする。また、チップイネーブル信号CEnxが“L”レベルの場合、リードイネーブル信号REnによらず、ODT制御回路52は、ODT回路60をオフにする。
またODTイネーブル信号ODTENが“L”レベルの間、ODT制御回路52は、ODT回路60をオフにする。
3.3 書き込み動作におけるODT回路の制御について
次に、書き込み動作時におけるコントローラ100と各メモリ10との間での信号の送受信について、図15を用いて説明する。
図15に示すように、まずコントローラ100は、選択メモリ10におけるチップイネーブル信号CEnxをアサート(“L”レベル)する。また、コントローラ100は、非選択メモリ10における、チップイネーブル信号CEnxを書き込み動作の間、“H”レベルに維持する。
次にコントローラ100は、書き込み動作に必要なコマンド及びアドレスデータ発行後、ODTイネーブル信号ODTENを“H”レベルにする。この時、ODT回路60が使用可能な非選択メモリ10では、チップイネーブル信号CEnx及びリードイネーブル信号REnが“H”レベルのため、ODT制御回路52は、DINモードを選択して、対応するODT回路60をオンにする。
選択メモリ10における書き込み動作が完了すると、コントローラ100は、選択メモリ10のチップイネーブル信号CEnを“H”レベルにし、ODTイネーブル信号ODTENを“L”レベルにする。ODT回路60が使用可能な非選択メモリ10は、ODTイネーブル信号ODTENが“L”レベルにされるとODT回路60をオフにする。
3.4 読み出し動作におけるODT回路の制御について
次に、読み出し動作時におけるコントローラ100と各メモリ10との間での信号の送受信について、図16を用いて説明する。
図16に示すように、まずコントローラ100は、選択メモリ10におけるチップイネーブル信号CEnxをアサート(“L”レベル)する。また、コントローラ100は、非選択メモリにおける、チップイネーブル信号CEnxを読み出しの間、“H”レベルに維持する。
次にコントローラ100は、読み出し動作に必要なコマンド及びアドレスデータ発行後、リードイネーブル信号REnをREn維持期間の間、“L”レベルにする。そしてコントローラ100は、この期間内に、ODTイネーブル信号ODTENを“H”レベルにする。ODT回路60が使用可能な非選択メモリ10では、チップイネーブル信号CEnxが“H”レベル、そしてリードイネーブル信号REnが“L”レベルのため、ODT制御回路52は、DOUTモードを選択して対応するODT回路60をオンにする。
選択メモリ10における読み出し動作が完了すると、コントローラ100は、選択メモリ10のチップイネーブル信号CEnxを“H”レベルにし、ODTイネーブル信号ODTENを“L”レベルにする。ODT回路60が使用可能な非選択メモリ10は、ODTイネーブル信号ODTENが“L”レベルにされるとODT回路60をオフにする。
3.5 ODT回路の動作タイミングについて
次に、ODTイネーブル信号ODTENとODT回路60のオン/オフの切り替えのタイミングについて、図17を用いて説明する。
図17に示すように、例えば待機期間tWHR経過後、チップイネーブル信号CEnxが有効となった状態(メモリ10が各種信号を受け付け可能となった状態)で、コントローラ100は、非選択メモリ10のチップイネーブル信号CEnxを“H”レベルとする。その後(例えば10nsec後)、コントローラ100は、書き込み動作の場合には、リードイネーブル信号REnを“H”レベルで維持する。他方でコントローラ100は、読み出し動作の場合には、リードイネーブル信号REnを“L”レベルにし、REn維持期間(25nsec以上)、“L”レベルを維持する。
また、コントローラ100は、REn維持期間開始(すなわち待機期間tWHR終了)から5nsec以上経過してから、REn維持期間が終了するまでの間、ODTイネーブル信号ODTENを“L”から“H”レベルに切り替える。例えば図17の例では、チップイネーブル信号CEnxが有効な状態となってから10nsec後にREn維持期間となり、それから5nsec後(チップイネーブル信号CEnxが有効な状態となってから15sec後)に、ODTイネーブル信号ODTENが“H”レベルにされている。
ODT制御回路52は、ODTイネーブル信号ODTENが“L”から“H”レベルに切り替わったタイミングで、チップイネーブル信号CEnx及びリードイネーブル信号REnをラッチし、ODT回路60の制御モードを選択し、例えば25nsec経過後、対応するODT回路60をオンにする。
3.6 本実施形態に係る効果について
本実施形態は、第1及び第2実施形態に適用できる。よって第1及び第2実施形態と同様の効果を得ることができる。
また本実施形態に係る構成では、コントローラ100は、メモリ10毎に異なるチップイネーブル信号CEnxを送信する。そしてODT制御回路52は、チップイネーブル信号CEnxとリードイネーブル信号REnに基づいて、ODT回路60の制御モードを選択することができる。このため、ODT制御回路52は、対応するメモリ10(あるいはメモリチップ70)が非選択状態(チップイネーブル信号CEnxが“H”レベルの状態)の場合にのみ、ODT回路60を動作させることができる。すなわち、メモリシステム1は、選択したメモリ10に応じて、より最適なODT回路60の制御をすることができる。よって、信号の反射によるノイズをより効果的に低減でき、信号の品質を向上することができる。
4.第4実施形態
次に、第4実施形態について説明する。第3実施形態と異なる点は、ODTイネーブル信号ODTEN及びチップイネーブル信号CEnxが“H”レベルのときにODT回路60がオンとなる点である。以下、第3実施形態と異なる点についてのみ説明する。
4.1 ODT回路の制御モード選択について
まずODT回路60の制御モードの選択について、図18を用いて説明する。
図18に示すように、チップイネーブル信号CEnx及びODTイネーブル信号ODTENがともに“H”レベルとされた際、リードイネーブル信号REnが“H”レベルであれば、ODT制御回路52は、DINモードを選択して、対応するODT回路60をオンにする。他方で、リードイネーブル信号REnが“L”レベルであれば、ODT制御回路52は、DOUTモードを選択して、対応するODT回路60をオンにする。ODT制御回路52は、ODT回路60をオンにした際のリードイネーブル信号REnをラッチしている。よって、ODT回路60がオンにされている間、リードイネーブル信号REnが、“H”から“L”レベル、あるいは“L”から“H”レベルに変更されても、ODT制御回路52は、ODT回路60をオフにするまでDINモードあるいはDOUTモードを維持している。
また、チップイネーブル信号CEnx及びODTイネーブル信号ODTENの少なくとも1つが“L”レベルの場合、リードイネーブル信号REnによらず、ODT制御回路52は、ODT回路60をオフにする。
4.2 ODT回路の動作タイミングについて
次に、ODTイネーブル信号ODTENとODT回路60のオン/オフの切り替えのタイミングについて、図19を用いて説明する。図19の例では、ODTイネーブル信号ODTENが“H”レベルの間、非選択メモリ10のチップイネーブル信号CEnxは“H”レベルに維持されている場合について説明する。
図19に示すように、第3実施形態と同様に、チップイネーブル信号CEnxが有効な状態(メモリ10が各種信号を受け付け可能となった状態)で、コントローラ100は、非選択メモリ10のチップイネーブル信号CEnxを“H”レベルとする。その後、コントローラ100は、REn維持期間開始から5nsec以上経過してから、REn維持期間が終了するまでの間に、ODTイネーブル信号を“L”から“H”レベルに切り替える。
ODT制御回路52は、チップイネーブル信号CEnx及びODTイネーブル信号ODTENがいずれも“H”レベルにされたタイミングで、リードイネーブル信号REnをラッチし、ODT回路60の制御モードを選択する。そして、ODTイネーブル信号ODTENが“L”から“H”レベルに切り替わってから例えば25nsec経過後、ODT制御回路52は、対応するODT回路60をオンにする。
次にコントローラ100は、ODTイネーブル信号ODTENを“H”から“L”レベルに切り替える。また、コントローラ100は、ODTイネーブル信号ODTENを“H”から“L”レベルに切り替えてから、例えば15nsec以上経過するまで、チップイネーブル信号CEnxを“H”レベルに維持する。ODT制御回路52は、ODTイネーブル信号ODTENが“H”から“L”レベルに切り替わってから例えば25nsec経過後、対応するODT回路60をオフにする。
なお、コントローラ100は、チップイネーブル信号CEnxが有効な状態になるより先にODTイネーブル信号ODTENを“L”から“H”レベルに切り替えても良い。更にコントローラ100は、ODTイネーブル信号ODTENよりも先にチップイネーブル信号CEnxを“H”から“L”レベルに切り替えても良い。
4.3 本実施形態に係る効果について
本実施形態は第1及び第2実施形態に適用できる、よって、第1及び第2実施形態と同様の効果を得ることができる。
また本実施形態に係る構成であると、第3実施形態と同様の効果を得ることができる。
更に本実施形態に係る構成では、ODT制御回路52は、チップイネーブル信号CEnx及びODTイネーブル信号ODTENがともに“H”レベルの場合に、ODT回路60をオンにさせることができる。
5.第5実施形態
次に第5実施形態について説明する。第1乃至第4実施形態と異なる点は、ライトプロテクト信号WPnがライトプロテクトの制御信号としての機能と、ODT回路60の制御信号としての機能を有している点である。本実施形態では、2つの例を説明する。以下、第1乃至第4実施形態と異なる点についてのみ説明する。
5.1 第1例
まず本実施形態の第1例について説明する。本例では、Set Featureによるパラメータの設定前後で、端子から入力される信号の役割が異なる場合について説明する。
5.1.1 メモリシステムの全体構成について
メモリシステム1の全体構成について説明する。本例におけるメモリシステム1では、コントローラ100は、個別信号線を用いて、各メモリ10(10_0、10_1、10_2、…)に、それぞれ異なるライトプロテクト信号WPnを送信する。以下、コントローラ100がメモリ10毎に送信するライトプロテクト信号をライトプロテクト信号「WPnx」と呼び、各メモリ10のライトプロテクト信号WPnxに対応する端子を「WPnx端子」と呼ぶ。よって、本例では、第1実施形態の図3及び図5あるいは第2実施形態の図13において、ライトプロテクト信号WPnをWPnxと読み替え、ODTイネーブル信号ODTENに対応する端子を廃した構成となる。
なお、チップイネーブル信号CEn、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号WEnに関しては、共通信号線を用いても良く、個別信号線を用いても良い。
5.1.2 WPnx端子の信号について
まずWPnx端子の信号とメモリ10との関係について、図20を用いて説明する。
図20に示すように、WPnx端子の信号(ライトプロテクト信号WPnx)は、Set FeatureによりODT回路60に関するパラメータが設定されるまで(第1動作まで)は、ライトプロテクト制御信号として機能し、パラメータ設定後は、ODT回路60の制御信号(ODTイネーブル信号ODTEN)として機能する。
より具体的には、コントローラ100は、メモリ10の起動(Power ON)時、電源電圧が不安定な状態での書き込み動作を防止するため、ライトプロテクト信号WPnxを“L”レベルにする。この時のライトプロテクト信号WPnxは、ライトプロテクト制御信号として処理され、メモリ10は、ライトプロテクト信号WPnxが“L”レベルの間、書き込み動作を禁止する(ライトプロテクトをイネーブルにする)。
電源電圧が確定(安定)後、コントローラ100は、ライトプロテクト信号WPnxを“H”レベルにする。この時のライトプロテクト信号WPnxは、ライトプロテクト制御信号として処理され、メモリ10は、書き込み動作の禁止を解除する。
次に、コントローラ100は、Set Featureを実行し、ODT回路60に関するパラメータの設定を行う。メモリ10は、パラメータ設定(Set Feature実行)後、ライトプロテクト信号WPnxを、ODTイネーブル信号ODTENとして処理する。より具体的には、ライトプロテクト信号WPnxが“L”レベルの場合、ODT制御回路52は、ODT回路60をオンにするように制御する。他方でライトプロテクト信号WPnxが“H”レベルの場合、ODT制御回路52は、ODT回路60をオフにするように制御する。
5.1.3 ODT回路の制御モード選択について
本例におけるODT回路60の制御モードについては、第1、第3、及び第4実施形態で説明した図7、図14、及び図18の関係が適用できる。この場合、ODTイネーブル信号ODTENをライトプロテクト信号WPnxに置き換えれば良い。
5.2 第2例
次に本実施形態の第2例について説明する。第2例では、第1例において、Set Feature実行後においても、ライトプロテクト信号WPnxが、ライトプロテクト制御信号しての機能を有するようにするものである。以下、第1例と異なる点についてのみ説明する。
5.2.1 メモリシステムの全体構成について
メモリシステム1の全体構成について説明する。本例におけるメモリシステム1では、コントローラ100は、個別信号線を用いて、各メモリ10(10_0、10_1、10_2、…)に、それぞれ異なるライトプロテクト信号WPnxとチップイネーブル信号CEnxを送信する。
なお、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号WEnに関しては、共通信号線を用いても良く、個別信号線を用いても良い。
5.2.2 ODT回路の制御モード選択について
まずODT回路60の制御モードの選択について、図21を用いて説明する。
図21に示すように、ODT制御回路52は、ライトプロテクト信号WPnxが“H”から“L”に切り替わるタイミングで、チップイネーブル信号CEnx(メモリ10毎に別々)、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号WEn、及びリードイネーブル信号REnをラッチする。そして、ODT制御回路52は、チップイネーブル信号CEnx及びライトイネーブル信号WEnが“H”レベルとされ、且つコマンドラッチイネーブル信号CLE及びアドレスラッチイネーブル信号ALEが“L”レベルとされている場合、ライトプロテクト信号WPnxをODT回路60の制御信号と判定する。そしてリードイネーブル信号REnが“H”レベルの場合、ODT制御回路52はDINモードを選択して、対応するODT回路60をオンにする。他方でリードイネーブル信号REnが“L”レベルの場合、ODT制御回路52はDOUTモードを選択して、対応するODT回路60をオンにする。
また、チップイネーブル信号CEnx、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、及びライトイネーブル信号WEnが前述の組み合わせ以外の場合、ODT制御回路52は、ODT回路60をオフにする。メモリ10は、ライトプロテクト信号WPnxをライトプロテクト制御信号と判定し、書き込み動作を禁止する。
また、ライトプロテクト信号WPnxが“H”レベルの間、ODT制御回路52は、ODT回路60をオフにする。
5.2.3 書き込み動作におけるODT回路の制御について
次に、書き込み動作時におけるコントローラ100と各メモリ10との間での信号の送受信について、図22を用いて説明する。図22の例では、コマンドラッチイネーブル信号CLEx、アドレスラッチイネーブル信号ALEx、ライトイネーブル信号WEnxが、メモリ10毎に異なる場合について説明する。
図22に示すように、コントローラ100は、書き込み動作の間、非選択メモリ10におけるチップイネーブル信号CEnx及びライトイネーブル信号WEnxを“H”レベルに維持し、コマンドラッチイネーブル信号CLEx及びアドレスラッチイネーブル信号ALExを“L”レベルに維持する。
コントローラ100は、書き込み動作に必要なコマンド及びアドレスデータ発行後、ライトプロテクト信号WPnxを“L”レベルにする。この時、ODT回路60が使用可能な非選択メモリ10では、チップイネーブル信号CEnx、ライトイネーブル信号WEn、及びリードイネーブル信号REnが“H”レベルとされ、且つコマンドラッチイネーブル信号CLE及びアドレスラッチイネーブル信号ALEが“L”レベルとされているため、ODT制御回路52がDINモードを選択して対応するODT回路60をオンにする。
選択メモリ10における書き込み動作が完了すると、コントローラ100は、選択メモリ10のチップイネーブル信号CEnを“H”レベルにし、ライトプロテクト信号WPnxを“H”レベルにする。ODT回路60が使用可能な非選択メモリ10では、ライトプロテクト信号WPnxが“H”レベルとされると、ODT制御回路52がODT回路60をオフにする。
5.2.4 読み出し動作におけるODT回路の制御について
次に、読み出し動作時におけるコントローラ100と各メモリ10との間での信号の送受信について、図23を用いて説明する。図23の例では、図22と同様に、コマンドラッチイネーブル信号CLEx、アドレスラッチイネーブル信号ALEx、ライトイネーブル信号WEnxが、メモリ10毎に異なる場合について説明する。
図23に示すように、コントローラ100は、読み出し動作の間、非選択メモリ10におけるチップイネーブル信号CEnx及びライトイネーブル信号WEnxを“H”レベルに維持し、コマンドラッチイネーブル信号CLEx及びアドレスラッチイネーブル信号ALExを“L”レベルに維持する。
コントローラ100は、読み出し動作に必要なコマンド及びアドレスデータ発行後、リードイネーブル信号REnをREn維持期間の間、“L”レベルにする。そしてコントローラ100は、この期間内に、ライトプロテクト信号WPnxを“L”レベルにする。ODT回路60が使用可能な非選択メモリ10では、チップイネーブル信号CEnx及びライトイネーブル信号WEnが“H”レベルとされ、且つコマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、及びリードイネーブル信号REnが“L”レベルとされているため、ODT制御回路52は、DOUTモードを選択して対応するODT回路60をオンにする。
選択メモリ10における読み出し動作が完了すると、コントローラ100は、選択メモリ10のチップイネーブル信号CEnxを“H”レベルにし、ライトプロテクト信号WPnxを“H”レベルにする。ODT回路60が使用可能な非選択メモリ10では、ライトプロテクト信号WPnxが“H”レベルとされると、ODT制御回路52がODT回路60をオフにする。
5.2.5 ODT回路の動作タイミングについて
次に、ライトプロテクト信号WPnxとODT回路60のオン/オフの切り替えのタイミングについて、図24を用いて説明する。
図24に示すように、例えば待機期間tWHR後、各種信号が有効な状態(メモリ10が各種信号を受け付け可能となった状態)で、コントローラ100は、非選択メモリ10のチップイネーブル信号CEnx、ライトイネーブル信号WEnx、及びリードイネーブル信号REnを“H”レベルとし、且つコマンドラッチイネーブル信号CLEx及びアドレスラッチイネーブル信号ALExを“L”レベルとする。その後、コントローラ100は、REn維持期間開始から5nsec以上経過してから、REn維持期間が終了するまでの間に、ライトプロテクト信号WPnxを“H”から“L”レベルに切り替える。
ODT制御回路52は、ライトプロテクト信号WPnxが “H”レベルに切り替わったタイミングで、チップイネーブル信号CEnx、コマンドラッチイネーブル信号CLEx、アドレスラッチイネーブル信号ALEx、ライトイネーブル信号WEnx、及びリードイネーブル信号REnをラッチする。図24の例では、チップイネーブル信号CEnx及びライトイネーブル信号WEnxが“H”レベルとされ、且つコマンドラッチイネーブル信号CLEx及びアドレスラッチイネーブル信号ALExが“L”レベルとされているため、ODT制御回路52は、ライトプロテクト信号WPnxをODT回路60の制御信号として処理し、リードイネーブル信号REnの“H”/“L”レベルに応じて、DIN/DOUTモードを選択する。そして、WPnx端子の信号が“H”から“L”レベルに切り替わってから例えば25nsec後に、対応するODT回路60をオンにする。
次にコントローラ100は、ライトプロテクト信号WPnxを“L”から“H”レベルに切り替える。ODT制御回路52は、ライトプロテクト信号WPnxが“L”から“H”レベルに切り替わってから例えば25nsec経過後、対応するODT回路60をオフにする。
5.3 本実施形態に係る効果について 本実施形態に係る構成であれば、第1乃至第4実施形態と同様の効果を得ることができる。
更に本実施形態では、ライトプロテクト信号WPnxにライトプロテクトの制御信号としての機能と、ODT回路60の制御信号としての機能を持たせることができる。すなわちライトプロテクト信号WPnと、ODTイネーブル信号ODTENを共通にすることができる。よってコントローラ100及びメモリ10におけるODTイネーブル信号ODTENに対応する端子、ODTイネーブル信号ODTENを送受信するためのデータ線を省略することができる。よって、メモリシステムにおいて端子数及びデータ線の本数の増加を抑制し、チップ面積の増大を抑制することができる。
更に本実施形態では、Set FeatureによるODT回路60のパラメータ設定後も、1つの信号に対してライトプロテクト制御信号としての機能とODT回路60の制御信号としての機能を持たせることができる。より具体的には、メモリ10は、ライトプロテクト信号WPnxが“H”レベルから“L”レベルに切り替わったタイミングで、チップイネーブル信号CEnx、コマンドラッチイネーブル信号CLEx、アドレスラッチイネーブル信号ALEx、ライトイネーブル信号WEnx、及びリードイネーブル信号REnをラッチする。そしてメモリ10は、各信号の状態に応じて、ライトプロテクト信号WPnxが、ライトプロテクト制御信号か、ODT回路60の制御信号かを判定することができる。チップイネーブル信号CEnx、コマンドラッチイネーブル信号CLEx、アドレスラッチイネーブル信号ALEx、ライトイネーブル信号WEnx、及びリードイネーブル信号REnを用いて判定することにより、ライトプロテクトあるいはODT回路60の誤動作を防止することができる。よって、メモリシステムの信頼性を向上することができる。
なお、本実施形態では、チップイネーブル信号CEnx、コマンドラッチイネーブル信号CLEx、アドレスラッチイネーブル信号ALEx、及びライトイネーブル信号WEnxを用いて、WPnx端子の信号が、ライトプロテクト信号WPnxか、ODTイネーブル信号ODTENxかを判定したが、判定に用いられる信号の種類、及び信号の論理レベルの組み合わせはこれに限定されない。
更に、ライトプロテクト信号WPnxにODTイネーブル信号ODTENとしての機能を持たせたが、ライトプロテクト信号WPnxに限定されない。
6.第6実施形態
次に第6実施形態について説明する。第6実施形態は、第5実施形態の第2例において、チップイネーブル信号CEnx、コマンドラッチイネーブル信号CLEx、アドレスラッチイネーブル信号ALEx、ライトイネーブル信号WEnxをラッチしない場合に関するものである。以下、第5実施形態の第2例と異なる点についてのみ説明する。
6.1 メモリシステムの全体構成について
まずメモリシステム1の全体構成について説明する。本実施形態におけるメモリシステム1では、ライトプロテクト信号WPnx、コマンドラッチイネーブル信号CLEx、アドレスラッチイネーブル信号ALEx、ライトイネーブル信号WEnxは、個別信号線を用いてコントローラ100から各メモリ10に送信される。
6.2 ODT回路の制御モード選択について
次に、ODT回路60の制御モードの選択について、図25を用いて説明する。
図25に示すように、チップイネーブル信号CEnx及びライトイネーブル信号WEnxが“H”レベルとされ、且つコマンドラッチイネーブル信号CLEx、アドレスラッチイネーブル信号ALEx、ライトプロテクト信号WPnxが“L”レベルとされた際、リードイネーブル信号REnが“H”レベルであれば、ODT制御回路52は、DINモードを選択してODT回路60をオンにする。他方で、リードイネーブル信号REnが“L”レベルであれば、ODT制御回路52は、DOUTモードを選択してODT回路60をオンにする。ODT制御回路52は、ODT回路60をオンにした際のリードイネーブル信号REnをラッチしている。よって、ODT回路60をオンにしている間、リードイネーブル信号REnが、“H”から“L”レベル、あるいは“L”から“H”レベルに変更されても、ODT制御回路52は、ODT回路60をオフにするまでDINモードあるいはDOUTモードを維持している。
また、チップイネーブル信号CEnx、コマンドラッチイネーブル信号CLEx、アドレスラッチイネーブル信号ALEx、及びライトイネーブル信号WEnxの少なくとも1つが、前述の論理レベルではない状態で、ライトプロテクト信号WPnxが“L”レベルの場合、ODT制御回路52は、ODT回路60をオフにする。そして、メモリ10は、ライトプロテクト状態となり、書き込みが禁止される。従ってODT回路60がオンの場合においても、チップイネーブル信号CEnx、コマンドラッチイネーブル信号CLEx、アドレスラッチイネーブル信号ALEx、及びライトイネーブル信号WEnxの少なくとも1つの論理レベルが反転した場合、メモリ10は、ODT回路60をオフにして、ライトプロテクト状態に移行する。
また、ライトプロテクト信号WPnxが“H”レベルの場合、ODT制御回路52は、ODT回路60をオフにする。
6.3 ODT回路の制御状態からライトプロテクト状態への移行について
次に、ODT回路60の制御状態からライトプロテクト状態に移行する際のタイミングについて、図26を用いて説明する。
図26に示すように、チップイネーブル信号CEnx及びライトイネーブル信号WEnxが“H”レベルとされ、且つコマンドラッチイネーブル信号CLEx及びアドレスラッチイネーブル信号ALExが“L”レベルとされた状態で、ライトプロテクト信号WPnxが“H”から“L”レベルにされると、ODT制御回路52は、ODT回路60をオンにする。
この状態で、例えばライトイネーブル信号WEnxが“H”から“L”にされると、ODT制御回路52は、ODT回路60をオフにする。そしてメモリ10は、ODT回路がオフにされてから例えば100nsec後に、ライトプロテクト状態に移行する。
なお、図26の例では、ライトイネーブル信号WEnxを“H”から“L”レベルに切り替えたが、チップイネーブル信号CEnx、コマンドラッチイネーブル信号CLEx、及びアドレスラッチイネーブル信号ALExのいずれかの信号の論理レベルを切り替えても良い。
6.3 本実施形態に係る効果について
本実施形態に係る構成であれば、第1乃至第5実施形態と同様の効果を得ることができる。
更に本実施形態では、ODT回路60がオンにされている状態で、チップイネーブル信号CEnx、コマンドラッチイネーブル信号CLEx、アドレスラッチイネーブル信号ALEx、及びライトイネーブル信号WEnxのいずれかの論理レベルを変更することにより、ODT回路60のオフ動作と、ライトプロテクト状態への移行を連続的に行うことができる。
7.第7実施形態
次に第7実施形態について説明する。第1乃至第6実施形態と異なる点は、Set Featureの際、ODT回路60の制御モードをDINモード及びDOUTモードのいずか1つに設定している点である。以下第1乃至第6実施形態と異なる点についてのみ説明する。
7.1 ODT回路の制御の流れについて
ODT回路60の制御の流れについて、図27を用いて説明する。
図27に示すように、まずコントローラ100は、Set Feature(第1動作)を実行する際、DINモードあるいはDOUTモードのいずれかを選択して、パラメータを設定する。
次に、コントローラ100は、書き込みまたは読み出し動作の際、ODTイネーブル信号ODTENを“L”から“H”レベルにする。ODT制御回路52は、ODTイネーブル信号ODTENが“H”レベルの間、Set Featureで予め設定されたDINモードあるいはDOUTモードで、対応するODT回路60をオンにする。
7.2 本実施形態に係る効果について
本実施形態に係る構成であると、第1乃至第6実施形態と同様の効果を得ることができる。
更に本実施形態では、Set FeatureによりDINモードあるいはDOUTモードのいずれか1つを予め設定することにより、ODT制御回路52は、ODT回路60の制御モードを選択することなくODT回路60の動作を制御できる。よって、ODT制御回路52の構成を簡略化でき、ODT制御回路52の回路面積を小さくすることができる。従ってチップ面積の増加を抑制できる。
8.第8実施形態
次に第8実施形態について説明する。第8実施形態は、第2実施形態において、チップアドレスデータCADDにより、ODT回路60をオンにするメモリチップ70a〜70hを選択するものである。以下、第2実施形態と異なる点についてのみ説明する。
8.1 メモリチップの選択について
メモリチップ70a〜70hの選択について、図28を用いて簡略に説明する。図28は、第2実施形態における図12を簡略に示した説明図である。なお、図28の例では、最上位のメモリチップ70hが選択されているが、これに限定されない。更に選択されるメモリチップ70は複数でも良い。
図28に示すように、各メモリチップ70(70a〜70h)のODT制御回路52は、書き込みまたは読み出し動作の際、コントローラ100から送信されるチップアドレスデータCADDにより、搭載されているメモリチップ70が、各メモリ10においてどの位置に実装されているかを把握する。そして例えば最上位のメモリチップ70hである場合、ODT制御回路52は、ODTイネーブル信号ODTENに応じて、対応するODT回路60をオンにする。
8.2 本実施形態における効果について
本実施形態に係る構成であると、第2実施形態と同様の効果を得ることができる。
更に本実施形態では、チップアドレスデータCADDにより、各メモリ10において、反射信号の低減に効果的なメモリチップ70だけを選択してODT回路60を動作させることができる。よって、より最適なODT回路60の制御をすることができ、信号の反射によるノイズをより効果的に低減できるため、信号の品質を向上することができる。
更に本実施形態では、チップアドレスデータCADDにより書き込みまたは読み出し動作の対象となるメモリチップ70を把握することができるため、対象となるメモリチップ70に応じて、ODT回路60の動作を制御することができる。よって、より最適なODT回路60の制御をすることができ、信号の反射によるノイズをより効果的に低減できるため、信号の品質を向上することができる。
更に本実施形態では、ODTイネーブル信号ODTENが各メモリチップ70において共通であっても、チップアドレスデータCADDにより、ODT回路60をオンにさせるメモリチップ70を選択することができる。よって、コントローラ100と各メモリ10を接続するODTイネーブル信号の信号線を共通信号線にすることができる。よって、メモリシステムの構成を簡略化でき、チップ面積の増大を抑制できる。
9.変形例等
上記実施形態のメモリシステムは、第1不揮発性半導体記憶装置(10@図1)と、コントローラ(100@図1)とを備える。コントローラは、第1信号と、読み出し動作においてデータを読み出すタイミングを制御する第2信号(REn@図3)とを第1不揮発性半導体記憶装置に送信可能である。第1不揮発性半導体記憶装置は、コントローラに接続され、第2信号を受信する第1端子と、第1端子に接続された第1及び第2抵抗素子(63a、63b@図4)と、第1抵抗素子と電源電圧線(VCC@図4)を電気的に接続する第1スイッチ素子(61@図4)と、第2抵抗素子と接地電圧線(VSS@図4)とを電気的に接続する第2スイッチ素子(62@図4)とを含む第1回路(60@図3)と、第1信号(ODTEN@図3)を用いて第1回路を制御する第2回路(52@図3)とを含む。第2回路は、第1信号の論理レベルが切り替わった際(L→H@図7)、第2信号が第1論理レベル(H@図7)にある場合、第1及び第2スイッチ素子をオフにし、第2信号が第2論理レベルにある場合(L@図7)、第1及び第2スイッチ素子をオンにする。
上記実施形態を適用することにより、処理能力を向上できる不揮発性半導体記憶装置及びメモリシステムを提供できる。
なお、実施形態は上記説明した形態に限定されるものではなく、種々の変形が可能である。更に、各実施形態は、可能な限り組み合わせることができる。例えば、第2実施形態に係る構成において、第5実施形態の第1例と第8実施形態を適用し、ODTイネーブル信号ODTENに対応する端子を省略して、チップアドレスデータCADDによりODT回路60をオンにするメモリチップ70を選択しても良い。
更に上記実施形態において、コントローラ100がODT回路60を備えても良い。例えばメモリ10間で信号の送受信を行う場合、コントローラ100のODT回路60をオンにしても良い。
更に上記実施形態において、データ線DQ[7:0]、クロック信号DQS及びDQSn、並びにリードイネーブル信号REn及びREに対応する端子にODT回路60が接続されている場合について説明したが、ODT回路60が接続される端子はこれらに限定されない。
更に上記実施形態において、リードイネーブル信号REn及びREに対応する端子に接続されるODT回路60が、DINモードではオフにされ、DOUTモードではオンにされる場合について説明したが、DINモードとDOUTモードでオンとオフが切り替わるODT回路60はこれらに限定されない。
更に上記実施形態において、ODT制御回路52の可変抵抗素子63a及び63bは、DINモードとDOUTモードで異なる抵抗値が設定されても良い。
更に上記実施形態において、ODT回路60を使用するインターフェースチップ20(あるいはメモリチップ70)は非選択メモリ10(あるいはメモリチップ70)に限定されない。
更に上記実施形態は、平面型NAND型フラッシュメモリあるいは三次元積層型NAND型フラッシュメモリのいずれにも適用できる。
更に、上記実施形態における「接続」とは、間に例えばトランジスタあるいは抵抗等、他の何かを介在させて間接的に接続されている状態も含む。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
なお、本発明に関する各実施形態において、以下の通りであっても良い。例えばメモリセルトランジスタMTが2ビット(4値)のデータを保持可能であり、4値のいずれかを保持している際の閾値レベルを低い方からEレベル(消去レベル)、Aレベル、Bレベル、及びCレベルとしたとき、
(1)読み出し動作では、
Aレベルの読み出し動作に選択されたワード線に印加される電圧は、例えば0V〜0.55Vの間である。これに限定されることなく、0.1V〜0.24V、0.21V〜0.31V、0.31V〜0.4V、0.4V〜0.5V、及び0.5V〜0.55Vのいずれかの間にしても良い。
Bレベルの読み出し動作に選択されたワード線に印加される電圧は、例えば1.5V〜2.3Vの間である。これに限定されることなく、1.65V〜1.8V、1.8V〜1.95V、1.95V〜2.1V、及び2.1V〜2.3Vのいずれかの間にしても良い。
Cレベルの読み出し動作に選択されたワード線に印加される電圧は、例えば3.0V〜4.0Vの間である。これに限定されることなく、3.0V〜3.2V、3.2V〜3.4V、3.4V〜3.5V、3.5V〜3.6V、及び3.6V〜4.0Vのいずれかの間にしても良い。
読み出し動作の時間(tR)としては、例えば25μs〜38μs、38μs〜70μs、または70μs〜80μsの間にしても良い。
(2)書き込み動作は、上述した通りプログラム動作とベリファイ動作を含む。書き込み動作では、
プログラム動作時に選択されたワード線に最初に印加される電圧は、例えば13.7V〜14.3Vの間である。これに限定されることなく、例えば13.7V〜14.0V及び14.0V〜14.6Vのいずれかの間としても良い。
奇数番目のワード線を書き込む際の、選択されたワード線に最初に印加される電圧と、偶数番目のワード線を書き込む際の、選択されたワード線に最初に印加される電圧を変えても良い。
プログラム動作をISPP方式(Incremental Step Pulse Program)としたとき、ステップアップの電圧として、例えば0.5V程度が挙げられる。
非選択のワード線に印加される電圧としては、例えば6.0V〜7.3Vの間としてもよい。この場合に限定されることなく、例えば7.3V〜8.4Vの間としてもよく、6.0V以下としても良い。
非選択のワード線が奇数番目のワード線であるか、偶数番目のワード線であるかで、印加するパス電圧を変えても良い。
書き込み動作の時間(tProg)としては、例えば1700μs〜1800μs、1800μs〜1900μs、または1900μs〜2000μsの間にしても良い。
(3)消去動作では、
半導体基板上部に形成され、且つ、上記メモリセルが上方に配置されたウェルに最初に印加する電圧は、例えば12V〜13.6Vの間である。この場合に限定されることなく、例えば13.6V〜14.8V、14.8V〜19.0V、19.0〜19.8V、または19.8V〜21Vの間であっても良い。
消去動作の時間(tErase)としては、例えば3000μs〜4000μs、4000μs〜5000μs、または4000μs〜9000μsの間にしても良い。
(4)メモリセルの構造は、
半導体基板(シリコン基板)上に膜厚が4〜10nmのトンネル絶縁膜を介して配置された電荷蓄積層を有している。この電荷蓄積層は膜厚が2〜3nmのSiN、またはSiONなどの絶縁膜と膜厚が3〜8nmのポリシリコンとの積層構造にすることができる。また、ポリシリコンにはRuなどの金属が添加されていても良い。電荷蓄積層の上には絶縁膜を有している。この絶縁膜は、例えば、膜厚が3〜10nmの下層High−k膜と膜厚が3〜10nmの上層High−k膜に挟まれた膜厚が4〜10nmのシリコン酸化膜を有している。High−k膜はHfOなどが挙げられる。また、シリコン酸化膜の膜厚はHigh−k膜の膜厚よりも厚くすることができる。絶縁膜上には膜厚が3〜10nmの仕事関数調整用の材料を介して膜厚が30nm〜70nmの制御電極が形成されている。ここで仕事関数調整用の材料はTaOなどの金属酸化膜、TaNなどの金属窒化膜である。制御電極にはWなどを用いることができる。
また、メモリセル間にはエアギャップを形成することができる。