JP2016004403A - Image processor, write control program and write control method - Google Patents

Image processor, write control program and write control method Download PDF

Info

Publication number
JP2016004403A
JP2016004403A JP2014123951A JP2014123951A JP2016004403A JP 2016004403 A JP2016004403 A JP 2016004403A JP 2014123951 A JP2014123951 A JP 2014123951A JP 2014123951 A JP2014123951 A JP 2014123951A JP 2016004403 A JP2016004403 A JP 2016004403A
Authority
JP
Japan
Prior art keywords
flash memory
data
write control
writing
written
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014123951A
Other languages
Japanese (ja)
Other versions
JP6405736B2 (en
Inventor
佳実 中山
Yoshimi Nakayama
佳実 中山
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.)
Konica Minolta Inc
Original Assignee
Konica Minolta Inc
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 Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2014123951A priority Critical patent/JP6405736B2/en
Publication of JP2016004403A publication Critical patent/JP2016004403A/en
Application granted granted Critical
Publication of JP6405736B2 publication Critical patent/JP6405736B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System (AREA)

Abstract

PROBLEM TO BE SOLVED: To properly write data without deteriorating the performance of processing that uses a flash memory.SOLUTION: An image processor including a flash memory for temporarily storing data to be used for processing about an image includes a state determination part for determining a state of the flash memory, and a write control part for controlling data writing in the flash memory. The write control part compares a free space of the flash memory with specific capacity set based on the state of the flash memory when writing data to be used for prescribed processing, writes the data in the case that the free capacity is equal to or more than the specific capacity, and writes the data after saving prescribed data stored in the flash memory in different storage means to secure the specific capacity in the case that the free capacity is smaller than the specific capacity.

Description

本発明は、画像処理装置及び制御プログラム並びに制御方法に関し、特に、フラッシュメモリを備える画像処理装置及び当該フラッシュメモリへのデータの書き込みを制御する制御プログラム並びに制御方法に関する。   The present invention relates to an image processing device, a control program, and a control method, and more particularly, to an image processing device including a flash memory and a control program and a control method for controlling data writing to the flash memory.

記憶媒体としてSSD(Solid State Drive)やeMMC(embedded Multi Media Card)などの不揮発性メモリ(フラッシュメモリ)を採用する画像形成装置が増加してきている。フラッシュメモリの用途としては、プログラムの格納だけでなく、画像データのバッファメモリとして使用し、頻繁にデータの書き換えを行うような使い方も行われている。   An increasing number of image forming apparatuses employ non-volatile memories (flash memories) such as SSDs (Solid State Drives) and eMMCs (embedded Multi Media Cards) as storage media. The flash memory is used not only for storing programs but also as a buffer memory for image data and frequently rewriting data.

このようなフラッシュメモリを利用する装置に関して、例えば、下記特許文献1には、ホスト装置から書き込み要求されたデータを記憶する不揮発性メモリと、前記不揮発性メモリにかかるリソースの使用量が所定量に達したとき前記不揮発性メモリにかかるリソースを整理してリソースを増加させるリソース管理部と、前記ホスト装置からの書き込みデータの受信にかかる転送速度の設定値を算出する転送速度設定部と、前記ホスト装置から書き込みデータを受信して、当該受信した書き込みデータを前記不揮発性メモリに転送する転送制御部と、を備え、前記転送速度設定部は、前記不揮発性メモリにかかるリソースの使用量が増加するほど低い設定値を算出し、前記転送制御部は、前記リソース管理部がリソースを整理している間、前記ホスト装置からの書き込みデータの受信を前記転送速度設定部が算出した設定値の転送速度で実行するメモリシステムが開示されている。   Regarding a device that uses such a flash memory, for example, in Patent Document 1 below, a nonvolatile memory that stores data requested to be written by a host device, and the amount of resources used for the nonvolatile memory is set to a predetermined amount. A resource management unit that organizes resources related to the non-volatile memory and increases the resources when it reaches, a transfer rate setting unit that calculates a set value of a transfer rate required to receive write data from the host device, and the host A transfer control unit that receives write data from the device and transfers the received write data to the non-volatile memory, and the transfer rate setting unit increases the amount of resources used by the non-volatile memory. The transfer control unit calculates the previous setting value while the resource management unit organizes resources. Memory system to run at the transfer rate of the set value of the reception of the write data from the host device the transmission rate setting unit is calculated are disclosed.

特開2012−141994号公報JP 2012-141994 A

後述するように、フラッシュメモリはデバイスの構造上、オーバーライトができず、データを消去してからでないと新たなデータを書き込むことができない。また、ブロック単位でしかデータを消去することができない。そのため、小さいサイズのデータを書こうとすると、ブロックサイズに対して小さいサイズのデータが書き込まれることになり、無駄が多くなる。また、データの書き込みを繰り返し行うと、空きブロックが減少し、部分的にデータが書き込まれたブロックにデータを分割して書き込まなければならなくなるため、多くのブロックにアクセスすることによってデータの書き込みに時間がかかり、フラッシュメモリを使用する処理のパフォーマンスに大きな影響を与える。   As will be described later, the flash memory cannot be overwritten due to the device structure, and new data cannot be written until the data is erased. Also, data can be erased only in block units. For this reason, when trying to write data of a small size, data of a size smaller than the block size is written, which increases waste. Also, if data writing is repeated, the number of empty blocks decreases, and data must be divided and written into blocks where data has been partially written, so data can be written by accessing many blocks. It takes time and greatly affects the performance of processing using flash memory.

この空きブロックの減少に関して、リソースを整理してリソースを増加させる処理(後述するガベージコレクション)が行われており、上記特許文献1では、リソース管理部がリソースを整理している間、書き込みデータの転送速度を低く設定する制御を行っている。しかしながら、この方法はガベージコレクションを円滑に進めて空きブロックを作り出すことを目的としており、データの書き込み時にガベージコレクションを行うと、書き込みデータの転送速度が低くなることによってパフォーマンスは低下してしまう。   Regarding the reduction of the empty block, processing for increasing resources by organizing resources (garbage collection to be described later) is performed. In Patent Literature 1, while the resource management unit organizes resources, Control to set the transfer speed low. However, this method is intended to smoothly advance garbage collection to create an empty block, and if garbage collection is performed during data writing, the transfer rate of the write data is lowered, thereby reducing the performance.

本発明は、上記問題点に鑑みてなされたものであって、その主たる目的は、フラッシュメモリを使用する処理のパフォーマンスを低下させることなく、適切にデータを書き込むことができる画像処理装置及び制御プログラム並びに制御方法を提供することにある。   The present invention has been made in view of the above problems, and a main object thereof is an image processing apparatus and a control program capable of appropriately writing data without degrading the performance of processing using a flash memory. An object is to provide a control method.

本発明の一側面は、画像に関する処理に使用するデータを一時的に記憶するフラッシュメモリを備える画像処理装置において、前記フラッシュメモリの状態を判定する状態判定部と、前記フラッシュメモリへのデータの書き込みを制御する書き込み制御部と、を備え、前記書き込み制御部は、画像に関する所定の処理に使用するデータを前記フラッシュメモリに書き込む際に、前記フラッシュメモリの空き容量と前記フラッシュメモリの状態に基づいて設定される特定容量とを比較し、前記空き容量が前記特定容量以上の場合は、前記データの書き込みを行い、前記空き容量が前記特定容量よりも小さい場合は、前記フラッシュメモリに記憶されている所定のデータを他の記憶手段に待避させて前記特定容量を確保した後、前記データの書き込みを行うことを特徴とする。   One aspect of the present invention is an image processing apparatus including a flash memory that temporarily stores data used for processing relating to an image, a state determination unit that determines a state of the flash memory, and writing of data to the flash memory A write control unit that controls, based on the free space of the flash memory and the state of the flash memory when writing data to be used for predetermined processing relating to an image to the flash memory. Compared with a specified specific capacity, if the free capacity is greater than the specific capacity, the data is written, and if the free capacity is smaller than the specific capacity, it is stored in the flash memory After the predetermined data is saved in other storage means to secure the specific capacity, the data writing is performed. And performing themselves.

本発明の一側面は、画像に関する処理に使用するデータを一時的に記憶するフラッシュメモリを備える、画像処理装置又は当該画像形成装置を制御する制御装置で動作する書き込み制御プログラムであって、前記画像処理装置又は前記制御装置に、前記フラッシュメモリの状態を判定する状態判定処理、前記フラッシュメモリへのデータの書き込みを制御する書き込み制御処理、を実行させ、前記書き込み制御処理では、画像に関する所定の処理に使用するデータを前記フラッシュメモリに書き込む際に、前記フラッシュメモリの空き容量と前記フラッシュメモリの状態に基づいて設定される特定容量とを比較し、前記空き容量が前記特定容量以上の場合は、前記データの書き込みを行い、前記空き容量が前記特定容量よりも小さい場合は、前記フラッシュメモリに記憶されている所定のデータを他の記憶手段に待避させて前記特定容量を確保した後、前記データの書き込みを行うことを特徴とする。   One aspect of the present invention is a writing control program that operates on an image processing apparatus or a control apparatus that controls the image forming apparatus, which includes a flash memory that temporarily stores data used for processing relating to an image. A processing device or the control device executes state determination processing for determining the state of the flash memory, and write control processing for controlling writing of data to the flash memory. In the write control processing, predetermined processing relating to an image is performed. When writing the data to be used in the flash memory, the free capacity of the flash memory is compared with a specific capacity set based on the state of the flash memory, and if the free capacity is equal to or greater than the specific capacity, When the data is written and the free capacity is smaller than the specific capacity, After securing the specific volume is retracted in another storage means predetermined data stored in the serial flash memory, and performs writing of the data.

本発明の一側面は、画像に関する処理に使用するデータを一時的に記憶するフラッシュメモリを備える画像処理装置における書き込み制御方法であって、前記フラッシュメモリの状態を判定する状態判定処理と、前記フラッシュメモリへのデータの書き込みを制御する書き込み制御処理と、を実行し、前記書き込み制御処理では、画像に関する所定の処理に使用するデータを前記フラッシュメモリに書き込む際に、前記フラッシュメモリの空き容量と前記フラッシュメモリの状態に基づいて設定される特定容量とを比較し、前記空き容量が前記特定容量以上の場合は、前記データの書き込みを行い、前記空き容量が前記特定容量よりも小さい場合は、前記フラッシュメモリに記憶されている所定のデータを他の記憶手段に待避させて前記特定容量を確保した後、前記データの書き込みを行うことを特徴とする。   One aspect of the present invention is a write control method in an image processing apparatus including a flash memory that temporarily stores data used for processing relating to an image, the state determination process for determining the state of the flash memory, and the flash A write control process for controlling the writing of data to the memory, and in the write control process, when writing data to be used for a predetermined process relating to an image to the flash memory, the free space of the flash memory and the Compared with a specific capacity set based on the state of the flash memory, if the free capacity is greater than or equal to the specific capacity, the data is written, and if the free capacity is smaller than the specific capacity, The specified data stored in the flash memory is saved in another storage means and specified. After securing the amount, and performs writing of the data.

