10

Magnetic disk drives

Disk drives came into being as random-access file-storage devices for digital computers. They were prominent in early experiments with digital audio, but their cost at that time was too great in comparison to emerging tape technology. However, the explosion in personal computers has fuelled demand for low-cost high-density magnetic disk drives and the rapid access offered is increasingly finding applications in digital audio. Optical and magneto-optic (MO) disks are considered in Chapter 12.

10.1 Types of disk drive

Once the operating speed of computers began to take strides forward, it became evident that a single processor could be made to jump between several different programs so fast that they all appeared to be executing simultaneously, a process known as multiprogramming. Computer memory is designed for speed and remains more expensive than other types of mass storage, and so it has never been practicable to store every program or data file necessary within the computer memory. In practice some kind of storage medium is necessary where only programs which are running or are about to run are in the memory, and the remainder are stored on the medium. Punched cards, paper tape and magnetic tape are all computer media, but suffer from the same disadvantage of slow access. The disk drive was developed specifically to offer rapid random access to stored data. Figure 10.1 shows that, in a magnetic disk drive, the data are recorded on a circular track. In floppy disks, the magnetic medium is flexible, and the head touches it. This restricts the rotational speed. In hard-disk drives, the disk rotates at several thousand rev/min so that the head-to-disk speed is of the order of one hundred miles per hour. At this speed no contact can be tolerated, and the head flies on a boundary layer of air turning with the disk at a height measured in microinches. The longest time it is necessary to wait to access a given data block is a few milliseconds. To increase the storage capacity of the drive without a proportional increase in cost, many concentric tracks are recorded on the disk surface, and the head is mounted on a positioner which can rapidly bring the head to any desired track. Such a machine is termed a moving-head disk drive. The positioner was usually designed so that it could remove the heads away from the disk completely, which could thus be exchanged. The exchangeable-pack moving-head disk drive became the standard for mainframe and minicomputers for a long time, and usually at least two were furnished so that important data could be ‘backed up’ or copied to a second disk for safe keeping.

images

Figure 10.1    The rotating store concept. Data on the rotating circular track are repeatedly presented to the head.

Later came the so-called Winchester technology disks, where the disk and positioner formed a sealed unit which allowed increased storage capacity but precluded exchange of the disk pack. This led to the development of high-speed tape drives which could be used as security backup storage.

Disk drive development has been phenomenally rapid. The first flying head disks were about 3 feet across. Subsequently disk sizes of 14, 8, 5¼, 3½ and 1¾ inches were developed. Despite the reduction in size, the storage capacity is not compromised because the recording density has increased and continues to increase. In fact there is an advantage in making a drive smaller because the moving parts are then lighter and travel a shorter distance, improving access time.

Disk drives are devices which have distinctive characteristics distinguishing them from other media. These will all be explained in this chapter, after which it will become clear how these useful devices can be used in digital audio applications.

10.2 Disk terminology

In all technologies there are specialist terms, and those relating to disks will be explained here. Figure 10.2 shows a typical multiplatter disk pack in conceptual form. Given a particular set of coordinates (cylinder, head, sector), known as a disk physical address, one unique data block is defined. A common block capacity is 512 bytes. The subdivision into sectors is sometimes omitted for special applications. Figure 10.3 introduces the essential subsystems of a disk drive which will be discussed.

images

Figure 10.2    Disk terminology. Surface: one side of a platter. Track: path described on a surface by a fixed head. Cylinder: imaginary shape intersecting all surfaces at tracks of the same radius. Sector: angular subdivision of pack. Block: that part of a track within one sector. Each block has a unique cylinder, head and sector address.

images

Figure 10.3    The main subsystems of a typical disk drive.

10.3 Structure of disk

The floppy disk is actually made using tape technology, and will be discussed later. Rigid disks are made from aluminium alloy. Magnetic-oxide types use an aluminium oxide substrate, or undercoat, giving a flat surface to which the oxide binder can adhere. Later metallic disks are electroplated with the magnetic medium. In both cases the surface finish must be extremely good owing to the very small flying height of the head. Figure 10.4 shows a cross-section of a typical multiplatter disk pack. As the head-to-disk speed and recording density are functions of track radius, the data are confined to the outer areas of the disks to minimize the change in these parameters. As a result, the centre of the pack is often an empty well. In fixed (i.e. non-interchangeable) disks the drive motor is often installed in the centre well. Removable packs usually seat on a taper to ensure concentricity and elaborate fixing mechanisms are needed on large packs to prevent the pack from working loose in operation. Smaller packs are held to the spindle by a permanent magnet, and a lever mechanism is incorporated into the cartridge to assist their removal.

10.4 Principle of flying head

Disk drives permanently sacrifice storage density in order to offer rapid access. The use of a flying head with a deliberate air gap between it and the medium is necessary because of the high medium speed, but this causes a severe separation loss which restricts the linear density available. The air gap must be accurately maintained, and consequently the head is of low mass and is mounted flexibly.

The aerohydrodynamic part of the head is known as the slipper; it is designed to provide lift from the boundary layer which changes rapidly with changes in flying height. It is not initially obvious that the difficulty with disk heads is not making them fly, but making them fly close enough to the disk surface. The boundary layer travelling at the disk surface has the same speed as the disk, but as height increases, it slows down due to drag from the surrounding air. As the lift is a function of relative air speed, the closer the slipper comes to the disk, the greater the lift will be. The slipper is therefore mounted at the end of a rigid cantilever sprung towards the medium. The force with which the head is pressed towards the disk by the spring is equal to the lift at the designed flying height. Because of the spring, the head may rise and fall over small warps in the disk. It would be virtually impossible to manufacture disks flat enough to dispensed with this feature. As the slipper negotiates a warp it will pitch and roll in addition to rising and falling, but it must be prevented from yawing, as this would cause an azimuth error. Downthrust is applied to the aerodynamic centre by a spherical thrust button, and the required degrees of freedom are supplied by a thin flexible gimbal. The slipper has to bleed away surplus air in order to approach close enough to the disk, and holes or grooves are usually provided for this purpose in the same way that pinch rollers on some tape decks have grooves to prevent tape slip.

images

Figure 10.4    (a) Typical construction of multiplatter exchangeable pack. (b) the hold-down screw A is fully engaged with the lockshaft B, and the pin C lifts the ramp D, retracting the balls E. In (c) the hold-down screw is withdrawn from the lockshaft, which retracts, causing the ramp to force the balls into engagement with the cover F. The lockshaft often operates a switch to inform the logic that a pack is present (G).

In exchangeable-pack drives, there will be a ramp on the side of the cantilever which engages a fixed block when the heads are retracted in order to lift them away from the disk surface.

10.5 Reading and writing

Figure 10.5 shows how disk heads are made. The magnetic circuit of disk heads was originally assembled from discrete magnetic elements. As the gap and flying height became smaller to increase linear recording density, the slipper was made from ferrite, and became part of the magnetic circuit. This was completed by a small C-shaped ferrite piece which carried the coil. In thin-film heads, the magnetic circuit and coil are both formed by deposition on a substrate which becomes the rear of the slipper.

In a moving-head device it is not practicable to position separate erase, record and playback heads accurately. Erase is by overwriting, and reading and writing are carried out by the same head. The presence of the air film causes severe separation loss, and peak shift distortion is a major problem. The flying height of the head varies with the radius of the disk track, and it is difficult to provide accurate equalization of the replay channel because of this. The write current is often controlled as a function of track radius so that the changing reluctance of the air gap does not change the resulting record flux. Automatic gain control (AGC) is used on replay to compensate for changes in signal amplitude from the head.

Equalization may be used on recording in the form of precompensation, which moves recorded transitions in such a way as to oppose the effects of peak shift in addition to any replay equalization used. This was discussed in Chapter 6, which also introduced digital channel coding.

