česky english Vítejte, dnes je středa 25. prosinec 2024

Softvérovo definovaný transceiver na rádioamatérske použitie

DPS 5/2012 | Články
Autor: Anton Paus, Petr Šrámek, FEKT VUT v Brně

Úvod

Digitálne spracovanie signálov si postupne nachádza miesto aj v aplikáciách, ktoré boli pre vývojárov pred desaťročím len snom. Jednou z takých oblastí je aj rádiotechnika. Zásadným obmedzením bola spočiatku nedostatočná rýchlosť A/D prevodníkov a výpočtový výkon digitálnych obvodov. Postupom času sa však možnosti použitia softvérovej koncepcie prijímačov alebo vysielačov posúvajú na čoraz vyššie kmitočty. Výhody, ktoré z toho vyplývajú, urobili zo softvérového rádia perspektívny systém.

Okrem komerčne využiteľných aplikácií však softvérové rádio určite nájde svoje uplatnenie aj v oblasti, akou je rádioamatérske vysielanie. Predovšetkým pásmo KV je už v súčasnosti „v dosahu“ parametrov jednotlivých obvodov potrebných na realizáciu takéhoto softvérovo definovaného transceiveru.

Koncept softvérového rádia

Softvérové rádiá sa môžu vyskytovať v rôznych architektúrach. O tom, ktorá architektúra sa v danej aplikácii použije, rozhoduje najmä frekvenčné pásmo, v ktorom má pracovať. Architektúry sa líšia umiestnením A/D a D/A prevodníkov v reťazci spracovania signálu. V prípade, že prevod signálu medzi analógovou a digitálnou doménou je uskutočnený priamo za anténou (po kmitočtovej filtrácii a zosilnení), je možné takéto rádio označiť ako ideálne softvérové rádio. Táto koncepcia využíva naplno výhody digitálneho spracovania signálu a vyžaduje si minimum analógových komponentov. Nevýhodou sú vysoké nároky na prevodníky, avšak pre riešené pásmo KV prevodníky s požadovanými parametrami existujú. Preto bola pre riešený transceiver vybraná práve táto koncepcia (obr. 1).

Softvérovo definovaný transceiver na rádioamatérske použitie 1.jpg

Obr. 1 Bloková schéma transceiveru

Analógová časť transceiveru

Ani ideálne softvérové rádio sa nezaobíde bez nejakých analógových obvodov. Najdôležitejším analógovým obvodom je zrejme frekvenčný filter, ktorý je umiestnený pred A/D prevodníkom. Jeho úlohou je okrem výberu frekvenčného pásma najmä potlačenie zložiek na kmitočtoch vyšších, ako je polovica vzorkovacej frekvencie (t. j. 100/2 MHz) pre korektné vzorkovanie signálu (antialiasingový filter). Použitý bol filter typu dolný priepust s medzným kmitočtom 30 MHz. Podobne je potrebné filtrovať aj výstupný signál z D/A prevodníka, pre potlačenie vyšších harmonických zložiek. Signály prijímané z antény je před digitalizáciou nutné zosilniť tak, aby bol využitý celý rozsah prevodníka. Kritériami na výber vhodného zosilňovača boli najmä jeho dynamický rozsah, šumové číslo a maximálny výstupný výkon pre lineárny režim [1]. Otestovaný bol integrovaný zosilňovač MAR-8A [3], ktorý má v pásme KV zisk až 30 dB a šumové číslo 3,3 dB. Maximálny výkon pre lineárny režim je až 12,5 dBm.

Pre vysielanie je opäť nutné signál z výstupu D/A prevodníka zosilniť. Na testovacie účely bol použitý integrovaný zosilňovač ADL5530 [2], ktorého výhodou je lineárna oblasť až do výkonu 27,8 dBm.

Dôležitou súčasťou softvérového rádia sú prevodníky. Ako A/D prevodník bol vybraný obvod AD6645 [7] a jako D/A prevodník obvod AD9764 [8]. Sú to rýchle prevodníky schopné pracovať so signálmi v pásme krátkych vĺn (predpokladá sa vzorkovací kmitočet 100 MHz) a rozlíšením 14 bitov. Pre správnu funkciu treba analógový vstup resp. výstup pripojiť vhodným spôsobom (transformátorová väzba, ktorá zaistí aj impedančné prispôsobenie).

Analógové modulácie, modelovanie ich modulátorov a demodulátorov

Navrhovaný tranceiver má byť schopný pracovať so všetkými bežnými analógovými moduláciami, ktoré sa používajú v rádioamatérskej praxi – AM, FM, SSB a CW. Prvým krokom k návrhu algoritmov spracovania signálov v transceiveri je ich modelovanie. Na vytvorenie modelov bol použitý program Matlab (popis pomocou skriptu v m-file) a Simulink. Pre úplnosť bola modelovaná aj modulácia DSB, avšak pre následnú implementáciu sa s ňou nerátalo.

