Embodiments of the present invention relate generally to storage enclosures, and, more specifically, to storage enclosures with daisy-chained sideband signal routing and distributed logic devices.
A conventional storage enclosure includes an expander coupled to a single large printed circuit board (PCB). The single large PCB includes a collection of ports for mounting hard drives. Each hard drive is coupled to the expander via one or more different traces embedded in the PCB. The expander includes a logic device configured to transmit and receive various types of data, via the PCB traces, to and from the hard drives mounted to the PCB. The data could be, for example, read data or write data. The expander is also configured to transmit various commands, via the PCB traces, to the hard drives mounted to the PCB. The commands could be, for example, I/O commands, for reading and/or writing data, or power management commands.
One drawback of the above conventional configuration is that the power management commands transmitted to the various hard drives are synchronized; therefore, the logic device cannot be configured to transmit an individual power management command that targets just one hard drive. Consequently, if one hard drive needs to be shut down, all hard drives in the storage enclosure must be shut down. For example, if one drive suffered a hardware failure and needed to be deactivated and then replaced, all hard drives would also need to be deactivated. Another drawback is that the PCB must include sufficient PCB traces to accommodate the transmission of both I/O data and I/O commands, potentially requiring a large number of PCB traces. These traces may induce crosstalk with one another, especially as the number of PCB traces increases. To avoid such crosstalk problems, the number of hard drives that are typically included within the storage enclosure is purposefully limited.
As the foregoing illustrates, what is needed is a more effective way to control the different hard drives within a storage enclosure.
Various embodiments of the present invention sets forth a storage enclosure, including a set of hard drives that includes a first hard drive and a second hard drive, and a first logic device coupled to each hard drive included in the set of hard drives and configured to receive a first management command that is directed to the first hard drive, and transmit the first management command to the first hard drive for execution, wherein executing the first management command changes the operating state of the first hard drive without changing the operating state of the second hard drive.
At least one advantage of the disclosed approach is that a host computer system coupled to the storage enclosure can exercise fine-grained control over the hard drives include within that enclosure. Thus, the host computer system can selectively power on and power off specific hard drives within the enclosure without affecting other hard drives.
So that the manner in which the above recited features of the present invention can be understood in detail, a more particular description of the invention, briefly summarized above, may be had by reference to embodiments, some of 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 invention may admit to other equally effective embodiments.
In the following description, numerous specific details are set forth to provide a more thorough understanding of the present invention. However, it will be apparent to one of skill in the art that the present invention may be practiced without one or more of these specific details.
Expanders 110 are coupled to interface unit 120, and interface unit 120 is coupled to hard drive sub-boards 130. Expanders 110 include a plurality of plugs (not shown) which couple directly to interface unit 120. Interface unit 120 is coupled to each hard drive sub-board 130 via a set of primary cables 140 and a set of sideband cables 150. Primary cables 140 generally transport I/O data, including I/O commands and read/write data. Primary cables 140 may include multiple different subsets of cables, where each subset is coupled to a different hard drive sub-board. Sideband cables 150 generally transport management commands, including power management commands, power cycling commands, operational and control commands, and other commands that affect the operational state of the hard drives coupled to each hard drive sub-board 130.
In operation, expanders 110 transport I/O data to and from a host computer system (not shown) coupled upstream of those expanders. As mentioned above, “I/O data” generally includes I/O commands and associated read/write data. Expanders 110 also transport management commands received from the host computer system. Expanders 110 include various circuitry configured to transport the I/O data and management commands to and/or from specific ports within interface unit 120. An exemplary expander 110 is discussed in greater detail below in conjunction with
Interface unit 120 receives I/O data and management commands from expanders 110 and then transmits that data along primary cables 140 and sideband cables 150, respectively, to specific hard drives within hard drive sub-boards 130. Interface unit 120 may also receive I/O data (such as, e.g., read data) from the hard drives within hard drive sub-boards 130 via cables 140 and then provide that data to expanders 110 for transmission to the host computer system.
Each hard drive sub-board 130 includes a plurality of hard drive groups (not shown here). Each hard drive group includes a set of hard drives. Each hard drive sub-board 130 also includes a complex logic device (CPLD) that is configured to manage the operational state of each hard drive within each hard drive group on the hard drive sub-board 130. The CPLD for a given hard drive sub-board is capable of separately routing management commands to each hard drive and/or executing management commands on behalf of those hard drives to change the operating state of each such hard drive. Thus, management commands can be individually directed to each hard drive within storage enclosure 100 by routing those commands through the relevant CPLD. An exemplary hard drive sub-board 130 is described in greater detail below in conjunction with
Each hard drive group 200 is coupled to CPLD 230. CPLD 230 is configured to manage the operation of each hard drive 210 within disk sub-board 130. CPLD 230 is coupled to sideband cable 150, and configured to receive management commands via sideband cable 150. Sideband cable 150 is coupled upstream to one or more master CPLDs that manage CPLDs 230 within the various hard drive sub-boards 130 of storage enclosure 100. Each expander 110 includes a master CPLD, as described in grater detail below in conjunction with
For example, CPLD 230-0 could receive management commands from interface unit 120 that target hard drives 210 within hard drive sub-board 130-0. In addition, CPLD 230-0 could receive management commands that target hard drives 210 within hard drive sub-board 130-1. CPLD 230-0 would then relay those management commands to CPLD 230-1, and CPLD 230-1 would then transmit the received management commands to hard drives 210 within hard drive sub-board 130-1. By implementing daisy-chained sideband cables 150 in this fashion, the amount of cabling within storage enclosure 100 can be minimized. In addition, by coupling sideband cables 150 to hard drive sub-boards 130 separately from the couplings associated with primary cable 140, the size of a connector needed to couple to hard drive sub-boards 130 may also be minimized.
Referring generally to
As shown, a method 500 begins at step 502, where a master logic device, such as CPLD 300, receives a command for a hard drive 210 within a hard drive sub-board 130. The command may originate from a host computer system coupled to the storage enclosure 100. At step 504, the master logic device transmits the command to a local logic device that is configured to manage the hard drive sub-board 130 where the hard drive 210 resides. The local logic device could be, for example, local CPLD 230.
At step 506, the local logic device receives the command for the hard drive 210. At step 508, the local logic device executes the command to change the operating state of the hard drive 210, without changing the operating state of other hard drives 210 within the storage enclosure 100. With this approach, master and local logic devices, such as CPLDs 230 and 300, can operate in conjunction with one another to control the operation of hard drives 210 on an individual basis. Thus, CPLDs 230 and 300 may power on or off a single hard drive 210 without affecting the operating state of any other hard drives within the hard drive sub-board 130 or within storage enclosure 100.
In sum, a storage enclosure includes a plurality of hard drive sub-boards, each configured to include a plurality of hard drives. A local logic device manages each hard drive sub-board. A master logic device manages the local logic devices. The master logic device receives management commands from a host computer system coupled to the storage enclosure, and routes those commands to specific local logic devices. The local logic devices then relay the commands to specifically targeted hard drives. Thus, each hard drive within the storage enclosure can be independently controlled, allowing a single hard drive to be powered down without powering down other hard drives in the enclosure.
At least one advantage of the disclosed approach is that a host computer system coupled to the storage enclosure can exercise fine-grained control over the hard drives include within that enclosure. Thus, the host computer system can selectively power on and power off specific hard drives within the enclosure without affecting other hard drives. In addition, implementing a sideband cable as opposed to a set of PCB traces to route management commands may reduce the overall amount of crosstalk within the storage enclosure, thereby allowing the storage enclosure to include a greater number of hard drives than conventional enclosures.
The descriptions of the various embodiments have been presented for purposes of illustration, but are not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments.
While the preceding is directed to embodiments of the present disclosure, other and further embodiments of the disclosure may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow.
Number | Name | Date | Kind |
---|---|---|---|
5058004 | Ravid | Oct 1991 | A |
6192481 | Deenadhayalan | Feb 2001 | B1 |
6754720 | Packer | Jun 2004 | B1 |
7234023 | Abe | Jun 2007 | B2 |
7350088 | Allison | Mar 2008 | B2 |
7434090 | Hartung | Oct 2008 | B2 |
7536584 | Davies | May 2009 | B2 |
7634615 | Sutardja | Dec 2009 | B2 |
7639493 | Hori | Dec 2009 | B2 |
7734867 | Keeton | Jun 2010 | B1 |
8001393 | Hori | Aug 2011 | B2 |
8006111 | Faibish | Aug 2011 | B1 |
8161303 | Hakamata | Apr 2012 | B2 |
8171214 | Fujimoto | May 2012 | B2 |
8839028 | Polia | Sep 2014 | B1 |
9047172 | Burke | Jun 2015 | B2 |
9183169 | Jones | Nov 2015 | B2 |
20030079156 | Sicola | Apr 2003 | A1 |
20030191890 | Okamoto | Oct 2003 | A1 |
20040042408 | Sakai | Mar 2004 | A1 |
20040193791 | Felton | Sep 2004 | A1 |
20040236908 | Suzuki | Nov 2004 | A1 |
20050022064 | Steinmetz | Jan 2005 | A1 |
20050177683 | Isobe | Aug 2005 | A1 |
20050228943 | DeCenzo | Oct 2005 | A1 |
20050278581 | Jiang | Dec 2005 | A1 |
20050289361 | Sutardja | Dec 2005 | A1 |
20070276976 | Gower | Nov 2007 | A1 |
20090006752 | Bartley | Jan 2009 | A1 |
20090132838 | Cherian | May 2009 | A1 |
20090204743 | Inoue | Aug 2009 | A1 |
20130282944 | Shaw | Oct 2013 | A1 |
20140025850 | Varchavtchik | Jan 2014 | A1 |
20140149658 | Boyd | May 2014 | A1 |
20140215107 | Morabad | Jul 2014 | A1 |
20140310441 | Klughart | Oct 2014 | A1 |
20150143037 | Smith | May 2015 | A1 |
20150149684 | Dhandapani | May 2015 | A1 |
20150363109 | Frick | Dec 2015 | A1 |
20160335220 | Breakstone | Nov 2016 | A1 |
20170270069 | Breakstone | Sep 2017 | A1 |
Number | Date | Country | |
---|---|---|---|
20170300264 A1 | Oct 2017 | US |