WO1992000589A1 - Read/write control for disk drive - Google Patents

Read/write control for disk drive Download PDF

Info

Publication number
WO1992000589A1
WO1992000589A1 PCT/US1991/004529 US9104529W WO9200589A1 WO 1992000589 A1 WO1992000589 A1 WO 1992000589A1 US 9104529 W US9104529 W US 9104529W WO 9200589 A1 WO9200589 A1 WO 9200589A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
count
rlc
read
sector
Prior art date
Application number
PCT/US1991/004529
Other languages
French (fr)
Inventor
Nicolas C. Assouad
Marvin C. Deforest
Original Assignee
Maxtor Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Maxtor Corporation filed Critical Maxtor Corporation
Publication of WO1992000589A1 publication Critical patent/WO1992000589A1/en

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • G11B20/1252Formatting, e.g. arrangement of data block or words on the record carriers on discs for discontinuous data, e.g. digital information signals, computer programme data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B2020/1264Formatting, e.g. arrangement of data block or words on the record carriers wherein the formatting concerns a specific kind of data
    • G11B2020/1265Control data, system data or management information, i.e. data used to access or process user data
    • G11B2020/1281Servo information
    • G11B2020/1282Servo information in embedded servo fields
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B2020/1264Formatting, e.g. arrangement of data block or words on the record carriers wherein the formatting concerns a specific kind of data
    • G11B2020/1265Control data, system data or management information, i.e. data used to access or process user data
    • G11B2020/1281Servo information
    • G11B2020/1284Servo information in servo fields which split data fields

Definitions

  • Each sector also includes a header region (referred to simply as a "header") that contains information used to synchronize a data clock in the disk drive with the movement of the disk, whereby data is recorded and reproduced in proper synchronism.
  • the header also includes identifying information, known as ID data, to identify the particular disk, track and sector then being read or written by the read/write head.
  • ID data identifying information
  • Other information known as synchronizing data, also is provided in the header to provide reference points from which read/write operations are carried out.
  • FIGS. 3A-3E also are schematic representations of information recorded in a sector of a record track.
  • a data field may precede a servo burst in a sector, rather than having a servo burst (such as servo burst 112 in FIG. 3D) precede a data field (such as data field 111) .
  • the RLC and SLC counts may be generated during a typical disk formatting operation as servo bursts or defects are sensed; and these counts then are written into the aforementioned header portions described above.

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

Bytes of data are read from or written in sectors (S) on a movable record medium (D) containing non-data areas in one or more sectors (S). At least one useful data-length (RLC) count is provided in at least one RLC field (105', 107', 109') in a sector, each RLC count representing the length of a respective useful data region (105, 107, 109) in that sector. The RLC count is read from the RLC field (105', 107', 109') and data is read from or written in the sector for a length determined by the RLC count which was read. The reading or writing of data is interrupted for a predetermined length when a non-data area (106, 108) is encountered; and the read or write operation is resumed following that predetermined length.

Description

