WO2009090692A1 - 半導体記録装置及び半導体記録システム - Google Patents

半導体記録装置及び半導体記録システム Download PDF

Info

Publication number
WO2009090692A1
WO2009090692A1 PCT/JP2008/002811 JP2008002811W WO2009090692A1 WO 2009090692 A1 WO2009090692 A1 WO 2009090692A1 JP 2008002811 W JP2008002811 W JP 2008002811W WO 2009090692 A1 WO2009090692 A1 WO 2009090692A1
Authority
WO
WIPO (PCT)
Prior art keywords
logical
physical
conversion table
block
physical conversion
Prior art date
Application number
PCT/JP2008/002811
Other languages
English (en)
French (fr)
Inventor
Takeshi Ootsuka
Original Assignee
Panasonic 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 Panasonic Corporation filed Critical Panasonic Corporation
Priority to JP2009549898A priority Critical patent/JP5491201B2/ja
Priority to US12/812,238 priority patent/US8751770B2/en
Publication of WO2009090692A1 publication Critical patent/WO2009090692A1/ja

Links

Images

Classifications

    • 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
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/06Address interface arrangements, e.g. address buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages

Definitions

  • the present invention relates to a semiconductor recording device such as a memory card and a semiconductor recording system, and more particularly to a technique for equalizing the number of rewrites of a physical block of a semiconductor memory.
  • a semiconductor recording device such as an SD (Secure Digital) card, which is a card-type recording medium with a built-in flash memory, is ultra-small and ultra-thin. Widely used for recording data such as images.
  • SD Secure Digital
  • the flash memory built in the semiconductor recording device is a memory that can erase and rewrite data in blocks of a certain size, and the number of rewrites is limited.
  • rewriting is possible about 10,000 times for each physical block, and when rewriting is performed more than 10,000 times, the probability that a write error will occur increases.
  • a method is used in which the block in which the write error has occurred is registered as an error block and written to a block other than the error block.
  • Patent Document 1 As a technique that contributes to delaying the occurrence of this problem, a conventional technique that apparently increases the number of memory rewrites is known (see Patent Document 1).
  • the memory is divided into a plurality of areas and the number of rewrites in each area is stored, and the difference in the number of rewrites in each area is reduced based on the number of rewrites in each area.
  • This is a technique for controlling memory rewriting so that an area with a small amount of memory is preferentially used.
  • a technique for controlling the difference in the number of rewrites in each area in this way is called leveling.
  • Patent Document 2 a rewrite count counter that counts the number of rewrites that is the number of blocks that have been written to the flash memory in response to a request from the host device, and a rewrite count read that reads the total number of rewrites written to the flash memory The total number of rewrites, which is the total value from the first time, based on the total number of rewrites read by the rewrite count counting unit and the total number of rewrites read by the rewrite count read unit.
  • the rewrite count recording section that writes the rewrite count to the flash memory
  • the rewrite count recording section when the total rewrite count that has been obtained reaches the predetermined number of times or more when the total rewrite count was previously written, A semiconductor recording device characterized by writing to a flash memory has been proposed. .
  • Sequence 0 Initial state Sequence 1 Memory card logical format Sequence 2 Memory card full capacity recorded Sequence 3 Memory card content uploaded to server Sequence 4 Memory card re-logical format Sequence 5 Memory card half capacity Record only minutes Sequence 6 Upload the contents recorded on the memory card to the server Sequence 7 Re-format the memory card Sequence 8 Record only half the capacity of the memory card Sequence 9 Upload the contents recorded on the memory card to the server
  • sequence 7 to sequence 9 are repeated.
  • the physical block of the semiconductor memory that constitutes the memory card is E Erased block W A block that has been written and cannot be erased. I A block that has been written but is erasable is classified. Further, in order to prepare for late bad blocks and perform leveling, the number of physical blocks is secured by a predetermined number of blocks than the number of logical blocks.
  • sequence 0 Since sequence 0 is in the initial state, all physical blocks other than the blocks used in the internal system of the memory card are erased blocks E as shown in FIG.
  • the logical formatting of the memory card in sequence 1 corresponds to recording a new file allocation table (hereinafter referred to as FAT). Accordingly, the physical block used for FAT recording becomes the written block W as shown in FIG.
  • sequence 2 write commands are issued from the host in the order of logical block numbers.
  • the physical block of the semiconductor memory is assigned to the logical block issued in order from the block with the smallest number among the erased physical blocks. Therefore, after the sequence 2, recording is performed for the entire capacity, so that the physical block corresponding to the capacity of all the logical blocks becomes the written block W as shown in FIG.
  • sequence 3 the recorded data is uploaded.
  • a new FAT is written.
  • FAT is recorded in the erased block E shown in FIG. 1C, and that block becomes the written block W1.
  • W1 the newly recorded area
  • the previously recorded FAT is unnecessary, it becomes an erasable block I. This state is shown in FIG.
  • sequence 5 recording is performed up to half of the total capacity in order from the erased block E next to the block in which the FAT is newly written. Since the old data for the recorded logical block is unnecessary, the block becomes an erasable block I for each recording. Since the data of the next logical block is written in this erasable block, the position of the erasable block I is shifted sequentially from the physical block next to the block in which the FAT is newly written.
  • the state shown in FIG. 2A shows the state of the physical block in the memory card after the sequence 5 in which half the capacity is recorded. The physical block W corresponding to the logical block for which no write command has been issued remains unupdated.
  • FIG. 2A shows the state of the physical block in the memory card after the sequence 7.
  • the logical address issued by the file system is the first address. Only half of all logical addresses are issued from. Therefore, the physical blocks corresponding to the remaining half of the logical addresses are not updated.
  • the physical format for erasing all logical blocks is executed instead of the logical format for initializing the FAT section, the above-mentioned problems can be solved.
  • the physical format has a problem that it takes a long time to erase all blocks.
  • the present invention solves the above problems, and provides a semiconductor recording device and a semiconductor recording system capable of maintaining the number of physical block rewrites uniformly and formatting at high speed regardless of the state of memory writing. Objective.
  • a semiconductor recording device includes a semiconductor memory composed of a plurality of physical blocks, records data written from a host device into the semiconductor memory, and reads the recorded data
  • a command which is a recording device, records a logical-physical conversion table indicating correspondence between a physical address of the semiconductor memory and a logical address included in a command issued by the host device, and is issued from the host device.
  • a block management unit that selects a physical block corresponding to the logical block in the logical block with reference to the logical-physical conversion table and updates the logical-physical conversion table when data is written, and the semiconductor memory
  • a logical format detection unit for detecting that the logical format is executed Wherein immediately after detecting the logical format by the logical format detector is configured to anda physical conversion table initialization unit that updates the physical address corresponding to each logical address of the logical-to-physical conversion table to an invalid address.
  • the block management unit updates the logical-physical conversion table by adding the logical-physical conversion table to a predetermined physical block in the semiconductor memory in order of page numbers
  • the logical-physical conversion table initialization unit is configured to detect the logical format.
  • the physical address corresponding to at least a part of the logical addresses may be updated to an invalid address, and the updated logical-physical conversion table may be added to the page of the physical block.
  • the logical-physical conversion table is divided into K partial areas (K is a natural number of 2 or more), and the logical-physical conversion table initialization unit performs the K partials when executing the logical format.
  • the logical-physical conversion table may be initialized by selecting at least one partial region of the regions.
  • a semiconductor recording device includes a semiconductor memory composed of a plurality of physical blocks, records data written from a host device into the semiconductor memory, and reads the recorded data
  • a command which is a recording device, records a logical-physical conversion table indicating correspondence between a physical address of the semiconductor memory and a logical address included in a command issued by the host device, and is issued from the host device.
  • a block management unit that selects a physical block corresponding to the logical block in the logical block by referring to the logical-physical conversion table and updates the logical-physical conversion table when data is written, and the host device When the logical-to-physical conversion table initialization command is issued from And physical conversion table initialization unit that updates the physical address corresponding to at least a portion of the logical address invalid addresses are those comprising a.
  • the block management unit updates the logical-physical conversion table by adding the logical-physical conversion table to a predetermined physical block in the semiconductor memory in order of page numbers
  • the logical-physical conversion table initialization unit is configured to update the logical-physical conversion table.
  • physical addresses corresponding to at least some of the logical addresses may be updated to invalid addresses, and the updated logical-physical conversion table may be added to the physical block page.
  • the logical-physical conversion table is divided into K partial areas (K is a natural number of 2 or more), and the logical-physical conversion table initialization unit performs the K partials when executing the logical format.
  • the logical-physical conversion table may be initialized by selecting at least one partial region of the regions.
  • a semiconductor recording system of the present invention is a semiconductor recording system including a host device and a semiconductor recording device connected to the host device, and the semiconductor recording device includes a plurality of semiconductor recording devices.
  • a logical-physical conversion table indicating correspondence between a semiconductor memory constituted by physical blocks, a physical address of the semiconductor memory and a logical address included in a command issued by the host device is recorded in the semiconductor memory, and the host device
  • a block management unit that selects a physical block corresponding to a logical block in an issued command by referring to the logical-physical conversion table, and updates the logical-physical conversion table when data is written, and performs address management;
  • a logical-physical conversion table initialization unit that updates a physical address corresponding to at least a part of logical addresses of the table to an invalid address, and records data to be written from the host device in the semiconductor memory, and the recorded data
  • the host device transfers a command to the semiconductor recording device and issues a
  • the correspondence between the logical address and the physical address can be released at the time of logical formatting. Therefore, for example, even when the logical format and recording up to a part of recording capacity are repeatedly performed after recording the entire capacity, rewriting does not concentrate on a part of physical blocks, and the semiconductor memory The number of physical block rewrites can be made equal.
  • the same effect as the physical format in which all blocks are erased by the logical format can be obtained, and the execution time can be shortened compared to the physical format.
  • FIG. 1 is a state diagram of a flash memory in the case where half the logical blocks from the head are recorded in a conventional semiconductor recording device.
  • FIG. 2 is a state diagram of the flash memory in the case of recording a half logical block from the head in the conventional semiconductor recording device.
  • FIG. 3 is a configuration diagram of the semiconductor recording device according to the embodiment of the present invention.
  • FIG. 4 is an explanatory diagram of a memory area in the flash memory according to the present embodiment.
  • FIG. 5 is a configuration diagram of physical blocks constituting the flash memory according to the present embodiment.
  • FIG. 6 is an explanatory diagram of a logical-physical conversion table according to this embodiment.
  • FIG. 7 is an explanatory diagram of the invalid block management table 116 according to this embodiment.
  • FIG. 8A is a transition diagram of the logical-physical conversion table of this embodiment.
  • FIG. 8B is a transition diagram of the logical-physical conversion table of this embodiment.
  • FIG. 8C is a transition diagram of the logical-physical conversion table of the present embodiment.
  • FIG. 9A is a transition diagram of physical blocks storing the logical-physical conversion table of the present embodiment.
  • FIG. 9B is a transition diagram of physical blocks storing the logical-physical conversion table of the present embodiment.
  • FIG. 10A is an explanatory diagram of a logical-physical conversion table after initialization according to this embodiment.
  • FIG. 10B is an explanatory diagram of a storage physical block after initialization according to this embodiment.
  • FIG. 11 is a transition diagram of the flash memory of the semiconductor recording device when all logical blocks are recorded in the present embodiment.
  • FIG. 12 is a state diagram of the flash memory when the first half of the logical block is recorded in the present embodiment.
  • FIG. 13 is a state diagram of the flash memory when a half logical block from the head is further recorded in this embodiment.
  • FIG. 3 shows a configuration diagram of the semiconductor recording system according to the embodiment of the present invention.
  • the semiconductor recording device 100 is realized as a memory card, for example, and is used by being connected to the host device 200.
  • the semiconductor recording device 100 includes a memory controller 110 that controls writing and reading of data to and from a flash memory, and a flash memory 120 that is a nonvolatile memory.
  • the memory controller 110 includes an external interface 111, a command analysis unit 112, a block management unit 114, a logical / physical conversion table 115, an invalid block management table 116, a logical / physical conversion table initialization unit 117, and a flash control unit 118.
  • the external interface 111 is an interface that receives a command from the host device 200 and transfers data.
  • the command analysis unit 112 analyzes commands such as a read command and a write command received by the external interface 111.
  • a logical format detection unit 113 for detecting a logical format in the command is provided.
  • the logical format detection unit 113 detects that the logical format has been performed by writing FAT data in a predetermined logical block.
  • the logical / physical conversion table 115 is a logical / physical conversion table indicating a correspondence between a logical block number issued from the host device 200 and a physical block number recorded in the flash memory 120. This table is recorded in the volatile memory of the memory controller 110, and at the same time, is recorded in one page of any physical block of the flash memory 120.
  • the invalid block management table 116 is a table in which information indicating whether the physical block of the flash memory 120 is used or invalid is recorded, and includes a volatile memory. As will be described later, this table 116 is generated based on the logical-physical conversion table 115 when power is supplied.
  • the block management unit 114 manages the logical / physical conversion table 115 and the invalid block management table 116.
  • the block management unit 114 updates the logical / physical conversion table 115 and records the logical / physical conversion table in the flash memory 120. Update.
  • the logical-physical conversion table initialization unit 117 initializes the logical-physical conversion table 115 when the logical format detection unit 113 detects the logical format. As will be described later, this initialization is performed by setting an address of a physical block corresponding to a logical block to an invalid block.
  • the flash control unit 118 is a block that writes data to the flash memory 120 and reads data from the flash memory 120 in accordance with command analysis.
  • the flash memory 120 is composed of A physical blocks (A is a natural number).
  • a physical block is a unit of erasure, and in this embodiment, physical block numbers PBN of 0 to (A-1) are assigned to A physical blocks.
  • B physical blocks with physical block numbers 0 to B-1 (B is a natural number satisfying B ⁇ A) are assigned to the first area 120-1 of the memory and (AB) of physical block numbers B to (A-1). )
  • the physical block is the second area 120-2 of the memory.
  • user data transferred from the host device 200 is recorded in the first area 120-1 of the flash memory 120, and system data such as the logical-physical conversion table 115 is recorded in the second area 120-2.
  • a file system such as FAT is written in the first area 120-1 together with user data.
  • Flash memory has the feature that the recorded page cannot be overwritten and the number of rewrites is limited.
  • the logical block number given from the host device 200 is 0 to (Bm) (m is a natural number of 1 or more), and the number of physical blocks in the first area 120-1 of the memory corresponding to the logical block is larger than the number of logical blocks. assign.
  • each physical block is composed of N pages (N is a natural number), and each page is given a page number PPN of 0 to (N ⁇ 1).
  • a page is a unit of data recording, and data can be recorded for each page in a physical block. For example, when the data size of the logical / physical conversion table 115 corresponds to one page, the N-logical / physical conversion table can be recorded in the same physical block.
  • FIG. 6 shows an example of the logical-physical conversion table 115, where the logical block with logical block number 0 is mapped to the physical block with physical block number 3, and the logical block with logical block number 1 is mapped to the physical block with physical block number 6. It is shown that.
  • the logical block numbers L and (L + 1) have an invalid number A recorded, indicating that no data has been written.
  • FIG. 7 is an example of the invalid block management table 116, and shows the usage state of each physical block.
  • a physical block whose use state is 1 indicates that it is in use and valid data has been written.
  • a physical block whose use state is 0 is an invalid block, and there are cases where invalid data is written and an erased block, but any of these is a block that can be newly used for recording. .
  • the block management unit 114 performs block management of the entire semiconductor recording device while updating the logical-physical conversion table 115 and the invalid block management table 116.
  • the block management unit 114 controls the invalid block management table 116 as follows.
  • Step 1) When power is supplied, all blocks in the table 116 are initialized to an invalid state.
  • Step 2) The bad block is updated on the table 116 to be used. Since the management of bad blocks is out of the essence of the invention, it will not be described in detail, but it is recorded at a fixed position in the flash memory.
  • Step 3 The logical-physical conversion table 115 is read, and the used physical block is updated on the table 116 to be used.
  • Step 4 When rewriting a recorded logical block, an invalid block is selected from the table 116, and data is recorded in the selected invalid block. The selected block is updated to a used block, and the immediately preceding physical block corresponding to the logical block is updated to an invalid block.
  • the block management unit 114 creates the invalid block management table 116 when power is supplied.
  • a block that can be erased in order from the pointer of the block recorded immediately before the table 116 is assigned as a new block, and the table 116 is updated.
  • FIG. 8A is a logical-physical conversion table 115 at a certain point
  • FIG. 8B is a table 115 after data is recorded in the Lth logical block from the state of FIG. 8A
  • FIG. 8C is the (L + 1) th logical from the state of FIG. The table 115 after recording data in a block is shown.
  • 9A and 9B are diagrams showing state transitions of physical blocks storing the logical-physical conversion table 115, and hatched pages indicate recorded pages.
  • the logical-physical conversion table is recorded page by page in order from the last page of the second area 120-2 of the flash memory, that is, the first page of the physical block having the physical block number (A-1).
  • (A) in FIG. 9A shows that (N ⁇ 1) logical-physical conversion tables from page 0 to page (N ⁇ 2) are recorded in the physical block of physical block number (A ⁇ 1). This indicates that the logical-physical conversion table is stored in the (N-2) th page. Page (N-1) has not been recorded yet. It is assumed that the logical-physical conversion table 115 illustrated in FIG. 8A is recorded on the page (N-2).
  • the current logical-physical conversion table is shown in FIG. 8A, in which “A” indicating invalidity is written in the Lth logical block, and no physical block is allocated. Therefore, the block management unit 114 performs an invalid block search with reference to the invalid block management table 116.
  • the current invalid block management table 116 is in the state shown in FIG. 7, and it is assumed that the physical block having the physical number (B-1) has been searched.
  • the block management unit 114 assigns the physical block number B-1 to the logical block number L, and updates the logical-physical conversion table 115 as shown in FIG. 8B.
  • the flash control unit 118 records the updated logical-physical conversion table 115 on the (N-1) th page of the physical block number (A-1). This recording makes a transition to the state (b) of FIG. 9A.
  • the logical format of the FAT system is implemented by recording a new FAT table in the semiconductor recording device 100 from the host device 200.
  • the recording position on the logical address in the FAT table is determined in advance, for example, as logical block number 0.
  • the logical format detection unit 113 in the command analysis unit 112 has predetermined data indicating that the logical block is No. 0 in the FAT table. Detect that is recorded.
  • the logical format detection unit 113 detects that the logical format has been performed, a detection signal is provided to the logical-physical conversion table initialization unit 117.
  • the logical-physical conversion table 115 is initialized by setting the physical blocks corresponding to all the logical blocks as invalid blocks A except for the logical block number 0 in which the FAT table is recorded. Assume that the table 115 shown in FIG. 8C is initialized in a state where it is written as shown in FIG. 9B.
  • FIG. 10A shows the logical-physical conversion table 115 in this case
  • FIG. 10B shows the state of the physical block number (A-2) in which the logical-physical conversion table is recorded.
  • the physical block numbers corresponding to all logical blocks except the logical block number 0 in which the FAT table is recorded are A (invalid block).
  • the physical blocks corresponding to all the logical blocks other than the block holding the FAT table of the first area of the flash memory are made invalid blocks, whereby the first block of the flash memory 120 managed by the invalid block management table 116 is obtained. Almost all physical blocks in one area are usable except for bad blocks.
  • the logical-physical conversion table initialized in this way is recorded as indicated by an arrow in FIG. 10B at the position of the next page of the physical block in which the logical-physical conversion table was stored immediately before.
  • the logical / physical conversion table is initialized and recorded in all logical blocks, and then the logical format and recording from the first logical block to the half of the largest logical block number are repeatedly performed.
  • the operation in the case of having been performed will be described. This operation is performed in the following sequence as described in the problem to be solved by the invention.
  • Sequence 0 Initial state Sequence 1 Logical format of memory card Sequence 2 Initialization of logical-physical conversion table Sequence 3 Recording of the entire capacity of memory card Sequence 4 Uploading contents recorded on memory card to server Sequence 5 Re-logicizing memory card Format Sequence 6 Initialization of logical-to-physical conversion table Sequence 7 Recording half the capacity of the memory card Sequence 8 Uploading the contents recorded on the memory card to the server Sequence 9 Re-formatting the memory card Sequence 11 Records only half the capacity of the memory card. Sequence 12 Uploads the content recorded on the memory card to the server. Repeats sequence 9 to sequence 12. The
  • the state of the physical block of the semiconductor memory when each sequence is executed will be described.
  • the state of the physical block is as follows: E Erased block W Written, non-erasable block I Written, but classified as erasable blocks.
  • sequence 1 The state of the flash memory 120 of the memory card in sequence 0 is shown in FIG.
  • sequence 1 the FAT table is written in the first physical block as shown in FIG.
  • the logical-physical conversion table is initialized in sequence 2. In the first state, everything is erased, so there is no change. After that, when the entire capacity of the memory card is recorded in the sequence 3, the physical blocks for all the logical blocks transferred in the first area become W written as shown in FIG.
  • the host device 200 transfers a new FAT for reformatting.
  • the semiconductor recording device 100 records the FAT in the erased block E shown in FIG.
  • W1 is set. Since the previously recorded FAT is unnecessary, the physical block on which the FAT is recorded is designated as an erasable block I.
  • a state shown in FIG. 11D shows a state after the sequence 5.
  • the physical block states shown in FIGS. 11A to 11D are the same as in the conventional case except that the second area 120-2 is added.
  • the logical format detection unit 113 of the command analysis unit 112 detects that the FAT for the logical block 0 is recorded again, and outputs a detection signal to the logical-physical conversion table initialization unit 117.
  • the logical / physical conversion table initialization unit 117 initializes the logical / physical conversion table 115.
  • the initialized logical / physical conversion table is written into the flash memory 120 via the flash control unit 118.
  • the area of the physical block W becomes an erasable physical block I as shown in FIG.
  • the semiconductor recording device 100 records data in the erase block E and the erasable block I shown in FIG.
  • selection of a new physical block into which data is to be written is performed by incrementing the pointer of the physical block selected immediately before by one.
  • new blocks are selected in order from the physical block next to the pointer indicating the physical block in which the FAT is recorded.
  • writing is performed while associating empty physical blocks in order with logical blocks for recording data, and recording is performed up to half of the total capacity.
  • the area recorded here is also denoted by W1.
  • the flash memory 120 enters the state shown in FIG.
  • sequence 8 the recorded internal content is uploaded to the server.
  • sequence 9 in order to write FAT, a physical block to be recorded is selected from the erasable block I shown in FIG.
  • the selection algorithm is the same as in Sequence 5. Therefore, FAT is recorded sequentially from the block next to the block recorded last in the sequence 7.
  • the physical block of the newly recorded area is denoted as W2 in order to distinguish it from the previously recorded area.
  • W2 The physical block in which FAT has been previously recorded becomes an erasable block I. The state after FAT recording is shown in FIG.
  • the logical format detection unit 113 of the command analysis unit 112 detects that the FAT for the logical block 0 is recorded again, and outputs a detection signal to the logical-physical conversion table initialization unit 117.
  • the logical / physical conversion table initialization unit 117 initializes the logical / physical conversion table 115.
  • the initialized logical / physical conversion table is written into the flash memory 120 via the flash control unit 118.
  • the physical block W1 that has been written in the state shown in FIG. 12C is an erasable physical block I. This state is shown in FIG.
  • the semiconductor recording device 100 selects a new block in order from the physical block next to the pointer indicating the physical block in which the FAT is recorded, and sequentially assigns a free physical block to the logical block in which the data is recorded. Write while recording and record up to half of the total capacity. As a result, the flash memory 120 enters the state shown in FIG.
  • sequence 12 the recorded internal content is uploaded to the server.
  • sequence 9 since FAT is written, the physical blocks to be recorded are sequentially selected from the erasable block I shown in FIG. Therefore, FAT is sequentially recorded from the block next to the block recorded last in the sequence 11.
  • the physical block of the newly recorded area is denoted as W3 in order to distinguish it from the previously recorded area.
  • the previously recorded FAT becomes an erasable block I.
  • FIG. 13B shows the state after FAT recording. The recording of logical blocks is assigned and recorded in order from the block next to the last recording block in the sequence 9. In this way, the processes of sequences 9 to 12 are repeated.
  • the logical-physical conversion table may be divided into K (K is a natural number of 2 or more) partial areas.
  • K is a natural number of 2 or more
  • the logical-physical conversion table initialization unit may initialize the logical-physical conversion table of at least one partial area so that a part of the physical block is an invalid block. By doing so, it is possible to shorten the time required for initializing the logical-physical conversion table.
  • a logical format detection unit 113 is provided in the command analysis unit 112 to detect that a logical format command is given and the logical format is executed.
  • the logical-physical conversion table initialization command may be issued from the host device after sending the logical format command from the host device or prior to sending this command.
  • a logical-physical conversion table initialization command is issued from the host device immediately before or after the FAT table is initialized, and the logical-physical conversion table is initialized.
  • a function for issuing a logical-physical conversion table initialization command to the host device is required, but it is not necessary to provide a logical format detection unit in the command analysis unit.
  • the semiconductor recording device and the semiconductor recording device system of the present embodiment after recording the entire capacity, when the recording to the logical format and a part of the recording capacity is repeatedly performed, Therefore, the conventional problem that the number of rewrites concentrates on some physical blocks can be solved.
  • the flash memory is described as the semiconductor memory.
  • the present invention can be applied to various semiconductor memories in which the number of rewrites is limited.
  • the number of times of rewriting of the block of the nonvolatile memory can be controlled almost evenly. Therefore, a multi-value flash memory with a small number of times of rewriting is used, and a large amount of data is frequently recorded. It is particularly suitable for use in the video recording field.