Early disks used FM coding, which was easy to decode but had a poor density ratio. The invention of MFM revolutionized hard disks, and was at one time universal. Further progress led to run-length-limited codes such as 2/3 and 2/7 which had a high density ratio without sacrificing the large jitter window necessary to reject peak-shift distortion. Partial response is also suited to disks, but is not yet in common use.

images

Figure 10.5    (a) Winchester head construction showing large air bleed grooves. (b) Close-up of slipper showing magnetic circuit on trailing edge. (c) Thin-film head is fabricated on the end of the slipper using microcircuit technology.

Typical drives have several heads, but with the exception of special-purpose parallel-transfer machines for digital video or instrumentation work, only one head will be active at any one time, which means that the read and write circuitry can be shared between the heads. Figure 10.6 shows that in one approach the centre-tapped heads are isolated by connecting the centre tap to a negative voltage, which reverse-biases the matrix diodes. The centre tap of the selected head is made positive. When reading, a small current flows through both halves of the head winding, as the diodes are forward-biased. Opposing currents in the head cancel, but read signals due to transitions on the medium can pass through the forward-biased diodes to become differential signals on the matrix bus. During writing, the current from the write generator passes alternately through the two halves of the head coil. Further isolation is necessary to prevent the write-current-induced voltages from destroying the read preamplifier input. Alternatively, FET analog switches may be used for head selection.

images

Figure 10.6    Representative head matrix.

The read channel usually incorporates AGC, which will be overridden by the control logic between data blocks in order to search for address marks, which are short unmodulated areas of track. As a block preamble is entered, the AGC will be enabled to allow a rapid gain adjustment.

The high bit rates of disk drives, due to the speed of the medium, mean that peak detection in the replay channel is usually by differentiation. The detected peaks are then fed to the data separator.

10.6 Moving the heads

The servo system required to move the heads rapidly between tracks, and yet hold them in place accurately for data transfer, is a fascinating and complex piece of engineering.

In exchangeable pack drives, the disk positioner moves on a straight axis which passes through the spindle. The head carriage will usually have preloaded ball races which run on rails mounted on the bed of the machine, although some drives use plain sintered bushes sliding on polished rods.

Motive power on early disk drives was hydraulic, but this soon gave way to moving-coil drive, because of the small moving mass which this technique permits. Another possibility is a coarse-threaded shaft or leadscrew which engages with a nut on the carriage. In very low-cost drives, the motor will be a stepping motor, and the positions of the tracks will be determined by the natural detents of the stepping motor. This has an advantage for portable drives, because a stepping motor will remain detented without power whereas moving-coil actuators require power to stay on track.

When a drive is track-following, it is said to be detented, in fine mode or in linear mode depending on the manufacturer. When a drive is seeking from one track to another, it can be described as being in coarse mode or velocity mode. These are the two major operating modes of the servo.

With the exception of stepping-motor-driven carriages, the servo system needs positional feedback from a transducer of some kind. The purpose of the transducer will be one or more of the following:

1 To count the number of cylinders crossed during a seek
2 To generate a signal proportional to carriage velocity
3 To generate a position error proportional to the distance from the centre of the desired track

Sometimes the same transducer is used for all of these, and so transducers are best classified by their operating principle rather than by their function in a particular drive.

The simplest transducer is the magnetic moving-coil type, with its complementary equivalent, the moving-magnet type. Both generate a voltage proportional to velocity, and can give no positional information, but no precise alignment other than a working clearance is necessary. These devices are usually called tachos and should not be confused with burritos.

Optical transducers have also been used. These consist of gratings, one fixed on the machine base, and one on the carriage. The relative position of the two controls the amount of light which can shine through onto a sensor.

10.7 Controlling a seek

A seek is a process where the positioner moves from one cylinder to another. The speed with which a seek can be completed is a major factor in determining the access time of the drive. The main parameter controlling the carriage during a seek is the cylinder difference, which is obtained by subtracting the current cylinder address from the desired cylinder address. The cylinder difference will be a signed binary number representing the number of cylinders to be crossed to reach the target, direction being indicated by the sign. The cylinder difference is loaded into a counter which is decremented each time a cylinder is crossed. The counter drives a DAC which generates an analog voltage proportional to the cylinder difference. As Figure 10.7 shows, this voltage, known as the scheduled velocity, is compared with the output of the carriage-velocity tacho. Any difference between the two results in a velocity error which drives the carriage to cancel the error. As the carriage approaches the target cylinder, the cylinder difference becomes smaller, with the result that the run-in to the target is critically damped to eliminate overshoot.

images

Figure 10.7    Control of carriage velocity by cylinder difference. The cylinder difference is loaded into the difference counter A. A digital-to-analog convertor generates an analog voltage from the cylinder difference, known as the scheduled velocity. This is compared with the actual velocity from the transducer B in order to generate the velocity error which drives the servo amplifier C.

Figure 10.8(a) shows graphs of scheduled velocity, actual velocity and motor current with respect to cylinder difference during a seek. In the first half of the seek, the actual velocity is less than the scheduled velocity, causing a large velocity error which saturates the amplifier and provides maximum carriage acceleration. In the second half of the graphs, the scheduled velocity is falling below the actual velocity, generating a negative velocity error which drives a reverse current through the motor to slow the carriage down. The scheduled deceleration slope can clearly not be steeper than the saturated acceleration slope. Areas A and B on the graph will be about equal, as the kinetic energy put into the carriage has to be taken out. The current through the motor is continuous, and would result in a heating problem, so to counter this, the DAC is made nonlinear so that above a certain cylinder difference no increase in scheduled velocity will occur. This results in the graph of Figure 10.8(b). The actual velocity graph is called a velocity profile. It consists of three regions: acceleration, where the system is saturated; a constant velocity plateau, where the only power needed is to overcome friction; and the scheduled run-in to the desired cylinder. Dissipation is only significant in the first and last regions.

images

Figure 10.8    In the simple arrangement in (a) the dissipation in the positioner is continuous, causing a heating problem. The effect of limiting the scheduled velocity above a certain cylinder difference is apparent in (b) where heavy positioner current only flows during acceleration and deceleration. During the plateau of the velocity profile, only enough current to overcome friction is necessary. The curvature of the acceleration slope is due to the back EMF of the positioner motor.

A consequence of the critically damped run-in to the target cylinder is that short seeks are slow. Sometimes further non-linearity is introduced into the velocity scheduler to speed up short seeks. The velocity profile becomes a piecewise linear approximation to a curve by using non-linear feedback. Figure 10.9 shows the principle of an early analog shaper or profile generator. Later machines compute the curve in microprocessor sofware or use a PROM look-up table.

In small disk drives the amplifier may be linear in all modes of operation, resembling an audio power amplifier. Larger units may employ pulse-width-modulated drive to reduce dissipation, or even switched-mode amplifiers with inductive flywheel circuits. These switching systems can generate appreciable electromagnetic radiation, but this is of no consequence as they are only active during a seek. In track-following mode, the amplifier reverts to linear mode; hence the use of the term linear to mean track-following mode.

images

Figure 10.9    The use of voltage-dependent feedback around an operational amplifier permits a piecewise linear approximation to a curved velocity profile. This has the effect of speeding up short seeks without causing a dissipation problem on long seeks. The circuit is referred to as a shaper.

The input of the servo amplifier normally has a number of analog switches which select the appropriate signals according to the mode of the servo. As the output of the position transducer is a triangle or sine wave, the sense of the position feedback has to be inverted on odd-numbered cylinders, to allow detenting on the negative slope. Sometimes a separate transducer is used for head retraction only. A typical system is shown in Figure 10.10.

10.8 Rotation

