Frequency modulation encoding

Last updated

The Atari 810 was typical of FM-based floppy drives of the early 1980s home computer era. TCMI Atari810 front.jpg
The Atari 810 was typical of FM-based floppy drives of the early 1980s home computer era.

Frequency modulation encoding, or simply FM, is a method of storing data that saw widespread use in early floppy disk drives and hard disk drives. The data is modified using differential Manchester encoding when written to allow clock recovery to address timing effects known as "jitter" seen on disk media. It was introduced on IBM mainframe drives and was almost universal among early minicomputer and microcomputer floppies. In the case of floppies, FM encoding allowed about 80 kB of data to be stored on a 5+14-inch disk.

Contents

IBM began introducing the more efficient modified frequency modulation, or MFM, starting in 1970. They referred to this format as "double density", with the original FM retroactively becoming "single density". MFM was more difficult to implement and it was not until the early 1980s that low-cost all-in-one MFM floppy drive controllers like the WD1770 emerged. This led to the rapid demise of FM encoding in favor of MFM by the mid-1980s.

Underlying storage mechanism

Main memory systems in modern computers store binary information using two different electrical signals, typically voltages. In DRAM for instance, the presence of a voltage over a certain threshold represents a binary one, while any voltage below that value represents a zero. The letter "A" in ASCII is represented as 01000001 in binary, which might be stored in a typical late-1970s DRAM like the Mostek MK4116 as a series of 0 and 5 V voltages in the individual capacitors making up the memory. [1]

In contrast, magnetic recording systems like floppy disks record this data as a change in magnetic polarity. This is due to the way the data is read and written, using magnetic induction. During reading, the disk is rotating so its surface moves rapidly past the read/write head, a small electromagnet. When the polarity of the magnetic charge on the disk changes, a brief pulse of electricity is induced in the head which is read as a one, any section where the polarity does not change produces a zero. [2] To encode the same letter A, assuming the previous data ended with a zero, a disk would use 01111110. The first zero-to-one transition causes a 1 to be output, the stream of ones following causes no output, and finally the last one-to-zero creates the final 1. [3]

In addition to the data being stored in patterns that require on-the-fly conversion to and from their internal format, the disk faces additional problems associated with being an analog system – noise, mechanical effects and other issues. In particular, disks suffer from an effect known as jitter due to small changes in timing as the media speeds up and slows down during rotation. One form of unavoidable jitter is due to the hysteresis of the magnetic media, which can lead to an effect known as bit shift that causes the strings of magnetic transition to be stretched out in time. These effects make it difficult to know which bit a particular transition belongs to. [3]

To address this problem, disks use some form of clock recovery using additional signals written to the disk. When the data is read, the clock signal is separated out and data bits can then be clearly seen in the signal and be cleanly lined up into the appropriate slots in memory. [3]

Encoding

FM encoding uses a simple system to encode the original data in such a way that every bit of data will contain at least one transition, ensuring there are enough transitions during a given period for a successful clock recovery. To do this, it operates with a basic data period twice that of the maximum frequency of the recording media. These are known as "clock windows", with up to one clock transition and one data transition per window. Since each bit of data requires two minimum times, FM encoding stores about half the amount that is theoretically possible on that media. [3]

FM uses an implementation of the differential Manchester encoding. A zero in the original data is encoded by a single magnetic flux transition during the period, and ones are encoded as two transitions. For instance, if a byte of data from the original system contains the bits 01000001, the floppy disk controller will translate this into the series 1011101010101011, inserting additional signals in front of every bit to represent the clock. When this signal is then sent to the read/write head, the polarity will be flipped every time there is a pulse. In this example, if the head was originally in the low state at the end of writing the last data, the leading 1 will flip it to the high state, and the following zero will leave it there. The result is a single transition in that window. The next bit will first flip the state back to low, and then flip it back to high, for two transitions in the window. [3]

Encoding these transitions requires the system to accept digital data from the host computer and then re-code it into the underlying FM format. On reading, the system has to separate out the clock signal again and leave only the data bits. Because the FM system is so simple, it could be implemented in single-chip forms using late 1970's semiconductor fabrication techniques. This greatly lowered the cost of implementation of a complete drive controller, which consisted largely of a clock, a drive controller chip, a chip to communicate with the host computer, and some buffer memory. Especially popular was the Western Digital FD1771 and its variations. [4]

Data encoding vs format

The material above refers to bytes being written to disk, but this is a simplification. In most disks, the only unit of data is the sector, and the individual bytes within it have no meaning to the controller. When data is written, the controller is handed a full sector's worth of data and told to write it as a single atomic operation as a series of bits. The controller cannot align the bits with the bytes based solely on the FM information. Thus it is not only the bits within the data that have to be aligned on reading, but the starting point of the sector's data as a whole. [3]

