Modem

Allikas: Kuutõrvaja

Telekommunikatsioon ehk Side

Sissejuhatus

Järgnevas esitatakse side üldised põhimõtted, eriti mis puutub analoogsignaali moduleerimist digitaalsignaaliga. Kõneldakse erinevate nn. meediumite (raadiolained, telefoniliin, koaksiaalkaabel ja keerupaar) sobivusest side pidamisest ühes või teises olukorras. Konkreetsed näited käivad enamuses kahe arvuti suhtlemise realiseerimise kohta kasutades nn. null-modemi kaablit või modemit. Lugejalt eeldatakse põhiliste füüsikaliste mõistete tundmist: võnkumine, pinge, sagedus, amplituud, faas.

Andmevahetus

Niisiis, andmevahetuse põhiline eesmärk on nagu arvata võib kanda andmed ehk info ühest füüsilisest asukohast teise. Selleks on väga palju erinevaid võimalusi, igaüks oma puuduste ja voorustega. Kunagi tehti nii, et kui oli vaja viia ruttu sõnum ühest kohast teise, siis anti märku trummilöökide ja lõkketulega, tänapäeval kasutatakse seda harva.

Informatsioon iseenesest (st. sisuliselt) pole ei digitaalne ega analoogne. Küll aga informatsiooni saab hoida ja ka edastada nii analoogses kui digitaalses vormis. Nt. kui muusikapala on CD'le salvestatud on ta digitaalses vormis, aga sama pala magnetofoni lindil on analoogses vormis. Sarnaselt liigub info arvuti mälu, protsessori ja muude komponentide vahel digitaalsena, teda töödeldakse kui ta on digitaalne; aga kui ta jõuab nt. monitori või valjuhäälditesse, siis on ta neis nn. perifeersetes seadmetes analoogsel kujul.

Lühidalt öeldes:

- digitaalne signaal omada kindlat arvu võimalikke väärtusi; - analoogsignaal aga praktiliselt lõpmata palju võimalikke väärtusi.

Mõeldes info edastamisele on mõlemal vormil omad eelised:

- Digitaalset infot saab hoida, edastada ja reprodutseerida ilma kadudeta või moonusteta. - Analoogne reeglina moondub suuremal või vähemal määral.

- Digitaalset infot saab edastada küllaltki piiratud vahenditega (nt. keerupaar ja koaksiaalkaabel) ja piiratud distantsil (ca 2 km). - Analoogset saab edastada aga märgatavamat suuremate distantside taha: kosmoselaevadelt Maale kusjuures kasutada on enam nn. meediume: metalljuhtmetest kuni valguskiudude ja raadiosideni.

Kui info levib, siis vaatamata esituse vormile ta 'valjus' enamasti nõrgeneb. Digitaalse signaali puhul kasutatakse selle vastu repeater'id (in. k. kordajad) ja analoogse puhul räägitakse lihtsalt võimenditest.


Sünkroonsus

Andmevahetust realiseerides on oluline, et saatja ja vastuvõtja töötaksid samas rütmis. Kujutlege, et teile dikteeritakse teksti ja te peate seda üles kirjutama. Kui lugeja dikteeriks liiga kiiresti ei jõuaks te 'pooli asju' üles kirjutada. Kui jälle liiga aeglaselt, siis on kirjutajatel harjumus paberile lillekesi joonistama ja kirjutataud tähti ülekirjutama hakata. Niisiis on probleem.

Seda 'ihaldatava 'sama rütm' saavutamist nimetatakse sünkroniseerimiseks. Teistmoodi: öeldakse, et saatja ja vastuvõtja töötavad sünkroonselt ehk sünkroniseeritult.

nn. sünkroone andmevahetus

Kui ettelugeja teab teie kirjutamise kiirust, siis on võimalik väga pikka aega teil koos töötada ilma et vigu esineks. Võib ütelda, et teie kahe vaheline andmeside on sünkroonne kusjuures sükroonsuse säilitamiseks ei kasutata ülekantava info kanalit. Sünkroonsus tagatakse nt. sellega, et rääkija tõesti teab kirjutaja kiirust, või aegajalt vahetatakse pilke või kirjutaja tonksab lugejat varbaotsaga kaks korda kui asi läheb liiga kiireks ja üks kord kui liiga aeglaselt.

