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 PDF

Info

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
Application number
JP2008055398A
Other languages
Japanese (ja)
Inventor
Yoshimichi Kanda
好道 神田
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2008055398A priority Critical patent/JP2009211550A/en
Publication of JP2009211550A publication Critical patent/JP2009211550A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To considerably shorten an evaluation time for a nonvolatile semiconductor memory such as a NAND flash memory. <P>SOLUTION: A logical block address: 7FF(H) is set to a register 403, and a maximum physical block address assignment command AA(H) is written in a "command" to rewrite data in the register 403 into 7FF(H). At this time, an address change control part 401 controls to apply 7FF(H) in the register 403 to the maximum value of a table NO. (the maximum table NO.), i.e., to change the maximum value of the table NO. to "OxO7ff" i.e., to set the maximum value of the table NO. to "OxO7ff" and to make an address change of only the table NO. below "OxO7ff" (the logical block address). <P>COPYRIGHT: (C)2009,JPO&INPIT

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内に設けられた酸化膜(例えば、SiO:二酸化シリコン)が高電圧により劣化する。従って、特定のメモリブロックにデータの書き込みを複数回、一般的に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).

しかしながら、上記各特許文献に記載された不揮発性半導体メモリ等では、多少の評価時間の短縮が見込まれる可能性はあるが、大幅な短縮は難しい。
また、評価時間を短縮するために、物理アドレスへの書き込み方法、即ちウェアレベリング方式を改善することも考えられるが、ウェアレベリングの方式は各社毎に異なり、その内容がユーザに公開されていない場合が多いため、ユーザがアドレスを制御して評価時間の短縮を行うことは困難である。
特開平10−55691号公報 特開2007−250187号公報
However, in the nonvolatile semiconductor memory and the like described in each of the above patent documents, although there is a possibility that the evaluation time is somewhat shortened, it is difficult to significantly reduce the evaluation time.
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.
Japanese Patent Laid-Open No. 10-55691 JP 2007-250187 A

本発明は、上記従来の問題を解決するためになされたもので、その目的は、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 host apparatus 101 and the SSD 100 are connected to each other by an ATA (AT Attachment) cable 110.
The SSD 100 includes an ATA slave interface unit 106 that connects the ATA cable 110, an ATA slave interface control unit 107 that controls the ATA slave interface unit 106 to transmit and receive data to and from the host device 101, and data received from the host device 101. NAND flash memory 109 which is a non-volatile memory for storing data, and a read / write control unit 108 which performs read / write control of the NAND flash memory 109.
The read / write control unit 108 performs a wear leveling process, which will be described later, in order to average the number of writes to each physical block address of the NAND flash memory 109.

ホスト装置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 host apparatus 101 is an electronic apparatus such as an image forming apparatus or a personal computer that is an external apparatus of the SSD 100, and is a main control section 102 that controls the entire system, and a data that is a storage section that accumulates data transmitted to and received from the SSD 100. The storage unit 103, the ATA master interface unit 104 that connects the ATA cable 110, and the ATA master interface control unit 105 that controls the ATA master interface unit 104 and transmits / receives data to / from the SSD 100.
The main control unit 102 includes a microcomputer including a CPU (Central Processing Unit), a RAM (Random Access Memory), and a ROM (Read Only Memory), and requests for storing data (write commands) to the SSD 100 and the storage thereof. Data to be transmitted, a predetermined data read request (read command), and reception of data transmitted in response to the read request.

このシステムにおいて、ホスト装置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 host device 101 to the SSD 100 is performed by the host device 101 writing an ATA command to an I / O register in the read / write control unit 108 of the SSD 100.
FIG. 2 is a diagram showing a list of I / O registers corresponding to the state of the signal lines of the ATA cable 110.
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 cable 110, Data is transferred when the host apparatus 101 writes an ATA command to either the command block register or the control block register.

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 host device 101 to write data to the SSD 100.
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 NAND flash memory 109, and the host device 101 sets the logical block address and registers the ATA command. Thus, data is written to the memory block having the physical block address corresponding to the set logical block address.

