Abstract:
A data storage system is provided wherein each one of a plurality of disk interfaces is coupled to a corresponding storage disk drive. The disk interfaces in one portion are coupled through a first unidirectional channel to a first disk controller and the disk interfaces in another portion of the disk interfaces are coupled through a second unidirectional channel to a second disk controller. Each disk interface includes a switch adapted to allow data to pass to another disk drive in the channel thereof; and, when the other channel becomes inoperative, coupling the disk drive in the inoperative channel to the operative fiber channel. With such arrangement, a disk drive may be removed without requiring a shut-down of the storage system (i.e., the disk drive may be &#34;hot swapped&#34;). In one embodiment, a pair of the switches is disposed on the common printed circuit board with the disk interface for enabling depopulation, or removal of, disk drives from the storage system.

Description:
BACKGROUND OF THE INVENTION 
     This invention relates generally to data storage systems and more particularly to data storage systems having a plurality of magnetic storage disk drives in a redundancy arrangement whereby the disk drives are controllable by primary disk controllers and secondary disk controllers. Still more particularly, the invention also relates to systems of such type wherein the disk drives are coupled to the disk controllers through a series, unidirectional, &#34;ring&#34; or, fiber channel protocol, communication system. 
     As is known in the art, in one type of data storage system, data is stored in a bank of magnetic storage disk drives. Each one of the disk drives is coupled to a corresponding disk interface. The disk interface is a printed circuit board having a programmable array logic (PAL) circuit for decoding address signals fed to it by a disk controller. When the PAL detects its address, it produces a signal to activate a relay and thereby turn its disk drive &#34;on&#34;. The PAL is also used to turn its LED &#34;on&#34; when the disk drive needs to be replaced. 
     The disk drives, and their coupled interfaces, are arranged in sets, each set being controlled by a primary disk controller and a secondary disk controller. More particularly, in order to enable the set of disk drives to operate in the event that there is a failure of the primary disk controller, each set is also coupled to a secondary, or redundant disk controller. Therefore, if either the primary or secondary disk controller fails, the set can be accessed by the other one of the disk controllers. 
     While today, most disk storage systems of this type use a Small Computer System Interconnection (SCSI) protocol, in order to operate with higher data rates, other protocols are being introduced. One higher data rate protocol is sometimes referred to as a fiber channel (FC) protocol. Such FC channel protocol uses a series, unidirectional, &#34;ring&#34; communication system. In order to provide for redundancy, that is, to enable use of the set of disk drives in the event that the primary disk controller fails, as discussed above, the set is coupled to the second, or redundant disk controller, using a separate, independent, &#34;ring&#34;, or fiber channel communication protocol. Thus, two fiber channels are provided for each set of disk drives and their disk interfaces; a primary fiber channel and a secondary fiber channel. 
     As is also known, when using the fiber channel communication protocol, if any element in the channel becomes inoperative, the entire channel becomes inoperative. That is, if the primary disk controller becomes inoperative, or if any one of the disk drives in the set coupled to the primary channel becomes inoperative (i.e., as where the disk interface fails, the disk interface is inoperative, or removed with its coupled disk drive, or where the disk drive coupled thereto fails, or is removed), the primary fiber channel, is &#34;broken&#34;, or open, and becomes inoperative. The data stored in the entire portion of the set of disk drives coupled to the primary disk channel is therefore unavailable until the inoperative primary disk controller or inoperative disk drive is replaced. This is true with either the primary channel or the secondary channel. One technique suggested to solve this problem is through the use of a switch, sometimes referred to as an LRC (i.e., a loop resiliency circuit) switch. Such LRC switch is used to remove an inoperative disk drive from its channel. 
     In one suggested arrangement, a printed circuit board is provided for each disk drive. The printed circuit board has a pair of LRCs, one for the primary channel and one for the secondary channel. Thus, the open channel may be &#34;closed&#34; in the event of an inoperative disk drive by placing the LRC thereof in a by-pass condition. While such suggested technique solves the inoperative disk drive, or open channel problem, if one of the pair of LRCs fails, the entire printed circuit board having the pair of LRCs must be replaced thereby disrupting both the primary and secondary channels; and, hence, disrupting the operation of the entire data storage system. 
     One technique suggested to solve this disruption problem requires n LRC switches (where n is the number of disk drives in the set) in the primary channel, i.e., one LRC for each one the n disk drives in the set and another n LRC switches in the secondary channel for each one of the n disk drives in the secondary channel. The primary channel set of n LRCs is mounted on one printed circuit board and the secondary channel set of n LRCs is mounted on a different printed circuit board. A backplane is used to interconnect the two LRC printed circuit boards, the associated multiplexers, and the disk drives. In order to provide the requisite serial, or sequential, fiber channel connections, an elaborate, complex, fan-out wiring arrangement has been suggested for the backplane. Further, the slots provided for the two LRC boards eliminates two disk drives, and the disk interfaces which would otherwise be plugged into these two slots of the backplane. 
     SUMMARY OF THE INVENTION 
     In accordance with the present invention, a data storage system is provided wherein each one of a plurality of disk interfaces is coupled to a corresponding storage disk drive. A first portion of the disk interfaces is coupled to a first disk controller through a first unidirectional channel and a second portion of the disk interfaces is coupled to a second disk controller through a second unidirectional channel. Each disk interface in the first portion includes a switch adapted to allow address control and data (hereinafter referred to, collectively, as data) to pass though the first channel; and, when the second channel becomes inoperative, couple an operative disk drives in the inoperative second channel to the first channel. With such arrangement, redundancy is provided because if the second disk controller becomes inoperative, the first disk controller is able to store data in and/or retrieve data from the disk drives in the second channel. Further, if one of the disk drives in the second channel is inoperative, all of the other, operative disk drives in the second channel are switched to the first channel, thereby enabling the disk drive to be replaced without having to shut down the operative disk drives in the second channel, i.e., the inoperative disk drive may be &#34;hot swapped&#34;. 
     In accordance with another feature of the invention, the switch is disposed on a common printed circuit board with the disk interface. Thus, the interface and its disk drive are packaged as a module to facilitate maintenance and providing system modularity. With such arrangement a simpler, local (i.e, the disk interface and the switch are located on a common printed circuit board) connecting arrangement is used to interconnect the disk drives and their associated switches as compared with the complex, fan-out connection arrangement discussed above. Still further, with this arrangement, there is no loss of slots on the backplane. 
     In accordance with still another feature of the invention, each disk interface includes a pair of the switches. The additional switch enables termination of a channel at a point where additional disk drives are no longer needed. Thus, the second switch enables &#34;depopulation&#34; or removal of a portion of the disk drives in the channel when a such portion is no longer needed by the storage system. 
    
    
     BRIEF DESCRIPTION OF THE DRAWING 
     FIG. 1 is a block diagram of a computer system having a data storage system according to the invention; 
     FIG. 2 is sketch showing how FIGS. 2A and 2B are arranged to make up a block diagram of a set of storage disk drives and their disk interfaces according to the invention, such set being used in the computer system of FIG. 1; and, 
     FIG. 3 is a block diagram of an exemplary addressable interface used in the disk interfaces of FIG. 2; and 
     FIG. 4 is a block diagram of a pair of disk drives and their interfaces in accordance with an alternative embodiment of the invention. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     Referring now to FIG. 1, a computer system 10 is shown. The computer system 10 includes a main frame computer section 12 for processing data. Portions of the processed data are stored in, and retrieved data from, a bank 16 of magnetic storage disk drives through an conventional system interface 18. The system interface 18 includes disk controllers 20 1  -20 m , central processor unit (CPU) controllers 22 and cache memories 24 electrically interconnected, in a conventional manner, as shown, through a pair of buses 26, 28 provided for redundancy in a backplane printed circuit board 30. Thus, disk controllers 20 1 , . . . 20 m-1  are coupled to bus 26, and disk controllers 20 2  . . . 20 m  are coupled to bus 28, as shown. Each one of the disk controllers 20 1  -20 m  is coupled to a corresponding one of sets 32 1  -32 m  of the disk drives 40 1  -40 n  and associated disk interfaces 42 1  -42 n , respectively, as shown, through primary fiber channel protocol channels 34 1  -34 m , respectively, as shown. Each one of the sets 32 1  -32 m  of disk drives and associated disk interfaces is identical in construction, an exemplary one thereof, here set 32 1  being shown, and discussed in detail, in connection with FIG. 2. Further, each one of the disk controllers 20 1  -20 m  is coupled to another one of the sets 32 1  -32 m  of disk drives 40 1  -40 n  and associated disk interfaces 42 1  -42 n  through secondary fiber protocol channels 38 1  -38 m , as shown, here indicated by dotted lines. Thus, for example, disk controller 20 1  is coupled to set 32 1  through primary fiber channel 34 1  and is also coupled to set 32 2  through secondary fiber channel 38 1 . Likewise, disk controller 20 2  is coupled to set 32 2  through primary fiber channel 34 2  and is also coupled to set 32 1  through secondary fiber channel 38 2 , as shown. Thus, while set 32 1  is, during normal mode of operation, coupled through disk controller 20 1  to bus 26, in the event that disk controller 20 1  becomes inoperative, set 32 1  is coupled to bus 28 through disk controller 20 2 . Finally, it should be noted that the cache memories 24 are coupled to both buses 26 and 28, in a conventional manner. 
     Referring now also to FIG. 2, an exemplary one of the plurality of sets 32 1  -32 m , here set 32 1  of disk drives 40 1  -40 n  and associated disk interfaces 42 1  -42 n , is shown. Each one of the disk interfaces 42 1  -42 n  is adapted to control a corresponding one of the magnetic storage disk drives 40 1  -40 n  coupled thereto, respectively, as shown. In normal mode of operation, data passes from the disk controller 20 1  (FIG. 1) sequentially through the disk interfaces 42 1 , 42 3 , . . . 42 n-3 , 42 n-1  (and hence through the disk drives 40 1 , 40 3 , . . . 40 n-3 , 40 n-1  coupled thereto), via the primary fiber channel 34 1  ; and, data passes from the disk controller 20 2  sequentially through the disk interfaces 42 2 , 42 4 , . . . 42 n-2 , 42 n  (and hence through the disk drives 40 2 , 40 4 , . . . 40 n-2 , 40 n  coupled thereto), via the secondary fiber channel 38 1 , as indicated by the dotted lines. 
     More particularly, the disk interfaces 42 1  -42 n  are arranged in groups, or cells, 43 1  -43 p  ; here groups of two (i.e., pairs) of successive disk interfaces; thus, here p=n/2. Thus, pairs of disk interfaces 42 1 , 42 2  ; 42 3 , 42 4  ; . . . 42 n-1 , 42 n , and their associated disk drives 40 1 , 40 2  ; 40 3 , 40 4  ; . . . 40 n-1 , 40 n , are grouped together to form cells 43 1  -43 n/2 , respectively as shown. Each one of the cells 43 1  -43 n/2  is identical in construction, an exemplary one thereof, here cell 43 1  is shown to included disk interfaces 42 1 , 42 2 , and their coupled disk drives 40 1 , 40 2 , respectively, as indicated. Each one of the cells 43 1  -43 n/2  has a primary input port PI 1  -PI n/2 , respectively, as shown, and a primary output port PO 1  -PO n/2 , respectively, as shown. Each one of the cells 43 1  -43 n/2  has a secondary input port SI 1  -SI n/2 , respectively, as shown, and a secondary output port SO 1  -SO n/2 , respectively, as shown. The cells 43 1  -43 n/2  are sequentially (i.e. serially) coupled to the controllers 20 1 , 20 2  through the fiber channels 34 1 , 38 1 , respectively, from primary output port PO to primary input port PI, for the primary fiber channel 34 1  and from secondary input port SI to secondary output port SO, for the secondary channel 38 1 . 
     Each one of the disk interfaces 42 1  -42 n  includes a corresponding one of a plurality of switches 44 1  -44 n , as shown. Each one of the switches 44 1  -44 n  is identical in construction and, here, switches 44 1  -44 n  are conventional LRC switches. Thus, each one of the switches 44 1  -44 n  includes a pair of input ports I 1 , I 2  and a pair of output ports O 1 , O 2 , as shown. When one of the switches 44 1  -44 n  is in the feed-through condition (as indicated by curved arrow B) the data fed to first input port I 1  thereof passes to the first output port O 1  thereof and, likewise, data fed to the second input port I 2  thereof passes to the second output port O 2  thereof; however, when of the switches 44 1  -44 n  is in the by-pass condition (as indicated by the arrows A), data fed to input port I 1  thereof is diverted from the first output port O 1  thereof and is coupled directly to the second output port O 2  thereof. Each one of the switches 44 1  -44 n  is placed in either the feed-through condition or the by-pass condition by a control signal fed thereto via control line 46 1  -46 n , respectively, as shown. 
     In the normal mode of operation, primary disk controller 20 1  is coupled, as noted above, to disk drives 40 1 , 40 3 , . . . 40 n-3 , 40 n-1 , by primary fiber channel 34 1 . Likewise, secondary disk controller 20 2  is coupled to disk drives 40 2 , 40 4 , . . . 40 n-2 , 40 n  through secondary fiber channel 38 1 . (It should be noted that while the data is depicted as passing from the disk drives 40 and then to the switches 44, it is preferable that the data passes from the switches 44 and then to the disk drives, i.e., it is preferable that the direction indicated by the arrow in primary channel 34 1  be reversed in direction). Thus, in the normal mode of operation, switch 44 1  is in the by-pass condition, as indicate by the curved arrow A. Thus, data from disk controller 20 1  is fed, via twisted pair 47, to primary input port PI 1  of cell 43 1  to disk interface 42 1 , to disk drive 40 1 , then to the first input port I 1  of switch 44 1 . Because switch 44 1  is in the by-pass condition by the control signal on control line 46 1 , data from disk drive 40 1  passes directly to second output port O 2  and then to primary output port PO 1 . From there, the data passes, in like manner, to disk interface 42 3  of the next successive cell 43 2 , where the process repeats for disk drive 40 3  ; and then, in like manner, sequentially through the other cells and to cells 43.sub.(n/2)-1 -43 n  and then back to the primary controller 20 1  (FIG. 1). 
     Likewise, in the normal mode of operation, switch 44 2  is in the by-pass condition by a control signal on line 46 2 , as indicted by the arrow A and data from disk controller 20 2  (FIG. 1) passes to secondary input port SI 1  of cell 43 1 , then from first input port I 1  of switch 44 2  directly to second output port O 2  of switch 44 2 . The data then passes from disk drive 40 2  to secondary output port SO 2 . From there, the data passes, in like manner, to disk interface 42 4  of the next successive cell 43 2 , where the process repeats for disk drive 40 4  ; and then, in like manner, sequentially through the other cells and to cells 43.sub.(n/2-1) -43 n/2  and then back to the secondary controller 20 2  (FIG. 1). 
     If disk controller 20 2  becomes inoperative, for example, an effect which &#34;breaks&#34; the secondary channel &#34;ring&#34;, the switches 44 1 , 44 3  . . . 44 n-3 ,44 n-1  are placed in the feed-through condition by the control signal on line 46 1 , 46 3  . . . 46 n-3 , 46 n-1  and therefore, primary disk controller 20 1  is coupled, via primary fiber channel 34 1 , to disk drives 40 1 , 40 2 , 40 3 , 40 4  . . . 40 n-3 , 40 n-2 , 40 n-1 , 40 n . More particularly, in such feed-through condition, indicted by the arrows B, data at the first input ports I 1  of switches 44 1 , 44 3  . . . 44 n-3 , 44 n-1  pass directly to first output ports O 1  thereof, and passes to disk drives 40 2 , 40 4  . . . 40 n-2 , 40 n , then directly from second input ports I 2  to second output ports O 2  of switches 44 1 , 44 3  . . . 44 n-3 , 44 n-1  to primary channel output ports PO 2  thereby coupling disk interfaces 42 2 , 42 4 , . . . 42 n-2 , 42 n  and their coupled disk drives 40 2 , 40 4 , . . . 40 n-2 , 40 n  to the primary fiber channel 34 1 . 
     On the other hand, if the primary disk controller 20 1  becomes inoperative, for example, an effect which &#34;breaks&#34; the primary channel &#34;ring&#34;, the switches 44 2 , 44 4  . . . 44 n-2 , 44 n  are placed in the feed-through condition and therefore, secondary disk controller 20 2  is coupled, via secondary fiber channel 38 1 , to disk drives 40 1 , 40 2 , 40 3 , 40 4  . . . 40 n-3 , 40 n-2 , 40 n-1 , 40 n . More particularly, in such feed through condition, disk interfaces 42 1 , 42 3 , . . . 42 n-3 , 42 n-1  and their coupled disk drives 40 1 , 40 3 , . . . 40 n-1 , 40 n-1  are coupled to the secondary fiber channel 38 1 . 
     If any one of the disk drives 40 2 , 40 4 , . . . 40 n-2 , 40 n , in the secondary channel 38 1  becomes inoperative thereby breaking the secondary channel 38 1 , all other operative disk drives in the secondary channel 38 1  become coupled to the primary channel 34 1 . For example, if disk drive 40 2  becomes inoperative, an effect which &#34;breaks&#34; the secondary channel 38 1 , switches 44 3  -44 n-1  are switched from the by-pass condition to the feed through condition; switch 44 1  remaining in the by-pass condition. Therefore, the primary disk controller 20 1  becomes coupled to disk drives 40 1 , 40 3 , 40 4 , . . . 40 n-3 , 40 n-2 , 40 n-1 , and 40 n . 
     On the other hand, if any one of the disk drives 40 1 , 40 3 , . . . 40 n-3 , 40 n-1  in the primary channel 34 1  becomes inoperative, thereby breaking the primary channel 34 1 , all other operative disk drives in the primary channel 34 1  become coupled to the secondary channel 38 1 . For example, if disk drive 40 3  becomes inoperative, an effect which &#34;breaks&#34; the primary channel 34 1 , switches 44 2 , 44 5  (not shown), . . . 44 n-2 , and 44 n  are switched from the by-pass condition to the feed through condition; switch 44 4  remaining in the by-pass condition. Therefore, the secondary disk controller 20 2  becomes coupled to disk drives 40 1 , 40 2 , 40 3 , 40 5  (not shown), . . . 40 n-3 , 40 n-2 , 40 n-1 , and 40 n . 
     The control signal on line 46 1  is produced by an addressable control section 51 1 , shown in FIG. 3 to include a PAL and an OR gate. The addressable control section 51 1  is included in disk interface 42 1 . The addressable control section 51 1  is addressable by controller 20 1  (FIG. 1) via a separate control line bus 53 1 . More particularly, the bus 53 1  is fed to address the PAL. The addressable control section 51 1  is also fed by a signal on line 57 1  generated by disk interface 42 2  indicating that disk drive 40 2  is inoperative. In response to the signals fed to the addressable control section 51 1  from either disk controller 20 1  on bus 53 1  or the disk interface 42 2  on line 57 1 , the addressable control section 51 1  places switch 44 1  in either the feed-through, or alternatively, by-pass condition. More particularly, addressable control section 51 1  places switch 44 1  in the by-pass condition if the disk drive 40 2  is inoperative, as described above (i.e., via the signal on line 57 1 , or when disk controller 20 2  becomes inoperative, as described above, via the signals on bus 53 1 . In like manner, the control signal on line 46 2  is produced by an addressable control section 51 2  included in disk interface 42 2 . The addressable control section 51 2  is addressable by the primary controller 20 2  (FIG. 1) via a separate control bus 53 2  from controller 20 2 . The addressable control section 51 2  is also fed by a signal on line 57 2  generated by disk interface 42 2  indicating that disk drive 40 1  is inoperative. In response to the signals fed thereto from either controller 20 1  on bus 53 2  or the disk interface 42 1  on line 57 2 , the addressable control section 51 2  places switch 44 2  in either the feed-through, or alternatively, by-pass condition. More particularly, addressable control section 51 2  places switch 44 2  in the by-pass condition if disk controller 20 1  is inoperative, or if the disk drive 40 1  becomes inoperative, as described above. Addressable control sections 51 3  -51 n , are included in the other disk interfaces 42 3  -42 n , in a similar manner. 
     Each one of the switches 44 1  -44 n  is disposed on a common printed circuit board with a corresponding one of the disk interface, 42 1  -42 n , respectively. 
     Referring now to FIG. 4, an exemplary pair of cells 43&#39;.sub.(m/2)-1, 43&#39; m/2  is shown, where m is an integer between 1 and n. Cells 43&#39;.sub.(m/2)-1, 43&#39; m/2  differ from cells 43 1  -43 n/2  described above in connection with FIG. 2 in that each disk interface 42 1 , 42 n , includes a second LRC switch 44&#39;. Thus, for the exemplary interfaces 42&#39; m-3 , 42&#39; m-2 , 42&#39; m-1 , such interfaces include switches 44 m-3 , 44 m-2 , 44 m-1  and 44 m , respectively, and switches 44&#39; m-3 , 44&#39; m-2 , 44&#39; m-1 , and 44&#39; m , respectively, as shown. Switches 44 m-3 , 44 m-2 , 44 m-1  and 44 m  are normally in the by-pass condition as indicated and as described above in connection with FIGS. 1 and 2, while switches 44&#39; m-3 , 44&#39; m-2 , 44&#39; m-1 , and 44&#39; m  are normally in the feed-through condition as indicated. Here again the primary fiber channel 34 1  is indicated by the solid line and the secondary fiber channel 38 1  is indicated by the dotted line, as in FIG. 1 and 2. A control signal is fed to switch 44&#39; m-3  via control line 57&#39; 1  from disk interface 42&#39; m-1 , as shown. A control signal is fed to switch 44&#39; m-2  via control line 57&#39; 2  from disk interface 42&#39; m , as shown. Switches 44&#39; m-3 , 44&#39; m-2 , 44&#39; m-1 , and 44&#39; m  are provided to enable &#34;depopulation&#34; of disk drives. For example, if disk drive 40 m-1  is no longer required by the storage system 10, a control signal is produced on control line 57&#39; 1  to place switch 44&#39; m-3  in the by-pass condition thereby making disk drive 40 m-3  the last disk drive in the primary fiber channel 34. Likewise, if disk drive 40 m  is removed, a control signal is produced on control line 57&#39; 2  to place switch 44&#39; m-2  in the by-pass condition thereby making disk drive 40 m-2  the last disk drive in the secondary fiber channel 34. Further, a fiber channel may be terminated at any point by the switches 44&#39;. 
     Other embodiments are within the spirit and scope of the appended claims.