CN101561781B - Method, device and controller for memory data access management - Google Patents

Method, device and controller for memory data access management Download PDF

Info

Publication number
CN101561781B
CN101561781B CN2008100930486A CN200810093048A CN101561781B CN 101561781 B CN101561781 B CN 101561781B CN 2008100930486 A CN2008100930486 A CN 2008100930486A CN 200810093048 A CN200810093048 A CN 200810093048A CN 101561781 B CN101561781 B CN 101561781B
Authority
CN
China
Prior art keywords
data
write
instruction
memory
storage element
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
CN2008100930486A
Other languages
Chinese (zh)
Other versions
CN101561781A (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.)
Phison Electronics Corp
Original Assignee
Phison Electronics 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 Phison Electronics Corp filed Critical Phison Electronics Corp
Priority to CN2008100930486A priority Critical patent/CN101561781B/en
Publication of CN101561781A publication Critical patent/CN101561781A/en
Application granted granted Critical
Publication of CN101561781B publication Critical patent/CN101561781B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

The invention discloses a method, a device and a controller for memory data access management. By installing a management device between a host side and a device side, the transmission of data betweenthe hose side and the device side is achieved. The device for memory data access management comprises a control unit and a storage unit. When a data writing instruction sent by the host side is recei ved by the control unit, a congregation corresponding to the data is found in the storage unit by the control unit, and the data in the congregation is updated; then the rest data of the storage unit and the device side is gathered continually by the control unit and is written to the device side after being integrated with the former transported data, therefore, the transmission effects are increased, the data writing times are reduced, and the service life of the device side is prolonged.

Description

