CN101521039B - Data storage system, controller and method therefor - Google Patents

Data storage system, controller and method therefor Download PDF

Info

Publication number
CN101521039B
CN101521039B CN2008100815717A CN200810081571A CN101521039B CN 101521039 B CN101521039 B CN 101521039B CN 2008100815717 A CN2008100815717 A CN 2008100815717A CN 200810081571 A CN200810081571 A CN 200810081571A CN 101521039 B CN101521039 B CN 101521039B
Authority
CN
China
Prior art keywords
data
storage
storage element
controller
storage device
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
CN2008100815717A
Other languages
Chinese (zh)
Other versions
CN101521039A (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 CN2008100815717A priority Critical patent/CN101521039B/en
Publication of CN101521039A publication Critical patent/CN101521039A/en
Application granted granted Critical
Publication of CN101521039B publication Critical patent/CN101521039B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention discloses a data storage system, a controller and a method therefor. The system comprises a first storage unit, a second storage unit and the controller; wherein the first storage unit adopts a single-layered architecture, and the second storage unit adopts a multi-layered architecture for data recording. The controller is coupled with the first storage unit, the second storage unit and a host end, and is used for controlling the host end to configure the first storage unit as a primary storage unit and the second storage unit as a secondary storage unit, and consequently the host end can take the first storage unit and the second storage unit as two independent storage devices for data storage, thus simplifying data storage procedures.

Description

Data storage system, controller and method
Technical field
The invention relates to a kind of data storage system and method, and particularly relevant for a kind of may command host side identification storage device, and system, controller and the method for storage data according to this.
Background technology
Along with the progress of semiconductor technology, the capacity of storer significantly promotes, and its unit price then reduces relatively.Wherein, Flash memory (Flash Memory) is non-volatile because of having, power saving, volume is little and the characteristic of no mechanical structure etc.; Be particularly suitable for being used in portable electronic product; Therefore also develop in recent years a kind of use with non-(NAND) flash memory as the solid-state storage device of data storing media (Solid State Disk, SSD).The special feature of solid-state storage device is to utilize the characteristic of flash memory to replace the physical construction of traditional storage device; Write and the mode of erasing is carried out data access by block; Therefore can significantly promote the read-write efficiency of storage device; Compare with the traditional storage device, have low power consumption, shatter-proof, stability advantage such as high, low temperature resistant.
(Single Level Cell, SLC) (Multi Level Cell is MLC) with not quick flash memory (hereinafter to be referred as MLC) with the multilayer storage unit with not quick flash memory (hereinafter to be referred as SLC) can be divided into the individual layer storage unit with not quick flash memory.Wherein, SLC uses one group of high low-voltage to distinguish two kinds of charge values (comprising 0,1); MLC then adopts higher voltage to drive, and writes down the information (comprising 00,01,11,10) of two positions through the voltage of different stage, so the density of MLC data recording can be Duoed one times than SLC.SLC is because simple in structure, and change in voltage is interval little when writing data, so the life-span is longer; Then in order to increase record space, its voltage range is less for MLC, needs more CRC (CyclicRedundancy Check; CRC) space; And because change in voltage is more frequent, so MLC can stand 10,000 times read-write only about aspect the life-span, far inferior to 100,000 times of SLC.
Comprehensive, SLC has special advantages in life-span and aspect of performance, and overcapacity is lower and cost an arm and a leg, though and MLC has superiority aspect capacity, have inborn deficiency aspect speed and life-span.In order can under the situation that does not influence computer usefulness, effectively to reduce cost; Present way tendency disposes the solid-state storage device of SLC and two kinds of different shapes of MLC simultaneously in a main frame; Utilize SLC faster to write down operation system information more important, that need frequently read; And the MLC that utilizes lower cost writes down general file data, can take into account the demand of computer for the low-cost high-efficiency ability.
In order to let solid-state storage device can have long serviceable life, how effectively management data write block, make SLC and MLC that best utilization rate can be arranged, become the most important problem of the dealer of system already.Yet; When at present on the market product disposes the solid-state storage device of two kinds of SLC and MLC at the same time; Its host side can only be regarded as same storage device with these two kinds of storage devices; And can't these two kinds of storage devices be distinguished into different storage device (for example dividing into C groove and D groove), therefore also difficulty more in the management that data write.
Summary of the invention
In view of this, the present invention provides a kind of data storage system, by at one of storage device configuration controller independently, obtains storage device information in advance and the main control system end is divided into different storing devices with SLC and MLC, can increase the convenience of data management.
The present invention provides a kind of data storage method; According to the kind of institute's identification storage device, be set to corresponding storage device at host side SLC and MLC, and write fashionable in data; Attribute according to data deposits in the suitable storage device again, can increase the efficient that data read.
For reaching above-mentioned or other purposes, the present invention proposes a kind of data storage system, and this system comprises first storage element, second storage element and controller.Wherein, first storage element system adopts the single-layer type framework with record data, and second storage element then is to adopt the multiple field framework with record data.In addition, controller is to be coupled to first storage element, second storage element and host side respectively, and in order to when host side operates, notice host side first storage element is main (Master) storage device, and second storage element is less important (Slave) storage device.
In data storage system of the present invention; Above-mentioned controller comprises by responding entitlement (proprietary) instruction or manufacturer's specific instruction (Vendor Specific Command) gives host side, confirms the identity of first storage element and second storage element so that host side to be provided.
In data storage system of the present invention; The first above-mentioned storage element and second storage element also store system information respectively; Controller comprises by the system information that storage device provided that is coupled; Come its storage shelf configuration attitude of identification, set it more in view of the above and be main storage device or less important storage device.
In data storage system of the present invention; Above-mentioned controller also comprises the data that reception and identification host side are transmitted, and when data identification is primary sources, is about to data and is sent to first storage element; And when data identification is secondary sources, then data are sent to second storage element.Wherein, described primary sources comprise operation system information, and secondary sources then comprise file data.In addition, in another embodiment, primary sources comprise that specifying the data that are sent to main storage device, secondary sources then to comprise specifies the data that are sent to less important storage device.
In data storage system of the present invention; The first above-mentioned storage element is individual layer storage unit (the Single Level Cell of an entity; SLC) flash memory, and second storage element is multilayer storage unit (Multi Level Cell, MLC) flash memory of an entity.
In data storage system of the present invention; The first above-mentioned storage element and second storage element comprise that the storage device by an entity is split to form; Wherein first storage element is the first logical address section of storage device, and second storage element is the second logical address section of storage device.
In data storage system of the present invention; When above-mentioned controller is included in the host side running; Read the information of the first logical address section and the second logical address section from storage device; The first logical address section of setting memory devices is set to main storage device according to this, and the second logical address section of setting memory devices is set to less important storage device.Wherein, described storage device is a multilayer storage unit flash memory, and the described first logical address section only uses the nextpage storage data, and the second logical address section then uses nextpage and goes up the page or leaf storage data.
In data storage system of the present invention; Above-mentioned controller comprises additional (the Parallel Advanced Technology Attachment of rank technology that sees through and advance; PATA) interface or serial are advanced rank technology additional (Serial Advanced Technology Attachment, SATA) interface are connected to host side.
In data storage system of the present invention, above-mentioned first storage element and the carve information block in second storage element are to be provided with Write-protection prevention, and first storage element and second storage element are to be integrated into a hardware unit.
The present invention proposes a kind of data storage system, and this system comprises first storage element, second storage element, first controller and second controller.Wherein, first storage element is to adopt the single-layer type framework with record data, and second storage element then is to adopt the multiple field framework with record data.In addition, first controller is that s is coupled to first storage element and host side, is main storage device in order to set first storage element.Second controller then is to be coupled to second storage element and host side, is less important storage device in order to set second storage element.
In data storage system of the present invention, the first above-mentioned controller and second controller comprise by responding entitlement instruction or manufacturer's specific instruction gives host side, confirms the identity of first storage element and second storage element so that host side to be provided.。
In data storage system of the present invention, the first above-mentioned controller also comprises the data that reception and identification host side are transmitted, and when Identification Data is primary sources, data is sent to first storage element.In addition, the second above-mentioned controller also comprises the data that reception and identification host side are transmitted, and when Identification Data is secondary sources, data is sent to second storage element.Above-mentioned primary sources comprise operation system information, and secondary sources comprise file data.In addition, in another embodiment, primary sources comprise that specifying the data that are sent to main storage device, secondary sources then to comprise specifies the data that are sent to less important storage device.
In data storage system of the present invention, the first above-mentioned storage element is an individual layer storage unit flash memory, and second storage element is a multilayer storage unit flash memory.In addition, above-mentioned first controller and second controller comprise see through and advance rank technology additional interface or serial entering rank the technology additional interface being connected to host side.
In data storage system of the present invention; The first above-mentioned storage element and second storage element are all multilayer storage unit flash memory; Wherein, first storage element only uses the nextpage storage data, and second storage element then uses nextpage and goes up the page or leaf storage data.
In one embodiment of this invention, above-mentioned first controller and second controller are to be integrated into hardware unit.In another embodiment, above-mentioned first controller, second controller then are to be integrated into hardware unit with first storage element.
In data storage system of the present invention, the first above-mentioned storage element and second storage element are to be integrated into a hardware unit.
The present invention proposes a kind of data storage method, is suitable for data storing to the first storage element or second storage element, and wherein first storage element adopts the single-layer type framework, and second storage element then adopts the multiple field framework with record data.The method at first is linked to host side with first storage element and second storage element, then utilizes controller identification first storage element and second storage element, and obtains identification information.And then, first storage element is set at main storage device, and second storage element is set at less important storage device according to this identification information.
In data storage method of the present invention; The above-mentioned step of utilizing controller main control system end that main storage device and less important storage device are set comprises that the instruction of response entitlement or manufacturer's specific instruction are to host side; With the main control system end first storage element and second storage element are set, confirm the identity of first storage element and second storage element so that host side to be provided.
In data storage method of the present invention, above-mentioned identification information is the storage device framework that is coupled by the controller identification, and to set a single-layer type framework storage device according to this be main storage device, and setting a multiple field framework storage device is less important storage device.
In data storage method of the present invention; Above-mentioned method also comprises utilizes controller to receive the data that host side transmitted, and the kind of Identification Data, and transmits data according to this; Wherein when data identification is primary sources, is about to data and is sent to first storage element; When data identification is secondary sources, then these data are sent to second storage element.Described primary sources comprise operation system information, and secondary sources comprise file data.In addition, in another embodiment, primary sources comprise that specifying the data that are sent to main storage device, secondary sources then to comprise specifies the data that are sent to less important storage device.
In data storage method of the present invention; The first above-mentioned storage element and second storage element comprise it being that storage device by an entity is split to form; And above-mentioned controller identification first storage element and second storage element of utilizing; With the step that obtains identification information is to read a carve information (PartitionInformation) block of this storage device, with the information that obtains the first logical address section and the second logical address section as identification information.Wherein, first storage element is the first logical address section of storage device, and second storage element is the second logical address section of storage device.And the first logical address section only uses the nextpage storage data, and the second logical address section then uses nextpage and goes up the page or leaf storage data.
The present invention provides a kind of controller, and it is applicable to first storage element and second storage element, and this controller comprises that main frame links interface, microprocessing unit, main non-volatile memory interface, less important non-volatile memory interface and MMU.Wherein, main frame binding interface system is coupled to main computer unit.Microprocessing unit system is in order to the overall operation of control controller.Main non-volatile memory interface is to be electrically connected to microprocessing unit and in order to access first storage element, wherein first storage element system adopts the single-layer type framework with record data.Less important non-volatile memory interface is to be electrically connected to microprocessing unit and in order to access second storage element, and wherein second storage element is to adopt the multiple field framework with record data.MMU is to be electrically connected to microprocessing unit and in order to manage first and second storage element; Wherein memory management module identification first storage element and second storage element; And according to identification information; First storage element is set at main storage device, and second storage element is set at less important storage device.
In controller of the present invention, above-mentioned MMU comprises that also response entitlement is instructed or manufacturer's specific instruction is given host side, confirms the identity of first storage element and second storage element so that host side to be provided.
In controller of the present invention, above-mentioned identification information is the storage device framework that is coupled by the controller identification, and to set single-layer type framework storage device be main storage device, and to set multiple field framework storage device be less important storage device.
In controller of the present invention, above-mentioned MMU also comprises the reception data that host side transmitted, and the kind of Identification Data is sent to first storage element or second storage element.
In controller of the present invention, when the kind of above-mentioned MMU Identification Data is operation system information, data are sent to first storage element, when the kind of Identification Data is file data, then data are sent to second storage element.
In controller of the present invention; When the kind of above-mentioned MMU Identification Data is sent to the data of main storage device for specifying; Data are sent to first storage element; When the kind of Identification Data is sent to the data of less important storage device for specifying, then data are sent to second storage element.
In controller of the present invention, the first above-mentioned storage element is an individual layer storage unit flash memory, and second storage element is a multilayer storage unit flash memory.
In controller of the present invention; The first above-mentioned storage element and second storage element comprise by storage device and being split to form; Wherein first storage element is the first logical address section of storage device, and second storage element is the second logical address section of storage device.And MMU is to be provided with Write-protection prevention to the carve information block in first storage element and second storage element.
The present invention provides a kind of controller module, and it is applicable to first storage element and second storage element, and this controller comprises that main frame links interface, first control module and second control module.Wherein, main frame binding interface is to be coupled to main computer unit.First control module have one be electrically connected to first storage element main non-volatile memory interface, wherein first storage element adopts the single-layer type framework with record data.Second control module have one be electrically connected to second storage element less important non-volatile memory interface, wherein second storage element adopts the multiple field framework with record data.Whereby, first control module and second control module are set at main storage device respectively according to an identification information with first storage element, and second storage element is set at less important storage device.
In one embodiment of this invention, the first above-mentioned storage element is an individual layer storage unit flash memory, and second storage element is a multilayer storage unit flash memory.
The present invention is employed in the structure of configuration independent control between storage device and the host side, when host side operates or has storage device to be connected to host side, promptly detects the kind of the storage device that is connected automatically, and in host side corresponding storage device is set.In view of the above, fashionable whenever there being data to write, can be according to the attribute of data, appropriate allocation to suitable storage device stores, and reach the purpose that increases data access efficiency and reduce hardware cost.
Description of drawings
For let above-mentioned purpose of the present invention, feature and advantage can be more obviously understandable, elaborate below in conjunction with the accompanying drawing specific embodiments of the invention, wherein:
Fig. 1 is the calcspar according to the data storage system that preferred embodiment of the present invention illustrated.
Fig. 2 is the process flow diagram according to the data storage method that preferred embodiment of the present invention illustrated.
Fig. 3 is the calcspar according to the data storage system that preferred embodiment of the present invention illustrated.
Fig. 4 is the process flow diagram according to the data storage method that preferred embodiment of the present invention illustrated.
Fig. 5 is the calcspar according to the data storage system that preferred embodiment of the present invention illustrated.
Fig. 6 is the calcspar according to the data storage system that preferred embodiment of the present invention illustrated.
Fig. 7 is the calcspar according to the data storage system that preferred embodiment of the present invention illustrated.
Fig. 8 is the process flow diagram according to the data storage method that preferred embodiment of the present invention illustrated.
The main element symbol description:
110,210,310,410,510,710: host side
120,720: controller
220,320,420,520: the first controllers
230,330,430,530: the second controllers
130、240、340、440、540:SLC
140、250、350、450、550:MLC
50,60,730: storage device
S210~S230: each step of the data storage method of preferred embodiment of the present invention
S410~S430: each step of the data storage method of preferred embodiment of the present invention
S810~S830: each step of the data storage method of preferred embodiment of the present invention
Embodiment
The present invention is according to the standard of using interface; To individual layer storage unit (Single Level Cell; SLC) with not quick flash memory (hereinafter to be referred as SLC) and multilayer storage unit (Multi Level Cell; MLC) with not quick flash memory (hereinafter to be referred as MLC) special code can be set respectively, hand over when holding (handshake) with SLC and MLC, pick out main and less important storage device so that host side to be provided; And then SLC and MLC be regarded as two independently storage devices, wherein host side can be a specific processor.The present invention also is included in SLC and MLC when being linked to main frame in addition, sees restore message off by controller independently and informs its identity of host side, and then help host side SLC and MLC to be set to two independently storage devices.The present invention promptly be based on above-mentioned notion a sets of data stocking system and the method that develop out.In order to make content of the present invention more clear, below specially lift the example that embodiment can implement as the present invention really according to this.
Fig. 1 is the calcspar according to the data storage system that preferred embodiment of the present invention illustrated.Please with reference to Fig. 1, the data storage system of present embodiment comprises controller 120 and SLC 130,140 two kinds of storage elements of MLC.Wherein, the programming of the block of MLC NAND flash memory can be divided into the multistage.For example, be example with 4 layers of storage unit, the phase one is the part that writes of nextpage (lower page), its physical characteristics is similar to SLC NAND flash memory, page or leaf (upper page) on after accomplishing the phase one, just programming.In the process of its programming the writing speed of nextpage can faster than on the page or leaf.Therefore, the page or leaf of each block can be divided into page or leaf and nextpage.Similarly, in the case of 8 layers of storage unit or 16 layers of storage unit, storage unit can comprise more a plurality of page or leaf and can be so that more the multistage writes.At this, the page that writing speed is the fastest is called nextpage, and the slower page of other writing speeds is referred to as page or leaf.For example, last page or leaf comprises a plurality of pages or leaves with different writing speeds.
In addition, controller 120 is to be configured between SLC 130, MLC 140 and the host side 110, in order to main control system end 110 SLC 130 and MLC 140 is set to two independently storage devices.With the next function of introducing above-mentioned each element.
SLC 130 adopts the single-layer type framework with record data, and it has the advantage that speed is fast, power consumption is low, therefore can be used to store more important, as to need frequent access operation system information; 140 of MLC adopt the multiple field framework with record data, and its cost is lower, therefore can be used to storage volume big, change less file data.What deserves to be mentioned is that the SLC 130 and the MLC 140 of present embodiment are independent device on entity.
Controller 120 is coupled to SLC 130, MLC 140 and host side 110 respectively, be main (Master) storage device in order to notice host side 110:SLC 130, and MLC 140 is less important (Slave) storage device.At length say; Controller 120 is additional (the Parallel Advanced Technology Attachment of rank technology that see through and advance; PATA) interface or serial advance rank technology additional (Serial Advanced Technology Attachment, SATA) interface is connected to host side 110, and utilizes the standard of these a little interfaces; Its defined entitlement (proprietary) instruction or manufacturer's specific instruction (Vendor Specific Command); When each host side 110 runnings or when having a storage device to be connected to host side 110, controller 120 promptly can be responded this instruction and give host side 110, and what is main or less important storage device and reply host side 110; Wherein, controller 120 can the setting SLC 130 of elder generation be that the main MLC of reaching 140 is less important storage device.
By the coordination placed in the middle of above-mentioned controller 120, host side 110 can be discerned the solid-state storage device kind that is connected, and with its be regarded as two independently storage device come access data.In addition, but the also kind of the data that transmit by host side of identification of controller 120, and data are sent to suitable storage unit stores.Wherein, This identification mode; Can come judgment data by controller is to be sent to main storage device or less important storage device; Also or utilize the data utilization rate, also or a certain algorithm decide for example LRU, Additional-Reference-Bits, Second-Chance Algorithm, Page Buffering Algorithm etc..At length say; When the data of institute's identification are that operation system information or be labeled as need be sent to main storage device etc. when needing the data of frequent access; Controller 120 is about to data and is sent to SLC 130; And when the data of institute's identification be general file data or when being labeled as the data that need be sent to less important storage device, 120 of controllers are sent to MLC 140 with data.
What deserves to be mentioned is; By data storage system of the present invention; Host side 110 can be divided into two independently storage devices with SLC 130 and MLC 140; Therefore the user can deposit the storage device to correspondence with it as required when storage data, but so step of reduced data storage.Wherein operating system can be Windows, or Linux etc..
To above-mentioned data storage system, the present invention also provides embodiment that the flow process of its data transmission is described.Fig. 2 is the process flow diagram according to the data storage method that preferred embodiment of the present invention illustrated.Please with reference to Fig. 2; The method of present embodiment is applicable to the data storage system of the foregoing description, and in order to data storing to SLC and MLC, wherein SLC adopts the single-layer type framework with record data; MLC then adopts the multiple field framework with record data, and the step of the method for present embodiment is following:
At first; SLC and MLC are connected to host side (step S210); Its connected mode can be with reference to the data storage system calcspar of Fig. 1; Wherein SLC and MLC system is connected with controller, and controller then see through and advance additional (PATA) interface of rank technology or serial advanced the rank technology and added (SATA) interface and be connected to host side, in view of the above SLC and MLC is connected to host side.
Then, the position that utilizes the controller Identification Data to store.Its middle controller is obtained identification information (step S220) earlier; This identification information can be according to a potential value of a specific pin position, also or the SLC that is electrically connected or with the system information of MLC, to obtain identification information (step S220); Controller then can be according to this identification information afterwards; What is set be main and what is less important storage device, and and then to notify host side SLC be main storage device, and MLC is less important storage device (step S230).Wherein, controller for example be by respond an entitlement instruction or manufacturer's specific instruction to main frame bring in let the host side identification what for main storage device, less important storage device and then transmit data to the SLC and the MLC that are coupled.In view of the above, host side can indirect identification go out SLC and MLC according to the branch of primary and secondary, and with its be regarded as two independently storage device come storage data.
What deserves to be mentioned is; Because host side can be identified as two independent storage devices (for example C groove and D groove) with SLC and MLC; When the user has the storage data of needs; Can select suitable storage device to store according to the attribute of data, or directly transfer to the kind that controller comes Identification Data, and data are sent to suitable storage device stores.Wherein, When data are recognized as primary sources, promptly operation system information or will be sent to the information of main storage device the time is about to these data and is sent to SLC (for example corresponding to the C groove); And be recognized as data such as second when data; Be general file data or will be sent to the data of less important storage device the time, be about to these data and be sent to MLC (for example corresponding to the D groove), can reach the optimized purpose of data storing in view of the above.
Utilize single controller to come identification storage device and main control system end to be provided with the storage device except above-mentioned; The present invention also comprises to each storage device provides the controller of a correspondence to carry out identification and control; Can reach the effect that the present invention SLC and MLC are set to two independent storage devices equally, specify with next act one embodiment.
Fig. 3 is the calcspar according to the data storage system that preferred embodiment of the present invention illustrated.Please with reference to Fig. 3, the data storage system of present embodiment comprises first controller 320, second controller 330 and SLC 340,350 two kinds of storage elements of MLC.Wherein, first controller 320 is to be configured between SLC 340 and the host side 310, and 330 of second controllers are configured between MLC 350 and the host side 310, with the next function of introducing above-mentioned each element.
SLC 340 adopts the single-layer type framework with record data, has the advantage that speed is fast, power consumption is low, therefore can be used to store more important, as to need frequent access operation system information; 350 of MLC adopt the multiple field framework with record data, and its cost is lower, can be used to therefore that storage volume is bigger, the file data of less change.The SLC 340 and the MLC 350 of present embodiment also are independent device on entity.
First controller 320 is coupled to SLC 340 and host side 310, and 310 SLC340 are set to main storage device in order to the main control system end.At length say; First controller 320 is that see through and advance additional (PATA) interface of rank technology or serial advanced the rank technology additional (SATA) interface is connected to host side 310; And utilize the standard of these a little interfaces, define an entitlement instruction or manufacturer's specific instruction, when each host side 310 runnings or when having storage device to be connected to host side 310; Promptly can respond this instruction and give host side 310, and the notice SLC that host side 310 coupled 340 is main storage device.
On the other hand, second controller 330 is to be coupled to MLC 350 and host side 310, and 310 MLC 350 are less important storage device in order to the notice host side.At length say; Second controller 330 is that see through and advance rank technology additional interface or serial entered rank the technology additional interface is connected to host side 310; And utilize the standard of these a little interfaces equally, define an entitlement instruction or manufacturer's specific instruction, when each host side 310 runnings or when having storage device to be connected to host side 310; Promptly can this instruction be responded and give host side 310, and the notice MLC that host side 310 coupled 350 is less important storage device.
Wherein, what be worth explanation is, first and second controller 320,330 also can be earlier by the system information that storage device provided that is coupled, and it is SLC or MLC to come identification, sets it more in view of the above and is main or less important storage device.
Dispose the framework of corresponding controller by above-mentioned to each storage device, host side 310 can be discerned the kind of the solid-state storage device that is connected indirectly, and is regarded as it independently that storage device comes access data.What deserves to be mentioned is; The present invention does not limit the number of the solid-state storage device that host side 310 connected; The user selects a plurality of SLC or MLC are connected to host side when visual actual needs, and it is set to independently that storage device comes access data by host side.
On the other hand, first controller 320 and second controller 330 also can be used to the kind of identification by the data of host side transmission, and data are sent to suitable storage unit stores.At length say; When the data of institute's identification are operation system information or will be sent to main storage device etc. when needing the data of frequent access; First controller 320 just is sent to SLC 340 with data, and this moment second, controller 330 just can not delivered to MLC 350 with data; Otherwise when the data of institute's identification are general file data or will be sent to less important storage device the time, second controller 330 just is sent to MLC 350 with data, this moment, first controller 320 can not delivered to SLC 340 with data yet.Wherein, It is to be sent to main storage device or less important storage device that this identification mode is also come judgment data by controller; Also or utilize the data utilization rate; Also or a certain algorithm, like LRU, Additional-Reference-Bits, Second-Chance Algorithm, Page BufferingAlgorithm etc..
What deserves to be mentioned is; By data storage system of the present invention; Host side 310 can be divided into two independently storage devices with SLC 340 and MLC 350; Therefore during user's storage data, can be as required with deposit data to corresponding storage device (comprise deposit to SLC 340, general file data deposit operation system information) to MLC 350, but the therefore step that stores of reduced data.
To above-mentioned data storage system, the present invention also provides embodiment that the wherein flow process of data transmission is described.Fig. 4 is the process flow diagram according to the data storage method that preferred embodiment of the present invention illustrated.Please with reference to Fig. 4; The method of present embodiment is applicable to the data storage system of the foregoing description, and in order to data storing to SLC and MLC, wherein SLC adopts the single-layer type framework with record data; MLC then adopts the multiple field framework with record data, and the step of the method for present embodiment is following:
At first; SLC and MLC are connected to host side (step S410); Its connected mode can be with reference to the data storage system calcspar of Fig. 3; Wherein SLC is connected with first controller, and first controller sees through again and advance rank technology additional interface or serial are entered rank the technology additional interface is connected to host side, in view of the above SLC is connected to host side.On the other hand, MLC then is connected with second controller, and second controller sees through again and advance rank technology additional interface or serial are entered rank the technology additional interface is connected to host side, in view of the above MLC is connected to host side
Then; Utilize first controller and second controller to obtain identification information (step S420); Afterwards then can be according to this identification information; Notify host side SLC to be set to main storage device indirectly by first controller, and notify host side MLC to be set to less important storage device (step S430) indirectly by second controller.Wherein, Say that at length first controller and second controller for example are that to set its storage device that couples by the height that detects a pin position voltage quasi position be main or less important; Or by the system information that storage device provided that is coupled, it is SLC or MLC to come identification, and an entitlement is instructed or manufacturer's specific instruction is given host side for main or less important storage device is responded in view of the above to set it more in view of the above; And what person of notice host side be main, how the person is less important storage device; In view of the above, host side can identify SLC and MLC indirectly, and with its be regarded as two independently storage device come storage data.
What deserves to be mentioned is; Because host side can be identified as two independent storage devices with SLC and MLC; When the user has the storage data of needs; Can select suitable storage device to store according to the attribute of data, or directly transfer to the kind that controller comes Identification Data, and data are sent to suitable storage device stores.Wherein, When the data of institute's identification are operation system information or will be sent to main storage device the time; Be about to these data and be sent to SLC; And when the data of institute's identification be general file data or will be sent to less important storage device the time, be about to these data and be sent to MLC, can reach the optimized purpose of data storing in view of the above.
Framework for a controller of each storage device configuration of above-mentioned correspondence; The present invention also comprises an independently hardware unit is integrated or be encapsulated as to wherein first controller and second controller; Or add SLC again and integrate or be encapsulated as an independently hardware unit; And can reach the effect of saving hardware cost, specify with the next embodiment that respectively lifts.
Fig. 5 is the calcspar according to the data storage system that preferred embodiment of the present invention illustrated.Please with reference to Fig. 5; The data storage system of present embodiment comprises first controller 520, second controller 530, SLC 540 and MLC 550; Its mode of connection and function are all same or similar with the host side of previous embodiment 310, first controller 320, second controller 330, SLC 340 and MLC 350, so its related content repeats no more at this.It should be noted that present embodiment is that an independently hardware unit 50, the then independent independent configuration of MLC 550 are integrated or be encapsulated as to first controller 520, second controller 530 with SLC 540.Adopt the benefit of this framework to be: the cost of MLC 550 is lower and the life-span is shorter; Therefore the way that second controller 530 is integrated on the SLC 540 can be saved the cost that Configuration Control Unit spent on each MLC 550, and provides the user can change the elasticity of MLC 550 at any time.
Fig. 6 is the calcspar according to the data storage system that preferred embodiment of the present invention illustrated.Please with reference to Fig. 6; The data storage system of present embodiment comprises first controller 620, second controller 630, SLC 640 and MLC 650; Its mode of connection and function are all same or similar with the host side of previous embodiment 310, first controller 320, second controller 330, SLC 340 and MLC 350, so its related content repeats no more at this.It should be noted that present embodiment is with first controller 520 and 530 integration of second controller or is encapsulated as an independently hardware unit 60, and SLC 540 and the still independent independent configuration of MLC 550.Adopt the benefit of this framework to be: the user only need purchase hardware unit 60 and be installed on the host side; Can change SLC 540 and the MLC 550 that is connected at any time as required; When needing to change even SLC 540 or MLC 550 damage; Also need not spend the cost of controller more in addition, therefore can take into account production cost of products and use elasticity.
SLC and MLC that it should be noted that the foregoing description adopt independent device.Yet; Present technology has been developed the framework that on a device, disposes SLC and MLC simultaneously; Therefore the present invention also provides corresponding solution to this framework; Let this device after being connected to host side, host side still can will be wherein SLC and MLC partly be regarded as two independently storage device come storage data, lift embodiment detailed description again with next.
Fig. 7 is the calcspar according to the data storage system that preferred embodiment of the present invention illustrated.Please with reference to Fig. 7, the data storage system of present embodiment comprises controller 720 and storage device 730.Wherein, controller 720 is to be configured between host side 710 and the storage device 730, is two independently storage devices in order to notice host side 710 SLC and MLC, with the next function of introducing above-mentioned each element.
Storage device 730 for example is a multilayer storage unit flash memory; And therefrom being partitioned into a section, this section only uses nextpage (lower page), uses to be modeled as SLC; Wherein this simulation SLC partly is the first logical address section that is positioned at storage device 730; And other use nextpage to reach sections of going up page or leaf (upperpage), are the use-pattern of general MLC, and it is positioned at the second logical address section for storage device 730.The data of the above-mentioned first logic address section and the second logical address section all are when storage device 730 is cut apart, to be recorded in a carve information (PartitionInformation) block of storage device 730; For example main record (Master Boot Record, the data field (Partition Data) in MBR) of starting.
Controller 720 is promptly by the information that from the carve information block of storage device 730, reads this first logical address section and the second logical address section; And main control system end 710 is set to main storage device with the first logical address section of storage device 730 (promptly simulating SLC partly) according to this, and the second logical address section of storage device 730 (be MLC partly) is set to less important storage device.
What deserves to be mentioned is; Controller 720 is that see through and advance rank technology additional interface or serial entered rank the technology additional interface is connected to host side 710; And utilize the standard of these a little interfaces; Define an entitlement instruction or manufacturer's specific instruction; When each host side 710 runnings or when having storage device 730 to be connected to host side 710, controller 720 promptly can be responded this instruction and give host side 710, and SLC in notice host side 710 storage devices 730 and MLC are respectively a main and less important storage device.
What deserves to be mentioned is; By data storage system of the present invention; Host side 710 can partly be divided into two independently storage devices with SLC in the storage device 730 and MLC; Therefore during user's storage data; Can be as required with deposit data to corresponding storage device (comprise operation system information or be labeled as need deposit to the deposit data of main storage device to SLC and with general file data or be labeled as the deposit data that need deposit to less important storage device to MLC), but the therefore step that stores of reduced data.
To above-mentioned data storage system, the present invention also provides embodiment that the flow process of its data transmission is described.Fig. 8 is the process flow diagram according to the data storage method that preferred embodiment of the present invention illustrated.Please with reference to Fig. 8, the method for present embodiment is applicable to the data storage system of the foregoing description, and in order to the SLC in data storing to single storage device and MLC partly, the step of the method for present embodiment is following:
At first, storage device is connected to host side (step S810).Wherein, this storage device is to be divided into SLC and MLC two parts, and SLC promptly is positioned at the first logical address section of storage device, and MLC then is positioned at the second logical address section of storage device.
Then, utilize controller to read a carve information block of storage device, with the information that obtains the above-mentioned first logic address section and the second logical address section as identification information (step S820).
At last then can be according to this identification information, the SLC of this storage device of notice host side is set to main storage device, and the MLC of storage device is set to less important storage device (step S830).Wherein, controller for example is to give host side by responding an entitlement instruction or manufacturer's specific instruction, and what person of control notice host side is main or less important storage device.In view of the above, host side can indirect identification goes out the SLC and MLC part of storage device, and with its be regarded as two independently storage device come storage data.
What deserves to be mentioned is; Because host side can partly be identified as two independent storage devices with the SLC and the MLC two of storage device; When the needs storage data; The user can select suitable storage device to store according to the attribute of data, or directly transfers to the kind that controller comes Identification Data, and data are sent to suitable storage device stores.Wherein, When data are recognized as operation system information and maybe need be sent to the data of main storage device; Be about to the SLC part that these data are sent to storage device; And when data are recognized as general file data and maybe need be sent to the data of less important storage device, be about to MLC that these data will be sent to storage device partly, can reach the optimized purpose of data storing in view of the above.
In addition; What deserves to be mentioned is; To above-mentioned each item embodiment, the present invention more can be to a carve information (Partition Information) block on MLC or the SLC, for example main record (the Master BootRecord that starts; MBR) data field in (Partition Data) is provided with write-protection function, formats flash memory to prevent the user.At length say; Its embodiment can write this and mainly starts record corresponding logical block addresses (Logic Block Address by receiving when these controllers; LBA) time; Promptly reply failure (fail) and get final product, also or when these controllers detect to write this carve information (PartitionInformation) block the time, promptly refuse to write.
In sum; Data storage system of the present invention and method are by between host side and storage device, disposing independently controller; When host side operates or has storage device to be connected to host side; Can help host side to identify the type of storage device, and with SLC and MLC be regarded as two independently storage device come storage data, and can reach the purpose of reduced data stored routine.
Though the present invention discloses as above with preferred embodiment; Right its is not that any those skilled in the art are not breaking away from the spirit and scope of the present invention in order to qualification the present invention; When can doing a little modification and perfect, so protection scope of the present invention is when being as the criterion with what claims defined.

Claims (33)

1. data storage system comprises:
One first storage element adopts a single-layer type framework with record data;
One second storage element adopts a multiple field framework with record data;
One controller; Be coupled to this first storage element, this second storage element and a host side, in order to when this host side operates, notifying this first storage element of this host side is main storage device; And to notify this second storage element of this host side be a less important storage device, wherein
This controller also comprises the data that reception and this host side of identification are transmitted; When these data of identification are primary sources; Transmit these data to this first storage element; When these data of identification are secondary sources, transmit these data to this second storage element, wherein to utilize the data utilization rate to discern these data be these primary sources or this secondary sources to this controller.
2. data storage system as claimed in claim 1; It is characterized in that; This controller comprises that one of them gives this host side by responding entitlement instruction and manufacturer's specific instruction, confirms the identity of this first storage element and this second storage element so that this host side to be provided.
3. data storage system as claimed in claim 1; It is characterized in that; This first storage element and this second storage element also store a system information respectively; This controller comprises by this system information that said storage device provided that is coupled, and comes its storage shelf configuration attitude of identification, sets it more in view of the above and is this main storage device or this less important storage device.
4. data storage system as claimed in claim 1 is characterized in that these primary sources comprise operation system information, and these secondary sources comprise file data.
5. data storage system as claimed in claim 1 is characterized in that, these primary sources comprise specifies the data that are sent to main storage device, and these secondary sources comprise that appointment is sent to the data of less important storage device.
6. data storage system as claimed in claim 1 is characterized in that, this first storage element is an individual layer storage unit flash memory, and this second storage element is a multilayer storage unit flash memory.
7. data storage system as claimed in claim 1; It is characterized in that; This first storage element and this second storage element comprise by a storage device and being split to form; Wherein this first storage element is one first a logical address section of this storage device, and this second storage element is one second a logical address section of this storage device.
8. data storage system as claimed in claim 7; It is characterized in that; When this controller is included in this host side start running; Read the information of this first logical address section and this second logical address section from this storage device, setting this first logical address section according to this is this main storage device, and this second logical address section of setting this storage device is this less important storage device.
9. data storage system as claimed in claim 7 is characterized in that, this storage device is a multilayer storage unit flash memory.
10. data storage system as claimed in claim 9 is characterized in that, this first logical address section only uses the nextpage storage data, and this second logical address section uses nextpage and goes up the page or leaf storage data.
11. data storage system as claimed in claim 1 is characterized in that, it is these primary sources or this secondary sources that this controller utilizes algorithm to discern these data, and this algorithm comprises least recently used algorithm or chance algorithm for the second time.。
12. data storage system as claimed in claim 1 is characterized in that, the carve information block in this first storage element and second storage element is to be provided with Write-protection prevention.
13. data storage system as claimed in claim 1 is characterized in that, this first storage element and second storage element are to be integrated into a hardware unit.
14. a data storage system comprises:
One first storage element adopts a single-layer type framework with record data;
One second storage element adopts a multiple field framework with record data;
One first controller; Be coupled to this first storage element and a host side; In order to set this first storage element is a main storage device; Wherein this first controller also comprises the data that reception and this host side of identification are transmitted, and when these data of identification are primary sources, transmits these data to this first storage element; And
One second controller; Be coupled to this second storage element and this host side; In order to set this second storage element is a less important storage device, and wherein this second controller also comprises these data that reception and this host side of identification are transmitted, when these data of identification are secondary sources; Transmit these data to this second storage element
Wherein to utilize the data utilization rate to discern these data be these primary sources or this secondary sources for this first controller and this second controller.
15. data storage system as claimed in claim 14; It is characterized in that; This first controller and this second controller comprise that one of them gives this host side by responding entitlement instruction and manufacturer's specific instruction, confirm the identity of this first storage element and this second storage element so that this host side to be provided.
16. data storage system as claimed in claim 14 is characterized in that, these primary sources comprise operation system information, and these secondary sources comprise file data.
17. data storage system as claimed in claim 14 is characterized in that, these primary sources comprise specifies the data that are sent to main storage device, and these secondary sources comprise that appointment is sent to the data of less important storage device.
18. data storage system as claimed in claim 14 is characterized in that, this first storage element is an individual layer storage unit flash memory, and this second storage element is a multilayer storage unit flash memory.
19. data storage system as claimed in claim 14; It is characterized in that this first storage element and this second storage element are all multilayer storage unit flash memory, wherein; This first storage element only uses the nextpage storage data, and this second storage element uses nextpage and goes up the page or leaf storage data.
20. data storage system as claimed in claim 14; It is characterized in that; It is these primary sources or this secondary sources that this first controller and this second controller utilize algorithm to discern these data, this algorithm comprise least recently used algorithm or the second time chance algorithm.
21. data storage system as claimed in claim 14 is characterized in that, this first controller and this second controller comprise and are integrated into a hardware unit.
22. data storage system as claimed in claim 14 is characterized in that, this first storage element and second storage element are to be integrated into a hardware unit.
23. data storage system as claimed in claim 14 is characterized in that, this first controller, this second controller and this first storage element are integrated into a hardware unit.
24. data storage method; Be suitable for a data storing to one first storage element or one second storage element; Wherein this first storage element adopts a single-layer type framework with record data, and this second storage element then adopts a multiple field framework with record data, and this method comprises the following steps:
Link this first storage element and this second storage element to a host side;
Utilize this first storage element of a controller identification and this second storage element, and obtain an identification information;
According to this identification information, setting this first storage element is a main storage device, and this second storage element is a less important storage device;
Utilize this controller to receive the data that this host side transmitted; And
Utilize the kind of these these data of controller identification, and transmit these data according to this, wherein
When these these data of controller identification are primary sources, transmit these data to this first storage element,
When these data of identification are secondary sources, transmit these data to this second storage element,
Wherein to utilize the data utilization rate to discern these data be these primary sources or this secondary sources to this controller.
25. data storage method as claimed in claim 24 is characterized in that, also comprises:
One of them gives this host side to respond entitlement instruction and manufacturer's specific instruction, confirms the identity of this first storage element and this second storage element so that this host side to be provided.
26. data storage method as claimed in claim 24; It is characterized in that; This identification information is the said storage device framework that is coupled by this controller identification; And to set a single-layer type framework storage device according to this be this main storage device, and setting a multiple field framework storage device is this less important storage device.
27. data storage method as claimed in claim 24 is characterized in that, these primary sources comprise operation system information, and these secondary sources comprise file data.
28. data storage method as claimed in claim 24 is characterized in that, these primary sources comprise specifies the data that are sent to main storage device, and these secondary sources comprise that appointment is sent to the data of less important storage device.
29. data storage method as claimed in claim 24; It is characterized in that; This first storage element and this second storage element comprise by a storage device and being split to form; Wherein this first storage element is one first a logical address section of this storage device, and this second storage element is one second a logical address section of this storage device.
30. data storage method as claimed in claim 29 is characterized in that, utilizes this first storage element of this controller identification and one second storage element, and the step that obtains this identification information comprises:
Utilize a carve information block that this controller reads this storage device with the information that obtains this first logical address section and this second logical address section as this identification information.
31. data storage method as claimed in claim 30 is characterized in that, this storage device is a multilayer storage unit flash memory.
32. data storage method as claimed in claim 31 is characterized in that, this first logical address section only uses the nextpage storage data, and this second logical address section uses nextpage and goes up the page or leaf storage data.
33. a controller, it is applicable to one first storage element and one second storage element, and this controller comprises:
One main frame links interface, is coupled to a main computer unit;
One microprocessing unit is in order to control the overall operation of this controller;
One main non-volatile memory interface is electrically connected to this microprocessing unit and, it is characterized in that this first storage element adopts a single-layer type framework with record data in order to this first storage element of access;
One less important non-volatile memory interface is electrically connected to this microprocessing unit and in order to this second storage element of access, wherein this second storage element adopts a multiple field framework with record data; And
One MMU; Be electrically connected to this microprocessing unit and in order to manage this first storage element and second storage element; Wherein this first storage element of this MMU identification and this second storage element, and according to an identification information, setting this first storage element is a main storage device; And this second storage element is a less important storage device, wherein
This MMU also comprises the reception data that this main computer unit transmitted; And the kind of these data of identification is to be sent to first storage element or second storage element; When the kind of these data of identification is an operation system information; These data are sent to this first storage element; When the kind of these data of identification is a file data, then these data are sent to this second storage element, wherein this MMU utilizes the data utilization rate to discern these data for this operation system information or this file data.
CN2008100815717A 2008-02-29 2008-02-29 Data storage system, controller and method therefor Active CN101521039B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008100815717A CN101521039B (en) 2008-02-29 2008-02-29 Data storage system, controller and method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008100815717A CN101521039B (en) 2008-02-29 2008-02-29 Data storage system, controller and method therefor

Publications (2)

Publication Number Publication Date
CN101521039A CN101521039A (en) 2009-09-02
CN101521039B true CN101521039B (en) 2012-05-23

Family

ID=41081578

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100815717A Active CN101521039B (en) 2008-02-29 2008-02-29 Data storage system, controller and method therefor

Country Status (1)

Country Link
CN (1) CN101521039B (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2455865B1 (en) * 2009-07-17 2020-03-04 Toshiba Memory Corporation Memory management device
CN103019966B (en) * 2011-09-22 2015-08-19 乔鼎资讯股份有限公司 A kind of data storage system and management method thereof comprising backup body internal memory
CN104252417A (en) * 2013-06-28 2014-12-31 联想(北京)有限公司 Nand storage device and data storage method thereof
US9959072B2 (en) * 2013-12-20 2018-05-01 Sandisk Technologies Llc Systems and methods of compressing data
KR102507219B1 (en) * 2016-02-02 2023-03-09 에스케이하이닉스 주식회사 System and operating method for system
CN111324548B (en) * 2018-12-14 2022-09-06 北京兆易创新科技股份有限公司 Memory and control method and device thereof
US20220374216A1 (en) * 2021-05-20 2022-11-24 Lenovo (United States) Inc. Method of manufacturing information processing apparatus and mobile computer

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5812814A (en) * 1993-02-26 1998-09-22 Kabushiki Kaisha Toshiba Alternative flash EEPROM semiconductor memory system
US5930167A (en) * 1997-07-30 1999-07-27 Sandisk Corporation Multi-state non-volatile flash memory capable of being its own two state write cache
US20030007384A1 (en) * 2001-07-09 2003-01-09 Mitsubishi Denki Kabushiki Kaisha Nonvolatile semiconductor memory device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5812814A (en) * 1993-02-26 1998-09-22 Kabushiki Kaisha Toshiba Alternative flash EEPROM semiconductor memory system
US5930167A (en) * 1997-07-30 1999-07-27 Sandisk Corporation Multi-state non-volatile flash memory capable of being its own two state write cache
US20030007384A1 (en) * 2001-07-09 2003-01-09 Mitsubishi Denki Kabushiki Kaisha Nonvolatile semiconductor memory device

Also Published As

Publication number Publication date
CN101521039A (en) 2009-09-02

Similar Documents

Publication Publication Date Title
CN101521039B (en) Data storage system, controller and method therefor
CN102436419B (en) Nonvolatile memory system and manage the method for its power supply
CN101552032B (en) Method and device for constructing a high-speed solid state memory disc by using higher-capacity DRAM to join in flash memory medium management
CN100487632C (en) Dual media storage device
CN102239524B (en) Logical unit operation
US8037233B2 (en) System, controller, and method for data storage
TWI418980B (en) Memory controller, method for formatting a number of memory arrays and a solid state drive in a memory system, and a solid state memory system
CN101788955B (en) Access method of flash data, storage system and control system thereof
CN101494086B (en) Memory device, controller and switching method for flash memory
US20100042773A1 (en) Flash memory storage system and data writing method thereof
US20070081401A1 (en) Apparatus for controlling flash memory and method thereof
CN104572478A (en) Data access method and data access device
CN107273058A (en) Logical Address Offset
CN101604548A (en) A kind of solid state hard disc and date storage method
CN101625897A (en) Data write-in method, storage system and controller used for quick flash memory
CN102456404A (en) NVM (nonvolatile memory) storage device, memory controller and data storage method
US20130290609A1 (en) Memory formatting method, memory controller, and memory storage apparatus
CN101661431B (en) Block management method for flash memory, flash storage system and controller
CN102968385B (en) Method for writing data, Memory Controller and storage device
CN102567221B (en) Data management method, memory controller and memory storage device
CN103136111A (en) Data writing method, memorizer controller and memorizer storage device
CN102866861B (en) Flash memory system, flash controller and method for writing data
CN102200946B (en) Data access method, memory controller and storage system
CN103309619A (en) NAND Flash memory data storage method
CN103218300B (en) Data processing method, Memory Controller and memorizer memory devices

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