Abstract

 ホスト機器が発行するコマンドにおける論理アドレスと内蔵する半導体メモリの物理アドレスとの対応を示す論物変換テーブル115を設け、このテーブルをフラッシュメモリ120にも記録する。ホスト機器200から発行されるライトコマンドを受け、ブロック管理部114により論物変換テーブルを参照にして論物変換テーブルを更新する。論物変換テーブル初期化部117は論物変換テーブルにおいて、論理アドレスに対応する物理アドレスを無効アドレスに更新する。これにより、フラッシュメモリの書き込みの状態に関係なく、物理ブロックの書き換え回数を均等に保つことができる。

Description

半導体記録装置及び半導体記録システム
 本発明は、メモリカードなどの半導体記録装置及び半導体記録システムに関し、特に半導体メモリの物理ブロックの書き換え回数を均等にする技術に関する。
 従来、フラッシュメモリが内蔵されたカード型の記録媒体であるSD(Secure Digital)カード等の半導体記録装置は、超小型、超薄型であり、その取り扱い易さから、ディジタルカメラ、携帯機器等において画像等のデータを記録するために広く利用されている。
 半導体記録装置に内蔵されているフラッシュメモリは、一定サイズのブロック単位でデータを消去し書き換えできるメモリであり、その書き換え回数には制限がある。多値フラッシュメモリでは各物理ブロックにつき約1万回の書き換えが可能とされており、1万回を超えて書き換えを行った場合は、書き込みエラーが発生する確率が増加する。なお、書き込みエラーが発生した場合は書き込みエラーが発生したブロックをエラーブロックとして登録し、エラーブロック以外のブロックに書き込むという手法が用いられる。
 従って、動画をリアルタイムにフラッシュメモリに記録する場合においては、書き込みエラーが高い頻度で発生すると、生成された映像がフラッシュメモリに伝達される速度よりフラッシュメモリに書き込む速度が小さくなり、動画を連続的に記録することができなくなるという問題が生じる。
 この問題の発生を遅らせることに資する技術として、メモリの書き換え回数を見かけ上増加させる従来技術が知られている(特許文献1参照)。
 この従来技術は、メモリを複数の領域に分割し各領域の書き換え回数を記憶し、記憶された各領域の書き換え回数に基づいて、各領域の書き換え回数の差が少なくなるように、つまり書き換え回数の少ない領域を優先的に使用するようにメモリの書き換えを制御する技術である。このように各領域の書き換え回数の差が少なくなるように制御する手法は、レベリングと呼ばれている。この手法を用いると、同一の論理ブロックにデータを複数回書き込む場合にも、フラッシュメモリにおいて実際に記録される物理ブロックは変わっていく。レベリングが完璧に実施されると、半導体記録装置の書き換え可能回数は、(物理ブロックの数)×(物理ブロック毎の書き換え可能回数)まで増加することになる。
 特許文献2において、ホスト機器の要求に対応してフラッシュメモリへ書き込みを行ったブロック数である書き換え回数を計数する書き換え回数計数部と、フラッシュメモリに書き込まれている総書き換え回数を読み出す書き換え回数リード部と、書き換え回数計数部によって計数された書き換え回数と、書き換え回数リード部によって読み出された総書き換え回数に基づいて、新たに初回からの総計値である総書き換え回数を求めて、求めた総書き換え回数をフラッシュメモリに書き込む書き換え回数記録部と備え、書き換え回数記録部は、求めた総書き換え回数を、前に総書き換え回数の書き込んだ時からの書き換え回数が所定回数以上に到達した時点で、フラッシュメモリに書き込むことを特徴とする半導体記録装置が提案されている。
 カメラレコーダ等では、メモリカードの全領域に画像データを記録し、記録した画像データをHDD等にアップロードした後にメモリカードをフォーマットして再び記録する。このような用途においては、(総書き換え回数/物理ブロック数)が半導体メモリの書き換え回数上限値にほぼ一致する。従って、書き換え回数の上限値近くになると警告ランプなどを発光すれば、ユーザは使用の限界であることを認識することができる。
