You are on page 1of 85

Glava 1

UVOD
1.1 Uvod

Poslednjih trideset godina svet je svedok jedne nove, raunarske revolucije. Rac unari menjaju na ivot ulazei u sve njegove pore poev od radnog mesta, do c s z c c linog ivota i hobija. c z Osnovna karakteristika raunarske evolucije je da raunari postaju sve bri, c c z manjih dimenzija i pouzdaniji i to je posebno vano jeftiniji. Odnos performans z si raunara i njihove cene u poetku prema dananjem odnosu prema skromnim c c s procenama porastao je vie stotina hiljada puta pa i do milion puta. Ovakav s razvoj nije imala nijedna oblast ljudske delatnosti u istoriji oveanstva. Stvorene c c su mnoge nove tehnologije, razvijena nova arhitektonska reenja, realizovane vis soko integrisane komponente, memorije, a stvoren je i veliki broj novih perifernih memorija i ulazno izlaznih ured aja. Uporedo sa ovim razvojima irili su se i pravs ci primene raunarskih sistema. Stvorena su mnoga nova znanja i izgrad c eno je iskustvo kako da koristimo raunare. c Posebano buran razvoj usledio je pojavom mikroprocesora i mikroraunara. c Zahvaljujui veoma brzom razvoju tehnologije i organizacije raunara mikroprocec c sori i mikroraunari su za kratko vreme (desetak godina) proli kroz tri generacije c s za ta je velikim raunarima bilo potrebno tridesetak godina s c

1.2

Istorijskipregled razvoja mikroprocesora

Praosnovu (prazaetak) mikroprocesora moramo potraiti u dalekoj 1964. godini. c z To je pojava prvih integrisanih kola malog stepena integracije SSI (Small Scale Integration). Bila su to logika kola (nivo gejtova). c 1

GLAVA 1. UVOD

Registri u ipu, kola srednjeg stepena integracije, MSI (Medium Scale Integrac tion) pojavila su se 1968. godine. Dalji podstrek poveanju stepana integracije dali su svemirski i vojni programi. c U njima je minijaturizacija bila jedan od glavnih zahteva. Komercijalni ipovi u c LSI (Large Scale Integration) tehnologiji pojavili su se 1971. godine. U prvoj polovini 1971. bila su standardizovana samo dva LSI proizvoda: 1K DRAM (dinamika memorija) c UART (komponenta za serijski prijem i predaju). U to vreme niko nije mogao predvideti budue standardne proizvode. c U drugoj polovini 1971. pojavio se mikroprocesor INTEL 4004, kao plod saradnje amerike rme INTEL i jedne japanske fabrike kalkulatora. Dakle prvi c mikroprocesor (4 bita) bio je predvid kao kalkulatorski ip. en c Sledeem znaajnijem dogad c c aju prethodi: Inenjeri iz DATA POINT-a iz San z Antonija (Teksas, SAD), proizvod ca inteligentnih terminala i malih raunarskih a c sistema, projektovali su jednostavan raunar sa namerom da ga ugrade u terminal. c Potpisan je dogovor sa INTELom i TEXAS INSTRUMENTSom za realizaciju tog raunara ujednom ipu. INTEL je uspeo da proizvede ip, ali je on izvravao c c c s instrukcije priblino deset puta sporije nego to je to naruilac posla zahtevao. z s c DATA POINT je otkazala kupovinu i raskinula ugovor. INTELu je ostao taj proizvod slian raunaru u iji je razvoj prilino investirao. Ostala je dilema da c c c c li i dalje proizvoditi i prodavati taj neuspeli proizvod ili ga ostaviti na policama skladita. Na sreu, odluili su se da ga proizvode i nazvali su ga INTEL 8008 i s c c prvi pravi mikroprocesor je stvoren. Bila je to 1972. godina. U toku naredne dve godine pojavili su se vodei standardni 8-bitni mikroproc cesori: 1973. INTEL 8080 1974. Motorola M6800 1975. Rockwell PPS-8 i Signetics 2650A 1976 ZILOG Z-80 i RCA COSMAC CDP 1802 1977. INTEL 8085 1978. M6809, 8086 (16-bitni) i Z8 (mikroraunar u ipu) c c 1979. Z8000, 8088 i MC68000 (svi 16bitni) 1981. iAPX 432 (32bitni) i RCA 1805 (izrad u SOS tehnologiji). en

1.3. POLUPROVODNICKE MIKROPROCESORSKE TEHNOLOGIJE

VLSI (Very Large Scale Integration) tehnologija omoguila je dodavanje mic kroprocesoru vie internih registara opte namene, da se povea broj naina adres s c c siranja i da se izvedu mikroraunari u ipu. c c

1.3

Poluprovodnike mikroprocesorske tehnologije c

Postoje dve glavne poluprovodnike tehnologije: c MOS Biplolarna

1.3.1

MOS tehnologija

