[go: up one dir, main page]

JP2000285017A - Storage device - Google Patents

Storage device

Info

Publication number
JP2000285017A
JP2000285017A JP11094059A JP9405999A JP2000285017A JP 2000285017 A JP2000285017 A JP 2000285017A JP 11094059 A JP11094059 A JP 11094059A JP 9405999 A JP9405999 A JP 9405999A JP 2000285017 A JP2000285017 A JP 2000285017A
Authority
JP
Japan
Prior art keywords
data
flash memory
writing
written
storage device
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
Application number
JP11094059A
Other languages
Japanese (ja)
Inventor
Yasutoshi Takizawa
安俊 滝沢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP11094059A priority Critical patent/JP2000285017A/en
Publication of JP2000285017A publication Critical patent/JP2000285017A/en
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】フラッシュメモリを使用した記憶装置のアクセ
ス時間を短くすることにある。 【解決手段】フラッシュメモリを使用した記憶装置にデ
ータを書き込む場合一度に書き込むデータ量に応じてイ
ンターリーブするかしないかを決定し書き込みを行う。
(57) [Summary] An object of the present invention is to shorten the access time of a storage device using a flash memory. When data is written to a storage device using a flash memory, whether or not to perform interleaving is determined according to the amount of data to be written at a time, and writing is performed.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明はフラッシュメモリを
使用した記憶装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a storage device using a flash memory.

【0002】[0002]

【従来の技術】複数のフラッシュメモリとその制御を行
うコントローラにより構成される記憶装置ではそのデー
タの書き込みおよび読み出しをする場合にコントローラ
のシンリンダー、トラック、セクタにより構成される論
理アドレスを変換テーブルによりコントローラがフラッ
シュメモリの物理アドレスに対応させていた。このコン
トローラがインターリーブという方法によりフラッシュ
メモリへの書き込み時間を短くしていた。インターリー
ブとは連続したデータを1つのフラッシュメモリの連続
したアドレスに書き込むのではなく複数のメモリにまた
がって書き込む方法である。たとえば10セクタのデータ
を書込む場合には、1セクタは512バイトとそのデータ
の管理情報16バイトの合計528バイトで構成されるので5
28×10バイトのデータをフラッシュメモリに書込む必要
がある。フラッシュメモリに書込みを行う場合528バイ
トのデータをフラッシュメモリチップに転送しフラッシ
ュメモリ内部のバッファに格納した後、フラッシュメモ
リに書込みコマンドを発行しフラッシュメモリにデータ
を書込む。フラッシュメモリチップにデータを転送する
のに要する時間をtT、フラッシュメモリにデータを書込
む時間をtWとすると10セクタ分のデータを1つのフラッ
シュメモリチップに書込むのに要する時間は10×(t
T+tW)である。
2. Description of the Related Art In a storage device including a plurality of flash memories and a controller for controlling the flash memory, when writing and reading the data, a logical address constituted by a cylinder, a track, and a sector of the controller is converted into a controller by a conversion table. Corresponded to the physical address of the flash memory. This controller shortens the writing time to the flash memory by a method called interleaving. Interleaving is a method of writing continuous data not over continuous addresses of one flash memory but over a plurality of memories. For example, when writing 10 sectors of data, one sector consists of 512 bytes and 16 bytes of management information for the data, for a total of 528 bytes.
It is necessary to write 28 x 10 bytes of data to flash memory. When writing to the flash memory, 528 bytes of data are transferred to the flash memory chip and stored in a buffer inside the flash memory, and then a write command is issued to the flash memory to write the data to the flash memory. Assuming that the time required to transfer data to the flash memory chip is tT and the time required to write data to the flash memory is tW, the time required to write 10 sectors of data to one flash memory chip is 10 × (t
T + tW).

【0003】インターリーブでは10ある528バイト単位
のデータのうち最初の528バイトデータをk番目のフラッ
シュメモリチップに書込み、次の528バイトデータをk+1
番目のフラッシュメモリチップに書込み3番目の528バイ
トデータを再度k番目のフラッシュメモリに書込むとい
う動作をする。
In interleaving, the first 528-byte data of the 10 528-byte data is written to the k-th flash memory chip, and the next 528-byte data is written to k + 1
The third 528-byte data is written to the k-th flash memory again.

