NRZI
Linkový kód NRZI (bez návratu k nule s inverzí) přiřazuje jedné logické hodnotě signál beze změny stavu a druhé logické hodnotě signál se změnou stavu (inverze). Z toho plyne nezávislost na polaritě signálu: přepólování přenosové linky nemění bitovou posloupnost. Proto je kódování NRZI oblíbené na rozhraních používajících diferenciální signály.
Varianty NRZI
NRZI existuje ve dvou variantách v závislosti na tom, jestli změnu stavu způsobí jednička (značka, anglicky mark) nebo nula (mezera, anglicky space). Je-li dk posloupnost dat na vstupu a pk představuje posloupnost úroveň na výstupu, platí pro NRZ-M vztah:
a pro NRZ-S:
kde operátor je operace sčítání modulo-2, kterou lze realizovat hradlem XOR, k-1 se vztahuje na předchozí hodnotu (zapamatovanou například bistabilním klopným obvodem), a pruh nad dk negaci.
Pokud je známo, že uživatelská data neobsahují dlouhou posloupnost nul (NRZ-M) nebo jedniček (NRZ-S), lze NRZI kódování použít pro vytváření signálu, který zajišťuje synchronizaci vysílače a přijímače. Na začátku a na konci uživatelských dat mohou být použity bity, které se nemění logickou úroveň, pro vyznačení a detekci začátku a konce rámce.
Linkový kód NRZI používá USB[1], Ethernet na optických vláknech (100-Base-FX)[2], FDDI a jeho použití se předpokládá i pro linkový protokol HDLC. NRZI se také používá pro záznam dat na paměťová média, například pro CD-ROM nebo pro pevné disky.
NRZ-M
Varianta NRZI-M nebo NRZ-M kóduje jedničku změnou úrovně. Nula je kódována signálem beze změny úrovně.
Příklad 1: | |
Data: | 1 1 1 1 1 1 1 1 |
signál s počátečním stavem „1”: | 0 1 0 1 0 1 0 1 |
signál s počátečním stavem „0”: | 1 0 1 0 1 0 1 0 |
Příklad 2: | |
Data: | 0 0 0 0 0 0 0 0 |
signál s počátečním stavem „1”: | 1 1 1 1 1 1 1 1 |
signál s počátečním stavem „0”: | 0 0 0 0 0 0 0 0 |
Příklad 3: | |
Data: | 1 1 1 1 1 0 1 0 1 0 1 1 0 0 0 1 |
signál s počátečním stavem „1”: | 0 1 0 1 0 0 1 1 0 0 1 0 0 0 0 1 |
signál s počátečním stavem „0”: | 1 0 1 0 1 1 0 0 1 1 0 1 1 1 1 0 |
NRZ-S
NRZI-S nebo NRZ-S kóduje nulu změnou úrovně a jedničku signálem bez zněny úrovně. Toto kódování používá například USB nebo HDLC.
Kódování NRZ-S
Příklad 1: | |
Data: | 1 1 1 1 1 1 1 1 |
signál s počátečním stavem „1”: | 1 1 1 1 1 1 1 1 |
signál s počátečním stavem „0”: | 0 0 0 0 0 0 0 0 |
Příklad 2: | |
Data: | 0 0 0 0 0 0 0 0 |
signál s počátečním stavem „1”: | 0 1 0 1 0 1 0 1 |
signál s počátečním stavem „0”: | 1 0 1 0 1 0 1 0 |
Příklad 3: | |
Data: | 1 1 1 1 1 0 1 0 1 0 1 1 0 0 0 1 |
signál s počátečním stavem „1”: | 1 1 1 1 1 0 0 1 1 0 0 0 1 0 1 1 |
signál s počátečním stavem „0”: | 0 0 0 0 0 1 1 0 0 1 1 1 0 1 0 0 |
Odkazy
Reference
V tomto článku byl použit překlad textu z článku Non Return to Zero na německé Wikipedii.
- USB Specifikace z usb.org
- Standard 802.3 Archivováno 26. 7. 2010 na Wayback Machine na ieee.org