JP2009211550A - Nonvolatile memory control device, image processor equipped with the same, and nonvolatile memory control method - Google Patents
Nonvolatile memory control device, image processor equipped with the same, and nonvolatile memory control method Download PDFInfo
- Publication number
- JP2009211550A JP2009211550A JP2008055398A JP2008055398A JP2009211550A JP 2009211550 A JP2009211550 A JP 2009211550A JP 2008055398 A JP2008055398 A JP 2008055398A JP 2008055398 A JP2008055398 A JP 2008055398A JP 2009211550 A JP2009211550 A JP 2009211550A
- Authority
- JP
- Japan
- Prior art keywords
- block address
- physical block
- address
- write
- count information
- 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.)
- Pending
Links
Images
Abstract
Description
本発明は、例えばNANDフラッシュメモリ等の不揮発性メモリの書込評価に要する時間を短縮できる不揮発性メモリ制御装置及びこれを備えた画像処理装置、不揮発性メモリ制御方法に関する。 The present invention relates to a nonvolatile memory control device that can reduce the time required for writing evaluation of a nonvolatile memory such as a NAND flash memory, an image processing device including the nonvolatile memory control device, and a nonvolatile memory control method.
従来、電源が供給されなくてもデータを保持できる不揮発性メモリとして、NANDフラッシュメモリが知られている。このNANDフラッシュメモリは、データの書き込み及び消去を電気的に行うことができ、この書き込み及び消去はFN(Fowler−Nordheim)トンネル現象により行われる。 Conventionally, a NAND flash memory is known as a nonvolatile memory that can hold data even when power is not supplied. This NAND flash memory can electrically write and erase data, and the writing and erasing are performed by an FN (Fowler-Nordheim) tunnel phenomenon.
このNANDフラッシュメモリにデータを書き込むとき、このトンネル現象を発生させるために、フラッシュメモリのIC(Integrated Circuit)内に約20Vの高電圧を加えるため、IC内に設けられた酸化膜(例えば、SiO2:二酸化シリコン)が高電圧により劣化する。従って、特定のメモリブロックにデータの書き込みを複数回、一般的に10万回程度繰り返すと、酸化膜の劣化によりデータの記録ができない、いわゆる不良ブロックが発生する。 When data is written to the NAND flash memory, in order to generate this tunnel phenomenon, a high voltage of about 20 V is applied to the IC (Integrated Circuit) of the flash memory. 2 : Silicon dioxide) deteriorates due to high voltage. Therefore, when data writing to a specific memory block is repeated a plurality of times, generally about 100,000 times, a so-called defective block is generated in which data cannot be recorded due to deterioration of the oxide film.
特定のメモリブロックのみにデータの書き込み/消去が集中して、そのメモリブロックが他のメモリブロックに比して早く不良ブロックになることを防止するため、NANDフラッシュメモリには、各メモリブロックへのデータの書き込み回数を平均化するためのデータの書込方式であるウェアレベリング方式が利用されている。 In order to prevent data writing / erasing from being concentrated only on a specific memory block and the memory block becoming a defective block earlier than other memory blocks, the NAND flash memory includes a memory block for each memory block. A wear leveling method, which is a data writing method for averaging the number of data writes, is used.
このウェアレベリング方式の一例として、所定回数以上の書き込みが行われているメモリブロックに対する書き込みを、未使用のメモリブロックに対して行うようにするデータの書込方式が知られている。
即ち、仮想的に使用するアドレス(論理アドレス)の上限を、NANDフラッシュメモリ上で有効なアドレス(物理アドレス)に対して小さく設定し、使用できない物理アドレスを予め設けておく。NANDフラッシュメモリに書き込みを行い、書き込み回数が多い特定の物理アドレスが発生したとき、この物理アドレスに対応する論理アドレスを未使用の物理アドレスに対応するように変更する、即ち、未使用の物理アドレスを書き込み回数の多い物理アドレスの代替領域として用いる。
As an example of this wear leveling method, a data writing method is known in which writing to a memory block that has been written a predetermined number of times or more is performed on an unused memory block.
That is, the upper limit of the virtually used address (logical address) is set smaller than the valid address (physical address) on the NAND flash memory, and a physical address that cannot be used is provided in advance. When writing to the NAND flash memory and a specific physical address with a large number of writes occurs, the logical address corresponding to this physical address is changed to correspond to an unused physical address, that is, an unused physical address Is used as an alternative area for a physical address with a large number of writes.
また、別のウェアレベリング方式として、例えば、各メモリブロックへの書き込み回数をカウントしておき、そのカウント数の少ないブロックへ書き込むようにメモリアクセス制御する書込方式が知られている。
即ち、各々の物理アドレスへのデータの書き込み回数をカウントしておき、ある物理アドレスに対応するブロックにデータを書き込むとき、この物理アドレスと比べて書き込み回数の少ない他の物理アドレスがある場合は、他の物理アドレスに対応するブロックへデータが書き込まれるように論理アドレスと物理アドレスの対応関係を変更する。
以上のように、従来、物理アドレスに対して書き込み回数を平均化するようにメモリアクセス制御を行うことによって、特定の物理アドレスへ書き込みが集中しないようにし、NANDフラッシュメモリの長寿命化を図っている。
As another wear leveling method, for example, a writing method is known in which the number of times of writing to each memory block is counted and memory access control is performed so as to write to a block with a small number of counts.
That is, the number of times of writing data to each physical address is counted, and when writing data to a block corresponding to a certain physical address, if there is another physical address with a smaller number of writes compared to this physical address, The correspondence relationship between the logical address and the physical address is changed so that data is written to a block corresponding to another physical address.
As described above, conventionally, by performing memory access control so as to average the number of writes with respect to the physical address, the write is not concentrated on a specific physical address and the life of the NAND flash memory is extended. Yes.
このNANDフラッシュメモリのメモリブロックが不良ブロックになるまでの書き込み回数(書き込み可能回数)は、NANDフラッシュメモリを例えば画像処理装置などの製品に搭載するにあたって必要なデータであるため、この書き込み可能回数を予め評価することが行われる。 The number of times of writing until the memory block of the NAND flash memory becomes a defective block (number of times that data can be written) is data necessary for mounting the NAND flash memory on a product such as an image processing apparatus. Pre-evaluation is performed.
しかしながら、NANDフラッシュメモリの容量を1(GB(ギガバイト))、インタフェース速度を(10MB(メガバイト)/秒)とし、ウェアレベリングが理想的に行われてNANDフラッシュメモリの容量×10万回の書き込みができると想定すると、この評価時間は、(1000(MB)×10(万回))/10(MB/秒)=1000万秒=約2777時間=約115日であり、長期間を要するという問題がある。また、評価サンプル数を増やした場合は更に長い期間を要する。 However, the capacity of the NAND flash memory is 1 (GB (gigabytes)), the interface speed is (10 MB (megabytes) / second), wear leveling is ideally performed, and the capacity of the NAND flash memory x 100,000 writes Assuming that it can be performed, this evaluation time is (1000 (MB) × 10 (10,000 times)) / 10 (MB / second) = 10 million seconds = about 2777 hours = about 115 days, which requires a long time. There is. Further, when the number of evaluation samples is increased, a longer period is required.
上記評価時間を短縮するためには、データの書込時間を短縮することが有効な手段の一つであると考えられる。
例えば、データの書き込み後に必要なベリファイ(読み出し)の回数を低減させて書込時間を短縮させる不揮発性半導体メモリが知られている(特許文献1参照)。
また、複数の不揮発性半導体メモリを同時にテストする際、書き込み動作の結果をベリファイする動作を不要として、全体の書込時間を短縮し、その結果テスト時間を短縮する不揮発性半導体メモリ及びそのテスト方法も知られている(特許文献2参照)。
In order to shorten the evaluation time, it is considered that shortening the data writing time is one of effective means.
For example, a nonvolatile semiconductor memory is known in which the number of verifications (reading) required after data writing is reduced to shorten the writing time (see Patent Document 1).
Further, when testing a plurality of nonvolatile semiconductor memories at the same time, an operation for verifying the result of the write operation is not required, the entire write time is shortened, and as a result, the test time is shortened, and the test method thereof Is also known (see Patent Document 2).
しかしながら、上記各特許文献に記載された不揮発性半導体メモリ等では、多少の評価時間の短縮が見込まれる可能性はあるが、大幅な短縮は難しい。
また、評価時間を短縮するために、物理アドレスへの書き込み方法、即ちウェアレベリング方式を改善することも考えられるが、ウェアレベリングの方式は各社毎に異なり、その内容がユーザに公開されていない場合が多いため、ユーザがアドレスを制御して評価時間の短縮を行うことは困難である。
In order to shorten the evaluation time, it is possible to improve the writing method to the physical address, that is, the wear leveling method, but the wear leveling method is different for each company, and the contents are not disclosed to the user. Therefore, it is difficult for the user to control the address and shorten the evaluation time.
本発明は、上記従来の問題を解決するためになされたもので、その目的は、NANDフラッシュメモリ等の不揮発性半導体メモリの評価時間を大幅に短縮することである。 The present invention has been made to solve the above-described conventional problems, and an object thereof is to greatly shorten the evaluation time of a nonvolatile semiconductor memory such as a NAND flash memory.
本発明は、外部装置からの論理ブロックアドレスに基づいて不揮発性メモリの所定の物理ブロックアドレスにデータのリードライト処理を行うリードライト制御部を備えた不揮発性メモリ制御装置であって、論理ブロックアドレスと物理ブロックアドレスとの対応関係情報を格納する格納手段と、前記格納手段の対応関係情報に基づいて、外部装置からの論理ブロックアドレスを物理ブロックアドレスに変換するアドレス変換手段と、外部装置から入力された上限物理ブロックアドレスを記憶する記憶手段と、前記記憶手段に記憶された上限物理ブロックアドレスを上限として、前記アドレス変換手段がアドレス変換を行うように制御するアドレス変換制御手段と、を有することを特徴とする。
また、本発明は、外部装置からの論理ブロックアドレスに基づいて不揮発性メモリの所定の物理ブロックアドレスにデータのリードライト処理を行うリードライト制御部を備えた不揮発性メモリ制御装置であって、論理ブロックアドレスと物理ブロックアドレスとの対応関係情報を格納する格納手段と、予め複数の物理ブロックアドレスを記憶している記憶手段と、前記記憶手段に記憶された複数の物理ブロックアドレスのうち一つを選択する選択手段と、前記選択手段が選択した物理ブロックアドレスを上限として、前記アドレス変換手段がアドレス変換を行うように制御するアドレス変換制御手段と、を有することを特徴とする。
また、本発明は、外部装置からの論理ブロックアドレスに基づいて不揮発性メモリの所定の物理ブロックアドレスにデータのリードライト処理を行う不揮発性メモリ制御方法であって、外部装置から入力された上限物理ブロックアドレスを記憶する工程と、リードライト処理を行う物理ブロックアドレスに対応する論理ブロックアドレスを前記外部装置から受信する工程と、前記記憶手段に記憶されている上限物理ブロックアドレスを上限として、前記受信した論理ブロックアドレスを物理ブロックアドレスに変換する工程と、を有することを特徴とする。
また、本発明は、外部装置からの論理ブロックアドレスに基づいて不揮発性メモリの所定の物理ブロックアドレスにデータのリードライト処理を行う不揮発性メモリ制御方法であって、リードライト処理を行う物理ブロックアドレスに対応する論理ブロックアドレスを前記外部装置から受信する工程と、記憶手段に予め記憶された複数の物理ブロックアドレスのうち一つを選択する選択工程と、前記記憶手段に記憶されている物理ブロックアドレスを上限として、前記受信した論理ブロックアドレスを物理ブロックアドレスに変換する工程と、を有することを特徴とする。
The present invention relates to a non-volatile memory control device including a read / write control unit that performs read / write processing of data to a predetermined physical block address of a non-volatile memory based on a logical block address from an external device, and the logical block address Storage means for storing correspondence information between the physical block address and the physical block address, address conversion means for converting a logical block address from an external device into a physical block address based on the correspondence information of the storage means, and input from the external device Storage means for storing the upper limit physical block address, and address conversion control means for controlling the address conversion means to perform address conversion with the upper limit physical block address stored in the storage means as an upper limit. It is characterized by.
The present invention also provides a nonvolatile memory control device including a read / write control unit that performs read / write processing of data to a predetermined physical block address of a nonvolatile memory based on a logical block address from an external device, Storage means for storing correspondence information between block addresses and physical block addresses; storage means for storing a plurality of physical block addresses in advance; and one of a plurality of physical block addresses stored in the storage means. A selection means for selecting; and an address translation control means for controlling the address translation means to perform address translation with the physical block address selected by the selection means as an upper limit.
The present invention also relates to a non-volatile memory control method for performing data read / write processing on a predetermined physical block address of a non-volatile memory based on a logical block address from an external device, and an upper limit physical input from the external device. A step of storing a block address; a step of receiving a logical block address corresponding to a physical block address for performing a read / write process from the external device; and the reception using the upper limit physical block address stored in the storage means as an upper limit. And a step of converting the logical block address into a physical block address.
The present invention also relates to a nonvolatile memory control method for performing read / write processing of data to a predetermined physical block address of a nonvolatile memory based on a logical block address from an external device, the physical block address performing the read / write processing Receiving a logical block address corresponding to the external device from the external device, a selection step of selecting one of a plurality of physical block addresses stored in advance in the storage means, and a physical block address stored in the storage means And a step of converting the received logical block address into a physical block address.
本発明によれば、NANDフラッシュメモリ等の不揮発性半導体メモリの評価時間を大幅に短縮して、評価にかかる手間及び消費電力を低減させることができる。 According to the present invention, it is possible to greatly reduce the evaluation time of a nonvolatile semiconductor memory such as a NAND flash memory, and to reduce labor and power consumption for evaluation.
以下、本発明の不揮発性メモリ制御装置の実施の形態に係るSSD(Solid State Disc)について、添付した図面を参照して説明する。
図1は、SSDとホスト装置から成るシステムの構成を示すブロック図である。
Hereinafter, an SSD (Solid State Disc) according to an embodiment of a nonvolatile memory control device of the present invention will be described with reference to the accompanying drawings.
FIG. 1 is a block diagram showing a configuration of a system including an SSD and a host device.
ホスト装置101とSSD100とは、互いにATA(AT Attachment)ケーブル110で接続されている。
SSD100は、ATAケーブル110を接続するATAスレーブインタフェース部106と、ATAスレーブインタフェース部106の制御を行ってホスト装置101とデータの送受信を行うATAスレーブインタフェース制御部107と、ホスト装置101から受信したデータを保存する不揮発性メモリであるNANDフラッシュメモリ109と、NANDフラッシュメモリ109のリードライトの制御を行うリードライト制御部108とから成っている。
リードライト制御部108は、NANDフラッシュメモリ109の各物理ブロックアドレスに対する書き込み回数を平均化するために後述するウェアレベリングの処理を行う。
The
The SSD 100 includes an ATA
The read /
ホスト装置101は、SSD100の外部装置である画像形成装置やパーソナルコンピュータ等の電子装置であり、このシステム全体の制御を行う主制御部102と、SSD100と送受信するデータを蓄積する記憶部であるデータ蓄積部103と、ATAケーブル110を接続するATAマスタインタフェース部104と、ATAマスタインタフェース部104の制御を行ってSSD100とデータの送受信を行うATAマスタインタフェース制御部105とを備えている。
主制御部102は、CPU(Central Processing Unit)、RAM(Random Access Memory)及びROM(Read Only Memory)を備えたマイクロコンピュータを有し、SSD100へデータの記憶の要求(ライトコマンド)と、その記憶させるデータの送信と、所定のデータの読み出し要求(リードコマンド)とその読み出し要求に対して送信されたデータの受信等を行う。
The
The
このシステムにおいて、ホスト装置101からSSD100に対するデータの転送(書き込み)は、ホスト装置101がSSD100のリードライト制御部108内のI/Oレジスタに対してATAコマンドを書き込むことで行われる。
図2は、ATAケーブル110の信号線の状態に対応するI/Oレジスタの一覧を示す図である。
I/Oレジスタは、図示のようにコマンドブロックレジスタとコントロールブロックレジスタに分類されており、ATAケーブル110の各々の信号線(CS0−、CS1−、DA2、DA1、DA0)の状態に応じて、ホスト装置101がコマンドブロックレジスタ又はコントロールブロックレジスタのいずれかのレジスタにATAコマンドを書き込むことで、データの転送が行われる。
In this system, data transfer (writing) from the
FIG. 2 is a diagram showing a list of I / O registers corresponding to the state of the signal lines of the
The I / O registers are classified into a command block register and a control block register as shown in the figure, and depending on the state of each signal line (CS0-, CS1-, DA2, DA1, DA0) of the
ATAコマンドをI/Oレジスタに書き込むときは、I/Oレジスタに必要なパラメータを指定しておく。即ち、例えば、ATAコマンド(ライトコマンド)を発行するときは、データを書き込む論理ブロックアドレス(LBA:Logical Block Address)と、書き込むデータ量をレジスタに設定(記憶)した後にATAコマンドを書き込む。 When writing the ATA command to the I / O register, necessary parameters are designated in the I / O register. That is, for example, when an ATA command (write command) is issued, a logical block address (LBA) to which data is written and an amount of data to be written are set (stored) in a register, and then the ATA command is written.
図3は、ホスト装置101がSSD100にデータを書き込むためのパラメータを設定するレジスタ(I/Oレジスタ)の一覧を示す図である。
ここで、レジスタに設定する論理ブロックアドレスは、NANDフラッシュメモリ109のメモリブロック毎に定められている物理ブロックアドレスに対応するアドレスであり、ホスト装置101が論理ブロックアドレスを設定してATAコマンドをレジスタに書き込むことで、設定した論理ブロックアドレスに対応する物理ブロックアドレスを有するメモリブロックに、データが書き込まれる。
FIG. 3 is a diagram showing a list of registers (I / O registers) for setting parameters for the
Here, the logical block address set in the register is an address corresponding to the physical block address determined for each memory block of the
論理ブロックアドレスは、28ビットからなるデータであり、1アドレス毎にNANDフラッシュメモリ109上の1セクタ(512バイト)が対応している。
図3は、論理ブロックアドレスの0〜7ビット、8〜15ビット、16〜23ビット、24〜27ビットの数値がそれぞれ、Sector Number(セクタナンバーレジスタ)、Cylinder Low(シリンダローレジスタ)、Cylinder High(シリンダハイレジスタ)、Device/Head(デバイス/ヘッドレジスタ)に設定されることを示している。
例えば、論理ブロックアドレス:7FF(H)をレジスタに設定するときは、セクタナンバーレジスタに「0xff」を、シリンダローレジスタに「0x07」を、シリンダハイレジスタに「0x00」を、デバイス/ヘッドレジスタに「0x0」を設定することになる。
The logical block address is 28-bit data, and one sector (512 bytes) on the
Figure 3 shows the logical block address values of 0 to 7 bits, 8 to 15 bits, 16 to 23 bits, and 24 to 27 bits, Sector Number (sector number register), Cylinder Low (cylinder low register), and Cylinder High. (Cylinder high register) and Device / Head (device / head register).
For example, when the logical block address: 7FF (H) is set in the register, “0xff” is set in the sector number register, “0x07” is set in the cylinder low register, “0x00” is set in the cylinder high register, and the device / head register is set. “0x0” is set.
また、ホスト装置101がNANDフラッシュメモリ109に書き込むデータ量は、Sector Count(セクタカウントレジスタ)に設定する。即ち、1〜255セクタ分のデータ量を格納するときは、セクタカウントレジスタにそのセクタ数を設定し、256セクタ分のデータ量を格納するときは、セクタカウントレジスタに例外的に0を設定する。
The amount of data that the
以上で説明したように、SSD100では、データを書き込む論理ブロックアドレスと、書き込むデータ量をレジスタに設定してATAコマンドをレジスタに書き込むと、図1に示したリードライト制御部108が、NANDフラッシュメモリ109にデータの書き込みを行う。
なお、このとき、リードライト制御部108は、特定の物理ブロックアドレスへの書き込み回数を平均化するため、後述するウェアレベリング方式でデータを書き込む。
As described above, in the
At this time, the read /
図4は、本リードライト制御部108内のこのウェアレベリング処理を行う部分の機能ブロック図である。
リードライト制御部108内のウェアレベリング処理を行う部分の機能ブロックは、論理ブロックアドレスと物理ブロックアドレスとの対応関係情報を格納している格納手段である変換テーブル402と、この変換テーブル402に格納された上記対応関係情報に基づいて、ホスト装置101から受信した論理ブロックアドレスを物理ブロックアドレスに変換するアドレス変換制御部401と、各種データの記憶手段であるレジスタ403とから成っている。
FIG. 4 is a functional block diagram of a part of the read /
The functional block of the part performing the wear leveling processing in the read /
図5は、変換テーブル402に格納されているデータを示す図である。
変換テーブル402では、テーブルNO.と論理ブロックアドレスが1対1で対応しており、各テーブルNO.毎に物理ブロックアドレスと、この物理ブロックアドレスに対する書き込み回数が記録されている。
また、この変換テーブル402のうち、予め一つのテーブルNO.を後述する代替物理ブロックアドレス用テーブルとして設定し、後述するウェアレベリングを行うときの、ホスト装置101から入力された論理ブロックアドレスに対応する物理ブロックアドレスの代替領域としている(例えば、図中(b)で示すテーブルNO.「0x0f01」)。
FIG. 5 is a diagram showing data stored in the conversion table 402.
In the conversion table 402, table NO. And logical block addresses have a one-to-one correspondence. A physical block address and the number of times of writing with respect to the physical block address are recorded for each.
In addition, one table NO. Is set as an alternative physical block address table to be described later, and is used as an alternative area of a physical block address corresponding to a logical block address input from the
リードライト制御部108が、所定の物理ブロックアドレスに書き込みを行うと、テーブル内の物理ブロックアドレスに対応した書き込み回数がインクリメントされて記憶される。
なお、変換テーブル402に対する読み出しやデータの更新は、アドレス変換制御部401が行う。
When the read /
Note that the address
図6は、アドレス変換制御部401がNANDフラッシュメモリ109にデータを書き込むときに行う、ウェアレベリング処理のフロー図である。
まず、アドレス変換制御部401はホスト装置101から入力された論理ブロックアドレスに対応したテーブルNO.(「LB_N」)、例えば図5中(a)で示した「0x0000」のテーブル情報を参照し(S101)、論理ブロックアドレスに対応したテーブルNO.の書き込み回数を読み取る(S102)。
次に、読み取った書き込み回数と、変換テーブル402内の最小書き込み回数(MN_NUM)とを比較し、その差が予め設定された閾値「0x7f」以上か否かを判定する(S103)。
FIG. 6 is a flowchart of wear leveling processing performed when the address
First, the address
Next, the read write count is compared with the minimum write count (MN_NUM) in the conversion table 402, and it is determined whether or not the difference is equal to or greater than a preset threshold value “0x7f” (S103).
上記差が「0x7f」以上であるときは(S103、YES)、論理ブロックアドレスに対応したテーブルNO.のテーブルに格納されている情報を、レジスタ403内に設けられた図示しないバッファ(BUF1)に一時的に蓄積する(S104)。
続いて、変換テーブル402に格納されている代替物理ブロックアドレス用テーブルNO.(SUB_N)のテーブル情報を参照して(S105)、論理ブロックアドレスに対応したテーブルNO.のテーブル内の物理ブロックアドレスを変換テーブル402に格納されている代替物理ブロックアドレス用テーブルNO.のテーブル内の物理ブロックアドレスに変更し(S106)、論理ブロックアドレスに対応したテーブルNO.のテーブル内の物理ブロックアドレスの書き換え回数を変換テーブル402に格納されている代替物理ブロックアドレス用テーブルNO.のテーブル内の書き込み回数に1を加えた値に変更する(S107)。
When the difference is “0x7f” or more (S103, YES), the table No. corresponding to the logical block address is stored. The information stored in the table is temporarily stored in a buffer (BUF1) (not shown) provided in the register 403 (S104).
Subsequently, the alternative physical block address table NO. Referring to the table information of (SUB_N) (S105), the table NO. The physical block address in the table of the alternative physical block address NO. (S106), the table No. corresponding to the logical block address is changed. The number of rewrites of the physical block address in the table of the alternative physical block address NO. The value is changed to a value obtained by adding 1 to the number of writes in the table (S107).
次に、アドレス変換制御部401は、代替物理ブロックアドレス用テーブルNO.内の物理ブロックアドレスに、変更後の論理ブロックアドレスに対応したテーブルNO.のテーブル内の物理ブロックアドレスを出力し(S108)、代替物理ブロックアドレス用テーブルNO.内のテーブル情報、即ち、物理ブロックアドレスと書き込み回数をBUF1に蓄積していた論理ブロックアドレスに対応したテーブルNO.(LB_N)の変更前のテーブルの情報に変更する(S109)。
以上の処理を終えた後、代替物理ブロックアドレス用テーブルNO.を書き込み回数が最も少ない物理ブロックアドレスを格納したテーブルNO.に更新して終了する(代替物理ブロックアドレス更新処理)(S111)。
Next, the address
After completing the above processing, the alternative physical block address table NO. Table No. storing the physical block address with the smallest number of writes. And the process ends (substitute physical block address update process) (S111).
一方、上記差が「0x7f」未満であるときは(S103、NO)、論理ブロックアドレスに対応したテーブルNO.のテーブル内の物理ブロックアドレスをそのまま出力し(S110)、同様に変換テーブル402に格納されている代替物理ブロックアドレス用テーブルNO.を書き込み回数が最も少ない物理ブロックアドレスを格納したテーブルNO.に更新して終了する(S111)。 On the other hand, when the difference is less than “0x7f” (S103, NO), the table NO. The physical block address in the table is output as it is (S110), and the alternative physical block address table NO. Table No. storing the physical block address with the smallest number of writes. (S111).
図7は、図6に示したステップS111の代替物理ブロックアドレス更新処理のサブルーチンを示すフロー図である。
まず、変換テーブル402内の最小書き込み回数(MN_NUM)に所定の値「0xfffff」を設定し、参照するテーブルNO.(TN)に「0x0000」を設定する(S201)。続いて、参照するテーブルNO.のテーブルに格納された書き込み回数(R_NUM)の値を読み取り(S202)、読み取った参照するテーブルNO.のテーブルに格納された書き込み回数と変換テーブル402内の最小書き込み回数とを比較する(S203)。
変換テーブル402内の最小書き込み回数が、参照するテーブルNO.のテーブルに格納された書き込み回数より大きいときは(S203、YES)、代替物理ブロックアドレス用テーブルNO.の値を参照するテーブルNO.の値に変更し(S204)、参照するテーブルNO.のテーブルに格納された書き込み回数の値を変換テーブル402内の最小書き込み回数の値に変更する(S205)。
変換テーブル402内の最小書き込み回数が参照するテーブルNO.のテーブルに格納された書き込み回数より小さいときは(S203、NO)、代替物理ブロックアドレス用テーブルNO.及び参照するテーブルNO.のテーブルに格納された書き込み回数の値は変更せず、次のステップに進む。
FIG. 7 is a flowchart showing a subroutine of the alternative physical block address update process in step S111 shown in FIG.
First, a predetermined value “0xfffff” is set to the minimum number of times of writing (MN_NUM) in the conversion table 402, and the table NO. “TN” is set to “0x0000” (S201). Subsequently, the table NO. The value of the write count (R_NUM) stored in the table is read (S202). The number of writes stored in the table is compared with the minimum number of writes in the conversion table 402 (S203).
The minimum number of times of writing in the conversion table 402 is the table No. to be referenced. Is greater than the number of writes stored in the table (S203, YES), the alternative physical block address table NO. Table No. that refers to the value of (S204), the table No. to be referred to is changed. The write count value stored in the table is changed to the minimum write count value in the conversion table 402 (S205).
The table No. referred to by the minimum number of writes in the conversion table 402. Is smaller than the number of writes stored in the table (S203, NO), the alternative physical block address table NO. And the table No. to be referred to. The value of the number of times of writing stored in the table is not changed, and the process proceeds to the next step.
次に、参照するテーブルNO.の値と、変換テーブル402に格納されているテーブルNO.の最大値(MX_TBL_NUM)とを比較し(S206)、参照するテーブルNO.が上記テーブルNO.の最大値より小さいときは(S206、YES)、参照するテーブルNO.の値に1を加えて(S207)、ステップS202の処理に戻る。
参照するテーブルNO.が上記テーブルNO.の最大値より小さくない、即ち参照するテーブルNO.と上記テーブルNO.の最大値とが同値のときは(S206、NO)、処理を終了する。
Next, the table NO. And the table No. stored in the conversion table 402. Is compared with the maximum value (MX_TBL_NUM) of the table No. (S206). Is the above table NO. Is smaller than the maximum value (S206, YES), the referenced table No. 1 is added to the value of (S207), and the process returns to step S202.
Reference table No. Is the above table NO. Is not smaller than the maximum value, that is, the table No. to be referred to is. And the above table NO. When the maximum value is the same value (S206, NO), the process is terminated.
以上の処理により、代替物理ブロックアドレス用テーブルNO.が変換テーブル402内の最も書き込み回数が少ない物理ブロックアドレスを含むテーブルNO.になるように更新することができ、図6に示したウェアレベリング処理で、所定条件のときに最も書き込み回数の少ない物理ブロックアドレスに書き込み処理を行うことができる。 With the above processing, the alternative physical block address table NO. Table No. including the physical block address with the smallest number of writes in the conversion table 402. In the wear leveling process shown in FIG. 6, the write process can be performed to the physical block address with the smallest number of writes under a predetermined condition.
図8は、図6及び図7で説明した処理を行った後の、変換テーブル402に格納されているデータを示す図である。
図6及び図7で説明した処理により、図示のように、図5に示したテーブルNO.「0x0000」内のテーブル情報(物理ブロックアドレスと、書き込み回数)(図5中(a))が、「0x0f02」内のテーブル情報(図5中(b))と交換されており、交換後のテーブルNO.「0x0000」内の書き込み回数が1インクリメントされている(図中(c)、(d))。
FIG. 8 is a diagram illustrating data stored in the conversion table 402 after the processing described with reference to FIGS. 6 and 7 is performed.
6 and FIG. 7, the table No. 1 shown in FIG. Table information in “0x0000” (physical block address and number of writes) ((a) in FIG. 5) is exchanged with table information in (0x0f02) ((b) in FIG. 5). Table NO. The number of writes in “0x0000” is incremented by 1 ((c) and (d) in the figure).
以上で説明したように、リードライト制御部108を備えたSSD100では、ある物理ブロックアドレスに対する書き込み回数が他の物理ブロックアドレスと比較して所定値以上多くなると、書き込み回数が多くなった物理ブロックアドレスに対応していた論理ブロックアドレス(テーブルNO.)を、書き込み回数が少ない物理ブロックアドレスに対応するように変更することで、特定の物理ブロックアドレスへの書き込み回数を平均化する。
As described above, in the
次に、リードライト制御部108について説明する。
本リードライト制御部108においては、以上で説明したウェアレベリングを行いつつ、SSD100のNANDフラッシュメモリ109へ書込評価を行うにあたって、ホスト装置101からのSSD100へのATAコマンドにより、データを書き込む対象となる変換テーブル402内のテーブルNO.(論理ブロックアドレス)の上限を設定して、その結果、論理ブロックアドレスに対応する物理ブロックアドレスを制限し、書込評価時間を短縮する。
即ち、図4に示した変換テーブル402の全てのテーブルNO.の書き込み回数が0で、論理ブロックアドレスと物理ブロックアドレスが一致する状態(以下、「初期状態」という)において、予め図4に示したレジスタ403に上限物理ブロックアドレスを設定した後、規格で定められていないコマンド「AA(H)」を、図2に示したコマンドブロックレジスタの「command」に書き込むことで、設定した上限物理ブロックアドレスをデータの書き込み対象となる物理ブロックアドレスの上限とする。つまり、このような初期状態では、論理ブロックアドレスと物理ブロックアドレスが一致するから、設定した上限物理アドレスと同じ値を論理ブロックアドレスの上限としてアクセスを行った場合に、ウェアレベリング処理が行われても、アクセスされる物理アドレスは0から上限物理アドレスの範囲内となる。
Next, the read /
In the read /
That is, all the table Nos. Of the conversion table 402 shown in FIG. In the state where the number of times of writing is 0 and the logical block address matches the physical block address (hereinafter referred to as “initial state”), the upper limit physical block address is set in the
例えば、図4に示したレジスタ403に上限物理ブロックアドレス:7FF(H)を設定して、アドレス上限設定コマンドAA(H)を「command」に書き込むことで、レジスタ403内のデータが7FF(H)に書き換えられる(更新される)。
このとき、本願発明のアドレス変換制御手段に対応するアドレス変換制御部401は、レジスタ403内の7FF(H)を上限としてテーブルNO.の最大値に適用して、つまり、テーブルNO.の最大値を「0x07ff」として、「0x07ff」以下のテーブルNO.(論理ブロックアドレス)のみに対してアドレス変換を行うように制御する。従って、「0x07ff」より大きな論理ブロックアドレスに対応する物理ブロックアドレスには書き込みを行わないようになる。
For example, by setting the upper limit physical block address: 7FF (H) in the
At this time, the address
最大物理ブロックアドレスが7FF(H)であるときは、1メモリブロックが512Byte(バイト)であるので、制限されたNANDフラッシュメモリの物理ブロックアドレスの空間(容量)は、7FF(H)×512=約1MBとなる。
物理ブロックアドレスの空間が1MBに制限された場合の書込評価時間は、リードライト制御部401のウェアレベリング処理により、理論上、1MB×10万回の書き込みができると考えられることから、ATAマスタインタフェース制御部105、ATAスレーブインタフェース制御部107間の転送速度が10MB/秒とすると、(1(MB)×10(万回))/10(MB/秒)=1万秒=約2.777時間となり、1GBの物理ブロックアドレス空間を書込評価する場合に比して、1/1000の評価時間に短縮される。
When the maximum physical block address is 7FF (H), since one memory block is 512 bytes (bytes), the space (capacity) of the physical block address of the limited NAND flash memory is 7FF (H) × 512 = About 1MB.
Since the write evaluation time when the space of the physical block address is limited to 1 MB can be theoretically written by 1 MB × 100,000 times by the wear leveling process of the read /
このように、物理ブロックアドレスの上限を設定することで、ウェアレベリング等の処理を行うリードライト制御部108の機能を変更することなく、評価時間を短縮することができ、結果として、書込評価に必要な消費電力を抑制することができる。
また、リードライト制御部108のアドレス変換制御部401が自動的に物理ブロックアドレスの上限を設定するから、ユーザがホスト装置101を操作するだけで容易に評価時間を短縮することができる。
なお、上記のように物理ブロックアドレスに上限を設定し、その範囲内の物理ブロックアドレスに対してのみ評価を行っても、デバイスの特性はアドレスによってほぼ変わらないと考えられるため、評価の信頼性に対する影響は少ないと考えられる。
Thus, by setting the upper limit of the physical block address, the evaluation time can be shortened without changing the function of the read /
In addition, since the address
Even if the upper limit is set for the physical block address as described above and only the physical block address within the range is evaluated, it is considered that the device characteristics do not substantially change depending on the address. The impact on
次に、本リードライト制御部108の別の実施形態について説明する。
図9は、別の実施形態に係るリードライト制御部108内のウェアレベリング処理を行う部分の機能ブロック図である。
このリードライト制御部108内のウェアレベリング処理を行う部分の機能ブロックは、論理ブロックアドレスと物理ブロックアドレスとを対応させたデータを格納している変換テーブル902と、この変換テーブル902に基づいて、ホスト装置101から受信した論理ブロックアドレスを物理ブロックアドレスに変換するアドレス変換制御部901と、変換テーブル902内の実際のテーブルNO.の最大値である実最大値904か、書込評価する際に用いるテーブルNO.である評価用最大値905かを選択する選択部903とを有する。
なお、この実最大値904と評価用最大値905は、図示しない記憶手段に記憶されている。
Next, another embodiment of the read /
FIG. 9 is a functional block diagram of a part that performs wear leveling processing in the read /
The functional block of the part that performs wear leveling processing in the read /
The actual
選択部903はSSD100に搭載された操作手段であるスイッチ906により、実最大値904と評価用最大値905とのいずれを選択するかが指定される、即ち、スイッチ906がオフ状態(図示の状態)のときは実最大値904が、オン状態のときは評価用最大値が選択されるように指定される。
従って、例えば評価用最大値905が7ff(H)に設定されている場合に、選択部903が評価用最大値905を選択すると、アドレス変換制御部901は、評価用最大値905をテーブルNO.の最大値に適用して、上述したように、書込評価用として物理ブロックアドレス空間を約1MBに設定し、評価時間を短縮することができる。
また、上記実施形態に係るリードライト制御部108に比して、外部にスイッチ機構を設ける必要があるが、特別なソフトウェアを不要とし、簡易的に物理ブロックアドレスの上限を設定することができる。
The
Therefore, for example, when the evaluation
Further, compared to the read /
なお、スイッチ906が、複数の状態に切り替え可能な構成であれば、それぞれの状態に応じた物理ブロックアドレスを図示しない記憶手段に記憶させておくことで、スイッチ906で選択部903にそれぞれの物理ブロックアドレスのいずれかを選択させ、アドレス変換制御部901がその物理ブロックアドレスを上限として、アドレス変換するように制御することもできる。
If the
次に、本不揮発性メモリ制御装置であるSSDを搭載した画像処理装置について説明する。
図10は、SSDを搭載した画像処理装置の1実施形態であるディジタル複写機の構成を示す概略側面図である。
このディジタル複写機300は、原稿の画像を読み取るためのスキャナ部301と、読み取った画像に基づいて用紙へ画像形成を行うレーザ記録部302と、画像形成を行った用紙(出力紙)を揃え、これにステープル、パンチ処理を行う後処理部303とから成っている。
Next, an image processing apparatus equipped with an SSD as the nonvolatile memory control apparatus will be described.
FIG. 10 is a schematic side view showing the configuration of a digital copying machine which is an embodiment of an image processing apparatus equipped with an SSD.
The
スキャナ部301は、透明ガラス体で構成された原稿台304と、原稿台304の上に原稿を給送するRADF(自動両面原稿送り装置:Reversing Auto Document Feeder)305と、原稿台304上に給送された原稿の画像を読み取るスキャナユニット306とから成っている。
RADF305は、図示しない原稿トレイから原稿台304を経由して、図示しない排紙トレイに至るまでの片面原稿給送路と、スキャナユニット306で片面の画像を読み取った原稿の表裏面を反転して再度原稿台304に給送するための両面原稿給送路を有している。
スキャナユニット306は、RADF305から給送された原稿に半導体レーザで光を照射し、レンズ、ミラー等で原稿の反射光を光電変換素子の受光面に結合させる。その光電変換素子は原稿の画像面における反射光を電気信号に変換する。
The
The
The
レーザ記録部302は、用紙を搬送する用紙搬送部307と、スキャナユニット306で読み取った画像データを感光体上に画像形成するレーザ書込ユニット308と、用紙に画像を形成する電子写真プロセス部(画像形成部)309を有している。
用紙搬送部307は、図示しない給紙トレイから電子写真プロセス部309に用紙を搬送する主搬送路と、用紙の両面に画像を形成する両面転写モード時に、図示しない定着ローラを通過した用紙を、その表裏面を反転して再度電子写真プロセス部309に搬送する複搬送路を備えている。
レーザ書込ユニット308は、スキャナユニット306で読み取った画像データに基づいてレーザ光を照射する半導体レーザを備え、この半導体レーザから照射された光をミラーやレンズを通して電子写真プロセス部309の感光体ドラムの表面に配光する。これにより、電子写真プロセス部309の感光体ドラム表面には静電潜像が形成され、現像装置からトナーが供給されてトナー画像が形成される。
このトナー画像は、用紙搬送部307から搬送された用紙上に転写された後、定着ローラにて加熱及び加圧され、トナーが溶融して用紙の表面に定着する。
The
The
The
The toner image is transferred onto a sheet conveyed from the
図11は、このディジタル複写機300の制御部のブロック図である。
この制御部は、画像データに対して各種の画像処理を施す画像処理ボード201を有している。
この画像処理ボード201は、ユニット毎に配置されたボード、即ち、光電変換素子を周辺部品と共に搭載したCCD(Charge Coupled Device)ボード210、このディジタル複写機300の上面に設けられたLCD(Liquid Crystal Display)223と操作キー224を備えた操作パネル225を制御するオペレーションパネルボード228、プロセス部215、読取スキャナ部216、両面ユニット217を制御するマシンコントロールボード231を制御する。
FIG. 11 is a block diagram of the control unit of the digital copying
The control unit includes an
The
画像処理ボード201は、各ボード210,228,231を制御するCPU(Central Processing Unit)202と、このCPU202の作業領域であるRAM(Random Access Memory)203と、図10に示したスキャナユニット306で読み取った画像を処理する画像処理部204と、画像処理部で処理した画像を蓄積するメモリ206と、メモリ206に画像を保存し、又はメモリ206から画像を読み出す画像蓄積制御部205と、画像処理部204で処理した画像を感光体に書き込むレーザ書込部209を制御するレーザコントロール部207とから成っている。
The
CCDボード212は、RADF305により搬送された原稿の画像を読み取るCCD213と、このCCD213を制御するCCD制御部212と、読み取った画像データの出力信号にゲイン調整を行うアナログ回路214と、アナログ信号をデジタル信号に変換するA/D(アナログ/デジタル)変換部211とを有する。
The
オペレーションパネルボード228は、画像処理ボード201のCPU202と制御データを送受信して操作パネル224を制御するCPU226と、この作業領域であるRAM227とを有する。
マシンコントロールボード231は、ディジタル複写機300のマシン、即ち、プロセス部215、読み取りスキャナ部216、両面ユニット217、後処理部303、RADF305、用紙搬送部307を駆動制御するCPU230と、この作業領域であるRAM229とを有し、画像処理ボード201のCPU202と制御データのやり取りを行う。
The
The
このディジタル複写機300においてコピーを行うときは、まず、RADF305により図10に示した原稿台304に給送された原稿の画像を順次CCD213が読み取り、その後、読み取った画像データの出力信号はアナログ回路214でゲイン調整が行われ、A/D変換部211から8ビットの画像データとして画像処理ボード201に送られる。
続いて、この画像データは、画像処理部204において所定の画像処理が施された後、画像蓄積制御部205により、一度メモリ206に蓄積された後、SSD(Solid State Disc)208に転送(記憶)される。
以上の画像データの処理がRADF305にセットされた全ての原稿について行われる。
When copying in the digital copying
Subsequently, the image data is subjected to predetermined image processing in the
The above image data processing is performed for all the originals set in the
原稿の画像読み取りが終了すると、SSD208に格納された複数枚分の画像データは画像蓄積制御部205により、ページ順に読み出す処理が設定部数回だけ繰り返して実行され、画像処理部204において所定の画像処理後、レーザコントロール部207を介してレーザ書込部209に供給され、用紙に画像の書き込みが終了した後、後処理部303において一部分の出力用紙が揃えられ、ステープル、パンチ処理が行われ、トレイに排紙される。
When the image reading of the document is completed, the image
このディジタル複写機300において、SSD208を本不揮発性メモリ制御装置であるSSDとし、上述したように最大物理ブロックアドレスを設定することで、ディジタル複写機300に搭載した状態、即ち実際の使用条件に近い状態で書込評価を行うことができ、この評価時間を従来に比して短時間で行うことができる。
In this digital copying
100,208・・・SSD、101・・・ホスト装置、102・・・主制御部、103・・・データ蓄積部、104・・・ATAマスタインタフェース部、105・・・ATAマスタインタフェース制御部、106・・・ATAスレーブインタフェース部、107・・・ATAスレーブインタフェース制御部、108・・・リードライト制御部、109・・・NANDフラッシュメモリ、110・・・ATAケーブル、201・・・画像処理ボード、202,221,222,226,230・・・CPU、203,227,229・・・RAM、204・・・画像処理部、205・・・画像蓄積制御部、206・・・メモリ、207・・・レーザコントロール部、209・・・レーザ書込部、210・・・CCDボード、211・・・A/D変換部、212・・・CCD制御部、213・・・CCD、214・・・アナログ回路、215・・・プロセス部、216・・・読み取りスキャナ部、217・・・両面ユニット、223・・・LCD、224・・・操作キー、225・・・操作パネル、228・・・オペレーションパネルボード、231・・・マシンコントロールボード、301・・・スキャナ部、302・・・レーザ記録部、303・・・後処理部、304・・・原稿台、305・・・RADF、306・・・スキャナユニット、307・・・用紙搬送部、308・・・レーザ書き込みユニット、309・・・電子写真プロセス部。
100, 208 ... SSD, 101 ... host device, 102 ... main control unit, 103 ... data storage unit, 104 ... ATA master interface unit, 105 ... ATA master interface control unit, 106: ATA slave interface unit, 107: ATA slave interface control unit, 108: Read / write control unit, 109: NAND flash memory, 110: ATA cable, 201:
Claims (7)
論理ブロックアドレスと物理ブロックアドレスとの対応関係情報を格納する格納手段と、
前記格納手段の対応関係情報に基づいて、外部装置からの論理ブロックアドレスを物理ブロックアドレスに変換するアドレス変換手段と、
外部装置から入力された上限物理ブロックアドレスを記憶する記憶手段と、
前記記憶手段に記憶された上限物理ブロックアドレスを上限として、前記アドレス変換手段がアドレス変換を行うように制御するアドレス変換制御手段と、を有することを特徴とする不揮発性メモリ制御装置。 A non-volatile memory control device including a read / write control unit that performs read / write processing of data to a predetermined physical block address of a non-volatile memory based on a logical block address from an external device,
Storage means for storing correspondence information between logical block addresses and physical block addresses;
Address conversion means for converting a logical block address from an external device into a physical block address based on correspondence information of the storage means;
Storage means for storing an upper limit physical block address input from an external device;
A non-volatile memory control device comprising: address conversion control means for controlling the address conversion means to perform address conversion with the upper limit physical block address stored in the storage means as an upper limit.
論理ブロックアドレスと物理ブロックアドレスとの対応関係情報を格納する格納手段と、
予め複数の物理ブロックアドレスを記憶している記憶手段と、
前記記憶手段に記憶された複数の物理ブロックアドレスのうち一つを選択する選択手段と、
前記選択手段が選択した物理ブロックアドレスを上限として、前記アドレス変換手段がアドレス変換を行うように制御するアドレス変換制御手段と、を有することを特徴とする不揮発性メモリ制御装置。 A non-volatile memory control device including a read / write control unit that performs read / write processing of data to a predetermined physical block address of a non-volatile memory based on a logical block address from an external device,
Storage means for storing correspondence information between logical block addresses and physical block addresses;
Storage means for storing a plurality of physical block addresses in advance;
Selection means for selecting one of a plurality of physical block addresses stored in the storage means;
A non-volatile memory control device comprising: address translation control means for controlling the address translation means to perform address translation with the physical block address selected by the selection means as an upper limit.
前記格納手段は、前記物理ブロックアドレスへのデータの書込回数情報を格納しており、
前記アドレス変換制御手段は、
外部装置から受信した論理ブロックアドレスに対応する物理ブロックアドレスの書込回数情報を前記格納手段から取得する手段と、
前記書込回数情報と、前記格納手段に格納されている全物理ブロックアドレスの書込回数情報のうち最小の書込回数情報とを比較する手段とを有し、
前記書込回数情報と、前記最小の書込回数情報との回数の差が所定値以上であるとき、前記論理ブロックアドレスに対応する物理ブロックアドレスを、書込回数情報が最小である物理ブロックアドレスに変更することを特徴とする不揮発性メモリ制御装置。 The non-volatile memory control device according to claim 1 or 2,
The storage means stores data write count information to the physical block address,
The address translation control means includes
Means for acquiring from the storage means write count information of a physical block address corresponding to a logical block address received from an external device;
Means for comparing the write count information with the minimum write count information among the write count information of all physical block addresses stored in the storage means;
When the difference between the write count information and the minimum write count information is greater than or equal to a predetermined value, the physical block address corresponding to the logical block address is the physical block address with the minimum write count information. A non-volatile memory control device, wherein
外部装置から入力された上限物理ブロックアドレスを記憶する工程と、
リードライト処理を行う物理ブロックアドレスに対応する論理ブロックアドレスを前記外部装置から受信する工程と、
前記記憶手段に記憶されている上限物理ブロックアドレスを上限として、前記受信した論理ブロックアドレスを物理ブロックアドレスに変換する工程と、を有することを特徴とする不揮発メモリ制御方法。 A nonvolatile memory control method for performing data read / write processing on a predetermined physical block address of a nonvolatile memory based on a logical block address from an external device,
Storing an upper limit physical block address input from an external device;
Receiving a logical block address corresponding to a physical block address to be read / written from the external device;
And a step of converting the received logical block address into a physical block address with an upper limit physical block address stored in the storage means as an upper limit.
リードライト処理を行う物理ブロックアドレスに対応する論理ブロックアドレスを前記外部装置から受信する工程と、
記憶手段に予め記憶された複数の物理ブロックアドレスのうち一つを選択する選択工程と、
前記記憶手段に記憶されている物理ブロックアドレスを上限として、前記受信した論理ブロックアドレスを物理ブロックアドレスに変換する工程と、を有することを特徴とする不揮発メモリ制御方法。 A nonvolatile memory control method for performing data read / write processing on a predetermined physical block address of a nonvolatile memory based on a logical block address from an external device,
Receiving a logical block address corresponding to a physical block address to be read / written from the external device;
A selection step of selecting one of a plurality of physical block addresses stored in advance in the storage means;
And a step of converting the received logical block address into a physical block address with the physical block address stored in the storage means as an upper limit.
外部装置から受信した論理ブロックアドレスに対応する物理ブロックアドレスの書込回数情報を取得する工程と、
前記書込回数情報と、全物理ブロックアドレスの書込回数情報のうち最小の書込回数情報とを比較する工程と、
前記書込回数情報と、前記最小の書込回数情報との回数の差が所定値以上であるとき、前記論理ブロックアドレスに対応する物理ブロックアドレスを、書込回数情報が最小である物理ブロックアドレスに変更する工程とを有することを特徴とする不揮発性メモリ制御方法。 The nonvolatile memory control method according to claim 5 or 6,
Obtaining the write count information of the physical block address corresponding to the logical block address received from the external device;
Comparing the write count information with the minimum write count information among the write count information of all physical block addresses;
When the difference between the write count information and the minimum write count information is greater than or equal to a predetermined value, the physical block address corresponding to the logical block address is the physical block address with the minimum write count information. And a non-volatile memory control method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008055398A JP2009211550A (en) | 2008-03-05 | 2008-03-05 | Nonvolatile memory control device, image processor equipped with the same, and nonvolatile memory control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008055398A JP2009211550A (en) | 2008-03-05 | 2008-03-05 | Nonvolatile memory control device, image processor equipped with the same, and nonvolatile memory control method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009211550A true JP2009211550A (en) | 2009-09-17 |
Family
ID=41184611
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008055398A Pending JP2009211550A (en) | 2008-03-05 | 2008-03-05 | Nonvolatile memory control device, image processor equipped with the same, and nonvolatile memory control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009211550A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022545715A (en) * | 2019-08-26 | 2022-10-28 | マイクロン テクノロジー,インク. | Bank configurable power modes |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61228539A (en) * | 1985-04-03 | 1986-10-11 | Hitachi Ltd | Address converting circuit |
JPH06222986A (en) * | 1993-01-26 | 1994-08-12 | Oki Electric Ind Co Ltd | Memory controller |
JP2000148969A (en) * | 1998-11-04 | 2000-05-30 | Matsushita Electric Ind Co Ltd | Address generation circuit |
JP2006099731A (en) * | 2004-08-30 | 2006-04-13 | Matsushita Electric Ind Co Ltd | Resource management apparatus |
JP2007172333A (en) * | 2005-12-22 | 2007-07-05 | Sanyo Electric Co Ltd | Bus address selection circuit and method of selecting bus address |
-
2008
- 2008-03-05 JP JP2008055398A patent/JP2009211550A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61228539A (en) * | 1985-04-03 | 1986-10-11 | Hitachi Ltd | Address converting circuit |
JPH06222986A (en) * | 1993-01-26 | 1994-08-12 | Oki Electric Ind Co Ltd | Memory controller |
JP2000148969A (en) * | 1998-11-04 | 2000-05-30 | Matsushita Electric Ind Co Ltd | Address generation circuit |
JP2006099731A (en) * | 2004-08-30 | 2006-04-13 | Matsushita Electric Ind Co Ltd | Resource management apparatus |
JP2007172333A (en) * | 2005-12-22 | 2007-07-05 | Sanyo Electric Co Ltd | Bus address selection circuit and method of selecting bus address |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022545715A (en) * | 2019-08-26 | 2022-10-28 | マイクロン テクノロジー,インク. | Bank configurable power modes |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5979512B2 (en) | Image forming apparatus and flash memory control method | |
US9223691B2 (en) | Data storage device and method for flash block management | |
US7882301B2 (en) | Wear leveling in storage devices based on flash memories and related circuit, system, and method | |
KR100626393B1 (en) | Non-volatile memory device and multi-page copyback method thereof | |
JP5096847B2 (en) | ACCESS CONTROL DEVICE, ACCESS CONTROL METHOD, ACCESS CONTROL PROGRAM, RECORDING MEDIUM, STORAGE DEVICE, AND IMAGE PROCESSING DEVICE | |
TWI482169B (en) | Dynamic optimization of back-end memory system interface | |
JP5917163B2 (en) | Information processing apparatus, control method and program thereof, and storage medium | |
TWI395229B (en) | Method and apparatus for setting operational information of a non-volatile memory | |
CN105304127B (en) | Image forming apparatus and control method of flash memory | |
US7221468B2 (en) | Nonvolatile memory life prolonging circuit and image forming apparatus | |
JP6308433B2 (en) | Image forming apparatus, control method, and control program | |
JP2007094639A (en) | Memory controller and flash memory system | |
JP2009211550A (en) | Nonvolatile memory control device, image processor equipped with the same, and nonvolatile memory control method | |
JP6245041B2 (en) | Information processing apparatus and flash memory control method | |
US6792223B2 (en) | Image forming apparatus for reducing a system return time | |
JP5625888B2 (en) | Semiconductor storage medium control apparatus, semiconductor storage medium control method, and image forming apparatus. | |
JP4562433B2 (en) | Image processing device | |
JP2008009614A (en) | Memory controller, memory system, and memory control method | |
JP2005292925A (en) | Memory controller, flash memory system, and control method for flash memory | |
JP2001356967A (en) | Method for controlling writing of non-volatile memory | |
JP2019191910A (en) | Memory controller, non-volatile storage device, non-volatile storage system, and memory control method | |
JP2009139874A (en) | Image forming apparatus | |
JP2015232856A (en) | Image processor | |
JP2005250619A (en) | Nonvolatile storage device and its rewriting method | |
JP2006048227A (en) | Memory device, memory device control method and data processing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20101102 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121129 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130125 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20130215 |