論理ブロックアドレスは、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 NAND flash memory 109 corresponds to each address.
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 host device 101 writes to the NAND flash memory 109 is set in the Sector Count (sector count register). That is, when storing the data amount of 1 to 255 sectors, the number of sectors is set in the sector count register, and when storing the data amount of 256 sectors, 0 is exceptionally set in the sector count register. .

以上で説明したように、SSD100では、データを書き込む論理ブロックアドレスと、書き込むデータ量をレジスタに設定してATAコマンドをレジスタに書き込むと、図1に示したリードライト制御部108が、NANDフラッシュメモリ109にデータの書き込みを行う。
なお、このとき、リードライト制御部108は、特定の物理ブロックアドレスへの書き込み回数を平均化するため、後述するウェアレベリング方式でデータを書き込む。
As described above, in the SSD 100, when the logical block address for writing data and the amount of data to be written are set in the register and the ATA command is written in the register, the read / write control unit 108 shown in FIG. Data is written to 109.
At this time, the read / write control unit 108 writes data by a wear leveling method to be described later in order to average the number of times of writing to a specific physical block address.

図4は、本リードライト制御部108内のこのウェアレベリング処理を行う部分の機能ブロック図である。
リードライト制御部108内のウェアレベリング処理を行う部分の機能ブロックは、論理ブロックアドレスと物理ブロックアドレスとの対応関係情報を格納している格納手段である変換テーブル402と、この変換テーブル402に格納された上記対応関係情報に基づいて、ホスト装置101から受信した論理ブロックアドレスを物理ブロックアドレスに変換するアドレス変換制御部401と、各種データの記憶手段であるレジスタ403とから成っている。
FIG. 4 is a functional block diagram of a part of the read / write control unit 108 that performs this wear leveling process.
The functional block of the part performing the wear leveling processing in the read / write control unit 108 is stored in the conversion table 402 which is storage means for storing correspondence information between the logical block address and the physical block address, and stored in this conversion table 402. The address conversion control unit 401 converts a logical block address received from the host device 101 into a physical block address based on the correspondence information, and a register 403 which is a storage unit for various data.