Mikropprocesori izrad eni u MOS (Metal Oxide Semiconductor) tehnologiji su ekonominiji u odnosu na bipolarne zbog jednostavnije izrade i manje potronje. Zbog c s toga je veina standardnih mikroprocesora izrad c ena u MOS-u. Nedostatak je manja brzina. Za realizaciju ured aja gde je brzina kritina, recimo obrada signala u c realnom vremenu, koriste se bipolarni mikroprocesori sastavljeni od vie ipova (bit s c slice), na primer odvojena ALU (aritmetiko logika jedinica) u 4-bitnim krikama, c c s mikroprogramska upravljaka jedinica itd. c P-kanalni MOS (PMOS) N-kanalni MOS (NMOS) komplementani MOS (CMOS) PMOS je relativno najstarija MOS tehnologija. Mikroprocesori INTEL 4004 i 8008 bili su nainjeni u ovoj tehnologiji. Gustina integracije iznosi od 3000 do c 5000 tranzistora u ipu. Sporija je u odnosu na novije MOS tehnologije. c NMOS tehnologija je bra od PMOS tehnologije i procesori izrad z eni u ovoj tehnologiji imaju tipine brzine naredbi 1s. Daje izvrsnu gustinu i najbolji komc promis u proizvodnji brzih i sloenih mikroprcesora. z CMOS tehnologija upotrebljava kombinaciju P-kanalnog i N-kanalnog tranzistora kao osnovni element (invertor). Ovde je uvek jedan tranzistor otvoren a drugi zatvoren pa je struja kroz osnovni sklop mala, a time i potronja celog sklopa krajne s mala. Nedostatak je relativno niska radna uestanost (10MHz) ali se i to poveava. c c Izuzetna prednost je neosetljivost na umove (do 40napajanja (3 - 18V). Mikropros cesori izrad eni u ovoj tehnologiji koriste se u vojnim sistemima, avio i svemirskim primenama tj. u sistemima gde se zahteva krajne mala potronja, prenosivost, s

GLAVA 1. UVOD

temperaturna stabilnost i slino. Na primer, mikroprocesor RCA COSMAC CDP c 1802 na radnoj uestanosti od 2MHz ima temperaturni opseg od -55Mo C do 125o C, c a Intersil 6100 na 4MHz i napajanju od 5V opseg od -65o C do 125o C.

1.3.2

Bipolarna tehnologija

Najznaajnije podgrupe bipolarne tehnologije su: c Schottky TTL LPS TTL (Low Power Schottky TTL, Schottky TTL male snage) ECL (Emitter Coupled Logic, sa emitrorskom spregom) I2 L (Integrated Injection Logic) I2 L tehnologija se zbog gustine integracije upotrebljava za realizaciju LSI komponenata. TTL, ECL i LPS TTL se pored za izradu LSI kola koriste i za izradu SSI i MSI kola. Zbog ograniene gustine integracije TTL i ECL se koriste za izradu c bit slice komponenti mikroprocesora. Schottky TTL male snage (LPS TTL) upotebljava se za realizaciju mikroprocesora pomou bit slice komponenti sa vremenima instrukcija od 50ns do 100ns. c Pored prednosti (velika brzina), bipolarna tehnologija ima i nedostatke (izuzev I2 L): c s znaajnu potronju nisku gustinu integracije

1.3.3

Ostale tehnologije

Od ostalih poluprovodnikih tehnologija pomenimo jo i: c s CCD (Charge Coupled Device) se koristi za izradu memorija. Prednosti su joj velika gustina integracije i niska cena magnetni mehurovi (bubble), se takod koristi za izradu memorija velikog e kapaciteta(1Mb i vie) s MNOS (Metal Nitride-Oxide-Semiconductor) se koristi za izradu EAROM (Electrically Alterable ROM) memorija VMOS (V-Shaped notch MOS) c DMOS (Double diused MOS) se koristi za izradu dinamikih memorija velike gustine.

1.4. PODRUCJA PRIMENE MIKRORACUNARA

1.4

Podruja primene mikroraunara c c

Veliki broj proizvoda specijalne ili opte namene u sebi sadri mikroprocesore i s z mikroraunare. Mikroraunar je u stanju da uradi odred c c ene zadatke bre, bolje z i ekasnije od oveka. On moe da prihvati i obradi vie informacija nego ovek c z s c oslobad ci oveka od ponavljanja odred aju c enih operacija. Brzina kojom obavljaju operacije i koliina podataka koje obrad c uju, uticali su da se mikroraunari primene c u raunarskoj tehnici, industriji, telekomunikacijama, instrumentaciji, automobic lima, aparatima za domainstvo i slino. c c

1.4.1

Raunarska tehnika c

Cim su se pojavili mikroprocesori su nali iroko podruje primene u raunarskoj s s c c tehnici. Danas je nezamislivo imati videoekrane, teleprintere, serijske i paralelne tampae, jedinice magnetnih traka i diskova, crtae (plotere), itae i buae s c c c c s c papirne trake i drugu perifernu opremu, a da u njoj nisu ukljueni i mikroprocesori. c Veina savremenih terminala ima u sebi odred skup dodatnih funkcija kao to c en s su baferovanje podataka, editorske funkcije, formatiranje i raspakovanje podataka, detekcija pogrenog prenosa i sl. s Mikroprocesori su svojim prodorom u oblast raunarskih periferija s jedne c strane omoguili znatno jednostavniju realizaciju upravljanja i praenja statusa c c perifernih ured aja i smanjili kompleksnost raznih logikih sistema koji su se za ovo c koristili i, s druge strane, znatno rasteretili raunarski sistem odered c enih funkcija koje on mora da obavlja nad perifernim ured ajima. Na ovaj nain je dolo do prve c s distribucije funkcija izmed centralnog procesora i mikroprocesora koji upravljaju u periferijom. Drugi put, koji su otvorili mikroprocesori, je stvaranje monih raunarskih sic c stema baziranih na kooperativnom radu vie mikroprocesora. U tom smislu razvis jene su potpuno nove arhitetkture multimikroprocesorskih sistema. Takod su se pojavili i distribuirani multimikroprocesorski sistemi u kojima poe jedini mikroprocesori mogu da budu med usobno znatno udaljeni. Osnovni problem u realizaciji ovih sistema su komunikacije bazirane na serijskom prenosu podataka. Zbog toga su razvijena posebna kola za spregu koja omoguuju veoma brze serijske c prenose. Mikroprocesori se koriste za obavljanje komunikacionih funkcija u terminalima, mreama mini i velikih raunara, komunikacionim raunarskim mreama u kojima z c c z se podaci prenose digitalno, u sistemima za kodiranje i kriptograju i sl. Veliku primenu mikroraunari su nali u prilagod c s avanju protokola za prenos podataka u mreama raunara, kao i u prilagod z c avanju raznih ured aja da bi ovi mogli da med usobno komuniciraju u ovakvim mreama. z

GLAVA 1. UVOD

Potpuno novo podruje su sistemi za prenos dokumenata i teksta (teletekst) c na daljinu. Dekoderi teleteksta realizovani sa mikroprocesorima omoguavaju da c se prihvati stranica teksta i prikae na kunom televizoru u crno beloj tehnici ili z c u boji.

1.4.2

Instrumentacija

Razne vrste instrumenata, kao to su digitalni multimetri, brojai, generatori s c frekvencije, osciloskopi, spektralni analizatori, logiki analizatori i drugi, izvukli c su jednu od najveih koristi ukljuivanjem mikroprocesora. c c U jednostavnim instrumentima programabilnost mikroprocesora obezbed uje jednostavno unoenje i analizu mernih podataka, prikaz podataka u obliku pogods nom za operatera, samotestiranje i samokalibraciju, komuniciranje sa raunarom i c drugim instrumentima. Postojanje standardnih magistrala, kao to je IEEE-488, dozvoljava da se vie s s instrumenata vee na mini ili mikroraunar opte namene i tako dobije veoma z c s sloena oprema za automatsko testiranje. z

1.4.3

Upravljanje procesima

Mikroprocesori su u velikoj meri uli u podruje nadzora i upravljanja industrijs c skim procesima zamenjujui gde kod je to mogue standardne analogne regulatore i c c diskretnu logiku s jedne strane, i mini raunare, s druge strane. Oni se uporebljavac ju u sistemima za kontrolu kvaliteta, sistemima za automatsko merenje, pakovanje, sistemima za numeriko upravljanje alatnim mainama, mainama za manipulisanc s s je materijalima, sistemima za pravljenje smea, meraima protoka tenosti i gasa s c c i slino. c Mikroprocesori su sastavni deo sloenijih sistema za nadzor i upravljanje proz cesima kakvi su, na primer, telemetrijski sistemi koji povezuju vie mernih stanica s esto med c usobno udaljenih i stotine kilometara. Pored ovih funkcija mikroprocesori u takvim sistemima obavljaju i znaajan broj komunikacionih funkcija, kao to c s su realizacija protokola za prenos podataka, provera ispravnosti prenosa i slino. c Jednu od najznaajnijih primena mikroprocesori nalaze u raznim sistemima c vezanim za pokuaje tednje energije: automobilima, upravljanje razliitim eleks s c trinim aparatima i motorima, sistemima za proizvodnju energije, upravljanju soc larnim baterijama i sl. U ovakvim primenama javlja se vrlo esto kao teak probc z lem obezbed enje adekvatnih uslova rada mikroprocesora, s obzirom na specinost c okoline u kojoj rade. Takvi su problemi ekstremnih temperatura, velikih temperaturnih promena, vibracija, jakih elektrinih polja, eksplozivnih zona i sl. Za te c primene koriste se mikroprocesori izrad eni u posebnim tehnologijama.

1.4. PODRUCJA PRIMENE MIKRORACUNARA

1.4.4

Medicina

Siroku i obimnu primenu mikroprocesori su nali odmah u raznim podrujima s c medicine. Kao prvo spomenimo veliki broj instrumenata raznih namena, poev od c analize sastava krvi do merenja krvnog pritiska, koji u sebi imaju znaajan stepen c inteligencije. Drugo podruje su razna pomagala koja treba da pomognu hendikepiranim c osobama. Tako su realizovani pretvarai teksta u govor, kao i ured c aji koji govore informaciju otkucanu preko tastature. Ovi ured aji prvenstveno su namenjeni slepim osobama. Slino su realizovani i ured c aji koji pomau gluvim osobama z (daljinsko uvo, stimulaor koe i slino). z c Novo podruje u kom se oekuje znaajan napredak bazira se na htenju da c c c se trokovi leenja smanje dranjem pacijenta van bolnice. Tome izmed ostas c z u log treba da doprinese i raunarski potpomognuta zdravstvena zatita kod kue. c s c Mikroraunari bi trebali da budu sastavni deo kunih terminala koji bi osobi sa c c relativno skromnom obukom mogli da daju uputstva za jedan dan. Takod doe davanjem odred enih instrumenata mogla bi da se izvre merenja krvnog pritiska, s teine, temperature i slino, a veliki raunar bi isporuivao dijagnozu kunom terz c c c c minalu. U ovom uvodu izostavljena su mnoga znaajna podruja primene mikroprocec c sora, kao to su poslovni i administrativni sistemi, saobraaj, vojne primene, kuni s c c i ured za zabavu. Kako je izgledala zastupljenost mikroprocesora po pojedinim aji oblastima prikazano je u Tabeli 1.2. i na Sl.1.1.

GLAVA 1. UVOD

Glava 2

ARHITEKTURE MIKRORACUNARA
2.1 Osnovne komponente mikroraunara c

Osnovni delovi mikroraunara prikazani su na Sl.2.1. Obrada podataka unutar c mikroraunara obavlja se u tako to se u jednom trenutku obrad c s uje jedna re. c Duina rei kod mikroraunara najee je 8 ili 16 bitova, a moe biti i 4, 12 ili 32 z c c c sc z bita.

Sl. 2.1: Osnovni delovi mikroraunara c Osnovni delovi mikroraunara obavljaju sledee zadatke: c c Procesor koordinira sve aktivnosti unutar mikroraunara i izvrava instrukc s cije u traenom redosledu. On koordinira prenos podataka kako izmed ulaza i z u mikroraunara, tako i izmed mikroraunara i izlaza. c u c Generator sinhro signala (CLOCK) omoguava jednoznaan vremenski period c c odvijanja svih operacija. 9

10

GLAVA 2. ARHITEKTURE MIKRORACUNARA

Ulazni port se sastoji od odred enog broja linija (najee onoliko kolika je c sc duina rei) preko kojih se u trenutku izvravanja ulazne instrukcije unosi podatak z c s u mikroraunar. Ovakva veza je elektrino uspostavljena samo odred c c eno vreme koje specicira procesor, a zatim se ponovo prekida. To je omogueno korienjem c sc bafera sa tri stanja koji, nakon prestanka signala dozvole E, prelaze u stanje visoke impedanse i vie elektrino ne optereuju magistralu. Ulazni port i nain s c c c njegovog povezivanja prikazani su na Sl.2.2.

Sl. 2.2: Ulazni port sa tri stanja Izlazni port se sastoji od linija na kojima se pojavljuje podatak koji treba preneti na izlazni ured u trenutku izvrenja izlazne instrukcije. Podatak je prisuaj s tan na izlazima porta sve dok se ne pojavi naredna izlazna instrukcija. Izlazni port ini niz D- ip opova. Struktura i nain povezivanja izlaznog porta prikazani su c c na Sl.2.3.

Sl. 2.3: Izlazni port ROM, ili memorija samo za itanje, slui za smetanje podataka i/ili instrukcija c z s koje odraavaju algoritme koje mikroraunar izvrava u datoj primeni. Poto ROM z c s s

2.1. OSNOVNE KOMPONENTE MIKRORACUNARA

11

dozvoljava samo itanje to su u ovu vrstu memorije smeteni programi u svom c s konanom proverenom obliku, kao i ksne tabele i konstante. Nain povezivanja c c ROM memorije prikazani su na Sl.2.4.

Sl. 2.4: ROM memorija

RAM, ili memorija sa prizvoljnim pristupom, obezbed uje privremeno smetanje s podataka i/ili programa koji se unose preko ulaznih portova i koji se generiu s unutar procesora kao deo algoritamskog procesa koji zahteva data primena.Nain c s povezivanja RAM memorije prikazani su na Sl.2.5. Signal E se generie kao kod ROM memorije i ulaznog porta, a signal W kao kod izlaznog porta.

Sl. 2.5: Memorija sa proizvoljnim pristupom

12

GLAVA 2. ARHITEKTURE MIKRORACUNARA

2.2

Magistrale mikroraunarskih sistema c

Skupovi linija koje povezuju pojedine delove mikroraunarskih sistema i slue za c z prenos elektrinih signala nazivaju se magistrale (bus). Svi mini i mikroraunari c c mogu da se klasikuju prema strukturi magistrale na: sisteme sa jednom (jedinstvenom) magistralom sisteme sa odvojenom ulazno/izlaznom magistralom sisteme sa vie magistrala s

2.2.1

Sistem sa jednom magistralom

Najjednostavniju strukturu ima sistem sa jednom magistralom koja povezuje sve module mikroraunarskog sistema (Sl.2.6). Pod modulima se podrazumevaju proc cesori, memorije i U/I ured aji. Kod ovakvih sistema U/I ured se adresiraju kao i aji memorija. Kao primer takvih sistema moe posluiti PDP 11 u klasi mini sistema, z z i M6800 u klasi mikro sistema.

Sl. 2.6: Sistem sa jednom magistralom Magistrala sistema se moe podeliti na tri dela: z magistrala podataka (za prenos podataka izmed modula) u adresna magistrala (za izbor memorijskih lokacija i U/I ured aja)

2.2. MAGISTRALE MIKRORACUNARSKIH SISTEMA

13

upravljaka magistrala (za prenos upravljakih signala: signal upisa, sigc c nal itanja, zahtev za korienje magistrale, magistrala zauzeta, magistrala c sc raspoloiva, podatak spreman, zahtev za prekidom, prekid odobren i slino). z c Postoje tri vrste prenosa podataka po magistrali: prenosi pod nadzorom (kontrolom) programa prenosi pod kontrolom prekida direktan memorijski pristup (DMA). O svakom od ovih naina prenosa bie vie rei kasnije. c c s c

2.2.2

Sistem sa odvojenom ulazno/izlaznom magistralom

U sistemima sa odvojenom U/I magistralom moduli sistema su povezani preko dve magistrale (Sl.2.7).

Sl. 2.7: Sistem sa odvojenom U/I magistralom Ulazno/izlazna magistrala spaja procesor i DMA modul sa raznim U/I ured ajima i slina je magistrali u sistemu sa jednom magistralom. c Periferni ured mogu da komuniciraju sa procesorom i DMA modulom preko aji sprenih mrea vezanih za U/I magistralu. Radom svakog sprenog modula moe z z z z se upravljati programski ili DMA modulom. Centralizovani DMA modul pojednostavljuje hardversko vezivanje U/I ured aja. DMA modul obavlja pakovanje znakova (bajtova) u rei, raspakovanje rei, sadri c c z adresu poetne lokacije memorije u koju (iz koje) se vri prenos, duinu bloka c s z podataka za prenos i adresu sledee lokacije kojoj e se pristupiti. c c

14

GLAVA 2. ARHITEKTURE MIKRORACUNARA

2.2.3

Sistem sa vie magistrala s

Veliki broj mini raunara poseduje strukturu sa vie magistrala (Sl.2.8). Za svaki c s od pomenutih naina prenosa koristi se posebna magistrala. Jedna za prenos pod c kontrolom prekida i programa, a druga za prenos pod kontrolom DMA modula. Sprena mrea svakog perifernog ured z z aja unapred je predodred ena za nain c obavljanja prenosa. Ovo omoguava da se za svaki perifeni ured koristi jednosc aj tavnija sprena mrea, a i da se izvri optimizacija protokola za komuniciranje z z s modula za svaku magistralu posebno.

Sl. 2.8: Sistem sa vie magistrala s

2.2.4

Sistemi sa odvojenom adresnom magistralom i magistralom podataka

Najvei broj dananjih mikroraunarskih sistema koristi organizaciju sa jednom c s c magistralom, koja u sebi sadri: z adresnu magistralu magistralu podataka upravljaku magistralu c Na Sl.2.9. dat je ovakav sistem sa pojednostavljenom upravljakom magisc tralom. Adresna magistrala u primeru sa slike ima 16 linija A0 - A15, pri emu linije A8 c -A15 ine vii bajt adrese (moe se rei adresu stranice), a linije A0 -A7 ine nii c s z c c z

2.2. MAGISTRALE MIKRORACUNARSKIH SISTEMA

15

bajt adrese (adresu unutar stranice, tako da je memorija stranino organizovana c u 256 stranica sa 256 bajtova u svakoj stranici). Uobiajeno je da se U/I ured c aji adresiraju viim bajtom adrese. s Magistrala podataka, koju ine linije D0-D7, ili onoliko kolika je duina rei c z c mikroraunara, je dvosmerna, mada ima i varijanti sa odvojenim smerovima. U c takvim sluajevima smer je odred signalima na upravljakoj magistrali. c en c U primeru sa Sl.2.9. upravljaka magistralu, ilustracije radi, ine samo dve c c linije R (za itanje) i W (za upis). c

Sl. 2.9: Sistem sa nemultipleksiranim magistralama

2.2.5

Sistemi sa multipleksiranom adresnom i magistralom podataka

Veina dananjih mikroraunara koristi u prethodnom delu opisanu strukturu sa c s c odvojenim magistralama za adrese i podatke. Med utim postoji i niz mikroraunara c koji koriste nekakvo vremensko multipleksiranje ovih magistrala. Na primer mogu se multipleksirati: s z vii i nii bajt adrese (familija RCA COSMAC CDP 1802, 1804, 1805 mikroprocesora). Za demultipleksiranje se koristi signal TPA. vii bajt adrese i podaci (INTEL 8085), ili AD0 - AD15 (INTEL 8086). Za s demultipleksiranje se koristi signal ALE. podaci i stanja (INTEL 8080). Za demultipleksiranje se koristi konjunkcija signala 1 TTL i SYNC. Sve ovo je rad eno zbog ogranienog broja prikljuaka na komponentama. Ovim c c se dobija vei broj linija za upravljake signale. c c Arhitektura sistema sa potpuno multipleksiranim linijama prikazana je na Sl.2.10., a nain demultipleksiranja adresa od podataka na Sl.2.11. c

16

GLAVA 2. ARHITEKTURE MIKRORACUNARA

Sl. 2.10: Sistem sa multipleksiranim magistralama

Sl. 2.11: Sistem sa multipleksiranim magistralama

2.3

Povezivanje U/I ured aja

Povezivanje CPU i U/I ured aja predstavlja kompromis izmed softvera i hardvera. u Prednost hardvera je brzina, a mana mu je neekisbilnost. Kod softvera je obrnuto, prednost je ekisbilnost, a mana mala brzina. Povezivanje se moe ostvariti angaovanjem CPU, preteno softverski uz miniz z z malno hardvera, ili hardverski realizovanim inteligentnim specijalizovanim kontrolerima sa minimalno softvera. Negde izmed ove dve granice je najee korieno u c sc sc reenje tipa master (CPU) i slave (periferija). U ovom sluaju glup periferni ip s c c ima odred broj ugrad en enih funkcija, koje se aktiviraju od strane CPU-a upisom upravljakih rei u odgovarajui (upravljaki) registar. Periferni ip obavlja mnoge c c c c c

2.3. POVEZIVANJE U/I URED AJA

17

zadatke, tako da CPU moe da se posveti samom sebi. z Tekui trend je razvoj koprocesorskih perifernih ipova, koji omoguuju istoc c c vremeni rad i procesora i koprocesora, koji komuniciraju jedan sa drugim po zavretku posla. U mnogim sluajevima su koprocesori toliko inteligentni, da su njis c hove mogunosti obrade jednake mogunostima obrade glavnih procesora. Ovo je c c dovelo do razvoja veoma vrsto spregnutih vieprocesorskih sistema i distribuiranih c s vieprocesorskih sistema. s Drugi trend je razvoj custom ipova, kada se koristi mikroraunar u ipu da c c c rei neke specine zadatke (na primer, i8021 se koristi u tastaturi kod Apple s c McIntosh-a). Najea se struktura nekog U/I porta prikazuje kao skup registara ili bafera c sc kao na Sl.2.12. Ovo baferovanje podataka omoguava da dok CPU ita (upisuje) c c podatke port moe da obezbed z uje neke druge fuknkcije. Takod omoguava i e c usklad ivanje razliitih brzina izmed CPU i periferija. Recimo printer ne moe da c u z primi blok karaktera (256) koji se zato upisuju (baferuju) u U/I lokalnu memoriju.

Sl. 2.12: Struktura U/I porta Baferovanje takod omoguava i usklad e c ivanje razliitih naponskih nivoa. CPU c obino ima TTL nivoe 0V i 5V a periferija moe da ima i neke druge. c z U/I interfejs moe vriti i konverziju iz jednog zapisa u drugi (recimo ASCII z s ili BCD u binarni). Sa softverske strane baferovanje moe da omogui neki paralelizam. z c Dvostruko baferovanje je prikazano na Sl.2.13. Svaki bafer se koristi alternativno od CPU i diska. Dok CPU ita iz bafera A podaci sa diska se smetaju u c s bafer B, a zatim obrnuto. CPU ita iz bafera B a podaci sa diska se stavljaju u c bafer A. Sledei primer je ciklino baferovanje (Sl.2.14.). Ovo je poznato pod imenom c c FIFO bafer. U praksi se mora voditi rauna da duina bafera bude dovoljna da c z se ne dogad aju prekoraenja. Pointeri se menjaju po modulu duine bafera. Ova c z kruna lista se moe koristiti i za spregu asinhronih periferija na sinhrone procesore. z z

18

GLAVA 2. ARHITEKTURE MIKRORACUNARA

Sl. 2.13: Dvostruko baferovanje

Sl. 2.14: Ciklino baferovanje c

2.3.1

Naini povezivanja U/I ured c aja

U odnosu na nain adresiranja U/I ured c aja mogue je izvriti podela na: c s odvojeni (izolovani) U/I, i U/I preslikan na memoriju. Tabelarno pored enje ove dve tehnike dato je u Tabeli 2.1 Tabela 2.1 Prednosti i mane naina povezivanja U/I c
MEMORIJSKI PRESLIKAN U/I ODVOJENI U/I prednosti adresiranje potpuno isto kao i memorije ne smanjuje adresni prostor memorije ne zahtevaju se nove U/I naredbe krae naredbe (bre se dekodiraju) c z praktino neogranien broj U/I ured c c aja prostije dekodiranje adresa mane smanjuje se adresni prostor memorije sloenije dekodiranje adresa z dodatne linije ogranien skup naredbi c

Na primer Intel se opredelio za odvojeni U/I, a Motorola za memorijski preslikan U/I. Motorola je ideju pozajmila od DEC-ovog PDP11 i VAX familije miniraunara. Uoimo osnovne osobine (prednosti i mane) ova dva naina organizacije c c c U/I.

2.3. POVEZIVANJE U/I URED AJA

19

Sl. 2.15: U/I preslikan na memoriju

Sl. 2.16: Odvojeni U/I Kod odvojenog U/I ne smanjuje se adresni prostor memorije. Postoje odvojene linije za U/I. To se moe izvesti na dva naina: z c Za adresiranje U/I se koriste posebne adresne linije, na primer N linije kod COSMAC-a. Za adresiranje U/I se koriste iste adresne linije (ili njihov deo) kao i za memoriju, ali se dodatnom linijom odred uje priroda adrese na adresnoj magistrali, kao na primer IO/M kod INTEL-a. Kod odvojenog U/I obavezne su dodatne naredbe u spisku naredbi tipa IN ili INP i OUT. Ove naredbe obino imaju krai format od ostalih naredbi i bre se c c z izvravaju. s Kod U/I preslikanog na memoriju za obraanje U/I se koriste iste naredbe kao c i za obraanje memoriji, pa se zato smanjuje adresni prostor memorije. Ukoliko c elimo da to smanjenje bude to manje uslonjava se dekodiranje adresa. Predz s z nost je to se mogu koristiti sve naredbe koje se koriste za obraanje memoriji. s c MOTOROLA nema IN i OUT naredbe (znai dve naredbe manje). Kod U/I presc likanog na memoriju broj U/I ured aja je praktino neogranien. c c

20

GLAVA 2. ARHITEKTURE MIKRORACUNARA

2.4

Naini organizacije U/I aktivnosti c

Trenuci u kojima dolaze podaci iz spoljnjeg sveta u CPU su nepredvidivi. Zato mora da postoji neki nain da se izvri sinhronizacija procesora sa spoljnjim doc s gad ajima. Za odred ivanje trenutka prenosa postoji vie naina. Kao to je ve s c s c reeno postoje tri vrste U/I prenosa podataka po magistrali: c programirani U/I prenosi: bezuslovni uslovni prenosi pod kontrolom prekida direktan memorijski pristup (DMA). Kod programiranog U/I prenosom u potpunosti upravlja mikroprocesor, odnosno program koji se trenutno izvrava. s Prekidom iniciran U/I, kao to samo ime kae, izazvan je zahtevom U/I logike s z da procesor prekine sa izvrenjem tekueg niza naredbi i da pred na izvrenje niza s c e s naredbi koje omoguavaju U/I prenos. c Kod DMA prenosa mikroprocesor ne prekida svoj niz naredbi, ve prenosom c upravlja DMA kontroler.

2.4.1

Programirani U/I prenosi

Programirani U/I prenosi mogu biti bezuslovni i uslovni. Bezuslovni U/I prenosi se obaljaju bez obzira da li je periferija spremna za prenos, odnosno kod onih periferija za koje smo sigurni da su uvek spremne za prenos. Kod uslovnog U/I prenosa vodi se rauna da li je periferija spremna za prenos. c Na slikama Sl.2.17a. i Sl.2.17b. prikazani su algoritmi delova programa u kojima se zahteva nekavo tampanje. U primeru sa Sl.2.17a. mogua je beskonana petlja s c c ako je iz bilo kog razloga periferija stalno nespremna za prenos (na pr. tampa s c nije ukljuen, nema papira i slino). U primeru sa Sl.2.17b. je to otklonjeno c c ogranienjem broja prolazaka kroz ispitnu petlju. c U sluaju da je na CPU prikljueno vie U/I ured c c s aja koji mogu zahtevati prenos procesor bi morao periodino da ispituje da li periferije zahtevaju prenos. c Softverska tehnika, gde procesor propituje periferne ured aje da li ele uslugu, zove z se prozivka (Polling). U/I ured postavlja neki indikator (SR) kada je spreman aj za prenos podataka. Procesor proziva ured aje redom i ide sa jedne U/I rutine na drugu zavisno od toga da li su indikatori postavljeni.

2.4. NACINI ORGANIZACIJE U/I AKTIVNOSTI

21

Sl. 2.17: Uslovni U/I Ova tehnika je dobra ako se ne zahteva mnogo procesorskog vremena za odgovor na svaki postavljen indikator. Kod sporih U/I prenosa procesor e provesti mnogo c vremena u petlji pitajui okolo ima li neko spreman podatak. Za to vreme je c procesor mogao da obavlja neke korisne zadatke. Ukoliko procesor treba neto da s rauna onda ovakav nain predsavlja neekasno korienje procesora. Prednost c c sc ove tehnike je to je prosta i ne zahteva dodatni hardver. s

2.4.2

Prenosi pod kontrolom prekida

Umesto da procesor svaki as pita U/I ured c aje imaju li podatke (a najee nemac sc ju), mnogo je ekasnije da U/I ured jave procesoru kada su spremni za prenos. aji Procesor moe sada da posveti panju svojim normalnim funkcijama, odgovarajui z z c U/I prenosima samo kada za to ima potrebe. Kad primi takav zahtev (prekid, Interrupt) procesor ostavlja tekue operacije c (pamti sadraj brojaa naredbi i ostale registre), identikuje ured koji je zahtevao z c aj prekid i grana se na odgovarajui prekidni program. c Svaki CPU mora da sadri ip-op dozvole prekida EI (Enable Interrupt), z koji je mogue setovati i resetovati programskim putem, kako bi se omoguilo da c c procesor spreava ili dozvoljava prekide. c Prekide po pravilu treba zabraniti nakon ukljuenja raunara. Zato se ovaj c c

22

GLAVA 2. ARHITEKTURE MIKRORACUNARA

ip-op hardverski resetuje kod svakog ukljuenja. Kada je EI ip-op resetoc van prekidi su zabranjeni i CPU ih ignorie. Automatska zabrana prekida kod s ukljuenja omoguava procesoru da izvri inicijalizaciju bez prekida. c c s Procesor ima naredbe kojima moe da utie na vrednost EI ip-opa. Daz c lje procesor mora da ima INT liniju preko koje e biti obaveten o zahtevu za c s prekidom. Zahtev se postavlja niskim nivoom napona na ovoj liniji. Procesor na kraju izvrenja svake naredbe ispituje da li je EI ip-op setovan i da li je INT s linija na nisko. Ako su ispunjena oba ova uslova, resetuje se EI ip-op i prelazi se na ciklus odgovora na prekid (INTERRUPT MODE).Dogad koji slede razlikuju aji se od procesora do procesora, ali se uopteno posmatrano deava sledee: s s c z c Zapamtiti privremeno sadraj brojaa naredbi kako bi procesor mogao da se vrati na mesto gde je prekinut. Broja naredbi se puni poetnom adresom programa za opsluivanje prekida. c c z Ovaj program ustanovljava ko je i ta traio. Posle toga rad procesora je isti s z kao kada je ispunjen uslov za prenos kod prozivke. s Svi CPU registri (ACC, CARRY, registri opte namene), koji su potrebni za usligu prekida, moraju se zapamtiti na poetku uslunog programa (SAVE c z ROUTINE), i vratiti na stare vrednosti na kraju uslunog programa (REz SAVE). U suprotnom sluaju usluni program bi mogao izmeniti sadraje c z z tih registara. Procesor mora na neki nain vrati INT liniju ured c aja koji je zahtevao prenos na visoko. Omoguiti nove prekide (EI ip-op = set). c Vratiti se na prekinuti program vraanjem brojaa naredbi na njegov prethodc c ni sadraj. z Niz ovih dogad aja prikazan je blok emom na Sl.2.18 s Prednost prekida nad prozivkom je to je odgovor na spoljanji dogad bri i s s aj z to se smanjuje dodatni softver. Mane su tee pisanje i odravanje programa, kao s z z i dodatni hardver potreban za identikaciju ured aja i odred ivanje prioriteta. Napomenimo da je otkrivanje greaka u programu, kada se koriste prekidi, s dosta teko jer se sistem vie ne ponaa deterministiki. s s s c Tipian interfejs za prekide prikazan je na Sl.2.19. Tu su dve handshake c linije koje povezuju CPU i U/I port, zahtev za prekidom (INTREQ) i prekid potvrd (INTACK). Veliki broj sistema ima vie od jednog U/I porta sa svojim en s handshake linijama, pa je potreban dodatni hardver za arbitriranje da razrei s

2.4. NACINI ORGANIZACIJE U/I AKTIVNOSTI

23

Sl. 2.18: Blok ema dogad s aja kod prekida prioritete u korienju. On odred sc uje u kom e redosledu biti uslueni U/I portovi u c z sluaju da se dogodi vie zahteva od c s ednom. Obino su raspoloivi kao integrisane c z komponente (na pr. MC6828, i8259).

2.4.3

Direktan memorijski pristup

Prekidi obezbed uju brz odgovor perifernom ured aju, ali se opsluivanje prekida z obezbed uje softverski. Ponekad je potrebno da se U/I prenosi deavaju bre nego s z to je mogue opsluivanje prekidima, na primer, disk U/I transfer, brzi graki s c z c ured aji, povezivanje na LAN (Local Area Network) itd. Kad koristimo prekide za U/I deava se da se itav prekidni program izvrava s c s radi prenosa samo jednog bajta. Podsetimo se samo koji su to koraci: prekinuti CPU, zapamtiti stanje sistema (SAVE), uzeti podatak iz memorije i izvriti OUT s naredbu (ili izvriti INP naredbu i zapamtiti proitani podatak) i vratiti prethodno s c stanje sistema (RESAVE). Prema tome prekidi su dobri samo za spore periferije. Za brze periferije ne

24

GLAVA 2. ARHITEKTURE MIKRORACUNARA

Sl. 2.19: Interfejs za prekide dolazi u obzir ovakvo softversko reenje, ve se taj zadatak poverava specijalizos c vanom hardveru. Taj hardver treba da obezbedi veoma brzi transfer podataka izmed U/I ured u aja i memorije u oba smera, zaobilazei CPU. Ovakva tehnika je c poznata pod imenom DMA (Direct Memory Acces). Korienjem DMA, DMA kontroler preuzima upravljanje sistemskom magissc tralom za vreme zahtevanog prenosa podataka i vraa upravljanje CPU nakon c zavretka prenosa. Na Sl.2.20. je prikazan sistem koji koristi DMA kontroler za s prenos izmed diska i memorije. u

Sl. 2.20: Direktan memorijski pristup Disk je prikljuen na periferni kontroler koji komunicira sa DMA kontrolerom c preko TRANSFER REQUEST i TRANSMIT ACKNOWLEDGE handshake linija.

2.4. NACINI ORGANIZACIJE U/I AKTIVNOSTI

25

DMA kontroler je prikljuen na CPU preko BUSRQ(zahtev za magistralom), c BUSACK (magistrala odobrena) i TRANSFER COMPLETE (prenos zavren) lins ija. Ovde je potrebno naglasiti da je sam DMA kontroler povezan na CPU kao tipian U/I ured sa svojom U/I adresom, vektorskim i prekidnim prioritetom. c aj, Kad jednom uzme magistralu od strane CPU-a, DMA kontroler ne moe biti z prekinut od strane CPU, pogotovu u BURST modu (DMA ima prioritet nad CPU). Ako se koristi INTERLEAVING ili CYCLE STEALING (preklapanje ili krad a ciklusa) CPU i DMA dele cikluse magistrale alternativno. DMA je bri od prekida ili prozivke, jer se u ovom sluaju preskau ciklusi fetchz c c decode-execute. Da nebi uzimao naredbe iz memorije DMA kontroler je snabdeven ugrad enim (FIRMWARE) naredbama. Ove naredbe se mogu izvravati paralelno, s recimo prenos podatka i istovremeno dekrementiranje brojaa bajtova. c Tipina grad DMA kontrolera prikazana je na Sl.2.21. Ovaj DMA kontrolc a er ima dva nezavisna kanala. Svaki kanal ima svoj adresni i upravljaki registar c i broja bajtova i povezan je sa odgovarajuim perifernim kontrolerom preko uoc c biajenih TRANSFER REQUEST i TRANSMIT ACKNOWLEDGE linija. DATA c CHAIN registar uva poetnu adresu sledeeg sukcesivnog bloka podataka. c c c

Sl. 2.21: DMA kontroler Osim adresne i magistrale podataka postoje i uobiajeni signali za povezivanje c sa CPU (R/W, BUSRQ, BUSACK i INT). Kod DMA prenosa INT linija se koristi da obavesti CPU da je prenos zavren. BUSRQ i BUSACK linije se koriste za s sinhronizaciju operacija sa procesorom. Na Sl.2.22 prikazan je niz dogad aja koji su potrebni za prenos jednog bajta sa diska u memoriju. CPU programira disk kontroler za itanje, inicijalizira DMA c kontroler (broj bajtova za prenos, poetnu adresu). DMA kontroler eka na poc c

26

GLAVA 2. ARHITEKTURE MIKRORACUNARA

datak sa diska. Kada dod podatak DMA kontroler zahteva sistemsku magistralu e od procesora. Za razliku od prekida CPU odgovara odmah, jer se ne menjaju njegova interna stanja. Podatak se upisuje u memoriju i DMA kontroler potvrd uje prenos disku. Periferni kontroler invertuje TRANSFER REQUEST liniju i eka c na sledei bajt sa diska. DMA kontroler oslobad sistemsku magistralu, poveava c a c sadraj startnog adresnog registra i upored z uje njegov sadraj sa krajnjom adresom. z Ako je njegov sadraj vei prenos je zavren i DMA kontroler zahteva prekid preko z c s INT linije. Ako nije DMA kontroler eka na sledei zahtev za prenosom od disk c c kontrolera.

Sl. 2.22: DMA handshake protokol

U Tabeli 2.2 su date karakteristike nekih DMA kontrolera Tabela 2.2 Karakteristike nekih DMA kontrolera

2.4. NACINI ORGANIZACIJE U/I AKTIVNOSTI DMAC HOST CPU Max brzina prenosa (Mbyte/s) 2 5 5 1.6 8 32 Adrese (broj bitova) 16 24 24 16 24 32 DATA CHAIN da ne da da da da Broj kanala 4 2 2 4 4 8

27

MC6844 MC68440 MC68440 i8237 i82258 i82380

MC6800 MC60000 MC60000 I8086 I80286 I80386

28

GLAVA 2. ARHITEKTURE MIKRORACUNARA

Glava 3

MAGISTRALE MIKRORACUNARSKIH SISTEMA


3.1 Protokoli za prenos podataka po magistralama

Postoji vie naina da se podaci prenesu izmed CPU i periferija, ali se oni klasis c u kuju kao: sinhroni asinhroni u zavisnosti od toga da li se prenos vri sinhronizovano sa sistemskim klokom. s

3.1.1

Sinhrone magistrale

Kod sinhronih protokola prenos podataka je vezan za sukcesivne ivice sistemskog kloka. Svojstveno ovim protokolima je da se podrazumeva da je podatak doao s u okviru odred enog vremenskog intervala (prozora), a ako nije taj podatak se gubi. Opta ema je data na Sl.3.1. Ovo je ciklus itanja memorije (memory s s c read). Memorijska adresa je stavljena na magistralu u odred eno vreme, u odnosu na rastuu ivicu sistemskog kloka. Na opadajuoj ivici istog kloka adresa je imala c c vremena da se stabilizuje i postavlja se READ signal. Periferni ured nije selektovan trenutno, ve postoji neko kanjenje zbog dekodiaj c s ranja adrese, a takod i zbog udaljenosti memorijskog ipa od CPU. Naime zbog e c razliite duine linija na tampanoj ploi adresni signali nee doputovati u isto c z s c c 29

30

GLAVA 3. MAGISTRALE MIKRORACUNARSKIH SISTEMA

Sl. 3.1: Sinhroni protokol vreme do memorije. Na Sl.3.2 za primer je uzeto da je adresna linija A1 dua od z linije A0. Ovo nema uticaja na niim uestanostima veliine 1 - 2 MHz, ali ve na z c c c 25 MHz gde rade 32-bitni procesori (postoje varijante za 100 MHz i vie) to moe s z stvarati probleme.

Sl. 3.2: Kanjenje zbog razliitih duina linija s c z Zbog svega toga se CS, signal za selekciju, postavlja kratko vreme iza READ signala. Kada je ip selektovan, memorija moe da da sadraj adresirane lokacije c z z na magistralu. Tu je ponovo imamo neko kanjenje dok se ne stabilizuju linije. s Posle toga ova informacija ostaje stabilna do sledee ivice kloka, tako da CPU ima c dovoljno vremena da smesti taj podatak u neki svoj interni registar.

3.1.2

Asinhrone magistrale

Kod asinhronih prenosa po magistrali prenosi nisu vezani za sistemski klok, ve se c mogu odvijati bilo kad. Zahtevaju se dodatne handshake linije koje e obezbec diti prenos izmed mastera (gospodar), na pr. CPU, i slave (sluga), na pr. u memorija. Asinhrone magistrale su pogodne kod sistema sa razliitom brzinom c CPU i periferija. Procesor se moe povezati i na brze i na spore poluprovodnike z c

3.1. PROTOKOLI ZA PRENOS PODATAKA PO MAGISTRALAMA

31

memorije. Na Sl.3.3 je prikazan potpuno zakljuan (fully interlocked) asinhroni c protokol koji se koristi na magistrali u DEC-ovom PDP-11 mini raunaru. c

Sl. 3.3: Asinhroni protokol Kod operacije upisa (WRITE) zahteva se da MASTER obavesti SLAVE da ima podatak spreman za slanje. SLAVE obavetava kada je prihvatio pos datak. MASTER sada alje obavetenje da je prenos zavren. Konano, SLAVE s s s c odgovara MASTER-u na tu poruku. Kao i kod sinhronih magistrala i ovde postoje kanjenja zbog dekodiranja, uspostavljanja nivoa i putovanja signala. s

3.1.3

Semisinhrone magistrale

Kompromis izmed prethodna dva protokola nad je u semisinhronoj magistrali, u en koja koristi brzinu sinhronih magistrala, ali dozvoljava i povezivanje periferija razliitih brzina. Ove magistrale rade asinhrono sve dok periferija nije spremna za c rad, a posle toga magistrala radi sinhrono za sve vreme prenosa. Semisinhrona magitrala prikazana je na Sl.??. Na slici su prikazana etiri c odvojena ciklusa. U prvom ciklusu, WRITE, prenos je od MASTER-a ka SLAVE izvren u jednom kloku, a takod i u drugom ciklusu, READ, od s e SLAVE ka MASTER-u. U sledea dva ciklusa je pokazano kako postavljanje c WAIT (ekanje) signala od strane SLAVE utie na rad. WAIT je postavlc c jeno jer SLAVE ne moe da odgovori zahtevu CPU. Uvek kad otkrije da je z WAIT linija postavljena CPU ubacuje klok cikluse koji se zovu WAIT stanja. Ova stanja se ubacuju sve dok periferija nije spremna za rad. U ovom sluaju kao c da procesor izvrava NOP naredbe (naredbe bez dejstva). s Procesori MC68000(20) i i80286(386) koriste semisinhrone magistrale. Rauc narski sistemi se esto opisuju preko broja WAIT stanja koje procesor ubacuje c prilikom povezivanja sa memorijom. Zato je mogue da, na primer, 10MHz maina c s

32

GLAVA 3. MAGISTRALE MIKRORACUNARSKIH SISTEMA

Sl. 3.4: Semisinhroni protokol sa 0-WAIT stanja bude bra od 12MHz maine sa 2-WAIT stanja. z s

3.2

Arbitriranje na magistrali

U sistemima gde je mogue da vie od jednog MASTER-a zahteva magistralu c s potrebno je obezbediti neki mehanizam zapresud ivanje med tim zahtevima. Nau jprostiji nain je da se svi potencijalni gospodari na magistrali prikljue na c c jednu zajedniku Interrupt Reqest liniju. Ovakav nain arbitriranja poznat je c c pod imenom party line i prikazan je na Sl.3.5a. Ured se opsluuju po principu aji z FCFS (prvi doao prvi usluen), jer svi potencijalni gospodari na magistrali imaju s z isti prioritet. Neki prioriteti se mogu uvesti prozivkom (polling) u odred enom redosledu ili se moe koristiti ciklino prozivanje. z c Druga mognost je daisy chain (ured su povezani povezani jedan na drugi c aji kao perle na ogrlici pa otuda i naziv) i prikazana je na Sl.3.5b. Ova ema zahteva s dve linije. Ured koji zahteva pristup alje zahtev ured aj s aju koji je blii CPUz u od njega. Signal dozvole, GRANT , se takod alje preko ured e s aja do onog koji je zahtevao magistralu. Taj koji je traio dobie magistralu ako je nijedan z c ured ispred njega ne uzme. Kod ove eme prioriteti su odred aj s eni rastojanjem (udaljenou) od CPU-a. Na Sl.3.6 je prikazan vremenski dijagram za daisy sc chain. U prvom sluaju ured #2 zahteva magistralu za sebe i nema dolazeih c aj c zahteva od daljih ured aja. Zbog toga dobijeni GRANT signal ne prosled uje dalje. Drugi sluaj pokazuje kako ured #2 ne eli magistralu za sebe ve prosto izigrava c aj z c relejnu stanicu prosled ci zahtev kroz lanac i zatim vraajui GRANT kroz uju c c

3.3. VRSTE MIKRORACUNARSKIH MAGISTRALA

33

lanac. U treem sluaju je ured #2 zahtevao magistralu za sebe i dobio je, ali je c c aj u med uvremenu stigao zahtev od daljeg ured aja. Kada zavri svoj posao ured s aj #2 prosled uje GRANT signal ured aju #3.

Sl. 3.5: Arbitriranje na magistrali

Sl. 3.6: Vremenski dijagram za daisy chain

3.3

Vrste mikroraunarskih magistrala c

Uobiajeno je da se magistrale izvode na zadnjoj ploi kao na Sl.3.7. c c Krajem 70-tih najpopularnija magistrala med hobistima je bila S-100 (naziv u potie od 2 x 50 pinova). Imala je 16 adresnih linija i 16 linija za podatke (8 IN c i 8 OUT) i bila je izvorno projektovana za INTEL 8080. Radna uesatanost je c bila oko 2MHz. Sledea po popularnosti je STD (56 pinova). Zadraemo se na c z c MULTIBUS, VME, IBM-PC, NUBUS i IEEE 488 magistralama. Neto emo rei s c c

34

GLAVA 3. MAGISTRALE MIKRORACUNARSKIH SISTEMA

i o SCSI standardu koji se koristi za povezivanje disk jedinica i backup jedinica trake (streamer) u mikroraunarskim sistemima. c

3.3.1

Multibus

Ni S-100 ni STD magistrale nisu podravale 16-bitne procesore koji su se pojavili z u ranim 80-tim. Intel je zato razvio MULTIBUS-I, koji je bio projektovan za rad sa i8086 procesorom. Kasnije je ovaj standard formalizovan kao IEEE 796. MULTIBUS ploe koriste dva razliita konektora na svojim ivicama kao na c c Sl.3.8. To su konektori P1 i P2. Konektor P2 sa 60 pinova je opcion, i primarno se koristi za otkrivanje pada napona i njegovo usluivanje. Konektor P1 ima 86 z pinova, od toga 20 adresnih i 16 za podatke. Ostale linije su upravljake: handc shake(13), kontrola pristupa magistrali (6) i jo neke sistemske linije, napajanje i s vremensko vod enje. MULTIBUS I podrava do 1 Mb memorije (20 adresnih linija), a MULTIBUS II z (1986. god) podrava do 4 Gb (32 linije). Dok je MULTIBUS I nemultipleksirana z asinhrona magistrala dotle je MULTIBUS II multipleksirana sinhrona magistrala. MULTIBUS II koristi standardnu evropsku karticu. MULTIBUS II se moe softz verski kongurisati. Kod MULTIBUS I su prekidi i arbitriranje na magistrali hardverski denisani. MULTIBUS II je u tom pogledu mnogo pogodniji za izmene i proirenja. s

3.3.2

VME magistrala

VME magistralu su zajedniki razvili Motorola, Philips, Signetics i Mostek poetkom c c 80-tih. Ova magistrala predstavlja adaptaciju ranije Versa magistrale koju je Motorola koristila u svojim ranijim EXOR sistemima. VME koristi drugaije konekc tore, vremensko vod enje i dimenzije tampanih ploa od Versa magistrale. VME s c magistrala je projektovana za rad sa MC68000 procesorom. VME koristi jednostruku ili dvostruku Evropsku karticu (Sl.3.9.). Sve linije su TTL kompatibilne. Linije sa tri stanja i otvoreni kolektor imaju zavretke vezane na +V preko s pullup otpornika, to smanjuje reeksiju signala. Konektori obezbed s uju dugo dobre kontakte i otporni su na vibracije. Svaki od konektora sadri po 48 prikljuaka z c (3x16). P1 je primarni konektor i sadri 16 linija za podatke i 23 za adrese, dva z stroba za podatke, zatim linije za arbitriranje, za upravljanje prioritetima prekida i dijagnostike signale. c Konektor P2 proiruje sistem na 32 linije za podatke i adrese i obezbed s uje korisniku U/I linije (do 20 Mb/sec). VME je grad za asinhroni nemultipleksirani protokol, sa 7 nivoa prekida i 4 en nivoa za arbitriranje na magistrali. Kao lokalna magistrala koristi se VMX (kao

3.3. VRSTE MIKRORACUNARSKIH MAGISTRALA to se iLBX-II koristi u MULTIBUS sistemima). s

35

Iako je MULTIBUS razvijen za Intelove procesore, a VME za Motoroline, oba standarda nisu ograniena samo na odgovarajue familije. Tako, na primer, postoji c c vie MULTIBUS ploa baziranih na MC68000. s c

3.3.3

IBM-PC magistrala

Nezavisno od ve pomenutih standardnih magistrala, nekoliko magistrala je de facc to postalo standardno iz jednostavnog razloga to je veliki broj ploa razvijen od s c strane nezavisnih proizvod ca mikroraunara. Dva takva primera de facto stana c darda su APPLE/II i IBM-PC magistrale. Oba raunara dozvoljavaju korisniku c da proiri osnovni sistem preko njegovih originalnih mogunosti, dodajui module s c c stavljanjem novih ploa na odgovarajua mesta na osnovnoj ploi (na slotove za c c c proirenja). Postoji veliki broj takvih ploa za oba raunara, a neke dodatne ploe s c c c daleko premauju po svojoj snazi osnovnu plou (na primer National Semiconducto s c SYS 32/UNIX ploa za IBM-PC). c Originalni PC nije podravao hard disk, to je dovelo do razvoja PC-XT z s raunara. IBM-PC je upravljao i8088 procesor, pa je zato zahtevana samo 8c bitna magistrala podataka, s druge strane IBM-PC/AT upravlja i80286 procesor pa zahteva 16-bitnu magistralu podataka. Ovo je razlog to AT ploe zahtevaju s c dva slota za proirenje, a PC samo jedan slot. Svaki PC ima 62-pinski slot, dok s AT ima jo i dodatni 32-pinski slot (Sl.3.10.). s MCA (Micro Channel Architecture) je magistrala koja se koristi u novoj PS/2 liniji IBM mikroraunara. MCA nije ni mehaniki ni elektrino kompatibilna sa c c c ranijom PC ili AT magistralom. MCA je sposobna za brzi prenos podataka i brze U/I prenose. Podrava i deljenje resursa i multiprocesiranje. MCA je asinhrona z nemultipleksirana magistrala. PS/2 modeli 50 i 60 koriste 16-bitno proirenje za s MCA dok model 80 koristi 32-bitno proirenje. s Jedan od razloga za uspeh APPLE-IIe i IBM-PC raunara je bila njihova c spremnost za proirenje korienjem ploa koje se ubadaju na sistemsku magiss sc c tralu. MCA je nasuprot njima samo IBM-ova magistrala. To je bio znaajan c razlog za razvoj alternativnog standarda za i80386 maine. Tako je, na primer, s EISA magistrala (Extended Industry System Architecture) podrana od mnogih z proizvod ca: Compaq, Hewlett-Packard, NEC, Olivetti, AT&T, DEC, Unisys i a Wang. Za razliku od MCA EISA je kompatibilna sa IBM PC/AT magistralom. Paralelno sa dva AT konektora, nalazi se i trei konektor. Tako EISA ploe zauzc c imaju dva slota na AT maini. s

36

GLAVA 3. MAGISTRALE MIKRORACUNARSKIH SISTEMA

3.3.4

NUBUS magistrala

Originalni Apple Macintosh je razvijen kao zatvoren sistem, odnosno nije bio predvid za proirivanje. Macintosh-SE i Macintosh-II sadre slotove za proirenje en s z s (jedan SE a est Mac-II). Ovi dodaci, a takod i spremnost na proirenje ploama s e s c nezavisnih proizvod ca, su uticali na ogroman uspeh ova dva raunara na tritu a c zs IBM-PC. Macintosh-SE pogoni MC68000 procesor i zato je on ogranien na 16-bitne c podatke. Mac-II pogoni MC68020 pa zato on ima 32-bitne podatke. U Mac-II je ugrad ena Texas Instrumets-ova magistrala NUBUS. To mu daje jednu otvorenu arhitekturu. NUBUS je sinhrona multipleksirana magistrala (10MHz). Arhitektura koristi memorijski preslikan U/I to potpuno odgovara s MC68020 procesoru. Adresni prostor je 4G bajta (32 adresne linije) a podaci su 8, 16 ili 32-bitni. Svaki slot kod NUBUS-a ima hardverski odred enu jedinstvenu 4-bitnu adresu i dodeljen im je po 1Mb memorije. Svaka stavljena ploa moe biti gospodar i c z sistem se moe kongurisati da startuje sa te ploe. z c

3.3.5

IEEE 488 magistrala

Nezavisno od sistemskih magistrala razvijeno je i nekoliko paralelnih magistrala za instrumentaciju. U ranim 1970-tim razvijen je CAMAC standard od strane Evropskog Standarda za Nuklearnu Elektroniku, i iroko je korien u instrumens sc tima vezanim za nuklearna merenja u to vreme. IEEE 488 predstavlja formalizaciju ranijeg HPIB (Hewlett-Packard Interface Bus) koji je razvijen sredinom 1970-tih. Magistrala ima 16 paralelnih linija koje obezbed uju 8-bitne podatke, 3 handshake linije i 5 linija za opte upravljanje. Ovih 5 poslednjih linija se koristi da bi s se prikljuilo vie razliitih instrumenata zajedno. Svaki instrument moe biti u c s c z jednom od 4 stanja: idle govornik slualac s upravlja komunikacijom izmed govornika i sluaoca. u s Sama magistrala je pasivna. Sva kola za izmenu podataka (govornika i sluac s laka) i upravljaka kola su ugrad c c ena u instrumente koji se prikljuuju na magisc tralu. Nije neophodno da svaki instrument ima sva tri tipa kola. Sve linije su

3.3. VRSTE MIKRORACUNARSKIH MAGISTRALA

37

TTL kompatibilne (LO 0.8V, HI 2.4V), ali je uobiajena negativna logika c (LO=TRUE, HI=FALSE). Magistrala moe imati do 20m u duinu i podrava do z z z 500 Kbita/s ili do 1Mbit/s za linije krae od 10m. c Postoje tri handshake linije: DAV, valjan podatak NRFD, nespreman za podatak NDAC, podatak nije prihvaen c Linije za opte upravljanje su: s IFC, obrisati interfejs (svi prelaze u idle) ATN, panja z SRQ, zahtev za uslugom REN, dozvola udaljenom ured aju EOI, kraj identikacije

3.3.6

SCSI standard

SCSI (Small Computer System Interface) standard (denisan i kao ANSI X3T9.2) je razvila Shugart Associates System Interface za povezivanje hard diskova i jedinica streamer traka na raunar. Med c utim to je postao mnogo optiji standard. s SCSI ima 9 linija za podatke (8 + parnost) i 9 linija za handshake. U sinhronom modu brzina prenosa je do 4Mb/sec, a u asinhronom modu to pada na 1.5Mb/sec.

38

GLAVA 3. MAGISTRALE MIKRORACUNARSKIH SISTEMA

Glava 4

Serijski ulaz/izlaz
Uovom poglavlju emo obratiti panju na prenos podataka na daljinu. Najpre c z emo obraditi konverziju podataka u oblik pogodan za slanje od predajnika do c udaljenog prijemnika. Razmotriemo tehnike modulacije, zajedno sa ured c ajima koji to omoguuju, modemima. c Obradiemo i asinhrone i sinhrone komunikacione protokole, sa posebnim osvrc tom na RS-232c asinhroni standard. Kao predstavnik serijskih U/I komponenata obrad ena je komponeta i8251 USART.

4.1

Uvod

U prethodnom poglavlju smo govorili o povezivanju mikroraunara na paralelne c periferne ured aje. Sada emo razmotriti serijsko povezivanje (serijski interfejs). c Osnovne karakteristike oba naina prenosa su: paralelni prenos je bri od seric z jskog, jer se svi bitovi prenose istovremeno preko sistemske magistrale, ali je znatno skuplji, jer zahteva vei broj veza (vodova ili kanala za prenos). Kod paralelnog c prenosa je tee otkrivanje greaka u prenosu, a postoji i problem neujednaenog z s c kanjenja po svim provodnicima. Kod serijskog U/I alje se jedan po jedan bit s s preko samo jednog para provodnika. Zato mu je prednost niska cena (zbog manjeg broja potrebnih provodnika). Dalje, serijski prenos je pouzdaniji, jer se prekid u prenosu uvek moe lako ustanoviti. Kod serijskog prenosa skup pravila za razmenu z podataka izmed dva ured u aja (protokol) je bolje denisan (postoje med unarodni standardi i norme za prenos), a kod paralelnog prenosa, zbog razliitog obima kod c prenosa paralelnih podataka, to nije sluaj. c Imajui sve ovo u vidu, paralelni prenos podataka se vie koristi kod prenosa c s podataka na kraa rastojanja (do nekoliko metara, tj. vie interno u okviru c s raunarskog okruenja kao to je interfejs raunar i tampa), a serijski prenos c z s c s c 39

40

GLAVA 4. SERIJSKI ULAZ/IZLAZ

za prenos podataka na vea rastojanja (recimo, prenos podataka preko satelita c izmed dva raunara, koji mogu biti udaljeni i na hiljade kilometara). u c S obzirom da su komunikacije unutar mikroraunara u paralelnom obliku, a c sa spoljnim svetom u serijskom, postoji potreba za paralelno-serijskom i serijskoparalelnom konverzijom. Na Sl.4.1 prikazana je tipina serijska U/I aplikacija, veza izmed terminala i c u mikroraunara. Podaci, koji se predaju i primaju, konvertuju se iz paralelnog u c serijski oblik i obratno u odgovarajuem P S i S P interfejsu respektivno i c prenose bit po bit preko serijske linije.

Sl. 4.1: Serijska veza terminal mikroraunar c Kada je prenosni medijum idealan na prijemnoj strani imaemo isti signal kao c i na predajnoj strani. Na alost medijumi nisu idealni. Kod digatalnog prenosa z signala ova razlika je direktni uzrok pojave greaka. Kada se govori o prenosnim s linija i prenosu signala tada se evidentiraju tri glavna problema: z slabljenje signala - energija signala du propagacionog puta se smanjuje. Gubitci se izraavaju u dB/km. z distorziono kanjenje signala - razliite Fourier-ove komponentesignala se pros c stiru razliitim brzinama. Ovo dovodi do izoblienja signala na prijemnoj c c strani, a saglasno tome i i pogrene detekcije. s um - to je nepoeljna energija koja potie od drugih izvora, a ne od predajs z c nika. Termiki um je uzrokovan sluajnim kretanjem elektrona kroz ice i c s c z neizbean je. Presluavanje je uzrokovano induktivnom spregom izmed dve z s u ice koje su bliske jedna drugoj. Impulsni um posledica je uticaja indukoz s vanih smetnji od energetskog razvoda (ukljuenje/iskljuenje raznih motora c c

4.2.

KOMPONENTE KOMUNIKACIONOG SISTEMA

41

ili velikih potroaa). Kada je u pitanju digitalni prenos podataka, impulsni s c um moe jednostavno da obrie jedan ili vei broj bitova. s z s c Prikaz uticaja slabljenja signala, distorzionog kanjenja i uma na pojavu greke s s s prikazan je na Sl.4.2

Sl. 4.2: Slabljenje signala, distorziono kanjenje i um s s Imajui u vidu nesavrenosti prenosnog medijuma logino se namee potreba c s c c za detekcijom i korekcijom greaka na prijemnoj strani. Da bi se poveala imunost s c na smetnje nije svejedno u kom obliku se predaje binarna povorka. Oblik signala zavisi od vrste prenosnog medijuma (iani ili beini) i od duine prenosnog puta. zc zc z Ured koji pretvaraju binarne signale u oblik pogodan za prenos preko odred aji enog prenosnog medijuma, a zatim iz tog oblika ponovo u binarni, zovu se modemi. O njima i tehnikama modulacije bie rei kasnije. c c

4.2

Komponente komunikacionog sistema

Osnovni nain serijskog komuniciranja prikazan je Sl.4.3. Terminal (ili raunar) c c na jednom kraju veze komunicira sa raunarom (ili terminalom) na drugom kraju. c

42

GLAVA 4. SERIJSKI ULAZ/IZLAZ

Komponente komunikacionog sistema su oprema na krajevima veze, koju emo dac lje oznaavati sa DTE (Data Termination Equipment) i modem, tj. komunikacina c opreme, DCE (Data Communications Equipment).

Sl. 4.3: Sistem za prenos podataka

4.2.1

Naini serijskog povezivanja c

Postoje dva glavna naina povezivanja serijskim vezama: c c c Taka u taku (point to point), i Veza izmed vie ured u s aja (multidrop) Ovi naini povezivanja prikazani su na Sl.4.4. Kod prvog naina povezivanja c c obe krajnje stanice su ravnopravne, a kod drugog jedna stanica je odred ena kao glavna, a ostale su sluge. Svaka stanica ima svoju adresu, a glavna stanica upravlja svim prenosima podataka na liniji.

Sl. 4.4: Naini serijskog povezivanja c Fiziki se komunikaciona veza sastoji iz dva ili etiri provodnika, kao na Sl.4.5. c c Kod dva provodnika jedan je za signal, a drugi za masu. Kod etiri provodnika c dve linije su za komunikaciju, svaka sa svojom masom. Logike veze mogu biti: c simplex

4.2.

KOMPONENTE KOMUNIKACIONOG SISTEMA

43

Sl. 4.5: Fizike veze c half duplex full duplex i prikazane su na Sl.4.6. Kod simplex veze linija je namenjena samo za jedan smer prenosa, za predaju ili prijem. Kod half duplex veze ista linija se moe z koristiti i za prijem i za predajau ali ne u isto vreme, dok se kod full duplex veze mogua komunikacija u oba smera istovremeno. Oigledno je da full duplex veza c c zahteva etiri zike veze (mada je mogue ostvariti takvu vezu i preko samo dva c c c provodnika ako se koristi frekventni multipleks).

Sl. 4.6: Logike veze c Full duplex veza moe da podrava vezu u zatvorenoj petlji (eho), gde se svaki z z karakter, kao eho, vraa predajniku da bi se zatvorila petlja. Druga mogunost je c c otvorena petlja, gde se podrazumeva da je podatak dospeo na udaljeno odredite. s Oigledno je da je zatvorena petlja bolja jer se lako otkriva greka u prenosu ukoliko c s vraeni podatak nije jednak poslatom. c

44

GLAVA 4. SERIJSKI ULAZ/IZLAZ

4.3

Tehnike modulacije

Da bi se informacija prenela od predajne do prijemne stanice, potrebno je polazne logike signale konvertovati u oblik pogodan za prenos preko odered c enog komunikacionog kanala. Za to postoji vie razliitih tehnika. Iz starih vremena imamo s c TTY (teletypewriter - teleprinter) i prikazan je na Sl.4.7. Bila je to povorka unipolarnih impulsa. Visok nivo zove se mark, a nizak nivo space. Radi boljeg kontrasta u standardu RS-232c se koriste bipolarni impulsi. Svaki signal vei od +3V smatra c se za mark, a svaki signal manji od -3V za space. Tipini signali u RS-232c su su c u opsegu (5V 15V).

Sl. 4.7: TTY Jedan od starijih komunikacionih standarda je i 20 mA strujna petlja (current loop). Ona potie iz vremena elektromehanikih TTY ured c c aja, i uopteno s govorei zahteva manje ica za vezu od RS-232c, (TRANSMIT+, TRANSMIT-, c z RECEIVE+ i RECEIVE-) kao to je prikazano na Sl.4.8. Napon se dovodi na Rt , s struja tee do drugog kraja, prolazi kroz R1 i vraa se na mesto predaje. Sa dve c c ovakve petlje obezbed je full duplex. Visoko i nisko su detektovani prisutnou ili en sc odsutnou 20 mA struje. Kod originalnih TTY ured sc aja petlja se prekidala rotacijom prekidaa na predajniku kao to je ve prikazano na Sl.4.7. Na prijemnom c s c mestu ta struja je prolazila kroz solenoid tampaa. s c Drugi naini za prenos informacija zahtevaju promene amplitude nosee frekc c vencije ili promenu frekvencije ili faze. Na Sl.4.9a prikazana je amplitudska modulacija za prenos binarnih informacija koja je nazvana RTTY (Radio Teletype). Umesto da se modulira amplituda nosioca mogue je modulisati frekvenciju. Ta c tehnika je poznata pod imenom FSK (Frequency Shift Keying) promena frekvencije, ili frekventna modulacija. Nisko se predstavlja jednom frekvencijom, a visoko dvostruko veom frekvencijom (Sl.4.9b). Na primer Kansas City standard koji se c koristio za snimanje binarnih signala na magnetne kasete je za 0 koristio 1200 Hz, a za 1 2400 Hz.

4.3. TEHNIKE MODULACIJE

45

Sl. 4.8: 20mA strujna petlja Trea tehnika modulacije, prikazana na Sl.4.9c, zahteva promenu faze noseeg c c talasa (koristi se kod veine modema za brzine prenosa 4800 i 9600 bit/sec). c Ured koji pretvaraju binarne signale u oblik pogodan za prenos i realativno aji neosetljiv za greke za dati komunikacioni kanal, a zatim pretvaranje iz tog oblika s ponovo u binarni, zovu se modemi. Mogu se podeliti u tri vrste: Modemi za kratke veze, koriste se veze izmed ured u aja koji su relativno zatvoreni za druge korisnike. z Govorni modemi, koriste javnu telefonsku mreu, pa je zato njihov opseg frekvencija ogranien izmed 300 i 3000 Hz. c u s modemi sa irokim opsegom frekvencija, koriste posebne veze ili radio kanale i podravaju brzine prenosa izmed 19.2 i 230.4 Kbit/sec. z u Raniji govorni modemi su pretvarali binarnu informaciju u zvuk koji se kroz obinu telefonsku kombinaciju (mikrofon/slualica) prenosio na telefonsku mreu. c s z Zato su se zvali modemi sa akustinom spregom. Tu je bilo kakav zvuk mogao izac zvati smetnje. Noviji modemi pretvaraju binarnu informaciju direktno u elektrini c signal nekom tehnikom modulacije izbegavajui zvunu fazu. c c Do sada smo smatrali da je ceo frekventni opseg komunikacionog kanala raspoloiv za prenos pretvorenih binarnih informacija. U ovom sluaju je mogue da z c c razliiti ured koriste kanal u takozvanom vremenskom multipleksu TDM (Time c aji Division Multiplexing). Drugi pristup bi bio korienje medijuma koji ima znatsc no iri frekventni opseg (kao TV) pa unutar njega podeliti na podopsege tako s da se ti podopsezi mogu koristiti od razliitih ured c aja. Ovo je poznato pod imenom frekventni multipleks FDM (Frequency Division multiplexing). Koristi se kod koaksijalnih kablova, optikih kablova i za prenos preko satelita. Postojanje c ovog veoma irokog opsega frekvencija omoguava veoma brze prenose po jednom s c kanalu korienjem TDM ili mnogo kanala sa FDM. Na primer, 10 Mbita/sec opseg sc mogue je koristiti kao jedan kanal bzine 10 Mbit/sec, ili kao vie od 1000 kanala c s brzine 9600 bit/sec.

46

GLAVA 4. SERIJSKI ULAZ/IZLAZ

Sl. 4.9: Tehnike modulacije

4.4

RS 232c

Upravljanje radom modema je denisano u RS-232c standardu. EIA (Electrical Industries Association of America) je dala standard RS-232 za povezivanje raunara c i modema 1960. Revizija standarda u RS-232c je izvrena 1969. s Med unarodna organizacija za komunikacije, CCITT, dala je standard koji lii c na RS-232c, pod imenom V.24. Vano je napomenuti da se ovi standardi odnose z samo na povezivanje raunara ili terminala na komunikacionu mreu preko modec z ma, ali su dosta este nestandardne primene ovih standarda. Zato je RS-232c i c dobio ime najnestandardniji standard. Signali na V.24 i RS-232c prikazani su u Tab.2. Brojne oznake se odnose na 25 pinski konektor D tipa. Vidi se da oba standarda podravaju full duplex jer imaju z odvojene linije (2 i 3) za predaju i prijem. (TxD i RxD u RS-232c, odnosno BA i BB u V.24).

Tab 2.

4.4. RS 232C
PIN NO. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 CCITT AA BA BB CA CB CC AB CF SCF SCB SBA DB SBB DD SCA CD CG CE CH(CI) DA EIA ground TxD RxD RTS CTS DSR signal gnd DCD (test) (test) (unassigned) sec DCD sec CTS sec TxD Tx sig timing sec RxD Rx sig timing (unassigned) sec RTS DTR sig quality det Ring Data sig rate Tx sig timing (unassigned) DESCRIPTION DIRECTION (DT E DCE)

47

TRANSMIT DATA RECEIVE DATA REQUEST TO SEND CLEAR TO SEND DATA SET RAEDY DATA CARRIER DETECT

SECONDARY DCD

TRANSMITTER SIGNAL ELEMENT TIMING RECEIVER TIMING SIGNAL ELEMENT

DATA TERMINAL READY SIGNAL QUALITY DETECT RING INDICATOR DATA SIGNAL RATE SELECTOR TRANSMITTER SIGNAL ELEMENT TIMING

Zahtev za slanjem, RTS, alje DTE (raunar ili terminal) ka DCE (modemu) s c da bi pripremio DCE za prenos. Ovaj signal se takod koristi da odredi smer e prenosa u half duplex reimu. Prelazi na aktivni nivo kad god DTE ima spreman z karakter za slanje. Signal CTS (Clear To Send) generie DCE da bi obavestio DTE da prenos s moe da pone kad god DTE bude spreman. Kod full duplex linija RTS i CTS se z c prosto vezuju zajedno. Signal DSR (Data Set Ready) se koristi da prikae stanje lokalnog DCE (modez ma). Ako je mark znai da je spreman za korienje. c sc Signal DTR (Data Terminal Ready) se koristi za upravljanje prikljuenjem c DCE na komunikacioni kanal. DSR i DTR se esto vezuju na izvor napajanja u DCE i DTE respektivno, tako c da pokazuju da je svaki od ured aja ukljuen i spreman za rad. c Mark na Ring (CE) kazuje da je prisutan zvuk zvona na telefonskoj liniji. Indicira uspostavljanje veze onom ko je zvao. Mark na Data Carrier Detect (DCD ili CF) znai da je DCE primio signal koji c odgovara modemskim specikacijama. Ako ga nema znai da signal nije primljen c ili da je nepogodan za demodulaciju od strane DCE. DCD znai indicira da je c

48

GLAVA 4. SERIJSKI ULAZ/IZLAZ

veza sa udaljenim ured ajem aktivna. Ako se veza prekine, prekidom se izvetava s raunar. Veza izmed DSR, DTR, RTS i CTS je prikazana na Sl.4.10. c u

Sl. 4.10: Veza izmed upravljakih signala u RS-232c u c Kao to je ve napomenuto RS-232c je izvorno projektovan za prikljuenje s c c raunara ili terminala na modeme. Nije postojala nikakva namera da se on koristi c za spregu raunara i periferne opreme. I pored toga ispalo je da je najvie korien c s sc za tu namenu. Proizvod ci su veoma retko vodili rauna o tome ta je projektovano a c s kao DTE a ta kao DCE. Zato je standard RS-232c i dobio ime najnestandardniji s standard u raunarskoj industriji. c Na Sl.4.11 Prikazane su neke tipine primene standarda RS-232c. Prvo je veza c raunar modem za ta je RS-232c i projektovan. Kao to se vidi svaka linija c s s povezuje iste prikljuke na oba kraja. c Druga dva primera su nestandardna, ali tipina, korienja standarda RS-232c. c sc Najpre je veza raunar terminal, gde se sa strane terminala zahteva samo jedna c upravljaka linija. Linije DSR, DCD i CTS su kratko spojene na raunaru, tako c c da je prenos omoguen sve dok postoji napajanje na terminalu. c Druga nestandardna primena RS-232c je za spregu raunara i tampaa. Pored c s c DTR, bio je potreban jo jedan signal BUSY, koji se prikljuuje na DCD i CTS s c linije na raunaru. Ovaj prikljuak se koristi da prekine dalji prenos kada je bafer c c tampaa pun. s c Dosta je problematino povezivanje raunara i periferija preko RS-232c jer c c mnogi proizvod ci tumae upravljake linije razliito. Na primer, bilo raunar bilo a c c c c periferija se smatraju kao DTE ili DCE, zavisno od proizvod ca. a

4.4. RS 232C

49

Sl. 4.11: Tipine primene standarda RS-232c c Takvi ured aji se moraju veoma paljivo prikljuivati. Postoji veoma mnogo, z c za tu svrhu, pravljenih kablova. RS-232c se pojavio 1969. U narednim godinama komunikaciona oprema je postavila ovom standardu veoma teke zahteve. Due linije, manja osetljivost s z na umove, vea brzina prenosa bili su zahtevi koji su vodili do drugih mnogo s c pogodnijih standarda kao to su RS-422 i RS-423. Pored s enje sva tri pomenuta standarda dato je na Sl.4.12. RS-423 dozvoljava velike brzine prenosa (do 100Kbauda), i due linije (do z 1.2km), ali je jo uvek osetljiv na umove. Kao RS-232 tako je RS-423 nebals s ansiran sistem. Koristi za signal samo jednu liniju (u odnosu na masu). RS-422 je balansiran sistem, to znai da razlika signala izmed dve linije nosi s c u informaciju. Svaki um ili nekava interferencija zajedniki su za obe linije i nee se s c c pojaviti na diferencijalnom ulazu prijemnika. Dok je razlika izmed mark i space u kod RS-232 morala biti 6V (+3V i -3V), kod RS-422 je to 0.4V ( +0.2V za mark i -0.2V za space). Stoga je 5V napajanje dovoljno za generisanje tih signala. Nisu potebni naponi od 12V kao kod RS-232c. (Podsetimo da je +5V napajanje ve c postojei napon za napajanje TTL/CMOS kola). c

50

GLAVA 4. SERIJSKI ULAZ/IZLAZ

Sl. 4.12: Komponente za spregu u raznim komunikacionim standardima

Dok je RS-232 sadrao istovremeno i elektrine i funkcionalne specikacije, z c noviji standardi su odvojili elektrine specikacije RS-422(3) i funkcionalne RSc 449. RS-449 ukljuuje i mehanike specikacije konektora. c c Pored enje maksimalnih brzina prenosa i duina kablova za pomenute standarde z dato je na Sl.4.13.

Sl. 4.13: Pored enje komunikacionih standarda Tipina serijska U/I komponenta prikazana je na Sl4.14. c

4.5. MILETOV DEO

51

Sl. 4.14: Usart

4.5
4.5.1

Miletov deo
Prenos podataka

Prenos podataka predstavlja prenos kodirane inforamcije. Obino se pod prenosom c podataka podrazumeva serijski prenos podataka. No nezavisno od toga ta se u s veini sluajeva implicitno podrazumeva prenos podataka se moe ostvariti kao: c c z c s paralelni - kada se prenos veeg broja bitova podataka vri istovremeno (tipino se ovakav prenos ostvaruje preko sistemske magistrale ili neke druge c magistrale za proirenje, tj. preko veeg broja vodova); s c serijski - prenos podataka se vri bit po bit preko jedinstvenog voda ili kos munikacionog kanala (tipian primer je komunikaciona linija). c Osnovne karakteristike oba naina prenosa su: paralelni prenos je bri od seric z jskog, ali je znatno skuplji, jer zahteva vei broj veza (vodova ili kanala za prenos). c Serijski prenos je pouzdaniji, jer se prekid u prenosu uvek moe lako ustanoviz ti. Kod serijskog prenosa skup pravila za razmenu podataka izmed dva ured u aja (protokol) je bolje denisan (postoje med unarodni standardi i norme za prenos), a kod paralelnog prenosa, zbog razliitog obima kod prenosa paralelnih podataka, c to nije sluaj. Imajui sve ovo u vidu, paralelni prenos podataka se vie koristi c c s kod prenosa podataka na kraa rastojanja (do nekoliko metara, tj. vie interno c s u okviru raunarskog okruenja kao to je interfejs raunar i tampa), a serijc z s c s c ski prenos za prenos podataka na vea rastojanja (prenos podataka izmed dva c u raunara koji mogu biti udaljeni i na hiljade kilometara). c

52

GLAVA 4. SERIJSKI ULAZ/IZLAZ

Kako se komunikacije u okviru raunarskog/mikroraunarskog sistema ostvac c ruju preko sistemske magistrale u paralelnoj formi, evidentno je da je potrebna paralelno - serijska konverzija, kada se povezuju sistemi koji sa jedna strane obavljaju paralelni, a sa druge strane serijski prenos podataka. Na Sl.4.15 prikazana je jedna aplikacija koja koristi obe konverzije paralelno serijsku i serijskoparalelnu da bi ostvarila prenos n-bitnih paralelnih podataka od predajnika do prijemnika preko serijske komunikacione veze.

Sl. 4.15: Paralelno serijska konverzija Pomeraki registri (Sl.4.16), koriste se kao sklopovi za konverziju podataka iz c paralelnog u serijski oblik i obratno.

Sl. 4.16: Pomeraki registar c Sinhronizacija rada predajnika i prijemnika je od izuzetne vanosti i predstavlja z jedan od osnovnih problema kod rada ovakvih sistema; potrebno je na neki nain c izdvojiti na prijemnom kraju takt, ali takod i odrediti kraj poruke. O ovom e problemu govoriemo neto kasnije detaljnije. Na Sl.4.1 prikazana je jedna tipina c s c serijska U/I aplikacija. U ovom sluaju postoji komunikaciona veza za prenos c podataka izmed terminala i mikroraunara. Podatak se konvertuje iz paralelnog u c u serijski oblik na magistralnom interfejsu i prenosi bit po bit du linije. Ako z se prenos podataka vri na relativno kratka rastojanja preko posebnih linija (kao s to je prikazano na Sl.4.1), tada se prenos podataka moe ostvariti direktno, u s z digitalnoj formi.

4.5. MILETOV DEO

53

Postoje razliiti standardi za deniciju logikih nivoa i signala koji se koriste c c za digitalni prenos podataka kao to su RS 232 i drugi (standarde emo izuavati s c c detlajnije). Digitalni signali imaju veoma brze usponske i opadajue ivice, ali c takod nivo signala moe biti 1 ili 0 za veoma dug vremenski period. Ovo ukazue z je da se za prenos koristi veoma irok frekventni spektar, poev od jednosmerne s c komponente (DC) pa do harmonika bitske brzine impulsa koji se prenose. Telefonske linije, kao medijum po kome se vri prenos podataka, ne mogu prenositi s DC nivoe ili vrlo visoke frekvencije. Zbog toga je, ako je potrebno da se podaci prenose preko telefonskih linija, neophodno da se vri konverzija digitalnih signala s u analogni oblik koji se moe prenositi u relativno uskom opsegu. Podsistemi koji z obavljaju ovu funkciju se zovu modemi. Modem predstavlja skraeni izraz za par c modulator-demodulator. Jedan od osnovnih zadataka kod prenosa podataka sa jednog mesta na drugo, ogleda se u tome da prijemnik mora znati kako da vri interpretaciju podataka s i otkriva mogue greke u prenosu. Ovu funkciju mogue je ostvariti komunikac s c cionim protokom. Tehnike za komuniciranje podacima o kojima emo govoriti u c daljem tekstu odnosie se na povezivanje izmed dva ured c u aja tipa taka ka takom c c (point to point). Kompleksnije eme su raunarske mree koje obezbed s c z uju da vei c broj raunara komunicira izmed sebe. Osnovni principi rada, kao i komunikacioni c u protoci, su kod ovih sistema znatno sloeniji i o njima neemo govoriti. Jedna osz c novna ema komunikacione veze prikazana je na Sl.4.3. Terminal (raunar) na s c jednom kraju veze komunicira sa raunarom (terminalom) na suprotnom kraju. c Komunikacionu vezu ine DTE (Data Terminal Equipment) i njemu pridruni moc z dem na oba kraja. Postoje dve osnovne konguracije veza koje zovemo veza tipa taka ka taki i c c vietakasta (multidrop) veza, kao to je prikazano na Sl.4.4. s c s Kod prve, obe krajnje stanice komuniciraju na ravnopravnoj osnovi, dok kod druge jednom ured aju je dodeljena uloga gospodara (glavne ili primarne stanice), a drugom uloga potinjenog (sekundarna stanica). Svaka stanica ima svoju c sopstvenu jedinstvenu adresu, pri emu je primarna stanica ta koja kontrolie (nadc s gleda) celokupni prenos podataka po ostvarenoj vezi (ovakav tip adresiranja nije neophodan kod veze tipa taka ka taki). Fiziki, komunikacionu vezu mogu initi, c c c c kao to je prikazano na Sl.4.5, dva ili etiri voda. Kod dvoine veze postoji signals c zc na linija i masa, dok kod etvoroine veze postoje dve linije po kojima se prenose c zc signali i dve ice za masu. z Organizacija logike komunikacione veze prikazana je na Sl.4.6. Kod simpleks c veze, linija je namenjena za predaju ili prijem ali ne i za jedno i za drugo. Kod poludupleks veze, prenos se moe realizovati u oba smera, ali u jednom trenutku z veza se moe ostvariti samo u jednom smeru. Kod potpune dupleks veze, predaja z

54

GLAVA 4. SERIJSKI ULAZ/IZLAZ

i prijem se mogu ostvariti u oba smera istovremeno. Osnovna mera koja ukazuje na brzinu prenosa podataka je broj prenetih bitova u sekundi (bps- bits per second). Slilna mera je Baudova brzina. Baudova brzc ina predstavlja merilo o broju signalizirajuih jedinica u sekundi. Za sluaj kada c c se koriste jednostavne modulacione tehnike merila bps i baud su jednaka jer za svaki bit na liniji postoji samo jedno mogue stanje promene. Ali kada se koriste c kompleksne tehnike, kao to je fazna modulacija, i vie od jednog bita moe biti s s z kodirano sa ciljem da ukae na promenu stanja. Na ovaj nain, svaka signalizatorsz c ka jedinica (promena stanja) se moe koristiti za prenos veeg broja bitova, pa je z c u tom sluaju bitska brzina vea od baudove. Ovakav aspekt posmatranja interec c santan je sa stanovita projektovanja veoma brzih modema, ali sa take gledita s c s korisnika najvanija specikacija je bps. Nezavisno od toga moramo biti svesni da z se ova dva termina esto koriste ali i da njihovo znaenje nije identino u svim c c c situacijama.

4.5.2

Asinhroni prenos podataka

Na Sl.4.17 prikazan je talasni oblik koji vai za asinhroni prenos jednog znaka. z Svaki bit se predaje u toku jednog bitskog intervala. Kada se po liniji ne prenose podaci za signal kaemo da je u stanju marking, to odgovaraja logikoj jedinici. z s c Na poetku svakog znaka, signal se postavlja na stanje logike 0 u trajanju od c c jednog bitskog intervala. Ovaj bit se zove start bit, i on oznaava vremensku c referencu prijemnika. Nakon start bita, u toku svakog narednog bitskog intervala, generie se po jedan bit podatka, a obino prenos poinje sa LS bitom. Broj bitova s c c podataka moe biti 5-8 o emu postoji dogovor izmed predajne i prijemne strane. z c u Opciono, nakon zadnjeg bita podatka, moe slediti bit parnosti. Na kraju sledi z predaja jednog ili veeg broja stop bitova. Stop bit obavlja sledee dve funkcije: c c uje minimalno kanjenje znakova (ovo je bilo posebno vano obezbes z obezbed diti kod starih elektromehanikih predajnika i prijemnika), c stop bit u kombinaciji sa start bitom garantuje da e se javiti najmanje jedan c prelaz od stanja mark na stanje space na poetku svakog znaka. c Za predajnik je generisanje serijskog niza podataka jednostavan zadatak. On prosto generie svaki bit, ukljuujui start i stop bitove. Prijemnik ima u sutini s c c s tei zadatak. Kod asinhronog prenosa predajnik i prijemnik obino ne rade sa istim z c taktom. Zbog toga prijemnik mora tano da odredi lokaciju granice svakog bita. c Obino takt prijemnika je 16, 32 ili 64 puta vii od bitske brzine. I pored toga to c s s je ovaj takt asinhron u odnosu na predajni takt, frekvencija rada prijemnika moe z se razlikovati samo za nekoliko procenata u odnosu na frekvenciju rada (takta) predajnika.

4.5. MILETOV DEO

55

Sl. 4.17: Talasni oblik asinhronog serijskog prenosa

Da bi odredio prvu bitsku eliju prijemnik eka na prelaz mark-space, koji se c c javlja na poetku svakog start bita. Kod najveeg broja serijskih prijemnika postoji c c detekcija pogrenog start bita, a verikacija da li je linija u space stanju, vri s s se na sredini start bita. Na ovaj nain izbegavaju se uticaji kratkotrajnih smetnji c koje mogu dovesti do pogrenog okidanja prijemnika. Prijemnik (ako je start bit s bio ispravan) na dalje uzorkuje liniju za podatke radi prijema prvog bita podatka 1,5 T posle vaee detektovanog stanja mark-space, tj. odluuje o vanosti bita z c c z podatka na srediti bitskog intervala T. Na Sl.4.18 prikazani su trenuci uzorkovanja bitova u poruci na prijemnom kraju.

Sl. 4.18: Trenuci uzorkovanja bitova

Kako je prenos svakog podatka (znaka) nezavisan od prethodnog, postoji proizvoljan iznos pasivnog vremena izmed dva znaka, u kome se linija nalazi u stanju u mark. Sinhronizacija prijemnika se izvodi na osnovu ivice koja oznaava poetak c c start bita. Sa te take gledita, lokacija bitske elije zavisi od takta prijemnika c s c koji treba da je priblian taktu predajnika. Imajui u vidu da se podaci mogu u z c okviru bitskog intervala uzorkovati bilo gde, obino se dozvoljava neka greka od c s 3 do 5% u radu taktnih frekvencija predajnika i prijemnika.

56

GLAVA 4. SERIJSKI ULAZ/IZLAZ

4.5.3

Sinhroni prenos podataka

Kod asinhronog prenosa podataka ne postoji dobra vremenska iskorienost sa sc stanovita prenosa informacije. Naime, najmanje dva od svakih deset bitova (start s i stop) ne nosi korisnu informaciju. Zbog toga se gubi 20% od ukupnog propusnog opsega komunikacione veze. Teoretski, ekasnost se moe poveati prenoenjem z c s veeg broja bitova izmed svakog para start i stop bitova. Ali, kako se ukupna s u sinhronizacija u radu zasniva na prvom prelasku sa 1 na 0, bilo koja greka u s taktnoj frekvenciji akumulira se do pojave sledee start-stop sekvence. Taktne c frekvencije predajnika i prijemnika moraju zbog toga biti veoma dobro uparene. Drugi problem kod asinhronog prenosa se javlja zbog toga to prijemnik obino s c radi sa taktnom frekvedncijom koja je 16 puta vea od one koja odgovara bitskoj c brzini. Ovi problemi se mogu reiti korienjem sinhrone komunikacije kod kos sc je se zajedno sa informacijom predaje i taktna pobuda. Taktna frekvencija se moe prenositi kao poseban signal, ili ako se koristi princip kodiranog samotakz tovanja kojim se omoguava izdvajanje takta od primljenih podataka. Nezavisno c od toga koja se tehnika koristi prijemniku se dovodi taktna frekvencija koja je sinhrona sa predajnom taktnom frekvencijom. Na ovaj nain se eliminie potreba c s za uvod enjem start i stop bitova, kao i to da prijemnik radi sa taktnom frekvencijom koja je multipl u odnosu na bitsku brzinu. Na ovaj nain postie se vea c z c brzina kod prenosa podataka. Na Sl.4.19 prikazana je razlika izmed asinhronih i sinhronih signala. Kod asu inhronih sistema postoji najmanje uvek po jedan start i stop bit izmed svakog u para znakova. Kada se ne prenosi podatak, signal ostaje u mark stanju. Kod sinhronog sistema ne postoji pasivno vreme izmed znakova. Kada se ne prenosi u podatak, prenosi se podatak o sinhronizaciji. Ovaj znak ne nosi informaciju, ali obezbed uje da se ostvari sinhronizacija prijemnika. Zbog vee brzine prenosa, c sinhroni prenos podataka se obino koristi za komuniciranje izmed raunara. c u c Nekoliko protokola je denisano za korienje kod sinhronih komunikacionih sisc stema. O ovoj problematici neemo govoriti. c

Sl. 4.19: Pored enje talasnih oblika asinhronog i sinhronog serijskog prenosa

4.5. MILETOV DEO

57

4.5.4

Tehnike digitalnog kodiranja

Bit serijsko kodiranje, kod koga signal zadrava stanje kod svakog bita u toku z bitskog intervala, zove se NRZ (not-return-to-zero), poto se signal ne vraa na s c nulu posle svakog bita. Ova tehnika kodiranja se esto koristi kod asinhronih c komunikacija, ali ima nedostatak to nije samotaktovana, tj. iz NRZ signala nije s mogue izdvojiti taktnu frekvenciju. Pored toga NRZ signal moe ostati u istom c z stanju (0 ili 1) nedenisan period vremena, tako da je potrebvno obezbediti u prenosu i DC spregu. Da bi metod kodiranja bio samotaktovan, mora se garantovati prelaz signala iz jednog stanja u drugo, nezavisno od toga kakav se oblik podataka prenosi. Da bi se ovaj cilj ostvario potrebno je da se koriste posebna kola sinhronizaciju koja se zovu PLL (Phase Locked Loop). Alternativni metod kodiranja je NRZI. Na Sl.4.20 prikazan je nain kodiranja jednog oblika podatka razliitim kodovima. c c

Sl. 4.20: Tenike kodiranja NRZI kodiranje koristi prelaz na poetku elije sa ciljem da oznai 0 a ne koristi c c c prelaz da bi oznaio 1. Zbog toga NRZI nije u potpunosti samotaktovan kod, jer c kontinualan niz jedinica ne kreira prelaze. Manester kodiranje je primer tehnike samotaktovanog kodiranja. Postoji c prelaz u centru svake bitske elije; prelaz sa visoko-nisko ukazuje na 1, a sa niskoc visoko na 0. Prelazi se izvode u okviru granice bitske elije, tako da u okviru elije c c uvek postoji po jedan prelaz, a ponekad i dva. Na alost kodiranje i dekodiranje z Manester signala je dosta tee u odnosu na NRZ signale. Postoji veliki broj varc z ijacija tehnike kodiranja. Bifazno kodiranje koristi prelaz na svakoj granici bitske elije. Prisustvo ili odsustvo prelaza u centru svake bitske elije odred c c uje stanje bita. Prelaz u centru elije ukazuje na 1, a kada ne postoji prelaz u centru ukazuc je se na 0. Moe se koristiti i suprotan prilaz, kada prelaz u centru bitske elije z c ukazuje na 0.

58 Modulacione tehnike i modemi

GLAVA 4. SERIJSKI ULAZ/IZLAZ

Sa ciljem da se prenese informacija izmed predajnika i prijemnika, osnovni lou giki signali moraju se prvo konvertovati u oblik koji je pogodan za predaju po c komunikacionom kanalu. Postoji nekoliko tehnika da se ostvari ova funkcija. Kod najstarijeg pristupa - elektromehaniki teleprinter - kodiranje informacije se vri c s pomou povorke unipolarnih DC impulsa (mark i space) kao to je prikazano na c s Sl.4.7. U dananje vreme za prenos digitalnih podataka na dua rastojanja ili preko s z analognog medijuma, kao to su telefornske linije, koriste se modemi. Opti blok s s dijagram modema prikazan je na Sl.4.21.

Sl. 4.21: Blok dijagram modema

Za prenos informacije po liniji se koriste razliite tehnike. Na Sl.4.8 prikazana c je tehnika RTTY (Radio Teletype) kod koje amplituda noseeg signala varira da c bi se ukazalo kada je signal na 1 ili 0. Druga esto koriena tehnika modulacije je FSK (Frequency Shift Key). Kod c sc ove tehnike, sl. 15, jednom frekvencijom se predstavlja 0 a drugom 1. Na primer, Kansans City Standard koji se koristi kod zapisa na kaseti kodira 0 sa 1200 Hz, a 1 sa 2400 Hz. Fazno kodiranje, esto nazvano PSK (Phase Sft Key) koristi samo c jednu frekvenciju, ali promena faze ukazuje na podatak ( sl. 15). Fazno kodiranje zahteva manji analogni propusni opseg za datu bitsku brzinu, ali je kompleksnije za implementaciju. Na sl. 15, 0 ima istu fazu kao i nosilac, a 1 se kodira kao promena faze od 180 . Ogranieni opseg telefonske linije (300 Hz do 3.4 kHz), ograniava brzinu sa koc c jom se moe vriti prenos podataka. Kod poludupleks prenosa u jednom trenutku z s jedan modem moe koristiti ceo raspoloivi opseg, a kod potpunog dupleksa ukupz z

ovde nisu dobre reference na slike

4.5. MILETOV DEO

59

ni propusni opseg mora biti deljiv. Jedan od najstarijih standarda za modeme 0koji se jo i dan danas koristi je Bell 103. Ovaj standard koristi FSK modulaciju s za predaju do 300 bps u potpunom dupleksu. On koristi sledee frekvencije. c Modem koji alje: 0=1070 Hz Modem koji odgovara: 0=2025 Hz 1=1270 Hz s 1=2225 Hz

Sl. 4.22: Dati naziv za sliku Drugi poznatiji standard je Bell 212A kojim se ostvaruje brzina prenosa od 1200 bps u reimu rada potpuni dupleks. Bell 212A koristi dvobitnu faznu modulaciju. z Nosilac predajnog modema je 1200 Hz, a modema koji odgovara je 2400 Hz. Termin dvobitni ukazuje na injenicu da se pomou dva bita vri kodiranje svakog faznog c c s pomeraja. Na Sl.4.22 prikazane su etiri fazne promene za modem tipa 212A kada c je nosilac 2400 Hz. Baudova brzina fazno kodiranog signala odgovara brzini faznih promena. Kako se sa dva bita kodira jedna fazna promena, niz podataka od 1200 bps generie analogni signal od 600 bauda. Modeme moemo podeliti u tri grupe: s z a)modemi za prenos podataka na kraim rastojanjima (short-haul modemi). c Kao to i samo ime ukazuje koriste se za prenos podataka u onim sluajevima kada s c su predajnik i prijemnik blizu jedan drugom i ne postoji potreba za korienjem sc javne telefonske mree. z b) Voice-grade modemi - koriste javnu telefonsku mreu pa su zbog toga z ogranieni na opseg od 300 Hz do 3,4 kHz. Maksimalna brzina prenosa kod ovih c tipova modema je 9600 bps. c) Wideband (irokopojasni) modemi za prenos koriste namenske ili radio s kanale i mogu raditi sa brzinama od 19,2 do 230,4 kbps. Savremeni modemi su inteligentni i zasnivaju svoj rad na mikroprocesorskom upravljanju. Pored mogunosti da vre prijem i predaju podataka, takvi modemi c s imaju mogunost da se odazivaju na komande host raunara, vre automatsko c c s povezivanje i prekidanje veze, i generiu pozivnu informaciju po telefonskoj liniji. s

