WO2004075064A1 - 記録媒体の記録制御方法及び記録制御装置 - Google Patents

記録媒体の記録制御方法及び記録制御装置 Download PDF

Info

Publication number
WO2004075064A1
WO2004075064A1 PCT/JP2004/000695 JP2004000695W WO2004075064A1 WO 2004075064 A1 WO2004075064 A1 WO 2004075064A1 JP 2004000695 W JP2004000695 W JP 2004000695W WO 2004075064 A1 WO2004075064 A1 WO 2004075064A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
address
small
small block
data
Prior art date
Application number
PCT/JP2004/000695
Other languages
English (en)
French (fr)
Inventor
Kenichi Iida
Jun Yasuda
Kazuyuki Takaoka
Original Assignee
Sony Corporation
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 Sony Corporation filed Critical Sony Corporation
Priority to US10/545,488 priority Critical patent/US20060153025A1/en
Publication of WO2004075064A1 publication Critical patent/WO2004075064A1/ja

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators

Definitions

  • the present invention relates to a recording control method and a recording control device for a recording medium such as a flash memory.
  • the recording data handled by the NAND flash memory is configured as shown in Fig. 1, for example. That is, the recording data is read and written in small block units called pages, and erased in large block units called blocks having a plurality of pages.
  • One page is composed of, for example, a data area of 512 bytes and a spare area (redundant part) of 16 bytes. Four bytes of the 16-byte spare area are used as an ECC (Error Correction Code) for error detection and correction.
  • ECC Error Correction Code
  • the method of controlling reading and writing of the flash memory is performed by a method described in, for example, Japanese Patent Application Laid-Open No. 2000-311104.
  • the recording control device that controls reading and writing of the flash memory manages the physical address of the flash memory to which data has been written on a block basis by using a logical address.
  • a logical-physical address conversion table for converting between a physical address and a logical address of the flash memory in units of blocks is provided.
  • the recording control device uses the logical-physical address conversion table to control the address of the flash memory.
  • the logical address is written to the spare area of each page.
  • the spare area includes an updating flag indicating whether or not the writing of the logical address to the block is being performed.
  • the updating flag is on ("0") when a write is in progress, and off ("1") when no write is in progress.
  • the block to be written and the page to be written can be determined at random.However, in the write processing procedure in the same block, from the first page of the address number, There is a restriction that it must be performed according to the address order. In other words, in the same block, it is necessary to write in order from the page with the smallest address. For this reason, conventionally, even when writing in page units, the writing operation is performed in units of blocks including the page to be written.
  • FIG. 2 is a diagram for explaining the outline of the data write operation in page units.
  • the shaded blocks indicate pages on which data has already been written, and the blank blocks indicate the pages on which data has not been written yet.
  • a write page is shown, and a stitched block indicates a new data write page where new data is written.
  • FIG. 3 is a flowchart of the processing operation at the time of data writing, and mainly describes the processing executed by the above-described recording control device that controls reading and writing of the flash memory.
  • the recording control device determines whether or not an instruction to write to the flash memory has been issued (step S 1). Performs other processing (step S2).
  • step S1 If it is determined in step S1 that a write instruction has been issued, the recording control device determines the logical address of the block to be written and the page to be written (step S3), and sets the start address of the block of the logical address. Turn on the flag while updating the page (step S4).
  • step S5 the write target block is evacuated to a spare free area prepared in the logical / physical address conversion table of the recording control device, and a free space in which a block having the same logical address as the logical address of the write target block can be written. Make a block area (step S5).
  • step S5 will be further described with reference to FIG.
  • the flash memory has the effective area from the logical block address A to the logical block address A + n-1 and the spare area for one block of the logical block address A + n.
  • the spare area of the logical block address A + n has been erased and is an empty area.
  • step S4 as shown in FIG. 4, the updating flag of the spare area in the first page of the block of the logical block address A + 3 is turned on.
  • step S5 the recording control device changes the logical block address of the block having the logical block address A + 3, which is the write target block, to the logical block address A + n of the spare area on the logical-physical address conversion template. change. At this time, the logical address of the spare area on the block data of the logical block address A + 3 is not rewritten.
  • the logical block address of the spare area whose logical block address was A + n is converted to A + 3 on the logical / physical address conversion table. This replacement of the logical address is performed so that A + 3 is written in the logical address of the spare area of the block to be newly written.
  • the original block data to be written is stored in the spare area.
  • the logical block address where the original block data to be written was saved is now vacant.
  • step S5 When the processing of step S5 as described above is completed, the recording control device, as shown by adding 1 in FIG. 2, deletes all the pages in the address order preceding the page to be written. Then, the original block to be written is copied to the corresponding page in the write destination block area (step S6). At this time, the updating flag of the spare area of the first page of the block ahead of the copy is turned off.
  • the recording control device writes the data of the write target page to the page corresponding to the write destination block area, as shown by 2-2 in FIG. 2 (step S7).
  • the recording control device reads all pages in the address order after the page to be written from the original block to be written to the block area of the write destination from the original block to be written. Copy to the corresponding page (step S8).
  • the recording control device logically stores the data of the original block to be written, which has been evacuated to the spare area. Is erased (step S9). As a result, the logical spare area becomes an empty area.
  • step S10 determines whether or not the writing has been completed (step S10), and if not, returns to step S3 to determine the next block to be written and the page to be written. Then, the above processing is repeated. If it is determined in step S10 that the writing has been completed, this writing processing routine is ended. If the power supply voltage is cut off during the above-mentioned writing process due to a power failure, running out of battery, etc., the writing process will not be completed. In order to cope with such a case, conventionally, reset processing is performed when the power supply voltage is turned on again, so that no problem occurs in address management of the flash memory.
  • FIG. 5 is a flowchart for explaining the reset processing when the power supply voltage is turned on again.
  • the recording control device starts the reset processing shown in FIG. 5, and sets the logical address of the spare area of the first page of each block. To determine whether there are two blocks having the same logical address (step S21).
  • the page data of the block at the rewriting destination is stored.
  • the status is the same as the logical address in the upper spare area. Therefore, if the power is turned off during the write process, there will be two blocks with the same logical address.
  • the updating flag is turned on in the original block to be rewritten, it can be distinguished from the replacement block in which the updating flag is off.
  • step S21 if it is determined in step S21 that there are two blocks having the same logical address, it is determined that power has been cut off during the write process, and the update of the two blocks is performed.
  • the data of the block whose middle flag is on is left, and all the data of the block whose update flag is off are erased (step S22). This returns to the state before the page write processing. Then, the reset process ends, and the process proceeds to the next process.
  • step S21 when it is determined that there is only one block having the same logical address, there is no write process in progress , this reset process is terminated as it is, and the process proceeds to the next process.
  • An object of the present invention is to solve the problems of the conventional technology as described above. It is an object of the present invention to provide a novel recording control method and recording control device for a recording medium. It is another object of the present invention to provide a recording control method and a recording control device that can increase the write processing speed as a recording control method for a recording medium such as a flash memory.
  • the present invention proposes a small block of a predetermined number of data as a unit for reading and writing data overnight, and a large block composed of a plurality of small blocks as a unit for erasing data.
  • Writing a small block in a large block is a recording control method for a recording medium performed in address order. Data is written to a first small block in a large block, and then data is written to a first small block in the large block.
  • the second small block determines whether or not the address of the first small block in the large block is higher than the address of the first small block in the large block. If it is determined that the address is in the address order after the address of the block, data is written to the second small block.
  • the present invention provides a small block having a predetermined number of data blocks as a unit for reading and writing data, a large block including a plurality of small blocks as a unit for erasing data blocks, and a small block in a large block.
  • Block writing is a method of controlling recording on a recording medium in the order of addresses.
  • the address order prior to the address of the first small block is included.
  • the determining step when it is determined that the second small block has an address higher than the address of the first small block in the first large block, the first small block and the second small block are compared.
  • a second copying step of copying the data of the small block in between to the corresponding address of the second large block, and after the second copying step, corresponding to the address of the second small block of the second large block A second writing step of writing data to the first address and a discriminating step, when it is determined that the second small block is in a large block different from the first large block, Block of A third copy step of copying the data of all the small blocks in the address order after the address of the first small block to a corresponding address of the second large block; and In the erasing step of erasing the data of the first first block and the recording control method, at the time of return after the write processing is interrupted, the address order of the second small block is the last small block address.
  • a step of copying data of the small block corresponding to the first large block to the block address and an erasing step of erasing data of the first large block are performed.
  • the address order of the second large block is the same as that of the large block addresses that are continuously empty when viewed from the last small block address.
  • the first small block address of the second small block is set as the small program V address to start writing next in the second large block.
  • a small block having a predetermined number of data is used as a unit for reading and writing data
  • a large block including a plurality of small blocks is used as a unit for data erasure
  • a recording control device for a recording medium in the order of addresses, wherein, when data writing to a first small block in a large block is completed, a second small block to be written next is a large block.
  • a small block having a predetermined number of data blocks is used as a unit for reading and writing data
  • a large block including a plurality of small blocks is used as a unit for erasing data
  • a small block in the large block is used.
  • a recording control device for recording on a recording medium in which addresses are written in the order of addresses, and among the first large blocks including the first small blocks, the small blocks having the address order prior to the address of the first small block.
  • the data is erased First copying means for copying to an address corresponding to the second large block, and first writing means for writing data to an address corresponding to the address of the first small block in the second large block.
  • Determining means for determining whether the second small block to be written next has an address order after the address of the first small block in the first large block; and When it is determined that the small block has an address ranking after the address of the first small block in the first large block, the small block data between the first small block and the second small block is determined.
  • a second copying means for copying to a corresponding address of the second large block, and a second large block copied by the second copying means having a corresponding address of the address of the second small block.
  • the second writing means for writing data and the determining means determine that the second small block is in a large block different from the first large block.
  • Third copy means for copying all the small block data of the address order after the address of the first small block to the corresponding address of the second large block, and copy by the third copy means.
  • Erasing means for erasing data of the first large block after the processing.
  • the recording control device further includes a detecting unit that detects that the writing in the small block unit is interrupted in the middle, and a detecting unit that detects that the writing in the small block unit is interrupted in the middle.
  • Erasing means for erasing the data of one large block.
  • the recording control device further comprises a detecting means for detecting that the writing in small block units is interrupted halfway, and the detecting means interrupts the writing in small block units halfway.
  • the address is detected, when the address order of the second large block is viewed from the last small block address, the first small block address of the consecutive small block addresses that are empty is determined. It is a small block address that starts the next writing in the second large block.
  • FIG. 2 is a diagram for explaining a conventional recording control method for a NAND flash memory.
  • FIG. 3 is a flowchart showing the procedure of a conventional recording control method for a NAND flash memory.
  • FIG. 4 is a diagram for explaining a conventional recording control method for a NAND flash memory.
  • FIG. 5 is a flowchart showing a reset processing procedure in a conventional recording medium recording control method.
  • FIG. 6 is a block diagram showing the configuration of an IC recorder to which the recording medium recording control method according to the present invention is applied.
  • Figure 7 is a diagram for explaining the memory area structure of the flash memory.
  • 8 and 9 are a part of a flowchart showing the procedure of a recording control method for a recording medium according to the present invention.
  • FIG. 10 is a diagram for explaining a recording control method for a recording medium according to the present invention.
  • FIG. 11 is a flowchart showing the procedure of the reset process in the recording medium recording control method according to the present invention.
  • BEST MODE FOR CARRYING OUT THE INVENTION A recording control method and a recording control device for a recording medium according to the present invention will be described below with reference to an example in which the method is applied to an IC (Integrated Circuit) recorder. .
  • FIG. 6 is a block diagram showing a configuration of an IC recorder to which the present invention is applied.
  • the IC recorder shown in Fig. 6 consists of a microcomputer
  • the control unit 1 controls a flash memory 2 as a recording medium, a display control unit 4 that performs display control of an LCD (Lid Crystal Display) 3 as an example of a display element, and an operation input unit 5.
  • An operation input unit interface 6 for connecting to the unit 1 and a USB (Universal Serial Bus) interface 7 are connected.
  • the microcomputer constituting the control unit 1 includes a CPU (Central Processing Unit) 11, a program ROM (Read Only Memory) 12, and a random access memory (RAM) 13. are doing. It is also possible to use a microphone computer in which the program ROM 12 and the work area RAM 13 are external to the CPU.
  • CPU Central Processing Unit
  • program ROM Read Only Memory
  • RAM random access memory
  • a component part including the control unit 1 and the flash memory 2 is a part that constitutes an embodiment of a recording control device for a recording medium.
  • the audio signal from the microphone 21 is supplied to the recording processing unit 23 through the amplifier 22.
  • the recording processing unit 23 converts the audio signal into a digital signal and performs data compression under the control of the control unit 1.
  • the control unit 1 receives the audio data from the recording processing unit 23 and writes it to the flash memory 2.
  • the control unit 1 receives a reproduction instruction from the operation input unit 5 through the operation input unit interface 6, the control unit 1 reads audio data from the flash memory 2 and sends it to the reproduction processing unit 24. Under the control of the control unit 1, the reproduction processing unit 24 decompresses the received audio data and restores the digital audio signal to an analog audio signal.
  • the reproduction processing unit 24 supplies the analog audio signal to an audio signal output terminal to which an earphone is connected, for example, through the amplifier 25. Further, the control unit 1 performs a predetermined display on the screen of the LCD 3 via the display control unit 4.
  • a personal computer can be connected to the USB connector 8 via a USB cable. Then, the control unit 1 reads out the audio data recorded in the flash memory 2 and transfers the data to the personal computer through the USB interface 7, and transmits the data from the personal computer through the USB interface 7. Supplied and can be written to flash memory 2.
  • audio data written to the flash memory 2 can be managed for each message, and a text comment can be added to the audio data for each message. Have been able to. The text comment is displayed on the LCD 3 screen.
  • FIG. 7 is an explanatory diagram of the memory area of the flash memory 2 of this example.
  • “BANK0” and “BANK1” and “EXTERNAL” are TOC (TableofCont ents) areas.
  • “PCM D ATAJ is an area where audio data is written.
  • EXTERNAL is the area where text comments are written.
  • the number of characters that can be input per message of audio data is 256 bytes, and is assigned to one page. In other words, one text comment is assigned to one page.
  • B ANK 0 and B ANK 1 each include "F ⁇ LDER INDEX X ADRE SSS TAGE”, "EXTERNAL MAP", “BL ANK MAP”, and "REV ISI ⁇ N” .
  • “FOLDER I NDEX ADRE SSSTAGE” indicates where in the “PCM DATA” area the voice data for each message is located (in page units), and the text comment corresponding to the voice data is ⁇ EXTERNALJ Stores information for managing where (in page units) the area is located.
  • EXTERNAL MAP J stores information for managing how character comments are written in the" EXTERNAL "area and which pages are free areas.
  • BLANK MAP stores information on how audio data is written in “PCM DATA”.
  • REV I SION manages a number indicating the number of revisions of “0” and “BANK 1”.
  • an application software for writing a character comment is mounted on a personal computer connected through the US B INTERFACE 7.
  • personal computers On the evening screen, a text comment entry field is displayed for each of a large number of messages stored in the flash memory 2, and the text comment is entered in the entry field.
  • the input character comment data is transferred from the personal computer to the IC recorder via the USB interface 7, and the control unit 1 stores the transferred character comment data in the “EXTERNAL” area of the flash memory 2.
  • the control unit 1 writes a character comment in the area of “EXTERNAL” by referring to “EXTERNAL MA PJ” and searching for an empty area.
  • writing is performed in order of seven dress numbers, and writing is performed in order from the empty page area in the first order.
  • FIG. 8 and FIG. 9 are flowcharts of a processing operation at the time of writing data to the flash memory 2 according to the present invention. This processing is executed by the CPU 11 of the control unit 1 in accordance with the program of the ROM 12. Is mainly described.
  • control unit 1 determines whether or not an instruction to write to the flash memory 2 has been issued (step S101). If it is determined that the instruction to write has not been issued, the control unit 1 executes other processing. (Step S102).
  • step S101 When it is determined in step S101 that a write instruction has been issued, the control unit 1 determines the logical address of the block to be written and the page to be written. (Step SI03), and turns on the updating flag of the first page of the block of the logical address (Step S104).
  • step S105 The processing in step S105 is as described with reference to FIG.
  • control unit 1 copies all page data in the address order before the page to be written from the original block to be written to the corresponding page in the block area of the write destination (step S 1 0 6). However, at this time, the updating flag of the spare area of the first page of the block ahead of the copy remains off.
  • control unit 1 writes the data of the page to be written to the page corresponding to the block destination of the write destination (step S107).
  • the processing up to this step S107 is the same as the processing of steps S1 to S7 in the flowchart of FIG. 3, which is a conventional write control procedure.
  • step S107 after the page data has been written in step S107, instead of immediately copying all of the remaining pages after the page to be written as in the related art, the page where the writing has been completed is performed. Registers the page immediately after as the next write start position in the block and waits.
  • step S111 in FIG. 9 it is determined whether or not the writing has been completed. If the writing has been completed, all the page data after the page to be written are replaced with the original block to be written. Is copied to the corresponding page of the write destination block area (step S112).
  • Step S111 the write processing routine ends.
  • step S111 determines whether or not the writing has not been completed. If it is determined in step S111 that the writing has not been completed, the control The part 1 determines the logical address of the next block to be written and the page to be written (step S114). Then, it is determined whether or not the determined next write target page is in the same block being written and is a post-order address of the page address written in step S107 ( Step S1 15).
  • step S115 it is determined that the next page to be written is in the same block being written and is located at an address position after the page in which data was previously written.
  • the control unit 1 transfers the data of all pages between the page in which the data was previously written and the next page to be written from the original block to be written to the block area of the write destination. Copy to the corresponding page (Step S116).
  • step S is performed while the next page to be written is in the same block being written, and the last data is written in the previous block. Repeat the routine from 1 1 1 to step S 1 16 and return from step S 1 16 to step S 107.
  • step S115 If it is determined in step S115 that the next page to be written is not in the same block being written, the control unit 1 writes all the page data after the last page to be written.
  • the target block is copied from the original block to the corresponding page in the write destination block area (step S117).
  • the control unit 1 logically erases the data in the original block to be written that has been evacuated to the spare area. (Step S118). Then, the process returns to step S104, and the processing steps after step S104 are repeated. Therefore, in the writing method according to the present invention, the designation of the page to be written is a page in the same block as shown by 1, 2, and 3 in FIG. If the pages are ranked, the pages 1, 2, and 3 are written at high speed as follows. That is, in the writing of the page (1), first, the page before the page (1) is the original block to be written as shown by (1) -1 in Fig. 10.
  • pages to be written are pages in the same block. Therefore, if the address ranks occur sequentially and later, the copy of the required page and the write of the page to be written are repeated within one block, so that high-speed write processing can be performed. Will be possible.
  • the character comment data is written in the order of the address number in the order of the address number, and the writing is performed in order from the empty page area in the first order.
  • the write control method according to the above works effectively.
  • FIG. 11 is a flowchart for explaining the reset processing when the power supply voltage is turned on again in the present invention.
  • control unit 1 starts the reset processing shown in FIG. 11, and first searches for the logical address of the spare area of the first page of each block, and finds the block having the same logical address. It is determined whether there are two or not (step S 1 2 1).
  • the state is the same as the logical address of the block to be rewritten. Therefore, when the power is turned off during the write process, there are two blocks with the same logical address. However, since the updating flag is turned on in the original block to be rewritten, it can be distinguished from the block at the rewriting destination where the updating flag is off.
  • step S121 when it is determined in step S121 that there are two blocks having the same logical address, the control unit 1 determines that the power supply has been interrupted during the write processing. Then, both of these two blocks are left, and a search is made within the block where the updating flag is off, and when viewed from the last page in the address order of one block, the pages that are continuously free are Among them, the page having the highest address is detected (step S122).
  • control unit 1 stores all the data of the pages following the page of the block whose update flag is on, including the detected page, in the corresponding page position of the block whose update flag is off. Copy (step S 1 2 3). When copying is completed, all data in the blocks whose updating flag is ON are erased (step S 1 2 4). Then, the reset process ends, and the process proceeds to the next process.
  • step S121 If it is determined in step S121 that there is only one block having the same logical address, it is determined that there is no write process in progress, the reset process is terminated, and the process proceeds to the next process.
  • step S122 a search is made in a block in which the updating flag is off, and when the address order is viewed from the last page, a continuous empty area is found.
  • the page with the highest priority address is detected among the pages with, the corresponding page address position is changed to the next write in the block with the updating flag being off (write destination block).
  • the reset process may be registered as the start position, and the process of steps S123 and S124 of FIG. 11 may not be performed.
  • the reset processing is the stage at which step S107 in FIG. 8 is completed. Therefore, after the reset processing, the processing after step S111 in FIG. 9 is performed, and if the writing is completed, the step S12 equivalent to the processing in steps S123 and 124 in FIG. 11 is performed. The processing of steps 112 and S113 is performed. If the writing is not completed, the next block and page to be written are determined, and the above-described writing processing is performed.
  • the present invention is applicable to all recording media in which address control similar to that of a NAND flash memory must be performed at the time of writing.
  • the electronic device to which the present invention is applied is not limited to an IC recorder.
  • the flash memory is not limited to a built-in electronic device.
  • the flash memory may be a force-type memory and may be removable.
  • the distinction between the write source and write destination blocks is as follows.
  • the updating is performed using the updating flag included in the page data
  • the distinction between the writing source block and the writing destination block is not limited to the method using such a flag.
  • the management of the write control is performed using the logical / physical address conversion table, but the present invention is not limited to such a method.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)
  • Memory System (AREA)