The management method of memory data access, device and controller
Technical field
The present invention relates to a kind of storage management method and device, and particularly relate to a kind of management method, device and controller of memory data access.
Background technology
Electronic products such as digital camera, mobile phone camera and MP3 are very rapid in growth over the years, make the consumer also increase rapidly the demand of Storage Media.In miscellaneous Storage Media, flash memory (Flash Memory) is non-volatile because of having, power saving, volume is little and the characteristic of no mechanical structure etc., being particularly suitable for being used in mobile computer or personal digital assistant etc. needs battery-powered portable products, and as the built-in storage of this type of portable product.On the other hand, flash memory also is fit to use as small-sized Storage Medias such as storage card or carry-on dishes, and because dish is wider with the application of storage card with oneself, market scale is bigger, so flash memory has become product quite popular in the electronic industry in recent years.
Flash memory according to the difference of its storage unit kind can be divided into the individual layer storage unit (Single LevelCell, SLC) with non-(NAND) flash memory and multilayer storage unit (Multi Level Cell, MLC) and non-flash memory.Flash memory may be partitioned into a plurality of physical blocks (Physical block) usually in fact, followingly for convenience of description abbreviates physical blocks as block.Generally speaking, flash memory be with block as the least unit of wiping, that is each block contains the storage unit that is wiped free of in the lump of minimal amount.Each block can be divided into several pages (page) usually, and page or leaf is generally the minimum unit to flash memory programming (Program).In other words, page or leaf is the minimum unit of flash memory when writing data or reading of data.But what specify is, for different flash memory design, minimum unit of program also can be a sector (sector) size, and (Number of program NOP) is the individual layer storage unit and the non-flash memory of 4 technology for example to use the programming number of times.
Yet because writing of flash memory is to be least unit with page or leaf or sector, therefore when having data to write flash memory, no matter how little its data volume is, the storer of all must programme at least an one page or a sector.In addition, if will do renewal, then also need flash memory is carried out erasing move (least unit is a block) to the data that originally were recorded in the flash memory.Above-mentioned frequent write and erasing move will shorten the serviceable life of storer, and influence the usefulness of data transmission.
Summary of the invention
In view of this, the invention provides a kind of management method of memory data access, in advance the data of desire write store are integrated, in the write store, can increase the usefulness of data transmission again.
The invention provides a kind of management devices of memory data access, come the access action of diode-capacitor storage data, can increase the convenience of data management by independently control module and storage element.
The invention provides a kind of controller of memory data access, its data of desiring access are put into the storage element of storer outside and manage according to the instruction of host side, transmission usefulness and the way to manage used data are adjusted to optimum condition.
For realizing above-mentioned or other purpose, the present invention proposes a kind of management method of memory data access, be suitable for utilizing the control module that is disposed between host side and the equipment end, management is the data of transmission therebetween, wherein this control module comprises storage element of connection, the method comprises the following steps: that at first receiving data by host side writes instruction, and these data write instruction and comprise the data of indicating host side to want the write device end.Then, in storage element, look for the set of data phase mapping therewith, to upgrade the data in this set.Last then collect these data all the other partly, with write device end again after data updated is integrated.
In one embodiment of this invention, above-mentioned looking in the storage element and the data set of mapping mutually comprises the set of data phase mapping therewith in the data integration district of looking for storage element earlier with the step of upgrading the data in the set, to upgrade the data in the set.Wherein,, then look for the set of data phase mapping therewith in the data buffer of storage element, to upgrade the data in gathering if not have the set of data phase mapping therewith in the data integration district; If all do not have the set of data phase mapping therewith in data integration district and the data buffer, then in the data buffer, look for empty set and write data.
In one embodiment of this invention, above-mentioned set of looking for sky in the data buffer writes in the step of data, if be not free set in the data buffer, then earlier with the data-moving of a block in the data buffer to the data integration district, and then data are write this block of data buffer.And the data-moving of above-mentioned block with the data buffer to the step in data integration district is to select the data-moving of block the oldest in the data buffer to the data integration district.
In one embodiment of this invention, the data-moving of above-mentioned block with the data buffer to the step in data integration district, also comprise collection moved to this data in data integration district all the other partly, with write device end again after the data integration.
In one embodiment of this invention, above-mentioned data buffer comprises that adopting the set associative mode is a plurality of set with stored data separation, and each set comprises a plurality of blocks.
In one embodiment of this invention, all the other of above-mentioned collection data partly, the step of integrating back write-once equipment end with data updated comprise in storage element, collect these data earlier all the other partly, and then collect data to equipment end all the other partly, last then integrate these data all partly, write device ends again.
In one embodiment of this invention, above-mentioned method also is included in and executes after Data Update or the write step at every turn, corresponding sign in the sign rest area of renewal storage element.
In one embodiment of this invention, above-mentioned method also is included in and adds an error correcting code in the data that host side sends here, again these data is write storage element.
In one embodiment of this invention, above-mentioned method comprises that also receiving data read by host side instructs, and looks for the data that will read, according to this to send host side in storage element.Wherein, if do not store these data in the storage element, look for the data that will read to equipment end again, to send host side to.
In one embodiment of this invention, the above-mentioned data that will read of looking in storage element comprise with the step that sends host side to and earlier to look for the data that will read in the data integration district of storage element, to send host side to.Wherein, if do not store these data in the data integration district, look for the data that will read again to the data buffer, to send host side to
In one embodiment of this invention, above-mentioned method comprises that also receiving a data reformation instructs, integrate block in the data integration district, to set up one, and in regular turn the block of each set in the data buffer is moved to integrating block, and collect and integrate this block data all the other partly, write device ends again.Wherein, above-mentioned data reforming instruction comprises it being to be sent by host side, or when full data have been write in the data buffer of storage element, is produced by control module.
The present invention proposes a kind of management devices of memory data access, and it is disposed between host side and the equipment end, in order to manage the data of transmission therebetween.This management devices comprises storage element and control module.Wherein, storage element is in order to store the data that host side is sent here.Control module then is to write instruction in order to receive the data of being sent by host side, look in the storage element data therewith according to this and write the set of the indicated data phase mapping of instruction, to upgrade the data in the set, and collect these data all the other partly, after data updated is integrated, write this equipment end again.
In one embodiment of this invention, above-mentioned storage element comprises data buffer and data integration district.Wherein, the data buffer is that the data separation that adopts the set associative mode that host side is sent here is that a plurality of set store, and comprises a plurality of blocks in each set.The data integration district is in order to the data that receive and storage is moved by the data buffer, and all the other parts of the data of being come by the control module collection.
In one embodiment of this invention, above-mentioned control module comprises looks for earlier the set of data phase mapping therewith in the data integration district, to upgrade the data in the set.Wherein,, in the data buffer, look for and the data set of mapping mutually again, to upgrade the data in the set if in the data integration district, can not find and the data set of mapping mutually; If all can not find and the data set of mapping mutually in data integration district and the data buffer, then in the data buffer, look for empty set and write data.
In one embodiment of this invention, above-mentioned control module comprises that also receiving data read by host side instructs, and looks for the data that will read, according to this to send host side in storage element and equipment end.In addition, control module also comprises that receiving data reforming instructs, and sets up one according to this and integrates block, and in regular turn the block of each set in the data buffer is moved to integrating block in the data integration district, and all the other parts of the data of collection and this block of integration, write this equipment end again.
In one embodiment of this invention, above-mentioned storage element also comprises a sign rest area, it is in order to the pairing sign of storage data in record data buffer zone and the data integration district, control module then can upgrade sign corresponding in the sign rest area after renewal that at every turn executes data or write step.
In one embodiment of this invention, above-mentioned management devices also comprises an error correction unit, and it is in order to add error correcting code in these data of sending here in host side.
The present invention proposes a kind of controller, and it comprises that microprocessing unit, main frame link interface, storer links interface and memory management module.Wherein, microprocessing unit is the overall operation in order to the control controller.Main frame links interface and is coupled to host side and microprocessing unit, and storer links interface and then is coupled to equipment end and microprocessing unit.Memory management module also is coupled to microprocessing unit, is suitable for the data of transmitting by between microprocessing unit management host end and the equipment end.Wherein, when linking interface by main frame, microprocessing unit receives the data of sending by host side when writing instruction, will look for storage element that microprocessing unit couples in therewith data write the indicated data set of mapping mutually of instruction, to upgrade the data in this set, collect all the other parts of these data then, after data updated is integrated, the data write-once equipment end after will integrating by storer binding interface again.
In one embodiment of this invention, above-mentioned controller also comprises the error correction unit, and it is coupled to microprocessing unit, and in order to add error correcting code in the data of sending here in host side.
In one embodiment of this invention, above-mentioned Memory Management Unit also is included in microprocessing unit when linking interface and receive the data read instruction that host side sends by main frame, in storage element and equipment end, look for the data that will read, send host side to and link interface by main frame.
In one embodiment of this invention, above-mentioned Memory Management Unit also is included in microprocessing unit and receives data reforming when instruction, in storage element, set up one and integrate block, and move one of them data of a plurality of blocks in the storage element in regular turn to integrating block, and all the other parts of collection and this block data of integration, and link interface write-once equipment end by storer.
In one embodiment of this invention, above-mentioned equipment end comprises flash memory, and above-mentioned storage element comprises Synchronous Dynamic Random Access Memory (Synchronous Dynamic Random AccessMemory, SDRAM) and double-channel Synchronous Dynamic Random Access Memory (Double Data RateSynchronous Dynamic Random Access Memory, DDR SDRAM) one of them.
The present invention adopts the structure of additional configuration controller and storage element between host side and equipment end, before data write device end, earlier data are sent in the storage element with before deposited storage element in or integrate by the data that equipment end reads after write device end again, the transmission usefulness and the way to manage of data can be adjusted to optimum condition in view of the above.
For above and other objects of the present invention, feature and advantage can be become apparent, preferred embodiment cited below particularly, and be described with reference to the accompanying drawings as follows.
Description of drawings
Fig. 1 is the management framework synoptic diagram of the memory data access that illustrates according to first embodiment of the invention.
Fig. 2 is the synoptic diagram of the storage element framework that illustrates according to first embodiment of the invention.
Fig. 3 is the synoptic diagram of the data buffer framework that illustrates according to first embodiment of the invention.
Fig. 4 is the management method process flow diagram that the memory data that illustrates according to second embodiment of the invention writes.
Fig. 5 is the management method process flow diagram that the memory data that illustrates according to third embodiment of the invention reads.
Fig. 6 is the management method process flow diagram that the memory data that illustrates according to fourth embodiment of the invention is reformed.
Fig. 7 is the controller calcspar of the memory data access that illustrates according to fifth embodiment of the invention.
The reference numeral explanation
100: management framework
110: host side
120: management devices
121: storage element
121a: data buffer
121b: data integration district
121c: sign rest area
122: control module
130: equipment end
700: controller
710: microprocessing unit
720: main frame links interface
730: storer links interface
740: memory management module
750: the error correction unit
S402~S420: each step of the management method that the memory data of second embodiment of the invention writes
S502~S514: each step of the management method that the memory data of third embodiment of the invention reads
S602~S420: each step of the management method that the memory data of fourth embodiment of the invention is reformed
Embodiment
Transmission usefulness and way to manage at memory data, the present invention adopts a controller of configuration and a storage element between two data transmission terminals, as dynamic RAM (DynamicRandom Access Memory, DRAM) framework, coordination by controller, the transmission data are put into this storer so that data are done whole management, and the data after the management are given the destination again and are stored, and use obtaining maximum data transmission efficiency.In order to make content of the present invention more cheer and bright, below the foundation that can implement according to this really as the present invention especially exemplified by embodiment.
First embodiment
Fig. 1 is the management framework synoptic diagram of the memory data access that illustrates according to first embodiment of the invention.Please refer to Fig. 1, the management framework 100 of present embodiment disposes a management devices 120 between host side 110 and equipment end 130, and manages in order to the data to transmission between host side 110 and the equipment end 130.Wherein, above-mentioned host side 110 for example is that (Personal Digital Assistant PDA) waits portable electronic devices, and equipment end 130 then for example is flash memory (Flash memory), does not limit its scope for computing machine or personal digital assistant.
Comprise a storage element 121 and a control module 122 in the management devices 120.Wherein, storage element 121 can be a volatile memory (Volatile Memory), as synchronous dynamic RAM (Synchronous Dynamic Random Access Memory, SDRAM) or double-channel Synchronous Dynamic Random Access Memory (Double Data Rate Synchronous DynamicRandom Access Memory, DDR SDRAM), and in order to store the data of sending here by host side 110.Capacity is big because this type of storer has, the usefulness advantages of higher, therefore can promote the usefulness of data transmission.
Control module 122 is connected with host side 110, equipment end 130, and in order to manage the data of transmission therebetween.Wherein, when receiving data from host side 110, control module 122 writes when instruction, promptly can arrive and look for the set that data therewith write the mapping of the indicated data phase of instruction in the storage element 121, to upgrade the data in the set, all the other of also collecting simultaneously these data are partly come and its integration, at last write device end 130 again.Because the data of write device end 130 through arrangement, are not random writing mussily, therefore can reduce the number of times of data write device end 130, and then prolong the serviceable life of equipment end 130.
In detail, Fig. 2 is the synoptic diagram of the storage element framework that illustrates according to first embodiment of the invention.Please be simultaneously with reference to Fig. 1 and Fig. 2, present embodiment is that storage element 121 is divided into data buffer 121a, data integration district 121b and sign rest area 121c etc. three partly, and utilize 122 pairs of data that are stored in these zones of control module to manage, use the usefulness that increases data transmission.
Present embodiment is that the data that adopt the mode of N-way set associative (Set associatiVe) that host side 110 is sent here are put into data buffer 121a for the management of data.But what deserves to be explained is that the management mode of its data also can be direct reflection formula (Direct mapped), or complete association type (fullassociative), do not disclose and exceed with this paper.
Fig. 3 is the synoptic diagram of the data buffer framework that illustrates according to first embodiment of the invention.Please refer to Fig. 3, data buffer 121a divides into M set (comprising set 0~set M-1), and each set is according to its pairing logical block addresses (Logical block addressing, LBA) can divide into a plurality of blocks again, for example gather 0 and promptly comprise block 0~block N-1, wherein M, N are positive integer.
If the data that host side 110 is deposited have been piled in certain set of data buffer 121a, control module 122 promptly can be looked for the oldest block of data in this set, and the data-moving of this block put in order to data integration district 121b, and the block that is available among the 121a of data buffer can continue to be used for to collect by host side 110 and transmits and the data of coming.This moving data amount can hurdle (sector), and page or leaf (page) or block (block) are unit.
On the other hand, when data integration district 121b collects the data of being moved by data buffer 121a, control module 122 will look for further that data therewith are associated all the other partly come data integration therewith, write device end 130 together again.Wherein, control module 122 can in storage element 121, collect these data earlier all the other partly, all the other that arrive more afterwards that equipment end 130 collects data are partly, and are last then with collected data and raw data integration, the write device end 130 again.To write data volume too small so that write the too frequent problem of indegree in the past because the data of last write device end 130 through arrangement, therefore can solve.
Sign rest area 121c is in order to the pairing sign of storage data among record data buffer zone 121a and the data integration district 121b.Wherein, control module 122 is included in after the renewal or write step that at every turn executes data, promptly can upgrade corresponding sign among this sign rest area 121c, with as the renewal of carrying out data next time or write fashionable reference.
What deserves to be mentioned is that the storage element 121 of present embodiment comprises that also reserving a data working area (not illustrating) uses as elasticity for control module 122, it can keep in some data or the space of moving mutually as data.On the other hand, an also configurable error correction unit (not illustrating) in the management devices 120 is in order to add error correcting code, the data that can right the wrong when being beneficial to data transmission in the data that transmit in host side 100.This error correction unit can switch, when the error correction unit is opened, promptly can add error correcting code to the data that host side 110 is sent here, this error correcting code can be deposited in the above-mentioned data working area, also can be sent to equipment end 130 and carry out error correction for equipment end 130.
Mutual utilization by above-mentioned data buffer 121a, data integration district 121b and sign rest area 121c, control module 122 can be carried out corresponding access action according to the instruction that host side 110 is assigned, comprising data write, data read and data reforming or the like, respectively describe in detail with next for an embodiment.
Second embodiment
Aspect data write, please refer to Fig. 4, present embodiment is applicable to the management framework of above-mentioned first embodiment, be suitable for receiving data and write when instruction, the data that host side is sent are integrated, again the write device end at control module, reduce the number of times that data write according to this, its step comprises:
At first, the data of being sent by control module reception host side write instruction (step S402).Wherein, these data write the data that instruction comprises that indication will write.Then, control module can be looked for earlier the set that data therewith write the indicated data phase mapping of instruction in the data integration district, to upgrade the data (step S404) in this set.
If control module finds the set of data phase mapping therewith in the data integration district, can be with Data Update to data integration district (step S406), and the sign relevant with the data integration district in the modified logo rest area; Otherwise if do not have the set of data phase mapping therewith in the data integration district, then control module can be again looked for the set (step S408) of data phase mapping therewith in the data buffer.
If find the set of mapping in the data buffer, control module can be with Data Update to the data buffer (step S410), and the sign relevant with the data buffer in the modified logo rest area; Otherwise if can not find the set of mapping in the data buffer, control module then can be looked for empty set (step S412) in the data buffer.
If find empty set in the data buffer, control module promptly can be set up new block and come store data (step S414) in this set, and the sign relevant with the data buffer in the modified logo rest area; Yet, if in the data buffer, can not find empty set, then control module can be set up a new integration block (step S416) in the data integration district, and chooses certain block in the data buffer, and with the data-moving of this block to integrating block (step S418).Wherein, the above-mentioned block of being chosen by control module for example is a block the oldest in the data buffering.
After data-moving, control module can write data the block that data buffer hollow is got off, and moves to the data of integrating block and is then integrated by control module, again write device end (step S420).At last, control module will be confirmed whether end of transmission (step S422) of data, if also do not have end of transmission, then gets back to step S404, continues the transmission data; If end of transmission, then finish the flow process of whole data transmission.
By the flow process that above-mentioned data write, after the data that host side can be desired the write device end were done arrangement in advance, therefore the write device end can reduce the number of times of data write device end, and then prolong the serviceable life of equipment end again.
The 3rd embodiment
Aspect data read, Fig. 5 is the management method process flow diagram that the memory data that illustrates according to third embodiment of the invention reads.Please refer to Fig. 5, present embodiment is applicable to the management framework of above-mentioned first embodiment, is suitable for looking for required data in regular turn from storage element and equipment end when control module receives the data read instruction, uses the efficient that increases data read, and its step comprises:
At first, receive the data read instruction (step S502) that host side is sent by control module.Wherein, this data read instruction comprises the data that indication will be read.Then, control module can arrive and look for these data (step S504) in the data integration district.
If find this data in the data integration district, control module can be sent to these data host side (step S510); Otherwise if can not find this data in the data integration district, control module will change into and look for data (step S506) in the data buffer.
In like manner, if find these data in the data buffer, control module can be sent to these data host side (step S510); Otherwise if can not find these data in the data buffer, control module is just looked for data (step S508) in equipment end, data are sent to host side (step S510).At last, control module can be confirmed whether end of transmission (step S512) of data, if also do not have end of transmission, then gets back to step S504, continues the transmission data; If end of transmission, then finish the flow process of whole data transmission.
By the flow process of above-mentioned data read, can be directly obtain the data desiring to read, and, therefore can increase the efficient of data read because what store in the storage element all is up-to-date data from storage element.In addition, just can arrive in the equipment end when only in storage element, can not find data and search, therefore can reduce the number of times of access arrangement end, and then increase the serviceable life of equipment end.
The 4th embodiment
Aspect data reforming, Fig. 6 is the management method process flow diagram that the memory data that illustrates according to fourth embodiment of the invention is reformed.Please refer to Fig. 6, present embodiment is applicable to the management framework of above-mentioned first embodiment, be suitable for when control module receives the data reforming instruction, the data that are stored in the storage element being integrated, and the data write device end after will integrating, its step comprises:
At first, receive data integration instruction (step S602) by control module.Wherein, the data integration instruction for example is to be sent by host side, or when the full of data of the data buffer of storage element, is produced automatically by control module.The usefulness of carrying out data integration herein is intended to and data older in the data buffer can be rearranged back write device end, and the space that goes out clearly then can be left the data of subsequent transmission for and deposit.
Then, enter the flow process of data reforming, control module can be set up in the data integration district earlier and integrate block (step S604) this moment, and then in regular turn the block of each set in the data buffer was moved to integrating block (step S606).Next control module will continue in storage element or equipment end to collect this moving data all the other partly and therewith data integrate (step S608), the data write device end (step S610) after just will integrating at last.At last, control module after having integrated the data of a block at every turn, also comprise and check the data that whether also have other block in the data buffer do not reform (step S612), if still have the data of other block not reform, then get back to step S604, proceed the step of data-moving, collection and reformation, till all set and block are all reformed and finished in the data buffer.
In detail, control module can be found out a block earlier from first set of data buffer, and the data-moving of this block integrated to integrating block, after the data integration for the treatment of this block finishes, move the data of another block again, and when all blocks of a set all integrate finish after, can carry out data integration according to the next set of select progressively again, so repeat to move, reform, finally can in the data buffer, transmit and next data to deposit host side between clear clearancen.
Flow process by above-mentioned data reforming, can be with the data write device end of depositing in the data buffer for a long time, deposit and the space kept to new transmission data, so can allow the data in the data buffer remain on up-to-date state, providing the host side access to use, and then increase the efficient of data transmission.
The 5th embodiment
According to the management framework and the method flow of above-mentioned memory data access, the present invention also comprises provides a kind of controller, in order to carry out above-mentioned management method.Fig. 7 is the controller calcspar of the memory data access that illustrates according to fifth embodiment of the invention.Please refer to Fig. 7, the controller 700 of present embodiment is configured between two data transmission terminals (being host side and equipment end), and manages in order to the data to transmission therebetween.This controller 700 comprises that microprocessing unit 710, main frame link interface 720, storer links interface 730, memory management module 740 and error correction unit 750, and is connected with a storage element (not illustrating) in addition.
Microprocessing unit 710 for example is a microprocessor (Microprocessor), and in order to control the overall operation of controller.The interface of interface 720 in order to provide controller 700 to be connected to the external host end is provided main frame, and it then is in order to provide controller 700 to be connected to the interface of external unit end that storer links interface 730.In addition, error correction unit 750 is in order to add error correcting code in the data of sending here in host side, the data that can right the wrong when being beneficial to data transmission.
It should be noted that memory management module 740 is connected with microprocessing unit 710, and can come the data transmitted between management host end and the equipment end by microprocessing unit 710.In detail, receive the data of sending by host side when writing instruction, will arrive in the storage element that controller 700 connects therewith of outside and look for the set of data phase mapping therewith when microprocessing unit 710 links interface 720 by main frame.All the other that then upgrade the data of this set afterwards and collect these data partly with its integration after, and then link interface 730 write-once equipment end by storer.
On the other hand, when microprocessing unit 710 links interface 720 and receives the data read instruction that host side sends by main frame, to in storage element and equipment end, look for the data that host side will read in regular turn, and then send host side to by main frame binding interface 720.
Moreover, when microprocessing unit 710 receives the data reforming instruction, can in storage element, set up earlier one and integrate block, and in regular turn with the data-moving of each block in the storage element to integrating block, and collect with integrate this block data all the other partly, and the data write-once equipment end after will integrating by storer binding interface 730.
In sum, in management method, device and the controller of memory data access of the present invention, by configuration one group controller and dynamic RAM between two data transmission terminals, fashionable whenever there being data to write, promptly earlier with data storing to dynamic RAM, so that these data are done whole management.Data after the management write data transmission terminal again, can reduce the number of times that data write in view of the above, and can increase the usefulness of data transmission.
Though the present invention discloses as above with preferred embodiment; right its is not in order to limit the present invention; those skilled in the art can do some changes and retouching under the premise without departing from the spirit and scope of the present invention, so protection scope of the present invention is as the criterion with claim of the present invention.

