Arrayed disk drive system and method
First Claim
1. An arrayed disk drive system for providing memory to a computer comprising:
- a plurality of disk drives configured to form an array, said arrayed disk drives coupled to a plurality of channels, each channel accessing a plurality of disk drives, and each of the arrayed disk drives having a plurality of sectors;
disk controlling means, coupled to communicate with the channels, (a) for grouping the disk drives to define one or more logical groups each of which appears to the computer as a single disk drive so that the arrayed disk drives appear to the computer as any conceivable arrangement of disk drives, whereby the arrayed disk drive may appear to the computer as the plurality of disk drives, or as one large disk drive comprised of all the arrayed disk drives, or any combination in between, and (b) for controlling the transfer of data between the computer and the disk drives in accordance with the grouping;
means for providing a plurality of levels of data loss protection on data read or written by the computer to the arrayed disk drives; and
means controlled by the disk controlling means for selectively enabling from none to the plurality of levels of data loss protection to operate on data being read or written from the arrayed disk drives.
1 Assignment
0 Petitions
Accused Products
Abstract
An arrayed disk drive system for providing memory to a computer, said arrayed system having a plurality of disk drives configured to form an array, said arrayed disk drives accessed by a plurality of channels, each channel accessing a plurality of disk drives, including a means for controlling the logical configuration of the arrayed disk drives to appear to the computer as any conceivable arrangement of disk drives, whereby the arrayed disk drive may appear to the computer as the plurality of disk drives, or as one large disk drive comprised of all the arrayed disk drives, or any combination in between. A means for providing a plurality of levels of redundancy on data read or written by the computer to the arrayed disk drives is provided, as well as means controlled by the controlling means for enabling from none to the plurality of levels of redundancy to operate on data being read or written from the arrayed disk drives.
-
Citations
57 Claims
-
1. An arrayed disk drive system for providing memory to a computer comprising:
-
a plurality of disk drives configured to form an array, said arrayed disk drives coupled to a plurality of channels, each channel accessing a plurality of disk drives, and each of the arrayed disk drives having a plurality of sectors; disk controlling means, coupled to communicate with the channels, (a) for grouping the disk drives to define one or more logical groups each of which appears to the computer as a single disk drive so that the arrayed disk drives appear to the computer as any conceivable arrangement of disk drives, whereby the arrayed disk drive may appear to the computer as the plurality of disk drives, or as one large disk drive comprised of all the arrayed disk drives, or any combination in between, and (b) for controlling the transfer of data between the computer and the disk drives in accordance with the grouping; means for providing a plurality of levels of data loss protection on data read or written by the computer to the arrayed disk drives; and means controlled by the disk controlling means for selectively enabling from none to the plurality of levels of data loss protection to operate on data being read or written from the arrayed disk drives. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. An arrayed memory system for providing memory to a host computer, comprising:
-
a plurality of storage devices configured to form an array, said arrayed storage devices accessed by a plurality of channels, each channel accessing a plurality of storage devices, and; controlling means separate from the host computer for configuring said plurality of storage devices to appear to the host computer as any arrangement of storage devices, whereby the plurality of storage devices may be configured to appear all as one logical storage device, or as plural logical storage devices equal to the plurality of storage devices, or any configuration therebetween. - View Dependent Claims (17, 18)
-
-
19. A method for providing memory to a host computer employing an arrayed system having a plurality of storage devices configured to form an array, said arrayed storage devices accessed by a plurality of channels, each channel accessing a plurality of storage devices, comprising the steps of:
-
logically grouping the arrayed storage devices to form logical storage devices which appear to the host computer as any conceivable arrangement of storage devices, whereby the arrayed storage devices may appear to the host computer as the plurality of storage devices, or as one large storage device comprised of all the arrayed storage devices, or any combination in between; providing a plurality of levels of data loss protection on data read or written by the computer to the arrayed storage devices; selectively enabling from none to the plurality of levels of data loss protection to operate on data being read or written from the arrayed storage devices. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A configurable arrayed disk drive system for providing memory to a host computer, comprising:
-
a plurality of disk drives; and array control means for selectively defining any combination of one or more logical groups of disk drives in which each group includes at least one disk drive and in which the combination employs up to the plurality of disk drives, and for selectively assigning disk drives from among the plurality to form the logical groups, the array control means including (a) disk drive control processing means coupled to the disk drives to control read/write operations of each disk drive, and (b) system control processing means, coupled to the disk drive control processing means, for receiving read/write requests for any logical group form the host computer and controlling the disk drive control processing means to cause appropriate read/write operations to occur with respect to each disk drive in the logical group for which the request was received, wherein each logical group is accessed by the host computer as if it were a separate single disk drive. - View Dependent Claims (30, 31, 32, 33, 50, 51)
-
-
34. A configurable arrayed disk drive system for providing memory to a host computer, comprising:
-
a plurality of disk drives; a common bus for transmitting data to and from each of the disk drives; array control means for selectively configuring at least some of the disk drives into one or more logical groups of at least one disk drive each, for dividing data received from the host computer to be stored in any particular group into designated portions and for providing the designated portions to the common data bus; and controller means coupled between the common data bus and the disk drives, for recognizing and transmitting each designated portion of data to a particular disk drive for storage. - View Dependent Claims (35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 52, 53, 54, 55)
-
-
45. A configurable arrayed disk drive system for providing memory to a computer, comprising:
-
a common bus for receiving data from the computer and transmitting data to the computer; a plurality of channel buses coupled to the common bus; a plurality of channel controllers, one coupled to each channel bus, for controlling the transfer of data between the common bus and the channel buses; a plurality of disk controllers, one associated with each disk drive, for controlling the transfer of data between the disk drives and the channel buses; data error correction means, coupled to the common bus, for correcting data errors with respect to specified groups of data; and array control means coupled to the common bus for selectively configuring the disk drives into logical groups of at least one disk drive each to receive and store related data from the computer, for selectively enabling the data error correction means to be operative with respect to any logical group, for maintaining a plurality of disk drives as spare disk drives for subsequent replacement of a failed disk drive in any logical group, for dividing related data received from the computer into portions for storage in different disk drives of a group specified to store the data and providing the divided data to the common bus for storage in the appropriate disk drives via the channel controllers and disk controllers, and for obtaining previously divided related data from the disk drives and combining it for provision to the computer. - View Dependent Claims (46, 47, 48, 49)
-
-
56. A configurable arrayed storage device system for providing memory to a host computer, comprising:
-
a plurality of storage devices; and array control means for selectively defining any combination of one or more logical groups of storage devices in which each group includes at least one storage device and in which the combination employs up to the plurality of storage devices, and for selectively assigning storage devices from among the plurality to form the logical groups, the array control means including (a) storage device control processing means coupled to the storage devices to control read/write operations of each storage device, and (b) system control processing means, coupled to the storage device control processing means, for receiving read/write requests for any logical group from the host computer and controlling the storage device control processing means to cause appropriate read/write operations to occur with respect to each storage device in the logical group for which the request was received, wherein each logical group is accessed by the host computer as if it were a separate single storage device.
-
-
57. A configurable arrayed storage device system for providing memory to a host computer, comprising:
-
a plurality of storage devices; a common bus for transmitting data to and from each of the storage devices; array control means for selectively configuring at least some of the storage devices into one or more logical groups of at least one storage device each, for dividing data received from the host computer to be stored in any particular group into designated portions and for providing the designated portions to the common data bus; and controller means coupled between the common data bus and the storage devices, for recognizing and transmitting each designated portion of data to a particular storage device for storage.
-
Specification