AM modulácia

Prvou modelovanou moduláciou je amplitúdová modulácia s nepotlačenou nosnou vlnou a dvomi postrannými pásmami. Koncept modulátora vychádzal z definičného vzťahu pre AM signál [1]:

uAM(t) = UC × [1 + m × cos (2 × π × fm × t)] × cos (2 × π × fC × t)                (1)

kde UC, fC, fm sú amplitúdy, resp. frekvencie nosnej vlny a modulačného signálu, a m je hĺbka modulácie. Využíva teda len základné aritmetické operácie. Parametrom AM signálu je hĺbka modulácie. Jej hodnota ovplyvňuje výkon postranných pásiem v spektre AM signálu. Na demoduláciu prijímaného AM signálu bol vybraný synchrónny demodulátor, ktorý je založený na vynásobení signálu s referenčnou nosnou vlnou. Pre korektnú demoduláciu je potrebné získať referenčnú nosnú vlnu, ktorá je koherentná s prijímaným signálom. Preto musí byť odvodená priamo z neho. Na tento účel bol implementovaný systém fázového závesu PLL. Tento systém bude opísaný v samostatnej kapitole. Výstupný signál demodulátora musí byť ešte filtrovaný pre odstránenie súčtovej zložky násobenia a jednosmernej zložky.

SSB modulácia

Softvérovo definovaný transceiver na rádioamatérske použitie 2.jpg

Obr. 2 SSB modulátor, ktorý využíva Weaverovu metódu

Veľmi obľúbenou moduláciou v rádioamatérskej praxi je modulácia s potlačenou nosnou a jedným postranným pásmom SSB. Jej výhodou je najmä úspora v šírke pásma prenášaného signálu. Existuje viacero metód generovania SSB signálu. Pre riešený transceiver bola vybraná Weaverova metóda (obr. 2). Výhodou tejto metódy je, že si nevyžaduje vytvorenie analytického signálu ani filtráciu so strmým prechodom na vyšších kmitočtoch, ako je to pri iných metódach. Vyžaduje si však špeciálny oscilátor (DDS), ktorý generuje pomocnú nosnú vlnu na frekvencii rovnej polovici šírky pásma modulačného signálu a tiež si vyžaduje kvadratúrne zmiešavanie s nosnou vlnou. Filtrácia, ktorá v modulátore a demodulátore prebieha na vzorkovacom kmitočte modulačného kmitočtu, nie je náročná na implementáciu. Práve parametre filtrov v modulátore určujú kvalitu výsledného SSB signálu: výber potlačeného pásma (na moduláciu LSB je použitý filter typu horný priepust, na moduláciu USB filter typu dolný priepust) a tiež útlm potlačeného pásma (čím strmší prechod a väčší útlm v nepriepustnom pásme, tým kvalitnejší SSB signál). Demodulátor je prakticky rovnaký ako modulátor, len je zamenený vstup a výstup. Variant SSB modulácie vyberá opäť charakter filtra (obr. 3).

Softvérovo definovaný transceiver na rádioamatérske použitie 3.jpg

Obr. 3 SSB demodulátor, ktorý využíva Weaverovu metódu

FM modulácia

Frekvenčná modulácia využíva na prenos modulačného signálu zmenu kmitočtu nosnej vlny. Ako modulátor je výhodné využiť oscilátor, ktorého kmitočet je možné meniť hodnotou riadiaceho signálu. Parametrom modulátora je frekvenčný zdvih, teda rozdiel medzi kmitočtom pri maximálnej a strednej hodnote modulačného signálu. Výsledný FM signál sa berie priamo z výstupu takto riadeného oscilátora.

Na demoduláciu FM signálu existuje taktiež viacero techník. Otestovaná bola metóda využívajúca systém fázového závesu PLL. Fázový záves sleduje zmeny kmitočtu prijímaného signálu a podľa toho upravuje riadiaci signál pre referenčný oscilátor. Riadiaci signál má při vhodnom nastavení filtra v spätnej väzbe systému PLL priamo tvar modulačného signálu.

CW modulácia

CW modulácia patrí medzi najstaršie modulačné techniky a je to jediná modulácia s diskrétnymi stavmi v riešenom transceiveri. Modulátor spočíva v spínaní nosnej vlny na základe stláčania telegrafného kľúča. Aby v signáli nevznikali ostré hrany a teda aj vyššie harmonické zložky, je žiaduce implementovať zaoblenie týchto hrán, napríklad pomocou postupného nábehu a poklesu amplitúdy nosnej vlny pri prechode medzi stavmi ON a OFF. To je zaistené pomocou jednoduchej čítačky, ktorá pri prechode do stavu ON spustí čítanie. Nosná vlna je násobená aktuálnou hodnotou čítačky. Keď čítačka dosiahne maximálnu hodnotu, zastaví sa a výstupný signál tvorí nosná vlna s maximálnou amplitúdou. Pri detekcii stavu OFF spustí čítačka počítanie smerom nadol. Amplitúda nosnej vlny teda lineárne klesá až na nulovú hodnotu. Čas nábehu a poklesu sa pohybuje v jednotkách ms.