Abstract

本発明は、所定のデータ数の小ブロックをデータの読み書きの単位とし、小ブロックの複数個からなる大ブロックでデータの消去が可能であり、小ブロック単位の書き込みは、大ブロック間及び小ブロック間においてランダムにでき、大ブロック内での小ブロックの書き込みがアドレス順に行われる記録媒体に対してデータの書き込みを行う記録制御方法であり、大ブロック内の小ブロックの書き込みが終了したときに、次に書き込みがなされる小ブロックが、書き込みが終了した小ブロックが含まれる大ブロックと同一であって、次に書き込みがなされる小ブロックのアドレスが、書き込みが終了した小ブロックのアドレスの後のアドレス順であるかどうか判別し、そうであれば、当該次に書き込むべき小ブロックの書き込みを実行する。

Description

明細書 記録媒体の記録制御方法及び記録制御装置 技術分野 本発明は、 フラッシュメモリなどの記録媒体の記録制御方法及び記録制御装置 に関する。
本出願は、 日本国において 200 3年 2月 20日に出願された日本特許出願番 号 2 0 0 3 - 042 9 8 3を基礎として優先権を主張するものであり、 この出願 は参照することにより、 本出願に援用される。 背景技術
NAND型フラッシュメモリで取り扱う記録データは、 例えば図 1に示すよう に構成されている。 すなわち、 記録データは、 ページと称される小ブロック単位 で読み出し及び書き込みが行われ このページを複数個有するブロックと称され る大プロック単位で消去が行われる。
1ページは、 例えば、 5 1 2バイトのデ一夕エリアと、 1 6バイトのスペアェ リア (冗長部) とから構成される。 1 6バイトのスペアエリアのうちの 4バイト は、 エラー検出訂正用の E C C (Error Correct ion Code)として使用される。 このフラッシュメモリの読み出し及び書き込みの制御方法は、 例えば特開 20 0 0 - 3 1 1 04公報に記載されているような方法で行われる。
フラッシュメモリの読み出し及び書き込みを制御する記録制御装置は、 ブロッ ク単位で、 フラッシュメモリのどの物理アドレスにデータを書き込んだかを、 論 理アドレスにより管理するようにしており、 このため、 記録制御装置は、 ブロッ ク単位で、 フラッシュメモリの物理ァドレスと論理ァドレスとの変換を行うため の論理物理アドレス変換テーブルを備える。 記録制御装置は、 この論理物理アド レス変換テーブルを用いて、 フラッシュメモリのァドレス制御を行う。 この場合、 論理アドレスは、 各ページのスペアエリアに書き込まれる。 また、 スペアエリアには、 当該論理ァドレスのブロックへの書き込みが行われている最 中であるか否かを示す更新中フラグが含まれる。 更新中フラグは、 書き込みが行 われているときには、 オン ( 「0」 ) にされ、 書き込み中でなければ、 オフ ( 「 1」 ) である。
次に、 N A N D型フラッシュメモリにおけるページ単位のデータの書き込み動 作について説明する。 この場合に、 N A N D型フラッシュメモリは、 書き込み対 象ブロック及び書き込み対象ページは、 ランダムに決定することができるが、 同 一プロック内での書き込み処理手順においては、 ァドレス番号の先頭のページか ら、 アドレス順に従つて行わなければならないという制約がある。 つまり、 同一 ブロック内では、 ァドレスの小さいページから順番に書き込む必要がある。 この ため、 従来は、 ページ単位の書き込みであっても、 当該書き込み対象ページを含 むプロック単位で書き込み動作を行うようにしている。
図 2は、 このページ単位のデータの書き込み動作の概要を説明するための図で める。
すなわち、 あるブロック中の空いている 1ページ分のエリァにぺ一ジデ一夕を 書き込む場合には、 1ブロック分の空きエリァを用意し、 当該空きエリァの書き 込み対象ページアドレスには、 新規デ一夕を書き込み、 当該ブロックの他のぺ一 ジのデ一夕は、 元のデータをコピーするようにする。 そして、 書き込み処理が終 了後には、 元のプロックを消去するようにする。
なお、 図 2中、 斜線が施されたブロックは、 デ一夕が既に書き込まれたデ一夕 書き込み済みページを示し、 空白のブロックは、 デ一夕が未だ書き込まれていな ぃデ一夕未書き込みページを示し、 編み目を施したブロックは、 新規のデータの 書き込みが行われる新規データ書き込みページを示す。
図 3は、 このデータ書き込み時の処理動作のフロ一チヤ一トであり、 これは、 前述したフラッシュメモリの読み書きを制御する記録制御装置が実行する処理を 中心に記述したものである。
すなわち、 記録制御装置は、 フラッシュメモリへの書き込み指示が発生したか 否か判別し (ステップ S 1 ) 、 書き込み指示が発生していないと判別したときに は、 その他の処理を実行する (ステップ S 2 ) 。
そして、 ステップ S 1で、 書き込み指示が発生したと判別したときには、 記録 制御装置は、 書き込み対象ブロック及び書き込み対象ページの論理ァドレスを決 定し (ステップ S 3 ) 、 当該論理アドレスのブロックの先頭のページの更新中フ ラグをオンにする (ステップ S 4 ) 。
次に、 論理上、 記録制御装置の論理物理アドレス変換テーブルに用意している 予備の空きエリアに書き込み対象プロックを退避すると共に、 書き込み対象プロ ックの論理ァドレスと同じ論理ァドレスのブロックを書き込める空きブロックェ リアを作るようにする (ステップ S 5 ) 。 このステップ S 5の処理を、 図 4を参 照してさらに説明する。
すなわち、 例えば、 図 4に示すように、 フラッシュメモリが、 論理ブロックァ ドレス Aから論理ブロックァドレス A + n— 1までを有効エリアとして持つと共 に、 論理ブロックァドレス A + nの 1ブロック分の予備エリァを持つものとする。 ここで、 論理ブロックアドレス A + nの予備ェリアは、 消去済みであって空きェ リアであるものとする。
図 4に示す例では、 書き込み対象ブロックは、 論理ブロックアドレス A + 3の ブロックであるとしている。 そこで、 この例では、 ステップ S 4において、 図 4 に示すように、 論理プロックァドレス A + 3のブロックの先頭のページにおける スペアエリアの更新中フラグがオンにされる。
ステップ S 5では、 記録制御装置は、 書き込み対象ブロックである論理プロッ クアドレス A + 3のブロックの論理ブロックァドレスを、 論理物理ァドレス変換 テ一プル上において、 予備エリアの論理ブロックアドレス A + nに変更する。 こ のとき、 論理ブロックァドレス A + 3のブロックデータ上のスペアエリアの論理 ァドレスの書き換えは行わない。
また、 論理ブロックァドレスが A + nであった予備エリアの論理ブロックァド レスを、 論理物理アドレス変換テーブル上において、 A + 3に変換する。 この論 理ァドレスの入れ換えは、 新規に書き込むブロックのスペアエリアの論理ァドレ スに、 A + 3が書かれるようにするためである。 この論理アドレスの入れ換えに より、 論理上、 あたかも、 書き込み対象の元のブロックデータが、 予備エリアに 退避され、 書き込み対象の元のブロックデ一夕があった論理ブロックアドレスが 空きエリアになったようになる。
以上のようなステップ S 5の処理が終了したら、 記録制御装置は、 図 2に①ー 1を付して示すように、 書き込み対象ページよりも前のァドレス順位の全てのぺ 一ジデ一夕を、 書き込み対象の元のブロックから、 書き込み先のブロックエリア の対応するページにコピーする (ステップ S 6 ) 。 このとき、 コピ一先のブロッ クの先頭のページのスペアエリアの更新中フラグはオフとされる。
次に、 記録制御装置は、 図 2の①ー 2で示すように、 書き込み対象ページのデ 一夕を、 書き込み先のブロックエリァの対応するページに書き込む (ステツプ S 7 ) 。
次に、 記録制御装置は、 図 2の①— 3で示すように、 書き込み対象ページより も後のァドレス順位の全てのページデ一夕を、 書き込み対象の元のブロックから、 書き込み先のブロックエリアの対応するページにコピーする (ステツプ S 8 ) 。 以上のようにして、 書き込み対象の元のブロックの、 全てのページのデータに ついて、 書き換えが終了したら、 記録制御装置は、 論理上、 予備エリアに退避し ていた書き込み対象の元のブロックのデータを消去する (ステップ S 9 ) 。 これ により 論理上の予備エリアは空きエリアとなる。
次に、 記録制御装置は、 書き込みが終了したか否か判別し (ステップ S 1 0 ) 、 終了していなければ、 ステップ S 3に戻って、 次の書き込み対象ブロック及び書 き込み対象ページを決定し、 以上の処理を繰り返す。 また、 ステップ S 1 0で書 き込み終了であると判別したときには、 この書き込み処理ルーチンを終了する。 以上のような書き込み処理の最中に、 停電や電池切れなどの理由で、 電源電圧 が遮断されると、 書き込み処理が完了しないことになる。 その場合に対処するた め、 従来は、 電源電圧の再投入時にリセット処理を行って、 フラッシュメモリの アドレス管理上、 不具合が生じないようにしている。
図 5は、 電源電圧が再投入されたときのリセット処理を説明するためのフロー チヤ一卜である。
すなわち、 記録制御装置は、 電源電圧が再投入されると、 図 5に示すリセット 処理をスタートさせ、 各ブロックの先頭のページのスペアエリアの論理ァドレス を検索して、 同じ論理アドレスのブロックが 2つあるか否か判別する (ステップ S 2 1 ) 。
前述したように、 論理上、 予備エリアに退避された書き換え対象の元のプロッ クのページデータ上のスペアエリアの論理ァドレスは元のままであるので、 書き 換え先のプロックのべ一ジデ一夕上のスペアエリアの論理ァドレスと同じ状態と なる。 したがって、 書き込み処理の途中で電源が遮断されたときには、 論理アド レスが同一のブロックが 2個存在することになる。 但し、 書き換え対象の元のブ ロックでは更新中フラグがオンとされているので、 更新中フラグがオフである害 き換え先のプロックとは区別が可能である。
以上のことに基づいて、 ステツプ S 2 1で、 論理ァドレスが同一のプロックが 2つあると判別したときには、 書き込み処理の途中で電源が遮断されたと判断し、 それら 2つのブロックのうちの、 更新中フラグがオンであるブロックのデータは 残し、 更新中フラグがオフであるブロックのデータは、 全て消去する (ステップ S 2 2 ) 。 これにより、 ページ書き込み処理前の状態に戻る。 そして、 リセット 処理を終了し、 次の処理に移る。
また、 ステップ S 2 1で、 論理アドレスが同一のブロックは一つしかないと判 別したときには 書き込み処理が途中のものは無いとして このリセット処理を そのまま終了し ¾ 次の処理に移る。
以上のように、 従来のフラッシュメモリの記録制御方法においては、 1ページ のデ一夕の書き込みを行うごとに、 1ブロックの全てのページを書き込み先のブ ロックに書き換え (コピ一を含む) 、 書き込み対象の元のブロックは、 消去する ようにする。
したがって、 1ページのデータの書き込みが、 ブロック単位の書き込み及び消 去を伴うことになるため、 従来のフラッシュメモリの記録制御方法においては、 書き込み処理速度が遅いという問題がある。 発明の開示 本発明の目的は、 上述したような従来の技術が有する問題点を解決することが できる新規な記録媒体の記録制御方法及び記録制御装置を提供することにある。 本発明の他の目的は、 フラッシュメモリのような記録媒体の記録制御方法とし て書き込み処理速度の高速化を可能にする記録制御方法及び記録制御装置を提供 することにある。
上述のような目的を達成するための提案される本発明は、 所定のデータ数の小 プロックをデ一夕の読み書きの単位とし、 小プロックの複数個からなる大ブロッ クをデータの消去単位とし、 大ブロック内での小ブロックの書き込みはァドレス 順になされる記録媒体への記録制御方法であって、 大ブロック内の第 1の小ブロ ックにデータを書き込み、 次に書き込みが行われた第 2の小プロックが、 大プロ ック内の、 第 1の小ブロックのァドレスより後のァドレス順位であるかを判別し、 第 2の小ブ口ックが、 大ブロック内の第 1の小プロックのァドレスより後のァド レス順位であると判別されるときには、 第 2の小ブロックにデータの書き込みを 行う。
また、 本発明は、 所定のデ一夕数の小ブロックをデ一夕の読み書きの単位とし、 小プロックの複数個からなる大プロックをデ一夕の消去の単位とし、 大プロック 内での小プロックの書き込みはァドレス順になされる記録媒体への記録制御方法 であって、 第 1の小ブロックが含まれる第 1の大ブロックにうち、 第 1の小ブロ ックのァドレスよりも前のァドレス順位の小プロックを、 デ一夕が消去された第 2の大プロックの対応するァドレスにコピーする第 1のコピー工程と、 第 2の大 ブロックの第 1の小ブロックのァドレスに対応するァドレスにデータを書き込む 第 1の書き込み工程と、 次に書き込みが行われる第 2の小ブロックが、 第 1の大 ブロック内の第 1の小ブロックのァドレスより後のァドレス順位であるかを判別 する判別工程と、 判別工程で、 第 2の小ブロックが第 1の大プロック内の第 1の 小ブロックのァドレスより後のァドレス順位であると判別したときに、 第 1の小 ブロックと第 2の小ブロックとの間の小ブロックのデータを第 2の大ブロックの 対応するアドレスにコピーする第 2のコピー工程と、 第 2のコピー工程の後、 第 2の大ブロックの第 2の小ブロックのァドレスに対応するァドレスにデータを書 き込む第 2の書き込み工程と、 判別工程で、 第 2の小ブロックが第 1の大ブロッ クとは異なる大ブロック内のものであると判別したときに、 第 1の大ブロックの うち、 第 1の小ブロックのァドレスより後のァドレス順位の全ての小ブロックの デ一夕を第 2の大ブロックの対応するァドレスにコピーする第 3のコピー工程と、 第 3のコピー工程の後、 第 1の第 1ブロックのデータを消去する消去工程と こ の記録制御方法において、 書き込み処理が途中で中断された後の復帰時には、 第 2の大ブロックにおいて、 ァドレス順位が最後の小ブロックァドレスから見たと き、 連続して空となっている小ブロックアドレスのうちの最も先順位の小ブロッ クァドレスを検出する工程と、 第 2の大ブロックの最も先順位の小ブロックァド レス以降の全ての小ブロックァドレスに第 1の大ブロックの対応する小ブ口ック のデータをコピーする工程と、 第 1の大プロックのデータを消去する消去工程と を行う。
そして、 小ブロック単位の書き込みが途中で中断された後の復帰時には、 第 2 の大ブロックのァドレス順位が最後の小ブロックァドレスから見たとき、 連続し て空となっている大ブロックアドレスのうちの最も先順位の小ブロックアドレス を、 第 2の大プロックにおいて次に書き込みを開始する小プロ Vクァドレスとす る。
また、 本発明は、 所定のデータ数の小ブロックをデータの読み書きの単位とし、 小ブロックの複数個からなる大ブロックをデ一夕の消去の単位とし、 大ブロック 内での小ブロックの書き込みはアドレス順になされる記録媒体への記録制御装置 であって、 大ブロック内の第 1の小プロックへのデータの書き込みが終了したと きに、 次に書き込みがなされる第 2の小ブロックが大ブロック内のものであって、 第 1の小プロックのァドレスより後のァドレス順位であるかを判別する判別手段 を備え、 判別手段で、 第 2の小プロックが、 第 1の大ブロック内のものであって、 第 1の小プロックのァドレスより後のァドレス順位であると判別されるとき、 第 2の小ブロックにデータの書き込みを行う。
さらに、 本発明は、 所定のデ一夕数の小ブロックをデータの読み書きの単位と し、 小ブロックの複数個からなる大ブロックをデータの消去の単位とし、 大ブロ ック内での小プロックの書き込みはァドレス順になされる記録媒体への記録制御 装置であって、 第 1の小ブロックが含まれる第 1の大ブロックのうち、 第 1の小 ブロックのァドレスよりも前のァドレス順位の小ブロックを、 データが消去され た第 2の大ブロックに対応するァドレスにコピーする第 1のコピー手段と、 第 2 の大ブロックにおいて、 第 1の小ブロックのァドレスに対応するァドレスにデ一 夕を書き込む第 1の書き込み手段と、 次に書き込みがなされる第 2の小プロック が、 第 1の大ブロック内の第 1の小ブロックのァドレスより後のァドレス順位で あるかを判別する判別手段と、 判別手段で、 第 2の小ブロックが第 1の大ブロッ ク内の第 1の小プロックのァドレスより後のァドレス順位であると判別したとき に、 第 1の小ブロックと第 2の小ブロックとの間の小プロックデータを第 2の大 プロックの対応するァドレスにコピーする第 2のコピー手段と、 第 2のコピー手 段でコピーがなされた第 2の大ブロックにおいて第 2の小プロックのァドレスの 対応するアドレスにデータを書き込む第 2の書き込み手段と、 判別手段で、 第 2 の小ブロックが第 1の大ブロックとは異なる大ブロック内のものであると判別し たとさに、 第 1の大ブロックのうち第 1の小ブロックのアドレスより後のアドレ ス順位の全ての小ブロックデータを第 2の大ブロックの対応するァドレスにコピ 一する第 3のコピー手段と、 第 3のコピ一手段でのコピ一処理の後、 第 1の大ブ ロックのデータを消去する消去手段とを備える。
本発明に係る記録制御装置は、 さらに、 小ブロック単位の書き込みが途中で中 断されたことを検出する検出手段と、 検出手段で小ブロック単位の書き込みが途 中で中断されたと検出したときに、 第 2の大ブロックにおいて, アドレス順位が 最後の小ブロックアドレスから見たとき、 連続して空となっている小プロックァ ドレスのうちの最も先順位の小ブロックァドレスを検出する手段と、 第 2の大ブ 口ックの最も先順位の小ブロックアドレス以降の全ての小ブロックァドレスに、 第 1の大ブロックの対応する小ブロックのデータをコピーするコピー手段と、 第
1の大プロックのデータを消去する消去手段とを備える。
本発明に係る記録制御装置は、 さらに、 小ブロック単位の書き込みが途中で中 断されたことを検出する検出手段を備え、 検出手段で、 小ブロック単位の書き込 みが途中で中断されたことが検出されたときに、 第 2の大ブロックのアドレス順 位が最後の小ブロックァドレスから見たとき、 連続して空となっている小プロッ クァドレスのうちの、 最も先順位の小ブロックァドレスを第 2の大ブロックにお いて次の書き込みを開始する小プロックァドレスとする。 本発明の更に他の目的、 本発明によって得られる具体的な利点は、 以下におい て図面を参照して説明される実施の形態の説明から一層明らかにされるであろう。 図面の簡単な説明 図 1は、 N A N D型フラッシュメモリのデ一タ構造を示す図である。
図 2は、 N A N D型フラッシュメモリについて、 従来の記録制御方法を説明す るための図である。
図 3は、 N A N D型フラッシュメモリについて、 従来の記録制御方法の手順を 示すフローチヤ一卜である。
図 4は、 N A N D型フラッシュメモリについて、 従来の記録制御方法を説明す るための図である。
図 5は、 従来の記録媒体の記録制御方法におけるリセッ ト処理の手順を示すフ ローチヤ一トである。
図 6は、 本発明に係る記録媒体の記録制御方法が適用される I Cレコーダの構 成を示すブロック図である。
図 7は, フラッシュメモリのメモリエリァ構造を説明するための図である。 図 8及ぴ図 9は 本発明に係る記録媒体の記録制御方法の手順を示すフローチ ヤー卜の一部である。
図 1 0は、 本発明に係る記録媒体の記録制御方法を説明するための図である。 図 1 1は、 本発明に係る記録媒体の記録制御方法におけるリセット処理の手順 を示すフローチヤ一トである。 発明を実施するための最良の形態 以下、 本発明に係る記録媒体の記録制御方法及び記録制御装置を I C (Integra ted C i rcui t :集積回路) レコーダに適用した場合を例を挙げて説明する。
図 6は、 本発明が適用される I Cレコーダの構成を示すブロック図である。 図 6に示す I Cレコーダにおいては、 マイクロコンピュー夕により構成される 制御部 1に対して、 記録媒体としてのフラッシュメモリ 2と、 表示素子の例とし ての LCD (L uid Crystal Display) 3についての表示制御を行う表示制御部 4 と、 操作入力部 5を当該制御部 1に接続するための操作入力部ィンタフェース 6 と、 U S B (Universal Serial Bus)インタフェース 7とが接続されている。
制御部 1を構成するマイクロコンピュータは、 この例では、 CPU (Central P rocessing Unit) 1 1と、 プログラム R O M (Read Only Memory) 12と、 ヮ一クェ リア用 RAM (Random Access Memory) 13とを内蔵している。 プログラム ROM 12と、 ワークエリア用 RAM 1 3とが、 C P Uに対して外付けにされているマ イク口コンピュータを用いることもできる。
制御部 1と、 フラッシュメモリ 2とからなる構成部分が、 記録媒体の記録制御 装置の実施形態を構成する部分となる。
この例の I Cレコーダにおいては、 マイクロホン 2 1からの音声信号は、 アン プ 22を通じて記録処理部 23に供給される。 記録処理部 23では 制御部 1に よる制御の下に、 音声信号をデジタル信号に変換すると共に、 デ一夕圧縮を行う。 制御部 1は, 操作入力部 5からの記録指示を、 操作入力部ィン夕フェース 6を 通じて受け取ると、 記録処理部 23からの音声データを受け取り、 フラッシュメ モリ 2に書き込む。 この制御部 1は, 操作入力部 5から再生指示を、 操作入力部 インタフェース 6を通じて受け取ると、 フラッシュメモリ 2から音声データを読 み出して再生処理部 24に送出する。 再生処理部 24では、 制御部 1の制御の下 に、 受け取った音声デ一夕の圧縮を解凍し、 また、 デジタル音声信号をアナログ 音声信号に戻す。 そして、 再生処理部 24は、 アナログ音声信号をアンプ 25を 通じて、 例えばイヤホンが接続される音声信号出力端子に供給する。 また、 制御 部 1は、 表示制御部 4を介して所定の表示を L C D 3の画面上において行う。 この例の I Cレコーダにおいては、 US Bコネクタ 8に US Bケーブルを通じ て、 例えばパーソナルコンピュータを接続することができる。 そして、 制御部 1 は、 フラッシュメモリ 2に記録されている音声データを読み出して、 US Bイン 夕フェース 7を通じてパーソナルコンピュータにデータ転送し、 パーソナルコン ピュー夕からのデ一夕を US Bインタフェース 7を通じて供給されてフラッシュ メモリ 2に書き込むすることができる。 また、 この例では、 フラッシュメモリ 2に書き込まれる音声データについては、 用件ごとに管理することが可能とされており、 各用件毎の音声デ一夕については、 文字コメントを付加することができるようにされている。 その文字コメントは、 L CD 3の画面に表示することができるようにされている。
この場合のフラッシュメモリ 2におけるメモリエリァ管理について説明する。 図 7は、 この例のフラッシュメモリ 2のメモリエリアの説明図である。 図 7にお いて、 「BANK0」 及び 「BANK 1」 と、 「EXTERNAL」 とは、 TO C (T a b l e o f C o n t e n t s ) エリアである。 また、 「P CM D ATAJ は、 音声データが書き込まれるエリアである。
「EXTERNAL」 は、 文字コメントが書き込まれるエリアである。 この例 においては、 音声データの 1用件あたりについて、 入力可能な文字は、 2 5 6バ イト分とされ、 1ページに割り当てられる。 つまり、 1ページに 1用件分の文字 コメントが割り当てられる。
「B ANK 0」 及び 「B ANK 1」 のそれぞれは、 「F〇LDER I NDE X ADRE S S S TAGE」 と、 「EXTERNAL MAP」 と、 「B L ANK MAP」 と、 「REV I S I〇N」 とを含む。
「FOLDER I NDEX ADRE S S S T A G E」 は、 各用件毎の音 声デ一夕が 「P CM DATA」 のエリアのどこにあるか (ページ単位) 、 また、 当該音声データに対応する文字コメン卜が Γ E X T E R N A L J のエリアのどこ にあるか (ページ単位) を管理するための情報を格納する。
("EXTERNAL MA P J は、 「EXTERNAL」 のエリアに文字コメ ントがどのように書き込まれていて、 どのページが空きエリァであるかを管理す るための情報を格納する。
「 BLANK MAP」 は、 「P CM DATA」 にどのように音声デ一夕が 書き込まれているかの情報を格納する。 「REV I S I ON」 は、 ΓΒΑΝΚ 0」 、 「BANK 1」 の改訂回数を示す番号を管理する。
この例の I Cレコーダの場合、 US Bィンタフエース 7を通じて接続されるパ 一ソナルコンピュータに、 文字コメントを書き込むためのアプリケ一ションソフ トウエアが搭載される。 そのアプリケーションにおいては、 パーソナルコンピュ —夕の画面に、 フラッシュメモリ 2に格納されている多数の用件のそれぞれ毎に、 文字コメントの書き込み欄が表示され、 当該書き込み欄に文字コメントが入力さ れる。
そして、 入力された文字コメントのデータは、 US Bインタフェース 7を通じ てパーソナルコンピュータから I Cレコーダに転送され、 制御部 1は、 フラッシ ュメモリ 2の 「EXTERNAL」 のエリアに、 転送されてきた文字コメントの デ一夕を書き込む。 この場合において、 制御部 1は、 「EXTERNAL」 のェ リアには、 「 EXTERNAL MA P J を参照して、 空いているエリアをサ一 チして文字コメントを書き込むようにする。 ただし、 この例では、 「EXTER N ALJ のエリアには、 7ドレス番号順であって、 先順位の空きページエリアか ら順に書き込みを行うように定められている。
なお、 Γ B A N K 0 J 及び ΓΒ ANK 1 J の 2つがあるのは、 一方に一つ前の TOC情報を格納しておき、 常に、 一つ前の状態には戻れるようにするためであ る。 つまり、 TOCが書き換えられているときに、 突然の電源遮断が発生しても、 書き換えられているのは一方の B AN Kであり、 書き換えられていない一つ前の 状態の BANKの情報には必ず戻ることができる。
また、 Γ R E V I S I O N j のエリアに格納されている改訂回数を示す番号を 参照することにより、 Γ B A N K 0 J 及び Γ B A N K 1 J の 2つのうちの、 いず れが旧く、 いずれが新しい T O C情報であるかを知ることができる。
次に、 本発明に係るフラッシュメモリ 2へのデータの書き込み制御について、 説明する。
図 8及び図 9は、 本発明に係るフラッシュメモリ 2へのデータ書き込み時の処 理動作のフローチヤ一トであり、 これは、 制御部 1の C P U 1 1が ROM 1 2の プログラムに従って実行する処理を中心に記述したものである。
すなわち、 制御部 1は、 フラッシュメモリ 2への書き込み指示が発生したか否 か判別し (ステップ S 1 0 1) 、 書き込み指示が発生していないと判別したとき には、 その他の処理を実行する (ステップ S 1 02) 。
そして、 ステップ S 1 0 1で、 書き込み指示が発生したと判別したときにほ、 制御部 1は、 書き込み対象ブロック及び書き込み対象ページの論理ァドレスを決 定し (ステップ S I 0 3 ) 、 当該論理アドレスのブロックの先頭のページの更新 中フラグをオンにする (ステップ S 1 0 4 ) 。
次に、 論理上、 制御部 1の論理物理アドレス変換テーブル (R A M 1 2内にあ る) に用意している予備の空きエリアに書き込み対象ブロックを退避すると共に、 書き込み対象ブロックの論理ァドレスと同じ論理ァドレスのブロックを書き込め る空きブロックエリアを作るようにする (ステップ S 1 0 5 ) 。 このステップ S 1 0 5の処理は、 前述の図 4を参照して説明した通りである。
次に、 制御部 1は、 書き込み対象ページよりも前のアドレス順位の全てのベー ジデ一夕を、 書き込み対象の元のブロックから、 書き込み先のブロックエリアの 対応するページにコピーする (ステップ S 1 0 6 ) 。 ただし、 このとき、 コピ一 先のプロックの先頭のページのスペアエリァの更新中フラグはオフのままとされ る。
次に、 制御部 1は、 書き込み対象ページのデ一夕を、 書き込み先のブロックェ リァの対応するページに書き込む (ステツプ S 1 0 7 ) 。 このステツプ S 1 0 7 までの処理は、 従来の書き込み制御手順である図 3のフローチャートのステップ S 1〜 S 7までの処理と同様である。
本発明では、 ステップ S 1 0 7でページデータの書き込みが終了した後におい ては、 従来のように即座に書き込み対象ページの後の残りのページを全てコピー するのではなく、 書き込みが終了したページの直後のページを、 当該ブロックに おける次の書き込み開始位置として登録して待機する。
この待機状態において、 書き込み終了であるか否か判別し (図 9のステップ S 1 1 1 ) 、 書き込み終了であれば、 書き込み対象ページよりも後の全てのページ データを、 書き込み対象の元のブロックから、 書き込み先のブロックエリアの対 応するページにコピーする (ステップ S 1 1 2 ) 。
そして、 書き込み対象の元のブロックの、 全てのページのデータについて、 書 き換えが終了したら、 制御部 1は、 論理上、 予備エリアに退避していた書き込み 対象の元のブロックのデータを消去する (ステップ S 1 1 3 ) 。 そして、 この書 き込み処理ルーチンを終了する。
また、 ステップ S 1 1 1で、 書き込み終了ではないと判別したときには、 制御 部 1は、 次の書き込み対象ブロック及び書き込み対象ページの論理ァドレスを決 定する (ステップ S 1 1 4 ) 。 そして、 決定した次の書き込み対象ページが、 書 き込み中の同一ブロック内のものであって、 かつ、 ステップ S 1 0 7で書き込ん だページアドレスの後順位のアドレスであるか否か判別する (ステップ S 1 1 5 ) 。
このステップ S 1 1 5で、 次の書き込み対象ページが、 書き込み中の同一ブロ ック内のものであって、 かつ、 前回、 データを書き込んだページよりも後順位の アドレス位置のものであると判別したときには、 制御部 1は、 前回、 データを書 き込んだページと、 次の書き込み対象ページとの間の全てのページのデータを、 書き込み対象の元のプロックから、 書き込み先のブロックエリアの対応するぺ一 ジにコピーする (ステップ S 1 1 6 ) 。
そして、 図 8のステップ S 1 0 7に戻り、 ステップ S 1 1 4で決定された書き 込み対象ページにデータの書き込みを行う。 以下、 次の書き込み対象ページが、 書き込み中の同一ブロック内のものであって、 かつ、 前回デ一夕を書き込んだぺ ―ジょりも後順位のァドレス位置のものである間は、 ステツプ S 1 1 1〜ステツ プ S 1 1 6及びステツプ S 1 1 6からステツプ S 1 0 7に戻るルーチンを繰り返 す。
ステップ S 1 1 5で、 次の書き込み対象ページが、 書き込み中の同一ブロック 内のものでないと判別したときには、 制御部 1は、 最後の書き込み対象ページよ りも後の全てのページデータを、 書き込み対象の元のブロックから、 書き込み先 のプロックエリアの対応するページにコピーする (ステップ S 1 1 7 ) 。
そして、 書き込み対象の元のブロックの、 全てのページのデータについて、 書 き換えが終了したら、 制御部 1は、 論理上、 予備エリアに退避していた書き込み 対象の元のブロックのデータを消去する (ステツプ S 1 1 8 ) 。 そして、 ステツ プ S 1 0 4に戻り、 このステップ S 1 0 4以降の処理ステップを繰り返す。 したがって、 本発明に係る書き込み方法においては、 書き込み対象ページの指 定が、 図 1 0において、 ①、 ②、 ③で示すように、 同一ブロック内のページであ つて、 アドレス順位が、 順次、 後順位となるようなものであった場合には、 それ らの①、 ②、 ③のページは、 次のようにして、 高速に書き込まれる。 すなわち、 ①のページの書き込みにおいては、 先ず、 ①のページよりも前のぺ ージが、 図 1 0において、 ①ー 1で示すように、 書き込み対象の元のブロック
(コピー元のブロック) から、 書き込み先のブロック (コピー先のブロック) に コピーされる。 その後、 図 1 0において、 ①ー 2で示すように、 ①のページの書 き込みがなされる。
続いて、 ①のページと、 ②のページの間の全てのページが、 図 1 0において、 ②— 1で示すように、 書き込み対象の元のブロック (コピー元のブロック) から、 書き込み先のブロック (コピー先のブロック) にコピーされる。 その後、 図 1 0 において、 ②ー 2で示すように、 ②のページの書き込みがなされる。
さらに、 続いて、 ②のページと、 ③のぺ一ジの間の全てのページが、 図 1 0に おいて、 ③— 1で示すように、 書き込み対象の元のブロック (コピー元のブロッ ク) から、 書き込み先のブロック (コピー先のブロック) にコピーされる。 その 後、 図 1 0において、 ③ー 2で示すように、 ③のページの書き込みがなされる。 なお、 図 1 0において、 斜線が施されたブロックは、 データが既に書き込まれ たデータ書き込み済みページを示し、 空白のブロックは、 データが未だ書き込ま れていないデータ未書き込みページを示し、 編み目を施したブロックは、 新規の デ一夕の書き込みが行われる新規データ書き込みページを示す。
以上のように 本発明によれば、 1ページの書き込みを行うごとに 1ブロッ ク分の書き込みを全て行わなければならない従来の方法とは異なり、 書き込み対 象ページが、 同一ブロック内のページであって、 アドレス順位が、 順次、 後順位 となるように発生する場合には、 一つのブロック内において、 必要なページのコ ピーと、 当該書き込み対象ページの書き込みを繰り返すので、 高速の書き込み処 理が可能になる。
特に、 前述した 「 E X T E R N A L^ のエリアにおいては、 文字コメントのデ —夕について、 アドレス番号順であって、 先順位の空きページエリアから順に書 き込みを行うように定められているので、 本発明に係る書き込み制御方法が有効 に働く。
例えば、 パーソナルコンピュータで、 複数個の用件についての文字コメントを それぞれ入力した後、 それらの複数個の用件についての文字コメントのデータを フラッシュメモリ 2に書き込む場合、 従来の場合であれば、 文字コメントの 1用 件分毎に、 1ブロック単位の書き込みを行わなければならなかったが、 本発明に よれば、 複数個の用件分の文字コメントのデータを、 順次に 1ブロック内に書き 込むことが可能となるので、 非常に高速の書き込みが可能になる。
また、 本発明においては、 以上のような書き込み処理の最中に、 停電や電池切 れなどの理由で、 電源電圧が遮断された場合に、 書き込み処理が完了しないこと になることに対処するためのリセット処理は、 次のように行われる。
図 1 1は、 本発明において、 電源電圧が再投入されたときのリセット処理を説 明するためのフローチヤ一トである。
すなわち、 制御部 1は、 電源電圧が再投入されると、 図 1 1のリセット処理を スタートさせ、 先ず、 各ブロックの先頭のページのスペアエリァの論理ァドレス を検索して、 同じ論理アドレスのブロックが 2つあるか否か判別する (ステツプ S 1 2 1 ) 。
前述したように、 論理上、 予備エリアに退避された書き換え対象の元のプロッ クのページデータ上の論理ァドレスは元のままであるので、 書き換え先のブロッ クの論理アドレスと同じ状態となる。 したがって、 書き込み処理の途中で電源が 遮断されたときには 論理ァドレスが同一のブロックが 2個存在することになる。 ただし、 書き換え対象の元のブロックでは更新中フラグがオンとされているので、 更新中フラグがオフである書き換え先のプロックとは区別が可能である。
以上のことに基づいて、 ステップ S 1 2 1で、 論理ァドレスが同一のブロック が 2つあると判別したときには、 制御部 1は、 書き込み処理の途中で電源が遮断 されたと判断し、 この実施形態では、 それら 2つのブロックの両方を残し、 更新 中フラグがオフであるブロック内をサーチし、 ァドレス順位が 1プロックの最後 のページの方からみたときに、 連続して空きとなっているページのうち、 最も先 順位のァドレスとなっているページを検出する (ステップ S 1 2 2 ) 。
次に、 制御部 1は、 検出したページを含めて、 更新中フラグがオンであるプロ ックの当該ページ以降のページのデータを、 更新中フラグがオフであるブロック の対応するページ位置に全てコピーする (ステップ S 1 2 3 ) 。 コピーが終了し たら、 更新中フラグがオンであるブロックのデータは、 全て消去する (ステップ S 1 2 4 ) 。 そして、 リセット処理を終了し、 次の処理に移る。
また、 ステップ S 1 2 1で、 論理アドレスが同一のブロックは一つしかないと 判別したときには、 書き込み処理が途中のものは無いとして、 このリセット処理 をそのまま終了し、 次の処理に移る。
以上のリセット処理により、 書き込み処理の途中で電源が遮断されてしまった としても、 1ブロック内に連続して複数のページを書き込んだとしても、 書き込 み済みのページまでのデ一夕は、 保存されるという効果がある。
なお、 上述のリセット処理の他の例として、 ステップ S 1 2 2において、 更新 中フラグがォフであるブロック内をサーチし、 アドレス順位が最後のページの方 からみたときに、 連続して空きとなっているページのうち、 最も先順位のァドレ スとなっているページを検出したら、 当該ページァドレス位置を、 当該更新中フ ラグがオフの状態のブロック (書き込み先ブロック) における、 次の書き込み開 始位置として登録して、 図 1 1のステツプ S 1 2 3及び 1 2 4の処理は行わずに リセット処理を終了するようにしてもよい。
この場合には、 リセット処理により、 図 8のステップ S 1 0 7が終了した段階 になる。 したがって、 リセット処理の後は、 図 9のステップ S 1 1 1以降の処理 が行われる状態になり 書き込み終了であれば、 図 1 1のステップ S 1 2 3及び 1 2 4の処理に等しいステツプ S 1 1 2及びステツプ S 1 1 3の処理を行い、 ま た、 書き込み終了でなければ、 次の書き込み対象ブロック及びページを判別して、 上述のような書き込み処理を行う。
以上の説明は、 記録媒体が N A N D型フラッシュメモリである場合であるが、 本発明は、 N A N D型フラッシュメモリと同様のァドレス制御を書き込み時に行 わなければならない記録媒体の全てに適用可能である。
また、 本発明が適用される電子機器は、 I Cレコーダに限られるものでないこ とも言うまでもない。 そして、 フラッシュメモリは、 電子機器に内蔵の塲合に限 らず、 例えばフラッシュメモリが力一ド型メモリであって、 挿脱可能なものであ つてもよい。
また'、 上述の説明では、 ブロック単位の空きエリアを用意して、 ページ単位に 書き込みを行う場合において、 書き込み元と書き込み先のブロックの区別は、 ぺ ージデータに含まれる更新中フラグを用いて行うようにしたが、 書き込み元と書 き込み先のブロックの区別は、 このようなフラグを用いる方法に限定されるもの ではない。 例えば、 書き込み元と書き込み先のブロックアドレスを常に記憶して 管理するようにすれば、 書き込み元と書き込み先のブロックの区別は可能である。 また、 上述の説明では、 書き込み制御の管理は、' 論理物理アドレス変換テープ ルを用いて行うようにしたが、 本発明はこのような方法に限られるものでない。 また、 上述の説明においては、 ブロック内 (大ブロック内) では、 アドレスの 小さいページ (小ブロック) から順番に昇順に書き込むようにした場合について 説明したが、 本発明は、 アドレスの大きいページ (小ブロック) から順番に降順 に書き込むようにする場合にも同様に適用できる。 産業上の利用可能性 上述したように、 本発明は、 ページ単位の書き込み指示が、 同一ブロック内の アドレス順のページについて、 連続して複数回発生する場合には、 当該同一プロ ック内において、 ページ単位の書き込みがなされ、 その後、 当該ブロックの書き 込みが終了となるので、 書き込み処理を高速で行うことができる。

Claims

請求の範囲
1 . 所定のデータ数の小ブロックをデータの読み書きの単位とし、 前記小ブロッ クの複数個からなる大ブロックをデータの消去単位とし、 大ブロック内での小ブ ロックの書き込みはアドレス順になされる記録媒体への記録制御方法であって、 大ブロック内の第 1の小ブロックにデ一夕を書き込み、
次に書き込みが行われる第 2の小ブロックが、 前記大ブロック内の前記第 1の 小ブロックのァドレスより後のァドレス順位であるかを判別し、
前記第 2の小ブロックが、 前記大ブロック内の前記第 1の小ブロックのァドレ スより後のアドレス順位であると判別されるときには前記第 2の小ブロックにデ —夕の書き込みを行うことを特徴とする記録媒体への記録制御方法。
2 . 所定のデータ数の小プロックをデータの読み書きの単位とし、 前記小ブロッ クの複数個からなる大プロックをデ一夕の消去の単位とし、 大ブロック内での小 プロックの書き込みはァドレス順になされる記録媒体への記録制御方法であって、 第 1の小プロックが含まれる第 1の大ブロックにうち、 前記第 1の小プロック のァドレスよりも前のァドレス順位の小ブロックをデ一夕が消去された第 2の大 プロックの対応するァドレスにコピーする第 1のコピー工程と、
前記第 2の大ブロックの前記第 1の小プロックのアドレスに対応するァドレス にデータを書き込む第 1の書き込み工程と、
次に書き込みがなされる第 2の小ブロックが、 前記第 1の大ブロック内の前記 第 1の小プロックのァドレスより後のァドレス順位であるかを判別する判別工程 と、
前記判別工程で、 前記第 2の小ブロックが、 前記第 1の大プロック内の前記第 1の小ブロックのァドレスより後のァドレス順位であると判別したときに、 前記 第 1の小ブロックと、 第 2の小ブロックとの間の小ブロックのデ一夕を前記第 2 の大ブロックの対応するァドレスにコピーする第 2のコピー工程と、
前記第 2のコピ一工程の後、 前記第 2の大ブロックの前記第 2の小ブロックの ァドレスに対応するァドレスにデータを書き込む第 2の書き込み工程と、
前記判別工程で、 前記第 2の小プロックが前記第 1の大ブロックとは異なる大 ブロック内のものであると判別したときに、 前記第 1の大ブロックのうち前記第 1の小ブロックのァドレスより後のァドレス順位のすべての小ブロックのデ一夕 を前記第 2の大ブロックの対応するァドレスにコピーする第 3のコピー工程と、 前記第 3のコピー工程の後、 前記第 1の第 1ブロックのデータを消去する消去 工程とを備えることを特徴とする記録媒体への記録制御方法。
3 . 前記第 2の書き込み工程の後には、 前記判別工程に戻って前記判別工程以降 の処置を行うようにすることを特徴とする請求の範囲第 2項記載の記録媒体への 記録制御方法。
4 . 前記記録制御方法は、
さらに、 書き込み処理が途中で中断された後の復帰時には、
前記第 2の大ブロックにおいて、 ァドレス順位が最後の小ブロックァドレスか ら見たとき、 連続して空となっている小ブロックアドレスのうちの、 最も先順位 の小ブロックァドレスを検出する工程と、
前記第 2の大ブロックの、 前記最も先順位の小ブロックァドレス以降のすべて の小ブロックァドレスに、 前記第 1の大ブロックの対応する小ブロックのデータ をコピ一する工程と、
前記第 1の大プロックのデータを消去する消去工程とを備えることを特徴とす る請求の範囲第 2項記載の記録媒体への記録制御方法。
5 . 前記小ブロック単位の書き込みが途中で中断された後の復帰時には、 前記第 2の大ブロックのァドレス順位が最後の小ブロックァドレスから見たとき、 連続 して空となっている大ブロックァドレスのうちの、 最も先順位の小ブロックァド レスを、 前記第 2の大ブロックにおいて、 次に書き込みを開始する小ブロックァ ドレスとすることを特徴とする請求の範囲第 2項記載の記録媒体への記録制御方 法。
6 . 所定のデータ数の小ブロックをデータの読み書きの単位とし、 前記小プロッ クの複数個からなる大ブロックをデ一夕の消去の単位とし、 大ブロック内での小 ブロックの書き込みはァドレス順になされる記録媒体への記録制御装置であって、 大ブロック内の第 1の小ブロックへのデータの書き込みが終了したときに、 次 に書き込みがなされる第 2の小ブロックが前記大ブロック内のものであって、 前 記第 1の小ブロックのァドレスより後のァドレス順位であるかを判別する判別手 段を'備え、
前記判別手段で、 前記第 2の小ブロックが、 前記第 1の大ブロック内のもので あって、 前記第 1の小ブロックのァドレスより後のァドレス順位であると判別さ れるとき、 前記第 2の小ブロックにデータの書き込みを行うことを特徴とする記 録媒体への記録制御装置。
7 . 所定のデータ数の小ブロックをデータの読み書きの単位とし、 前記小プロッ クの複数個からなる大プロックをデータの消去の単位とし、 大ブロック内での小 ブロックの書き込みはァドレス順になされる記録媒体への記録制御装置であって、 第 1の小ブロックが含まれる第 1の大ブロックのうち、 前記第 1の小ブロック のァドレスよりも前のァドレス順位の小プロックをデ一夕が消去された第 2の大 ブロックに対応するァドレスにコピーする第 1のコピー手段と、
前記第 2の大プロックにおいて前記第 1の小プロックのァドレスに対応するァ ドレスにデータを書き込む第 1の書き込み手段と、
次に書き込みがなされる第 2の小プロックが、 前記第 1の大ブロック内の前記 第 1の小ブロックのァドレスより後のァドレス順位であるかを判別する判別手段 と、
前記判別手段で、 第 2の小ブロックが 前記第 1の大プロック内の前記第 1の 小ブロックのァドレスより後のァドレス順位であると判別したときに、 前記第 1 の小ブロックと、 第 2の小ブロックとの間の小ブロックデータを前記第 2の大ブ 口ックの対応するァドレスにコピーする第 2のコピ一手段と、
前記第 2のコピー手段でコピーがなされた前記第 2の大プロックにおいて前記第 2の小ブロックのァドレスの対応するァドレスにデ一夕を書き込む第 2の書き込 み手段と、
前記判別手段で、 前記第 2の小ブロックが、 前記第 1の大ブロックとは異なる 大ブロック内のものであると判別したときに、 前記第 1の大ブロックのうち前記 第 1の小プロックのァドレスより後のァドレス順位のすべての小ブロックデ一夕 を前記第 2の大ブロックの対応するァドレスにコピーする第 3のコピー手段と、 前記第 3のコピ一手段でのコピー処理の後、 前記第 1の大ブロックのデ一タを 消去する消去手段とを備えることを特徴とする記録媒体への記録制御装置。
8 . 前記第 2の書き込み手段によるデータ書き込みの後に、 前記判別手段による 判別を再度行うことを特徴とする請求の範囲第 7項記載の記録媒体への記録制御 装置。
9 . 前記記録制御装置は、 さらに、
前記小ブロック単位の書き込みが途中で中断されたことを検出する検出手段と、 前記検出手段で、 前記小ブロック単位の書き込みが途中で中断されたと検出し たときに、 前記第 2の大ブロックにおいて、 ァドレス順位が最後の小ブロックァ ドレスから見たとき、 連続して空となっている小ブロックアドレスのうちの、 最 も先順位の小プロックァドレスを検出する手段と、
前記第 2の大ブロックの、 前記最も先順位の小ブロックァドレス以降のすべて の小ブロックァドレスに、 前記第 1の大ブロックの対応する小ブロックのデータ をコピーするコピー手段と、
前記第 1の大プロックのデータを消去する消去手段とを備えることを特徴とす る請求の範囲第 7項記載の記録媒体への記録制御装置。
1 0 . 前記小ブロック単位の書き込みが途中で中断されたことを検出する検出手 段を備え 前記検出手段で、 前記小プロック単位の書き込みが途中で中断された と検出したときに、 前記第 2の大ブロックのァドレス順位が最後の小プロックァ ドレスから見たとき、 連続して空となっている小ブロックアドレスのうちの、 最 も先順位の小ブロックアドレスを、 前記第 2の大ブロックにおいて、 次の書き込 みを開始する小プロックァドレスとすることを特徴とする請求の範囲第 7項記載 の記録媒体への記録制御装置。
PCT/JP2004/000695 2003-02-20 2004-01-27 記録媒体の記録制御方法及び記録制御装置 WO2004075064A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/545,488 US20060153025A1 (en) 2003-02-20 2004-01-27 Recording medium recording control method and recording control device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003-042983 2003-02-20
JP2003042983A JP3928724B2 (ja) 2003-02-20 2003-02-20 記録媒体の記録制御方法および記録媒体の記録制御装置

Publications (1)

Publication Number Publication Date
WO2004075064A1 true WO2004075064A1 (ja) 2004-09-02

Family

ID=32905384

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2004/000695 WO2004075064A1 (ja) 2003-02-20 2004-01-27 記録媒体の記録制御方法及び記録制御装置

Country Status (5)

Country Link
US (1) US20060153025A1 (ja)
JP (1) JP3928724B2 (ja)
KR (1) KR20050111594A (ja)
CN (1) CN100440167C (ja)
WO (1) WO2004075064A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI232466B (en) * 2003-10-28 2005-05-11 Prolific Technology Inc Method for updating data of non-volatile memory
US7315916B2 (en) * 2004-12-16 2008-01-01 Sandisk Corporation Scratch pad block
US7366826B2 (en) * 2004-12-16 2008-04-29 Sandisk Corporation Non-volatile memory and method with multi-stream update tracking
JP2007025001A (ja) * 2005-07-12 2007-02-01 Sony Corp 音声記録装置、音声記録方法及び音声記録プログラム
US9612954B2 (en) 2008-12-31 2017-04-04 Micron Technology, Inc. Recovery for non-volatile memory after power loss
JP6447469B2 (ja) * 2015-11-23 2019-01-09 株式会社デンソー 書換システム
TWI643066B (zh) * 2018-01-15 2018-12-01 慧榮科技股份有限公司 用來於一記憶裝置中重新使用關於垃圾收集的一目的地區塊之方法、記憶裝置及其控制器以及電子裝置
JP7213712B2 (ja) 2019-02-14 2023-01-27 キオクシア株式会社 不揮発性半導体記憶装置
CN112416811B (zh) * 2020-11-18 2024-02-27 深圳市硅格半导体有限公司 基于数据关联度的垃圾回收方法、闪存及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000311104A (ja) * 1999-02-26 2000-11-07 Sony Corp 記録方法、管理方法、及び記録装置
JP2003015929A (ja) * 2001-06-28 2003-01-17 Matsushita Electric Ind Co Ltd 不揮発性メモリの制御方法
JP2003280979A (ja) * 2002-03-20 2003-10-03 Toshiba Corp 情報記憶装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6978342B1 (en) * 1995-07-31 2005-12-20 Lexar Media, Inc. Moving sectors within a block of information in a flash memory mass storage architecture
US5930815A (en) * 1995-07-31 1999-07-27 Lexar Media, Inc. Moving sequential sectors within a block of information in a flash memory mass storage architecture
US5860124A (en) * 1996-09-30 1999-01-12 Intel Corporation Method for performing a continuous over-write of a file in nonvolatile memory
US6427184B1 (en) * 1997-06-03 2002-07-30 Nec Corporation Disk drive with prefetch and writeback algorithm for sequential and nearly sequential input/output streams
US5937425A (en) * 1997-10-16 1999-08-10 M-Systems Flash Disk Pioneers Ltd. Flash file system optimized for page-mode flash technologies
US6230241B1 (en) * 1998-09-09 2001-05-08 Cisco Technology, Inc. Apparatus and method for transferring data in a data communications device
KR100577380B1 (ko) * 1999-09-29 2006-05-09 삼성전자주식회사 플래시 메모리와 그 제어 방법
KR100703680B1 (ko) * 1999-10-14 2007-04-05 삼성전자주식회사 플래시 파일 시스템
US7020739B2 (en) * 2000-12-06 2006-03-28 Tdk Corporation Memory controller, flash memory system having memory controller and method for controlling flash memory device
US7617352B2 (en) * 2000-12-27 2009-11-10 Tdk Corporation Memory controller, flash memory system having memory controller and method for controlling flash memory device
KR100389867B1 (ko) * 2001-06-04 2003-07-04 삼성전자주식회사 플래시 메모리 관리방법
US6678785B2 (en) * 2001-09-28 2004-01-13 M-Systems Flash Disk Pioneers Ltd. Flash management system using only sequential write
JP3802411B2 (ja) * 2001-12-20 2006-07-26 株式会社東芝 不揮発性半導体記憶装置のデータコピー方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000311104A (ja) * 1999-02-26 2000-11-07 Sony Corp 記録方法、管理方法、及び記録装置
JP2003015929A (ja) * 2001-06-28 2003-01-17 Matsushita Electric Ind Co Ltd 不揮発性メモリの制御方法
JP2003280979A (ja) * 2002-03-20 2003-10-03 Toshiba Corp 情報記憶装置

Also Published As

Publication number Publication date
JP3928724B2 (ja) 2007-06-13
KR20050111594A (ko) 2005-11-25
CN100440167C (zh) 2008-12-03
US20060153025A1 (en) 2006-07-13
JP2004264912A (ja) 2004-09-24
CN1751296A (zh) 2006-03-22

Similar Documents

Publication Publication Date Title
US8055873B2 (en) Data writing method for flash memory, and controller and system using the same
US6779045B2 (en) System and apparatus for increasing the number of operations per transmission for a media management system
JP4842563B2 (ja) メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びデータ書き込み方法
US8230160B2 (en) Flash memory storage system and flash memory controller and data processing method thereof
TWI423026B (zh) 資料寫入方法、記憶體控制器與記憶體儲存裝置
JPWO2002054247A1 (ja) データ記録装置及びフラッシュメモリに対するデータ書き込み方法
KR100526178B1 (ko) 플래시 메모리 액세스 장치 및 방법
WO2004075064A1 (ja) 記録媒体の記録制御方法及び記録制御装置
CN113568579A (zh) 一种存储器、数据存储方法以及数据读取方法
JP3766396B2 (ja) メモリ制御装置およびメモリ制御方法
JP4235646B2 (ja) メモリコントローラおよびフラッシュメモリシステム
JP2006003966A (ja) フラッシュメモリの書込方法
JP2011059907A (ja) 端末装置及びそれに用いる不揮発メモリ管理方法並びにそのプログラム
TW201715530A (zh) 有效資料合併方法、記憶體控制器與記憶體儲存裝置
JP4200362B2 (ja) 記録媒体の記録制御方法、記録制御装置および電子機器
JP4687720B2 (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP2010256944A (ja) Nand型フラッシュメモリ保守装置及びnand型フラッシュメモリ保守プログラム及びnand型フラッシュメモリ保守方法
JP4000124B2 (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法
JPH11120044A (ja) データ処理装置、データ処理方法、データ処理システム及び記録媒体
JP2007249662A (ja) メモリカード及びメモリカードの制御方法
JP2005292925A (ja) メモリコントローラ、フラッシュメモリシステム、並びに、フラッシュメモリの制御方法
KR20030095820A (ko) 메모리 억세스 제어장치 및 방법
KR101039396B1 (ko) 플래시 메모리의 조각난 저장 영역을 정리하는 방법 및 그를 위한 프로그램을 기록한 컴퓨터로 독출 가능한 기록매체
JP4403338B2 (ja) 情報処理装置、情報処理方法
JP4497124B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
ENP Entry into the national phase

Ref document number: 2006153025

Country of ref document: US

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 10545488

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 1020057015190

Country of ref document: KR

Ref document number: 20048044979

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 1020057015190

Country of ref document: KR

122 Ep: pct application non-entry in european phase
WWP Wipo information: published in national office

Ref document number: 10545488

Country of ref document: US