本発明の画像処理装置及び書き込み制御プログラム並びに書き込み制御方法によれば、フラッシュメモリを使用する処理のパフォーマンスを低下させることなく、適切にデータを書き込むことができる。   According to the image processing apparatus, the write control program, and the write control method of the present invention, data can be appropriately written without degrading the performance of the process using the flash memory.

その理由は、画像処理装置の制御部(制御プログラム)は、フラッシュメモリのサイズや使用時間、書き込み回数などに基づいてフラッシュメモリの状態を判定し、フラッシュメモリの空き容量とフラッシュメモリの状態に基づいて設定される特定容量とを比較し、空き容量が特定容量以上の場合はデータの書き込みを行い、空き容量が特定容量よりも小さい場合は、フラッシュメモリに記憶されている所定のデータを他の記憶手段に待避させて特定容量を確保した後、データの書き込みを行うからである。   The reason is that the control unit (control program) of the image processing apparatus determines the state of the flash memory based on the size, usage time, number of writes, etc. of the flash memory, and based on the free space of the flash memory and the state of the flash memory. If the free space is greater than the specified capacity, data is written. If the free space is less than the specified capacity, the predetermined data stored in the flash memory This is because the data is written after the storage means saves the specified capacity.

また、画像処理装置の制御部(制御プログラム)は、フラッシュメモリに書き込むデータ量を予測し、予測したデータ量のデータをフラッシュメモリに書き込んだ場合にパフォーマンスを維持できるかを判断し、パフォーマンスを維持できると判断した場合はデータを書き込み、パフォーマンスを維持できないと判断した場合は、フラッシュメモリに記憶されている所定のデータを他の記憶手段に待避させた後に、データの書き込みを行うからである。   In addition, the control unit (control program) of the image processing apparatus predicts the amount of data to be written to the flash memory, determines whether the performance can be maintained when the predicted amount of data is written to the flash memory, and maintains the performance. This is because data is written when it is determined that it can be performed, and when it is determined that the performance cannot be maintained, data is written after the predetermined data stored in the flash memory is saved in another storage means.

フラッシュメモリへのデータの書き込みの一例を模式的に示す図である。It is a figure which shows typically an example of the writing of the data to flash memory. フラッシュメモリへのデータの書き込みの他の例を模式的に示す図である。It is a figure which shows typically the other example of the writing of the data to flash memory. フラッシュメモリへのデータの書き込みの他の例を模式的に示す図である。It is a figure which shows typically the other example of the writing of the data to flash memory. 本発明の第1の実施例に係る画像処理装置(画像形成装置)の外観を示す模式図である。1 is a schematic diagram illustrating an appearance of an image processing apparatus (image forming apparatus) according to a first embodiment of the present invention. 本発明の第1の実施例に係る画像処理装置(画像形成装置)の構成を示すブロック図である。1 is a block diagram illustrating a configuration of an image processing apparatus (image forming apparatus) according to a first embodiment of the present invention. 本発明の第1の実施例に係る画像処理装置(画像形成装置)の制御部の構成を示すブロック図である。1 is a block diagram illustrating a configuration of a control unit of an image processing apparatus (image forming apparatus) according to a first embodiment of the present invention. 本発明の第1の実施例に係る画像処理装置の動作を示すフローチャート図である。It is a flowchart figure which shows operation | movement of the image processing apparatus which concerns on 1st Example of this invention. 本発明の第2の実施例に係る画像処理装置(画像形成装置)の制御部の構成を示すブロック図である。It is a block diagram which shows the structure of the control part of the image processing apparatus (image forming apparatus) which concerns on 2nd Example of this invention. 本発明の第2の実施例に係る画像処理装置の動作を示すフローチャート図である。It is a flowchart figure which shows operation | movement of the image processing apparatus which concerns on 2nd Example of this invention.

フラッシュメモリは、一般に、ゲート電極が2層構造となったMOS(Metal Oxide Semiconductor)トランジスタ(セル)からなり、ソース線とビット線が個々のセルに繋がっているNOR型と、複数のセルがソース線とビット線の間に直列に接続されたNAND型と、があり、頻繁に書き換えを行うデータの記録媒体としては、高集積化が可能なNAND型のフラッシュメモリ(以下、単にNANDフラッシュメモリと称する。)が広く使用されている。いずれの場合も、浮遊ゲートとシリコン基板の間に高電界を加え、ゲート絶縁膜をトンネリングさせて電子を浮遊ゲートに注入することによってデータの書き込みを行う。このようなフラッシュメモリは、以下のような特徴を有する。   A flash memory is generally composed of a MOS (Metal Oxide Semiconductor) transistor (cell) having a gate electrode having a two-layer structure, a source type and a bit line connected to individual cells, and a plurality of cells as a source. There is a NAND type connected in series between a bit line and a bit line. As a data recording medium that is frequently rewritten, a NAND type flash memory that can be highly integrated (hereinafter simply referred to as a NAND flash memory). Are widely used. In either case, data is written by applying a high electric field between the floating gate and the silicon substrate, tunneling the gate insulating film, and injecting electrons into the floating gate. Such a flash memory has the following characteristics.

[書き込み/消去単位]
上述したように、フラッシュメモリでは、浮遊ゲートに電子を注入することによりデータを記憶するため、データを書き込む場合には、浮遊ゲートから電子を取り出した後、浮遊ゲートに電子を注入する必要がある。すなわち、フラッシュメモリはオーバーライトができないため、一旦データを消去して、次に新しいデータを書き込むという2段階の動作が必要となる。その際、NANDフラッシュメモリでは、セルを駆動するのに必要な導線を複数のセルで共有しており、その構造上、データの書き込み、読み込みは複数ビットからなるページ単位(例えば、2kbyte)で行うことができるが、消去は複数ページからなるブロック単位(例えば、128kbyte)で行うため、小さいデータを書き込む場合でもブロック全体を消去しなければならない。例えば、ユーザから見て1ビットの変更を加える場合であっても、フラッシュメモリの内部では最低でも1ブロック分(128kB)の消去が必要となり、フラッシュメモリ上でデータを管理するための大きなオーバーヘッドが発生する。そして、オーバーヘッドが大きいと不必要な読み書きが増え、その結果、トンネル酸化膜に格子欠陥が発生することに起因してフラッシュメモリの性能(データ保持期間)が低下し、同時に寿命も短くなる。
[Program / Erase Unit]
As described above, since data is stored in a flash memory by injecting electrons into the floating gate, when writing data, it is necessary to inject electrons into the floating gate after taking out the electrons from the floating gate. . That is, since the flash memory cannot be overwritten, a two-step operation is required in which data is once erased and then new data is written. At this time, in the NAND flash memory, a plurality of cells share a conductive wire necessary for driving the cell, and due to its structure, data writing and reading are performed in a page unit (for example, 2 kbytes) composed of a plurality of bits. However, since erasure is performed in block units (for example, 128 kbytes) composed of a plurality of pages, the entire block must be erased even when writing small data. For example, even when changing 1 bit from the user's point of view, it is necessary to erase at least one block (128 kB) inside the flash memory, and there is a large overhead for managing data on the flash memory. Occur. If the overhead is large, unnecessary reading / writing increases, resulting in the occurrence of lattice defects in the tunnel oxide film, which reduces the performance (data retention period) of the flash memory and at the same time shortens the lifetime.

[ウェアレベリング]
フラッシュメモリの書き換え限度回数は、フラッシュメモリ全体に対しての回数ではなく、記憶素子(セル)一つに対しての回数によって決定され、一つの記憶素子の書き換え回数が限度を超えただけでもフラッシュメモリ全体として機能しなくなる。そのため、ユーザから見て同じ場所に連続して書いているつもりでもフラッシュメモリ全体で書き換え回数が一定になるように、物理ブロックではデータの移し替えを行っている。この制御をウェアレベリングと呼んでおり、ウェアレベリングにより特定の物理ブロックに書き込みが集中しないように制御している。
[Wear leveling]
The number of times the flash memory can be rewritten is determined not by the number of times for the entire flash memory, but by the number of times for one memory element (cell). The whole memory will not function. For this reason, data is transferred in the physical block so that the number of times of rewriting is constant throughout the entire flash memory even if the user intends to write continuously in the same place. This control is called wear leveling, and control is performed so that writing does not concentrate on a specific physical block by wear leveling.

[Write Amplification(W/A)]
フラッシュメモリでは、上述した書き込みと消去の関係やウェアレベリングでの内部でのデータの移し替えにより、ユーザから見た書き込みデータのデータサイズに対し、実際にデバイス内部に書き込まれるデータサイズは大きくなる。このデバイス内部の書き込みデータサイズがどの程度大きくなるかを倍率で示したものが、W/Aである。W/Aが1になるのが理想的な書き込みであるが、一般には書き込む単位が小さければ小さいほどW/Aの値は大きくなり、それだけNANDフラッシュの書き換え可能回数が減っていく。
[Write Amplification (W / A)]
In the flash memory, the data size actually written in the device becomes larger than the data size of the write data viewed from the user due to the above-described relationship between writing and erasing and internal data transfer in wear leveling. W / A indicates how much the write data size in the device is increased by a magnification. Ideally, W / A is set to 1. However, generally, the smaller the unit of writing, the larger the value of W / A, and the smaller the number of times the NAND flash can be rewritten.

[ガベージコレクション]
NANDフラッシュメモリはブロック単位の消去しかできないために、不要なデータがあってもそのままでは消去できない。そこで、NANDフラッシュメモリでは、使用されていない領域(空き領域)を整理し、未使用領域(未使用ブロック)を作り出す機能を持たせており、この機能をガベージコレクションと呼んでいる。
[Garbage collection]
Since the NAND flash memory can only be erased in units of blocks, even if there is unnecessary data, it cannot be erased as it is. Therefore, the NAND flash memory has a function of organizing unused areas (free areas) and creating unused areas (unused blocks), and this function is called garbage collection.