Demodulátor využíva jednoduché násobenie prijímaného signálu a referenčnej nosnej vlny, ktorej kmitočet je mierne odlišný od kmitočtu prijímaného signálu. Zo vzniknutého signálu sa filtráciou oddelí rozdielová zložka, ktorá má kmitočet odladenia referenčnej vlny. Ak je odladenie v akustickom pásme, vzniká priamo demodulovaný audiosignál.

Systém PLL

Softvérovo definovaný transceiver na rádioamatérske použitie 4.jpg

Obr. 4 Sekvenčný fázový detektor

Systém fázového závesu PLL (Phase Locked Loop) je moderný obvod, ktorý našiel široké uplatnenie najmä v synchronizačných systémoch a obvodoch pre stabilizáciu kmitočtu [4]. V riešenom transceiveri sa využíva na obnovenie nosnej vlny na AM demoduláciu a na demoduláciu FM signálu. Vo všeobecnosti sa systém PLL skladá z troch hlavných častí: fázový detektor, filter slučky a riadený oscilátor (DDS alebo VCO). Pri modelovaní obvodu PLL je najdôležitejším blokom fázový detektor. Fázový detektor slúži na vyhodnotenie fázového resp. frekvenčného rozdielu vstupných signálov. Pracuje prakticky ako zmiešavač, na výstupe ktorého je jednosmerná zložka úmerná rozdielu fáz. Prípadné striedavé zložky odfiltruje filter slučky, ktorý má charakter dolného priepustu. Vyfiltrovaný jednosmerný signál následne riadi oscilátor, ktorý upraví výstupný kmitočet tak, aby sa fázový rozdiel medzi signálmi na vstupe fázového detektora zmenšoval. Pre počítačový model bol vybraný variant, ktorý využíva tzv. sekvenčný fázový detektor (sequential phase detector). Medzi jeho výhody patrí zvýšený rozsah a lepšie vlastnosti vo fáze zachytávania sa. Keďže ide v princípe o digitálny obvod, nie je citlivý na úroveň vstupného signálu. Výhodou je tiež jednoduchá implementácia. Bloková schéma sekvenčného fázového detektora je na obr. 4. Jeho základom sú preklápacie obvody citlivé na nástupnú hranu vstupného signálu. Preto je potrebné vstupné signály: referenčný signál a signál z lokálneho VCO upraviť tak, aby mali tvar obdĺžnikového signálu. To je možné vykonať zosilnením signálov a ich privedením na vhodný rozhodovací obvod (komparátor). Na výstupe komparátora bude mať signál vysokú úroveň (napr. 1), ak je vstupný signál väčší alebo rovný nule. Ak bude vstupný signál menší než nula, na výstupe komparátora bude nízka úroveň (napr. −1). Tým vznikne obdĺžnikový signál, avšak frekvencia pôvodného vstupného signálu zostane zachovaná. Takto upravené signály vstupujú na preklápacie obvody. Pri nástupnej hrane signálu sa na výstupe preklápacieho obvodu vygeneruje pulz, ktorý ovplyvňuje hodnotu nasledujúcej čítačky. Pri pulze z preklápacieho obvodu, na ktorý je privedený referenčný signál, sa čítačka inkrementuje. Naopak, pri pulze z preklápacieho obvodu so vstupným signálom z VCO sa čítačka dekrementuje. Výstup čítačky je priamo riadiacim signálom pre dolaďovanie VCO. Ak je výstup čítačky kladný, znamená to, že nástupné hrany z vetvy referenčného signálu prichádzajú na vstup čítačky častejšie, a teda, že referenčný signál má vyšší kmitočet. Lokálny VCO následne zníži kmitočet výstupného signálu úmerne hodnote čítačky. Ak je výstup čítačky záporný, znamená to, naopak, že kmitočet signálu VCO je vyšší ako kmitočet referenčného signálu. Ak je výstup čítačky nulový, tak sú referenčný signál a signál VCO frekvenčne a fázovo synchronizované (pulzy prichádzajú v rovnakom čase a vyrušia sa).

Softvérovo definovaný transceiver na rádioamatérske použitie 5.jpg

Obr. 5 Bloková schéma modelu systému PLL

Model systému je zobrazený na obr. 5. V modeli bol použitý filter druhého rádu, ktorý má charakter proporcionálne- sumačného regulátora. Vlastnosti filtra určujú dve konštanty: proporciálny (KP) a sumačný člen (KI). Ich hodnotami je daný čas ustálenia, resp. zachytenia slučky (činiteľ tlmenia oscilácie výstupnej hodnoty ζ) a tiež vlastná frekvencia kmitov ωn a maximálna hodnota prekmitu výstupnej hodnoty. Parametre filtra sú zviazané vzťahom [4]:

Hodnoty konštánt boli zvolené experimentálne podľa priebehu ustaľovania. Pre hodnoty KI = 1e-4 a KP = 2 vychádzajú ostatné parametre takto: vlastná frekvencia kmitov ωn = 130 Hz, činiteľ tlmenia ζ = 0,315. Bola použitá vzorkovacia frekvencia Δt = 100 ns. Na testovanie bol použitý referenčný signál s odchýlkou 30 Hz od kmitočtu lokálneho oscilátora (500 kHz) a fázový posun π/5 rad. Na obr. 6 je časový priebeh výstupu čítačky fázového detektora (hore) a chybového

Softvérovo definovaný transceiver na rádioamatérske použitie - vzorec 2

signálu na riadiacom vstupe lokálneho oscilátora (dole). Čas ustálenia je asi 20 ms (odchýlka medzi prijímanou nosnou a referenčným signálom je menšia ako 8e-3 V). Navrhnutý systém PLL bol schopný zachytenia sa na kmitočte referenčného signálu v intervale od −383 kHz do +450 kHz od kmitočtu lokálneho oscilátora (500 kHz).

Softvérovo definovaný transceiver na rádioamatérske použitie 6.jpg

Obr. 6 Časový priebeh výstupu čítačky fázového detektora (hore) a riadiaceho signálu oscilátora (dole)

Realizácia transceiveru

Na realizáciu softvérového rádia bol vybraný vývojový kit Genesys Board od firmy Digilent. Nachádza sa v ňom obvod FPGA Virtex5 LX50T od firmy Xilinx s dostatočne vysokým výpočtovým výkonom [5]. Obvod obsahuje 48 jednotiek na spracovanie signálov (DSP slices) a tiež 12 jednotiek na úpravu hodinového signálu DCM (Digital Clock Manager). Hodinový signál môže dosahovať stovky MHz (až nad 500 MHz). Z hľadiska využitia v softvérovom rádiu zaujme hlavne prítomnosť obvodu LM4550, ktorý funguje jako AC’97 kodek pre audiosignály. To výrazne uľahčuje prevod nízkofrekvenčných modulačných signálov z analógovej do digitálnej formy a naopak. Obvod kodeku obsahuje priamo konektor pre vstup z mikrofónu a posilnený výstup na slúchadlá (konektory typu JACK 3,5). Kit je taktiež vybavený prvkami na vytvorenie používateľského rozhrania: LED diódy (8×), LCD displej (2× 16 znakov), tlačidlá (2×), navigačný kríž a prepínače (8×). Na implementáciu softvérového rádia je teda nutné dosku doplniť len o A/D a D/A prevodníky, ktoré pracujú s prijímaným a vysielaným krátkovlnným signálom. Ich pripojenie je možné cez dva 68-pinové paralelné VHDC konektory.

Na implementáciu algoritmov softvérového rádia do FPGA bol použitý programový balík Xilinx ISE Design Suite (verzia 13.3, resp. 12.4). Tento balík ponúka široké možnosti na vytvorenie konfiguračných dát. Časť popisu transceiveru bola vytvorená v prostredí Project Navigator vo forme VHDL modulov (riadenie toku dát), a časť v prostredí Systém Generator, ktorý predstavuje nadstavbu programu Simulink (DSP).

Kodek AC‘97

Obvod LM4550 je audiokodek pre počítačové systémy v súlade so štandardom AC’97 v2.1 [6]. Na prevod signálov z analógovej do digitálnej formy a naopak využíva 18-bitové Sigma-delta prevodníky, ktoré dosahujú dynamický rozsah až 90 dB. Kodek umožňuje plne duplexné spracovanie signálov na štyroch stereo a štyroch mono vstupoch. Pre každý vstup je možnosť nastaviť zisk/útlm a má tiež možnosť vypnutia vstupu (Mute). Výstupy sú tri: jeden mono a dva stereo, taktiež s nastaviteľným útlmom a možnosťou vypnutia. LM4550 má vstavaný stereo zosilňovač pre jeden z výstupov (výstup priamo na slúchadlá). Vzorkovacia frekvencia je nastaviteľná pre každý vstup/výstup v rozsahu 4 až 48 kHz s krokom 1 Hz, čo je pre potreby rádiového vysielania viac ako dostačujúce. Kodek komunikuje s riadiacou jednotkou (v obvode FPGA) pomocou sériovej zbernice, ktorá sa skladá zo šiestich signálov. Dáta sú prenášané v rámcoch, ktorých začiatok označuje kladný impulz synchronizačného signálu. Synchronizačný signál má periódu 48 kHz a striedu 6,25 %. Hodinový signál je odvodený ako polovica taktovacej frekvencie kodeku (24,576/2 = 12,288 MHz) a je generovaný obvodom kodeku. Riadiaca jednotka nastavuje parametre kodeku pomocou zápisu do registrov. Je potrebné povoliť žiadané vstupy pre A/D prevodník (mikrofón pre obidva kanály) a výstupy pre D/A prevodník (slúchadlový alebo linkový výstup). Ďalej sa nastavuje zosilnenie, resp. útlm daného vstupného signálu (po zapnutí sú všetky vstupy a výstupy stlmené). Posledným nastavením sú vzorkovacie frekvencie pre prevodníky (10 kHz). Správne nakonfigurovaný kodek pracuje ďalej už len s audiodátami. Keďže sú všetky modulátory a demodulátory jednokanálové, je využitý len jeden kanál kodeku.