【0004】このようにするとk番目のフラッシュメモ
リに528バイトデータの書込みが完了するまでの時間を
待たずにk+1番目のフラッシュメモリチップにデータの
転送を開始できる。したがって10セクタ分のデータを書
込むのに要する時間は5×(tT+tW)+tTである。一般にt
T<tWであるためインターリーブ動作をするとインター
リーブをしない場合に比べて書込み時間が約半分にな
る。
In this manner, data transfer to the (k + 1) th flash memory chip can be started without waiting for the time until the writing of the 528-byte data to the k-th flash memory is completed. Therefore, the time required to write data for 10 sectors is 5 × (tT + tW) + tT. Generally t
Since T <tW, the interleave operation reduces the write time by about half compared to the case without interleave.

【0005】[0005]

【発明が解決しようとする課題】しかしながら全ての書
き込み動作に対してインターリーブを行うとかえって記
憶装置としてアクセス時間を長くさせるという問題があ
った。たとえば記憶装置の中の1セクタのみのデータを
書き換える動作を行う場合には528バイトのみのデータ
を書き換えれば良いはずである。しかしフラッシュメモ
リはたとえば528×16=8448バイトで構成されるブロック
の単位で書き込みを行う。これは以下の理由による。フ
ラッシュメモリは現在書込んであるデータに上書きをす
ることができず8448バイトの単位で一旦データを消去し
て書込みを行う。ある8448バイトのブロック内部の528
バイトを書換える場合には8448のうち528バイトのみの
イレーズすることはできないので従来格納されていた84
48バイトのデータのうち528バイトのみ変更した8448バ
イトのデータを同じアドレス領域をイレーズした後再度
書込むかあるいは他のイレーズ済みのエリアに書込む。
いずれにしても8448バイト(528バイトを16回)の書込
みが必要である。よってひとつのブロックの書込みを行
う場合には16×(tT+tW)の時間を要する。これは1セ
クタのみ書換える場合でも複数セクタのデータを書換え
る場合でも同じ時間が必要である。
However, when interleaving is performed for all write operations, there is a problem that the access time of the storage device is lengthened. For example, when an operation of rewriting data of only one sector in the storage device is performed, only data of 528 bytes should be rewritten. However, the flash memory performs writing in units of blocks composed of, for example, 528 × 16 = 8448 bytes. This is for the following reason. The flash memory cannot overwrite the currently written data, and erases and writes data once in units of 8448 bytes. 528 inside a block of 8448 bytes
When rewriting bytes, it is not possible to erase only 528 bytes out of 8448, so 84
Either erasing the same address area and writing again the 8448-byte data obtained by changing only 528 bytes of the 48-byte data, or writing to another erased area.
In any case, writing 8448 bytes (16 times 528 bytes) is required. Therefore, it takes 16 × (tT + tW) to write one block. This requires the same time when rewriting only one sector or rewriting data in a plurality of sectors.

【0006】たとえば2セクタのみの書込みが必要な場
合にはインターリーブを行うと16×(tT+tW)+tTの
時間が必要であるがインターリーブを行わなければ16×
(tT+tW)で書込みが終了する。一方16を超えるセクタ
の書込みを行う場合にはインターリーブした方が早くな
る。17セクタの書込みを行う場合には2つの8448バイト
のブロックの書込みを行う必要がある。インターリーブ
を行わないと一つ目のフラッシュメモリの16セクタのデ
ータを書換えた後2つ目のフラッシュメモリの16セクタ
データを書換える必要があるので2×16×(tT+tW)-tWの
時間が必要である。しかしインターリーブを行うと16×
(tT+tW)+tTで書込みができる。
For example, if writing of only two sectors is required, interleaving requires 16 × (tT + tW) + tT, but if interleaving is not performed, 16 × (tT + tW) + tT is required.
The writing ends at (tT + tW). On the other hand, when writing more than 16 sectors, interleaving is faster. When writing 17 sectors, it is necessary to write two blocks of 8448 bytes. If interleaving is not performed, it is necessary to rewrite 16 sector data of the first flash memory after rewriting 16 sector data of the second flash memory, so 2 × 16 × (tT + tW) -tW time is required It is. But with interleaving, 16x
Writing is possible at (tT + tW) + tT.