このように、NANDフラッシュメモリは、その構造上、本来のデータの書き込み以外の読み書きが発生して性能が低下することから、各メーカーでは、W/Aが小さくなるような書き込みとウェアレベリングの両立を図りながら、時にガベージコレクションを行なってパフォーマンスと寿命を確保できるように、NANDコントローラやファームウェアを設計している。しかしながら、設計を工夫しても、NANDフラッシュメモリの状態によっては、パフォーマンスの低下が生じる。以下、具体的なデータを例示してNANDフラッシュメモリにおける問題を説明する。   As described above, the NAND flash memory has a structure in which reading / writing other than the original data writing occurs and the performance deteriorates. Therefore, in each manufacturer, both the writing that reduces W / A and the wear leveling are compatible. The NAND controller and firmware are designed so that sometimes garbage collection is performed to ensure performance and longevity. However, even if the design is devised, the performance is degraded depending on the state of the NAND flash memory. Hereinafter, the problem in the NAND flash memory will be described by exemplifying specific data.

[空のブロックにデータを書き込むケース]
図1に示すように、1ブロックサイズが128kBのフラッシュメモリ(右図参照)に対して、200kBのデータ(左図参照)を書き込む場合、200kB/128kB=1.56となることから、2ブロック分のデータを消去してから書き込む必要があり(右図のドットのハッチング領域)、上述したW/Aは、128kB×2/200kB=1.28となる。
[Case of writing data to empty block]
As shown in FIG. 1, when writing 200 kB data (see the left figure) to a flash memory (see the right figure) with a block size of 128 kB, 200 kB / 128 kB = 1.56. It is necessary to erase the data before writing (dot hatching area in the right figure), and the above W / A is 128 kB × 2/200 kB = 1.28.

[データが保存されているブロックにデータを書き込むケース]
フラッシュメモリに対する書き込みを繰り返し行った場合や、ウェアレベリングによってデータの移し替えが行われた場合、データは分散して記憶される。例えば、図2に示すような空き領域(破線の斜線のハッチング示す部分)が生じた状態のフラッシュメモリに対して、図1と同様のデータを書き込む場合、書き込みデータを更に分割しなければならない。例えば、図3に示すように、物理的には4ブロック分のデータを消去してからマージして書き込みを行わなければならない。このとき、W/Aは、4×128kB/200kB=2.56となり、空きブロックにデータを書き込む場合に比べて、実際の書き込み量は2倍に増えることになる。
[Case of writing data to a block where data is stored]
When data is repeatedly written to the flash memory or when data is transferred by wear leveling, the data is stored in a distributed manner. For example, when data similar to that shown in FIG. 1 is written to a flash memory in which an empty area (a hatched portion with broken lines) as shown in FIG. 2 is generated, the write data must be further divided. For example, as shown in FIG. 3, physically, data for four blocks must be erased and then merged for writing. At this time, W / A is 4 × 128 kB / 200 kB = 2.56, and the actual writing amount is doubled as compared with the case of writing data in the empty block.

特に、ブロックの空き領域が小さくなるほどデータが分散されて書き込まれるため、1ブロックあたりに新たに書き込むサイズxは小さくなる。そして、W/Aはサイズxに反比例するため、書き込み単位が小さくなるほどW/Aの値は大きくなり、書き込み量の増加に伴ってパフォーマンスが低下する。また、図2の状態でガベージコレクションを行った場合、空きブロックを作ってからデータの書き込みが行われるため、データ書き込み時のブロックの消去量は図1と同様に2ブロック分となるが、ガベージコレクション時にデータの移し替えを行うため、このデータの移し替えも加味すると、図1の場合に比べてデータの書き込み効率は悪くなり、やはりパフォーマンスが低下する。   In particular, since the data is distributed and written as the vacant area of the block becomes smaller, the newly written size x per block becomes smaller. Since W / A is inversely proportional to the size x, the value of W / A increases as the write unit decreases, and the performance decreases as the write amount increases. In addition, when garbage collection is performed in the state shown in FIG. 2, data is written after an empty block is created. Therefore, the amount of block erase at the time of data writing is two blocks as in FIG. Since data is transferred at the time of collection, if this data transfer is also taken into consideration, the data writing efficiency becomes worse than in the case of FIG. 1, and the performance is also lowered.

このように、フラッシュメモリにデータを書き込む場合、実際の書き込み量は大きくなり、パフォーマンスを低下させてしまう。特に、書き込みを繰り返し行ったり、ウェアレベリングによってデータの移し替えが行われたりすると、データが分散するため、実際の書き込み量は更に大きくなり、パフォーマンスを更に低下させてしまう。また、データの書き込み時にガベージコレクションを行うと、データの移し替えによってパフォーマンスを低下させてしまう。   As described above, when data is written to the flash memory, the actual writing amount becomes large and the performance is deteriorated. In particular, when data is repeatedly written or data is transferred by wear leveling, the data is dispersed, so that the actual amount of data is further increased and the performance is further deteriorated. In addition, if garbage collection is performed when data is written, performance is degraded due to data transfer.

そこで、本発明の一実施の形態では、フラッシュメモリのサイズや使用時間、書き込み回数などに基づいて規定されるフラッシュメモリの状態に応じて、パフォーマンスを維持してデータを書き込むことができる容量(以下、特定容量と呼ぶ。)が動的に変化することから、データの書き込みに際して、特定容量を確保できると判断した場合はデータの書き込みを行い、特定容量を確保できないと判断した場合はフラッシュメモリ内の所定のデータを待避させて特定容量を確保してから、データの書き込みを行うように制御する。別の言い方をすると、書き込むデータ量を予測し、予測したデータ量のデータを書き込んでも処理のパフォーマンスを維持できると判断した場合はデータの書き込みを行い、処理のパフォーマンスを維持できないと判断した場合は、フラッシュメモリ内の所定のデータを待避させてパフォーマンスを維持できる状態にしてから、データの書き込みを行うように制御する。   Therefore, in one embodiment of the present invention, a capacity (hereinafter referred to as “capable of writing data” while maintaining performance in accordance with the state of the flash memory defined based on the size, usage time, number of writes, etc. of the flash memory. Is called a specific capacity), and when data is written, if it is determined that the specific capacity can be secured, data is written, and if it is determined that the specific capacity cannot be secured, the flash memory The predetermined data is saved and a specific capacity is secured, and then control is performed to write the data. In other words, if you predict the amount of data to write, and if you determine that you can maintain the processing performance even if you write the predicted amount of data, write the data, and if you determine that you cannot maintain the processing performance Then, control is performed so that data is written after the predetermined data in the flash memory is saved so that performance can be maintained.

このように、フラッシュメモリをバッファメモリとして使用する装置の動作時に、フラッシュメモリに特定容量を確保できない若しくは処理のパフォーマンスを維持できない場合はフラッシュメモリ内の所定のデータを一旦退避させてからフラッシュメモリを使用する処理(例えば、画像形成装置のコピー処理やスキャン処理)を実行するため、パフォーマンの低下を回避しつつ、適切にデータを書き込むことができる。   As described above, when a device using the flash memory as a buffer memory is in operation, if a specific capacity cannot be secured in the flash memory or the processing performance cannot be maintained, the flash memory is temporarily saved after temporarily saving predetermined data in the flash memory. Since processing to be used (for example, copy processing or scanning processing of the image forming apparatus) is executed, data can be appropriately written while avoiding performance degradation.

上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の第1の実施例に係る画像処理装置及び書き込み制御プログラム並びに書き込み制御方法について、図4乃至図7を参照して説明する。図4は、本実施例の画像処理装置の外観構成を示す模式図であり、図5は、画像処理装置の構成を示すブロック図である。また、図6は、画像処理装置の制御部の構成を示すブロック図であり、図7は、画像処理装置の動作を示すフローチャート図である。   In order to describe the above-described embodiment of the present invention in more detail, the image processing apparatus, the write control program, and the write control method according to the first embodiment of the present invention will be described with reference to FIGS. . FIG. 4 is a schematic diagram illustrating an external configuration of the image processing apparatus according to the present exemplary embodiment, and FIG. 5 is a block diagram illustrating a configuration of the image processing apparatus. FIG. 6 is a block diagram illustrating the configuration of the control unit of the image processing apparatus, and FIG. 7 is a flowchart illustrating the operation of the image processing apparatus.

図4に示すように、本実施例の画像処理装置は、MFPなどの画像形成装置10であり、原稿を光学的に読み取って画像データを取得し、その画像データに基づく画像を記録紙に印刷したり、外部のコンピュータ装置などから印刷ジョブを取得し、印刷ジョブで指定された原稿の画像データに基づく画像を記録紙に印刷したり、画像データを記憶/出力したりする。   As shown in FIG. 4, the image processing apparatus according to the present embodiment is an image forming apparatus 10 such as an MFP. The image processing apparatus 10 optically reads a document to acquire image data, and prints an image based on the image data on a recording sheet. Or acquiring a print job from an external computer device or the like, printing an image based on the image data of the original specified by the print job on recording paper, or storing / outputting the image data.

具体的には、図5に示すように、画像形成装置10は、制御部20と装置本体30とで構成される。   Specifically, as shown in FIG. 5, the image forming apparatus 10 includes a control unit 20 and an apparatus main body 30.

制御部20は、CPU(Central Processing Unit)21と、RAM22と、フラッシュメモリ23などで構成される。CPU21は、フラッシュメモリ23からプログラムやデータを読み出し、RAM22に展開して実行することにより、画像形成装置10の全体制御や画像処理などを行う。フラッシュメモリ23は、CPU21が実行するプログラムやデータなどを格納する。RAM22は、CPU21の演算処理結果や一時的に記憶するデータなどを格納する。   The control unit 20 includes a CPU (Central Processing Unit) 21, a RAM 22, a flash memory 23, and the like. The CPU 21 performs overall control, image processing, and the like of the image forming apparatus 10 by reading a program and data from the flash memory 23 and developing and executing the program and data on the RAM 22. The flash memory 23 stores programs executed by the CPU 21 and data. The RAM 22 stores calculation processing results of the CPU 21, data to be temporarily stored, and the like.

