2018-12-30

Kummallisia modulaatioita ja muita radioajatuksia, osa 4: impedanssihakkuri

Joskus kun lueskelin gyraattoreista, hakkureista, antenneista ja impedanssisovituksesta vähän ajan sisällä, tuli mieleen että ehkäpä noita käsitteitä voisi jotenkin liittää yhteen. Tämä on taas sellainen idea josta ei ole yhtään mitään hajua toimiiko se edes teoriassa, mutta pakkohan se on kirjata ylös silti ennen kuin unohtuu.

Antennien sovitus ja viritys

Antennin viritys tarkoittaa, että se saadaan resonoimaan tietyllä taajuudella, ainakin jossain määrin. Pohjimmiltaan yritämme saada käytetyllä taajuudella antennin kapasitanssin ja induktanssin sellaiseen tasapainoon, että resonanssiehto toteutuu: jännitteet ja virrat voivat erota kapasitanssin ja induktanssin muuttuessa, mutta aina löytyy kompensoiva arvo jompaa kumpaa joka saa antennin ominaisimpedanssin menemään puhtaan resistiiviseksi annetulla taajuudella. Parasta olisi jos antenni resonoisi ihan fyysisistä mitoistaan, koska virittäminen on tietyssä mielessä vähän kentän pakottamista ja johtaa suurempiin häviöihin kun energiaa pumpataan edestakaisin virityspiirin ja antennin välillä yli häviöllisen resistanssin. Mutta kyllä se silti resonoimaan saadaan, eikä parempaa oikein oo tehtävissä jos antenni on tietynlainen ja -kokoinen, käytännön syistä. "We'll use what we're given, and we'd better."

Impedanssisovitus on hieman eri asia joskin läheinen käsite. Antennitkin ovat suurikokoisina jonkin sortin maksimaalisen häviöllisiä, säteileviä aaltojohtimia osin. Mutta impedanssisovituksella on erillinen merkityksensä jopa täysin häviöttömille johtimille. Pohjimmiltaan aaltojohtimet kuten pari- ja koaksiaalikaapeli ovat infinitesimaalisesti katsoen resonaattoreita, joilla on tietty hajautettu kapasitanssi ja induktanssi. Ne on jo sovitettu yhteen niin, että äärettömän pienessä pätkässä kaapelia nuo ovat tasapainossa, ja siksi se tavallinen aaltoliikkeen etenemisehto että on kaksi toisiensa kanssa oskilloivaa suuretta (tässä sähkö- ja magneettikenttä) pääsee toteutumaan. Mutta kuten viritettyjen antennienkin laajemmassa resonanssissa, tässäkin hajautetussa raamissa resonoivan induktanssin ja kapasitanssin suhde voi olla lähes mikä vain. Sen takia siirtolinjalla on ns. karakteristinen impedanssinsa, eli se kuinka suuri osa energiasta varastoituu pisteittäin jännitteeksi/sähkökentäksi/potentiaaliksi/"voimaksi"/"paineeksi", ja kuinka suuri osa virraksi/magneettikentäksi/gradientiksi/"nopeudeksi"/"virtaukseksi". Esim. 50Ω:in koksissa jännitteen suhde virtaan on 2500, niin että energioiden/tehojen suhde on tietyssä täsmällisessä mielessä sen neliöjuuri, eli tuo 50, aivan kuten puhtaasti resistiivisessäkin tapauksessa. (Muista: teho skaalautuu jännitteen neliönä, koska se on jännite kertaa virta, ja tietty jännite ajaa tietystä vastuksesta lisäksi läpi tietyn virran; näissä vaihtovirta- ja radiohommissa lisäksi sitten vaihesiirto, joka johtaa loistehoon, ja jota tässä juuri yritetään sovituksella minimoida.)

Ideaalisessa siirtolinjassa signaali etenee tietyllä ominaisella nopeudellaan riippumatta siitä mikä linjan impedanssi on. Mutta jos impedanssi yhtäkkiä muuttuu, epäjatkuvuus tuottaa heijastuksen. Tästä me emme pidä, koska energia ei silloin mene kokonaisuudessaan läpi, heijastus voi tuottaa linjassa ikäviä resonansseja jotka kohottavat jännitteitä eli koettelevat komponenttien kestävyyttä sähkökentälle, ja tietysti virrat myös kasvavat samalla, jolloin häviö auttamatta mitättömänkin vastuksen kautta kertautuu paljon suuremmaksi resistiiviseksi hukaksi. (Ilmiö on täysin analoginen sille, kuinka tensiilivoimat (voima on jännitteen analogi, paine/tensiilimodulus kapasitanssin) ja massan hitaus (kineettinen energia on virran analogi, induktanssi massan/tiheyden) käyttäytyvät akustiikassa.) Niinpä olisi kiva että nuo epäjatkuvuudet saataisiin jotenkin sovitettua—mekaanisessa analogiassa "vivuttua"—pois. Se poistaisi heijastukset, ja mahdollistaisi parhaan mahdollisen energiansiirron.

Tavalliset keinot tehdä tuo ovat laajemmalla kaistalla muuntaja, ja kapeammalla kaistalla erilaiset resonantit rakenteet. Jälkimmäiset ovat erityisen olennaisia korkeataajuussovelluksissa, koska muuntajat ovat jatkuvasti häviöllisempiä mitä korkeammalle taajuudessa mennään. Niistä on myös vaikeaa rakentaa tehokkaita käyttämättä hyväksi ferromagneettisia materiaaleja, jotka sitten puolestaan tuottavat signaalia sotkevaa epälineaarisuutta. Suo siellä, vetelä täällä, kuten aina.

Helpoimpien, resonanssiin luottavien sovituspiirien ongelmana sitten yleisesti on, ettei tahdo oikein löytyä riittävän ideaalisia reaktiivisia komponentteja niiden toteuttamiseen. Isoin päänsärky yleensä on, että suuria, tarkkoja, riittävän häviöttömiä induktansseja ei tahdo löytyä, joskin vastaavasti myös kapasitorien/kondensaattoreiden jännitteensieto saattaa sotkea ajopuuteorian. Ylipäänsä, vaikka riittävästi komponentteja sisältävillä verkoistoilla olisi mahdollista teoriassa impedanssisovittaa piirejä laajemmankin kaistanleveyden yli, käytännössä analogisten komponenttien toleranssit ja häviöt, eritoten suhteessa yleisesti käytettyjen signaalien suhteelliseen kaistanleveyteen, johtavat siihen että sovitus tehdään alhaisasteisena ja siksi kapeakaistaisena. Analogikomponentit kun ovat ainoa vaihtoehto silloin kun verkoston täytyy myös kyetä hetkellisesti resonansseissaan varastoimaan merkittäviä määriä reaalimaailman sähkömagneettista energiaa; siinä digitaalitekniikka ja matematiikka eivät viime kädessä voi hirvittävästi auttaa.

Induktanssi, gyraattori, ja sitten sen ongelmat

Kuitenkin, induktanssia pystyy matkimaan käyttämällä hyväksi kapasitanssia ja tiettyjä piirimuunnoksia. Pari sellaista ovat kapeakaistaisena erilaiset siirtolinjoilla toteutettavat resonanssirakenteet kun ne päästetään juuri 90 astetta epäsynkkaan sovituksesta, ja laajempikaistaisina negatiivi-impedanssivahvistin (yksiporttinen) sekä gyraattori (kaksiporttinen). Ensimmäinen on aidosti energiaa varastoiva järjestelmä, mutta kapeakaistainen. Jälkimmäiset kaksi ovat piiriteknisiä jippoja, jotka emuloivat laajakaistaisestikin tarvittua, reaktiivista impedanssia, eli siis taajuussidonnaista "vastusta" kaikkine vaihesiirtoineen.

