Vyšlo v týdeníku CHIPweek číslo 44/98, 26. října 1998
Vytištěno z adresy: http://www.earchiv.cz/a98/a844k180.php3

Druhy přenosu - I.

Analog vs. digital transmission (analogový a digitální přenos)
prakticky každý přenos v reálném světě je ve své podstatě analogový - vždy se totiž přenáší nějaký analogový signál, například elektrický proud, světlo, magnetické vlnění apod., a rozhodující jsou kvantitativní charakteristiky takovéhoto signálu: například momentální velikost proudu či napětí, nebo jejich časový průběh (amplituda, fáze atd.), nebo úroveň světelnosti nějakého světelného impulsu apod. O tom, zda se jedná o analogový či digitální přenos, rozhoduje především způsob vyhodnocení přijímaného signálu: pokud se vyhodnocuje jeho konkrétní hodnota (tedy např. konkrétní hodnota napětí, proudu, nebo kmitočtu, fáze, amplitudy apod.), pak jde o přenos analogový. O přenos digitální jde v případě, kdy je vyhodnocována pouze příslušnost momentální hodnoty do určitého intervalu hodnot, který reprezentuje nějakou předem danou konkrétní hodnotu (tzv. diskrétní hodnotu): například úroveň napětí mezi 0 a 5V může reprezentovat logickou jedničku, zatímco hodnoty napětí menší než 0 budou reprezentovat logickou nulu. Velmi významným rozdílem mezi analogovým a digitálním přenosem je jejich "reprodukovatelnost" - u analogového přenosu, i při použití nejdokonalejších obvodů pro zpracování signálu, vždy dochází k nějakému zkreslení, zmenšení či jiné změně signálu, takže analogová "reprodukce" nikdy není naprosto dokonalá a ideální. Naproti tomu u digitálního přenosu, kde nejde o ideálně stejnou hodnotu ale o příslušnost do stejného intervalu, je dokonalá reprodukce velmi jednoduchá - například signál, který byl po cestě utlumen z původních 4 voltů na 2, pořád spadá do intervalu 0 až 5 voltů (například), a může být snadno "obnoven" pomocí nového signálu o napětí 4 voltů, který spadá do stejného intervalu a tudíž reprezentuje stejnou logickou hodnotu.
Serial vs. parallel transmission (sériový vs. paralelní přenos)
v případě digitálních přenosů, kdy jsou přenášeny jednotlivé datové bity, je významnou otázkou v jakém pořadí se tak děje: zda jsou jednotlivé bity přenášeny jeden po druhém (pak jde o tzv. sériový přenos), nebo po určitých celcích (např. po osmicích, po skupinách šestnácti bitů apod. - pak jde o tzv. paralelní přenos). Paralelní způsob přenosu může být obecně rychlejší, díky tomu že přenáší více datových bitů najednou, ale samozřejmě nesmírně záleží na přenosové rychlosti, neboli na době kterou trvá přenesení jednoho bitu. Kromě toho je paralelní přenos použitelný pouze tam, kde existuje více samostatných přenosových cest (typicky: více samostatných vodičů, pro každý datový bit jeden). To je obvykle možné na velmi malé vzdálenosti, typicky několika málo metrů, kdy je možné použít vhodný vícežilový kabel. Na větší vzdálenosti je ze stejného důvodu používán téměř výhradně přenos sériový.
Bit, nibble, byte, octet, word
skupiny datových bitů jsou pro potřeby přenosu, zpracování i uchovávání sdružovány do větších celků, nejčastěji do bytů. Pod pojmem "byte" je dnes chápána skupina osmi bitů, ale ne vždy tomu bylo tak, některé starší počítače pracovaly s menšími i většími byty. Ve světě spojů a telekomunikací se dodnes místo termínu "byte" používá spíše termín "octet", znamenající "osmici". Někdy je používána i menší jednotka než je byte, a to čtveřice bitů. Pro ni se vžilo označení "nibble" (doslova: "kousíček, troška"). Jindy je naopak potřeba pojmenovat větší skupinu bitů, a pak se k tomu používá termín "slovo" (angl.: word). Pro velikost slova v bitech však neexistuje jednoznačná konvence, spíše se tímto termínem vyjadřuje tak velký objem dat, jaký je určitý systém schopen zpracovat najednou (například 16-bitové mikroprocesory pracují se slovy velikosti 16 bitů, 32-bitové mikroprocesory mají velikost slova 32 bitů atd.).
Little Endian vs. Big Endian
je-li potřeba přenést určitý objem dat, členěných na bity, byty, slova či ještě jiné jednotky, prostřednictvím takového přenosového kanálu, který má menší "šířku" (tj. není schopen je přenést všechny najednou), pak je nutné tato data rozdělit na menší části, ty přenést postupně a pak je zase korektně "poskládat zpátky". Představíme-li si souvislý datový blok jako posloupnost bitů, bytů či slov, pak je možné použít v zásadě dvě konvence: buďto se začne od méně významných bitů, bytů či slov, nebo se to udělá přesně naopak, a nejprve se začnou přenášet nevíce významné bity, byty či slova. První konvence se označuje jako Little Endian, druhá jako Big Endian. Stejné konvence se přitom uplatňují i v jakékoli situaci, kdy je potřeba "zlineárnit" (serializovat, "dát za sebe") nějaké rozsáhlejší datové položky. Konvenci Little Endian například používají procesory firmy Intel, zatímco konvenci Big Endian procesory firmy Motorola a mainframy IBM.
Asynchronnous transmission (asynchronní přenos)
při přenosu dat sériovým způsobem je velmi podstatné, aby příjemce dokázal správně rozlišit časové okamžiky, kdy mu přichází jednotlivé bity - pokud by vyhodnocoval stav přenášeného signálu v jiných okamžicích, než které reprezentují příslušné bity, samozřejmě by obdržel zcela jiné výsledky (totéž ostatně platí i pro přenos paralelní). Základním problémem tedy je, jak na straně příjemce rozpoznat tzv. bitový interval (časový interval, odpovídající přenosu jednoho bitu), který svým "tempem" určuje odesilatel. Obecně se tento problém označuje jako tzv. zajištění synchronizace mezi příjemcem a odesilatelem. Nejjednodušší způsob jak se s tímto problémem vyrovnat, je specificky vyznačit začátek a konec každého bitového intervalu, tak aby příjemce bezpečně poznal kdy má vyhodnotit stav přenášeného signálu a odvodit si, jaký bit právě reprezentuje. Nevýhodou je potřeba alespoň tříhodnotové logiky - zatímco dvě logické hodnoty jsou zapotřebí pro vyjádření "užitečné" hodnoty datového bitu, třetí hodnota je zapotřebí pro vyznačení začátku a konce bitového intervalu. Výhodou je naopak fakt, že odesilatel nemusí dodržovat žádnou konstantní přenosovou rychlost, a jednotlivé bitové intervaly mohou být i nestejně dlouhé.
Arytmic transmission (arytmický přenos)
jiným způsobem zajištění potřebné synchronizace mezi příjemcem a odesilatelem - tedy toho, aby příjemce vždy přesně věděl, kdy má vyhodnocovat stav přijímaného signálu - je udržovat fixní odstupy mezi jednotlivými datovými bity (a tedy i konstantní velikost bitového intervalu, resp. konstantní přenosovou rychlost) alespoň po bodu přenosu několika datových bitů, například celých bytů (přesněji tzv. znaků.). Tuto představu lze připodobnit k situaci, kdy příjemce i odesilatel mají své vlastní hodinky, odesilatel vysílá podle tikotu svých hodinek, zatímco příjemce si je seřídí na začátku přenosu každého jednotlivého bytu/znaku (podle jeho začátku, který musí být schopen rozpoznat), a pak se řídí tikotem svých vlastních hodinek - tj. doufá, že po dobu přenosu zmíněného bytu/znaku se tyto jeho hodinky "nerozejdou" od hodinek odesilatele natolik aby vyhodnocoval přicházející data v nesprávné okamžiky. Po skončení přenosu každého jednotlivého bytu (znaku) se již hodinky příjemce mohou jakkoli rozejít (tzv. ztratit synchronizaci s hodinkami příjemce), protože na začátku dalšího bytu/znaku budou znovu zasynchronizovány (seřízeny). Jedním ze zajímavých aspektů tohoto typu přenosu je skutečnost, že mezi přenosy jednotlivých bytů/znaků mohou být libovolně velké prodlevy - proto také označení "arytmický přenos", neboli přenos postrádající trvalejší rytmus. V praxi se ale tomuto druhu "arytmického" přenosu nesprávně říká "asynchronní" (zatímco skutečný asynchronní přenos, postrádající jakoukoli synchronizaci, je popisován v předchozím odstavci).
Synchronous transmission (synchronní přenos)
jako synchronní je označován takový přenos, při kterém je synchronizace (vzájemně seřízení pomyslných hodinek příjemce a odesilatele) udržována trvale, po celou dobu přenosu nějakého většího bloku. Lze toho dosáhnout různými způsoby, například průběžným "přimícháváním" zvláštních časovacích impulsů do přenášených datových bitů. Obecně přitom platí, že synchronní přenos je nejefektivnější, a při přenosech vyššími rychlostmi obvykle dostává přednost před přenosy asynchronními (ve skutečnosti ale arytmickými).