IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 東芝メモリ株式会社の特許一覧

特開2024-179901メモリコントローラ、メモリシステム
<>
  • 特開-メモリコントローラ、メモリシステム 図1
  • 特開-メモリコントローラ、メモリシステム 図2
  • 特開-メモリコントローラ、メモリシステム 図3
  • 特開-メモリコントローラ、メモリシステム 図4
  • 特開-メモリコントローラ、メモリシステム 図5
  • 特開-メモリコントローラ、メモリシステム 図6
  • 特開-メモリコントローラ、メモリシステム 図7
  • 特開-メモリコントローラ、メモリシステム 図8
  • 特開-メモリコントローラ、メモリシステム 図9
  • 特開-メモリコントローラ、メモリシステム 図10
  • 特開-メモリコントローラ、メモリシステム 図11
  • 特開-メモリコントローラ、メモリシステム 図12
  • 特開-メモリコントローラ、メモリシステム 図13
  • 特開-メモリコントローラ、メモリシステム 図14
  • 特開-メモリコントローラ、メモリシステム 図15
  • 特開-メモリコントローラ、メモリシステム 図16
  • 特開-メモリコントローラ、メモリシステム 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024179901
(43)【公開日】2024-12-26
(54)【発明の名称】メモリコントローラ、メモリシステム
(51)【国際特許分類】
   H03M 13/45 20060101AFI20241219BHJP
   G06F 11/10 20060101ALI20241219BHJP