上記フラッシュメモリ23は、NAND型のフラッシュメモリであり、データの読み出し/書き込み/消去を制御するNANDコントローラとデータを記憶するNANDフラッシュメモリ本体とを含み、NANDフラッシュメモリ本体には、装置を起動するためのブートプログラムや起動時に使用するデータ、後述する書き込み制御プログラムなどに加えて、好ましくは別のパーティションに、画像形成装置10が有する機能(スキャンやコピーなど)を実行する際に使用する画像データが格納される。このフラッシュメモリには、単一メモリセルあたりにデータを多値で記録する構造(MLC:Multi Level Cellと呼ぶ。)、単一メモリセルあたりにデータを2値で記録する構造(SLC:Single Level Cellと呼ぶ。)があり、本実施例ではどちらの構造でもよいが、SLCとMLCとが1つのメモリ内で動作するデュアルモードを搭載したeMMCを使用し、例えば、SLCの領域にプログラム等を記憶し、MLCの領域に画像データを記憶する。なお、フラッシュメモリ23は上記構成に限定されず、プログラム等をNOR型のフラッシュメモリに格納し、画像データ等をNAND型のフラッシュメモリに格納する構成としてもよい。   The flash memory 23 is a NAND flash memory, and includes a NAND controller that controls reading / writing / erasing of data and a NAND flash memory main body that stores data. The NAND flash memory main body activates the device. Image data used when executing functions (scanning, copying, etc.) of the image forming apparatus 10 in another partition, preferably in addition to a boot program for starting up, data used at startup, a writing control program described later, and the like Is stored. This flash memory has a structure in which data is recorded in multiple values per single memory cell (referred to as MLC: Multi Level Cell), and a structure in which data is recorded in binary values per single memory cell (SLC: Single Level). In this embodiment, either structure may be used. However, an eMMC equipped with a dual mode in which SLC and MLC operate in one memory is used. For example, a program or the like is stored in the SLC area. Store the image data in the MLC area. Note that the flash memory 23 is not limited to the above configuration, and a program or the like may be stored in a NOR flash memory, and image data or the like may be stored in a NAND flash memory.

装置本体30は、パネル31と、スキャナ32と、エンジン33などで構成される。   The apparatus main body 30 includes a panel 31, a scanner 32, an engine 33, and the like.

パネル31は、LCD(Liquid Crystal Display)や有機EL(Electro Luminescence)表示装置上に、電極が格子状に配列されたタッチパネルなどであり、スキャンやコピーなどの機能を実現するための各種画面を表示すると共に、これらの機能に対する各種指示を受け付ける。   The panel 31 is a touch panel in which electrodes are arranged in a grid on an LCD (Liquid Crystal Display) or an organic EL (Electro Luminescence) display device, and displays various screens for realizing functions such as scanning and copying. At the same time, it accepts various instructions for these functions.

スキャナ32は、原稿台に載置された原稿の画像を光学的に読み取る部分であり、原稿を走査する光源と、原稿で反射された光を電気信号に変換するCCD(Charge Coupled Devices)等のイメージセンサと、電気信号をA/D変換するA/D変換器等により構成される。   The scanner 32 is a portion that optically reads an image of a document placed on a document table, such as a light source that scans the document and a CCD (Charge Coupled Devices) that converts light reflected by the document into an electrical signal. It comprises an image sensor and an A / D converter that A / D converts an electrical signal.

エンジン33は、電子写真方式や静電記録方式等の作像プロセスを利用した画像形成に必要な構成要素で構成され、フラッシュメモリ23に記憶した画像データに基づいて記録紙に画像を形成する。具体的には、帯電装置により帯電された感光体ドラムに露光装置から画像に応じた光を照射して静電潜像を形成し、現像装置で帯電したトナーを付着させて現像し、そのトナー像を転写ベルトに1次転写し、転写ベルトから紙媒体に2次転写し、更に定着装置で紙媒体にトナー像を定着させる処理を行う。   The engine 33 is composed of components necessary for image formation using an image forming process such as an electrophotographic method or an electrostatic recording method, and forms an image on a recording sheet based on image data stored in the flash memory 23. Specifically, the photosensitive drum charged by the charging device is irradiated with light corresponding to the image from the exposure device to form an electrostatic latent image, and the toner charged by the developing device is attached and developed. The image is primarily transferred to a transfer belt, secondarily transferred from the transfer belt to a paper medium, and a fixing device fixes the toner image onto the paper medium.

なお、図5は本実施例の画像形成装置10の一例であり、その構成は適宜変更可能である。例えば、通信I/F部を設け、ネットワークに接続されるコンピュータ装置などから取得した印刷ジョブに基づいて印刷処理を実行できるようにしたり、FAXの送受信ができるようにしたりしてもよい。また、図5では、画像形成装置10を制御部20と装置本体30とで構成したが、画像形成装置10を制御する制御装置(プリンタコントローラ)に制御部20(書き込み制御プログラム)の機能を持たせるようにしてもよい。   FIG. 5 is an example of the image forming apparatus 10 of the present embodiment, and the configuration thereof can be changed as appropriate. For example, a communication I / F unit may be provided so that print processing can be executed based on a print job acquired from a computer device connected to a network, or FAX transmission / reception can be performed. In FIG. 5, the image forming apparatus 10 includes the control unit 20 and the apparatus main body 30, but the control device (printer controller) that controls the image forming apparatus 10 has the function of the control unit 20 (write control program). You may make it let.

上記構成の画像形成装置10では、スキャナ32で読み取った画像データ、外部のコンピュータ装置から取得した印刷ジョブなどは通常はRAM22に記憶して制御部20で画像処理されるが、フラッシュメモリ23をバッファメモリとして使用して一時的に記憶する場合もある。例えば、複数ページの画像を片面1ページで複数部形成する際に、複数ページの画像を一部ずつ印刷するコレート印刷を行う場合は、フラッシュメモリ23に複数ページの画像データを一時的に保存して一部ずつ印刷処理を実行する。また、スキャン時の画像処理において、中間データを一時的にフラッシュメモリ23に保存する場合がある。   In the image forming apparatus 10 configured as described above, image data read by the scanner 32, a print job acquired from an external computer device, and the like are normally stored in the RAM 22 and subjected to image processing by the control unit 20, but the flash memory 23 is buffered. In some cases, it may be used temporarily as a memory. For example, when collate printing is performed to print a plurality of pages of images part by part when forming a plurality of pages on a single page, a plurality of pages of image data are temporarily stored in the flash memory 23. Print part by part. In addition, intermediate data may be temporarily stored in the flash memory 23 during image processing during scanning.

このような処理を行う場合に、フラッシュメモリ23には複数ページの画像データや中間データを記憶可能な空き容量(各ブロックの空き領域を合計した容量)が必要であることはもちろんであるが、これらのデータを記憶可能な空き容量があったとしても、フラッシュメモリでは実際の書き込み量は大きくなり、更に、個々の空き領域が分散している場合には、これらのデータを分割して書き込まなければならないため、データの書き込みに時間がかかることにより印刷処理やスキャン処理のパフォーマンスが低下する。特に、フラッシュメモリ23の状態(サイズや使用時間、書き込み回数等)に応じて空き領域の分散の程度が異なり、空き領域が散在している場合はデータの分割数が増え、印刷処理やスキャン処理のパフォーマンスが著しく低下する。   When performing such processing, it is needless to say that the flash memory 23 needs to have a free capacity (capacity obtained by adding up the free areas of each block) capable of storing a plurality of pages of image data and intermediate data. Even if there is enough free space to store these data, the actual amount of writing becomes large in the flash memory. Furthermore, if individual free areas are distributed, these data must be divided and written. Therefore, it takes a long time to write data, and the performance of the printing process and the scanning process is deteriorated. In particular, the degree of distribution of free areas varies depending on the state of the flash memory 23 (size, usage time, number of writings, etc.). If free areas are scattered, the number of data divisions increases, and printing processing and scanning processing are performed. The performance of the is significantly reduced.

そこで本実施例では、図6に示すように、制御部20を、状態判定部24及び書き込み制御部25として機能させることによって、パフォーマンスの低下を抑制する。   Therefore, in this embodiment, as shown in FIG. 6, the control unit 20 is caused to function as the state determination unit 24 and the write control unit 25, thereby suppressing a decrease in performance.

状態判定部24は、フラッシュメモリ23のサイズ、使用時間、書き込み回数などの情報をNANDコントローラから取得し、これらの情報に基づいてフラッシュメモリ23の状態(データがどの程度、分散して記憶されているか、データが記憶されていない空きブロックがどの程度あるかなど)を判定する。なお、フラッシュメモリ23のサイズ、使用時間、書き込み回数などとフラッシュメモリ23の状態とは、予め行った実験やシミュレーションの結果などに基づいて関連付けることができる。   The state determination unit 24 obtains information such as the size, usage time, and number of writings of the flash memory 23 from the NAND controller, and the state of the flash memory 23 (how much data is distributed and stored based on the information). Or how many empty blocks there is no data stored in). Note that the size, usage time, number of times of writing, and the like of the flash memory 23 and the state of the flash memory 23 can be associated based on the results of experiments or simulations performed in advance.

書き込み制御部25は、画像形成装置10が有する機能を用いて処理を実行するためにフラッシュメモリ23にデータを書き込む際に、フラッシュメモリ23の状態に基づいて設定される特定容量(パフォーマンスを維持してデータを書き込むことができる容量、すなわち、データを極力分散させずに書き込むことができる領域であり、書き込むデータのデータ量にフラッシュメモリ23の状態に応じて動的に変化する容量を付加した容量)を確保できるかを判断する。具体的には、フラッシュメモリ23の状態に基づいて特定容量を設定し、空き容量が特定容量以上であれば、フラッシュメモリ23にデータを書き込む。一方、空き容量が特定容量よりも小さければ、書き込み済みのデータの中の所定のデータを、必要に応じて圧縮してRAM22などの他の記憶手段に待避させて特定容量を確保した後、フラッシュメモリ23にデータを書き込み、処理が終了した後、RAM22などに退避させたデータを必要に応じて解凍(伸張若しくは展開)してフラッシュメモリ23に書き戻す。なお、パフォーマンスをどの程度のレベルに維持するかは機能毎に設定することができ、データが記憶されていない状態のフラッシュメモリ23をバッファメモリとして使用した場合のパフォーマンスを基準にして設定することができる。また、特定容量は、予め行った実験やシミュレーションの結果などに基づいて、フラッシュメモリ23の状態に関連付けることができる。また、待避させる所定のデータは、最後のアクセスが相対的に古い、アクセス頻度が相対的に低い、又は、重要度が相対的に低いものから順に選択することができる。また、他の記憶手段はRAM22に限らず、画像形成装置10に内蔵若しくは外付けされたHDD(Hard Disk Drive)などとしてもよい。   When writing data to the flash memory 23 to execute processing using the functions of the image forming apparatus 10, the writing control unit 25 maintains a specific capacity (performance is maintained) set based on the state of the flash memory 23. Capacity in which data can be written, that is, an area in which data can be written without being dispersed as much as possible, and a capacity obtained by adding a capacity that dynamically changes according to the state of the flash memory 23 to the amount of data to be written ) Can be secured. Specifically, a specific capacity is set based on the state of the flash memory 23, and data is written to the flash memory 23 if the free capacity is equal to or greater than the specific capacity. On the other hand, if the free capacity is smaller than the specific capacity, the predetermined data in the written data is compressed as necessary and saved in other storage means such as the RAM 22 to secure the specific capacity, and then flashed. After the data is written to the memory 23 and the processing is completed, the data saved in the RAM 22 or the like is decompressed (expanded or expanded) as necessary and written back to the flash memory 23. It should be noted that the level of performance to be maintained can be set for each function, and can be set based on the performance when the flash memory 23 in a state where no data is stored is used as a buffer memory. it can. The specific capacity can be associated with the state of the flash memory 23 based on the results of experiments or simulations performed in advance. The predetermined data to be saved can be selected in order from the oldest last access, the relatively low access frequency, or the relatively low importance. The other storage means is not limited to the RAM 22, and may be an HDD (Hard Disk Drive) built in or externally attached to the image forming apparatus 10.