60

GLAVA 4. SERIJSKI ULAZ/IZLAZ

4.5.5

Standardi za prenos podataka

Postoji vei broj standarda koji se odnosi na prenos podataka. Razmatraemo c c samo standarde koji se odnose na ziki nivo, a koji speciciraju naponske nivoe c i deniciju signala, da bi se mogli preneti bitovi sa jednog mesta na drugo. U daljem tekstu opisaemo standarde RS-232, RS-422, RS-423, RS-449 i RS-485. Ovi c standardi su denisani od strane EIA (Electronic Industries Association). Postoje i standardi denisani i od strane CCITT (Comite Consultatif International Telephonique et Telegraphique). CCITT-ovi standardi poinju sa slovom V, na c primer V.24 je ekvivalentan sa RS-232. RS-232c RS-232c je najee korieni standard za rad na kraim rastojanjima i srednjim c sc sc c brzinama. Slovo C oznaava da je to trea verzija poetno predloenog standarda, c c c z a RS se odnosi na Recommanded Standard. Kao to je prikazan o na Sl.4.23 s prvobitno RS-232c je bio namenjen za prenos podataka izmed ured u aja tipa DTE (Data Terminal Equipment kao to je raunar) i ured tipa DCE (Data Commus c aj nication Equipment kao to je modem). s

