fbpx
Wikipedia

Modified frequency modulation

Modified frequency modulation (MFM) is a run-length limited (RLL) line code[1] 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.

MFM is a modification to the original frequency modulation encoding (FM). FM encoding wrote both a clock signal and data separately and required two clock cycles per data bit, whereas MFM combines the two into a single signal requiring only one clock cycle and thus writing twice as much data to the same disk. For this reason, MFM disks are typically known as "double density" while the earlier FM became known as "single density".

MFM is used with a data rate of 250–500 kbit/s (500–1000 kbit/s encoded) on industry-standard 5+14-inch and 3+12-inch ordinary and high-density floppy diskettes. MFM was also used in early hard disk designs, before the advent of more efficient types of RLL codes. Outside of niche applications, MFM encoding is obsolete in magnetic recording.

Magnetic storage

Magnetic storage devices, like hard drives and magnetic tape, store data not as absolute values, but in the changes in polarity. This is because a changing magnetic field will induce an electrical current in a nearby wire, and vice versa. By sending a series of changing currents to the read/write head while the media moves past it, the result will be a pattern of magnetic polarities on the media that change where the data was a "1". The exact nature of the media determines how many of these changes can occur within a given surface area, and when this is combined with the nominal speed of movement, it produces the maximum data rate for that system.

Disk drives are subject to a variety of mechanical and materials effects that cause the original pattern of data to "jitter" in time. If a long string of "0" are sent to disk, there is nothing to indicate which bit a following "1" might belong to - due to the effects of jitter it may become misplaced in time. Re-aligning the signals on the disk with individual bits in memory requires some sort of timing signal encoded to the disk along with the data.

A wide variety of suitable encodings, known generally as line codes, have been developed for this purpose. They differ based on specific details of the media or transmission mechanism.

Frequency modulation

Frequency modulation encoding (FM) was the first widely used system to perform this operation. The drive controller includes an accurate clock running at half the selected data rate of the disk media. When data is written to the disk, the clock signal is interleaved with the data. On reading, the clock signals are used as short-term triggers to time the presence or lack of a following signal that represents the data bits.[2]

The upside to the FM approach is that it is extremely easy to implement the writing circuity and the clock recovery on reading is also relatively simple. The downside is that it uses up half of the disk surface for the clock signal, thus halving the total amount of data the disk can store. This led to new forms of encoding that were more efficient.

MFM coding

 
A byte encoded using FM (above) and MFM (below). Dashed blue line denotes clock pulse (the signal level change in it is ignored), and dashed red line, data pulse (signal level change encodes 1, and absence thereof, 0).

Modified frequency modulation encodes the clock signal and the data in a single "clock window". Like FM, it also encodes a transition for every possible bit of the original data. The difference is that the data itself is not recorded separately. Instead, a "1" or "0" is encoded by the position of the polarity change within the window. In effect, it uses a deliberate jitter to encode the data.

The basic encoding rule for MFM is that (x, y, z, ...) encodes to (x, x NOR y, y, y NOR z, z, z NOR...). A zero is encoded as 10 if preceded by a zero, and 00 if preceded by a one (each of these cases occurs 25% of the time); a one is always encoded as 01 (which happens 50% of the time); thus the number of magnetic transitions is on average 0.75(25% 10 = yes + 25% 00 = no + 50% 01 = yes).

Data ... 0 0 ... ... 0 1 ... ... 1 0 ... ... 1 1 ...
MFM clock bits ...? 1 ?... ...? 0 0... ...0 0 ?... ...0 0 0...
MFM encoding ...?010?... ...?0010... ...0100?... ...01010...

Note that the surrounding clock bits are sometimes known, but sometimes require knowledge of the adjacent data bits. A longer example:

Data: 0 0 0 1 1 0 1 1 ... FM encoded: 10101011111011111... MFM clock:  ? 1 1 0 0 0 0 0 0... MFM encoded:  ?0101001010001010... 

(The bold bits are the data bits, the others are the clock bits.)

In FM encoding, the number of 0-bits that may appear between consecutive 1-bits is either 0 or 1. In MFM encoding there is a minimum of 1 zero bit between adjacent ones (there are never two adjacent one bits), and the maximum number of zeros in a row is 3. Thus, FM is a (0,1) RLL code, while MFM is a (1,3) code.

