Computer system having a virtual drive array controller
First Claim
Patent Images
1. A computer system, comprising:
- a system bus having at least one expansion slot;
a standard controller having front and back ends, said standard controller being a non-array controller, and said front end of said standard controller being inserted in an expansion slot of said system bus;
a secondary storage bus coupled to said back end of said standard controller;
a virtual drive array controller having front and back ends, said front end of said virtual drive array controller coupled to said secondary storage bus;
a first physical device coupled to said back end of said virtual drive array controller; and
a second physical device coupled to said back end of said virtual drive array controller,said virtual drive array controller representing said first physical device and said second physical device to said standard controller as a logical drive,said secondary storage bus and said logical drive are configured for a first type of physical device, and said first physical device and said second physical device are configured for a second type of physical device that is different from the first type of physical device, andsaid virtual drive array controller translates I/O messages to said logical drive from said standard controller into I/O messages for either said first physical device or said second physical device, and translates I/O messages from said first physical device and said second physical device into I/O messages from said logical drive.
4 Assignments
0 Petitions
Accused Products
Abstract
A computer system having a virtual drive array controller incorporated therein. The virtual drive array controller enables plural physical devices, which may be of a single type of device or a combination of multiple types of devices, to be represented to the computer system as a single logical drive. The virtual drive array controller includes a front end coupled to a secondary storage bus and a back end to which plural physical devices are coupled. Additional virtual drive array controllers may be arranged in a cascading configuration by coupling the additional virtual drive array controllers to the back end of the virtual drive array controller.
1584 Citations
27 Claims
-
1. A computer system, comprising:
-
a system bus having at least one expansion slot; a standard controller having front and back ends, said standard controller being a non-array controller, and said front end of said standard controller being inserted in an expansion slot of said system bus; a secondary storage bus coupled to said back end of said standard controller; a virtual drive array controller having front and back ends, said front end of said virtual drive array controller coupled to said secondary storage bus; a first physical device coupled to said back end of said virtual drive array controller; and a second physical device coupled to said back end of said virtual drive array controller, said virtual drive array controller representing said first physical device and said second physical device to said standard controller as a logical drive, said secondary storage bus and said logical drive are configured for a first type of physical device, and said first physical device and said second physical device are configured for a second type of physical device that is different from the first type of physical device, and said virtual drive array controller translates I/O messages to said logical drive from said standard controller into I/O messages for either said first physical device or said second physical device, and translates I/O messages from said first physical device and said second physical device into I/O messages from said logical drive. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer system, comprising:
-
a system bus having at least one expansion slot; a standard controller having front and back ends, said front end of said standard controller inserted in an expansion slot of said system bus; a secondary storage bus coupled to said back end of said standard controller; a first virtual drive array controller having front and back ends, said front end of said first virtual drive array controller coupled to said secondary storage bus; a first physical device coupled to said back end of said first virtual drive array controller; a second physical device coupled to said back end of said first virtual drive array controller; a second virtual drive array controller having front and back ends, said front end of said second virtual drive array controller coupled to said back end of said first virtual drive array controller; and a third physical device coupled to said back end of said second virtual drive array controller; said second virtual drive array controller representing at least said third physical device to said first virtual drive array controller as a first portion of a logical drive; said first virtual drive array controller representing said first physical device, said second physical device and said first portion of said logical drive to said standard controller as said logical drive. - View Dependent Claims (11)
-
-
12. A computer system, comprising:
-
a system bus having at least one expansion slot; a standard controller having front and back ends, said front end of said standard controller inserted in an expansion slot of said system bus; a secondary storage bus coupled to said back end of said standard controller; a first virtual drive array controller having front and back ends, said front end of said first virtual drive array controller coupled to said secondary storage bus; a first physical device coupled to said back end of said first virtual drive array controller; a second physical device coupled to said back end of said first virtual drive array controller; a second virtual drive array controller having front and back ends, said front end of said second virtual drive array controller coupled to said back end of said first virtual drive array controller; a third physical device coupled to said back end of said second virtual drive array controller; and a fourth physical device coupled to said back end of said second virtual drive array controller; said second virtual drive array controller representing said third physical device and said fourth physical device to said first virtual drive array controller as a first portion of a logical drive; said first virtual drive array controller representing said first physical device, said second physical device and said first portion of said logical drive to said standard controller as said logical drive; said first virtual drive array controller includes means, coupled to said front end of said first virtual drive array controller, for exchanging I/O messages between said standard controller and said logical drive;
a first memory controller, coupled to said back end of said first virtual drive array controller, for exchanging I/O messages with said first physical device, said second physical device and said second virtual drive array controller; and
first translation means coupled to said means for exchanging and said first memory controller, said first translation means translating I/O messages to said logical drive into I/O messages for either said first physical device, said second physical device or said first portion of said logical drive and translating I/O messages from said first physical device, said second physical device and said first portion of said logical drive into I/O messages from said logical drive; andsaid second virtual drive array controller includes means, coupled to said front end of said second virtual drive array controller, for exchanging I/O messages between said first virtual drive array controller and said first portion of said logical drive;
a second memory controller, coupled to said back end of said second virtual drive array controller, for exchanging I/O messages with said third physical device and said fourth physical device; and
second translation means coupled to said means for exchanging and said second memory controller, said second translation means translating I/O messages to said first portion of said logical drive into I/O messages for either said third physical device or said fourth physical device and translating I/O messages from said third physical device and said fourth physical device into I/O messages from said logical drive. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A computer system, comprising:
-
a first bus; a standard controller having front and back ends, said standard controller being a non-array controller, and said front end of said standard controller being coupled to said first bus; a second bus coupled to said back end of said standard controller; a virtual drive array controller having front and back ends, said front end of said virtual drive array controller coupled to said second bus; a first physical device coupled to said back end of said virtual drive array controller; and a second physical device coupled to said back end of said virtual drive array controller, said virtual drive array controller representing said first physical device and said second physical device to said standard controller as a logical drive, said second bus is of a first device type, and said first and second physical devices are of a second device type different than the first device type, and said virtual drive array controller translates I/O messages to said logical drive from said standard controller into I/O messages for either said first physical device or said second physical device, and translates I/O messages from said first physical device and said second physical device into I/O messages from said logical drive. - View Dependent Claims (23, 24)
-
-
25. A computer system, comprising:
-
a system bus having at least one expansion slot; a standard controller having front and back ends, said standard controller being a non-array controller, and said front end of said standard controller inserted in an expansion slot of said system bus; a secondary storage bus coupled to said back end of said standard controller, said secondary storage bus being of a first physical device type; a virtual drive array controller having front and back ends, said front end of said virtual drive array controller coupled to said secondary storage bus; and a physical device coupled to said back end of said virtual drive array controller, said physical device being of a second physical device type; said virtual drive array controller further comprising; means, coupled to said front end of said virtual drive array controller, for exchanging I/O messages of said second physical device type with said first physical device; a memory controller, coupled to said back end of said virtual drive array controller, for exchanging I/O messages of said second physical device type with said first physical device; and translation means coupled to said means for exchanging I/O messages and said memory controller, said translation means translating I/O messages of said first physical device type into I/O messages of said second physical device type and translating I/O messages of said second physical device type into I/O messages of said first physical device type. - View Dependent Claims (26, 27)
-
Specification