This is not accomplished with the encoding scheme, but the disk format instead. When the controller writes a sector of data, it adds a header section containing information about the data that follows, as well as the address of the sector so it can be found in the future. During the write process, the controller also writes out a series of special "sync bytes" before the header and the data. In the IBM format, this consists of a series of thirteen zeros followed by three hexadecimal A1's in front of the header and data areas. These are not FM encoded, so the controller can easily identify them on-the-fly. The controller locks onto these signals to find the start of data, which immediately follows the last sync byte. After that, it reads out each eight bits into subsequent bytes in the buffer. [3]

Replacement with MFM

As each bit of data requires two transition periods in the FM system, it makes use of only half the potential storage capacity of the disk. This led to a series of more advanced encodings that make better use of the available space. The most widely used replacement was modified frequency modulation, or MFM. This system recorded only a single bit in every window, which produced the underlying clock signal. The value of the bit, 1 or 0, was encoded by the location of the pulse within the window. 1's were encoded with pulses in the center of the window; 0's with the pulse at the end. [3]

MFM requires a more complex solution to recovering the clock signal. Generally this takes the form of a phase locked loop or similar system that will produce a steady output clock signal from a noisy input. This was beyond the capabilities of low-cost ICs from the late 1970s, which is why FM remained popular during the early home computer era in the early 1980s. MFM IC's were available, and were used on more expensive platforms like the IBM PC, but using them required the clock recovery to be performed by external hardware, the "data separator". IC manufacturing was advancing rapidly during this period, and by the mid-1980s all-in-one MFM controllers appeared and the market rapidly moved to the double-density format. [3]

Related Research Articles

<span class="mw-page-title-main">Commodore 1571</span> Floppy disk drive

The Commodore 1571 is Commodore's high-end 5¼" floppy disk drive, announced in the summer of 1985. With its double-sided drive mechanism, it has the ability to use double-sided, double-density (DS/DD) floppy disks, storing a total of 360 kB per floppy. It also implemented a "burst mode" that improved transfer speeds, helping address the very slow performance of previous Commodore drives.

<span class="mw-page-title-main">Floppy disk</span> Removable disk storage medium

A floppy disk or floppy diskette is a type of disk storage composed of a thin and flexible disk of a magnetic storage medium in a square or nearly square plastic enclosure lined with a fabric that removes dust particles from the spinning disk. Floppy disks store digital data which can be read and written when the disk is inserted into a floppy disk drive (FDD) connected to or inside a computer or other device.

Differential Manchester encoding (DM) is a line code in digital frequency modulation in which data and clock signals are combined to form a single two-level self-synchronizing data stream. Each data bit is encoded by a presence or absence of signal level transition in the middle of the bit period, followed by the mandatory level transition at the beginning. The code is insensitive to an inversion of polarity. In various specific applications, this method is also called by various other names, including biphase mark code (CC), F2F, Aiken biphase, and conditioned diphase.

<span class="mw-page-title-main">Line code</span> Pattern used within a communications system to represent digital data

In telecommunication, a line code is a pattern of voltage, current, or photons used to represent digital data transmitted down a communication channel or written to a storage medium. This repertoire of signals is usually called a constrained code in data storage systems. Some signals are more prone to error than others as the physics of the communication channel or storage medium constrains the repertoire of signals that can be used reliably.

<span class="mw-page-title-main">Non-return-to-zero</span> Telecommunication coding technique

In telecommunication, a non-return-to-zero (NRZ) line code is a binary code in which ones are represented by one significant condition, usually a positive voltage, while zeros are represented by some other significant condition, usually a negative voltage, with no other neutral or rest condition.

<span class="mw-page-title-main">ST506/ST412</span>

The ST-506 and ST-412 were early hard disk drive products introduced by Seagate in 1980 and 1981 respectively, that later became construed as hard disk drive interfaces: the ST-506 disk interface and the ST-412 disk interface. Compared to the ST-506 precursor, the ST-412 implemented a refinement to the seek speed, and increased the drive capacity from 5 MB to 10 MB, but was otherwise highly similar.

<span class="mw-page-title-main">SuperDisk</span> Storage medium from Imation

The SuperDisk LS-120 is a high-speed, high-capacity alternative to the 90 mm (3.5 in), 1.44 MB floppy disk. The SuperDisk hardware was created by 3M's storage products group Imation in 1997, with manufacturing chiefly by Matsushita.

Disk formatting is the process of preparing a data storage device such as a hard disk drive, solid-state drive, floppy disk, memory card or USB flash drive for initial use. In some cases, the formatting operation may also create one or more new file systems. The first part of the formatting process that performs basic medium preparation is often referred to as "low-level formatting". Partitioning is the common term for the second part of the process, dividing the device into several sub-devices and, in some cases, writing information to the device allowing an operating system to be booted from it. The third part of the process, usually termed "high-level formatting" most often refers to the process of generating a new file system. In some operating systems all or parts of these three processes can be combined or repeated at different levels and the term "format" is understood to mean an operation in which a new disk medium is fully prepared to store files. Some formatting utilities allow distinguishing between a quick format, which does not erase all existing data and a long option that does erase all existing data.