Mutta vain emuloivat: jos jotain pitää ottaa emulaation niin vaatiessa signaalista pois, ne hukkaavat sen lämmöksi. Ja jos jotain pitää vastaavasti laittaa peliin takaisin lisää, se otetaan vahvistimen syöttötehosta erikseen. Mitään varastointia ei tapahdu, eli nuo piirit eivät kykene esimerkiksi tuottamaan niitä voimakkaita virtapiikkejä joita oikeat kapasitanssit kytkettynä oikosulkuun, tai niitä miehekkäitä korkeajännitepiikkejä joita avoimeen piiriin kytketyt induktanssit. Raja on molemmin päin siinä kuinka paljon jännitettä ja virtaa virtalähteesi kulloinkin pystyy antamaan, eikä se ole järin paljon. Tuo on aivan eri tasolla kuin ne energiamäärät joita voidaan varastoida tasavirrassa kelaan ja tasajännitteessä kondensaattoriin. Sitten varsinkin jännitteissä aivan eri juttu kuin mihin resonantit korkeataajuuspiirit rutiininomaisesti yltävät—vrt. Tesla-käämi, kymmenissä miljoonissa volteissaan. (Ja tietty tässä aina ArcAttack!).

(Sivumainintana turvallisuudesta muuten, hyvin viritetyt sähköisesti lyhyet antennit, eritoten ohuina, on kaikkein vaarallisimpia: ne pakottaa radiokenttää korkeilla jännitteillä kun muutakaan eivät voi, ja sitten ohuutensa tähden niitten lähellä sähkökentät on jakautunu kaikkein pienimmälle alalle. Noi tuottaa välittömästi luuhun ulottuvia radiopalovammoja jos kosket itsesi osaksi sitä resonassipiiriä. Onneksi tosin kosketus pilaa piirin resonanssin, niin ettei sitä energiaa tule näpeille loputtomiin tai ihan kuitenkaan kerralla, ja mitä korkeampitaajuinen se kenttä on, sitä pinnemmaksi se energia ihmisen kaltaisessa suht'-johtavassa suolavesisäkissä jakautuu. Mutta samalla antenni kyllä dampattuna dumppaa koko seisovan energiansa suhun millisekunneissa, ja jos siellä takana on edes perusluokan amatöörin satawattinen vahvistin joka pumppaa jatkuvasti lisää tehoa sormille, vakavaa tuhoa on odotettavissa nopeasti. Eritoten jos kosket jänniteantinoodiin, niin että antenni kytkee enimmäkseen resistiivis–kapasitanssiseen ihmisruhoon niin tehokkaasti.)

Hakkurin ominaisuudet ja sigma–delta-muunnin

Ylläoleva normianalyysi luottaa lineaarisuus- ja passiivisuusoletukseen. Samalla me kuitenkin tiedetään jo, että epälineaarisuudella voidaan tehdä ainakin virtalähteissä kiintoisia juttuja. Selvästi myös pienentää tarvittavien induktorien kokoa, koska korkeilla taajuuksilla jo pienikin induktanssi riittää jännitteen kohotukseen: siinä virta lähtee kiertämään nopeammin, jännite voi olla varsin korkea kun piiri avataan silti, ja siksi tyyliin buck–boost-piirit voivat hakkurivirtalähteissä kohottaa jännitteen kymmeniä kertoja suuremmaksi, kunhan hakkurin taajuus on vain riittävän korkea. Häviöitäkin voidaan vähentää, koska kun vaadittu induktanssi on alhainen, voidaan parhaimmillaan mennä jopa ilmatäytettyihin keloihin.

Hakkurit pohjimmiltaan nopeissa kytkinsiirtymissään siirtävät energiaa taajuudelta toiselle. Jos ne olisivat ideaalisia, äärettömän nopeita kytkimiä, ne pystyisivät oikeastaan siirtämään minkä vain kapeakaistaisen signaalin äärettömälle kaistanleveydelle: modulaatio puhtailla delta"funktioilla" (impulsseilla, täsmällisemmin idealisaatio matemaattisen distribuutioteorian deltafunktionaaleista) tuottaa periodisena periodisen kaistarajaamattoman signaalin rajatusta, ja sitten epäperiodisilla jonoilla voidaan päästä keskimäärin täysin tasaiseenkin taajuusvasteeseen.Käytännössäkin kaikenlaisia epätäydellisistä realisaatioista johdettuja monivaiheisempia kompensaatioarkkitehtuureja löytyy heikan meikat.

Yleensä hakkuripiirit analysoidaan niin, että ne ovat täysin yksisuuntaisia. Lähdemme kerran tasavirraksi tasoitetusta energianlähteestä, joka sitten hakataan korkeampitaajuiseksi, tasasuunnataan uudelleen, ja alipäästösuodatetaan. Mutta noin ei missään nimessä tarvitsisi olla. Lisäksi epälineaaristen hakkuriarkkitehtuurien ei tarvitse olla edes sitä vähää kaksisuuntaisia kuin passiivipiirien; ne voivat ihan vain kytkemällä halutusti piirejä puolelta ja toiselta pienenkin reaktiivisuuden läsnäollen välissä, jäljitellä laajoilla aika- ja taajuusalueilla tarkasti suunniteltuja epäsymmetrisiä impedansseja. Siirtää energiaa taajuusalueelta toiselle myös, laajakaistaisesti, ja teoreettisesti epäsymmetrisestikin, jos niin halutaan.

Tarkimmat—joskaan eivät nopeimmat—nykyiset analogi–digitaali–analogi-muuntimet perustuvat sigma–arkkitehtuuriin, jossa ylinäytteistetään, tehdään suurin osa anti–aliasing- ja -imaging-suodatuksesta digitaalisesti, ja sitten annetaan leppeän alhaisen asteen analogisuodattimen tehdä loput. Tuo on peruskuva varsinkin audiosignaalinkäsittelypuolelta johon tuota baseband-juttuna ekana sovellettiin, mutta sitten se vähemmän tunnettu puoli on, että oikeastaan sigma–delta-modulaatio soveltuu yleisesti kvantisointikohinan siirtämiseen kaistalta toiselle. Ainakin tietyissä rajoissa, ja oikein toteutettuna. Se voi siirtää kohinaa hyötykaistan sisälläkin, se on yhdistettävissä psykoakustiseen epälineaariseen prosessointiin kuten Sonyn Super Bitmappingissa, ja radiohommissa se aivan yhtä hyvin toimii niin että siirretään kvantisointikohina hyötykaistan alle, siinä missä yleensä audiossa ylle—merkittävä säästö komponenttien nopeudessa, ja analogisten suodattimien asteessa/hinnassa/tarkkuudessa. (Vrt. bandpass sampling; rajoittava tekijä on kytkimen nopeus, eli sen slew rate, jitter, kanavakapasitanssi, piirin läpimeno glitcheissä, ja kaikki se. Ihanteellisessa altanäytteistämisessä ΣΔ-arkkitehtuurit vähentävät jyrkästi ylintä vaadittua kytkemistaajuutta, ja yhdistettynä muihin aiempiin hakkuriperiaatteisiin, voivat johtaa jopa lähelle minimaalista. Jokainen kytkentätapahtumahan tuhlaa energiaa, koska vain jännitteen ja/tai virran yli kytkimen on niin että hukattu teho voi olla nolla; resonanteissa systeemeissä tätä käytetään hyväksi luokan F ja E radiovahvistimissa, joissa kytkentä tapahtuu suunnitellusti virran tai jännitteen nollakohdissa, aina.)

Kaksisuuntaisuus ja resonantti energian varastointi

Ongelma kuitenkin on tuo energian varastointi. Sehän me jo tiedettiin, että analogiset passiivikomponentit voivat varastoida energiaa, siinä missä operaattorivahvistimin toteutettu gyraattori ei. Kun se on resistiivisesti toteutettu harha, joka syö virhettä ja korjaa vajeen uudella energialla syöttöjännitteestä.

Mutta mitäs jos me nyt sitten suunniteltaisiinkin se hakkuripiiri kaksisuuntaiseksi? Mitäs jos se voisi syödä suunnitellusti takaisinheijastunutta energiaa ja varata omaa resonanttia tankkipiiriään sillä? Sitten suunnitellusti kytkeä sen takaisin antenniin, kun aika on?

Käytännön toteutus voisi olla aika tuskainen, mutta teoriassa tuolle ei ole nähdäkseni mitään estettä. Se vaatisi jonkinlaisen kaksisuuntaisen, täyden ja täysin ohjatun siltakytkennän kahden eri resonantin piirin välille. Kun yksi haluaa luovuttaa energiaa toiselle, kytkimet antaisivat tehdä niin suuntaan kuten toiseenkin. Kun olisi aika ajaa piiriä, suuntaan tai toiseen, silta myötäisi ja tuottaisi yhdenpuolisesta tankkipiiristään tarvitun ajavan jännitteen, eli siis työntäisi energiaa resonantista systeemistä toiseen. Mahdollisesti hyvinkin korkeilla jännitteillä. Kun taas pitäisi hillitä toista piiriä, se voitaisiin kytkeä oikosulkuun toisen vastakkaista jännitettä vasten; kuten tunnettua, resonantit piirit voivat pienilläkin energioilla saavuttaa korkeita jännitteitä sekä virtoja, eritoten korkeilla taajuuksilla, joten isoakin piiriä voi kytkien "potkia" kunhan energiabudjetti vain on kohdallaan.

Vai olisiko kumpikaan piiri edes resonantti sitten? No ei täsmällisesti. Mutta eipä ole kyllä antennipiirikään; jos se olisi ihan vain täydellisessä, kapeakaistaisessa resonanssissa, se olisi piiriteknisesti avoin piiri resonanssitaajuudellaan. Siihen ei voisi syöttää energiaa. Me itse asiassa luotamme radiatiivisiin ja muihin häviöihin joka tapauksessa, jotka vievät piirin pois resonanssista, jotta ylipäänsä voimme syöttää siihen energiaa. Tai eristää päin vastoin energiaa jotenkin piiristä. Ideaalitapa sitten on käyttää mahdollisimman epälineaarista kytkentäelementtiä, kuten tässä, niin ettei jännitettä ja virtaa ole kytkentäelementin yli samaan aikaan, niin että tehohäviö minimoituu.

Jos noin voi tehdä yhden piirin kanssa kerrallaan, sen voi takuuvarmasti jollain siltakytkennällä tehdä myös yhteisesti kahden eri piirin välillä samaan aikaan. Mikä on mun ajatukseni sitten pohjimmiltaan tässä. Tuosta ajatuksesta taatusti päädytään siihen että ainakin matalajännitepuolella joudutaan lisäksi kertomaan virtoja ja/tai jännitteitä jotenkin, korkeahkoilla kytkentätaajuuksilla. Mutta kun jompi kumpi on kerran käytettävissä, energiaa varastoivana tekijänä, kytkin voi aina johtaa toisen, ja se voi tehdä niin ajastetusti juuri oikeaan aikaan.

Hieman signaalinkäsittelyä väliin vielä

Eli kuten sanottu, kytkin voi johtaa induktorin virrasta jännitettä, ja tarpeeksi korkeaan jännitteeseen ladatusta jännitteestä kapasitorin/kondensaattorin yli vaikka sen jännitepiikin joka katkaistu käämi tuottaa. Olennaista on vain se että tarvittava energia on varastoitu valmiiksi, ja se että kytkimet ovat riittävän nopeita tekemään työnsä. Että radiosuunnittelu on oikeaa, kaksisuuntaista, ja sigma–delta-henkistä: kun kytket, suodata oikein, vältä turhaa kytkemistä, ja pysäytä kytkentämelu/-kohina mahdollisimman häviöttömiin passiivisuodattimiin, mieluiten kohinansiirron (noise shaping) sekä alinäytteistyksen kautta (koska ylinäytteistys koettelee kytkinelementin taajuusrajoja itsessään).

Tämä olisi mahdotonta tehdä puhtaasti analogipuolella, edes takaisinsyöttökorjattuna. Digitaalipuolella varsinkaan, koska digitointiviive. Mutta pseudotakaisinsyöttö on digipuolella täysin mahdollista ja tehokasta. Me voidaan helposti mitata miten analogipiirit käyttäytyvät, ja rakentaa varsin kelvollinen yhdistelmä matala-asteista Volterra-kerneliä yhdistettynä korkea-asteiseen LTI-malliin, forward correctioniksi noille piireille. Meillä on tajuttomasti suorastaan pseudolineaarisia prioreita ja niiden matala-asteista epälineaarista korjausteoriaa vaikkapa audiosignaalinkäsittelypuolelta, joiden varassa optimoida koko homma läpi. Joten me voidaan helposti rakentaa hyvä ensimmäinen arvio siitä miten tommoset oudot, kaksisuuntaiset hakkuripiirit käyttäytyy, me tiedetään jo mitä niistä pitäisi mitata jotta niiden epätäydellisyydet saataisiin hallittua teoreettisesti, ja meillä on ihan riittävästi signaalinkäsittelytehoa sekä -teoriaa käytössä, että me voitais oikeesti toteuttaa jopa toi idea. Ei ehkä täydellisenä korjauksena, mutta ekaltakin hyvänä ja sitten itseoppivana, toteutuskelpoisena.

Ongelmat, ja mutta…

Ei niin hyvää ettei jotain pahaakin. Enkä ole taaskaan laskenut mitään vaan menen intuitiolla. Mutta… Tärkeimmät ongelmat taitaisivat olla:

  • Kytkinten nopeus, eritoten sigma–delta-tyyppisissä jatkuvasti vemputtavissa modulaatioissa; toi tuhlaa energiaa ja lämmittää turhaan, vaikka onkin teoreettisesti helposti analysoitavaa
  • Monimutkaisten, kaksisuuntaisten siltakytkentöjen tarkka ajastus; nää menee glitchistä läpilyöntiin helpommin kuin juuri mikään muu, varsinkin radiotaajuuksilla, ja sitten koneesta pihahtaa vaan sininen savu
  • Kellutus ja siitä seuraavat epätehokkuudet; oon aika varma että nää kytkennät vaatis kytkinelementtien kellutusta kahteen suuntaan, korkeilla jännitteillä ja/tai virroilla, mikä on tosi vaikeaa tehdä ilman häviöllisiä lisäkomponentteja ja monimutkaisia piirejä; tyyliin, aika vaikee uskoa että kukaan ilman tällaista sovellusta ois tuottanu mitään laser-laukaistavia voima-HEMT:ejä tjsp.
  • Monta lisääkin oli mielessä ennen kuin join taas; jatketaas tästä myöhemmin siis taas… 🙃

2018-12-28

Kummallisia modulaatioita ja muita radioajatuksia, osa 3: köyhän antenni

Antennit. Ne ei mahdu mihinkään, varsinkaan rapajuopon tuetun asumisen kerrostalossa, jossa vuokraisäntä on kaupunki. Ne ei niinqu paljon neuvottele mistään siirtolinjoista tai varauksista kattotilaan. Sulla on sun dunkkuyksiö, ja se siitä. Vieressä on korkeampi kerrostalo joka puolella, eikä ikkunastakaan saa ripustaa mitään, jottei häirittäisi muutenkin vittuuntuneita naapureita. Mistä siis löytää antenni?

Talo voi olla antenni

Tulipa tässä mieleen, että onhan nää betonitalot kuitenkin raudoitettu jotta ne pysyvät kasassa. Luultavasti jopa niin, että raudat ennemmin tai myöhemmin, pystyyn tai vaakaan, on sidottu toisiinsa. Toisin sanoen aika ison osan ainakin tästä betonilaatasta pitäisi olla sisäisesti johtavaa.

Ei tuokaan hyvää lupaa. Mulla ei ole juurikaan mahdollisuuksia ärsyttää edes ideaalista hilaa raudoituksissa omasta kämpästäni, noin prima facie. Mutta… Mä vähän luulen että pitäis silti joskus mitata mitkä tän mahdollisuudet on. Kattoa mitä tapahtuu jos mä viillän mun muovimaton auki, ja poraan rautoihin asti. Ylipäänsä poraan katosta ja seinistäkin niihin. Koska toi ei sinänsä ole kiellettyä missään laissa, säännössä tai sopimuksessa.

Sitten kun noin tekisi, voisi mitata "talon taajuusvasteen". Mahdolliset epälineaarisuudet ruostuneissa liitoksissa, korjattaviksi Volterra-ytimillä DSP:ssä. Ei se impedanssikäyräkään niin vaikea olisi. Ja jos frendit "vähän" auttais, radiaatioresistenssikään ei ois niin kauhean vaikea päätellä, kera suhteellisten etämittauksien.

Kas kun, hihihih, "kukaan ei odota suomalaista radioamatööriä; varsinkaan kukaan ei ymmärrä miten radio toimii". Se jujuhan on siinä että radiotaajuuksilla kaikki yhtäkkiä poikkeaa raudoituksen edustamasta yleisestä oikosulusta. Se raudoitus voipi jopa johtaa koko talon resonanssiin, niin että käsillä on tietyillä taajuuksilla käypä antenni.

Röyhkeintä tietysti olisi että käytetään koko taloa monopoliantennina jollain VLF-kaistalla. Onhan se tietysti hyvin maadoitettu alapäästään, mutta myös niin korkea että yläpää on erikseen. Varsinkin rakenteensa puolesta, joka ei ole ollenkaan suora johdin vaan raudoituksen rakenteesta johtuen lähempänä epätäydellistä 3D-siirtolinjaa/metamateriaalia.

Mutta katotaas. Mitataan ennen kuin nuolaistaan. Tähän tarttis jonkun jolla on vehkeet, tyyliin laajakaistainen, voimallinen lähetin, erillinen vastaanotin, ja vähintään kaksi- (mieluiten neljä-) -kaistainen oskilloskooppi, mahdollisimman laajalla kaistavälillä.

Noinkohan Hilti lahjottais poran, terän sekä asenteen?

Kummallisia modulaatioita ja muita radioajatuksia, osa 2: koodiajatukseni redux

Olen jo pitkän aikaa miettinyt virheenkorjausta. Lohkokoodit eivät ole tarpeeksi hyviä, kun taas konvolutiivisissa koodeissa häiritsee se kuinka ne toteutetaan diskreetillä puolella niin aikavariantin näköisesti. Oma hytinä on, että oikeastaan se koodausongelma pohjimmiltaan etenisi jatkuvassa ajassa, niin että kooderi jatkuvasti syöttää tietyn osuuden siirrettävää dataa ja tietyn osuuden redundanssia signaaliin. Tuon pitäisi tapahtua niin että redundanssi laskee kattamistaan biteistä eksponentiaalisesti eteenpäin, eksponentilla joka juuri ja juuri alittaa AWGN-kanavan virhetodennäköisyydestä johtuvan luontaisen virhe-eksponentin. Sen jälkeen dekooderi voisi vapaasti valita kuinka pitkää viivettä se sietää, vastaan BER; pidemmällä dekoodausviiveellä lopulta päädyttäisiin asymptoottisesti kapasiteettiin, lyhyemmällä vakiovirhetodennäköisyyteen.

Tuo intuitio varmastikin pitää paikkansa, ja olen kirjoittanut siitä aiemminkin, mutta kuten koodausteoriassa yleensä, ongelmahan ei tietenkään ole tämä. Ongelma on miten tehdä tuo temppu systemaattisesti, todistettavasti ja tehokkaasti. Nyt tuli aiheesta vaihteeksi pari uutta ajatusta jotka eivät vieläkään ratkaise ongelmaa, mutta minusta ovat askel oikeaan suuntaan.

Aiempaa päättelyä

Aiemmat ajatukseni aiheesta pyörivät pohjimmiltaan jatkuvien konvoluutioiden ja uudelleennäytteistämisen ympärillä. Jos meillä on bittivirta joka on ylinäytteistetty edes vähän, tai jossa on tunnettuja bittejä silloin tällöin (vrt. se tavallisen konvoluutiokooderin aikavariantti kommutaatio), siinä on jatkuvasti pieni vakiomäärä redundanssia. Jos tuo sitten konvolvoidaan eksponentiaalisesti häipyvän, allpass-suodatinta kuvaavan impulssivasteen kanssa—pohjimmiltaan ajetaan sopivan reverberaatioefektin läpi—efekti hajauttaa tiedon ajassa tavalla joka on helposti käännettävissä, ja jossa bittien vaikutus jakautuu ajassa toivotulla tavalla sekä pseudosatunnaisesti. Sitten olin ajatellut, että tuon ajatuksen saisi jotenkin pyöristettyä bittivirraksi, kenties satunnaistaen. Dekoodaus olisi pohjimmiltaan vastakkainen suodatin Z2:ssa, joka pitäisi ylipäästösuodatettua tai tunnettuihin symboleihin kohdistuvaa redundanssia suoraan merkkinä virheestä, jonka voisi sitten ihan vain pyöristää pois ja syöttää takaisin ajassa lisäpyöristyksiä varten.

Kaunis intuitio, mutta mitä enemmän mietin, sitä vähemmän tuo tuntuu toimivan.

Uudempi ajatus

Tässä välissä on sitten tullut luettua heikan meikat radiojuttuja, ml. koodausteoria. Siltä puolelta alan vihdoinkin ymmärtää miten ja miksi Trellis-koodattu modulaatio toimii. Kun siinä sitten sekoitetaan todella koodaus ja modulaatio iloisesti toisiinsa, mieleen yhtäkkiä tuli…

Miksi ihmeessä mun oikeastaan tarttis pyöristää biteiksi ylipäänsä? Mitäs jos se koodaus sinänsä tehdään jatkuvassa ajassa konvoluutiona? Toki toteutetaan digitaalisesti koska muuten tosta systeemistä ei tule tarkkaa, mutta yksinkertaisesti ajetaan se konvoluutio suoraan ulos D/A:sta jatkuvana signaalina, ja sitten toisella puolella A/D:n kautta sisään?

Ja siis, itse asiassa, tässä on nyt sellainenkin hauska, että hyvin suunnitellut reverb-hännät ovat pseudorandomia niin että niiden autokorrelaatiofunktio on jokseenkin impulssi. Ne voidaan skaalata niin, että ne eivät hukkaa tai luo energiaa. Ne eivät luo uusia taajuuksiakaan kun ovat lineaarisia. Ne ovat tuskallisia toteuttaa riittävään numeeriseen tarkkuuteen, varsinkaan häviöttömästi, näin pitkillä impulssivasteilla, mutta musiikkisignaalinkäsittelystä löytyy kyllä pitkät pätkät kaikenlaista hyödyllistä sovellusta varten. FFT-OLA/OLS mahdollistaa suorastaan suunnitellun FIR-vasteen käyttämisen, kymmeniä sekunteja pitkiin vasteisiin—joskin tuo on audiotaajuista signaalia varten eli ei edusta järin paksua datavirtaa. Toisaalta me lhdetään biteistä eikä täysistä sampleista, eikä akustiikka kiinnosta vaan vain häipyvä allpass-vaste ja tehokkuus.

Kun itse asiassa mietin kirjoittaessani, se ylisamplaus ei ehkä ole oikein ratkaisu, koska tässä muodossaan se jättää kaistaa vain käyttämättä. (Vai onko? Sehän se miehekästä olisi jos ton systeemin redundanssi ois just siinä että kaistan tiedetään olevan tietyn pisteen yläpuolelta nolla, jolloin sitä ei tarvitse lähettää!) Ehkäpä pitäisi käyttää vain suosiolla täysikaistaisia pulsseja, mutta harvemmin? Silloin pulssimuoto varmaankin olisi raised-cosine -tyyppiä, koska siitä saadaan täsmälleen ylimääräsen kaistan levyinen ja Nyquistin ISI-kriteerion täyttävä samanaikaisesti ja helposti. Vai pitäisikö se yläkaista jotenkin sitoa epälineaarisesti alempaan? Hmm…

Oli miten oli, tuossa systeemissä vastaanottimen käänteissuodatin (allpass-suodattimella sama kuin matched!) hajottaa virheet niin, että periaatteessa ne pitäisi olla mahdollista ihan vain pyöristää pois (tiukimmalla, molemminpuolisella!) slicerillä. Toi systeemi on välttämättä partial response ja IIR molempiin suuntiin jollei pyöristetä häntää pois, mutta niin systemaattinen/lokaali se kyllä on kuin vain voi. Osittaindekoodatessa homma menee niin, että käännetään tietty lohko, slicetetään bittiarvoihin, ja syötetään poistettu virhe hamaan tulevaisuuteen negatiivisena koodaussuodattimen läpi. Käännettävän sen pituus määrää koodausviiveen, ja molemmat suodattimet voi toteuttaa nollaviiveisellä FFT-konvoluutiolla. Jos kanava on valikoiva, optimivastaus on Wiener-suodatin, joka pohjimmiltaan on yhdistelmä alkuperäistä signalointipulssia systeemivasteen osoittajassa (matched-osa) ja kohinan valkaisua (inverse-osa) nimittäjässä; tuo johtaa ideaalitilanteessa samaan kuin ylläoleva päättely, kaistarajoituksine kaikkineen, samalla kun yleisessä tilanteessa se on todistettavasti optimaalinen kuitenkin; suodattimen voi jakaa halutulla tavalla lähettimen ja vastaanottimen kesken, tyyliin valkaisu prefiltteriksi että lähetetään vain niillä taajuuksilla joilla on signaali–kohina-suhdetta, ja erit. niillä joilla vaste ei häivy. Kohina voi edelleen tuottaa ongelmia esim. virhepropagaation muodossa, varsinkin kun allpass-suodattimet välittävät kohinaenergian läpi sellaisenaan (paitsi että kaistarajoitus poistaa siitä aina redundanssin verran), mutta tuon ei pitäisi olla iso ongelma kun vaste kuitenkin häviää nopeasti (?) ajassa ja takaisinsyötön magnitudi voidaan rajoittaa väkisin noita tilanteita silmälläpitäen. Optimaalinen dekoodaus saattaisi edellyttää iteraatiota ajassa eteen- ja taaksepäin, mutta vähän luulisin että mulkkaamalla (pisteittäistä!) pyöristysfunktiota (yksi muoto soft-decodingista), kenties ditheröimällä, ja ottaen huomiooon että joka iteraation osana korkeampi signaalienergia pyöristetään kaistarajaan ja vastekin kuolee eksponentiaalisesti ajassa, tuosta voisi olla kenties jopa mahdollista näyttää että prosessi konvergoituu maximum likelihood -mielessä korkealla todennäköisyydellä nopeasti&ndashd;karsean kaunis tulos jos se on mahdollista saavuttaa.

Parina variaationa vois miettiä sitäkin että pulssit ovat koko kaistan levyisiä ja suodatin sopiva niiden ilmaisuun, sillä synkronisaationäkökohdat, bipolaarista signalointia, ja sitä että dekooderi katselisi lisätyn kokonaisenergian määrää (helppoa koska allpass-rakenne, mutta ehkä siksi jopa tarpeetonta). Myös L1-normiin -perustuvia optimointialgoritmeja voisi periaatteessa kokeilla, kun niillä on hiukkasen samaa rakennetta (vrt. esim. iterative shrinkage -tyyppiset algoritmit). Samoin, jos tuosta vaihtuvasta dekoodausviiveestä tingitään, epäilemättä olisi tehokkaampaa käyttää filtterinä syklistä FFT-konvoluutiota ihan vain sattumanvaraisilla vaiheviiveillä, koska niin laskennallisesti kuin koodausviiveellä annettuun virhetiheyteen ei-häipyvä vaste allpass-suodattimella sotkee kyllä lyhyellä aikavälillä tehokkaammin virheet ja datan keskenään.

Ylipäänsä viimein kaikki toi koneisto on ihan jäätävän simppeliä sekä tehokasta suhteessa siihen kuinka joustavaa se on. Jos toi toimis edes vähän sinnepäin, oijoi, oltais yhtäkkiä tasan aikakirjoissa!

Post scriptium: Yksinkertaisempi analyysi

Oletetaan että käytössä on kaistarajaamaton kanava ja tietty määrä energiaa per bitti, joka menee absoluuttisen Eb/N0-rajan yli (muistaakseni circa -0.58dB). Täydellinen koodi olisi lähettää signaali sarjana tuon energian kantavia delta-funktioita, koska ne ylittävät minkä tahansa jatkuvan valkoisen kohinan hetkellisen tason; siirto olisi täydellinen ihan vain koodaamatta yhtään mitään, sikäli kuin signaali saataisiin näytteistettyä ajassa niin että pätkääkään jatkuvaa lisäkohinaa ei pääse mukaan.

Fysikaalisesti tällainen järjestelmä on tietenkin mahdotonta toteuttaa, koska sen hetkellinen lähetysteho on ääretön, kuten on kaistanleveyskin, ja niin on vielä vastaanottimelta vaadittava nopeuskin. Joten sen sijaan tyydymme levittämään tutkajärjestelmistä tutulla tavalla noiden pulssien energian ajassa ("pulse compression"), kunnes keskimääräinen tehorajoite tavataan. Tämä onnistuu äärettömällä kaistanleveydellä jo varsin lyhyillä allpass-vasteilla (tässä vielä epämääräinen käsite, mutta menkööt toistaiseksi). Seuraavaksi rajaamme signaalin kaistanleveyden äärelliseksi, jolloin kanavalle ilmaantuu äärellinen kapasiteetti. Lisäksi teemme hienoisen approximaation siinä, että hetkellinen tehokin on rajattu eikä vain keskimääräinen; tämä arvio ei ole järin rajoittava koska AWGN-kanava hankaluudestaan huolimatta saa äärimmäisiä arvoja vain harvoin ylärajan funktiona.

Periaatteessa nyt pitäisi käydä samalla niin, että pulssikompression minimipituudelle ilmaantuu myös alaraja. Näin siksi, että rajatulla kaistalla esiintyy vakiomäärä innovaatiota signaalista ja melusta per aikayksikkö. Jos hajautus ajassa ei ole riittävää, yksinomaan näytteistetyn signaalin (eli sen rekonstruktioon tarvittavan sinc(x)-funktion) hajautuneisuus tuo tietyn määrän epävarmuutta näytteistysajan ulkopuolelta mihin vain äärelliseen ikkunaan. Niinpä, vaikka kohinattoman kaistarajatun kanavan kokonaistilan pystyy periaatteessa päättelemään kuin lyhyeltä ajalta otettujen riittävän monien näytteiden perusteella (johtuu kaistarajattujen signaalien analyyttisyydestä, joka mahdollistaa niiden pohjattoman ekstrapoloinnin ajassa), kohinan läsnäollessa pitäisi keskimäärin käydä niin, että signaali on hajautettava ajassa eksponentiaalisesti laskevasti, jotta se voidaan rekonstruoida kasvattamatta optimaalisen rekonstruktion kohinaa rekompaktoidusta energiasta enempää kuin tietty kiinteä raja. Tuon rajan luulisi määräytyvän suoraan kaistanleveys–teho—aika-symmetriasta, eli olevan epätarkkuusperiaatteen yksi versio.

Tuosta eteenpäin konstruktio etenee kuten yllä. Käytämme pulssikompressioon eksponentiaalisesti häipyvää AWGN-signaalia, josta saadaan ortogonaliteetti peräkkäisten pulssien välillä kaikkien valittujen kaistojen sisällä automaationa. Ainoa probleemi on ISI, mutta sehän tietysti menee nolliin kun valitaan pohjimmainen signalointitaajuus ennen hajautusta Nyquist-kriteerion mukaan.

Viimein, käytännölliseen kanavaan saatetaan tarvita jotakin duobinaryn tapaista että tiukat suodatinrajat natsaavat. Myös laajennos korkeamman SNR:n kanaviin pitää miettiä. Mutta periaatteessahan niitä voi arvioida venyttämällä koodia ja säätämällä käytettyä energiaa, sekä tietysti menemällä kapasiteettia lähestyvästä tilanteesta N kertaa niin moneen PAM-signaloinnin tasoon; todistuksen ei pitäisi muuttua, ja tilaa interpolaatiolle diskreettien ratkaisupisteiden välillä pitäisi olla reippaasti. Valittu rajattu dekoodausvirhe selvenee sitten luonteeltaan niin, että varsinaisen inversion pituus määrää kuinka suuri osa hajautetun pulssin energiasta todella rekompaktoidaan, minkä jälkeen pyöritys digitaalisiksi signaaleiksi tuottaa annetun eksponentiaalisesti laskevan virhetason, ja syöttö takaisin käsittelemättömän dekooderihännän läpi vähentää koodauksen itselleen tuottamaa jäännösvirhettä, muttei vähennä virhettä kohti kapasiteettirajaa, koska kyseinen virhe vain poistettaan tulevista laskuista, ei rekompaktoida auttamaan S/N-tasoa. Dekoodauksen pitäisi vieläpä noiden eksponentiaalisesti laskevien häntien tähden olla varsin vakaa, sen sijaan että menisi katastrofaaliseksi kuten monissa muissa päätösorientoituneissa raameissa. Joskin tietty se 1/T-termi, joka tulee Nyquist-pulssin rakenteesta ja laskee hitaasti, mutta se nyt on muutenkin jo välttämättä rakennettu sisään itse näytteistykseen, eli laskee siedettäville tasoille yhtä nopeasti kuin A/D:si konvergenssi ylipäänsä, niin että varsinkaan nopeilla näytteistystaajuuksilla sen ei pitäisi käytännössä kohota merkittäväksi suhteessa realistisesti käytettyjen hajautussekvenssien pituuteen.

Ainiin, se tarpeellinen redundanssi…

Tosiaan niin, kun toimitaan kohisevassa kanavassa, joka on myös kaista- ja energiarajattu niin että sille syntyy kapasiteetti, se ei yksinään riitä että hajotetaan tällä tavalla energiaa ajassa. Ylläkin puhun decision–feedback -tyylin päättelystä, joka on erittäin epälineaarinen operaatio, ja tähtää hälyn poispyöristämiseen enemmän tai vähemmän optimaalisesti. Omassa raamissani jopa siihen, että skalaarinen kvantisointi riittäisi energian LTI-rekompaktion kanssa tekemään temput.

Mutta–mutta, miten tismalleen hoitaa sellaiset kanavat joissa se hyötysignaali on haudattu kauas kohinan alle? Tai ylipäänsä hoitaa se perusongelma, että vaikka meillä on pari gaussilaista signaalia, kohina ja hyöty, joilla on teoreettisesti riittävä ero energiassaan per bitti, miten vaikkapa vaihtaa sitten kaistanleveyttä, tehoa ja aikaa toisiinsa luontevasti? Tuo vaatii koodausta ja sen teoriaa; eritoten jonkinlaista redundanssin käsitettä joka sopii kivasti yhteen raamini kanssa. Tähän asti en tullut puhuneeksi siitä miten tuolla tavalla jatkuvassa raamissa voitaisiin tuottaa rendundanssia, vaikka aiemmissa ajatuksissani keskityin juuri siihen.

Enpä vielä täysin tiedä, tässä raamissa. Mutta eka intuitio olisi että signaloidaan sitten hitaammin kuin kaista vaatii. Tuo voisi mennä päällekkäisillä pulsseilla, duobinary-partial-response-tyyliin tjsp. Mutta itse asiassa vähän luulen että eka jota pitäisi kokeilla olisivat raised–cosine -tyyliset pulssit. Nyt vain käytettynä hiukka väärin päin. Niitä kun yleensä käytetään niin, että ne myötäävät kaistarajaa Nyquist-pulsseista ylöspäin. Mutta mitäs jos niitä käytettäisiinkin tarkoituksella sillä tavalla alaspäin, että tarvittava kaista menisi alaspäin, kuten signalointitaajuuskin, ja konstruktion ehdoton, tarkka, kaistaraja sekä erillinen signalointitaajuus täyttäisivät mun systeemissä varatun kokonaiskaistan, by design? Tuolloin raised-cosinen basebandissa varaama (äärellinen, tarkka) lisäkaista olisi se redundanssi jota vastaan koodauksessa voidaan vaihtaa muita juttuja.

Noin suunnitellen signalointinopeudella voitaisiin edelleen täysin pyöristää skalaarisesti niin kohinan kuin dekoodaamattoman itseaiheutetun hälynkin energia pois; "silmä" olisi dekonvoluution/matched-filterin jälkeen edelleen täysin auki, ja ainoa virhe kohinan sekä dekonvoluutioikkunan trunkaation aiheuttamaa. Se olisi eksponentiaalisesti häipyvää kaikki, eli ei johtaisi vaikeasti korjattavaan virhepropagaatioon myöskään, vaikka toi systeemi muuten onkin aika epämiellyttävän oloista partial response -kamaa. Epäilen, että kun toi on niin suoraa ja lähes-lineaarista matikkaa, siitä vois osoittaa aika helposti jopa jotain optimaalisuustuloksia—ja jollei heti kanna, ainakin toi näyttää suuntaa johonkin kivaan jota en ole aiemmin nähnyt.

Isoin ongelma varmaankin on, miten optimaalisesti käyttää hyväksi sitä indusoitua jatkuvan ajan koodia. Mä olen nyt sanonut, että se energiakompaktio on lupaava intuitio, kuten on bitin energian jakaminen pitkillä eksponentiaalisesti häipyvillä LTI-impulssivasteillakin, jossain suhteessa signalointinopeuteen ja signalointiperiodin sisällä vastaan tappelemaan gaussisen melun tuottamaan lisävirhetodennäköisyyteen. Mä epäilen että toi indusoi tietyn enimmäkseen lineaarisen rakenteen, josta on tavallista helpompaa päätellä mikä meni pieleen, ihan vain invertoimalla ja pyöristämällä virheet ajassa pois (poispyöristetyt virheet korreloivat alkuperäisen virheen kanssa vaikka flippaisivat bitin. Viimeistäänkin jonkin iterative shrinkage -tyylin algoritmin pitäisi siinä dekoodausikkunassa ajaa pienin mahdollinen määrä bittejä ympäri, samalla kun kohina pyöristyy pois. Hintana olisi pallottelu koodaussuodattimen yli useampia kertoja.

2018-12-27

Kummallisia modulaatioita ja muita radioajatuksia, osa 1: analogialku

Olen viime aikoina lueskellut softaradioista ja varsinkin modulaatiotekniikasta. Tarkoituksenahan olisi joskus lähteä radioamatööriksi vielä, ja suoraan softapuolelle kokeilemaan diginörttijuttuja. Kun tuota kamaa tankkaa tarpeeksi intensiivisesti ja eksentrisesti, päähän alkaa tulla omia hassuja ideoita. Ajattelin että niitä voisi alkaa vähitellen keräillä jonnekin, eli kun tässä vaihteeksi ollaan fesevankilassakin, toimikoon tämä blogiposti aloituksena.

Single Sideband On-Off Keying (SSBOOK), ajatuksenvirtoineen
Motivaatio

Kun lähetämme Morse-koodia, voimme periaatteessa käyttää mitä tahansa modulaatiota joka suostuu kantamaan binaarisen datavirran—onhan Morse ensimmäinen digitaalinen moodi kuitenkin. Yleisin tapa kuitenkin on katkoa sinusoidaalista kantoaaltoa, koska tuollainen modulaatio on tavattoman helppo tuottaa, ja niin koodata käsin kuin lukea korvaltakin.

Teknisesti kyseessä on kuitenkin samalla kantoaallon amplitudimodulaatio neliöaallolla. Tämä näkyy helposti vaikkapa siitä ainaisesta amatöörien tappelusta joka liittyy avainnuksen kovuuteen ja sen aiheuttamiin key clickeihin, jotka sotkevat viereisiä kaistoja. Nuo johtuvat siitä että neliöaallolla on äärettömän leveä spektri, joka levittää kantoaallon avainnuksen jälkeen tavalliseen AM-tapaan viereisille kaistoille.

Tekniikka

Seurauksena on, että periaatteessa AM-OOK:sta pitäisi olla tuotettavissa yhden sivukaistan versio aivan kuten normi- AM/DSM:stä johdetaan SSB. Se luultavasti kuulostaisi vähän oudolta, mutta sen pitäisi olla selvästi tunnistettavissa, koska poislukien kummalliset vaihesiirtymät on/off-siirtymissä se on vakaassa tilassa ihan vain tavallista OOK:ta.

Lisäksi tähän on audiosignaalinkäsittelypuolelta valmiit työkalut joilla homman voi tehdä eksaktisti, ja jolla sen voi saada kuulostamaan paljon järkevämmältä. Min-BLEP-tyyliset systeemit tuottavat tiukasti kaistarajatun kanttiaallon ja sen kvadratuurikomponentin tehokkaasti ja vieläpä striimaten. Ne myös sallivat pitkällemenevän sekä systemaattisen optimisaation aallon aika- ja taajuussisällöissä.

Ajatuksenvirtaa

Näistä ajatuksista yhdessä yleistyy sitten myös kaikenlaista jännää, kun ajatellaan miten OOK-Morsen spektriä muuten voitaisiin käsitellä. Vaikka olisikin niin, että kova avainnus ei auta meluisissa tai QRP-olosuhteissa, kuten jotkut väittävät, voisikohan olla että jokin toisella tavalla muokattu spektri auttaisi? Tai voisikohan siitä Morsen spektristä tehdä jotenkin psykoakustisin perustein vieläkin miellyttävämmän kuuloisen kuin optimaalisesti avainnettu puhdas OOK?

Tai mites jos siihen spektriin koodattaisiinkin jotain lisädataa jota ihminen ei kuule mutta kone kylläkin? Eikun hei, voiskohan siihen koodata jotakin ihmisen kuulemaakin jotenkin kätevästi, käytettäväksi vaikkapa hymiöiden tai äänensävyn tapaan? Kaikki samaan aikaan?

Pseudo Narrow Band (PNB)
Motivaatio

Radioamatöörisäännöt ovat kaista-allokaatioiden osalta aika masentavia. Yleisimmin käytetyillä kaistoilla kaistanleveys on tiukasti rajattu, ja useimmilla kaistoilla taisi olla käytössä vielä tiukka kanavointikin, tyyliin 5kHz:in siivuihin. Hajakaistatekniikatkin ovat yleisesti ottaen kiellettyjä, kuten taitavat olla monet kokeelliset emissiolajitkin. Tuollainen on paitsi ikävää digikokeilijan kapasiteettinäkökulmasta, myös tarpeetonta ja hyödytöntä. Tai no, ymmärrän kyllä että tarkoitus on hyvä ja toteutus helppo sekä konventionaalinen, mutta jokin tässä nyt kuitenkin häiritsee.

Ensinkin kaistan silppuaminen noin pieneksi johtaa melkoisiin häviöihin kokonaiskapassa, kun tietenkään käytännön vehkeillä ei päästä lähellekään kaistan reunaa vaan pitää aina jättää väliin marginaalia molemmin puolin. On myös periaatteellisesti kyseenalaista että jakoperuste taajuudessa kohotetaan noin paljon ylemmäs kuin aika, paikka, polarisaatio tai hajautuskoodi.

Ja toisekseen, eivät tuollaiset säännöt erityisemmin estä sikailua kaistalla. Jos joku haluaa talloa toisen päälle, hänhän talloo. Käsittääkseni kaistoilla liikkuu kaiken sortin kilohattiwatteja jotka jyräävät tarpeettomasti puolen maailman yhteydet, kun pitää esitellä munanjatkeeksi ostettua ammattilaislinukkaa. Paskamaiset ihmiset voivat aivan hyvin myös yksinkertaisesti breikata syyttä suotta varatulle kanavalle ja alkaa jauhaa paskaa. Jne. Samalla ylivoimainen valtaosa amatööreistä on tavallisia ihmisiä jotka nimenomaan tekevät kaikkensa jotta eivät oksentaisi toisten kengille. Eli eivät talloisi ketään kuin korkeintaan vahingossa, vaikka mitään noita rajoituksia ei olisikaan. Eli siis oikeastaan ainoa ymmärrettävä rajoite koko joukossa on se ettei salausta tai muuta obfuskaatiota saa käyttää, harrasteen avoimuuden ja valvottavuuden takaamiseksi.

Tekniikka

Niinpä noita kaistarajoitteita nyt ainakin tekisi mieli vähän kiertää. Tai siis paremminkin tulkita luovasti, koska en kuulu itsekään niihin tallojiin. Nääs kun ne kaistat ja sallitut interferenssitasot on kuitenkin määritelty käytännöllisillä maskeilla jotka väkisinkin ovat epätarkkoja. Mitäs jos olisi keino tarkoituksella ajaa sun kapeakaistalähetteen interferenssi tismalleen kiinni noihin rajoihin, niin että siitä samalla olisi jotain hyötyä, ja edelleen huomioonottaen muut?

Onhan meillä. FM, AM ei-sinusoidaalisilla aaltomuodoilla ja hajakaistatekniikat kaikki tuottavat perusaaltomuodosta leveämpiä muotoja, joita voi sitten suodattaa mielin määrin. Jos tuollainen lähete lisätään sopivalla tasolla koherentisti normi-SSB:n tai vastaavan lähetteen päälle niin että se jää interferenssimaskin alle, sinne maskin häntiin voi piilottaa yllättävänkin paljon tavaraa, ja riittävästi säätäen luultavasti ihan laillisestikin. Sen jälkeen meillä yhtäkkiä on mahdollisuus process gainiin vastaanottopäässä.

Systeemitasolla tuossa tosin pitää olla aika tarkkana. Niitä maskeja ei ole optimoitu tuollaista käyttöä varten, eli jos ollaan varomattomia, useat eri käyttäjät viereisillä kanavilla voivat edelleen yhdessä sotkea toistensa asioita vaikka kuinka pahasti. Mutta ei tuokaan ylitsepääsemätön ongelma ole. Pitää vain pitää huolta, että asymptoottisesti kaikkien sivukaistat laskevat nopeudella joka summautuu korkeintaan ykköseksi, tasolle joka on säännösten mukainen. Lisäksi varsinkin hajakaistatekniikoita käyttäen voidaan olettaa että tuo summautuminen on täysin epäkoherenttia, jolloin kumulatiivinen efekti minimoituu on viereisillä kanavilla riippumatonta valkoista kohinaa. Se häiritsee vähiten puheentunnistusta ja signaalinkäsittelyä.

Ajatuksenvirtaa

Jos kanavia ensin aletaan kohdella tuolla tavalla tarkoituksellisen epämääräisinä, ainahan sen ajatuksen kanssa voi sitten juostakin. Mitäs jos ne kanavamaskit tarkoituksella määriltäisiinkin niin että kanavat menevät päällekkäin, mutta summautuvat korkeintaan ykköseksi (kenties jonkin tehorajan alapuolella)? Yksinkertaisimmillaan kaistat voisivat elää kolmionmuotoisen kaistamaskin alla, vuotaen täysillä molemmille viereisille kaistoille, ja summautuen ykköseksi (yksi ns. partition of unity).

Tuossa olisi aika paljon miettimistä, varsinkin kun tarkoituksena ei ole pakottaa kaikkia käyttämään näin monimutkaisia kommervenkkejä. Mutta noin teoriassa, ja varsinkin jossain hallitummassa ympäristössä, tuolla olisi vähän samanlaisia etuja kuin duobinaarisella koodilla on aikapuolella: se on paljon helpompaa toteuttaa tavalla joka ei jätä niitä tuhlaavaisia suojakaistoja. Oikeastaan nyt kun ajattelen, ettei vain olisi niin että WLAN-standardien suunnittelijat ovat miettineet jotain tuollaista kun ovat asettaneet ne hajakaistansa päällekkäin? Pitäs varmaan kattoa näkyykö niistä kanavamaskeista ja ideaalisista emissiospektreistä vihjeitä moisesta.

Ja siis kyllä tällaisesta systeemistä saataisiin yhteensopiva nykyisenkin kanssa. Se vain vaatisi, että sallitut sivukaistat ovat riittävän alhaisia viereisten kanavien keskiosassa, jota voitaisiin sitten käyttää nykyisen allokaation mukaisesti. Siirtymä-/suojakaistoilla maskista tulisi vängähkö, mutta mitä sitten, näin DSP-aikana?

Toiselta kantilta voidaan sitten miettiä mitä sinne häntiin työnnettäisiin. Yllämainitun koherentin lisätiedon asemesta mieleen tulisi hajakaistamoduloitu digitaalitieto joka jotenkin liittyy peruslähetykseen (jottei voida syyttää erillisestä hajakaistalähetteestä, kun se on laiton). Tyyliin, vaikkapa sivudata älykkäälle digitaaliselle monikaistakompressorille—tuollainen voisi parantaa SSB-lähetteen laatua julmasti, vaarantamatta läpinäkyvyyttä tai yhteensopivuutta analogipuolen kanssa.

Chirpit preambleina
Motivaatio

Yksi vittumaisempi juttu digimodeissa on synkronisaatio Doppler-siirtymän läsnäollessa. Digitaaliset preamblet eivät oikein sovi tuohon hommaan, koska ennen kuin ne on helppo dekoodata, bittisynkka pitäisi oikeastaan jo olla. Se taas on vaikea lukita varsinkaan alhaisella signaali–kohina-suhteella ja nopeasti, datapurskeen alussa. Niinpä kun lukkoa ei tahdo alhaisella SNR:llä saada, myöskään sitä koherenttia ilmaisutapaa joka leikkaa parhaiten kohinan ja varsinkin interferenssin läpi ei ole helppo soveltaa.

Tekniikka

Tutkapuolella ja ionosondeissa vastaava ongelma on perinteisesti ratkottu käyttämällä taajuuspyyhkäisyjä, eli chirppejä. Niillä on tavattomasti mukavia ominaisuuksia samaan aikaan. Ne ovat tavattoman helppoja tuottaa jopa analogivehkeillä. Ne sietävät erinomaisesti Doppleria, koska Doppler vain siirtää kahden identtisen chirpin maksimikorrelaatiota ajassa. Niillä on vakioverhokäyrä, eli ne sietävät hyvin epälineaarisia vahvistimia. Samaisesta syystä ne ovat ajassa hyvin levinneitä, mutta kuitenkin niiden spektri on aikarajoitettunakin osapuilleen tasainen. Tuosta seuraa että ne ovat erinomaista materiaalia ekvalisaattorien treenaukseen.

Okei, eli laitetaan preambleksi lyhyt chirppi joka kattaa koko kaistan. Nyt signaali löytyy helposti ihan vain korreloimalla vastaan vakiochirppiä. Tuleeko vastaan ongelmia? No tulee. Sen chirpin nopeus määrää kuinka paljon sen taajuus hajoaa, eli preamblesta voi tulla liian pitkä ollakseen tehokas jos se aiotaan pitää kaistan sisällä. Toisaalta samalla se joudutaan kuitenkin ikkunoimaan, eli luulisi jonkin tasapainon löytyvän ikkunoinnin ja itse chirpin aiheuttaman splatterin välillä, niin että koko kaista katetaan mutta chirpin hyödylliset korrelaatio-ominaisuudet eivät täysin katoa. Näin varsinkin jos tarkoituksena on vain aloittaa kommunikaatio ja jatkaa siitä tavallisempaan tapaan koherentin ilmaisun tuoman prosessointivahvistuksen varassa.

Toinen sitten on, että niitä chirppejä tarvitaan preambleen vähintään kaksi. Näin, koska me halutaan tosiaan pelkän ilmaisun lisäksi myös mitata symbolikello. Tuon teoriassa kai voisi tehdä sovittamalla eri pituisia versioita pohjachirpistä, vastaten eri Doppler-siirtymiä, mutta näppärämpää on laittaa kaksi chirppiä peräkkäin, jolloin niiden maksimikorrelaatioiden ero mittaa suoraan lähettäjän relatiivista aikaa. Lisäksi tuolla tavalla jälkimmäinen pulssi voi yhtäkkiä olla negatiivinenkin; protokollaa voi täydentää niin, että chirppejä voi lähettää kaksi tai useampia ja negatiivinen pulssi päättää preamblen. Toinen kiintoisa juttu on, että chirpit pulssikompressoituvat ilmaisussa tavattomasti, eli niiden ilmaisu on paljon helpompaa kuin juuri minkään muun aaltomuodon.

Ajatuksenvirtaa

Kiintoisasti tutkapuolelta löytyi sellainenkin huomio, että itse asiassa lineaariset chirpit eivät ole korkealla Dopplerilla ja isoilla kaistanleveys–aika-tuloilla optimaalisia, vaan pitää mennä hyperbolisiin. Toi oli uutta mulle, mutta tavattoman hyödyllinen tieto jos protokollan on tarkotus toimia optimaalisesti lentokoneiden kanssa. Noilla tutkaihmisillä näyttää myös olevan kiintoisia keinoja mukata chirpin spektriä—eli Fourier-muunnoksen kautta autokorrelaatiofunktiota—kajoamatta sen verhokäyrään, käyttäen epälineaarista FM:ää.

Yksi erityisen hauska ajatus on, että tällaisia preambleja käytettäisiin nimenomaan protokollaneuvotteluun ja muuhun signalointiin. Chirpeillä kun on se kiva ominaisuus, että siirrettynä taajuudessa ne edelleen ovat chirppejä, ja vaikka korreloit ne pidemmän chirpin kanssa, ne edelleen erottuvat taustasta. Tuo tarkoittaa, että SSB-modulaation jälkeenkin korrelaatio saman chirpin kanssa toimii ainakin jossakin määrin (tämä on se approksimaatio jonka takia lineaariset chirpit eivät ole Doppler-optimaalisia; Doppler on aikaskaalaus eli käänteinen taajuusskaalaus, eli vain kapeakaista-arvioitavissa SSB:nä), ja se toimii käännetyn chirpin kanssa vielä sittenkin jos luet spektrin väärältä sivukaistalta. Tuosta seuraa, että jos tarkoituksella aliasoit laajemman kaistan huomattavasti pienempään aallonleveyteen ja korreloit samaan aikaan prototyyppichirppiä (laskeva) ja sen käännettyä versiota (nouseva) vastaan, yhtäkkiä huomaat signaalin missä vain koko kaistalla. Ja jos teet tuon kahta tai useampaa keskenään keskenään jaotonta näytteistystaajuutta vastaan, yhtäkkiä kiinalainen jäännösteoreema mahdollistaa alkuperäisen signaalin löytämisen tehokkaasti. Ts. teoriassa pystyt järkevillä resursseilla vahtimaan kaikkiaQSO-pyyntöjä niin laajalta kaistalta kuin softaradiosi vain kykenee näytteistämään—nykyään kymmeniä megahertzejä, jollei yli sata. Julman tehokasta, varsinkin vaientuneilla amatööribandeilla, sekä tietysti osana ALE-tyyppisiä heikosti koordinoituja järjestelmiä, joissa vastaparin löytäminen nopeasti on ainainen ongelma.