また、上記状態判定部24及び書き込み制御部25はハードウェアとして構成してもよいし、制御部20を、状態判定部24及び書き込み制御部25として機能させる書き込み制御プログラムとして構成し、当該書き込み制御プログラムをCPU21に実行させるようにしてもよい。   The state determination unit 24 and the write control unit 25 may be configured as hardware, or the control unit 20 may be configured as a write control program that causes the state determination unit 24 and the write control unit 25 to function. The program may be executed by the CPU 21.

以下、上記構成の画像形成装置10の動作について説明する。CPU21は、フラッシュメモリ23に記憶した書き込み制御プログラムをRAM22に展開して実行することにより、図7のフローチャート図に示す各ステップの処理を実行する。なお、図7では印刷処理を例にして説明する。   Hereinafter, the operation of the image forming apparatus 10 configured as described above will be described. The CPU 21 executes the processing of each step shown in the flowchart of FIG. 7 by developing the write control program stored in the flash memory 23 in the RAM 22 and executing it. In FIG. 7, the printing process will be described as an example.

まず、制御部20は、パネル31を用いて指示された処理がコレート印刷であるかを判断する(S101)。コレート印刷でない場合は、フラッシュメモリ23に複数ページの画像データを一時的に記憶する必要がない(RAM22に記憶すればよい)ため、通常の印刷処理を行う(S102)。   First, the control unit 20 determines whether the process instructed using the panel 31 is collate printing (S101). If it is not collate printing, it is not necessary to temporarily store a plurality of pages of image data in the flash memory 23 (it is only necessary to store the image data in the RAM 22), and therefore normal printing processing is performed (S102).

一方、指示された処理がコレート印刷の場合は、制御部20(状態判定部24)は、フラッシュメモリ23のサイズ、使用時間、書き込み回数などに基づいてフラッシュメモリ23の状態を判定する(S103)。次に、制御部20(書き込み制御部25)は、フラッシュメモリ23の状態に基づき、コレート印刷のパフォーマンスを維持してデータを書き込むことができる特定容量を設定し(S104)、特定容量を確保可能であるかを判断する(S105)。空き容量が特定容量以上であれば、制御部20(書き込み制御部25)は、フラッシュメモリ23をバッファメモリとして使用して画像データを書き込みながら印刷処理を実行する(S106)。   On the other hand, if the instructed process is collate printing, the control unit 20 (state determination unit 24) determines the state of the flash memory 23 based on the size, usage time, number of writes, etc. of the flash memory 23 (S103). . Next, the control unit 20 (write control unit 25) sets a specific capacity capable of writing data while maintaining the performance of collate printing based on the state of the flash memory 23 (S104), and can secure the specific capacity. (S105). If the free capacity is equal to or greater than the specific capacity, the control unit 20 (write control unit 25) executes print processing while writing image data using the flash memory 23 as a buffer memory (S106).

一方、空き容量が特定容量よりも小さければ、制御部20(書き込み制御部25)は、予めフラッシュメモリ23に記憶されているデータの中の所定のデータを必要に応じて圧縮してRAM22などの他の記憶手段に退避させて特定容量を確保する(S107)。なお、待避させるデータは特に限定されないが、使用する可能性が低いものを選択することが好ましく、例えば、予め記憶した履歴情報に基づき、最後のアクセスが相対的に古い、又はアクセス頻度が相対的に低い、又は重要度が相対的に低い順に選択することができる。その後、フラッシュメモリ23をバッファメモリとして使用して画像データを書き込みながら印刷処理を実行する(S108)。そして、コレート印刷処理が終了した後、又は一定時間操作がなく電力消費を抑えるモードに入る直前に、RAM22などに退避させたデータを必要に応じて解凍してフラッシュメモリ23に書き戻す(S109)。   On the other hand, if the free capacity is smaller than the specific capacity, the control unit 20 (write control unit 25) compresses predetermined data in the data stored in the flash memory 23 in advance as necessary, such as the RAM 22 or the like. The specific capacity is secured by evacuating to other storage means (S107). The data to be saved is not particularly limited, but it is preferable to select data that is unlikely to be used. For example, based on historical information stored in advance, the last access is relatively old, or the access frequency is relative. Can be selected in descending order of importance or relatively low importance. Thereafter, the printing process is executed while writing image data using the flash memory 23 as a buffer memory (S108). Then, after the collate printing process is completed, or immediately before entering a mode in which there is no operation for a certain time and the power consumption is reduced, the data saved in the RAM 22 or the like is decompressed and written back to the flash memory 23 as necessary (S109). .

図7は、印刷処理の場合の例であるが、スキャン処理の場合は、自動紙送り装置(ADF:Auto Document Feeder)を用いるスキャンであるか、原稿台(フラットベット)を用いるスキャンであるかを判断し、ADFを用いるスキャンの場合は、連続して原稿を読み取ることによりフラッシュメモリ23に多くの空き容量が必要になることから、上記と同様にフラッシュメモリ23の空き容量をチェックする。そして、フラッシュメモリ23の空き容量が特定容量以上であれば、フラッシュメモリ23をバッファメモリとして使用してスキャンデータを書き込みながらスキャン処理を実行する。一方、空き容量が特定容量よりも小さければ、予めフラッシュメモリ23に記憶されているデータの中の所定のデータ(例えば、最後のアクセスが相対的に古いデータ)を必要に応じて圧縮してRAM22などの他の記憶手段に退避させて特定容量を確保した後、フラッシュメモリ23をバッファメモリとして使用してスキャンデータを書き込みながらスキャン処理を実行する。そして、スキャン処理が終了した後、又は一定時間操作がなく電力消費を抑えるモードに入る直前に、RAM22などに退避させたデータを必要に応じて解凍してフラッシュメモリ23に書き戻すようにすればよい。   FIG. 7 shows an example in the case of printing processing. In the case of scanning processing, is scanning using an automatic paper feeder (ADF: Auto Document Feeder) or scanning using a document table (flat bed)? In the case of scanning using ADF, since the flash memory 23 needs a lot of free space by continuously reading the document, the free space of the flash memory 23 is checked in the same manner as described above. If the free capacity of the flash memory 23 is equal to or greater than the specific capacity, the scan process is executed while writing the scan data using the flash memory 23 as a buffer memory. On the other hand, if the free capacity is smaller than the specific capacity, the RAM 22 compresses predetermined data (for example, data with a relatively old last access) in the data stored in advance in the flash memory 23 as necessary. After storing the data in another storage means to secure a specific capacity, the flash memory 23 is used as a buffer memory to execute scan processing while writing scan data. Then, after the scanning process is completed or immediately before entering a mode in which there is no operation for a certain time and power consumption is reduced, the data saved in the RAM 22 or the like is decompressed and written back to the flash memory 23 as necessary. Good.

このように、本実施例では、フラッシュメモリ23の状態に応じて動的に変化する、指示された処理のパフォーマンスを維持してデータを書き込むことができる特定容量を確保できるようにデータを待避させる制御を行うため、パフォーマンスの低下を回避しつつ、適切にデータを書き込むことができる。   As described above, in this embodiment, data is saved so as to secure a specific capacity capable of writing data while maintaining the performance of the instructed processing, which dynamically changes according to the state of the flash memory 23. Since the control is performed, it is possible to appropriately write data while avoiding a decrease in performance.

次に、本発明の第2の実施例に係る画像処理装置及び書き込み制御プログラム並びに書き込み制御方法について、図8及び図9を参照して説明する。図8は、本実施例の画像処理装置の制御部の構成を示すブロック図であり、図9は、画像処理装置の動作を示すフローチャート図である。   Next, an image processing apparatus, a writing control program, and a writing control method according to the second embodiment of the present invention will be described with reference to FIGS. FIG. 8 is a block diagram illustrating the configuration of the control unit of the image processing apparatus according to the present exemplary embodiment, and FIG. 9 is a flowchart illustrating the operation of the image processing apparatus.

前記した第1の実施例では、フラッシュメモリ23の状態を判定し、その状態に応じて特定容量を設定し、特定容量を確保できるかを判断したが、書き込みデータのデータ量を予測し、そのデータ量のデータを書き込んだ際に指示された処理のパフォーマンスを維持できるかを判断することもできる。   In the first embodiment described above, the state of the flash memory 23 is determined, a specific capacity is set according to the state, and it is determined whether or not the specific capacity can be secured. It is also possible to determine whether or not the performance of the process instructed when the data amount of data is written can be maintained.

その場合、画像処理装置(画像形成装置10)の構成は第1の実施例の図4と同様であるが、制御部20は、図8に示すように、データ予測部26、書き込み制御部25として機能する。   In this case, the configuration of the image processing apparatus (image forming apparatus 10) is the same as that of FIG. 4 of the first embodiment, but the control unit 20 includes a data prediction unit 26 and a write control unit 25 as shown in FIG. Function as.

データ予測部26は、指示された処理を特定し、その処理の設定情報(カラー/モノクロ、解像度、用紙サイズ、ページ数など)に基づいて、フラッシュメモリ23に書き込むデータのデータ量を予測する。   The data prediction unit 26 identifies the instructed process, and predicts the data amount of data to be written in the flash memory 23 based on the setting information (color / monochrome, resolution, paper size, number of pages, etc.) of the process.

書き込み制御部25は、フラッシュメモリ23の空き領域に予測したデータ量のデータを書き込んだ場合に、指示された処理のパフォーマンスを維持できるか否かを判断する。そして、指示された処理のパフォーマンスを維持できないと判断した場合は、書き込み済みのデータの中の所定のデータ(例えば、最終アクセスが相対的に古いデータ)をRAM22に待避させて空き容量を増やした後、フラッシュメモリ23にデータを書き込み、指示された処理が終了した後、RAM22などに退避させたデータをフラッシュメモリ23に書き戻す。なお、どの程度のデータ量のデータを書き込んだ場合に、指示された処理のパフォーマンスを維持できるか否かは、予め行った実験やシミュレーションの結果などに基づいて判断することができる。   The write control unit 25 determines whether or not the performance of the instructed process can be maintained when the predicted amount of data is written in the free area of the flash memory 23. If it is determined that the performance of the instructed processing cannot be maintained, predetermined data (e.g., data with a relatively old last access) in the written data is saved in the RAM 22 to increase the free space. Thereafter, data is written to the flash memory 23, and after the instructed processing is completed, the data saved in the RAM 22 or the like is written back to the flash memory 23. Note that it is possible to determine whether or not the performance of the instructed process can be maintained when the amount of data is written based on the results of experiments or simulations performed in advance.