特開平6-302194号公報 特開2005-284659号公報
 SDカードなどのメモリカードを、次に述べるシーケンスで運用する場合について図1,図2を用いて説明する。なお、ファイルシステムはFATを使用している。
  シーケンス0 初期状態
  シーケンス1 メモリカードを論理フォーマット
  シーケンス2 メモリカードの全容量分を記録
  シーケンス3 メモリカードに記録されたコンテンツをサーバにアップロード
  シーケンス4 メモリカードを再論理フォーマット
  シーケンス5 メモリカードの半分の容量分だけ記録
  シーケンス6 メモリカードに記録されたコンテンツをサーバにアップロード
  シーケンス7 メモリカードを再論理フォーマット
  シーケンス8 メモリカードの半分の容量分だけ記録
  シーケンス9 メモリカードに記録されたコンテンツをサーバにアップロード
 以下、シーケンス7~シーケンス9を繰り返す。
 メモリカードを構成する半導体メモリの物理ブロックは、
 E 消去済みブロック
 W 書き込み済みであり、消去不可であるブロック
 I 書き込み済みであるが、消去可能なブロック
に分類される。そして、後発性のバッドブロックへの備えとレベリングの実施のため、物理ブロックの数は論理ブロックの数より所定ブロック分多く確保している。
 シーケンス0は初期状態であるので、メモリカードの内部システムで使用されるブロック以外の全物理ブロックは図1に(a)で示すように消去済みブロックEである。
 シーケンス1においてメモリカードを論理フォーマットすることは、新たなファイルアローケーションテーブル(以下、FATという)を記録することに相当する。従って図1に(b)で示すようにFATの記録に用いた物理ブロックが書き込み済ブロックWになる。
 シーケンス2では、論理ブロック番号順にホストからライトコマンドが発行される。半導体メモリの物理ブロックは、消去済み物理ブロックのうち番号が小さいブロックから順番に発行された論理ブロックに割り当てられることにする。従ってシーケンス2後は、全容量分記録するので、図1に(c)で示すように全論理ブロックの容量に相当する物理ブロックが書き込み済ブロックWになる。
 シーケンス3では記録されたデータをアップロードする。次いでシーケンス4における再フォーマットでは、新たなFATを書き込む。このとき図1に(c)で示す消去済みブロックEにFATが記録され、そのブロックが書き込み済みブロックW1となる。ここで新たに記録した領域は、以前に記録した領域と区別するためW1と記す。以前に記録されていたFATは不要なので、消去可能ブロックIになる。この状態を図1に(d)で示す。
 シーケンス5では、新たにFATが書き込まれたブロックの次の消去済みブロックEから順番に全容量の半分まで記録する。記録された論理ブロックに対する旧データは不要なので、記録毎に順次消去可能ブロックIとなる。次の論理ブロックのデータはこの消去可能ブロックに書き込まれるため、新たにFATが書き込まれたブロックの次の物理ブロックから順に消去可能ブロックIの位置がずれていく。図2に(a)で示す状態は半分の容量を記録したシーケンス5の後のメモリカードにおける物理ブロックの状態を示す。ライトコマンドが発行されなかった論理ブロックに対応する物理ブロックWは更新されないままである。
 さらに、シーケンス6で内部コンテンツをサーバにアップロードする。次いで、シーケンス7により再論理フォーマットする。ここで新たに記録した領域は、以前に記録した領域と区別するためW2と記す。図2に(a)で示すメモリの状態において、シーケンス7で消去可能ブロックIに新たなFATが記録され、書き込み済ブロックW2となる。元のFATを記録していた物理ブロックは不要なので、消去可能ブロックIになる。図2(b)はシーケンス7後のメモリカードにおける物理ブロックの状態を示す。
 シーケンス8では、図2に(b)で示す消去済みブロックIから順番に全容量の半分まで記録され、図2に(c)で示す状態となる。記録された同一論理ブロックに対する旧データを保持していた物理ブロックは、旧データが不要なので消去済みブロックIとなる。図2に(c)で示されるように、半分の容量しか記録しないので、ライトコマンドが発行されなかった論理ブロックに対応する物理ブロックWは更新されないままである。
 このように、最初に全容量分記録した後に、論理フォーマット(FAT部の初期化)を行い、半分の容量まで記録するタスクを繰り返して行う場合、ファイルシステムで発行される論理アドレスは最初のアドレスから全論理アドレスの内半分の論理アドレスしか発行されない。よって、残り半分の論理アドレスに対応する物理ブロックは更新されないままである。
 例えば、全容量を記録した後に、半導体メモリを論理フォーマットし、半分の容量までの記録を1万回繰り返したとすると、書き換え回数が1回の物理ブロックと1万回の物理ブロックとが混在することになる。従来の特許文献2によるメモリカードで書き換え回数を求めた場合は、約5000回となり、実際の書き換え回数と大きな誤差が発生する。
 また、FAT部を初期化する論理フォーマットではなく、全論理ブロックを消去する物理フォーマットを実行した場合は、上記の課題を解決することができる。しかしながら物理フォーマットでは全ブロックの消去にかかる時間が大きくなってしまうといった課題があった。
 本発明は、上記問題を解決するものであり、メモリの書き込みの状態に関係なく、物理ブロックの書き換え回数を均等に保ち、かつ高速にフォーマット可能な半導体記録装置ならびに半導体記録システムを提供することを目的とする。
 この課題を解決するために、本発明の半導体記録装置は、複数の物理ブロックによって構成される半導体メモリを含み、前記半導体メモリにホスト機器から書き込まれるデータを記録し、記録されたデータを読み出す半導体記録装置であって、前記半導体メモリの物理アドレスと前記ホスト機器が発行するコマンドに含まれる論理アドレスとの対応を示す論物変換テーブルを前記半導体メモリに記録し、前記ホスト機器から発行されるコマンドにおける論理ブロックに対応する物理ブロックを、前記論物変換テーブルを参照して選択すると共に、データを書き込んだときに前記論物変換テーブルを更新してアドレス管理を行うブロック管理部と、前記半導体メモリの論理フォーマットが実行されたことを検出する論理フォーマット検出部と、前記論理フォーマット検出部により論理フォーマットを検出した直後に、前記論物変換テーブルの各論理アドレスに対応する物理アドレスを無効アドレスに更新する論物変換テーブル初期化部と、を具備するものである。
 ここで前記ブロック管理部は、前記論物変換テーブルを前記半導体メモリの所定の物理ブロックにページ番号順に追記することによって更新するものであり、前記論物変換テーブル初期化部は、前記論理フォーマット検出部により論理フォーマット終了を検出した直後に、少なくとも一部の論理アドレスに対応する物理アドレスを無効アドレスに更新し、更新した論物変換テーブルを前記物理ブロックのページに追記するようにしてもよい。
 ここで前記論物変換テーブルはK個(Kは2以上の自然数)の部分領域に分割されたものであり、前記論物変換テーブル初期化部は、論理フォーマットの実行時には、前記K個の部分領域のうち少なくとも1つの部分領域を選択して論物変換テーブルを初期化するようにしてもよい。
 この課題を解決するために、本発明の半導体記録装置は、複数の物理ブロックによって構成される半導体メモリを含み、前記半導体メモリにホスト機器から書き込まれるデータを記録し、記録されたデータを読み出す半導体記録装置であって、前記半導体メモリの物理アドレスと前記ホスト機器が発行するコマンドに含まれる論理アドレスとの対応を示す論物変換テーブルを前記半導体メモリに記録し、前記ホスト機器から発行されるコマンドにおける論理ブロックに対応する物理ブロックを、前記論物変換テーブルを参照して選択すると共に、データを書き込んだときに前記論物変換テーブルを更新してアドレス管理を行うブロック管理部と、前記ホスト機器から論物変換テーブル初期化コマンドが発行されたとき、前記論物変換テーブルの少なくとも一部の論理アドレスに対応する物理アドレスを無効アドレスに更新する論物変換テーブル初期化部と、を具備するものである。
 ここで前記ブロック管理部は、前記論物変換テーブルを前記半導体メモリの所定の物理ブロックにページ番号順に追記することによって更新するものであり、前記論物変換テーブル初期化部は、前記論物変換テーブルの初期化時に、少なくとも一部の論理アドレスに対応する物理アドレスを無効アドレスに更新し、更新した論物変換テーブルを前記物理ブロックのページに追記するようにしてもよい。
 ここで前記論物変換テーブルはK個(Kは2以上の自然数)の部分領域に分割されたものであり、前記論物変換テーブル初期化部は、論理フォーマットの実行時には、前記K個の部分領域のうち少なくとも1つの部分領域を選択して論物変換テーブルを初期化するようにしてもよい。
 この課題を解決するために、本発明の半導体記録システムは、ホスト機器と、前記ホスト機器に接続された半導体記録装置と、を具備する半導体記録システムであって、前記半導体記録装置は、複数の物理ブロックによって構成される半導体メモリと、前記半導体メモリの物理アドレスと前記ホスト機器が発行するコマンドに含まれる論理アドレスとの対応を示す論物変換テーブルを前記半導体メモリに記録し、前記ホスト機器から発行されるコマンドにおける論理ブロックに対応する物理ブロックを、前記論物変換テーブルを参照して選択すると共に、データを書き込んだときに前記論物変換テーブルを更新してアドレス管理を行うブロック管理部と、前記ホスト機器から論物変換テーブル初期化コマンドが発行されたとき、前記論物変換テーブルの少なくとも一部の論理アドレスに対応する物理アドレスを無効アドレスに更新する論物変換テーブル初期化部と、を具備し、前記半導体メモリにホスト機器から書き込まれるデータを記録し、記録されたデータを読み出すものであり、前記ホスト機器は、前記半導体記録装置にコマンドを転送すると共に、そのファイルシステムを初期化する場合には、ファイルシステム初期化コマンドに加えて論物変換テーブル初期化コマンドを発行するものである。
 本発明の半導体記録装置によれば、論理フォーマット時に論理アドレスと物理アドレスとの対応関係を解放することができる。そのため、例えば、全容量を記録した後に、論理フォーマットと一部の記録容量までの記録とを繰り返し実施した場合であっても、一部の物理ブロックに書き換えが集中することはなく、半導体メモリの物理ブロックの書き換え回数を均等にすることができる。
 また、特許文献2に示す従来の半導体記録装置で書き換え回数を求めた場合の書き換え回数の誤差を大幅に削減することができる。
 更に本発明では、論理フォーマットによって全ブロックを消去する物理フォーマットと同等の効果が得られ、物理フォーマットに比べて実行する時間を短くすることができる。
図1は従来の半導体記録装置において、先頭から半分の論理ブロックを記録した場合のフラッシュメモリの状態図である。 図2は従来の半導体記録装置において、さらに、先頭から半分の論理ブロックを記録した場合のフラッシュメモリの状態図である。 図3は本発明の実施の形態における半導体記録装置の構成図である。 図4は本実施の形態のフラッシュメモリにおけるメモリ領域の説明図である。 図5は本実施の形態のフラッシュメモリを構成する物理ブロックの構成図である。 図6は本実施の形態の論物変換テーブルの説明図である。 図7は本実施の形態の無効ブロック管理テーブル116の説明図である。 図8Aは本実施の形態の論物変換テーブルの遷移図である。 図8Bは本実施の形態の論物変換テーブルの遷移図である。 図8Cは本実施の形態の論物変換テーブルの遷移図である。 図9Aは本実施の形態の論物変換テーブルを格納している物理ブロックの遷移図である。 図9Bは本実施の形態の論物変換テーブルを格納している物理ブロックの遷移図である。 図10Aは本実施の形態の初期化後の論物変換テーブルの説明図である。 図10Bは本実施の形態の初期化後の格納物理ブロックの説明図である。 図11は本実施の形態において全論理ブロックを記録する場合の半導体記録装置のフラッシュメモリの遷移図である。 図12は本実施の形態において、先頭から半分の論理ブロックを記録した場合のフラッシュメモリの状態図である。 図13は本実施の形態において、さらに、先頭から半分の論理ブロックを記録した場合のフラッシュメモリの状態図である。
符号の説明
 100 半導体記録装置
 110 メモリコントローラ
 111 外部インターフェース
 112 コマンド解析部
 113 論理フォーマット検出部
 114 ブロック管理部
 115 論物変換テーブル
 116 無効ブロック管理テーブル
 117 論物変換テーブル初期化部
 120 フラッシュメモリ
 200 ホスト機器
 図3に本発明の実施の形態による半導体記録システムの構成図を示す。図3において、半導体記録装置100は例えばメモリカードとして実現され、ホスト機器200に接続されて使用される。半導体記録装置100は、フラッシュメモリに対してデータの書き込み及び読み出しを制御するメモリコントローラ110と、不揮発性メモリであるフラッシュメモリ120を含んで構成されている。
 メモリコントローラ110は外部インターフェース111、コマンド解析部112、ブロック管理部114、論物変換テーブル115、無効ブロック管理テーブル116、論物変換テーブル初期化部117及びフラッシュ制御部118を含んでいる。
 次にメモリコントローラ110について詳細に説明する。外部インターフェース111は、ホスト機器200からのコマンドを受信し、データの転送を行うインターフェースである。
 コマンド解析部112は、外部インターフェース111によって受信されたリードコマンドやライトコマンドなどのコマンドを解析するものである。コマンド解析部112内にはコマンド中の論理フォーマットを検出する論理フォーマット検出部113が設けられている。論理フォーマット検出部113は、所定の論理ブロックにFATデータが書き込まれることによって、論理フォーマットがなされたことを検出するものである。
 論物変換テーブル115は、ホスト機器200から発行される論理ブロック番号とフラッシュメモリ120に記録されている物理ブロック番号との対応を示す論物変換テーブルである。このテーブルはメモリコントローラ110の揮発性メモリに記録され、同時にフラッシュメモリ120のいずれかの物理ブロックの1ページに記録される。
 無効ブロック管理テーブル116は、フラッシュメモリ120の物理ブロックが使用済みか無効ブロックかを示す情報を記録したテーブルであり、揮発性メモリで構成される。このテーブル116は後述するように、電源供給時に論物変換テーブル115に基づいて生成される。
 次にブロック管理部114は、論物変換テーブル115と無効ブロック管理テーブル116とを管理するものである。ブロック管理部114は、ホスト機器200よりライトコマンドが発行され新規の物理ブロックが論理ブロックに割り当てられた場合に、論物変換テーブル115を更新し、フラッシュメモリ120内の論物変換テーブルの記録も更新する。
 論物変換テーブル初期化部117は、論理フォーマット検出部113が論理フォーマットを検出したときに、論物変換テーブル115の初期化を行うものである。この初期化は後述するように、論理ブロックに対応する物理ブロックのアドレスを無効ブロックに設定することによって行われる。
 フラッシュ制御部118は、コマンド解析に伴いフラッシュメモリ120へのデータの書き込み、及びフラッシュメモリ120からのデータの読み出しを行うブロックである。
 次にフラッシュメモリ120について説明する。フラッシュメモリ120は図4に示すようにA個(Aは自然数)の物理ブロックより構成される。物理ブロックは消去の単位であり、本実施の形態では、A個の物理ブロックに対して0~(A-1)の物理ブロック番号PBNを付している。物理ブロック番号0~B-1(Bは、B<Aを満たす自然数)のB個の物理ブロックをメモリの第1領域120-1、物理ブロック番号B~(A-1)の(A-B)個の物理ブロックをメモリの第2領域120-2とする。そしてフラッシュメモリ120の第1領域120-1に、ホスト機器200から転送されるユーザデータを記録し、第2領域120-2に論物変換テーブル115等のシステムデータを記録する。FAT等のファイルシステムは、ユーザデータと共に第1領域120-1に書き込まれる。
 フラッシュメモリは、記録済みのページに上書きすることはできず、書き換え回数の制限があるといった特徴がある。ホスト機器200から与えられる論理ブロック番号は0~(B-m)(mは1以上の自然数)とし、論理ブロック数より論理ブロックに対応するメモリの第1領域120-1の物理ブロック数を多く割り当てる。これにより、記録済みの論理ブロックを書き換える場合において、当該論理ブロックに対応して記録されている物理ブロックとは別の物理ブロックに記録することが可能となる。よって、ホスト機器から同一の論理ブロックに集中してライトコマンドが発行された場合においても、論物変換テーブルによって論理ブロック番号と物理ブロック番号を対応づけることにより、書き換えが同一の物理ブロックに集中することを防止している。
 また図5に示すように、各物理ブロックはN個(Nは自然数)のページによって構成され、各ページには0~(N-1)のページ番号PPNが付される。ページはデータ記録の単位であり、物理ブロックには各ページ毎にデータを記録することができる。例えば、論物変換テーブル115のデータサイズが1ページに相当する場合は、同一物理ブロックにN回論物変換テーブルを記録することができる。
 図6は論物変換テーブル115の一例であり、論理ブロック番号0の論理ブロックが物理ブロック番号3の物理ブロックに、論理ブロック番号1の論理ブロックが物理ブロック番号6の物理ブロックにマッピングされていることを示している。また論理ブロック番号L及び(L+1)の論理ブロックは、無効の番号Aが記録されており、データが書かれていないことを示している。
 図7は無効ブロック管理テーブル116の一例であり、各物理ブロックの使用状態を示す。使用状態が1の物理ブロックは使用中であって、有効なデータが書き込まれていることを示す。又使用状態が0の物理ブロックは無効ブロックであり、無効のデータが書き込まれている場合、及び消去済みブロックの場合があるが、いずれであっても新たに記録に用いることができるブロックである。
 以下、ブロック管理部114の動作について詳細に説明する。ブロック管理部114は、論物変換テーブル115と、無効ブロック管理テーブル116を更新しながら半導体記録装置全体のブロック管理を実施している。ブロック管理部114は、無効ブロック管理テーブル116を以下のように制御する。
(ステップ1)電源が供給されると、テーブル116の全ブロックを無効状態に初期化する。
(ステップ2)不良ブロックをテーブル116上で使用済みに更新する。不良ブロックの管理は発明の本質から外れるので詳細な説明はしないが、フラッシュメモリの固定位置に記録しておく。
(ステップ3)論物変換テーブル115を読み取り、使用されている物理ブロックをテーブル116上で使用済みに更新する。
(ステップ4)記録済みの論理ブロックを書き換えるときは、テーブル116より無効ブロックを選択し、選択された無効ブロックにデータを記録する。そして選択されたブロックを使用済みブロックに、当該論理ブロックに対応していた直前の物理ブロックを無効ブロックに更新する。
 上記のように、ブロック管理部114は電源供給時に無効ブロック管理テーブル116を作成する。そして新たな物理ブロックに記録する場合は、テーブル116より直前に記録されたブロックのポインタから順番に消去可能なブロックを新規ブロックとして割り当てるとともに、テーブル116を更新する。
 図8Aはある時点での論物変換テーブル115、図8Bは図8Aの状態からL番の論理ブロックにデータを記録した後のテーブル115、図8Cは図8Bの状態から(L+1)番の論理ブロックにデータを記録した後のテーブル115を示す。
 次に論物変換テーブル115を格納する物理ブロックについて説明する。図9A,図9Bは論物変換テーブル115を格納する物理ブロックの状態遷移を示す図であり、ハッチングが施されたページは記録済みのページを示している。
 本実施の形態では、論物変換テーブルは、フラッシュメモリの第2領域120-2の最終、即ち物理ブロック番号(A-1)の物理ブロックの先頭ページから順番に1ページごとに記録されるとする。図9Aの(a)は物理ブロック番号(A-1)の物理ブロックに、ページ0~ページ(N-2)までの(N-1)個の論物変換テーブルが記録済みであり、最新の論物変換テーブルが(N-2)番のページに格納されていることを示している。又ページ(N-1)は未記録である。図8Aに図示した論物変換テーブル115はページ(N-2)に記録されているものとする。
 この状態で、ホスト機器200がL番の論理ブロックに対してライトコマンドを発行した場合の動作について、図8A~図10A,図10Bを参照して説明する。現在の論物変換テーブルは図8Aであり、L番の論理ブロックには無効を示す「A」が書かれており、物理ブロックは割り当てられていない。よって、ブロック管理部114は無効ブロック管理テーブル116を参照して無効ブロックサーチを行う。現在の無効ブロック管理テーブル116は図7に示す状態であり、(B-1)番の物理番号の物理ブロックがサーチされたとする。ブロック管理部114は、論理ブロック番号Lの論理ブロックに、物理ブロック番号(B-1)番の物理ブロックを割り当て、論物変換テーブル115を図8Bに示すように更新する。フラッシュ制御部118は更新された論物変換テーブル115を物理ブロック番号(A-1)番の物理ブロックの(N-1)番のページに記録する。この記録により、図9Aの状態(b)に遷移する。
 さらにホスト機器200が(L+1)番の論理ブロックにライトコマンドを発行した場合について説明する。図8Bに示す現在の論物変換テーブル115は、(L+1)番の論理ブロックには無効を示すAが書かれており、物理ブロックが割り当てられていない。よって、ブロック管理部114は無効ブロックサーチを行う。無効ブロックサーチにより物理ブロック番号1がサーチされると、論理ブロック番号(L+1)の論理ブロックに、物理ブロック番号1の物理ブロックを割り当て、論物変換テーブル115を図8Cに示すように更新する。フラッシュ制御部118は更新された論物変換テーブルをフラッシュメモリ120に書き込む。図9Aに(b)で示すように、論物変換テーブルに割り当てられた物理ブロック番号(A-1)の物理ブロックは全てのページが記録済みである。この場合、ブロック管理部114は、フラッシュメモリ120の第2領域において、(現物理ブロック番号-1)の物理ブロックを新物理ブロックとして抽出する。この場合は図9Bに示すように、物理ブロック番号(A-2)の物理ブロックのページ0に、図8Cで示す最新の論物変換テーブルを記録する。こうすれば少なくとも最新の論物変換テーブルとその直前まで有効であった論物変換テーブルがフラッシュメモリ120に保持されているため、必要であればその直前の状態に戻ることができる。
 次に論理フォーマットと、その後の論物変換テーブルの初期化について説明する。FATシステムの論理フォーマットは、ホスト機器200より新たなFATテーブルを半導体記録装置100に記録することによって実施される。FATテーブルの論理アドレス上の記録位置は例えば論理ブロック番号0のようにあらかじめ定められている。
 ホスト機器において、FATテーブルの位置は論理ブロックの0番に割り当てられている場合、コマンド解析部112内の論理フォーマット検出部113は、論理ブロックの0番にFATテーブルであることを示す所定のデータが記録されていることを検出する。論理フォーマット検出部113は論理フォーマットがなされたことを検出すると、検出信号が論物変換テーブル初期化部117に与えられる。
 次に、論物変換テーブル初期化部117の動作について説明する。論物変換テーブル115の初期化は、FATテーブルが記録された論理ブロック番号の0番を除いて全論理ブロックに対応する物理ブロックを無効ブロックAとすることにより実行する。図8Cに示すテーブル115が図9Bに示すように書き込まれている状態で初期化されたとする。この場合の論物変換テーブル115を図10Aに、この論物変換テーブルが記録される物理ブロック番号(A-2)の状態を図10Bに示す。
 図10Aに示すように、初期化後の論物変換テーブル115は、FATテーブルを記録した論理ブロック番号0を除く全ての論理ブロックに対応する物理ブロック番号はA(無効ブロック)になる。このように、フラッシュメモリの第1領域のFATテーブルを保持したブロック以外の全論理ブロックに対応する物理ブロックを無効ブロックにすることによって、無効ブロック管理テーブル116で管理しているフラッシュメモリ120の第1領域のほぼ全ての物理ブロックは、不良ブロックを除いて使用可能状態になる。こうして初期化された論物変換テーブルは、直前に論物変換テーブルを格納していた物理ブロックの次のページの位置に、図10Bに矢印で示すように記録される。
 次に、論理フォーマット直後に論物変換テーブルを初期化し、全論理ブロックに記録した後に、論理フォーマットと、先頭の論理ブロックから最大の論理ブロック番号の半分の論理ブロック番号までの記録とを繰り返し実施した場合の動作について、説明する。本動作は、発明が解決しようとする課題で説明したように、以下のシーケンスで実施される。
  シーケンス0 初期状態
  シーケンス1 メモリカードを論理フォーマット
  シーケンス2 論物変換テーブルの初期化
  シーケンス3 メモリカードの全容量分を記録
  シーケンス4 メモリカードに記録されたコンテンツをサーバにアップロード
  シーケンス5 メモリカードを再論理フォーマット
  シーケンス6 論物変換テーブルの初期化
  シーケンス7 メモリカードの半分の容量分だけ記録
  シーケンス8 メモリカードに記録されたコンテンツをサーバにアップロード
  シーケンス9 メモリカードを再論理フォーマット
  シーケンス10 論物変換テーブルの初期化
  シーケンス11 メモリカードの半分の容量分だけ記録
  シーケンス12 メモリカードに記録されたコンテンツをサーバにアップロード
以下、シーケンス9~シーケンス12を繰り返す。
 次に各シーケンスが実行されたときの半導体メモリの物理ブロックの状態について説明する。ここでも物理ブロックの状態を
 E 消去済みブロック
 W 書き込み済みであり、消去不可であるブロック
 I 書き込み済みであるが、消去可能なブロック
で分類している。
 シーケンス0におけるメモリカードのフラッシュメモリ120の状態を図11に(a)で示す。シーケンス1において、図11に(b)で示すように最初の物理ブロックにFATテーブルを書き込み、書き込み済ブロックWとする。論理フォーマットした後には、シーケンス2において論物変換テーブルを初期化する。最初の状態では全ては消去されているので変化はない。その後シーケンス3においてメモリカードの全容量分を記録したときには、図11に(c)で示すように第1領域のうち転送された全ての論理ブロックに対する物理ブロックが書き込み済みWとなる。
 シーケンス4によって記録されたデータをサーバにアップロードする。次いでシーケンス5では、ホスト機器200は再フォーマットのため新たなFATを転送する。半導体記録装置100はFATを図11に(c)で示す消去済みブロックEに記録する。この記録された物理ブロックを以前に記録した領域と区別するためW1とする。以前に記録されていたFATは不要なので、FATを記録していた物理ブロックは消去可能ブロックIとする。図11に(d)で示す状態はシーケンス5の後の状態を示す。図11に(a)から(d)に示す物理ブロックの状態は、第2領域120-2が加わっていること以外は従来の場合と同一である。
 シーケンス6ではコマンド解析部112の論理フォーマット検出部113は論理ブロック0に対するFATが再び記録されたことを検出し、論物変換テーブル初期化部117に検出信号を出力する。これによって論物変換テーブル初期化部117は論物変換テーブル115を初期化する。初期化された論物変換テーブルはフラッシュ制御部118を介してフラッシュメモリ120に書き込まれる。この論物変換テーブルの初期化により、図12に(a)で示すように、物理ブロックWの領域は消去可能な物理ブロックIとなる。
 シーケンス7では、半導体記録装置100は図12に(a)で示す消去ブロックEと消去可能なブロックIにデータを記録する。本実施の形態において、データを書き込むべき新物理ブロックの選択は、直前に選択された物理ブロックのポインタを1個ずつ増加させることによって実施する。シーケンス6の終了時に、FATを記録した物理ブロックを示すポインタの次の物理ブロックから順番に新ブロックを選択していく。上記のアルゴリズムで、データを記録する論理ブロックに順番に空き物理ブロックを対応づけていきながら書き込み、全容量の半分まで記録する。ここで記録された領域もW1で表す。これによりフラッシュメモリ120は図12に(b)で示す状態となる。
 シーケンス8では記録した内部コンテンツをサーバにアップロードする。次いでシーケンス9ではFATを書き込むため、図12に(b)で示す消去可能ブロックIから記録する物理ブロックを選択する。選択のアルゴリズムは、シーケンス5と同様である。よって、シーケンス7で最後に記録されたブロックの次のブロックから順次FATが記録される。新たに記録した領域の物理ブロックは、以前に記録した領域と区別するため物理ブロックをW2と記す。以前にFATが記録されていた物理ブロックは消去可能ブロックIとなる。FATの記録後の状態を図12に(c)で示す。
 シーケンス10では、コマンド解析部112の論理フォーマット検出部113は論理ブロック0に対するFATが再び記録されたことを検出し、論物変換テーブル初期化部117に検出信号を出力する。これによって論物変換テーブル初期化部117は論物変換テーブル115を初期化する。初期化された論物変換テーブルはフラッシュ制御部118を介してフラッシュメモリ120に書き込まれる。図12に(c)で示す状態において書き込み済みであった物理ブロックW1は、消去可能な物理ブロックIとなる。この状態を図12に(d)で示す。
 シーケンス11では、図12に(d)で示す消去可能なブロックIにデータが記録される。この場合も半導体記録装置100はシーケンス10の終了時に、FATを記録した物理ブロックを示すポインタの次の物理ブロックから順番に新ブロックを選択し、データを記録する論理ブロックに順番に空き物理ブロックを対応づけていきながら書き込み、全容量の半分まで記録する。これによりフラッシュメモリ120は図13に(a)で示す状態となる。
 シーケンス12では記録した内部コンテンツをサーバにアップロードする。次いでシーケンス9ではFATを書き込むため、図13に(a)で示す消去可能ブロックIから記録する物理ブロックを順次選択する。よって、シーケンス11で最後に記録されたブロックの次のブロックから順次FATが記録される。新たに記録した領域の物理ブロックは、以前に記録した領域と区別するため物理ブロックをW3と記す。以前に記録されていたFATは消去可能ブロックIとなる。FATの記録後の状態を図13に(b)で示す。論理ブロックの記録は、シーケンス9における最終記録ブロックの次のブロックから順番に割り当てられ記録される。こうしてシーケンス9~12の処理を繰り返す。
 このように、最初に全容量分記録した後に、論理フォーマット、即ちFAT部の初期化に加え、論物変換テーブルの初期化を行い、半分の容量まで記録するタスクを繰り返して行った場合、ファイルシステムで発行されるアドレスは全論理アドレスの内半分の論理アドレスしか発行されなくても、半導体記録装置の第1領域の全物理ブロックに均等に書き込むことができる。
 尚、上記説明では、論理ブロックに対する物理ブロックの割当ては、直前に記録されたブロックのポインタから順番に消去可能ブロックを選択する方式で説明したが、消去可能なブロック及び消去済みブロックを記録する順番はランダムであっても同様の効果が得られることはいうまでもない。
 また、大容量の半導体記録装置において、論物変換テーブルのデータ量が多い場合は、論物変換テーブルの初期化も無視できない時間を要する。そこで論物変換テーブルをK個(Kは2以上の自然数)の部分領域に分割してもよい。そして論理フォーマットを実行するときに、論物変換テーブル初期化部が少なくとも1個の部分領域の論物変換テーブルを初期化し、物理ブロックの一部を無効ブロックとするようにしてもよい。こうすれば論物変換テーブルの初期化にかかる時間を短縮することができる。
 このとき、K個の論物変換テーブルのうち初期化する論物変換テーブルの選択法は、順番であってもランダムであっても、同様の効果が得られることはいうまでもない。
 尚前述した実施の形態においては、コマンド解析部112内に論理フォーマットのコマンドが与えられ、論理フォーマットが実行されたことを検出する論理フォーマット検出部113を設けている。これに代えて、ホスト機器から論理フォーマットのコマンドを送出した後、又はこのコマンドの送出に先立って、論物変換テーブルの初期化コマンドをホスト機器から発行するようにしてもよい。例えばホスト機器が論理フォーマットする場合には、FATテーブルを初期化する直前または直後に論物変換テーブル初期化コマンドをホスト機器から発行し、論物変換テーブルの初期化を実施する。この場合には、ホスト機器に論物変換テーブルの初期化コマンドを発行する機能が必要となるが、コマンド解析部内に論理フォーマット検出部を設ける必要はなくなる。
 以上、説明したように、本実施の形態の半導体記録装置、半導体記録装置システムによれば、全容量を記録した後に、論理フォーマットと一部の記録容量までの記録を繰り返し実施した場合、一部の物理ブロックしか更新されないため、書き換え回数が一部の物理ブロックに集中するという従来の課題を解決することができる。
 また、特許文献2に示す従来の半導体記録装置で書き換え回数を求めた場合の書き換え回数の誤差を大幅に削減できる。さらに、全ブロックを消去する物理フォーマットと同等の効果が得られ、実行する時間が長いという物理フォーマットの課題を解決することができる。
 尚この実施の形態では半導体メモリとしてフラッシュメモリについて説明しているが、本発明は書き換え回数が制限されている種々の半導体メモリに適用することができる。
 本発明の半導体記録装置、半導体記録装置システムは、不揮発性メモリのブロックの書き換え回数が略均等に制御できるので、書き換え回数の少ない多値フラッシュメモリを使用し、頻繁に大容量のデータを記録する映像記録分野の使用に特に好適である。

Claims (9)

  1.  複数の物理ブロックによって構成される半導体メモリを含み、前記半導体メモリにホスト機器から書き込まれるデータを記録し、記録されたデータを読み出す半導体記録装置であって、
     前記半導体メモリの物理アドレスと前記ホスト機器が発行するコマンドに含まれる論理アドレスとの対応を示す論物変換テーブルを前記半導体メモリに記録し、前記ホスト機器から発行されるコマンドにおける論理ブロックに対応する物理ブロックを、前記論物変換テーブルを参照して選択すると共に、データを書き込んだときに前記論物変換テーブルを更新してアドレス管理を行うブロック管理部と、
     前記半導体メモリの論理フォーマットが実行されたことを検出する論理フォーマット検出部と、
     前記論理フォーマット検出部により論理フォーマットを検出した直後に、前記論物変換テーブルの各論理アドレスに対応する物理アドレスを無効アドレスに更新する論物変換テーブル初期化部と、を具備する半導体記録装置。
  2.  前記ブロック管理部は、前記論物変換テーブルを前記半導体メモリの所定の物理ブロックにページ番号順に追記することによって更新するものであり、
     前記論物変換テーブル初期化部は、前記論理フォーマット検出部により論理フォーマット終了を検出した直後に、少なくとも一部の論理アドレスに対応する物理アドレスを無効アドレスに更新し、更新した論物変換テーブルを前記物理ブロックのページに追記する請求項1に記載の半導体記録装置。
  3.  前記論物変換テーブルはK個(Kは2以上の自然数)の部分領域に分割されたものであり、前記論物変換テーブル初期化部は、論理フォーマットの実行時には、前記K個の部分領域のうち少なくとも1つの部分領域を選択して論物変換テーブルを初期化する請求項1に記載の半導体記録装置。
  4.  前記論物変換テーブルはK個(Kは2以上の自然数)の部分領域に分割されたものであり、前記論物変換テーブル初期化部は、論理フォーマットの実行時には、前記K個の部分領域のうち少なくとも1つの部分領域を選択して論物変換テーブルを初期化する請求項2に記載の半導体記録装置。
  5.  複数の物理ブロックによって構成される半導体メモリを含み、前記半導体メモリにホスト機器から書き込まれるデータを記録し、記録されたデータを読み出す半導体記録装置であって、
     前記半導体メモリの物理アドレスと前記ホスト機器が発行するコマンドに含まれる論理アドレスとの対応を示す論物変換テーブルを前記半導体メモリに記録し、前記ホスト機器から発行されるコマンドにおける論理ブロックに対応する物理ブロックを、前記論物変換テーブルを参照して選択すると共に、データを書き込んだときに前記論物変換テーブルを更新してアドレス管理を行うブロック管理部と、
     前記ホスト機器から論物変換テーブル初期化コマンドが発行されたとき、前記論物変換テーブルの少なくとも一部の論理アドレスに対応する物理アドレスを無効アドレスに更新する論物変換テーブル初期化部と、を具備する半導体記録装置。
  6.  前記ブロック管理部は、前記論物変換テーブルを前記半導体メモリの所定の物理ブロックにページ番号順に追記することによって更新するものであり、
     前記論物変換テーブル初期化部は、前記論物変換テーブルの初期化時に、少なくとも一部の論理アドレスに対応する物理アドレスを無効アドレスに更新し、更新した論物変換テーブルを前記物理ブロックのページに追記する請求項5に記載の半導体記録装置。
  7.  前記論物変換テーブルはK個(Kは2以上の自然数)の部分領域に分割されたものであり、前記論物変換テーブル初期化部は、論理フォーマットの実行時には、前記K個の部分領域のうち少なくとも1つの部分領域を選択して論物変換テーブルを初期化する請求項5に記載の半導体記録装置。
  8.  前記論物変換テーブルはK個(Kは2以上の自然数)の部分領域に分割されたものであり、前記論物変換テーブル初期化部は、論理フォーマットの実行時には、前記K個の部分領域のうち少なくとも1つの部分領域を選択して論物変換テーブルを初期化する請求項6に記載の半導体記録装置。
  9.  ホスト機器と、前記ホスト機器に接続された半導体記録装置と、を具備する半導体記録システムであって、
     前記半導体記録装置は、
     複数の物理ブロックによって構成される半導体メモリと、
     前記半導体メモリの物理アドレスと前記ホスト機器が発行するコマンドに含まれる論理アドレスとの対応を示す論物変換テーブルを前記半導体メモリに記録し、前記ホスト機器から発行されるコマンドにおける論理ブロックに対応する物理ブロックを、前記論物変換テーブルを参照して選択すると共に、データを書き込んだときに前記論物変換テーブルを更新してアドレス管理を行うブロック管理部と、
     前記ホスト機器から論物変換テーブル初期化コマンドが発行されたとき、前記論物変換テーブルの少なくとも一部の論理アドレスに対応する物理アドレスを無効アドレスに更新する論物変換テーブル初期化部と、を具備し、前記半導体メモリにホスト機器から書き込まれるデータを記録し、記録されたデータを読み出すものであり、
     前記ホスト機器は、
     前記半導体記録装置にコマンドを転送すると共に、そのファイルシステムを初期化する場合には、ファイルシステム初期化コマンドに加えて論物変換テーブル初期化コマンドを発行する半導体記録システム。
