US5218689A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Single disk emulation interface for an array of asynchronously operating disk drives
Assignee: Silicon Graphics International Corp
•
Filing: 1992-06-10
•
Granted: 1993-06-08
•
Expires: 2012-06-10
Abstract
Abstract A multiple disk drive array storage device emulates the operation of a single disk drive. The array storage device includes a large buffer memory and a plurality of asynchronously-operating disk drives. A full physical track of data from each of the disk drives within the array is stored within the buffer memory and concatenated to create a large logical track of data. The large buffer memory and asynchronously-operating disk drives results in a data transfer rate that is faster than the standard disk drive architecture.
Inventors
- 👤 Thomas G. Hotle
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-31 14:41
CPC Classifications
G; G06; G06F; G06F3/00; G06F3/06; G06F3/0601; G06F3/0668; G06F3/0671; G06F3/0673
Claims Analysis
Total Claims: 10
Claim 1
Independent Claim
326 words
A high speed data storage device for a computer, comprising: (a) a plurality of disk drives; (b) memory means, operatively connected to the computer by channel interface means for transferring data therebetween, for storing a logical track of data, said logical track comprising a plurality of sections corresponding to said plurality of disk drives for storing data of said disk drives, each section comprising a plurality of sectors, said memory means further including address control means for addressing said memory means; (c) a plurality of disk drive controllers, each connected to a corresponding section of the memory means and to a corresponding one of the disk drives, for instructing the disk drives to complete desired operations, said disk drive controllers and said channel interface means providing input to said address control means for allocating locations in said memory means for data storage; and (d) disk multiplexor means, connected to the disk drive controllers, for controlling transfers of data between the disk drives and the memory means, the disk multiplexor means comprising: (1) means for receiving a command from the computer to request data transfer between the high speed data storage device and the computer, the command including a read/write head selection, a track position and a logical track sector position utilized to allocate locations in said memory means for data storage; (2) means for transmitting the read/write head selection and the track position to the disk drive controllers to instruct the disk drives to select a read/write head and position the read/write head to the track position; (3) means for selecting a disk drive and a sector position of the selected disk drive based on said logical track sector position; and (4) means for transmitting the disk drive selection and sector position to the disk drive controllers for controlling transfer of data between the read/write head at said track position and sector position of the selected disk drive and the logical track of the memory means.
Claim 2
Dependent Claim
326 words
A high speed data storage device for a computer, comprising: (a) a plurality of disk drives; (b) memory means, operatively connected to the computer by channel interface means for transferring data therebetween, for storing a logical track of data, said logical track comprising a plurality of sections corresponding to said plurality of disk drives for storing data of said disk drives, each section comprising a plurality of sectors, said memory means further including address control means for addressing said memory means; (c) a plurality of disk drive controllers, each connected to a corresponding section of the memory means and to a corresponding one of the disk drives, for instructing the disk drives to complete desired operations, said disk drive controllers and said channel interface means providing input to said address control means for allocating locations in said memory means for data storage; and (d) disk multiplexor means, connected to the disk drive controllers, for controlling transfers of data between the disk drives and the memory means, the disk multiplexor means comprising: (1) means for receiving a command from the computer to request data transfer between the high speed data storage device and the computer, the command including a read/write head selection, a track position and a logical track sector position utilized to allocate locations in said memory means for data storage; (2) means for transmitting the read/write head selection and the track position to the disk drive controllers to instruct the disk drives to select a read/write head and position the read/write head to the track position; (3) means for selecting a disk drive and a sector position of the selected disk drive based on said logical track sector position; and (4) means for transmitting the disk drive selection and sector position to the disk drive controllers for controlling transfer of data between the read/write head at said track position and sector position of the selected disk drive and the logical track of the memory means.
Claim 3
Dependent Claim
33 words
The high speed data storage device of claim 1, wherein the disk multiplexor means further comprises means for controlling transfer of data between each of the disk drives and the memory means simultaneously.
Claim 4
Dependent Claim
91 words
The high speed data storage device of claim 1, wherein the disk multiplexor means further comprises: means for determining from sector information of the logical track of data stored in the memory means and commands received from the computer whether data of the logical track must be stored to the disk drives prior to accepting additional data into the memory means from the computer; and means for controlling storage of the data of the logical track to the disk drives in response to the determining means via the disk drive controllers.
Claim 5
Dependent Claim
69 words
The high speed data storage device of claim 1, wherein the disk multiplexor means further comprises: (5) means for receiving and storing status and error information from the disk drive controllers concerning particular data transferred from the disk drives to the memory means; and (6) means for transmitting the status and error information to the computer when the particular data is transferred from the memory means to the computer.
Claim 6
Dependent Claim
45 words
The high speed data storage device of claim 4, wherein the disk multiplexor means further comprises means for transmitting the status and error information received from the disk drive controllers to the computer without transmitting the particular data from the memory means to the computer.
Claim 7
Dependent Claim
63 words
The high speed data storage device of claim 1, wherein the disk multiplexor means further comprises read-ahead means for requesting the disk drive controllers to control a transfer of data from a next sequential read/write head in anticipation of a next command from the computer, said disk drive controllers controlling the transfer of data to the memory means in response to the request.
Claim 8
Dependent Claim
41 words
The high speed data storage device of claim 6, wherein the read/ahead means further comprises means for transferring a full track of data from at least one of the disk drives to the memory means using the next sequential read/write head.
Claim 9
Dependent Claim
599 words
A read-ahead method for a data storage device for a computer, the data storage device having a buffer for storing data from a plurality of disk drives, the buffer being divided into a plurality of successively numbered sections having sectors therein, the sections having a one-to-one correspondence with the disk drives so that each section stores data retrieved from one of the disk drives, each sector having a valid data flag that when set indicates that data can be read from the corresponding sector of the buffer by the computer and that when cleared indicates that data is to be read from one of the disk drives to be transferred to the corresponding sector of the buffer, the computer transmitting read requests to the data storage device, the read-ahead method comprising the steps of: (a) comparing a current read request with a prior read request, wherein the current read request is comprised of a current read/write head selection and a current logical track sector position indicative of a current section location, and wherein the prior read request is comprised of a prior read/write head selection and a prior logical track sector position indicative of a prior section location; (b) clearing the valid data flats for all sectors in all sections when the current read/write head selection differs from the prior read/write head selection; (c) clearing the valid data flags for all sectors in sections numbered between the prior section location and the current section location, including the valid data flags for sectors in the section of the prior section location, when the current read/write head selection is the same as the prior read/write head selection and the current section location is a higher value than the prior section location; (d) clearing the valid data flags for all sectors in sections numbered between the prior section location and a highest section number, including the valid data flags for sectors in the sections of the prior section location and the highest section number, and clearing the valid data flags for all sectors in sections numbered between a lowest section number and the current section location including the valid data flags for sectors in the section of the lowest section number unless the lowest section number is equal to the current section location, when the current read/write head selection is the same as the prior read/write head selection and the current section location is a lower value than the prior section location; (e) clearing the valid data flags for all sectors in all sections when the current section location is equal to the prior section location only when the current read/write head selection differs from the previous read/write head selection; (f) reading data from sectors identified on the disk drives into the buffer from sectors numbered greater than or equal to a current sector location, when the sections to which the data is to be stored have sectors with cleared valid data flags, using a read/write head specified by the current read/write head selection, and then setting the valid data flags for the sectors of the sections to which the data is stored; and (g) reading data from sectors identified on the disk drives into the buffer from sectors numbered lower than the current sector location, when the sections to which the data is to be stored have sectors with cleared valid data flags, using a next read/write head specified by a next read/write head selection sequential to the current read/write head selection, and then setting the valid data flags for the sectors of the sections to which the data is stored.
Claim 10
Dependent Claim
599 words
A read-ahead method for a data storage device for a computer, the data storage device having a buffer for storing data from a plurality of disk drives, the buffer being divided into a plurality of successively numbered sections having sectors therein, the sections having a one-to-one correspondence with the disk drives so that each section stores data retrieved from one of the disk drives, each sector having a valid data flag that when set indicates that data can be read from the corresponding sector of the buffer by the computer and that when cleared indicates that data is to be read from one of the disk drives to be transferred to the corresponding sector of the buffer, the computer transmitting read requests to the data storage device, the read-ahead method comprising the steps of: (a) comparing a current read request with a prior read request, wherein the current read request is comprised of a current read/write head selection and a current logical track sector position indicative of a current section location, and wherein the prior read request is comprised of a prior read/write head selection and a prior logical track sector position indicative of a prior section location; (b) clearing the valid data flats for all sectors in all sections when the current read/write head selection differs from the prior read/write head selection; (c) clearing the valid data flags for all sectors in sections numbered between the prior section location and the current section location, including the valid data flags for sectors in the section of the prior section location, when the current read/write head selection is the same as the prior read/write head selection and the current section location is a higher value than the prior section location; (d) clearing the valid data flags for all sectors in sections numbered between the prior section location and a highest section number, including the valid data flags for sectors in the sections of the prior section location and the highest section number, and clearing the valid data flags for all sectors in sections numbered between a lowest section number and the current section location including the valid data flags for sectors in the section of the lowest section number unless the lowest section number is equal to the current section location, when the current read/write head selection is the same as the prior read/write head selection and the current section location is a lower value than the prior section location; (e) clearing the valid data flags for all sectors in all sections when the current section location is equal to the prior section location only when the current read/write head selection differs from the previous read/write head selection; (f) reading data from sectors identified on the disk drives into the buffer from sectors numbered greater than or equal to a current sector location, when the sections to which the data is to be stored have sectors with cleared valid data flags, using a read/write head specified by the current read/write head selection, and then setting the valid data flags for the sectors of the sections to which the data is stored; and (g) reading data from sectors identified on the disk drives into the buffer from sectors numbered lower than the current sector location, when the sections to which the data is to be stored have sectors with cleared valid data flags, using a next read/write head specified by a next read/write head selection sequential to the current read/write head selection, and then setting the valid data flags for the sectors of the sections to which the data is stored.
References Cited (Backward Citations)
US3290654A
Cited
US3274561A
Cited
US3432813A
Cited
US3623155A
Cited
US3699524A
Cited
US3725864A
Cited
USRE28923E
Cited
US3868632A
Cited
USRE30187E
Cited
US4087794A
Cited
US3876978A
Cited
US3955180A
Cited
US3913068A
Cited
US4052698A
Cited
US4201976A
Cited
US4205324A
Cited
US4399503A
Cited
US4211997A
Cited
US4322793A
Cited
US4257074A
Cited
US4467421A
Cited
US4467373A
Cited
US4359772A
Cited
US4523275A
Cited
US4453211A
Cited
JPS57197664A
Cited
US4490782A
Cited
US4413251A
Cited
US4607328A
Cited
US4430712A
Cited
US4476526A
Cited
US4468730A
Cited
US4780808A
Cited
US4476527A
Cited
EP0081961A2
Cited
US4511963A
Cited
US4509122A
Cited
US4525838A
Cited
US4583133A
Cited
US4630230A
Cited
EP0125561A2
Cited
US4644545A
Cited
US4590559A
Cited
EP0147055A2
Cited
US4849929A
Cited
US4817035A
Cited
EP0156724A1
Cited
US4642759A
Cited
EP0165914A2
Cited
US4771378A
Cited
CA1227880A
Cited
CA1228677A
Cited
US4807121A
Cited
EP0165915A2
Cited
US4701848A
Cited
EP0201330A2
Cited
DE3633165A1
Cited
US4797755A
Cited
EP0278134A1
Cited
US4958351A
Cited
US4722085A
Cited
EP0242121A2
Cited
US4761785A
Cited
US4761785B1
Cited
US4805173A
Cited
US4791641A
Cited
US4862462A
Cited
US4972364A
Cited
JPS63223822A
Cited
EP0294287A2
Cited
US4942579A
Cited
US4849978A
Cited
EP0320107A2
Cited
US4870643A
Cited
US4899342A
Cited
US4843288A
Cited
US4914656A
Cited
US4989205A
Cited
US4989206A
Cited
US5077736A
Cited
US4935828A
Cited
US5128810A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1996-06-07 | 1996-12-07 | 1997-06-08 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2000-06-07 | 2000-12-07 | 2001-06-08 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2004-06-07 | 2004-12-07 | 2005-06-08 | $7700.00 | Window Closed / Lapsed |