また、上記データ予測部26及び書き込み制御部25はハードウェアとして構成してもよいし、制御部を、データ予測部26及び書き込み制御部25として機能させる書き込み制御プログラムとして構成し、当該書き込み制御プログラムをCPU21に実行させるようにしてもよい。   Further, the data prediction unit 26 and the write control unit 25 may be configured as hardware, or the control unit is configured as a write control program that functions as the data prediction unit 26 and the write control unit 25, and the write control program May be executed by the CPU 21.

以下、上記構成の画像形成装置10の動作について説明する。CPU21は、フラッシュメモリ23に記憶した書き込み制御プログラムをRAM22に展開して実行することにより、図9のフローチャート図に示す各ステップの処理を実行する。なお、図9では印刷処理を例にして説明する。   Hereinafter, the operation of the image forming apparatus 10 configured as described above will be described. The CPU 21 executes the process of each step shown in the flowchart of FIG. 9 by developing the write control program stored in the flash memory 23 in the RAM 22 and executing it. Note that FIG. 9 will be described by taking print processing as an example.

まず、制御部20は、パネル31を用いて指示された処理がコレート印刷であるかを判断する(S201)。コレート印刷でない場合は、フラッシュメモリ23に複数ページの画像データを一時的に記憶する必要がない(RAM22に記憶すればよい)ため、通常の印刷処理を行う(S202)。   First, the control unit 20 determines whether the process instructed using the panel 31 is collate printing (S201). If it is not collate printing, there is no need to temporarily store a plurality of pages of image data in the flash memory 23 (it is only necessary to store them in the RAM 22), so normal printing processing is performed (S202).

一方、指示された処理がコレート印刷の場合は、制御部20(データ予測部26)は、指示された処理の設定情報(カラー/モノクロ、解像度、用紙サイズ、ページ数など)に基づいて、フラッシュメモリ23に書き込むデータ量を予測する(S203)。次に、制御部20(書き込み制御部25)は、予測したデータ量のデータをフラッシュメモリ23に書き込んだ場合に、指示された処理のパフォーマンスを維持できるかを判断する(S204)。パフォーマンスを維持できると判断した場合は、制御部20(書き込み制御部25)は、フラッシュメモリ23をバッファメモリとして使用して画像データを書き込みながら印刷処理を実行する(S205)。一方、パフォーマンスを維持できないと判断した場合は、制御部20(書き込み制御部25)は、予めフラッシュメモリ23に記憶されているデータの中の所定のデータ(例えば、最後のアクセスが相対的に古いデータ)を必要に応じて圧縮してRAM22などの他の記憶手段に退避させた後(S206)、フラッシュメモリ23をバッファメモリとして使用して画像データを書き込みながら印刷処理を実行する(S207)。そして、コレート印刷処理が終了した後、又は一定時間操作がなく電力消費を抑えるモードに入る直前に、RAM22などに退避させたデータを必要に応じて解凍してフラッシュメモリ23に書き戻す(S208)。   On the other hand, when the instructed process is collate printing, the control unit 20 (data prediction unit 26) performs flash based on the instructed process setting information (color / monochrome, resolution, paper size, number of pages, etc.). The amount of data to be written in the memory 23 is predicted (S203). Next, the control unit 20 (write control unit 25) determines whether the performance of the instructed process can be maintained when the predicted amount of data is written to the flash memory 23 (S204). If it is determined that the performance can be maintained, the control unit 20 (write control unit 25) executes print processing while writing image data using the flash memory 23 as a buffer memory (S205). On the other hand, if it is determined that the performance cannot be maintained, the control unit 20 (write control unit 25) determines predetermined data (for example, the last access is relatively old) among the data stored in the flash memory 23 in advance. (Data) is compressed as necessary and saved in other storage means such as the RAM 22 (S206), and the flash memory 23 is used as a buffer memory to execute print processing while writing image data (S207). Then, after the collate printing process is completed, or immediately before entering a mode in which there is no operation for a certain time and the power consumption is reduced, the data saved in the RAM 22 or the like is decompressed and written back to the flash memory 23 as necessary (S208). .

図9は、印刷処理の場合の例であるが、スキャン処理の場合は、ADFを用いるスキャンであるか、フラットベットを用いるスキャンであるかで判断し、ADFを用いるスキャンの場合は、連続して原稿を読み取ることによりフラッシュメモリ23に多くの空き容量が必要になることから、上記と同様に書き込むデータ量を予測し、予測したデータ量のデータをフラッシュメモリ23に書き込んだ場合に、スキャン処理のパフォーマンスを維持できるかを判断する。そして、パフォーマンスを維持できると判断した場合は、フラッシュメモリ23をバッファメモリとして使用してスキャンデータを書き込みながらスキャン処理を実行する。一方、パフォーマンスを維持できないと判断した場合は、予めフラッシュメモリ23に記憶されているデータの中の所定のデータ(例えば、最後のアクセスが相対的に古いデータ)を必要に応じて圧縮してRAM22などの他の記憶手段に退避させた後、フラッシュメモリ23をバッファメモリとして使用してスキャンデータを書き込みながらスキャン処理を実行する。そして、スキャン処理が終了した後、又は一定時間操作がなく電力消費を抑えるモードに入る直前に、RAM22などに退避させたデータを必要に応じて解凍してフラッシュメモリ23に書き戻すようにすればよい。   FIG. 9 shows an example in the case of printing processing. In the case of scanning processing, it is determined whether scanning is performed using ADF or scanning using a flat bed. In scanning using ADF, continuous scanning is performed. Since a large amount of free space is required in the flash memory 23 by reading the document in this manner, the amount of data to be written is predicted in the same manner as described above, and when the predicted amount of data is written in the flash memory 23, scan processing is performed. Determine if you can maintain the performance. If it is determined that the performance can be maintained, the scan process is executed while writing the scan data using the flash memory 23 as the buffer memory. On the other hand, if it is determined that the performance cannot be maintained, the RAM 22 compresses predetermined data (for example, data with a relatively old last access) in the data stored in the flash memory 23 in advance, if necessary. After being saved in other storage means, the scan process is executed while writing the scan data using the flash memory 23 as the buffer memory. Then, after the scanning process is completed or immediately before entering a mode in which there is no operation for a certain time and power consumption is reduced, the data saved in the RAM 22 or the like is decompressed and written back to the flash memory 23 as necessary. Good.

このように、本実施例では、書き込むデータ量を予測し、予測したデータ量のデータをフラッシュメモリ23に書き込んだら処理のパフォーマンスを維持できないと判断した場合にデータを待避させる制御を行うため、パフォーマンスの低下を回避しつつ、適切にデータを書き込むことができる。   As described above, in this embodiment, the amount of data to be written is predicted, and when it is determined that the performance of the process cannot be maintained once the predicted amount of data is written to the flash memory 23, the control is performed to save the data. It is possible to write data appropriately while avoiding the decrease in data.

なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨を逸脱しない限りにおいて、その構成や制御は適宜変更可能である。   In addition, this invention is not limited to the said Example, The structure and control can be changed suitably, unless it deviates from the meaning of this invention.

例えば、上記実施例では、画像処理装置として画像形成装置10を例にして説明したが、フラッシュメモリを備える任意の画像処理装置に対して、本発明の制御を同様に適用することができる。   For example, in the above-described embodiment, the image forming apparatus 10 has been described as an example of the image processing apparatus. However, the control of the present invention can be similarly applied to any image processing apparatus including a flash memory.

本発明は、フラッシュメモリを備える画像処理装置、当該フラッシュメモリへのデータの書き込みを制御する書き込み制御プログラム及び当該書き込み制御プログラムを記憶した記録媒体並びに当該画像処理装置における書き込み制御方法に利用可能である。   The present invention can be used for an image processing apparatus including a flash memory, a write control program for controlling writing of data to the flash memory, a recording medium storing the write control program, and a write control method for the image processing apparatus. .

10 画像形成装置
20 制御部
21 CPU
22 RAM
23 フラッシュメモリ
24 状態判定部
25 書き込み制御部
26 データ予測部
30 装置本体
31 パネル
32 スキャナ
33 エンジン
DESCRIPTION OF SYMBOLS 10 Image forming apparatus 20 Control part 21 CPU
22 RAM
23 Flash Memory 24 State Determination Unit 25 Write Control Unit 26 Data Prediction Unit 30 Device Main Body 31 Panel 32 Scanner 33 Engine

Claims (24)