Claims (27)

1. the management method of a memory data access is suitable for utilizing a control module that is disposed between a host side and the equipment end, and management is data of transmission therebetween, and wherein this control module comprises connection one storage element, and this method comprises the following steps:
Receive the data that this host side sends and write instruction, these data write these data that instruction comprises that indication will write;
Look in this storage element and the set of mapping mutually of these data, to upgrade the data in this set; And
All the other of collecting that these data write indicated these data of instruction partly, after this data integration of upgrading in this set, this equipment end of write-once.
2. the management method of memory data access as claimed in claim 1 is wherein looked in this storage element and this set of mapping mutually of these data, comprises with the step of upgrading the data in this set:
Look in the data integration district of this storage element and write indicated these data this set of mapping mutually of instruction, to upgrade the data in this set with these data;
If do not write indicated these data set of mapping mutually of instruction in this data integration district with these data, then look in the data buffer of this storage element and write indicated these data this set of mapping mutually of instruction, to upgrade the data in this set with these data; And
If all do not write indicated these data set of mapping mutually of instruction with these data in this data integration district and this data buffer, the set of then looking for sky in this data buffer writes these data and writes these indicated data of instruction.
3. the management method of memory data access as claimed in claim 2, wherein in this data buffer, look for empty set and write the step that these data write these indicated data of instruction and comprise:
If be not free set in this data buffer, then with the data-moving of a block of this data buffer to this data integration district; And
Write these data and write these indicated data of instruction this block to this data buffer.
4. the management method of memory data access as claimed in claim 3 wherein comprises the data-moving of this block of this data buffer step to this data integration district:
The data-moving of selecting this oldest in this data buffer block is to this data integration district.
5. the management method of memory data access as claimed in claim 3, wherein with the data-moving of this block of this data buffer to the step in this data integration district, also comprise:
All the other parts to these data in this data integration district are moved in collection, after integrating with raw data, and this equipment end of write-once.
6. the management method of memory data access as claimed in claim 2, wherein this data buffer comprises that the set associative mode of employing is a plurality of set with stored data separation, and each set comprises a plurality of blocks.
7. the management method of memory data access as claimed in claim 1 is wherein collected all the other parts that these data write these indicated data of instruction, and after this data integration of upgrading in this set, the step of this equipment end of write-once comprises:
These data of collection write all the other parts of these indicated data of instruction in this storage element;
Collect all the other parts that these data write these indicated data of instruction to this equipment end; And
Integrate all parts that these data write these indicated data of instruction, this equipment end of write-once.
8. the management method of memory data access as claimed in claim 1 also comprises:
After renewal that at every turn executes data or write step, upgrade one of this storage element and indicate a sign corresponding in the rest area.
9. the management method of memory data access as claimed in claim 1 also comprises:
In the data that this host side is sent here, add an error correcting code, write this storage element again.
10. the management method of memory data access as claimed in claim 1 also comprises:
Receive the data read instruction that this host side is sent, this data read instruction comprises the data that indication will be read;
In this storage element, look for these data that will read, to send this host side to; And
As if these data that do not have in this storage element to read, look for these data that will read to this equipment end again, to send this host side to.
11. the management method of memory data access as claimed in claim 10 is wherein looked for these data that will read in this storage element, comprise with the step that sends this host side to:
In a data integration district of this storage element, look for these data that will read, to send this host side to; And
As if these data that do not have in this data integration district to read, look for these data that will read to a data buffer of this storage element again, to send this host side to.
12. the management method of memory data access as claimed in claim 1 also comprises:
Receive data reforming instruction;
In a data integration district of this storage element, set up one and integrate block;
In regular turn the block of a plurality of set of a data buffer is moved to this integration block; And
Collect and integrate all the other parts of the data of this block of being moved, this equipment end of write-once.
13. the management method of memory data access as claimed in claim 12, wherein the instruction of this data reforming comprises by this host side and sending, or when full data have been write in this data buffer of this storage element, by this control module generation.
14. the management method of memory data access as claimed in claim 1, wherein this equipment end comprises flash memory.
15. the management method of memory data access as claimed in claim 1, wherein this storage element comprise Synchronous Dynamic Random Access Memory and double-channel Synchronous Dynamic Random Access Memory one of them.
16. the management devices of a memory data access is disposed between a host side and the equipment end, in order to the data that management is transmitted therebetween, this management devices comprises:
One storage element is in order to store these data that this host side is sent here;
One control module, write instruction in order to receive the data that this host side sends, look for according to this in this storage element and write the indicated data set of mapping mutually of instruction with these data, to upgrade the data in this set, and collect that these data write indicated these data of instruction all the other partly, after this data integration of having upgraded, this equipment end of write-once.
17. the management devices of memory data access as claimed in claim 16, wherein this storage element comprises:
One data buffer, the data separation that adopts a set associative mode that this host side is sent here are that a plurality of set store, and each set comprises a plurality of blocks; And
One data integration district, in order to receiving and to store data of moving by this data buffer, and by this control module collect and these data of moving by this data buffer of coming all the other partly.
18. the management devices of memory data access as claimed in claim 17, wherein this control module comprises that first looking for these data writes indicated these data this set of mapping mutually of instruction in this data integration district, to upgrade the data in this set, if do not write indicated these data set of mapping mutually of instruction in this data integration district with these data, look in this data buffer again with these data and write indicated these data this set of mapping mutually of instruction, to upgrade the data in this set, if all do not write indicated these data set of mapping mutually of instruction with these data in this data integration district and this data buffer, the set of then looking for sky in this data buffer writes these data and writes these indicated data of instruction.
19. the management devices of memory data access as claimed in claim 17, wherein this control module also comprises the data read instruction that this host side of reception is sent, in this storage element and this equipment end, look for the data that will read according to this, to send this host side to.
20. the management devices of memory data access as claimed in claim 17, wherein this control module comprises that also receiving a data reforming instructs, in this data integration district, set up one according to this and integrate block, and in regular turn the block of a plurality of set of this data buffer is moved to this integration block, and collect and integrate this block of being moved data all the other partly, this equipment end of write-once.
21. the management devices of memory data access as claimed in claim 17, wherein this storage element also comprises:
One sign rest area is in order to write down the pairing sign of storage data in this data buffer and this data integration district.
22. the management devices of memory data access as claimed in claim 21, wherein this control module is included in after the renewal or write step that at every turn executes data, upgrades sign corresponding in this sign rest area.
23. the management devices of memory data access as claimed in claim 16 also comprises:
One error correction unit is in order to add an error correcting code in the data of sending here in this host side.
24. the controller of a memory data access comprises:
One microprocessing unit is in order to control the overall operation of this controller;
One main frame links interface, is coupled to a host side and this microprocessing unit;
One storer links interface, is coupled to an equipment end and this microprocessing unit;
One memory management module is coupled to this microprocessing unit, in order to manage data of transmitting between this host side and this equipment end by this microprocessing unit, wherein
When linking interface by this main frame, this microprocessing unit receives data that this host side sends when writing instruction, look for a storage element that this microprocessing unit couples in write the indicated data set of mapping mutually of instruction with these data, to upgrade the data in this set, and collect that these data write indicated these data of instruction all the other partly, after this data integration of upgrading in this set, link this equipment end of data write-once after interface will be integrated by this storer.
25. the controller of memory data access as claimed in claim 24 also comprises:
One error correction unit is coupled to microprocessing unit, in order to add an error correcting code in the data of sending here in this host side.
26. the controller of memory data access as claimed in claim 24, wherein this Memory Management Unit also comprises:
When this microprocessing unit links interface and receives the data read instruction that this host side sends by this main frame, in this storage element and this equipment end, look for the data that will read, and send this host side to by this main frame binding interface.
27. the controller of memory data access as claimed in claim 24, wherein this memory management module also comprises:
When this microprocessing unit receives data reforming instruction, in this storage element, set up one and integrate block, integrate block and move one of them data of a plurality of blocks in this storage element in regular turn to this, and collect and integrate this block of being moved data all the other partly, and link this equipment end of interface write-once by this storer.
CN2008100930486A 2008-04-15 2008-04-15 Method, device and controller for memory data access management Active CN101561781B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008100930486A CN101561781B (en) 2008-04-15 2008-04-15 Method, device and controller for memory data access management

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008100930486A CN101561781B (en) 2008-04-15 2008-04-15 Method, device and controller for memory data access management