The rotation subsystems of disk drives will now be covered. The track-following accuracy of a drive positioner will be impaired if there is bearing run-out, and so the spindle bearings are made to a high degree of precision. On early drives, squirrel-cage induction motors were used, driving the spindle through a belt. As recording density has increased, the size of drives has come down, and today brushless DC motors with integral speed control are universal.

In order to control reading and writing, the drive control circuitry needs to know which cylinder the heads are on, and which sector is currently under the head. Sector information in early drives was obtained from a sensor which detects slots cut in the hub of the disk. These can be optical, variable reluctance or eddy-current devices. Pulses from the transducer increment the sector counter, which is reset by a double slot once per revolution. The desired sector address is loaded into a register, which is compared with the sector counter. When the two match, the desired sector has been found. This process is referred to as a search, and usually takes place after a seek. Having found the correct physical place on the disk, the next step is to read the header associated with the data block to confirm that the disk address contained there is the same as the desired address.

images

Figure 10.10    A typical servo amplifier input stage. In velocity mode the shaper and the velocity transducer drive the error amp. In track-following mode the position error is the only input.

Rotation of a disk pack at speed results in heat build-up through air resistance. This heat must be carried away. A further important factor with exchangeable pack drives is to keep the disk area free from contaminants which might lodge between the head and the disk and cause the destructive phenomenon known as a head crash, where debris builds up on the head until it ploughs the disk surface.

10.9 Servo-surface disks

One of the major problems to be overcome in the development of high-density disk drives was that of keeping the heads on track despite changes of temperature. The very narrow tracks used in digital recording have similar dimensions to the amount a disk will expand as it warms up. The cantilevers and the drive base all expand and contract, conspiring with thermal drift in the cylinder transducer to limit track pitch. The breakthrough in disk density came with the introduction of the servo-surface drive. The position error in a servo-surface drive is derived from a head reading the disk itself. This virtually eliminates thermal effects on head positioning and allows great increases in storage density.

In a multiplatter drive, one surface of the pack holds servo information which is read by the servo head. In a ten-platter pack this means that 5 per cent of the medium area is lost, but this is unimportant since the increase in density allowed is enormous. Using one side of a single-platter cartridge for servo information would be unacceptable as it represents 50 per cent of the medium area, so in this case the servo information can be interleaved with sectors on the data surfaces. This is known as an embedded-servo technique. These two approaches are contrasted in Figure 10.11.

images

Figure 10.11    In a multiplatter disk pack, one surface is dedicated to servo information. In a single platter, the servo information is embedded in the data on the same surfaces.

The servo surface is written at the time of disk pack manufacture, and the disk drive can only read it. Writing the servo surface has nothing to do with disk formatting, which affects the data storage areas only.

The key to the operation of the servo surface is the special magnetic pattern recorded on it. In a typical servo surface, recorded pairs of transitions, known as dibits, are separated by a space. Figure 10.12 shows that there are two kinds of track. On an A track, the first transition of the pair will cause a positive pulse on reading, whereas on a B track, the first pulse will be negative. In addition the A-track dibits are shifted by one half cycle with respect to the B-track dibits. The width of the magnetic circuit in the servo head is equal to the width of a servo track. During track following, the correct position for the servo head is with half of each type of track beneath it. The read/write heads will then be centred on their respective data tracks. Figure 10.13 illustrates this relationship.

images

Figure 10.12    The servo surface is divided into two types of track, A and B, which are out of phase by 180° and are recorded with reverse polarity with respect to one another. Waveform (a) results when the servo head is entirely above a type A track, and waveform (b) results from reading solely a type B track. When the servo head is correctly positioned with one-half of its magnetic circuit over each track, waveform (c) results.

images

Figure 10.13    When the servo head is straddling two servo tracks, the data heads are correctly aligned with their respective tracks.

The amplitude of dibits from A tracks with respect to the amplitude of dibits from B tracks depends on the relative areas of the servo head which are exposed to the respective tracks. As the servo head has only one magnetic circuit, it will generate a composite signal whose components will change differentially as the position of the servo head changes. Figure 10.14 shows several composite waveforms obtained at different positions of the servo head. The composite waveform is processed by using the first positive and negative pulses to generate a clock. From this clock are derived sampling signals which permit only the second positive and second negative pulses to pass. The resultant waveform has a DC component which after filtering gives a voltage proportional to the distance from the centre of the data tracks. The position error reaches a maximum when the servo head is entirely above one type of servo track, and further movement causes it to fall. The next time the position error falls to zero will be at the centreline of the adjacent cylinder.

images

Figure 10.14    Waveforms resulting from several positions of the servo head with respect to the disk. At (a) and (b) are the two components of the waveforms, whose relative amplitudes are controlled by the relative areas of the servo head exposed to the two types of servo track. Because the servo head has only one magnetic circuit, these waveforms are not observed in practice, but are summed together, resulting in the composite waveforms shown at (c). By comparing the magnitudes of the second positive and second negative peaks in the composite waveforms, a position error signal is generated, as shown at (d).

Cylinders with even addresses (LSB = 0) will be those where the servo head is detented between an A track and a B track. Cylinders with odd addresses will be those where the head is between a B track and an A track. It can be seen from Figure 10.14 that the sense of the position error becomes reversed on every other cylinder. Accordingly, an invertor has to be switched into the track-following feedback loop in order to detent on odd cylinders. This inversion is controlled by the LSB of the desired cylinder address supplied at the beginning of a seek, such that the sense of the feedback will be correct when the heads arrive at the target cylinder.

Seeking across the servo surface results in the position-error signal rising and falling in a sawtooth. This waveform can be used to count down the cylinder difference counter which controls the seek. As with any cyclic transducer there is the problem of finding the absolute position. This difficulty is overcome by making all servo tracks outside cylinder 0 type A, and all servo tracks inside the innermost cylinder type B. These areas of identical track are called guard bands, and Figure 10.15 shows the relationship between the position error and the guard bands. During a head load, the servo head generates a constant maximum positive position error in the outer guard band. This drives the carriage forward until the position error first falls to zero. This, by definition, is cylinder zero. Some drives, however, load by driving the heads across the surface until the inner guard band is found, and then perform a full-length reverse seek to cylinder zero.

images

Figure 10.15    The working area of the servo surface is defined by the inner and outer guard bands, in which the position error reaches its maximum value.

10.10 Soft sectoring

It has been seen that a position error and a cylinder count can be derived from the servo surface, eliminating the cylinder transducer. The carriage velocity could also be derived from the slope of the position error, but there would then be no velocity feedback in the guard bands or during retraction, and so some form of velocity transducer is still necessary.

As there are exactly the same number of dibits or tribits on every track, it is possible to describe the rotational position of the disk simply by counting them. All that is needed is a unique pattern of missing dibits once per revolution to act as an index point, and the sector transducer can also be eliminated.

Unlike the read-data circuits, the servo-head circuits are active during a seek as well as when track-following, and have to be protected against interference from switched-mode positioner drivers. The main problem is detecting index, where noise could cause a ‘missing’ dibit to be masked. There are two solutions available: a preamplifier can be built into the servo-head cantilever, or driver switching can be inhibited when index is expected.

The advantage of deriving the sector count from the servo surface is that the number of sectors on the disk can be varied. Any number of sectors can be accommodated by feeding the dibit-rate signal through a programmable divider, so the same disk and drive can be used in numerous different applications.

In a non-servo-surface disk, the write clock is usually derived from a crystal oscillator. As the disk speed can vary owing to supply fluctuations, a tolerance gap has to be left at the end of each block to cater for the highest anticipated speed, to prevent overrun into the next block on a write. In a servo-surface drive, the write clock is obtained by multiplying the dibit-rate signal with a phase-locked loop. The write clock is then always proportional to disk speed, and recording density will be constant.