Implementácia blokov DSP

Algoritmy spracovania signálov, t.j. modulátory a demodulátory boli vytvorené v prostredí System Generator. Postup při ich vytváraní bol rovnaký ako pri modeloch v Simulinku, avšak navrhované parametre, ako frekvenčné pásmo, vzorkovacia frekvencia a realizácia lokálneho oscilátora, zohľadňovali použitie týchto algoritmov vo výslednom transceiveri. Na rozdiel od modelov v Simulinku pracujú bloky knižníc od Xilinxu s obmedzenou bitovou šírkou signálu (je potrebné uvážiť užitočný rozsah signálu pre zníženie hardvérových nárokov). Efektívne vyjadrenie hodnôt signálov pri súčasnom zachovaní čo najvyššej presnosti a dynamiky si vyžaduje pozorné sledovanie signálu na jeho ceste systémom. Týmto spôsobom bol tiež vytvorený blok hlavného oscilátora. Tvorí ho blok DDS so sínusovým aj kosínusovým výstupom, ktorý pracuje v požadovanom rozsahu 3–30 MHz (taktovacia frekvencia 100 MHz). Na vstup riadiaci kmitočet výstupného signálu je privedený súčet dvoch signálov: hodnota strednej frekvencie, ktorá je nastavená používateľom, a hodnota doladenia, ktorá je privedená z aktuálne aktívneho modulátora alebo demodulátora (niektoré modulácie si vyžadujú na svoju správnu funkciu ovládať kmitočet nosnej vlny).

Riadenie spracovania signálov

V prostredí ISE Project Navigator boli vytvorené bloky na spracovanie nízkofrekvenčných signálov (komunikácia s kodekom), bloky riadenia toku signálu (t.j. prepínanie medzi prijímačom a vysielačom, výber modulácie) a bloky používateľského rozhrania (spracovanie signálov z tlačidiel, výstup na LCD displej a signalizačné LED diódy). Dôvodom bolo ich prehľadnejšie spracovanie v porovnaní s prostredím System Generator. V transceiveri je jako hlavný hodinový signál použitý signál z kryštálového oscilátora umiestneného priamo na doske vývojového kitu s frekvenciou 100 MHz. Tento signál je priamo použitý ako hodinový pre bloky snímajúce tlačidlá (debouncery). Pre ostatné riadiace a DSP bloky je použitý ako hodinový signál výstup z bloku DCM. Ten je zároveň pripojený na globálny rozvod hodinového signálu, čím je zaistený minimálny časový rozdiel medzi príchodmi hrán hodinového signálu k jednotlivým blokom.

Softvérovo definovaný transceiver na rádioamatérske použitie 7.jpg

Obr. 7 Blok komunikácie s kodekom AC‘97

Ako už bolo spomenuté, rozhranie pre audiosignály je sprostredkované pomocou kodeku AC’97. Od výrobcu vývojovej dosky bolo dodané jadro bloku, ktorý s týmto kodekom komunikuje (obr. 7). Toto jadro sa stará o všetky nižšie vrstvy komunikácie. Treba ho len doplniť riadiacim blokom, ktorý kodek vhodne nakonfiguruje a následne riadi prenos audiosignálov v oboch smeroch. V rámci riadiaceho bloku je implementovaná aj funkcia ovládania hlasitosti výstupného audiosignálu. Na základe používateľského vstupu (dve tlačidlá) môže byť register nastavujúci hlasitosť nastavený na žiadanú hodnotu (8 úrovní).