Publications (2)

Publication Number Publication Date
CN101561781A CN101561781A (en) 2009-10-21
CN101561781B true CN101561781B (en) 2011-03-30

Family

ID=41220594

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100930486A Active CN101561781B (en) 2008-04-15 2008-04-15 Method, device and controller for memory data access management

Country Status (1)

Country Link
CN (1) CN101561781B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103425439A (en) * 2013-07-16 2013-12-04 记忆科技(深圳)有限公司 Method for reading and writing solid-state disk and solid-state disk thereof

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6789162B1 (en) * 2000-10-17 2004-09-07 Sun Microsystems, Inc. Storage controller configured to select unused regions of a storage device for data storage according to head position
US6961816B2 (en) * 1996-11-21 2005-11-01 Hitachi, Ltd. Disk array device with selectable method for generating redundant data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6961816B2 (en) * 1996-11-21 2005-11-01 Hitachi, Ltd. Disk array device with selectable method for generating redundant data
US6789162B1 (en) * 2000-10-17 2004-09-07 Sun Microsystems, Inc. Storage controller configured to select unused regions of a storage device for data storage according to head position

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JP特开2008-27383A 2008.02.07
JP特开平10-124381A 1998.05.15
JP特开平5-73413A 1993.03.26

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103425439A (en) * 2013-07-16 2013-12-04 记忆科技(深圳)有限公司 Method for reading and writing solid-state disk and solid-state disk thereof