READ/WRITE CONTROL FOR DISK DRIVE BACKGROUND OF THE INVENTION
This invention relates to a technique for reading or writing data in a disk drive and, more particularly, to the control of a read/write operation such that data is neither read from nor written in non-data areas which may be interposed in data fields in the sectors of a track.
In disk drive devices, such as so-called hard drives comprised of one or more rigid magnetic disks having data recorded in concentric tracks on the respective surfaces of the disks, it has become conventional to record data in substantially equal length sectors in each track.
So-called "embedded" servo information also is recorded in the respective tracks to provide suitable control over the positioning of a read/write head at the center of a desired track. Advantageously, bursts of servo information, referred to hereinafter simply as "servo bursts", are recorded uniformly in each track; and in a typical format, one servo burst is recorded in each sector.
Different operation systems for various types of data processors, such as computers, have adopted different conventions for the recording of data in respective sectors.
One convention which has been adopted broadly by many computer and software suppliers consists of a number of sectors recorded in each track, with each sector containing a predetermined number of data bytes, such as 512 or 1024 data bytes per sector. Each sector also includes a header region (referred to simply as a "header") that contains information used to synchronize a data clock in the disk drive with the movement of the disk, whereby data is recorded and reproduced in proper synchronism. The header also includes identifying information, known as ID data, to identify the particular disk, track and sector then being read or written by the read/write head. Other information, known as synchronizing data, also is provided in the header to provide reference points from which read/write operations are carried out. Also included in the header (or in a zone adjacent to, but, for the purpose of this description, is considered to be part of the header) is the aforementioned servo burst. In the usual manufacturing/assembling process of a disk drive, servo bursts normally are recorded in each track before the disk drive is formatted. Usually, the servo bursts are aligned radially from track to track. Of course, the arcuate length of each sector in an inner track is much smaller than the arcuate length of each sector in an outer track. If the same number of bytes is to be recorded in each sector for all tracks, and if the same number of sectors is recorded in all tracks, then the bit density for those sectors disposed in an inner track is much greater than the bit density for those sectors disposed in an outer track. However, if the same bit density is used from track to track, for example, if the bit density normally used for an inner track is used throughout, then a greater number of sectors may be recorded in an outer track than may be recorded in an inner track. For example, rather than record 512 bytes of data in a sector, 1,024 bytes may be recorded. But, if a sector length is selected to be 1,024 bytes, the prerecorded positioning of the servo bursts may be such that only 512 bytes will be recorded between adjacent servo bursts. This means that a sector containing 1,024 data bytes will contain two servo bursts, one of which will split the useful data field into two subfields. Heretofore, typical disk controllers were unable to account for sectors of different sizes or sectors containing split data fields having servo bursts inserted between those fields.
Of course, if the same number of data bytes is recorded with the same bit density in each sector in each track, a greater number of sectors will be recorded in an outer track than in an inner track. This presents the additional difficulty of accounting for different numbers of sectors in different tracks. It is believed that these difficulties have dissuaded the development of disk drive systems with different numbers of sectors in different tracks.
Different disk drive users, such as computer manufacturers and systems integrators, require different track formats, primarily related to the number of bytes recorded in each sector, regardless of whether data is recorded with constant or variable bit density from track to track. For example, some users require the recording of 512 bytes per sector, others require 1024 bytes per sector and still others require 2048 bytes per sector. If one servo burst is recorded in each sector, such as in the header thereof, it is appreciated that a track format of 512 bytes per sector will have twice the number of servo bursts as a track format of 1024 bytes per sector and four times the number of servo bursts as a track format of 2048 bytes per sector. However, by reducing the number of servo bursts recorded in a track, the accuracy with which a read/write head is positioned likewise decreases. Thus, it is preferred not to reduce the number of servo bursts recorded in each track; but this will result in locating servo bursts in the middle of a data field.
Alternatively, even if the number of servo bursts that may be recorded in a track format of 1024 or 2048 bytes per sector is adequate for accurate control over head positioning, it is advantageous from the standpoint of manufacturing to record a standard number of servo burst in each track regardless of the particular track format. That is, the same number of servo bursts should be recorded, regardless of whether the track format calls for 512, 1024 or 2048 bytes per sector. It is, therefore, desirable to record a fixed number of servo bursts in a track regardless of the particular format to be used with that track. That is, it is desirable to record the same number of servo bursts in a track notwithstanding the fact that one user may request a track format of 512 bytes per sector, another user may request a track format of 1024 bytes per sector and yet another user may request a track format of 2048 bytes per sector.
Still another difficulty encountered in formatting and utilizing a disk drive is the presence of one or more defects in the recording medium which render the defective areas unfit for recording data. Heretofore, a defective area located in a track prevented the entire track from being used for data. More recently, and as described in U. S. Patent 4,746,998, those sectors having defective areas are identified and simply ignored for data recording purposes. That is, the defective sector is skipped and treated as if it did not exist. However, this latter technique reduces the recording capacity of a track and, thus, the overall capacity of the disk drive, because it prevents useful recording areas in an otherwise defective sector from being utilized. Thus, it is desirable to record data in the otherwise useful data areas of a sector containing one or more defective areas, while maintaining the ability to "skip over" those defective areas.
OBJECTS OF THE INVENTION Therefore, it is an object of the present invention to provide read/write control for a disk drive which overcomes the aforenoted drawbacks, disadvantages and problems encountered by the prior art.
A further object of this invention is to provide read/write control for a disk drive having data recorded in sectors on concentric tracks of a record disk in which one or more defective areas may be provided. An additional object of this invention is to provide an improved format for recording data on concentric tracks of a record disk.
Yet another object of this invention is to provide a formatting technique for a disk drive in which servo bursts are recorded periodically in a record track and data may be recorded in sectors whose length may be selected in accordance with any one of several different standards.
A still further object of this invention is to provide read/write control for a disk drive in which servo bursts are inserted in data fields of a record track.
Yet another object of this invention is to provide read/write control for a disk drive wherein data is read or written in data fields on a record track and non-data areas, such as servo bursts or defects, are skipped. Various other objects, advantages and features of the present invention will become readily apparent from the ensuing detailed description and the novel features will be particularly pointed out in the appended claims.
SUMMARY OF THE INVENTION In accordance with this invention, the reading or writing of data in non-data areas in one or more sectors of a movable record medium is prevented by providing at least one useful data length (RLC) count in at least one RLC field in a sector of the medium, each RLC count representing the length of a respective useful data region from which data may be read or to which data may be written. The RLC count is read from the RLC data field and data is read or written in a sector for a length determined by that RLC count. Thereafter, the reading or writing of data is interrupted for a predetermined length and then resumed, whereby the non-data area is skipped.
As one aspect of this invention, at least one RLC data field is provided at the beginning of each sector, such as in advance of each respective useful data region. As another aspect of this invention, error correcting code (ECC) data is derived only while data is written in or read from a sector and the derivation of ECC data is suspended while the write or read operation is interrupted. The ECC data is written or read only at the end of the last useful data region in a sector. Thus, ECC data is not written at the end of each data field but, rather, is written at the end of the last of plural data fields in a sector. As a feature of the present' invention, an RLC counter is loaded with the RLC count read from the RLC data field, and this counter is decremented in synchronism with a read/write data clock. The reading or writing of data is interrupted when the RLC counter has been decremented to a predetermined count, such as a count of zero. As an aspect of this feature, another counter (described as an SLC counter) is loaded with a reference count and is decremented in synchronism with the read/write clock once the RLC counter has been decremented to the aforementioned predetermined count. Once this SLC counter is decremented to a preset count, such as zero, the reading or writing of data is resumed. Advantageously, the beginning of a data field is identified by synchronization information which is detected to initiate a read/write operation.
As yet another aspect of this invention, a pre- established number of data bytes is adapted to be recorded in a sector, and a data byte counter is loaded with this pre-established number and is decremented in synchronism with the read/write data clock while a read/write operation is carried out. The end of the last data field in a sector is determined when the data byte counter is decremented to a reference count, such as zero. The read/write operation then is inhibited until the next sector is reached.
In accordance with yet another feature of this invention, at least one non-data length (SLC) count is recorded in a sector to represent the length of a respective non-data region, such as the length of a servo burst' or the length of a defect in that sector. This SLC count is loaded into the aforementioned SLC counter and, thus controls the duration that the read/write operation is interrupted. Stated otherwise, the SLC count represents the length of the data burst or defect which is skipped.
In one track format, an RLC count and an SLC count are provided in advance of each data field and non-data region, respectively. Preferably, the RLC and SLC counts are recorded in a dedicated region in advance of the data field and non-data region. In accordance with another track format, the lengths of all of the data field and non-data regions in a sector are represented by plural RLC and SLC counts, all of which are recorded in a particular region in advance of the first data field.
As another aspect of the track format, the amount of header information provided in a sector is reduced so as to increase the size of the data field or, alternatively, if the size of the data field remains fixed, the number of sectors in a track may be increased by accumulating the savings in header length.
As yet another aspect of the track format, flag bytes are recorded in each sector, the flag bytes representing those sectors in a track which are so defective as to be nonusable for data recording. Advantageously, these flag bytes are duplicated in each sector such that defective sectors are identified regardless of the particular sector being accessed. BRIEF DESCRIPTION OF THE DRAWINGS
The following detailed description, given by way of example, will best be understood in conjunction with the accompanying drawings in which:
FIGS. 1A and IB are diagrammatic representations of the recording of sectors in different tracks on a record disk of a disk drive;
FIGS. 2A-2C are schematic representations of information recorded in a sector of a record track;
FIGS. 3A-3E also are schematic representations of information recorded in a sector of a record track; and
FIG. 4 is a block diagram of one embodiment of the present invention.
DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT
An example of the manner in which sectors of data are recorded in concentric tracks T on a disk D is illustrated schematically in FIG. 1A. As shown, disk D1 has tracks T.,, T2, T3,...Tn recorded thereon, with tract T1 representing an outer track and track Tn representing an inner track. Sectors of substantially equal arcuate length S.,, S2, etc. are recorded on tracks T.,-Tn, and it is assumed that the arcuate length of a sector on an outer track T1 is substantially equal to the arcuate length of a sector on an inner track Tn. It is further assumed that data is recorded with substantially the same bit density on outer track 1 as is recorded on inner track Tn.
Servo bursts are recorded uniformly about each track T,-Tn; and these servo bursts are represented by the shaded areas shown in FIG. 1A. As is typical, servo bursts are recorded at the time the disk drive in which D1 is incorporated is manufactured. These servo bursts are recorded in radial alignment such that the arcuate spacing between the servo bursts in inner track Tn is less than the arcuate spacing between the servo bursts recorded in outer track T.,. If it is assumed, as it is here, that the arcuate lengths of sectors S1f S2, etc. are substantially equal in all of the tracks T.,-Tn and if it is further assumed that at least in the outer tracks the servo bursts are recorded at the beginning of a sector, such as in the header region of a sector, then servo bursts will be recorded in the useful data fields in an inner track Tn. FIG. 1A illustrates a servo burst recorded in the useful data field of sector S1 in inner track Tn, thus splitting the useful data field into two fields. It is assumed, however, that a servo burst also is recorded at the beginning of sector S1 in track Tn. In the next sector S2 of inner track Tn, a servo burst is recorded in the useful data field, thus splitting sector S2 into two data fields. It is further assumed that the servo burst recorded in sector S2 is not necessarily disposed at the header region.
As will be described below, the present invention permits data to be recorded or reproduced, that is, written or read, from sectors Slf S2, ...in outer track T1 wherein servo bursts are recorded at the beginning of each sector, and also permits data to be written or read in sectors S S2, ...in inner track Tn wherein servo bursts are recorded in the middle of a useful data field. Thus, notwithstanding the splitting of a data field by one or more servo bursts in inner track Tn (or, for that matter, in any track on disk D.,) , the present invention controls a read/write operation so as to skip over the servo bursts and other non-data areas (to be described) that may be present in a sector.
FIG. IB represents another recording format that may be used. The track format selected by a disk drive user may establish a sector length capable of recording an integral multiple of 256 bytes of data therein. With this convention, the header of a sector will coincide with a prerecorded servo burst. Of course, depending upon the length of the sector (i. e. the number of data bytes recorded therein) , additional servo bursts may be recorded in the middle of a sector, even though each sector is expected to begin with a servo burst. For example, a sector containing 512 bytes of data is expected to have only one servo burst therein, preferably recorded within the header. A sector containing 1024 bytes is expected to have two servo bursts therein, one recorded at the header and another recorded in the middle of the data field. Finally, a sector containing 2048 bytes is expected to have four servo bursts therein, one recorded at the header and the other three dispersed throughout the data field. But, and as will become apparent, the present invention is not limited to a track format wherein each sector contains an integral multiple of 256 (or 512) data bytes. Thus, the present invention may be used to record a sector in which the servo burst (or bursts) is recorded at some location in the useful data field and not necessarily at the header. FIG. IB illustrates record disk DA in which track TA is provided with sectors SA, SB, etc., wherein only sector SA (which, for example, may be sector 0 of the track) has a servo burst recorded at the header region. It is appreciated that data may be recorded on disk DA with constant bit density for all tracks as described above in conjunction with FIG. 1A.
Turning now to FIG. 2A, there is schematically illustrated a representation of the information recorded in a typical sector of a record track, such as sector S1 of track T1 (FIG. 1A) . As used in FIG. 2A and hereafter, the representation in the drawing of "X" is intended to represent the recording of a servo burst. As shown, the servo burst is recorded in the header region of the sector, and this header region, sometimes referred to as an identification (ID) data field, typically includes the following information:
ADDRESS MARK (AM MK) : A distinctive bit pattern, representing the beginning of a sector that cannot be interpreted erroneously by read/write circuitry or encoding/decoding schemes as being useful data.
GAP: A "blank" interval used typically to allow read/write circuitry and other data recording reproducing circuits to settle.
SYNC FIELD: A distinctive bit pattern used by read/write circuitry to detect the beginning of header information (or of a data field) and also to synchronize a read/write data clock which functions to reproduce or record digital information in proper, timed synchronization. Typically, a read/write data clock includes a phase locked loop that is synchronized with the movement of the disk by the SYNC signal. ID: This data identifies the particular track and sector then being accessed by the read/write head to carry out a read or write operation. Typically, the track is identified by identifying the cylinder and head (when multiple surfaces are used) in question. RLC: A useful data length count which identifies the length, in terms of bytes, from the beginning of the useful data field until a-non-data area is reached. For the present discussion, it is assumed that a data field is provided with a defective area 101; and the RLC count represents the length of the data field until that defective area is reached. It is further assumed that a useful data field contains a predetermined number of bytes, such as 512 bytes, that the length of the defective area is known (as represented by an SLC count) and that the remaining useful data area thus is equal to 512 - RLC. SLC: The length, in terms of bytes, of defective area 101. As will be described, this length may be measured and thus, the SLC count may be determined, during the design or manufacture of the disk drive, during track formatting by the user, and during diagnostic testing.
CRC: A Cyclic Redundancy Check Code used for error checking of the ID, RLC and SLC data.
GAP: As mentioned above, a "blank" region in the sector to permit settling of the read/write electronics when, for example, the disk drive is changed over from a read mode, during which header information is read, to a write mode in which data is written in the data fields.
SYNC FIELD: As mentioned above, a distinctive bit pattern here used to identify the beginning of the data field.
ECC: Error Correcting Code used to detect and correct for errors that may be present in the data fields. During a write operation, the bytes which are recorded in, for example, the split field are accumulated; and after all of these bytes have been recorded, the ECC bytes are determined and recorded at the trailing end of the last data field. During a data read operation, ECC data is derived as each byte is read from the split data fields; and after the last byte is read from the last field, the accumulated ECC data is processed with the ECC data read from the sector to insure the integrity of the reproduced data. It is during a read operation that the ECC data is used to correct or detect errors that may be present. GAP: The "blank" region following the ECC bytes and preceding the servo burst which is recorded in the next sector. This GAP performs the same function as each GAP discussed above.
Typically, during the manufacturing of a disk drive, servo bursts are recorded uniformly in respective tracks, as shown in FIGS. 1A and IB, and sector information associated with a basic format is determined and recorded. For example, the ADDRESS MARK, SYNC and ID information are recorded in those areas illustrated in FIG. 2A. Also, the quality of each sector, that is, its ability to record data, is tested. If a defective area is encountered, such as defect 101, the length of the data field which precedes this defect is measured and recorded as the RLC count. Likewise, the length of defect 101 is measured and recorded as the SLC count. Thus, the basic format shown in FIG. 2A is created prior to actual use of the disk drive by the intended user.
It will be appreciated that the purpose of the RLC and SLC counts is to permit data to be recorded in (or reproduced from) the illustrated sector only in the data field and to interrupt the record/reproduce operation for the interval of defect 101. Thus, useful data is not recorded in the defective area from which that data could not be recovered accurately.
While FIG. 2A illustrates the format of a sector having a defect 101 therein, FIG. 2B illustrates the format of a sector in which two servo bursts are recorded. As an example, the sector shown in FIG. 2B may be similar to sector S., of track Tn (FIG. 1A) or of sector SA of track TA (FIG. IB) . The header of the sector shown in FIG. 2B is substantially identical to the header discussed above in conjunction with FIG. 2A. Thus, the header includes an ADDRESS MARK, a GAP, a SYNC signal, ID information, an RLC count, an SLC count, CRC data, another GAP and another SYNC signal. Then, data is recorded in a data field; and this data field is interrupted by yet another servo burst. The length of this second servo burst is represented by the SLC count in the header of this sector. In an alternative embodiment, each servo burst may be of fixed length, such as 20 bytes, whereupon an actual SLC count may be omitted from the header. This is described below.
Since the useful data field is split by the illustrated servo burst, the next-following data field 103, that is, the data field remaining in this sector, includes a header portion which is substantially the same as the sector header, except that the ADDRESS MARK and ID data are not repeated. Although not shown in FIG. 2B, the second header, that is, the header of the second data field 103, may include CRC data, if desired. The RLC count in the header of this data field represents the length of that data field. The SLC count 104' is intended to represent the length of a defect, if any, that may be interposed in this data field. As was discussed in connection with FIG. 2A, ECC information is recorded immediately following the last data field included in the sector. Thus, ECC information is not recorded in each data field. Rather, the ECC data is derived, either during a recording or reproducing operation, from the data information recorded in the entire sector. Consequently, separate ECC recording operations need not be carried out when"each separate data field is recorded; and an ECC operation need not be carried out when each data field is reproduced. Stated otherwise, the fact that the data field may be split by a servo burst and also by a defect area is "transparent" to the usual ECC circuitry. It was mentioned previously that the length of a servo burst may be fixed and, thus, the SLC count representing that length may be omitted from the sector header. In that event, when the length of the data field determined by the RLC count is reached, a read/write operation is interrupted for a length equal to the predetermined, fixed length of the servo burst. Thereafter, the read/write operation resumes to permit data to be recorded in or reproduced from the following data field in this sector. Thus, data is read from or written in data field 102, whose length is determined by RLC count 102', then the read/write operation is interrupted for a fixed length of the servo burst, and thereafter data is read from or written in data field 103 whose length is represented by RLC count 103 ' . Should a defect be present in data field 103, SLC count 104' represents the length of that defect over which the read/write operation is interrupted.
FIG. 2C schematically illustrates a sector format in which a data field is split into, for example, three data fields (although, as will be appreciated, any number of data fields may be provided in a sector) . Thus, data fields 105, 107 and 109 are illustrated, and the lengths of these data fields are represented by RLC counts 105' , 107 ' and 109 , respectively. As illustrated, each RLC count is provided in a data field header, that is, in a portion which precedes the data field whose length is represented by that RLC count. Likewise, the lengths of servo bursts 106 and 108 are represented by SLC counts 106' and 108', respectively. These SLC counts are recorded in the same data field headers as RLC counts 105' and 107', respectively, and are in advance of the servo bursts whose lengths are represented thereby. Yet another SLC count 110' may be recorded in the data field header which contains RLC count 109* in the event that data field 109 has yet another servo burst inserted therein or, alternatively, has a defect area therein. It will be appreciated that a servo burst and a defect both constitute non-data areas, and the length of each non-data area is represented by an associated SLC count.
The manner in which the aforementioned RLC and SLC counts are used to control a read/write operation will be described below in connection with the block diagram shown in FIG. 4. At present, it will be sufficient to appreciate that the RLC counts represent the respective lengths of data fields in which useful data is written or from which data is read; and the SLC counts represent the lengths of non-data areas which are "skipped" during read/write operations. Thus, data is written or read for a length represented by an RLC count; and then the read/write operation is interrupted (or turned off) for a length determined by the SLC count. In this manner, a non-data area is not read (thus avoiding errors that would arise from misinterpreting non-useful data) , and data is not written into such non-useful areas (which otherwise would result in the loss of useful data) . The sector format shown in FIG. 2A is repeated in
FIG. 3A, and the following description is directed to an improved format by which the data field within a sector may be increased, thus providing increased recording capacity, or the number of sectors provided in a track may be increased, thereby providing "spare" sectors to account for possible sector defects. To best appreciate the improvement achieved by the new format described hereafter, it is assumed that the data field has a recording capacity of 512 bytes, that the length of the RLC, SLC, PAD, GAP and SYNC portions of the sector header is on the order of 17 bytes and that the GAP which precedes the servo burst in the next- following sector has a length on the order of 12 bytes. This is illustrated in FIG. 3A.
Using the improved format to increase the recording capacity of the data field of a sector now will be described in conjunction with FIG. 3B. Here, the length of the servo burst, ADDRESS MARK, GAP, SYNC and ID regions are the same as shown in FIG. 3A. Now, however, a CHECK SUM field whose length is equal to one byte is recorded in place of the RLC, SLC, PAD, GAP and SYNC fields used in the previous sector format. The CHECK SUM field records a check sum byte that is used to verify the accuracy of the ADDRESS MARK, SYNC and ID information recorded in the sector header. Thus, a savings of 16 bytes is realized, and this savings may be used to increase the data field by 16 bytes, as shown in FIG. 3B. Alternatively, each sector may be limited to 512 bytes and each 16-byte saving in each sector may be accumulated such that after 32 sectors are recorded, an excess of 512 bytes will be accumulated; and this accumulation may be used to create a "spare" sector. The creation of the "spare" sector is represented in FIG. 3C; and this too results in an increase in the recording capacity of the disk drive. The improved format shown in FIGS. 3B and 3C also incorporates the following differences from the previously used format shown in FIG. 3A: the 12-byte GAP used previously at the end of a sector (FIG. 3A) now is provided as a 6-byte GAP, and the resultant 6-byte saving is used to record a 1-byte SYNC signal and 5-byte defect field.
Detection of this SYNC signal is used to sense the presence of the defect field; and each bit of the defect field is used as a flag to represent whether a corresponding sector in a given track is defective. For instance, the flag data may consist of 40 bits, with each bit position representing a respective sector and the value of that bit being indicative of a defect. For example, a "1" indicates that the corresponding sector is defective and should not be used for a read/write operation, whereas a "0" indicates that the sector is qualified.
FIG. 3D schematically illustrates the use of the improved format shown in FIGS. 3B and 3C to accommodate inserted non-data areas that may split a data field 114. For simplicity, it is assumed that only one non-data area is inserted into a data field; and this non-data area is assumed to be a servo burst. As illustrated, each servo burst (or, more generically, each non-data area) is preceded by an RLC count and an SLC count. Only the sector header is assumed to contain ID data and a check sum byte. Nevertheless, the header for each data field (including the sector header) includes a GAP and a SYNC signal. It is assumed that the data field is split into two data fields
111 and 113, each data field being preceded by a servo burst
112 and 114, respectively. RLC count 111' identifies the length of data field 111 and SLC count 112 ' identifies the length of servo burst 112. Similarly, RLC count 113' is recorded in advance of data field 113 to identify the length of this data field. SLC count 114' is recorded in advance of servo burst 114 to identify the length of this servo burst. In the preferred format shown in FIG. 3D, RLC count 113• and SLC count 114' are recorded in advance of servo burst 114. It will, nevertheless, be appreciated that, if desired, the RLC count may be recorded in the header immediately preceding the data field whose length is identified by that count; and the SLC count which identifies the length of the next-following non-data area likewise may be recorded in this very same header. While the format shown in FIG. 3D is preferred, various modifications thereto may be adopted, such as the just-described alternative. Another sector format which may be used advantageously to increase the recording capacity in the manner represented by FIGS. 3B and 3C, while controlling a read/write operation to skip non-data areas is shown schematically in FIG. 3E. The format shown in FIG. 3E differs from that shown in FIG. 3D in that all of the RLC and SLC counts for a given sector are provided in the sector header. This differs from the FIG. 3D format wherein separate RLC and SLC counts are positioned in advance of each split data field, such as RLC count 113' and SLC count 114' being in advance of data field 113 (FIG. 3D). Thus, in FIG. 3E, the header preceding each split data field merely is provided with a GAP and a SYNC signal. Of course, the sector header still contains the ID and CHECK SUM signals. As illustrated, the length of data field 115 is represented by RLC count 115' recorded in advance of this data field and, in the embodiment shown, RLC count 115' is recorded in advance of servo burst 116. The length of servo burst 116 is represented by SLC count 116'. It is assumed that non-data area 118 comprises a defect which is inserted in the data field, thereby splitting the data field into data fields 115 and 117. The length of defect 118 is represented by SLC count 118- ; and the length of data field 117 is represented by RLC count 117'. FIG. 3E illustrates all of the RLC and SLC counts, representing data field lengths and non-data lengths in a given sector, respectively, as being recorded in advance of the first data field 115 therein, thus being recorded in the header portion of the sector. Although an SLC count is recorded in the formats shown in FIGS. 3D and 3E to represent the length of servo bursts, it is appreciated that if each servo burst is of constant, fixed length, then the recording of an SLC count representing that fixed length need not be provided. Likewise, if it is assumed that a defect may exhibit a maximum, fixed length regardless of its actual length, then an SLC count representing the length of that defect likewise need not be recorded. Of course, if the actual length of a defective area exceeds this predetermined length, the entire sector may be rendered non-recordable and, thus, ignored. In these alternative embodiments wherein SLC counts are not recorded, the read-write operation (to be described) is interrupted (or skipped) merely for a predetermined length. Turning now to FIG> 4, there is illustrated a block diagram of read/write control apparatus 10 'which utilizes the RLC and SLC counts provided in the formats shown in FIGS> 2A, 2B, 2C, 3D and 3E to control a read/write operation such that non-data areas are not read and no attempt is made to write data thereinto. It will be appreciated that the operation of the illustrated apparatus during a read operation is substantially the same as that during a write operation and, therefore, in the interest of brevity, both operations are described herein simply as a read/write operation. It is recognized that in a write operation, pre-recorded information in the sector and data headers are read; and for the purpose of the present discussion, the only substantive difference between read and write operations is that during a write operation, the read/write circuitry is changed over from a read mode to a write mode such that useful data is written in each data field after a header is read.
Read/write control apparatus 10 is comprised of a sector ID field detector 14, a SYNC signal detector 16, an RLC/SLC count detector 18, an RLC counter 24, an SLC counter 32 and a data length counter 38. A data input terminal 12 is provided to supply data read from a sector to data read/write control 10. As mentioned above, this information is supplied to input terminal 12 when a read operation as well as when a write operation is carried out. Input terminal 12 is coupled in common to sector ID field detector 14, SYNC signal detector 16 and RLC/SLC detector 18. Sector ID field detector 14 is adapted to detect the ID data recorded in a sector header, thus indicating the start of a sector. The output of detector 14 is coupled to data length counter 38 and is adapted to preset this counter with a predetermined count, such as a count representing the number of bytes included in the sector being processed. Typically, this predetermined count is fixed, such as a count of 512. However, the ID data included in the sector header may include a count representing the actual length of useful data that may be (or that is) recorded cumulatively in all of the data fields which constitute a sector. SYNC signal detector 16 is adapted to detect the
SYNC signal provided in the sector header and the SYNC signal in each data field header, as shown in FIGS. 2A, 2B, 2C, 3D and 3E. The detection of the sector SYNC signal indicates the beginning of a sector and the detection of the data field SYNC signal indicates the beginning of a data field and is used to prepare RLC counter 24 and SLC counter 32 to receive the RLC and SLC counts read from a sector. Detection of the sector SYNC signal sets a flip-flop circuit 40 to enable data length counter 38 to count data clock signals, as will be described.
SYNC signal detector 16 is coupled to a load pulse generator 22 via an OR gate 20. The load pulse generator is adapted to generate load pulses which are coupled to RLC counter 24 and SLC counter 32, respectively, for the purpose of loading these "counters with RLC and SLC counts, respectively read from a header, as will be described.
SYNC signal detector 16 also is coupled to the set input S of flip-flop circuit 40 which, when set, is adapted to enable an AND gate 42 to supply data clock signals, referred to hereafter as byte clock pulses, to data length counter 38. These byte clock pulses are generated by a suitable clock generator (not shown) synchronized with the digital signals read from or written on the record disk. For a purpose soon to be described, data length counter 38 is adapted to be decremented by the byte clock pulses and, as shown in FIG. 4, these byte clock pulses are supplied as count-down pulses to the data length counter. AND gate 42 also is coupled to the set input S of a flip-flop circuit 46 which, when set, is adapted to enable a data read/write circuit 48 which supplies to an output terminal 52 data signals read from a sector or, alternatively, data signals to be written in a sector. Read/write circuit 48 forms no part of the present invention per se; and it will be appreciated by those of ordinary skill in the art that this read/write circuit is of a conventional type normally used in disk drive apparatus to read data from a record disk or to write data on that disk.
RLC/SLC detector 18 is coupled to input terminal 12 and is adapted to detect and store the RLC and SLC counts read from a sector, as shown in FIGS. 2A, 2B, 2C, 3D and 3E. An RLC count read from a sector is coupled to RLC counter 24 whose count is adapted to be preset to this RLC count in response to receipt of a load pulse produced by load pulse generator 22. In one embodiment wherein a separate RLC count is provided in a data field header in advance of a respective data field, such as shown by the sector formats of FIGS. 2B, 2C and 3D, each RLC count read from the header by RLC/SLC detector 18 is loaded into RLC counter 24 when that count is read. In another embodiment having the sector format represented by FIG. 3E, wherein several RLC and SLC counts are recorded in the sector header, each RLC count is stored in, for example, a separate register provided in detector 18, and successive ones of these stored RLC counts are supplied to RLC counter 24 to preset that counter to successive ones of the stored RLC counts in successive counter load operations.
Detector 18 is adapted to supply SLC counts read from sector headers and data field headers to SLC counter 32 in a manner similar to -that by which RLC counter 24 is loaded with successive RLC counts. Thus, the SLC counter is adapted to be preset with an SLC count read from a header in response to a load pulse produced by load pulse generator 22. RLC counter 24 and SLC counter 32 are adapted to count byte clock pulses similar to the manner in which data length counter 38 counts byte clock pulses, but on a mutually exclusive basis. An AND gate 30 couples byte clock pulses to a count-down input of RLC counter 24, whereby the RLC counter is decremented from the RLC count to which it had been preset. Likewise, an AND gate 36 supplies byte clock pulses to a count-down input of SLC counter 32, whereby the SLC counter is adapted to be decremented from * the SLC count to which it had been preset. Reference count detectors 26 and 34 are coupled to RLC counter 24 and SLC counter 32, respectively, these reference count detectors being adapted to detect when the count of the counter coupled thereto reaches a reference count. For convenience and to simplify the present discussion, it is assumed that the reference count of each counter is zero; and the reference count detectors are comprised of zero-count detectors. Upon detecting a zero-count, the zero-count detector produces an enable signal which, for the present discussion, corresponds to a "1". At all other times, that is, when a zero count is not detected, the output of the zero count detector corresponds to a "0". For the format shown in FIGS> 3D and 3E; the output of zero count detector 26 is inverted and coupled to AND gate 42 to disable this AND gate from supplying byte clock pulses to data length counter 38 when RLC counter 24 reaches a count of zero. The output of zero count detector 26 also is supplied by an OR gate 44 to the reset inputs R of flip-flop circuits 40 and 46. Thus, when RLC counter 24 reaches a zero count, flip- flop circuits 40 and 46 each are reset to inhibit byte clock pulses from being supplied by AND gate 42 to data length counter 38 and also to disable the operation of read/write circuit 48.
Zero count detector 26 also is coupled to load pulse generator 22 via OR gate 20- to trigger the load pulse generator when RLC counter 24 reaches a count of zero. It will be appreciated that, at the end of a data field, detected by the zero count of RLC counter 24, load pulse generator 22 enables RLC counter 24 and SLC counter 12 to be preset to the next RLC and SLC counts, respectively.
A reference count detector 54, which also may be a zero count detector, is coupled to data length counter 38 to detect when the preset count of this counter has been decremented to a reference count, such as to a count of zero. At that time, an enable signal, such as a "1", is produced by zero count detector 54 and supplied by OR gate 44 to the reset inputs R of flip-flop circuits 40 and 46. It is recognized that this enable signal is produced after the last byte in the last data field of a sector has been read or written. The resetting of flip-flop circuits 40 and 46 prevents further byte clock pulses from being supplied to data length counter 38 and also inhibits further operation of read/write circuit 48 until the beginning of the next sector.
The output of zero count detector 54 also is coupled to ECC processor 50 and is adapted to enable the ECC processor to complete an ECC operation. The output of read/write circuit 48 also is coupled to ECC processor 50 and, during a read operation, the enable signal supplied to the ECC processor by zero count detector 54 functions to enable an ECC operation to be carried out. That is, the ECC processor operates to derive ECC data while read/write circuit 48 reads data from a sector; and the derived ECC data is processed with the ECC information read from the last data field in a sector when data length counter 38 reaches a count of zero. Similarly, during a write operation, ECC processor 50 accumulates ECC data as read/write circuit 48 writes data in each data field of a sector. At the end of the last data field, that is, when data length counter 38 reaches a count of zero, ECC processor 50 is enabled to supply accumulated ECC information to the read/write head (not shown) for writing onto the record disk.
The manner in which the apparatus illustrated in FIG. 4 operates now will be described in conjunction with, for example, the sector format shown in FIG. 3D. It will be appreciated that the illustrated apparatus functions in substantially the same way if the sectors shown in FIGS. 2B and 2C are processed. To avoid unnecessary duplication of description, the following discussion will be limited to the format of FIG. 3D. Also, it will be assumed that a data read operation is being carried out. Nevertheless, the apparatus shown in FIG. 4 operates in substantially the same way for a data write operation. It is recognized that sector and data field headers are read during a data read operation as well as during a data write operation. Accordingly, let it be assumed that data is recorded in a disk drive in accordance with the sector format shown in FIG. 3D. -Let it be further assumed that read/write head of the disk drive is positioned over a desired track in which the sector shown in FIG. 3D is recorded. The information reproduced from that track is supplied, after suitable demodulation, filtering and amplification, to input terminal 12. On detecting SYNC signal 120', SYNC detector 16 supplies an output signal to load pulse generator 22 by OR gate 20, whereupon load pulses are applied to RLC counter 24 and SLC counter 32, thereby preparing these counters to be preset to RLC and SLC counts, respectively, detected by RLC/SLC detector 18. RLC count 111' is detected by detector 18 to preset RLC counter 24 to this RLC count. When SLC counter 112* is recovered from the sector shown in FIG. 3D, detector 18 supplies this SLC count to SLC counter 32. Thus, the RLC and SLC counters are preset to the RLC and SLC counts recovered from the sector. Since these counts are not zero, both zero count detector 26 and zero count detector 34 produce binary 0's. The "0" provided by detector 34 inhibits AND gate
30 from supplying byte clock pulses to RLC counter 24. Consequently, the RLC counter remains preset to its initial RLC count. However, inverter 35 inverts the "0" from detector 34 to enable AND gate 36 to supply byte clock pulses to SLC counter 32. Therefore, as the sector shown in FIG. 3D is read, SLC counter 32 is decremented while servo burst 112 is present.
At this time, neither flip-flop circuit 40 nor flip-flop circuit 46 is set. Consequently, AND gate 42 remains inhibited, even though a binary "1" is supplied thereto by inverter 28, and byte clock pulses are not supplied to data length counter 38. Moreover, flip-flop circuit 46, which remains reset at this time, inhibits read/write circuit 48. Therefore, the servo burst now being read from the sector is not recovered by this read/write circuit. Rather, the servo burst merely is skipped as it passes the read/write head.
SLC counter 32 is decremented to a count of zero at the time that servo burst 112 passes the read/write head. Zero count detector 34 now produces a binary "1" to enable AND gate 30 to supply byte clock pulses to RLC counter 24. Also, the "1" produced by detector 34 is inverted by inverter 35 to inhibit AND gate 36. Thus, when byte clock pulses next are produced by the timing pulse generator (not shown) , as will occur at the beginning of data afield 111, the count of the RLC counter may be decremented.
Following servo burst 112, SYNC signal 121' is detected by SYNC detector 16 to set flip-flop circuit 40. Consequently, AND gate 42 is enabled to supply the byte clock pulses, when next produced, to data length counter 38.
When ID field 122' of the sector shown in FIG. 3D is recovered, sector ID field detector 14 detects this data to preset data length counter 38 to the count identifying the number of bytes of useful data which had been recorded (or, during a write operation, the number of bytes which can be recorded) in data fields 111 and 113. That is, counter 38 is preset to a count equal to the cumulative number of data bytes which had been (or which may be) recorded in this sector.
When data field 111 reaches the read/write head, byte clock pulses are supplied through AND gate 30 to decrement RLC counter 24. These byte clock pulses also are supplied through AND gate 42 to decrement data length counter 38; and the first pulse passed by this AND gate also is used to set flip-flop circuit 46. Hence, read/write circuit 48 now is enabled to recover the data which is read from data field 111 (or, during a write operation, to record data in this data field) . As data is read, ECC processor 50 derives error check code data which will be used after processing the last data field in this sector to carry out an ECC error detection/correction operation. When the end of data field 111 arrives at the read/write head, RLC counter 24 will be decremented to a count of zero. Zero count detector 26 now produces a binary "la' which resets flip-flop circuits 40 and 46. Hence, AND gate 42 now is inhibited and the decrementing of data length counter 38 is interrupted. The resetting of flip-flop circuit 46 interrupts the read/write operation being carried out by read/write circuit 48. Moreover, inverter 28 inverts the "1" produced by detector 26 to insure that AND gate 42 remains inhibited. Now, load pulse generator 22 is triggered by the
"1" produced by zero count detector 26 and supplied thereto by OR gate 20. Hence, RLC counter 24 and SLC counter 32 now are conditioned to receive the next RLC and SLC counts, respectively, read from the FIG. 3D sector. When RLC count 113' is supplied to input terminal 12, detector 18 supplies this RLC count to RLC counter 24, thereby presetting the counter. Likewise, when SLC count 114" is recovered from the sector, detector 18 supplies this SLC count to preset SLC counter 32. Zero count detectors 26 and 34 now produce O's to inhibit AND gate 30, enable AND gate 36 and enable AND gate 42. Read/write control apparatus 10 thus is conditioned to carry out another skip operation for the duration of servo burst 114 and, thereafter, to carry out a read (or write) operation for the duration of data field 113. That is, SLC counter 32 is decremented by byte clock pulses "as servo burst 114 is recovered; but his servo burst does not pass through read/write circuit 48. Following servo burst 114, SLC counter 32 remains inhibited; but, now RLC counter 24, data length counter 38 and read/write circuit 48 all are enabled. Counter 24 thus is decremented as data field 113 passes the read/write head, while counter 38 likewise is decremented. The data recovered from data field 113 is passed by read/write circuit 48 to ECC processor 50 and to output terminal 52. At the end of data field 113, RLC counter 24 is decremented to a count of zero, data length counter 38 also is decremented to a count of zero and ECC processor 50 now compares the derived ECC data to the ECC data recorded at the end of the data field. Thus, it is seen that data read/write control apparatus 10 functions to read (or write) data from useful data fields 111 and 113, while interrupting the read (or write) operation while non-data areas 112 and 114 are present. Also, ECC data is derived only during the useful data fields; and the resultant ECC data is processed with the ECC data which had been recorded at the end of the last data field in the sector during a read operation. Had a write operation been carried out, the ECC data derived by ECC processor 50 would be recorded at the end of that data field.
While the foregoing has described the read/write control operation when two data fields are recorded in a sector, it is appreciated that the very same operation may be carried out for any desired number of data fields. Furthermore, although the non-data areas have been assumed to contain servo burst information, it is appreciated that one or more of these non-data areas may contain defects which are to be skipped during a read/write operation. Still further, although SLC counts recovered from the sector are used to preset SLC counter 32, it is appreciated that if each non-data area is assumed to be of a fixed, predetermined length, then SLC counter 32 may be loaded, or preset, with a predetermined SLC count which need not necessarily be read from the sector.
If the sector format shown in FIG. 3E is used, data read/write control apparatus 10 carries out substantially the same operations as discussed above, except that the storage circuits, such as registers, included in RLC/SLC detector 18 are used to store RLC and SLC counts 115', 116', 117' and 118' recorded in the sector header. When zero count detector 26 detects that RLC counter 24 has been decremented to a count of zero, the next-stored RLC and SLC counts are supplied to preset RLC counter 24 and SLC counter 32. Thus, rather than read the next RLC and SLC counts from the next data field header, as was done when using the sector format shown in FIG. 3D, these next RLC and SLC counts simply are stored and accessed successively following the processing of each data field. The remaining operation of data read/write control 10 apparatus remains the same as was discussed above.
Therefore, it is seen that, when the sector format shown in FIG. 3E is used, RLC counts 115' and 117' are stored, as are SLC counts 116' and 118'. First, RLC counter 24 is preset to RLC count 115' and SLC counter 32 is preset to SLC count 116 ' . When servo burst 116 passes the read/write head, SLC counter 32 is decremented while RLC counter 24, data length counter 38 and read/write circuit 48 all remain inhibited. At the completion of servo burst 116, RLC counter 24 now is enabled to be decremented by the byte clock pulses, as is data length counter 38 which is preset by the data length count which may be included in ID field 123'. When byte clock pulses are passed by AND gate 42, flip-flop circuit 46 is set to enable read/write circuit 48 to process data in data field 115.
At the completion of data field 115, the count of RLC counter 24 is decremented to zero, whereupon the next- stored RLC count 117 ' and SLC count 118 ' are loaded into RLC counter 24 and SLC counter 32, respectively. Then, defect 118 passes the read/write head; and SLC counter 32 is decremented in synchronism therewith. At this time, flip- flop circuits 40 and 46 remain reset to inhibit data length counter 38 and read/write circuit 48. Thus, any signals which otherwise would be recovered from non-data area 118 are not processed.
At the completion of non-data area 118, SLC counter 32 is decremented to zero thereby enabling RLC counter 24 to be decremented. The SYNC signal which precedes data field 117 is detected by SYNC signal detector 16 to set flip-flop circuit 40. Thus, data length counter 38 may be decremented in synchronism with the reading (or writing) of data in data field 117. Once AND gate 42 is enabled by flip-flop circuit 40, the first byte clock pulse passed thereby sets flip-flop circuit 46 to enable read/write circuit 48.
Thus, RLC and SLC counts may be recorded in the sector header, as shown in FIG. 3E, to control the read/write operation of read/write circuit 48; or, in accordance with the sector format shown in FIG> 3D, separate RLC and SLC counts may be recorded at each data field header to carry out a similar read/write control.
While the present invention has been particularly shown and described with reference to different embodiments, it will be readily appreciated by those of ordinary skill in the art that various changes and modifications may be made without departing from the spirit and scope of the invention. Many of those changes and modifications have been discussed above and others will be easily suggested. For example, rather than preset counters 24, 32 and 38 and then decrement the preset counts, these counters merely may count byte clock pulses until preselected counts corresponding to the RLC, SLC and data length counts read from headers are reached. Thus, comparators may be used to compare the counts of these counters to such preselected counts to produce l's when comparisons are made. As another example, a data field may precede a servo burst in a sector, rather than having a servo burst (such as servo burst 112 in FIG. 3D) precede a data field (such as data field 111) . Still further, the RLC and SLC counts may be generated during a typical disk formatting operation as servo bursts or defects are sensed; and these counts then are written into the aforementioned header portions described above.
It is intended that the appended claims be interpreted as covering the particular embodiments described herein, those changes and modifications which have been discussed as well as all other equivalents thereto.