Most servo-surface drives have an offset facility, where a register written by the controller drives a DAC which injects a small voltage into the track-following loop. The action of the servo is such that the heads move off-track until the position error is equal and opposite to the injected voltage. The position of the heads above the track can thus be program-controlled. Offset is only employed on reading if it is suspected that the pack in the drive has been written by a different drive with non-standard alignment. A write function will cancel the offset.

10.11 Winchester technology

In order to offer extremely high capacity per spindle, which reduces the cost per bit, a disk drive must have very narrow tracks placed close together, and must use very short recorded wavelengths, which implies that the flying height of the heads must be small. The so-called Winchester technology is one approach to high storage density. The technology was developed by IBM, and the name came about because the model number of the development drive was the same as that of the famous rifle.

Reduction in flying height magnifies the problem of providing a contaminant-free environment. A conventional disk is well protected whilst inside the drive, but outside the drive the effects of contamination become intolerable.

In exchangeable-pack drives, there is a real limit to the track pitch that can be achieved because of the difficulty or cost of engineering head-alignment mechanisms to make the necessary minute adjustments to give interchange compatibility.

The essence of Winchester technology is that each disk pack has its own set of read/write and servo heads, with an integral positioner. The whole is protected by a dust-free enclosure, and the unit is referred to as a head disk assembly, or HDA.

As the HDA contains its own heads, compatibility problems do not exist, and no head alignment is necessary or provided for. It is thus possible to reduce track pitch considerably compared with exchangeable pack drives. The sealed environment ensures complete cleanliness which permits a reduction in flying height without loss of reliability, and hence leads to an increased linear density. If the rotational speed is maintained, this can also result in an increase in data transfer rate.

The HDA is completely sealed, but some have a small filtered port to equalize pressure. Into this sealed volume of air, the drive motor delivers the majority of its power output. The resulting heat is dissipated by fins on the HDA casing. Some HDAs are filled with helium which significantly reduces drag and heat build-up.

An exchangeable-pack drive must retract the heads to facilitate pack removal. With Winchester technology this is not necessary. An area of the disk surface is reserved as a landing strip for the heads. The disk surface is lubricated, and the heads are designed to withstand landing and take-off without damage. Winchester heads have very large air-bleed grooves to allow low flying height with a much smaller downthrust from the cantilever, and so they exert less force on the disk surface during contact. When the term parking is used in the context of Winchester technology, it refers to the positioning of the heads over the landing area.

Disk rotation must be started and stopped quickly to minimize the length of time the heads slide over the medium. A powerful motor will accelerate the pack quickly. Eddy-current braking cannot be used, since a power failure would allow the unbraked disk to stop only after a prolonged head-contact period. A failsafe mechanical brake is used, which is applied by a spring and released with a solenoid.

images

Figure 10.16    When more than one head is used per surface, the positioner still only requires one servo head. This is often arranged to be equidistant from the read/write heads for thermal stability.

A major advantage of contact start/stop is that more than one head can be used on each surface if retraction is not needed. This leads to two gains: first, the travel of the positioner is reduced in proportion to the number of heads per surface, reducing access time; and, second, more data can be transferred at a given detented carriage position before a seek to the next cylinder becomes necessary. This increases the speed of long transfers. Figure 10.16 illustrates the relationships of the heads in such a system.

10.12 Servo-surface Winchester drives

With contact start/stop, the servo head is always on the servo surface, and it can be used for all the transducer functions needed by the drive. Figure 10.17 shows the position-error signal during a seek. The signal rises and falls as servo tracks are crossed, and the slope of the signal is proportional to positioner velocity. The position-error signal is differentiated and rectified to give a velocity feedback signal. Owing to the cyclic nature of the position-error signal, the velocity signal derived from it has troughs where the derivative becomes zero at the peaks. These cannot be filtered out, as the signal is in a servo loop, and the filter would introduce an additional lag. The troughs would, however, be interpreted by the servo driver as massive momentary velocity errors which might overload the amplifier. The solution which can be adopted is to use a signal obtained by integrating the positioner-motor current which is selected when there is a trough in the differentiated position-error signal.

images

Figure 10.17    To generate a velocity signal, the position error from the servo head is differentiated and rectified.

In order to make velocity feedback available over the entire servo surface, the conventional guard-band approach cannot be used since it results in steady position errors in the guard bands. In contact start/stop drives, the servo head must be capable of detenting in a guard band for the purpose of landing on shutdown.

A modification to the usual servo surface is used in Winchester drives, one implementation of which is shown in Figure 10.18, where it will be seen that there are extra transitions, identical in both types of track, along with the familiar dibits. The repeating set of transitions is known as a frame, in which the first dibit is used for synchronization, and a phase-locked oscillator is made to run at a multiple of the sync signal rate. The PLO is used as a reference for the write clock, as well as to generate sampling pulses to extract a position error from the composite waveform and to provide a window for the second dibit in the frame, which may or may not be present. Each frame thus contains one data bit, and succesive frames are read to build up a pattern in a shift register. The parallel output of the shift register is examined by a decoder which recognizes a number of unique patterns. In the guard bands, the decoder will repeatedly recognize the guard band code as the disk revolves. An index is generated in the same way, by recognizing a different pattern. In a contact start/stop drive, the frequency of index detection is used to monitor pack speed in order to dispense with a separate transducer. This does mean, however, that it must be possible to detect index everywhere, and for this reason, index is still recorded in the guard bands by replacing the guard-band code with index code once per revolution.

A consequence of deriving velocity information from the servo surface is that the location of cylinder zero is made more difficult, as there is no longer a continuous maximum position error in the guard band. A common solution is to adopt a much smaller area of continuous position error known as a reference gap; this is typically three servo tracks wide. In the reference gap and for several tracks outside it, there is an unique reference gap code recorded in the frame-data bits. Figure 10.19 shows the position error which is generated as the positioner crosses this area of the disk, and shows the plateau in the position-error signal due to the reference gap. During head loading, which in this context means positioning from the parking area to cylinder zero, the heads move slowly inwards. When the reference code is detected, positioner velocity is reduced, and the position error is sampled. When successive position-error samples are the same, the head must be on the position-error plateau, and if the servo is put into track-following mode, it will automatically detent on cylinder zero, since this is the first place that the position error falls to zero.

images

Figure 10.18    This type of servo surface pattern has a second pulse which may be omitted to act as a data bit. This is used to detect the guard bands and index.

images

Figure 10.19    (a) Conventional guard band. (b) Winchester guard band, showing the plateau in the position error, known as the reference gap, which is used to locate cylinder 0.

10.13 Rotary positioners

Figure 10.20 shows that rotary positioners are feasible in Winchester drives; they cannot be used in exchangeable-pack drives because of interchange problems. There are some advantages to a rotary positioner. It can be placed in the corner of a compact HDA allowing smaller overall size. The manufacturing cost will be less than a linear positioner because fewer bearings and precision bars are needed. Significantly, a rotary positioner can be made faster since its inertia is smaller. With a linear positioner all parts move at the same speed. In a rotary positioner, only the heads move at full speed, as the parts closer to the shaft must move more slowly. Figure 10.21 shows a typical HDA with a rotary positioner. The principle of many rotary positioners is exactly that of a moving-coil ammeter, where current is converted directly into torque. Alternatively various configurations of electric motor or stepping motor can be used with band or wire drive.

images

Figure 10.20    A rotary positioner with two heads per surface. The tolerances involved in the spacing between the heads and the axis of rotation mean that each arm records data in a unique position. Those data can only be read back by the same heads, which rules out the use of a rotary positioner in exchangeable-pack drives. In a head disk assembly the problem of compatibility does not arise.

images

Figure 10.21    Head disk assembly with a rotary positioner. The adoption of this technique allows a very compact structure.

One disadvantage of rotary positioners is that there is a component of windage on the heads which tends to pull the positioner in towards the spindle. In linear positioners windage is at right angles to motion and can be neglected. Windage can be overcome in rotary positioners by feeding the current cylinder address to a ROM which sends a code to a DAC. This produces an offset voltage which is fed to the positioner driver to generate a torque which balances the windage whatever the position of the heads.