nn. asünkroone andmevahetus

kummaline, aga asünkroonne side on andmete edastuse ajal samuti sünkroone. Selle tehnika puhul aga kasutatakse sidekanalit ka sünkroniseerivate signaalide saatmiseks. Toodud näite puhul võiks öelda, et sidekanaliks on heli; niisiis rääkija küsib aega-ajalt nt. "kas jõuad", "ega kiire ei ole". Tonksamist kui erineva sidekanali kasutamist ei ole. Aga kui rääkija ütleb lause, siis ta eeldab, et kirjutaja jõuab selle täies pikkuses kirja panna.

Ja vaatamata sünkroonsusele on ikkagi tarvis kontrollida kas tõenäoliselt info jõudis moondusteta kohale. Seda tehakse nn. kontrollsummade saatmisega. Nt. iga lause järel ütleb dikteerija mitu tähte lauses oli. Ja vastuvõtja vaatab kas ikka temani kah nii palju jõudis ning kui asi ei klapi siis saadab lugejale tagasi teate palvega saata viimane lause uuesti. NB! Siin tule välja, oluline asi: side on tavaliselt kahepoolne: st. üks mõlemad pooled on võimelised sama seansi ajal nii saatma kui vastu võtma. Seda võimet nimetakse duplex'iks.

See oli selline populaarne esitus, aga loodetavasti tegi teid tuttavaks olukorra ja probleemidega millega andmevahetuses tuleb kokku puutuda.


Digitaalset info edastamise protsessi läbi digitaalse meediumi

Kujutleme et omavahel suhtlevad kaks arvutit ja infot kandev meedium on loomulikult digitaalne (nt. null - modemi kaabel). Kirjeldame kõigepealt asja põhimõtet ja toome sisse andevahetuses kasutatavad suurused.

Kogu infovahetuse juures on oluline see, et teine pool tõlgendaks seda mida esimene poole 'ütles' nii nagu mõteldi.

Nt. Kujutleme, et saatja saadab välja bitte: 0 1 1 0 0 0 1 0 1 1 ja vastuvõtja püüab neid kinni üle ühe - siis on sõnum kaduma läinud. Aga kavalad ameeriklased on välja mõtelnud kahte moodi süsteemi tagamaks selle, et infost mõlemad pooled õieti st. sama moodi aru saaksid: sünkroonne ja asünkroone infovahetus.

Sünkroonsel juhul saadetase/loetakse bitte kogu aeg (pikki tunde, tohutult palju bitte) samas tempos millest mõlemad pooled kinni peavad; nii on garanteeritud see, et vastuvõttev pool midagi maha ei magaks. Ja siiski, nt. iga viiekümnes bitt on nn. kontroll: kui eelneva 49 hulgas oli paaritu arv '1' sid on 50's 1 ja kui paarisarv on 50's '0'. Vms. Olenub info väärtusest, mõnel juhul pole oluline nö. väike müra, aga reeglina on see lubamatu. Kontrollsummade arvutamine on omaette teema. Infot kandvate bittide liigutamiseks on vaja vähemalt kahte traati (maa ja signaal - on vaja ühte traati mille suhtes teises olevas pinget mõõta).Sünkroonse infovahetuse saavutamiseks kasutatakse tavaliselt veel mõnda rütmi kontrollivat traati. Tavaliselt kasutatakse sünkroonse infovahetuse puhul ka enamat kui kahte data traati.


Asünkroonne infovahetus

Asünkroone on selline, et kasutatakse kokkuvõttes ainult kahte traati ja iga natukese aja tagant (nt. enne ja peale 8 andmebiti saatmist) saadetakse andemete kanalis signaal, mis peaks mõlemad pooled sünkroniseerima, st. ütlema, "valmis olla, tähelepanu, kui tahate puhake veel veidi aga järgneva kaheksa biti saatmise ajal olge sünkroniseeritud ja nüüd start!". See on nn. 'start bit'.

Async.jpg