図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 host apparatus 101 when performing wear leveling to be described later (for example, (b Table No. “0x0f01”).

リードライト制御部108が、所定の物理ブロックアドレスに書き込みを行うと、テーブル内の物理ブロックアドレスに対応した書き込み回数がインクリメントされて記憶される。
なお、変換テーブル402に対する読み出しやデータの更新は、アドレス変換制御部401が行う。
When the read / write control unit 108 writes to a predetermined physical block address, the write count corresponding to the physical block address in the table is incremented and stored.
Note that the address conversion control unit 401 reads data from the conversion table 402 and updates data.

図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 translation control unit 401 writes data to the NAND flash memory 109.
First, the address conversion control unit 401 stores a table No. corresponding to the logical block address input from the host device 101. (“LB_N”), for example, refer to the table information “0x0000” shown in FIG. 5A (S101), and the table No. corresponding to the logical block address. Is read (S102).
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 translation control unit 401 reads the alternative physical block address table NO. The table No. corresponding to the changed logical block address is stored in the physical block address in the table. The physical block address in the table is output (S108), and the alternative physical block address table NO. Table information corresponding to the logical block address in which the physical block address and the write count are stored in BUF1. The information is changed to the information in the table before the change of (LB_N) (S109).
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 SSD 100 including the read / write control unit 108, when the number of writes to a certain physical block address increases by a predetermined value or more compared to another physical block address, the physical block address that has increased the number of writes. Is changed so as to correspond to a physical block address with a small number of times of writing, thereby averaging the number of times of writing to a specific physical block address.

次に、リードライト制御部108について説明する。
本リードライト制御部108においては、以上で説明したウェアレベリングを行いつつ、SSD100のNANDフラッシュメモリ109へ書込評価を行うにあたって、ホスト装置101からのSSD100へのATAコマンドにより、データを書き込む対象となる変換テーブル402内のテーブルNO.(論理ブロックアドレス)の上限を設定して、その結果、論理ブロックアドレスに対応する物理ブロックアドレスを制限し、書込評価時間を短縮する。
即ち、図4に示した変換テーブル402の全てのテーブルNO.の書き込み回数が0で、論理ブロックアドレスと物理ブロックアドレスが一致する状態(以下、「初期状態」という)において、予め図4に示したレジスタ403に上限物理ブロックアドレスを設定した後、規格で定められていないコマンド「AA(H)」を、図2に示したコマンドブロックレジスタの「command」に書き込むことで、設定した上限物理ブロックアドレスをデータの書き込み対象となる物理ブロックアドレスの上限とする。つまり、このような初期状態では、論理ブロックアドレスと物理ブロックアドレスが一致するから、設定した上限物理アドレスと同じ値を論理ブロックアドレスの上限としてアクセスを行った場合に、ウェアレベリング処理が行われても、アクセスされる物理アドレスは0から上限物理アドレスの範囲内となる。
Next, the read / write control unit 108 will be described.
In the read / write control unit 108, when performing write evaluation to the NAND flash memory 109 of the SSD 100 while performing the wear leveling described above, the read / write control unit 108 determines whether data is to be written by an ATA command from the host device 101 to the SSD 100. Table NO. An upper limit of (logical block address) is set, and as a result, the physical block address corresponding to the logical block address is limited, and the write evaluation time is shortened.
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 register 403 shown in FIG. The command “AA (H)” that has not been written is written to “command” of the command block register shown in FIG. 2, so that the set upper limit physical block address becomes the upper limit of the physical block address to which data is to be written. In other words, in such an initial state, since the logical block address and the physical block address match, the wear leveling process is performed when the access is performed with the same value as the set upper limit physical address as the upper limit of the logical block address. However, the accessed physical address is in the range of 0 to the upper limit physical address.

例えば、図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 register 403 shown in FIG. 4 and writing the address upper limit setting command AA (H) to “command”, the data in the register 403 becomes 7FF (H ) Is rewritten (updated).
At this time, the address translation control unit 401 corresponding to the address translation control means of the present invention sets the table NO. Applied to the maximum value of the table NO. The maximum value of “0x07ff” is assumed, and the table NO. Control is performed so as to perform address conversion only on (logical block address). Therefore, writing is not performed to a physical block address corresponding to a logical block address larger than “0x07ff”.

最大物理ブロックアドレスが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 / write control unit 401, the ATA master If the transfer rate between the interface control unit 105 and the ATA slave interface control unit 107 is 10 MB / second, (1 (MB) × 10 (10,000 times)) / 10 (MB / second) = 10,000 seconds = about 2.777. The time is shortened to 1/1000 of the evaluation time compared to the case of writing and evaluating the 1 GB physical block address space.

このように、物理ブロックアドレスの上限を設定することで、ウェアレベリング等の処理を行うリードライト制御部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 / write control unit 108 that performs processing such as wear leveling. As a result, the write evaluation It is possible to suppress power consumption necessary for the operation.
In addition, since the address conversion control unit 401 of the read / write control unit 108 automatically sets the upper limit of the physical block address, the evaluation time can be easily shortened simply by operating the host device 101 by the user.
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 / write control unit 108 will be described.
FIG. 9 is a functional block diagram of a part that performs wear leveling processing in the read / write control unit 108 according to another embodiment.
The functional block of the part that performs wear leveling processing in the read / write control unit 108 includes a conversion table 902 that stores data in which a logical block address and a physical block address are associated, and the conversion table 902. An address conversion control unit 901 that converts a logical block address received from the host apparatus 101 into a physical block address, and an actual table No. in the conversion table 902. The actual maximum value 904 that is the maximum value of the table No. or the table NO. And a selection unit 903 that selects the evaluation maximum value 905.
The actual maximum value 904 and the evaluation maximum value 905 are stored in a storage unit (not shown).

選択部903はSSD100に搭載された操作手段であるスイッチ906により、実最大値904と評価用最大値905とのいずれを選択するかが指定される、即ち、スイッチ906がオフ状態(図示の状態)のときは実最大値904が、オン状態のときは評価用最大値が選択されるように指定される。
従って、例えば評価用最大値905が7ff(H)に設定されている場合に、選択部903が評価用最大値905を選択すると、アドレス変換制御部901は、評価用最大値905をテーブルNO.の最大値に適用して、上述したように、書込評価用として物理ブロックアドレス空間を約1MBに設定し、評価時間を短縮することができる。
また、上記実施形態に係るリードライト制御部108に比して、外部にスイッチ機構を設ける必要があるが、特別なソフトウェアを不要とし、簡易的に物理ブロックアドレスの上限を設定することができる。
The selection unit 903 designates which of the actual maximum value 904 and the evaluation maximum value 905 is to be selected by a switch 906 that is an operation unit mounted on the SSD 100. That is, the switch 906 is in an off state (the state illustrated in FIG. ) Specifies that the actual maximum value 904 is selected, and in the ON state, the evaluation maximum value is selected.
Therefore, for example, when the evaluation maximum value 905 is set to 7 ff (H), when the selection unit 903 selects the evaluation maximum value 905, the address conversion control unit 901 stores the evaluation maximum value 905 in the table NO. As described above, the physical block address space can be set to about 1 MB for writing evaluation, and the evaluation time can be shortened.
Further, compared to the read / write control unit 108 according to the above embodiment, it is necessary to provide a switch mechanism outside, but no special software is required, and the upper limit of the physical block address can be set easily.

なお、スイッチ906が、複数の状態に切り替え可能な構成であれば、それぞれの状態に応じた物理ブロックアドレスを図示しない記憶手段に記憶させておくことで、スイッチ906で選択部903にそれぞれの物理ブロックアドレスのいずれかを選択させ、アドレス変換制御部901がその物理ブロックアドレスを上限として、アドレス変換するように制御することもできる。   If the switch 906 can be switched to a plurality of states, a physical block address corresponding to each state is stored in a storage unit (not shown), so that the switch 906 causes each selection unit 903 to store each physical block address. One of the block addresses can be selected, and the address conversion control unit 901 can control to perform address conversion with the physical block address as an upper limit.

次に、本不揮発性メモリ制御装置である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 digital copying machine 300 has a scanner unit 301 for reading an image of a document, a laser recording unit 302 that forms an image on a sheet based on the read image, and a sheet (output sheet) on which the image is formed. This includes a post-processing unit 303 that performs stapling and punching.

スキャナ部301は、透明ガラス体で構成された原稿台304と、原稿台304の上に原稿を給送するRADF(自動両面原稿送り装置:Reversing Auto Document Feeder)305と、原稿台304上に給送された原稿の画像を読み取るスキャナユニット306とから成っている。
RADF305は、図示しない原稿トレイから原稿台304を経由して、図示しない排紙トレイに至るまでの片面原稿給送路と、スキャナユニット306で片面の画像を読み取った原稿の表裏面を反転して再度原稿台304に給送するための両面原稿給送路を有している。
スキャナユニット306は、RADF305から給送された原稿に半導体レーザで光を照射し、レンズ、ミラー等で原稿の反射光を光電変換素子の受光面に結合させる。その光電変換素子は原稿の画像面における反射光を電気信号に変換する。
The scanner unit 301 includes a platen 304 made of a transparent glass body, a RADF (Reversing Auto Document Feeder) 305 for feeding a document on the platen 304, and a document on the platen 304. The scanner unit 306 reads the image of the sent document.
The RADF 305 reverses the one-sided document feed path from the document tray (not shown) to the paper discharge tray (not shown) through the document table 304 and the front and back surfaces of the document read by the scanner unit 306 on one side. A double-sided document feeding path for feeding again to the document table 304 is provided.
The scanner unit 306 irradiates the original fed from the RADF 305 with a semiconductor laser, and couples the reflected light of the original to the light receiving surface of the photoelectric conversion element with a lens, a mirror, or the like. The photoelectric conversion element converts the reflected light on the image surface of the document into an electrical signal.

レーザ記録部302は、用紙を搬送する用紙搬送部307と、スキャナユニット306で読み取った画像データを感光体上に画像形成するレーザ書込ユニット308と、用紙に画像を形成する電子写真プロセス部(画像形成部)309を有している。
用紙搬送部307は、図示しない給紙トレイから電子写真プロセス部309に用紙を搬送する主搬送路と、用紙の両面に画像を形成する両面転写モード時に、図示しない定着ローラを通過した用紙を、その表裏面を反転して再度電子写真プロセス部309に搬送する複搬送路を備えている。
レーザ書込ユニット308は、スキャナユニット306で読み取った画像データに基づいてレーザ光を照射する半導体レーザを備え、この半導体レーザから照射された光をミラーやレンズを通して電子写真プロセス部309の感光体ドラムの表面に配光する。これにより、電子写真プロセス部309の感光体ドラム表面には静電潜像が形成され、現像装置からトナーが供給されてトナー画像が形成される。
このトナー画像は、用紙搬送部307から搬送された用紙上に転写された後、定着ローラにて加熱及び加圧され、トナーが溶融して用紙の表面に定着する。
The laser recording unit 302 includes a sheet conveying unit 307 that conveys a sheet, a laser writing unit 308 that forms an image of image data read by the scanner unit 306 on a photosensitive member, and an electrophotographic process unit (which forms an image on a sheet). An image forming unit) 309.
The paper transport unit 307 passes the paper that has passed through a fixing roller (not shown) in a main transport path for transporting paper from a paper feed tray (not shown) to the electrophotographic process unit 309 and a double-sided transfer mode in which images are formed on both sides of the paper. A double conveyance path for inverting the front and back surfaces and conveying the image to the electrophotographic process unit 309 again is provided.
The laser writing unit 308 includes a semiconductor laser that irradiates a laser beam based on the image data read by the scanner unit 306, and the photosensitive drum of the electrophotographic process unit 309 passes the light irradiated from the semiconductor laser through a mirror or a lens. The light distribution on the surface. As a result, an electrostatic latent image is formed on the surface of the photosensitive drum of the electrophotographic process unit 309, and toner is supplied from the developing device to form a toner image.
The toner image is transferred onto a sheet conveyed from the sheet conveying unit 307, and then heated and pressurized by a fixing roller, whereby the toner is melted and fixed on the surface of the sheet.