【0007】以上のようにインターリーブを行うことに
より書込み時間が早くなる場合と遅くなる場合がある。
As described above, there are cases where the writing time is shortened and the writing time is delayed by performing the interleaving.

【0008】[0008]

【課題を解決するための手段】本発明の記憶装置は、複
数のフラッシュメモリチップとその制御を行うコントロ
ーラにより構成される記憶装置において概記憶装置に書
込むデータをフラッシュメモリの連続したアドレスに書
込むかあるいは複数のフラッシュメモリに交互に書込む
かを決めるビットがありそのビットにしたがって書込み
方法を切り替えることを特徴とする。
According to a storage device of the present invention, in a storage device including a plurality of flash memory chips and a controller for controlling the flash memory chips, data to be written into a general storage device is written to consecutive addresses of the flash memory. There is a bit for determining whether the data is to be written to the flash memory or a plurality of flash memories alternately, and the writing method is switched according to the bit.

【0009】[0009]

【発明の実施の形態】図1が本発明のブッロク図であ
る。101はコントローラでありコントローラ101にはコン
トローラの処理を行うCPUとコントローラの処理プログ
ラムを行うROMとCPUが一時的に必要なデータを保存する
RAMとフラッシュメモリのデータの読み書きを行うため
のアドレス、データバスおよび記憶装置の外部とやりと
りをするインターフェースから構成される。102,103は
フラッシュメモリでありコントローラ101によりアクセ
スされる。本実施例ではフラッシュメモリが2個の場合
を説明しているがフラッシュメモリは2個以上ならいく
つでも構わない。
FIG. 1 is a block diagram of the present invention. 101 is a controller, and the controller 101 temporarily stores necessary data by the CPU for processing the controller, the ROM for executing the processing program of the controller, and the CPU.
It comprises an address for reading and writing data from and to the RAM and flash memory, a data bus, and an interface for exchanging data with the outside of the storage device. Reference numerals 102 and 103 denote flash memories which are accessed by the controller 101. In this embodiment, the case where there are two flash memories is described, but any number of flash memories may be used as long as the number is two or more.

【0010】外部インタフェースからシリンダ、トラッ
ク、セクタという記憶装置の論理アドレスと書込む情報
がコントローラ101に与えられるとコントローラ101はフ
ラッシュメモリ102の一部にあるアドレス変換テーブル
により実際のフラッシュメモリのどのエリアにデータを
書込むかを決定する。
When a logical address of a storage device such as a cylinder, a track, and a sector and information to be written are given to the controller 101 from an external interface, the controller 101 uses the address conversion table in a part of the flash memory 102 to determine which area of the actual flash memory Determines whether to write data to

【0011】このアドレス変換テーブルを図2に示す。
シリンダ、トラック、セクタがこのアドレス変換テーブ
ルに入力されるとそれに対応したフラッシュメモリのア
ドレスが出力される。このアドレスにデータを書き込
む。変換テーブルは16セクタ(8448バイト)毎に定義さ
れている。このアドレス変換テーブルにはインターリー
ブするかどうかを示すビットがある。一度に書き込むデ
ータ量によりインターリーブしたほうが有利かどうかを
コントローラ101が判断し、有利なら変換テーブル内の
インターリーブを示すビットをセットし、フラッシュメ
モリ102,103にまたがりデータを書き込む。
FIG. 2 shows this address conversion table.
When a cylinder, track, or sector is input to this address conversion table, the corresponding flash memory address is output. Write data to this address. The conversion table is defined for every 16 sectors (8448 bytes). The address translation table has a bit indicating whether to interleave. The controller 101 determines whether it is more advantageous to interleave based on the amount of data to be written at a time, and if so, sets a bit indicating interleaving in the conversion table and writes data across the flash memories 102 and 103.