Claims

WHAT IS CLAIMED IS:
1. In a data read/write device for reading and/or writing bytes of data in sectors on a movable record medium having non-data areas in one or more sectors, the method of preventing the reading and/or writing of data in said non- data areas, comprising the steps of: providing at least one useful data-length (RLC) count in at least one RLC data field in a sector, each RLC count representing the length of a respective useful data region; reading said RLC count from said RLC data fields as said record medium moves; reading or writing data in a sector on said record medium for a length determined by an RLC count read from said record medium; interrupting the reading or writing of data for a predetermined length following said length determined by the RLC count read from said record medium; and resuming the reading or writing of data following said predetermined length.
2. The method of Claim 1 wherein at least one RLC data field is provided at the beginning of each sector.
3. The method of Claim 2 wherein an RLC data field is provided in advance of each respective useful data region.
4. The method of Claim 2 further comprising the steps of deriving error correcting code (ECC) data only while data is written in or read from a sector; suspending the step of deriving ECC data while the writing or reading of data is interrupted; and writing or reading the derived ECC data at the end of the last useful data region in a sector.
5. The method of Claim 2 wherein the step of reading or writing data for a length determined by an RLC count comprises loading an RLC counter with an RLC count read from an RLC data field; decrementing said RLC counter in synchronism with a read/write data clock; sensing when said RLC counter is decremented to a predetermined count; and interrupting the reading or writing of data when said predetermined count is reached.
6. The method of Claim 5 wherein the step of interrupting the reading or writing of data for a predetermined length further comprises loading another counter with a predetermined count; decrementing said other counter in synchronism with said read/write data clock once the predetermined count of said RLC counter is sensed; sensing when said other counter is decremented to a preset count; and resuming the reading or writing of data when said preset count of said other count is sensed.
7. The method of Claim 6 wherein the step of resuming the reading or writing of data comprises enabling the RLC counter when said preset count of said other counter is sensed so as to condition said RLC counter to be loaded with a count; loading the conditioned RLC counter with the RLC count read from the next RLC data field; and reading or writing data after said RLC counter is loaded.
8. The method of Claim 7 wherein data written on or read from the record medium is preceded by synchronization information; and wherein the step of reading or writing data includes detecting said synchronization information, and initiating a data read or data write operation in response to the detection of said synchronization information.
9. The method of Claim 7 wherein a pre- established number of bytes of data are recorded in a sector on said record medium; and wherein said step of reading or writing data further comprises loading a data byte counter with said pre-established number at the beginning of a sector; decrementing said data byte counter in synchronism with said read/write data clock; and preventing the reading or writing of data when said data byte counter is decremented to a reference count until the next sector on said record medium is presented for reading or writing data.
10. The method of Claim 9 wherein each sector includes an ID data field and wherein each ID data field includes a predetermined signal; and wherein the step of loading said data byte counter comprises detecting said predetermined signal to load said data byte counter with said pre-established number.
11. A method of controlling disk drive read and write operations in which data information is recorded in data fields in sectors of respective tracks having serve information recorded periodically in a track which may split the data field of a sector and further having possible defect areas in a data field, said method comprising the steps of: providing at least one useful data (RLC) count in a sector representing the length of a respective data field in said sector; providing at least one non-data length (SLC) count in a sector representing the length of a respective serve information region or defect area in said sector; reading the respective RLC and SLC counts from said sector; reading or writing data in a sector for a length determined by a respective one of said RLC counts; interrupting the reading or writing of data in a sector for a length determined by a respective one of said
SLC counts; and resuming the reading or writing of data in said sector following the length of interruption determined by the SLC count.
12. The method of Claim 11 further comprising the step of providing a data length count representing the total length of data in a sector, inclusive of data that may be recorded in split data fields; and wherein the step of resuming the reading or writing of data in said sector includes reading or writing data until the total length of data read or written is equal to said data length count.
13. The method of Claim 11 wherein plural RLC counts are provided in a sector, each RLC count representing the length of a split data field; wherein data is read from or written in a first split field for a length equal to a corresponding RLC count; wherein data is not read or written for a length equal to an SLC count; and wherein data is read from or written in a next-following split field for a length corresponding to a next RLC count.
14. The method of Claim 13 wherein plural SLC counts are provided in a sector; and wherein the step of reading or writing data in a sector and the step of interrupting said reading or writing alternate for lengths determined by the RLC and SLC counts, respectively.
15. The method of Claim 14 wherein the plural RLC counts and plural SLC counts are recorded on the disk in a predetermined count region at a beginning portion of the sector, said RLC and SLC counts being read and stored for each sector.
16. The method of Claim 14 wherein a respective one RLC count and a respective one SLC count are recorded on the disk in a predetermined count region at the beginning of each split data field, said one RLC count representing the length of said split data field and said one SLC count representing the length of the serve information or defect area adjacent said split data field.
17. The method of Claim 16 wherein serve information precedes data information and said predetermined count region precedes said serve information.
18. The method of Claim 14 further comprising the step of providing defect information at a predetermined location in each sector, said defect information identifying those sectors in a track which are defective and not used to record data information therein.
19. The method of Claim 18 wherein said defect information comprises flag bits, each representing whether a respective sector is defective.
20. The method of Claim 14 further comprising the step of recording error correcting code (ECC) data at the end of the last split data field recorded in a sector, said ECC data representing error check information derived from all of the data information recorded in said sector.
21. The method of Claim 20 further comprising the steps of carrying out error check processing on data information read from each split field; suspending said error check processing while data is not read; and comparing accumulated error check processing after data information is read from the last split field in a sector with the ECC data read from that sector.
22. A method of formatting a track on a record 5 disk having plural bursts of serve information recorded within one sector in which a predetermined number of data bytes is adapted to be recorded, comprising the steps of: providing plural useful data length (RLC) counts representing the respective lengths of useful data fields G* between successive serve bursts in said sector, one of said
RLC counts representing the length of the last useful data field in that sector; recording each RLC count in advance of the useful data field whose length is represented by that count; and 5 recording identifying information to identify the beginning of a useful data field.
23. The method of Claim 22 wherein said step of recording identifying information comprises recording synchronizing information, recording ID data representing 0 track and sector numbers, and recording check sum data representing the sum of the synchronizing information and ID data; said synchronizing information, ID data, and check sum data all being recorded adjacent the beginning of the first useful data field in a sector. 5
24. The method of Claim 22 further comprising the steps of providing plural non-useful data (SLC) counts representing the respective lengths of said serve bursts; and recording each SLC count in advance of the servo burst whose length is represented by that count. 0
25. The method of Claim 24 wherein a useful data field precedes a servo burst in a sector and an RLC count and an SLC count both are recorded in advance of said useful data field.
26. The method of Claim 24 wherein a servo burst 5 precedes a useful data field in a sector and an RLC count and an SLC count both are recorded in advance of said servo burst.
27. The method of Claim 24 further comprising the steps of testing a sector for the presence of a non- recordable area therein; providing an SLC count representing the length of said non-recordable area; and recording said last-mentioned SLC count in advance of the non-recordable area whose length is represented by that count.
28. The method of Claim 27.wherein all of the RLC and SLC counts of a sector are recorded at the beginning of that sector, thereby representing the length of each useful data field, the length of each servo burst, and the length of each non-recordable area in said sector.
29. The method of Claim 27 wherein an RLC count and an SLC count both are recorded to represent the lengths of the next-following useful data field and either the adjacent servo burst or non-recordable area, respectively.
30. Apparatus for controlling a read/write operation for a storage disk adapted to have data recorded in sectors, at least one sector including a non-data area interposed between two data fields therein and further containing at least one useful data length (RLC) count representing the length of one of said data field, said apparatus comprising:
RLC counter means; read means for reading said RLC count from said sector; data length counter means; clock means for supplying to said RLC and data length counter means clock signals synchronized with the read/write operation; and read/write interrupt means for interrupting for a predetermined time the read/write operation when said RLC counter means counts a number of clock signals equal to the RLC count read from said sector and then resuming said read/write operation until said data length counter means counts a number of clock signals equal to a predetermined count representing the overall length of data recorded in said sector.
31. The apparatus of Claim 30 wherein said non- data area is of fixed length; and wherein said read/write interrupt means includes additional counter means for counting a number of clock signals equal to a determined count representing said fixed length, whereby said read/write operation is interrupted until said additional counter means counts said number of clock signals.
32. The apparatus of Claim 31 wherein said read/write interrupt means further includes enable means for enabling said additional counter means to count said clock signals when said RLC counter means counts said number of clock signals equal to the RLC count read from said sector.
33. The apparatus of Claim 32 wherein said clock means comprises means for supplying said clock signals to said data length counter means for the duration of said read/write operation, and means for inhibiting clock signals from being supplied to said data length counter means while said'additional counter means is counting.
34. The apparatus of Claim 31 further comprising
ECC processing means; means for supplying to said ECC processing means data read from or written in said sector during a read/write operation; and means for enabling the ECC processing means to carry out an ECC operation once said data length counter means counts a number of clock signals equal to said predetermined count.
35. The apparatus of Claim 31 wherein said RLC counter means includes preset means for presetting the RLC counter means to the RLC count read from said sector; said data length counter means includes preset means for presetting the data length counter means to the predetermined count; said additional counter means includes preset means for presetting the additional counter means to said determined count; and all of said counter means being decremented by said clock signals.
36. The apparatus of Claim 35 wherein said read/write interrupt means includes: RLC count sensing means for sensing when said RLC counter means is decremented to a reference count for interrupting said read/write operation and for inhibiting said data length counter means; and additional count sensing means for sensing when said additional counter means is decremented to a reference count for resuming said read/write operation and for inhibiting said additional counter means.
37. The apparatus of Claim 35 wherein each data field is provided with predetermined header information to identify the beginning of said data field; wherein said read means further includes means for detecting said header information to couple said clock signals to said data length counter means, to preset said RLC counter means to the RLC count read from said sector, to present said additional counter means to said determined count, and to enable the read/write operation.
38. The apparatus of Claim 30 wherein said one sector further contains a non-data length (SLC) count representing the length of said non-data area; wherein said read means reads said SLC count from said sector; and wherein said read/write interrupt means further includes SLC counter means for counting said clock signals during the interruption of said read/write operation and for enabling the resumption of said read/write operation when said SLC counter means counts a number of clock signals equal to the SLC count read from said sector.
39. Apparatus for controlling a read/write operation for a storage disk adapted to have useful data recorded in sectors, at least one sector including plural non-data areas interposed between plural data fields therein, said disk containing plural useful data length (RLC) counts representing the lengths of respective data fields and plural non-data length (SLC) counts representing the lengths of respective non-data areas, said apparatus comprising: read means for reading the RLC and SLC counts from the disk; RLC counter means for counting clock signals; SLC counter means for counting clock signals; data length counter means for counting clock signals; clock means for supplying to said RLC, SLC, and data length counter means clock signals synchronized with the read/write operation; and read/write control means for interrupting said read/write operation until said SLC counter means counts a number of clock signals equal to an SLC count read from said disk, enabling the read/write operation in a data field until said RLC counter means counts a number of clock signals equal to an RLC count read from said disk, alternating between the counting of said SLC counter means and the counting of said RLC counter means, enabling said data length counter means to count clock signals, and terminating said read/write operation when said data length counter means counts a number of clock signals equal to a predetermined count representing the overall length of data recorded in said sector.
40. The apparatus of
Claim 39 wherein each data field includes a header portion in which an RLC count and an SLC count are recorded.
41. The apparatus of Claim 40 wherein at least one of said non-data areas contains a burst of servo information recorded between the RLC and SLC counts and said useful data.
42. The apparatus of Claim 39 wherein said sector includes a header portion in which plural RLC counts and plural SLC counts are recorded representing the respective lengths of the data fields and the respective lengths of the non-data areas in said sector.
43. The apparatus of Claim 42 further including storage means for storing the respective RLC and SLC counts read from said header portion.
44. The apparatus of Claim 43 wherein said read/write control means comprises present means for setting the RLC and SLC counter means with first RLC and SLC counts, respectively, read from said header portion; means for decrementing the count of said SLC counter means with said clock signals until a reference count is reached; means for inhibiting the read/write operation while the count of said SLC counter means is decrementing; means responsive to the reference means of said SLC counter means for decrementing the count of said RLC counter means with said clock signals until a reference count is reached; means for resuming the read/write operation while said RLC counter means is decremented; and means responsive to the reference count of said RLC counter means for presetting said RLC and SLC counter means with the next RLC and SLC counts read from said header portion.
45. The apparatus of Claim 44 wherein said read/write control means further comprises means for presetting said data length counter means with said predetermined count; means for decrementing the count of said data length counter means with said clock signals as said RLC count is decremented; and means for terminating the read/write operation when said data length counter means reaches a reference count.
PCT/US1991/004529 1990-06-25 1991-06-24 Read/write control for disk drive WO1992000589A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US54315090A 1990-06-25 1990-06-25
US543,150 1990-06-25