画像に関する処理に使用するデータを一時的に記憶するフラッシュメモリを備える画像処理装置において、
前記フラッシュメモリの状態を判定する状態判定部と、
前記フラッシュメモリへのデータの書き込みを制御する書き込み制御部と、を備え、
前記書き込み制御部は、画像に関する所定の処理に使用するデータを前記フラッシュメモリに書き込む際に、前記フラッシュメモリの空き容量と前記フラッシュメモリの状態に基づいて設定される特定容量とを比較し、前記空き容量が前記特定容量以上の場合は、前記データの書き込みを行い、前記空き容量が前記特定容量よりも小さい場合は、前記フラッシュメモリに記憶されている所定のデータを他の記憶手段に待避させて前記特定容量を確保した後、前記データの書き込みを行う、ことを特徴とする画像処理装置。
In an image processing apparatus including a flash memory that temporarily stores data used for processing relating to an image,
A state determination unit for determining the state of the flash memory;
A write control unit for controlling the writing of data to the flash memory,
The writing control unit, when writing data to be used for a predetermined process related to an image to the flash memory, compares the free capacity of the flash memory with a specific capacity set based on the state of the flash memory, and When the free capacity is equal to or greater than the specific capacity, the data is written, and when the free capacity is smaller than the specific capacity, the predetermined data stored in the flash memory is saved in another storage means. Then, after securing the specific capacity, the data is written.
前記フラッシュメモリの状態は、前記フラッシュメモリのサイズ、使用時間、書き込み回数の少なくとも一つに基づいて規定され、
前記特定容量は、書き込むデータのデータ量に前記フラッシュメモリの状態に応じて変化する容量を付加した容量であり、
前記特定容量を確保することにより、前記所定の処理のパフォーマンスが維持される、ことを特徴とする請求項1に記載の画像処理装置。
The state of the flash memory is defined based on at least one of the size, usage time, and number of writes of the flash memory,
The specific capacity is a capacity obtained by adding a capacity that changes according to the state of the flash memory to the amount of data to be written.
The image processing apparatus according to claim 1, wherein the performance of the predetermined process is maintained by securing the specific capacity.
画像に関する処理に使用するデータを一時的に記憶するフラッシュメモリを備える画像処理装置において、
画像に関する所定の処理の実行時に前記フラッシュメモリに書き込まれるデータ量を予測するデータ予測部と、
前記フラッシュメモリへのデータの書き込みを制御する書き込み制御部と、を備え、
前記書き込み制御部は、前記所定の処理に使用するデータを前記フラッシュメモリに書き込む際に、前記予測したデータ量のデータを前記フラッシュメモリに書き込んだ場合に前記所定の処理のパフォーマンスを維持できるか否かを判断し、前記パフォーマンスを維持できると判断した場合は、前記データの書き込みを行い、前記パフォーマンスを維持できないと判断した場合は、前記フラッシュメモリに記憶されている所定のデータを他の記憶手段に待避させた後、前記データの書き込みを行う、ことを特徴とする画像処理装置。
In an image processing apparatus including a flash memory that temporarily stores data used for processing relating to an image,
A data prediction unit that predicts the amount of data written to the flash memory when executing predetermined processing relating to an image;
A write control unit for controlling the writing of data to the flash memory,
Whether the write control unit can maintain the performance of the predetermined process when the data of the predicted data amount is written to the flash memory when the data used for the predetermined process is written to the flash memory. If it is determined that the performance can be maintained, the data is written. If it is determined that the performance cannot be maintained, the predetermined data stored in the flash memory is stored in another storage unit. An image processing apparatus, wherein the data is written after being saved.
前記書き込み制御部は、前記所定の処理が終了した後、前記待避させた所定のデータを前記フラッシュメモリに書き戻す、ことを特徴とする請求項1乃至3のいずれか一に記載の画像処理装置。   4. The image processing apparatus according to claim 1, wherein the write control unit writes the saved predetermined data back to the flash memory after the predetermined process is completed. 5. . 前記書き込み制御部は、前記所定のデータを圧縮して前記他の記憶手段に待避させる、ことを特徴とする請求項1乃至4のいずれか一に記載の画像処理装置。   The image processing apparatus according to claim 1, wherein the write control unit compresses the predetermined data and saves the data in the other storage unit. 前記書き込み制御部は、前記フラッシュメモリに記憶されているデータの内の、最後のアクセスが相対的に古い、アクセス頻度が相対的に低い、又は、重要度が相対的に低いデータを前記所定のデータとして選択する、ことを特徴とする請求項1乃至5のいずれか一に記載の画像処理装置。   The write control unit stores data stored in the flash memory in which the last access is relatively old, the access frequency is relatively low, or the importance is relatively low. 6. The image processing apparatus according to claim 1, wherein the image processing apparatus is selected as data. 前記フラッシュメモリは、複数のセルからなるページ単位で書き込みを行い、複数のページからなるブロック単位で消去を行うNANDフラッシュメモリである、ことを特徴とする請求項1乃至6のいずれか一に記載の画像処理装置。   7. The NAND flash memory according to claim 1, wherein the flash memory is a NAND flash memory in which writing is performed in units of pages including a plurality of cells and erasing is performed in units of blocks including a plurality of pages. Image processing apparatus. 前記画像処理装置は、画像形成装置であり、
前記フラッシュメモリは、スキャン処理又は印刷処理に使用するデータを一時的に記憶するバッファメモリとして使用される、ことを特徴とする請求項1乃至7のいずれか一に記載の画像処理装置。
The image processing apparatus is an image forming apparatus,
The image processing apparatus according to claim 1, wherein the flash memory is used as a buffer memory that temporarily stores data used for scan processing or print processing.
前記書き込み制御部は、コレート印刷を行う場合に、前記空き容量と前記特定容量との比較、又は、前記パフォーマンスを維持できるか否かの判断を行う、ことを特徴とする請求項8に記載の画像処理装置。   9. The writing control unit according to claim 8, wherein when performing collate printing, the writing control unit compares the free capacity with the specific capacity or determines whether the performance can be maintained. Image processing device. 前記書き込み制御部は、自動紙送り装置から搬送される複数の原稿をスキャンする場合に、前記空き容量と前記特定容量との比較、又は、前記パフォーマンスを維持できるか否かの判断を行う、ことを特徴とする請求項8に記載の画像処理装置。   The writing control unit compares the free capacity with the specific capacity or determines whether the performance can be maintained when scanning a plurality of documents conveyed from an automatic paper feeder; The image processing apparatus according to claim 8. 画像に関する処理に使用するデータを一時的に記憶するフラッシュメモリを備える、画像処理装置又は当該画像形成装置を制御する制御装置で動作する書き込み制御プログラムであって、
前記画像処理装置又は前記制御装置に、
前記フラッシュメモリの状態を判定する状態判定処理、
前記フラッシュメモリへのデータの書き込みを制御する書き込み制御処理、を実行させ、
前記書き込み制御処理では、画像に関する所定の処理に使用するデータを前記フラッシュメモリに書き込む際に、前記フラッシュメモリの空き容量と前記フラッシュメモリの状態に基づいて設定される特定容量とを比較し、前記空き容量が前記特定容量以上の場合は、前記データの書き込みを行い、前記空き容量が前記特定容量よりも小さい場合は、前記フラッシュメモリに記憶されている所定のデータを他の記憶手段に待避させて前記特定容量を確保した後、前記データの書き込みを行う、ことを特徴とする書き込み制御プログラム。
A writing control program that operates on an image processing apparatus or a control apparatus that controls the image forming apparatus, which includes a flash memory that temporarily stores data used for processing relating to an image,
In the image processing device or the control device,
A state determination process for determining the state of the flash memory;
A write control process for controlling the writing of data to the flash memory,
In the write control process, when writing data to be used for a predetermined process related to an image to the flash memory, the free capacity of the flash memory is compared with a specific capacity set based on the state of the flash memory, When the free capacity is equal to or greater than the specific capacity, the data is written, and when the free capacity is smaller than the specific capacity, the predetermined data stored in the flash memory is saved in another storage means. And writing the data after the specific capacity is secured.
前記フラッシュメモリの状態は、前記フラッシュメモリのサイズ、使用時間、書き込み回数の少なくとも一つに基づいて規定され、
前記特定容量は、書き込むデータのデータ量に前記フラッシュメモリの状態に応じて変化する容量を付加した容量であり、
前記特定容量を確保することにより、前記所定の処理のパフォーマンスが維持される、ことを特徴とする請求項11に記載の書き込み制御プログラム。
The state of the flash memory is defined based on at least one of the size, usage time, and number of writes of the flash memory,
The specific capacity is a capacity obtained by adding a capacity that changes according to the state of the flash memory to the amount of data to be written.
The write control program according to claim 11, wherein the performance of the predetermined process is maintained by securing the specific capacity.
画像に関する処理に使用するデータを一時的に記憶するフラッシュメモリを備える、画像処理装置又は当該画像形成装置を制御する制御装置で動作する書き込み制御プログラムであって、
前記画像処理装置又は前記制御装置に、
画像に関する所定の処理の実行時に前記フラッシュメモリに書き込まれるデータ量を予測するデータ予測処理、
前記フラッシュメモリへのデータの書き込みを制御する書き込み制御処理、を実行させ、
前記書き込み制御処理では、前記所定の処理に使用するデータを前記フラッシュメモリに書き込む際に、前記予測したデータ量のデータを前記フラッシュメモリに書き込んだ場合に前記所定の処理のパフォーマンスを維持できるか否かを判断し、前記パフォーマンスを維持できると判断した場合は、前記データの書き込みを行い、前記パフォーマンスを維持できないと判断した場合は、前記フラッシュメモリに記憶されている所定のデータを他の記憶手段に待避させた後、前記データの書き込みを行う、ことを特徴とする書き込み制御プログラム。
A writing control program that operates on an image processing apparatus or a control apparatus that controls the image forming apparatus, which includes a flash memory that temporarily stores data used for processing relating to an image,
In the image processing device or the control device,
A data prediction process for predicting the amount of data written to the flash memory during execution of a predetermined process relating to an image;
A write control process for controlling the writing of data to the flash memory,
In the write control process, when the data used for the predetermined process is written to the flash memory, whether the performance of the predetermined process can be maintained when the predicted amount of data is written to the flash memory. If it is determined that the performance can be maintained, the data is written. If it is determined that the performance cannot be maintained, the predetermined data stored in the flash memory is stored in another storage unit. And writing the data after saving the program.
前記書き込み制御処理では、前記所定の処理が終了した後、前記待避させた所定のデータを前記フラッシュメモリに書き戻す、ことを特徴とする請求項11乃至13のいずれか一に記載の書き込み制御プログラム。   The write control program according to any one of claims 11 to 13, wherein, in the write control process, the saved predetermined data is written back to the flash memory after the predetermined process is completed. . 前記書き込み制御処理では、前記所定のデータを圧縮して前記他の記憶手段に待避させる、ことを特徴とする請求項11乃至14のいずれか一に記載の書き込み制御プログラム。   The write control program according to any one of claims 11 to 14, wherein, in the write control process, the predetermined data is compressed and saved in the other storage means. 前記書き込み制御処理では、前記フラッシュメモリに記憶されているデータの内の、最後のアクセスが相対的に古い、アクセス頻度が相対的に低い、又は、重要度が相対的に低いデータを前記所定のデータとして選択する、ことを特徴とする請求項11乃至15のいずれか一に記載の書き込み制御プログラム。   In the write control process, the data stored in the flash memory, the last access is relatively old, the access frequency is relatively low, or the data having a relatively low importance is transferred to the predetermined data The write control program according to claim 11, wherein the write control program is selected as data. 前記フラッシュメモリは、複数のセルからなるページ単位で書き込みを行い、複数のページからなるブロック単位で消去を行うNANDフラッシュメモリである、ことを特徴とする請求項11乃至16のいずれか一に記載の書き込み制御プログラム。   17. The NAND flash memory according to claim 11, wherein the flash memory is a NAND flash memory in which writing is performed in units of pages including a plurality of cells and erasing is performed in units of blocks including a plurality of pages. Write control program. 画像に関する処理に使用するデータを一時的に記憶するフラッシュメモリを備える画像処理装置における書き込み制御方法であって、
前記フラッシュメモリの状態を判定する状態判定処理と、
前記フラッシュメモリへのデータの書き込みを制御する書き込み制御処理と、を実行し、
前記書き込み制御処理では、画像に関する所定の処理に使用するデータを前記フラッシュメモリに書き込む際に、前記フラッシュメモリの空き容量と前記フラッシュメモリの状態に基づいて設定される特定容量とを比較し、前記空き容量が前記特定容量以上の場合は、前記データの書き込みを行い、前記空き容量が前記特定容量よりも小さい場合は、前記フラッシュメモリに記憶されている所定のデータを他の記憶手段に待避させて前記特定容量を確保した後、前記データの書き込みを行う、ことを特徴とする書き込み制御方法。
A writing control method in an image processing apparatus including a flash memory for temporarily storing data used for processing relating to an image,
A state determination process for determining the state of the flash memory;
A write control process for controlling the writing of data to the flash memory, and
In the write control process, when writing data to be used for a predetermined process related to an image to the flash memory, the free capacity of the flash memory is compared with a specific capacity set based on the state of the flash memory, When the free capacity is equal to or greater than the specific capacity, the data is written, and when the free capacity is smaller than the specific capacity, the predetermined data stored in the flash memory is saved in another storage means. Then, after the specific capacity is secured, the data is written.
前記フラッシュメモリの状態は、前記フラッシュメモリのサイズ、使用時間、書き込み回数の少なくとも一つに基づいて規定され、
前記特定容量は、書き込むデータのデータ量に前記フラッシュメモリの状態に応じて変化する容量を付加した容量であり、
前記特定容量を確保することにより、前記所定の処理のパフォーマンスが維持される、ことを特徴とする請求項18に記載の書き込み制御方法。
The state of the flash memory is defined based on at least one of the size, usage time, and number of writes of the flash memory,
The specific capacity is a capacity obtained by adding a capacity that changes according to the state of the flash memory to the amount of data to be written.
The write control method according to claim 18, wherein the performance of the predetermined process is maintained by securing the specific capacity.
画像に関する処理に使用するデータを一時的に記憶するフラッシュメモリを備える画像処理装置における書き込み制御方法であって、
画像に関する所定の処理の実行時に前記フラッシュメモリに書き込まれるデータ量を予測するデータ予測処理と、
前記フラッシュメモリへのデータの書き込みを制御する書き込み制御処理と、を実行し、
前記書き込み制御処理では、前記所定の処理に使用するデータを前記フラッシュメモリに書き込む際に、前記予測したデータ量のデータを前記フラッシュメモリに書き込んだ場合に前記所定の処理のパフォーマンスを維持できるか否かを判断し、前記パフォーマンスを維持できると判断した場合は、前記データの書き込みを行い、前記パフォーマンスを維持できないと判断した場合は、前記フラッシュメモリに記憶されている所定のデータを他の記憶手段に待避させた後、前記データの書き込みを行う、ことを特徴とする書き込み制御方法。
A writing control method in an image processing apparatus including a flash memory for temporarily storing data used for processing relating to an image,
A data prediction process for predicting the amount of data written to the flash memory when executing a predetermined process relating to an image;
A write control process for controlling the writing of data to the flash memory, and
In the write control process, when the data used for the predetermined process is written to the flash memory, whether the performance of the predetermined process can be maintained when the predicted amount of data is written to the flash memory. If it is determined that the performance can be maintained, the data is written. If it is determined that the performance cannot be maintained, the predetermined data stored in the flash memory is stored in another storage unit. And writing the data after saving the data.
前記書き込み制御処理では、前記所定の処理が終了した後、前記待避させた所定のデータを前記フラッシュメモリに書き戻す、ことを特徴とする請求項18乃至20のいずれか一に記載の書き込み制御方法。   21. The write control method according to claim 18, wherein, in the write control process, the saved predetermined data is written back to the flash memory after the predetermined process is completed. . 前記書き込み制御処理では、前記所定のデータを圧縮して前記他の記憶手段に待避させる、ことを特徴とする請求項18乃至21のいずれか一に記載の書き込み制御方法。   The write control method according to any one of claims 18 to 21, wherein, in the write control process, the predetermined data is compressed and saved in the other storage means. 前記書き込み制御処理では、前記フラッシュメモリに記憶されているデータの内の、最後のアクセスが相対的に古い、アクセス頻度が相対的に低い、又は、重要度が相対的に低いデータを前記所定のデータとして選択する、ことを特徴とする請求項18乃至22のいずれか一に記載の書き込み制御方法。   In the write control process, the data stored in the flash memory, the last access is relatively old, the access frequency is relatively low, or the data having a relatively low importance is transferred to the predetermined data 23. The write control method according to claim 18, wherein the write control method is selected as data. 前記フラッシュメモリは、複数のセルからなるページ単位で書き込みを行い、複数のページからなるブロック単位で消去を行うNANDフラッシュメモリである、ことを特徴とする請求項18乃至23のいずれか一に記載の書き込み制御方法。   24. The NAND flash memory according to claim 18, wherein the flash memory is a NAND flash memory in which writing is performed in units of pages including a plurality of cells and erasing is performed in units of blocks including a plurality of pages. Write control method.
JP2014123951A 2014-06-17 2014-06-17 Image processing apparatus, writing control program, and writing control method Active JP6405736B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014123951A JP6405736B2 (en) 2014-06-17 2014-06-17 Image processing apparatus, writing control program, and writing control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014123951A JP6405736B2 (en) 2014-06-17 2014-06-17 Image processing apparatus, writing control program, and writing control method