When extremely small track spacing is contemplated, it cannot be assumed that all the heads will track the servo head due to temperature gradients. In this case the embedded-servo approach must be used, where each head has its own alignment patterns. The servo surface is often retained in such drives to allow coarse positioning, velocity feedback and index and write-clock generation, in addition to locating the guard bands for landing the heads.

Winchester drives have been made with massive capacity, but the problem of backup is then magnified, and the general trend has been for the physical size of the drive to come down as the storage density increases in order to improve access time. Very small Winchester disk drives are now available which plug into standard integrated circuit sockets. These are competing with RAM for memory applications where non-volatility is important.

10.14 Floppy disks

Floppy disks are the result of a search for a fast yet cheap non-volatile memory for the programmable control store of a processor under development at IBM in the late 1960s. Both magnetic tape and hard disk were ruled out on grounds of cost since only intermittent duty was required. The device designed to fulfil these requirements – the floppy disk drive – incorporated both magnetic-tape and disk technologies.

The floppy concept was so cost-effective that it transcended its original application to become a standard in industry as an online data-storage device. The original floppy disk, or diskette as it is sometimes called, was 8 inches in diameter, but a 5¼-inch diameter disk was launched to suit more compact applications. More recently Sony introduced the 3½-inch floppy disk which has a rigid shell with sliding covers over the head access holes to reduce the likelihood of contamination.

Strictly speaking, the floppy is a disk, since it rotates and repeatedly presents the data on any track to the heads, and it has a positioner to give fast two-dimensional access, but it also resembles a tape drive in that the magnetic medium is carried on a flexible substrate which deforms when the read/write head is pressed against it.

Floppy disks are stamped from wide, thick tape, and are anisotropic, because the oxide becomes oriented during manufacture. On many disks this can be seen by the eye as parallel striations on the disk surface. A more serious symptom is the presence of sinusoidal amplitude modulation of the replay signal at twice the rotational frequency of the disk, as illustrated in Figure 10.22.

Floppy disks have radial apertures in their protective envelopes to allow access by the head. A further aperture allows a photoelectric index sensor to detect a small hole in the disk once per revolution.

Figure 10.23 shows that the disk is inserted into the drive edge-first, and slides between an upper and a lower hub assembly. One of these has a fixed bearing which transmits the drive; the other is spring-loaded and mates with the drive hub when the door is closed, causing the disk to be centred and gripped firmly. The moving hub is usually tapered to assist centring. To avoid frictional heating and prolong life, the spindle speed is restricted when compared with that of hard disks. Recent drives almost univerally use direct-drive brushless DC motors. Since the rotational latency is so great, there is little point in providing a fast positioner, and the use of leadscrews driven by a stepping motor is universal. The permanent magnets in the stepping motor provide the necessary detenting, and to seek it is only necessary to provide a suitable number of drive pulses to the motor. As the drive is incremental, some form of reference is needed to determine the position of cylinder zero. At the rearward limit of carriage travel, a light beam is interrupted which resets the cylinder count. Upon power-up, the drive has to reverse-seek until this limit is found in order to calibrate the positioner. The grinding noise this makes is a characteristic of most PCs on power-up.

images

Figure 10.22    Sinusoidal amplitude modulation of floppy disk output due to anisotropy of medium.

images

Figure 10.23    The mechanism of a floppy disk drive.

One of the less endearing features of plastics materials is a lack of dimensional stability. Temperature and humidity changes affect plastics much more than metals. The effect on the anisotropic disk substrate is to distort the circular tracks into a shape resembling a dog bone. For this reason, the track width and pitch have to be generous.

The read/write head of a single-sided floppy disk operates on the lower surface only, and is rigidly fixed to the carriage. Contact with the medium is achieved with the help of a spring-loaded pressure pad applied to the top surface of the disk opposite the head. Early drives retracted the pressure pad with a solenoid when not actually transferring data; later drives simply stop the disk. In double-sided drives, the pressure pad is replaced by a second sprung head.

Because of the indifferent stability of the medium, side trim or tunnel erasing is used, because it can withstand considerable misregistration. Figure 10.24 shows the construction of a typical side-trimming head, which has erase poles at each side of the magnetic circuit. When such a head writes, the erase poles are energized, and erase a narrow strip of the disk either side of the new data track. If the recording is made with misregistration, the side-trim prevents traces of the previous recording from being played back as well (Figure 10.25).

As the floppy-disk drive was originally intended to be a low-cost item, simple channel codes were used. Early drives used FM and double-density drives used MFM, but RLL codes were adopted later to further increase performance. As the recording density becomes higher at the inner tracks, the write current is sometimes programmed to reduce with inward positioner travel.

images

Figure 10.24    The poor dimensional stability of the plastic diskette means that tunnel erase or side trim has to be used. The extra erase poles can be seen here.

images

Figure 10.25    The effect of side trim is to prevent the traces of a previous recording from interfering with the latest recording: (a) without side trim; (b) with side trim.

The capacity of floppy disks is of the order of a few megabytes. This virtually precludes their use for digital audio recording except in conjunction with samplers. However, floppy disks find almost universal application in edit-list storage, console set-up storage, and as a software-loading medium for computer-based equipment where the sheer capacity of CDROM is not necessary.

10.15 Error handling

The protection of data recorded on disks differs considerably from the approach used on other media in digital audio. This has much to do with the traditional intolerance of data processors to errors when compared with audio. In particular, it is not possible to interpolate to conceal errors in a computer program or a data file.

In the same way that magnetic tape is subject to dropouts, magnetic disks suffer from surface defects whose effect is to corrupt data. The shorter wavelengths employed as disk densities increase are affected more by a given size of defect. Attempting to make a perfect disk is subject to a law of diminishing returns, and eventually a state is reached where it becomes more cost-effective to invest in a defect-handling system.

There are four main methods of handling media defects in magnetic media, and further techniques needed in WORM laser disks (see Chapter 12), whose common goal is to make their presence transparent to the data. These methods vary in complexity and cost of implementation, and can often be combined in a particular system.

In the construction of bad-block files, a brand new disk is tested by the operating system. Known patterns are written everywhere on the disk, and these are read back and verified. Following this the system gives the disk a volume name, and creates on it a directory structure which keeps records of the position and size of every file subsequently written. The physical disk address of every block which fails to verify is allocated to a file which has an entry in the disk directory. In this way, when genuine data files come to be written, the bad blocks appear to the system to be in use storing a fictitious file, and no attempt will be made to write there. Some disks have dedicated tracks where defect information can be written during manufacture or by subsequent verification programs, and these permit a speedy construction of the system bad-block file.

In association with the bad-block file, many drives allocate bits in each header to indicate that the associated block is bad. If a data transfer is attempted at such a block, the presence of these bits causes the function to be aborted. The bad-block file system gives very reliable protection against defects, but can result in a lot of disk space being wasted. Systems often use several disk blocks to store convenient units of data called clusters, which will all be written or read together. Figure 10.26 shows how a bit map is searched to find free space, and illustrates how the presence of one bad block can write off a whole cluster.

In sector skipping, space is made at the end of every track for a spare data block, which is not normally accessible to the system. Where a track is found to contain a defect, the affected block becomes a skip sector. In this block, the regular defect flags will be set, but in addition, a bit known as the skip-sector flag is set in this and every subsequent block in the track. When the skip-sector flag is encountered, the effect is to add one to the desired sector address for the rest of the track, as in Figure 10.27. In this way the bad block is unused, and the track format following the bad block is effectively slid along by one block to bring into use the spare block at the end of the track. Using this approach, the presence of single bad blocks does not cause the loss of clusters, but requires slightly greater control complexity. If two bad blocks exist in a track, the second will be added to the bad-block file as usual.