Sl. 4.23: Standardna RS-232 konguracija: veza terminala i raunara preko modema c RS-232c je kako elektriki tako i funkcionalni standard; on specicira kako elekc trine nivoe signala pomou kojih se predstavlja 0 i 1, tako i funkciju svakog signala c c u interfejsu. U Tab. 1 prikazane su osnovne elektrine karakteristike standarda c RS-232c, RS-423A, RS-422A i RS-485. Tab. 1 Signali su nebalansirani (takod nazvani nesimetrini ili single-ended) nasuprot e c balansiranim (nazvani simetrinim ili diferencijalnim), to znai da je za prenos c s c svakog signala potrebna samo po jedna veza, a zajednika za sve je masa. Elektrini c c nivoi koji se koriste kod RS-232c, a odnose se na predajnik i prijemnik, prikazani su na Sl.4.24. Razliiti drajveri i prijemnici kao integrisana kola se koriste za konverziju TTL c nivoa u RS-232, i obrnuto. Najee korieni par je 1488 etvorostruki drajver i c sc sc c 1489 etvorostruki prijemnik. Na Sl.4.25 prikazan je izgled integrisanih kola 1488 c i 1489 (misli se na raspored i funkciju pinova).

4.5. MILETOV DEO

61

Sl. 4.24: Elektrini nivoi u RS-232c c

