次に、実施形態に係る半導体記憶装置を、図面を参照して詳細に説明する。尚、以下の実施形態はあくまでも一例であり、本発明を限定する意図で示されるものではない。
また、本明細書において「半導体記憶装置」と言った場合には、メモリダイ(メモリチップ)を意味する事もあるし、メモリカード、SSD等の、コントローラダイを含むメモリシステムを意味する事もある。更に、スマートホン、タブレット端末、パーソナルコンピュータ等の、ホストコンピュータを含む構成を意味する事もある。
また、本明細書において、第1の構成が第2の構成に「電気的に接続されている」と言った場合、第1の構成は第2の構成に直接接続されていても良いし、第1の構成が第2の構成に配線、半導体部材又はトランジスタ等を介して接続されていても良い。例えば、3つのトランジスタを直列に接続した場合には、2つ目のトランジスタがOFF状態であったとしても、1つ目のトランジスタは3つ目のトランジスタに「電気的に接続」されている。
また、本明細書において、第1の構成が第2の構成及び第3の構成の「間に接続されている」と言った場合、第1の構成、第2の構成及び第3の構成が直列に接続され、且つ、第2の構成が第1の構成を介して第3の構成に接続されていることを意味する場合がある。
また、本明細書において、回路等が2つの配線等を「導通させる」と言った場合には、例えば、この回路等がトランジスタ等を含んでおり、このトランジスタ等が2つの配線の間の電流経路に設けられており、このトランジスタ等がON状態となることを意味する事がある。
[第1実施形態]
[メモリシステム10]
図1は、第1実施形態に係るメモリシステム10の構成を示す模式的なブロック図である。
メモリシステム10は、ホストコンピュータ20から送信された信号に応じて、読出動作、書込動作、消去動作等を行う。メモリシステム10は、例えば、メモリカード、SSD又はその他のユーザデータを記憶可能なシステムである。メモリシステム10は、ユーザデータを記憶する複数のメモリダイMDと、これら複数のメモリダイMD及びホストコンピュータ20に接続されるコントローラダイCDと、を備える。コントローラダイCDは、例えば、プロセッサ、RAM等を備え、論理アドレスと物理アドレスの変換、ビット誤り検出/訂正、ガベージコレクション(コンパクション)、ウェアレベリング等の処理を行う。
図2は、本実施形態に係るメモリシステム10の構成例を示す模式的な側面図である。図3は、同構成例を示す模式的な平面図である。説明の都合上、図2及び図3では一部の構成を省略する。
図2に示す様に、本実施形態に係るメモリシステム10は、実装基板MSBと、実装基板MSBに積層された複数のメモリダイMDと、メモリダイMDに積層されたコントローラダイCDと、を備える。実装基板MSBの上面のうち、Y方向の端部の領域にはパッド電極Pが設けられ、その他の一部の領域は接着剤等を介してメモリダイMDの下面に接着されている。メモリダイMDの上面のうち、Y方向の端部の領域にはパッド電極Pが設けられ、その他の領域は接着剤等を介して他のメモリダイMD又はコントローラダイCDの下面に接着されている。コントローラダイCDの上面のうち、Y方向の端部の領域にはパッド電極Pが設けられている。
図3に示す様に、実装基板MSB、複数のメモリダイMD、及び、コントローラダイCDは、それぞれ、X方向に並ぶ複数のパッド電極Pを備えている。実装基板MSB、複数のメモリダイMD、及び、コントローラダイCDに設けられた複数のパッド電極Pは、それぞれ、ボンディングワイヤBを介してお互いに接続されている。
尚、図2及び図3に示した構成は例示に過ぎず、具体的な構成は適宜調整可能である。例えば、図2及び図3に示す例では、複数のメモリダイMD上にコントローラダイCDが積層され、これらの構成がボンディングワイヤBによって接続されている。この様な構成では、複数のメモリダイMD及びコントローラダイCDが一つのパッケージ内に含まれる。しかしながら、コントローラダイCDは、メモリダイMDとは別のパッケージに含まれていても良い。また、複数のメモリダイMD及びコントローラダイCDは、ボンディングワイヤBではなく、貫通電極等を介してお互いに接続されていても良い。
[メモリダイMDの構成]
図4は、第1実施形態に係るメモリダイMDの構成を示す模式的なブロック図である。図5は、メモリダイMDの一部の構成を示す模式的な回路図である。図6は、メモリダイMDの一部の構成を示す模式的な斜視図である。図7~図9は、メモリダイMDの一部の構成を示す模式的な回路図である。説明の都合上、図4~図9では一部の構成を省略する。
尚、図4には、複数の制御端子等を図示している。これら複数の制御端子は、ハイアクティブ信号(正論理信号)に対応する制御端子として表される場合と、ローアクティブ信号(負論理信号)に対応する制御端子として表される場合と、ハイアクティブ信号及びローアクティブ信号の双方に対応する制御端子として表される場合と、がある。図4において、ローアクティブ信号に対応する制御端子の符号は、オーバーライン(上線)を含んでいる。本明細書において、ローアクティブ信号に対応する制御端子の符号は、スラッシュ(“/”)を含んでいる。尚、図4の記載は例示であり、具体的な態様は適宜調整可能である。例えば、一部又は全部のハイアクティブ信号をローアクティブ信号としたり、一部又は全部のローアクティブ信号をハイアクティブ信号としたりすることも可能である。
また、図4に示す複数の制御端子の横には、入出力方向を示す矢印を図示している。図4において、左から右への矢印が付された制御端子は、コントローラダイCDからメモリダイMDへの、データ又はその他の信号の入力に使用可能である。図4において、右から左への矢印が付された制御端子は、メモリダイMDからコントローラダイCDへの、データ又はその他の信号の出力に使用可能である。図4において、左右双方向の矢印が付された制御端子は、コントローラダイCDからメモリダイMDへの、データ又はその他の信号の入力、及び、メモリダイMDからコントローラダイCDへの、データ又はその他の信号の出力の、双方に使用可能である。
図4に示す様に、メモリダイMDは、ユーザデータを記憶するメモリセルアレイMCA0,MCA1と、メモリセルアレイMCA0,MCA1に接続された周辺回路PCと、を備える。尚、以下の説明においては、メモリセルアレイMCA0,MCA1を、メモリセルアレイMCAと呼ぶ場合がある。また、メモリセルアレイMCA0,MCA1を、プレーンPLN0,PLN1と呼ぶ場合がある。
[メモリセルアレイMCAの構成]
メモリセルアレイMCAは、図5に示す様に、複数のメモリブロックBLKを備える。これら複数のメモリブロックBLKは、それぞれ、複数のストリングユニットSUを備える。これら複数のストリングユニットSUは、それぞれ、複数のメモリストリングMSを備える。これら複数のメモリストリングMSの一端は、それぞれ、ビット線BLを介して周辺回路PCに接続される。また、これら複数のメモリストリングMSの他端は、それぞれ、共通のソース線SLを介して周辺回路PCに接続される。
メモリストリングMSは、ビット線BL及びソース線SLの間に直列に接続されたドレイン側選択トランジスタSTD、複数のメモリセルMC(メモリセルトランジスタ)、ソース側選択トランジスタSTS、及び、ソース側選択トランジスタSTSbを備える。以下、ドレイン側選択トランジスタSTD、ソース側選択トランジスタSTS、及び、ソース側選択トランジスタSTSbを、単に選択トランジスタ(STD、STS、STSb)と呼ぶ事がある。
メモリセルMCは、半導体層、ゲート絶縁膜、及びゲート電極を備える電界効果型のトランジスタである。半導体層は、チャネル領域として機能する。ゲート絶縁膜は、電荷蓄積膜を含む。メモリセルMCのしきい値電圧は、電荷蓄積膜中の電荷量に応じて変化する。メモリセルMCは、1ビット又は複数ビットのユーザデータを記憶する。尚、1のメモリストリングMSに対応する複数のメモリセルMCのゲート電極には、それぞれ、ワード線WLが接続される。これらワード線WLは、それぞれ、1のメモリブロックBLK中の全てのメモリストリングMSに共通に接続される。
選択トランジスタ(STD、STS、STSb)は、半導体層、ゲート絶縁膜、及びゲート電極を備える電界効果型のトランジスタである。半導体層は、チャネル領域として機能する。選択トランジスタ(STD、STS、STSb)のゲート電極には、それぞれ、選択ゲート線(SGD、SGS、SGSb)が接続される。ドレイン側選択ゲート線SGDは、ストリングユニットSUに対応して設けられ、1のストリングユニットSU中の全てのメモリストリングMSに共通に接続される。ソース側選択ゲート線SGSは、メモリブロックBLK中の全てのメモリストリングMSに共通に接続される。ソース側選択ゲート線SGSbは、メモリブロックBLK中の全てのメモリストリングMSに共通に接続される。
メモリセルアレイMCAは、例えば図6に示す様に、半導体基板100の上方に設けられている。尚、図6の例では、半導体基板100とメモリセルアレイMCAとの間に、周辺回路PCを構成する複数のトランジスタTrが設けられている。
メモリセルアレイMCAは、Y方向に並ぶ複数のメモリブロックBLKを備える。また、Y方向において隣り合う2つのメモリブロックBLKの間には、酸化シリコン(SiO2)等のブロック間絶縁層STが設けられる。
メモリブロックBLKは、例えば図6に示す様に、Z方向に並ぶ複数の導電層110と、Z方向に延伸する複数の半導体柱120と、複数の導電層110及び複数の半導体柱120の間にそれぞれ設けられた複数のゲート絶縁膜130と、を備える。
導電層110は、X方向に延伸する略板状の導電層である。導電層110は、窒化チタン(TiN)等のバリア導電膜及びタングステン(W)等の金属膜の積層膜等を含んでいても良い。また、導電層110は、例えば、リン(P)又はホウ素(B)等の不純物を含む多結晶シリコン等を含んでいても良い。Z方向に並ぶ複数の導電層110の間には、酸化シリコン(SiO2)等の絶縁層101が設けられている。
また、複数の導電層110のうち、最下層に位置する2以上の導電層110は、ソース側選択ゲート線SGS,SGSb(図5)及びこれに接続された複数のソース側選択トランジスタSTS,STSbのゲート電極として機能する。これら複数の導電層110は、メモリブロックBLK毎に電気的に独立している。
また、これよりも上方に位置する複数の導電層110は、ワード線WL(図5)及びこれに接続された複数のメモリセルMC(図5)のゲート電極として機能する。これら複数の導電層110は、それぞれ、メモリブロックBLK毎に電気的に独立している。
また、これよりも上方に位置する一又は複数の導電層110は、ドレイン側選択ゲート線SGD及びこれに接続された複数のドレイン側選択トランジスタSTD(図5)のゲート電極として機能する。これら複数の導電層110は、その他の導電層110よりもY方向の幅が小さい。
導電層110の下方には、半導体層112が設けられている。半導体層112は、例えば、リン(P)又はホウ素(B)等の不純物を含む多結晶シリコン等を含んでいても良い。また、半導体層112及び導電層110の間には、酸化シリコン(SiO2)等の絶縁層101が設けられている。
半導体層112は、ソース線SL(図5)として機能する。ソース線SLは、例えば、メモリセルアレイMCAに含まれる全てのメモリブロックBLKについて共通に設けられている。
半導体柱120は、例えば図6に示す様に、X方向及びY方向に所定のパターンで並ぶ。半導体柱120は、1つのメモリストリングMS(図5)に含まれる複数のメモリセルMC及び選択トランジスタ(STD、STS、STSb)のチャネル領域として機能する。半導体柱120は、例えば、多結晶シリコン(Si)等の半導体層である。半導体柱120は、例えば図6に示す様に、略円筒状の形状を有し、中心部分には酸化シリコン等の絶縁層125が設けられている。また、半導体柱120の外周面は、それぞれ導電層110によって囲まれており、導電層110と対向している。
半導体柱120の上端部には、リン(P)等のN型の不純物を含む不純物領域121が設けられている。不純物領域121は、コンタクトCh及びコンタクトCbを介してビット線BLに接続される。
ゲート絶縁膜130は、半導体柱120の外周面を覆う略円筒状の形状を有する。ゲート絶縁膜130は、例えば、半導体柱120及び導電層110の間に積層されたトンネル絶縁膜、電荷蓄積膜及びブロック絶縁膜を備える。トンネル絶縁膜及びブロック絶縁膜は、例えば、酸化シリコン(SiO2)等の絶縁膜である。電荷蓄積膜は、例えば、窒化シリコン(Si3N4)等の電荷を蓄積可能な膜である。トンネル絶縁膜、電荷蓄積膜、及び、ブロック絶縁膜は略円筒状の形状を有し、半導体柱120と半導体層112との接触部を除く半導体柱120の外周面に沿ってZ方向に延伸する。
尚、ゲート絶縁膜130は、例えば、N型又はP型の不純物を含む多結晶シリコン等のフローティングゲートを備えていても良い。
複数の導電層110のX方向における端部には、複数のコンタクトCCが設けられている。複数の導電層110は、これら複数のコンタクトCCを介して周辺回路PCに接続されている。図6に示す様に、これら複数のコンタクトCCはZ方向に延伸し、下端において導電層110と接続されている。コンタクトCCは、例えば、窒化チタン(TiN)等のバリア導電膜及びタングステン(W)等の金属膜の積層膜等を含んでいても良い。
[周辺回路PCの構成]
周辺回路PCは、例えば図4に示す様に、メモリセルアレイMCA0,MCA1にそれぞれ接続されたロウデコーダRD0,RD1と、センスアンプSA0,SA1と、を備える。また、周辺回路PCは、電圧生成回路VGと、シーケンサSQCと、を備える。また、周辺回路PCは、入出力制御回路I/Oと、論理回路CTRと、アドレスレジスタADRと、コマンドレジスタCMRと、ステータスレジスタSTRと、データ出力タイミング調整部TCTと、を備える。尚、以下の説明においては、ロウデコーダRD0,RD1を、ロウデコーダRDと呼び、センスアンプSA0,SA1を、センスアンプSAと呼ぶ場合がある。
[ロウデコーダRDの構成]
ロウデコーダRD(図4)は、例えば図5に示す様に、アドレスデータAdd(図4)をデコードするアドレスデコーダ22と、アドレスデコーダ22の出力信号に応じてメモリセルアレイMCAに動作電圧を転送するブロック選択回路23及び電圧選択回路24と、を備える。
アドレスデコーダ22は、複数のブロック選択線BLKSEL及び複数の電圧選択線33を備える。アドレスデコーダ22は、例えば、シーケンサSQCからの制御信号に従ってアドレスレジスタADR(図4)のロウアドレスRAを順次参照し、このロウアドレスRAをデコードして、ロウアドレスRAに対応する所定のブロック選択トランジスタ35及び電圧選択トランジスタ37をON状態とし、それ以外のブロック選択トランジスタ35及び電圧選択トランジスタ37をOFF状態とする。例えば、所定のブロック選択線BLKSEL及び電圧選択線33の電圧を“H”状態とし、それ以外の電圧を“L”状態とする。尚、Nチャネル型でなくPチャネル型のトランジスタを用いる場合には、これらの配線に逆の電圧を印加する。
尚、図示の例において、アドレスデコーダ22には、1つのメモリブロックBLKについて1つずつブロック選択線BLKSELが設けられている。しかしながら、この構成は適宜変更可能である。例えば、2以上のメモリブロックBLKについて1つずつブロック選択線BLKSELを備えていても良い。
ブロック選択回路23は、メモリブロックBLKに対応する複数のブロック選択部34を備える。これら複数のブロック選択部34は、それぞれ、ワード線WL及び選択ゲート線(SGD、SGS、SGSb)に対応する複数のブロック選択トランジスタ35を備える。ブロック選択トランジスタ35は、例えば、電界効果型の耐圧トランジスタである。ブロック選択トランジスタ35のドレイン電極は、それぞれ、対応するワード線WL又は選択ゲート線(SGD、SGS、SGSb)に電気的に接続される。ソース電極は、それぞれ、配線CG及び電圧選択回路24を介して電圧供給線31に電気的に接続される。ゲート電極は、対応するブロック選択線BLKSELに共通に接続される。
尚、ブロック選択回路23は、図示しない複数のトランジスタを更に備える。これら複数のトランジスタは、選択ゲート線(SGD,SGS,SGSb)及び接地電圧VSSが供給される電圧供給線の間に接続された電界効果型の耐圧トランジスタである。これら複数のトランジスタは、非選択のメモリブロックBLKに含まれる選択ゲート線(SGD、SGS、SGSb)に接地電圧VSSを供給する。尚、非選択のメモリブロックBLKに含まれる複数のワード線WLは、フローティング状態となる。
電圧選択回路24は、ワード線WL及び選択ゲート線(SGD、SGS、SGSb)に対応する複数の電圧選択部36を備える。これら複数の電圧選択部36は、それぞれ、複数の電圧選択トランジスタ37を備える。電圧選択トランジスタ37は、例えば、電界効果型の耐圧トランジスタである。電圧選択トランジスタ37のドレイン端子は、それぞれ、配線CG及びブロック選択回路23を介して、対応するワード線WL又は選択ゲート線(SGD、SGS、SGSb)に電気的に接続される。ソース端子は、それぞれ、対応する電圧供給線31に電気的に接続される。ゲート電極は、それぞれ、対応する電圧選択線33に接続される。
[センスアンプSAの構成]
センスアンプSA0,SA1(図4)は、それぞれセンスアンプモジュールSAM0,SAM1と、キャッシュメモリCM0,CM1(データレジスタ)と、を備える。キャッシュメモリCM0,CM1は、それぞれラッチ回路XDL0,XDL1を備える。
尚、以下の説明においては、センスアンプモジュールSAM0,SAM1を、センスアンプモジュールSAMと呼び、キャッシュメモリCM0,CM1を、キャッシュメモリCMと呼び、ラッチ回路XDL0,XDL1を、ラッチ回路XDLと呼ぶ場合がある。
センスアンプモジュールSAMは、例えば、複数のビット線BLにそれぞれ対応するセンス回路と、センス回路に接続された複数のラッチ回路等と、を備える。
キャッシュメモリCMは、複数のラッチ回路XDLを備える。複数のラッチ回路XDLは、それぞれセンスアンプモジュールSAM内のラッチ回路に接続される。ラッチ回路XDLには、例えば、メモリセルMCに書き込まれるユーザデータDat又はメモリセルMCから読み出されたユーザデータDatが保持される。
キャッシュメモリCMには、例えば図7に示す様に、カラムデコーダCOLDが接続される。カラムデコーダCOLDは、アドレスレジスタADR(図4)に保持されたカラムアドレスCA(図4)をデコードし、カラムアドレスCAに対応するラッチ回路XDLを選択する。
尚、これら複数のラッチ回路XDLに保持されるユーザデータDatは、書込動作の際に、センスアンプモジュールSAM内のラッチ回路に順次転送される。また、センスアンプモジュールSAM内のラッチ回路に含まれるユーザデータDatは、読出動作の際に、ラッチ回路XDLに順次転送される。また、ラッチ回路XDLに含まれるユーザデータDatは、後述するデータアウトの際に、カラムデコーダCOLD及びマルチプレクサMPXを介して、入出力制御回路I/Oに順次転送される。
[電圧生成回路VGの構成]
電圧生成回路VG(図4)は、例えば図5に示す様に、複数の電圧供給線31に接続されている。電圧生成回路VGは、例えば、レギュレータ等の降圧回路及びチャージポンプ回路32等の昇圧回路を含む。これら降圧回路及び昇圧回路は、それぞれ、電源電圧VCC及び接地電圧VSS(図4)が供給される電圧供給線に接続されている。これらの電圧供給線は、例えば、図2、図3を参照して説明したパッド電極Pに接続されている。電圧生成回路VGは、例えば、シーケンサSQCからの制御信号に従って、メモリセルアレイMCAに対する読出動作、書込動作及び消去動作に際してビット線BL、ソース線SL、ワード線WL及び選択ゲート線(SGD、SGS、SGSb)に印加される複数通りの動作電圧を生成し、複数の電圧供給線31に同時に出力する。電圧供給線31から出力される動作電圧は、シーケンサSQCからの制御信号に従って適宜調整される。
[シーケンサSQCの構成]
シーケンサSQC(図4)は、コマンドレジスタCMRに保持されたコマンドデータCmdに従い、ロウデコーダRD0,RD1、センスアンプモジュールSAM0,SAM1、及び、電圧生成回路VGに内部制御号を出力する。また、シーケンサSQCは、メモリダイMDの状態を示すステータスデータSttを、適宜ステータスレジスタSTRに出力する。
また、シーケンサSQCは、レディ/ビジー信号を生成し、端子RY//BYに出力する。端子RY//BYは、例えば、読出動作、書込動作、消去動作等、メモリセルアレイMCAに対して電圧を供給する動作、後述するゲットフィーチャ、セットフィーチャ等の実行中に“L”状態となり、それ以外の場合には“H”状態となる。尚、後述するデータアウト、ステータスリード等の動作を実行しても、端子RY//BYは“L”状態にはならない。端子RY//BYが“L”状態の期間(ビジー期間)では、メモリダイMDへのアクセスが基本的には禁止される。また、端子RY//BYが“H”状態の期間(レディ期間)においては、メモリダイMDへのアクセスが許可される。尚、端子RY//BYは、例えば、図2、図3を参照して説明したパッド電極Pによって実現される。
また、シーケンサSQCは、フィーチャレジスタFRを備える。フィーチャレジスタFRは、フィーチャデータFdを保持するレジスタである。フィーチャデータFdは、例えば、メモリダイMDの制御パラメータ等を含む。フィーチャデータFdは、例えば、メモリダイMDを、後述する動作モードMODEa及び動作モードMODEbのうち、いずれのモードで動作させるかを示す値を含む。また、フィーチャデータFdは、例えば、入出力制御回路I/Oの状態を示す、後述する値を含む。
[アドレスレジスタADRの構成]
アドレスレジスタADRは、図4に示す様に、入出力制御回路I/Oに接続され、入出力制御回路I/Oから入力されたアドレスデータAddを保持する。アドレスレジスタADRは、例えば、8ビットのレジスタ列を、複数備える。レジスタ列は、例えば、読出動作、書込動作又は消去動作等の内部動作が実行される際、実行中の動作に対応するアドレスデータAddと、次に実行される動作に対応するアドレスデータAddと、を含む複数のアドレスデータAddを保持する。
アドレスデータAddは、例えば、カラムアドレスCA(図4)及びロウアドレスRA(図4)を含む。ロウアドレスRAは、例えば、メモリブロックBLK(図5)を特定するブロックアドレスと、ストリングユニットSU及びワード線WLを特定するページアドレスと、メモリセルアレイMCA(プレーン)を特定するプレーンアドレスと、メモリダイMDを特定するチップアドレスと、を含む。
尚、一のアドレスデータAddに対応する動作の実行中に、他のアドレスデータAddに対応する動作が指示されてしまうと、意図した動作が好適に実行されない場合がある。例えば、あるメモリダイMDにおいて、1つのプレーンからのデータアウトの実行中に、他のプレーン(異なるプレーンに対応するアドレスデータAdd)に対するデータアウトが指示された場合、最初のデータアウトが終了した後に、次のデータアウトを開始するように、動作タイミングが調整される。
これに対して、例えば、図2及び図3に示すように複数のメモリダイMDを接続した構成において、あるメモリダイMDからのデータアウトの実行中に、他のメモリダイMD(異なるメモリダイに対応するアドレスデータAdd)に対するデータアウトが指示された場合、意図したアドレスに対応するユーザデータDatが好適に出力できない場合がある。
ユーザデータDatの出力は、外部制御端子/RE,REの入力信号を切り替える(トグルする)ことによって指示される。図2及び図3に示すように複数のメモリダイMDを接続した構成において、あるメモリダイMDからのデータアウトの実行中に、他のメモリダイMD(異なるメモリダイに対応するアドレスデータAdd)に対するデータアウトが指示された場合、両方のメモリダイMDが外部制御端子/RE,REにおける入力信号の切り替え(トグル)に対応して、データアウトを実行してしまうおそれがある。
そこで、第1実施形態に係る半導体記憶装置は、動作対象となるアドレスデータAddの切り替えが、トリガ信号の入力によって実行可能となる様に構成されている。例えば、図2及び図3に示すように複数のメモリダイMDを接続した構成において、あるメモリダイMDからのデータアウトの実行中に、他のメモリダイMD(異なるメモリダイに対応するアドレスデータAdd)に対するデータアウトが指示された場合、後にデータアウトが指示されたメモリダイMDは、トリガ信号が入力されるまで、外部制御端子/RE,REにおける入力信号が切り替えされても(トグルされても)、データアウトを開始しない。そして、コントローラダイCDは、先にデータアウトを実行しているメモリダイMDからのデータアウトが終了したことを検出した後に、共通に接続された全てのメモリダイMDに、アドレスデータAddを切り替えるためのトリガ信号を入力し、その後で、外部制御端子/RE,REの入力信号を切り替える(トグルする)。先にデータアウトを実行していたメモリダイMDは、コントローラダイCDからトリガ信号を受信しても、反応しない。これに対して、後からデータアウトを指示されたメモリダイMDは、コントローラダイCDからトリガ信号を受信することにより、外部制御端子/RE,REにおける入力信号の切り替え(トグル)に対応してデータアウトを実行可能となる。従って、先にデータアウトを実行していたメモリダイMDと、後からデータアウトを指示されたメモリダイMDとにおいて、動作が衝突することを可否できる。すなわち、トリガ信号は、メモリダイMDに対してデータアウトが開始可能になったことを指示するための信号として機能する。これにより、図2及び図3に示すように複数のメモリダイMDを接続した構成において、複数のメモリダイMDからのデータアウトを連続的に実行可能となる。
[コマンドレジスタCMRの構成]
コマンドレジスタCMRは、入出力制御回路I/Oに接続され、入出力制御回路I/Oから入力されたコマンドデータCmdを保持する。コマンドレジスタCMRは、例えば、8ビットのレジスタ列を、少なくとも1セット備える。コマンドレジスタCMRにコマンドデータCmdが保持されると、シーケンサSQCに制御信号が入力される。
[ステータスレジスタSTRの構成]
ステータスレジスタSTRは、入出力制御回路I/Oに接続され、入出力制御回路I/Oへ出力するステータスデータSttを保持する。ステータスレジスタSTRは、例えば、8ビットのレジスタ列を、複数備える。レジスタ列は、例えば、読出動作、書込動作又は消去動作等の内部動作が実行される際、実行中の内部動作に関するステータスデータSttを保持する。また、レジスタ列は、例えば、メモリセルアレイMCA0,MCA1のレディ/ビジー情報を保持する。
[データ出力タイミング調整部TCTの構成]
データ出力タイミング調整部TCTは、キャッシュメモリCM0,CM1と入出力制御回路I/Oとの間のバス配線DBに接続される。データ出力タイミング調整部TCTは、例えば、キャッシュメモリCM0,CM1に対して後述するデータアウトを連続して実行する場合等に、キャッシュメモリCM0のデータアウトの完了後、時間を空けずにキャッシュメモリCM1のデータアウトを開始するために、キャッシュメモリCM1に対するデータアウトの開始タイミングを調整する。
[入出力制御回路I/Oの構成]
入出力制御回路I/O(図4)は、データ信号入出力端子DQ0~DQ7と、データストローブ信号入出力端子DQS,/DQSと、シフトレジスタと、バッファ回路と、を備える。入出力制御回路I/O(図4)中の各回路は、電源電圧VCCQ及び接地電圧VSS(図4)が供給される端子に接続される。尚、電源電圧VCCQ及び接地電圧VSSが供給される端子は、例えば、図2、図3を参照して説明したパッド電極Pによって実現される。
データ信号入出力端子DQ0~DQ7、及び、データストローブ信号入出力端子DQS,/DQSの各々は、例えば、図2、図3を参照して説明したパッド電極Pによって実現される。データ信号入出力端子DQ0~DQ7を介して入力されたデータは、論理回路CTRからの内部制御信号に応じて、バッファ回路から、キャッシュメモリCM、アドレスレジスタADR又はコマンドレジスタCMRに入力される。また、データ信号入出力端子DQ0~DQ7を介して出力されるデータは、論理回路CTRからの内部制御信号に応じて、キャッシュメモリCM又はステータスレジスタSTRからバッファ回路に入力される。
データストローブ信号入出力端子DQS,/DQSを介して入力された信号(例えば、データストローブ信号及びその相補信号)は、データ信号入出力端子DQ0~DQ7を介したデータの入力に際して用いられる。データ信号入出力端子DQ0~DQ7を介して入力されたデータは、データストローブ信号入出力端子DQSの電圧の立ち上がりエッジ(入力信号の切り換え)及びデータストローブ信号入出力端子/DQSの電圧の立ち下がりエッジ(入力信号の切り換え)のタイミング、並びに、データストローブ信号入出力端子DQSの電圧の立ち下がりエッジ(入力信号の切り換え)及びデータストローブ信号入出力端子/DQSの電圧の立ち上がりエッジ(入力信号の切り換え)のタイミングで、入出力制御回路I/O内のシフトレジスタ内に取り込まれる。
入出力制御回路I/O(図4)は、例えば図8に示す様に、データ信号入出力端子DQ0~DQ7、及び、データストローブ信号入出力端子DQS,/DQSの各々に接続された入力回路201及び出力回路202を備える。入力回路201は、例えば、コンパレータ等のレシーバである。出力回路202は、例えば、OCD(Off Chip Driver)回路等のドライバである。
また、入出力制御回路I/O(図4)は、データ信号入出力端子DQ0~DQ7の各々に対応して設けられた複数のラッチ回路203を備える。これら複数のラッチ回路203は、対応するデータ信号入出力端子DQ0~DQ7に接続された入力回路201の出力端子に接続されている。また、これら複数のラッチ回路203は、上述した様な、データストローブ信号入出力端子DQS,/DQSの入力信号の切り替えのタイミングで、入力回路201の出力端子の電圧値に応じて、“H”又は“L”をラッチする。
また、入出力制御回路I/O(図4)は、データストローブ信号入出力端子DQS,/DQSの各々に対応して設けられた信号転送回路204を備える。信号転送回路204は、例えば、直列に接続された偶数個のCMOSインバータを備える。信号転送回路204の入力端子は、入力回路201の出力端子に接続されている。信号転送回路204の出力端子は、ラッチ回路203に接続されている。
また、入出力制御回路I/O(図4)は、内部パス遅延検出回路205を備える。内部パス遅延検出回路205は、図9に示す様に、信号転送回路211と、NAND回路212と、を備える。信号転送回路211は、図8を参照して説明した信号転送回路204と同様の構成を備える。信号転送回路211は、信号転送回路204のレプリカとして機能する。NAND回路212の一方の入力端子は、信号転送回路211の出力端子に接続されている。NAND回路212の他方の入力端子には、内部パス遅延検出回路205のイネーブル信号が入力される。NAND回路212の出力端子は、信号転送回路211の入力端子及びカウンタ213の入力端子に接続されている。
半導体記憶装置の使用条件によっては、図8を参照して説明した信号転送回路204の動作状態が変動してしまう場合がある。この様な場合、データ信号入出力端子DQ0~DQ7に対応する信号の伝搬経路と、データストローブ信号入出力端子DQS,/DQSに対応する信号の伝搬経路と、の間で、信号の遅延量が異なってしまう場合がある。内部パス遅延検出回路205は、この様な信号の遅延量の差を検出するための回路である。
例えば、信号の遅延量を検出する際、NAND回路212(図9)のイネーブル信号が、一定期間の間“H”状態となる。これに伴い、NAND回路212の出力信号が、信号転送回路211における遅延量に応じた周波数で発振する。従って、この期間にNAND回路212の出力端子から出力されるパルスの数をカウンタ213によって検出することにより、信号転送回路204,211における信号の遅延量を測定可能である。尚、上記パルスの数は、フィーチャデータFdのうちの一つとしてフィーチャレジスタFRに保持される。
[論理回路CTRの構成]
論理回路CTR(図4)は、複数の外部制御端子/CE,CLE,ALE,/WE,/RE,RE,/WPと、これら複数の外部制御端子/CE,CLE,ALE,/WE,/RE,RE,/WPに接続された論理回路と、を備える。論理回路CTRは、外部制御端子/CE,CLE,ALE,/WE,/RE,RE,/WPを介してコントローラダイCDから外部制御信号を受信し、これに応じて入出力制御回路I/Oに内部制御信号を出力する。
論理回路CTRは、例えば図8に示す様に、外部制御端子/CE,CLE,ALE,/WE,/RE,RE,/WPの各々に接続された入力回路201と、外部制御端子CLE,ALEの各々に接続された出力回路202と、を備える。尚、外部制御端子/CE,CLE,ALE,/WE,/RE,RE,/WPの各々は、例えば、図2、図3を参照して説明したパッド電極Pによって実現される。
外部制御端子/CEを介して入力された信号(例えば、チップイネーブル信号)は、メモリダイMDの選択に際して用いられる。第1実施形態においては、外部制御端子/CEに“L”が入力されたメモリダイMDは、ユーザデータDat、コマンドデータCmd及びアドレスデータAdd(以下、単に「データ」と呼ぶ場合がある。)の入出力が可能な状態となる。また、第1実施形態においては、外部制御端子/CEに“H”が入力されたメモリダイMDは、データの入出力が不可能な状態となる。尚、図8に示す様に、外部制御端子/CEは、入力回路201に接続されている。
外部制御端子CLEを介して入力された信号(例えば、コマンドラッチイネーブル信号)は、コマンドレジスタCMRの使用等に際して用いられる。外部制御端子CLEの機能等については、後述する。
外部制御端子ALEを介して入力された信号(例えば、アドレスラッチイネーブル信号)は、アドレスレジスタADRの使用等に際して用いられる。外部制御端子ALEの機能等については、後述する。
外部制御端子/WEを介して入力された信号(例えば、ライトイネーブル信号)は、コントローラダイCDからメモリダイMDへのデータの入力等に際して用いられる。外部制御端子/WEの機能等については、後述する。
外部制御端子/RE,REを介して入力された信号(例えば、リードイネーブル信号及びその相補信号)は、データ信号入出力端子DQ0~DQ7を介したデータの出力に際して用いられる。データ信号入出力端子DQ0~DQ7から出力されるデータは、外部制御端子/REの電圧の立ち下がりエッジ(入力信号の切り換え)及び外部制御端子REの電圧の立ち上がりエッジ(入力信号の切り換え)のタイミング、並びに、外部制御端子/REの電圧の立ち上がりエッジ(入力信号の切り換え)及び外部制御端子REの電圧の立ち下がりエッジ(入力信号の切り換え)のタイミングで切り替わる。
外部制御端子/WPを介して入力された信号(例えば、ライトプロテクト信号)は、コントローラダイCDからメモリダイMDへのユーザデータDatの入力の制限等に用いられる。
また、論理回路CTRは、例えば図4に示す様に、切替回路C20を備える。切替回路C20は、当該メモリダイMDにおいて、1つのプレーンからのデータアウトの実行中に、他のプレーン(異なるプレーンに対応するアドレスデータAdd)に対するデータアウトが指示された場合、最初のデータアウトが終了した後に、次のデータアウトを開始するように、動作タイミングを調整する。また、切替回路C20は、図2及び図3に示すように複数のメモリダイMDを接続した構成において、他のメモリダイMDからのデータアウトの実行中に、当該メモリダイMD(異なるメモリダイに対応するアドレスデータAdd)に対するデータアウトが指示された場合、コントローラダイCDからトリガ信号を受信するまでは、外部制御端子/RE,REにおける入力信号が切り替えされても(トグルされても)データアウトを開始しないよう制御する。
[動作モードMODEa及び動作モードMODEb]
本実施形態に係る半導体記憶装置は、動作モードMODEa及び動作モードMODEbで動作させることが可能である。以下、図10~図31を参照し、動作モードMODEa及び動作モードMODEbについて説明する。
[各モードにおける外部端子の役割]
図10は、動作モードMODEaにおける信号入出力端子及び外部制御端子の役割について説明するための模式的な図である。図11は、動作モードMODEbにおける信号入出力端子及び外部制御端子の役割について説明するための模式的な図である。尚、以下の説明においては、データ信号入出力端子DQ0~DQ7を、データ信号入出力端子DQ<7:0>と表記することがある。
動作モードMODEaにおいては、例えば図10に示す様に、データ信号入出力端子DQ<7:0>を、ユーザデータDatの入出力に加えて、コマンドデータCmd、アドレスデータAdd、ステータスデータStt、フィーチャデータFd等、ユーザデータDat以外のデータの入出力に使用する。
一方、動作モードMODEbにおいては、例えば図11に示す様に、データ信号入出力端子DQ<7:0>を、ユーザデータDatの入出力に使用するものの、コマンドデータCmd、アドレスデータAdd、ステータスデータStt、フィーチャデータFd等、ユーザデータDat以外のデータの入出力には、基本的には使用しない。動作モードMODEbにおいては、外部制御端子CLE,ALEを、ユーザデータDat以外のデータの入出力に使用する。
[動作モードMODEaにおける外部端子の役割]
図12は、動作モードMODEaにおける外部端子の役割を説明するための真理値表である。尚、図12において、“Z”は、“H”及び“L”いずれが入力されても良い場合を示す。“X”は、入力される信号が“H”又は“L”に固定される場合を示す。“Input”は、データの入力を行う場合を示す。“Output”は、データの出力を行う場合を示す。
動作モードMODEaにおいてコマンドデータCmdを入力する場合、コントローラダイCDは、例えば、データ信号入出力端子DQ<7:0>の電圧を、8ビットのコマンドデータCmdの各ビットに応じて“H”又は“L”に設定し、外部制御端子CLEに“H”を入力し、外部制御端子ALEに“L”を入力した状態で、外部制御端子/WEの電圧を“L”から“H”に立ち上げる。
外部制御端子CLE,ALEに“H,L”が入力されている場合、データ信号入出力端子DQ<7:0>を介して入力されたデータは、コマンドデータCmdとして入出力制御回路I/O内のバッファメモリに保持され、コマンドレジスタCMR(図4)に転送される。
また、アドレスデータAddを入力する場合、コントローラダイCDは、例えば、データ信号入出力端子DQ<7:0>の電圧を、アドレスデータAddを構成する8ビットのデータの各ビットに応じて“H”又は“L”に設定し、外部制御端子CLEに“L”を入力し、外部制御端子ALEに“H”を入力した状態で、外部制御端子/WEの電圧を“L”から“H”に立ち上げる。
外部制御端子CLE,ALEに“L,H”が入力されている場合、データ信号入出力端子DQ<7:0>を介して入力されたデータは、アドレスデータAddとして入出力制御回路I/O内のバッファメモリに保持され、アドレスレジスタADR(図4)に転送される。
また、ユーザデータDatを入力する場合、コントローラダイCDは、例えば、データ信号入出力端子DQ<7:0>の電圧を、ユーザデータDatを構成する8ビットのデータの各ビットに応じて“H”又は“L”に設定し、外部制御端子CLEに“L”を入力し、外部制御端子ALEに“L”を入力した状態で、データストローブ信号入出力端子DQS,/DQSの入力信号を切り替える(トグルする)。
外部制御端子CLE,ALEの双方に“L”が入力されている場合、データ信号入出力端子DQ<7:0>を介して入力されたデータは、ユーザデータDatとして入出力制御回路I/O内のバッファメモリに保持され、バスDBを介してキャッシュメモリCM(図4)に転送される。
また、ユーザデータDat又はステータスデータSttを出力する場合、コントローラダイCDは、例えば、外部制御端子/RE,REの入力信号を切り替える(トグルする)。これに伴い、データ信号入出力端子DQ0~DQ7に、出力されるユーザデータDat又はステータスデータSttのうちの8ビットが出力される。また、データストローブ信号入出力端子DQS,/DQSの出力信号が切り替わる。
また、メモリダイMDをスタンバイ状態とする場合、コントローラダイCDは、例えば、外部制御端子/CEに“H”を入力する。
また、メモリダイMDをバスアイドル状態とする場合、コントローラダイCDは、例えば、外部制御端子/WEに“H”を入力する。
[動作モードMODEbにおける外部端子の役割]
図13~図15は、動作モードMODEbにおける外部端子の役割を説明するための真理値表である。尚、図13~図15において、“Z”は、“H”及び“L”いずれが入力されても良い場合を示す。“X”は、入力される信号が“H”又は“L”に固定される場合を示す。“Input”は、データの入力を行う場合を示す。“Output”は、データの出力を行う場合を示す。
上述の通り、動作モードMODEbにおいては、外部制御端子CLE,ALEを、コマンドデータCmd、アドレスデータAdd、ステータスデータStt、フィーチャデータFd等の入出力に使用する。ここで、図17等を参照して後述する様に、動作モードMODEbにおいては、これらのデータの入出力等に先立って、入力されるデータ又は出力されるデータの種類等を指定する信号を入力する。以下、この様な信号を、入出力データ選択信号と呼ぶ。動作モードMODEbにおいて、入出力データ選択信号をヘッダと呼び、入出力データ選択信号に続いて入出力されるコマンドデータCmd、アドレスデータAdd、ステータスデータStt、フィーチャデータFd等をボディと呼んでもよい。また、1つのヘッダ及び1つのボディの組み合わせを、フレームと呼んでも良い。
図13は、入出力データ選択信号が入力される期間FSel(図17)の1サイクル目における外部制御端子の役割を示している。
期間FSelの1サイクル目において、アドレスデータAddを入力する旨の入出力データ選択信号を入力する場合、コントローラダイCDは、例えば、外部制御端子CLEに“L”を入力し、外部制御端子ALEに“H”を入力した状態で、外部制御端子/WEの電圧を“L”から“H”に立ち上げる。
期間FSelの1サイクル目において、外部制御端子CLEに“L”、外部制御端子ALEに“H”が入力された場合、期間FSelは1サイクルで終了する。また、この期間FSel直後の期間S_Inに入力されるデータは、アドレスデータAddとして入出力制御回路I/O内のバッファメモリに保持され、アドレスレジスタADR(図4)に転送される。
期間FSelの1サイクル目において、コマンドデータCmdを入力する旨の入出力データ選択信号を入力する場合、コントローラダイCDは、例えば、外部制御端子CLEに“H”を入力し、外部制御端子ALEに“L”を入力した状態で、外部制御端子/WEの電圧を“L”から“H”に立ち上げる。
期間FSelの1サイクル目において、外部制御端子CLEに“H”、外部制御端子ALEに“L”が入力された場合、期間FSelは1サイクルで終了する。また、この期間FSel直後の期間S_Inに入力されるデータは、コマンドデータCmdとして入出力制御回路I/O内のバッファメモリに保持され、コマンドレジスタCMR(図4)に転送される。
期間FSelの1サイクル目において、データアウトが開始可能になったことを指示するためのトリガ信号を入力する旨の入出力データ選択信号を入力する場合、コントローラダイCDは、例えば、外部制御端子CLEに“H”を入力し、外部制御端子ALEに“H”を入力した状態で、外部制御端子/WEの電圧を“L”から“H”に立ち上げる。
期間FSelの1サイクル目において、外部制御端子CLEに“H”、外部制御端子ALEに“H”が入力された場合、期間FSelは1サイクルで終了する。また、動作対象のアドレスデータが切り替わる。
期間FSelの1サイクル目において、その他の動作を実行する旨の入出力データ選択信号を入力する場合、コントローラダイCDは、例えば、外部制御端子CLEに“L”を入力し、外部制御端子ALEに“L”を入力した状態で、外部制御端子/WEの電圧を“L”から“H”に立ち上げる。
期間FSelの1サイクル目において、外部制御端子CLEに“L”、外部制御端子ALEに“L”が入力された場合、期間FSelに2サイクル目が追加される。
図14は、入出力データ選択信号が入力される期間FSelの2サイクル目における外部制御端子の役割を示している。
期間FSelの2サイクル目において、ユーザデータDat、アドレスデータAdd及びコマンドデータCmd以外のデータを入力する旨の入出力データ選択信号を入力する場合、コントローラダイCDは、例えば、外部制御端子CLEに“L”を入力し、外部制御端子ALEに“H”を入力した状態で、外部制御端子/WEの電圧を“L”から“H”に立ち上げる。
ユーザデータDat、アドレスデータAdd及びコマンドデータCmd以外のデータとしては、例えば、ステータスリード又はゲットフィーチャの実行に際してアドレスを指定する場合のアドレスデータが挙げられる。また、セットフィーチャの実行に際して必要なフィーチャデータFdが挙げられる。
期間FSelの2サイクル目において、外部制御端子CLEに“L”、外部制御端子ALEに“H”が入力された場合、この期間FSel直後の期間S_Inに入力されるデータは、これよりも前に入力されていたコマンドデータCmdに応じて、アドレスレジスタADR(図4)、フィーチャレジスタFR(図4)等に転送される。
期間FSelの2サイクル目において、ユーザデータDat以外のデータを出力する旨の入出力データ選択信号を入力する場合、コントローラダイCDは、例えば、外部制御端子CLEに“H”を入力し、外部制御端子ALEに“H”を入力した状態で、外部制御端子/WEの電圧を“L”から“H”に立ち上げる。
ユーザデータDat以外のデータとしては、例えば、ステータスデータStt、ゲットフィーチャの実行に応じて出力されるフィーチャデータFd等が挙げられる。
期間FSelの2サイクル目において、外部制御端子CLEに“H”、外部制御端子ALEに“H”が入力された場合、この期間FSel直後の期間S_Inに出力されるデータは、これよりも前に入力されていたコマンドデータCmdに応じて選択され、入出力制御回路I/Oから出力される。
期間FSelの2サイクル目において、その他の動作を実行する旨の入出力データ選択信号を入力する場合、コントローラダイCDは、例えば、外部制御端子CLEに“L”を入力し、外部制御端子ALEに“L”を入力した状態で、外部制御端子/WEの電圧を“L”から“H”に立ち上げる。
尚、期間FSelの間に外部制御端子CLE,ALEに入力された信号は、コマンドレジスタCMR(図4)、アドレスレジスタADR(図4)等に格納されない。また、期間FSelの2サイクル目において、外部制御端子CLEに“L”、外部制御端子ALEに“L”が入力された場合、期間FSelには、3サイクル目が追加されても良い。
図15は、ユーザデータDat以外のデータが入力される期間S_In、又は、ユーザデータDat以外のデータが出力される期間S_Outにおける外部制御端子の役割を示している。
期間S_InにおいてユーザデータDat以外のデータを入力する場合、コントローラダイCDは、例えば、外部制御端子CLE,ALEの電圧を、ユーザデータDat以外のデータを構成する2ビットのデータの各ビットに応じて“H”又は“L”に設定し、外部制御端子/WEの電圧を“L”から“H”に立ち上げる。
尚、動作モードMODEbにおいてユーザデータDatを入力する場合、コントローラダイCDは、例えば、データ信号入出力端子DQ<7:0>の電圧を、ユーザデータDatを構成する8ビットのデータの各ビットに応じて“H”又は“L”に設定し、外部制御端子/RE,REに“H,L”を入力した状態で、データストローブ信号入出力端子DQS,/DQSの入力信号を切り替える。この動作は、期間FSelにおいても、期間S_In,S_Outにおいても、実行可能である。
動作モードMODEbにおいて、データ信号入出力端子DQ<7:0>を介して入力されたデータは、ユーザデータDatとして入出力制御回路I/O内のバッファメモリに保持され、バスDBを介してキャッシュメモリCMに転送される。
期間S_OutにおいてユーザデータDat以外のデータを出力する場合、コントローラダイCDは、例えば、外部制御端子/WEの入力信号を立ち下げる。これに伴い、外部制御端子CLE,ALEから、ユーザデータDat以外のデータを構成する2ビットのデータが出力される。
期間S_In,S_OutにおいてメモリダイMDをスタンバイ状態とする場合、コントローラダイCDは、例えば、外部制御端子/CEに“H”を入力する。
期間S_In,S_OutにおいてメモリダイMDをバスアイドル状態とする場合、コントローラダイCDは、例えば、外部制御端子/WEに“H”を入力する。
[各モードにおける信号入出力の例]
図16及び図17は、第1実施形態に係るメモリダイMDの動作について説明するための模式的な波形図である。
図16は、動作モードMODEaにおいてコマンドデータCmd及びアドレスデータAddを入力する際の波形を示している。図16の例では、タイミングt101において、コントローラダイCDがメモリダイMDに、コマンドデータCmdを入力している。また、タイミングt102において、コントローラダイCDはメモリダイMDに、アドレスデータAddを入力している。尚、図示の例では、タイミングt102~t103において、アドレスデータAddを構成する8ビット×5サイクルのデータが入力されているが、サイクル数は5より少なくても多くても良い。また、タイミングt103において、コントローラダイCDはメモリダイMDに、コマンドデータCmdを入力している。また、タイミングt104において、外部制御端子/WEに入力される信号の立ち上がりエッジに対応してコマンドデータCmdが受け付けられる。これにより、読出動作等の動作が開始され、端子RY//BYの電圧が“H”から“L”に立ち下がっている。なお、コマンドデータCmdが受け付けられてから端子RY//BYの電圧が“H”から“L”に立ち下がるまでに、若干の遅れがある場合がある。
図17は、動作モードMODEbにおいてコマンドデータCmd及びアドレスデータAddを入力する際の波形を示している。図17の例では、外部制御端子/WEに、略一定のペースで“L”及び“H”が入力されている。また、外部制御端子/WEの入力信号が一度立ち下がってからもう一度立ち下がるまでの期間を1サイクルとした場合、図17には、1サイクルの期間FSelと、4サイクルの期間S_Inと、を例示している。
図17の例では、タイミングt151~t152の期間FSelにおいて、コントローラダイCDがメモリダイMDに、コマンドデータCmdの入力を指定する入出力データ選択信号を入力している。
また、タイミングt152~t153の期間S_Inにおいて、コントローラダイCDはメモリダイMDに、コマンドデータCmdを入力している。
ここで、図17の例では、期間S_Inにおいて、コントローラダイCDがメモリダイMDに、8ビットのコマンドデータCmdを、4サイクルに分けて2ビットずつ入力している。例えば、8ビットのコマンドデータCmdを、ビット“7”~“0”とする。まず、1サイクル目のデータ入力では、ビット“7”,“6”に応じて、外部制御端子CLE,ALEの電圧を“H”又は“L”に設定した状態で、外部制御端子/WEの電圧を“L”から“H”に立ち上げる。2サイクル目~4サイクル目のデータ入力でも同様に、ビット“5”,“4”、ビット“3”,“2”、及びビット“1”,“0”、に応じて、それぞれ外部制御端子CLE,ALEの電圧を“H”又は“L”に設定した状態で、外部制御端子/WEの電圧を“L”から“H”に立ち上げる。
また、タイミングt153~t154の期間FSelにおいて、コントローラダイCDはメモリダイMDに、アドレスデータAddの入力を指定する入出力データ選択信号を入力している。
また、タイミングt154~t155の期間S_Inにおいて、コントローラダイCDはメモリダイMDに、アドレスデータAddを入力している。
ここで、図17の例では、期間S_Inにおいて、コントローラダイCDがメモリダイMDに、アドレスデータAddを構成する8ビットのデータを、4サイクルに分けて2ビットずつ入力している。
尚、図示を省略しているが、タイミングt155~t156においても同様に、アドレスデータAddを構成するデータを、2ビットずつ入力している。
また、タイミングt156~t157の期間FSelにおいて、タイミングt151~t152と同様に、コマンドデータCmdの入力を指定する入出力データ選択信号を入力している。
また、タイミングt157~t158の期間S_Inにおいて、コントローラダイCDはメモリダイMDに、コマンドデータCmdを入力している。また、タイミングt158より少し前であって、外部制御端子/WEに入力される信号の立ち上がりエッジのタイミングにおいては、読出動作等の動作が開始され、端子RY//BYの電圧が“H”から“L”に立ち下がっている。
[動作]
次に、メモリダイMDの動作について説明する。
メモリダイMDは、読出動作を実行可能に構成されている。読出動作は、センスアンプモジュールSAM(図4)によってメモリセルアレイMCAからユーザデータDatを読み出し、読み出したユーザデータDatをラッチ回路XDL(図4)に転送する動作である。読出動作において、メモリセルアレイMCAから読み出されたユーザデータDatは、ビット線BL、センスアンプモジュールSAMを介してラッチ回路XDLに転送される。
また、メモリダイMDは、データアウトを実行可能に構成されている。データアウトは、ラッチ回路XDL(図4)に含まれるユーザデータDatをコントローラダイCD(図1)に出力する動作である。データアウトにおいて、ラッチ回路XDLに含まれるユーザデータDatは、図7を参照して説明したカラムデコーダCOLD、マルチプレクサMPX、バス配線DB、及び、入出力制御回路I/Oを介して、コントローラダイCDに出力される。
また、メモリダイMDは、ステータスリード(ステータス情報出力動作)を実行可能に構成されている。ステータスリードは、ステータスレジスタSTR(図4)に含まれるステータスデータSttをコントローラダイCD(図1)に出力する動作である。ステータスリードにおいて、ステータスレジスタSTRに含まれるステータスデータSttは、入出力制御回路I/O又は論理回路CTRを介して、コントローラダイCDに出力される。
また、メモリダイMDは、ゲットフィーチャ(特性情報出力動作)を実行可能に構成されている。ゲットフィーチャは、フィーチャレジスタFR(図4)に含まれるフィーチャデータFdをコントローラダイCD(図1)に出力する動作である。ゲットフィーチャにおいて、フィーチャレジスタFRに含まれるフィーチャデータFdは、入出力制御回路I/O又は論理回路CTRを介して、コントローラダイCDに出力される。
また、メモリダイMDは、セットフィーチャを実行可能に構成されている。セットフィーチャは、フィーチャレジスタFR(図4)にフィーチャデータFdを入力する動作である。セットフィーチャにおいては、入出力制御回路I/O又は論理回路CTRを介して、コントローラダイCDからフィーチャレジスタFRに、フィーチャデータFdが入力される。
[動作モードMODEaにおける読出動作及びデータアウト]
図18は、動作モードMODEaにおいて読出動作及びデータアウトを実行する場合の様子を示す模式的な波形図である。図18の例では、メモリダイMDが動作モードMODEaに設定されている。
図18の例では、まず、コマンドデータ“00h”、アドレスデータAdd、及びコマンドデータ“30h”が、データ信号入出力端子DQ<7:0>を介して順次入力されている。コマンドデータ“00h”は、読出動作を指示するコマンドセットの始めに入力するコマンドデータCmdである。コマンドデータ“30h”は、読出動作を指示するコマンドセットの終わりに入力するコマンドデータCmdである。
コマンドデータ“00h”、アドレスデータAdd、及びコマンドデータ“30h”の入力に伴い、読出動作が開始され、端子RY//BYの電圧が“H”から“L”に立ち下がっている。また、ユーザデータDatがラッチ回路XDLに転送される。また、読出動作が終了したタイミングで、端子RY//BYの電圧が“L”から“H”に立ち上がっている。
次に、コマンドデータ“05h”、アドレスデータAdd、及びコマンドデータ“E0h”が、データ信号入出力端子DQ<7:0>を介して順次入力されている。コマンドデータ“05h”は、データアウトを指示するコマンドセットの始めに入力するコマンドデータCmdである。コマンドデータ“E0h”は、データアウトを指示するコマンドセットの終わりに入力するコマンドデータCmdである。
コマンドデータ“05h”、アドレスデータAdd、及びコマンドデータ“E0h”の入力に伴い、所定の待機時間後、コントローラダイCDが外部制御端子/RE,REの入力信号を切り替える(トグルする)。これにより、データアウトが開始され、ユーザデータDatがデータ信号入出力端子DQを介して出力されている。
図19は、動作モードMODEaにおいて読出動作及びデータアウトを実行する場合の他の様子を示す模式的な波形図である。図19の例では、メモリダイMDが動作モードMODEaに設定されている。
図19の例では、まず、コマンドデータ“00h”、アドレスデータAdd、及びコマンドデータ“30h”が、データ信号入出力端子DQ<7:0>を介して順次入力されている。このコマンドセットに含まれるアドレスデータAddは、上記プレーンアドレスとして、読出動作の対象となるプレーンPLN0(図4)の情報を含む。
コマンドデータ“00h”、アドレスデータAdd、及びコマンドデータ“30h”の入力に伴い、プレーンPLN0に対して読出動作が開始され、ユーザデータDatがラッチ回路XDL0に転送される。
次に、コマンドデータ“00h”、アドレスデータAdd、及びコマンドデータ“30h”が、データ信号入出力端子DQ<7:0>を介して順次入力されている。このコマンドセットに含まれるアドレスデータAddは、上記プレーンアドレスとして、読出動作の対象となるプレーンPLN1(図4)の情報を含む。
コマンドデータ“00h”、アドレスデータAdd、及びコマンドデータ“30h”の入力に伴い、プレーンPLN1に対して読出動作が開始され、ユーザデータDatがラッチ回路XDL1に転送される。
次に、コマンドデータ“70h”が、データ信号入出力端子DQ<7:0>を介して入力されている。コマンドデータ“70h”は、ステータスリードを指示するコマンドデータCmdである。コマンドデータ“70h”の入力に伴い、ステータスリードが行われ、ステータスデータSttがデータ信号入出力端子DQ<7:0>を介して出力される。
次に、コマンドデータ“05h”、アドレスデータAdd、及びコマンドデータ“E0h”が、データ信号入出力端子DQ<7:0>を介して順次入力されている。このコマンドセットに含まれるアドレスデータAddは、上記プレーンアドレスとして、データアウトの対象となるプレーンPLN0(図4)の情報を含む。
コマンドデータ“05h”、アドレスデータAdd、及びコマンドデータ“E0h”の入力に伴い、所定の待機時間後、コントローラダイCDが外部制御端子/RE,REの入力信号を切り替える(トグルする)。これにより、プレーンPLN0に対してデータアウトが開始され、ユーザデータ“DataOut”がデータ信号入出力端子DQ<7:0>を介して出力される。
プレーンPLN0に対するデータアウトの終了後、コマンドデータ“70h”が、データ信号入出力端子DQ<7:0>を介して入力されている。コマンドデータ“70h”の入力に伴い、再度ステータスリードが行われ、ステータスデータSttがデータ信号入出力端子DQ<7:0>を介して出力される。
次に、PLN0に対するデータアウトと同様に、コマンドデータ“05h”、アドレスデータAdd、及びコマンドデータ“E0h”が、データ信号入出力端子DQ<7:0>を介して順次入力されている。このコマンドセットに含まれるアドレスデータAddは、上記プレーンアドレスとして、データアウトの対象となるプレーンPLN1(図4)の情報を含む。
所定の時間の経過後、コントローラダイCDが外部制御端子/RE,REの入力信号を切り替える(トグルする)。これにより、プレーンPLN1に対してデータアウトが開始され、ユーザデータ“DataOut”がデータ信号入出力端子DQ<7:0>を介して出力される。
[動作モードMODEbにおける読出動作及びデータアウト]
図20は、動作モードMODEbにおいて読出動作及びデータアウトを実行する場合の様子を示す模式的な波形図である。図20の例では、メモリダイMDが動作モードMODEbに設定されている。
図20の例では、まず、コマンドデータ“00h”を含むコマンドセットが、外部制御端子CLE,ALEを介して入力されている。次に、コマンドデータ“05h”を含むコマンドセットが、外部制御端子CLE,ALEを介して入力されている。尚、動作モードMODEbにおいては、データ信号入出力端子DQ<7:0>を介したデータの入出力と、外部制御端子CLE,ALEを介したデータの入出力とを、独立したタイミングで実行可能である。例えば、図20の例では、これらのコマンドセットの入力が、データアウトの実行中に(外部制御端子/RE,REの入力信号がトグルする期間中に)行われている。
図21は、動作モードMODEbにおいて読出動作及びデータアウトを実行する場合の他の様子を示す模式的な波形図である。図21の例では、メモリダイMDが動作モードMODEbに設定されている。
図21の例では、まず、コマンドデータ“00h”、アドレスデータAdd、及び、コマンドデータ“30h”が、外部制御端子CLE,ALEを介して順次入力されている。このコマンドセットに含まれるアドレスデータAddは、上記プレーンアドレスとして、読出動作の対象となるプレーンPLN0(図4)の情報を含む。
次に、コマンドデータ“00h”、アドレスデータAdd、及びコマンドデータ“30h”が、外部制御端子CLE,ALEを介して順次入力されている。このコマンドセットに含まれるアドレスデータAddは、上記プレーンアドレスとして、読出動作の対象となるプレーンPLN1(図4)の情報を含む。
次に、コマンドデータ“70h”が、外部制御端子CLE,ALEを介して入力されている。コマンドデータ“70h”の入力に伴い、ステータスリードが行われ、ステータスデータSttが外部制御端子CLE,ALEを介して出力される。
次に、コマンドデータ“05h”、アドレスデータAdd、及びコマンドデータ“E0h”が、外部制御端子CLE,ALEを介して順次入力されている。このアドレスデータAddは、上記プレーンアドレスとして、データアウトの対象となるプレーンPLN0(図4)の情報を含む。
所定の待機時間後、プレーンPLN0に対してデータアウトが開始され、ユーザデータ“DataOut”がデータ信号入出力端子DQ<7:0>を介して出力される。
また、図21の例では、プレーンPLN0に対するデータアウトが行われている間に、コマンドデータ“70h”が、外部制御端子CLE,ALEを介して入力されている。コマンドデータ“70h”の入力に伴い、ステータスリードが行われる。図示の例では、プレーンPLN0に対するデータアウトの実行中に、ステータスデータSttが、外部制御端子CLE,ALEを介して出力されている。
また、図21の例では、プレーンPLN0に対するデータアウトが行われている間に、コマンドデータ“05h”、アドレスデータAdd、及びコマンドデータ“E0h”が、外部制御端子CLE,ALEを介して順次入力されている。このアドレスデータAddは、上記プレーンアドレスとして、データアウトの対象となるプレーンPLN1(図4)のアドレス等を含む。
ここで、動作モードMODEbにおいては、動作モードMODEaと異なり、データ出力タイミング調整部TCT(図4)が、プレーンPLN1に対するデータアウトの開始のタイミングを調整する。プレーンPLN0に対するデータアウトの終了後、データ出力タイミング調整部TCTが発する内部信号に応じて、プレーンPLN1に対してデータアウトが開始され、ユーザデータ“DataOut”がデータ信号入出力端子DQ<7:0>を介して出力される。
図22は、動作モードMODEbにおいて読出動作及びデータアウトを実行する場合の他の様子を示す模式的な波形図である。図22の例では、メモリダイMDが動作モードMODEbに設定されている。ここでは、図2及び図3に示すような複数のメモリダイMDにそれぞれ読出動作及びデータアウトが実行される場合を例にあげて説明する。
上述の通り、第1実施形態に係る半導体記憶装置としてのメモリダイMDは、データアウトを指示された後、コントローラダイCDからトリガ信号を受信することによって、外部制御端子/RE,REにおける入力信号の切り替え(トグル)に対応してデータアウトを実行可能となる様に構成されている。例えば、図22の例では、メモリダイMD0に対するデータアウトの実行中に、メモリダイMD1に対するデータアウトが指示されている。この時点では、メモリダイMD0は、外部制御端子/RE,REにおける入力信号の切り替え(トグル)に対してデータアウトを実行している。これに対して、メモリダイMD1はデータアウトを指示された後、コントローラダイCDからトリガ信号を受信するまでは、外部制御端子/RE,REにおける入力信号が切り替えられても(トグルされても)データアウトを開始しない。従って、共通に接続されているメモリダイMD0及びメモリダイMD1においてデータアウトが衝突することが回避されている。コントローラダイCDは、メモリダイMD0からのデータアウトが終了したことを検出した後に、共通に接続されているメモリダイMD0およびメモリダイMD1に、トリガ信号を入力している。即ち、図13を参照して説明した様に、外部制御端子CLEに“H”、外部制御端子ALEに“H”を入力している。これに伴い、図22に示すように、メモリダイMD1からのデータアウトが開始されている。
[動作モードMODEaにおけるステータスリード]
図23は、動作モードMODEaにおいてステータスリードを実行する際の波形を示している。図23の例では、タイミングt201において、コントローラダイCDがメモリダイMDに、コマンドデータ70hを入力している。また、タイミングt202において、ステータスデータSttが出力されている。
[動作モードMODEbにおけるステータスリード]
図24は、動作モードMODEbにおいてステータスリードを実行する際の波形を示している。
図24の例では、タイミングt251~t252の期間FSelにおいて、コントローラダイCDがメモリダイMDに、コマンドデータCmdの入力を指定する入出力データ選択信号を入力している。
また、タイミングt252~t253の期間S_Inにおいて、コントローラダイCDはメモリダイMDに、コマンドデータ70hを入力している。
尚、図24の例では、期間S_Inにおいて、コントローラダイCDがメモリダイMDに、8ビットのコマンドデータ70hを、4サイクルに分けて2ビットずつ入力している。
また、タイミングt253~t254の期間FSelにおいて、コントローラダイCDはメモリダイMDに、データの出力を指定する入出力データ選択信号を入力している。
また、タイミングt254~t255の期間S_Outにおいて、メモリダイMDはコントローラダイCDに、ステータスデータSttを出力している。
[動作モードMODEaにおける他のステータスリード]
図25は、動作モードMODEaにおいて他のステータスリードを実行する際の波形を示している。図25の例では、タイミングt301において、コントローラダイCDがメモリダイMDに、コマンドデータ78hを入力している。コマンドデータ“78h”は、他のステータスリードを指示するコマンドデータCmdである。また、タイミングt302において、コントローラダイCDはメモリダイMDに、アドレスデータAddを入力している。尚、図示の例では、タイミングt302以降において、アドレスデータAddを構成する8ビット×3サイクルのデータが入力されているが、サイクル数は3より少なくても多くても良い。また、タイミングt303において、ステータスデータSttが出力されている。
[動作モードMODEbにおける他のステータスリード]
図26は、動作モードMODEbにおいて他のステータスリードを実行する際の波形を示している。
図26の例では、タイミングt351~t352の期間FSelにおいて、コントローラダイCDがメモリダイMDに、コマンドデータCmdの入力を指定する入出力データ選択信号を入力している。
また、タイミングt352~t353の期間S_Inにおいて、コントローラダイCDはメモリダイMDに、コマンドデータ78hを入力している。
尚、図26の例では、期間S_Inにおいて、コントローラダイCDがメモリダイMDに、8ビットのコマンドデータ78hを、4サイクルに分けて2ビットずつ入力している。
また、タイミングt353~t354の期間FSelにおいて、コントローラダイCDはメモリダイMDに、アドレスデータの入力を指定する入出力データ選択信号を入力している。
また、タイミングt354~t355の期間S_Inにおいて、コントローラダイCDはメモリダイMDに、アドレスデータAddを入力している。
以下同様に、タイミングt355~t356の期間FSel、及び、タイミングt357~t358の期間FSelにおいて、コントローラダイCDはメモリダイMDに、アドレスデータの入力を指定する入出力データ選択信号を入力している。
また、タイミングt356~t357の期間S_Inにおいて、コントローラダイCDはメモリダイMDに、アドレスデータAddを入力している。
[動作モードMODEaにおけるゲットフィーチャ]
図27は、動作モードMODEaにおいてゲットフィーチャを実行する際の波形を示している。図27の例では、タイミングt401において、コントローラダイCDがメモリダイMDに、コマンドデータEEhを入力している。コマンドデータ“EEh”は、ゲットフィーチャを指示するコマンドデータCmdである。また、タイミングt402において、コントローラダイCDはメモリダイMDに、アドレスデータAddを入力している。尚、図示の例では、タイミングt402以降において、アドレスデータAddを構成する8ビット×3サイクルのデータが入力されているが、サイクル数は3より少なくても多くても良い。また、タイミングt403において、外部制御端子/WEに入力される信号の立ち上がりエッジに対応して、ゲットフィーチャが開始され、端子RY//BYの電圧が“H”から“L”に立ち下がっている。また、タイミングt404において、ゲットフィーチャが終了し、端子RY//BYの電圧が“L”から“H”に立ち上がっている。また、タイミングt405において、フィーチャデータFdが出力されている。
[動作モードMODEbにおけるステータスリード]
図28は、動作モードMODEbにおいてステータスリードを実行する際の波形を示している。
図28の例では、タイミングt451~t452の期間FSelにおいて、コントローラダイCDがメモリダイMDに、コマンドデータCmdの入力を指定する入出力データ選択信号を入力している。
また、タイミングt452~t453の期間S_Inにおいて、コントローラダイCDはメモリダイMDに、コマンドデータEEhを入力している。
尚、図28の例では、期間S_Inにおいて、コントローラダイCDがメモリダイMDに、8ビットのコマンドデータEEhを、4サイクルに分けて2ビットずつ入力している。
また、タイミングt453~t454の期間FSelにおいて、コントローラダイCDはメモリダイMDに、アドレスデータの入力を指定する入出力データ選択信号を入力している。
また、タイミングt454~t455の期間S_Inにおいて、コントローラダイCDはメモリダイMDに、アドレスデータAddを入力している。
以下同様に、タイミングt455~t456の期間FSel、及び、タイミングt457~t458の期間FSelにおいて、コントローラダイCDはメモリダイMDに、アドレスデータの入力を指定する入出力データ選択信号を入力している。
また、タイミングt456~t457の期間S_Inにおいて、コントローラダイCDはメモリダイMDに、アドレスデータAddを入力している。
[動作モードMODEaにおけるセットフィーチャ]
図29は、動作モードMODEaにおいてセットフィーチャを実行する際の波形を示している。図29の例では、タイミングt501において、コントローラダイCDがメモリダイMDに、コマンドデータEFhを入力している。コマンドデータ“EFh”は、セットフィーチャを指示するコマンドデータCmdである。また、タイミングt502において、コントローラダイCDはメモリダイMDに、アドレスデータAddを入力している。尚、図示の例では、タイミングt502以降において、アドレスデータAddを構成する8ビット×3サイクルのデータが入力されているが、サイクル数は3より少なくても多くても良い。また、タイミングt503において、コントローラダイCDはメモリダイMDに、フィーチャデータFdを入力している。また、タイミングt504においてセットフィーチャが開始され、端子RY//BYの電圧が“H”から“L”に立ち下がっている。
[動作モードMODEbにおけるセットフィーチャ]
図30は、動作モードMODEbにおいてセットフィーチャを実行する際の波形を示している。
図30の例では、タイミングt551~t552の期間FSelにおいて、コントローラダイCDがメモリダイMDに、コマンドデータCmdの入力を指定する入出力データ選択信号を入力している。
また、タイミングt552~t553の期間S_Inにおいて、コントローラダイCDはメモリダイMDに、コマンドデータEFhを入力している。
尚、図30の例では、期間S_Inにおいて、コントローラダイCDがメモリダイMDに、8ビットのコマンドデータEFhを、4サイクルに分けて2ビットずつ入力している。
また、タイミングt553~t554の期間FSelにおいて、コントローラダイCDはメモリダイMDに、アドレスデータの入力を指定する入出力データ選択信号を入力している。
また、タイミングt554~t555の期間S_Inにおいて、コントローラダイCDはメモリダイMDに、アドレスデータAddを入力している。
以下同様に、タイミングt555~t556の期間FSelにおいて、コントローラダイCDはメモリダイMDに、アドレスデータの入力を指定する入出力データ選択信号を入力している。
また、タイミングt556以降の期間S_In、及び、タイミングt557までの期間S_Inにおいて、コントローラダイCDはメモリダイMDに、アドレスデータAddを入力している。
また、タイミングt557~t558の期間FSelにおいて、コントローラダイCDはメモリダイMDに、データの入力を指定する入出力データ選択信号を入力している。
また、タイミングt558~t559の期間S_Inにおいて、コントローラダイCDはメモリダイMDに、フィーチャデータFdを入力している。
以下同様に、タイミングt559~t560の期間FSelにおいて、コントローラダイCDはメモリダイMDに、データの入力を指定する入出力データ選択信号を入力している。
また、タイミングt560以降の期間S_In、及び、タイミングt561までの期間S_Inにおいて、コントローラダイCDはメモリダイMDに、フィーチャデータFdを入力している。
[効果]
図10等を参照して説明した様に、動作モードMODEaでは、データ信号入出力端子DQ<7:0>を、ユーザデータDatの入出力に加えて、コマンドデータCmd、アドレスデータAdd等、ユーザデータDat以外のデータの入出力に使用する。従って、例えば図19を参照して説明した様に、プレーンPLN0及びプレーンPLN1に対して連続して読出動作及びデータアウトを実行する場合に、プレーンPLN0に対するデータアウトが終了した後でなければ、プレーンPLN1に対してデータアウトを実行する旨のコマンドセットを入力することが出来ない場合がある。
ここで、本実施形態に係る半導体記憶装置は、動作モードMODEbにおいて動作させることが可能である。動作モードMODEbでは、上述の通り、データ信号入出力端子DQ<7:0>を介したデータアウトが行われている間にも、外部制御端子CLE,ALEを介してコマンドデータCmd及びアドレスデータAddの入力を行うことができる。従って、例えば図21を参照して説明した様に、プレーンPLN0及びプレーンPLN1に対して連続して読出動作及びデータアウトを実行する場合に、プレーンPLN0に対するデータアウトの実行中であっても、プレーンPLN1に対してデータアウトを実行する旨のコマンドセットを入力することが可能である。これにより、メモリダイMDへのコマンドセットの入力に要する時間を削減して、半導体記憶装置の動作の高速化を実現することが可能である。
また、図13、図14等を参照して説明した様に、本実施形態に係る半導体記憶装置においては、期間FSelの1サイクル目で外部制御端子CLE,ALEに“L,H”,“H,L”,“H,H”のいずれかが入力された場合には期間FSelを1サイクルで終了する。また、期間FSelの1サイクル目で外部制御端子CLE,ALEに“L,L”が入力された場合には、期間FSelに2サイクル目を追加し、更に他の動作を指定可能としている。これにより、一部の機能については高速な動作を可能としつつ、好適に動作を指定することが可能となる。
例えば、本実施形態に係る半導体記憶装置によれば、図31に例示する様に、データアウトの実行中に、セットフィーチャ、ゲットフィーチャ等の動作を実行することも可能である。
[第1実施形態に係るメモリダイMDに適用可能なデシリアライザ]
第1実施形態に係るメモリダイMDにおいては、動作モードMODEa,MODEbのいずれが選択されているかに応じて、データ信号入出力端子DQ<7:0>、外部制御端子CLE,ALE等の機能が変化する。以下、図32~図36を参照して、この様な機能を有する回路を例示する。図32は、この様な回路の一例について説明するための模式的なフローチャートである。図33、図35及び図36は、この様な回路の他の例について説明するための模式的な回路図である。図34は、図33に示す回路の動作方法について説明するための模式的な波形図である。
図32に対応する回路は、例えば、ステートマシン等によって実現されても良い。この回路は、例えば、外部制御端子CLE,ALEに入力された信号を、入出力データ選択信号の一部として保持する(ステップS101)。次に、外部制御端子CLE,ALEが“L,L”であるか否かを判定する(ステップS102)。外部制御端子CLE,ALEが“L,L”であった場合には、ステップS101に戻る。外部制御端子CLE,ALEが“L,L”でなかった場合には、変数cntを0に設定して、ステップS103に進む。次に、外部制御端子CLE,ALEに入力された信号を、ユーザデータDat以外のデータの一部として保持する(ステップS103)。次に、変数cntが4より小さいか否かを判定する(ステップS104)。変数cntが4より小さかった場合には、変数cntに1を加算して、ステップS103に戻る。変数cntが4より小さくなかった場合には、ステップS101に戻る。
図33には、データ信号入出力端子DQ<7:0>と、外部制御端子CLE,ALE,/WEと、これらに接続された回路部200と、を例示している。
回路部200は、例えば、ラッチ回路210と、マルチプレクサ220,230と、デシリアライザ300と、を含む。
ラッチ回路210は、コマンドレジスタCMR、アドレスレジスタADR、又は、フィーチャレジスタFRに含まれるラッチ回路である。例えば、ラッチ回路210は、コマンドレジスタCMRに対応して複数設けられる。これら複数のラッチ回路210は、使用可能なコマンドデータCmdと同数だけ設けられても良い。また、ラッチ回路210は、アドレスレジスタADRに対応して複数設けられる。これら複数のラッチ回路210は、保持可能なアドレスデータAddの数と、アドレスデータAddのビット数と、の積だけ設けられても良い。また、ラッチ回路210は、フィーチャレジスタFRに対応して複数設けられても良い。図示の例において、ラッチ回路210は、入力されたコマンドデータCmdに対応して1ビットのデータを保持する。ラッチ回路210は、データ入力端子が論理回路を介してマルチプレクサ220の出力端子DINh<7:0>,CLEh,ALEhに接続され、クロック入力端子がマルチプレクサ230の出力端子/WEh´に接続されている。
マルチプレクサ220,230のそれぞれの選択制御端子には、選択信号SerialCAが入力されている。選択信号SerialCAは、動作モードMODEaが選択されている場合には“0”の状態となり、動作モードMODEbが選択されている場合には“1”の状態となる。
マルチプレクサ220は、10本の出力端子DINh<7:0>,CLEh,ALEhを備える。これら10本の出力端子のうち、8本の出力端子DINh<7:0>は、ユーザデータDat以外のデータを構成するデータに対応する。また、残りの2本の出力端子CLEh,ALEhは、外部制御端子CLE,ALEの入力信号に対応する。
また、マルチプレクサ220は、選択信号SerialCAが“0”の状態である時に選択される10本の入力端子と、選択信号SerialCAが“1”の状態である時に選択される10本の入力端子と、を備える。“0”の状態に対応する10本の入力端子のうちの8本は、データ信号入出力端子DQ<7:0>に接続される。残りの2本は、外部制御端子CLE,ALEに接続される。“1”の状態に対応する10本の入力端子は、デシリアライザ300の出力端子に接続される。
マルチプレクサ230は、1本の出力端子/WEh´を備える。また、マルチプレクサ230は、選択信号SerialCAが“1”の状態である時に選択される1本の入力端子/WEhと、選択信号SerialCAが“0”の状態である時に選択される1本の入力端子と、を備える。“1”の状態に対応する入力端子/WEhは、デシリアライザ300の出力端子に接続される。“0”の状態に対応する入力端子は、外部制御端子/WEに接続される。
デシリアライザ300は、マルチプレクサ220に接続された10本の出力端子を備える。デシリアライザ300は、外部制御端子CLE,ALEから4サイクルにわたって2ビットずつ入力されたデータを8ビットのデータに変換し、この8ビットのデータがコマンドデータCmdであるかアドレスデータAddであるかを示す2ビットのデータを付加して、10ビットのデータを生成する。また、デシリアライザ300は、この10ビットのデータを、10本の出力端子を介してマルチプレクサ220に出力する。この10ビットのデータは、例えば、期間FSelの開始のタイミングで切り替わっても良い。
また、デシリアライザ300は、マルチプレクサ230に接続された1本の出力端子を備える。デシリアライザ300は、外部制御端子/WEから入力される複数サイクルのデータのうち、1サイクル目のデータが入力されてから2サイクル目のデータが入力されるまでの間(期間FSelの1サイクル目の間)、マルチプレクサ230の入力端子/WEhに“L”を出力する。また、それ以外の期間では、マルチプレクサ230の入力端子/WEhに“H”を出力する。
動作モードMODEaにおいては、データ信号入出力端子DQ<7:0>を介して入力された8ビットのデータが、マルチプレクサ220の出力端子DINh<7:0>を介して論理回路に入力される。また、外部制御端子CLE,ALEを介して入力されたイネーブル信号が、マルチプレクサ220の出力端子CLEh,ALEhを介して論理回路に入力される。例えば、データ信号入出力端子DQ<7:0>を介して入力された8ビットのデータがコマンドデータ“05h”であり、且つ、外部制御端子CLE,ALEの入力信号が“H,L”である場合には、コマンドデータ“05h”に対応する論理回路の出力信号が“H”となる。それ以外の場合には、コマンドデータ“05h”に対応する論理回路の出力信号が“L”となる。
また、動作モードMODEaにおいては、外部制御端子/WEから入力された信号が、マルチプレクサ230の出力端子/WEh´から出力され、ラッチ回路210のクロック入力端子へ入力される。
動作モードMODEbにおいては、外部制御端子CLE,ALEを介して入力された2ビット×複数サイクル(例えば、5サイクル又は6サイクル)のデータが、デシリアライザ300によって複数ビット(例えば、10ビット又は12ビット)のデータに変換される。また、これら複数ビットのデータのうちの10ビットのデータが、マルチプレクサ220の入力端子に入力される。これらのデータ及び信号はマルチプレクサ220の出力端子DINh<7:0>,CLEh,ALEhを介して論理回路に入力される。例えば、期間FSelにおいて外部制御端子CLE,ALEから“H,L”が入力されており、且つ、期間S_Inにおいて外部制御端子CLE,ALEからコマンドデータ“05h”が入力されていた場合、コマンドデータ“05h”に対応する論理回路の出力信号が“H”となる。それ以外の場合には、コマンドデータ“05h”に対応する論理回路の出力信号が“L”となる。また、例えば図34に例示する様に、動作モードMODEbにおいて、デシリアライザ300は、期間FSel又は期間S_In,S_Outに含まれる複数のサイクルのうちのいずれか一つのサイクルにおいて/WEhを“H”状態とし、その他のサイクルにおいて/WEhを“L”状態とする。
また、動作モードMODEbにおいては、マルチプレクサ230の入力端子/WEhに入力された信号が、マルチプレクサ230の出力端子/WEh´から出力され、ラッチ回路210のクロック入力端子へ入力される。
図35及び図36は、デシリアライザ300の一部の構成を示す模式的な回路図である。デシリアライザ300は、図35に示す様な回路部310と、図36に示す様な回路部320と、を含む。
図35に示す様に、回路部310は、7つのDフリップフロップ311と、1つのDラッチ回路312と、を備える。
1つ目のDフリップフロップ311の出力端子は、スイッチ回路315を介して、2つ目及び4つ目のDフリップフロップ311のデータ入力端子に接続されている。このスイッチ回路315は、外部制御端子CLE,ALEが“L,L”である場合に1つ目のDフリップフロップ311の出力信号を2つ目のDフリップフロップ311のデータ入力端子に転送する。また、それ以外の場合に、1つ目のDフリップフロップ311の出力信号を4つ目のDフリップフロップ311のデータ入力端子に転送する。
2つ目のDフリップフロップ311の出力端子は、スイッチ回路315を介して、3つ目及び4つ目のDフリップフロップ311のデータ入力端子に接続されている。このスイッチ回路315は、外部制御端子CLE,ALEが“L,L”である場合に2つ目のDフリップフロップ311の出力信号を3つ目のDフリップフロップ311のデータ入力端子に転送する。また、それ以外の場合に、2つ目のDフリップフロップ311の出力信号を4つ目のDフリップフロップ311のデータ入力端子に転送する。
3つ目のDフリップフロップ311の出力端子は、4つ目のDフリップフロップ311のデータ入力端子に接続されている。同様に、4つ目~6つ目のDフリップフロップ311の出力端子は、それぞれ、5つ目~7つ目のDフリップフロップ311のデータ入力端子に接続されている。7つ目のDフリップフロップ311の出力端子は、Dラッチ回路312のデータ入力端子に接続されている。Dラッチ回路312の出力端子は、1つ目のDフリップフロップ311のデータ入力端子に接続されている。また、これら7つのDフリップフロップ311と、1つのDラッチ回路312と、のクロック入力端子は、外部制御端子/WEに接続されている。
また、回路部310は、7つのDラッチ回路313と、7つのAND回路314と、を備える。7つのDラッチ回路313のデータ入力端子は、それぞれ、7つのDフリップフロップ311の出力端子に接続されている。また、7つのDラッチ回路313のクロック入力端子には、外部制御端子/WEの反転信号が入力されている。7つのAND回路314の一方の入力端子は、それぞれ、7つのDラッチ回路313の出力端子に接続されている。7つのAND回路314の他方の入力端子は、それぞれ、外部制御端子/WEに接続されている。尚、図35の例では、これら7つのAND回路314のうち、1つ目~3つ目の出力端子を、出力端子WE1_1~WE1_3として示している。また、4つ目~6つ目の出力端子を、出力端子WE2~WE4として示している。残りの1つの出力端子は、上記マルチプレクサ230(図33)の入力端子/WEhに接続されている。
ここで、7つのDフリップフロップ311に保持されるデータの初期値を0とし、Dラッチ回路312に保持されるデータの初期値を1とする。
Dラッチ回路312の出力信号が“H”である状態で外部制御端子/WEに“H”を入力すると、出力端子WE1_1の信号が“H”状態となり、出力端子WE1_2,WE1_3,WE2,WE3,WE4の信号、及び、Dラッチ回路312の出力信号が“L”状態となる。
出力端子WE1_1の信号が“H”であり、且つ、外部制御端子CLE,ALEの信号が“L,L”である状態で外部制御端子/WEに“H”を入力すると、出力端子WE1_2の信号が“H”状態となり、出力端子WE1_1,WE1_3,WE2,WE3,WE4の信号、及び、Dラッチ回路312の出力信号が“L”状態となる。
出力端子WE1_1の信号が“H”であり、且つ、外部制御端子CLE,ALEの信号が“L,H”,“H,L”又は“H,H”である状態で外部制御端子/WEに“H”を入力すると、出力端子WE2の信号が“H”状態となり、出力端子WE1_1,WE1_2,WE1_3,WE3,WE4の信号、及び、Dラッチ回路312の出力信号が“L”状態となる。
出力端子WE1_2の信号が“H”であり、且つ、外部制御端子CLE,ALEの信号が“L,L”である状態で外部制御端子/WEに“H”を入力すると、出力端子WE1_3の信号が“H”状態となり、出力端子WE1_1,WE1_2,WE2,WE3,WE4の信号、及び、Dラッチ回路312の出力信号が“L”状態となる。
出力端子WE1_2の信号が“H”であり、且つ、外部制御端子CLE,ALEの信号が“L,H”,“H,L”又は“H,H”である状態で外部制御端子/WEに“H”を入力すると、出力端子WE2の信号が“H”状態となり、出力端子WE1_1,WE1_2,WE1_3,WE3,WE4の信号、及び、Dラッチ回路312の出力信号が“L”状態となる。
出力端子WE1_3の信号が“H”である状態で外部制御端子/WEに“H”を入力すると、出力端子WE2の信号が“H”状態となり、出力端子WE1_1,WE1_2,WE1_3,WE3,WE4の信号、及び、Dラッチ回路312の出力信号が“L”状態となる。
出力端子WE2の信号が“H”である状態で外部制御端子/WEに“H”を入力すると、出力端子WE3の信号が“H”状態となり、出力端子WE1_1,WE1_2,WE1_3,WE2,WE4の信号、及び、Dラッチ回路312の出力信号が“L”状態となる。
出力端子WE3の信号が“H”である状態で外部制御端子/WEに“H”を入力すると、出力端子WE4の信号が“H”状態となり、出力端子WE1_1,WE1_2,WE1_3,WE2,WE3の信号、及び、Dラッチ回路312の出力信号が“L”状態となる。
出力端子WE4の信号が“H”である状態で外部制御端子/WEに“H”を入力すると、Dラッチ回路312の出力信号が“H”状態となり、出力端子WE1_1,WE1_2,WE1_3,WE2,WE3,WE4の信号が“L”状態となる。
図36に示す様に、回路部320は、Dラッチ回路321~Dラッチ回路326を2つずつ備える。一方のDラッチ回路321~Dラッチ回路326のデータ入力端子は、外部制御端子CLEに接続されている。他方のDラッチ回路321~Dラッチ回路326のデータ入力端子は、外部制御端子ALEに接続されている。また、2つのDラッチ回路321のクロック入力端子は、AND回路314(図35)の出力端子WE1_1に接続されている。同様に、Dラッチ回路322,323,324,325,326のクロック入力端子は、それぞれ、AND回路314(図35)の出力端子WE1_2,WE1_3,WE2,WE3,WE4に接続されている。
2つのDラッチ回路321には、期間FSelの1サイクル目の外部制御端子CLE,ALEのデータが保持される。2つのDラッチ回路322には、期間FSelの2サイクル目の外部制御端子CLE,ALEのデータが保持される。2つのDラッチ回路324には、期間S_Inの1サイクル目の外部制御端子CLE,ALEのデータが保持される。2つのDラッチ回路325には、期間S_Inの2サイクル目の外部制御端子CLE,ALEのデータが保持される。2つのDラッチ回路326には、期間S_Inの3サイクル目の外部制御端子CLE,ALEのデータが保持される。
Dラッチ回路321~Dラッチ回路323の出力端子は、デコード回路327に接続されている。デコード回路は、例えば、複数の入出力データ選択信号に対応して、複数の出力端子を備える。この様な入出力データ選択信号には、例えば、図13を参照して説明した様な、アドレスデータAddを入力する旨の入出力データ選択信号、コマンドデータCmdを入力する旨の入出力データ選択信号、及び、アドレスデータAddを切り替えるためのトリガ信号を入力する旨の入出力データ選択信号が含まれる。また、この様な入出力データ選択信号には、例えば、図14を参照して説明した様な、データを入力する旨の入出力データ選択信号、及び、データを出力する旨の入出力データ選択信号が含まれる。
例えば、期間FSelの1サイクル目において外部制御端子CLEに“H”、外部制御端子ALEに“L”が入力された場合、出力端子CLEhに対応する出力端子の信号が“H”状態となり、その他の出力端子の信号は“L”状態となる。また、例えば、期間FSelの1サイクル目において外部制御端子CLEに“L”、外部制御端子ALEに“H”が入力された場合、出力端子ALEhに対応する出力端子の信号が“H”状態となり、その他の出力端子の信号は“L”状態となる。
Dラッチ回路324~Dラッチ回路325の出力端子は、マルチプレクサ220(図33)を介して、出力端子DINh<7:2>に接続される。尚、外部制御端子CLE,ALEは、マルチプレクサ220(図33)を介して、出力端子DINh<1:0>に接続される。
[第1実施形態に係るメモリダイMDに適用可能なシリアライザ]
第1実施形態に係るメモリダイMDにおいては、動作モードMODEbが選択されている場合に、8ビットのデータを、2ビット×4サイクルのデータに変換して出力する。この様な機能は、例えば、図37に示す様な回路によって実現しても良い。図37は、メモリダイMDの一部の構成例を示す模式的な回路図である。
図37に示す回路は、シリアライザ331と、2つのスイッチ回路332と、を備える。
シリアライザ331は、8本の第1の入力端子と、1本の第2の入力端子と、を備える。第1の入力端子には、それぞれ、出力されるデータを構成する8ビットのデータFDATA<7:0>のうちの1ビットが入力される。第2の入力端子には、外部制御端子/WEが入力される。シリアライザ331は、外部制御端子/WEの入力に応じ、8ビットのデータFDATA<7:0>を2ビットのデータFDATA2<1:0>に変換して、4サイクルにわたって順次出力する。
2つのスイッチ回路332は、それぞれ、外部制御端子CLE,ALEに対応して設けられている。スイッチ回路332の出力端子は、外部制御端子CLE又は外部制御端子ALEに接続されている。スイッチ回路332の入力端子は、シリアライザ331の出力端子に接続されている。スイッチ回路332は、ゲート信号S332の入力に応じて、入力信号を出力する。ゲート信号S332は、例えば、外部制御端子/WEが“L”状態であり、期間S_Outの1サイクル目であり、期間FSelの1サイクル目において外部制御端子CLE,ALEに“L,L”が入力されており、期間FSelの2サイクル目において外部制御端子CLE,ALEに“H,L”が入力されており、動作モードMODEbが選択されており、且つ、メモリダイMDが選択されている場合に、“H”状態となっても良い。
[第2実施形態]
次に、図38及び図39を参照して、第2実施形態に係る半導体記憶装置の構成について説明する。図38は、第2実施形態に係るメモリダイMD2の構成を示す模式的なブロック図である。図39は、メモリダイMD2の一部の構成を示す模式的な回路図である。説明の都合上、図38及び図39では一部の構成を省略する。
図38及び図39に示す様に、本実施形態に係る半導体記憶装置は、基本的には、第1実施形態に係る半導体記憶装置と同様に構成されている。ただし、第2実施形態に係る半導体記憶装置は、外部制御端子CLE,ALEに加え、外部制御端子/CEを介して、信号の入出力を実行することが可能である。図39に示す様に、第2実施形態に係る外部制御端子/CEは、入力回路201及び出力回路202に接続されている。また、図39に示す様に、第2実施形態に係る外部制御端子/CEは、ラッチ回路206を備える。
ここで、第1実施形態に係る半導体記憶装置においては、外部制御端子CLE,ALEによって、1サイクルに2ビットのデータを並列に入力し、又は、並列に出力していた。例えば、動作モードMODEbの期間FSelにおいて、2ビット又は4ビットのデータを、1サイクル又は2サイクルにわたって入力していた。また、期間S_Inにおいて、ユーザデータDat以外のデータを構成する8ビットのデータを、4サイクルにわたって入力していた。従って、10ビット~12ビットのデータを、5サイクル~6サイクルにわたって入力していた。
ここで、第2実施形態に係る半導体記憶装置においては、外部制御端子CLE,ALEに加え、外部制御端子/CEを介して、信号の入出力を実行することが可能である。従って、1サイクルに3ビットのデータを並列に入力し、又は、並列に出力することが可能である。これにより、データの入力に要するサイクル数を削減し、動作の高速化を図ることが可能である。
尚、第1実施形態に係る半導体記憶装置においては、外部制御端子/CEが“L”状態のタイミングではメモリダイMDが選択状態となり、外部制御端子/CEが“H”状態のタイミングではメモリダイMDが非選択状態となる。第2実施形態に係る半導体記憶装置を動作モードMODEaで動作させる場合も同様である。一方、第2実施形態に係る半導体記憶装置を動作モードMODEbで動作させる場合には、ラッチ回路206に“L”が保持されているタイミングでメモリダイMDが選択状態となり、ラッチ回路206に“H”が保持されているタイミングでメモリダイMDが非選択状態となる。
次に、図40を参照して、第2実施形態に係る半導体記憶装置の動作について説明する。図40は、第2実施形態に係る半導体記憶装置の動作について説明するための模式的な波形図である。
図40の例では、タイミングt600において、コントローラダイCDがメモリダイMD2の外部制御端子/CEに、“L”を入力している。これに伴い、ラッチ回路206(図39)に“L”が入力され、メモリダイMD2が選択状態となる。
また、タイミングt601~t602の期間FSelにおいて、コントローラダイCDがメモリダイMD2の外部制御端子/CE,CLE,ALEに、“X,H,L”を入力している。これに伴い、コマンドデータCmdを入力する旨の入出力データ選択信号が入力される。
また、タイミングt602~t603の期間S_Inにおいて、コントローラダイCDがメモリダイMD2に、3サイクルにわたってコマンドデータCmdを入力する。また、図示の例では、期間S_Inの1サイクル目に外部制御端子/CEに“0”が入力されている。
尚、図示の例では、期間S_Inの1サイクル目に外部制御端子/CEに入力される1ビットのデータが、フラグデータとして用いられている。例えば、期間S_Inの1サイクル目に外部制御端子/CEに“0”が入力された場合、この期間S_Inの直後のサイクルを、期間FSelとする。一方、期間S_Inの1サイクル目に外部制御端子/CEに“1”が入力された場合には、期間FSelを省略して、この期間S_Inの直後のサイクルを期間S_Inとする。この場合、省略される期間FSelにおいては、直前の期間FSelにおいて外部制御端子/CE,CLE,ALEに入力されたデータが、外部制御端子/CE,CLE,ALEに再度入力されたものとする。
また、タイミングt603~t604の期間FSelにおいて、コントローラダイCDがメモリダイMD2の外部制御端子/CE,CLE,ALEに、“X,L,H”を入力している。これに伴い、アドレスデータAddを入力する旨の入出力データ選択信号が入力される。
また、タイミングt604~t605の期間S_Inにおいて、コントローラダイCDがメモリダイMD2に、3サイクルにわたってアドレスデータAddを入力する。また、図示の例では、期間S_Inの1サイクル目に外部制御端子/CEに“1”が入力されている。これに伴い、この直後の期間FSelは省略されている。
また、タイミングt605~t606の期間S_In、タイミングt606~t607の期間S_In、及び、タイミングt607~t608の期間S_Inにおいても同様に、コントローラダイCDがメモリダイMD2に、3サイクルにわたってアドレスデータAddを入力する。また、図示の例では、これらの期間S_Inの1サイクル目に外部制御端子/CEに“1”が入力されている。これに伴い、これらの直後の期間FSelは省略されている。
また、タイミングt608~t609の期間S_Inにおいて、コントローラダイCDがメモリダイMD2に、3サイクルにわたってアドレスデータAddを入力する。また、図示の例では、期間S_Inの1サイクル目に外部制御端子/CEに“0”が入力されている。従って、この直後の期間FSelは省略されていない。
また、タイミングt609~t610の期間FSelにおいて、コントローラダイCDがメモリダイMD2の外部制御端子/CE,CLE,ALEに、“X,H,L”を入力している。これに伴い、コマンドデータCmdを入力する旨の入出力データ選択信号が入力される。
また、タイミングt610~t611の期間S_Inにおいて、コントローラダイCDがメモリダイMD2に、3サイクルにわたってコマンドデータCmdを入力する。
[第3実施形態]
[構成]
次に、図41を参照して、第3実施形態に係る半導体記憶装置の構成について説明する。図41は、第3実施形態に係るメモリダイMD3の構成を示す模式的なブロック図である。
図41に示す様に、本実施形態に係る半導体記憶装置は、基本的には、第1実施形態に係る半導体記憶装置と同様に構成されている。ただし、第3実施形態に係る半導体記憶装置は、コマンドレジスタCMRのかわりに、コマンドレジスタCMR´を備える。コマンドレジスタCMR´は、基本的には、コマンドレジスタCMRと同様に構成されている。
ただし、コマンドレジスタCMRは、8ビットのコマンドデータCmdに応じて、最大で28(=256)通りの制御信号を出力可能に構成されている。
一方、コマンドレジスタCMR´は、257通り以上の制御信号を出力可能に構成されている。例えば、コマンドレジスタCMR´は、最大で512通りの制御信号を出力可能に構成されていても良い。例えば、コマンドレジスタCMR´は、コマンド処理部cmr1と、コマンド処理部cmr2と、を備える。
コマンド処理部cmr1は、8ビットのコマンドデータCmdに応じて、最大で256通りの制御信号を出力可能に構成されている。コマンド処理部cmr1は、例えば、第1実施形態に係る半導体記憶装置において使用可能なコマンドデータCmdに対応している。図41には、この様なコマンドデータCmdを、「Basic Command」として例示している。以下、この様なコマンドデータCmdを、「基本コマンドデータCmd」と呼ぶ場合がある。
コマンド処理部cmr2は、8ビットのコマンドデータCmdに応じて、最大で256通りの制御信号を出力可能に構成されている。コマンド処理部cmr2は、例えば、「Basic Command」以外のコマンドデータCmdに対応している。図41には、この様なコマンドデータCmdを、「Extended Command」として例示している。以下、この様なコマンドデータCmdを、「拡張コマンドデータCmd」と呼ぶ場合がある。
尚、コマンドレジスタCMR´は、コマンド処理部cmr1,cmr2と同様の構成を、更に備えていても良い。この場合、コマンドレジスタCMR´は、513通り以上の制御信号を出力可能に構成されていても良い。
[動作モードMODEbにおける外部端子の役割]
図42及び図43は、動作モードMODEbにおける外部端子の役割を説明するための真理値表である。図42は、入出力データ選択信号が入力される期間FSelの2サイクル目における外部制御端子の役割を示している。図43は、入出力データ選択信号が入力される期間FSelの3サイクル目における外部制御端子の役割を示している。
本実施形態に係る半導体記憶装置は、基本的には、第1実施形態に係る半導体記憶装置と同様に動作する。
ただし、本実施形態においては、期間FSelの1サイクル目において、上記「Basic Command」に対応するコマンドデータCmdを入力する旨の入出力データ選択信号を入力する場合、コントローラダイCDは、例えば、外部制御端子CLEに“H”を入力し、外部制御端子ALEに“L”を入力した状態で、外部制御端子/WEの電圧を“L”から“H”に立ち上げる(図13参照)。
期間FSelの1サイクル目において、外部制御端子CLEに“H”、外部制御端子ALEに“L”が入力された場合、期間FSelは1サイクルで終了する。また、この期間FSel直後の期間S_Inに入力されるデータは、上記「Basic Command」に対応するコマンドデータCmdとして入出力制御回路I/O内のバッファメモリに保持され、コマンドレジスタCMR´(図41)に転送され、コマンド処理部cmr1(図41)によって処理される。
また、本実施形態においては、期間FSelの2サイクル目において、上記拡張コマンドデータCmdを入力する旨の入出力データ選択信号を入力する場合、図42に例示する様に、コントローラダイCDが、例えば、外部制御端子CLEに“H”を入力し、外部制御端子ALEに“L”を入力した状態で、外部制御端子/WEの電圧を“L”から“H”に立ち上げる。
期間FSelの2サイクル目において、外部制御端子CLEに“H”、外部制御端子ALEに“L”が入力された場合、期間FSelは2サイクルで終了する。また、この期間FSel直後の期間S_Inに入力されるデータは、上記拡張コマンドデータCmdとして入出力制御回路I/O内のバッファメモリに保持され、コマンドレジスタCMR´(図41)に転送され、コマンド処理部cmr2(図41)によって処理される。
尚、上述の通り、コマンドレジスタCMR´は、513通り以上の制御信号を出力可能に構成されていても良い。
この様な場合に、期間FSelの3サイクル目において、コマンドデータCmdを入力する旨の入出力データ選択信号を入力する場合、図43に例示する様に、コントローラダイCDが、例えば、外部制御端子CLEに“H”を入力し、外部制御端子ALEに“L”を入力した状態で、外部制御端子/WEの電圧を“L”から“H”に立ち上げても良い。
また、期間FSelの3サイクル目において、外部制御端子CLEに“H”、外部制御端子ALEに“L”が入力された場合、期間FSelは3サイクルで終了しても良い。また、この期間FSel直後の期間S_Inに入力されるデータは、コマンドデータCmdとして入出力制御回路I/O内のバッファメモリに保持され、コマンドレジスタCMR´(図41)に転送され、コマンド処理部cmr1,cmr2(図41)以外の構成によって処理されても良い。
[拡張コマンドデータCmdの用例]
上記拡張コマンドデータCmdは、種々の用途で使用可能である。以下、拡張コマンドデータCmdの用途として、2通りの用途を例示する。
[拡張コマンドデータCmdを用いたシフトリード]
まず、拡張コマンドデータCmdの用途として、シフトリードを例示する。
図44(a)は、3ビットのデータが記録されるメモリセルMCのしきい値電圧について説明するための模式的なヒストグラムである。横軸はワード線WLの電圧を示しており、縦軸はメモリセルMCの数を示している。図44(b)は、3ビットのデータが記録されるメモリセルMCのしきい値電圧及び記録されるデータの関係の一例を示す表である。
図44(a)の例では、メモリセルMCのしきい値電圧が、8通りのステートに制御されている。Erステートに制御されたメモリセルMCのしきい値電圧は、消去ベリファイ電圧VVFYErより小さい。また、例えば、Aステートに制御されたメモリセルMCのしきい値電圧は、ベリファイ電圧VVFYAより大きく、ベリファイ電圧VVFYBより小さい。また、例えば、Bステートに制御されたメモリセルMCのしきい値電圧は、ベリファイ電圧VVFYBより大きく、ベリファイ電圧VVFYCより小さい。以下同様に、Cステート~Fステートに制御されたメモリセルMCのしきい値電圧は、それぞれ、ベリファイ電圧VVFYC~ベリファイ電圧VVFYFより大きく、ベリファイ電圧VVFYD~ベリファイ電圧VVFYGより小さい。また、例えば、Gステートに制御されたメモリセルMCのしきい値電圧は、ベリファイ電圧VVFYGより大きく、読出パス電圧VREADより小さい。
また、図44(a)の例では、Erステートに対応するしきい値分布とAステートに対応するしきい値分布との間に、読出電圧VCGARが設定されている。また、Aステートに対応するしきい値分布とBステートに対応するしきい値分布との間に、読出電圧VCGBRが設定されている。以下同様に、Bステートに対応するしきい値分布とCステートに対応するしきい値分布との間~Fステートに対応するしきい値分布とGステートに対応するしきい値分布との間に、それぞれ、読出電圧VCGCR~読出電圧VCGGRが設定されている。
例えば、Erステートは、最も低いしきい値電圧に対応している。ErステートのメモリセルMCは、例えば、消去状態のメモリセルMCである。ErステートのメモリセルMCには、例えば、データ“111”が割り当てられる。
また、Aステートは、上記Erステートに対応するしきい値電圧よりも高いしきい値電圧に対応している。AステートのメモリセルMCには、例えば、データ“011”が割り当てられる。
また、Bステートは、上記Aステートに対応するしきい値電圧よりも高いしきい値電圧に対応している。BステートのメモリセルMCには、例えば、データ“001”が割り当てられる。
以下同様に、図中のCステート~Gステートは、Bステート~Fステートに対応するしきい値電圧よりも高いしきい値電圧に対応している。これらのステートのメモリセルMCには、例えば、データ“101”,“100”,“000”,“010”,“110”が割り当てられる。
尚、図44(b)に例示した様な割り当ての場合、下位ビットのデータは1つの読出電圧VCGDRによって判別可能であり、中位ビットのデータは2つの読出電圧VCGBR,VCGFRによって判別可能であり、上位ビットのデータは4つの読出電圧VCGAR,VCGCR,VCGER,VCGGRによって判別可能である。この様なデータの割り当てを、1-2-4コードと呼ぶ場合がある。
尚、メモリセルMCに記録するデータのビット数、ステートの数、各ステートに対するデータの割り当て等は、適宜変更可能である。
図45は、読出動作について説明するためのタイミングチャートである。
尚、以下の説明では、動作の対象となっているワード線WLを選択ワード線WLSと呼び、それ以外のワード線WLを非選択ワード線WLUと呼ぶ場合がある。また、以下の説明では、動作の対象となっているストリングユニットSU(図5)に含まれる複数のメモリセルMCのうち、選択ワード線WLSに接続されたもの(以下、「選択メモリセルMC」と呼ぶ場合がある。)に対して読出動作を実行する例について説明する。
また、以下の説明では、図44(a)を参照して説明した様に、複数のメモリセルMCに3ビットのデータが記憶され、且つ、複数のメモリセルMCに図44(b)を参照して説明した様なデータの割り当てが行われている例を示す。また、以下の説明では、選択メモリセルMCの中位ビットのデータを判別する例を示す。
図45のタイミングt701においては、読出動作が開始され、端子RY//BYの電圧が“H”から“L”に立ち下がっている。
タイミングt702においては、選択ワード線WLS及び非選択ワード線WLUに、図44(a)を参照して説明した読出パス電圧VREADを供給する。また、選択ゲート線(SGD、SGS、SGSb)に電圧VSGを供給する。電圧VSGは、選択ゲート線(SGD、SGS、SGSb)がON状態となる程度の大きさを有する。
タイミングt703においては、選択ワード線WLSに、読出電圧VCGBRを供給する。また、タイミングt703~タイミングt704の期間では、センスアンプSAによってビット線BLの電流が検出され、これによってメモリセルMCのON/OFF状態を示すデータが取得される。
タイミングt704においては、選択ワード線WLSに、読出電圧VCGFRを供給する。また、タイミングt704~タイミングt705の期間では、センスアンプSAによってビット線BLの電流が検出され、これによってメモリセルMCのON/OFF状態を示すデータが取得される。
タイミングt705においては、選択ワード線WLS及び非選択ワード線WLUに読出パス電圧VREADを供給する。
タイミングt706においては、選択ワード線WLS、非選択ワード線WLU及び選択ゲート線(SGD、SGS、SGSb)に接地電圧VSSを供給する。
図46は、シフトリードについて説明するためのタイミングチャートである。図46(a)は、読出動作における選択ワード線WLSの電圧を示している。図46(b)は、一の態様に係るシフトリードにおける選択ワード線WLSの電圧を示している。図46(c)は、他の態様に係るシフトリードにおける選択ワード線WLSの電圧を示している。
シフトリードは、基本的には、読出動作と同様に実行される。ただし、シフトリードにおいて選択ワード線WLSに供給される電圧は、読出動作において選択ワード線WLSに供給される電圧と異なる。
ここで、複数のメモリセルMCに書込動作を実行すると、これら複数のメモリセルMCのしきい値電圧は、例えば、図44(a)に例示した様に分布する。しかしながら、書込動作を実行した後、消去動作を実行する前に、複数のメモリセルMCのしきい値電圧が変動してしまう場合がある。この様な場合、例えば、Aステートに制御されたメモリセルMCの一部のしきい値電圧が読出電圧VCGBRよりも大きくなってしまい、データ“0”として判定されてしまう場合がある。また、Bステートに制御されたメモリセルMCの一部のしきい値電圧が読出電圧VCGBRよりも小さくなってしまい、データ“1”として判定されてしまう場合がある。この様なメモリセルMCから読み出されたビットは、エラービットとなる。この様な場合、選択ワード線WLSに、読出電圧VCGAR~VCGGRよりも大きい電圧、又は、読出電圧VCGAR~VCGGRよりも小さい電圧を供給することによって、エラービットとなってしまうメモリセルMCの数を最小又はそれに近い値に抑えられる場合がある。そこで、シフトリードにおいては、選択ワード線WLSに、読出電圧VCGAR~VCGGRよりも大きい電圧、又は、読出電圧VCGAR~VCGGRよりも小さい電圧を供給する。
例えば、図46(b)の例では、タイミングt703において、選択ワード線WLSに、読出電圧VCGBRではなく、読出電圧VCGBR´を供給する。読出電圧VCGBR´は、読出電圧VCGBRよりも小さい。
また、例えば、図46(b)の例では、タイミングt704において、選択ワード線WLSに、読出電圧VCGFRではなく、読出電圧VCGFR´を供給する。読出電圧VCGFR´は、読出電圧VCGFRよりも小さい。
尚、読出動作を実行する場合、例えば図20等を参照して説明した様に、コントローラダイCD(図1)はメモリダイMDに、コマンドデータCmdとしてコマンドデータ“00h”を供給する。その後、コントローラダイCDはメモリダイMDに、アドレスデータAdd及びコマンドデータ“30h”を供給する。
一方、図46(b)に例示するシフトリードを実行する場合、コントローラダイCD(図1)はメモリダイMDに、コマンドデータCmd(基本コマンドデータCmd)としてコマンドデータ“00h”を供給するかわりに、拡張コマンドデータCmdとしてコマンドデータ“11h”,“12h”,“13h”,,,等を供給しても良い。また、コマンドデータ“12h”が入力された場合の読出電圧VCGBRと読出電圧VCGBR´との差、及び、読出電圧VCGFRと読出電圧VCGFR´との差(以下、「電圧シフト量」と呼ぶ。)は、コマンドデータ“11h”が入力された場合の電圧シフト量より大きくても良い。同様に、コマンドデータ“13h”が入力された場合の電圧シフト量は、コマンドデータ“12h”が入力された場合の電圧シフト量より大きくても良い。また、コマンドデータ“11h”,“12h”,“13h”,,,等の入力後、コントローラダイCDはメモリダイMDに、アドレスデータAdd及びコマンドデータ“30h”を供給しても良い。コマンドデータ“30h”は基本コマンドデータCmdであってもよいし、拡張コマンドデータCmdであってもよい。
また、例えば、図46(c)の例では、タイミングt703において、選択ワード線WLSに、読出電圧VCGBRではなく、読出電圧VCGBR´´を供給する。読出電圧VCGBR´´は、読出電圧VCGBRよりも大きい。
また、例えば、図46(c)の例では、タイミングt704において、選択ワード線WLSに、読出電圧VCGFRではなく、読出電圧VCGFR´´を供給する。読出電圧VCGFR´´は、読出電圧VCGFRよりも大きい。
尚、図46(c)に例示するシフトリードを実行する場合、コントローラダイCD(図1)はメモリダイMDに、コマンドデータCmd(基本コマンドデータCmd)としてコマンドデータ“00h”を供給するかわりに、拡張コマンドデータCmdとしてコマンドデータ“21h”,“22h”,“23h”,,,等を供給しても良い。また、コマンドデータ“22h”が入力された場合の電圧シフト量は、コマンドデータ“21h”が入力された場合の電圧シフト量より大きくても良い。同様に、コマンドデータ“23h”が入力された場合の電圧シフト量は、コマンドデータ“22h”が入力された場合の電圧シフト量より大きくても良い。また、コマンドデータ“21h”,“22h”,“23h”,,,等の入力後、コントローラダイCDはメモリダイMDに、アドレスデータAdd及びコマンドデータ“30h”を供給しても良い。コマンドデータ“30h”は基本コマンドデータCmdであってもよいし、拡張コマンドデータCmdであってもよい。
図47は、動作モードMODEbにおいてシフトリードを実行する場合の様子を示す模式的な波形図である。図47の例では、メモリダイMDが動作モードMODEbに設定されている。
図47の例では、まず、コマンドデータ“11h”を含むコマンドセットが、外部制御端子CLE,ALEを介して入力されている。尚、コマンドデータ“11h”は、拡張コマンドデータCmdとして入力されている。
ここで、例えば第1実施形態においてシフトリードを実行する場合、例えば、図30を参照して説明した様な方法でセットフィーチャを実行し、これによって上記電圧シフト量をフィーチャデータFdとしてメモリダイMDに入力する。その後、図20を参照して説明した様な方法によって読出動作を実行する。
一方、第3実施形態においてシフトリードを実行する場合、セットフィーチャを実行することなく、図47を参照して説明した様な方法によってシフトリードを実行する。
この様な方法によれば、セットフィーチャの実行を省略することにより、動作の高速化を実現可能である。
[拡張コマンドデータCmdを用いた内部パス遅延検出回路205(図9)の制御]
次に、拡張コマンドデータCmdの用途として、内部パス遅延検出回路205(図9)の制御を例示する。
図9を参照して説明した様に、第1実施形態に係る半導体記憶装置においては、内部パス遅延検出回路205から出力されるパルスの数をフィーチャデータFdとして取得することが可能である。また、これに基づき、信号転送回路204(図8)における信号の遅延量を測定可能である。
ここで、第1実施形態に係る半導体記憶装置においては、ゲットフィーチャの実行に応じて内部パス遅延検出回路205が駆動される。即ち、ゲットフィーチャの実行に応じて内部パス遅延検出回路205中のNAND回路212(図9)のイネーブル信号が“H”状態となる。従って、第1実施形態に係る半導体記憶装置においては、ゲットフィーチャの実行後、内部パス遅延検出回路205による遅延量の測定後まで、フィーチャデータFdを取得することが出来ない。
一方、第3実施形態に係る半導体記憶装置においては、拡張コマンドデータCmdの入力に応じて、内部パス遅延検出回路205を駆動させることが可能である。即ち、拡張コマンドデータCmdの入力に応じて、内部パス遅延検出回路205中のNAND回路212(図9)のイネーブル信号を“H”状態とすることが可能である。
この様な構成によれば、ゲットフィーチャの実行前に予め内部パス遅延検出回路205を駆動させておくことにより、ゲットフィーチャを高速に実行可能な場合がある。
[第4実施形態]
次に、図48を参照して、第4実施形態に係る半導体記憶装置の構成について説明する。図48は、第4実施形態に係るメモリダイMD4の構成を示す模式的なブロック図である。
図48に示す様に、本実施形態に係る半導体記憶装置は、基本的には、第2実施形態に係る半導体記憶装置と同様に構成されている。ただし、第4実施形態に係る半導体記憶装置は、コマンドレジスタCMRのかわりに、コマンドレジスタCMR´を備える。
次に、図49及び図50を参照して、第4実施形態に係る半導体記憶装置の動作について説明する。第4実施形態に係る半導体記憶装置は、基本的には、第2実施形態に係る半導体記憶装置と同様に動作する。
ただし、第2実施形態に係る半導体記憶装置では、期間S_Inの1サイクル目に外部制御端子/CEに入力される1ビットのデータを、フラグデータとして用いていた。また、第2実施形態に係る半導体記憶装置では、このフラグデータに応じて、期間S_Inを省略していた。
一方、第4実施形態に係る半導体記憶装置では、このフラグデータに応じて、入力されるコマンドデータCmdが拡張コマンドデータCmdであるか否かを判別する。
例えば、このフラグデータが“0”である場合には、この期間S_Inにおいて入力されるコマンドデータCmdを、拡張コマンドデータCmdでないものとして判別する。この場合、このコマンドデータCmdは、コマンドレジスタCMR´中のコマンド処理部cmr1(図48)によって処理される。
一方、このフラグデータが“1”である場合には、この期間S_Inにおいて入力されるコマンドデータCmdを、拡張コマンドデータCmdとして判別する。この場合、このコマンドデータCmdは、コマンドレジスタCMR´中のコマンド処理部cmr2(図48)によって処理される。
図49は、動作モードMODEbにおいて読出動作を実行する場合の様子を示す模式的な波形図である。図49の例では、メモリダイMDが動作モードMODEbに設定されている。
図49の例では、タイミングt800において、コントローラダイCDがメモリダイMD4の外部制御端子/CEに、“L”を入力している。これに伴い、ラッチ回路206(図39)に“L”が入力され、メモリダイMD4が選択状態となる。
また、タイミングt801~t802の期間FSelにおいて、コントローラダイCDがメモリダイMD4の外部制御端子/CE,CLE,ALEに、“X,H,L”を入力している。これに伴い、コマンドデータCmdを入力する旨の入出力データ選択信号が入力される。
また、タイミングt802~t803の期間S_Inにおいて、コントローラダイCDがメモリダイMD4に、3サイクルにわたってコマンドデータ“00h”を入力する。また、図示の例では、期間S_Inの1サイクル目に外部制御端子/CEに“0”が入力されている。従って、コマンドデータ“00h”は、拡張コマンドデータCmdでないものとして判別される。
また、タイミングt803~t804の期間FSelにおいて、コントローラダイCDがメモリダイMD4の外部制御端子/CE,CLE,ALEに、“X,L,H”を入力している。これに伴い、アドレスデータAddを入力する旨の入出力データ選択信号が入力される。
また、タイミングt804~t805の期間S_Inにおいて、コントローラダイCDがメモリダイMD4に、3サイクルにわたってアドレスデータAddを入力する。また、図示の例では、期間S_Inの1サイクル目において、外部制御端子/CEに“0”が入力されていても良いし、“1”が入力されていても良い。
また、タイミングt805~t806の期間F_Sel、タイミングt807~t808の期間F_Sel、及び、タイミングt809~t810の期間F_Selにおいて、タイミングt803~t804の期間FSelと同様に、コントローラダイCDがメモリダイMD4の外部制御端子/CE,CLE,ALEに、“X,L,H”を入力している。
また、タイミングt806~t807の期間S_In、タイミングt808以降の期間S_In、タイミングt809以前の期間S_In、及び、タイミングt810~t811の期間S_Inにおいて、タイミングt804~t805の期間S_Inと同様に、コントローラダイCDがメモリダイMD4に、3サイクルにわたってアドレスデータAddを入力する。
また、タイミングt811~t812の期間FSelにおいて、コントローラダイCDがメモリダイMD4の外部制御端子/CE,CLE,ALEに、“X,H,L”を入力している。これに伴い、コマンドデータCmdを入力する旨の入出力データ選択信号が入力される。
また、タイミングt812~t813の期間S_Inにおいて、コントローラダイCDがメモリダイMD4に、3サイクルにわたってコマンドデータ“30h”を入力する。また、図示の例では、期間S_Inの1サイクル目に外部制御端子/CEに“0”が入力されている。
図50は、動作モードMODEbにおいてシフトリードを実行する場合の様子を示す模式的な波形図である。図50の例では、メモリダイMDが動作モードMODEbに設定されている。
図50に示す動作は、基本的には、図49に示す動作と同様に実行される。
ただし、図50の例では、タイミングt802~t803の期間S_Inにおいて、コントローラダイCDがメモリダイMD4に、3サイクルにわたってコマンドデータ“11h”を入力する。また、図示の例では、期間S_Inの1サイクル目に外部制御端子/CEに“1”が入力されている。従って、コマンドデータ“11h”は、拡張コマンドデータCmdとして判別される。
[その他の実施形態]
以上、第1実施形態~第4実施形態に係る半導体記憶装置について説明した。しかしながら、以上の説明はあくまでも例示であり、具体的な構成、動作等は適宜調整可能である。
例えば、第1実施形態及び第3実施形態に係る半導体記憶装置では、動作モードMODEbにおいて、外部制御端子CLE,ALEを利用した2ビットのデータの入出力を行っていた。また、第2実施形態及び図4実施形態に係る半導体記憶装置では、動作モードMODEbにおいて、外部制御端子/CE,CLE,ALEを利用した3ビットのデータの入出力を行っていた。しかしながら、この様な方法はあくまでも例示であり、具体的な方法は適宜調整可能である。例えば、動作モードMODEbにおいては、その他の端子等を利用して、3ビット又は4ビット以上のデータの入出力を行っても良い。より具体的には、例えば、動作モードMODEbにおいて、外部制御端子/CEに代えて、または、加えて、外部制御端子/WP等を利用して、3ビットまたは4ビットのデータの入出力を行っても良い。また、外部制御端子/CE,CLE,ALEを含む端子の中から少なくとも一つの端子を選択して、1ビット又は2ビットのデータの入出力を行っても良い。
また、例えば、第1実施形態~第4実施形態では、外部制御端子/CE,CLE,ALE等に対する機能の割り当てについて例示した。しかしながら、この様な割り当てはあくまでも例示であり、具体的な割り当ては適宜調整可能である。
例えば、第1実施形態に係る半導体記憶装置において、図13及び図14に例示した機能の一部を入れ替えても良い。また、例えば、図13及び図14に例示した機能以外の機能を追加しても良いし、図13及び図14に例示した機能の一部を省略しても良い。また、期間FSelの3サイクル目を追加しても良い。また、期間FSelの1サイクル目に入力されたデータに応じて、期間FSelの2サイクル目に入力されるデータに割り当てられる機能が変わる様にしても良い。
コマンドセットは、コマンドデータCmdとアドレスデータAddを含む。第1実施形態に係る半導体記憶装置は、動作モードMODEbにおいて、コマンドデータCmdとアドレスデータAddを、それぞれ、入出力データ選択信号(ヘッダ)とコマンドデータCmd又はアドレスデータAdd(ボディ)を用いて、数サイクルにわたって送受信する。ここで、コマンドセットの入力が途中で中止される場合がある。その場合、コマンドデータCmdとアドレスデータAddが最終サイクルまで入力されない場合がある。このような場合に、各メモリダイMDはコントローラダイCDからのリセット指示信号に応じてリセットが可能となるように構成されていてもよい。
例えば、コントローラダイCDは、図51に示すように、コマンドセットの入力を途中で中止した場合、リセット指示信号として、外部制御端子/CEの電圧を一定期間“L”から“H”に遷移させ、その後、“L”に戻す。その後、コントローラダイCDは、メモリダイMDに対して新しいコマンドセットを入力する。新しいコマンドセットは、途中で入力が中止されたコマンドセットと同じものでもよいし、異なるものでもよい。メモリダイMDは、新しく入力されたコマンドセットを受け付けた後、当該コマンドセットに応じた動作を実行する。
コントローラダイCDをリセット指示信号を送信可能に構成するとともに、メモリダイMDをリセット指示信号に応じてリセットが可能となるように構成することにより、コマンドセットの入力を途中で中止する必要が生じた場合であっても安定的に動作する半導体記憶装置を実現できる。
また、例えば、第2実施形態及び第4実施形態に係る半導体記憶装置では、期間S_Inの1サイクル目に外部制御端子/CEに入力される1ビットのデータを、フラグデータとして用いていた。また、第2実施形態に係る半導体記憶装置では、このフラグデータに応じて、期間S_Inを省略していた。また、第2実施形態に係る半導体記憶装置では、このフラグデータに応じて、入力されるコマンドデータCmdが拡張コマンドデータCmdであるか否かを判別していた。しかしながら、この様な方法はあくまでも例示であり、具体的な方法は適宜調整可能である。例えば、期間S_Inの1サイクル目に外部制御端子/CEに入力されるデータを、パリティービットとして利用しても良い。この様な場合、このパリティービットは、期間FSelに入力される3ビットのデータに対応するものであっても良いし、期間S_Inに入力される8ビットのデータに対応するものであっても良い。
また、例えば、第2実施形態及び第4実施形態に係る半導体記憶装置では、期間S_Inの1サイクル目に外部制御端子/CEに入力される1ビットのデータを、フラグデータとして用いていた。しかしながら、例えば、外部制御端子/CE以外の端子に入力されるデータ、又は、期間S_Inの2サイクル目以降に入力されるデータを、上述のフラグデータ、パリティービット又はその他のデータとして用いても良い。
また、例えば、第3実施形態に係る半導体記憶装置では、シフトリードを実行するための拡張コマンドデータCmdが “11h”,“12h”,“13h” ,,,及び“21h”,“22h”,“23h” ,,,である例を示した。しかし、シフトリードに割り当てられる拡張コマンドデータCmdはこれらに限られない。拡張コマンドデータCmdとして割り当て可能な範囲で、任意のコマンドデータを割り当てることができる。
また、例えば、第3実施形態及び第4実施形態に係る半導体記憶装置では、拡張コマンドデータCmdが、通常のコマンドデータCmdと同様に、8ビットのデータである例を示した。しかしながら、拡張コマンドデータCmdは、8ビットより短くても良いし、8ビットより長くても良い。
例えば、拡張コマンドデータCmdが8ビットより短い場合、コマンド処理部cmr2(図41)の面積を縮小可能である。また、例えば、第3実施形態において拡張コマンドデータCmdが8ビットである場合、拡張コマンドデータCmdは、4サイクルにわたってメモリダイMD3に入力される。一方、第3実施形態において拡張コマンドデータCmdが5ビット又は6ビットである場合、拡張コマンドデータCmdは、3サイクルにわたってメモリダイMD3に入力される。即ち、拡張コマンドデータCmdが8ビットより短い場合、動作の高速化を図ることが可能となる。
また、例えば、拡張コマンドデータCmdが8ビットより長い場合、更に多くのコマンドデータCmdの取り扱いが可能となる。
[その他]
本発明のいくつかの実施形態を説明したが、これらの実施形態は例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことが出来る。これら実施形態やその変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。