images

Figure 10.26    A disk-block-usage bit map in 16 bit memory for a cluster size of 11 blocks. Before writing on the disk, the system searches the bit map for contiguous free space equal to or larger than the cluster size. The first available space is unusable because the presence of a bad block B destroys the contiguity of the cluster. Thus one bad block causes the loss of a cluster.

images

Figure 10.27    Skip sectoring. The bad block in this example has a physical sector address of 28. By setting the skip-sector flags in the header, this and subsequent logical blocks have one added to their sector addresses, and the spare block is brought into use.

The two techniques described so far have treated the block as the smallest element. In practice, the effect of a typical defect is to corrupt only a few bytes. The principle of defect skipping is that media defects can be skipped over within the block so that a block containing a defect is made usable. The header of each block contains the location of the first defect in bytes away from the end of the header, and the number of bytes from the first defect to the second defect, and so on up to the maximum of four shown in the example of Figure 10.28. Each defect is overwritten with a fixed number of bytes of preamble code and a sync pattern. The skip is positioned so that there is sufficient undamaged preamble after the defect for the data separator to regain lock. Each defect lengthens the block, causing the format of the track to slip round. A space is left at the end of each track to allow a reasonable number of skips to be accommodated. Often a track descriptor is written at the beginning of each track which contains the physical position of defects relative to index. The disk format needed for a particular system can then be rapidly arrived at by reading the descriptor, and translating the physical defect locations into locations relative to the chosen sector format. Figure 10.29 shows how a soft-sectoring drive can have two different formats around the same defects using this principle.

images

Figure 10.28    Defect skipping. (a) A block containing three defects. The header contains up to four parameters which specify how much data is to be written before each skip. In this example only three entries are needed. (b) An error-free block for comparison with (a); the presence of the skips lengthens the block. To allow for this lengthening, the track contains spare space at the end, as shown in (c), which is an error-free track. (d) A track containing the maximum of four skips, which have caused the spare space to be used up.

images

Figure 10.29    The purpose of the track descriptor record (TDR) is to keep a record of defects independent of disk format. The positions of the defects stored in the TDR (a) are used by the formatter to establish the positions relative to the format used. With the format (b), the first defect appears in sector 5, but the same defect would be in sector 4 for format (c). The second defect falls where a header would be written in (b) so the header is displaced for sector 10. The same defect falls in the data area of sector 8 in (c).

In the case where there are too many defects in a track for the skipping to handle, the system bad-block file will be used. This is rarely necessary in practice, and the disk appears to be contiguous error-free logical and physical space. Defect skipping requires fast processing to deal with events in real time as the disk rotates. Bit-slice microsequencers are one approach, as a typical microprocessor would be too slow.

A refinement of sector skipping which permits the handling of more than one bad block per track without the loss of a cluster is revectoring. A bad block caused by a surface defect may only have a few defective bytes, so it is possible to record highly redundant information in the bad block. On a revectored disk, a bad block will contain in the data area repeated records pointing to the address where data displaced by the defect can be found. The spare block at the end of the track will be the first such place, and can be read within the same disk revolution, but out of sequence, which puts extra demands on the controller. In the less frequent case of more than one defect in a track, the second and subsequent bad blocks revector to spare blocks available in an area dedicated to that purpose. The principle is illustrated in Figure 10.30. In this case a seek will be necessary to locate the replacement block. The low probability of this means that access time is not significantly affected.

These steps are the first line of defence against errors in disk drives, and serve to ensure that, by and large, the errors due to obvious surface defects are eliminated. There are other error mechanisms in action, such as noise and jitter, which can result in random errors, and it is necessary to protect disk data against these also. The error-correction mechanisms described in Chapter 7 will be employed. In general each data block is made into a codeword by the addition of redundancy at the end. The error-correcting code used in disks was, for a long time, Fire code, because it allowed correction with the minimum circuit complexity. It could, however, only correct one error burst per block, and it had a probability of miscorrection which was marginal for some applications. The advances in complex logic chips meant that the adoption of a Reed–Solomon code was a logical step, since these have the ability to correct multiple error bursts. As the larger burst errors in disk drives are taken care of by verifying the medium, interleaving in the error-correction sense is not generally needed. When interleaving is used in the context of disks, it usually means that the sectors along a track are interleaved so that reading them in numerical order requires two revolutions. This will slow down the data transfer rate where the drive is too fast for the associated circuitry.

images

Figure 10.30    Revectoring. The first bad block in each track is revectored to the spare block at the end of the track. Unlike skip sectoring, subsequent good blocks are unaffected, and the replacement block is read out of sequence. The second bad block on any one track is revectored to one of a number of spare tracks kept on the disk for this purpose.

In some systems, the occurrence of errors is monitored to see if they are truly random, or if an error persistently occurs in the same physical block. If this is the case, and the error is small, and well within the correction power of the code, the block will continue in use. If, however, the error is larger than some threshold, the data will be read, corrected and rewritten elsewhere, and the block will then be added to the bad-block file so that it will not be used again.

10.16 RAID arrays

Whilst the MTBF of a disk drive is very high, it is a simple matter of statistics that when a large number of drives is assembled in a system the time between failures becomes shorter. Winchester drives are sealed units and the disks cannot be removed if there is an electronic failure. Even if this were possible the system cannot usually afford downtime whilst such a data recovery takes place.

Consequently any system in which the data are valuable must take steps to ensure data integrity. This is commonly done using RAID (redundant array of inexpensive disks) technology. Figure 10.31 shows that in a RAID array data blocks are spread across a number of drives.

An error-correcting check symbol (typically Reed–Solomon) is stored on a redundant drive. The error correction is powerful enough to fully correct any error in the block due to a single failed drive. In RAID arrays the drives are designed to be hot-plugged (replaced without removing power) so if a drive fails it is simply physically replaced with a new one. The error-correction system will rewrite the drive with the data which was lost with the failed unit.

When a large number of disk drives are arrayed together, it is necessary and desirable to spread files across all the drives in a RAID array. Whilst this ensures data integrity, it also means that the data transfer rate is multiplied by the number of drives sharing the data. This means that the data transfer rate can be extremely high and new approaches are necessary to move the data in and out of the disk system.

images

Figure 10.31    In RAID technology, data and redundancy are spread over a number of drives (a). In the case of a drive failure (b) the error-correction system can correct for the loss and continue operation. When the drive is replaced (c) the data can be rewritten so that the system can then survive a further failure.

10.17 The disk controller

A disk controller is a unit which is interposed between the drives and the rest of the system. It consists of two main parts; that which issues control signals to and obtains status from the drives, and that which handles the data to be stored and retrieved. Both parts are synchronized by the control sequencer. The essentials of a disk controller are determined by the characteristics of drives and the functions needed, and so they do not vary greatly. For digital audio use, it is desirable for economic reasons to use a commercially available disk controller intended for computers. Disk drives are generally built to interface to a standard controller interface, such as the SCSI bus.

The execution of a function by a disk subsystem requires a complex series of steps, and decisions must be made between the steps to decide what the next will be. There is a parallel with computation, where the function is the equivalent of an instruction, and the sequencer steps needed are the equivalent of the microinstructions needed to execute the instruction. The major failing in this analogy is that the sequence in a disk drive must be accurately synchronized to the rotation of the disk.