図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 machine 300.
The control unit includes an image processing board 201 that performs various types of image processing on image data.
The image processing board 201 is a board arranged for each unit, that is, a CCD (Charge Coupled Device) board 210 on which photoelectric conversion elements are mounted together with peripheral components, and an LCD (Liquid Crystal) provided on the upper surface of the digital copying machine 300. Display) 223 and an operation panel board 228 for controlling an operation panel 225 provided with operation keys 224, a process unit 215, a reading scanner unit 216, and a machine control board 231 for controlling a duplex unit 217 are controlled.

画像処理ボード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 image processing board 201 includes a CPU (Central Processing Unit) 202 that controls the boards 210, 228, and 231; a RAM (Random Access Memory) 203 that is a work area of the CPU 202; and a scanner unit 306 illustrated in FIG. An image processing unit 204 that processes the read image; a memory 206 that stores the image processed by the image processing unit; an image storage control unit 205 that stores the image in the memory 206 or reads the image from the memory 206; A laser control unit 207 that controls a laser writing unit 209 that writes an image processed by the unit 204 to the photosensitive member.

CCDボード212は、RADF305により搬送された原稿の画像を読み取るCCD213と、このCCD213を制御するCCD制御部212と、読み取った画像データの出力信号にゲイン調整を行うアナログ回路214と、アナログ信号をデジタル信号に変換するA/D(アナログ/デジタル)変換部211とを有する。   The CCD board 212 includes a CCD 213 that reads an image of a document conveyed by the RADF 305, a CCD control unit 212 that controls the CCD 213, an analog circuit 214 that performs gain adjustment on an output signal of the read image data, and an analog signal that is converted into a digital signal. An A / D (analog / digital) converter 211 for converting the signal into a signal.

