E-gradiva > Računalništvo > Sistemi > d_okolje > 03_serijski > Asinhroni prenos

Prijava

Asinhroni prenos podatkov

Asinhroni prenos podatkov se uporablja pretežno za pošiljanje posameznih znakov, torej pošiljk, dolgih le nekaj (okoli 10) bitov. Ko je nov znak pripravljen, ga oddajnik lahko pošlje. Pred pošiljanjem podatkovnih bitov pa najprej pošlje dodaten, začetni bit, s katerim »zbudi« sprejemnik in napove prihajanje novega podatka. Pri asinhronem prenosu podatkov čas med dvema znakoma torej ni vnaprej določen.
  1. Začetek pošiljanja novega znaka napove poseben "začetni bit" (angl. start bit). Ta bit ima dogovorjeno stanje, npr. visoko, v splošnem pa različno od stanja čakanja (angl. idle state), ko sprejemnik čaka na naslednji znak. Seveda pa ta bit še ni del samega sporočila, podatkovni biti sledijo.
  2. Tudi  hitrost prenašanja oziroma takt (angl. baudrate) prenašanja bitov mora biti dogovorjen pred prenosom, na oddajni in sprejemni napravi mora biti nastavljen  na isto vrednost. Sprejemnik mora brati z enakim taktom kot oddajnik oddaja.
  3. Tudi zgradba (angl. format) posameznega podatkovnega okvirja  mora biti dogovorjena vnaprej. Podatkovni okvir sestavljajo podatkovni biti ter biti, dodani zaradi sinhronizacije ali preverjanja pravilnosti prenosa podatkov. 
Podatkovni okvir sestavljajo:

okvir znaka

Primer podatkovnega okvirja znaka

Ko sprejemnik zazna začetni bit (an. start bit), ve, da prihaja nov podatek. Zato sproži svojo uro (takt) z nastavljeno hitrostjo (baudrate). Ko se na liniji napetost spreminja v taktu oddajnika, jo sprejemnik bere z istim taktom  in prebre dogovorjeno število bitov  (visokih in nizkih stanj). Po izteku zaključnega bita, se sprejemnik postavi v stanje pripravljenosti in čaka na naslednji znak. Natančneje: na naslednji začetni bit.

Omenimo še dokaj razširjeni pravili:

Podrobnosti: Izkoristek podatkovnega okvirja

Slaba lastnost asinhronega serijskega prenosa so dodatni biti, ki spremljajo podatkovne bite: začetni bit, bit parnosti in končni bit, ki lahko skupaj predstavljajo okoli 30% okvirja in s tem časa, ki se potroši za pošiljanje enega znaka. Zaradi dodatnih bitov se čas za prenos znaka podaljša. Izkoristek časa je s tem zelo slab. Pri daljši sporočilih, dolgih več sto znakov, je izkoristek še vedno enak (torej slab), saj je vsak od znakov opremljen z istimi dodatnimi biti.

Podrobnosti: Ali morata biti takta na obeh straneh absolutno enaka?

Ali sploh lahko dosežemo, da bosta takta na oddajni in sprejemni strani natanko enaki?
Če se namreč takta oddajnika in sprejemnika minimalno razlikujeta, bo po določenem času sinhronizacija izgubljena in nadaljevanje prenosa nima več smisla.

Rešitev leži v kompromisu: podatkovni paketi naj bodo dovolj kratki, da v času prenosa enega znaka sinhronizem še zdrži. Tako se pri asinhronem prenosu prenašajo znaki. Pri tako kratkih pošiljkah zato ni potrebno zelo precizno ujemanje ur taktov oddajnika in sprejemnika. Sprejemnik pa se ponovno nastavi za vsak znak posebej. Pri daljših podatkovnih okvirjih bi sprejem lahko padel iz sinhronizma. Za daljše okvirje se uporablja sinhroni prenos.

Avtorji: Tea Lončarić , Andreja Vehovec, Marko Kastelic , David Drofenik, Saša Divjak, Alenka Kavčič , Matija Marolt, Marko Privošnik, Milan Podbršček, Janko Harej, Andrej Florjančič