Sl. 4.25: Komponente za spregu u RS-232c Direktna veza izmed predajnika i prijemnika RS-232c standarda, koristei kola u c MC1488 i MC1489, ostvaruje se na nain prikazan na Sl.4.26. c MC1488 translira TTL nivoe u RS-232c nivoe, a MC1489 ih ponovo konvertuje u TTL. Veza za masu je zajednika za vei broj signala. c c Pored specikacije elektrinih aspekata RS-232 standardom se speciciraju i c funkcije i brojevi pinova grupe signala koji ine kompletni interfejs. U Tab. 2 pric kazani su ovi signali. Numerisanje signala odgovara 25-pinskom konektoru tipa D. Evidentno je da RS-232c podrava komunikacije tipa potpuni dupleks. Linije 2 i 3 z se koriste za predaju (TxD) i prijem (RxD). Signali koji se u komunikacijama esto c koriste su DSR, DTR, RTS i CTS. Za ove signale kaemo da su tipa handshake. z RTS (Request To Send) alje se od strane DTE-e (raunar ili terminal) ka DCE-u s c (modem) sa ciljem da se DCE pripremi za prenos. DSR (Data Set Ready) se koristi da ukae na status lokalnog DCE-a. Kada DTE eli da predaje, on prvo aktivira z z RTS (Request To Send), a zatim eka na potvrdu testiranjem stanja na liniji CTS c

