[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

WO2005064617A1 - Data write-in method for flash memory - Google Patents

Data write-in method for flash memory Download PDF

Info

Publication number
WO2005064617A1
WO2005064617A1 PCT/CN2004/001446 CN2004001446W WO2005064617A1 WO 2005064617 A1 WO2005064617 A1 WO 2005064617A1 CN 2004001446 W CN2004001446 W CN 2004001446W WO 2005064617 A1 WO2005064617 A1 WO 2005064617A1
Authority
WO
WIPO (PCT)
Prior art keywords
flash
flash memory
logical block
data writing
instruction
Prior art date
Application number
PCT/CN2004/001446
Other languages
French (fr)
Chinese (zh)
Inventor
Guoping Xiong
Original Assignee
Netac Technology 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 Netac Technology Co., Ltd. filed Critical Netac Technology Co., Ltd.
Priority to US10/584,778 priority Critical patent/US20070118681A1/en
Priority to DE602004019248T priority patent/DE602004019248D1/de
Priority to JP2006545886A priority patent/JP4921174B2/en
Priority to KR1020067015286A priority patent/KR101087313B1/en
Priority to EP04802459A priority patent/EP1701358B1/en
Publication of WO2005064617A1 publication Critical patent/WO2005064617A1/en

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/12Group selection circuits, e.g. for memory block selection, chip selection, array selection
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/08Address circuits; Decoders; Word-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits

Definitions

  • the present invention relates to a method for writing data to a flash memory medium, and particularly to a method for writing data to two or more flash memory chips. Background technique
  • flash memory chips Flash have been widely used in mobile storage devices.
  • flash memory chips due to the characteristics of the flash memory chip and the defects in the existing data operation methods, the operation speed of this type of mobile storage device is low.
  • the storage space of each Flash (referred to as a flash memory chip) is generally divided into multiple memory blocks (blocks, that is, physical blocks). Each memory block is composed of multiple pages.
  • Blocks that is, physical blocks.
  • Each memory block is composed of multiple pages.
  • Data is written in units of pages, while erasure can only be performed in units of blocks. Therefore, according to user operations, the operating system writes new data to the flash chip or writes data to the original by a specific write data instruction.
  • the data to be retained in the storage block pointed to by the specified address in the data write order (hereinafter referred to as the original block) must be "relocated” from the original block to another storage block (hereinafter referred to as To the corresponding page of the new block), and write the new data required by the write data instruction to the original block into the corresponding page of the new block, and then erase the original block, replacing the logical address of the original block with the logical address of the new block Among them, the write program operation and the erase operation are the most time-consuming.
  • the flow of the existing Flash write operation is: write programming, and then wait for the close-up programming to complete, and then perform the erase operation after the write programming is completed, and then continue to the next write programming.
  • This method is necessary for one piece of Flash (the "one piece of Flash” described in this article is intended to correspond to one chip select signal, if there are two chip select signals, it is regarded as "two pieces of Flash"), because only one With a chip select signal, two different operations cannot be performed at the same time, that is, it cannot be programmed at the same time, but for a storage device containing multiple flashes, if data is still written in accordance with the above write operation flow, the flash memory chip is severely restricted Write operation speed, and currently the capacity of mobile storage devices is getting larger and larger, the use of multiple flash is an inevitable trend, so how to increase the write speed of flash memory chips has become an urgent problem. Summary of the invention
  • An object of the present invention is to provide a method for writing data in a flash memory medium, so as to solve the disadvantages of low operation speed and efficiency of the existing data operation technology of the flash memory chip.
  • the flash media data writing method of the present invention is implemented by the following technical solutions:
  • the method includes: corresponding physical blocks in two flash memory chips respectively to an odd logical block address and an even logical block address; parsing from a data write instruction Write the logical block address corresponding to the write operation; determine the parity of the logical block address and select the corresponding flash chip among the two flash chips according to the parity of the logical block address; operate the corresponding flash chip
  • a physical block corresponding to the logical block address is used to detect whether the other one of the two flash memory chips needs to be programmed or erased after issuing a program or erase command to the physical block.
  • a programming or erasing operation is required, a programming or operation command is issued to the physical block that needs to be operated in the another piece of flash memory chip.
  • a programming operation or an erasing operation can be performed on one flash memory chip while a programming or erasing operation is performed on another flash memory chip, thereby greatly saving the time of a writing operation and increasing the speed of data writing.
  • FIG. 1 is a schematic diagram of a logical block address distribution corresponding to a physical block in two flash memory chips in an embodiment of a flash media data writing method according to an embodiment of the present invention
  • FIG. 2 is a schematic flowchart of a method for writing data into a flash memory medium according to the present invention
  • FIG. 3 is a schematic diagram of the first process of the flash media data writing method of the present invention
  • FIG. 4 is a schematic diagram of the second process of the flash media data writing method of the present invention. detailed description
  • a flash media data writing method is used to improve the speed of data writing to two or more flash memory chips.
  • the two flash memory chips refer to flash memory chips corresponding to two chip select signals, including a physical chip. But the flash chip contains two chip select signals.
  • FIG. 1 is a schematic diagram of the logical block address distribution corresponding to the physical blocks of two flash chips in the flash media data writing method of the present invention.
  • the physical blocks in the two flash chips are respectively Corresponding to an odd logical block address and an even logical block address
  • a flash memory chip containing only the odd logical block address is referred to as a first flash memory chip
  • a flash memory chip containing only an even logical block address is referred to as a second flash memory chip.
  • the odd logical block address of the first flash memory chip and the even logical block address of the second flash memory chip can be combined into a continuous logical block address.
  • FIG. 2 is a schematic diagram of the overall process of the present invention. After the controller receives a data write operation instruction from the host:
  • step 300 The overall process begins, step 300;
  • step 302 the controller obtains the start logical address of the write operation instruction and the number of sectors to be written according to the data write operation instruction;
  • step 304 where the starting logical address in step 302 is parsed to obtain the logical block address to be written;
  • step 306 determines the parity of the logical block address in step 304: If the logical block address is odd, proceed to step 308, and in step 308 write data to the first flash memory chip that manages the odd logical block address The physical block corresponding to the logical block address, and then the flow proceeds from step 308 to step 310.
  • step 310 a write process is called. If the logical block address is an even number, it proceeds to step 312. In step 312, data is written to the management odd number. The physical block corresponding to the logical block address in the second flash chip of the logical block address, and then the process proceeds from step 312 to step 314. In step 314, the write process is called.
  • FIG. 3 is a flash memory medium of the present invention. Schematic diagram of write process one of the data write method, as shown in FIG. 3, the work flow of the present invention is transferred from step 310 of the general process to step 102 of write process one:
  • step 102 the controller operates the physical block in step 308, including sending a programming and erasing command, and sending a program to the physical block when the physical block is to be programmed or erased. Or erase command, to determine whether a second flash memory chip is to be programmed or erased after sending the program or erase command;
  • step 106 the controller sends a programming or erasing command to a physical block in the second flash memory chip that needs to be operated, and sends a programming command if a programming operation is needed, such as Send an erase command if an erase operation is required;
  • step 104 the controller determines the physical block in the first flash memory chip. Whether the operation ends
  • step 104 If the operation of the physical block in the first flash memory chip has not ended, the write process returns from step 104 to step 102;
  • step 104 If the operation of the physical block in the first flash memory chip has ended, the process proceeds from step 104 to step 108;
  • step 108 the controller subtracts the number of sectors written (the number of sectors has been obtained in step 302), and determines whether the subtraction result is zero. Whether the data write operation instruction is completed, if it is zero, it is judged that the data write operation instruction has been completed; if it is not zero, it is judged that the data write operation instruction has not been completed; if the data write operation instruction has been completed, enter Step 110 ends the entire process;
  • step 112 the write process 1 is transferred to the write process 2.
  • FIG. 4 is a schematic diagram of a write process 2 of a method for improving a data write speed of a flash memory chip according to the present invention. As shown in FIG. Step 202 of the second:
  • step 202 the controller operates the physical block in step 312, and when the physical block is to perform a write program operation or an erase operation, it sends a program command or an erase command to the physical block, After sending a program command or erase command, determine whether the first flash chip is to be programmed or erased:
  • step 206 the controller sends physical blocks that need to be operated in the first flash memory chip. Program or erase command, send a program command if a program operation is needed, and send an erase command if an erase operation is needed;
  • step 204 the controller determines that the second chip is Whether the operation of the physical block in the flash memory chip ends;
  • step 202 If the operation of the physical block in the second flash memory chip has not ended, the write flow two returns from step 204 to step 202;
  • step 208 If the operation of the physical block in the first flash memory chip has ended, the write flow two proceeds from step 204 to step 208;
  • step 208 the controller subtracts the number of sectors that need to be written (the number of sectors has been obtained in step 302), and determines whether the subtraction result is zero. Whether the data write operation instruction is completed, if it is zero, it is judged that the data write operation instruction has been completed; if it is not zero, it is judged that the data write operation instruction has not been completed; if the data write operation instruction has been completed, enter Step 210 ends the entire process;
  • step 212 If the data write operation instruction is not completed, the process proceeds to step 212, and the write process one is called in step 212.
  • the physical blocks of each two flash memory chips correspond to an odd logical block address and an even logical block address, respectively, and the data write operation is performed in units of two flash memory chips.
  • the data writing operation method of the chip is the same as the method described in the above embodiment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

The present invention provide a data write-in method of flash memory for writing data into two or more flash chips, the method comprise: priority corresponds the physical blocks in the two flash chips to the odd logical block address and the even logical block address respectively; analyse the logical block address which corresponds to the write-in operation from the data write-in instruction; judge the parity of said logical block address and select the corresponding flash chip according to the result; operate the flash chip, detect whether or not the other flash chip needs to be programmed or erased after direct the instruction to program or erase the flash chip, when the other flash chip needs to be programmed or erased, then direct the program or erase instruction to the other flash chip. Using the method of the present invention can program and erase two flash chips simultaneously, thereby increase the data write-in speed greatly.

Description

闪存介质数据写入方法 技术领域  Method for writing flash media data
本发明涉及一种闪存介质数据写入方法, 特别是一种用于对两片 或多片闪存芯片进行数据写入的方法。 背景技术  The present invention relates to a method for writing data to a flash memory medium, and particularly to a method for writing data to two or more flash memory chips. Background technique
目前, 闪存芯片 (Flash) 在移动存储装置中已经获得广泛使用。 但由于闪存芯片本身特性及其现有的数据操作方法所存在的缺陷, 使 得这类移动存储装置的操作速度较低。每片 Flash的存储空间(简称闪 存芯片) 一般划分为多个存储块 (Block, 即物理块), 每个存储块由 多个页 (Page) 构成, 根据闪存芯片特殊的读写特 '性, 数据的写入是 以页为单位进行, 而擦除则只能以块为单位进行, 所以当操作系统依 据用户操作, 通过某个具体的写数据指令向闪存芯片中写入新数据或 对原来已存在的数据进行修改时, 必须先将写数据 it令中的指定地址 所指向的存储块 (下称为原块) 中要保留的数据由原块 "搬迁" 到另 一个存储块 (以下称为新块) 的对应页中, 并将写数据指令要求写入 原块的新数据写入新块的对应页中, 然后将原块擦除, 以新块的逻辑 地址替代原块的逻辑地址, 其中写编程操作与擦除操作是最占用时间 的。  Currently, flash memory chips (Flash) have been widely used in mobile storage devices. However, due to the characteristics of the flash memory chip and the defects in the existing data operation methods, the operation speed of this type of mobile storage device is low. The storage space of each Flash (referred to as a flash memory chip) is generally divided into multiple memory blocks (blocks, that is, physical blocks). Each memory block is composed of multiple pages. According to the special read and write characteristics of the flash memory chip, Data is written in units of pages, while erasure can only be performed in units of blocks. Therefore, according to user operations, the operating system writes new data to the flash chip or writes data to the original by a specific write data instruction. When the existing data is modified, the data to be retained in the storage block pointed to by the specified address in the data write order (hereinafter referred to as the original block) must be "relocated" from the original block to another storage block (hereinafter referred to as To the corresponding page of the new block), and write the new data required by the write data instruction to the original block into the corresponding page of the new block, and then erase the original block, replacing the logical address of the original block with the logical address of the new block Among them, the write program operation and the erase operation are the most time-consuming.
现有的 Flash写操作的流程是: 写编程, 然后等特写编程完成, 待 写编程完成之后进行擦除操作, 再继续下一次写编程。 这种方法对于 一片 Flash是必要的 (本文所述的 "一片" Flash是 #旨对应于一个片选 信号, 如果有两个片选信号则视为 "两片 " Flash), 因为一片 Flash上 仅具有一个片选信号, 无法同时进行两种不同的操作即无法同时编程, 但对于含有多片 Flash的存储设备而言,如果仍然按照、上述写操作流程 进行数据写入就严重制约了闪存芯片的写操作速度, 而目前移动存储 设备的容量越来越大, 采用多片 Flash是必然的趋势, 所以如何提高闪 存芯片的写入速度成为亟待解决的问题。 发明内容 The flow of the existing Flash write operation is: write programming, and then wait for the close-up programming to complete, and then perform the erase operation after the write programming is completed, and then continue to the next write programming. This method is necessary for one piece of Flash (the "one piece of Flash" described in this article is intended to correspond to one chip select signal, if there are two chip select signals, it is regarded as "two pieces of Flash"), because only one With a chip select signal, two different operations cannot be performed at the same time, that is, it cannot be programmed at the same time, but for a storage device containing multiple flashes, if data is still written in accordance with the above write operation flow, the flash memory chip is severely restricted Write operation speed, and currently the capacity of mobile storage devices is getting larger and larger, the use of multiple flash is an inevitable trend, so how to increase the write speed of flash memory chips has become an urgent problem. Summary of the invention
本发明的目的在于提供一种闪存介质数据写入的方法, 以解决闪 存芯片的现有数据操作技术的操作速度和效率低等缺点。  An object of the present invention is to provide a method for writing data in a flash memory medium, so as to solve the disadvantages of low operation speed and efficiency of the existing data operation technology of the flash memory chip.
本发明的闪存介质数据写入方法是通过以下技术方案实现: 所述方法包括: 将两片闪存芯片中的物理块分别对应于奇数逻辑 块地址和偶数逻辑块地址; 从数据写入指令中解析出写操作对应的逻 辑块地址; 判断所述逻辑块地址的奇偶性并根据所述逻辑块地址的奇 偶性在所述两片闪存芯片中选择对应的闪存芯片; 操作所述对应的闪 存芯片中与所述逻辑块地址对应的物理块, 对所述物理块发出编程或 擦除命令后检测所述两片闪存芯片中的另一片是否需要进行编程或擦 除操作, 当所述另一片闪存芯片需要进行编程或擦除操作时, 则向所 述另一片闪存芯片中需要操作的物理块发出编程或操作命令。  The flash media data writing method of the present invention is implemented by the following technical solutions: The method includes: corresponding physical blocks in two flash memory chips respectively to an odd logical block address and an even logical block address; parsing from a data write instruction Write the logical block address corresponding to the write operation; determine the parity of the logical block address and select the corresponding flash chip among the two flash chips according to the parity of the logical block address; operate the corresponding flash chip A physical block corresponding to the logical block address is used to detect whether the other one of the two flash memory chips needs to be programmed or erased after issuing a program or erase command to the physical block. When a programming or erasing operation is required, a programming or operation command is issued to the physical block that needs to be operated in the another piece of flash memory chip.
使用本发明的方法可使得对一片闪存芯片进行编程操作或擦除操 作的同时对另一片闪存芯片进行编程或擦除操作, 从而大大节省了写 操作的时间, 提高了数据写入的速度。  By using the method of the present invention, a programming operation or an erasing operation can be performed on one flash memory chip while a programming or erasing operation is performed on another flash memory chip, thereby greatly saving the time of a writing operation and increasing the speed of data writing.
以下参照附图对本发明的具体实施方式的具体而详细的说明将会 使本领域普通技术人员理解本发明的思想。 附图的简要说明  The following detailed and detailed description of specific embodiments of the present invention with reference to the accompanying drawings will enable those of ordinary skill in the art to understand the idea of the present invention. Brief description of the drawings
图 1 是本发明闪存介质数据写入方法的实施例中两片闪存芯片中 的物理块所对应的逻辑块地址分布的示意图;  FIG. 1 is a schematic diagram of a logical block address distribution corresponding to a physical block in two flash memory chips in an embodiment of a flash media data writing method according to an embodiment of the present invention;
图 2是本发明闪存介质数据写入方法的总流程示意图;  FIG. 2 is a schematic flowchart of a method for writing data into a flash memory medium according to the present invention; FIG.
图 3是本发明闪存介质数据写入方法的流程一的示意图; 图 4是本发明闪存介质数据写入方法的流程二的示意图。 具体实施方式  FIG. 3 is a schematic diagram of the first process of the flash media data writing method of the present invention; FIG. 4 is a schematic diagram of the second process of the flash media data writing method of the present invention. detailed description
一种闪存介质数据写入方法, 用于提高对两片或多片闪存芯片进 行数据写入的速度, 所述的两片闪存芯片指对应两个片选信号的闪存 芯片, 包括物理上为一片但含有两个片选信号的闪存芯片。  A flash media data writing method is used to improve the speed of data writing to two or more flash memory chips. The two flash memory chips refer to flash memory chips corresponding to two chip select signals, including a physical chip. But the flash chip contains two chip select signals.
本实施例以含有两片闪存芯片 (Flash) 的存储装置中的数据写入 操作为例进行说明, 所述存储装置包括控制器和两片闪存芯片。 请参阅图 1,图 1是本发明闪存介质数据写入方法中两片闪存芯片 的物理块所对应的逻辑块地址分布的示意图, 如图 1 所示, 将两片闪 存芯片中的物理块分别对应于奇数逻辑块地址和偶数逻辑块地址, 将 只含有奇数逻辑块地址的闪存芯片称为第一片闪存芯片, 将只含有偶 数逻辑块地址的闪存芯片称为第二片闪存芯片, 所述第一片闪存芯片 的奇数逻辑块地址与所述第二片闪存芯片的偶数逻辑块地址可组合成 连续的逻辑块地址。 This embodiment is described by using an example of a data writing operation in a storage device including two flash memory chips (Flash), where the storage device includes a controller and two flash memory chips. Please refer to FIG. 1. FIG. 1 is a schematic diagram of the logical block address distribution corresponding to the physical blocks of two flash chips in the flash media data writing method of the present invention. As shown in FIG. 1, the physical blocks in the two flash chips are respectively Corresponding to an odd logical block address and an even logical block address, a flash memory chip containing only the odd logical block address is referred to as a first flash memory chip, and a flash memory chip containing only an even logical block address is referred to as a second flash memory chip. The odd logical block address of the first flash memory chip and the even logical block address of the second flash memory chip can be combined into a continuous logical block address.
请参阅图 2, 图 2为本发明的总流程示意图, 所述控制器从主机接 收到数据写操作指令后:  Please refer to FIG. 2. FIG. 2 is a schematic diagram of the overall process of the present invention. After the controller receives a data write operation instruction from the host:
总流程开始, 即步骤 300;  The overall process begins, step 300;
之后总流程进入步骤 302:所述控制器根据所述数据写操作指令得 到写操作指令的起始逻辑地址和需要写入的扇区数目;  After that, the overall flow proceeds to step 302: the controller obtains the start logical address of the write operation instruction and the number of sectors to be written according to the data write operation instruction;
之后进入步骤 304,在步骤 304中解析步骤 302中的所述起始逻辑 地址得到需要写入的逻辑块地址;  After that, it proceeds to step 304, where the starting logical address in step 302 is parsed to obtain the logical block address to be written;
之后进入步骤 306, 判断步骤 304中的所述逻辑块地址的奇偶性: 如果所述逻辑块地址为奇数则进入步骤 308,步骤 308中将数据写 入管理奇数逻辑块地址的第一片闪存芯片中与所述逻辑块地址对应的 物理块,然后流程从步骤 308进入步骤 310, 步骤 310中将调用写流程 如果所述逻辑块地址为偶数则进入步骤 312,步骤 312中将数据写 入管理奇数逻辑块地址的第二片闪存芯片中与所述逻辑块地址对应的 物理块,然后流程从步骤 312进入步骤 314, 步骤 314中将调用写流程 请结合参阅图 3,图 3是本发明闪存介质数据写入方法的写流程一 的示意图, 如图 3所示, 本发明的工作流程由总流程的步骤 310转入 写流程一的步骤 102:  Then proceed to step 306 to determine the parity of the logical block address in step 304: If the logical block address is odd, proceed to step 308, and in step 308 write data to the first flash memory chip that manages the odd logical block address The physical block corresponding to the logical block address, and then the flow proceeds from step 308 to step 310. In step 310, a write process is called. If the logical block address is an even number, it proceeds to step 312. In step 312, data is written to the management odd number. The physical block corresponding to the logical block address in the second flash chip of the logical block address, and then the process proceeds from step 312 to step 314. In step 314, the write process is called. Please refer to FIG. 3, which is a flash memory medium of the present invention. Schematic diagram of write process one of the data write method, as shown in FIG. 3, the work flow of the present invention is transferred from step 310 of the general process to step 102 of write process one:
在步骤 102中, 所述控制器对步骤 308中的所述物理块进行操作, 包括发送编程与擦除命令, 等到所述物理块要进行编程或擦除操作时, 对所述物理块发送编程或擦除命令, 在发送编程或擦除命令后判断第 二片闪存芯片是否要进行编程或擦除操作;  In step 102, the controller operates the physical block in step 308, including sending a programming and erasing command, and sending a program to the physical block when the physical block is to be programmed or erased. Or erase command, to determine whether a second flash memory chip is to be programmed or erased after sending the program or erase command;
如果所述第二片闪存芯片需要进行编程或擦除操作, 则所述写流 程一由步骤 102进入步骤 106,在步骤 106中, 所述控制器对所述第二 片闪存芯片中需要操作的物理块发送编程或擦除命令, 如需要进行编 程操作则发送编程命令, 如需要进行擦除操作则发送擦除命令; If the second flash chip needs to be programmed or erased, the write stream Process one proceeds from step 102 to step 106. In step 106, the controller sends a programming or erasing command to a physical block in the second flash memory chip that needs to be operated, and sends a programming command if a programming operation is needed, such as Send an erase command if an erase operation is required;
如果所述第二片闪存芯片不需要进行擦除操作, 则所述流程一由 步骤 102进入步骤 104,在步骤 104中,所述控制器判断所述第一片闪 存芯片中的所述物理块的操作是否结束;  If the second flash memory chip does not need to be erased, the process proceeds from step 102 to step 104. In step 104, the controller determines the physical block in the first flash memory chip. Whether the operation ends
如果所述第一片闪存芯片中的所述物理块的操作尚未结束则所述 写流程一由步骤 104返回到步骤 102;  If the operation of the physical block in the first flash memory chip has not ended, the write process returns from step 104 to step 102;
如果所述第一片闪存芯片中的所述物理块的操作已经结束则所述 流程一由步骤 104进入步骤 108;  If the operation of the physical block in the first flash memory chip has ended, the process proceeds from step 104 to step 108;
在步骤 108 中, 所述控制器将需要写入的扇区数目 (该扇区数目 已在步骤 302 中获取) 减去已写入的扇区数目, 以相减后的结果是否 为零来判断所述数据写操作指令是否完成, 若为零则判断所述数据写 操作指令已完成, 若不为零则判断所述数据写操作指令尚未完成; 如果所述数据写操作指令已经完成, 则进入步骤 110结束整个流 程;  In step 108, the controller subtracts the number of sectors written (the number of sectors has been obtained in step 302), and determines whether the subtraction result is zero. Whether the data write operation instruction is completed, if it is zero, it is judged that the data write operation instruction has been completed; if it is not zero, it is judged that the data write operation instruction has not been completed; if the data write operation instruction has been completed, enter Step 110 ends the entire process;
如果所述数据写操作指令未完成, 则进入步骤 112, 在步骤 112中 写流程一转入写流程二。  If the data write operation instruction is not completed, the process proceeds to step 112. In step 112, the write process 1 is transferred to the write process 2.
请结合参阅图 4,图 4是本发明提高闪存芯片的数据写入速度的方 法的写流程二的示意图, 如图 4所示: 本发明的工作流程由写流程一 的步骤 310转入写流程二的步骤 202:  Please refer to FIG. 4. FIG. 4 is a schematic diagram of a write process 2 of a method for improving a data write speed of a flash memory chip according to the present invention. As shown in FIG. Step 202 of the second:
在步骤 202中, 所述控制器对步骤 312中的所述物理块进行操作, 等到所述物理块要进行写编程操作或擦除操作时, 对所述物理块发送 编程命令或擦除命令, 发送编程命令或擦除命令后判断第一片闪存芯 片是否要进行编程或擦除操作:  In step 202, the controller operates the physical block in step 312, and when the physical block is to perform a write program operation or an erase operation, it sends a program command or an erase command to the physical block, After sending a program command or erase command, determine whether the first flash chip is to be programmed or erased:
如果所述第一片闪存芯片需要进行擦除操作, 则所述流程一由步 骤 202进入步骤 206,在步骤 206中, 所述控制器对所述第一片闪存芯 片中需要操作的物理块发送编程或擦除命令, 如需要进行编程操作则 发送编程命令, 如需要进行擦除操作则发送擦除命令;  If the first flash memory chip needs to be erased, the process starts from step 202 to step 206. In step 206, the controller sends physical blocks that need to be operated in the first flash memory chip. Program or erase command, send a program command if a program operation is needed, and send an erase command if an erase operation is needed;
如果所述第一片闪存芯片不需要进行擦除操作, 则所述写流程二 由步骤 202进入步骤 204,在步骤 204中, 所述控制器判断所述第二片 闪存芯片中的所述物理块的操作是否结束; If the first flash chip does not need to perform an erasing operation, the write process 2 proceeds from step 202 to step 204. In step 204, the controller determines that the second chip is Whether the operation of the physical block in the flash memory chip ends;
如果所述第二片闪存芯片中的所述物理块的操作尚未结束则所述 写流程二由步骤 204返回到步骤 202;  If the operation of the physical block in the second flash memory chip has not ended, the write flow two returns from step 204 to step 202;
如果所述第一片闪存芯片中的所述物理块的操作已经结束则所述 写流程二由步骤 204进入步骤 208;  If the operation of the physical block in the first flash memory chip has ended, the write flow two proceeds from step 204 to step 208;
在步骤 208 中, 所述控制器将需要写入的扇区数目 (该扇区数目 已在步骤 302 中获取) 减去已写入的扇区数目, 以相减后的结果是否 为零来判断所述数据写操作指令是否完成, 若为零则判断所述数据写 操作指令已完成, 若不为零则判断所述数据写操作指令尚未完成; 如果所述数据写操作指令已经完成, 则进入步骤 210结束整个流 程;  In step 208, the controller subtracts the number of sectors that need to be written (the number of sectors has been obtained in step 302), and determines whether the subtraction result is zero. Whether the data write operation instruction is completed, if it is zero, it is judged that the data write operation instruction has been completed; if it is not zero, it is judged that the data write operation instruction has not been completed; if the data write operation instruction has been completed, enter Step 210 ends the entire process;
如果所述数据写操作指令未完成, 则进入步骤 212, 在步骤 212 中调用所述写流程一。  If the data write operation instruction is not completed, the process proceeds to step 212, and the write process one is called in step 212.
当闪存装置中含有多片闪存芯片时, 将每两片闪存芯片的物理块 分别对应于奇数逻辑块地址和偶数逻辑块地址, 数据写入操作以两片 闪存芯片为单位进行, 对两片闪存芯片的数据写入操作方法与上述实 施例所述方法相同。  When a flash memory device contains multiple flash memory chips, the physical blocks of each two flash memory chips correspond to an odd logical block address and an even logical block address, respectively, and the data write operation is performed in units of two flash memory chips. The data writing operation method of the chip is the same as the method described in the above embodiment.
以上所述仅是本发明的优选实施方式, 应当指出, 对于本技术领 域的普通技术人员来说, 在不脱离本发明原理的前提下, 还可以作出 若干改进和润饰, 这些改进和润饰也应视为本发明的保护范围。  The above are only preferred embodiments of the present invention. It should be noted that, for those of ordinary skill in the art, without departing from the principle of the present invention, several improvements and retouches can be made. These improvements and retouches should also be made. It is regarded as the protection scope of the present invention.

Claims

权利要求书 Claim
1. 一种闪存介质数据写入方法, 所述闪存介质至少包含两片闪存芯 片, 所述方法包括- a.将两片闪存芯片的物理块分别对应于奇数逻辑块地址和偶数逻 辑块地址; ' 1. A flash media data writing method, said flash media comprising at least two flash chips, said method comprising-a. Physical blocks of two flash chips corresponding to odd logical block addresses and even logical block addresses respectively; '
b.接收数据写入指令并从所述数据写入指令中解析出写操作对应 的起始逻辑地址;  b. Receive a data write instruction and parse the starting logical address corresponding to the write operation from the data write instruction;
c.根据所述起始逻辑地址得到需要写入的逻辑块地址, 判断需要 写入的逻辑块地址的奇偶性, 根据所述需要写入的逻辑块地址的奇偶 性在所述两片闪存芯片之间选择对应的闪存芯片;  c. obtaining the logical block address to be written according to the starting logical address, determining the parity of the logical block address to be written, and according to the parity of the logical block address to be written in the two flash memory chips Choose the corresponding flash memory chip;
d.对所述对应的闪存芯片中与所述逻辑块地址对应的物理块发出 编程或擦除命令后, 同时检测另一片闪存芯片是否需要进行编程或擦 除操作。  d. After issuing a program or erase command to a physical block corresponding to the logical block address in the corresponding flash memory chip, it is simultaneously detected whether another flash memory chip needs to be programmed or erased.
2. 如权利要求 1所述的闪存介质数据写入方法, 其特征在于, 还包 括步骤: 2. The flash media data writing method according to claim 1, further comprising the step of:
e.如果所述另一片闪存芯片需要进行编程或擦除操作, 则向所述 另一片闪存芯片发出编程或擦除命令。  e. If a programming or erasing operation is required for the another flash memory chip, a program or erasing command is issued to the another flash memory chip.
3. 如权利要求 1所述的闪存介质数据写入方法, 其特征在于, 还包 括步骤: 3. The flash media data writing method according to claim 1, further comprising the steps:
f.如果所述另一片闪存芯片不需要进行编程或擦除操作,则判断步 骤 d中对所述对应的物理块的操作是否完成。  f. If the other flash memory chip does not need to be programmed or erased, determine whether the operation on the corresponding physical block in step d is completed.
4. 如权利要求 3所述的闪存介质数据写入方法, 其特征在于: 还包 括如果对所述对应的物理块的操作已完成, 则判断所述数据写入指令 是否已完成; 对所述对应的物理块的操作未完成则返回到步骤 d。 4. The flash media data writing method according to claim 3, further comprising: if an operation on the corresponding physical block has been completed, determining whether the data writing instruction has been completed; and If the operation of the corresponding physical block is not completed, the process returns to step d.
5. 如权利要求 3所述的闪存介质数据写入方法, 其特征在于: 如果 所述数据写入指令已完成则返回到步骤 b;如果所述数据写入指令尚未 完成则返回步骤 C 5. The flash media data writing method according to claim 3, characterized in that: if the data writing instruction has been completed, return to step b; if the data writing instruction has not been completed Return to step C when done
6. 如权利要求 4所述的闪存介质数据写入方法, 其特征在于: 所述 步骤 b 中进一步包括从所述数据写操作指令中得到需要写入的扇区数 。  6. The flash media data writing method according to claim 4, wherein: said step b further comprises obtaining the number of sectors to be written from said data write operation instruction.
7. 如权利要求 6所述的闪存介质数据写入方法, 其特征在于: 所述 方法进一步包括将需要写入的扇区数目减去已写入的扇区数目来判断 所述数据写操作指令是否已完成。 7. The flash media data writing method according to claim 6, further comprising: determining the data write operation instruction by subtracting the number of sectors that need to be written from the number of sectors that need to be written. Has it been completed?
PCT/CN2004/001446 2003-12-31 2004-12-14 Data write-in method for flash memory WO2005064617A1 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US10/584,778 US20070118681A1 (en) 2003-12-31 2004-12-14 Data write-in method for flash memory
DE602004019248T DE602004019248D1 (en) 2003-12-31 2004-12-14
JP2006545886A JP4921174B2 (en) 2003-12-31 2004-12-14 How to write data to flash memory
KR1020067015286A KR101087313B1 (en) 2003-12-31 2004-12-14 Data write-in method for flash memory
EP04802459A EP1701358B1 (en) 2003-12-31 2004-12-14 Data write-in method for flash memory

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CNB2003101177142A CN100433195C (en) 2003-12-31 2003-12-31 Flash memory medium data writing method
CN200310117714.2 2003-12-31

Publications (1)

Publication Number Publication Date
WO2005064617A1 true WO2005064617A1 (en) 2005-07-14

Family

ID=34716082

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2004/001446 WO2005064617A1 (en) 2003-12-31 2004-12-14 Data write-in method for flash memory

Country Status (8)

Country Link
US (1) US20070118681A1 (en)
EP (1) EP1701358B1 (en)
JP (1) JP4921174B2 (en)
KR (1) KR101087313B1 (en)
CN (1) CN100433195C (en)
AT (1) ATE421758T1 (en)
DE (1) DE602004019248D1 (en)
WO (1) WO2005064617A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106844226A (en) * 2016-12-31 2017-06-13 昊宏广泰(北京)科技有限公司 Bandwidth carrier based on norflash is from node control method
CN114816833A (en) * 2022-04-15 2022-07-29 巨翊科技(上海)有限公司 Flash data writing method, device and system

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100410864C (en) * 2004-05-31 2008-08-13 深圳市朗科科技有限公司 Data distribution method for improving data access speed
KR100669351B1 (en) * 2005-07-29 2007-01-16 삼성전자주식회사 Method and apparatus for programming multi level cell flash memory device
US7130222B1 (en) * 2005-09-26 2006-10-31 Macronix International Co., Ltd. Nonvolatile memory with program while program verify
KR100769776B1 (en) * 2006-09-29 2007-10-24 주식회사 하이닉스반도체 A method for programming a nand flash memory device
KR100889781B1 (en) * 2007-04-30 2009-03-20 삼성전자주식회사 Memory system storing multi-bit data, program method thereof, and computing system including the same
TWI381384B (en) * 2008-03-11 2013-01-01 Netac Technology Co Ltd A method for improving accessing speed of flash memory medium
CN101533663B (en) * 2008-03-11 2014-07-16 深圳市朗科科技股份有限公司 Method for improving flash memory medium data access speed
CN101571832B (en) * 2008-04-29 2013-07-17 群联电子股份有限公司 Data writing method, quick flashing memory system using same and a controller thereof
CN101488364B (en) * 2009-02-10 2012-06-27 成都市华为赛门铁克科技有限公司 Flash memory control method, apparatus and system
CN101540201B (en) * 2009-04-22 2012-06-27 华为技术有限公司 Testing method and device for multi-bank flash-memory
CN102541755B (en) * 2010-12-29 2015-09-30 深圳市硅格半导体有限公司 The method of flash memories and reception data thereof
CN102945208B (en) * 2012-10-25 2016-09-14 记忆科技(深圳)有限公司 Multiuser hard disk system and its implementation
US9658788B2 (en) 2014-05-28 2017-05-23 Sandisk Technologies Llc Systems and methods for immediate physical erasure of data stored in a memory system in response to a user command
CN112347524B (en) * 2020-10-13 2024-07-02 深圳市宏旺微电子有限公司 Flash memory programming method and device and electronic equipment
CN112256203B (en) * 2020-10-26 2023-04-28 山东盖特航空科技有限公司 Writing method, device, equipment, medium and system of FLASH memory
CN113111013B (en) * 2021-04-19 2023-09-01 深圳芯邦科技股份有限公司 Flash memory data block binding method, device and medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1362708A (en) * 2001-01-02 2002-08-07 吴秀林 Read-write method for flash memory chip
JP2003085039A (en) * 2001-09-11 2003-03-20 Sanmei Electric Co Ltd Data writ method in flash memory
JP2003132687A (en) * 2001-10-25 2003-05-09 Kyocera Corp Write-in method for flash rom

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0731582B2 (en) * 1990-06-21 1995-04-10 インターナショナル・ビジネス・マシーンズ・コーポレイション Method and apparatus for recovering parity protected data
JP2768618B2 (en) * 1992-08-28 1998-06-25 シャープ株式会社 Semiconductor disk device
JP3105092B2 (en) * 1992-10-06 2000-10-30 株式会社東芝 Semiconductor memory device
US5453957A (en) * 1993-09-17 1995-09-26 Cypress Semiconductor Corp. Memory architecture for burst mode access
JP3308684B2 (en) * 1993-11-15 2002-07-29 株式会社日立国際電気 Voice flight data recorder
US5671439A (en) * 1995-01-10 1997-09-23 Micron Electronics, Inc. Multi-drive virtual mass storage device and method of operating same
JPH08263361A (en) * 1995-03-23 1996-10-11 Mitsubishi Electric Corp Flash memory card
US5671388A (en) * 1995-05-03 1997-09-23 Intel Corporation Method and apparatus for performing write operations in multi-level cell storage device
US6081878A (en) * 1997-03-31 2000-06-27 Lexar Media, Inc. Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
JP3550293B2 (en) * 1997-12-26 2004-08-04 株式会社ルネサステクノロジ High-speed rewritable storage device using nonvolatile memory and data rewriting method of the storage device
JP2000259448A (en) * 1999-03-11 2000-09-22 Sharp Corp Program debugging device
US6141249A (en) * 1999-04-01 2000-10-31 Lexar Media, Inc. Organization of blocks within a nonvolatile memory unit to effectively decrease sector write operation time
JP3938842B2 (en) * 2000-12-04 2007-06-27 富士通株式会社 Semiconductor memory device
JP4059473B2 (en) * 2001-08-09 2008-03-12 株式会社ルネサステクノロジ Memory card and memory controller
GB0123416D0 (en) * 2001-09-28 2001-11-21 Memquest Ltd Non-volatile memory control
JP2003330791A (en) * 2002-05-17 2003-11-21 Matsushita Electric Ind Co Ltd Flash memory control device
US7136986B2 (en) * 2002-11-29 2006-11-14 Ramos Technology Co., Ltd. Apparatus and method for controlling flash memories
US20050005058A1 (en) * 2003-07-01 2005-01-06 Wee-Kuan Gan Interleaving management method for upgrading data processing speed
US20050010717A1 (en) * 2003-07-07 2005-01-13 Soo-Ching Ng Access and data management method using double parallel tracks for flash memory cells
TW200515147A (en) * 2003-10-17 2005-05-01 Matsushita Electric Ind Co Ltd Semiconductor memory device, controller, and read/write control method thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1362708A (en) * 2001-01-02 2002-08-07 吴秀林 Read-write method for flash memory chip
JP2003085039A (en) * 2001-09-11 2003-03-20 Sanmei Electric Co Ltd Data writ method in flash memory
JP2003132687A (en) * 2001-10-25 2003-05-09 Kyocera Corp Write-in method for flash rom

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106844226A (en) * 2016-12-31 2017-06-13 昊宏广泰(北京)科技有限公司 Bandwidth carrier based on norflash is from node control method
CN114816833A (en) * 2022-04-15 2022-07-29 巨翊科技(上海)有限公司 Flash data writing method, device and system
CN114816833B (en) * 2022-04-15 2023-07-18 巨翊科技(上海)有限公司 Writing method, device and system of flash data

Also Published As

Publication number Publication date
DE602004019248D1 (en) 2009-03-12
ATE421758T1 (en) 2009-02-15
US20070118681A1 (en) 2007-05-24
CN1635580A (en) 2005-07-06
KR101087313B1 (en) 2011-11-25
CN100433195C (en) 2008-11-12
EP1701358B1 (en) 2009-01-21
JP2007517295A (en) 2007-06-28
EP1701358A4 (en) 2007-03-28
EP1701358A1 (en) 2006-09-13
KR20060133561A (en) 2006-12-26
JP4921174B2 (en) 2012-04-25

Similar Documents

Publication Publication Date Title
WO2005064617A1 (en) Data write-in method for flash memory
US7631142B2 (en) Method and apparatus for selectively storing data into cache or nonvolatile memory
EP2306321B1 (en) Increasing memory performance in flash memory devices by performing simultaneous write operation to multiple devices
US8234466B2 (en) Flash memory storage system applying SLC NAND flash memory and MLC NAND flash memory and data writing method thereof
US8055873B2 (en) Data writing method for flash memory, and controller and system using the same
JP5612514B2 (en) Nonvolatile memory controller and nonvolatile storage device
US20080098193A1 (en) Methods and Apparatus for Reallocating Addressable Spaces Within Memory Devices
US7610442B2 (en) Dual journaling store method and storage medium thereof
US20100011154A1 (en) Data accessing method for flash memory and storage system and controller using the same
US7564721B2 (en) Method and apparatus for improving storage performance using a background erase
JP2000067574A (en) Semiconductor memory
JPWO2005029311A1 (en) Semiconductor memory card, semiconductor memory control device, and semiconductor memory control method
CN111108488B (en) Memory block recovery method and device
US8074128B2 (en) Block management and replacement method, flash memory storage system and controller using the same
US7519764B2 (en) Apparatus and method for detecting data validity in flash memory
CN103389941A (en) Memorizer formatting method, memorizer controller and memorizer memory device
JP2012521032A (en) SSD controller and operation method of SSD controller
JPH11282765A (en) External storage device using flash memory
JP4594944B2 (en) Memory control device
US20070250661A1 (en) Data recording apparatus and method of controlling the same
CN107229413B (en) Memory management method, memory control circuit unit and memory storage device
JP2003233994A (en) Control system for nonvolatile semiconductor memory chip
TWI232466B (en) Method for updating data of non-volatile memory
JP2003263894A (en) Method for controlling nonvolatile semiconductor memory device
JP3865530B2 (en) Nonvolatile semiconductor memory and semiconductor memory device

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

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

AL Designated countries for regional patents

Kind code of ref document: A1

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

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

Ref document number: 2006545886

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Ref document number: DE

WWE Wipo information: entry into national phase

Ref document number: 2004802459

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1020067015286

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2004802459

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1020067015286

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2007118681

Country of ref document: US

Ref document number: 10584778

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 10584778

Country of ref document: US