【FI】
H03M13/45
G06F11/10 668
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023099202
(22)【出願日】2023-06-16
(71)【出願人】
【識別番号】318010018
【氏名又は名称】キオクシア株式会社
(74)【代理人】
【識別番号】100140486
【弁理士】
【氏名又は名称】鎌田 徹
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100121843
【弁理士】
【氏名又は名称】村井 賢郎
(72)【発明者】
【氏名】中村 正己
【テーマコード(参考)】
5J065
【Fターム(参考)】
5J065AD03
5J065AE06
5J065AG05
5J065AH01
5J065AH13
5J065AH15
(57)【要約】
【課題】データに含まれる誤りの訂正機能を高めることが可能なメモリコントローラが提供される。
【解決手段】メモリコントローラは、インターフェイス部と、保持部と、取得部と、補正部と、誤り訂正部と、を備える。インターフェイス部は、半導体記憶装置からのデータの読み出し動作時に、データの信号であるデータ信号を半導体記憶装置から受信して、データ信号からデータを取得する。保持部は、データの尤度情報を保持する。取得部は、データ信号からのデータの取得に影響を及ぼすパラメータを取得する。補正部は、取得部により取得されたパラメータに基づいて尤度情報を補正する。誤り訂正部は、補正部により補正された補正後の尤度情報に基づいてデータの誤り訂正処理を行う。
【選択図】図14
【特許請求の範囲】
【請求項1】
半導体記憶装置からのデータの読み出し動作時に、前記データの信号であるデータ信号を前記半導体記憶装置から受信して、前記データ信号からデータを取得するインターフェイス部と、
前記データの尤度情報を保持する保持部と、
前記データ信号からの前記データの取得に影響を及ぼすパラメータを取得する取得部と、
前記取得部により取得された前記パラメータに基づいて前記尤度情報を補正する補正部と、
前記補正部により補正された補正後の尤度情報に基づいて前記データの誤り訂正処理を行う誤り訂正部と、を備える
メモリコントローラ。
【請求項2】
前記取得部は、前記パラメータとして、前記インターフェイス部により前記データ信号から取得されたデータの連続性に関する情報を取得し、
前記補正部は、前記データが同一の値で連続している場合に前記尤度情報を補正する
請求項1に記載のメモリコントローラ。
【請求項3】
前記補正部は、前記データが同一の値で連続している場合に、同一の値で連続している数に基づいて、前記尤度情報の補正量を変化させる
請求項2に記載のメモリコントローラ。
【請求項4】
前記インターフェイス部は、前記データ信号と共にデータストローブ信号を受信して、前記データストローブ信号の立ち上がりエッジ及び立ち下がりエッジの少なくとも一方のタイミングに基づいて前記データ信号から前記データを取得するものであり、
前記取得部は、前記パラメータとして、前記データストローブ信号のデューティ値の情報を取得し、
前記補正部は、前記データストローブ信号のデューティ値に基づいて前記尤度情報を補正する
請求項1に記載のメモリコントローラ。
【請求項5】
前記取得部は、前記パラメータとして、前記データ信号のデューティ値の情報を取得し、
前記補正部は、前記データ信号のデューティ値に基づいて前記尤度情報を補正する
請求項1に記載のメモリコントローラ。
【請求項6】
前記インターフェイス部は、前記データ信号と判定電圧とを比較することにより前記データ信号からデータを取得するものであり、
前記取得部は、前記パラメータとして、前記判定電圧の電圧値の情報を取得し、
前記補正部は、前記取得部により取得された前記判定電圧の電圧値が前記判定電圧の基準値からずれることに基づいて前記尤度情報を補正する
請求項1に記載のメモリコントローラ。
【請求項7】
前記尤度情報は、対数尤度比である
請求項1に記載のメモリコントローラ。
【請求項8】
前記半導体記憶装置は、NAND型のフラッシュメモリである
請求項1に記載のメモリコントローラ。
【請求項9】
半導体記憶装置からのデータの読み出し動作時に、前記データの信号であるデータ信号を前記半導体記憶装置から受信して、前記データ信号からデータを取得するインターフェイス部と、
前記データの尤度情報を保持する保持部と、
前記データ信号からの前記データの取得に影響を及ぼすパラメータを取得する取得部と、
前記取得部により取得された前記パラメータに基づいて前記尤度情報を補正する補正部と、
前記補正部により補正された補正後の尤度情報に基づいて前記データの誤り訂正処理を行う誤り訂正部と、を備える
メモリシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、メモリコントローラ、及びメモリシステムに関する。
【背景技術】
【0002】
不揮発性メモリから読み出されたデータの誤りを検出して、その誤りを訂正するメモリコントローラが知られている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2021-111826号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
開示された実施形態によれば、データに含まれる誤りの訂正機能を高めることが可能なメモリコントローラ、及びメモリシステムが提供される。
【課題を解決するための手段】
【0005】
実施形態のメモリコントローラは、インターフェイス部と、保持部と、取得部と、補正部と、誤り訂正部と、を備える。インターフェイス部は、半導体記憶装置からのデータの読み出し動作時に、データの信号であるデータ信号を半導体記憶装置から受信して、データ信号からデータを取得する。保持部は、データの尤度情報を保持する。取得部は、データ信号からのデータの取得に影響を及ぼすパラメータを取得する。補正部は、取得部により取得されたパラメータに基づいて尤度情報を補正する。誤り訂正部は、補正部により補正された補正後の尤度情報に基づいてデータの誤り訂正処理を行う。
【0006】
実施形態のメモリシステムは、インターフェイス部と、保持部と、取得部と、補正部と、誤り訂正部と、を備える。インターフェイス部は、半導体記憶装置からのデータの読み出し動作時に、データの信号であるデータ信号を半導体記憶装置から受信して、データ信号からデータを取得する。保持部は、データの尤度情報を保持する。取得部は、データ信号からのデータの取得に影響を及ぼすパラメータを取得する。補正部は、取得部により取得されたパラメータに基づいて尤度情報を補正する。誤り訂正部は、補正部により補正された補正後の尤度情報に基づいてデータの誤り訂正処理を行う。
【図面の簡単な説明】
【0007】
図1】実施形態のメモリシステムの概略構成を示すブロック図。
図2】実施形態のメモリシステムの概略構成を示すブロック図。
図3】実施形態のメモリシステムのハードウェア的な構成を示す側面図。
図4】(A),(B)は、実施形態のパッケージのハードウェア的な構成をそれぞれ示す側面図及び平面図。
図5】実施形態の半導体記憶装置の概略構成を示すブロック図。
図6】実施形態の半導体記憶装置の構成を示す回路図。
図7】実施形態の半導体記憶装置の断面構造を示す断面図。
図8】実施形態のメモリセルトランジスタの閾値分布を模式的に示す図。
図9】実施形態の半導体記憶装置の読み出し動作時の各配線の電位の推移を示すグラフ。
図10】実施形態の半導体記憶装置のデータ書き込み時の動作例を示すタイミングチャート。
図11】参考例のメモリシステムのデータ信号の推移の一例を示すグラフ。
図12】実施形態のメモリシステムのデータ信号の推移の一例を示すグラフ。
図13】(A),(B)は、実施形態のデータストローブ信号及びデータ信号のそれぞれの推移の一例を示すグラフ。
図14】実施形態のメモリシステムの構成を示す回路図。
図15】実施形態のメモリセルトランジスタの閾値電圧の分布の一例を示すグラフ。
図16】実施形態の尤度情報補正部により実行される尤度情報の補正処理の一例を示す図表。
図17】他の実施形態の半導体記憶装置の断面構造を示す断面図。
【発明を実施するための形態】
【0008】
以下、実施形態について図面を参照しながら説明する。説明の理解を容易にするため、各図面において同一の構成要素に対しては可能な限り同一の符号を付して、重複する説明は省略する。
1 実施形態
実施形態のメモリシステムについて説明する。はじめに、本実施形態のメモリシステムの概略構成について説明する。
【0009】
1.1 メモリシステムの構成
図1に示されるように、本実施形態のメモリシステム3は、メモリコントローラ(コントローラチップ)1、及び半導体記憶装置(メモリチップ)2を備えている。半導体記憶装置2は、NAND型のフラッシュメモリとして構成される不揮発性の記憶装置である。メモリシステム3はホストと接続可能である。ホストは例えばパーソナルコンピュータや携帯端末等の電子機器である。なお、図1では半導体記憶装置2が一つのみ図示されているが、実際のメモリシステム3には半導体記憶装置2が複数設けられている。
【0010】
メモリコントローラ1は、ホストからの書き込みリクエストに従って半導体記憶装置2へのデータの書き込みを制御する。また、メモリコントローラ1は、ホストからの読み出しリクエストに従って半導体記憶装置2からのデータの読み出しを制御する。
メモリコントローラ1と半導体記憶装置2との間では、チップイネーブル信号/CE、レディービジー信号/RB、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号/WE、リードイネーブル信号/RE,RE、ライトプロテクト信号/WP、データ信号DQ<7:0>、及びデータストローブ信号DQS,/DQSの各信号が送受信される。
【0011】
チップイネーブル信号/CEは、メモリコントローラ1から半導体記憶装置2へ送信される。チップイネーブル信号/CEは、半導体記憶装置2をイネーブルにするための信号である。レディービジー信号/RBは、半導体記憶装置2からメモリコントローラ1へ送信される。レディービジー信号/RBは、半導体記憶装置2がレディ状態であるか、あるいはビジー状態であるかを示すための信号である。「レディ状態」とは、例えば、外部からの命令を受け付ける状態である。「ビジー状態」とは、外部からの命令を受け付けない状態である。
【0012】
図2に示されるように、複数の半導体記憶装置2のそれぞれには、チップイネーブル信号/CEが個別に送信される。図2においては、それぞれのチップイネーブル信号/CEを互いに区別できるように、例えば「/CE0」のように末尾に番号が付してある。
同様に、複数の半導体記憶装置2のそれぞれからは、レディービジー信号/RBが個別に送信される。図2においては、それぞれのレディービジー信号/RBを互いに区別できるように、例えば「/RB0」のように末尾に番号が付してある。
【0013】
チップイネーブル信号/CEやレディービジー信号/RB以外の信号(コマンドラッチイネーブル信号CLE等)については、複数の半導体記憶装置2で共通となっている信号線を介して、メモリコントローラ1と半導体記憶装置2との間で送受信される。メモリコントローラ1は、個別のチップイネーブル信号/CEを用いて、通信の対象となる半導体記憶装置2を特定する。
【0014】
コマンドラッチイネーブル信号CLEは、メモリコントローラ1から半導体記憶装置2へ送信される。コマンドラッチイネーブル信号CLEは、データ信号DQ<7:0>がコマンドであることを示す信号である。アドレスラッチイネーブル信号ALEは、メモリコントローラ1から半導体記憶装置2へ送信される。アドレスラッチイネーブル信号ALEは、データ信号DQ<7:0>がアドレスであることを示す信号である。ライトイネーブル信号/WEは、メモリコントローラ1から半導体記憶装置2へ送信される。ライトイネーブル信号/WEは、受信した信号を半導体記憶装置2に取り込むための信号であり、メモリコントローラ1によりコマンド、アドレス、及びデータを受信する都度アサートされる。半導体記憶装置2は、信号/WEの立ち上がりエッジ(rising edge)に応じて、“L(Low)”レベルデータ信号DQ<7:0>を取り込む。
【0015】
例えば、半導体記憶装置2は、信号CLEが“H(High)”レベルで信号ALEが“L(Low)”レベルである状態で、信号/WEの立ち上がりエッジに応じて、信号DQ<7:0>をコマンドとして受け付け、レジスタ24に保持させる。また、半導体記憶装置2は、信号CLEが“L”レベルで信号ALEが“H”レベルである状態で、信号/WEの立ち上がりエッジに応じて、信号DQ<7:0>をアドレスとして受け付け、レジスタ24に保持させる。さらに、半導体記憶装置2は、シングルデータレート(Single Data Rate、SDR)モードでのデータイン(Data-in)動作において、信号CLEが“L”レベルで信号ALEが“L”レベルである状態で、信号/WEの立ち上がりエッジに応じて、信号DQ<7:0>をデータとして受け付け、センスアンプ28に保持させる。
【0016】
リードイネーブル信号/REは、メモリコントローラ1から半導体記憶装置2へ送信される。信号REは、信号/REの相補信号である。リードイネーブル信号/RE,REは、メモリコントローラ1が半導体記憶装置2からデータを読み出すための信号である。リードイネーブル信号/RE,REは、例えばデータ信号DQ<7:0>を出力する際の半導体記憶装置2の動作タイミングを制御するために使用される。データ信号DQ<7:0>は、半導体記憶装置2とメモリコントローラ1との間で送受信されるデータの実体であり、コマンド、アドレス、及びデータを含む。データストローブ信号DQSは、半導体記憶装置2とメモリコントローラ1との間でデータ信号DQ<7:0>に伴って送受信されるタイミング制御信号である。信号/DQSは、信号DQSの相補信号である。データストローブ信号DQS,/DQSは、データ信号DQ<7:0>の入出力のタイミングを制御するための信号である。
【0017】
例えば、ダブルデータレート(Double Data Rate、DDR)モードでのデータイン動作において、メモリコントローラ1は、データ信号DQ<7:0>を出力しつつ、データストローブ信号DQS,/DQSを“L”レベルと“H”レベルとの間で切り替える(トグルさせる、toggle)。データストローブ信号DQSの位相は、その立ち上がりエッジ(rising edge)と立ち下がりエッジ(falling edge)が、1サイクル分のデータ信号DQ<7:0>の中央と一致するように調整される。違う言い方をすると、データイン動作においては、メモリコントローラ1から半導体記憶装置2へ、データストローブ信号DQSとデータ信号DQ<7:0>とが、それらの位相を90度ずらした状態で、送信される。半導体記憶装置2は、データストローブ信号DQSの立ち上がりエッジと立ち下がりエッジとに応じて、信号DQ<7:0>をデータとして受け付け、センスアンプ28に保持させる。
【0018】
シングルデータレートモードでのデータアウト動作において、半導体記憶装置2は、リードイネーブル信号/REの立ち上がりエッジに応じて、メモリコントローラ1へデータ信号DQ<7:0>を出力する。
ダブルデータレートモードでのデータアウト動作において、メモリコントローラ1は、リードイネーブル信号/RE,REを“L”レベルと“H”レベルとの間で切り替える(トグルさせる、toggle)。半導体記憶装置2は、リードイネーブル信号/REの立ち上がりエッジおよびに応じて、データストローブ信号DQS,/DQSを“L”レベルと“H”レベルとの間で切り替えつつ(トグルさせつつ、toggle)、メモリコントローラ1へデータ信号DQ<7:0>を出力する。データストローブ信号DQSの位相は、その立ち上がりエッジと立ち下がりエッジが、1サイクル分のデータ信号DQ<7:0>のエッジと一致するように調整される。
【0019】
ダブルデータレートモードでのデータアウト動作において、メモリコントローラ1のメモリインターフェイス15は、各サイクルのデータ信号DQ<7:0>を、データストローブ信号DQS,/DQSの位相を90度ずらした信号の立ち上がりのタイミング及び立ち下がりタイミングで、受け付ける。
ライトプロテクト信号/WPは、メモリコントローラ1から半導体記憶装置2へ送信される。ライトプロテクト信号/WPは、データ書き込み及び消去の禁止を半導体記憶装置2に指示するための信号である。
【0020】
メモリコントローラ1は、RAM11、プロセッサ12、ホストインターフェイス13、ECC(Error Correcting Code)回路14、及びメモリインターフェイス15を備えている。これらは内部バス16により互いに接続されている。
ホストインターフェイス13は、ホストから受信したリクエスト及びユーザデータ(書き込みデータ)等を内部バス16に出力する。また、ホストインターフェイス13は、半導体記憶装置2から読み出されたユーザデータ、及びプロセッサ12からの応答等をホストへ送信する。
【0021】
メモリインターフェイス15は、プロセッサ12の指示に基づいて、ユーザデータ等を半導体記憶装置2へ書き込む処理、及び半導体記憶装置2から読み出す処理を制御する。
プロセッサ12はメモリコントローラ1を統括的に制御する。プロセッサ12はCPUやMPU等である。プロセッサ12は、ホストからホストインターフェイス13を介してリクエストを受信した場合に、そのリクエストに従った制御を行う。例えば、プロセッサ12は、ホストからのリクエストに従って、半導体記憶装置2へのユーザデータ及びパリティの書き込みをメモリインターフェイス15へ指示する。また、プロセッサ12は、ホストからのリクエストに従って、半導体記憶装置2からのユーザデータ及びパリティの読み出しをメモリインターフェイス15へ指示する。
【0022】
プロセッサ12は、RAM11に蓄積されるユーザデータに対して、半導体記憶装置2上の格納領域(メモリ領域)を決定する。ユーザデータは、内部バス16を介してRAM11に格納される。プロセッサ12は、メモリ領域の決定を、書き込み単位であるページ単位のデータ(ページデータ)に対して実施する。半導体記憶装置2の1ページに格納されるユーザデータのことを、以下では「ユニットデータ」とも称する。ユニットデータは、一般的には符号化されて、符号語として半導体記憶装置2に格納される。本実施形態では、符号化は必須ではない。メモリコントローラ1は、符号化せずにユニットデータを半導体記憶装置2に格納してもよいが、図1では一例として符号化を行う構成を示している。メモリコントローラ1が符号化を行わない場合には、ページデータはユニットデータと一致する。また、1つのユニットデータに基づいて1つの符号語が生成されてもよいし、ユニットデータが分割された分割データに基づいて1つの符号語が生成されてもよい。また、複数のユニットデータを用いて1つの符号語が生成されてもよい。
【0023】
プロセッサ12は、ユニットデータ毎に書き込み先の半導体記憶装置2のメモリ領域を決定する。半導体記憶装置2のメモリ領域には物理アドレスが割当てられている。プロセッサ12は、ユニットデータの書き込み先のメモリ領域を、物理アドレスを用いて管理する。プロセッサ12は、決定したメモリ領域(物理アドレス)を指定してユーザデータを半導体記憶装置2へ書き込むようにメモリインターフェイス15へ指示する。プロセッサ12は、ユーザデータの論理アドレス(ホストが管理する論理アドレス)と物理アドレスとの対応を管理する。プロセッサ12は、ホストからの論理アドレスを含む読み出しリクエストを受信した場合に、論理アドレスに対応する物理アドレスを特定するとともに、物理アドレスを指定してユーザデータの読み出しをメモリインターフェイス15へ指示する。
【0024】
ECC回路14は、RAM11に格納されたユーザデータを符号化して、符号語を生成する。また、ECC回路14は、半導体記憶装置2から読み出された符号語を復号する。
RAM11は、ホストから受信したユーザデータを半導体記憶装置2へ記憶するまでに一時格納したり、半導体記憶装置2から読み出したデータをホストへ送信するまでに一時的に格納したりする。RAM11は、例えばSRAMやDRAM等の汎用メモリである。
【0025】
図1では、メモリコントローラ1が、ECC回路14及びメモリインターフェイス15を備える構成例が示されている。しかしながら、ECC回路14がメモリインターフェイス15に内蔵されていてもよい。また、ECC回路14が半導体記憶装置2に内蔵されていてもよい。図1に示される各要素の具体的な構成や配置は特に限定されない。
【0026】
ホストから書き込みリクエストを受信した場合、図1のメモリシステム3は次のように動作する。プロセッサ12は、書き込み対象となるデータをRAM11に一時的に記憶させる。プロセッサ12は、RAM11に格納されているデータを読み出してECC回路14に入力する。ECC回路14は、入力されたデータを符号化して、符号語をメモリインターフェイス15に入力する。メモリインターフェイス15は、入力された符号語を半導体記憶装置2に書き込む。
【0027】
ホストから読み出しリクエストを受信した場合、図1のメモリシステム3は次のように動作する。メモリインターフェイス15は、半導体記憶装置2から読み出した符号語をECC回路14に入力する。ECC回路14は、入力された符号語を復号して、復号されたデータをRAM11に格納する。プロセッサ12は、RAM11に格納されているデータを、ホストインターフェイス13を介してホストに送信する。
【0028】
1.2 メモリシステムのハードウェア的な構成
次に、メモリシステム3のハードウェア的な構成について説明する。
図3は、メモリシステム3の構成例を模式的に示す側面図である。メモリシステム3は、システム実装基板SSBと、システム実装基板SSBに配置された複数のパッケージPKGと、メモリコントローラ(コントローラチップ)1とを備えている。システム実装基板SSBの上面には、メモリコントローラ1と一部のパッケージPKGが配置される。システム実装基板SSBの下面には、他のパッケージPKGが配置される。
【0029】
図4(A)は、パッケージPKGの構成例を模式的に示す側面図であり、図4(B)は、パッケージPKGの構成例を模式的に示す平面図である。
図4(A)に示されるように、パッケージPKGは、メモリチップ実装基板MSBと、メモリチップ実装基板MSBに積層された複数の半導体記憶装置(メモリチップ)2とを備えている。メモリチップ実装基板MSBの上面のうち、Y方向の端部の領域にはパッド電極Pが設けられ、その他の一部の領域は接着剤等を介して半導体記憶装置2の下面に接着されている。図4(A)に示されるように、半導体記憶装置2の上面のうち、Y方向の端部の領域にはパッド電極Pが設けられ、その他の領域は接着剤等を介して他の半導体記憶装置2の下面に接着されている。複数の半導体記憶装置2の間で対応するパッド電極Pは、ボンディングワイヤBで共通に接続される。メモリチップ実装基板MSBの下面には電極端子Tが設けられている。メモリチップ実装基板MSBの上面のパッド電極Pは、下面の電極端子Tと、それぞれ接続されている。メモリチップ実装基板MSBは、例えば、グリッドアレイ基板であってもよい。メモリチップ実装基板MSBの上面において、複数の半導体記憶装置2とボンディングワイヤBとは、例えば、図示しない封止樹脂で覆われている。
【0030】
また、図4(B)に示されるように、メモリチップ実装基板MSB、及び複数の半導体記憶装置2は、それぞれ、X方向に並ぶ複数のパッド電極Pを備えている。各々の半導体記憶装置2の複数のパッド電極Pは、それぞれ、信号/CE,CLE,ALE,/WE,/RE,RE,/WP,DQ<7:0>,DQS,/DQSのそれぞれの入出力パッドに対応している。
【0031】
メモリチップ実装基板MSB、及び、複数の半導体記憶装置2に設けられた複数のパッド電極Pは、それぞれ、ボンディングワイヤBを介してお互いに接続されている。例えば、複数の半導体記憶装置2のうち、コマンドラッチイネーブル信号CLEに対応するパッド電極Pが互いに接続され、アドレスラッチイネーブル信号ALEに対応するパッド電極Pが互いに接続される。他の端子についても同様である。したがって、パッケージPKG内部の各半導体記憶装置2のパッド電極Pは、メモリチップ実装基板MSBの下面の電極端子Tを介して、パッケージPKGの外部と接続される。
【0032】
図3に示されるように、メモリコントローラ1には複数のパッド電極Pが設けられている。メモリコントローラ1のパッド電極PはボンディングワイヤBを介してシステム実装基板SSBと接続される。複数のパッケージPKGの電極端子Tは、はんだボールSBを介してシステム実装基板SSBと接続される。メモリコントローラ1のパッド電極Pと複数のパッケージPKGの電極端子Tとは、システム実装基板SSBの上面及び下面に形成される図示しない配線によって接続される。システム実装基板SSBの上面と下面とは貫通電極TVによって接続される。
【0033】
システム実装基板SSBの上面に配置されたパッケージPKGaの電極端子Tの一部と、システム実装基板SSBの下面に配置されたパッケージPKGbの電極端子Tの一部とは、貫通電極TVによって接続されていてもよい。より具体的には、システム実装基板SSBの上面に配置されたパッケージPKGにおけるデータ信号DQ<7:0>に対応する電極端子Tと、システム実装基板SSBの下面に配置されたパッケージPKGにおけるデータ信号DQ<7:0>に対応する電極端子Tとが、それぞれ、貫通電極TVを介して接続されていてもよい。
【0034】
1.3 半導体記憶装置の概略構成
図5に示されるように、半導体記憶装置2は、メモリセルアレイ21、入出力回路22、ロジック制御回路23、レジスタ24、シーケンサ25、電圧生成回路26、ロウデコーダ27、センスアンプ28、入出力用パッド群30、ロジック制御用パッド群31、及び電源入力用端子群32を備えている。
【0035】
メモリセルアレイ21は、データを記憶する部分である。メモリセルアレイ21は、複数のビット線及び複数のワード線に関連付けられた複数のメモリセルトランジスタを有して構成されている。
入出力回路22は、データ信号DQ<7:0>及びデータストローブ信号DQS,/DQSをメモリコントローラ1との間で送受信する。また、入出力回路22は、データ信号DQ<7:0>内のコマンド及びアドレスをレジスタ24に転送する。さらに、入出力回路22は、書き込みデータ及び読み出しデータをセンスアンプ28との間で送受信する。
【0036】
ロジック制御回路23は、メモリコントローラ1からチップイネーブル信号/CE、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号/WE、リードイネーブル信号/RE,RE、及びライトプロテクト信号/WPを受信する。また、ロジック制御回路23は、レディービジー信号/RBをメモリコントローラ1に転送して、半導体記憶装置2の状態を外部に通知する。
【0037】
レジスタ24は各種データを一時的に保持する。例えば、レジスタ24は、書き込み動作、読み出し動作、及び消去動作等を指示するコマンドを保持する。このコマンドは、メモリコントローラ1から入出力回路22に入力された後、入出力回路22からレジスタ24に転送されて保持される。また、レジスタ24は、上記のコマンドに対応するアドレスも保持する。このアドレスは、メモリコントローラ1から入出力回路22に入力された後、入出力回路22からレジスタ24に転送されて保持される。
【0038】
シーケンサ25は、メモリコントローラ1から入出力回路22及びロジック制御回路23に入力された制御信号に基づいて、メモリセルアレイ21を含む各部の動作を制御する。
電圧生成回路26は、メモリセルアレイ21におけるデータの書き込み動作、読み出し動作、及び消去動作のそれぞれに必要な電圧を生成する部分である。この電圧には、例えばメモリセルアレイ21の複数のワード線及び複数のビット線にそれぞれ印加される電圧等が含まれる。電圧生成回路26の動作はシーケンサ25により制御される。
【0039】
ロウデコーダ27は、メモリセルアレイ21の複数のワード線に電圧をそれぞれ印加するためのスイッチ群により構成される回路である。ロウデコーダ27は、レジスタ24からブロックアドレス及びロウアドレスを受け取り、ブロックアドレスに基づいてブロックを選択するとともに、ロウアドレスに基づいてワード線を選択する。ロウデコーダ27は、選択されたワード線に対して電圧生成回路26からの電圧が印加されるようにスイッチ群の開閉状態を切り替える。ロウデコーダ27の動作はシーケンサ25により制御される。
【0040】
センスアンプ28は、メモリセルアレイ21のビット線に印加される電圧を調整したり、ビット線の電圧を読み出してデータに変換したりするための回路である。センスアンプ28は、データの読み出し時には、メモリセルアレイ21のメモリセルトランジスタからビット線に読み出されたデータを取得するとともに、取得した読み出しデータを入出力回路22に転送する。センスアンプ28は、データの書き込み時には、ビット線を介して書き込まれるデータをメモリセルトランジスタに転送する。センスアンプ28の動作はシーケンサ25により制御される。
【0041】
入出力用パッド群30は、メモリコントローラ1と入出力回路22との間で各信号の送受信を行うための複数の端子(パッド)が設けられた部分である。それぞれの端子は、データ信号DQ<7:0>、及びデータストローブ信号DQS,/DQSのそれぞれに対応して個別に設けられている。
【0042】
ロジック制御用パッド群31は、メモリコントローラ1とロジック制御回路23との間で各信号の送受信を行うための複数の端子が設けられた部分である。それぞれの端子は、チップイネーブル信号/CE、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号/WE、リードイネーブル信号/RE,RE、ライトプロテクト信号/WP、及びレディービジー信号/RBのそれぞれに対応して個別に設けられている。
【0043】
電源入力用端子群32は、半導体記憶装置2の動作に必要な各電圧の印加を受けるための複数の端子が設けられる部分である。それぞれの端子に印加される電圧には、電源電圧Vcc,VccQ,Vpp、及び接地電圧Vssが含まれている。電源電圧Vccは、動作電源として外部から与えられる回路電源電圧であり、例えば2.5V程度の電圧である。電源電圧Vccは、例えば、半導体記憶装置2の内部電源電圧である電圧Vddを生成するための電圧である。電源電圧Vddは例えば1.5V程度の電圧である。電源電圧VccQは、電源電圧Vccよりも低い電源電圧であり、例えば1.2Vの電圧である。電源電圧VccQは、メモリコントローラ1と半導体記憶装置2との間で信号を送受信する際に用いられる入出力用電源電圧である。電源電圧VccQは、少なくとも、入出力回路22の図示しないドライバ回路及びレシーバ回路に供給される。電源電圧Vppは、電源電圧Vccよりも高い電源電圧であり、例えば12Vの電圧である。
【0044】
1.4 メモリセルアレイの回路構成
次に、メモリセルアレイ21の回路構成について説明する。
図6に示されるように、メモリセルアレイ21は複数のブロックBLKにより構成されている。図6では、複数のブロックBLKのうちの一つのみが示されている。メモリセルアレイ21が有する他のブロックBLKの構成も、図6に示されるものと同様である。
【0045】
図6に示されるように、ブロックBLKは、例えば4つのストリングユニットSU(SU0~SU3)を含む。また、各々のストリングユニットSUは複数のNANDストリングNSを含む。NANDストリングNSの各々は、例えば8個のメモリセルトランジスタMT(MT0~MT7)と、選択トランジスタST1,ST2とを含む。
【0046】
メモリセルトランジスタMTは、選択トランジスタST1と選択トランジスタST2との間に直列接続されるように配置されている。一端側のメモリセルトランジスタMT7が選択トランジスタST1のソースに接続され、他端側のメモリセルトランジスタMT0が選択トランジスタST2のドレインに接続されている。
【0047】
ストリングユニットSU0~SU3のそれぞれの選択トランジスタST1のゲートは、それぞれセレクトゲート線SGD0~SGD3に共通接続されている。選択トランジスタST2のゲートは、同一のブロックBLK内にある複数のストリングユニットSU間で同一のセレクトゲート線SGSに共通接続されている。同一のブロックBLK内にあるメモリセルトランジスタMT0~MT7のゲートは、それぞれワード線WL0~WL7に共通接続される。すなわち、ワード線WL0~WL7及びセレクトゲート線SGSは、同一ブロックBLK内の複数のストリングユニットSU0~SU3間で共通となっているのに対し、セレクトゲート線SGDは、同一ブロックBLK内であってもストリングユニットSU0~SU3毎に個別に設けられている。
【0048】
メモリセルアレイ21には、m本のビット線BL(BL0、BL1、・・・、BL(m-1))が設けられている。「m」は、1つのストリングユニットSUに含まれるNANDストリングNSの本数に対応する整数である。NANDストリングNSのそれぞれの選択トランジスタST1のドレインは、対応するビット線BLに接続されている。NANDストリングNSのそれぞれの選択トランジスタST2のソースはソース線SLに接続されている。ソース線SLは、ブロックBLKが有する複数の選択トランジスタST2のソースに対して共通である。
【0049】
同一のブロックBLK内にある複数のメモリセルトランジスタMTに記憶されているデータは一括して消去される。一方、データの読み出し及び書き込みは、1つのワード線WLに接続され、且つ1つのストリングユニットSUに属する複数のメモリセルトランジスタMTに対して一括して行われる。それぞれのメモリセルは、上位ビット、中位ビット、及び下位ビットからなる3ビットのデータを保持することができる。
【0050】
すなわち、本実施形態に係る半導体記憶装置2は、メモリセルトランジスタMTへのデータの書き込み方式として、1つのメモリセルトランジスタMTに3ビットデータを記憶させるTLC方式を採用している。このような態様に換えて、メモリセルトランジスタMTへのデータの書き込み方式としては、1つのメモリセルトランジスタMTに2ビットデータを記憶させるMLC方式等を採用してもよい。1つのメモリセルトランジスタMTに記憶されるデータのビット数は特に限定されない。
【0051】
なお、以下の説明では、1つのワード線WLに接続され、且つ1つのストリングユニットSUに属する複数のメモリセルトランジスタMTが記憶する1ビットデータの集合のことを「ページ」と称する。図6では、上記のような複数のメモリセルトランジスタMTからなる集合の一つに、符号「MG」が付してある。
【0052】
本実施形態のように、1つのメモリセルトランジスタMTに3ビットのデータが記憶される場合、1つのストリングユニットSU内で共通のワード線WLに接続された複数のメモリセルトランジスタMTの集合は、3ページ分のデータを記憶することができる。これらのうち、下位ビットデータの集合からなるページのことを以下では「下位ページ」とも称し、下位ページのデータのことを以下では「下位ページデータ」とも称する。同様に、中位ビットデータの集合からなるページのことを以下では「中位ページ」とも称し、中位ページのデータのことを以下では「中位ページデータ」とも称する。上位ビットデータの集合からなるページのことを以下では「上位ページ」とも称し、上位ページのデータのことを以下では「上位ページデータ」とも称する。
【0053】
1.5 半導体記憶装置の断面構造
図7に示されるように、半導体記憶装置2は、半導体基板40上に周辺回路PER及びメモリセルアレイ21が順に配置された構造を有している。本実施形態の半導体記憶装置2は、メモリセルアレイ21の下方に周辺回路PERが配置される、いわゆるCUA(CMOS under array)構造を有している。
【0054】
メモリセルアレイ21では、導電体層520の上に複数のNANDストリングNSが形成されている。導電体層520は、埋め込みソース線(BSL)とも称されるものであり、図6のソース線SLに該当するものである。
導電体層520の上方には、セレクトゲート線SGSとして機能する配線層533、ワード線WLとして機能する複数の配線層532、及びセレクトゲート線SGDとして機能する配線層531が積層されている。積層された配線層533,532,531のそれぞれの間には、不図示の絶縁層が配置されている。
【0055】
メモリセルアレイ21には複数のメモリホール534が形成されている。メモリホール534は、配線層533,532,531、及びそれらの間にある不図示の絶縁層を上下方向に貫通しており、且つ導電体層520に達する穴である。
メモリホール534のうち、積層された配線層533,532,531のそれぞれと交差している各部分はトランジスタとして機能する。これら複数のトランジスタのうち、配線層531と交差している部分にあるものは選択トランジスタST1として機能する。複数のトランジスタのうち、配線層532と交差している部分にあるものはメモリセルトランジスタMT(MT0~MT7)として機能する。複数のトランジスタのうち、配線層533と交差している部分にあるものは選択トランジスタST2として機能する。
【0056】
メモリホール534の上方にはビット線BLとして機能する配線層616が形成されている。メモリホール534の上端はコンタクトプラグ539を介して配線層616に接続されている。
図7に示される構造と同様の構造が、図7の紙面の奥行き方向に沿って複数配列されている。図7の紙面の奥行き方向に沿って一列に並ぶ複数のNANDストリングNSの集合によって、1つのストリングユニットSUが形成されている。
【0057】
半導体基板40と導電体層520(ソース線SL)とは離間して配置されており、両者の間に周辺回路PERの一部が配置されている。周辺回路PERは、メモリセルアレイ21におけるデータの書き込み動作や読み出し動作、及び消去動作等を実現するために設けられる回路である。図5に示されるセンスアンプ28、ロウデコーダ27、及び電圧生成回路26等は周辺回路PERの一部となっている。
【0058】
周辺回路PERは、半導体基板40の上面に形成されたトランジスタTRと、複数の導電体611~615とを含む。導電体611~615は、例えば金属のような導体により形成された配線層である。導電体611~615は、複数の高さ位置に分布するように形成されており、コンタクト620~623を介して互いに電気的に接続されている。導電体615はコンタクト624を介して配線層616(ビット線BL)に電気的に接続されている。
【0059】
1.6 メモリセルトランジスタの閾値分布
図8は、メモリセルトランジスタMTの閾値分布等を模式的に示す図である。図8の中段にある図は、メモリセルトランジスタMTの閾値電圧(横軸)と、メモリセルトランジスタMTの個数(縦軸)との対応関係を表している。
【0060】
本実施形態のようにTLC方式を採用した場合においては、複数のメモリセルトランジスタMTは、図8の中段に示されるように、8つの閾値分布を形成する。この8個の閾値分布(書き込みレベル)のことを、閾値電圧の低い方から順に“ER”レベル、“A”レベル、“B”レベル、“C”レベル、“D”レベル、“E”レベル、“F”レベル、“G”レベルと称する。図8の上段にある表は、閾値電圧の各レベルのそれぞれに対応して、割り当てられている3ビットデータの例を表している。
【0061】
このように、本実施形態におけるメモリセルトランジスタMTの閾値電圧は、予め設定された8つの候補レベルのうちの1つをとり得るものとなっており、それぞれの候補レベルに対応して、上記のようにデータが割り当てられている。
隣り合う閾値分布の間には、それぞれ読み出し動作で使用される読み出し電圧が設定される。「読み出し電圧」とは、読み出し動作時において、読み出し対象となるメモリセルトランジスタMTに繋がるワード線WL、すなわち選択ワード線に対して印加される電圧である。読み出し動作では、読み出し対象となるメモリセルトランジスタMTの閾値電圧が、印加された読み出し電圧よりも高いか否かの判定結果に基づいてデータが決定される。例えば図8の下段の図において模式的に示されるように、メモリセルトランジスタMTの閾値電圧が“ER”レベル及び“A”レベルのいずれに含まれるかを判定する読み出し電圧VrAは、“ER”レベルにおける最大の閾値電圧と“A”レベルにおける最小の閾値電圧との間に設定される。その他の読み出し電圧VrB,VrC,VrD,VrE,VrF、及びVrGも、上記の読み出し電圧VrAと同様に設定される。
【0062】
最も高い閾値分布(例えば“G”レベル)の最大の閾値電圧よりも高い電圧には、読み出しパス電圧VPASS_READが設定される。読み出しパス電圧VPASS_READがゲートに印加されたメモリセルトランジスタMTは、記憶するデータに依らずにオン状態になる。
【0063】
以上に説明したようなデータの割り付けが適用された場合、読み出し動作において下位ビットの1ページデータ(下位ページデータ)は、読み出し電圧VrA及びVrEを用いた読み出し結果によって確定させることができる。中位ビットの1ページデータ(中位ページデータ)は、読み出し電圧VrB、VrD、及びVrFを用いた読み出し結果によって確定させることができる。上位ビットの1ページデータ(上位ページデータ)は、読み出し電圧VrC及びVrGを用いた読み出し結果によって確定させることができる。
【0064】
1.7 半導体記憶装置の読み出し動作
次に、半導体記憶装置2の読み出し動作の例について説明する。
図9は、読み出し動作時における各配線の電位の推移を示している。読み出し動作では、読み出し動作の対象となるメモリセルトランジスタMTを含むNANDストリングNSが選択される。あるいは、読み出し動作の対象となるページを含むストリングユニットSUが選択される。
【0065】
まず、ロウデコーダ27は、読み出し動作の対象としていずれかのブロックBLKを選択し、更にいずれかのストリングユニットSUを選択する。具体的には、選択されたストリングユニットSUにおけるセレクトゲート線SGD(選択セレクトゲート線SGDsel)、選択ブロックBLKにおける非選択ストリングユニットSUのセレクトゲート線SGD(非選択セレクトゲート線SGDusel)、及びセレクトゲート線SGSには、電圧生成回路26からロウデコーダ27を介して例えば5Vが印加される。これにより、選択ブロックBLKに含まれる選択トランジスタST1及び選択トランジスタST2はオン状態となる。また、読み出しの対象となるワード線WL(選択ワード線WLsel)、及びその他の選択ワード線(非選択ワード線WLusel)には、電圧生成回路26からロウデコーダ27を介して例えば読み出しパス電圧VPASS_READが印加される。読み出しパス電圧VPASS_READは、メモリセルトランジスタMTの閾値電圧に関わらず、メモリセルトランジスタMTをオンさせることができ、且つ閾定電圧は変化させない程度の電圧である。これにより、選択ストリングユニットSUであるか、非選択ストリングユニットSUであるかに関わらず、選択ブロックBLKに含まれる全てのNANDストリングNSにおいて電流が導通する。
【0066】
次に、読み出し動作の対象となるメモリセルトランジスタMTに繋がるワード線WL(選択ワード線WLsel)に対して、電圧生成回路26からロウデコーダ27を介して例えばVrAのような読み出し電圧Vrが印加される。それ以外のワード線(非選択ワード線WLusel)に対しては、読み出しパス電圧VPASS_READが印加される。
【0067】
また、選択セレクトゲート線SGDsel及びセレクトゲート線SGSに印加する電圧は維持しつつ、非選択セレクトゲート線SGDuselには、電圧生成回路26からロウデコーダ27を介して例えば電圧Vssが印加される。これにより、選択ストリングユニットSUに含まれる選択トランジスタST1はオン状態を維持するが、非選択ストリングユニットSUに含まれる選択トランジスタST1はオフ状態となる。なお、選択ストリングユニットSUであるか、非選択ストリングユニットSUであるかに関わらず、選択ブロックBLKに含まれる選択トランジスタST2はオン状態となる。
【0068】
これにより、非選択ストリングユニットSUに含まれるNANDストリングNSは、少なくとも選択トランジスタST1がオフ状態となるため、電流パスを形成しない。一方、選択ストリングユニットSUに含まれるNANDストリングNSは、選択ワード線WLselに印加される読み出し電圧VrとメモリセルトランジスタMTの閾値電圧との関係に応じて、電流パスを形成する、または形成しない。
【0069】
センスアンプ28は、選択されたNANDストリングNSに繋がるビット線BLに対して電圧を印加する。この状態で、センスアンプ28は、当該ビット線BLを流れる電流の値に基づいてデータの読み出しを行う。具体的には、読み出し動作の対象となるメモリセルトランジスタMTの閾値電圧が、当該メモリセルトランジスタMTに印加された読み出し電圧Vrよりも高いか否かを判定する。なお、データの読み出しは、ビット線BLを流れる電流の値に基づくのではなく、ビット線BLにおける電位の時間変化に基づいて行われてもよい。後者の場合、ビット線BLは、予め所定の電位となるようにプリチャージされる。
【0070】
1.8 メモリコントローラ1と半導体記憶装置2との間の信号の送受信
次に、半導体記憶装置2からデータを読み出す際にメモリコントローラ1と半導体記憶装置2との間で送受信される信号の例について説明する。
【0071】
図10に示されるように、読み出し動作時においては、メモリコントローラ1から半導体記憶装置2に向けて、データ信号DQ<7:0>として、「05h」、複数の「ADD」、及び「E0h」からなる信号が順に入力される。「05h」は、メモリセルアレイ21からのデータの読み出し動作を実行させるためのコマンドである。「ADD」は、データの読み出し元となるアドレスを指定する信号である。「E0h」は、読み出し動作を開始させるためのコマンドである。
【0072】
図10では、「E0h」が半導体記憶装置2に入力されたタイミングが時刻t0として示されている。時刻t0から所定期間が経過した時刻t1において、メモリコントローラ1は、リードイネーブル信号/REのトグルを開始させる。先に述べたように、リードイネーブル信号/REは、メモリコントローラ1が、半導体記憶装置2からデータを読み出すための信号であり、半導体記憶装置2の入出力用パッド群30に入力される。時刻t1以降は、リードイネーブル信号/REが、“H”レベルと“L”レベルとの間において交互に切り換えられる(トグルされる)。このように切り換えられるリードイネーブル信号/REのそれぞれが、データを読み出すための「読み出し信号」として用いられる。
【0073】
半導体記憶装置2は、リードイネーブル信号/REが切り換わる毎に(すなわち、それぞれの読み出し信号が入力される毎に)、データ信号DQ<7:0>としてデータを出力すると共に、データストローブ信号DQSを“H”レベルと“L”レベルとの間で切り換える。図10においては、データ信号DQ<7:0>として出力されるデータのそれぞれが「D」として示されている。また、最初のデータが出力され、データストローブ信号DQSが切り換わるタイミングが、時刻t2として示されている。メモリコントローラ1から入力されるリードイネーブル信号/REの切り換えと、半導体記憶装置2から出力されるデータストローブ信号DQSの切り換えとの対応関係が、図10では点線の矢印で示されている。
【0074】
なお、半導体記憶装置2からの読み出しデータの出力は、1つのデータを、偶数ビットからなるイーブンデータと、奇数ビットからなるオッドデータとに分けた上で、それぞれを交互に出力することで行われる。図10において「D」と示されるそれぞれのデータは、イーブンデータ及びオッドデータのいずれかとして出力されるものである。
【0075】
メモリコントローラ1のメモリインターフェイス15は、半導体記憶装置2から送信されるデータ信号DQ<7:0>を受信すると、データ信号DQ<7:0>からデータを取得する。具体的には、メモリインターフェイス15は、データ信号DQ<7:0>のうちの一つであるデータ信号DQ<0>として、例えば図11に示されるように推移する信号を半導体記憶装置2から受信した場合、データストローブ信号DQSに基づいて設定される検出タイミングt20,t21,t22,・・・においてデータ信号DQ<0>と判定電圧Vthとを比較する。検出タイミングt20,t21,t22,・・・は、例えばデータストローブ信号DQSの位相を90度ずらした信号の立ち上がりのタイミング及び立ち下がりタイミングとして設定される。メモリインターフェイス15は、データ信号DQ<0>が判定電圧Vth以下である場合には“0”のデータであると判定し、データ信号DQ<0>が判定電圧Vthよりも大きい場合には“1”のデータであると判定する。理想的な状態においては、“0”のデータ“L”レベルの電圧に対応し、“1”のデータは“H”レベルの電圧に対応する。なお、論理データと電圧レベルとの対応はこれに限られず、異なる定義が用いられてもよい。
【0076】
なお、データ信号DQ<0>の“H”レベルが1.2Vであり、且つ“L”レベルが0Vである場合、判定電圧Vthは例えば0.6Vに設定される。本実施形態では、0.6Vが判定電圧Vthの基準電圧に相当する。
一方、本実施形態のメモリシステム3において、メモリコントローラ(コントローラチップ)1と半導体記憶装置(メモリチップ)2とは、図3及び図4に示されるように、ボンディングワイヤBを介して接続されている。この場合、メモリコントローラ1と半導体記憶装置1との間の信号経路には寄生容量や寄生抵抗が存在する。そのため、図11に示されるように、データ信号DQ<0>の立ち上がりエッジ及び立ち下がりエッジは理想的な垂直状態にならず、若干の傾きを有する。違う言い方をすると、データ信号DQ<0>が“L”レベルと“H”レベルとの間で遷移するには若干の時間を要する。
【0077】
ところで、このようなメモリシステム3では、その動作の高速化のためにデータレートが高く(信号の周期が短く)設定される傾向にある。データレートが高く設定されると、データ信号DQ<0>の波形が劣化することにより、データの読み出しに誤りが発生する可能性がある。
図12は、データレートを高くした(信号の周期を短くした)場合のデータ信号DQ<0>の波形の一例を示したものである。なお、図12において、時刻t30~t41は、図中に示されるデータ信号DQ<0>の各データを示す信号が切り替わるタイミング、すなわち図10に示される“D”と“D”との境界のタイミングを示している。また、図12には、各データが“0”及び“1”のいずれであるかを示している。
【0078】
図12に示されるように、時刻t30~時刻t33までの期間、データ信号DQ<0>に含まれるデータとして“0”が連続したような場合、データ信号DQ<0>は0Vで推移する。その後、データ信号DQ<0>に含まれるデータが“1”、“0”の順で変化したような場合、データ信号DQ<0>は、時刻t34で所定電圧V1まで上昇した後に、時刻t35で0Vまで低下する。電圧V1は、実際の“H”レベルの電圧である1.2Vよりも低い電圧である。これは、データレートが高くなると(信号の周期が短くなると)、データ信号DQ<0>が“H”レベルの電圧まで上がりきる前に、データ信号DQ<0>が“L”レベルの電圧に向かって変化するためである。
【0079】
続いて、時刻t35から時刻t39までの期間、データ信号DQ<0>に含まれるデータとして“1”が連続したような場合、データ信号DQ<0>は1.2Vまで上昇した後、その電圧値を維持したまま推移する。その後、データ信号DQ<0>に含まれるデータが“0”、“1”の順で変化したような場合、データ信号DQ<0>は、時刻t40で所定電圧V2まで低下した後に、時刻t41で1.2Vまで上昇する。電圧V2は、実際の“L”レベルの電圧である0Vよりも高い電圧である。
【0080】
このようなデータ信号DQ<0>の信号波形のアナログ特性的な歪みが、データの読み出しに誤りを生じさせる要因となる。例えば、時刻t32から時刻t34までの期間、及び時刻t39から時刻t41までの期間は共に、データ信号DQ<0>に含まれるデータが“0”から“1”に切り替わったときのデータ信号DQ<0>の波形を示している。それぞれの期間の波形を比較した場合、時刻t33から時刻t34までの期間においてデータ信号DQ<0>が判定電圧Vthに達するタイミングは、時刻t40から時刻t41の期間においてデータ信号DQ<0>が判定電圧Vthに達するタイミングよりも若干遅れることになる。これは、時刻t33から時刻t34までの期間はデータ信号DQ<0>の波形が0Vから上昇を開始しているのに対して、時刻t40から時刻t41までの期間はデータ信号DQ<0>の波形がV1から上昇を開始しているためである。このような判定電圧Vthに達するタイミングの相違に起因して、メモリコントローラ1がデータ信号DQ<0>からデータを誤って取得する可能性がある。例えば図12に示される例では、時刻t33から時刻t34までの期間ではデータ信号DQ<0>が判定電圧Vthを超えるタイミングが若干遅れることにより、メモリコントローラ1が、本来のデータは“1”であるにも関わらず、“0”のデータを取得する可能性が高くなり、尤度が低下する。同様に、時刻t39から時刻t40までの期間ではデータ信号DQ<0>が判定電圧Vthに達するタイミングが若干遅れるため、メモリコントローラ1が、本来のデータは“0”であるにも関わらず、“1”のデータを取得する可能性が高くなり、尤度が低下する。
【0081】
また、上記のようなデータ信号DQ<0>の信号波形の歪み以外にも、データの読み出しに誤りを生じさせる要因が存在する。複数の要因には、例えばデータストローブ信号DQSの歪みや、判定電圧Vthのずれがある。
図13(A)に破線で示されるように、データストローブ信号DQSのデューティ値は、通常、50%に設定されているが、何らかの要因によりデューティ値が50%からずれる可能性がある。例えば図13(A)に示されるようにデューティ値が50%よりも小さくなったような場合、データストローブ信号DQSの立ち下がりのタイミングが時刻t51から時刻t50に早まることになる。上述の通り、データ信号DQ<0>からのデータの検出タイミングは、例えばデータストローブ信号DQSの立ち下がりのタイミングに基づいて設定されるため、データストローブ信号DQSの立ち下がりのタイミングが早まった場合、データの検出タイミングも早まることになる。この場合、例えばデータが“1”から“0”に変化するような状況では、データ信号DQ<0>が判定電圧Vthよりも低くなる前にデータの検出が行われることにより、メモリコントローラ1が、本来のデータは“0”であるにも関わらず、“1”のデータを取得する可能性があり、尤度が低下する。
【0082】
一方、図13(B)に示されるように、判定電圧Vthは、通常、0.6Vに設定されているが、電源電圧の変化や温度の変化等により判定電圧Vthがずれる可能性がある。例えば図13(B)に示されるように判定電圧Vthが0.6Vよりも高い電圧Vth10に変化したような場合、データ信号DQ<0>の電圧が判定電圧Vth以下であると判定される可能性が高くなる。すなわち、データ信号DQ<0>が“L”レベルの信号であると判定される可能性が高くなる。結果的に、メモリコントローラ1が、本来のデータは“1”であるにも関わらず、“0”のデータを取得する可能性が高くなり、尤度が低下する。
【0083】
以上のように、データ信号DQ<7:0>からデータを検出する際には、データ信号DQ<7:0>の波形の歪み、データストローブ信号DQSのデューティ値のずれ、及び判定電圧Vthがずれ等の影響を受けて誤りが生じる可能性があり、尤度が低下する。これを考慮して、本実施形態のメモリシステム3では、このようなデータの誤りを、ECC回路14による誤り訂正処理で訂正することにより、データの欠損を補完することが可能である。
【0084】
以下、本実施形態のメモリシステム3によるデータの誤りを訂正する構成について具体的に説明する。
1.9 メモリシステムの回路構成
図14は、メモリシステム3の回路構成を示したものである。なお、図14には、半導体記憶装置2からのデータの読み出しに関連する構成のみが図示されており、例えば半導体記憶装置2へのデータの書き込みに関連する構成の図示は省略されている。
【0085】
図14に示されるように、メモリコントローラ1のメモリインターフェイス15は、インターフェイス回路70と、PHY回路80とを備えている。本実施形態では、メモリインターフェイス15がインターフェイス部に相当する。
インターフェイス回路70は、ドライバ回路71と、レシーバ回路72,730~737とを備えている。
【0086】
ドライバ回路71は、PHY回路80のPLL(Phase Locked Loop)回路(位相同期回路)81により生成されるクロック信号をリードイネーブル信号/REに変換するとともに、変換されたリードイネーブル信号/REを半導体記憶装置2に送信する。
【0087】
レシーバ回路72は、半導体記憶装置2から送信されるデータストローブ信号DQSを受信するとともに、受信したデータストローブ信号DQSをPHY回路80に出力する。
レシーバ回路730~737は、半導体記憶装置2から送信されるデータ信号DQ<7:0>を受信する。なお、図14ではレシーバ回路731~736の図示が省略されている。レシーバ回路730~737は、データ信号DQ<7:0>に含まれるデータのビット数に応じた数だけ設けられている。本実施形態では、データ信号DQ<7:0>が8ビットのパラレルデータを含んでいるため、インターフェイス回路70には8個のレシーバ回路730~737が設けられている。各レシーバ回路730~737は、半導体記憶装置2から送信されるデータ信号DQ<7:0>と、PHY回路80の電圧生成回路82により生成される判定電圧Vthとをそれぞれ比較して、データ信号DQ<7:0>から“0”又は“1”のデータを取得する。例えば、レシーバ回路730は、データ信号DQ<7:0>のうちの一つであるデータ信号DQ<0>と判定電圧Vthとを比較することにより、データ信号DQ<0>からデータを取得する。各レシーバ回路730~737は、取得したデータをPHY回路80に出力する。
【0088】
PHY回路80は、PLL回路81と、電圧生成回路82と、サンプラ回路830~837と、リードFIFO(First In First Out)回路84と、デューティ検出回路85と、データカウンタ回路860~867と、電圧検出回路87とを備えている。
【0089】
PLL回路81は、所定の周波数を有するクロック信号を間欠的にドライバ回路71及びリードFIFO回路84に出力する。
サンプラ回路830~837は、複数のレシーバ回路730~737のそれぞれに対応するように複数設けられている。なお、図14では、サンプラ回路831~836の図示が省略されている。サンプラ回路830~837には、レシーバ回路730~737から出力されるデータがそれぞれ入力されるとともに、レシーバ回路72により受信されたデータストローブ信号DQSが入力されている。サンプラ回路830~837は、データストローブ信号DQSに基づくタイミングで、レシーバ回路730~737からそれぞれ出力されるデータをサンプリングすることにより、データ信号DQ<7:0>に対応したデータD0~D7をそれぞれ出力する。例えば、サンプラ回路830は、データストローブ信号DQSを90度だけ位相をずらした信号の立ち上がり及び立ち下がりのタイミングに基づいて、レシーバ回路730から出力されるデータをサンプリングすることにより、データ信号DQ<0>に対応したデータD0として“0”又は“1”のデータをリードFIFO回路84に出力する。他のサンプラ回路831~837も同様に動作して、サンプリングされたデータD1~D7をリードFIFO回路84に出力する。
【0090】
リードFIFO回路84はバッファ回路である。リードFIFO回路84は、各サンプラ回路830~837からそれぞれ出力されるデータD0~D7をFIFO形式で記憶する。リードFIFO回路84は、入力された順番にデータD0~D7をECC回路14に送信する。これにより、半導体記憶装置2から読み出されたデータがECC回路14に入力される。
【0091】
デューティ検出回路85は、レシーバ回路72から出力されるデータストローブ信号DQSのデューティ値を検出するとともに、検出されたデューティ値の情報をECC回路14に送信する。
データカウンタ回路860~867は、複数のサンプラ回路830~837のそれぞれに対応するように設けられている。なお、図14では、データカウンタ回路861~866の図示が省略されている。データカウンタ回路860~867は、サンプラ回路830~837からそれぞれ出力されるデータD0~D7の値を監視するとともに、同一の値が連続している場合には、その値の連続数の情報をECC回路14に送信する。例えば、データカウンタ回路860は、サンプラ回路830からデータD0の値として“1”、“0”、“0”、“0”のようなパターンの値が出力された場合には、それらの値に対応する連続数の情報として「1」、「1」、「2」、「3」という情報をECC回路14に送信する。また、データカウンタ回路860は、サンプラ回路830からデータD0として“0”、“1”、“1”、“1”のようなパターンの値が出力された場合にも、連続数の情報として「3」という情報をECC回路14に送信する。データカウンタ回路860は、サンプラ回路830からデータD0として“1”、“0”、“1”、“0”のようなパターンのデータが出力された場合には、連続数の情報として「1」、「1」、「1」、「1」という情報をECC回路14に送信する。他のデータカウンタ回路861~867も同様に動作する。
【0092】
電圧検出回路87は、電圧生成回路82により生成される判定電圧Vthの電圧値を検出するとともに、検出された判定電圧Vthの電圧値の情報をECC回路14に送信する。
本実施形態では、データストローブ信号DQSのデューティ値、データD0~D7の連続数、及び判定電圧Vthの電圧値が、データ信号DQ<7:0>からのデータの取得に影響を及ぼすパラメータに相当する。また、デューティ検出回路85、データカウンタ回路860~867、及び電圧検出回路87が、それらのパラメータを取得する取得部90に相当する。
【0093】
ECC回路14は、半導体記憶装置2から受信したデータに対してECCを用いたエラー検出処理及びエラー訂正処理を実行する。
半導体記憶装置2がTLC方式を採用している場合、メモリセルトランジスタMTの閾値電圧の分布は、実際には図15に示されるように、“1”である閾値電圧の分布A1と、“0”である閾値電圧の分布A0とに重なりが生じる可能性がある。このような場合、図15に示されるように各分布A1,A0の中央が読み出し電圧Vrとして設定されている場合、読み出し電圧Vrに基づいてメモリセルトランジスタMTから読み出されたデータが“1”である場合、そのデータが実際に“1”である確率は例えば90%となり、そのデータが実際は“0”である確率は10%となる。同様に、読み出し電圧Vrに基づいてメモリセルトランジスタMTから読み出されたデータが“0”である場合、そのデータが実際に“0”である確率は例えば90%となり、そのデータが実際は“1”である確率は10%となる。このように、メモリセルトランジスタMTの閾値電圧の分布が図15に示されるような分布を有している場合、半導体記憶装置2から読み出されるデータにはエラーが含まれている可能性がある。
【0094】
ECC回路14は、半導体記憶装置2から読み出されたデータに対してエラー検出処理及びエラー訂正処理を実行することにより、読み出されたデータのエラーを検出及び訂正する。ECC回路14は、エラー検出処理及びエラー訂正処理として、“0”又は“1”の確からしさを示す尤度情報PLを用いた軟判定に基づくエラー検出処理及びエラー訂正処理を実行する。エラー訂正符号としては、例えばLDPC(Low-Density Parity-Check)符号が用いられる。尤度情報PLとしては、“0”又は“1”の確からしさを百分率の値で表す情報が用いられている。例えば、尤度情報PLが100%である場合には、データが確実に“0”又は“1”であることを意味する。また、尤度情報PLが90%である場合には、データが“0”である確率が90%であり、且つデータが“1”である確率が10%であるか、あるいはデータが“1”である確率が90%であり、且つデータが“0”である確率が10%であることを意味する。なお、尤度情報PLとしては、百分率の値に限らず、例えば対数尤度比(Log Likelihood Ratio:LLR)等を用いてもよい。
【0095】
図14に示されるように、ECC回路14は、尤度情報保持部140と、尤度情報補正部141と、復号部142と、FTL(Flash Translation Layer)143とを備えている。
復号部142は、半導体記憶装置2から読み出されたデータを復号して、半導体記憶装置2に書き込まれた符号語を復元する。その際、復号部142は、尤度情報PLを用いたLDPC符号の軟判定アルゴリズムに基づいて、読み出されたデータの誤り訂正を行う。復号部142により復号されたデータはFTL143及びホストインターフェイス13を介してホストに送信される。FTL143は、半導体記憶装置2のデータ管理及びブロック管理を行うように構成されている。本実施形態では、復号部142が、データの誤り訂正処理を行う誤り訂正部に相当する。
【0096】
尤度情報保持部140には、復号部142に用いられる尤度情報PLの基本情報である基本尤度情報PLbが記憶されている。基本尤度情報PLbは、例えば半導体記憶装置2のメモリセルトランジスタMTが図15に示されるような閾値電圧の分布を有している場合、90%という値に予め設定されており、尤度情報保持部140に記憶されている。基本尤度情報PLbは例えば半導体記憶装置2に格納されている。メモリコントローラ1のプロセッサ12は、基本尤度情報PLbを半導体記憶装置2に格納するとともに、半導体記憶装置2に格納されている基本尤度情報PLbをRAM11にキャッシュして使用する。この場合、尤度情報保持部140はプロセッサ12及びRAM11により実現される。
【0097】
尤度情報補正部141は、デューティ検出回路85、データカウンタ回路860~867、及び電圧検出回路87からそれぞれ送信される情報に基づいて基本尤度情報PLbを補正するとともに、補正された尤度情報PLを復号部142に送信する。復号部142は、尤度情報補正部141により補正された尤度情報PLを用いて誤り訂正処理を行う。尤度情報補正部141は、ハードウェア回路により実現されてもよいし、半導体記憶装置2に格納されているファームウェアをプロセッサ12が実行することにより実現されてもよい。
【0098】
図16は、尤度情報補正部141により実行される基本尤度情報PLbの補正処理の一例を示したものである。なお、以下では、データD0の尤度情報PLを補正する場合を例に挙げて説明する。
尤度情報補正部141は、データカウンタ回路860から送信されるデータの連続数の情報に基づいて第1補正値ΔPL1を演算する。例えば、尤度情報補正部141は、データカウンタ回路860から送信されるデータの連続数の情報に負の符号を付した値を第1補正値ΔPL1として設定する。例えばデータD0として、図16に示されるようなデータd1~d9が半導体記憶装置2から順次読み出されたとする。このとき、データカウンタ回路860は、データd1~d4が“0”のデータで連続している場合、データの連続数の情報として「3」という情報を出力する。そのため、尤度情報補正部141は、データカウンタ回路860から出力される連続数の情報に負の符号を付した「-3」を第1補正値ΔPL1として設定する。このように“0”というデータが並んでいるような場合、図12(A)を用いて説明した通り、例えば“1”のデータに切り替わる直前の“0”のデータに関しては、実際は“1”のデータであるにも関わらず“0”のデータとして誤って取得される可能性がある。すなわち、データの確からしさが低下することから、基本尤度情報PLbを減少補正するために、第1補正値ΔPL1を負の値に設定する。また、データを誤って取得する確率は、連続するデータの数が多くなるほど高まる。そのため、尤度情報補正部141は、データの連続数が多くなるほど、第1補正値ΔPL1をより減少させる。なお、尤度情報補正部141は、例えば第1補正値ΔPL1の下限値を「-3」に設定してもよい。
【0099】
尤度情報補正部141は、デューティ検出回路85により検出されたデータストローブ信号DQSのデューティ値に基づいて第2補正値ΔPL2を演算する。例えば、尤度情報補正部141は、デューティ検出回路85により検出されたデューティ値が50%であるか否かを判定する。尤度情報補正部141は、デューティ検出回路85により検出されたデューティ値が50%でない場合には、ずれた立ち上がりエッジ及び/又は立ち下がりエッジのタイミングにおけるデータに対応する尤度情報を低下させる。例えば、データストローブ信号DQSの立ち上がりエッジのタイミングには変化が無いものとし、立ち下がりエッジのタイミングが変化するものと仮定すると、尤度情報補正部141は、データd1~d9のうち、奇数番目のデータd1、d3、d5、d7、d9に対応する尤度情報を維持しつつ偶数番目のデータd2、d4、d6、d8に対応する尤度情報を低下させる。例えば、尤度情報補正部141は、図16に示されるように、偶数番目のデータd2、d4、d6、d8に対応した第2補正値ΔPL2を「-1」に設定する。
【0100】
なお、尤度情報補正部141は、立ち上がりエッジ及び/又は立ち下がりエッジのタイミングに応じて、第2補正値ΔPL2の調整方法を変更してもよい。例えば、データストローブ信号DQSの立ち下がりエッジのタイミングには変化が無いものとし、立ち上がりエッジのタイミングが変化するものと仮定すると、尤度情報補正部141は、データd1~d9のうち、奇数番目のデータd1、d3、d5、d7、d9に対応する尤度情報を低下させつつ、偶数番目のデータd2、d4、d6、d8に対応する尤度情報を維持してもよい。また、データストローブ信号DQSの立ち上がりエッジのタイミングと立ち下がりエッジのタイミングとがそれぞれ変化している場合には、その変化の度合いに応じて、奇数番目のデータd1、d3、d5、d7、d9に対応する尤度情報と、偶数番目のデータd2、d4、d6、d8に対応する尤度情報とを、それぞれ、低下させてもよい。この場合、奇数番目のデータd1、d3、d5、d7、d9に対応する尤度情報の低下量と、偶数番目のデータd2、d4、d6、d8に対応する尤度情報の低下量とは、同じであってもよいし、異なっていてもよい。
【0101】
尤度情報補正部141は、電圧検出回路87により検出される判定電圧Vthに基づいて第3補正値ΔPL3を演算する。例えば、尤度情報補正部141は、判定電圧Vthが基準電圧(0.6V)からずれているか否かを判定する。尤度情報補正部141は、判定電圧Vthが基準電圧からずれている場合、そのずれ量に基づいて第3補正値ΔPL3を設定する。
【0102】
具体的には、尤度情報補正部141は、判定電圧Vthが「Vth>0.6V」を満たしている場合には、“0”のデータに対する尤度情報が低くなるように、例えば“0”のデータに対応する第3補正値ΔPL3を「-1」に設定する。これは、図13(B)を用いて説明した通り、判定電圧Vthが高くなると、本来のデータは“1”であるにも関わらず、“0”のデータを取得する可能性が高くなるためである。一方、尤度情報補正部141は、“1”のデータに対する尤度情報が高くなるように、“1”のデータに対応する第3補正値ΔPL3を「+1」に設定する。これは、“0”のデータを取得する可能性が高い状況であるにも関わらず、“1”のデータが取得された場合には、そのデータの尤度が通常よりも高いためである。
【0103】
なお、尤度情報補正部141は、判定電圧Vthが「Vth>0.6V」を満たしている場合には、“0”のデータに対応する第3補正値ΔPL3を負の値に設定し、且つそれらの偏差(Vth-0.6)が大きくなるほど、その負の値の絶対値をより大きくしてもよい。また、尤度情報補正部141は、判定電圧Vthが「Vth>0.6V」を満たしている場合には、“1”のデータに対応する第3補正値ΔPL3を正の値に設定し、且つそれらの偏差(Vth-0.6)が大きくなるほど、その正の値の絶対値をより大きくしてもよい。
【0104】
さらに、尤度情報補正部141は、判定電圧Vthが「Vth<0.6V」を満たしているか否かを更に判定してもよい。この場合、尤度情報補正部141は、“0”のデータに対応する第3補正値ΔPL3を正の値に設定し、且つそれらの偏差(0.6-Vth)が大きくなるほど、その正の値の絶対値をより大きくする。また、尤度情報補正部141は、“1”のデータに対応する第3補正値ΔPL3を負の値に設定し、且つそれらの偏差(0.6-Vth)が大きくなるほど、その負の値の絶対値をより大きくする。
【0105】
尤度情報補正部141は、以上のようにして各補正値ΔPL1~ΔPL3を演算した後、基本尤度情報PLbに各補正値ΔPL1~ΔPL3を加算することにより、各データd1~d9に対応した補正後の尤度情報PLを演算する。例えばデータd4に関しては「PLb+ΔPL1+ΔPL1+ΔPL3」を演算することにより、データd4に対応した尤度情報PLとして「85」を演算するとともに、演算された尤度情報PLを復号部142に入力する。
【0106】
1.10 本実施形態のメモリシステムの作用及び効果
図14に示されるように、本実施形態のメモリコントローラ1は、メモリインターフェイス15と、尤度情報保持部140と、取得部90と、尤度情報補正部141と、復号部142とを備えている。メモリインターフェイス15のレシーバ回路730~737は、半導体記憶装置2からのデータの読み出し動作時に、データ信号DQ<7:0>を半導体記憶装置2から受信して、データ信号DQ<7:0>からデータD0~D7を取得する。尤度情報保持部140は、データD0~D7の尤度情報PLを保持する。取得部90は、データ信号DQ<7:0>からのデータの取得に影響を及ぼすパラメータを取得する。尤度情報補正部141は、取得部90により取得されたパラメータに基づいて尤度情報PLを補正する。復号部142は、尤度情報補正部141により補正された補正後の尤度情報PLに基づいて、半導体記憶装置2から読み出されたデータの誤り訂正処理を行う。
【0107】
この構成によれば、メモリコントローラ1においてデータ信号DQ<7:0>からデータを取得する際に発生するデータの欠損を、半導体記憶装置2に記憶されているデータにそもそも含まれている誤りと共に誤り訂正処理により一括で訂正することが可能となる。よって、データに含まれる誤りの訂正機能を高めることが可能である。また、データ信号DQ<7:0>からデータを取得する際に発生するデータの欠損を抑制する方法としては、例えば図12に示されるようなデータ信号DQ<7:0>の波形の歪みを補正する補正回路を別途設けるという方法も考えられるが、上記の構成によれば、そのような補正回路を設けることなくデータの欠損を訂正することができるため、構造を簡素化することが可能である。さらに、尤度情報PLを補正するだけであるため、復号部142の演算負荷が増加することはない。そればかりか、尤度情報PLの精度が上昇することにより、復号部142によるデータの復元能力や復元効率の向上を期待することが可能である。
【0108】
取得部90のデータカウンタ回路860~867は、データ信号DQ<7:0>からのデータの取得に影響を及ぼすパラメータとして、メモリインターフェイス15によりデータ信号DQ<7:0>から取得されたデータの連続性に関する情報を取得する。尤度情報補正部141は、取得されたデータが同一の値で連続している場合に尤度情報PLを補正する。具体的には、尤度情報補正部141は、データが同一の値で連続している数に基づいて尤度情報PLの補正量を変化させる。例えば尤度情報補正部141は、データが同一の値で連続している数が多くなるほど、より大きく尤度情報PLを補正する。
【0109】
この構成によれば、データ信号DQ<7:0>の歪みに起因して発生するデータの誤りを、より適切に訂正することが可能となる。
取得部90のデューティ検出回路85は、データ信号DQ<7:0>からのデータの取得に影響を及ぼすパラメータとして、データストローブ信号DQSのデューティ値を検出する。尤度情報補正部141は、データストローブ信号DQSのデューティ値に基づいて尤度情報PLを補正する。
【0110】
この構成によれば、データストローブ信号DQSのデューティ値の変化に起因して発生するデータの誤りを、より適切に訂正することが可能となる。
取得部90の電圧検出回路87は、データ信号DQ<7:0>からのデータの取得に影響を及ぼすパラメータとして、判定電圧Vthの電圧値の情報を取得する。尤度情報補正部141は、取得部90により取得された判定電圧Vthの電圧値が判定電圧Vthの基準値(例えば0.6V)からずれることに基づいて尤度情報PLを補正する。
【0111】
この構成によれば、判定電圧Vthの変動に起因して発生するデータの誤りを、より適切に訂正することが可能となる。
2 他の実施形態
本開示は上記の具体例に限定されるものではない。
【0112】
例えば、デューティ検出回路85は、データストローブ信号DQSに代えて、データ信号DQ<7:0>のデューティ値を検出してもよい。この場合、尤度情報補正部141は、データ信号DQ<7:0>のデューティ値に基づいて尤度情報PLを補正する。
データ信号DQ<7:0>の“H”レベルの電圧が1.2Vからずれた場合や、データ信号DQ<7:0>の“L”レベルの電圧が0Vからずれた場合にも、データ信号DQ<7:0>から、誤ったデータが取得される可能性がある。すなわち、データ信号DQ<7:0>からのデータの取得に影響を及ぼすパラメータとしては、“H”レベルの電圧のずれや、“L”レベルの電圧のずれ等も考えられる。そのため、尤度情報補正部141は、“H”レベルの電圧値の基準値からのずれや、“L”レベルの電圧値の基準値からのずれ等に基づいて尤度情報PLを補正してもよい。要は、尤度情報補正部141は、データ信号DQ<7:0>からのデータの取得に影響を及ぼす任意のパラメータに基づいて尤度情報PLを補正するものであればよい。
【0113】
半導体記憶装置2は、図7に示されるような構造に限らず、図17に示されるようなCBA(CMOS directly Bonded to Array)構造を有するものであってもよい。図17に示される半導体記憶装置2では、メモリセルアレイ110が設けられるメモリ部180と、周辺回路PERが設けられる制御回路部190とが別々に製造される。この半導体記憶装置2は、別々に製造されたメモリ部180と制御回路部190とを貼合面B1で貼り合わせて互いに接合させることにより構成される。貼合面B1に設けられる制御回路部190の貼合パッド800及びメモリ部180の貼合パッド801は互いに接合されている。メモリセルアレイ110と周辺回路PERとは貼合パッド800,801及びビア810,811を介して互いに電気的に接続されている。
【0114】
本発明のいくつかの実施形態を説明したが、これらの実施形態は例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施し得るものであり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれ、かつ特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0115】
1:メモリコントローラ、2:半導体記憶装置、3:メモリシステム、15:メモリインターフェイス(インターフェイス部)、85:デューティ検出回路(取得部)、87:電圧検出回路(取得部)、90:取得部、140:尤度情報保持部、141:尤度情報補正部、142:復号部(誤り訂正部)、860~867:データカウンタ回路(取得部)。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17