Claims
- 1. A data read apparatus for reading data from a rotating media in a data storage device,
- said rotating media having a plurality of tracks, a plurality of records subdividing said plurality of tracks, and a plurality of sectors subdividing said plurality of records;
- said data storage device having a plurality of read/write heads for reading and writing said rotating media, a control module in communication contact with and interposed between a control unit and said plurality of read/write heads, said control unit in communication contact with a processor by a data channel;
- said data read apparatus comprising;
- plurality of buffer memory means wherein each one of said plurality of read/write heads is coupled to a separate one of said plurality of buffer memory means;
- means, responsive to a data read request received from said processor identifying a requested data record, for detecting a first sector boundary encompassed by said requested data record as said first sector boundary appears under a specific one of said plurality of read/write heads which is closest to the first sector boundary subsequent to said data read request;
- means, in said data storage device, for identifying a beginning of said requested data record;
- means for reading a first segment of said requested data record, from said first sector boundary to the end of said requested data record, into a specific one of said plurality of buffer memory means which corresponds to said specific one of said plurality of read/write heads;
- means for transmitting said first segment of said requested data stored in said specific buffer memory means to said control module;
- means, in said control module, for transferring said first segment of said requested data record to said processor prior to said specific one of said plurality of read/write heads completing said data read request for said requested data record;
- means, in said data storage device and responsive to said means for identifying, for reading a second segment having a plurality of portions of said requested data record, from said identified beginning of said requested data record to said first sector boundary, into said specific buffer memory means;
- means for transmitting a first portion of said second segment stored in said specific buffer memory means to said control module; and
- wherein said transferring means transfers the first portion of said second segment of said requested data record stored in said control module to said processor prior to said specific one of said plurality of read/write heads reaching said first sector boundary while reading other portions of said second segment, upon reaching said first sector boundary completing transferring of said second segment, thereby completing transmission of said requested data record to said processor.
- 2. The apparatus of claim 1 further comprising:
- means, responsive to said processor identifying at least one of said plurality of sectors in said requested data record as the immediate target, for transmitting at least one of a plurality of target sectors to said processor as said plurality of target sectors are read from said rotating media of said data storage device.
- 3. The apparatus of claim 2 further comprising:
- means for fragmenting said plurality of sectors according to a predetermined algorithm into at least two packets for transmission to said processor as soon as each said packet is filled with said plurality of sectors read from said rotating media of said data storage device.
- 4. The apparatus of claim 3 further comprising:
- means for sending data to said control module identifying said first sector boundary prior to transmitting at least one of said plurality of target sectors.
- 5. The apparatus of claim 4 further comprising:
- mean, in said control module, for reordering said plurality of sectors into an order in which said plurality of sectors appeared on said plurality of tracks based on said predetermined algorithm, said first sector boundary identification data, and said plurality of sector.
- 6. The apparatus of claim 5 further comprising:
- means, responsive to a transmission of a last target sector in said first segment of said control module, for activating said transmitting means to transmit to said control module, non-target sectors which appear in said first segment subsequent to said last target sector.
- 7. The apparatus of claim 1 wherein said activating means includes:
- means for calculating a first length of time required for said transmitting means to transmit said first segment of said requested data record to said control module; and
- means for enabling said transmitting means, said calculated length of time in advance of said read/write head reaching said end of said requested data record.
- 8. The apparatus of claim 7 wherein:
- said calculating means is responsive to said identifying means for calculating a second length of time required for said transmitting means to transmit said second segment of said requested data record to said control module; and
- said enabling means is further responsive to said calculating means for activating said transmitting means said second segment transmission time in advance of said first sector boundary.
- 9. A method for reading data from a rotating media in a data storage device,
- said rotating media having a plurality of tracks, a plurality of records subdividing said plurality of tracks, and a plurality of sectors subdividing said plurality of records;
- said data storage device having a plurality of read/write heads for reading and writing said rotating media, a control module in communication contact with and interposed between a control unit and said plurality of read/write heads, said control unit in communication contact with a processor by a data channel:
- plurality of buffer memory means wherein each one of said plurality of read/write heads is coupled to a separate one of said plurality of buffer memory means;
- said method comprising:
- detecting, in response to a data read request received from said processor identifying a requested data record, a first sector boundary encompassed by said requested data record as said first sector boundary appears under a specific one of said plurality of read/write heads which is closest to the first sector boundary subsequent to said data read request;
- identifying a beginning of said requested data record;
- reading a first segment of said requested data, from said a specific one first sector boundary to the end of said requested data record, into a specific one of said plurality of buffer memories which corresponds to said specific one of said plurality of read/write heads;
- transmitting said first segment of said requested data stored in said specific buffer memory means to said control module;
- transferring said first segment of said requested data record to said processor prior to said specific one of said plurality of read/writ heads completing said data read request for said requested data record;
- reading a second segment of having a plurality of portions of said requested data record, from said identified beginning of said requested data record to said first sector boundary, into said specific buffer memory means;
- transmitting a first portion of said second segment stored in said specific buffer memory means to said control module; and
- transferring the first portion of said second segment of said requested data record stored in said control module to said processor prior to said specific one of said plurality of read/write heads reaching said first sector boundary while reading other portions of said second segment, upon reaching said first sector boundary completing transferring of said second segment, thereby completing transmission of said requested data record to said processor.
- 10. The method of claim 9 further comprising the step of:
- transmitting, in response to said processor identifying at least one of said plurality of sectors in said requested data record as the immediate target, at least one of a plurality of target sectors to said processor as said plurality of target sectors are read from said rotating media of said data storage device.
- 11. The method of claim 10 further comprising the step of:
- fragmenting said plurality of sectors according to a predetermined algorithm into at least two packets for transmission to said processor as soon as each said packet is filled with said plurality of sectors read from said rotating media of said data storage device.
- 12. The method of claim 11 further comprising the step of:
- sending data to said control module identifying said first sector boundary prior to transmitting at least one of said plurality of target sectors.
- 13. The method of claim 12 further comprising the step of:
- reordering, in said control module, said plurality of sectors into an order in which said plurality of sectors appeared on said plurality of tracks based on said predetermined algorithm, said first sector boundary identification data, and said plurality of sectors.
- 14. The method of claim 13 further comprising the step of:
- transmitting, in response a transmission of a last target sector in said first segment, to said control module, non-target sectors which appear in said first segment subsequent to said last target sector.
- 15. The method of claim 9 wherein said step of activating includes the steps of:
- calculating a first length of time required for said transmitting means to transmit said first segment of said requested data record to said control module; and
- enabling said step of calculating said length of time in advance of said read/write head reaching said end of said requested data record.
- 16. The method of claim 15 further including the steps of:
- calculating a second length of time required for said transmitting means to transmit said second segment of said requested data record to said control module; and
- enabling said step of transmitting said second segment transmission time in advance of said first sector boundary.
- 17. A data storage system connected to a processor for storing data, comprising:
- a control module;
- a plurality of rotating media;
- a plurality of read/write heads for writing data onto one of said plurality of rotating media;
- means, responsive to a data read request, for detecting a first sector boundary encompassed by a requested data record on a track and appearing under a specific one of said plurality of read/write heads which is closest to the first sector boundary subsequent to said data read request;
- means for reading a first segment of said requested data record, from said first sector boundary to an end of said data record, into a specific one of a boundary buffer memory means interposed between one of said plurality of read/write heads and a bus wherein each one of said plurality of read/write heads is coupled to a separate one of said plurality of buffer memory means and the specific buffer memory corresponds to said specific one of said plurality of read/write heads;
- means for transmitting said first segment of said requested data record stored in said specific buffer memory means to said control module by way of said bus;
- means, responsive to said detecting means, for activating said transmitting means prior to said specific one of said plurality of read/write heads reaching said end of said requested data record, including:
- means for calculating a first length of time required for said transmitting means to transmit said first segment of said requested data record to said control module by way of said bus;
- means for enabling said transmitting means and said means for calculating in advance of said specific one of said plurality of read/write heads reaching said end of said requested data record;
- means, in said control module, for transferring said first segment of said requested data record to said processor prior to said specific one of said read/write heads completing the said data read request of said requested data record;
- means for identifying a beginning of said requested data record on said track;
- wherein said reading means is responsive to said identifying means for reading a second segment having a plurality of portions of said requested data from said beginning of said requested data record to said first sector boundary, into said specific buffer memory means;
- wherein said calculating means is responsive to said identifying means for calculating a second length of time required for said transmitting means to transmit said second segment of said requested data record to said control module by way of said bus; and
- wherein said enabling means is further responsive to said calculating means for enabling said transmitting means said second segment transmission time in advance of said first sector boundary
- means for transmitting a first portion of said second segment stored in said specific buffer memory means to said control module; and
- wherein said transferring means transfers to first portion of a said second segment of said requested data record stored in said control module to said processor prior to said specific one of said plurality of read/write heads reaching said first sector boundary while reading other portions of said second segment, upon reaching said first sector boundary completing transferring of said second segment, thereby completing transmission of said requested data record to said processor.
Parent Case Info
This application is a continuation of application Ser. No. 07/419,593, filed on Oct. 10, 1989, now abandoned.
US Referenced Citations (3)
Continuations (1)
|
Number |
Date |
Country |
Parent |
419593 |
Oct 1989 |
|