Data se na magnetická média ukládají pomocí změn magnetického toku. Tato změna může nastat z kladného toku na záporný nebo naopak ze záporného na kladný. Každá takováto změna se při čtení projeví jako impuls. K reprezentaci dat na magnetickém médiu se tedy používá přítomnosti nebo nepřítomnosti impulsu (mezera).
Například posloupnost bitů 10101110 by byla zakódována jako PNPNPPPN, kde P značí impuls a N značí mezeru.
Bylo by tedy teoreticky možné data zaznamenávat na médium tak, že bit 1 by byl zaznamenán jako impuls a bit 0 jako mezera. Tato představa je ovšem pouze teoretická a v praxi by nikdy nepracovala. V okamžiku, kdy by následovala delší posloupnost nul, která by byla zaznamenána jako dlouhá posloupnost mezer bez jakýchkoliv impulsů, by došlo ke ztrátě synchronizace řadiče pevného disku a nebylo by možné přesně určit, kolik mezer (nul) bylo přečteno. Impulsy totiž pomáhají vzájemně synchronizovat čtená data a řadič disku.
Z předchozího vyplývá, že data musí být na disk zaznamenávána tak, aby nikdy nedošlo k dlouhé posloupnosti mezer. V rozporu s tímto požadavkem je ovšem požadavek, který říká, že na magnetické médium se vejde větší počet mezer a impulsů, je-li počet impulsů menší. Je tedy nutné zvolit vhodný kompromis, aby při čtení dat nedošlo ke ztrátě synchronizace a zároveň, aby vlivem přehnaně velkého počtu impulsů nedocházelo k plýtvání médiem a tím k jeho menší kapacitě.
V praxi je tento problém řešen některým z následujících způsobů:
Bit | Zakódování |
---|---|
0 | PN |
1 | PP |
Například: 101101101 se zakóduje jako PPPNPPPPPNPPPPPNPP.
To znamená, že jednička je kódována jako dva impulsy a nula jako impuls následovaný mezerou. Při tomto kódování je bezpečně zaručeno, že nikdy nenastane příliš dlouhá posloupnost mezer. Bohužel je zde příliš vysoký počet impulsů, který způsobuje, že na médium je možné zaznamenat menší počet informací. Tento způsob kódování je dnes již poměrně zastaralý a nepoužívá se.
Například mějme vzorek 101100, který bude pro porovnání zakódován pomocí MFM i FM.
Je zřejmé, že při MFM modulaci dojde k úspoře média, protože celkový počet impulsů je menší než u FM modulace a také celkový počet po sobě následujících mezer nikdy nebude příliš vysoký, protože po sobě mohou následovat nejvýše 3 mezery. Díky těmto vlastnostem je MFM modulace asi o 20% úspornější než FM modulace.
MFM modulace se používala u prvních pevných disků a dodnes se používá při záznamu na pružné disky.
Jednotlivé vzorky a jejich zakódování jsou voleny tak, aby mezi dvěma impulsy byly minimálně dvě a maximálně 7 mezer. Toto kódování je asi o 50% úspornější než MFM kódování a bylo používáno u starších pevných disků.
Bit
Zakódování
0
PN jestliže je v řetězci 00
NN jestliže je v řetězci 10
1
NP
Vzorek
MFM
Počet impulsů
FM
Počet impulsů
101100
NPNNNPNPNNPN
4
PPPNPPPPPNPN
9
Vzorek
RLL
Počet impulsů
MFM
Počet impulsů
00
PNNN
1
PNPN
2
01
NPNN
1
PNNP
2
100
NNPNNN
1
NPNNPN
2
101
PNNPNN
2
NPNNNP
2
1100
NNNNPNNN
1
NPNPNNPN
3
1101
NNPNNPNN
2
NPNPNNNP
3
111
NNNPNN
1
NPNPNP
3
Modulace dat při záznamu: strana 1