【0012】データを書き込む方法を図3に示す。フラ
ッシュメモリは8448単位のブロックがいくつか含まれる
がフラッシュメモリ102,103の同時位置にあるブロック
を使って図3のようにデータを書き込む。図3の数字が
データを書き込む順番を示す。1番目のデータをフラッ
シュメモリ102に書き込み、2番目のデータをフラッシ
ュメモリ103に書き込む。以下同様に奇数番のデータを
フラッシュメモリ102に偶数番のデータをフラッシュメ
モリ103に書き込む。このデータを読み出す場合にはア
ドレス変換テーブルのインターリーブを示すビットを読
みフラッシュメモリ102と103から交互にデータを読み出
す。もし一度に書き込むデータ量が少ない場合にはアド
レス変換テーブルのインターリーブを示すビットをリセ
ットし図4に示すように一つのフラッシュメモリに連続
してデータを書き込む。このデータを読み出す場合には
アドレス変換テーブルのインターリーブを示すビットを
参照し連続したデータを読み出す。
FIG. 3 shows a method of writing data. Although the flash memory includes several blocks of 8448 units, data is written as shown in FIG. 3 using blocks located at the same position of the flash memories 102 and 103. The numbers in FIG. 3 indicate the order of writing data. The first data is written to the flash memory 102, and the second data is written to the flash memory 103. Similarly, odd-numbered data is written to the flash memory 102, and even-numbered data is written to the flash memory 103. When reading this data, a bit indicating the interleave in the address conversion table is read and the data is alternately read from the flash memories 102 and 103. If the amount of data to be written at a time is small, the bit indicating the interleave in the address conversion table is reset and data is continuously written to one flash memory as shown in FIG. When reading this data, continuous data is read by referring to the bit indicating the interleave in the address conversion table.

【0013】[0013]

【発明の効果】以上のように1度に書き込むデータ量に
よりインターリーブをするかしないかを判断してフラッ
シュメモリに書き込むことによりアクセス速度を早くす
ることができる。
As described above, the access speed can be increased by determining whether or not to perform interleaving based on the amount of data to be written at one time and writing the data into the flash memory.

【図面の簡単な説明】[Brief description of the drawings]

【図1】 本発明の1実施の形態を示すシステム構成
図。
FIG. 1 is a system configuration diagram showing an embodiment of the present invention.

【図2】 アドレス変換テーブルの図。FIG. 2 is a diagram of an address conversion table.

【図3】 インターリーブした場合のデータ書き込み
例の図。
FIG. 3 is a diagram of an example of data writing when interleaving is performed.

【図4】 インターリーブしない場合のデータ書き込
み例の図。
FIG. 4 is a diagram of an example of data writing when interleaving is not performed.

【符号の説明】[Explanation of symbols]

101 コントローラ 102 フラッシュメモリ 103 フラッシュメモリ 101 Controller 102 Flash memory 103 Flash memory

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】複数のフラッシュメモリチップとその制御
を行うコントローラにより構成される記憶装置において
概記憶装置に書込むデータをフラッシュメモリの連続し
たアドレスに書込むかあるいは複数のフラッシュメモリ
に交互に書込むかを決めるビットがありそのビットにし
たがって書込み方法を切り替えることを特徴とする記憶
装置。
In a storage device comprising a plurality of flash memory chips and a controller for controlling the flash memory chips, data to be written to a general storage device is written to consecutive addresses of the flash memory or alternately written to a plurality of flash memories. A storage device that has a bit for determining whether to write data and switches a writing method according to the bit.
JP11094059A 1999-03-31 1999-03-31 Storage device Withdrawn JP2000285017A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11094059A JP2000285017A (en) 1999-03-31 1999-03-31 Storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11094059A JP2000285017A (en) 1999-03-31 1999-03-31 Storage device

Publications (1)

Publication Number Publication Date
JP2000285017A true JP2000285017A (en) 2000-10-13

Family

ID=14099976

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11094059A Withdrawn JP2000285017A (en) 1999-03-31 1999-03-31 Storage device

Country Status (1)