Vysokofrekvenčné rozhranie tvoria bloky rýchleho A/D a D/A prevodníka. Na ich správnu funkciu je potrebné hlavne správne nastaviť ich hodinové signály a časovanie komunikácie s nimi. Pri D/A prevodníku je dôležité dodržať čas potrebný na ustálenie vstupných dát pred privedením aktívnej hrany hodinového signálu (tzv. setup time). Dodržanie tejto požiadavky je zariadené vzájomným fázovým posunutím hodinového signálu pre blok, ktorý aktualizuje dátové výstupy, a hodinového signálu pre D/A prevod o 90°, t. j. o štvrtinu periódy. Při frekvencii hodinového signálu 100 MHz je hodnota času predstihu 2,5 ns. Pri práci s A/D prevodníkom sa využíva okrem hodinového signálu aj jeho riadiaci výstup Data Ready, ktorý informuje o prítomnosti platných dát na digitálnych výstupoch A/D prevodníka. Signál Data Ready je inverznou a posunutou kópiou hodinového signálu. Na správne čítanie dát je teda potrebný stabilný hodinový signál alebo treba hodinový signál na sledovanie signálu Data Ready mierne posunúť pred signál taktujúci A/D prevodník. Na vytvorenie vhodných hodinových signálov na taktovanie prevodníkov a komunikáciu s nimi bola využitá jednotka DCM.

O riadenie toku dát v transceiveri sa starajú multiplexery a demultiplexery. Tie vhodne prepínajú a smerujú signály na základe nastavenej modulácie a režimu transceiveru. Multiplexery smerujú signál k vybranému modulátoru, resp. demodulátoru. Naopak, demultiplexery vyberú z výstupov modulátorov, resp. demodulátorov signál, ktorý je momentálne aktívny. Nastavenú moduláciu určujú adresné vstupy pre všetky multiplexery a demultiplexery. Podobne režim transceivera je určený stavom povoľovacieho signálu (signál Enable). Povoľovacie signály pre vetvu prijímača a vysielača sú navzájom inverzné. Tento signál je odvodený priamo od prepínača, ktorý sa nachádza na doske.

Niektoré modulátory a demodulátory vyžadujú pre svoju činnosť, aby sa upravovala hodnota kmitočtu hlavného oscilátora. Preto blok DDS obsahuje vstup pre ladenie výstupného kmitočtu. Na tento vstup sú dáta privedené opäť cez demultiplexery. Najprv sa na základe nastavenej modulácie vyberú v rámci dvoch demultiplexerov ladiace signály z vybraného modulátora a demodulátora. Ďalší demultiplexer vyberie z tejto dvojice jeden signál podľa toho, či je nastavený režim prijímača, alebo vysielača. V prípade, že niektorý modulátor alebo demodulátor nepotrebuje ladiť hlavný oscilátor, je ladiaci signál nulový.

Používateľské rozhranie a ovládanie

Používateľské rozhranie transceivera sa skladá z LCD displeja, tlačidiel, prepínačov a signalizačných LED diód. Všetky hlavné informácie pre používateľa sú zobrazené na displeji. Ide o typ nastavenej modulácie, hodnotu parametra modulácie (AM – hĺbka modulácie, FM – frekvenčný zdvih, CW – frekvencia záznejového signálu, SSB – výber postranného pásma) a aktuálnu hodnotu kmitočtu hlavného oscilátora. Nastavenia možno meniť pomocou tlačidiel. Na to je využitý dvojosí navigačný kríž – tlačidlá hore/dole slúžia na posun medzi parametrami, tlačidlá vľavo/ vpravo menia hodnotu vybraného parametra. Zostávajúce dve tlačidlá sú využité na nastavovanie hlasitosti audiovýstupu. Aktuálnu hodnotu hlasitosti zobrazujú signalizačné LED diódy v podobe bargrafu (8 signalizačných LED). Pri zmene hlasitosti sa pošle aktuálne nastavenie do kodeku. Na prepínanie režimu transceivera slúži jeden z prepínačov. Podľa jeho nastavenia pracuje transceiver buď ako prijímač, alebo vysielač.

Softvérovo definovaný transceiver na rádioamatérske použitie 8.jpg

Obr. 8 Blok používateľského rozhrania

Na ovládanie LCD displeja (typ Sitronix ST7066U) bol použitý ovládač vo forme VHDL modulu prevzatého z [9]. V module bola upravená inicializačná sekvencia, aby ovládač s displejom fungoval. Dáta pre displej riadi špeciálny blok (obr. 8). Ten obsahuje pole 32 znakov, teda jednej celej obrazovky displeja. Toto pole sa vyplní znakmi na základe aktuálnej hodnoty riadiacich signálov – nastavená modulácia, hodnota parametra modulácie, hodnota frekvencie a poloha kurzora. Blok zachytáva stlačenie tlačidiel navigačného kríža a na základe stavového automatu mení hodnoty riadiacich signálov. Po zmene niektorého z týchto signálov nastane aktualizácia poľa znakov a následne ich odoslanie do ovládača displeja. Aby mohli byť zobrazené číselné hodnoty parametrov, bolo potrebné implementovať prevodník binárneho čísla do BCD kódu. Použitý bol sekvenčný prevodník, ktorý využíva posuvný register a sčítavanie, a preto nie je náročný na hardvérové prostriedky [10]. Okrem dátových signálov pre zobrazenie vytvára tento blok aj signály na riadenie transceivera – hodnota frekvencie, adresné signály pre multiplexery a demultiplexery (nastavenie modulácie), hodnoty parametrov modulátorov alebo demodulátorov. Tieto signály sa aktualizujú pri stlačení tlačidiel v rámci stavového automatu. Signály z tlačidiel prechádzajú cez bloky, ktoré odstránia prípadné zákmity (tzv. debouncery).

