Embodiments of the invention relate generally to computer systems and more particularly to Flash Electronic Disk with RAID Controller.
Over the last few years, the storage systems industry has witnessed an increasing trend in shifting data storage from mechanical hard disk drives (HDD) to solid state devices (SSD), the Flash Electronic Disk being one of them. This is brought about by a number of advantages in using SSD's over HDD's, the most notable ones are increased data accessing speed, increased reliability in terms of data integrity and physical stress, and prolonged wear and tear.
The increase in data accessing speed opened up a wide range of applications that were used to be shelved because of the memory-access bottleneck. With the coming of Flash Electronic Disks, data-intensive applications now have a chance to come into reality. The absence of rotating mechanical disks in Flash Electronic Disks allowed more memory intensive applications that are physically demanding, such as military applications, shock prone environments and the like, to come into shape.
Trends in the market today point to an increasing demand for SSDs because of its fast memory access speeds. Memory intensive applications, such as database interfaces, are slowly coming into shape as the memory access bottleneck is loosened up. In the advent of memory intensive applications, it is imperative that systems should have reliable and stable data integrity measures. The most reliable data integrity system to date is the RAID system, which has been applied extensively to many computer systems using HDDs. The RAID system uses a simple architecture where data is striped or mirrored to a number of disks. All possible implementations of redundancy are already considered in its many configurations. These principles can also be applied to flash electronic disks to boost data integrity.
Conventional RAID systems prefer implementing RAID Controllers as a separate hardware entity. This is because RAID controls are computations-extensive, that when implemented in firmware, a big chunk of the CPU resource is eaten up. This invention helps to unload the firmware of a computational burden, as this invention implements RAID in hardware, but it takes it a step further. There will be no separate hardware entity for the RAID controls as it will all be integrated into the disk itself, producing a Flash Electronic Disk that is also a RAID Controller at the same time.
The Flash Electronic Disks are known for its stable and reliable performance over traditional HDDs due to the absence of mechanical components. An embodiment of this invention aims to fortify the existing data integrity badge of Flash Electronic Disks by integrating RAID measures into the disk. Flash Electronic Disks in a RAID configuration would be by far, the most reliable storage system to date.
An embodiment of this invention presents a method and system for implementing RAID for Flash Electronic Disks. The invention integrates RAID control mechanisms into the Flash Electronic Disk controllers, eliminating the need for a separate RAID controller hardware, with minimal firmware intervention. The system and method uses the principles of RAID in addressing the issues brought about by physical disk crashes. The invention merges the benefits of using Flash Electronic Disks and the capabilities of RAID in data integrity, such as hot pluggable disks, into a Flash Electronic Disk. The system and method supports all RAID levels via configurable RAID controller. The system and method also provides possible RAID configurations for the disks over generic IO Interfaces.
In another embodiment of the invention, a method and system for implementing a Flash Electronic Disk with support for Redundant Array of Inexpensive Disks (RAID) system is presented. The method and system include a RAID Control Module that interprets RAID commands from any Host, an Exclusive-Or (XOR) Engine for RAID commands with parity computations, a RAID Cache for temporary storage during calculations, and possible RAID configurations for the Flash Electronic Disks via generic IO interfaces such as SATA, SCSI or PCI Express (PCIe). The invention presents a Flash Electronic Disk that is capable of executing RAID Master and Slave functions over conventional links without the need for a separate RAID Controller hardware and without extensive use of firmware processing.
A key idea of embodiments of this invention lies on having Flash Electronic Disks that offer data integrity capabilities of RAID in highly flexible configurations, without sacrificing the high memory accessing speed of Flash Electronic Disks.
So that the manner in which the above recited features, advantages and objects of the present invention are attained and can be understood in detail, a more particular description of the invention, briefly summarized above, may be had by reference to the embodiments thereof which are illustrated in the appended drawings.
It is to be noted, however, that the appended drawings illustrate only typical embodiments of this invention and are therefore not to be considered limiting of its scope, for the present invention may admit to other equally effective embodiments.
In the following detailed description, for purposes of explanation, numerous specific details are set forth to provide a thorough understanding of the various embodiments of the present invention. Those of ordinary skill in the art will realize that these various embodiments of the present invention are illustrative only and are not intended to be limiting in any way. Other embodiments of the present invention will readily suggest themselves to such skilled persons having the benefit of this disclosure.
In addition, for clarity purposes, not all of the routine features of the embodiments described herein are shown or described. One of ordinary skill in the art would readily appreciate that in the development of any such actual implementation, numerous implementation-specific decisions may be required to achieve specific design objectives. These design objectives will vary from one implementation to another and from one developer to another. Moreover, it will be appreciated that such a development effort might be complex and time-consuming but would nevertheless be a routine engineering undertaking for those of ordinary skill in the art having the benefit of this disclosure. The various embodiments disclosed herein are not intended to limit the scope and spirit of the herein disclosure.
Preferred embodiments for carrying out the principles of the present invention are described herein with reference to the drawings. However, the present invention is not limited to the specifically described and illustrated embodiments. A person skilled in the art will appreciate that many other embodiments are possible without deviating from the basic concept of the invention. Therefore, the principles of the present invention extend to any work that falls within the scope of the appended claims.
As used herein, the terms “a” and “an” herein do not denote a limitation of quantity, but rather denote the presence of at least one of the referenced items.
In a computer system where RAID is needed, the Flash Electronic Disk in
The Flash Electronic Disk of
Furthermore, the plurality of Flash Memory Devices 605 can be configured as replacement disks or “hot spares”. The availability of replacement disks allows the RAID Control Module 607 to perform reconstruction. Reconstruction is a background process executed in the RAID system to regenerate the data from the failed disk. This process involves reading the data from the surviving slave disks for each stripe, calculating the parity of that data and then writing this value to the replacement disk. Reconstruction works both for data and parity disks since the XOR operation is commutative. The performance of the RAID system is degraded while a failed disk is being rebuilt. However, the RAID system continues to function in such a way that all data are still accessible by the Host including that from the failed disk.
However, instead of accessing the slave disks frequently, the Master Disk 804 decides to first write the data stripes to its Flash Memory Devices 807. The Flash Memory Devices 807, being the system cache, contains the recently used information for the RAID system 811. The Flash Controller 803 therefore issues a flash write command 814 to write data stripe 0818 to Flash Memory Device 1822, a flash write command 815 to write data stripe 1819 to Flash Memory Device 1823 and a flash write command 816 to write data stripe 2820 to Flash Memory Device 1824. The Flash Controller also issues a flash write command 817 to write the parity stripe 821 to Flash Memory Device N 825. The data and parity stripes stored in the plurality of Flash Memory Devices 807 are periodically flushed to the plurality of Slave Disks 810.
However, instead of accessing the slave disks frequently, the Master Disk 1004 in one embodiment can decide to read the data stripes from its Flash Memory Devices 1007. The Flash Memory Devices 1007, being the system cache, contains the recently accessed information for the RAID system 1011. The Flash Controller 1003 therefore issues a flash read command 1014 to Flash Memory Device 11020 to get data stripe 1017, a flash read command 1015 to Flash Memory Device 21021 to get data stripe 1018 and a flash read command 1016 to Flash Memory Device 31022 to get data stripe 1019. These data stripes are stored and reconstructed in RAID Cache 1008 before being sent to the Host 1000 as the read data 1013.
However, instead of accessing the slave disks frequently, the Master Disk 1104 decides to read these stripes from its Flash Memory Devices 1107. The Flash Memory Devices 1107, being the system cache, contains the recently accessed information for the RAID system 1111. The Flash Controller 1103 therefore issues a flash read command 1114 to the Flash Memory Device 11122 to read the old data stripe 1118. The old data stripe 1118 is XORed with the new data stripe 1113 stored in the RAID Cache 1108 using the XOR Engine 1105. The result of the XOR operation is temporarily stored in the RAID Cache 1108. The new data stripe is still kept in the RAID Cache. The Flash Controller then issues a flash read command 1116 to the Flash Memory Device N 1125 to read the old parity 1120. The old parity 1120 is then XORed with the result of the previous XOR operation using the XOR Engine 1105. The result of this XOR operation, the new parity, is again stored in the RAID Cache 1108. After generating the new parity, the Flash Controller 1103 issues a flash write command 1115 to the Flash Memory Device 11122 to write the new data stripe 1119 from the RAID Cache 1108. The Flash Controller also issues a flash write command 1117 to the Flash Memory Device N 1125 to write the new parity 1121.
The Flash Controller 1203 of the Master Disk 1204 receives a write command 1218 along with the write data 1219 from the Host 1200. The Flash Controller stores the write data 1219 it received from the Host 1200 in the RAID Cache 1208. Based from the Mapping Table 1202 of the RAID Control Module 1209, the data sent by the Host 1200 should be striped across all the RAID Slave Disks. The RAID Control Module translates the write request received from the Host 1200 into multiple write accesses by converting the write data 1219 into data stripes. The RAID Control Module also generates the corresponding parity stripe by XORing all the data stripes using its XOR Engine 1205. This parity stripe is temporarily stored in the RAID Cache 1208 along with the data stripes. The Flash Controller 1203 then issues a flash write command 1216 to write data stripe 01217 to Flash Memory Device 11212, an IO write command 1224 to write data stripe 11223 to Slave Disk 21220 and an IO write command 1226 to write data stripe 21225 to Slave Disk 31221. The Flash Controller also issues an IO write command 1228 to write the parity stripe 1227 to Slave Disk N 1222.
The Flash Controller 1303 of the Master Disk 1304 receives a read command 1318 from the Host 1300. The RAID Control Module 1309 being the RAID Controller of the RAID system 1311 interprets the command by referring to its Mapping Table 1302. Based from the Mapping Table, the data being requested by the Host 1300 is found to be striped across all the RAID Slave Disks. The Flash Controller then creates the corresponding Flash Read command for the Flash Memory Device and IO Read commands for the other Slave Disks. A Flash Read command 1316 is sent to Flash Memory Device 11312 to get the data stripe 01317. An IO Read command 1321 is sent to Slave Disk 21324 to get the data stripe 11320. An IO Read command 1323 is sent to Slave Disk 31325 to get the data stripe 21322. The data stripes received from the Flash Memory Device and the Slave Disks are reconstructed in the RAID Cache 1308 and then sent to the requesting Host 1300 as the read data 1319.
Host 1400 sends a write command 1412 to the Master Disk 1404. The RAID Control Module 1409 of the Master Disk receives the write data 1413 and stores it in the RAID Cache 1408. After referring to the Mapping Table 1402, the RAID Control Module discovers that the write request involves a write of only a data stripe. A write of only a data stripe involves a read-modify-write operation. The RAID Control Module first checks from which slave disks will the old data stripe and old parity stripe come from. The RAID Control Module determines that the old data stripe should come from Flash Memory Device 1 and the old parity stripe should come from Slave Disk N.
The Flash Controller 1403 issues a flash read command 1417 to the Flash Memory Device 11418 to read the old data stripe 1416. The old data stripe 1416 is XORed with the new data stripe 1413 stored in the RAID Cache 1408 using the XOR Engine 1405. The result of the XOR operation is temporarily stored in the RAID Cache 1408. The new data stripe is still kept in the RAID Cache. The Flash Controller then issues an IO read command 1425 to the Slave Disk N 1424 to read the old parity 1426. The old parity 1426 is then XORed with the result of the previous XOR operation using the XOR Engine 1405. The result of this XOR operation, the new parity, is again stored in the RAID Cache 1408. After generating the new parity, the Flash Controller 1403 issues a flash write command 1414 to the Flash Memory Device 11418 to write the new data stripe 1415 from the RAID Cache 1408. The Flash Controller also issues an IO write command 1428 to the Slave Disk N 1424 to write the new parity 1427.
Foregoing described embodiments of the invention are provided as illustrations and descriptions. They are not intended to limit the invention to precise form described. In particular, it is contemplated that functional implementation of invention described herein may be implemented equivalently in hardware, software, firmware, and/or other available functional components or building blocks, and that networks may be wired, wireless, or a combination of wired and wireless.
It is also within the scope of the present invention to implement a program or code that can be stored in a machine-readable or computer-readable medium to permit a computer to perform any of the inventive techniques described above, or a program or code that can be stored in an article of manufacture that includes a computer readable medium on which computer-readable instructions for carrying out embodiments of the inventive techniques are stored. Other variations and modifications of the above-described embodiments and methods are possible in light of the teaching discussed herein.
The above description of illustrated embodiments of the invention, including what is described in the Abstract, is not intended to be exhaustive or to limit the invention to the precise forms disclosed. While specific embodiments of, and examples for, the invention are described herein for illustrative purposes, various equivalent modifications are possible within the scope of the invention, as those skilled in the relevant art will recognize.
These modifications can be made to the invention in light of the above detailed description. The terms used in the following claims should not be construed to limit the invention to the specific embodiments disclosed in the specification and the claims. Rather, the scope of the invention is to be determined entirely by the following claims, which are to be construed in accordance with established doctrines of claim interpretation.
This application claims the benefit of and priority to U.S. Provisional Application 61/801,111, filed 15 Mar. 2013. This U.S. Provisional Application 61/801,111 is hereby fully incorporated herein by reference. This application relates to U.S. Utility application Ser. No. 14/217,316, “Flash Array RAID in Flash Electronic Disks” which is hereby fully incorporated herein by reference and U.S. Utility application Ser. No. 14/217,291, “Direct Memory Access Controller with RAID Hardware Assist” which is hereby fully incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
4402040 | Evett | Aug 1983 | A |
4403283 | Myntii et al. | Sep 1983 | A |
4752871 | Sparks | Jun 1988 | A |
4967344 | Scavezze et al. | Oct 1990 | A |
5111058 | Martin | May 1992 | A |
RE34100 | Hartness | Oct 1992 | E |
5222046 | Kreifels et al. | Jun 1993 | A |
5297148 | Harari et al. | Mar 1994 | A |
5339404 | Vandling, III | Aug 1994 | A |
5341339 | Wells | Aug 1994 | A |
5371709 | Fisher et al. | Dec 1994 | A |
5379401 | Robinson et al. | Jan 1995 | A |
5388083 | Assar et al. | Feb 1995 | A |
5396468 | Harari et al. | Mar 1995 | A |
5406529 | Asano | Apr 1995 | A |
5432748 | Hsu et al. | Jul 1995 | A |
5448577 | Wells et al. | Sep 1995 | A |
5459850 | Clay et al. | Oct 1995 | A |
5479638 | Assar et al. | Dec 1995 | A |
5485595 | Assar et al. | Jan 1996 | A |
5488711 | Hewitt et al. | Jan 1996 | A |
5500826 | Hsu et al. | Mar 1996 | A |
5509134 | Fandrich et al. | Apr 1996 | A |
5513138 | Manabe et al. | Apr 1996 | A |
5524231 | Brown | Jun 1996 | A |
5530828 | Kaki et al. | Jun 1996 | A |
5535328 | Harari et al. | Jul 1996 | A |
5535356 | Kim et al. | Jul 1996 | A |
5542042 | Manson | Jul 1996 | A |
5542082 | Solhjell | Jul 1996 | A |
5548741 | Watanabe | Aug 1996 | A |
5559956 | Sukegawa | Sep 1996 | A |
5568423 | Jou et al. | Oct 1996 | A |
5568439 | Harari | Oct 1996 | A |
5572466 | Sukegawa | Nov 1996 | A |
5594883 | Pricer | Jan 1997 | A |
5602987 | Harari et al. | Feb 1997 | A |
5603001 | Sukegawa et al. | Feb 1997 | A |
5606529 | Honma et al. | Feb 1997 | A |
5606532 | Lambrache et al. | Feb 1997 | A |
5619470 | Fukumoto | Apr 1997 | A |
5627783 | Miyauchi | May 1997 | A |
5640349 | Kakinuma et al. | Jun 1997 | A |
5644784 | Peek | Jul 1997 | A |
5682509 | Kabenjian | Oct 1997 | A |
5737742 | Achiwa et al. | Apr 1998 | A |
5787466 | Berliner | Jul 1998 | A |
5796182 | Martin | Aug 1998 | A |
5799200 | Brant et al. | Aug 1998 | A |
5802554 | Caceres et al. | Sep 1998 | A |
5819307 | Iwamoto et al. | Oct 1998 | A |
5822251 | Bruce et al. | Oct 1998 | A |
5864653 | Tavallaei et al. | Jan 1999 | A |
5875351 | Riley | Feb 1999 | A |
5881264 | Kurosawa | Mar 1999 | A |
5913215 | Rubinstein et al. | Jun 1999 | A |
5918033 | Heeb et al. | Jun 1999 | A |
5943421 | Grabon | Aug 1999 | A |
5956743 | Bruce et al. | Sep 1999 | A |
5987621 | Duso | Nov 1999 | A |
6000006 | Bruce et al. | Dec 1999 | A |
6014709 | Gulick et al. | Jan 2000 | A |
6076137 | Asnaashari | Jun 2000 | A |
6098119 | Surugucchi et al. | Aug 2000 | A |
6128303 | Bergantino | Oct 2000 | A |
6138200 | Ogilvie | Oct 2000 | A |
6138247 | McKay et al. | Oct 2000 | A |
6215875 | Nohda | Apr 2001 | B1 |
6230269 | Spies et al. | May 2001 | B1 |
6298071 | Taylor et al. | Oct 2001 | B1 |
6341342 | Thompson et al. | Jan 2002 | B1 |
6363441 | Beniz et al. | Mar 2002 | B1 |
6363444 | Platko et al. | Mar 2002 | B1 |
6397267 | Chong, Jr. | May 2002 | B1 |
6404772 | Beach et al. | Jun 2002 | B1 |
6496939 | Portman et al. | Dec 2002 | B2 |
6526506 | Lewis | Feb 2003 | B1 |
6529416 | Bruce et al. | Mar 2003 | B2 |
6557095 | Henstrom | Apr 2003 | B1 |
6574142 | Gelke | Jun 2003 | B2 |
6678754 | Soulier | Jan 2004 | B1 |
6728840 | Shatil | Apr 2004 | B1 |
6744635 | Portman et al. | Jun 2004 | B2 |
6785746 | Mahmoud et al. | Aug 2004 | B1 |
6757845 | Bruce | Dec 2004 | B2 |
6857076 | Klein | Feb 2005 | B1 |
6901499 | Aasheim et al. | May 2005 | B2 |
6922391 | King et al. | Jul 2005 | B1 |
6961805 | Lakhani et al. | Nov 2005 | B2 |
6970446 | Krischar et al. | Nov 2005 | B2 |
6970890 | Bruce et al. | Nov 2005 | B1 |
6980795 | Hermann et al. | Dec 2005 | B1 |
7103684 | Chen et al. | Sep 2006 | B2 |
7174438 | Homma et al. | Feb 2007 | B2 |
7194766 | Noehring et al. | Mar 2007 | B2 |
7263006 | Aritome | Aug 2007 | B2 |
7283629 | Kaler et al. | Oct 2007 | B2 |
7305548 | Pierce et al. | Dec 2007 | B2 |
7330954 | Nangle | Feb 2008 | B2 |
7372962 | Fujimoto et al. | Jun 2008 | B2 |
7386662 | Kekre et al. | Jun 2008 | B1 |
7412631 | Uddenberg et al. | Aug 2008 | B2 |
7415549 | Vemula et al. | Aug 2008 | B2 |
7424553 | Borrelli et al. | Sep 2008 | B1 |
7430650 | Ross | Sep 2008 | B1 |
7474926 | Carr et al. | Jan 2009 | B1 |
7490177 | Kao | Feb 2009 | B2 |
7500063 | Zohar et al. | Mar 2009 | B2 |
7506098 | Arcedera et al. | Mar 2009 | B2 |
7613876 | Bruce et al. | Nov 2009 | B2 |
7620748 | Bruce et al. | Nov 2009 | B1 |
7624239 | Bennett et al. | Nov 2009 | B2 |
7636801 | Kekre et al. | Dec 2009 | B1 |
7660941 | Lee et al. | Feb 2010 | B2 |
7668925 | Liao et al. | Feb 2010 | B1 |
7676640 | Chow | Mar 2010 | B2 |
7681188 | Tirumalai et al. | Mar 2010 | B1 |
7716389 | Bruce et al. | May 2010 | B1 |
7719287 | Marks et al. | May 2010 | B2 |
7729730 | Orcine et al. | Jun 2010 | B2 |
7743202 | Tsai et al. | Jun 2010 | B2 |
7765359 | Kang et al. | Jul 2010 | B2 |
7877639 | Hoang | Jan 2011 | B2 |
7913073 | Choi | Mar 2011 | B2 |
7921237 | Holland et al. | Apr 2011 | B1 |
7934052 | Prins et al. | Apr 2011 | B2 |
7958295 | Liao et al. | Jun 2011 | B1 |
8010740 | Arcedera et al. | Oct 2011 | B2 |
8032700 | Bruce et al. | Oct 2011 | B2 |
8156279 | Tanaka et al. | Apr 2012 | B2 |
8156320 | Borras | Apr 2012 | B2 |
8161223 | Chamseddine et al. | Apr 2012 | B1 |
8165301 | Bruce et al. | Apr 2012 | B1 |
8200879 | Falik et al. | Jun 2012 | B1 |
8219719 | Parry et al. | Jul 2012 | B1 |
8341300 | Karamcheti | Dec 2012 | B1 |
8341311 | Szewerenko et al. | Dec 2012 | B1 |
8375257 | Hong et al. | Feb 2013 | B2 |
8447908 | Bruce et al. | Apr 2013 | B2 |
8489914 | Cagno | Jul 2013 | B2 |
8510631 | Wu et al. | Aug 2013 | B2 |
8560804 | Bruce et al. | Oct 2013 | B2 |
8707134 | Takahashi et al. | Apr 2014 | B2 |
8713417 | Jo | Apr 2014 | B2 |
8788725 | Bruce et al. | Jul 2014 | B2 |
8832371 | Uehara et al. | Sep 2014 | B2 |
8856392 | Myrah et al. | Oct 2014 | B2 |
8959307 | Bruce et al. | Feb 2015 | B1 |
9043669 | Bruce et al. | May 2015 | B1 |
9099187 | Bruce et al. | Aug 2015 | B2 |
9135190 | Bruce et al. | Sep 2015 | B1 |
9147500 | Kim et al. | Sep 2015 | B2 |
9158661 | Blaine et al. | Oct 2015 | B2 |
9201790 | Keeler | Dec 2015 | B2 |
9400617 | Ponce et al. | Jul 2016 | B2 |
20010010066 | Chin et al. | Jul 2001 | A1 |
20020011607 | Gelke et al. | Jan 2002 | A1 |
20020013880 | Gappisch et al. | Jan 2002 | A1 |
20020044486 | Chan et al. | Apr 2002 | A1 |
20020073324 | Hsu et al. | Jun 2002 | A1 |
20020083262 | Fukuzumi | Jun 2002 | A1 |
20020083264 | Coulson | Jun 2002 | A1 |
20020141244 | Bruce et al. | Oct 2002 | A1 |
20030023817 | Rowlands et al. | Jan 2003 | A1 |
20030065836 | Pecone | Apr 2003 | A1 |
20030097248 | Terashima et al. | May 2003 | A1 |
20030120864 | Lee et al. | Jun 2003 | A1 |
20030126451 | Gorobets | Jul 2003 | A1 |
20030131201 | Khare et al. | Jul 2003 | A1 |
20030161355 | Falcomato et al. | Aug 2003 | A1 |
20030163624 | Matsui et al. | Aug 2003 | A1 |
20030163647 | Cameron et al. | Aug 2003 | A1 |
20030163649 | Kapur et al. | Aug 2003 | A1 |
20030182576 | Morlang et al. | Sep 2003 | A1 |
20030204675 | Dover et al. | Oct 2003 | A1 |
20030223585 | Tardo et al. | Dec 2003 | A1 |
20040073721 | Goff et al. | Apr 2004 | A1 |
20040078632 | Infante et al. | Apr 2004 | A1 |
20040128553 | Buer et al. | Jul 2004 | A1 |
20040215868 | Solomon et al. | Oct 2004 | A1 |
20050050245 | Miller et al. | Mar 2005 | A1 |
20050055481 | Chou et al. | Mar 2005 | A1 |
20050078016 | Neff | Apr 2005 | A1 |
20050097368 | Peinado et al. | May 2005 | A1 |
20050120146 | Chen et al. | Jun 2005 | A1 |
20050210149 | Kimball | Sep 2005 | A1 |
20050210159 | Voorhees et al. | Sep 2005 | A1 |
20050226407 | Kasuya et al. | Oct 2005 | A1 |
20050240707 | Hayashi et al. | Oct 2005 | A1 |
20050243610 | Guha et al. | Nov 2005 | A1 |
20050289361 | Sutardja | Dec 2005 | A1 |
20060004957 | Hand, III | Jan 2006 | A1 |
20060026329 | Yu | Feb 2006 | A1 |
20060031450 | Unrau et al. | Feb 2006 | A1 |
20060039406 | Day et al. | Feb 2006 | A1 |
20060095709 | Achiwa | May 2006 | A1 |
20060112251 | Karr et al. | May 2006 | A1 |
20060129876 | Uemura | Jun 2006 | A1 |
20060184723 | Sinclair et al. | Aug 2006 | A1 |
20070019573 | Nishimura | Jan 2007 | A1 |
20070028040 | Sinclair | Feb 2007 | A1 |
20070058478 | Murayama | Mar 2007 | A1 |
20070073922 | Go et al. | Mar 2007 | A1 |
20070083680 | King et al. | Apr 2007 | A1 |
20070088864 | Foster | Apr 2007 | A1 |
20070093124 | Varney et al. | Apr 2007 | A1 |
20070094450 | VanderWiel | Apr 2007 | A1 |
20070096785 | Maeda | May 2007 | A1 |
20070121499 | Pal et al. | May 2007 | A1 |
20070130439 | Andersson et al. | Jun 2007 | A1 |
20070159885 | Gorobets | Jul 2007 | A1 |
20070168754 | Zohar et al. | Jul 2007 | A1 |
20070174493 | Irish et al. | Jul 2007 | A1 |
20070174506 | Tsuruta | Jul 2007 | A1 |
20070195957 | Arulambalam et al. | Aug 2007 | A1 |
20070288686 | Arcedera et al. | Dec 2007 | A1 |
20070288692 | Bruce et al. | Dec 2007 | A1 |
20070294572 | Kalwitz et al. | Dec 2007 | A1 |
20080052456 | Ash | Feb 2008 | A1 |
20080052585 | LaBerge et al. | Feb 2008 | A1 |
20080072031 | Choi | Mar 2008 | A1 |
20080104264 | Duerk et al. | May 2008 | A1 |
20080147963 | Tsai | Jun 2008 | A1 |
20080189466 | Hemmi | Aug 2008 | A1 |
20080195800 | Lee et al. | Aug 2008 | A1 |
20080218230 | Shim | Sep 2008 | A1 |
20080228959 | Wang | Sep 2008 | A1 |
20090028229 | Cagno et al. | Jan 2009 | A1 |
20090037565 | Andresen et al. | Feb 2009 | A1 |
20090055573 | Ito | Feb 2009 | A1 |
20090077306 | Arcedera et al. | Mar 2009 | A1 |
20090083022 | Bin Mohd Nordin et al. | Mar 2009 | A1 |
20090094411 | Que | Apr 2009 | A1 |
20090132620 | Arakawa | May 2009 | A1 |
20090132752 | Poo et al. | May 2009 | A1 |
20090150643 | Jones et al. | Jun 2009 | A1 |
20090158085 | Kern et al. | Jun 2009 | A1 |
20090172250 | Allen et al. | Jul 2009 | A1 |
20090172261 | Prins et al. | Jul 2009 | A1 |
20090172466 | Royer et al. | Jul 2009 | A1 |
20090240873 | Yu et al. | Sep 2009 | A1 |
20100058045 | Borras et al. | Mar 2010 | A1 |
20100095053 | Bruce et al. | Apr 2010 | A1 |
20100125695 | Wu | May 2010 | A1 |
20100250806 | Devilla et al. | Sep 2010 | A1 |
20100268904 | Sheffield et al. | Oct 2010 | A1 |
20100299538 | Miller | Nov 2010 | A1 |
20100318706 | Kobayashi | Dec 2010 | A1 |
20110022778 | Schibilla et al. | Jan 2011 | A1 |
20110022801 | Flynn | Jan 2011 | A1 |
20110087833 | Jones | Apr 2011 | A1 |
20110093648 | Belluomini et al. | Apr 2011 | A1 |
20110113186 | Bruce et al. | May 2011 | A1 |
20110145479 | Talagala et al. | Jun 2011 | A1 |
20110161568 | Bruce et al. | Jun 2011 | A1 |
20110167204 | Estakhri et al. | Jul 2011 | A1 |
20110173383 | Gorobets | Jul 2011 | A1 |
20110197011 | Suzuki et al. | Aug 2011 | A1 |
20110202709 | Rychlik | Aug 2011 | A1 |
20110208901 | Kim et al. | Aug 2011 | A1 |
20110208914 | Winokur et al. | Aug 2011 | A1 |
20110258405 | Asaki | Oct 2011 | A1 |
20110264884 | Kim | Oct 2011 | A1 |
20110264949 | Ikeuchi | Oct 2011 | A1 |
20110270979 | Schlansker et al. | Nov 2011 | A1 |
20120005405 | Wu et al. | Jan 2012 | A1 |
20120005410 | Ikeuchi | Jan 2012 | A1 |
20120017037 | Riddle et al. | Jan 2012 | A1 |
20120102263 | Aswadhati | Apr 2012 | A1 |
20120102268 | Smith et al. | Apr 2012 | A1 |
20120137050 | Wang et al. | May 2012 | A1 |
20120173795 | Schuette et al. | Jul 2012 | A1 |
20120215973 | Cagno et al. | Aug 2012 | A1 |
20120249302 | Szu | Oct 2012 | A1 |
20120260102 | Zaks et al. | Oct 2012 | A1 |
20120271967 | Hirschman | Oct 2012 | A1 |
20120303924 | Ross | Nov 2012 | A1 |
20120311197 | Larson et al. | Dec 2012 | A1 |
20130010058 | Pomeroy | Jan 2013 | A1 |
20130094312 | Jan et al. | Apr 2013 | A1 |
20130099838 | Kim et al. | Apr 2013 | A1 |
20130111135 | Bell, Jr. et al. | May 2013 | A1 |
20130206837 | Szu | Aug 2013 | A1 |
20130208546 | Kim et al. | Aug 2013 | A1 |
20130212337 | Maruyama | Aug 2013 | A1 |
20130212349 | Maruyama | Aug 2013 | A1 |
20130212425 | Blaine et al. | Aug 2013 | A1 |
20130246694 | Bruce et al. | Sep 2013 | A1 |
20130254435 | Shapiro et al. | Sep 2013 | A1 |
20130262750 | Yamasaki et al. | Oct 2013 | A1 |
20130282933 | Jokinen et al. | Oct 2013 | A1 |
20130304775 | Davis | Nov 2013 | A1 |
20130339578 | Ohya | Dec 2013 | A1 |
20130339582 | Olbrich et al. | Dec 2013 | A1 |
20130346672 | Sengupta et al. | Dec 2013 | A1 |
20140068177 | Ramprasad | Mar 2014 | A1 |
20140095803 | Kim et al. | Apr 2014 | A1 |
20140104949 | Bruce et al. | Apr 2014 | A1 |
20140108869 | Brewerton et al. | Apr 2014 | A1 |
20140189203 | Suzuki | Jul 2014 | A1 |
20140258788 | Maruyama | Sep 2014 | A1 |
20140285211 | Raffinan | Sep 2014 | A1 |
20140331034 | Ponce et al. | Nov 2014 | A1 |
20150006766 | Ponce et al. | Jan 2015 | A1 |
20150012690 | Bruce et al. | Jan 2015 | A1 |
20150032937 | Salessi | Jan 2015 | A1 |
20150032938 | Salessi | Jan 2015 | A1 |
20150067243 | Salessi et al. | Mar 2015 | A1 |
20150149697 | Salessi et al. | May 2015 | A1 |
20150149706 | Salessi et al. | May 2015 | A1 |
20150153962 | Salessi et al. | Jun 2015 | A1 |
20150169021 | Salessi et al. | Jun 2015 | A1 |
20150261456 | Alcantara et al. | Sep 2015 | A1 |
20150261475 | Alcantara et al. | Sep 2015 | A1 |
20150261797 | Alcantara et al. | Sep 2015 | A1 |
20150370670 | Lu | Dec 2015 | A1 |
20150371684 | Mataya | Dec 2015 | A1 |
20150378932 | Souri et al. | Dec 2015 | A1 |
20160026402 | Alcantara et al. | Jan 2016 | A1 |
20160027521 | Lu | Jan 2016 | A1 |
20160041596 | Alcantara et al. | Feb 2016 | A1 |
Number | Date | Country |
---|---|---|
2005142859 | Jun 2005 | JP |
2005-309847 | Nov 2005 | JP |
489308 | Jun 2002 | TW |
200428219 | Dec 2004 | TW |
436689 | Dec 2005 | TW |
I420316 | Dec 2013 | TW |
WO 9406210 | Mar 1994 | WO |
WO 9838568 | Sep 1998 | WO |
Entry |
---|
Office Action for U.S. Appl. No. 13/475,878, dated Jun. 23, 2014. |
Office Action for U.S. Appl. No. 13/253,912 dated Jul. 16, 2014. |
Office Action for U.S. Appl. No. 12/876,113 dated Jul. 11, 2014. |
Office Action for U.S. Appl. No. 12/270,626 dated Feb. 3, 2012. |
Office Action for U.S. Appl. No. 12/270,626 dated Apr. 4, 2011. |
Office Action for U.S. Appl. No. 12/270,626 dated Mar. 15, 2013. |
Notice of Allowance/Allowability for U.S. Appl. No. 12/270,626 dated Oct. 3, 2014. |
Advisory Action for U.S. Appl. No. 12/876,113 dated Oct. 16, 2014. |
Office Action for U.S. Appl. No. 14/297,628 dated Jul. 17, 2015. |
Office Action for U.S. Appl. No. 13/475,878 dated Dec. 4, 2014. |
USPTO Notice of Allowability & attachment(s) dated Jan. 7, 2013 for U.S. Appl. No. 12/876,247. |
Office Action dated Sep. 14, 2012 for U.S. Appl. No. 12/876,247. |
Office Action dated Feb. 1, 2012 for U.S. Appl. No. 12/876,247. |
Notice of Allowance/Allowability dated Mar. 31, 2015 for U.S. Appl. No. 13/475,878. |
Office Action dated May 22, 2015 for U.S. Appl. No. 13/253,912. |
Office Action for U.S. Appl. No. 12/876,113 dated Mar. 13, 2014. |
Advisory Action for U.S. Appl. No. 12/876,113 dated Sep. 6, 2013. |
Office Action for U.S. Appl. No. 12/876,113 dated May 14, 2013. |
Office Action for U.S. Appl. No. 12/876,113 dated Dec. 21, 2012. |
Security Comes to SNMP: The New SNMPv3 Proposed Internet Standard, the Internet Protocol Journal, vol. 1, No. 3, Dec. 1998. |
Notice of Allowability for U.S. Appl. No. 12/882,059 dated May 30, 2013. |
Notice of Allowability for U.S. Appl. No. 12/882,059 dated Feb. 14, 2013. |
Office Action for U.S. Appl. No. 12/882,059 dated May 11, 2012. |
Notice of Allowability for U.S. Appl. No. 14/038,684 dated Aug. 1, 2014. |
Office Action for U.S. Appl. No. 14/038,684 dated Mar. 17, 2014. |
Notice of Allowance/Allowability for U.S. Appl. No. 13/890,229 dated Feb. 20, 2014. |
Office Action for U.S. Appl. No. 13/890,229 dated Oct. 8, 2013. |
Office Action for U.S. Appl. No. 12/876,113 dated Dec. 5, 2014. |
Notice of Allowance/Allowabilty for U.S. Appl. No. 12/876,113 dated Jun. 22, 2015. |
Office Action for U.S. Appl. No. 14/217,249 dated Apr. 23, 2015. |
Office Action for U.S. Appl. No. 14/217,467 dated Apr. 27, 2015. |
Office Action for U.S. Appl. No. 14/616,700 dated Apr. 30, 2015. |
Office Action for U.S. Appl. No. 14/217,436 dated Sep. 11, 2015. |
Office Action for U.S. Appl. No. 13/475,878 dated Jun. 23, 2014. |
Office Action for U.S. Appl. No. 12/876,113 dated Oct. 16, 2014. |
Notice of Allowance for U.S. Appl. No. 12/270,626 dated Oct. 3, 2014. |
Office Action for U.S. Appl. No. 12/270,626 dated May 23, 2014. |
Office Action for U.S. Appl. No. 12/270,626 dated Dec. 18, 2013. |
Office Action for U.S. Appl. No. 12/270,626 dated Aug. 23, 2012. |
Office Action dated Sep. 11, 2015 for U.S. Appl. No. 14/217,436. |
Office Action dated Sep. 24, 2015 for U.S. Appl. No. 14/217,334. |
Office Action dated Sep. 18, 2015 for Taiwanese Patent Application Office No. 102144165. |
Office Action dated Sep. 29, 2015 for U.S. Appl. No. 14/217,316. |
Office Action dated Sep. 28, 2015 for U.S. Appl. No. 14/689,045. |
Office Action dated Dec. 5, 2014 for U.S. Appl. No. 14/038,684. |
Office Action dated Oct. 8, 2015 for U.S. Appl. No. 14/217,291. |
Final Office Action dated Nov. 19, 2015 for U.S. Appl. No. 14/217,249. |
Final Office Action dated Nov. 18, 2015 for U.S. Appl. No. 14/217,467. |
Office Action dated Nov. 25, 2015 for U.S. Appl. No. 14/217,041. |
Office Action dated Oct. 5, 2015 for Taiwanese Application No. 103105076. |
Office Action dated Nov. 19, 2015 for U.S. Appl. No. 14/217,249. |
Office Action dated Nov. 18, 2015 for U.S. Appl. No. 14/217,467. |
Office Action dated Dec. 4, 2015 for U.S. Appl. No. 14/616,700. |
Office Action dated Jun. 4, 2015 for U.S. Appl. No. 14/215,414. |
Office Action dated Dec. 15, 2015 for U.S. Appl. No. 13/253,912. |
Office Action dated Dec. 17, 2015 for U.S. Appl. No. 14/214,216. |
Office Action dated Dec. 17, 2015 for U.S. Appl. No. 14/215,414. |
Office Action dated Dec. 17, 2015 for U.S. Appl. No. 14/803,107. |
Office Action dated Jan. 15, 2016 for U.S. Appl. No. 14/866,946. |
Office Action dated Jan. 11, 2016 for U.S. Appl. No. 14/217,399. |
Office Action dated Jan. 15, 2016 for U.S. Appl. No. 14/216,937. |
Notice of Allowance and Examiner-Initiated Interview Summary, dated Jan. 29, 2016 for U.S. Appl. No. 14/297,628. |
Office Action for U.S. Appl. No. 14/855,245 dated Oct. 26, 2016. |
Office Action for U.S. Appl. No. 14/217,249 dated Oct. 28, 2016. |
Office Action for U.S. Appl.No. 14/217,399 dated Nov. 1, 2016. |
Office Action for U.S. Appl. No. 14/217,291 dated Nov. 3, 2016. |
Office Action for U.S. Appl. No. 15/217,947 dated Nov. 4, 2016. |
Office Action for U.S. Appl. No. 14/216,627 dated Nov. 7, 2016. |
Office Action for U.S. Appl. No. 14/689,019 dated Nov. 18, 2016. |
Office Action for U.S. Appl. No. 14/684,399 dated Nov. 21, 2016. |
Notice of Allowance for U.S. Appl. No. 14/689,045 dated Nov. 21, 2016. |
Notice of Allowance for U.S. App. No. 14/217,334 dated Nov. 23, 2016. |
Advisory Action for U.S. Appl. No. 14/690,305 dated Nov. 25, 2016. |
Office Action for U.S. Appl. No. 14/216,937 dated Aug. 15, 2016. |
Notice of Allowance for U.S. Appl. No. 14/217,096 dated Dec. 5, 2016. |
Notice of Allowance for U.S. Appl. No. 14/217,161 dated Dec. 30, 2016. |
Office Action for U.S. Appl. No. 14/866,946 dated Jan. 5, 2017. |
Office Action for U.S. Appl. No. 14/688,209 dated Jan. 11, 2017. |
Office Action for U.S. Appl. No. 14/690,243 dated Jan. 13, 2017. |
Office Action for U.S. Appl. No. 15/232,801 dated Jan. 19, 2017. |
National Science Fountation,Award Abstract #1548968, SBIR Phase I: SSD In-Situ Processing, http://www.nsf.gov/awardsearch/showAward?AWD—ID=1548968 printed on Feb. 13, 2016. |
Design-Reuse, NxGn Data Emerges from Stealth Mode to provide a paradigm shift in enterprise storage solution, http://www.design-reuse.com/news/35111/nxgn-data-intelligent-solutions.html, printed on Feb. 13, 2016. |
Office Action for U.S. Appl. No. 14/217,365 dated Feb. 18, 2016. |
Office Action for U.S. Appl. No. 14/217,365 dated Mar. 2, 2016. |
Office Action for U.S. Appl. No. 14/690,305 dated Feb. 25, 2016. |
Office Action for U.S. Appl. No. 14/217,436 dated Feb. 25, 2016. |
Office Action for U.S. Appl. No. 14/217,316 dated Feb. 26, 2016. |
Office Action for U.S. Appl. No. 14/215,414 dated Mar. 1, 2016. |
Office Action for U.S. Appl. No. 14/616,700 dated Mar. 8, 2016. |
Office Action for U.S. Appl. No. 14/217,096 dated Jul. 12, 2016. |
Notice of Allowance for U.S. Appl. No. 14/217,399 dated Jul. 20, 2016. |
Office Action for U.S. Appl. No. 14/866,946 dated Jul. 29, 2016. |
Notice of Allowance for U.S. Appl. No. 14/217,334 dated Jul. 29, 2016. |
Office Action for U.S. Appl. No. 14/690,243 dated Aug. 11, 2016. |
Office Action for U.S. Appl. No. 14/690,370 dated Aug. 12, 2016. |
Working Draft American National Standard Project T10/1601-D Information Technology Serial Attached SCSI-1.1 (SAS-1.1), Mar. 13, 2004 Revision 4. |
Office Action for U.S. Appl. No. 14/217,316 dated Aug. 25, 2016. |
Office Action for U.S. Appl. No. 14/690,305 dated Aug. 26, 2016. |
Advisory Action for U.S. Appl. No. 14/217,291 dated Sep. 9, 2016. |
Advisory Action for U.S. Appl. No. 14/689,045 dated Sep. 16, 2016. |
Notice of Allowance for U.S. Appl. No. 14/182,303 dated Sep. 12, 2016. |
Advisory Action for U.S. Appl. No. 14/690,114 dated Sep. 12, 2016. |
Notice of Allowance for U.S. Appl. No. 14/215,414 dated Sep. 23, 2016. |
Advisory Action for U.S. Appl. No. 14/866,946 dated Oct. 13, 2016. |
Office Action for U.S. Appl. No. 14/687,700 dated Sep. 26, 2016. |
Office Action for U.S. Appl. No. 15/170,768 dated Oct. 6, 2016. |
Notice of allowance/allowability for U.S. Appl. No. 14/217,365 dated Oct. 18, 2016. |
Office Action for U.S. Appl. No. 14/616,700 dated Oct. 20, 2016. |
Number | Date | Country | |
---|---|---|---|
61801111 | Mar 2013 | US |