オペレーションパネルボード228は、画像処理ボード201のCPU202と制御データを送受信して操作パネル224を制御するCPU226と、この作業領域であるRAM227とを有する。
マシンコントロールボード231は、ディジタル複写機300のマシン、即ち、プロセス部215、読み取りスキャナ部216、両面ユニット217、後処理部303、RADF305、用紙搬送部307を駆動制御するCPU230と、この作業領域であるRAM229とを有し、画像処理ボード201のCPU202と制御データのやり取りを行う。
The operation panel board 228 includes a CPU 226 that transmits / receives control data to / from the CPU 202 of the image processing board 201 to control the operation panel 224, and a RAM 227 that is a work area.
The machine control board 231 includes a CPU 230 that drives and controls the machine of the digital copying machine 300, that is, the process unit 215, the reading scanner unit 216, the duplex unit 217, the post-processing unit 303, the RADF 305, and the paper transport unit 307. It has a certain RAM 229 and exchanges control data with the CPU 202 of the image processing board 201.

このディジタル複写機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 machine 300, first, the CCD 213 sequentially reads the image of the document fed to the document table 304 shown in FIG. 10 by the RADF 305, and then the output signal of the read image data is an analog circuit. In 214, gain adjustment is performed, and the A / D converter 211 sends the image data to the image processing board 201 as 8-bit image data.
Subsequently, the image data is subjected to predetermined image processing in the image processing unit 204, and then stored in the memory 206 once by the image storage control unit 205, and then transferred (stored) to an SSD (Solid State Disc) 208. )
The above image data processing is performed for all the originals set in the RADF 305.