In computer science, group coded recording or group code recording (GCR) refers to several distinct but related encoding methods for representing data on magnetic media. The first, used in 6250 bpi magnetic tape since 1973, is an error-correcting code combined with a run-length limited (RLL) encoding scheme, belonging into the group of modulation codes. The others are different mainframe hard disk as well as floppy disk encoding methods used in some microcomputers until the late 1980s. GCR is a modified form of a NRZI code, but necessarily with a higher transition density.

Modified frequency modulation (MFM) is a run-length limited (RLL) line code used to encode data on most floppy disks and some hard disk drives. It was first introduced on hard disks in 1970 with the IBM 3330 and then in floppy disk drives beginning with the IBM 53FD in 1976.

Run-length limited or RLL coding is a line coding technique that is used to send arbitrary data over a communications channel with bandwidth limits. RLL codes are defined by four main parameters: m, n, d, k. The first two, m/n, refer to the rate of the code, while the remaining two specify the minimal d and maximal k number of zeroes between consecutive ones. This is used in both telecommunication and storage systems that move a medium past a fixed recording head.

<span class="mw-page-title-main">Cylinder-head-sector</span> Historical method for giving addresses to physical data blocks on hard disk drives

Cylinder-head-sector (CHS) is an early method for giving addresses to each physical block of data on a hard disk drive.

The Disc Filing System (DFS) is a computer file system developed by Acorn Computers, initially as an add-on to the Eurocard-based Acorn System 2.

<span class="mw-page-title-main">Western Digital FD1771</span> Floppy disk controller

The FD1771, sometimes WD1771, is the first in a line of floppy disk controllers produced by Western Digital. It uses single density FM encoding introduced in the IBM 3740. Later models in the series added support for MFM encoding and increasingly added onboard circuitry that formerly had to be implemented in external components. Originally packaged as 40-pin dual in-line package (DIP) format, later models moved to a 28-pin format that further lowered implementation costs.

Floppy disk format and density refer to the logical and physical layout of data stored on a floppy disk. Since their introduction, there have been many popular and rare floppy disk types, densities, and formats used in computing, leading to much confusion over their differences. In the early 2000s, most floppy disk types and formats became obsolete, leaving the 3+12-inch disk, using an IBM PC compatible format of 1440 KB, as the only remaining popular format.

<span class="mw-page-title-main">Floppy-disk controller</span> Circuitry that controls reading from and writing to a computers floppy disk drive

A floppy-disk controller (FDC) has evolved from a discrete set of components on one or more circuit boards to a special-purpose integrated circuit or a component thereof. An FDC directs and controls reading from and writing to a computer's floppy disk drive (FDD). The FDC is responsible for reading data presented from the host computer and converting it to the drive's on-disk format using one of a number of encoding schemes, like FM encoding or MFM encoding, and reading those formats and returning it to its original binary values.

<span class="mw-page-title-main">Disk II</span> Floppy disk drive for the Apple II computer

The Disk II Floppy Disk Subsystem, often rendered as Disk ][, is a 5 +14-inch floppy disk drive designed by Steve Wozniak at the recommendation of Mike Markkula, and manufactured by Apple Computer, Inc. It went on sale in June 1978 at a retail price of US$495 for pre-order; it was later sold for $595 including the controller card and cable. The Disk II was designed specifically for use with the Apple II personal computer family to replace the slower cassette tape storage. These floppy drives cannot be used with any Macintosh without an Apple IIe Card as doing so will damage the drive or the controller.

<span class="mw-page-title-main">History of the floppy disk</span>

A floppy disk is a disk storage medium composed of a disk of thin and flexible magnetic storage medium encased in a rectangular plastic carrier. It is read and written using a floppy disk drive (FDD). Floppy disks were an almost universal data format from the 1970s into the 1990s, used for primary data storage as well as for backup and data transfers between computers.

<span class="mw-page-title-main">Floppy disk variants</span> Types of floppy disk formats

The floppy disk is a data storage and transfer medium that was ubiquitous from the mid-1970s well into the 2000s. Besides the 3½-inch and 5¼-inch formats used in IBM PC compatible systems, or the 8-inch format that preceded them, many proprietary floppy disk formats were developed, either using a different disk design or special layout and encoding methods for the data held on the disk.

Hard disk drives are accessed over one of a number of bus types, including parallel ATA, Serial ATA (SATA), SCSI, Serial Attached SCSI (SAS), and Fibre Channel. Bridge circuitry is sometimes used to connect hard disk drives to buses with which they cannot communicate natively, such as IEEE 1394, USB, SCSI, NVMe and Thunderbolt.

References

Citations

  1. St. Michael, Stephen (1 August 2019). "Introduction to DRAM". All About Circuits.
  2. Lutz, Melloni & Wakeman 1995, p. 1.
  3. 1 2 3 4 5 6 7 8 9 Lutz, Melloni & Wakeman 1995, p. 2.
  4. Michalopoulos, Demetrios A (October 1976). "New Products: Single-chip floppy disk formatter/controller". Computer. IEEE. 9 (10): 64. doi:10.1109/C-M.1976.218414.

Bibliography