Tavaliselt on nii, et enne infovahetuse seansi algust on traatide vaheline pinge nt. 15 volti muutumatult. Ei valitud nulli, sest null puhul võiks kaabel kuskilt katki olla ja ei teeks vahet. Seansi algul langetab üks pool pinge nulli (nn. 'clock') ja see allakukkumine (vasakul start bitist) on märguanne teisele poolele, et läks lahti. Praegune jutt eeldab, et mõlemad pooled teavad millises rütmis ehk millise sagedusega bitid liikuma hakkavad ja mitu bitti tsükkel kestab. Tavaliselt on andmebitte 5, 6, 7, või 8 pluss 9. paarsuse jaoks. Seda väljendatakse ka '8N1' mis tähendab, et 8 data bitti, paarsust ei kontrollita (ju on siis kontrolliks mingi kavalam mehanism) ja 1 stop bit. 1 stop bit tähendab, et signaal viiakse pärast nn. 'mark' ehk kõrgele nivoole ja seal võib see püsida mitte-ettemääratud aja. Järgmise ringi alguse märgiks on signaali allalangemine mida nimetatakse ka 'clock'iks. Start bitt ei kuulu andmete hulka vaid signaliseerib, et uus ring läks lahti. Siin on oluline aru saada, et andmebittide (5,6,7,8) liikumise ajal on suhtlemine sünkroone. Aga need tsüklid võivad esineda mitteregulaarselt. Ja muidugi on ka siin võimalik kasutada kontrollmehanisme. Nt. iga 10. tsükkel on kontrollsumma eelnenud 9 kohta.

Andmebittide saatmise kiirused (bit/s) on kokkulepitult: 150, 300, 600, 1 200, 2 400, 4 800, 9 600, 19 200, 38 400.

Ja digitaalse info kandmisega üle digitaalse meediumi ei olegi eriti midagi muud: kontrollsummad ja kõik. Praktiliselt on selle kohta heaks näiteks arvutite ühendus serial null modemi kaabli abil.

Duplex

Seoses infovahetusega räägitakse no - , half -, ja full - duplexist ehk lihtsalt duplexist. St. seda kas konkreetne infovahetuse skeem võimaldab info liikumist ainult ühes suunas vaheldumisi kummaski suunas või korraga mõlemas suunas. Duplexist ma aga rohkem rääkida ei tea. Seda mõistet kasutatakse ka soundi kaartide juures.


Digitaalse info kandmine üle analoogse signaali jaoks mõeldud meedia


Praktiliselt pole alati kõige efektiivsem kahe suhtleja vahele panna digitaalset meediumi. Nt. suurte kauguste puhul. Siis on otstarbekam kasutada nt. raadiosidet või tavalist telefonitraati milles tegelikult liiguvad kah elektromangetlained ainult madalama sagedusega. Niisiis, lisandub uus probleem. Kuidas ühest arvutist väljuv digitaalne signaal muundada infokadudeta analoogseks. Sest meeidumis levib analoogne signaal. Ja kuidas teise arvuti juures püüda analoogne signaal kinni ja muundada tagasi digitaalseks. Ütlematagi on selge, et esialgne digitaalne ja lõplik digitaalne signaal peavad olema identsed.

Nüüd jõuame asja juurde kus tulevad mängu muu hulgas modemid. Modem tähendab moduleerima / demoduleerima. Modem on vahelüli digitaalse ja analoogse meediumi vahel. Modemid peavad nii töötama, et digitaalsed arvuti komponendid ei saa millestki aru. Selles mõttes, et nad ei tea mis imet vahepeal tehti või läbi milliste meediumite info käis.

Siiski, alustame juttu mitte modemite ehitusest aga sellest kuidas saab analoogsignaali jäädvustada digitaalsignaalis sisalduvat infot. Ilmselt tulem analoogsignaali moondada ehk moduleerida. Kui analoogsignaali on õnnestunud talletada digitaalses signaalis sisalduv info õeldakse, et oleme analoogsignaali moduleerinud digitaalsignaaliga. Selleks talletamiseks on tegelikult mitu võimalust.

Muide märgime veelkord, et analoogsignaali all tuleb ette kujutada signaali mis võib omada suvalisi väärtusi. Nt. mingi sagedusega eletriline pinge - kusjuures pinge võib omada suvalist sagedust, amplituudi ja faasi. Digitaalse signaali võib esitada samuti pingena kuid see pinge oleks bit väärtuse '0' puhul võrdne nt. 0 V ja '1' puhul 5 V. Ja kujutage nüüd ette, et soovite saata raadioantenniga digitaalsignaali kui on sattunud kõrvuti miljard '1', st. antennis on suhteliselt pikka aega pinge 5 V. Teadaolevalt aga ei levi sugugi hästi nii madala sagedusega elektromagnetilised lained.

Mis aga teha saab on nt. bittide 100110101 saatmiseks kasutada raadioantenni kuid saata kahe erineva sagedusega signaali. Vastuvõtja peab muidugi olema sellest teadlik.

Ja nt. nii:

bitt        sagedus
1            100 MHz
0             90 MHz
0             90 MHz
1            100 MHz
1            100 MHz
0             90 MHz
1            100 MHz
0             90 MHz
1            100 MHz

Ja antenni signaali sagedust tuleb muuta vastuvõtjaga varem kokkulepitud tempos, et side oleks sünkroonne. Antud juhul oli tegu sagedusmodulatsiooniga. Aga alltoodud näited selgitavad modulatsiooni ideid põhjalikumalt kuigi abstraktsemalt. St. kõnelemata antennidest.


Esmalt veendume, et analoogsignaalil on kolm komponenti: sagedus, amplituud ja faas:

Moisted.jpg

amplituud on maksimaalne hälve sagedus näitab mitu täisvõnget sooritatakse ajaühikus faas näitab kui palju on täisvõnkest sooritatud mingi võrdluspunkti suhtest. Tihti on vaja võrrelda kahte sama sagedusega võnkumist y1(t) ja y2(t). Nt. kui y1(t) = -y2 (t), siis üteldakse, et võnkumised on omavahel vastandfaasis. St. kui üks hakkab kahanema, siis teine hakkab kasvama; kui ühel on miinumumhälve on teisel maksimum.

Neid kõiki komponente või isegi mitut korraga saab kasutada info edasikandmisel modulatsiooniks. Olgu meil digitaalne signaal millega me moduleerime nn. kandesagedust. Kandesagedust produtseeritakse tavaliselt sagedusgeneraatoriga.

Amplituudmodulatsioon: Analoogsignaali kandvasse meediumisse suunatakse alumisel joonisel kujutatud võnkumised ja tõenäoliselt vastuvõtja muundab need tagasi digitaalsignaaliks.

Ampmod.jpg


Sagedusmodulatsioon Alumisel joonisel võib näha kuidas nö. seatud bittidele (1) vastab kõrgem sagedus kui seadmata bittidele (0).

Sagmod.jpg

Faasimodulatsioon Alumisel joonisel on näha, et kui digitaalse signaali nivoo muutub, siis vastab sellele faasimuutus 180 kraadi.

Faasmod.jpg


Modemites kasutatakse tavaliselt korraga amplituud ja faasimodulatsiooni. Kuidas see põhimõteliselt toimub selgub allpool.

Tuleb märkida olulist asja: multitplexing. See tehnika võimaldab saata mööda ühe füüsilist meediumi korraga (paralleelselt) mitut erinevat signaali.

Sageduslik multiplexing

On teada, et meediumis levivad lained (võnkumised) ei sega üksteist. St. et mööda ühte ja sama traati võib saata nt. 2 400 Hz sagedusega amplituudmoduleeritud signaali mis kannab nt. pala "Rong see sõitis tsuh, tsuh .." ja samal 1 200 Hz sagedusega amplituudmoduleeritud signaali mis esitab päevauudiseid. Antud juhul nimetatakse sagedusi 2 400 Hz ja 1 200 Hz kandesagedusteks. Kuidas tehniliselt tomub ühte traati mitme sageduse 'sisselaskmine' ja nende sealt 'kättesaamine' jäägu saladuseks, teadke et see on võimalik transistorite, poolide, takistite ja kondensaatorite abil :)

Ja nii pole mitte ainult traadiga, sama on ka vaakumiga kus kanduvad raadiolained. On teada, et meid ümbritsevad õhus on väga palju raadiolained ja pruugib vaid raadio häälestada lainele (st. kandesagedusele) ning me ütleme end mingit jaama kuulvat.

Igal meediumil on iseloomulik sageduste vahemik mis temas suhteliselt hästi kanduvad. Seda nimetatakse bandwidth'iks. Bandwidth jaotatakse tihti omakorda ribadeks millest iga nimetatakse samuti bandwidth'iks. Nt on raadiolainete skaala jagatud ultralühilaineteks, lühi-, kesk-, ja pikilaineteks. Ja kui me vaatleme nt. ühte konkreetset raadiojaama siis üteldakse, et talle on reserveeritud mingi sagedusriba (igapäevaselt: ta töötab mingil sagedusel). Ilmselt ei saa kaks raadiojaama töötada samas geograafilises piirkonnas ilma üksteist häirimata. Ja kahe raadiojaama ribad ei tohi asuda liiga kõrvuti, muidu hakkavad nad nö. läbi kostma.

Kuigi see jutt oli praegu konkreetselt raadioside kohta kehtib see põhimõtteliselt ühtviisi ka muude meediumit (nt. kaks vasktraati mida kasutatakse telefoniliinides) kohta.

Arvestades modulatsiooniks kasutatavat tehnikat ja seda millisesse vahemikku jäävad võimalikud sagedused mis konkreetses meediumis levivad jagatakse meediumi nö. töötav sagedusvahemik ribadeks. Igas ribas võib edastada erinevat signaali. Kui mitte kasutada sagedusmodulatsiooni, siis võiks näiteks telefoniliinis mis on projekteeritud nii, et seal levivad hästi 300 - 3 500 Hz võnkumised tekitada teoreetiliselt lõpmata palju ribasid(, pigem jooni). Aga kui need ribad asuvad nn. kandesageduse mõttes liiga lähestikku, siis nad hakkavad üksteist segama. Sagedusmodulatsiooni realiseerimiseks on põhimõtteliselt vaja olematu kandesageduse lähedal kahte sagedust: 0 ja 1 jaoks.

Multiplx.jpg

Esitatud ideed kirjeldav pilt kus on kujutatus meediumis välja eraldatud sagedusribad. Võimalik, et esimesel rida kandesagedust amplituudmoduleeritakse; teise riba mehed kasutavad sagedusmodulatsiooni ja kolmanda riba kasutajad kasutavad kõiki kolme modulatsiooni korraga.

Kui mööda sama meediumi saavutatakse samaaegne mitme signaali liikumine kasutades eri signaalide jaoks erinevaid ribasid üteldakse, et tegu on sagedusliku multiplexinguga.


Ajaline multiplexing

Siin antakse liin kasutamiseks kordamööda edastatavatele signaalidele. Iga üks kasutab info edastamiseks seda modulatsiooni mida sobivaks peetakse. Ja nii ringiratast. Märgime, et kui signaal saab liini siis saab ta kogu liini bandwidth'i!

Ajalmlpx.jpg


Kuidas analoogsignaali pakitakse digitaalset infot?

Modemi puhul ja ka raadio ja televisiooni puhul on tegemist sagedusliku multipleksinguga.

Vanad modemid kasutasid ühte kanalit - kandesagedus oli 1 850 Hz; teine variant oli 1 200 Hz ja 2 400 Hz - kaks kanalit. Mida kõrgem kandesagedus, seda kiiremini info liigub. Nt. Raadiolainetega levib info põhimõtteliselt aeglasemat kui sateliitsideks kasutatavate mikrowave'dega. Muuseas, mida lühem lainepikkus seda suunatavam laine on. Niisiis, ühes modemi kanalis liigub info kiiremini ja teises aeglasemalt. See pakub omakorda huvitavaid võimalusi.

Aga arutleme nüüd selle üle kuidas ühes kanalis infovahetus toimub, eriti mõeldes modulatsiooni peale. Varem tõime sisse andmebittide liikumise kiirust iseloomustava bit/s. Lisaks sellele kasutatakse sidetehnikas baud.

Baud näitab modulatsiooni kiirust ehk kui tihti muutuvad signaalielemendid.

Kui üks signaalielement sisaldab ühe biti siis on baud ja bit/s arvuliselt võrdsed kuid reeglina on bit/s arv suurem. Need on põhimõttelised erinevate suuruste mõõtühikud. Kuidas ikkagi nii saab olla? Kohe kirjeldame.

Olgu meil kasutada amplituudmodulatsioon (2 taset) ja faasimodulatsioon (2 faasi - järgmine signaalielement samas faasis eelmisega ja järgmine ja eelmine vastandfaasis). Ülekantavat digitaalset infot ja tekkivat analoogsignaali kirjeldab joonis (punktiirid eraldavad kõrvutiste bittide paare):

Debit.jpg

Pange tähele, et signaalielementidel on neli võimalikku olekut eelmise signaalielemendi suhtes:

- pole amplituudi muutust ega faasimuutust - on amplituudi muutes kuid pole faasimuutust - pole amplituudmuutus kuid on faasimuutus - on aamplituudi ja faasi muutus

Ja nii kujunenud iga nelja moduleeritud signaali olekut ehk signaalielementi võib kasutada kahe biti kirjeldamiseks. Kahe bitiga saab esitada samuti neli erinevat olekut. Illustreerime seda veel ühe joonisega (see on kooskõlas eelmise joonisega):

Debitdiag.jpg

Kui kantakse üle kahe biti '0 0' järel samuti ' 0 0' siis analoogsignaal jääb muutumatuks. Kui kantakse '0 0' järel '0 1' siis pole vaja faasi muuta - tuleb muuta vaid sagedust. Niisiis parempoolne bitt vastab amplituudile. Kui kavatsetakse '0 0' järel üle kanda '1 0', siis jääb amplituud samaks kuid tuleb analoogsignaal viia vastandfaasi. Kui kavatasetakse '0 0' järel üle kanda '1 1' siis tuleb muuta nii amplituudi kui ka faasi. Niisiis, vasakpoolne bitt vastab faasi 180 kraadisele muutusele.

Antud juhul tuleb ilmekalt välja kuidas 1 signaalielemendile vastab 2 bitt. Ja nii võib õelda, et antud juhul on bit/s topelt suurem arv kui baud. Tavaliselt jäädakse 2 400 baud juurde.

Praktiliselt siiski ei piirduta nii väheste faasidega:

Debit16.jpg

See tähendab et ühte signaalielementi saab sisse panna 4 bitti: 4 bitti võivad väljendada samuti 16 kombinatsiooni.

Ja kui järele mõtelda, siis ühe modulatsiooni muutusega kandub edasi 4 bitt. Ergo - kui modulatsiooni tempo on 2 400 baud siis antud juhul vastab sellele andmebittide kiirus 4 * 2 400 = 9 600 bit/s.

Ja modemid on praktiliselt sellised, et kui nad omavahel suhtlema hakkavad, siis nad algul lihtsalt 'ragistavad' natuke aega - lepivad kokku kiiruses, siin on oluline roll ka liinil.

Mina kunagi püüdsin võtta ühendust EENet'i sissehelistamiskeskusega ja olin juba pahane, et 'kuradi mehed' kasutavad 1998 aastal 2 400 bit/s modemeid. Aga tegelikult oli see mu oma loll järeldus. Kuna ma ei suutnud NT'd automaatselt valima panna, siis valisin käsitsi numbri ja kui juba ragisema hakkas panin toru ära ja arvuti võttis üle. Tõenäoliselt vaatasid modemid, et liin on nii vilets, et jätkasid kõige madalamal kiirusel.

Peale selle, tihti on nii, et enne kui data modemisse saadetakse pakitakse ta enne ära ja modem ise pakib teda kah. Ja sõltuvalt pakkimisest ja veakorrektsioonist kõneldakse standarditest V32, V32bis, V34, V42bis jt.

Ja ega keegi keela ka enam kui 2 amplituudi ja 4 faasi kasutada - mida rohkem neid on seda parem/suurem on bin/s ja baud/s suhe.