JP2012113476A - Data storage device, memory control device, and memory control method - Google Patents
Data storage device, memory control device, and memory control method Download PDFInfo
- Publication number
- JP2012113476A JP2012113476A JP2010261174A JP2010261174A JP2012113476A JP 2012113476 A JP2012113476 A JP 2012113476A JP 2010261174 A JP2010261174 A JP 2010261174A JP 2010261174 A JP2010261174 A JP 2010261174A JP 2012113476 A JP2012113476 A JP 2012113476A
- Authority
- JP
- Japan
- Prior art keywords
- data
- channel
- error correction
- control means
- write
- 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.)
- Withdrawn
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
【課題】有効なデータが準備できないチャネルがある場合でも、ライト処理効率の低下を招くことなく、確実に誤り訂正符号データを生成できるデータ記憶装置を提供することにある。
【解決手段】実施形態によれば、データ記憶装置は、ライトコントローラと、誤り訂正コントローラと、データコントローラとを具備する。ライトコントローラは、複数チャネルの各不揮発性メモリにデータを並列に書き込む。誤り訂正コントローラは、前記ライトコントローラによる書き込み動作の前に、前記各チャネル毎に準備されるデータを使用して誤り訂正符号データを生成する。データコントローラは、不揮発性メモリの書き込み対象のデータが準備されないチャネルに対して、当該不揮発性メモリの初期値データを前記誤り訂正コントローラの生成処理に使用するデータとして準備する。
【選択図】図1An object of the present invention is to provide a data storage device that can reliably generate error correction code data without deteriorating write processing efficiency even when there is a channel for which valid data cannot be prepared.
According to an embodiment, a data storage device includes a write controller, an error correction controller, and a data controller. The write controller writes data in parallel to each of the non-volatile memories of a plurality of channels. The error correction controller generates error correction code data using data prepared for each channel before the write operation by the write controller. The data controller prepares the initial value data of the non-volatile memory as data to be used for the generation process of the error correction controller for a channel for which data to be written to the non-volatile memory is not prepared.
[Selection] Figure 1
Description
本発明の実施形態は、不揮発性メモリを記憶媒体とするデータ記憶装置に関する。 Embodiments described herein relate generally to a data storage device using a nonvolatile memory as a storage medium.
近年、データ記憶装置として、書き換え可能な不揮発性メモリであるNAND型フラッシュメモリ(以下、単にフラッシュメモリと表記する場合がある)を記憶媒体とするSSD(solid state drive)の開発が推進されている。 In recent years, development of an SSD (solid state drive) using a NAND-type flash memory (hereinafter sometimes simply referred to as a flash memory) as a data storage device as a storage medium has been promoted. .
一般的に、SSDでは、複数のチャネル単位に設けられる各フラッシュメモリに対して、データを並列に書き込むマルチチャネル方式のライト動作が行なわれる。このライト動作時に、各チャネルに書き込むデータ(ユーザデータ)を使用して、チャネル間で誤り訂正処理(ECC:error checking and correcting)が可能な誤り訂正符号データ(またはパリティデータ)が生成される。この誤り訂正符号データは、複数チャネルの中から設定されたECC用チャネルのフラッシュメモリに格納される。 In general, in SSD, a multi-channel write operation for writing data in parallel to each flash memory provided in a plurality of channels is performed. During this write operation, error correction code data (or parity data) that can be subjected to error checking and correction (ECC) between channels is generated using data (user data) written to each channel. This error correction code data is stored in the flash memory of the ECC channel set from among a plurality of channels.
従来のSSDにおいて、マルチチャネル方式のライト動作時に、全チャネルの中で書き込み対象として有効なデータが準備できないチャネルがある場合に、誤り訂正符号データを生成するために、一種の補間データを準備する必要がある。この場合、マルチチャネル方式のライト動作により、補間データは、当該チャネルのフラッシュメモリに書き込まれることになる。この補間データを書き込むライト動作は、ライトアクセス速度に関係するライト処理時間の増大や、フラッシュメモリの寿命に関係するライト回数の増大を招き、ライト処理効率の低下の要因となる。 In a conventional SSD, when there is a channel that cannot prepare effective data as a write target among all channels during a multi-channel write operation, a kind of interpolation data is prepared to generate error correction code data. There is a need. In this case, the interpolation data is written to the flash memory of the channel by the multi-channel write operation. This write operation for writing interpolated data causes an increase in write processing time related to the write access speed and an increase in the number of writes related to the life of the flash memory, which causes a decrease in write processing efficiency.
そこで、本発明の目的は、有効なデータが準備できないチャネルがある場合でも、ライト処理効率の低下を招くことなく、確実に誤り訂正符号データを生成できるデータ記憶装置を提供することにある。 Therefore, an object of the present invention is to provide a data storage device that can reliably generate error correction code data without deteriorating write processing efficiency even when there is a channel in which valid data cannot be prepared.
実施形態によれば、データ記憶装置は、ライト制御手段と、誤り訂正制御手段と、データ制御手段とを具備する。ライト制御手段は、複数チャネルの各不揮発性メモリにデータを並列に書き込む。誤り訂正制御手段は、前記ライト制御手段による書き込み動作の前に、前記各チャネル毎に準備されるデータを使用して誤り訂正符号データを生成する。データ制御手段は、不揮発性メモリの書き込み対象のデータが準備されないチャネルに対して、当該不揮発性メモリの初期値データを前記誤り訂正制御手段の生成処理に使用するデータとして準備する。 According to the embodiment, the data storage device includes a write control unit, an error correction control unit, and a data control unit. The write control means writes data in parallel to each of the non-volatile memories of a plurality of channels. The error correction control means generates error correction code data using data prepared for each channel before the write operation by the write control means. The data control means prepares the initial value data of the nonvolatile memory as data to be used for the generation process of the error correction control means for a channel for which data to be written to the nonvolatile memory is not prepared.
以下図面を参照して、実施形態を説明する。 Embodiments will be described below with reference to the drawings.
[データ記憶装置の構成]
図1は、実施形態のデータ記憶装置の構成を示すブロック図である。
[Configuration of data storage device]
FIG. 1 is a block diagram illustrating a configuration of a data storage device according to the embodiment.
図1に示すように、実施形態のデータ記憶装置はSSD(solid state drive)であり、SSDコントローラ10と、NAND型フラッシュメモリ(フラッシュメモリ)20と、DRAM(dynamic random access memory)からなるバッファメモリ21とを有する。
As shown in FIG. 1, the data storage device of the embodiment is an SSD (solid state drive), and is a buffer memory comprising an
フラッシュメモリ20は、SSDのデータ記憶媒体であり、複数のフラッシュメモリチップから構成されている。本実施形態のSSDは、便宜的に4チャネルCH0〜CH3のマルチチャネル方式であり、各チャネルCH0〜CH3のそれぞれに対応するフラッシュメモリ201〜204を有する。
The
SSDコントローラ10は、フラッシュメモリコントローラ11と、バッファマネージャモジュール12と、ホストインターフェースコントローラ13と、サブシステムモジュール14とを有する。
The
フラッシュメモリコントローラ11は、チャネルCH0〜CH3毎にフラッシュメモリ201〜204のリード/ライト動作の制御及びデータ転送制御を実行する(図2を参照)。バッファマネージャモジュール12は、バッファメモリ21を制御し、バッファメモリとのデータ転送を制御する。ホストインターフェースコントローラ13は、ホストインターフェース15を介して、ホストシステム30とSSDとのデータやコマンドの転送を制御する。ホストシステム30は、例えばパーソナルコンピュータや各種のデジタル機器のCPU等である。
The
サブシステムモジュール14は、マイクロプロセッサ(MPU)から構成されており、SSDコントローラ10の全体的制御を実行する。サブシステムモジュール14は、例えばホストシステム30からのコマンドに応じて、データのライト動作及びリード動作に必要なコマンドをフラッシュメモリコントローラ11に出力する。
The
(フラッシュメモリコントローラの構成)
図2に示すように、フラッシュメモリコントローラ11は、データ転送コントローラ(IOPSアクセラレーション・エンジン・モジュールとも呼ばれる)100と、チャネルCH0〜CH3毎のメモリコントローラ(以下、便宜的にNANDコントローラと表記する)101〜104と、チャネル間パリティコントローラ(以下、ECCコントローラと表記する)110とを含む。
(Configuration of flash memory controller)
As shown in FIG. 2, the
データ転送コントローラ100は、NANDコントローラ101〜104及びECCコントローラ110に対するデータ転送制御及び動作制御を実行する。NANDコントローラ101〜104はそれぞれ、チャネルCH0〜CH3毎のフラッシュメモリ201〜204に対するリード/ライトアクセス制御及びデータ転送制御を実行する。
The
ECCコントローラ110は、後述するように、チャネル間で誤り訂正処理(ECC:error checking and correcting)が可能な誤り訂正符号(error correcting code)データを生成する。誤り訂正符号データ(以下、ECCデータ)は、例えばパリティデータであり、ECCコントローラ110によるチャネル間の誤り訂正処理に使用される。
As will be described later, the
[フラッシュメモリコントローラの動作]
まず、マルチチャネル方式のSSDにおける通常のライト動作を説明する。
[Operation of flash memory controller]
First, a normal write operation in a multi-channel SSD will be described.
マルチチャネル方式のSSDでは、SSDコントローラ10は、ホストシステム30から発行されるライトコマンドに応じて、バッファメモリ21に格納される書き込み対象のデータをフラッシュメモリコントローラ11に転送する。
In the multi-channel SSD, the
フラッシュメモリコントローラ11では、図2に示すように、データ転送コントローラ100は、チャネルCH0〜CH3毎に書き込み対象として有効なデータが準備されると、NANDコントローラ101〜104に対してデータ転送制御信号120を出力し、ライト動作のためのデータ転送を指示する。NANDコントローラ101〜104は、準備されたデータをフラッシュメモリ201〜204に転送する。これにより、チャネルCH0〜CH3毎のフラッシュメモリ201〜204に対して、準備されたデータが並列に書き込まれる。
In the
ここで、本実施形態では、チャネルCH0〜CH2のNANDコントローラ101〜103には、バッファマネージャモジュール12から転送されるデータが有効なデータとして準備される。このデータは、ホストシステム30から転送されて、バッファメモリ21に格納されるユーザデータである。
In this embodiment, the data transferred from the
一方、チャネルCH3のNANDコントローラ104には、有効なデータとして、ECCコントローラ110により生成されたECCデータ(パリティデータ)が準備される。従って、他のフラッシュメモリ201〜203にデータが並列に書き込まれるときに、チャネルCH3のフラッシュメモリ204にはECCデータが書き込まれる。
On the other hand, ECC data (parity data) generated by the
ECCコントローラ110は、チャネルCH0〜CH2のNANDコントローラ101〜103に準備された各ユーザデータを使用して、チャネル間の誤り訂正処理に使用されるECCデータを生成し、チャネルCH3のNANDコントローラ104に転送する。
The
次に、図3及び図4のフローチャートを参照して、本実施形態のライト動作及びECCデータ生成処理を説明する。 Next, the write operation and ECC data generation processing of this embodiment will be described with reference to the flowcharts of FIGS.
本実施形態では、フラッシュコマンドの発行時におけるライト動作の場合について説明する。なお、図4に示すように、通常のライトコマンドの発行時には、前述の通常のライト動作が実行される(ブロック405)。 In the present embodiment, a case of a write operation when a flash command is issued will be described. As shown in FIG. 4, when a normal write command is issued, the above-described normal write operation is executed (block 405).
フラッシュコマンドは、例えば電源オフ時に、フラッシュメモリ201〜204に書き込まれていないデータを保護するために、サブシステムモジュール14のMPUから発行される(ブロック400のYES)。フラッシュメモリコントローラ11は、フラッシュコマンドが発行されると、書き込み対象として有効なデータが準備されていないチャネルが存在する場合でも、強制的に各チャネルに対してライト動作を実行させる。
The flash command is issued from the MPU of the
フラッシュメモリコントローラ11では、データ転送コントローラ100は、チャネルCH0〜CH2の中で、書き込み対象として有効なデータが準備されていないチャネル(ここではCH2とする)を検出する(ブロック401)。なお、前述したように、チャネルCH3は、有効なデータとしてECCデータが割り当てられるチャネルである。
In the
ここで、図3は、フラッシュコマンドの発行時におけるライト動作をステップ(STEP1,STEP2,STEP3)毎に示す概念図である。即ち、ステップSTEP1において、チャネルCH0,CH1のNANDコントローラ101,102には、有効なデータとしてユーザデータ301,302がそれぞれ準備されている。一方、チャネルCH2のNANDコントローラ103には、ユーザデータが準備されておらず、書き込み対象として有効なデータがない状態である。
FIG. 3 is a conceptual diagram showing the write operation for each step (STEP1, STEP2, STEP3) when the flash command is issued. That is, in step STEP1,
ECCコントローラ110は、フラッシュコマンドの発行に応じて、ECCデータを生成し、チャネルCH3のNANDコントローラ104に転送する処理を実行する(ステップSTEP2)。このとき、ECCコントローラ110は、データ転送コントローラ100からチャネルCH0〜CH2のデータの準備が完了されたことを通知される。これにより、ECCコントローラ110は、フラッシュメモリ201〜204に対するライト動作が行なわれる前に、ECCデータを生成してチャネルCH3のNANDコントローラ104に転送できる。
The
データ転送コントローラ100は、ユーザデータが準備されないチャネルCH2のNANDコントローラ103に対して、初期値データを準備する(ブロック402)。この初期値データとは、消去処理直後のフラッシュメモリの記憶状態であり、通常ではオール1の記憶値である。SSDでは、フラッシュメモリにデータを書き込む前に、消去処理が実行される。従って、ライト動作の直前では、フラッシュメモリは初期値(オール1)が記憶されている状態となる。
The
ECCコントローラ110は、チャネルCH0〜CH2において、書き込み対象のユーザデータ及び初期値データの準備が完了すると、これらのデータを使用してECCデータを生成する(ブロック403)。即ち、図3に示すように、ECCコントローラ110は、チャネルCH0,CH1の有効なデータであるユーザデータ301,302及び初期値データ303を使用して、ECCデータを生成してチャネルCH3のNANDコントローラ104に転送する(ステップSTEP2)。
When the preparation of user data to be written and initial value data is completed in the channels CH0 to CH2, the
データ転送コントローラ100は、チャネルCH0,CH1,CH3のNANDコントローラ101,102,104に対してデータ転送制御信号120を出力し、ライト動作のためのデータ転送を指示する(ブロック404)。
The
即ち、図3に示すように、NANDコントローラ101,102,104は、準備されたデータ301,302及びECCデータをフラッシュメモリ201,202,204に転送する(ステップSTEP3)。これにより、チャネルCH0,CH1,CH3のフラッシュメモリ201,202,204に対して、準備されたデータ301,302及びECCデータが並列に書き込まれる。
That is, as shown in FIG. 3, the
ここで、図3に示すように、チャネルCH2には書き込み対象として有効なデータは準備されていないため、当該チャネルCH2のフラッシュメモリ203には、ライト動作は実行されない。即ち、チャネルCH2のフラッシュメモリ203は、消去処理直後の記憶状態、即ち初期値データが記憶されている状態である。
Here, as shown in FIG. 3, since no valid data is prepared as a write target in the channel CH2, the write operation is not executed in the
ECCコントローラ110は、リード動作によりチャネルCH0〜CH3のフラッシュメモリ201〜204からデータが読み出されたときに、チャネルCH3のフラッシュメモリ204に格納されているECCデータを使用してチャネル間の誤り訂正処理を実行することができる。
The
以上のように本実施形態によれば、マルチチャネル方式のSSDにおいて、例えばフラッシュコマンドの発行時に、書き込み対象の有効なデータ(ユーザデータ)が準備されていないチャネルが存在する場合でも、当該チャネルに対していわば補間データとして初期値データを準備する。これにより、ECCコントローラ110は、各チャネルで準備された有効なデータと初期値データを使用して、チャネル間の誤り訂正処理に有効なECCデータを生成することができる。
As described above, according to the present embodiment, in a multi-channel SSD, for example, even when there is a channel for which valid data (user data) to be written is not prepared when a flash command is issued, In contrast, initial value data is prepared as interpolation data. Thereby, the
更に、本実施形態では、各チャネルのフラッシュメモリにデータを並列に書き込む場合に、書き込み対象の有効なデータが準備されていないチャネル(CH2)に対してはライト動作を実行する必要がない。即ち、当該チャネル(CH2)に準備されているデータは初期値データであるため、フラッシュメモリ(203)に対するライトアクセスは不要となる。従って、マルチチャネル方式のライト動作において、当該チャネル(CH2)のライト動作を省略できるため、結果としてライト動作の速度を高速化を実現することができる。また、フラッシュメモリに対するライト回数を削減できるため、フラッシュメモリの寿命も延命できる効果もある。 Furthermore, in this embodiment, when data is written in parallel to the flash memory of each channel, it is not necessary to perform a write operation for a channel (CH2) for which valid data to be written is not prepared. That is, since the data prepared for the channel (CH2) is the initial value data, the write access to the flash memory (203) becomes unnecessary. Accordingly, the write operation of the channel (CH2) can be omitted in the multi-channel write operation, and as a result, the speed of the write operation can be increased. In addition, since the number of writes to the flash memory can be reduced, there is an effect that the life of the flash memory can be extended.
即ち、補間データとして初期値データ以外の任意のデータを準備した場合、チャネル間の誤り訂正処理に有効なECCデータを生成するには、当該任意のデータをチャネル(CH2)のフラッシュメモリ(203)に書き込むことが必要となる。本実施形態では、補間データとして、フラッシュメモリ(203)に書き込む必要がない初期値データを使用するため、ライト動作を省略できる。換言すれば、初期値データは、ライト動作を実行せずに、そのフラッシュメモリから読み出すことができるデータである。 That is, when arbitrary data other than the initial value data is prepared as interpolation data, in order to generate ECC data effective for error correction processing between channels, the arbitrary data is stored in the flash memory (203) of the channel (CH2). It is necessary to write to. In the present embodiment, initial value data that does not need to be written to the flash memory (203) is used as the interpolation data, so that the write operation can be omitted. In other words, the initial value data is data that can be read from the flash memory without executing the write operation.
要するに、補間データとして初期値データを使用することにより、ライトアクセス速度に関係するライト処理時間を削減し、かつフラッシュメモリの寿命に関係するライト回数の削減を実現できるため、SSDのライト処理効率の向上を図ることができる。 In short, by using the initial value data as the interpolation data, the write processing time related to the write access speed can be reduced and the number of writes related to the life of the flash memory can be reduced. Improvements can be made.
なお、本実施形態において、初期値データは、データ転送コントローラ100により準備されるが、ECCコントローラ110により予め固定データとして用意されている構成でも良い。この場合には、ECCコントローラ110は、データ転送コントローラ100からデータが準備されていないチャネル(CH2)の通知に応じて、当該チャネル(CH2)の補間データとして予め用意された初期値データを使用してECCデータを生成する。
In the present embodiment, the initial value data is prepared by the
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。 Although several embodiments of the present invention have been described, these embodiments are presented by way of example and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the scope of the invention. These embodiments and modifications thereof are included in the scope and gist of the invention, and are included in the invention described in the claims and the equivalents thereof.
10…SSDコントローラ、11…フラッシュメモリコントローラ、
12…バッファマネージャモジュール、13…ホストインターフェースコントローラ、
14…サブシステムモジュール、15…ホストインターフェース、
20,201〜204…NAND型フラッシュメモリ、21…バッファメモリ(DRAM)、
30…ホストシステム、100…データ転送コントローラ、
101〜104…メモリコントローラ(NANDコントローラ)、
110…チャネル間パリティコントローラ(ECCコントローラ)。
10 ... SSD controller, 11 ... Flash memory controller,
12 ... Buffer manager module, 13 ... Host interface controller,
14 ... subsystem module, 15 ... host interface,
20, 201-204 ... NAND type flash memory, 21 ... buffer memory (DRAM),
30 ... Host system, 100 ... Data transfer controller,
101-104 ... Memory controller (NAND controller),
110: Inter-channel parity controller (ECC controller).
Claims (10)
前記ライト制御手段による書き込み動作の前に、前記各チャネル毎に準備されるデータを使用して誤り訂正符号データを生成する誤り訂正制御手段と、
不揮発性メモリの書き込み対象のデータが準備されないチャネルに対して、当該不揮発性メモリの初期値データを前記誤り訂正制御手段の生成処理に使用するデータとして準備するデータ制御手段と
を具備するデータ記憶装置。 Write control means for writing data in parallel to each of the non-volatile memories of a plurality of channels;
Error correction control means for generating error correction code data using data prepared for each channel before the write operation by the write control means;
A data storage device comprising data control means for preparing initial value data of the nonvolatile memory as data to be used for generation processing of the error correction control means for a channel for which data to be written to the nonvolatile memory is not prepared .
前記初期値データとして、前記不揮発性メモリに対する消去処理後の記憶値データを使用する請求項1に記載のデータ記憶装置。 The data control means includes
The data storage device according to claim 1, wherein stored value data after erasure processing on the nonvolatile memory is used as the initial value data.
前記ライト制御手段は、
前記書き込み対象のデータが準備されないチャネルを除く各チャネルの不揮発性メモリに対して、前記書き込み対象のデータ及び前記誤り訂正符号データを並列に書き込むように構成されている請求項1または請求項2のいずれか1項に記載のデータ記憶装置。 A non-volatile memory channel in which the error correction code data is written among the plurality of channels is set,
The light control means includes
The data to be written and the error correction code data are written in parallel to a nonvolatile memory of each channel except for a channel in which the data to be written is not prepared. The data storage device according to any one of the above.
前記ライト制御手段がフラッシュコマンドに応じたライト制御を実行するときに、前記初期値データを準備する処理を実行する請求項1から請求項3のいずれか1項に記載のデータ記憶装置。 The data control means includes
4. The data storage device according to claim 1, wherein when the write control unit executes a write control according to a flash command, a process for preparing the initial value data is executed. 5.
前記誤り訂正制御手段に対して、前記誤り訂正符号データの生成に必要なデータとして前記書き込み対象のデータ及び前記初期値データの準備が完了したことを通知する手段を含む請求項1から請求項4のいずれか1項に記載のデータ記憶装置。 The data control means includes
5. The apparatus according to claim 1, further comprising means for notifying the error correction control means that preparation of the data to be written and the initial value data has been completed as data necessary for generating the error correction code data. The data storage device according to any one of the above.
前記複数チャネルの各不揮発性メモリにデータを並列に書き込むライト制御手段と、
前記ライト制御手段による書き込み動作の前に、前記各チャネル毎に準備されるデータを使用して誤り訂正符号データを生成する誤り訂正制御手段と、
前記ライト制御手段に対して不揮発性メモリの書き込み対象のデータをチャネル毎に準備し、当該書き込み対象のデータを準備できないチャネルに対して不揮発性メモリの初期値データを準備するデータ制御手段と
を具備するメモリ制御装置。 A memory control device applied to a data storage device having a non-volatile memory of a plurality of channels,
Write control means for writing data in parallel to the nonvolatile memories of the plurality of channels;
Error correction control means for generating error correction code data using data prepared for each channel before the write operation by the write control means;
Data control means for preparing data to be written in the nonvolatile memory for each channel with respect to the write control means and preparing initial value data in the nonvolatile memory for a channel in which the data to be written cannot be prepared. Memory control device.
前記初期値データとして、前記不揮発性メモリに対する消去処理後の記憶値データを使用する請求項6に記載のメモリ制御装置。 The data control means includes
The memory control device according to claim 6, wherein stored value data after erasure processing for the nonvolatile memory is used as the initial value data.
前記ライト制御手段は、
前記書き込み対象のデータが準備されないチャネルを除く各チャネルの不揮発性メモリに対して、前記書き込み対象のデータ及び前記誤り訂正符号データを並列に書き込むように構成されている請求項6または請求項7のいずれか1項に記載のメモリ制御装置。 A non-volatile memory channel in which the error correction code data is written among the plurality of channels is set,
The light control means includes
The data of the write target and the error correction code data are written in parallel to a nonvolatile memory of each channel except a channel where the data of the write target is not prepared. The memory control device according to any one of the above.
前記ライト制御手段がフラッシュコマンドに応じたライト制御を実行するときに、前記初期値データを準備する処理を実行する請求項6から請求項8のいずれか1項に記載のメモリ制御装置。 The data control means includes
9. The memory control device according to claim 6, wherein when the write control unit executes a write control according to a flash command, a process for preparing the initial value data is executed. 10.
複数チャネルの各不揮発性メモリにデータを並列に書き込むために、前記各チャネル毎に書き込み対象のデータを準備し、
前記書き込み対象のデータが準備されないチャネルに対して、当該不揮発性メモリの初期値データを準備し、
前記各チャネル毎に準備される書き込み対象のデータ及び前記初期値データを使用して誤り訂正符号データを生成するメモリ制御方法。 A memory control method applied to a data storage device having a non-volatile memory of a plurality of channels,
In order to write data to each nonvolatile memory of a plurality of channels in parallel, prepare data to be written for each channel,
For the channel for which the data to be written is not prepared, prepare initial value data of the nonvolatile memory,
A memory control method for generating error correction code data using write target data and the initial value data prepared for each channel.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010261174A JP2012113476A (en) | 2010-11-24 | 2010-11-24 | Data storage device, memory control device, and memory control method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010261174A JP2012113476A (en) | 2010-11-24 | 2010-11-24 | Data storage device, memory control device, and memory control method |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2012113476A true JP2012113476A (en) | 2012-06-14 |
Family
ID=46497635
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2010261174A Withdrawn JP2012113476A (en) | 2010-11-24 | 2010-11-24 | Data storage device, memory control device, and memory control method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2012113476A (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2012118784A (en) * | 2010-12-01 | 2012-06-21 | Toshiba Corp | Data storage device, memory control device and memory control method |
| WO2014039297A3 (en) * | 2012-09-06 | 2014-06-19 | Advanced Micro Devices, Inc. | Channel rotating error correction code |
| CN110457160A (en) * | 2019-07-02 | 2019-11-15 | 深圳市金泰克半导体有限公司 | A kind of error correction method and device |
-
2010
- 2010-11-24 JP JP2010261174A patent/JP2012113476A/en not_active Withdrawn
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2012118784A (en) * | 2010-12-01 | 2012-06-21 | Toshiba Corp | Data storage device, memory control device and memory control method |
| US8914592B2 (en) | 2010-12-01 | 2014-12-16 | Kabushiki Kaisha Toshiba | Data storage apparatus with nonvolatile memories and method for controlling nonvolatile memories |
| WO2014039297A3 (en) * | 2012-09-06 | 2014-06-19 | Advanced Micro Devices, Inc. | Channel rotating error correction code |
| KR20150042221A (en) * | 2012-09-06 | 2015-04-20 | 어드밴스드 마이크로 디바이시즈, 인코포레이티드 | Channel rotating error correction code |
| US9069698B2 (en) | 2012-09-06 | 2015-06-30 | Advanced Micro Devices, Inc. | Channel rotating error correction code |
| KR101668400B1 (en) | 2012-09-06 | 2016-10-21 | 어드밴스드 마이크로 디바이시즈, 인코포레이티드 | Channel rotating error correction code |
| CN110457160A (en) * | 2019-07-02 | 2019-11-15 | 深圳市金泰克半导体有限公司 | A kind of error correction method and device |
| CN110457160B (en) * | 2019-07-02 | 2023-11-17 | 深圳市金泰克半导体有限公司 | Error correction method and device |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5032027B2 (en) | Semiconductor disk control device | |
| EP3069348B1 (en) | Data management with modular erase in a data storage system | |
| US20120166911A1 (en) | Data storage apparatus and apparatus and method for controlling nonvolatile memories | |
| JP5367686B2 (en) | Data storage device, memory control device, and memory control method | |
| JP2011253251A (en) | Data storage device and data writing method | |
| US11119693B2 (en) | Method of operating storage device for improving QOS latency and storage device performing the same | |
| JP2010009548A (en) | Storage device, control device, storage system, and storage method | |
| JP6142860B2 (en) | Disk array device, disk control device, solid state drive, disk control method, and program therefor | |
| JP2015018451A (en) | Memory controller, storage device, and memory control method | |
| US11861223B2 (en) | Memory controller and storage device for scheduling addresses | |
| US8848448B2 (en) | Semiconductor memory device and operating method thereof | |
| US11017865B2 (en) | Memory controller determining optimal read voltage and operating method thereof | |
| US20160027518A1 (en) | Memory device and method for controlling the same | |
| US20150220394A1 (en) | Memory system and method of controlling memory system | |
| US20130019054A1 (en) | Flash memory device and method performing erase operation using over program | |
| JP2012155541A (en) | Data storage device, memory control device, and memory control method | |
| JP2012248110A (en) | Memory unit having multiple channels and writing control method including error correction channel determination therein | |
| JP2009301194A (en) | System for controlling semiconductor memory device | |
| KR20160074025A (en) | Operating method for data storage device | |
| US20160011937A1 (en) | Semiconductor memory device, memory controller, and control method of memory controller | |
| JP4922442B2 (en) | Buffer management device, storage device including the same, and buffer management method | |
| TWI393146B (en) | Flash memory controller having configuring unit of error correction code (ecc) capability and method thereof | |
| JP2012113476A (en) | Data storage device, memory control device, and memory control method | |
| JP4861497B2 (en) | Data storage device and memory adjustment method | |
| US9886399B2 (en) | Storage control device, storage device, information processing system, and storage control method therefor |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20140204 |