1 UVOD Osnovni sestavni deli kompleksnih elektronskih naprav so večinoma elektronske komponente. S pojmom elektronska komponenta označujemo diskretne sestavne sklope, kot so na primer upori, kondenzatorji, integrirana vezja, transformatorji idr. Na trgu so na voljo kot že izdelani proizvodi, pripravljeni za vgradnjo. Elektronske komponente imajo široko paleto različnih lastnosti: obratovalna napetost, tok, moč, fizične dimenzije, oblika, število zunanjih priključkov, delovna frekvenca in podobne. Delimo jih lahko še na aktivne, pasivne, elektromehanske, spremenljive, nastavljive, konstantne, temperaturno odvisne – vseh mogočih lastnosti, po katerih bi jih lahko uredili oziroma klasificirali, je preveč, da bi jih lahko tukaj navedli. Slika 1.1 prikazuje nekaj osnovnih elektronskih komponent z njihovimi izvedenkami in pripadajočimi simboli. R C L OSC R C L OSC Slika 1.1: Simboli in elektronske komponente R, L, C in OSC Opazimo lahko, da imajo komponente z upornostjo, kapacitivnostjo in induktivnostjo vsaka po tri tipične predstavnike – izvedenko s konstantno vrednostjo, izvedenko z nastavljivo vrednostjo in izvedenko s spremenljivo vrednostjo. Pri komponenti kristalnega oscilatorja najdemo le izvedenko s konstantno vrednostjo. Zato smo pri razvoju elektronskih naprav omejeni, saj možnost spreminjanja delovne frekvence oscilatorja ni na voljo. Kadar potrebujemo komponento z drugačno vrednostjo delovne frekvence, moramo komponento praviloma nadomestiti z novim primerkom. Prejet 23. marec, 2017 Odobren 29. maj, 2017 94 KOLEŽNIK, VLAOVIČ Obstoječe industrijske rešitve programabilnih oscilatorjev v obliki komponent na splošno omogočajo širok frekvenčni razpon (500 MHz), vendar je pri spreminjanju frekvence najmanjši korak zaradi uporabljenega internega celoštevilčnega deljenja sorazmerno velik, reda 10 ali 25 kHz [1, 2]. Prispevek opisuje razvoj koncepta in izvedbo prototipa kristalnega oscilatorja, ki bo poleg konstatne frekvence ponujal tudi možnost nastavljanja in spreminjanja delovne frekvence. Osredinili se bomo na uporabo neceloštevilčnega deljenja v sintezi frekvence s fazno sklenjeno zanko (Phased Locked Loop, PLL) oziroma deljenja z racionalnim deliteljem, s čimer lahko pri sintezi frekvence dosežemo korak 1 Hz. V poglavju 2 najprej predstavimo koncept delovanja programirljivega oscilatorja. V poglavju 3 je opisana izvedba prototipa, vključno z izbiro komponent za implementacijo posameznih sklopov ter opisom delovanja. V poglavju 4 povzamemo rezultate ter podamo sklepne ugotovitve in ideje za nadaljnje delo. 2 KONCEPT PROGRAMIRLJIVEGA OSCILATORJA Večinoma so industrijsko izdelani kristalni oscilatorji vgrajeni v majhno, zaprto ohišje z zunanjimi priključki za napajanje in izhodni signal. Vrednost konstantne delovne frekvence oscilatorja je po navadi natisnjena na vrhnjem delu ohišja. Ker programirljivi kristalni oscilator omogoča spreminjanja delovne frekvence, je treba dopolniti električni simbol, kot je označeno črtkano na sliki 2.1. Napajalna napetost KRISTALNI OSCILATOR Izhod Dodan priključek za spreminjanje ali nastavljanje frekvence Napajalna napetost KRISTALNI OSCILATOR Izhod Dodan priključek za spreminjanje ali nastavljanje frekvence Slika 2.1: Simbol programirljivega kristalnega oscilatorja Za načrtovani programirljivi kristalni oscilator želimo, da v čim večji meri izpolnjuje naslednje zahteve: • fizične lastnosti, kot so dimenzije, teža, oblika in zunanji priključki, naj bodo enake obstoječi komponenti, • električne lastnosti naj bodo enake ali boljše od obstoječih, • način uporabe in delovanje oscilatorja naj bosta enaka kot pri obstoječi komponenti, • dodana naj bo možnost spreminjanja ali nastavljanja frekvence po namestitvi v vezje (in- circuit), po možnosti tudi med samim delovanjem. Takšen programirljiv oscilator bi lahko v prototipih ali obstoječih napravah nadomestil industrijski kristalni oscilator. Ob prehodu na serijsko proizvodnjo bi lahko programirljivo različico nadomestili s cenovno ugodnejšo različico s konstantno delovno frekvenco. 2.1 Notranja shema S pomočjo podanih zahtev predlagamo notranjo funkcionalno shemo na sliki 2.2. Programirljivi oscilator vključuje modul za upravljanje in generator urnega signala. IZHOD NASTAVLJIVI GENERATOR URINEGA SIGNALA MODUL ZA UPRAVLJANJE VHODNI PRIKLJUČEK ZA UPRAVLJANJE OSCILATORJA NAPAJANJE IZHOD NASTAVLJIVI GENERATOR URINEGA SIGNALA MODUL ZA UPRAVLJANJE VHODNI PRIKLJUČEK ZA UPRAVLJANJE OSCILATORJA NAPAJANJE Slika 2.2: Notranja funkcionalna shema Modul za upravljanje nadzira nastavitve generatorja, omogoča hranjenje nastavitev za nemoteno ponovno vzpostavitev delovanja po izpadu napajanja ter vključuje vhodni priključek za izvedbo komunikacije z uporabnikom. Vse navedene funkcionalnosti lahko izvedemo z ustreznim mikrokrmilnikom. Generator urnega signala lahko izvedemo z vezji s fazno sklenjeno zanko, ki omogočajo sintezo urnih signalov v širokem frekvenčnem razponu, v osnovi pa so krmiljena s kvarčnim kristalom. 3 RAZVOJ PROTOTIPA Osnovne gradnike obeh modulov smo izbrali na podlagi primerjave zmogljivosti, velikosti, dostopnosti in cen razpoložljivih proizvodov, predvsem mikrokrmilnikov in vezij za sintezo urnih signalov. Za izvedbo modula za upravljanje smo izbrali mikrokrmilnik ATMEL AVR ATtiny45 [3]. Zaradi zahtevanih majhnih fizičnih dimezij smo izbrali izvedenko v majhnem ohišju (Small Outline Integrated Circuit, SOIC) z osmimi priključki in dimenzij 6,0 x 5,0 x 1,7 mm. Nastavljivi generator urnega impulza smo zasnovali z integriranim vezjem Silicon Labs Si5351 [4]. Uporabili smo izvedenko Si5351A z zgolj tremi urnimi izhodi (kanali), majhnim ohišjem (Mini Small Outline Package, MSOP), z desetimi priključki in dimenzijami 3,0 x 5,0 x 1,1 mm. Splošna blokovna shema enega PROGRAMABILNI KRISTALNI OSCILATOR VISOKE RAZLOČLJIVOSTI 95 kanala za sintezo izhodne frekvence je prikazana na sliki 3.1. Slika 3.1: Sinteza enega kanala s PLL in racionalnimi delitelji v povratni in izhodni veji sintetizatorja Vezje vsebuje dva racionalna delitelja, N in M, ter celoštevilčni delitelj R, ki je potenca števila 2. Racionalni delitelj N v povratni veji vezja PLL omogoča nastavljanje frekvence napetostno krmiljenega oscilatorja (Voltage-Controled Oscillator, VCO), racionalni delitelj M v izhodni veji pa določa vrednost izhodne frekvence. Izhodna veja vsebuje celoštevilčni delitelj R, s katerim lahko izhodno frekvenco še dodatno znižamo. Trenutna vrednost izhodne frekvence je odvisna od vseh treh deliteljev in od referenčne frekvence. Slednjo določa kvarčni kristal frekvence 25 MHz. Racionalni delitelj D lahko vselej matematično predstavimo kot vsoto celega števila a in okrajšanega racionalnega števila (b/c), kot kaže enačba (1). Enačba (2) opisuje matematične povezave med delitelji in izhodno frekvenco. Enačba (3) je zapis racionalnih deliteljev N in M s celimi števili z uporabo enačb (1) in (2). Koeficienti R, ai, bi in ci so cela števila. cbaD / (1) f izh = f ref N / (MR) (2) f izh = f ref [(a 1 +b 1 / c 1 ) / ((a 2 +b 2 / c 2 )R)] (3) Za sintezo želene frekvence je treba določiti in izračunati fvco, vrednost R ter koeficiente ai, bi in ci. Rešitve enačbe (3), pri katerih nam uspe najti koeficiente bi z vrednostjo 0, prevedejo deljenje v celoštevilčno. V teh primerih bo trepetanje (jitter) izhodne frekvence manjši. Želeno frekvenco na izhodu sintetizatorja dobimo po vnosu izračunanih delovnih parametrov v krmilne registre sintetizatorja. Izbrani postopek omogoča visoko razločljivost izhodne frekvence, saj ni omejen le na celoštevilčno deljenje. Frekvenčno območje delovanja oscilatorja določa izbira vezja uporabljenega sintetizatorja. Uporabljene komponente programirljivega kristalnega oscilatorja so prikazane na sliki 3.2. Vezje Si5351A vsebuje tri izhodne kanale in dve vezji PLL, zato lahko hkrati generiramo dve povsem neodvisni izhodni frekvenci, frekvenca tretjega izhoda pa je zaradi souporabe vezja PLL delno v matematični odvisnosti z eno od dveh predhodno izbranih neodvisnih frekvenc. Posledica uporabe racionalnega deljenja je trepetanje faze izhodne frekvence. Izbrani sintetizator uporablja patentirano tehnologijo MultisynthTM podjetja Silicon Labs [6], ki s pomočjo izračuna fazne napake v procesu deljenja popravlja fazo izhodnega signala. Referenčno frekveco vezja PLL sintetizatorja določa uporabljeni kvarčni kristal frekvence 25 MHz. IZHOD VHODNI PRIKLJUČEK ZA UPRAVLJANJE OSCILATORJA NAPAJANJE ATtiny45 GND VCC UART SDA SCL 3,3 V IZHOD VHODNI PRIKLJUČEK ZA UPRAVLJANJE OSCILATORJA NAPAJANJE ATtiny45 GND VCC UART SDA SCL 3,3 V Slika 3.2: Notranja shema z izbranimi komponentami 96 KOLEŽNIK, VLAOVIČ Slika 3.3 Električna shema prototipa programirljivega oscilatorja Mikrokrmilnik upravlja vezje za generacijo urnih signalov prek protokola za komunikacijo med integriranimi vezji (Inter-Integrated Circuit, I2C). Uporabnik krmili programirljivi kristalni oscilator z uporabo programske implementacije univerzalnega serijskega protokola (Universal Asynhronous Receiver/Transmitter, UART). Vezje sintetizatorja zahteva napajalno napetost 3,3 V, zato prototip za svoje notranje delovanje vključuje integrirani pretvornik in stabilizator napetosti 3.1 Izvedba prototipa Zaradi lažjega rokovanja med načrtovanjem in testiranjem smo prvo različico zasnovali na prototipni razvojni ploščici. Uporabili smo mikrokrmilnik v večjem ohišju (Plastic Dual In-Line Package, PDIP). Do visokofrekvenčnega sintetizatorja smo dostopali z uporabo razširitvene ploščice izdelovalca Adafruit [5]. Slednja dodatno vključuje pretvornike napetostnih nivojev s prostorom predvidenim za zunanje priključke. Prva različica prototipa je vsebovala sintetizator s kvarčnim kristalom, mikrokrmilnik, pretvornik in stabilizator napetosti ter zunanje priključke za programiranje mikrokrmilnika in komunikacijo z osebnim računalnikom. Za povezavo z osebnim računalnikom smo izdelali napetostni pretvornik z nivojev 0/3,3 V na mikrokrmilniku na nivoje +/- 12 V na osebnem računalniku ter ustrezen povezovalni kabel. Moderni osebni računalniki večinoma ne vsebujejo zunanjih priključkov za UART, zato smo za povezavo uporabili univerzalno serijsko vodilo (Universal Serial Bus, USB) in zunanji pretvornik med USB in UART. Prva različica prototipa je omogočila iterativno načrtovanje končne električne sheme programirljivega oscilatorja in hkratni razvoj programske opreme. Električna shema programirljivega oscilatorja je prikazana na sliki 3.3. Vezje vsebuje le en kvarčni kristal frekvence 25 MHz za referenčno frekvenco fREF, za urni signal mikrokrmilnika pa smo uporabili notranji oscilator s frekvenco 8 MHz. S tem smo število potrebnih komponent dodatno zmanjšali. Tiskanino prototipa programirljivega oscilatorja smo izvedli dvoslojno. Dimezije tiskanine so 20 mm x 14 mm. Na sliki 3.4 so prikazani tiskanina ter integrirani vezji sintetizatorja in mikrokrmilnika. 14 mm 20 mm 3 mm 6,4 mm Slika 3.4: Tiskanina pred spajkanjem Predviden položaj elementov je na zgornji strani tiskanine. Razmestitev elementov po obeh straneh tiskanine bi dovoljevala še nadaljnje zmanjšanje dimenzij končnega izdelka. Zaradi majhnih dimenzij smo spajkanje izvedli s pomočjo mikroskopa. Na PROGRAMABILNI KRISTALNI OSCILATOR VISOKE RAZLOČLJIVOSTI 97 spodnjem delu tiskanine je predviden prostor za vmesnik za programiranje mikrokrmilnika, desno zgoraj pa prostor za vmesnik za napajanje in izhod programirljivega kristalnega oscilatorja. 3.2 Programska oprema Programska oprema vključuje razvoj strojne programske opreme za mikrokrmilnik v programskem jeziku C in razvoj programa za osebni računalnik v programskem jeziku Java. Strojna programska oprema vključuje naslednje funkcionalnosti: • komunikacija z uporabniškim vmesnikom po protokolu UART, • komunikacija s sintetizatorjem po protokolu I2C, • upravljanje visokofrekvenčnega sintetizatorja, • pomnjenje in inicializacija nastavitev. Komunikacija UART je izvedena v smeri od osebnega računalnika proti oscilatorju. Zasnovali smo preprost prenosni paketni protokol, prek katerega uporabniški vmesnik krmili delovanje programirljivega kristalnega oscilatorja. Paketi vsebujejo informacije o tipu ukaza, številčne vrednosti izračunanih konstant in nadzorno vsoto. Mikrokrmilnik sprejete pakete preveri, obdela in podatke prek vodila I2C posreduje vezju sintetizatorja. Po potrebi nastavitve shrani v notranji električno zbrisljiv pomnilnik (Electrically Erasable Programmable Read-Only Memory, EEPROM). Ob ponastavitvi mikrokrmilnika se shranjene nastavitve preberejo in posredujejo sintetizatorju. Program za osebni računalnik vključuje naslednje funkcionalnosti: • uporabniški vmesnik za izbiro želene frekvence, • izračun delovnih parametrov sintetizatorja in • komunikacijo s programirljivim kristalnim oscilatorjem po protokolu UART. Slika 3.5 prikazuje uporabniški vmesnik za upravljanje nastavitev delovanja oscilatorja. Uporabnik lahko upravlja oscilator bodisi v realnem času bodisi v pomnilnik mikrokrmilnika vpisuje trajne nastavitve za poznejšo uporabo po resetu vezja ob izgubi napajanja. Med izbiranjem želene frekvence se sprotno izračunavajo koeficienti deliteljev. S pritiskom na gumb "Vpiši" se po serijskem vodilu odpošljejo izbrani in izračunani delovni parametri sintetizatorja. Ti se po prejemu in kontroli vpišejo v notranji pomnilnik mikrokrmilnika in nato v vezje sintetizatorja. Uporabniški vmesnik omogoča: • izbiro serijskega vmesnika, na katerega je priključen programirljivi kristalni oscilator, • izbiro želene frekvence oscilatorja z ločljivostjo 1 Hz, • izbiro vezja PLL znotraj sintetizatorja, • popravke frekvence zaradi odstopanja kvarčnega kristala od njegove nazivne vrednosti, • shranjevanje parametrov v notranji pomnilnik mikrokrmilnika in • sprotni pregled izračunanih delovnih parametrov sintetizatorja. Uporabniški vmesnik dodatno vključuje blokovno shemo sintetizatorja, ki prikazuje trenutne delovne parametre sintetizatorja v realnem času. Slika 3.5: Uporabniški vmesnik za upravljanje oscilatorja 4 SKLEP Manjša fleksibilnost kristalnih oscilatorjev otežkoča razvoj elektronskih naprav. Prispevek podaja predlog izvedbe kristalnega oscilatorja, ki omogoča nastavljivo in spremenljivo frekvenco delovanja z visoko razločljivostjo. Zasnovan programirljiv oscilator ima primerljive fizične dimenzije in električne lastnostmi z obstoječimi industrijskimi različicami (tabela 4.1). Tabela 4.1: Primerjava lastnosti prototipa z obstoječimi industrijskimi različicami oscilatorjev Lastnost Industrijski oscilator Prototip Dimenzije 20 x 13 x 7 [mm] 20 x 14 x 4 [mm] Frekvenca ena, konstantna 8 kHz - 160 MHz Poraba 30 - 50 mA 30 - 40 mA Stabilnost +/- 50 ppm +/- 30 ppm Trepetanje faze 50 ps pk-pk 35 - 100 ps pk-pk Cena 1 - 10 EUR/kos 4 EUR/kos Izdelani prototip izpolnjuje večino zastavljenih ciljev. Povsem primerljivi obstoječim oscilatorjem so fizične 98 KOLEŽNIK, VLAOVIČ dimenzije, način uporabe in samo delovanje. Električne lastnosti bi se z dodatno pretvorbo izhodnih napetostnih nivojev na nivo 5 V lahko še bolj približale obstoječim. Spreminjanje in nastavljanje frekvence se je med testiranjem prototipa potrdilo kot delujoče in uporabno. V nadaljevanju bi bilo treba tiskanino izvesti s spajkanjem elementov na obeh njenih straneh in jo na ta način dodatno zmanjšati, da bi bila primerna za vgradnjo v kovinsko ohišje, v kakršno so tipično vgrajeni obstoječi kristalni oscilatorji. Podatek o korekciji frekvence je zaradi kvarčnega kristala lasten vsakemu primerku nastavljivega generatorja urnega signala posebej. Ob podpori dvosmerne komunikacije z osebnim računalnikom bi lahko omogočili branje in ponovno uporabo predhodno že izmerjenega in shranjenega podatka za korekcijo. Ocenjujemo, da smo z delujočim prototipom uspešno potrdili predlagano funkcionalno shemo. Predstavljeni kristalni oscilator visoke razločljivosti lahko nadomesti industrijsko različico kristalnega oscilatorja.