Softvérovo definovaný transceiver na rádioamatérske použitie 9.jpg

Obr. 9 Výsledný transceiver

Na obr. 9 je zobrazený vývojový kit Genesys nakonfigurovaný ako transceiver. Zvýraznené sú jednotlivé hardvérové funkčné časti. V hornej časti dosky sa nachádza obvod kodeku AC’97 spolu s konektormi typu JACK (konektor 1 – výstup na slúchadlá, konektor 2 – vstup pre mikrofón). V dolnej časti je umiestnené používateľské rozhranie s LCD displejom (3), navigačným krížom (ovládanie, 5), dvomi tlačidlami (ovládanie hlasitosti, 4 a 6), prepínačmi (ovládanie režimu transceivera, 8, 9 a 10) a bargrafom z LED (indikátor aktuálnej hlasitosti, 7). Na pravej strane dosky je konektor (11) na pripojenie externej dosky s rýchlymi prevodníkmi. Na externej doske je konektor (12) pre analógový vstup (zosilnený a vyfiltrovaný signál z antény) a pre analógový výstup na filter, zosilňovač a následne do antény (13). Základné ovládanie transceivera je sprostredkované navigačným krížom a prepínačmi. Ovládacie menu, ktoré je zobrazené na LCD displeji, sa skladá z troch častí: nastavenie modulácie, nastavenie parametra modulácie a nastavenie frekvencie hlavného oscilátora. Prechod medzi nastaveniami je riadený polohami UP a DOWN navigačného kríža. Aktuálne vybrané nastavenie indikuje znak „*“ na displeji. Pomocou polôh LEFT a RIGHT navigačného kríža dochádza k zmene hodnoty aktuálne vybraného parametra transceivera. V prípade nastavenej modulácie možno prepínať medzi hodnotami: AM, FM, CW a SSB. Každá z modulácií má určený jeden parameter, ktorý je možné meniť, keď je kurzor na nastavení parametra modulácie. Sú to parametre: hĺbka modulácie (AM), citlivosť frekvenčného modulátora (FM), kmitočet audiosignálu (CW) a výber postranného pásma (SSB). Podrobný opis nastavení je v tabuľke 1. Prepínače slúžia na prechod medzi rôznymi režimami transceivera. Prepínač RX/TX (9) určuje, či transceiver pracuje ako prijímač, alebo vysielač. V prípade, že je v režime vysielača, je možné ako modulačný signál aktivovať testovací harmonický signál (s frekvenciou nastavenou v rámci parametra CW modulácie) pomocou prepínača TEST/MIC (8). Ak je prepínač v dolnej polohe, modulačným signálom je signál z mikrofónu. V režime prijímača sa toto nastavenie neprejaví. Prepínač označený číslom 10 slúži na spínanie na moduláciu CW.

Softvérovo definovaný transceiver na rádioamatérske použitie - tabulka

Tabuľka 1 Opis nastavení transceivera

Parametre tranceivera

Po oživení transceivera boli overené všetky jeho funkcie pomocou merania výstupov. V režime vysielača boli zmerané výstupy vo frekvenčnej oblasti pomocou spektrálneho analyzátora. Ako modulačný signál bol použitý testovací harmonický signál s frekvenciou 1 kHz. AM signál bol zmeraný pre rôzne hodnoty hĺbky modulácie v spektre (obr. 10) aj v čase. Podobne bol zmeraný FM signál pre rôzne hodnoty frekvenčného zdvihu. V spektrálnej oblasti bol skúmaný aj signál SSB. Pre moduláciu LSB je potlačenie druhého pásma až 80 dB, pre moduláciu USB je potlačenie druhého pásma až 50 dB. Signál CW bol sledovaný v časovej oblasti, a to hlavne prechod signálu medzi stavmi ON a OFF. Čas nábehu a poklesu je asi 2,5 ms. Na strane prijímača bol zmeraný výstup demodulátorov. Pri demodulácii SSB signálu bola sledovaná schopnosť demodulátora potlačiť nežiaduce postranné pásmo. Na obr. 11 je zobrazené porovnanie výstupu demodulátora nastaveného na demoduláciu LSB signálu, keď je prijímaný signál LSB (hore) a signál USB (dole). Potlačenie signálu USB je asi 52 dB. V prípade demodulácie USB signálu je potlačenie nežiaduceho pásma až 57 dB. Transceiver bol otestovaný aj pre prenos reálnych audiosignálov. Signál vysielaný testovaným transceiverom bol prijatý a správne demodulovaný iným prijímačom. Prijímač transceivera bol otestovaný napr. správnou demoduláciou FM rozhlasu (zmiešaného na medzifrekvenciu 10,7 MHz).