Publications (2)

Publication Number Publication Date
JP2016004403A true JP2016004403A (en) 2016-01-12
JP6405736B2 JP6405736B2 (en) 2018-10-17

Family

ID=55223640

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014123951A Active JP6405736B2 (en) 2014-06-17 2014-06-17 Image processing apparatus, writing control program, and writing control method

Country Status (1)

Country Link
JP (1) JP6405736B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020003836A (en) * 2018-06-25 2020-01-09 日本精機株式会社 Display apparatus for vehicle
US10678486B2 (en) 2018-03-30 2020-06-09 Canon Kabushiki Kaisha Printing apparatus controlling spooling of image data in volatile and non-volatile memories based on memory capacity
CN111444145A (en) * 2020-03-24 2020-07-24 维沃移动通信有限公司 Data cleaning method and electronic equipment
JP2022078261A (en) * 2018-06-25 2022-05-24 日本精機株式会社 Display apparatus for vehicle

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH113255A (en) * 1997-06-10 1999-01-06 Sanyo Electric Co Ltd Digital still camera
JP2006238316A (en) * 2005-02-28 2006-09-07 Canon Inc Document management system
JP2008028727A (en) * 2006-07-21 2008-02-07 Murata Mach Ltd Image processor
JP2012133651A (en) * 2010-12-22 2012-07-12 Ricoh Co Ltd Control program of semiconductor storage, semiconductor storage medium control device, control method of semiconductor storage medium and image forming device
JP2012178656A (en) * 2011-02-25 2012-09-13 Ricoh Co Ltd Image formation apparatus, image formation system, image formation method, and image formation program

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH113255A (en) * 1997-06-10 1999-01-06 Sanyo Electric Co Ltd Digital still camera
US6603509B1 (en) * 1997-06-10 2003-08-05 Sanyo Electric Co., Ltd. Digital camera controllable by a program
JP2006238316A (en) * 2005-02-28 2006-09-07 Canon Inc Document management system
JP2008028727A (en) * 2006-07-21 2008-02-07 Murata Mach Ltd Image processor
JP2012133651A (en) * 2010-12-22 2012-07-12 Ricoh Co Ltd Control program of semiconductor storage, semiconductor storage medium control device, control method of semiconductor storage medium and image forming device
JP2012178656A (en) * 2011-02-25 2012-09-13 Ricoh Co Ltd Image formation apparatus, image formation system, image formation method, and image formation program

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10678486B2 (en) 2018-03-30 2020-06-09 Canon Kabushiki Kaisha Printing apparatus controlling spooling of image data in volatile and non-volatile memories based on memory capacity
JP2020003836A (en) * 2018-06-25 2020-01-09 日本精機株式会社 Display apparatus for vehicle
JP7047628B2 (en) 2018-06-25 2022-04-05 日本精機株式会社 Display device for vehicles
JP2022078261A (en) * 2018-06-25 2022-05-24 日本精機株式会社 Display apparatus for vehicle
JP7256976B2 (en) 2018-06-25 2023-04-13 日本精機株式会社 vehicle display
CN111444145A (en) * 2020-03-24 2020-07-24 维沃移动通信有限公司 Data cleaning method and electronic equipment

Also Published As

Publication number Publication date
JP6405736B2 (en) 2018-10-17

Similar Documents

Publication Publication Date Title
JP5979512B2 (en) Image forming apparatus and flash memory control method
CN105304127B (en) Image forming apparatus and control method of flash memory
KR101132497B1 (en) Memory system
JP5917163B2 (en) Information processing apparatus, control method and program thereof, and storage medium
JP6405736B2 (en) Image processing apparatus, writing control program, and writing control method
US8352807B2 (en) Semiconductor memory device, host device and semiconductor memory system
JP6308433B2 (en) Image forming apparatus, control method, and control program
US9983834B2 (en) Information processing apparatus, method of writing contiguous blocks for secure erease data and writing distributive blocks for non-secure erase data
US9684853B2 (en) Image forming apparatus that writes data from volatile memory to non-volatile memory
CN115113806A (en) Storage system, information processing system, and host device
JP2008225576A (en) Control device of nand flash memory
US20140149645A1 (en) Information processing apparatus, method of controlling the same, and storage medium
JP6245041B2 (en) Information processing apparatus and flash memory control method
US11656788B2 (en) Information processing apparatus and non-transitory computer readable medium
US10437488B2 (en) Electronic device and non-transitory computer readable storage medium
JP5625888B2 (en) Semiconductor storage medium control apparatus, semiconductor storage medium control method, and image forming apparatus.
US8725930B2 (en) Semiconductor memory device
JP5895378B2 (en) Data storage control device, data storage control method and program
JP6288560B2 (en) Information processing apparatus, flash memory replacement support method, and replacement support program
CN114461137A (en) Writing method and device based on solid hard disk
JP2017059110A (en) Apparatus for controlling non-volatile memory device, image forming apparatus including the same, memory apparatus, control method, and program
JP2017207948A (en) Storage control device, information processing method and program
JP2011130345A (en) Image processing apparatus, image forming device, and image data storing method
JP2015170017A (en) Image forming device, control method of image forming device, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170419

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180402

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180605

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180802

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180821

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180903

R150 Certificate of patent or registration of utility model

Ref document number: 6405736

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150