Data separator

Because the MFM system requires more accurate timing of the clock signal, it was not possible economically to build the required analog and digital components on a single integrated circuit using late 1970s technology. Instead, MFM drivers required the drive vendor to design their own clock recovery circuitry, a system known as the data separator. Data separator design was an art form of its own.[3]

Among the most widely used controllers of the era was the Western Digital FD1771 series. The original FD1771 supported FM only, but it was quickly paired with the FD1781 and FD1791 which performed MFM based on an externally provided clock signal. Implementing MFM support with these drivers required an external data separator. Rapid improvement in IC manufacturing in the late 1970s and early 1980s led to the first low-cost all-in-one MFM drivers in the early 1980s. The WD2791 was the first to directly support MFM using an internal analog phase locked loop, but it required a number of simple external components to implement a complete system. The WD1770 was the first to implement a complete MFM solution in a single chip.

Overall format

FM and MFM are used to indicate the position of individual bits in the original data, but the data does not in itself have any higher level of organization like "files". This is the purpose of the format of the disk. Disks are typically formatted into fixed-sized sectors which contain additional header information to link them back to files.

In the IBM formats, the start of a sector's header information and the start of the data itself are indicated with special "sync mark", a pattern of 0s and 1s that cannot appear in the data itself. This is accomplished by not encoding this data using the FM or MFM encoding, making it easy for the driver to spot it. The sync mark that is commonly used in MFM encoding is known as the "A1 sync" since the data bits form the start of the hexadecimal value A1 (10100001), but the fifth clock bit is different from the normal encoding of the A1 byte.

Data: 1 0 1 0 0 0 0 1 Clock: 0 0 0 1 1 1 0 Encoded: 100010010101001 Sync clock: 0 0 0 1 0 1 0 Sync Mark: 100010010001001 ^ Missing clock bit 

MMFM

MMFM, (Modified Modified Frequency Modulation), also abbreviated M²FM, or M2FM, is similar to MFM, but suppresses additional clock bits, producing a longer maximum run length (a (1,4) RLL code). In particular, a clock pulse is only inserted between a pair of adjacent 0-bits if the first bit of the pair did not have a clock pulse inserted before it.[4] In the example below, clock bits that would have been present in MFM are noted in bold:

Data: 1 1 0 1 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 Clock: 0 0 0 0 0 1 0 0 1 0 0 0 1 0 1 0 0 1 0 1 0 0 Encoded: 01010001001001001000010010001001001000100001 

In this system, sync marks are made by inserting additional clock pulses between adjacent zero bits (following the MFM rule) where they would normally be omitted. In particular, the data bit pattern "100001" has a clock pulse inserted in the middle, where it would normally be omitted:

Data: 1 0 0 0 0 1 Normal: 0 1 0 1 0 Sync: 0 1 1 1 0 

See also

References

  1. ^ Kees Schouhamer Immink (December 1990). "Runlength-Limited Sequences". Proceedings of the IEEE. 78 (11): 1745–1759. doi:10.1109/5.63306. A detailed description is furnished of the limiting properties of runlength limited sequences.
  2. ^ Hecht, M.; Guida, A. (July 1969). "Delay Modulation". Proceedings of the IEEE. IEEE. 57 (7): 1314–1316. doi:10.1109/PROC.1969.7249.
  3. ^ Lutz, Bob; Melloni, Paolo; Wakeman, Larry (1982). Floppy Disk Data Separator Design Guide for the DP8473 (Technical report). National Semiconductor.
  4. ^ Intel Corporation (1977). SBC 202 Double Density Diskette Controller Hardware Reference Manual (PDF). pp. 4–26. (PDF) from the original on 2017-06-18.

  This article incorporates public domain material from . General Services Administration. Archived from the original on 2022-01-22.

Further reading

  • Savard, John J. G. (2018) [2006]. . quadibloc. Archived from the original on 2018-07-02. Retrieved 2018-07-16.