原稿の画像読み取りが終了すると、SSD208に格納された複数枚分の画像データは画像蓄積制御部205により、ページ順に読み出す処理が設定部数回だけ繰り返して実行され、画像処理部204において所定の画像処理後、レーザコントロール部207を介してレーザ書込部209に供給され、用紙に画像の書き込みが終了した後、後処理部303において一部分の出力用紙が揃えられ、ステープル、パンチ処理が行われ、トレイに排紙される。   When the image reading of the document is completed, the image accumulation control unit 205 repeatedly reads out the image data for a plurality of sheets stored in the SSD 208 in the order of pages, and the image processing unit 204 performs predetermined image processing. Thereafter, the output is supplied to the laser writing unit 209 via the laser control unit 207, and after the writing of the image on the paper is finished, a part of the output paper is aligned in the post-processing unit 303, and the stapling and punching processes are performed. The paper is discharged.

このディジタル複写機300において、SSD208を本不揮発性メモリ制御装置であるSSDとし、上述したように最大物理ブロックアドレスを設定することで、ディジタル複写機300に搭載した状態、即ち実際の使用条件に近い状態で書込評価を行うことができ、この評価時間を従来に比して短時間で行うことができる。   In this digital copying machine 300, the SSD 208 is the nonvolatile memory control device SSD, and the maximum physical block address is set as described above, so that the state mounted in the digital copying machine 300, that is, close to the actual use conditions. Write evaluation can be performed in a state, and this evaluation time can be performed in a shorter time than in the past.

SSDとホスト装置から成るシステムの構成を示すブロック図である。It is a block diagram which shows the structure of the system which consists of SSD and a host apparatus. ATAケーブルの信号線の状態に対応するI/Oレジスタの一覧を示す図である。It is a figure which shows the list of the I / O register corresponding to the state of the signal line | wire of an ATA cable. ホスト装置がSSDにデータを書き込むためのパラメータを設定するレジスタの一覧を示す図である。It is a figure which shows the list of the registers which set the parameter for a host apparatus to write data in SSD. 本リードライト制御部内のウェアレベリング処理を行う部分の機能ブロック図である。It is a functional block diagram of the part which performs the wear leveling process in this read / write control part. 変換テーブルに格納されているデータを示す図である。It is a figure which shows the data stored in the conversion table. アドレス変換制御部がNANDフラッシュメモリにデータを書き込むときに行う、ウェアレベリング処理のフロー図である。It is a flowchart of the wear leveling process performed when an address translation control part writes data in NAND flash memory. 代替物理ブロックアドレス更新処理のサブルーチンを示すフロー図である。It is a flowchart which shows the subroutine of an alternative physical block address update process. 変換テーブルに格納されているデータを示す図である。It is a figure which shows the data stored in the conversion table. 別の実施形態に係るリードライト制御部内のウェアレベリング処理を行う部分の機能ブロック図である。It is a functional block diagram of the part which performs the wear leveling process in the read / write control part which concerns on another embodiment. SSDを搭載した画像処理装置の1実施形態であるディジタル複写機の構成を示す概略側面図である。1 is a schematic side view showing a configuration of a digital copying machine which is an embodiment of an image processing apparatus equipped with an SSD. このディジタル複写機の制御部のブロック図である。2 is a block diagram of a control unit of the digital copying machine. FIG.