Softvérovo definovaný transceiver na rádioamatérske použitie 10.jpg

Obr. 10 Spektrum AM signálu (hore, hĺbka modulácie je 25 %), spektrum FM signálu (dole, frekv. zdvih je 20 kHz)

Záver

Práca bola zameraná na návrh softvérovo definovaného transceivera pre krátkovlnné vysielanie. Preskúmané boli architektúry softvérových rádií, ich vlastnosti, ako aj vlastnosti ich jednotlivých blokov. Následne boli navrhnuté algoritmy na spracovanie signálov v žiadaných režimoch. Ich funkcia bola overená simuláciami v programe Matlab a Simulink. Na implementáciu bola vybraná doska Genesys s obvodom FPGA Virtex-5 LX50T. Okrem značnej výkonnosti obvodu FPGA sa na doske nachádza obvod kodeku AC’97, ktorý je s výhodou použitý v riešenom transceiveri. Pomocou programu System Generator boli vytvorené bloky DSP vhodné na implementáciu do FPGA (na základe predošlých simulácií v programe Simulink). Tieto bloky boli následne exportované do prostredia ISE Project Navigator, kde bol vytvorený transceiver ako celok aj s používateľským rozhraním, ktoré zahŕňalo LCD displej, navigačný kríž, tlačidlá, spínače a LED bargraf. Vytvorené boli bloky na komunikáciu s A/D a D/A prevodníkmi: pre nízkofrekvenčné rozhranie bol využitý kodek AC’97, pre vysokofrekvenčné rozhranie rýchle prevodníky. Funkčný transceiver bol doplnený o vstupné, resp. výstupné filtre a zosilňovače. V závere boli zmerané výstupné signály transceivera v časovej a spektrálnej oblasti, pre určenie parametrov transceivera v jednotlivých režimoch. Výsledkom práce je fungujúci transceiver schopný činnosti v pásme krátkych vĺn vo všetkých požadovaných moduláciách. Okrem základných funkcií umožňuje nastavovať niektoré parametre modulácie, hlasitosť demodulovaného signálu a má tiež možnosť aktivácie testovacieho harmonického signálu s nastaviteľným kmitočtom.

Softvérovo definovaný transceiver na rádioamatérske použitie 11.jpg

Obr. 11 Výstup SSB demodulátora pre signál v žiadanom pásme LSB (hore) a v potlačenom pásme USB (dole)

Poďakovanie

Tento príspevok vznikol za podpory projektu CZ.1.07/2.3.00/20.0007 WICOMT, financovaného z operačného programu Vzdělávání pro konkurenceschopnost.

Literatura

[1] ŽALUD, V., Moderní radioelektronika, Praha, BEN – technická literatura, 2004, ISBN 80–86056–47–3.

[2] Analog Devices, ADL5530 IF Gain Block, DC to 1000 MHz [online] cit. 6. 4. 2011. Dostupné na WWW: http://www.analog.com/static/imported-files/data_sheets/ADL5530.pdf

[3] Mini-circuits, MAR-8A Monolithic Amplifier, DC to 1000 MHz [online] cit. 6.4.2011. Dostupné na WWW: http://www.digchip.com/datasheets/parts/datasheet/302/MAR-8A-pdf.php

[4] STEPHENS, D., Phase-Locked Loops For Wireless Communications, Kluwer Academic Publishers, 2002, ISBN 0-7923-7602-1.

[5] Digilent Inc., GenesysTM Board Reference Manual [online] cit. 16. 4. 2012. Dostupné na WWW: http://www.digilentinc.com/Data/Products/GENESYS/Genesys_rm.pdf

[6] Texas Instruments, LM4550, AC’97 Rev.2.1 Multi-Channel Audio Codec [online] cit. 30. 4. 2012. Dostupné na WWW: http://www.ti.com/lit/ds/symlink/lm4550.pdf

[7] Analog Devices, AD6645 14-Bit, 80MSPS/105MSPS A/D Converter [online] cit. 16. 4. 2012.

Dostupné na WWW: http://www.analog.com/static/imported-files/data_sheets/AD6645.pdf

[8] Analog Devices, AD9764 14-Bit, 125 MSPS TxDAC® D/A Converter [online] cit. 16. 4. 2012. Dostupné na WWW:http://www.analog.com/static/imported-files/data_sheets/AD9764.pdf

[9] CUZEAU, B., LCD driver for 2-lines LCD displays with controller [online] cit. 16. 4. 2012. Dostupné na WWW: http://read.pudn.com/downloads196/sourcecode/embed/921032/lcd_drv.vhd__.htm

[10] FAYAZ, K., VHDL: Binary to BCD [online] cit. 16.4.2012. Dostupné na WWW: http://fayazkadir.com/blog/?p=2439