Publications (1)

Publication Number Publication Date
WO1992000589A1 true WO1992000589A1 (en) 1992-01-09

Family

ID=24166795

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1991/004529 WO1992000589A1 (en) 1990-06-25 1991-06-24 Read/write control for disk drive

Country Status (1)

Country Link
WO (1) WO1992000589A1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0565856A2 (en) * 1992-04-16 1993-10-20 Hewlett-Packard Company Programmable start-of-sector pulse generator for a disk drive using embedded servo bursts and split data fields
US5285327A (en) * 1990-01-17 1994-02-08 International Business Machines Corporation Apparatus for controlling reading and writing in a disk drive
WO1994006118A1 (en) * 1992-09-10 1994-03-17 Digital Equipment Corporation On-the-fly splitting of disk data blocks
EP0637025A2 (en) * 1993-07-26 1995-02-01 Matsushita Electric Industrial Co., Ltd. Apparatus for recording and reproducing digital data and method for the same
WO1995017751A1 (en) * 1993-12-23 1995-06-29 National Semiconductor Corporation Reliable time-domain demarcation of split formats in embedded-servo, zoned-data recording disk drives
WO1996008011A1 (en) * 1994-09-06 1996-03-14 Seagate Technology, Inc. Circuit and method for locating data sectors in embedded servo hard disc drives
US5754351A (en) * 1994-09-06 1998-05-19 Seagate Technology, Inc. Embedded header for split data sectors in zoned bit recorded disc drives
US5768044A (en) * 1993-12-23 1998-06-16 International Business Machines Corporation Zoned recording embedded servo disk drive having no data identification fields and reduced rotational latency
US5937435A (en) * 1993-12-23 1999-08-10 International Business Machines Corporation System and method for skip-sector mapping in a data recording disk drive

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2022248A (en) * 1978-05-31 1979-12-12 Zellweger Uster Ag Method of determining nitric acid or nitrates
US4656532A (en) * 1985-07-29 1987-04-07 International Business Machines Corporation Sector identification method for hard sectored hard files
US4811124A (en) * 1987-07-24 1989-03-07 Advanced Micro Devices, Inc. Defect skipping mechanism for disk drives

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2022248A (en) * 1978-05-31 1979-12-12 Zellweger Uster Ag Method of determining nitric acid or nitrates
US4656532A (en) * 1985-07-29 1987-04-07 International Business Machines Corporation Sector identification method for hard sectored hard files
US4811124A (en) * 1987-07-24 1989-03-07 Advanced Micro Devices, Inc. Defect skipping mechanism for disk drives

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5440474A (en) * 1990-01-17 1995-08-08 International Business Machines Corporation Magnetic recording disk with equally-spaced servo sectors extending across multiple data bands
US5285327A (en) * 1990-01-17 1994-02-08 International Business Machines Corporation Apparatus for controlling reading and writing in a disk drive
US5526211A (en) * 1990-01-17 1996-06-11 International Business Machines Corporation Banded magnetic recording disk with equally-angularly-spaced servo sector
EP0565856A3 (en) * 1992-04-16 1994-02-23 Hewlett Packard Co
EP0565856A2 (en) * 1992-04-16 1993-10-20 Hewlett-Packard Company Programmable start-of-sector pulse generator for a disk drive using embedded servo bursts and split data fields
WO1994006118A1 (en) * 1992-09-10 1994-03-17 Digital Equipment Corporation On-the-fly splitting of disk data blocks
EP0637025A2 (en) * 1993-07-26 1995-02-01 Matsushita Electric Industrial Co., Ltd. Apparatus for recording and reproducing digital data and method for the same
EP0637025A3 (en) * 1993-07-26 1997-03-19 Matsushita Electric Ind Co Ltd Apparatus for recording and reproducing digital data and method for the same.
WO1995017751A1 (en) * 1993-12-23 1995-06-29 National Semiconductor Corporation Reliable time-domain demarcation of split formats in embedded-servo, zoned-data recording disk drives
US5768044A (en) * 1993-12-23 1998-06-16 International Business Machines Corporation Zoned recording embedded servo disk drive having no data identification fields and reduced rotational latency
US5937435A (en) * 1993-12-23 1999-08-10 International Business Machines Corporation System and method for skip-sector mapping in a data recording disk drive
WO1996008011A1 (en) * 1994-09-06 1996-03-14 Seagate Technology, Inc. Circuit and method for locating data sectors in embedded servo hard disc drives
US5754351A (en) * 1994-09-06 1998-05-19 Seagate Technology, Inc. Embedded header for split data sectors in zoned bit recorded disc drives