符号の説明Explanation of symbols

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: Image processing board 202, 221, 222, 226, 230 ... CPU, 203, 227, 229 ... RAM, 204 ... image processing unit, 205 ... image accumulation control unit, 206 ... memory, 207 ..Laser control unit, 209... Laser writing unit, 210... CCD board, 211. D conversion unit, 212 ... CCD control unit, 213 ... CCD, 214 ... analog circuit, 215 ... process unit, 216 ... reading scanner unit, 217 ... duplex unit, 223 ... LCD, 224 ... operation keys, 225 ... operation panel, 228 ... operation panel board, 231 ... machine control board, 301 ... scanner unit, 302 ... laser recording unit, 303 ... ..Post-processing section, 304... Document table, 305... RADF, 306... Scanner unit, 307... Paper transport section, 308 .. Laser writing unit, 309. .

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.
請求項1又は2に記載された不揮発性メモリ制御装置において、
前記格納手段は、前記物理ブロックアドレスへのデータの書込回数情報を格納しており、
前記アドレス変換制御手段は、
外部装置から受信した論理ブロックアドレスに対応する物理ブロックアドレスの書込回数情報を前記格納手段から取得する手段と、
前記書込回数情報と、前記格納手段に格納されている全物理ブロックアドレスの書込回数情報のうち最小の書込回数情報とを比較する手段とを有し、
前記書込回数情報と、前記最小の書込回数情報との回数の差が所定値以上であるとき、前記論理ブロックアドレスに対応する物理ブロックアドレスを、書込回数情報が最小である物理ブロックアドレスに変更することを特徴とする不揮発性メモリ制御装置。
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
請求項1ないし3のいずれかに記載された不揮発性メモリ制御装置を備えたことを特徴とする画像処理装置。   An image processing apparatus comprising the non-volatile memory control device according to claim 1. 外部装置からの論理ブロックアドレスに基づいて不揮発性メモリの所定の物理ブロックアドレスにデータのリードライト処理を行う不揮発性メモリ制御方法であって、
外部装置から入力された上限物理ブロックアドレスを記憶する工程と、
リードライト処理を行う物理ブロックアドレスに対応する論理ブロックアドレスを前記外部装置から受信する工程と、
前記記憶手段に記憶されている上限物理ブロックアドレスを上限として、前記受信した論理ブロックアドレスを物理ブロックアドレスに変換する工程と、を有することを特徴とする不揮発メモリ制御方法。
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.
請求項5又は6に記載された不揮発性メモリ制御方法において、
外部装置から受信した論理ブロックアドレスに対応する物理ブロックアドレスの書込回数情報を取得する工程と、
前記書込回数情報と、全物理ブロックアドレスの書込回数情報のうち最小の書込回数情報とを比較する工程と、
前記書込回数情報と、前記最小の書込回数情報との回数の差が所定値以上であるとき、前記論理ブロックアドレスに対応する物理ブロックアドレスを、書込回数情報が最小である物理ブロックアドレスに変更する工程とを有することを特徴とする不揮発性メモリ制御方法。
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.
JP2008055398A 2008-03-05 2008-03-05 Nonvolatile memory control device, image processor equipped with the same, and nonvolatile memory control method Pending JP2009211550A (en)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022545715A (en) * 2019-08-26 2022-10-28 マイクロン テクノロジー,インク. Bank configurable power modes

Citations (5)

* Cited by examiner, † Cited by third party
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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