JP2011253250A - データ記憶装置及びメモリ調整方法 - Google Patents
データ記憶装置及びメモリ調整方法 Download PDFInfo
- Publication number
- JP2011253250A JP2011253250A JP2010125135A JP2010125135A JP2011253250A JP 2011253250 A JP2011253250 A JP 2011253250A JP 2010125135 A JP2010125135 A JP 2010125135A JP 2010125135 A JP2010125135 A JP 2010125135A JP 2011253250 A JP2011253250 A JP 2011253250A
- Authority
- JP
- Japan
- Prior art keywords
- calibration
- data
- storage device
- data storage
- register
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/20—Initialising; Data preset; Chip identification
Landscapes
- Memory System (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
【課題】複数チャネルのキャリブレーションの高速化を実現できるデータ記憶装置を提供することにある。
【解決手段】実施形態によれば、データ記憶装置は、インターフェースと制御モジュールとを具備する。インターフェースは、チャネル毎に、書き換え可能な不揮発性メモリの動作を制御する。制御モジュールは、キャリブレーションの実行時に、前記インターフェースを介して、指定したチャネルに対応する不揮発性メモリに対してキャリブレーション用データを同時に書き込むように制御する。
【選択図】図1
【解決手段】実施形態によれば、データ記憶装置は、インターフェースと制御モジュールとを具備する。インターフェースは、チャネル毎に、書き換え可能な不揮発性メモリの動作を制御する。制御モジュールは、キャリブレーションの実行時に、前記インターフェースを介して、指定したチャネルに対応する不揮発性メモリに対してキャリブレーション用データを同時に書き込むように制御する。
【選択図】図1
Description
本発明の実施形態は、不揮発性メモリを記憶媒体とするデータ記憶装置に関する。
従来、データ記憶装置として、書き換え可能な不揮発性メモリであるNANDフラッシュメモリ(以下、単にNANDメモリと表記する場合がある)を記憶媒体とするSSD(solid state drive)が開発されている。特に、サーバ用またはエンタープライズ向けのデータ記憶装置としては、大容量のSSDが実現されている。
一般的に、DRAMなどの高速ICメモリでは、データをラッチするためのストローブ信号のタイミング調整(キャリブレーションと呼ぶ)が必要である。NANDメモリは相対的に低速メモリであるが、大容量のSSDを実現するためには当該キャリブレーションが必要になっている。これは、1つのパッケージ内に多数のNANDメモリが集中的に配置され、かつパッケージ数の増加により、配線の引き廻しや負荷の増大で信号波形が鈍るなどのためである。
従来、大容量化のSSDは、NANDメモリのインターフェースのチャネル数が増加している。このため、特に製造工程の効率化を図るためには、複数チャネルに対するキャリブレーションの高速化が要求される。
本発明の目的は、複数チャネルのキャリブレーションの高速化を実現できるデータ記憶装置を提供することにある。
実施形態によれば、データ記憶装置は、インターフェース手段と制御手段とを具備する。インターフェース手段は、チャネル毎に、書き換え可能な不揮発性メモリの動作を制御する。制御手段は、キャリブレーションの実行時に、前記インターフェース手段を介して、指定したチャネルに対応する不揮発性メモリに対してキャリブレーション用データを同時に書き込むように制御する。
以下図面を参照して、実施形態を説明する。
[データ記憶装置の構成]
図1は、実施形態のデータ記憶装置の構成を示すブロック図である。
図1は、実施形態のデータ記憶装置の構成を示すブロック図である。
実施形態のデータ記憶装置は、NAND型フラッシュメモリを記憶媒体として使用するSSD(solid state drive)である。図1に示すように、データ記憶装置は、NANDメモリコントローラ(以下、単にコントローラと表記する)1と、複数のNAND型フラッシュメモリ(NANDメモリ)3と、DRAM(dynamic random access memory)8とを有する。
各NANDメモリ3は、チャネル(CHn)毎にパッケージ化されており、NAND型フラッシュメモリである。DRAM8は、バッファメモリとして動作し、後述するキャリブレーション用データを格納する。
コントローラ1は、複数チャネル(CHn)分のNANDメモリインターフェース(以下、単にインターフェースと表記する)2と、システム制御モジュール6と、DRAMインターフェース7と、ホストインターフェース9と、バス11とを有する。
システム制御モジュール6は、インターフェース2を介して、各NANDメモリ3に対するデータの書き込み動作及び各NANDメモリ3からのデータの読み出し動作を制御する。また、システム制御モジュール6は、後述するように、各NANDメモリ3のキャリブレーションを実行する。
DRAMインターフェース7は、DRAM8とバス11間のデータ転送を制御する。即ち、システム制御モジュール6は、DRAMインターフェース7を介してDRAM8にデータを書き込み、DRAM8からデータを読み出す。ホストインターフェース9は、ホストデバイス10とバス11間のデータ又はコマンドの転送を制御する。ホストデバイス10は、例えばパーソナルコンピュータである。
インターフェース2は、チャネル(CHn)毎に割り当てられた各NANDメモリ3の動作を制御する。インターフェース2は、インターフェース信号線を介して各NANDメモリ3と接続し、メモリ制御に必要なチップイネーブル信号20、アドレス信号21、リード/ライトデータ22、コントロール信号23のそれぞれを送受信する。インターフェース2は、SRAM(static random access memory)4及びDLL(delay-locked loop)5を有する。SRAM4はバッファメモリとして動作する。DLL5は、キャリブレーション(ストローブ信号のタイミング調整)を実行するために必要な補正処理を実行する。補正処理とは、データとストローブ信号との位相関係を補正する処理である。
図2は、システム制御モジュール6の構成を説明するためのブロック図である。
図2に示すように、システム制御モジュール6は、キャリブレーションの実行時に使用するレジスタ61〜65を有する。
レジスタ61は、複数のチャネル(CHn)の中から、アクセス対象のチャネルを指定するための情報(例えばチャネルコードCH1〜CHn)をセットする。なお、レジスタ61は複数のチャネルを指定できる。
レジスタ62は、インターフェース2に対して発行するコマンド(ここでは、ライトコマンド)をセットする。
レジスタ63は、レジスタ62でセットされたコマンドの発行を開始するためのフラグをセットする。
レジスタ64は、コマンドに応じたアクセス対象のデータを指定するアドレスをセットする。ここでは、レジスタ64は、ライトコマンドによりNANDメモリ3に書き込むデータ(ライトデータ)を指定するDRAM8のアドレスをセットする。DRAM8の指定アドレスには、キャリブレーション用データが格納される。
レジスタ65は、レジスタ64でセットされたアドレスで指定されるライトデータの書き込みを開始するためのフラグをセットする。
[データ記憶装置の動作]
次に、図3のフローチャートを参照して、実施形態のデータ記憶装置の動作として、キャリブレーション処理を説明する。
次に、図3のフローチャートを参照して、実施形態のデータ記憶装置の動作として、キャリブレーション処理を説明する。
例えば製造工程時に、ホストデバイス10は、キャリブレーション用ソフトウエアの実行に基づいて、コントローラ1に対してキャリブレーション実行の指示を行なう。このとき、ホストデバイス10は、キャリブレーション実行の指示に伴って、キャリブレーション用データをコントローラ1に送信する。システム制御モジュール6は、DRAMインターフェース7を介して、DRAM8にキャリブレーション用データを格納する。
システム制御モジュール6は、ホストデバイス10からの指示に基づいて、レジスタ61にアクセス対象のチャネルを指定するための情報(チャネルコードCH1〜CHn)をセットする(ブロック101)。システム制御モジュール6は、例えば、全てのチャネル(CH1〜CHn)を指定する。
さらに、システム制御モジュール6は、ホストデバイス10からの指示に基づいて、キャリブレーション用データを、チャネル毎のNANDメモリ3に書き込むためのライトコマンドをレジスタ62にセットする(ブロック102)。システム制御モジュール6は、レジスタ62にセットされたライトコマンドの発行を開始するためのフラグをレジスタ63にセットする。
システム制御モジュール6は、レジスタ63にセットされたフラグに基づいて、レジスタ61で指定されたチャネル(ここでは全チャネル)に対して同時にライトコマンドを発行する(ブロック103)。続いて、システム制御モジュール6は、ライトコマンドにより書き込むデータ(ライトデータ)を指定するためのDRAM8のアドレスを、レジスタ64にセットする(ブロック104)。このDRAM8のアドレスは、ホストデバイス10がDRAM8に格納したキャリブレーション用データの指定アドレスである。
さらに、システム制御モジュール6は、レジスタ65にライトデータの書き込みを開始するためのフラグをセットすることで、指定したチャネル(全チャネル)の各インターフェース2にデータ(キャリブレーション用データ)の書き込み開始を指示する(ブロック105)。これにより、指定したチャネル(全チャネル)に対応する各インターフェース2はそれぞれ、同時にチップイネーブル信号20をアサートし、対応するパッケージの各NANDメモリ3に対して、DRAM8から読み出したキャリブレーション用データを転送し、同時にそのデータを書き込む。
以上のようにして、コントローラ1は、ホストデバイス10からの指示に基づいて、キャリブレーション処理に必要なキャリブレーション用データを、指定したチャネル(ここでは全チャネル)に対応する各NANDメモリ3に対して同時に書き込むことができる。換言すれば、実施形態は、チャネル毎にキャリブレーション用データを用意して書き込む必要はなく、キャリブレーション対象の全てのチャネルに対して同時にキャリブレーション用データを書き込むことが可能となる。
従って、実施形態によれば、複数チャネル分のNANDメモリ3に対するキャリブレーション用データの書き込みを高速に行なうことができる。なお、実施形態では、全チャネルに対するキャリブレーション用データの書き込み動作について説明したが、コントローラ1は、レジスタ61によりアクセス対象のチャネルを任意に指定することができる。
以上のようなキャリブレーション用データの書き込みが終了した後に、ホストデバイス10は、コントローラ1に対してストローブ信号のタイミング調整を指示する。即ち、システム制御モジュール6は、指定したチャネル(全チャネル)の各インターフェース2に対して、各NANDメモリ3に書き込まれたキャリブレーション用データを読み出すリードコマンドを発行する(ブロック106)。
各インターフェース2は、各NANDメモリ3からキャリブレーション用データを読み出し、DLL5による補正処理を実行する(ブロック107)。各インターフェース2のDLL5は、ストローブ信号のタイミング調整、即ちデータとストローブ信号との位相関係を補正する補正処理を実行する。指定された全てのチャネルに対応するDLL5による補正処理が終了すると、キャリブレーション処理は終了となる(ブロック108)。
以上のようにして実施形態によれば、特に大容量のSSDの製造工程時に、複数チャネル分のNANDメモリに対するキャリブレーションを実行することができる。この場合、実施形態のコントローラ1であれば、複数チャネル分のNANDメモリに対して、キャリブレーション用データを同時に書き込むことができる。従って、複数チャネルのキャリブレーションを高速かつ効率的に行なうことが可能となる。これにより、結果として、大容量のSSDの製造工程の効率化を実現できる。
なお、実施形態は、記憶媒体としてNANDフラッシュメモリを想定したが、これに限ることなく、キャリブレーションの必要なメモリであれば、それ以外の型のメモリを使用するSSDにも適用できる。また、実施形態は、SSDの製造工程でのキャリブレーション処理に適用する場合について説明したが、これに限ることなく、SSDの修理工程時などのキャリブレーション処理にも適用できる。
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合わせてもよい。
1…NANDメモリコントローラ(コントローラ)、
2…NANDメモリインターフェース(インターフェース)、
3…NAND型フラッシュメモリ(NANDメモリ)、4…SRAM、
5…DLL(delay-locked loop)、6…システム制御モジュール、
7…DRAMインターフェース、8…DRAM、9…ホストインターフェース、
10…ホストデバイス、11…バス、61〜65…レジスタ。
2…NANDメモリインターフェース(インターフェース)、
3…NAND型フラッシュメモリ(NANDメモリ)、4…SRAM、
5…DLL(delay-locked loop)、6…システム制御モジュール、
7…DRAMインターフェース、8…DRAM、9…ホストインターフェース、
10…ホストデバイス、11…バス、61〜65…レジスタ。
本実施形態によれば、データ記憶装置は、チャネル毎に書き換え可能な不揮発性メモリと、インターフェース手段と、キャリブレーション用データを格納するメモリと、キャリブレーションの実行を制御する制御手段とを具備する。前記インターフェース手段は、前記不揮発性メモリの動作を制御する。前記制御手段は、前記キャリブレーションの実行時に、指定したチャネルの不揮発性メモリに対して前記キャリブレーション用データを書き込むためのコマンド及び前記メモリのアドレスを前記インターフェース手段に発行し、前記インターフェース手段を介して、前記メモリから読み出した前記キャリブレーション用データを前記指定したチャネルの不揮発性メモリに対して同時に書き込むように制御し、指定した全てのチャネルに対応する前記キャリブレーション用データの書き込み動作が終了した後に、前記キャリブレーション用データに基づいてキャリブレーションを実行させるように制御する。
Claims (10)
- チャネル毎に書き換え可能な不揮発性メモリの動作を制御するインターフェース手段と、
キャリブレーションの実行時に、前記インターフェース手段を介して、指定したチャネルに対応する不揮発性メモリに対してキャリブレーション用データを同時に書き込むように制御する制御手段と
を具備するデータ記憶装置。 - 前記制御手段は、
指定したチャネルに対応する前記インターフェース手段に対して、前記不揮発性メモリに前記キャリブレーション用データを書き込むことを指示する情報をセットするレジスタ手段を含む請求項1に記載のデータ記憶装置。 - 前記レジスタ手段は、
チャネルを指定するレジスタと、
前記キャリブレーション用データを指定するレジスタと
を含む請求項2に記載のデータ記憶装置。 - 前記キャリブレーション用データを格納するメモリを有し、
前記レジスタ手段は、
チャネルを指定するレジスタと、
前記メモリのアドレスをセットし、前記キャリブレーション用データを指定するレジスタと
を含む請求項2に記載のデータ記憶装置。 - 前記レジスタ手段は、
前記不揮発性メモリに前記キャリブレーション用データを書き込むことを、前記インターフェース手段に指示するコマンドをセットするレジスタを含む請求項3又は請求項4のいずれか1項に記載のデータ記憶装置。 - 前記制御手段は、
前記不揮発性メモリに書き込まれた前記キャリブレーション用データに基づいて、キャリブレーションを実行するキャリブレーション処理手段を含む請求項1から請求項5のいずれか1項に記載のデータ記憶装置。 - 前記制御手段は、
指定した全てのチャネルに対応するキャリブレーション用データの書き込み動作が終了した後に、前記キャリブレーション処理手段によるキャリブレーションを実行させる請求項6に記載のデータ記憶装置。 - 前記キャリブレーション処理手段は、
前記不揮発性メモリのデータとストローブ信号との位相関係を補正する補正手段を含む請求項6又は請求項7のいずれか1項に記載のデータ記憶装置。 - 前記不揮発性メモリは、フラッシュメモリである請求項1から請求項8のいずれか1項に記載のデータ記憶装置。
- チャネル毎に書き換え可能な不揮発性メモリのキャリブレーションを実行するメモリ調整方法であって、
キャリブレーションの実行時にチャネルを指定し、
前記指定したチャネルに対応する不揮発性メモリに対してキャリブレーション用データを同時に書き込むメモリ調整方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010125135A JP4861497B2 (ja) | 2010-05-31 | 2010-05-31 | データ記憶装置及びメモリ調整方法 |
US13/072,338 US8868823B2 (en) | 2010-05-31 | 2011-03-25 | Data storage apparatus and method of calibrating memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010125135A JP4861497B2 (ja) | 2010-05-31 | 2010-05-31 | データ記憶装置及びメモリ調整方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011253250A true JP2011253250A (ja) | 2011-12-15 |
JP4861497B2 JP4861497B2 (ja) | 2012-01-25 |
Family
ID=45023070
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010125135A Expired - Fee Related JP4861497B2 (ja) | 2010-05-31 | 2010-05-31 | データ記憶装置及びメモリ調整方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8868823B2 (ja) |
JP (1) | JP4861497B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9384820B1 (en) | 2015-06-12 | 2016-07-05 | Apple Inc. | Aligning calibration segments for increased availability of memory subsystem |
KR102340446B1 (ko) | 2017-09-08 | 2021-12-21 | 삼성전자주식회사 | 스토리지 장치 및 그것의 데이터 트레이닝 방법 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63282863A (ja) * | 1987-05-15 | 1988-11-18 | Fujitsu Ltd | メモリアクセス制御方式 |
JP2000259491A (ja) * | 1999-03-10 | 2000-09-22 | Nec Corp | メモリ初期化外部回路 |
US20020026600A1 (en) * | 2000-08-28 | 2002-02-28 | Tae-Sung Jung | Integrated circuit memory systems having programmable signal buffers for adjusting signal transmission delays and methods of operating same |
JP2006215991A (ja) * | 2005-02-07 | 2006-08-17 | Fujitsu Ltd | Dmaコントローラ |
WO2009084796A1 (en) * | 2007-12-27 | 2009-07-09 | Indilinx Co., Ltd. | Read enable signal adjusting flash memory device and read control method of flash memory device |
JP2009526323A (ja) * | 2006-02-09 | 2009-07-16 | メタラム インコーポレイテッド | メモリ回路システム及び方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050251305A1 (en) * | 2002-06-03 | 2005-11-10 | Junkei Sato | Electronic control apparatus |
DE102004015868A1 (de) | 2004-03-31 | 2005-10-27 | Micron Technology, Inc. | Rekonstruktion der Signalzeitgebung in integrierten Schaltungen |
KR100840441B1 (ko) | 2004-03-31 | 2008-06-20 | 마이크론 테크놀로지, 인크. | 집적 회로들에서의 신호 타이밍의 재구성 |
JP2007183816A (ja) | 2006-01-06 | 2007-07-19 | Elpida Memory Inc | メモリ制御装置 |
WO2007095080A2 (en) | 2006-02-09 | 2007-08-23 | Metaram, Inc. | Memory circuit system and method |
US20100005225A1 (en) * | 2006-07-26 | 2010-01-07 | Panasonic Corporation | Nonvolatile memory device, nonvolatile memory system, and host device |
-
2010
- 2010-05-31 JP JP2010125135A patent/JP4861497B2/ja not_active Expired - Fee Related
-
2011
- 2011-03-25 US US13/072,338 patent/US8868823B2/en not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63282863A (ja) * | 1987-05-15 | 1988-11-18 | Fujitsu Ltd | メモリアクセス制御方式 |
JP2000259491A (ja) * | 1999-03-10 | 2000-09-22 | Nec Corp | メモリ初期化外部回路 |
US20020026600A1 (en) * | 2000-08-28 | 2002-02-28 | Tae-Sung Jung | Integrated circuit memory systems having programmable signal buffers for adjusting signal transmission delays and methods of operating same |
JP2006215991A (ja) * | 2005-02-07 | 2006-08-17 | Fujitsu Ltd | Dmaコントローラ |
JP2009526323A (ja) * | 2006-02-09 | 2009-07-16 | メタラム インコーポレイテッド | メモリ回路システム及び方法 |
WO2009084796A1 (en) * | 2007-12-27 | 2009-07-09 | Indilinx Co., Ltd. | Read enable signal adjusting flash memory device and read control method of flash memory device |
Also Published As
Publication number | Publication date |
---|---|
US8868823B2 (en) | 2014-10-21 |
US20110296083A1 (en) | 2011-12-01 |
JP4861497B2 (ja) | 2012-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9734097B2 (en) | Apparatuses and methods for variable latency memory operations | |
JP6545786B2 (ja) | メモリデバイスの制御方法、及び、メモリデバイス | |
TWI744632B (zh) | 半導體設備及在一記憶體裝置上執行操作之方法 | |
US20120278539A1 (en) | Memory apparatus, memory control apparatus, and memory control method | |
TWI467574B (zh) | 記憶體儲存裝置、記憶體控制器與其資料傳輸方法 | |
US9607667B1 (en) | Memory device and electronic apparatus including the same | |
US11755509B2 (en) | Deterministic operation of storage class memory | |
US8719532B2 (en) | Transferring data between memories over a local bus | |
JP2006107691A (ja) | 半導体メモリ装置、そのパッケージ及びそれを用いたメモリカード | |
JP2012178194A (ja) | 不揮発性半導体記憶装置 | |
US20120278538A1 (en) | Data storage apparatus, memory control device, and method for controlling flash memories | |
US9455051B1 (en) | Compensation circuit and compensation method | |
JP4861497B2 (ja) | データ記憶装置及びメモリ調整方法 | |
JP2007310680A (ja) | 不揮発性記憶装置およびそのデータ転送方法 | |
JP2017157199A (ja) | メモリシステム及びそれを制御する方法 | |
JP4382131B2 (ja) | 半導体ディスク装置 | |
US7583548B2 (en) | Semiconductor memory apparatus for allocating different read/write operating time to every bank | |
JP2012113476A (ja) | データ記憶装置、メモリ制御装置及びメモリ制御方法 | |
JP2012088816A (ja) | メモリシステム | |
US10185510B2 (en) | Bank interleaving controller and semiconductor device including the same | |
JP2011013736A (ja) | 不揮発性記憶装置および不揮発性メモリコントローラ | |
US9571081B2 (en) | Strobe signal generation circuit and semiconductor apparatus using the same | |
KR101093620B1 (ko) | 낸드 플래시 메모리를 실장한 메모리 장치 및 그의 리드 오퍼레이션 방법 | |
JP3793542B2 (ja) | 半導体記憶装置 | |
JP2011221819A (ja) | パラメータ設定によるsdramコントローラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20111011 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111104 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141111 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141111 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |