WO2006104036A1 - 記憶装置 - Google Patents

記憶装置 Download PDF

Info

Publication number
WO2006104036A1
WO2006104036A1 PCT/JP2006/305964 JP2006305964W WO2006104036A1 WO 2006104036 A1 WO2006104036 A1 WO 2006104036A1 JP 2006305964 W JP2006305964 W JP 2006305964W WO 2006104036 A1 WO2006104036 A1 WO 2006104036A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
memory
buffer
save
storage device
Prior art date
Application number
PCT/JP2006/305964
Other languages
English (en)
French (fr)
Inventor
Masayuki Toyama
Masahiro Nakanishi
Tomoaki Izumi
Tetsushi Kasahara
Kazuaki Tamura
Kiminori Matsuno
Manabu Inoue
Original Assignee
Matsushita Electric Industrial Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co., Ltd. filed Critical Matsushita Electric Industrial Co., Ltd.
Priority to US11/909,749 priority Critical patent/US7818477B2/en
Priority to JP2007510448A priority patent/JP4881856B2/ja
Publication of WO2006104036A1 publication Critical patent/WO2006104036A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device

Definitions

  • the present invention relates to a storage device including a nonvolatile memory.
  • Patent Document 1 discloses a method of writing a write data to a high-speed nonvolatile memory when a power failure is detected during writing to the flash memory, which has a higher-speed nonvolatile memory than the flash memory.
  • Patent Document 1 JP-A-11-1143788
  • an object of the present invention is to provide a storage device that realizes performance improvement in terms of host equipment power when energized.
  • a storage device includes a storage medium including a nonvolatile memory for storing data, and a data buffer for temporarily storing data to be written that is sent from the host device. And a non-volatile buffer for saving data in the data buffer
  • a buffer control unit having a save memory and a control unit for controlling the buffer control unit, wherein the control unit stores the write data held in the data buffer based on information on the obtained write data. Is saved in the buffer saving memory and stored in the storage medium, and after the data saving is completed, the host device is notified of the completion of writing.
  • the information related to the write data obtained from the host device may be information indicating the end of data writing.
  • the information on the write data that can be obtained by the host device may be information indicating the data size specified by force.
  • control unit includes a voltage detection unit that detects a decrease in power supply voltage, and the control unit is configured to write the write data sent from the host device to the data storage unit while the voltage detection unit is writing. If a drop in the power supply voltage is detected, the write data held in the data buffer is saved in the buffer save memory.
  • the storage device further includes a control information holding unit that holds control information including an address given from a host device and information to be written to the storage medium
  • the control information holding unit includes: A register that temporarily holds control information and a non-volatile control information save memory that saves the information of the register, and the control unit is configured to save the write data to the buffer save memory.
  • the control information held in the register may be saved in the control information saving memory.
  • control information may include information of a write area address to the storage medium.
  • control information saving memory may be a non-volatile memory capable of writing data at a higher speed than the storage medium! /.
  • control information saving memory may be composed of a ferroelectric memory.
  • the buffer save memory is a non-volatile memory capable of writing data at a higher speed than the storage medium.
  • the buffer save memory may be composed of a ferroelectric memory.
  • the storage device is set up when data is saved in the buffer save memory.
  • a non-volatile save flag and the control unit sets the save flag when data is saved in the buffer save memory and completes writing the saved data to the storage medium. Let's clear the save flag.
  • the storage device has a nonvolatile save flag that is set when the register information is saved in the control information save memory, and the control unit controls the register in the control information save memory.
  • the save flag may be set when information is saved, and the save flag may be set when writing of data to the storage medium is completed using the saved control information.
  • the storage device further includes a nonvolatile save flag, and the control unit saves data in the buffer save memory and saves the control information in the control information save memory.
  • the save flag may be set, and the save flag may be cleared when the writing of data to the storage medium is completed using the saved control information.
  • the buffer saving memory and the control information saving memory are configured by the same nonvolatile memory, and the data is saved in the buffer saving area, and the control information is saved in the control information saving area.
  • control unit reads the save flag when power is turned on, and when the save flag is set, writes the write data stored in the data save buffer to the storage medium, When the writing is completed, the save flag may be cleared.
  • control unit reads the save flag when the power is turned on, and when the save flag is set, checks the data amount of the write data held in the data save buffer, The data may be written to the storage medium in a predetermined unit, and the data held in the data saving buffer may be discarded when the remaining data to be written is less than a certain amount.
  • the save flag is configured so as to be integrated with the buffer save memory.
  • the present invention data and Z or control required at the end of data transfer from the host device. Since the control information is recorded in the saved data holding unit, it is possible to shorten the time to write data when viewed from the host device and to improve the writing performance. In addition to this effect, the invention provided with the voltage detection unit and the control information holding unit saves necessary information even when a power supply voltage drop is detected.
  • a storage device can be provided.
  • FIG. 1 is a block diagram for explaining a configuration of a storage device according to a first embodiment of the present invention.
  • FIG. 2A is a block diagram for explaining a data write flow of the storage device according to the embodiment of the present invention.
  • FIG. 2B is a block diagram for explaining the data write flow of the storage device according to the embodiment of the present invention.
  • FIG. 2C is a block diagram for explaining a data write flow of the storage device according to the embodiment of the present invention.
  • FIG. 2D is a block diagram for explaining a data write flow of the storage device according to the embodiment of the present invention.
  • FIG. 3A is a timing chart for explaining a data writing flow in view of the host device power of the storage device according to the embodiment of the present invention.
  • FIG. 3B is a timing chart for explaining another flow of data writing in which the host device power of the storage device according to the embodiment of the present invention is also viewed.
  • FIG. 4 is a flowchart for explaining processing at power-on of the storage device according to the embodiment of the present invention.
  • FIG. 5 is a block diagram showing a configuration of a storage device according to a third embodiment of the present invention.
  • FIG. 6 is a timing chart for explaining the operation of the voltage detection unit according to the third embodiment of the present invention.
  • FIG. 7 is a block diagram for explaining a flow when a voltage drop in the storage device according to the third embodiment is detected. Explanation of symbols
  • FIG. 1 is a block diagram showing a configuration of a storage device according to the first embodiment of the present invention.
  • the storage device 100 is connected to the host device 110, receives a command (CMD) and data (DATA) from the host device 110, writes data, reads the data, and outputs it to the host device 110.
  • the storage device 100 includes a storage medium 120 for holding data, a host IF unit 130 that controls communication with the host device, and a control information holding unit that holds control information according to control from the host device 110. 140, a buffer control unit 150 for temporarily storing data read and written by the host device 110, and a control unit 160.
  • the control unit 160 is for controlling the host IF unit 130, the control information holding unit 140, and the buffer control unit 150.
  • the storage medium 120 is a memory that holds user data, and is composed of, for example, a nonvolatile memory such as a NAND flash memory.
  • the control information holding unit 140 includes a register 141 and a control information saving memory 142.
  • the register 141 is a buffer that holds control information such as logical address information sent from the host device 110 and control information such as a block being written to the storage medium 120.
  • the control information save memory 142 temporarily stores this information. It is a non-volatile memory that is saved in the memory.
  • the register 141 may be composed of volatile RAM.
  • the control information saving memory 142 is preferably a non-volatile memory that can be written at a higher speed than the storage medium 120, such as a ferroelectric memory.
  • the buffer control unit 150 includes a data buffer 151, a buffer save memory 152, and a save flag (F) 153.
  • the data buffer 151 is a volatile memory such as SRAM.
  • the capacity of the data notifier may be an integer multiple of the transmission unit of data sent from the host device 110, for example, 512 bytes.
  • the buffer save memory 152 is composed of a nonvolatile memory.
  • the buffer save-memory 152 is preferably a memory that can be written at a higher speed than the storage medium 120, such as a ferroelectric memory.
  • the capacity of the buffer saver memory 152 may be the same size as or different from the data buffer 151 as long as it is an integral multiple of the transmission unit of data sent from the host device 110.
  • the nonvolatile buffer save memory 152 is more expensive than the volatile data buffer 151 and has a smaller number of rewrites, so that its capacity is preferably less than or equal to the buffer memory.
  • the save flag 153 is a non-volatile flag indicating that there is data being saved when data is saved in the buffer save memory 152.
  • the save flag 153 may be formed of a non-volatile memory together with the buffer save memory 152.
  • control unit 160 includes a system control unit 161 and an evacuation control unit 162.
  • the system control unit 161 controls the host IF unit 130, the noffer control unit 150, and the control information holding unit 140 in accordance with a transfer request from the host device 110, and transfers data to the storage medium 120.
  • the save control unit 162 controls the save / restore process of write data and control information and the response to the host.
  • the host device 110 issues a write command WCMD to the storage device 100.
  • the command includes the type of transfer such as read / write and the address of the data to be transferred.
  • the command is received by the host IF unit 130 and then transferred to the control unit 160.
  • the control unit 160 extracts the address and read / write type from the contents of the command as control information indicated as CONT in the figure, and holds it in the register 141 of the control information holding unit 140.
  • FIG. 3A and FIG. 3B are time charts when viewed from the host device.
  • CMD indicates a signal line for the host device and the storage device 100 to exchange command and response control information with each other
  • DATA indicates a signal line state for the host device and the storage device 100 to transfer write data.
  • the writing to the data notifier 151 and the storage medium 120 and the writing to the save buffer 152 are shown in synchronization with this timing.
  • the storage device 100 transmits a command response RES to the host device to indicate that the command has been accepted.
  • the host device After receiving the command response RES, the host device transfers the write data to the storage device 100.
  • the host IF unit 130 receives the write data DAT1.
  • the control unit 160 stores the data DAT1 in the data buffer 151 of the buffer control unit 150.
  • the host device 110 transfers the write data DAT2.
  • the host IF unit 130 receives the write data DAT2.
  • the control unit 160 stores the received data DAT2 in the data buffer 151 of the buffer control unit 150.
  • the write data DAT1 stored in the data buffer 151 is written to the storage medium 120.
  • the host device 110 issues an end command ECMD to the storage device 100.
  • the host IF unit 130 transfers the command to the control unit 160.
  • the save control unit 162 When the control unit 160 receives the end command, the save control unit 162 generates a save signal and transmits it to the buffer control unit 150 and the control information storage unit 140. Therefore, in the present embodiment, a save signal is generated based on a write end command as information on write data obtained from the host device 110.
  • the saver control unit 150 receives the save signal, the buffered data stored in the data buffer 151 is buffered. Saved in the save memory 152.
  • the control information holding unit 140 saves the control information (CONT) such as the logical address and write block received from the host held in the register 141 to the control information save memory 142.
  • the control information (CONT) may be information (write area address information) indicating which logical address data is to be written to which physical address as data write.
  • CONT control information
  • the data buffer 151 must contain data larger than the capacity of the buffer save memory 152. become. In such a case, the data is saved to the nother save memory 152 and data writing is continued for the amount that cannot be saved, and the save is completed when all the write data in the data notifier 151 is in a safe state. Should be considered.
  • the data writing to the storage medium 120 is continued and the data is saved to the buffer saving memory 152.
  • the data may be saved in the notch save memory 152 and the data line may be opened. Thereafter, the data is written from the data buffer 151 to the storage medium 120 as shown in FIG. 3B. In these cases, the data is saved to the buffer save memory after receiving the command ECMD.
  • the save flag 153 of the nota controller 150 is set.
  • the “set” of the save flag indicates that there is data saved in the saver save memory 152 and the control information save memory 142.
  • the evacuation flag 153 may be provided with an evacuation flag indicating that it has been evacuated in both the force control information holding unit 140 and the buffer control unit 150 provided in the buffer control unit 150.
  • the information control holding unit 140 may be provided only. If either side has a save flag, the required resources can be reduced.
  • the storage device 100 When the storage device 100 receives the end command ECMD, the storage device 100 sets the busy state using the DATA line.
  • “busy state” indicates that write data is being processed in the storage device 100.
  • the storage device 100 is busy when the DATA line is low. ing.
  • the write data DAT2 and the control information are saved.
  • the control unit 160 returns the DATA line to the normal state and notifies the host device 110 of the completion of data writing. The host device 110 can know that the data writing is completed at the timing tl when the DATA line goes high.
  • the busy time can be reduced. In other words, the time until the completion of data writing can be shortened as viewed from the host device 110, and the processing performance of the storage device can be improved.
  • the storage device 100 uses the saved data or the control data held in the register 141, and continues to write the data held in the data buffer 151 to the storage medium 120. Finish the process.
  • the save control unit 162 clears the save flag 153.
  • “clear” of the save flag 153 indicates that there is no data saved in the saver save memory 152 and the control information save memory 142. However, since it is not busy when viewed from the host device 110 side, the power may be cut off before the writing is completed.
  • the data to be written is held in the buffer save memory 152, and the control information necessary for writing is also held in the control information save memory 142, which is a nonvolatile memory. Its contents are retained. Therefore, the data writing process held in the buffer save memory 152 at the next power-on is resumed. This process will be explained.
  • FIG. 4 is a control flow performed by the control unit 160 in the storage device 100 when the storage device 100 is powered on.
  • the control unit 160 when the power is turned on, the control unit 160 performs an initialization process (S401).
  • S401 an initialization process
  • a bad block in the storage medium 120 is checked, and a table for converting the address issued by the host device into the address of the storage medium 120 is performed.
  • the initialization process may be performed when the power host device power initialization command issued at power-on is issued.
  • the control unit 160 determines whether the save flag 153 is set. Is confirmed (S402). If it is set, it is saved and the amount of data to be checked is checked (S403). Reading and writing data from the host device 110 is usually performed in units called clusters using a file system. The cluster size is 16kB, for example. If a cluster cannot be formed even if the saved data is written to the storage medium 120 again, the data may become meaningless for the host device. For this reason, for example, by writing the saved data to the storage medium 120, whether the storage medium 120 can form one cluster is used as a threshold to determine the save data processing. This threshold value may be uniquely determined in the storage device 100, or the host device power may be set.
  • the restoration process indicates a process of moving the write data held in the buffer save memory 152 to the data buffer 151 and a process of moving the control information held in the control information save memory 142 to the register 141.
  • the write data in the data buffer 151 is written to the storage medium 120 (S405).
  • the save flag is cleared (S406), and the process is terminated. If the save flag is not set in S402, the process ends. If the data amount is less than the threshold value in S403, the save flag is cleared (S406) and the process is terminated. Evacuate by this!
  • Data is discarded.
  • the data is discarded.
  • the saved data is restored to the data buffer 151, and the control information saved to the control information saving memory 142 is restored to the register 141 for writing.
  • the contents of the memory 142 and the buffer save memory 152 may be used as they are and written to the storage medium 120, and the restoration process may be omitted.
  • the non-volatile buffer save memory is expensive because the number of rewritable times is smaller than that of volatile memory such as SRAM. By performing writing, the number of times of use for the buffer save memory is reduced, and a highly reliable storage device is obtained. Togashi.
  • the host device issues a write command after informing the storage device of the amount of data to be transferred.
  • the unwritten data in the data buffer 151 is held in the buffer save memory 152, and the control information in the register 141 is transferred to the control information.
  • the data is held in the save memory 142 and the save flag 153 is set. In this way, the busy state can be released immediately after the evacuation is completed, and the host device can be released quickly. Therefore, in this embodiment, the save signal is generated based on the size of data notified as information related to write data obtained from the host device 110.
  • the unwritten data held in the data buffer 151 is then written into the storage medium 120 using the control information in the register 141.
  • the data stored in the nother save memory 152 is stored in the storage medium using the control information held in the control information save memory 142 after the next power-on. Writing to 120 is the same as in the first embodiment described above.
  • FIG. 5 is a block diagram showing the configuration of the storage device according to this embodiment.
  • the control unit 160A includes a voltage detection unit 163 that detects a power supply voltage in addition to the system control unit 161 and the evacuation control unit 162 described above.
  • the voltage detection unit 163 detects the voltage level applied to the storage device 100 and generates a reset signal and a voltage drop detection signal.
  • Other configurations are the same as those of the first embodiment described above.
  • FIG. 6 is a diagram for explaining the operation of the voltage detection unit 163 included in the control unit 160A.
  • the reset signal when the voltage level reaches the threshold V at time tl after power-on, the reset signal is To release.
  • the reset signal is a low active signal.
  • a voltage drop detection signal is output. This voltage low
  • the lower detection signal is output until time t3 when the reset signal falls to the threshold voltage V at which it becomes active
  • FIG. 7 shows an operation when a voltage drop detection signal is output from the voltage detection unit 163.
  • the voltage detection unit 163 transmits a voltage detection signal to the evacuation control unit 162.
  • the saving control unit 162 receives the voltage drop detection signal while writing data
  • the saving control unit 162 outputs the saving signal to the control information holding unit 140 and the buffer control unit 150 as shown in FIG. To do.
  • the evacuation control unit 162 receives a write end command issued from the host device 110 or when the amount of write data that has been sent out is reached. Also outputs a evacuation signal.
  • the control information holding unit 140 saves the control information (CONT) such as the address and write block held in the register 141 to the control information save memory 142.
  • CONT control information
  • the saver control unit 150 When the saver control unit 150 receives the save signal, if the data DAT2 stored in the data buffer 151 is being written to the storage medium 120, the data DAT2 is saved to the buffer save memory 152. Such processing occurs when the storage device 100 is removable and when the storage device 100 is mistakenly removed during data writing or when the power supply is cut off due to an external impact. In this case, the saved data is processed when the storage device 100 is turned on. This process is the same as that shown in FIG.
  • This embodiment is particularly suitable as a storage device for portable devices and mobile phones that can be inserted / removed and easily cause power interruption due to impact.
  • the save flag is set when data is saved in the buffer save memory.
  • the save flag is set. You may make it set.
  • the save flag may be set when the data is saved in the buffer save memory and the control information is saved in the control information save memory.
  • the buffer save memory and the control information save memory use the same non-volatile memory, part of which is used as the control information save area and the other area as the buffer save area. Even ⁇ . In this case, a save memory area may be provided in the nonvolatile memory.
  • control information is held in the control information saving memory at the time of saving.
  • the storage medium force control information during data writing is decoded and written to the storage medium. In this case, the control information saving memory becomes unnecessary.
  • the host device can be released from the busy state at an early timing, so that access efficiency can be improved for the host device. Therefore, the storage device according to the present invention can be applied to various devices using a storage device such as a memory card.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

 記憶装置100の制御部160は、ホスト機器110から書き込みの終了コマンド又はあらかじめ書き込むべきデータ量が送られてきたことを検出すると、書き込みに必要な制御情報を制御情報退避メモリ142に退避する。又書き込みが完了していないデータをデータバッファ151からバッファ退避メモリ152に退避する。そしてホスト機器110に対してビジー状態を解除する。そして退避したデータを記憶媒体120に書き込む。書き込みが完了するまでに電源が遮断されても、次に電源が投入されたときに退避したデータを用いて記憶媒体120に書き込むことができる。

Description

明 細 書
記憶装置
技術分野
[0001] 本発明は、不揮発性メモリを備える記憶装置に関する。
背景技術
[0002] デジタルカメラ、ムービー、携帯型音楽プレーヤなどのデジタル情報を制御する機 器 (以下、ホスト機器という)において、デジタル情報を保持する記憶装置として、不 揮発性メモリを搭載したメモリカードがある。メモリカードに使用される不揮発性メモリ として、フラッシュメモリが広く使われている。フラッシュメモリは書き込み時間が長くか 力るため、ホスト機器からみてフラッシュメモリに対して書き込みが完了するまで記憶 装置はビジー状態となり、ホスト機器が記憶装置力 開放されない。又書き込み中に 電源遮断が発生するとアクセス中のメモリセルの状態が保証されなくなる。そこで特 許文献 1においては、フラッシュメモリより高速の不揮発性メモリを備え、フラッシュメ モリへの書き込み中に停電を検知した場合、書き込みデータを高速の不揮発性メモ リへ書き込む方法が開示されている。
特許文献 1:特開平 11一 143788号
発明の開示
発明が解決しょうとする課題
[0003] し力しながら、上記の従来技術には以下のような問題点がある。すなわち、高速の 不揮発性メモリを使うのは停電を検知した場合だけであるため、通電時にホスト機器 力 見てデータ書き込み完了までに時間が力かるという欠点は解消されない。
[0004] このような問題点に鑑み、本発明は、通電時にはホスト機器力 みた性能向上を実 現する記憶装置を提供することを目的とする。
課題を解決するための手段
[0005] この課題を解決するために、本発明の記憶装置は、データを記憶する不揮発性メ モリから成る記憶媒体と、ホスト機器力 送られた書き込むべきデータを一時的に保 持するデータバッファ及び前記データバッファのデータを退避する不揮発性のバッフ ァ退避メモリを有するバッファ制御部と、前記バッファ制御部を制御するための制御 部と、を具備し、前記制御部は、得られる書き込みデータに関する情報に基づき、前 記データバッファに保持した書き込みデータを前記バッファ退避メモリへ退避すると 共に、前記記憶媒体へ記憶し、データの退避を完了した後に前記ホスト機器に書き 込み完了を通知するものである。
[0006] ここで前記ホスト機器から得られる書き込みデータに関する情報は、データ書き込 み終了を示す情報としてもよい。
[0007] ここで前記ホスト機器力も得られる書き込みデータに関する情報は、あら力じめ指定 されたデータサイズを示す情報としてもよ!ヽ。
[0008] ここで前記制御部は、電源電圧の低下を検知する電圧検出部を備え、前記制御部 は、前記ホスト機器から送られた書き込みデータを前記データ記憶部に書き込み中 に前記電圧検出部によって電源電圧の低下が検知されると、前記データバッファ〖こ 保持した書き込みデータを前記バッファ退避メモリに退避するようにしてもょ 、。
[0009] ここで前記記憶装置は、ホスト機器から与えられたアドレス及び前記記憶媒体に書 き込むための情報を含む制御情報を保持する制御情報保持部を更に具備し、前記 制御情報保持部は、制御情報を一時的に保持するレジスタと、前記レジスタの情報 を退避する不揮発性の制御情報退避メモリと、を有し、前記制御部は、前記書き込み データを前記バッファ退避メモリへ退避する際に前記レジスタに保持されている制御 情報を前記制御情報退避メモリに退避させるようにしてもよ 、。
[0010] ここで前記制御情報は、前記記憶媒体への書き込み領域アドレスの情報を含むよう にしてもよい。
[0011] ここで前記制御情報退避メモリは、前記記憶媒体より高速にデータを書き込むこと ができる不揮発性メモリとしてもよ!/、。
[0012] ここで前記制御情報退避メモリは、強誘電体メモリで構成されるようにしてもよい。
[0013] ここで前記バッファ退避メモリは、前記記憶媒体より高速にデータを書き込むことが できる不揮発性メモリとしてもょ 、。
[0014] ここで前記バッファ退避メモリは、強誘電体メモリで構成されるようにしてもよい。
[0015] ここで前記記憶装置は、前記バッファ退避メモリにデータを退避したときに立てられ る不揮発性の退避フラグを更に有し、前記制御部は、前記バッファ退避メモリにデー タを退避したときに前記退避フラグをセットし、前記退避したデータの前記記憶媒体 への書き込みを完了したときに退避フラグをクリアするようにしてもょ 、。
[0016] ここで前記記憶装置は、前記レジスタの情報を制御情報退避メモリに退避したとき に立てられる不揮発性の退避フラグを有し、前記制御部は、前記制御情報退避メモ リにレジスタの制御情報を退避したときに前記退避フラグをセットし、前記退避した制 御情報を用いてデータの前記記憶媒体へ書き込みを完了したときに退避フラグをタリ ァするようにしてもよい。
[0017] ここで前記記憶装置は、不揮発性の退避フラグを更に有し、前記制御部は、前記 バッファ退避メモリにデータを退避し、前記制御情報を前記制御情報退避メモリに退 避したときに前記退避フラグをセットし、前記退避した制御情報を用いてデータの前 記記憶媒体へ書き込みを完了したときに退避フラグをクリアするようにしてもよい。
[0018] ここで前記バッファ退避メモリと前記制御情報退避メモリとを同一の不揮発性メモリ で構成し、夫々バッファ退避領域にデータを退避し、制御情報退避領域に制御情報 を退避するようにしてもよ 、。
[0019] ここで前記制御部は、電源投入時に前記退避フラグを読み出し、前記退避フラグが セットされている場合には、前記データ退避バッファにされている前記書き込みデー タを前記記憶媒体に書き込み、書き込みが終了すると前記退避フラグをクリアするよ うにしてもよい。
[0020] ここで前記制御部は、電源投入時に前記退避フラグを読み出し、前記退避フラグが セットされている場合には、前記データ退避バッファに保持する書き込みデータのデ ータ量の確認を行い、前記記憶媒体にそのデータを所定単位で書き込み、残る書き 込みのデータが一定量未満の場合には前記データ退避バッファに保持したデータを 破棄するようにしてもよ ヽ。
[0021] ここで前記退避フラグは、前記バッファ退避メモリと一体に構成されているようにして ちょい。
発明の効果
[0022] 本発明によると、ホスト機器からのデータ転送終了時に必要なデータ及び Z又は制 御情報を退避データ保持部へ記録するため、通電時はホスト機器から見てデータ書 き込みまでの時間を短縮することができ、書き込み性能を向上することができる。また 、電圧検出部及び制御情報保持部を設けた発明では、この効果に加えて、電源電 圧低下を検知した時にも必要な情報を退避するため、電源遮断に対しても信頼性の 高 、記憶装置を提供することができる。
図面の簡単な説明
[図 1]図 1は本発明の第 1の実施の形態に係る記憶装置の構成を説明するためのブ ロック図である。
[図 2A]図 2Aは本発明の実施の形態に係る記憶装置のデータ書き込みフローを説明 するためのブロック図である。
[図 2B]図 2Bは本発明の実施の形態に係る記憶装置のデータ書き込みフローを説明 するためのブロック図である。
[図 2C]図 2Cが本発明の実施の形態に係る記憶装置のデータ書き込みフローを説明 するためのブロック図である。
[図 2D]図 2Dは本発明の実施の形態に係る記憶装置のデータ書き込みフローを説明 するためのブロック図である。
[図 3A]図 3Aは本発明の実施の形態に係る記憶装置のホスト機器力 見たデータ書 き込みフローを説明するためのタイミングチャートである。
[図 3B]図 3Bは本発明の実施の形態に係る記憶装置のホスト機器力も見たデータ書 き込みの他のフローを説明するためのタイミングチャートである。
[図 4]図 4は本発明の実施の形態に係る記憶装置の電源投入時の処理を説明するた めのフロー図である。
[図 5]図 5は本発明の第 3の実施の形態による記憶装置の構成を示すブロック図であ る。
[図 6]図 6は本発明の第 3の実施の形態に係る電圧検出部の動作を説明するための タイミングチャートである。
[図 7]図 7は第 3の実施の形態による記憶装置の電圧低下が検出されたときのフロー を説明するためのブロック図である。 符号の説明
[0024] 100 ,己憶装置
110 ホス卜機器
120 記憶媒体
140 制御情報保持部
141 レジスタ
142 制御情報退避メモリ
150 バッファ制御部
151 データノ ッファ
152 バッファ退避メモリ
153 退避フラグ
160 制御部
161 システム制御部
162 退避制御部
163 電圧検出部
発明を実施するための最良の形態
[0025] (第 1の実施の形態)
図 1は本発明の第 1の実施の形態に係る記憶装置の構成を示すブロック図である。 記憶装置 100はホスト機器 110と接続され、ホスト機器 110からコマンド (CMD)、デ ータ(DATA)を受信してデータの書き込みを行!ヽ、データを読み出してホスト機器 1 10に出力する。記憶装置 100は、データを保持するための記憶媒体 120と、ホスト機 器との通信制御を行うホスト IF部 130と、ホスト機器 110からの制御に応じた制御情 報を保持する制御情報保持部 140と、ホスト機器 110が読み書きするデータを一時 保持するためのバッファ制御部 150と、制御部 160を含んで構成される。制御部 160 はホスト IF部 130、制御情報保持部 140、バッファ制御部 150を制御するためのもの である。記憶媒体 120は、ユーザデータを保持するメモリであり、例えば NAND型フ ラッシュメモリのような不揮発性メモリで構成される。
[0026] 制御情報保持部 140はレジスタ 141、制御情報退避メモリ 142を含んで構成される 。レジスタ 141は制御情報、例えばホスト機器 110から送られてきた論理アドレス情報 や記憶媒体 120への書き込み中のブロック等の制御情報を保持するバッファであり、 制御情報退避メモリ 142はこの情報を一時的に退避する不揮発性のメモリである。レ ジスタ 141は揮発性の RAMによって構成されていてもよい。又制御情報退避メモリ 1 42は、例えば強誘電体メモリのように、記憶媒体 120より高速に書き込み可能な不揮 発性のメモリであることが好ま U 、。
[0027] 次にバッファ制御部 150は、データバッファ 151、バッファ退避メモリ 152及び退避 フラグ(F) 153を含む。データバッファ 151は SRAM等の揮発性メモリとする。データ ノ ッファの容量はホスト機器 110より送られるデータの送信単位、例えば 512バイトの 整数倍あればよい。又バッファ退避メモリ 152は不揮発性メモリで構成する。バッファ 退避-メモリ 152は例えば強誘電体メモリのように、記憶媒体 120より高速に書き込み 可能なメモリであることが好まし 、。ノ ッファ退避メモリ 152の容量はホスト機器 110よ り送られるデータの送信単位の整数倍であればよぐデータバッファ 151と同一サイ ズであってもよぐ異なっていてもよい。尚、不揮発性のバッファ退避メモリ 152は揮 発性のデータバッファ 151より高価格で書き換え可能回数が少ないため、その容量 はバッファメモリ以下であることが好ましい。又退避フラグ 153はバッファ退避メモリ 15 2にデータを退避している場合に、退避中のデータが存在することを示す不揮発性 のフラグである。退避フラグ 153はバッファ退避メモリ 152と一体ィ匕して不揮発性のメ モリで構成してもよい。
[0028] また制御部 160はシステム制御部 161及び退避制御部 162を含む。システム制御 部 161はホスト機器 110からの転送要求に応じてホスト IF部 130、ノッファ制御部 15 0、制御情報保持部 140の制御を行い、記憶媒体 120のデータ転送を行うものである 。退避制御部 162は書き込みデータや制御情報の退避'復帰処理、ホストへの応答 の制御を行う。
[0029] 以下、図 2A〜図 2D,図 3A,図 3Bを用いて第 1の実施の形態に係る記憶装置 10 0の書き込みシーケンスを説明する。本実施の形態では 2単位のデータ DAT1, DA T2を書き込む場合について説明するが、本発明の適用範囲はこれに限定されるも のではない。 [0030] 図 2Aにおいて、ホスト機器 110は書き込みコマンド WCMDを記憶装置 100に対し て発行する。コマンドにはリード'ライト等の転送の種類や転送するデータのアドレス 等が含まれる。コマンドはホスト IF部 130で受信された後、制御部 160に転送される。 制御部 160ではコマンドの内容からアドレスやリード'ライトの種別を図中で CONTと して示す制御情報として取り出し、制御情報保持部 140のレジスタ 141に保持する。
[0031] 図 3A,図 3Bはホスト機器から見た場合のタイムチャートである。図で CMDはホスト 機器と記憶装置 100とがコマンドや応答の制御情報を相互にやりとりするための信号 線、 DATAはホスト機器と記憶装置 100が書き込みデータを転送するための信号線 の状態を示す。又これとタイミングを合わせてデータノッファ 151、記憶媒体 120へ の書き込み及び退避バッファ 152への書き込みを示す。
[0032] 図 3Aにおいて、ホスト機器が書き込みコマンド WCMDを発行すると、記憶装置 10 0はコマンドを受け付けたことを示すためのコマンド応答 RESをホスト機器に送信する
[0033] ホスト機器はコマンド応答 RESを受信後に、書き込みデータを記憶装置 100に転 送する。図 2Bにおいて、ホスト機器 110が書き込みデータ DAT1を転送すると、ホス ト IF部 130は書き込みデータ DAT1を受信する。制御部 160はデータ DAT1をバッ ファ制御部 150のデータバッファ 151に格納する。
[0034] 続いて図 2Cにおいて、ホスト機器 110が書き込みデータ DAT2を転送する。ホスト IF部 130は書き込みデータ DAT2を受信する。制御部 160は受信データ DAT2を バッファ制御部 150のデータバッファ 151に格納する。同時にデータバッファ 151に 格納されている書き込みデータ DAT1を記憶媒体 120へ書き込む。
[0035] 図 2D,図 3Aにおいて、ホスト機器 110が終了コマンド ECMDを記憶装置 100に 対して発行する。ホスト IF部 130はこのコマンドを受信した後、制御部 160に転送す る。制御部 160では終了コマンドを受信した場合、退避制御部 162が退避信号を生 成し、バッファ制御部 150及び制御情報格納部 140へ送信する。従って、本実施の 形態では、ホスト機器 110から得られる書き込みデータに関する情報としての書き込 み終了コマンドに基づいて、退避信号が生成される。ノ ッファ制御部 150では退避 信号を受信すると、データバッファ 151に格納された書き込み中のデータをバッファ 退避メモリ 152に退避する。また、制御情報保持部 140では退避信号を受信すると、 レジスタ 141に保持されているホストから来た論理アドレスや書き込みブロック等の制 御情報 (CONT)を、制御情報退避メモリ 142へ退避する。ここで、少なくとも制御情 報(CONT)は、データ書き込みとして、どの論理アドレスのデータをどの物理アドレ スに書き込もうとしていたかを示す情報 (書き込み領域アドレスの情報)とするとよい。 なお、本実施の形態においては書き込み中のデータ DAT2のみを退避しているが、 データバッファ容量を大きくした場合には、データバッファ 151にはバッファ退避メモ リ 152の容量以上のデータが存在することになる。このような場合、ノ ッファ退避メモリ 152へ退避すると共に、退避しきれない分にはデータ書き込みが継続され、データ ノ ッファ 151内の書き込みデータが全て安全な状態になった時点で退避が完了した と見なすとよい。
[0036] ここで図 3Aでは終了コマンド ECMDを受信した後も記憶媒体 120へデータの書き 込みを続けると共に、バッファ退避メモリ 152へのデータの退避を行っている。これに 代えて図 3Bに示すように終了コマンド ECMDを受信すると、ノ ッファ退避メモリ 152 にデータを退避し、データ線を開放状態としてもよい。この後に図 3Bに示すように記 憶媒体 120にデータバッファ 151からデータを書き込む。これらの場合 、ずれも終了 コマンド ECMDを受信した後にデータをバッファ退避メモリに退避するものとする。
[0037] 書き込みデータや制御情報を退避する時には、ノ ッファ制御部 150の退避フラグ 1 53をセットする。ここで退避フラグの「セット」とは、ノ ッファ退避メモリ 152、制御情報 退避メモリ 142に退避したデータがあることを示す。本発明の実施の形態では退避フ ラグ 153はバッファ制御部 150内に設けている力 制御情報保持部 140とバッファ制 御部 150の双方に夫々退避したことを示す退避フラグを設けてもよぐ情報制御保持 部 140のみに設けてもよい。いずれか一方に退避フラグを設けた場合には、必要なリ ソースを削減できる。
[0038] さて、記憶装置 100は終了コマンド ECMDを受信すると、 DATA線を用いてビジ 一状態とする。ここで「ビジー状態」とは記憶装置 100内で書き込みデータを処理して いることを示しており、本実施の形態においては DATA線がローの場合に記憶装置 100がビジー状態であることを示している。この間に図 2Dを用いて説明したとおり、 記憶装置 100内では書き込みデータ DAT2及び制御情報の退避が行われている。 退避を終えると、制御部 160は DATA線をビジー状態力も通常状態に復帰させ、こ れによってホスト機器 110のデータの書き込み完了を通知する。ホスト機器 110は D ATA線がハイになるタイミング tlにおいて、データ書き込みが終了したことを知ること ができる。ノ ッファ退避メモリ 152及び制御情報退避メモリ 142に例えば強誘電体メ モリを用いた場合は、 1回の書き込みが 1マイクロ秒程度で終了するため、ビジー状 態になっている時間を短縮できる。即ちホスト機器 110から見てデータの書き込みの 完了までの時間を短縮することができ、記憶装置の処理性能を向上することができる
[0039] 記憶装置 100はこの後に、退避したデータ又はレジスタ 141に保持されている制御 データを用 V、て、データバッファ 151に保持されて ヽるデータの記憶媒体 120への 書き込みを続け、書き込み処理を終える。データバッファ 151の DAT2を記憶媒体 1 20に書き込むと、退避制御部 162は退避フラグ 153をクリアする。ここで退避フラグ 1 53の「クリア」とは、ノ ッファ退避メモリ 152、制御情報退避メモリ 142に退避したデー タがな!/、ことを示す。但しホスト機器 110側から見てビジー状態ではなくなつて 、るた め、書き込みを終えるまでに電源が遮断される場合もありうる。電源が遮断されたとし ても書き込むべきデータはバッファ退避メモリ 152に保持されており、書き込みに必 要な制御情報も制御情報退避メモリ 142に保持されており、これらは不揮発性メモリ であるので、その内容は保持されている。従って次の電源投入時にバッファ退避メモ リ 152に保持されて 、るデータの書き込み処理が再開される。この処理にっ 、て説 明する。
[0040] 図 4は記憶装置 100に電源が投入された時の記憶装置 100内の制御部 160が行う 制御フローである。図 4において、電源が投入されると、制御部 160は初期化処理を 行う(S401)。初期化処理では記憶媒体 120内の不良ブロックのチェックや、ホスト機 器の発行するアドレスを記憶媒体 120のアドレスに変換するためのテーブル作成な どを行う。本実施の形態においては初期化処理は電源投入時に行っている力 ホス ト機器力 初期化コマンドが発行された場合に行ってもよい。
[0041] 初期化処理が終了すると、制御部 160は退避フラグ 153がセットされているかどうか を確認する(S402)。セットされて 、る場合には退避して 、るデータ量をチェックする (S403)。ホスト機器 110からのデータの読み書きは通常ファイルシステムを用いてク ラスタと呼ばれる単位で行われる。クラスタのサイズは例えば 16kBである。退避して いるデータを再度記憶媒体 120に書き込んでもクラスタを構成できない場合には、ホ スト機器にとっては意味のないデータとなる可能性がある。このため、例えば退避して いるデータを記憶媒体 120に書き込むことで記憶媒体 120で 1つのクラスタが構成で きるかどうかを閾値として、退避データの処理を決定する。この閾値は記憶装置 100 内で固有に定めてもよいし、ホスト機器力も設定できるようにしてもよい。退避している データを書き込んだ結果のデータ量が閾値以上である場合は、退避データの復帰 処理を行う(S404)。ここで復帰処理とは、ノ ッファ退避メモリ 152に保持した書き込 みデータをデータバッファ 151に移す処理と、制御情報退避メモリ 142に保持した制 御情報をレジスタ 141に移す処理を示す。復帰処理を行った後、データバッファ 151 の書き込みデータを記憶媒体 120へ書き込む (S405)。書き込みが終了すると退避 フラグをクリアし(S406)処理を終了する。なお、 S402において退避フラグがセットさ れていない場合には処理を終了する。また、 S403においてデータ量が閾値未満で ある場合には退避フラグをクリアし (S406)処理を終了する。これにより退避して!/、た データは破棄される。また、 S405において閾値未満のデータが残っていた場合も、 そのデータは破棄される。尚ここでは退避したデータをー且データバッファ 151に復 帰し、制御情報退避メモリ 142に退避した制御情報をー且レジスタ 141に復帰して書 き込みを行うようにして ヽるが、制御情報退避メモリ 142やバッファ退避メモリ 152の 内容をそのまま用いて記憶媒体 120に書き込むようにして、復帰処理を省略してもよ い。
このような処理を行うことで、書き込み中に電源遮断が発生した場合でも再度電源 が供給されると中断された処理を完了することができるため、信頼性の高い記憶装置 を提供することができる。この場合に不揮発性のバッファ退避メモリは SRAMのような 揮発性メモリに比べて書き換え可能回数が少なぐ高コストであるため、ホスト機器か ら書き込み終了を通知された場合にのみバッファ退避メモリへの書き込みを行うこと により、ノ ッファ退避メモリへの使用回数を少なくして信頼性の高い記憶装置とするこ とがでさる。
[0043] (第 2の実施の形態)
次に本発明の第 2の実施の形態について説明する。本実施の形態の全体構成は 図 1の場合と同様である。この実施の形態では、ホスト機器はあら力じめ転送するデ 一タ量を記憶装置に対して通知した後に、書き込みコマンドを発行する。こうすれば 記憶装置側ではあら力じめ通知されたサイズのデータを受信した後に、データバッフ ァ 151にある未書き込みのデータをバッファ退避メモリ 152に保持し、レジスタ 141に ある制御情報を制御情報退避メモリ 142に保持して、退避フラグ 153を立てる。こうす れば退避が完了した後、すぐにビジー状態を解除することができ、ホスト機器を速く 開放することができる。従って本実施例では、ホスト機器 110から得られる書き込みデ ータに関する情報として通知されるデータのサイズに基づき退避信号が生成される。
[0044] この場合にも、その後データバッファ 151に保持されている未書き込みのデータを レジスタ 141の制御情報を用 、て記憶媒体 120にデータを書き込む。又この処理を 完了するまでに電源が遮断されたときには、次の電源投入後に、ノッファ退避メモリ 1 52に保持してあるデータを制御情報退避メモリ 142に保持されている制御情報を用 いて記憶媒体 120に書き込むことは、前述した第 1の実施の形態と同様である。
[0045] (第 3の実施の形態)
次に本発明の第 3の実施の形態について説明する。本実施の形態では第 1又は第 2の実施の形態の機能に加えて、電源電圧が低下したときにも退避処理を行うよう〖こ したものである。図 5は本実施の形態による記憶装置の構成を示すブロック図である 。本実施の形態は第 1の実施の形態と同一部分は同一符号を付して詳細な説明を 省略する。この実施の形態では制御部 160Aは前述したシステム制御部 161、退避 制御部 162に加えて、電源電圧を検出する電圧検知部 163を有している。電圧検出 部 163は記憶装置 100に印加される電圧レベルを検知して、リセット信号及び電圧 低下検知信号を生成するものである。その他の構成は前述した第 1の実施の形態と 同様である。
[0046] 図 6は制御部 160Aに含まれる電圧検出部 163の動作を説明する図である。図 6に おいて、電源投入後時間 tlにおいて電圧レベルが閾値 V に達するとリセット信号を 解除する。図 6ではリセット信号はローアクティブ信号としている。また、時間 t2におい て電圧レベルが閾値 V より低下すると、電圧低下検出信号を出力する。この電圧低
TH
下検出信号はリセット信号がアクティブになる閾値電圧 V に低下する時間 t3まで出
TL
力される。
[0047] また、図 7は電圧検出部 163から電圧低下検出信号が出力された場合の動作を示 している。電圧検出部 163は電圧検出信号を退避制御部 162に伝える。退避制御部 162はデータを書き込み中に電圧低下検出信号を受信すると、図 2Dで説明した処 理と同様に、図 7に示すように制御情報保持部 140及びバッファ制御部 150に退避 信号を出力する。退避制御部 162は第 1又は第 2の実施の形態と同様に、ホスト機器 110から書き込みの終了コマンドが発行された場合やあら力じめ送られてきた書き込 みデータ量に達した場合にも退避信号を出力する。制御情報保持部 140では退避 信号を受信すると、レジスタ 141に保持されたアドレスや書き込みブロック等の制御 情報 (CONT)を制御情報退避メモリ 142へ退避する。ノ ッファ制御部 150では退避 信号を受信すると、データバッファ 151に格納されたデータ DAT2が記憶媒体 120 へ書き込み中であった場合には、データ DAT2をバッファ退避メモリ 152へ退避する 。このような処理は記憶装置 100がリムーバブルである場合に、データ書き込み中に 誤って記憶装置 100が取り出されたり、外的衝撃によって電源供給が遮断された場 合に発生する。この場合退避したデータは記憶装置 100に電源が投入された際に処 理される。この処理は図 4に示した場合と同様である。
[0048] こうすれば書き込み中に電源遮断が発生した場合でも書き込み中のデータの復帰 が可能である。この実施の形態は特に挿抜可能で衝撃による電源遮断が生じやすい ポータブル機器 ·携帯電話向けの記憶装置として好適である。
[0049] 尚前述した各実施の形態では、データをバッファ退避メモリに退避したときに退避フ ラグをセットするようにして 、るが、制御情報を制御情報退避メモリに退避したときに 退避フラグをセットするようにしてもよい。又データをバッファ退避メモリに退避し、且 つ制御情報を制御情報退避メモリに退避したときに退避フラグをセットするようにして もよい。更にバッファ退避メモリと制御情報退避メモリとは同一の不揮発性メモリを用 い、その一部の領域を制御情報退避用の領域、他の領域をバッファ退避用の領域と してもょ ヽ。この場合にその不揮発性メモリ内に更に退避メモリの領域を設けるように してちよい。
[0050] 尚前述した各実施の形態では、制御情報を退避時に制御情報退避メモリに保持す るようにしているが、データの書き込み中の記憶媒体力 制御情報を解読して記憶媒 体に書き込むこともでき、この場合には制御情報退避メモリが不要となる。
産業上の利用可能性
[0051] 本発明によると、通常のデータ書き込み時においてホスト機器に対しビジー解除を 早いタイミングで行うことができるので、ホスト機器にとってアクセス効率が向上できる 。従って本発明による記憶装置は、メモリカード等の記憶装置を用いた種々の機器に 適用することができる。

Claims

請求の範囲
[1] データを記憶する不揮発性メモリから成る記憶媒体と、
ホスト機器力も送られた書き込むべきデータを一時的に保持するデータバッファ及 び前記データバッファのデータを退避する不揮発性のバッファ退避メモリを有するバ ッファ制御部と、
前記バッファ制御部を制御するための制御部と、を具備し、
前記制御部は、前記ホスト機器力 得られる書き込みデータに関する情報に基づき 、前記データバッファに保持した書き込みデータを前記バッファ退避メモリへ退避す ると共に、前記記憶媒体へ記憶し、データの退避を完了した後に前記ホスト機器に 書き込み完了を通知する記憶装置。
[2] 前記ホスト機器力 得られる書き込みデータに関する情報は、データ書き込み終了 を示す情報である請求項 1記載の記憶装置。
[3] 前記ホスト機器力も得られる書き込みデータに関する情報は、あらかじめ指定され たデータサイズを示す情報である請求項 1記載の記憶装置。
[4] 前記制御部は、電源電圧の低下を検知する電圧検出部を備え、
前記制御部は、前記ホスト機器から送られた書き込みデータを前記データ記憶部 に書き込み中に前記電圧検出部によって電源電圧の低下が検知されると、前記デ ータバッファに保持した書き込みデータを前記バッファ退避メモリに退避する請求項
1記載の記憶装置。
[5] 前記記憶装置は、ホスト機器から与えられたアドレス及び前記記憶媒体に書き込む ための情報を含む制御情報を保持する制御情報保持部を更に具備し、
前記制御情報保持部は、
制御情報を一時的に保持するレジスタと、
前記レジスタの情報を退避する不揮発性の制御情報退避メモリと、を有し、 前記制御部は、前記書き込みデータを前記バッファ退避メモリへ退避する際に前 記レジスタに保持されて ヽる制御情報を前記制御情報退避メモリに退避させる請求 項 1記載の記憶装置。
[6] 前記制御情報は、前記記憶媒体への書き込み領域アドレスの情報を含む請求項 5 記載の記憶装置。
[7] 前記制御情報退避メモリは、前記記憶媒体より高速にデータを書き込むことができ る不揮発性メモリである請求項 5記載の記憶装置。
[8] 前記制御情報退避メモリは、強誘電体メモリで構成される請求項 7記載の記憶装置
[9] 前記バッファ退避メモリは、前記記憶媒体より高速にデータを書き込むことができる 不揮発性メモリである請求項 1記載の記憶装置。
[10] 前記バッファ退避メモリは、強誘電体メモリで構成される請求項 9記載の記憶装置。
[11] 前記記憶装置は、前記バッファ退避メモリにデータを退避したときに立てられる不 揮発性の退避フラグを更に有し、
前記制御部は、前記バッファ退避メモリにデータを退避したときに前記退避フラグを セットし、前記退避したデータの前記記憶媒体への書き込みを完了したときに退避フ ラグをクリアする請求項 1記載の記憶装置。
[12] 前記記憶装置は、前記レジスタの情報を制御情報退避メモリに退避したときに立て られる不揮発性の退避フラグを有し、
前記制御部は、前記制御情報退避メモリにレジスタの制御情報を退避したときに前 記退避フラグをセットし、前記退避した制御情報を用いてデータの前記記憶媒体へ 書き込みを完了したときに退避フラグをクリアする請求項 5記載の記憶装置。
[13] 前記記憶装置は、不揮発性の退避フラグを更に有し、
前記制御部は、前記バッファ退避メモリにデータを退避し、前記制御情報を前記制 御情報退避メモリに退避したときに前記退避フラグをセットし、前記退避した制御情 報を用いてデータの前記記憶媒体へ書き込みを完了したときに退避フラグをクリアす る請求項 5項記載の記憶装置。
[14] 前記バッファ退避メモリと前記制御情報退避メモリとを同一の不揮発性メモリで構成 し、夫々バッファ退避領域にデータを退避し、制御情報退避領域に制御情報を退避 するようにした請求項 5記載の記憶装置。
[15] 前記制御部は、電源投入時に前記退避フラグを読み出し、前記退避フラグがセット されている場合には、前記データ退避バッファにされている前記書き込みデータを前 記記憶媒体に書き込み、書き込みが終了すると前記退避フラグをクリアする請求項 1 1記載の記憶装置。
[16] 前記制御部は、電源投入時に前記退避フラグを読み出し、前記退避フラグがセット されている場合には、前記データ退避バッファに保持する書き込みデータのデータ 量の確認を行い、前記記憶媒体にそのデータを所定単位で書き込み、残る書き込み のデータが一定量未満の場合には前記データ退避バッファに保持したデータを破棄 する請求項 11項記載の記憶装置。
[17] 前記退避フラグは、前記バッファ退避メモリと一体に構成されている請求項 11記載 の記憶装置。
PCT/JP2006/305964 2005-03-28 2006-03-24 記憶装置 WO2006104036A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US11/909,749 US7818477B2 (en) 2005-03-28 2006-03-24 Storage device with buffer control unit
JP2007510448A JP4881856B2 (ja) 2005-03-28 2006-03-24 記憶装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005091930 2005-03-28
JP2005-091930 2005-03-28

Publications (1)

Publication Number Publication Date
WO2006104036A1 true WO2006104036A1 (ja) 2006-10-05

Family

ID=37053293

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2006/305964 WO2006104036A1 (ja) 2005-03-28 2006-03-24 記憶装置

Country Status (3)

Country Link
US (1) US7818477B2 (ja)
JP (1) JP4881856B2 (ja)
WO (1) WO2006104036A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010086009A (ja) * 2008-09-29 2010-04-15 Hitachi Ltd 記憶装置およびメモリ制御方法
JP2011018387A (ja) * 2009-07-07 2011-01-27 Sony Corp メモリ装置、メモリ制御方法、およびプログラム
JP2011248510A (ja) * 2010-05-25 2011-12-08 Hitachi Automotive Systems Ltd 電子制御装置

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5014259B2 (ja) * 2008-05-30 2012-08-29 パナソニック株式会社 表示制御装置および表示制御方法
JP2010258608A (ja) * 2009-04-22 2010-11-11 Sony Corp 撮像装置及び撮像装置の立上方法
CN102799392B (zh) * 2012-06-16 2015-12-16 北京忆恒创源科技有限公司 存储设备及其中断控制方法
US10643668B1 (en) * 2013-08-27 2020-05-05 Seagate Technology Llc Power loss data block marking
US9858003B2 (en) * 2016-05-02 2018-01-02 Toshiba Memory Corporation Storage system that reliably stores lower page data
KR102609473B1 (ko) * 2016-06-17 2023-12-04 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
KR102208058B1 (ko) * 2016-11-04 2021-01-27 삼성전자주식회사 저장 장치 및 이를 포함하는 데이터 처리 시스템
CN109074301B (zh) * 2017-03-13 2021-10-08 荣耀终端有限公司 一种数据处理方法及装置
KR102398186B1 (ko) 2017-07-03 2022-05-17 삼성전자주식회사 메모리 컨트롤러의 동작 방법 및 사용자 장치의 동작 방법
CN110989918B (zh) * 2018-10-03 2023-03-28 慧荣科技股份有限公司 写入控制方法以及数据存储装置及其控制器

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6476346A (en) * 1987-09-18 1989-03-22 Fujitsu Ltd Disk cache control system
JPH11143788A (ja) * 1997-11-05 1999-05-28 Hitachi Ltd 不揮発性メモリを使用した外部記憶装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2256735B (en) * 1991-06-12 1995-06-21 Intel Corp Non-volatile disk cache
JPH07200418A (ja) 1993-12-28 1995-08-04 Hitachi Maxell Ltd データ記憶装置ならびにその制御方法
US5596708A (en) * 1994-04-04 1997-01-21 At&T Global Information Solutions Company Method and apparatus for the protection of write data in a disk array
US5799200A (en) * 1995-09-28 1998-08-25 Emc Corporation Power failure responsive apparatus and method having a shadow dram, a flash ROM, an auxiliary battery, and a controller
JPH10154101A (ja) 1996-11-26 1998-06-09 Toshiba Corp データ記憶システム及び同システムに適用するキャッシュ制御方法
JP3180063B2 (ja) * 1997-08-26 2001-06-25 インターナショナル・ビジネス・マシーンズ・コーポレ−ション ディスク・ドライブ装置及びこれの制御方法
JP4015835B2 (ja) * 2001-10-17 2007-11-28 松下電器産業株式会社 半導体記憶装置
US6862673B2 (en) * 2001-11-14 2005-03-01 Silicon Integrated Systems Corporation Command order maintenance scheme for multi-in/multi-out FIFO in multi-threaded I/O links
US7380055B2 (en) * 2004-06-21 2008-05-27 Dot Hill Systems Corporation Apparatus and method in a cached raid controller utilizing a solid state backup device for improving data availability time

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6476346A (en) * 1987-09-18 1989-03-22 Fujitsu Ltd Disk cache control system
JPH11143788A (ja) * 1997-11-05 1999-05-28 Hitachi Ltd 不揮発性メモリを使用した外部記憶装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010086009A (ja) * 2008-09-29 2010-04-15 Hitachi Ltd 記憶装置およびメモリ制御方法
JP2011018387A (ja) * 2009-07-07 2011-01-27 Sony Corp メモリ装置、メモリ制御方法、およびプログラム
US8448017B2 (en) 2009-07-07 2013-05-21 Sony Corporation Memory apparatus, memory controlling method and program
JP2011248510A (ja) * 2010-05-25 2011-12-08 Hitachi Automotive Systems Ltd 電子制御装置

Also Published As

Publication number Publication date
US20090019194A1 (en) 2009-01-15
JPWO2006104036A1 (ja) 2008-09-04
JP4881856B2 (ja) 2012-02-22
US7818477B2 (en) 2010-10-19

Similar Documents

Publication Publication Date Title
JP4881856B2 (ja) 記憶装置
CN101373449B (zh) Ecc控制电路、多通道存储器系统以及相关操作方法
US8103845B2 (en) Data storage device using two types of storage medium
JP2005267628A (ja) Nandフラッシュメモリを使用するメモリカード及びそれの動作方法
TW202143052A (zh) 用於固態硬碟的緩衝區最佳化
US10152280B2 (en) Storage device and control method
TWI611410B (zh) 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
TW201421477A (zh) 記憶體儲存裝置、其記憶體控制器與資料寫入方法
US9384125B2 (en) Method for accessing flash memory having pages used for data backup and associated memory device
WO2009041244A1 (en) Memory card capable of reducing power consumption
EP0890955A2 (en) Storage apparatus, data write-in method, and data read-out method
CN102541458A (zh) 一种提高电子硬盘数据写入速度的方法
CN105630408A (zh) 一种集成mram的固态硬盘控制芯片及固态硬盘
TW201508748A (zh) 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
CN102473141A (zh) 非易失性存储装置以及存储控制器
US20090210612A1 (en) Memory controller, nonvolatile memory device, and nonvolatile memory system
US7447853B2 (en) Data copy device
TWI534814B (zh) 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
JP2012521032A (ja) Ssdコントローラおよびssdコントローラの動作方法
TWI550625B (zh) 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元
WO2011007511A1 (ja) メモリコントローラ、不揮発性記憶装置、アクセス装置、不揮発性記憶システム
US20100125698A1 (en) Recordable memory device
CN111324283A (zh) 一种存储器
JP2010026950A (ja) 記憶装置
JP5533141B2 (ja) 書き込み装置、書き込み方法、及び書き込みプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2007510448

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

NENP Non-entry into the national phase

Ref country code: RU

WWE Wipo information: entry into national phase

Ref document number: 11909749

Country of ref document: US

122 Ep: pct application non-entry in european phase

Ref document number: 06729912

Country of ref document: EP

Kind code of ref document: A1