External links

  • Johnson, Herbert R. (2016-07-06). "M2FM or MMFM diskette format". from the original on 2017-06-18. Retrieved 2017-06-19.
  • The PC Guide Frequency Modulation

modified, frequency, modulation, length, limited, line, code, used, encode, data, most, floppy, disks, some, hard, disk, drives, first, introduced, hard, disks, 1970, with, 3330, then, floppy, disk, drives, beginning, with, 53fd, 1976, modification, original, . Modified frequency modulation MFM is a run length limited RLL line code 1 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 MFM is a modification to the original frequency modulation encoding FM FM encoding wrote both a clock signal and data separately and required two clock cycles per data bit whereas MFM combines the two into a single signal requiring only one clock cycle and thus writing twice as much data to the same disk For this reason MFM disks are typically known as double density while the earlier FM became known as single density MFM is used with a data rate of 250 500 kbit s 500 1000 kbit s encoded on industry standard 5 1 4 inch and 3 1 2 inch ordinary and high density floppy diskettes MFM was also used in early hard disk designs before the advent of more efficient types of RLL codes Outside of niche applications MFM encoding is obsolete in magnetic recording Contents 1 Magnetic storage 2 Frequency modulation 3 MFM coding 4 Data separator 5 Overall format 6 MMFM 7 See also 8 References 9 Further reading 10 External linksMagnetic storage EditMagnetic storage devices like hard drives and magnetic tape store data not as absolute values but in the changes in polarity This is because a changing magnetic field will induce an electrical current in a nearby wire and vice versa By sending a series of changing currents to the read write head while the media moves past it the result will be a pattern of magnetic polarities on the media that change where the data was a 1 The exact nature of the media determines how many of these changes can occur within a given surface area and when this is combined with the nominal speed of movement it produces the maximum data rate for that system Disk drives are subject to a variety of mechanical and materials effects that cause the original pattern of data to jitter in time If a long string of 0 are sent to disk there is nothing to indicate which bit a following 1 might belong to due to the effects of jitter it may become misplaced in time Re aligning the signals on the disk with individual bits in memory requires some sort of timing signal encoded to the disk along with the data A wide variety of suitable encodings known generally as line codes have been developed for this purpose They differ based on specific details of the media or transmission mechanism Frequency modulation EditMain article Frequency Modulation encoding Frequency modulation encoding FM was the first widely used system to perform this operation The drive controller includes an accurate clock running at half the selected data rate of the disk media When data is written to the disk the clock signal is interleaved with the data On reading the clock signals are used as short term triggers to time the presence or lack of a following signal that represents the data bits 2 The upside to the FM approach is that it is extremely easy to implement the writing circuity and the clock recovery on reading is also relatively simple The downside is that it uses up half of the disk surface for the clock signal thus halving the total amount of data the disk can store This led to new forms of encoding that were more efficient MFM coding Edit A byte encoded using FM above and MFM below Dashed blue line denotes clock pulse the signal level change in it is ignored and dashed red line data pulse signal level change encodes 1 and absence thereof 0 Modified frequency modulation encodes the clock signal and the data in a single clock window Like FM it also encodes a transition for every possible bit of the original data The difference is that the data itself is not recorded separately Instead a 1 or 0 is encoded by the position of the polarity change within the window In effect it uses a deliberate jitter to encode the data The basic encoding rule for MFM is that x y z encodes to x x NOR y y y NOR z z z NOR A zero is encoded as 10 if preceded by a zero and 00 if preceded by a one each of these cases occurs 25 of the time a one is always encoded as 01 which happens 50 of the time thus the number of magnetic transitions is on average 0 75 25 10 yes 25 00 no 50 01 yes Data 0 0 0 1 1 0 1 1 MFM clock bits 1 0 0 0 0 0 0 0 MFM encoding 010 0010 0100 01010 Note that the surrounding clock bits are sometimes known but sometimes require knowledge of the adjacent data bits A longer example Data 0 0 0 1 1 0 1 1 FM encoded 10101011111011111 MFM clock 1 1 0 0 0 0 0 0 MFM encoded 0101001010001010 The bold bits are the data bits the others are the clock bits In FM encoding the number of 0 bits that may appear between consecutive 1 bits is either 0 or 1 In MFM encoding there is a minimum of 1 zero bit between adjacent ones there are never two adjacent one bits and the maximum number of zeros in a row is 3 Thus FM is a 0 1 RLL code while MFM is a 1 3 code Data separator EditBecause the MFM system requires more accurate timing of the clock signal it was not possible economically to build the required analog and digital components on a single integrated circuit using late 1970s technology Instead MFM drivers required the drive vendor to design their own clock recovery circuitry a system known as the data separator Data separator design was an art form of its own 3 Among the most widely used controllers of the era was the Western Digital FD1771 series The original FD1771 supported FM only but it was quickly paired with the FD1781 and FD1791 which performed MFM based on an externally provided clock signal Implementing MFM support with these drivers required an external data separator Rapid improvement in IC manufacturing in the late 1970s and early 1980s led to the first low cost all in one MFM drivers in the early 1980s The WD2791 was the first to directly support MFM using an internal analog phase locked loop but it required a number of simple external components to implement a complete system The WD1770 was the first to implement a complete MFM solution in a single chip Overall format EditFM and MFM are used to indicate the position of individual bits in the original data but the data does not in itself have any higher level of organization like files This is the purpose of the format of the disk Disks are typically formatted into fixed sized sectors which contain additional header information to link them back to files In the IBM formats the start of a sector s header information and the start of the data itself are indicated with special sync mark a pattern of 0s and 1s that cannot appear in the data itself This is accomplished by not encoding this data using the FM or MFM encoding making it easy for the driver to spot it The sync mark that is commonly used in MFM encoding is known as the A1 sync since the data bits form the start of the hexadecimal value A1 10100001 but the fifth clock bit is different from the normal encoding of the A1 byte Data 1 0 1 0 0 0 0 1 Clock 0 0 0 1 1 1 0 Encoded 100010010101001 Sync clock 0 0 0 1 0 1 0 Sync Mark 100010010001001 Missing clock bitMMFM EditMMFM Modified Modified Frequency Modulation also abbreviated M FM or M2FM is similar to MFM but suppresses additional clock bits producing a longer maximum run length a 1 4 RLL code In particular a clock pulse is only inserted between a pair of adjacent 0 bits if the first bit of the pair did not have a clock pulse inserted before it 4 In the example below clock bits that would have been present in MFM are noted in bold Data 1 1 0 1 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 Clock 0 0 0 0 0 1 0 0 1 0 0 0 1 0 1 0 0 1 0 1 0 0 Encoded 01010001001001001000010010001001001000100001 In this system sync marks are made by inserting additional clock pulses between adjacent zero bits following the MFM rule where they would normally be omitted In particular the data bit pattern 100001 has a clock pulse inserted in the middle where it would normally be omitted Data 1 0 0 0 0 1 Normal 0 1 0 1 0 Sync 0 1 1 1 0See also EditGroup coded recording GCR References Edit Kees Schouhamer Immink December 1990 Runlength Limited Sequences Proceedings of the IEEE 78 11 1745 1759 doi 10 1109 5 63306 A detailed description is furnished of the limiting properties of runlength limited sequences Hecht M Guida A July 1969 Delay Modulation Proceedings of the IEEE IEEE 57 7 1314 1316 doi 10 1109 PROC 1969 7249 Lutz Bob Melloni Paolo Wakeman Larry 1982 Floppy Disk Data Separator Design Guide for the DP8473 Technical report National Semiconductor Intel Corporation 1977 SBC 202 Double Density Diskette Controller Hardware Reference Manual PDF pp 4 26 Archived PDF from the original on 2017 06 18 This article incorporates public domain material from Federal Standard 1037C General Services Administration Archived from the original on 2022 01 22 Further reading EditSavard John J G 2018 2006 Digital Magnetic Tape Recording quadibloc Archived from the original on 2018 07 02 Retrieved 2018 07 16 External links EditJohnson Herbert R 2016 07 06 M2FM or MMFM diskette format Archived from the original on 2017 06 18 Retrieved 2017 06 19 The PC Guide Frequency Modulation Retrieved from https en wikipedia org w index php title Modified frequency modulation amp oldid 1098389968, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.