62

GLAVA 4. SERIJSKI ULAZ/IZLAZ

Sl. 4.26: RS-232c data link (Clear To Send). Ovi signali se koriste kod poludupleks modema za upravljanje smerom predaje. DTE (raunar ili terminal) aktivira signal RTS kada eli da c z predaje, a shodno izdatom zahtevu DCE (modem) obre smer komunikacionog c kanala. Kada je modem spreman za predaju, kao pozitivnu potvrdu na izdati zahtev, aktivira signal CTS pa DTE tada moe da pone sa predajom. Kod z c potpunog dupleksa linije RTS i CTS se esto med c usobno povezuju u kablu na strani DCE-a, tako da se CTS automatski potvrd uje kada je RTS aktivirano. Interakcija izmed DSR, DTR, RTS i CTS prikazana je na Sl.4.10. Standard u RS-232c ne garantuje da se bilo koja dva ured aja koja koriste ovaj standard mogu direktno povezati. Kao prvo, za uspean rad jedan od ured s aja mora se kongurisati kao DTE, a drugi kao DCE. Na primer pin TxD je izlaz iz DTE-a, a ulaz u DCE. Ako se izvri povezivanje dva ured s aja istog tipa DTE (ili DCE) oba e predavati na c istoj liniji, tako da interfejs nee raditi (ovo nije sluaj kada se obavlja povezivanje c c ured aja tipa DTE i DCE, na primer raunar i modem). Reenje za povezivanje c s dva ured aja, pri emu su oba kongurisana da budu istog tipa, moe se nai ako se c z c izvri ukrtanje odgovarajuih parova signala u kablu za povezivanje. Na Sl.4.27 s s c prikazan je nain povezivanja esto nazvan null modem, kod koga oba ured c c aja smatraju da su povezani sa modemom.

Sl. 4.27: Null modem Drugi problem koji se javlja kod korienja RS-232c interfejsa je odsustvo posc drke rada handshake signalima (RTS, CTS, DTR i DSR) kao i signala DCD s (DCD - Data Carrier Detect je izlazni signal iz modema koji ukazuje da je modem

4.5. MILETOV DEO

63

primio od strane drugog modema tonski nosilac) U ovim situacijama mogu nastati problemi, ako raunar eka na potvrdu signala na handshake liniji, pre nego to c c s pone sa slanjem. Problem se moe reiti povezivanjem signala u kablu kao to je c z s s prikazano na Sl.4.28 na DTE i DCE strani. Na ovaj nain oba ured c aja primaju potrebne handshake signale i pored toga to ih drugi ured ne generie. Na s aj s Sl.4.11 prikazane su neke tipine aplikacije RS-232c. Prva veza raunar-modem je c c standardna, a ostale dve raunar-terminal i raunar-tampa nisu. Najvei broj c c s c c interfejs problema moe se reiti izradom specijalnih kablova. Postoje takod i z s e specijalne kutije koje omoguavaju da se koriste kratkospajai kojima se ostvaruc c je proizvoljno povezivanje. Postoje takod i pametni kablovi, koji konguriu e s svoje ulaze i izlaze u saglasnosti sa signalima koji se primaju na konektoru. Drugo korisno sredstvo za reavanje problema kod RS-232c je gender changer koji s konvertuje muki konektor u enski i obrnuto. s z

Sl. 4.28: Dati naziv za sliku

RS-422 Kod RS-422 koriste se balansirani ili diferencijalni drajveri ili prijemnici za iji c je korektan rad potrebno po dve ice po signalu. Na Sl.4.29 prikazan je par balz ansiranog predajnika/prijemnika. Ovakav pristup iima nekoliko prednosti. Sum (smetnje) indukovan u kablu od strane elektromagnetnih zraenja ima podjdnak c uticaj na oba voda, tj. um nema uticaj na logiko stanje signala. Takod i bilo s c e kakav pad napona du kabla (zbog podune otpornosti, kapacitivnosti) ima podz z jednak uticaj na signale koji se prenose po oba voda. Drugim reima, kod RS-422 c informacija se prenosi signalom razlike izmed obe linije pa je zbog toga i imunost u na smetnje vea. c Treba takod istai da postoji i granica; prijemnik moe tolerisati samo odree c z d eni nivo napona u odnosu na masu na bilo kom od njegovih ulaza. Apsolutni nivo napona smetnji i korisnog signala na ulazu u prijemnik ne sme da pred vrednost e napona napajanja. Kljune elektrine karakteristike interfejsa RS-422 date su u c c Tab. 1. Drajver mora da generie minimalni diferencijalni izlazni napon od 2 V s

64

GLAVA 4. SERIJSKI ULAZ/IZLAZ

Sl. 4.29: Balansirani predajnik i prijemnik pod uslovom da postoji maksimalno optereenje, a osetljivost prijemnika mora biti c vea od 200 mV. Na ovaj nain do 1,8 kV diferencijalnog uma (ukljuujui i bilo c c s c c kakvu razliku zbog pada napona na oba voda) je mogue tolerisati. Na Sl.4.30 c prikazane su logilke eme tipinih RS-422 drajvera. Drajveri imaju zajedniki c s c c ulaz za dozvolu/zabranu rada veeg broja drajvera. Svaki izlazni drajver ima c dva izlaza, a njegovi ulazi su TTL kompatibilni. Osetljivost ulaznog drajvera je 200 mkV, ako je opseg napona na zajednikim krajveima +7 V, a njegov izlaz je c takod TTL kompatibilan. Karakteristike koje prikazuju uporedni odnos izmed e u maksimalnih brzina predaje, u odnosu na duinu kabla za RS-232c, RS-422 i RSz 423, prikazane su na Sl.4.13. Napomenimo da 1fett=33cm (3feet 1m).

Sl. 4.30: RS-422 drajveri

Izolacija mase Cesto izmed potencijala masa ured u aja koje treba povezati postoji potencijalna razlika koja premauje dozvoljeni opseg napona na zajednikim krajevima za s c prijemnike tipa RS-422. Ovaj problem se moe reiti izolacijom mase preko opz s toizolatora, kao to je prikazano na Sl.4.31. U konkretnom sluaju optoizolatori s c

4.5. MILETOV DEO

65

su ugrad eni u pojaavaima. Da bi sistem korektno funkcionisao potrebno je da c c postoji i izolacija napona napajanja, tj. da blok za napajanje bude tipa DC -DC.

Sl. 4.31: Izolacija mase Jednostavniji sistem kod koga se vri izolacija samo na prijemnom kraju pris kazan je na Sl.4.32. U ovom sluaju nije potrebno uvoditi i izolovano napajanje c kao to je bio sluaj na Sl.4.31. Ovo reenje je pogodnije za aplikaciju interfejsa s c s RS-232c i RS-423, a ne i za RS-422 zbog relativno malih pobudnih signala koje koristi interfejs RS-422. Kod reenja sa Sl.4.32 za pobudu prijemne diode potrebna s je relativno velika struja, pa to ograniava postavljanje veeg broja prijemnika na c c jednoj liniji kao kod RS-422.

Sl. 4.32: Dati naziv za sliku RS-423 Evidentno je da RS-422 ima vei broj prednosti u odnosu na RS-232c, ali korienje c sc diferencijalnog prenosa zahteva uvod enje dva puta veeg broja linija (vez) u odnosu c na nebalansirani prenos. RS-423 omoguava prenos pri veim bitskim brzinama c c (do 100kbauda) i na dua rastojanja (do 1,2km), ali je podloan smetnjama. Kao z z i RS-232c i RS-432 je nebalansirani sistem, koristi jedan signalni put (u odnosu

66

GLAVA 4. SERIJSKI ULAZ/IZLAZ

na masu). U Tab. 1 prikazane su elektrine karakteristike interfejsa RS-423. Najc znaajnije promene su smanjenje amplitude izlaznog napona (na liniji) i poveanje c c osetljivosti. Minimalna promena izlaznog napona na liniji je =3,6V (kod RS-232c je =5V), a maksimalni dozvod eni izlazni napon je =6V (kod RS-232c je =15V). Drajver treba da je u stanju da pobudi vei broj prijemnika (minimalna vrednost c optereenja treba da je 450 ). Osetljivost prijemnika je 200mV (kod RS-232c je c =3V). Na Sl.4.33 prikazan je logiki dijagram drajvera za RS-423. Ovaj ip radi c c sa napajanjem od =5V nasuprot drajveru za RS-232c koji radi sa +9V ili vie. s

Sl. 4.33: Drajver za RS-423 Na sl.4.34 prikazan je nain povezivanja predajnika i prijemnika kod interfejsa c RS-232c, RS-422 i RS-423.

Sl. 4.34: Povezivanje predajnika i prijemnika u standardima RS-232, RS-422 i RS-423

RS-485 RS-485 je poboljana verzija od RS-422 a koristi se kod sistema kod kojih postos ji vie od jednog predajnika. Poveanjem sposobnosti izlaznog drajvera i ulazne s c impedanse prijemnika, mogue je zajedniki povezati do 32 drajvera i 32 prijemc c

4.5. MILETOV DEO

67

nika. Jedan ip interfejsa RS-485 ini predajnik i prijemnik koji se zove primoc c predajnik (transceiver). Primopredajnik obezbed uje jedan par pinova za RS-485 povezivanje i izdvojeni TTL ulaz i izlaz za predajnik i prijemnik. Rad predajnika se moe dozvoliti/zabraniti stanjem signala na liniji Control. z Na Sl.4.35 prikazan je poludupleks RS-485 sistem koji koristi ovaj tip primopredajnika. Zavrni otpornici su potrebni na oba kraja. s

Sl. 4.35: Primopredajna komponenta za RS-485 i njeno povezivanje Ako se za prenos podataka koristi irmovani upredeni (twisted) kabl, irm (oks s lop) se tada koristi kao zajednika masa za sve primopredajnike. Kada se eli c z izolacija masa izmed sistema koriste se optiki izolatori koji se instaliraju pre u c svakog primopredajnika. Strujna petlja Svi prethodno opisani interfejsi su bili naponskog tipa. Drugi tip interfejsa je strujna petlja, kod koje se koristi protok struje, a ne specini naponski nivo radi c ukazivanja na stanje signala. Strujna petlja je poetno koriena u telegraji. Telec sc grafski interfejs koristi petlju od 60mA. Najvei broj raunara i periferija koristi c c interfejs tipa strujna petlja od 20mA. Princip rada interfejsa tipa strujna petlja prikazan je na Sl.4.36 Kod ovog interferjsa strujni izvor moe biti u predajniku ili u prijemniku. Kraj z u kome se nalazi strujni izvor zove se aktivni a drugi kraj se zove pasivni. Ne postoji standard kada predajnik, a kada prijemnik, treba da bude aktivan, ali da bi sistem uspeno radio jedan deo mora biti aktivan a drugi pasivan. s Na Sl.4.8 prikazan je nain korienja strujne petlje kada se eli ostvariti prenos c sc z tipa puni dupleks. Praktina implementacija tipine strujne petlje prikazana je na c c Sl.4.37. Kod ove petlje koristi se aktivni predajnik, a pasivni prijemnik. TTL ulaz ukljuuje (aktivira) Q1 i dozvoljava protok struje kroz petlju koristi strujnu petlju. c Zener dioda D1, ograniava pad napona na LED elementu i otporniku R4, a R4 c

68

GLAVA 4. SERIJSKI ULAZ/IZLAZ

Sl. 4.36: Princip rada interfejsa strujna petlja odred uje struju LED diode. Kada struja kroz petlju tee LED elemenat je aktivan c pa optoizolatorski fototranzistor provodi. Optoizolatorom se ostvaruje izolacija masa izmed predajnika i prijemnika, to je posebno vano ako su mase sistema u s z predajnik i prijemnik na razliitim potencijalima. Optiki izolator se moe takod c c z e koristii na predajnom delu ako se eli ostvariti potpuna galvanska izolacija. z

Sl. 4.37: Praktina implementacija tipine strujne petlje c c

Glava 5

Paralelni ulaz/izlaz
Paralelne U/I komponente su projektovanje za direktno prikljuenje na magistralu c raunarskog sistema, i obezbed c uju ulazne i izlazne portove za spregu cpu sa spoljanjim svetom. Portovi se sastoje najee od 8 ili 16 linija. Komponente u sebi s c sc sadre programabilne registre, koji se koriste za upravljanje radom komponente, a z takod i za pamenje podataka izmed procesora i spoljnjeg sveta. Ti registri se e c u selekktuju preko adresne magistrale i omoguavaju izbor razliitih reima rada. c c z Tipini osmobitni predstavnici paralaenih interfejsa su MC 6821, Rockwell c R6522, Intel i8255 itd. Motorolini i Rockwellovi procesori koriste memorijski preslikan U/I, a Intel i Zilog odvojeni U/I. Mi emo detaljnije obraditi i8255. c Programabilni periferni interfejs i8255

5.1

Tastatura

Najee korieni tipovi ulaznih ured c sc sc aja su tastature. Tastaturu ini vei broj c c oznaenih dirki koje su ured c ene na neki pogodana nain, prihvatljiv korisniku. c Kada se jedna dirka pritisne tastatura generie jedinstven binarni kod, na osnovu s koga CPU identikuje koja je dirka je pritisnuta. U praksi se tastatura kombinuje sa nekom vizuelnom izlaznom jedinicom, displejem. To mogu biti LED ili LCD displeji, a kod mikroraunara opte namene su najee CRT displeji. Tastatura c s c sc i CRT displej ine jedinicu koju zovemo terminal. Terminal obezbed c uje dobru interakciju korisnik/ raunar. Korisnik preko tastature unosi podatke koji se nakon c toga predaju raunaru, a on ih zatim prikazuje na monitoru. c Koje se eme kodiranja koriste kod tastatura? Na koji nain su organizovane s c tastature? Od kojih se osnovnih gardivnih blokova sastoji logika tastature? Koji se problemi javljaju kod realizacije tastature i kako se oni otklanjaju? Na koji 69

70

GLAVA 5. PARALELNI ULAZ/IZLAZ

nain komuniciraju Cpu i tastatura? Da li postoje posebni kontroleri tastature? c Ovu su osnovne teme koje se razmatraju u ovom poglavlju.

5.1.1

Tastature kod kojih dirke imaju ksne i promenljive funkcije

Osnovni problem koji se javlja u fazi projektovanja i realizacije tastature sastoji se u tome kakvu funkciju treba dodeliti dirkama na tastaturi: ksnu ili promenljivu. Tastature najjednostavnijih runih kalkulatora (Sl.5.1 ), telefonskih aparata, elekc tronskih instrumenata i dr. realizuju se pomou dirki koji su namenjeni samo za c jednu funkciju. Tastature kod kojih dirke imaju ksnu funkciju imaju nekoliko prednosti u odnosu na one kod kojih dirke imaju promenljivu funkciju, a to su:

Sl. 5.1: Tastaure sa dirkama namenjenim samo za jednu funkciju Jednostavan rad - za ostvarenje jedne funkcije pritiska se samo jedna dirka i ta dirka uvek obavlja istu funkciju. Sve ponud ene (dostupne) funkcije se mogu odrediti analizom tastuture. Za rad tastature potrebna je ralativno mala programska podrka. s Dirke su uredjeni u logike grupe. c Nedostaci tastatura sa ksnim funkcijama dirki su: Ako je broj funkcija veliki bie neophodno ugraditi veliki broj dirki. c Ako ima mnogo dirki potrebno je esto vizuelno pretraivanje i pomeranje c z ruke i glave prema oblasti gde se nalazi dirka. Mala promena iziskuje hardversku modikcaiju (proirenje tastature za nekos liko dodatnih funkcija zahteva ugradnju novih dirki).

5.1. TASTATURA

71

Ponekad je teko logiki grupisati dirke da bi se zadovoljili zahtevi koji vae s c z za sve operativne procedure. Izbor tastature sa ksnom funkcijom dirke je dobro reenje na onim mestima: s c gde se odredjeni skup funkcija esto koristi, kada funkcije treba da se izvravaju brzo, s kada je korektni inicijalni izbor funkcija kritian da bi se ostvarila operac tivnost sistema. Tastature kod kojih se ugradjuju dirke, koje imaju promenljive funkcije, mogu se realizovati na jedan od sledea dva naina: c c c dirke menjaju svoju funkciju, omoguavaju korisniku da menja funkciju dirki ali je pri tom broj alternativa mali. soft dirke - funcije dirki se deniu softverski, i mogu se dinamiki menjati. s c Informacija o funkciji dirki obino se prikazuje na CRT displeju. c Na Sl.5.4 prikazana je tastatura koja koristi dva naina rada za promenu funkcic je odgovarajue dirke. c

Sl. 5.2: Tastatura sa dirkama sa dve funkcije Na Sl.5.4 prikazan je primer sistema koji koristi soft tastature. U Tab. 1 prikazane su prednosti i nedostaci tastatura koje koriste dirke sa ksnim i promenljivim funkcijama. Tab. 1

72

GLAVA 5. PARALELNI ULAZ/IZLAZ

Sl. 5.3: Sistem sa soft tastaturom


Tastatura sa ksnim funkcijama Tastatura sa promenljivim funkcijama Prednosti Jednostavnost u radu Mali broj dirki Funkcija dirke je evidentna Ne treba mnogo vizuelnog pretraivanja z Minimalan softver Ne treba mnogo pokreta rukom Logiko grupisanje dirki c Moe se modikovati softverskom z promenom Nedostaci Veliki broj funkcija zahteva veliki broj Poveava se vreme izbora funkcije c dirki Cesto vizuelno pretraivanje z Smanjena jasnoa oko beleenja dirki c z Cesto pomeranje ruke Potrebe za prompt i povratne reakcije Promena zahteva hardversku modikaciju Potreban je dui period uvebavanja z z

U Tab. 2 dat je prikaz kada je pogodonije koristiti tastature kod kojih dirke imaju ksne i promenljive funkcije. Tab. 2.
Fiksne funkcije Jedan skup funkcija se esto koristi c Funkcije se moraju brzo izvriti s Izbor korektne funkcije je kritian c Promenljive funkcije Nekoliko podskupova funkcija se esto c koristi Brzina unoenja nije usiljena s Zadovoljavajui prompt i povratna c reakcija su potrebni

5.2

Povezivanje tastature

Tastature i drugi tipovi prekidaa mogu se povezati na mikroraunarski sistem, na c c nekoliko naina. Neke od metoda su bolje kada je broj prekidaa (dirki) mali, a c c druge metode su bolje kada je taj broj veliki. Softver koji se ugradjuje u raunar, c a koji se koristi za analizu tastuture, zavisi od naina povezivanja raunara sa c c tastaturom.

5.2. POVEZIVANJE TASTATURE

73

5.2.1

Nemultipleksirani interfejs

Najjednostavnija sprega malog broja dirki sa mikroraunarskim sistemom prikazana c je na Sl.5.4.

Sl. 5.4: Direktno prikljunje malog broja dirki e Kao to se vidi sa Sl.5.4 na jedan ulazni port povezano je osam prekidaa (S0 s c - S7 ). Otpornicima R0 - R7 povezanim navie (Pull-up), u sluaju kada je prekis c da otvoren, obezbedjuje se da ulazni napon bude na visoko. Kada se prekida c c zatvori, ulaz se nalazi na nisko, a odgovarajui bit u trenutku kada mikroprocesor c ita ulazni port, je postavljen na 0. Kod realizacije ove jednostavne sprege softc ver nije sloen. Ovakvo reenje se esto koristi, kod mikroraunarskih sistema, za z s c c itanje postavljene konguracije sistema (stanje se postavlja DIP prekidaima ili c c kratkospajaima), a moe se koristiti i za realizaciju tastatura sa malim brojem dirc z ki. Potreno je naglasiti da je nemultipleksirani interfejs nepraktian za realizaciju c tastatura sa velikim brojem prekidaa. c

5.2.2

Multipleksirani interfejs

Multipleksiranim interfejsom u znaajnoj meri se smanjuje broj U/I-port-bitova c koje je potrebno analizirati kada je tastaturu potrebno realizovati sa velikim brojem dirki. Na Sl.5.5 prikazan je interfejs za tastaturu sa 16 prekidaa, realizovan sa c jednim etvoro-bitnim ulaznim portom i jednim etvoro-bitnim izlaznim portom. c c Kao i kod nemultipleksiranog interfejsa, otpornicima vezanim navie se obezs bedjuje da napon na nekom pinu ulaznog porta bude na visoko, ako dirka na tastaturi nije pritisnuta. Tastatura se ita kolona po kolona, a proces itanja c c je poznat kao skaniranje. Ovde emo prikazati skaniranje tastature principom c etajue nule. Jedan od izlaza izlaznog porta se postavi na stanje 0, a svi ostali s c na 1. Svaki izlaz izlaznog porta pobudjuje jednu kolonu dirki. Aktivna je samo ona

74

GLAVA 5. PARALELNI ULAZ/IZLAZ

Sl. 5.5: Matrina tastatura c kolona iji je bit postavljen na 0. Pritiskom bilo koje dirke spojene na ovu kolonu c dovee da stanje na liniji ulaznog porta u odgovarajuoj vrsti bude postavljen na sc c nisko. Na ovaj nain izlazni port omoguava itanje tastature kolona po kolona c c c preko jedinstvenog ulaznog porta. Sekvenca analize tastature je sledea: c U izlazni port se upisuje podatak 1110 Cita se ulazni port. Ako u poslednjoj koloni (oznaena sa 4) nema pritisc nutih dirki, proitana vrednost bie 1111. Ako je pritisnut bilo koji dirka, c c javie se 0 na odgovarajuoj bit poziciji. c c U izlazni port se upisuje podatak 1101, tj. kruno pomeren za jedno mesto z ulevo i aktivira sledea kolona (oznaena sa 3). c c Cita se ulazni port. U primeru sa Sl.5.5 je prikazano da je pritisnuta dirka u toj koloni, (spojene su trea kolona i druga vrsta) pa je tako oitani sadraj c c z ulaznog porta 1011. Ponovo se vri kruno pomeranje i upisuje se podatak 1011 u izlazni port, i s z ita ulazni port. c Na kraju se upisuje podatak 0111 u izlazni port i ita ulazni port. c Tastaturu treba esto analizirati kako bi se detektovalo kada je dirka pritisnuta, c a kada je oslobodjena. Najkrai pritisak dirke koji se mora detektovati menja se u c granicama od 20-100 ms (zavisi od tipa aplikacije i tastature).

5.2. POVEZIVANJE TASTATURE

75

Jedan od naina da se implementira softver za analizu tastature je korienje c sc programabilnog tajmera za generisanje zahteva za prekid jedanput u svakoj milisekundi. U toku obrade svake prekidne rutine podatak na izlaznom portu se kruno z pomera za jednu bit poziciju, a zatim se ita ulazni port. Ako u podatku koji se c proita postoji nula na bilo kojoj bit poziciji, tada je neka od dirki pritisnuta. c Tana pozicija dirke se moe odrediti dekodiranjem podataka po vrsti i koloni. c z Veliina multipleksirane tastature se lako moe proiriti. Sa 8-bitnim ulaznim c z s i izlaznim portovima moe se realizovati tastatura sa 64 dirke, a sa 16-bitnim z ulaznim i izlaznim portovima tastatura sa 256 dirki. Jedan od problema koji se javlja kod tastature organizovane na matrini nain c c ogleda se u tome to se ne moe uvek korektno detektovati koja je dirka pritisnuta, s z ako je u jednom trenutku pritisnut vei broj dirki. Ako pritisnute dirke pripadaju c istoj vrsti ili koloni, tada problem ne postoji. Ali, posmatrajmo situaciju prikazanu na Sl.5.6. Istovremeno su pritisnute tri dirke oznaene sa A, B i C. Kada se ita c c kolona 3, vrsta 2 je postavljena na nisko od strane dirke B. Kako je istovremeno pritisnuta i dirka A i kolona 2 bie takodje postavljena na stanje nisko (U sutini c s drajver kolone 2 tei da postavi liniju na visoko, a drajver kolone 3 , preko z vrste 2, pokuava da postavi liniju na nisko. Kod najveeg broja TTL kola nivo s c nisko e pobediti). Koloni 2 je dozvoljen rad, i pored toga to se softverski c s oekuje itanje samo kolone 3. Dirka C postavlja vrstu 3 na nisko, to dovodi c c s do toga da softver pogreno proceni da je pritisnut prekida D. Ovo se zove ghost s c keys (dirka duh).

Sl. 5.6: Dirka duh Ghost keys efekat se moe eliminisati postavljanjem dioda na red sa svakom z dirkom to omoguava da kolona postavi vrstu na nisko, ali se ne moe desiti s c z

76 obrnuto.

GLAVA 5. PARALELNI ULAZ/IZLAZ

5.2.3

Treperenje dirki

Kada se dirka pritisne (prekida zatvori), ne postoji samo jedan, isti prelaz iz stanc c ja otvoreno u stanje zatvoreno. Naprotiv dirka treperi izmedju stanja otvoreno i zatvoreno pre nego to ona konano ne zauzme poziciju zatvoreno. Slina situacis c c ja se javlja i kada se dirka otputa. Period treperenja dirke zavisi od njegove s konstrukcije. Kvalitetne dirke trepere od (1-5)ms, a loe od (20-100)ms. Ako s se o treperenju ne vodi rauna, mikroraunar e smatrati da je dirka, umesto c c c jedanom, vie puta pritisnuta i otputena. s s Postoji vei broj reenja kako da se eliminie problem treperenja dirki. Hardc s s verska reenja su prikazana na Sl.5.7 s

Sl. 5.7: Hardveske tehnike za eliminisanje treperenja dirki Sve tehnike za eliminaciju treperenja dirki prikazane na Sl.5.7 pogodne su kod onih aplikacija kod kojih se itanje stanja dirki vri hardverski. Kod aplikacija gde c s se itanje stanja dirki vri softverski, eliminacija treptanja dirki se u potpunosti c s obavlja programski. Osnovna ideja algoritma za eliminaciju treperenja dirki sastoji se u aktiviranju brojaa ija perioda brojanja odgovara vremenu treperenja u toku c c aktiviranja i deaktiviranja dirke. Kada je pritisak dirke detektovan, softver smeta s kod dirke u lokaciju za privremeno memorisanje. Ako je dirka i dalje pritisnuta kada se vri nova analiza tastature, tada se za svaku dirku smatra da je pritisnuta, s

5.2. POVEZIVANJE TASTATURE

77

a kod te dirke se predaje rutini za obradu. Ako je vreme treperenja due od z vremena analize, broj analiza za koje je dirka pritisnuta mora se odbrojati pa kada broja dostigne odredjenu vrednost kod dirke se predaje rutini na dalju obradu. c Napomenimo da nije uvek neophodno eliminisati treperenje kako kod zatvaranja, tako i kod otvaranja prekidaa. Na Sl.5.8 prikazan je efekat eliminacije c treperenja dirke koji je karakteristian za njeno oslobadjanje. c

Sl. 5.8: Prihvatanje dirke otvorenom nakon 10 ms od odputanja s U trenutku kada se dirka pritisne, za nju se smatra da je zatvorena. Ali u trenutku otputanja, ona mora ostati otvorena jo najmanje 10 ms pre nego to se s s s smatra da e konano biti otvorena. c c

5.2.4

Rollover i lockout

U aplikacijama gde se zahteva brzo unoenje podataka preko tastature, preklapans je usled pokretanja prstiju znai da u jednom trenutku moe biti pritisnuto i vie c z s od jedne dirke. Osobina tastature da se pritisnuta dirka prihvati u trenutku kada je i neka druga dirka takodje pritisnuta se zove rollover. Suprotno tome, tastatura kod koje nije ugradjen rollover (ova tehnika se jo zove i two-key-lockout) s ne dozvoljavaju prihvatanje bilo koje naredne dirke sve dok se prethodna ne oslobodi. U praksi postoji nekoliko verzija rollover-a. Na Sl.5.4 prikazane su tajming karakteristike nekoliko rollover ema. s

Sl. 5.9: Rollover tehnike

78

GLAVA 5. PARALELNI ULAZ/IZLAZ Two-key rollover (poznata jo i kao shadow rollover) dozvoljava da se i druga s dirka pritisne ako je prva ve pritisnuta. Ali, druga dirka e generisati signal c c samo ako se prva otpusti. Ako se druga dirka otpusti pre prve, pritisak na druge dirke e se ignorisati. Ako se dve dirke istovremeno pritisnu dolazi do c blokiranja izlaza. Three-key rollover - obezbedjuje vaee podatke samo za dva sekrencijalna z c pritiska tastature. Pritisak tree dirke nee generisati znak na izlazu, sve c c dok se jedna od prve dve pritisnute dirke ne oslobodi. n-key rollover - omoguava da tastatura prihvati sve pritisnute dirke i generie c s vaee znakove nezavisno od broja istovremeno pritisnutih dirki.U ovom z c sluaju se koristi memorija u kojoj se pamti redosled pritisnutih dirki. c

5.2.5

Interfejsi zasnovani na hardveru

Tastaturni interfejsi o kojima smo do sada govorili se realizuju kao softverskiintenzivni. Softver mora: kontinualno analizirati vrste i kolone tastature, dekodirati podatke i odrediti koja je dirka pritisnuta, izbei problem eliminacije treperenc ja, i ostvariti neki tip locout i rollover sa ciljem da se uspeno rei problem istovres s menog pritiskanja veeg broja dirki. Za izvrenje celokupnog softvera potrebno je c s dosta vremena, ak i za sluaj da nije pritisnuta nijedna dirka. Cesto se u mikroc c raunarskim sistemima ovaj problem reava na taj nain to se ugradjuje specijalni c s c s ip koji se zove tastaturni kontroler. Zadatak kontrolera je da samostalno obavi c sve gore nabrojane funkcije to ima za efekat da rastereti CPU. Tipini tastaturni s c kontroler je Intel 8279. Ovaj kontroler ima ugradjenu logiku za analizu tastature, eliminaciju treperenja dirki, displej drajver za 16 znakova, interni oscilator i broja c i 8-bitni FIFO bafer. 8279 se direktno spree sa matrino organizovanom tastaturz c om 8*8=64 dirki. Sprezanje tastature i raunara obino se realizuje kao to je prikazano na c c s Sl.5.10. Kada se pritisne dirka, STROBE linija se aktivira a ASCII kod sa izlaza tastaturne logike se upisuje u ulazni port. Cesto STROBE linija se vezuje na INTERRUPT. Na ovaj nain rad CPU-a se prekida samo kada je neka dirka c pritisnuta. Alternativni pristup je korienje mikroraunara na ipu kao tastaturnog konsc c c trolera (tipian primer su tastature IBM PC). Softver mikroraunara ine instrukc c c cije za analizu tastature i eliminaciju treperenja dirke. Prednost korienja mikrosc raunara kao tastaturnog kontrolera sastoji se u tome to se koristi serijski interfejs c s prema glavnom CPU-u. Korienje serijskog interfejsa obezbedjuje da se tastatusc ra ziki izdvoji od raunara ili sistemske jedinice, a za spregu je potrebno samo c c

5.2. POVEZIVANJE TASTATURE

79

Sl. 5.10: Kontroler za matrinu tastaturu c nekoliko ica. Mikroraunar tastature moe baferovati nekoliko znakova, ime se z c z c smanjuje brzina predaje podataka CPU-u.

5.2.6

Tehnologija prekidaa tastature c

Za realizaciju prekidaa tastature koriste se razliite tehnolgije. One se kategoriu c c s u zavisnosti od toga koliko se dirke pod pritiskom pomeraju i po mehanizmu kojeg one koriste za prekidanje. Standardne tastature koriste full-travel prekidae, c kod kojih se kapica pomera 0,15 ina kada se dirka pritisne. Full-travel prekic dae korisnici (oni koji kucaju) vole da koriste zbog toga to pritisak dirke izaziva c s relativno veliki hod. Najstandardniji full-travel prekidai su mehaniki prekidai, koji su na alost c c c z kao elementi dugotrajno posmatrano nepouzdani. Podloniji su prljanju i promeni z otpornosti na mestu kontakta. Cesto umesto mehanikih prekidaa se koriste c c reed prekidai. Pritiskanjem dirki pomera se magnet koji je lociran blizu reed c prekidaa, a to uslovljava njegovo zatvaranje. Reed prekidai su pouzdaniji od c c mehanikih zbog toga to se kontrakti ugradjuju unutar staklene cevi i na taj nain c s c se oni tite od zagadjivanja (prljavtina). Pouzdanije tastature se dobijaju ako se s s read prekidai zamene senzorima koji rade na principu Hall-ovog efekta. Senc zor koji radi na principu Hall-ovog efekta je poluprovodniki sklop koji detektuje c prisustvo magnetnog polja. ovo omoguava da se tastature prave bez mehanikih c c kontakata ime se poveava njihova pouzdanost. Na alost, kod ovakvih reenja c c z s znaajno se poveava i cena tastature, pa se zbog toga ove tastature ugradjuju na c c onim mestima gde se zahteva visoka pouzdanost. Kapacitivne dirke, tehnoloki s posmatrano, su takodje popularne zbog relativno skromne cene. Kada se dirka pritisne provodne ravni se pomeraju blie jedna drugoj. Na taj nain menja se z c

80

GLAVA 5. PARALELNI ULAZ/IZLAZ

vrednost kapacitivnosti koja se formira sa velikim brojem dirki. Svaki prekidaki c mehanizam je jednostavan i jeftin, a kola koja detektuju promenu kapacitivnosti mogu biti zajednika za sluaj da se koristi princip matriciranja. Suprotno c c nabrojanim tipovima prekidaa (pripadaju klasi full-travel), u praksi se esto koc c riste at-panel prekidai koji imaju veoma mali pomeraj. Najpoznatiji tipovi c su membranski, koji koriste sendvi koga ine tri plastine materije. Spoljni sloj c c c na unutranjoj (donjoj) strani je metaliziran (metalizacija se izvodi kod ara) a s s pomou metaliziranih delova ostvaruje se kontakt. Postoji vrlo mali hod jer su c plastini slojevi veoma blizu jedan drugom. Nedostatak ovog tipa tastature je taj c to za korisnika ne postoji povratni oseaj o otporu dirke koji on osea kada je s c c pritisnuo dirku (pored otpora dirke ne uje se i klik). Sistemi koji koriste memc branske tastature, obino kada se dirka pritisne, generiu neki drugi oblik povratne c s informacije kao to je klik ili neki zvuk. Ipak, vei je broj korisnika koji vie eli da s c s z radi sa dirkama koje pruaju otpor kod pritiskanja (tj. postoji tactile feedback). z Tehnologija prekidaa, koja se koristi za realizaciju tastatura, u najveem broju c c sluajeva je dome prekida (Sl.5.11). Metalna kupola (dome) ima ulogu opruge c c koja se u trenutku pritiskanja savija pa se na taj nain stvara korisniku povratni c oseaj u trenutku pritiskanja dirke. Veoma esto se u praksi koristi kombinacija c c membranskih i dome dirki.

Sl. 5.11: Dome prekida c U eksploataciji na tritu se esto sreu i dirke realizovane od provodne (elaszs c c tomer) gume, koje se karakteriu ogranienim pomeranjem. Dirka se izradjuje s c od silicijumske gume na kojoj je takasto naneta provodna guma (elastomer) sa c unutranje strane dirke. Na Sl.5.12 prikazan je popreni presek ovog tipa dirke. s c Kada se dirka pritisne, provodna guma kratko spaja vee na tampanoj ploi na z s c taj nain to se vri njihovo kratko spajanje. Tastature realizovane od provodne c s s gume su vrlo jeftine i ugradjuju se u kalkulatore, daljinske upravljae za TV i radio c itd.

5.2. POVEZIVANJE TASTATURE

81

Sl. 5.12: Dirka od provodne gume

82

GLAVA 5. PARALELNI ULAZ/IZLAZ

Glava 6

Povezivanje LED displeja na mikroprocesor


Razliite tehnike povezivanja LED alfanumeikog displeja prikazane su na likama c c Sl.6.1 a, b, c i d. a) Kontroler sa osveavanjem (refresh controler) z Kontroler periodino proizvodi prekide i nakon svakog prekida mikroprocesor c preduzima aktivnosti za prikazivanje sledeeg znaka na displeju. Dekodiranje se c moe vriti hardveski ili softverski. Zato je na slici dekoder nacrtan isprekidanom z s linijom. b) Kontroler sa dekodiranim podacima (Decoded data controler) Osveavanje se vri nezavisno od mikroprocesora. Lokalni RAM pamti dekodiz s rane podatke. Kontroler ih kontinuirano ciklino ita i njima osveav displej. c c z Mikroprocesor upisuje dekodirane podatke u RAM samo kada je potrbno izmeniti sadraj koji se prikazuje na displeju. z Kontroler sa kodiranim podacima (Coded data controler) Ovaj kontroler takod osveava displej nezavisno od mikroprocesora. Lokalni e z RAM sadri ASCII podatke koje je potrebno prikazati na displeju. Te zanke z kontroler ita, dekodira i prikazuje na displeju. U ovom sluaju mikroprocesor c c upisuje ASCI kod znaka koji je potrebno prikazati samo kada je potrebno izmeniti informacije na displeju. Kontroler sa pomonim procesorom (Display procesor controler) c U ovom sluaju koristi se poseban mikroprocesor za upravljanje radom displeja. c Zadatak glavnog mikroprocesora je da u zajedniki RAM upisuje ASCII kodove c znakova koje je potrebno prikazati na displeju. Pored enje prethodnih tehnika Izbor reenja utie na arhitekturu i osobine mikroraunarskog sistema. Na s c c 83

84

GLAVA 6. POVEZIVANJE LED DISPLEJA NA MIKROPROCESOR

Sl. 6.1: Tehnike povezivanja alfanumerikog displeja na mikroraunar c c primer dekodiranje ASCII znakova moe biti hardversko, i softversko. U nastavku z su upored enja ova dva naina: c Hardversko softversko bre z veoma eksibilno manja zauzetost mikroprocesora (razliita pisma, graki simboli) c c ksno potpuno pod kontrolom programa Jedno od pitanja koje se postavlja je i da li koristiti prekide ili ne. (Moda su z prekidi potrebni za neto drugo). s a) Obezbed uje najmanju cenu hardvera za bilo koju veliinu (duinu) displeja. c z ASCII dekoder moe biti u kolima za spregu ili u memoriji. Trenutak osveavanja z z odred je pojavom prekida, ija je uestanost proporcionalna duini displeja N, en c c z (uobiajeno je 100*N Hz), Tako da zauzetost procesora displejom zavisi od duine c z displeja. b, c) Zahtevaju interakciju samo kod izmena poruka na displeju. S obzirom da je ASCII kod mnogo kompaktniji oblik podatka od podatka koji se prikazuje

85 kodirani kontroler zahteva manje lokalnog RAM-a. U oba sluaja mikroprocesor c moe da menja pojedinane podatke na displeju upisom odgovarajueg podatka u z c c lokalni RAM. d) Kao i b) i c) zahteva interakciju samo kada se menja podatak koji koji se prikazuje na displeju. Posebni procesor obezbed uje dodatne mogunosti kao to c s su: razliiti naini ulaza podataka (levi i desni), tepui kursor, neke editorske c c c c komande, kao i izlaz podataka.

You might also like