Country Link
JP (1) JP2000285017A (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007517320A (en) * 2003-12-30 2007-06-28 サンディスク コーポレイション Adaptive mode switching of flash memory address mapping based on host usage characteristics
JP2009026301A (en) * 2007-07-19 2009-02-05 Samsung Electronics Co Ltd Solid state disk controller and data processing method of solid state disk controller
JP2011203905A (en) * 2010-03-25 2011-10-13 Toshiba Corp Memory system
JP2011204229A (en) * 2010-03-01 2011-10-13 Panasonic Corp Memory controller, and imaging device
US8117380B2 (en) 2003-12-30 2012-02-14 Sandisk Technologies Inc. Management of non-volatile memory systems having large erase blocks
JP2014127075A (en) * 2012-12-27 2014-07-07 Toshiba Corp Address generation circuit
JP2015076070A (en) * 2013-10-11 2015-04-20 キヤノン株式会社 Information processing apparatus, information processing apparatus control method, and program
US11681449B2 (en) 2012-06-19 2023-06-20 Samsung Electronics Co., Ltd. Memory system and SoC including linear address remapping logic

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8745322B2 (en) 2003-12-30 2014-06-03 Sandisk Technologies Inc. Management of non-volatile memory systems having large erase blocks
JP2007517320A (en) * 2003-12-30 2007-06-28 サンディスク コーポレイション Adaptive mode switching of flash memory address mapping based on host usage characteristics
US8117380B2 (en) 2003-12-30 2012-02-14 Sandisk Technologies Inc. Management of non-volatile memory systems having large erase blocks
US8301826B2 (en) 2003-12-30 2012-10-30 Sandisk Technologies Inc. Adaptive mode switching of flash memory address mapping based on host usage characteristics
US8504798B2 (en) 2003-12-30 2013-08-06 Sandisk Technologies Inc. Management of non-volatile memory systems having large erase blocks
US8738842B2 (en) 2007-07-19 2014-05-27 Samsung Electronics Co., Ltd. Solid state disk controller and data processing method thereof
JP2009026301A (en) * 2007-07-19 2009-02-05 Samsung Electronics Co Ltd Solid state disk controller and data processing method of solid state disk controller
JP2011204229A (en) * 2010-03-01 2011-10-13 Panasonic Corp Memory controller, and imaging device
JP2011203905A (en) * 2010-03-25 2011-10-13 Toshiba Corp Memory system
US11681449B2 (en) 2012-06-19 2023-06-20 Samsung Electronics Co., Ltd. Memory system and SoC including linear address remapping logic
US11704031B2 (en) 2012-06-19 2023-07-18 Samsung Electronics Co., Ltd. Memory system and SOC including linear address remapping logic
US12001698B2 (en) 2012-06-19 2024-06-04 Samsung Electronics Co., Ltd. Memory system and SoC including linear address remapping logic
JP2014127075A (en) * 2012-12-27 2014-07-07 Toshiba Corp Address generation circuit
US9405674B2 (en) 2012-12-27 2016-08-02 Kabushiki Kaisha Toshiba Address generating circuit and address generating method
JP2015076070A (en) * 2013-10-11 2015-04-20 キヤノン株式会社 Information processing apparatus, information processing apparatus control method, and program

Similar Documents

Publication Publication Date Title
JP3944496B2 (en) Increased memory performance in flash memory devices by simultaneous write operations to multiple devices
US8681552B2 (en) System and method for accessing and storing interleaved data
US6154808A (en) Method and apparatus for controlling data erase operations of a non-volatile memory device
EP1242868B1 (en) Organization of blocks within a nonvolatile memory unit to effectively decrease sector write operation time
KR100300250B1 (en) Semiconductor storage device and data management method therefor
JP2000067574A (en) Semiconductor storage device
KR101436439B1 (en) Nonvolatile memory
JP3900863B2 (en) Data transfer control device, semiconductor memory device and information equipment
KR100522006B1 (en) Non-volatile storage device and control method thereof
JP2000285017A (en) Storage device
JP2006040497A (en) Semiconductor memory device, nonvolatile semiconductor memory device
KR20020092261A (en) Management Scheme for Flash Memory with the Multi-Plane Architecture
JPH07153284A (en) Non-volatile semiconductor memory and its control method
US8180951B2 (en) Memory system and method of controlling the memory system
JPH08221312A (en) Memory card device
US7836263B2 (en) Nonvolatile memory controlling method and nonvolatile memory controlling apparatus
JP2006277736A (en) Non-volatile memory device writing method
KR100336744B1 (en) Write apparatus and method for flash memory
US20050204115A1 (en) Semiconductor memory device, memory controller and data recording method
JP4273106B2 (en) Memory controller, flash memory system, and flash memory control method
JP2008300018A (en) Nonvolatile memory and rewriting method thereof
JPH08161224A (en) Semiconductor filing device
JP2003178280A (en) memory card
JPH0836524A (en) Flash memory
JPH09259032A (en) Flash memory device

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050715

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050726

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20050908