PCT/JP2008/002811 2008-01-16 2008-10-06 半導体記録装置及び半導体記録システム WO2009090692A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009549898A JP5491201B2 (ja) 2008-01-16 2008-10-06 半導体記録装置及び半導体記録システム
US12/812,238 US8751770B2 (en) 2008-01-16 2008-10-06 Semiconductor recording apparatus and semiconductor recording system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008007088 2008-01-16
JP2008-007088 2008-01-16

Publications (1)

Publication Number Publication Date
WO2009090692A1 true WO2009090692A1 (ja) 2009-07-23

Family

ID=40885104

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2008/002811 WO2009090692A1 (ja) 2008-01-16 2008-10-06 半導体記録装置及び半導体記録システム

Country Status (3)

Country Link
US (1) US8751770B2 (ja)
JP (1) JP5491201B2 (ja)
WO (1) WO2009090692A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113868148A (zh) * 2020-06-30 2021-12-31 华为技术有限公司 一种数据写入的方法及装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114489478A (zh) * 2021-12-20 2022-05-13 山西转型综改示范区华纳方盛科技有限公司 数据记录仪的数据存储方法、数据存储模块及数据记录仪

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0997139A (ja) * 1995-09-28 1997-04-08 Canon Inc フラッシュrom管理方法及び装置及びコンピュータ制御装置
JP2004280752A (ja) * 2003-03-19 2004-10-07 Sony Corp データ記憶装置、およびデータ記憶装置における管理情報更新方法、並びにコンピュータ・プログラム
JP2006146585A (ja) * 2004-11-19 2006-06-08 Canon Inc 電子機器及びその制御方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3485938B2 (ja) * 1992-03-31 2004-01-13 株式会社東芝 不揮発性半導体メモリ装置
JP2749752B2 (ja) 1993-01-20 1998-05-13 キヤノン株式会社 メモリの書き込み制御装置
JP3464836B2 (ja) * 1995-01-19 2003-11-10 富士通株式会社 記憶装置のメモリ管理装置
US5933847A (en) * 1995-09-28 1999-08-03 Canon Kabushiki Kaisha Selecting erase method based on type of power supply for flash EEPROM
US5748537A (en) * 1997-02-13 1998-05-05 Garbers; Jeffrey Paul Method and apparatus for storing items in flash memory
JP3680142B2 (ja) 1997-12-05 2005-08-10 東京エレクトロンデバイス株式会社 記憶装置及びアクセス方法
US20030163633A1 (en) * 2002-02-27 2003-08-28 Aasheim Jered Donald System and method for achieving uniform wear levels in a flash memory device
JP3927192B2 (ja) 2004-03-29 2007-06-06 松下電器産業株式会社 メモリカード及びメモリカードドライブ
JP2006127247A (ja) 2004-10-29 2006-05-18 Optrex Corp 可変電圧発生回路

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0997139A (ja) * 1995-09-28 1997-04-08 Canon Inc フラッシュrom管理方法及び装置及びコンピュータ制御装置
JP2004280752A (ja) * 2003-03-19 2004-10-07 Sony Corp データ記憶装置、およびデータ記憶装置における管理情報更新方法、並びにコンピュータ・プログラム
JP2006146585A (ja) * 2004-11-19 2006-06-08 Canon Inc 電子機器及びその制御方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113868148A (zh) * 2020-06-30 2021-12-31 华为技术有限公司 一种数据写入的方法及装置
CN113868148B (zh) * 2020-06-30 2024-04-09 华为技术有限公司 一种数据写入的方法及装置

Also Published As

Publication number Publication date
US8751770B2 (en) 2014-06-10
JP5491201B2 (ja) 2014-05-14
US20100293322A1 (en) 2010-11-18
JPWO2009090692A1 (ja) 2011-05-26

Similar Documents

Publication Publication Date Title
JP4633802B2 (ja) 不揮発性記憶装置及びデータ読み出し方法及び管理テーブル作成方法
US8190811B2 (en) Defragmentation of solid state memory
US8838875B2 (en) Systems, methods and computer program products for operating a data processing system in which a file delete command is sent to an external storage device for invalidating data thereon
JP4418439B2 (ja) 不揮発性記憶装置およびそのデータ書込み方法
JP4268396B2 (ja) 1回プログラム可能な不揮発性メモリデバイスのファイル管理
JP4533956B2 (ja) フラッシュメモリシステムのデータ記憶容量の解放
US6678785B2 (en) Flash management system using only sequential write
US20080028132A1 (en) Non-volatile storage device, data storage system, and data storage method
US7725646B2 (en) Method of using a flash memory for a circular buffer
JP2009199625A (ja) メモリカードおよびメモリカードの制御方法および不揮発性半導体メモリの制御方法
JPWO2005103903A1 (ja) 不揮発性記憶システム
JP2005182793A (ja) 頻繁にアクセスされたセクタの動作による不揮発性メモリに対するより速い書込み動作
WO2011068109A1 (ja) 記憶装置、およびメモリコントローラ
JP2006040264A (ja) メモリカードの制御方法および不揮発性半導体メモリの制御方法
US20080025706A1 (en) Information recording apparatus and control method thereof
JP2007193883A (ja) データ記録装置及び方法、及びデータ再生装置及び方法、並びにデータ記録再生装置及び方法
JP2009503743A (ja) データファイルを直接記憶するメモリブロックの管理
TWI556103B (zh) 記憶體裝置及其資料存取方法
US8819332B2 (en) Nonvolatile storage device performing periodic error correction during successive page copy operations
TW201344434A (zh) 記憶體格式化方法、記憶體控制器及記憶體儲存裝置
JP4308780B2 (ja) 半導体メモリ装置、メモリコントローラ及びデータ記録方法
JP5491201B2 (ja) 半導体記録装置及び半導体記録システム
JP2005078378A (ja) データ記憶装置及び不揮発性メモリに対するデータ書き込み方法
US20050204115A1 (en) Semiconductor memory device, memory controller and data recording method
TW201621668A (zh) 資料儲存裝置及其資料寫入方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08870670

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2009549898

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 12812238

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08870670

Country of ref document: EP

Kind code of ref document: A1