Also Published As

Publication number Publication date
CN101561781A (en) 2009-10-21

Similar Documents

Publication Publication Date Title
CN100524209C (en) Method for updating data in nonvolatile memory array
CN101593156B (en) Method, system and controller for managing multiple memorizers
EP1920335B1 (en) Reclaiming data storage capacity in flash memory systems
US7450420B2 (en) Reclaiming data storage capacity in flash memories
US8001317B2 (en) Data writing method for non-volatile memory and controller using the same
CN105009091B (en) A kind of data-storage system and the dynamic headspace method for data-storage system
CN101233481B (en) Interfacing systems operating through a logical address space and on a direct data file basis
CN102831070B (en) For the method and system that the memory address of storage arrangement remaps
CN100520734C (en) Control apparatus and method of flash memory
CN102135942B (en) Method for realizing wear-leveling in storage equipment as well as the storage equipment
US20100057979A1 (en) Data transmission method for flash memory and flash memory storage system and controller using the same
CN104126178A (en) SLC-MLC wear balancing
CN102171663A (en) Managing storage of cached content
CN101124555A (en) Non-volatile memory and method with multi-stream updating
CN101606133A (en) Use with immediate data file system of continuous logical address space interface
CN101625897B (en) Data write-in method, storage system and controller used for quick flash memory
CN101464834A (en) Flash memory data write-in method and controller using the same
EP1913463A2 (en) Management of memory blocks which directly store data files
CN101425338B (en) Writing method for nonvolatile memory and controller using the method
CN101661431B (en) Block management method for flash memory, flash storage system and controller
CN101408864A (en) Data protection method for current failure and controller using the same
US8209464B2 (en) Management method, management apparatus, and controller for memory data access
CN103309619A (en) NAND Flash memory data storage method
CN101561781B (en) Method, device and controller for memory data access management
CN105653208A (en) Data storage system and data read-write method based on same

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