CN101789259B - Hierarchical and hierarchical data processing method and device applied to flash memory - Google Patents

Hierarchical and hierarchical data processing method and device applied to flash memory Download PDF

Info

Publication number
CN101789259B
CN101789259B CN 200910003390 CN200910003390A CN101789259B CN 101789259 B CN101789259 B CN 101789259B CN 200910003390 CN200910003390 CN 200910003390 CN 200910003390 A CN200910003390 A CN 200910003390A CN 101789259 B CN101789259 B CN 101789259B
Authority
CN
China
Prior art keywords
data
flash memory
segment
classified
level
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN 200910003390
Other languages
Chinese (zh)
Other versions
CN101789259A (en
Inventor
许进东
张琮民
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Asolid Technology Co Ltd
Original Assignee
Innostor Tech Corp
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 Innostor Tech Corp filed Critical Innostor Tech Corp
Priority to CN 200910003390 priority Critical patent/CN101789259B/en
Publication of CN101789259A publication Critical patent/CN101789259A/en
Application granted granted Critical
Publication of CN101789259B publication Critical patent/CN101789259B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System (AREA)

Abstract

A method and apparatus for hierarchical processing of data for flash memory. The method includes communicating between the host and the flash memory via a high level translation layer and a low level processing layer, respectively. The high-level translation layer is responsible for receiving commands and logical addresses of the master and converting the received logical addresses into physical addresses of the flash memory. The low-level processing layer is responsible for controlling the storage unit corresponding to the flash memory according to the instruction and the physical address transmitted by the high-level translation layer so as to process data. Since the low-level processing layer is disposed between the high-level translation layer and the flash memory, the high-level translation layer is independent of the flash memory architecture, and does not need to be redesigned due to the replacement of the flash memory.

Description

应用于快闪存储器的阶层化分层处理数据的方法及其装置Hierarchical and hierarchical data processing method and device applied to flash memory

技术领域 technical field

本发明涉及一种应用于快闪存储器处理数据的方法及相关快闪存储器装置,更明确地说,涉及一种应用于快闪存储器的阶层化分层处理数据的方法及相关快闪存储器装置。The present invention relates to a method for processing data applied to a flash memory and a related flash memory device, more specifically, to a method for hierarchically and hierarchically processing data applied to a flash memory and a related flash memory device.

背景技术 Background technique

快闪存储器(Flash memory)是一种非易失性固态存储存储器(Non-violate solid state memory)。快闪存储器相较于传统的非易失性固态存储存储器,具有单位存储成本低、读写速度快的优点。另一方面,快闪存储器相较于硬盘而言,有较佳的抗震性。也就是说,存储的数据较不会因震动而损坏。由于快闪存储器具有以上特性,因此常被应用在可携式装置(如数字随身听、数字相机、手机、存储卡以及USB随身盘等)里面作为存储介质。Flash memory (Flash memory) is a non-volatile solid state memory (Non-violate solid state memory). Compared with traditional non-volatile solid-state storage memory, flash memory has the advantages of low unit storage cost and fast read and write speed. On the other hand, flash memory has better shock resistance than hard disk. That is, stored data is less likely to be damaged by shock. Because flash memory has the above characteristics, it is often used as a storage medium in portable devices (such as digital players, digital cameras, mobile phones, memory cards, and USB flash drives, etc.).

快闪存储器有很多不同的类型,比如说单阶存储单元(Single LevelCell,SLC)小已分类单独区块(small block)快闪存储器、单阶存储单元大已分类单独区块(large block)快闪存储器,以及多阶存储单元(Multi-Level Cell,MLC)大已分类单独区块(large block)快闪存储器...等。快闪存储器有很多不同的制造厂商,比如说Samsung、Hynix及Toshiba...等。不同类型的快闪存储器或不同制造厂商的快闪存储器具有不同的结构与不同的控制方法。举例而言,SLC小已分类单独区块快闪存储器的每一已分类单独区块包含32个已分类区块分页(page);每一已分类区块分页包含528字节(byte),其中前512字节为数据区(data area),而后16字节为保留区(spare area)。SLC大已分类单独区块快闪存储器的每一已分类单独区块包含64个已分类区块分页;每一已分类区块分页包含2112字节,其中前2048字节为数据区,而后64字节为保留区。There are many different types of flash memory, such as single-level storage unit (Single Level Cell, SLC) small classified single block (small block) flash memory, single-level storage unit large classified single block (large block) flash memory Flash memory, and multi-level cell (Multi-Level Cell, MLC) large block flash memory...etc. There are many different manufacturers of flash memory, such as Samsung, Hynix and Toshiba...etc. Different types of flash memories or flash memories of different manufacturers have different structures and different control methods. For example, each classified individual block of the SLC small classified individual block flash memory includes 32 classified block pages (page); each classified block page includes 528 bytes (byte), wherein The first 512 bytes are the data area, and the last 16 bytes are the spare area. Each classified individual block of the SLC large classified individual block flash memory includes 64 classified block pages; each classified block page contains 2112 bytes, of which the first 2048 bytes are the data area, and then 64 Bytes are reserved.

请参考图1。图1为说明先前技术的快闪存储器转译层(Flash TranslationLayer)FTL的示意图。快闪存储器转译层FTL介于一主控端H与一快闪存储器MF1之间。Please refer to Figure 1. FIG. 1 is a schematic diagram illustrating a prior art flash translation layer (Flash Translation Layer) FTL. The flash memory translation layer FTL is between a host H and a flash memory MF1 .

快闪存储器MF1包含(M×N)个已分类单独区块BL11~BLMN。快闪存储器转译层FTL用以接收或回应来自主控端H的要求,而对快闪存储器MF1进行数据处理动作。此外,主控端H可为一用户端应用程序及/或文件系统。The flash memory MF1 includes (M×N) classified individual blocks BL 11 ˜BL MN . The flash memory translation layer FTL is used for receiving or responding to the request from the host H to perform data processing on the flash memory MF1 . In addition, the host H can be a client application program and/or a file system.

快闪存储器转译层FTL读取快闪存储器MF1的硬件架构信息DSPEC。更明确地说,快闪存储器转译层FTL读取快闪存储器MF1的型号IDFLASH以获得有关快闪存储器MF1的类型(如SLC大已分类单独区块)、制造厂商(如Samsung)、结构(如已分类单独区块数量)、容量、控制方法...等的硬件架构信息DSPEC。快闪存储器转译层FTL,根据硬件架构信息DSPEC所描述的快闪存储器MF1的结构,以转换逻辑地址(Logic Address,LA)为一对应于快闪存储器MF1的一实体存储单元的实体地址(Physical Address,PA)。然后,快闪存储器转译层FTL根据所接收的硬件架构信息DSPEC,找到对应于快闪存储器MF1的控制方法,以控制快闪存储器MF1来进行数据处理动作。如此一来,主控端H便可通过快闪存储器转译层FTL,要求快闪存储器MF1,进行数据处理动作。举例来说,当主控端H对快闪存储器MF1发出数据处理动作的要求时且传送逻辑地址为「P」(表一数值)至快闪存储器转译层FTL时,快闪存储器转译层FTL会转译逻辑地址「P」为实体地址「X」,而要求快闪存储器MF1中的已分类独立区块BLX,进行数据处理的动作。The flash memory translation layer FTL reads the hardware architecture information D SPEC of the flash memory M F1 . More specifically, the flash memory translation layer FTL reads the model ID FLASH of the flash memory MF1 to obtain information about the type of the flash memory MF1 (such as SLC or separate block), the manufacturer (such as Samsung), Hardware architecture information D SPEC of structure (such as the number of classified individual blocks), capacity, control method, etc. The flash memory translation layer FTL, according to the structure of the flash memory MF1 described in the hardware architecture information D SPEC , converts the logical address (Logic Address, LA) into an entity corresponding to a physical storage unit of the flash memory MF1 Address (Physical Address, PA). Then, the flash memory translation layer FTL finds a control method corresponding to the flash memory M F1 according to the received hardware architecture information D SPEC , so as to control the flash memory M F1 to perform data processing actions. In this way, the host H can request the flash memory MF1 to perform data processing through the flash memory translation layer FTL. For example, when the host H issues a data processing action request to the flash memory MF1 and transmits the logical address "P" (value in Table 1) to the flash memory translation layer FTL, the flash memory translation layer FTL It will translate the logical address "P" into the physical address "X", and request the classified independent block BL X in the flash memory MF1 to perform data processing.

值得注意的是,由于快闪存储器转译层FTL需直接控制快闪存储器MF1,因此,快闪存储器转译层FTL,需根据快闪存储器MF1的控制方法与结构来设计。然而,不同制造厂商的快闪存储器或不同类型的快闪存储器具有不同的控制方法与结构。因此,每当快闪存储器MF1(如Samsung生产的快闪存储器)更换为另一新型快闪存储器MF2(如Toshiba生产的快闪存储器)时,快闪存储器转译层FTL,就需要根据新型快闪存储器MF2的控制方法与结构,来重新设计。如此一来,便会造成使用者极大的不便。It should be noted that since the flash memory translation layer FTL needs to directly control the flash memory M F1 , the flash memory translation layer FTL needs to be designed according to the control method and structure of the flash memory M F1 . However, flash memories from different manufacturers or different types of flash memories have different control methods and structures. Therefore, whenever the flash memory MF1 (such as the flash memory produced by Samsung) is replaced with another new type of flash memory MF2 (such as the flash memory produced by Toshiba), the flash memory translation layer FTL needs to be based on the new type The control method and structure of the flash memory MF2 are redesigned. As a result, great inconvenience will be caused to the user.

发明内容 Contents of the invention

本发明提供一种应用于一快闪存储器的阶层化分层处理数据的方法。该方法包含将一逻辑地址传送至一高阶转译层以要求在该快闪存储器中进行一数据处理动作、由一低阶处理层取得属于该快闪存储器的一硬件架构信息以将该硬件架构信息传送至该高阶转译层、由该高阶转译层根据该硬件架构信息,在该快闪存储器中,设置一组对应至该逻辑地址的实体存储单元、由该高阶转译层根据该硬件架构信息,找出在该组对应至该逻辑地址的实体存储单元中,有一可供进行数据处理动作的实体存储单元、由该高阶转译层根据该硬件架构信息,决定一数据处理流程,以将该逻辑地址转换为对应至该可供进行数据处理动作的实体存储单元的一实体地址,以及由该低阶处理层根据由该高阶转译层传送的该实体地址,在该可供进行数据处理动作的实体存储单元中,进行该数据处理动作。该高阶转译层用以令一用户端应用程序及一文件系统可在该快闪存储器内进行数据处理,以及负责搜集该快闪存储器使用状态的相关信息以管理该快闪存储器。该低阶处理层根据该实体地址内的一第一段地址数据得知一组已分类区块、该低阶处理层根据该实体地址内的一第二段地址数据得知一已分类单独区块、该低阶处理层根据该实体地址内的一第三段地址数据得知一已分类区块分页、该低阶处理层根据该实体地址内的一第四段地址数据得知一已分类区块通道。The invention provides a hierarchical and hierarchical data processing method applied to a flash memory. The method includes sending a logical address to a high-level translation layer to request a data processing operation in the flash memory, obtaining a hardware configuration information belonging to the flash memory from a low-level processing layer to configure the hardware The information is sent to the high-level translation layer, and the high-level translation layer is based on the hardware architecture information. In the flash memory, a group of physical storage units corresponding to the logical address is set, and the high-level translation layer is based on the hardware. Architecture information, find out in the group of physical storage units corresponding to the logical address, there is a physical storage unit that can perform data processing operations, and the high-level translation layer determines a data processing flow according to the hardware architecture information, so as to Converting the logical address into a physical address corresponding to the physical storage unit available for data processing, and the low-level processing layer according to the physical address transmitted by the high-level translation layer, in the available data processing In the physical storage unit of the processing operation, the data processing operation is performed. The high-level translation layer is used to enable a client application program and a file system to process data in the flash memory, and is responsible for collecting relevant information of the use status of the flash memory to manage the flash memory. The low-level processing layer obtains a group of classified blocks according to a first segment address data in the physical address, and the low-level processing layer obtains a classified separate area according to a second segment address data in the physical address block, the low-level processing layer obtains a classified block paging according to a third segment address data in the physical address, and the low-level processing layer obtains a classified block page according to a fourth segment address data in the physical address block channel.

本发明另提供一种应用于一快闪存储器的阶层化分层处理数据的方法。该方法包含将一逻辑地址传送至一高阶转译层以要求在该快闪存储器中进行一数据处理动作、由一快闪架构处理层取得属于该快闪存储器的一硬件架构信息以将该硬件架构信息传送至该高阶转译层、由该高阶转译层根据该硬件架构信息,在该快闪存储器中,设置一组对应至该逻辑地址的实体存储单元、由该高阶转译层根据该硬件架构信息,找出在该组对应至该逻辑地址的实体存储单元中,有一可供进行数据处理动作的实体存储单元、由该高阶转译层根据该硬件架构信息,决定一数据处理流程以将该逻辑地址转换为对应至该可供进行数据处理动作的实体存储单元的一实体地址,以及由该快闪架构处理层根据由该高阶转译层传送的该实体地址,在该可供进行数据处理动作的实体存储单元中,进行该数据处理动作。该高阶转译层用以令一用户端应用程序及一文件系统可在该快闪存储器内进行数据处理,以及负责搜集该快闪存储器使用状态的相关信息以管理该快闪存储器。该快闪架构处理层根据该实体地址内的一第一段地址数据得知一组已分类区块、该快闪架构处理层根据该实体地址内的一第二段地址数据得知一已分类单独区块、该快闪架构处理层根据该实体地址内的一第三段地址数据得知一已分类区块分页、该快闪架构处理层根据该实体地址内的一第四段地址数据得知一已分类分页区段、该快闪架构处理层根据该实体地址内的一第五段地址数据得知一已分类区块通道。The present invention further provides a method for hierarchically and hierarchically processing data applied to a flash memory. The method includes sending a logical address to a high-level translation layer to request a data processing operation in the flash memory, obtaining a hardware architecture information belonging to the flash memory from a flash architecture processing layer to use the hardware The architecture information is sent to the high-level translation layer. According to the hardware architecture information, the high-level translation layer sets a group of physical storage units corresponding to the logical address in the flash memory. The high-level translation layer according to the Hardware architecture information, find out that among the group of physical storage units corresponding to the logical address, there is a physical storage unit that can perform data processing operations, and the high-level translation layer determines a data processing flow according to the hardware architecture information. converting the logical address into a physical address corresponding to the physical storage unit available for data processing, and the processing layer of the flash architecture according to the physical address sent by the high-level translation layer in the available physical address In the physical storage unit of the data processing operation, the data processing operation is performed. The high-level translation layer is used to enable a client application program and a file system to process data in the flash memory, and is responsible for collecting relevant information of the use status of the flash memory to manage the flash memory. The flash architecture processing layer obtains a group of classified blocks according to a first segment address data in the physical address, and the flash architecture processing layer obtains a classified block according to a second segment address data in the physical address Separate blocks, the flash architecture processing layer obtains a classified block page according to a third segment address data in the physical address, and the flash architecture processing layer obtains a classified block page according to a fourth segment address data in the physical address Knowing a classified paging segment, the flash architecture processing layer obtains a classified block channel according to a fifth segment address data in the physical address.

本发明另提供一种使用阶层化分层处理数据的快闪存储器装置。该快闪存储器装置包含一快闪存储器,由多个已分类单独区块组成、一命令及逻辑地址转换电路,以及一执行命令及实体地址定址电路。该命令及逻辑地址转换电路用以令一高阶转译层接收一逻辑地址及一在该快闪存储器中进行一数据处理动作的要求,命令一低阶处理层取得属于该快闪存储器的一硬件架构信息以将该硬件架构信息传送至该高阶转译层,且令该高阶转译层根据该硬件架构信息,在该多个已分类单独区块中,设置一组对应至该逻辑地址的实体存储单元,找出在该组对应至该逻辑地址的实体存储单元中,有一可供进行数据处理动作的实体存储单元,并决定一数据处理流程以将该逻辑地址转换为对应至该可供进行数据处理动作的实体存储单元的一实体地址。该执行命令及实体地址定址电路用以令该低阶处理层根据由该高阶转译层传送的该实体地址,在该可供进行数据处理动作的实体存储单元中,进行该数据处理动作。该高阶转译层用以令一用户端应用程序及一文件系统可在该快闪存储器内进行数据处理,以及负责搜集该快闪存储器使用状态的相关信息以管理该快闪存储器。该低阶处理层根据该实体地址内的一第一段地址数据得知一组已分类区块、该低阶处理层根据该实体地址内的一第二段地址数据得知一已分类单独区块、该低阶处理层根据该实体地址内的一第三段地址数据得知一已分类区块分页、该低阶处理层根据该实体地址内的一第四段地址数据得知一已分类区块通道。The present invention further provides a flash memory device for processing data in layers. The flash memory device includes a flash memory, which is composed of a plurality of classified individual blocks, a command and logical address conversion circuit, and an execution command and physical address addressing circuit. The command and logical address conversion circuit is used to make a high-level translation layer receive a logical address and a request to perform a data processing operation in the flash memory, and order a low-level processing layer to obtain a hardware belonging to the flash memory architecture information to transmit the hardware architecture information to the high-level translation layer, and make the high-level translation layer set a group of entities corresponding to the logical address in the plurality of classified individual blocks according to the hardware architecture information The storage unit finds out a physical storage unit available for data processing in the group of physical storage units corresponding to the logical address, and determines a data processing flow to convert the logical address into the available physical storage unit corresponding to the logical address A physical address of the physical storage unit of the data processing action. The execution command and physical address addressing circuit is used to make the low-level processing layer perform the data processing operation in the physical storage unit available for data processing according to the physical address transmitted by the high-level translation layer. The high-level translation layer is used to enable a client application program and a file system to process data in the flash memory, and is responsible for collecting relevant information of the use status of the flash memory to manage the flash memory. The low-level processing layer obtains a group of classified blocks according to a first segment address data in the physical address, and the low-level processing layer obtains a classified separate area according to a second segment address data in the physical address block, the low-level processing layer obtains a classified block paging according to a third segment address data in the physical address, and the low-level processing layer obtains a classified block page according to a fourth segment address data in the physical address block channel.

附图说明 Description of drawings

图1为说明先前技术的快闪存储器转译层的示意图。FIG. 1 is a schematic diagram illustrating a prior art flash memory translation layer.

图2为说明本发明应用于快闪存储器的阶层化分层处理数据的示意图。FIG. 2 is a schematic diagram illustrating the application of the present invention to process data hierarchically and hierarchically in a flash memory.

图3为说明本发明应用于一快闪存储器的阶层化分层处理数据的方法的流程图。FIG. 3 is a flowchart illustrating a method for hierarchically processing data applied to a flash memory according to the present invention.

图4为说明高阶转译层根据逻辑地址、保留信息,以及查询表找出实际上可供数据处理的实体存储单元的示意图。FIG. 4 is a schematic diagram illustrating that the high-level translation layer finds the actual physical storage unit for data processing according to the logical address, reserved information, and look-up table.

图5为说明本发明的数据处理流程的一第一实施例的流程图。FIG. 5 is a flowchart illustrating a first embodiment of the data processing procedure of the present invention.

图6为说明本发明的数据处理流程的一第二实施例的流程图。FIG. 6 is a flowchart illustrating a second embodiment of the data processing procedure of the present invention.

图7为说明本发明的数据处理流程的一第三实施例的流程图。FIG. 7 is a flowchart illustrating a third embodiment of the data processing procedure of the present invention.

图8为本发明的使用阶层化分层处理数据的快闪存储器装置的示意图。FIG. 8 is a schematic diagram of a flash memory device using hierarchical data processing according to the present invention.

【主要元件符号说明】[Description of main component symbols]

H                        主控端H master control terminal

FTL                      快闪存储器转译层FTL Flash Translation Layer

MF、MF1                  快闪存储器M F , M F1 flash memory

BL11~BLMN               已分类单独区块BL 11 ~ BL MN has been classified as a separate block

HTL                      高阶转译层HTL High-level translation layer

LAL                      低阶处理层LAL Low Level Processing Layer

CH1~CHM                 已分类区块通道CH 1 ~ CH M classified block channels

BK1~BKN                 组已分类区块BK 1 ~ BK N group of classified blocks

PG0、PG1、PG2、PG3、PG4PG 0 , PG 1 , PG 2 , PG 3 , PG 4 ,

                         已分类区块分页                 

PGY PG Y

STZ                      已分类分页区段ST Z sorted paged section

P                        逻辑地址P Logical address

X                        实体地址X Physical address

TB                       查询表T B query table

DSP                      保留信息 DSP retains information

301~309、501~505、301~309, 501~505,

                         步骤Steps

601~605、701~705601~605, 701~705

800                      快闪存储器装置800 Flash memory devices

810                      命令及逻辑地址转换电路810 Command and Logical Address Conversion Circuit

811                      逻辑判断电路811 Logic judgment circuit

                         执行命令及实体地址定址Executing commands and addressing physical addresses

820820

                         电路Circuit

具体实施方式 Detailed ways

有鉴于此,本发明是将快闪存储器转译层FTL分隔为高阶转译层(High-level Translation Layer,HTL)与低阶处理层(Low-level AbstractionLayer,LAL),以解决当原本所使用的快闪存储器MF1更换为另一新型快闪存储器MF2时,整个快闪存储器转译层FTL都需要重新设计的困扰。其中,低阶处理层LAL可为快闪架构处理层(Flash Abstraction Layer)FAL;而高阶转译层HTL可为快闪架构转译层(Flash Translation Layer,FTL)。In view of this, the present invention separates the flash memory translation layer FTL into a high-level translation layer (High-level Translation Layer, HTL) and a low-level processing layer (Low-level Abstraction Layer, LAL), in order to solve the original problem When the flash memory MF1 is replaced with another new type of flash memory MF2 , the entire flash memory translation layer FTL needs to be redesigned. Wherein, the low-level processing layer LAL may be a flash abstraction layer (Flash Abstraction Layer) FAL; and the high-level translation layer HTL may be a flash translation layer (Flash Translation Layer, FTL).

请参考图2。图2为说明本发明应用于快闪存储器的阶层化分层处理数据的示意图。如图2所示,高阶转译层HTL介于主控端H与低阶处理层LAL之间;低阶处理层LAL介于高阶转译层HTL与快闪存储器MF之间。高阶转译层HTL的设计与快闪存储器MF的控制方法无关;低阶处理层LAL的设计则必须根据快闪存储器MF的不同而更动。在图2中,CH表示已分类区块通道(channel)、BK表示一组已分类区块(bank)、BL表示已分类单独区块(block)、PG表示已分类区块分页(page)、ST表示已分类分页区段(sector)。Please refer to Figure 2. FIG. 2 is a schematic diagram illustrating the application of the present invention to process data hierarchically and hierarchically in a flash memory. As shown in FIG. 2 , the high-level translation layer HTL is between the host H and the low-level processing layer LAL; the low-level processing layer LAL is between the high-level translation layer HTL and the flash memory MF . The design of the high-level translation layer HTL has nothing to do with the control method of the flash memory MF ; the design of the low-level processing layer LAL must be changed according to the difference of the flash memory MF . In Figure 2, CH represents a classified block channel (channel), BK represents a group of classified blocks (bank), BL represents a classified individual block (block), PG represents a classified block page (page), ST represents a classified paging sector (sector).

高阶转译层FTL用以令主控端H(如一用户端应用程序或/及一文件系统)可在快闪存储器MF内进行数据处理、负责搜集快闪存储器MF使用状态的相关信息,以及管理快闪存储器MF。此外,高阶转译层FTL隔绝由主控端H发送的要求直接进入该低阶处理层LAL。The high-level translation layer FTL is used to enable the host control terminal H (such as a client application program or/and a file system) to perform data processing in the flash memory MF , and is responsible for collecting relevant information on the use status of the flash memory MF , and manage the flash memory MF . In addition, the high-level translation layer FTL isolates the request sent by the host H from directly entering the low-level processing layer LAL.

低阶处理层LAL介于高阶转译层HTL及快闪存储器MF之间,用以执行由高阶转译层HTL发送的命令,并将快闪存储器MF的硬件架构信息DSPEC及由快闪存储器MF取得的一保留信息DSP(spare data)回传至高阶转译层HTL。同样地,低阶处理层LAL可通过读取快闪存储器MF的型号IDFLASH以获得有关快闪存储器MF的类型(如SLC大已分类单独区块)、制造厂商(如Samsung)、结构(如已分类单独区块数量)、容量、控制方法...等的硬件架构信息DSPEC。此外,低阶处理层LAL隔绝高阶转译层HTL发送的命令直接进入快闪存储器MFThe low-level processing layer LAL is between the high-level translation layer HTL and the flash memory MF , and is used to execute the commands sent by the high-level translation layer HTL, and transfer the hardware structure information D SPEC of the flash memory MF and the A piece of reserved information D SP (spare data) obtained by the flash memory MF is sent back to the high-level translation layer HTL. Similarly, the low-level processing layer LAL can obtain the type (such as SLC or separate block), the manufacturer (such as Samsung), and the structure of the relevant flash memory MF by reading the model ID FLASH of the flash memory MF . (such as the number of classified individual blocks), capacity, control method, etc. hardware architecture information D SPEC . In addition, the low-level processing layer LAL isolates the commands sent by the high-level translation layer HTL from directly entering the flash memory MF .

如此一来,由于低阶处理层LAL隔绝了高阶转译层HTL与快闪存储器MF之间的直接沟通(意即低阶处理层LAL会根据高阶转译层HTL所发出的命令控制快闪存储器MF,而高阶转译层HTL所发出的命令并不能直接传达至快闪存储器MF),因此不论快闪存储器MF是更换为快闪存储器MF1或MF2,对于高阶转译层HTL皆不会有任何影响,而能够省除高阶转译层HTL因为快闪存储器MF的更换所造成的困扰。In this way, since the low-level processing layer LAL isolates the direct communication between the high-level translation layer HTL and the flash memory MF (that is, the low-level processing layer LAL will control the flash according to the commands issued by the high-level translation layer HTL memory MF , and the commands issued by the high-level translation layer HTL cannot be directly transmitted to the flash memory MF ), so no matter whether the flash memory MF is replaced with a flash memory MF1 or MF2 , for the high-level translation layer The HTL will not have any impact, and the trouble caused by the replacement of the flash memory MF in the high-level translation layer HTL can be saved.

请参考图3。图3为说明本发明应用于一快闪存储器的阶层化分层处理数据的方法300的流程图。步骤说明如下:Please refer to Figure 3. FIG. 3 is a flowchart illustrating a method 300 for hierarchically processing data in a flash memory according to the present invention. The steps are as follows:

步骤301:由高阶转译层HTL发出第一命令CMD1以指示低阶处理层LAL,取得属于快闪存储器MF1的硬件架构信息DSPEC1Step 301: The high-level translation layer HTL issues a first command CMD 1 to instruct the low-level processing layer LAL to obtain the hardware architecture information D SPEC1 belonging to the flash memory MF1 ;

步骤302:由低阶处理层LAL,根据第一命令CMD1,取得属于快闪存储器MF1的硬件架构信息DSPEC1,并传送至高阶转译层HTL;Step 302: The low-level processing layer LAL obtains the hardware architecture information D SPEC1 belonging to the flash memory MF1 according to the first command CMD 1 , and sends it to the high-level translation layer HTL;

步骤303:由高阶转译层HTL发出第二命令CMD2以指示低阶处理层LAL,取得属于快闪存储器MF的保留信息DSP1Step 303: The high-level translation layer HTL issues a second command CMD 2 to instruct the low-level processing layer LAL to obtain reserved information D SP1 belonging to the flash memory MF ;

步骤304:由低阶处理层LAL,根据第二命令CMD2,取得属于快闪存储器MF1的保留信息DSP1,并传送至高阶转译层HTL;Step 304: The low-level processing layer LAL obtains the reserved information D SP1 belonging to the flash memory MF1 according to the second command CMD 2 , and sends it to the high-level translation layer HTL;

步骤305:主控端H将一逻辑地址「P」,传送至高阶转译层HTL以要求在快闪存储器MF1中进行一数据处理动作;Step 305: The host H sends a logical address "P" to the high-level translation layer HTL to request a data processing operation in the flash memory M F1 ;

步骤306:由高阶转译层HTL根据硬件架构信息DSPEC1,在快闪存储器MF1中,设置一组对应至逻辑地址「P」的实体存储单元;Step 306: According to the hardware architecture information D SPEC1 , the high-level translation layer HTL sets a group of physical storage units corresponding to the logical address "P" in the flash memory MF1 ;

步骤307:由高阶转译层HTL根据保留信息DSP1,找出在该组对应至逻辑地址「P」的实体存储单元中,有一可供进行数据处理动作的实体存储单元;Step 307: According to the retained information DSP1 , the high-level translation layer HTL finds a physical storage unit for data processing among the group of physical storage units corresponding to the logical address “P”;

步骤308:由高阶转译层HTL根据硬件架构信息DSPEC1与保留信息DSP1,决定一数据处理流程DPS,以将逻辑地址「P」转换为对应至该可供进行数据处理动作的实体存储单元的一实体地址「X」;Step 308: The high-level translation layer HTL determines a data processing flow DPS according to the hardware architecture information D SPEC1 and reserved information D SP1 , so as to convert the logical address "P" into a physical storage unit corresponding to the data processing action a physical address "X"of;

步骤309:由低阶处理层LAL根据由高阶转译层HTL传送的实体地址「X」,在该可供进行数据处理动作的实体存储单元中,进行该数据处理动作。Step 309: The low-level processing layer LAL performs the data processing operation in the physical storage unit available for data processing according to the physical address "X" transmitted by the high-level translation layer HTL.

在方法300中,当一新型快闪存储器MF2取代快闪存储器MF1时,方法300会重新设置一新型低阶处理层LAL2取代原有的低阶处理层LAL(设原有的低阶处理层为LAL1),且由新型低阶处理层LAL2取得属于新型快闪存储器MF2的硬件架构信息DSPEC2与保留信息DSP以将硬件架构信息DSPEC2与保留信息DSP传送至高阶转译层HTL。换句话说,当一新型快闪存储器MF2取代原有的快闪存储器MF1时,步骤301~308便会再重新进行一次,以告知高阶转译层HTL需重新设定将逻辑地址转译成实体地址的方式。In the method 300, when a new type of flash memory MF2 replaces the flash memory MF1 , the method 300 will reset a new type of low-level processing layer LAL 2 to replace the original low-level processing layer LAL (assuming that the original low-level processing layer LAL The processing layer is LAL 1 ), and the new low-level processing layer LAL 2 obtains the hardware architecture information D SPEC2 and the reserved information D SP belonging to the new flash memory MF2 to transmit the hardware architecture information D SPEC2 and the reserved information D SP to the high-level Translation layer HTL. In other words, when a new type of flash memory MF2 replaces the original flash memory MF1 , steps 301-308 will be performed again to inform the high-level translation layer HTL that the logical address translation needs to be reset. into a physical address.

在步骤309中,低阶处理层LAL能够根据高阶转译层HTL所传送来的实体地址「X」,得知在快闪存储器MF1中实际上所对应的一已分类区块通道、一组已分类区块(Bank)、一已分类单独区块、一已分类区块分页,以及一已分类分页区段。换句话说,实体地址「X」可区分成五段为(x1,x2,x3,x4,x5)。第一段实体地址「x1」的数值代表实体上对应到快闪存储器MF1中所分配的一已分类区块通道;第二段实体地址「x2」的数值代表实体上对应到快闪存储器MF1中所分配的一组已分类区块;第三段实体地址「x3」的数值代表实体上对应到快闪存储器MF1中所分配的一已分类单独区块;第四段实体地址「x4」的数值代表实体上对应到快闪存储器MF1中所分配的一已分类区块分页;第五段实体地址「x5」的数值代表实体上对应到快闪存储器MF1中所分配的一已分类分页区段。举例来说,如果实体地址X为(1,1,1,1,1),则表示在实体上可供进行数据处理动作的实体存储单元系位于快闪存储器MF1的已分类区块通道CH1中的一组已分类区块BK1中的已分类单独区块BL1中的已分类区块分页PG1中的已分类分页区段ST1In step 309, the low - level processing layer LAL can know the actual corresponding classified block channel and a group of A sorted block (Bank), a sorted individual block, a sorted block page, and a sorted paged section. In other words, the physical address "X" can be divided into five segments (x 1 , x 2 , x 3 , x 4 , x 5 ). The value of the physical address "x 1 " in the first section represents that it is physically corresponding to a classified block channel allocated in the flash memory MF1 ; A group of classified blocks allocated in the memory MF1 ; the numerical value of the third segment entity address "x 3 " represents an entity corresponding to a classified individual block allocated in the flash memory MF1 ; the fourth segment entity The numerical value of the address " x4 " represents that it is physically corresponding to a classified block page allocated in the flash memory MF1 ; the numerical value of the fifth physical address " x5 " represents that it is physically corresponding to the flash memory MF1 A sorted paged section is allocated. For example, if the physical address X is (1, 1, 1, 1, 1), it means that the physical storage unit physically available for data processing is located in the classified block channel CH of the flash memory MF1 A group of sorted blocks BK1 in 1 A sorted block in separate block BL1 A sorted page segment ST1 in page PG1 .

此外,硬件架构信息DSPEC1提供可在快闪存储器MF1所规划行已分类区块通道、组已分类区块、已分类单独区块、已分类区块分页和已分类分页区段的信息。举例来说,硬件架构信息DSPEC1可为(10,10,10,64,4),则表示在快闪存储器MF1中,有10个已分类区块通道、每个已分类区块通道包含10组已分类区块、每组已分类区块包含10个已分类单独区块、每个已分类单独区块包含64个已分类区块分页、每个已分类区块分页包含4个已分类分页区段。另外,一般定义一个已分类分页区段的大小为512字节,因此不需要在硬件架构信息DSPEC1中提供。In addition, the hardware architecture information D SPEC1 provides information on sorted block channels, group sorted blocks, sorted individual blocks, sorted block pages, and sorted page sections that can be planned in the flash memory MF1 . For example, the hardware architecture information D SPEC1 can be (10, 10, 10, 64, 4), which means that in the flash memory MF1 , there are 10 classified block channels, and each classified block channel contains 10 groups of classified blocks, each group of classified blocks contains 10 classified individual blocks, each classified individual block contains 64 classified block pages, each classified block page contains 4 classified Paging section. In addition, the size of a classified paging segment is generally defined as 512 bytes, so it does not need to be provided in the hardware architecture information D SPEC1 .

因此,高阶转译层HTL便可根据硬件架构信息DSPEC1,将逻辑地址「P」转换成对应的实体地址「X」。如前所述,如果硬件架构信息DSPEC1为(10,10,10,64,4),举例逻辑地址「X」为[123456],则高阶转译层HTL可将[123456]除以25600(10×10×64×4,表示一个已分类区块通道的大小),得到4且余21056(表示实体地址x1为4);再将余数[21056]除以2560(10×64×4,表示一组已分类区块的大小),得到8且余576(表示实体地址x2为8);再将余数[576]除以256(64×4,表示一已分类单独区块的大小),得到2且余64(表示实体地址x3为2);再将余数[64]除以4(4,表示一已分类区块分页的大小),得到16且余0(表示实体地址x4为4而实体地址x5为余数0)。简单地说,当逻辑地址「P」为[123456]时,高阶转译层HTL根据硬件架构信息DSPEC1所转译出来的实体地址X为(4,8,2,16,0),其表示为快闪存储器MF1中第4个已分类区块通道CH4中的第8组已分类区块BK8中的第2个已分类单独区块BL2中的第16个已分类区块分页PG16中的第0个已分类分页区段ST0Therefore, the high-level translation layer HTL can convert the logical address "P" into the corresponding physical address "X" according to the hardware architecture information D SPEC1 . As mentioned above, if the hardware architecture information D SPEC1 is (10, 10, 10, 64, 4), for example, the logical address "X" is [123456], then the high-level translation layer HTL can divide [123456] by 25600 ( 10×10×64×4, indicating the size of a classified block channel), get 4 and the remainder 21056 (indicating that the physical address x 1 is 4); then divide the remainder [21056] by 2560 (10×64×4, Indicates the size of a group of classified blocks), get 8 and remainder 576 (representing physical address x 2 is 8); then divide the remainder [576] by 256 (64×4, representing the size of a classified individual block) , get 2 and remainder 64 (meaning that physical address x 3 is 2); then divide the remainder [64] by 4 (4, representing the size of a classified block page), get 16 and remainder 0 (representing physical address x 4 is 4 and physical address x 5 is remainder 0). Simply put, when the logical address "P" is [123456], the physical address X translated by the high-level translation layer HTL according to the hardware architecture information D SPEC1 is (4, 8, 2, 16, 0), which is expressed as 4th sorted block channel CH 4 in flash memory M F1 8th group sorted block BK 8 2nd sorted individual block BL 2 16th sorted block page PG The 0th sorted paged segment ST 0 in 16 .

然而,在快闪存储器中,一有存储数据的已分类区块分页无法再被写入数据。更明确地说,如果要将数据写入至有存储数据的已分类区块分页,必须要先擦除该已分类区块分页所属的已分类单独区块。每次擦除(erase)数据的动作是以一个「已分类单独区块」作为单位。也就是说,每次擦除数据的动作至少要擦除一个已分类单独区块,而无法只擦除一个已分类区块分页或一个字节。是故,为了加速主控端H对于快闪存储器MF1所进行的数据处理动作,在高阶转译层HTL中,会设置一查询表(Look Up Table,LUT)TB,以选择对应到同一个逻辑地址的已分类单独区块中并未存储数据的实体存储单元,来进行数据处理的动作。更明确地说,在前述高阶转译层HTL转译逻辑地址「P」为实体地址「X」时,其所转译出的实体地址x3并不会直接对应到一个单一个已分类单独区块,而是对应到两个不同的已分类单独区块,然后再根据快闪存储器MF1所提供的保留信息DSP,选择其中的一可提供进行数据处理的已分类单独区块。其中保留信息DSP用来提供所欲处理的实体存储单元是否已经有存储数据以方便高阶转译层HTL选择未存储数据的实体存储单元。以下将更详细解释其运作原理。However, in the flash memory, a classified block page with stored data cannot be written into. More specifically, if data is to be written into a classified block page that stores data, the classified individual block to which the classified block page belongs must first be erased. Each action of erasing data is based on a "classified separate block" as a unit. That is to say, at least one classified separate block must be erased each time the data is erased, and it is impossible to erase only one classified block page or one byte. Therefore, in order to speed up the data processing action performed by the host H on the flash memory MF1 , a look-up table (Look Up Table, LUT) T B will be set in the high-level translation layer HTL to select the corresponding A physical storage unit that does not store data in a classified separate block of a logical address is used for data processing. More specifically, when the above-mentioned high-level translation layer HTL translates the logical address "P" into the physical address "X", the translated physical address x 3 does not directly correspond to a single classified individual block, Instead, it corresponds to two different classified individual blocks, and then selects one of them according to the reserved information D SP provided by the flash memory MF1 to provide a classified individual block for data processing. The reserved information D SP is used to provide whether the physical storage unit to be processed has stored data, so as to facilitate the high-level translation layer HTL to select a physical storage unit that does not store data. How this works is explained in more detail below.

请参考图4。图4为说明高阶转译层HTL根据逻辑地址、保留信息,以及查询表找出实际上可供数据处理的实体存储单元的示意图。同样举逻辑地址「P」为[123456]为例,可知实体地址x3为「2」。因此可从查询表TB中的第2栏查得对应于实体地址x3的已分类单独区块为已分类单独区块BL5与BL13。而实际上欲进行数据处理的实体存储单元位于第4个已分类区块分页中的第0个已分类分页区段。由保留信息DSP可知,在已分类单独区块BL5中的第4个已分类区块分页已有存储数据而在已分类单独区块BL13中的第4个已分类区块分页并未存储数据。因此,高阶转译层HTL便会选择已分类单独区块BL13作为实际上要进行数据处理的实体存储单元。更明确地说,逻辑地址[123456]经过高阶转译层HTL处理后,会对应到实体地址为(4,8,「13」,16,0)而不是原本的实体地址(4,8,「2」,16,0),亦非(4,8,「5」,16,0)。换句话说,实际上经由高阶转译层HTL所找出的实体存储单元系位于快闪存储器MF1中第4个已分类区块通道CH4中的第8组已分类区块BK8中的第13个已分类单独区块BL13中的第16个已分类区块分页PG16中的第0个已分类分页区段ST0Please refer to Figure 4. FIG. 4 is a schematic diagram illustrating that the high-level translation layer HTL finds the actual physical storage unit for data processing according to the logical address, reserved information, and look-up table. Similarly, taking the logical address "P" as [123456] as an example, it can be seen that the physical address x 3 is "2". Therefore, it can be found from the second column in the look-up table TB that the classified individual blocks corresponding to the physical address x 3 are classified individual blocks BL 5 and BL 13 . In fact, the physical storage unit to be processed is located in the 0th sorted page segment in the 4th sorted block page. It can be seen from the reserved information D SP that the fourth classified block page in the classified individual block BL 5 has stored data and the fourth classified block page in the classified individual block BL 13 has not. Storing data. Therefore, the high-level translation layer HTL selects the classified individual block BL 13 as the physical storage unit for actually performing data processing. More specifically, after the logical address [123456] is processed by the high-level translation layer HTL, it will correspond to the physical address (4, 8, "13", 16, 0) instead of the original physical address (4, 8, "2", 16, 0), nor (4, 8, "5", 16, 0). In other words, actually the physical storage unit found through the high-level translation layer HTL is located in the 8th group of classified blocks BK 8 in the 4th classified block channel CH 4 in the flash memory MF1 The 0th sorted page sector ST 0 in the 16th sorted block page PG 16 in the 13th sorted individual block BL 13 .

在步骤308中,数据处理流程DPS用来决定低阶处理层LAL取得实体地址「X」中的第一段实体地址(x1)、第二段实体地址(x2)、第三段实体地址(x3)、第四段实体地址(x4)以及第五段实体地址(x5)的顺序。In step 308, the data processing flow DPS is used to determine the first physical address (x 1 ), the second physical address (x 2 ), and the third physical address of the physical address "X" obtained by the low-level processing layer LAL. (x 3 ), the fourth physical address (x 4 ), and the fifth physical address (x 5 ).

请参考图5。图5为说明本发明的数据处理流程DPS的一第一实施例的流程图。步骤说明如下:Please refer to Figure 5. FIG. 5 is a flowchart illustrating a first embodiment of the data processing procedure DPS of the present invention. The steps are as follows:

步骤501:令低阶处理层LAL取得第二段实体地址(x2),得知在快闪存储器MF1中,存在对应的一组已分类区块,而可对数据进行处理动作;Step 501: Make the low-level processing layer LAL obtain the second physical address (x 2 ), know that in the flash memory MF1 , there is a group of corresponding classified blocks, and the data can be processed;

步骤502:在取得该第二段实体地址之后,取得第三段实体地址(x3),得知在快闪存储器MF1中,存在对应的一已分类单独区块,可对数据进行处理动作;Step 502: After obtaining the second segment physical address, obtain the third segment physical address (x 3 ), know that there is a corresponding classified separate block in the flash memory MF1 , and the data can be processed ;

步骤503:在取得该第三段实体地址之后,取得第四段实体地址(x4),得知在快闪存储器MF1中,存在对应的一已分类区块分页,可对数据进行处理动作;Step 503: After obtaining the third segment physical address, obtain the fourth segment physical address (x 4 ), know that in the flash memory MF1 , there is a corresponding classified block page, and the data can be processed ;

步骤504:在取得该第四段实体地址之后,取得第五段实体地址(x5),得知在快闪存储器MF1中,存在对应的一已分类分页区段,可对数据进行处理动作;Step 504: After obtaining the fourth segment physical address, obtain the fifth segment physical address (x 5 ), know that there is a corresponding classified paging segment in the flash memory MF1 , and the data can be processed ;

步骤505:在取得该第五段实体地址之后,取得第一段实体地址(x1),最后得知在快闪存储器MF1中,存在对应的一已分类区块通道,可对数据进行处理动作。Step 505: After obtaining the fifth segment physical address, obtain the first segment physical address (x 1 ), and finally know that there is a corresponding classified block channel in the flash memory MF1 , and the data can be processed action.

请参考图6。图6为说明本发明的数据处理流程DPS的一第二实施例的流程图。步骤说明如下:Please refer to Figure 6. FIG. 6 is a flowchart illustrating a second embodiment of the data processing procedure DPS of the present invention. The steps are as follows:

步骤601:令低阶处理层LAL取得第一段实体地址(x1),得知在快闪存储器MF1中,存在对应的一已分类区块通道,而可对数据进行处理动作;Step 601: Make the low-level processing layer LAL obtain the first physical address (x 1 ), know that there is a corresponding classified block channel in the flash memory MF1 , and perform data processing;

步骤602:在取得该第一段实体地址之后,取得第三段实体地址(x3),得知在快闪存储器MF1中,存在对应的一已分类单独区块,可对数据进行处理动作;Step 602: After obtaining the first physical address, obtain the third physical address (x 3 ), and know that there is a corresponding classified separate block in the flash memory MF1 , and the data can be processed ;

步骤603:在取得该第三段实体地址之后,取得第四段实体地址(x4),得知在快闪存储器MF1中,存在对应的一已分类区块分页,可对数据进行处理动作;Step 603: After obtaining the third segment physical address, obtain the fourth segment physical address (x 4 ), know that there is a corresponding classified block page in the flash memory MF1 , and the data can be processed ;

步骤604:在取得该第四段实体地址之后,取得第五段实体地址(x5),得知在快闪存储器MF1中,存在对应的一已分类分页区段,可对数据进行处理动作;Step 604: After obtaining the fourth segment physical address, obtain the fifth segment physical address (x 5 ), know that there is a corresponding classified paging segment in the flash memory MF1 , and the data can be processed ;

步骤605:在取得该第五段实体地址之后,取得第二段实体地址(x2),最后得知在快闪存储器MF1中,存在对应的一组已分类区块,可对数据进行处理动作。Step 605: After obtaining the fifth segment physical address, obtain the second segment physical address (x 2 ), and finally know that there is a group of corresponding classified blocks in the flash memory MF1 , and the data can be processed action.

请参考图7。图7为说明本发明的数据处理流程DPS的一第三实施例的流程图。步骤说明如下:Please refer to Figure 7. FIG. 7 is a flowchart illustrating a third embodiment of the data processing procedure DPS of the present invention. The steps are as follows:

步骤701:令低阶处理层LAL取得第三段实体地址(x3),得知在快闪存储器MF1中,存在对应的一已分类单独区块,而可对数据进行处理动作;Step 701: Make the low-level processing layer LAL obtain the third physical address (x 3 ), know that in the flash memory MF1 , there is a corresponding classified individual block, and the data can be processed;

步骤702:在取得该第三段实体地址之后,取得第二段实体地址(x2),得知在快闪存储器MF1中,存在对应的一组已分类区块,可对数据进行处理动作;Step 702: After obtaining the third segment physical address, obtain the second segment physical address (x 2 ), know that there is a group of corresponding classified blocks in the flash memory MF1 , and the data can be processed ;

步骤703:在取得该第二段实体地址之后,取得第四段实体地址(x4),得知在快闪存储器MF1中,存在对应的一已分类区块分页,可对数据进行处理动作;Step 703: After obtaining the second segment physical address, obtain the fourth segment physical address (x 4 ), know that there is a corresponding classified block page in the flash memory MF1 , and the data can be processed ;

步骤704:在取得该第四段实体地址之后,取得第五段实体地址(x5),得知在快闪存储器MF1中,存在对应的一已分类分页区段,可对数据进行处理动作;Step 704: After obtaining the fourth segment physical address, obtain the fifth segment physical address (x 5 ), know that there is a corresponding classified paging segment in the flash memory MF1 , and the data can be processed ;

步骤705:在取得该第五段实体地址之后,取得第一段实体地址(x1),最后得知在快闪存储器MF1中,存在对应的一组已分类区块通道,可对数据进行处理动作。Step 705: After obtaining the fifth segment physical address, obtain the first segment physical address (x 1 ), and finally learn that there is a group of corresponding classified block channels in the flash memory MF1 , and the data can be processed Handle actions.

在上述数据处理流程DPS的三个实施例中,第五段实体地址并非为必须,意即低阶处理层LAL不一定需要以已分类分页区段为单位来进行数据处理动作。换句话说,如果低阶处理层LAL所接收到的实体地址仅定址到已分类区块分页,则低阶处理层LAL便以一已分类区块分页为单位来进行数据处理动作;而若低阶处理层LAL所接收到的实体地址定址到已分类分页区段,则低阶处理层LAL便可以一已分类分页区段为单位来进行数据处理动作。此外,实体地址x3为高阶转译层HTL,根据逻辑地址「P」、查询表TB以及保留信息DSP,最后所求得的实体地址(如图4的示范例)。In the above three embodiments of the data processing flow DPS, the fifth segment physical address is not necessary, which means that the low-level processing layer LAL does not necessarily need to perform data processing actions in units of classified paging segments. In other words, if the physical address received by the low-level processing layer LAL is only addressed to a classified block page, then the low-level processing layer LAL performs data processing in units of a classified block page; The physical address received by the low-level processing layer LAL is addressed to the classified paging segment, and then the low-level processing layer LAL can perform data processing in units of a classified paging segment. In addition, the physical address x 3 is the high-level translation layer HTL, the physical address finally obtained according to the logical address "P", the lookup table TB and the reserved information D SP (as shown in the example in FIG. 4 ).

请参考图8。图8为本发明的使用阶层化分层处理数据的快闪存储器装置800的示意图。如图8所示,快闪存储器装置800包含一命令及逻辑地址转换电路810、一执行命令及实体地址定址电路820,以及一快闪存储器MF。快闪存储器MF包含多个已分类单独区块BL11~BLMNPlease refer to Figure 8. FIG. 8 is a schematic diagram of a flash memory device 800 using hierarchical data processing according to the present invention. As shown in FIG. 8 , the flash memory device 800 includes a command and logical address conversion circuit 810 , an execution command and physical address addressing circuit 820 , and a flash memory MF . The flash memory MF includes a plurality of classified individual blocks BL 11 ˜BL MN .

命令及逻辑地址转换电路810位于高阶转译层HTL;执行命令及实体地址定址电路820位于低阶处理层LAL。命令及逻辑地址转换电路810还包含一逻辑判断电路811。在图8中,主控端H、高阶转译层HTL、低阶处理层LAL以及快闪存储器MF的运作原理皆如前述,在此不再赘述。The command and logical address conversion circuit 810 is located in the high-level translation layer HTL; the execution command and physical address addressing circuit 820 is located in the low-level processing layer LAL. The command and logical address translation circuit 810 also includes a logic judgment circuit 811 . In FIG. 8 , the operating principles of the host H, the high-level translation layer HTL, the low-level processing layer LAL, and the flash memory MF are as described above, and will not be repeated here.

命令及逻辑地址转换电路810用来执行下列几项动作:The command and logical address conversion circuit 810 is used to perform the following actions:

1.令高阶转译层HTL接收主控端H传送的逻辑地址「P」,并据以在快闪存储器MF中进行一数据处理动作的要求;1. Make the high-level translation layer HTL receive the logical address "P" sent by the host H, and perform a data processing operation in the flash memory MF accordingly;

2.命令低阶处理层LAL取得属于快闪存储器MF的硬件架构信息DSPEC以传送至高阶转译层HTL;2. Instruct the low-level processing layer LAL to obtain the hardware architecture information D SPEC belonging to the flash memory MF to transmit to the high-level translation layer HTL;

3.令高阶转译层HTL根据硬件架构信息DSPEC,在该多个已分类单独区块中,设置一组对应至逻辑地址「P」的实体存储单元,找出在该组对应至该逻辑地址的实体存储单元中,有一可供进行数据处理动作的实体存储单元,决定一数据处理流程以将该逻辑地址转换为对应至该可供进行数据处理动作的实体存储单元的一实体地址。3. Let the high-level translation layer HTL set a group of physical storage units corresponding to the logical address "P" in the plurality of classified individual blocks according to the hardware architecture information D SPEC , and find out the physical storage unit corresponding to the logical address "P" in the group. Among the physical storage units of the address, there is a physical storage unit available for data processing, and a data processing flow is determined to convert the logical address into a physical address corresponding to the physical storage unit available for data processing.

执行命令及实体地址定址电路820用来令低阶处理层LAL根据由高阶转译层HTL传送的实体地址「X」,在该可供进行数据处理动作的实体存储单元中,进行数据处理动作。The execution command and physical address addressing circuit 820 is used to make the low-level processing layer LAL perform data processing operations in the physical storage unit available for data processing operations according to the physical address "X" transmitted by the high-level translation layer HTL.

逻辑判断电路811用来执行下列几项动作:The logic judgment circuit 811 is used to perform the following actions:

1.令高阶转译层HTL发出一命令(CMD1或CMD2)以指示低阶处理层LAL取得硬件架构信息DSPEC及保留信息DSP其中之一;1. Make the high-level translation layer HTL issue a command (CMD 1 or CMD 2 ) to instruct the low-level processing layer LAL to obtain one of the hardware architecture information D SPEC and the reserved information D SP ;

2.令低阶处理层LAL根据所发出的命令,读取快闪存储器MF的硬件架构信息DSPEC及保留信息DSP其中之一,以回传至高阶转译层HTL;2. Make the low-level processing layer LAL read one of the hardware structure information D SPEC and the reserved information D SP of the flash memory MF according to the issued command, and send it back to the high-level translation layer HTL;

3.令高阶转译层HTL根据硬件架构信息DSPEC及保留信息DSP,决定数据处理流程,以转换所接收的逻辑地址「P」为对应的实体地址「X」。3. Make the high-level translation layer HTL determine the data processing flow according to the hardware architecture information D SPEC and the reserved information D SP , so as to convert the received logical address "P" into the corresponding physical address "X".

综上所述,通过本发明将快闪存储器转译层分隔为高阶转译层与低阶处理层,便可解决当原本所使用的快闪存储器更换为另一新型快闪存储器时,整个快闪存储器转译层都需要重新设计的困扰,而通过本发明所提供的低阶处理层,可对于各种不同的快闪存储器,根据高阶转译层所提供的实体地址,并使用对应的控制方法,直接对对应的存储单元进行数据处理的动作,如此便可提供给使用者更大的便利性。In summary, the present invention separates the flash memory translation layer into a high-level translation layer and a low-level processing layer, which can solve the problem of the entire flash memory when the original flash memory is replaced with another new type of flash memory. The memory translation layer needs to be redesigned, and through the low-level processing layer provided by the present invention, it is possible to use the corresponding control method according to the physical address provided by the high-level translation layer for various flash memories, The action of data processing is directly performed on the corresponding storage unit, so that greater convenience can be provided to the user.

以上所述仅为本发明的优选实施例,凡依本发明权利要求书所做的均等变化与修饰,皆应属本发明的涵盖范围。The above descriptions are only preferred embodiments of the present invention, and all equivalent changes and modifications made according to the claims of the present invention shall fall within the scope of the present invention.

Claims (39)

1.一种应用于一快闪存储器的阶层化分层处理数据的方法,包含:  1. A method for hierarchically layered data processing applied to a flash memory, comprising: 将一逻辑地址传送至一高阶转译层以要求在该快闪存储器中进行一数据处理动作;  passing a logical address to a high-level translation layer to request a data processing action in the flash memory; 由一低阶处理层取得属于该快闪存储器的一硬件架构信息以将该硬件架构信息传送至该高阶转译层;  Obtaining a hardware architecture information belonging to the flash memory from a low-level processing layer to transmit the hardware architecture information to the high-level translation layer; 由该高阶转译层根据该硬件架构信息,在该快闪存储器中,设置一组对应至该逻辑地址的实体存储单元;  Setting a group of physical storage units corresponding to the logical address in the flash memory according to the hardware architecture information by the high-level translation layer; 由该高阶转译层根据该硬件架构信息,找出在该组对应至该逻辑地址的实体存储单元中,有一可供进行数据处理动作的实体存储单元;  The high-level translation layer finds, according to the hardware architecture information, a physical storage unit available for data processing among the group of physical storage units corresponding to the logical address; 由该高阶转译层根据该硬件架构信息,决定一数据处理流程,以将该逻辑地址转换为对应至该可供进行数据处理动作的实体存储单元的一实体地址;以及  The high-level translation layer determines a data processing flow according to the hardware architecture information, so as to convert the logical address into a physical address corresponding to the physical storage unit available for data processing; and 由该低阶处理层根据由该高阶转译层所转换的该实体地址,在该可供进行数据处理动作的实体存储单元中,进行该数据处理动作;  The low-level processing layer performs the data processing operation in the physical storage unit available for data processing according to the physical address converted by the high-level translation layer; 其中,该高阶转译层用以令一用户端应用程序及一文件系统可在该快闪存储器内进行数据处理,以及负责搜集该快闪存储器使用状态的相关信息以管理该快闪存储器,并且,该低阶处理层根据该实体地址内的一第一段地址数据得知一组已分类区块,根据该实体地址内的一第二段地址数据得知一已分类单独区块,根据该实体地址内的一第三段地址数据得知一已分类区块分页,根据该实体地址内的一第四段地址数据得知一已分类区块通道。  Wherein, the high-level translation layer is used to enable a client application program and a file system to perform data processing in the flash memory, and is responsible for collecting relevant information of the usage status of the flash memory to manage the flash memory, and , the low-level processing layer obtains a group of classified blocks according to a first segment of address data in the physical address, obtains a classified individual block according to a second segment of address data in the physical address, and according to the A classified block page is obtained from a third segment of address data in the physical address, and a classified block channel is obtained from a fourth segment of address data in the physical address. the 2.如权利要求1所述的方法,其中由一低阶处理层取得属于该快闪存储器的一硬件架构信息以将该硬件架构信息传送至该高阶转译层包含:  2. The method according to claim 1, wherein obtaining a hardware architecture information belonging to the flash memory by a low-level processing layer to transmit the hardware architecture information to the high-level translation layer comprises: 由该高阶转译层发出一第一命令以指示该低阶处理层取得该硬件架构信息;以及  issuing a first command from the high-level translation layer to instruct the low-level processing layer to obtain the hardware architecture information; and 该低阶处理层根据该第一命令读取该快闪存储器的该硬件架构信息以回传至该高阶转译层。  The low-level processing layer reads the hardware architecture information of the flash memory according to the first command and sends it back to the high-level translation layer. the 3.如权利要求2所述的方法,其中在该低阶处理层根据该第一命令读取该快闪存储器的该硬件架构信息以回传至该高阶转译层之后还包含:  3. The method according to claim 2, further comprising: 由该高阶转译层发出一第二命令以指示该低阶处理层取得一保留信息;以及  issuing a second command from the high-level translation layer to instruct the low-level processing layer to obtain a reserved message; and 该低阶处理层根据该第二命令读取该快闪存储器的该保留信息以回传至该高阶转译层,并且  The low-level processing layer reads the reserved information of the flash memory according to the second command to return to the high-level translation layer, and 其中由该高阶转译层根据该硬件架构信息,决定一数据处理流程,以将该逻辑地址转换为对应至该可供进行数据处理动作的实体存储单元的一实体地址包括:  Wherein the high-level translation layer determines a data processing flow according to the hardware architecture information, so as to convert the logical address into a physical address corresponding to the physical storage unit available for data processing, including: 由该高阶转译层根据该硬件架构信息及该保留信息,决定该数据处理流程,以转换为该实体地址。  The high-level translation layer determines the data processing flow according to the hardware architecture information and the reserved information, so as to convert it into the physical address. the 4.如权利要求1所述的方法,其中该高阶转译层用以隔绝由该用户端应用程序和该文件系统发送的要求以使该要求不能直接进入该低阶处理层。  4. The method of claim 1, wherein the high-level translation layer is used to isolate requests sent by the client application and the file system so that the requests cannot directly enter the low-level processing layer. the 5.如权利要求1所述的方法,其中该低阶处理层介于该高阶转译层及该快闪存储器之间,用以执行由该高阶转译层发送的命令,并将该硬件架构信息及由该快闪存储器取得的一保留信息回传至该高阶转译层。  5. The method as claimed in claim 1, wherein the low-level processing layer is interposed between the high-level translation layer and the flash memory, and is used to execute commands sent by the high-level translation layer, and configure the hardware Information and a retained information retrieved from the flash memory are passed back to the HTL. the 6.如权利要求1所述的方法,其中该低阶处理层用以执行由该高阶转译层发送的命令,隔绝该高阶转译层发送的命令以使该命令不能直接进入该快闪存储器,并将该硬件架构信息及由该快闪存储器取得的一保留信息回传至该高阶转译层。  6. The method as claimed in claim 1, wherein the low-level processing layer is used to execute the command sent by the high-level translation layer, isolating the command sent by the high-level translation layer so that the command cannot directly enter the flash memory , and return the hardware architecture information and a reserved information obtained from the flash memory to the high-level translation layer. the 7.如权利要求1所述的方法,其中当一另一类型的快闪存储器取代该快闪存储器时,设置一另一类型的低阶处理层取代该低阶处理层,由该另一类型的低阶处理层取得属于该另一类型的快闪存储器的一另一类型的硬件架构信息以将该另一类型的硬件架构信息传送至该高阶转译层。  7. The method as claimed in claim 1, wherein when a flash memory of another type replaces the flash memory, a low-level processing layer of another type is provided to replace the low-level processing layer, and the other type The low-level processing layer obtains another type of hardware architecture information belonging to the other type of flash memory to transmit the other type of hardware architecture information to the high-level translation layer. the 8.如权利要求1所述的方法,其中该硬件架构信息提供可在该快闪存储器规划该组已分类区块、该已分类单独区块、该已分类区块分页和该已分类区块通道的信息。  8. The method as claimed in claim 1, wherein the hardware architecture information provides the group of classified blocks, the classified individual blocks, the classified block paging and the classified blocks in the flash memory channel information. the 9.如权利要求8所述的方法,其中该数据处理流程决定该低阶处理层取得该第一段地址数据、该第二段地址数据、第三段地址数据和该第四段地址数据的顺序。  9. The method as claimed in claim 8, wherein the data processing flow determines that the low-level processing layer obtains the first segment address data, the second segment address data, the third segment address data and the fourth segment address data order. the 10.如权利要求9所述的方法,其中该数据处理流程包含:  10. The method according to claim 9, wherein the data processing flow comprises: 令该低阶处理层取得该第一段地址数据,得知在该快闪存储器中,存 在该组已分类区块,可对数据进行处理动作;  Make the low-level processing layer obtain the first address data, know that in the flash memory, there is the group of classified blocks, and the data can be processed; 在取得该第一段地址数据之后,取得该第二段地址数据,得知在该快闪存储器中,存在该已分类单独区块,可对数据进行处理动作;  After obtaining the first segment address data, obtain the second segment address data, know that in the flash memory, there is the classified separate block, and the data can be processed; 在取得该第二段地址数据之后,取得该第三段地址数据,得知在该快闪存储器中,存在该已分类区块分页,可对数据进行处理动作;以及  After obtaining the second segment address data, obtain the third segment address data, know that in the flash memory, there is the classified block page, and the data can be processed; and 在取得该第三段地址数据之后,取得该第四段地址数据,最后得知在该快闪存储器中,存在已分类区块通道,可对数据进行处理动作。  After obtaining the third segment of address data, the fourth segment of address data is obtained, and finally it is known that there are classified block channels in the flash memory, and the data can be processed. the 11.如权利要求9所述的方法,其中该数据处理流程包含:  11. The method according to claim 9, wherein the data processing flow comprises: 令该低阶处理层取得该第四段地址数据,得知在该快闪存储器中,存在该已分类区块通道,可对数据进行处理动作;  Make the low-level processing layer obtain the fourth segment address data, know that the classified block channel exists in the flash memory, and process the data; 在取得该第四段地址数据之后,取得该第二段地址数据,得知在该快闪存储器中,存在该已分类单独区块,可对数据进行处理动作;  After obtaining the fourth segment address data, obtain the second segment address data, know that in the flash memory, there is the classified separate block, and the data can be processed; 在取得该第二段地址数据之后,取得该第三段地址数据,得知在该快闪存储器中,存在该已分类区块分页,可对数据进行处理动作;以及  After obtaining the second segment address data, obtain the third segment address data, know that in the flash memory, there is the classified block page, and the data can be processed; and 在取得该第三段地址数据之后,取得该第一段地址数据,最后得知在该快闪存储器中,存在该组已分类区块,可对数据进行处理动作。  After obtaining the third segment of address data, the first segment of address data is obtained, and finally it is known that the group of classified blocks exists in the flash memory, and the data can be processed. the 12.如权利要求9所述的方法,其中该数据处理流程包含:  12. The method according to claim 9, wherein the data processing flow comprises: 令该低阶处理层取得该第二段地址数据,得知在该快闪存储器中,存在该已分类单独区块,可对数据进行处理动作;  Make the low-level processing layer obtain the second segment address data, know that the classified separate block exists in the flash memory, and process the data; 在取得该第二段地址数据之后,取得该第一段地址数据,得知在该快闪存储器中,存在该组已分类区块,可对数据进行处理动作;  After obtaining the second segment address data, obtain the first segment address data, know that in the flash memory, there is the group of classified blocks, and the data can be processed; 在取得该第一段地址数据之后,取得该第三段地址数据,得知在该快闪存储器中,存在该已分类区块分页,可对数据进行处理动作;以及  After obtaining the first segment address data, obtain the third segment address data, know that in the flash memory, there is the classified block page, and the data can be processed; and 在取得该第三段地址数据之后,取得该第四段地址数据,最后得知在该快闪存储器中,存在已分类区块通道,可对数据进行处理动作。  After obtaining the third segment of address data, the fourth segment of address data is obtained, and finally it is known that there are classified block channels in the flash memory, and the data can be processed. the 13.如权利要求1所述的方法,其中该低阶处理层为快闪架构处理层。  13. The method of claim 1, wherein the low-level processing layer is a flash architecture processing layer. the 14.一种应用于一快闪存储器的阶层化分层处理数据的方法,包含:  14. A method for hierarchical and layered data processing applied to a flash memory, comprising: 将一逻辑地址传送至一高阶转译层以要求在该快闪存储器中进行一数据处理动作;  passing a logical address to a high-level translation layer to request a data processing action in the flash memory; 由一快闪架构处理层取得属于该快闪存储器的一硬件架构信息以将该硬件架构信息传送至该高阶转译层;  Obtaining a hardware architecture information belonging to the flash memory from a flash architecture processing layer to transmit the hardware architecture information to the high-level translation layer; 由该高阶转译层根据该硬件架构信息,在该快闪存储器中,设置一组对应至该逻辑地址的实体存储单元;  Setting a group of physical storage units corresponding to the logical address in the flash memory according to the hardware architecture information by the high-level translation layer; 由该高阶转译层根据该硬件架构信息,找出在该组对应至该逻辑地址的实体存储单元中,有一可供进行数据处理动作的实体存储单元;  The high-level translation layer finds, according to the hardware architecture information, a physical storage unit available for data processing among the group of physical storage units corresponding to the logical address; 由该高阶转译层根据该硬件架构信息,决定一数据处理流程以将该逻辑地址转换为对应至该可供进行数据处理动作的实体存储单元的一实体地址;以及  According to the hardware architecture information, the high-level translation layer determines a data processing flow to convert the logical address into a physical address corresponding to the physical storage unit available for data processing; and 由该快闪架构处理层根据由该高阶转译层所转换的该实体地址,在该可供进行数据处理动作的实体存储单元中,进行该数据处理动作;  The flash architecture processing layer performs the data processing action in the physical storage unit available for data processing action according to the physical address converted by the high-level translation layer; 其中,该高阶转译层用以令一用户端应用程序及一文件系统可在该快闪存储器内进行数据处理,以及负责搜集该快闪存储器使用状态的相关信息以管理该快闪存储器,并且,该快闪架构处理层根据该实体地址内的一第一段地址数据得知一组已分类区块,根据该实体地址内的一第二段地址数据得知一已分类单独区块,根据该实体地址内的一第三段地址数据得知一已分类区块分页,根据该实体地址内的一第四段地址数据得知一已分类分页区段,根据该实体地址内的一第五段地址数据得知一已分类区块通道。  Wherein, the high-level translation layer is used to enable a client application program and a file system to perform data processing in the flash memory, and is responsible for collecting relevant information of the usage status of the flash memory to manage the flash memory, and , the flash architecture processing layer obtains a group of classified blocks according to a first segment address data in the physical address, and obtains a classified individual block according to a second segment address data in the physical address, according to According to a third section of address data in the physical address, a classified block page is obtained, and a classified paging section is obtained according to a fourth section of address data in the physical address, and a classified paging section is obtained according to a fifth section of the physical address. The segment address data learns a sorted block channel. the 15.如权利要求14所述的方法,其中由一快闪架构处理层取得属于该快闪存储器的一硬件架构信息以将该硬件架构信息传送至该高阶转译层包含:  15. The method of claim 14, wherein obtaining a hardware architecture information belonging to the flash memory by a flash architecture processing layer to transmit the hardware architecture information to the high-level translation layer comprises: 由该高阶转译层发出一第一命令以指示该快闪架构处理层取得该硬件架构信息;以及  issuing a first command from the high-level translation layer to instruct the flash architecture processing layer to obtain the hardware architecture information; and 该快闪架构处理层根据该第一命令读取该快闪存储器的该硬件架构信息以回传至该高阶转译层。  The flash architecture processing layer reads the hardware architecture information of the flash memory according to the first command and sends it back to the high-level translation layer. the 16.如权利要求15所述的方法,其中在该快闪架构处理层根据该第一命令读取该快闪存储器的该硬件架构信息以回传至该高阶转译层之后还包含:  16. The method as claimed in claim 15, further comprising: 由该高阶转译层发出一第二命令以指示该快闪架构处理层取得一保留信息;以及  issuing a second command from the high-level translation layer to instruct the flash architecture processing layer to obtain a reserved message; and 该快闪架构处理层根据该第二命令读取该快闪存储器的该保留信息以回传至该高阶转译层,并且  The flash architecture processing layer reads the reserved information of the flash memory according to the second command to send back to the high-order translation layer, and 其中由该高阶转译层根据该硬件架构信息,决定一数据处理流程以将 该逻辑地址转换为对应至该可供进行数据处理动作的实体存储单元的一实体地址包括:  Wherein, according to the hardware architecture information, the high-level translation layer determines a data processing flow to convert the logical address into a physical address corresponding to the physical storage unit available for data processing, including: 由该高阶转译层根据该硬件架构信息及该保留信息,决定该数据处理流程以转换为该实体地址。  The high-level translation layer determines the data processing flow to be converted into the physical address according to the hardware architecture information and the reserved information. the 17.如权利要求14所述的方法,其中该高阶转译层用以隔绝由该用户端应用程序和该文件系统发送的要求以使该要求不能直接进入该快闪架构处理层。  17. The method of claim 14, wherein the high-level translation layer is used to isolate requests sent by the client application and the file system so that the requests cannot directly enter the flash architecture processing layer. the 18.如权利要求14所述的方法,其中该快闪架构处理层介于该高阶转译层及该快闪存储器之间,用以执行由该高阶转译层发送的命令,并将该硬件架构信息及由该快闪存储器取得的一保留信息回传至该高阶转译层。  18. The method as claimed in claim 14, wherein the flash architecture processing layer is interposed between the high-level translation layer and the flash memory, and is used to execute commands sent by the high-level translation layer and transfer the hardware Architecture information and a reserved information obtained from the flash memory are passed back to the HTL. the 19.如权利要求14所述的方法,其中该快闪架构处理层用以执行由该高阶转译层发送的命令,隔绝该高阶转译层发送的命令以使该命令不能直接进入该快闪存储器,并将该硬件架构信息及由该快闪存储器取得的一保留信息回传至该高阶转译层。  19. The method of claim 14, wherein the flash architecture processing layer is used to execute commands sent by the high-level translation layer, isolating the commands sent by the high-level translation layer so that the commands cannot directly enter the flash memory, and return the hardware architecture information and a reserved information obtained from the flash memory to the high-level translation layer. the 20.如权利要求14所述的方法,其中当一另一类型的快闪存储器取代该快闪存储器时,设置一另一类型的快闪架构处理层取代该快闪架构处理层,由该另一类型的快闪架构处理层取得属于该另一类型的快闪存储器的一另一类型的硬件架构信息以将该另一类型的硬件架构信息传送至该高阶转译层。  20. The method as claimed in claim 14, wherein when another type of flash memory replaces the flash memory, another type of flash architecture processing layer is provided to replace the flash architecture processing layer, and the other type A type of flash architecture processing layer obtains another type of hardware architecture information belonging to the other type of flash memory to transmit the other type of hardware architecture information to the high-level translation layer. the 21.如权利要求14所述的方法,其中该硬件架构信息提供可在该快闪存储器规划该组已分类区块、该已分类单独区块、该已分类区块分页、该已分类分页区段和该已分类区块通道的信息。  21. The method as claimed in claim 14, wherein the hardware architecture information provides that the group of classified blocks, the classified individual blocks, the classified block paging, and the classified paging area can be planned in the flash memory. segment and channel information for this classified block. the 22.如权利要求21所述的方法,其中该数据处理流程决定该快闪架构处理层取得该第一段地址数据、该第二段地址数据、第三段地址数据、该第四段地址数据和该第五段地址数据的顺序。  22. The method according to claim 21, wherein the data processing flow determines that the flash architecture processing layer obtains the first segment address data, the second segment address data, the third segment address data, and the fourth segment address data and the sequence of the fifth segment address data. the 23.如权利要求22所述的方法,其中该数据处理流程包含:  23. The method according to claim 22, wherein the data processing flow comprises: 令该快闪架构处理层取得该第一段地址数据,得知在该快闪存储器中,存在该组已分类区块,可对数据进行处理动作;  Make the flash architecture processing layer obtain the first segment of address data, know that in the flash memory, there is the group of classified blocks, and the data can be processed; 在取得该第一段地址数据之后,取得该第二段地址数据,得知在该快闪存储器中,存在该已分类单独区块,可对数据进行处理动作;  After obtaining the first segment address data, obtain the second segment address data, know that in the flash memory, there is the classified separate block, and the data can be processed; 在取得该第二段地址数据之后,取得该第三段地址数据,得知在该快闪存储器中,存在该已分类区块分页,可对数据进行处理动作;  After obtaining the second segment address data, obtain the third segment address data, know that in the flash memory, there is the classified block page, and the data can be processed; 在取得该第三段地址数据之后,取得该第四段地址数据,得知在该快闪存储器中,存在该已分类分页区段,可对数据进行处理动作;以及  After obtaining the third segment address data, obtain the fourth segment address data, know that in the flash memory, there is the classified paging segment, and the data can be processed; and 在取得该第四段地址数据之后,取得该第五段地址数据,最后得知在该快闪存储器中,存在已分类区块通道,可对数据进行处理动作。  After obtaining the fourth segment of address data, the fifth segment of address data is obtained, and finally it is known that there are classified block channels in the flash memory, and the data can be processed. the 24.如权利要求22所述的方法,其中该数据处理流程包含:  24. The method according to claim 22, wherein the data processing flow comprises: 令该快闪架构处理层取得该第五段地址数据,得知在该快闪存储器中,存在已分类区块通道,可对数据进行处理动作;  Make the flash architecture processing layer obtain the fifth segment address data, know that in the flash memory, there is a classified block channel, and the data can be processed; 在取得该第五段地址数据之后,取得该第二段地址数据,得知在该快闪存储器中,存在该已分类单独区块,可对数据进行处理动作;  After obtaining the fifth segment address data, obtain the second segment address data, know that in the flash memory, there is the classified separate block, and the data can be processed; 在取得该第二段地址数据之后,取得该第三段地址数据,得知在该快闪存储器中,存在该已分类区块分页,可对数据进行处理动作;  After obtaining the second segment address data, obtain the third segment address data, know that in the flash memory, there is the classified block page, and the data can be processed; 在取得该第三段地址数据之后,取得该第四段地址数据,得知在该快闪存储器中,存在该已分类分页区段,可对数据进行处理动作;以及  After obtaining the third segment address data, obtain the fourth segment address data, know that in the flash memory, there is the classified paging segment, and the data can be processed; and 在取得该第四段地址数据之后,取得该第一段地址数据,最后得知在该快闪存储器中,存在该组已分类区块,可对数据进行处理动作。  After obtaining the fourth segment address data, obtain the first segment address data, and finally know that the group of classified blocks exists in the flash memory, and the data can be processed. the 25.如权利要求22所述的方法,其中该数据处理流程包含:  25. The method according to claim 22, wherein the data processing flow comprises: 令该快闪架构处理层取得该第二段地址数据,得知在该快闪存储器中,存在该已分类单独区块,可对数据进行处理动作;  Make the flash architecture processing layer obtain the second segment of address data, know that in the flash memory, there is the classified separate block, and the data can be processed; 在取得该第二段地址数据之后,取得该第一段地址数据,得知在该快闪存储器中,存在该组已分类区块,可对数据进行处理动作;  After obtaining the second segment address data, obtain the first segment address data, know that in the flash memory, there is the group of classified blocks, and the data can be processed; 在取得该第一段地址数据之后,取得该第三段地址数据,得知在该快闪存储器中,存在该已分类区块分页,可对数据进行处理动作;  After obtaining the first segment address data, obtain the third segment address data, know that in the flash memory, there is the classified block page, and the data can be processed; 在取得该第三段地址数据之后,取得该第四段地址数据,得知在该快闪存储器中,存在该已分类分页区段,可对数据进行处理动作;以及  After obtaining the third segment address data, obtain the fourth segment address data, know that in the flash memory, there is the classified paging segment, and the data can be processed; and 在取得该第四段地址数据之后,取得该第五段地址数据,最后得知在该快闪存储器中,存在已分类区块通道,可对数据进行处理动作。  After obtaining the fourth segment of address data, the fifth segment of address data is obtained, and finally it is known that there are classified block channels in the flash memory, and the data can be processed. the 26.如权利要求14所述的方法,其中该高阶转译层为快闪架构转译层。  26. The method of claim 14, wherein the high-level translation layer is a flash architecture translation layer. the 27.一种使用阶层化分层处理数据的快闪存储器装置,包含:  27. A flash memory device using hierarchical and layered data processing, comprising: 一快闪存储器,由多个已分类单独区块组成;  A flash memory consisting of a plurality of classified individual blocks; 一命令及逻辑地址转换电路,用以令一高阶转译层接收一逻辑地址及一在该快闪存储器中进行一数据处理动作的要求,命令一低阶处理层取得属于该快闪存储器的一硬件架构信息以将该硬件架构信息传送至该高阶转译层,令该高阶转译层根据该硬件架构信息,在该多个已分类单独区块中,设置一组对应至该逻辑地址的实体存储单元,找出在该组对应至该逻辑地址的实体存储单元中,有一可供进行数据处理动作的实体存储单元,决定一数据处理流程以将该逻辑地址转换为对应至该可供进行数据处理动作的实体存储单元的一实体地址;以及  A command and logical address conversion circuit is used to make a high-level translation layer receive a logical address and a request to perform a data processing operation in the flash memory, and order a low-level processing layer to obtain a data belonging to the flash memory hardware architecture information to transmit the hardware architecture information to the high-level translation layer, so that the high-level translation layer sets a group of entities corresponding to the logical address in the plurality of classified individual blocks according to the hardware architecture information The storage unit finds a physical storage unit available for data processing in the group of physical storage units corresponding to the logical address, and determines a data processing flow to convert the logical address into data corresponding to the available data a physical address of the physical storage location where the action is processed; and 一执行命令及实体地址定址电路,用以令该低阶处理层根据由该高阶转译层所转换的该实体地址,在该可供进行数据处理动作的实体存储单元中,进行该数据处理动作;  An execution command and physical address addressing circuit, used to make the low-level processing layer perform the data processing operation in the physical storage unit available for data processing according to the physical address converted by the high-level translation layer ; 其中,该高阶转译层用以令一用户端应用程序及一文件系统可在该快闪存储器内进行数据处理,以及负责搜集该快闪存储器使用状态的相关信息以管理该快闪存储器,并且,该低阶处理层根据该实体地址内的一第一段地址数据得知一组已分类区块,根据该实体地址内的一第二段地址数据得知一已分类单独区块,根据该实体地址内的一第三段地址数据得知一已分类区块分页,根据该实体地址内的一第四段地址数据得知一已分类区块通道。  Wherein, the high-level translation layer is used to enable a client application program and a file system to perform data processing in the flash memory, and is responsible for collecting relevant information of the usage status of the flash memory to manage the flash memory, and , the low-level processing layer obtains a group of classified blocks according to a first segment of address data in the physical address, obtains a classified individual block according to a second segment of address data in the physical address, and according to the A classified block page is obtained from a third segment of address data in the physical address, and a classified block channel is obtained from a fourth segment of address data in the physical address. the 28.如权利要求27所述的装置,其中该命令及逻辑地址转换电路还包含:  28. The device as claimed in claim 27, wherein the command and logical address translation circuit further comprises: 一逻辑判断电路,用以令该高阶转译层发出一命令以指示该低阶处理层取得该硬件架构信息及一保留信息其中之一,令该低阶处理层根据该命令读取该快闪存储器的该硬件架构信息及该保留信息其中之一,以回传至该高阶转译层以及令该高阶转译层根据该硬件架构信息及该保留信息,决定该数据处理流程以转换为该实体地址。  A logic judgment circuit, used to make the high-level translation layer issue a command to instruct the low-level processing layer to obtain one of the hardware structure information and a reserved information, so that the low-level processing layer reads the flash memory according to the command One of the hardware architecture information and the reserved information of the memory is sent back to the high-level translation layer and the high-level translation layer determines the data processing flow for conversion into the entity according to the hardware architecture information and the reserved information address. the 29.如权利要求27所述的装置,其中该高阶转译层用以隔绝由该用户端应用程序和该文件系统发送的要求以使该要求不能直接进入该低阶处理层。  29. The device of claim 27, wherein the high-level translation layer is used to isolate requests sent by the client application and the file system so that the requests cannot directly enter the low-level processing layer. the 30.如权利要求27所述的装置,其中该低阶处理层介于该高阶转译层及该快闪存储器之间,用以执行由该高阶转译层发送的命令,并将该硬件 架构信息及由该快闪存储器取得的一保留信息回传至该高阶转译层。  30. The device as claimed in claim 27, wherein the low-level processing layer is between the high-level translation layer and the flash memory, and is used to execute commands sent by the high-level translation layer, and configure the hardware Information and a retained information retrieved from the flash memory are passed back to the HTL. the 31.如权利要求27所述的装置,其中该低阶处理层用以执行由该高阶转译层发送的命令,隔绝该高阶转译层发送的命令以使该命令不能直接进入该快闪存储器,并将该硬件架构信息及由该快闪存储器取得的一保留信息回传至该高阶转译层。  31. The device according to claim 27, wherein the low-level processing layer is used to execute commands sent by the high-level translation layer, isolating the commands sent by the high-level translation layer so that the commands cannot directly enter the flash memory , and return the hardware architecture information and a reserved information obtained from the flash memory to the high-level translation layer. the 32.如权利要求27所述的装置,其中当一另一类型的快闪存储器取代该快闪存储器时,设置一另一类型的低阶处理层取代该低阶处理层,由该另一类型的低阶处理层取得属于该另一类型的快闪存储器的一另一类型的硬件架构信息以将该另一类型的硬件架构信息传送至该高阶转译层。  32. The device as claimed in claim 27, wherein when a flash memory of another type replaces the flash memory, a low-level processing layer of another type is provided to replace the low-level processing layer, and the other type The low-level processing layer obtains another type of hardware architecture information belonging to the other type of flash memory to transmit the other type of hardware architecture information to the high-level translation layer. the 33.如权利要求27所述的装置,其中该硬件架构信息提供可在该快闪存储器规划该组已分类区块、该已分类单独区块、该已分类区块分页和该已分类区块通道的信息。  33. The device as claimed in claim 27, wherein the hardware architecture information provides the group of classified blocks, the classified individual blocks, the classified block paging and the classified blocks that can be planned in the flash memory channel information. the 34.如权利要求33所述的装置,其中该数据处理流程决定该低阶处理层取得该第一段地址数据、该第二段地址数据、第三段地址数据和该第四段地址数据的顺序。  34. The device as claimed in claim 33, wherein the data processing flow determines how the low-level processing layer obtains the first segment address data, the second segment address data, the third segment address data, and the fourth segment address data order. the 35.如权利要求34所述的装置,其中该数据处理流程包含:  35. The device of claim 34, wherein the data processing flow comprises: 令该低阶处理层取得该第一段地址数据,得知在该快闪存储器中,存在该组已分类区块,可对数据进行处理动作;  Make the low-level processing layer obtain the first piece of address data, know that the group of classified blocks exists in the flash memory, and process the data; 在取得该第一段地址数据之后,取得该第二段地址数据,得知在该快闪存储器中,存在该已分类单独区块,可对数据进行处理动作;  After obtaining the first segment address data, obtain the second segment address data, know that in the flash memory, there is the classified separate block, and the data can be processed; 在取得该第二段地址数据之后,取得该第三段地址数据,得知在该快闪存储器中,存在该已分类区块分页,可对数据进行处理动作;以及  After obtaining the second segment address data, obtain the third segment address data, know that in the flash memory, there is the classified block page, and the data can be processed; and 在取得该第三段地址数据之后,取得该第四段地址数据,最后得知在该快闪存储器中,存在已分类区块通道,可对数据进行处理动作。  After obtaining the third segment of address data, the fourth segment of address data is obtained, and finally it is known that there are classified block channels in the flash memory, and the data can be processed. the 36.如权利要求34所述的装置,其中该数据处理流程包含:  36. The device of claim 34, wherein the data processing flow comprises: 令该低阶处理层取得该第四段地址数据,得知在该快闪存储器中,存在该已分类区块通道,可对数据进行处理动作;  Make the low-level processing layer obtain the fourth segment address data, know that the classified block channel exists in the flash memory, and process the data; 在取得该第四段地址数据之后,取得该第二段地址数据,得知在该快闪存储器中,存在该已分类单独区块,可对数据进行处理动作;  After obtaining the fourth segment address data, obtain the second segment address data, know that in the flash memory, there is the classified separate block, and the data can be processed; 在取得该第二段地址数据之后,取得该第三段地址数据,得知在该快闪存储器中,存在该已分类区块分页,可对数据进行处理动作;以及  After obtaining the second segment address data, obtain the third segment address data, know that in the flash memory, there is the classified block page, and the data can be processed; and 在取得该第三段地址数据之后,取得该第一段地址数据,最后得知在该快闪存储器中,存在该组已分类区块,可对数据进行处理动作。  After obtaining the third segment of address data, the first segment of address data is obtained, and finally it is known that the group of classified blocks exists in the flash memory, and the data can be processed. the 37.如权利要求34所述的装置,其中该数据处理流程包含:  37. The device of claim 34, wherein the data processing flow comprises: 令该低阶处理层取得该第二段地址数据,得知在该快闪存储器中,存在该已分类单独区块,可对数据进行处理动作;  Make the low-level processing layer obtain the second segment address data, know that the classified separate block exists in the flash memory, and process the data; 在取得该第二段地址数据之后,取得该第一段地址数据,得知在该快闪存储器中,存在该组已分类区块,可对数据进行处理动作;  After obtaining the second segment address data, obtain the first segment address data, know that in the flash memory, there is the group of classified blocks, and the data can be processed; 在取得该第一段地址数据之后,取得该第三段地址数据,得知在该快闪存储器中,存在该已分类区块分页,可对数据进行处理动作;以及  After obtaining the first segment address data, obtain the third segment address data, know that in the flash memory, there is the classified block page, and the data can be processed; and 在取得该第三段地址数据之后,取得该第四段地址数据,最后得知在该快闪存储器中,存在已分类区块通道,可对数据进行处理动作。  After obtaining the third segment of address data, the fourth segment of address data is obtained, and finally it is known that there are classified block channels in the flash memory, and the data can be processed. the 38.如权利要求27所述的装置,其中该低阶处理层为快闪架构处理层。  38. The device of claim 27, wherein the low-level processing layer is a flash architecture processing layer. the 39.如权利要求27所述的装置,其中该高阶转译层为快闪架构转译层。  39. The apparatus of claim 27, wherein the high-level translation layer is a flash architecture translation layer. the
CN 200910003390 2009-01-22 2009-01-22 Hierarchical and hierarchical data processing method and device applied to flash memory Active CN101789259B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200910003390 CN101789259B (en) 2009-01-22 2009-01-22 Hierarchical and hierarchical data processing method and device applied to flash memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200910003390 CN101789259B (en) 2009-01-22 2009-01-22 Hierarchical and hierarchical data processing method and device applied to flash memory

Publications (2)

Publication Number Publication Date
CN101789259A CN101789259A (en) 2010-07-28
CN101789259B true CN101789259B (en) 2013-05-08

Family

ID=42532437

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200910003390 Active CN101789259B (en) 2009-01-22 2009-01-22 Hierarchical and hierarchical data processing method and device applied to flash memory

Country Status (1)

Country Link
CN (1) CN101789259B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109496336A (en) * 2018-10-26 2019-03-19 长江存储科技有限责任公司 Data processing method and associated data processors for memory

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102479157B (en) * 2010-11-22 2015-05-27 慧荣科技股份有限公司 Method for block management, memory device and controller thereof
CN105843556B (en) * 2016-03-21 2019-01-11 浙江宇视科技有限公司 A kind of VD choosing method and device
CN108829348B (en) * 2018-05-29 2022-03-04 上海兆芯集成电路有限公司 Memory device and command reordering method
CN109119123B (en) * 2018-07-20 2021-09-14 江苏华存电子科技有限公司 High, medium and low order flash memory classification method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1441338A (en) * 2002-02-27 2003-09-10 微软公司 Open type systemic structure flash storage driving program
CN101339510A (en) * 2007-07-02 2009-01-07 佛山市顺德区顺达电脑厂有限公司 EMS memory data access device and electronic device using same

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7093101B2 (en) * 2002-11-21 2006-08-15 Microsoft Corporation Dynamic data structures for tracking file system free space in a flash memory device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1441338A (en) * 2002-02-27 2003-09-10 微软公司 Open type systemic structure flash storage driving program
CN101339510A (en) * 2007-07-02 2009-01-07 佛山市顺德区顺达电脑厂有限公司 EMS memory data access device and electronic device using same

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109496336A (en) * 2018-10-26 2019-03-19 长江存储科技有限责任公司 Data processing method and associated data processors for memory

Also Published As

Publication number Publication date
CN101789259A (en) 2010-07-28

Similar Documents

Publication Publication Date Title
US10101927B2 (en) Data storage device and operating method thereof
US8583860B2 (en) Block management method for flash memory and controller and storage system using the same
US8386698B2 (en) Data accessing method for flash memory and storage system and controller using the same
US8055873B2 (en) Data writing method for flash memory, and controller and system using the same
US8001317B2 (en) Data writing method for non-volatile memory and controller using the same
US8606987B2 (en) Data writing method for flash memory and controller using the same
US8250286B2 (en) Block management method, and storage system and controller using the same
CN101464834B (en) Flash memory data writing method and controller using this method
TWI436212B (en) Data writing method, memory controller and memory storage apparatus
US20100057979A1 (en) Data transmission method for flash memory and flash memory storage system and controller using the same
CN104317753B (en) Storage device and its data read-write method
TWI660271B (en) Trim command recording method, memory control circuit unit and memory storage apparatus
CN106557432B (en) Buffer memory management method, memory control circuit unit and storage device
CN107402716A (en) Method for writing data, memory control circuit unit and internal storing memory
CN101789259B (en) Hierarchical and hierarchical data processing method and device applied to flash memory
US8943264B2 (en) Data storing method, and memory controller and memory storage apparatus using the same
CN102915273B (en) Data writing method, memory controller and memory storage device
CN104536906B (en) Data writing method, memory controller and memory storage device
CN113778907A (en) Storage device
TWI395100B (en) Method for processing data of flash memory by separating levels and flash memory device thereof
CN102890653B (en) Instruction execution method, memory controller and memory storage device
TWI571881B (en) Valid data merging method, memory controller and memory storage apparatus
CN102402396B (en) Composite storage device and its composite storage media controller and addressing method
CN104731710B (en) Memory management method, memory control circuit unit and memory storage device
CN106354651B (en) Average wear method, memory control circuit unit and memory storage device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20210527

Address after: 1 / F, 7 / F, No. 83, Section 2, gongdaowu Road, East District, Hsinchu, Taiwan, China

Patentee after: Asolid Technology Co.,Ltd.

Address before: Hsinchu City, Taiwan, China

Patentee before: INNOSTOR TECHNOLOGY Corp.

TR01 Transfer of patent right