This application claims priority under 35 U.S.C. ยง119 to China Patent Application Serial Number 102114043, filed on Apr. 19, 2013, which is herein incorporated by reference.
The present disclosure relates to a data access system, and especially to a data access system, a data access device and a data access controller used for a solid-state drive/disk.
In recent years, a storage device which employs a NAND flash memory is tending to replace a conventional storage device with a hard disk. The storage device employing the NAND flash memory is now called solid-state drive/disk (SSD). A configuration of the SSD includes the flash memory, which is adopted to replace the disk of the conventional hard disk, combining with a control chip and a conventional hard drive interface for simulating as a hard drive. The NAND flash memory has no inherent mechanical latency of the hard drive, and a duty cycle thereof can be shortened, so its power consumption and shocks in the operation can be reduced. Therefore, SSD has not only commonality of the conventional hard drive, but also has advantages of high search efficiency, silent, low-temperature and so on of the memory.
Because portable consuming electronics such as smart phones or tablets are so popular that the memory industry also has a significant impact. The direction of development of the memory had changed into an embedded memory from an external memory card in past. One of the most popular memory solutions for the smart phones is an Embedded Multi-Media Card (eMMC). The so-called eMMC is a chip in which the NAND flash memory and a control chip are packaged by a multi-chip package (MCP) process, thereby simplifying the design processes of mobile phone manufacturers and reducing the area of components. With the increasing popularity of the eMMC, the design scheme of a storage unit which the eMMC is used as the solid-state drive had been proposed. Referring to
However, in the present standard specification for the eMMC, one eMMC interface 24 can be connected only to one eMMC device 30. If it needs more capacity, the more eMMC devices 30 are required to couple thereto. For example, if the capacity of eight eMMC devices 30 is desired, eight corresponding eMMC interfaces 24 need to respectively couple thereto. Then the conventional eMMC host controller (i.e. eMMC interface 24) usually has 10 to 15 pins. If so many eMMC interfaces 24 are disposed, there are a large number of the pins, which occupy too many pins of the SATA to eMMC controller 20 realized in a system-on-chip (SoC). Moreover, the one-to-one connection between the plurality of eMMC interfaces 24 and eMMC devices 30 also hinders a parallelism of data processing, such that data access rate of the eMMC-based solid-state drive cannot be increased.
The present disclosure provides a data access system, which has multiple or one first controller to be utilized as a medium for coupling to multiple storage units, thereby solving the problem of the large number of the pins caused from the one-to-one connection between the plurality of eMMC interfaces and eMMC devices and the poor data access rate.
The present disclosure also provides a data access device, which has one first controller to be utilized as the medium for coupling to the multiple storage units, thereby solving the problem of the large number of the pins caused from the one-to-one connection between the plurality of eMMC interfaces and eMMC devices and the poor data access rate.
The present disclosure further provides a data access controller, which can be utilized as the medium for the conventional eMMC host controller coupling to the multiple storage units, thereby solving the problem of the one-to-one connection of the eMMC.
To achieve the foregoing, according to an aspect of the present disclosure, the present disclosure provides a data access system, which includes a plurality of storage units, a plurality of first controllers, a second controller and a host. The first controllers are utilized to parallel access the storage units, and each of the first controllers includes a plurality of first storage unit controllers, a buffer and a multiplexer. The first storage unit controllers are coupled one-to-one with the storage units. The multiplexer is coupled to the first storage unit controllers and the buffer. The second controller is coupled to the first controllers. The second controller includes a plurality of second storage unit controllers which are coupled one-to-one with the first controllers. The host is coupled to the second controller, and the host accesses the storage units through the second controller and the first controllers.
In one embodiment, each of the second storage unit controllers accesses at least two storage units of the storage units through a corresponding controller of the first controllers. Moreover, the corresponding controller accesses the at least two storage units in an interleaved manner.
In the embodiment, each of the storage units has a read/write unit, and a capacity of the buffer is equal to an integer multiple of that of the read/write unit.
In one embodiment, the storage units are a plurality of embedded multi-media card (eMMC) devices. More specifically, each of the second storage unit controllers is an eMMC host controller.
In one embodiment, the second controller further includes a storage unit selector for selecting one of the at least two storage units to be accessed.
In another embodiment, each of the first controllers further includes a memory unit, at which a lookup table is stored.
In one embodiment, the second controller further includes a processor and a data interface controller. The processor is coupled to the second storage unit controllers. The data interface controller is coupled between the processor and the host. In addition, the data interface controller is a serial data interface controller, which is one of SATA, USB, eSATA, PCI-e, and IEEE1394 controller.
The present disclosure further provides a data access system, which includes a plurality of storage units, a first controller, a second controller and a host. The first controller is utilized to parallel access the storage units, and the first controller includes a plurality of first storage unit controllers, a buffer and a multiplexer. The first storage unit controllers are coupled one-to-one with the storage units. The multiplexer is coupled to the first storage unit controllers and the buffer. The second controller is coupled to the first controller. The second controller includes a second storage unit controller, which is coupled to the first controller. The host is coupled to the second controller, and the host accesses the storage units through the second controller and the first controller.
In one embodiment, the storage units are a plurality of embedded multi-media card (eMMC) devices. More specifically, the second storage unit controller is an eMMC host controller.
In one embodiment, the second controller further comprises a storage unit selector for selecting one of the at least two storage units to be accessed.
In another embodiment, each of the first controllers further includes a memory unit, at which a lookup table is stored.
The present disclosure further provides a data access device, which includes a plurality of storage units, a first controller and a second controller. The first controller is utilized to parallel access the storage units. The first controller includes a plurality of first storage unit controllers, a buffer and a multiplexer. The first storage unit controllers are coupled one-to-one with the storage units. The multiplexer is coupled to the first storage unit controllers and the buffer. The second controller is coupled to the first controller. The second controller includes a second storage unit controller, a processor and a data interface controller. The second storage unit controller is coupled to the first controller. The processor is coupled to the second storage unit controller. The data interface controller is coupled to the processor.
In one embodiment, each of the storage units is an embedded memory. More specifically, the embedded memory is an eMMC and the second storage unit controller is an eMMC host controller.
In one embodiment, the second controller further comprises a storage unit selector for selecting one of the storage units to be accessed.
In another embodiment, each of the first controllers further comprises a memory unit, at which a lookup table is stored.
The present disclosure further provides a data access controller, which is utilized to parallel access a plurality of storage units and is coupled to another controller. The data access controller includes a plurality of second storage unit controllers, a buffer and a multiplexer. The first storage unit controllers are coupled one-to-one with the storage units. The multiplexer is coupled to the first storage unit controllers and the buffer.
In one embodiment, each of the storage units has a read/write unit, and a capacity of the buffer is equal to an integer multiple of that of the read/write unit.
Each of the first storage unit controllers is an eMMC host controller.
In one embodiment, the data access controller further includes a memory unit, at which a lookup table is stored.
In one embodiment, the another controller includes at least one second storage unit controller for coupling to the multiplexer, and a number of the at least one second storage unit is less than that of the storage units.
The data access system, device and controller of the present disclosure has a medium for the conventional eMMC host controller coupling to the multiple storage units, thereby solving the problem of the one-to-one connection of the eMMC.
It is to be understood that both the foregoing general description and the following detailed description of the present disclosure are exemplary and explanatory and are intended to provide further explanation of the disclosure as claimed.
The present disclosure will now be described in detail with reference to exemplary embodiments thereof as illustrated in the accompanying drawings. The same reference numerals refer to the same parts or like parts throughout the various figures.
Referring to
Referring to
Referring to
On the other hand, as shown in
What follows is a detail of the operation with respect to the data access system 100. Referring to
In the embodiment, the storage units 110 are a plurality of embedded multi-media card (eMMC) devices, and each of the second storage unit controllers is an eMMC host controller 142. In the embodiment, the transmission of the second storage unit controller 142 and the storage units 110 is explained as, for example, a standard for the eMMC, but it is not limited to this. For example, the eMMC specification can be replaced by the standard for an embedded Secure Digital (eSD) card or for an embedded Compact Flash (eCF) card, as long as the interfaces used between the second storage unit controller 142 and the storage units 110 are the same.
What follows is the operation with respect to the first controller 120 of the first embodiment. As shown in
It should be noted that the first storage unit controller 122 of the embodiment also can be a standard eMMC host controller for accessing a single storage unit 110 implemented by the eMMC device.
In another embodiment, the second storage unit controller 142 is a standard eMMC host controller without disposing the above-mentioned storage unit selector 143. More specifically, the second storage unit controller 142 can send the vendor commands to the first controller 120. Based on the control of the vendor commands, the one-to-many objective is achieved.
In another embodiment, the first controller 120 further includes a memory unit 128, at which a lookup table (LUT) is stored. Specifically, the two storage units 110 are simulated as a block device, such as the hard disk. Before accessing the two storage units 110, the lookup table includes the information of logical-physical address mapping, which is utilized to record the relationship of logical block addresses (LBA) converting into physical block addresses (PBA). The logical block addresses are the block addresses which a file system accesses the data; the physical block addresses are the block addresses to which the logical block addresses actually correspond in the storage units 110.
It is worth mentioning that the storage unit has a read/write unit, and a capacity of the buffer 124 within the first controller 120 is equal to an integer multiple of that of the read/write unit. The buffer 124 is utilized to temporarily store the read/write data from the two storage units 110, so as to increase the parallelism of data processing of the first controller 120.
It can be seen from
The data access system of a second embodiment of the present disclosure in the accompanying block diagram will be explained in the following. Referring to
As shown in
The second controller 140 is coupled to the first controller 220, and includes a second storage unit controller 142, a processor 144, and a data interface controller 146. The second storage unit controller 142 herein is coupled between the multiplexer 126 of the first controller 220 and the processor 144. The processor 144 is coupled to the data interface controller 146, and the host 160 is coupled to the data interface controller 146 of the second controller 140, whereby the host 160 can access the storage units 110 through the second controller 140 and the first controller 220. One difference from the above-mentioned first embodiment is that the first controller 220 of the second embodiment is a one-to-eight controller, and each of the first controllers 120 of the first embodiment is a one-to-two controller.
Specifically, the storage units 110 are the plurality of embedded multi-media card (eMMC) devices, and the second storage unit controller 142 is one eMMC host controller. In the embodiment, the transmission between the second storage unit controller 142 and the storage units 110 is explained as, for example, the standard for the eMMC, but it is not limited to this.
What follows is the operation with respect to the second controller 220 of the first embodiment. As shown in
In another embodiment, the second storage unit controller 142 is a standard eMMC host controller without disposing the above-mentioned storage unit selector 143. More specifically, the second storage unit controller 142 can send the vendor commands to the first controller 120. Based on the control of the vendor commands, the one-to-many objective is achieved.
In another embodiment, the first controller 120 further includes the memory unit 128, at which the lookup table (LUT) is stored. Specifically, the storage units 110 are simulated as the block device, such as the hard disk. Before accessing the storage units 110, the lookup table includes the information of logical-physical address mapping, which is utilized to record the relationship of the logical block addresses (LBA) converting into the physical block addresses (PBA). The logical block addresses are the block addresses which the file system accesses the data; the physical block addresses are the block addresses to which the logical block addresses actually correspond in the storage units 110.
It can be seen from the foregoing that the data access system 200 of the second embodiment has the one-to-eight first controller 220 being capable of utilizing as the medium for coupling to the multiple storage units 110, thereby solving the problem of the one-to-one connection.
The data access device of a third embodiment of the present disclosure will be explained in the following. The data access device can be a solid-state drive preferably; however, the present disclosure is not limited to be implemented hereby. Referring to
The first controller 120 is utilized to parallel access the storage units 110. The first controller 120 includes a plurality of first storage unit controllers 122, a buffer 124 and a multiplexer 126. The first storage unit controllers 122 are coupled one-to-one with the storage units 110. The multiplexer 126 is coupled to the first storage unit controllers 122 and the buffer 124. The second controller 140 is coupled to the first controller 220, and includes a second storage unit controller 142, a processor 144, and a data interface controller 146. The second storage unit controller 142 herein is respectively coupled between the multiplexer 126 of the first controller 220 and the processor 144. The processor 144 is coupled to the second storage unit controllers 142. The data interface controller 146 is coupled the processor 144, and the data interface controller 146 is utilized to couple to an external host.
Each of the storage units 110 is an embedded memory. In the embodiment, the embedded memory is the eMMC, and the second storage unit controller 142 is an eMMC host controller. In the embodiment, the transmission between the second storage unit controller 142 and the storage units 110 is explained as, for example, the standard for the eMMC, but it is not limited to this. For example, the eMMC specification can be replaced by the standard for the eSD card or for the (eCF) card, as long as the interfaces used between the second storage unit controller 142 and the storage units 110 are the same.
What follows is the operation with respect to the first controller 120 of the third embodiment. As shown in
It should be noted that the first storage unit controller 122 of the embodiment also can be a standard eMMC host controller for accessing a single storage unit 110 implemented by the eMMC device.
In another embodiment, the second storage unit controller 142 is a standard eMMC host controller without disposing the above-mentioned storage unit selector 143. More specifically, the second storage unit controller 142 can send the custom vendor commands to the first controller 120. Based on the control of the vendor commands, the one-to-many objective is achieved.
In another embodiment, the first controller 120 further includes the memory unit 128, at which the lookup table (LUT) is stored. Specifically, the two storage units 110 are simulated as a block device, such as the hard disk. Before accessing the storage units 110, the lookup table includes the information of logical-physical address mapping, which is utilized to record the relationship of logical block addresses (LBA) converting into physical block addresses (PBA). The logical block addresses are the block addresses which a file system accesses the data; the physical block addresses are the block addresses to which the logical block addresses actually correspond in the storage units 110.
It can be seen from the foregoing that the data access device 300 of the embodiment has an one-to-many first controller 120 being capable of utilizing as the medium for coupling to the multiple storage units 110, thereby solving the problem of the one-to-one connection.
The data access controller of a fourth embodiment of the present disclosure will be explained in the following. Referring to
It is worth mentioning that the plurality of second storage unit controllers 142 are disposed in one second controller 500, so that the host 160 accesses the storage units 110 through the second controller 500 and the data access controllers 400. Actually, the second controller 500 is the same with the second controller 140 of the above-mentioned third embodiment, which further has the processor and the data interface controller, so no further detail will be provided herein.
It is worth mentioning that the storage unit 110 has a read/write unit, and the capacity of the buffer in the data access controllers 400 is equal to an integer multiple of that of the read/write unit. The buffer 124 is utilized to temporarily store the read/write data from the storage units 110, so as to increase the parallelism of data processing of the data access controllers 400.
Specifically, the storage units 110 are a plurality of eMMC devices, and each of the first storage unit controllers 122 is the eMMC host controller. In the embodiment, the transmission thereof is explained as the standard for the eMMC, but it is not limited to this. For example, the eMMC specification can be replaced by the standard for an embedded Secure Digital (eSD) card or for an embedded Compact Flash (eCF) card, as long as the interfaces used between the first storage unit controllers 122 and the storage units 110 are the same. It should be noted that the second storage unit controller 142 of the embodiment also can be the standard eMMC host controller.
What follows is the operation with respect to the data access controller 400 of the data embodiment. In the embodiment, the second storage unit controllers 142 can send the vendor commands to the corresponding data access controllers 400. Based on the control of the vendor commands, the one-to-many objective is achieved.
In another embodiment, each of the data access controllers 400 further includes the memory unit 128, at which the lookup table (LUT) is stored. Specifically, the storage units 110 are simulated as the block device, such as the hard disk. Before accessing the storage units 110, the lookup table includes the information of logical-physical address mapping, which is utilized to record the relationship of logical block addresses (LBA) converting into physical block addresses (PBA). The logical block addresses are the block addresses which a file system accesses the data; the physical block addresses are the block addresses to which the logical block addresses actually correspond in the storage units 110.
In summary, the data access controllers 400 of the embodiment can be utilized as the media for the conventional eMMC host controllers coupling to the multiple storage units, thereby solving the problem of the one-to-one connection.
While the embodiments of the present disclosure have been illustrated and described in detail, various modifications and alterations can be made by persons skilled in this art. The embodiment of the present disclosure is therefore described in an illustrative but not restrictive sense.
Number | Date | Country | Kind |
---|---|---|---|
102 114 043 | Apr 2013 | TW | national |