Most disk controllers use direct memory access, which means that they have the ability to transfer disk data in and out of the associated memory without the assistance of the processor. In order to cause an audio-file transfer, the disk controller must be told the physical disk address (cylinder, sector, track), the physical memory address where the audio file begins, the size of the file and the direction of transfer (read or write). The controller will then position the disk heads, address the memory, and transfer the samples. One disk transfer may consist of many contiguous disk blocks, and the controller will automatically increment the disk-address registers as each block is completed. As the disk turns, the sector address increases until the end of the track is reached. The track or head address will then be incremented and the sector address reset so that transfer continues at the beginning of the next track. This process continues until all the heads have been used in turn. In this case both the head address and sector address will be reset, and the cylinder address will be incremented, which causes a seek. A seek which takes place because of a data transfer is called an implied seek, because it is not necessary formally to instruct the system to perform it. As disk drives are block-structured devices, and the error correction is codeword-based, the controller will always complete a block even if the size of the file is less than a whole number of blocks. This is done by packing the last block with zeros.

The status system allows the controller to find out about the operation of the drive, both as a feedback mechanism for the control process and to handle any errors. Upon completion of a function, it is the status system which interrupts the control processor to tell it that another function can be undertaken.

In a system where there are several drives connected to the controller via a common bus, it is possible for non-data-transfer functions such as seeks to take place in some drives simultaneously with a data transfer in another.

Before a data transfer can take place, the selected drive must physically access the desired block, and confirm this by reading the block header. Following a seek to the required cylinder, the positioner will confirm that the heads are on-track and settled. The desired head will be selected, and then a search for the correct sector begins. This is done by comparing the desired sector with the current sector register, which is typically incremented by dividing down servo-surface pulses. When the two counts are equal, the head is about to enter the desired block. Figure 10.32 shows the structure of a typical disk track. In between blocks are placed address marks, which are areas without transitions which the read circuits can detect. Following detection of the address mark, the sequencer is roughly synchronized to begin handling the block. As the block is entered, the data separator locks to the preamble, and in due course the sync pattern will be found. This sets to zero a counter which divides the data-bit rate by eight, allowing the serial recording to be correctly assembled into bytes, and also allowing the sequencer to count the position of the head through the block in order to perform all the necessary steps at the right time.

images

Figure 10.32    The format of a typical disk block related to the count process which is used to establish where in the block the head is at any time. During a read the count is derived from the actual data read, but during a write, the count is derived from the write clock.

The first header word is usually the cylinder address, and this is compared with the contents of the desired cylinder register. The second header word will contain the sector and track address of the block, and these will also be compared with the desired addresses. There may also be bad-block flags and/or defect-skipping information. At the end of the header is a CRCC which will be used to ensure that the header was read correctly. Figure 10.33 shows a flowchart of the position verification, after which a data transfer can proceed. The header reading is completely automatic. The only time it is necessary formally to command a header to be read is when checking that a disk has been formatted correctly.

During the read of a data block, the sequencer is employed again. The sync pattern at the beginning of the data is detected as before, following which the actual data arrive. These bits are converted to byte or sample parallel, and sent to the memory by DMA. When the sequencer has counted the last data-byte off the track, the redundancy for the error-correction system will be following.

During a write function, the header-check function will also take place as it is perhaps even more important not to write in the wrong place on a disk. Once the header has been checked and found to be correct, the write process for the associated data block can begin. The preambles, sync pattern, data block, redundancy and postamble have all to be written contiguously. This is taken care of by the sequencer, which is obtaining timing information from the servo surface to lock the block structure to the angular position of the disk. This should be contrasted with the read function, where the timing comes directly from the data.

images

Figure 10.33    The vital process of position confirmation is carried out in accordance with the above flowchart. The appropriate words from the header are compared in turn with the contents of the disk-address registers in the subsystem. Only if the correct header has been found and read properly will the data transfer take place.

10.18 Digital audio disk systems

In order to use disk drives for the storage of audio samples, a system like the one shown in Figure 10.34 is needed. The control computer determines where and when samples will be stored and retrieved, and sends instructions to the disk controller which causes the drives to read or write, and transfers samples between them and the memory. The instantaneous data rate of a typical drive is roughly ten times higher than the sampling rate, and this may result in the system data bus becoming choked by the disk transfers so other transactions are locked out. This is avoided by giving the disk controller DMA system a lower priority for bus access so that other devices can use the bus. A rapidly spinning disk cannot wait, and in order to prevent data loss, a silo or FIFO memory is necessary in the disk controller.1 The operation of these devices was described in Chapter 3. A silo will be interposed in the disk controller data stream in the fashion shown in Figure 10.35 so that it can buffer data both to and from the disk. When reading the disk, the silo starts empty, and if there is bus contention, the silo will start to fill as shown in Figure 10.36(a). Where the bus is free, the disk controller will attempt to empty the silo into the memory. The system can take advantage of the interblock gaps on the disk, containing headers, preambles and redundancy, for in these areas there are no data to transfer, and there is some breathing space to empty the silo before the next block. In practice the silo need not be empty at the start of every block, provided it never becomes full before the end of the transfer. If this happens some data are lost and the function must be aborted. The block containing the silo overflow will generally be reread on the next revolution. In sophisticated systems, the silo has a kind of dipstick which indicates how far up the V bit is set, and can interrupt the CPU if the data get too deep. The CPU can then suspend some bus activity to allow the disk controller more time to empty the silo.

images

Figure 10.34    The main parts of a digital audio disk system. Memory and FIFO allow continuous audio despite the movement of disk heads between blocks.

images

Figure 10.35    In order to guarantee that the drive can transfer data in real time at regular intervals (determined by disk speed and density) the silo provides buffering to the asynchronous operation of the memory access process. In (a) the silo is configured for a disk read. The same silo is used in (b) for a disk write.

When the disk is to be written, a continuous data stream must be provided during each block, as the disk cannot stop. The silo will be prefilled before the disk attempts to write as shown in Figure 10.36(b), and the disk controller attempts to keep it full. In this case all will be well if the silo does not become empty before the end of the transfer.

images

Figure 10.36    The silo contents during read functions (a) appear different from those during write functions (b). In (a), the control logic attempts to keep the silo as empty as possible; in (b) the logic prefills the silo and attempts to keep it full until the memory word count overflows.

The disk controller cannot supply samples at a constant rate, because of gaps between blocks, defective blocks and the need to move the heads from one track to another and because of system bus contention. In order to accept a steady audio sample stream for storage, and to return it in the same way on replay, hard disk-based audio recorders must have a quantity of RAM for buffering. Then there is time for the positioner to move whilst the audio output is supplied from the RAM. In replay, the drive controller attempts to keep the RAM as full as possible by issuing a read command as soon as one block space appears in the RAM. This allows the maximum time for a seek to take place before reading must resume. Figure 10.37 shows the action of the RAM during reading. Whilst recording, the drive controller attempts to keep the RAM as empty as possible by issuing write commands as soon as a block of data is present, as in Figure 10.38. In this way the amount of time available to seek is maximized in the presence of a continuous audio sample input.

images

Figure 10.37    During an audio replay sequence, silo is constantly emptied to provide samples, and is refilled in blocks by the drive.

images

Figure 10.38    During audio recording, the input samples constantly fill the silo, and the drive attempts to keep it empty by reading from it.

10.19 Arranging the audio data on disk

When playing a tape recording or a disk having a spiral track, it is only necessary to start in the right place and the data are automatically retrieved in the right order. Such media are also driven at a speed which is proportional to the sampling rate. In contrast, a hard disk has a discontinuous recording and acts more like a RAM in that it must be addressed before data can be retrieved. The rotational speed of the disk is constant and not locked to anything. A vital step in converting a disk drive into an audio recorder is to establish a link between the time through the recording and the location of the data on the disk.

When audio samples are fed into a disk-based system, from an AES/ EBU interface or from a convertor, they will be placed initially in RAM, from which the disk controller will read them by DMA. The continuous-input sample stream will be split up into disk blocks for disk storage. The AES/EBU interface carries a timecode in the channel status data, and this timecode, or that from a local generator, will be used to assemble a table which contains a conversion from real time in the recording to the physical disk address of the corresponding audio files. As an alternative, an interface may be supplied which allows conventional SMPTE or EBU timecode to be input. Wherever possible, the disk controller will allocate incoming audio samples to contiguous disk addresses, since this eases the conversion from timecode to physical address.2 This is not, however, always possible in the presence of defective blocks, or if the disk has become chequerboarded from repeated rerecording.