Similar Documents

Publication Publication Date Title
EP0300264B1 (en) Defect skipping mechanism for disk drives
US5940233A (en) Method for detecting redundant nonadjacent synchronization bytes
US4214280A (en) Method and apparatus for recording data without recording on defective areas of a data recording medium
EP0406188B1 (en) Combining small records into a single record block for recording on a record media
US4297737A (en) Sector servo with sync marks
US5305302A (en) Track format and record carrier system for split data field support
AU635796B2 (en) Synchronizing timing signals for helical scan recorder
WO1992000589A1 (en) Read/write control for disk drive
JP4398589B2 (en) Data storage device and method thereof
US7813069B2 (en) Method and apparatus for controlling motion of storage media
US5581418A (en) Magnetic disk drive unit capable of determining data region position of data region that does not include position identification data
US7184236B2 (en) Magnetic hard disk drive
US6557141B1 (en) Magnetic media certification
US6058084A (en) Disk-shaped recording medium using segment ID and disk unit using the disk-shaped recording medium
JP3446852B2 (en) Method and apparatus for controlling movement of recording medium
JPH0620403A (en) Magnetic disk device
US5363252A (en) Method and system for track skew tolerant acquistion burst sequence validation in a data storage system
JPH0834047B2 (en) Magnetic recording / reproducing device
US6198588B1 (en) Data Storage
JPH01171044A (en) Method for positioning block of memory
US5644446A (en) Rotary-head digital reproducing/recording method and apparatus with block address-based area signal generation
JPH0743915B2 (en) Magnetic disk unit
JP3795539B2 (en) Information reproducing method for information reproducing apparatus
JP2734327B2 (en) Track address detection circuit
JP2629887B2 (en) Magnetic disk processing unit

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CA JP

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FR GB GR IT LU NL SE

NENP Non-entry into the national phase

Ref country code: CA