The table of disk addresses will also be made into a named disk file and stored in an index which will be in a different area of the disk from the audio files. Several recordings may be fed into the system in this way, and each will have an entry in the index.

If it is desired to play back one or more of the recordings, then it is only necessary to specify the starting timecode and the filename. The system will look up the index file in order to locate the physical address of the first and subsequent sample blocks in the desired recording, and will begin to read them from disk and write them into the RAM. Once the RAM is full, the real-time replay can begin by sending samples from RAM to the output or to local convertors. The sampling rate clock increments the RAM address and the timecode counter. Whenever a new timecode frame is reached, the corresponding disk address can be obtained from the index table, and the disk drive will read a block in order to keep the RAM topped up.

The disk transfers must by definition take varying times to complete because of the rotational latency of the disk. Once all the sectors on a particular cylinder have been read, it will be necessary to seek to the next cylinder, which will cause a further extension of the reading sequence. If a bad block is encountered, the sequence will be interrupted until it has passed. The RAM buffering is sufficient to absorb all these access time variations. Thus the RAM acts as a delay between the disk transfers and the sound which is heard. A corresponding advance is arranged in timecodes fed to the disk controller. In effect the actual timecode has a constant added to it so that the disk is told to obtain blocks of samples in advance of real time. The disk takes a varying time to obtain the samples, and the RAM then further delays them to the correct timing. Effectively the disk/RAM subsystem is a timecode-controlled memory. One need only put in the time and out comes the audio corresponding to that time. This is the characteristic of an audio synchronizer. In most audio equipment the synchronizer is extra; the hard disk needs one to work at all, and so every hard disk comes with a free synchronizer. This makes disk-based systems very flexible as they can be made to lock to almost any reference and care little what sampling rate is used or if it varies. They perform well locked to videotape or film via timecode because no matter how the pictures are shuttled or edited, the timecode link always produces the correct sound to go with the pictures.

A multitrack recording can be stored on a single disk and, for replay, the drive will access the files for each track faster than real time so that they all become present in the memory simultaneously. It is not, however, compulsory to play back the tracks in their original time relationship. For the purpose of synchronization,3 or other effects, the tracks can be played with any time relationship desired, a feature not possible with multitrack tape drives.

In order to edit the raw audio files fed into the system, it is necessary to listen to them in order to locate the edit points. This can be done by playback of the whole file at normal speed if time is no object, but this neglects the random access capability of a disk-based system. If an event list has been made at the time of the recordings, it can be used to access any part of them within a few tens of milliseconds, which is the time taken for the heads to traverse the entire disk surface. This is far superior to the slow spooling speed of tape recorders.

10.20 Spooling files

If an event list is not available, it will be necesary to run through the recording at a raised speed in order rapidly to locate the area of the desired edit. If the disk can access fast enough, an increase of up to ten times normal speed can be achieved simply by raising the sampling-rate clock, so that the timecode advances more rapidly, and new data blocks are requested from the disk more rapidly. If a constant sampling-rate output is needed, then rate reduction via a digital filter will be necessary.4,5 Some systems have sophisticated signal processors which allow pitch changing, so that files can be played at non-standard speed but with normal pitch or vice versa.6 If higher speeds are required, an alternative approach to processing on playback only is to record spooling files7 at the same time as an audio file is made. A spooling file block contains a sampling-rate-reduced version of several contiguous audio blocks. When played at standard sampling rate, it will sound as if it is playing faster by the factor of rate reduction employed. The spooling files can be accessed less often for a given playback speed, or higher speed is possible within a given access-rate constraint.

Once the rough area of the edit has been located by spooling, the audio files from that area can be played to locate the edit point more accurately. It is often not sufficiently accurate to mark edit points on the fly by listening to the sound at normal speed. In order to simulate the rock-and-roll action of edit-point location in an analog tape recorder, audio blocks in the area of the edit point can be transferred to memory and accessed at variable speed and in either direction by deriving the memory addresses from a hand-turned rotor. A description of this process is included in the next chapter where digital audio editing is discussed.

10.21 Broadcast applications

In a radio broadcast environment it is possible to contain all the commercials and jingles in daily use on a disk system thus eliminating the doubtful quality of analog cartridge machines.8 Disk files can be cued almost instantly by specifying the file name of the wanted piece, and once RAM resident play instantly they are required. Adding extra output modules means that several audio files can be played back simultaneously if a station broadcasts on more than one channel. If a commercial break contains several different spots, these can be chosen at short notice just by producing a new edit list.

10.22 Sampling rate and playing time

The bit rate of a digital audio system is such that high-density recording is mandatory for long playing time. A disk drive can never reach the density of a rotary-head tape machine because it is optimized for fast random access, but the performance of all types of data recorders has advanced so rapidly that disk drive capacity is no longer an issue in digital audio applications.

One high-quality digital audio channel requires nearly a megabit per second, which means that a gigabyte of storage (the usual unit for disk measurement) offers about three hours of monophonic audio. There is, however, no compulsion to devote the whole disk to one audio channel, and so in one gigabyte of storage, two channels could be recorded for 90 min, or four channels for 45 min and so on. For broadcast applications, where an audio bandwidth of 15 kHz is imposed by the FM stereo transmission standard, the alternative sampling rate of 32 kHz can be used, which allows about four hours of monophonic digital audio per gigabyte. Where only speech is required, an even lower rate can be employed. Compression can also be used to obtain greater playing time, but with the penalty of loss of quality.

In practice, multitrack working with disks is better than these calculations would indicate, because on a typical multitrack master tape, all tracks are not recorded continuously. Some tracks will contain only short recordings in a much longer overall session. A tape machine has no option but to leave these tracks unrecorded either side of the wanted recording, whereas a disk system will only store the actual wanted samples. The playing time in a real application will thus be greater than expected.

A further consideration is that hard disks systems do not need to edit the actual data files on disk. The editing is performed in the memory of the control system and is repeated dynamically under the control of an EDL (edit decision list) each time the edited work is required. Thus a lengthy editing session on a hard disk system does not result in the disk becoming fuller as only a few bytes of EDL are generated.

References

1. Ingbretsen, R.B. and Stockham, T.G., Random access editing of digital audio. J. Audio Eng. Soc., 32, 114–122 (1982)
2. McNally, G.W., Gaskell, P.S. and Stirling, A.J., Digital audio editing. BBC Research Dept Report, RD 1985/10
3. McNally, G.W., Bloom, P.J. and Rose, N.J., A digital signal processing system for automatic dialogue post-synchronisation. Presented at the 82nd Audio Engineering Society Convention (London, 1987), Preprint 2476(K-6)
4. McNally, G.W., Varispeed replay of digital audio with constant output sampling rate. Presented at the 76th Audio Engineering Society Convention (New York, 1984), Preprint 2137(A-9)
5. Gaskell, P.S., A hybrid approach to the variable speed replay of audio. Presented at the 77th Audio Engineering Society Convention (Hamburg, 1985), Preprint 2202(B-1)
6. Gray, E., The Synclavier digital audio system: recent developments in audio post production. Int. Broadcast Eng., 18, 55 (March 1987)
7. McNally, G.W., Fast edit-point location and cueing in disk-based digital audio editing. Presented at the 78th Audio Engineering Society Convention (Anaheim, 1985), Preprint 2232(D-10)
8. Itoh, T., Ohta, T. and Sohma, Y., Real time transmission system of commercial messages in radio broadcasting. Presented at the 67th Audio Engineering Society Convention (New York, 1980), Preprint 1682(H-1)
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset