Nr. 2/2006


Artiklid
Tehissüsteemide veakindlusest

Doktorikraad on miinimumeeldus, et taotleda töökohta mis tahes Lääne juhtivas elektroonikafirmas.

Kord said maailmaruumis kokku kaks planeeti.

“Sa näed kehv välja, oled haige või?” küsib üks planeet teiselt.

“Jah”, vastab teine, “mul on üks haruldane haigus, mul on Homo Sapiens”.

“Oh, see läheb ruttu mððda,” lohutab esimene…

Quo vadis, homo sapiens

Raamatus “Naturkatastrophe Mensch” rõhutatakse, et inimese tekkimine evolutsiooniprotsessis on seadnud elu eksisteerimise Maal suurde ohtu. Kõigist elusolenditest olevat Homo sapiens kõige suurem tarbija – vajab kõige rohkem ruumi, toitu ja energiat. Ja kuna ta väga kiiresti paljuneb, kasvavad samas tempos ka vajadused ning Maast ei jätku varsti. Lähenevat ökoloogilist kriisi silmas pidades on vaid kaks võimalust: kas üldine katastroof või fundamentaalsed muutused ühiskonnas.

Viimase kümne aastaga on inimkond rohkem teadmisi produtseerinud kui kogu eelneva tsivilisatsiooni vältel kokku. Selle tulemuseks on pöörase kiirusega arenev tehismaailm, kus ühelt poolt materiaalsed artefaktid on suurendanud inimese tugevust ja kiirust, ning teiselt poolt kognitiivsed artefaktid (arvutid) on teinud teda targemaks ja kavalamaks.

Arvutite võimsus kasvab 60 protsenti aastas (Moore’i seadus), Interneti läbilaskevõime – 50 protsenti (Nielseni seadus). Aastast 1950 kuni tänaseni on arvutite võimsus kasvanud 10 miljardit korda. See on palju rohkem, kui võrrelda üleminekut dünamiidilt vesinikupommile. Kui General Motors oleks sama efektiivne olnud kui Bill Gates, sõidaksime täna 25 dollarit maksvas Hummeris. Hiilivalt pealetungiv infotehnoloogiline ubikvism (nähtamatud arvutid kõikjal ja ei kusagil – ubiquitous computing) on muutmas ulmeraamatute stsenaariumid tõelisuseks.

Kui digitaalne ökosüsteem jääks inimese kontrolli alla, siis inimese ja tehismaailma kultuuride sümbioos võikski saada kaitsekilbiks elusloodust ähvardava ohu vastu. Seda, mida inimene üksinda ei suudaks, võib-olla suudaks ta arvutite abil. Inimtegevus ja tehismaailma evolutsioon on haaratud positiivse tagasisidega. Teadmiste kasvades muutub inimene tehismaailma toel üha võimsamaks, mis omakorda võimendab teadmiste kasvu. See aga annab lootuse, et probleemid, mis seisavad inimkonna ees, on siiski lahenduvad.


Meditsiin tehismaailma jaoks?

Tehismaailm on ühtaegu meid turvav kodu kui ka ohte täis metsik dĎungel. Tänast ja veel rohkem tuleviku tehismaailma iseloomustab keerukus, mille inimene on ise loonud. Mida keerukam on süsteem, seda kindlamalt kehtib Murphy seadus: kui miski võib untsu minna, siis see ka läheb. Keerukus tähendab kasvavat rikete ja vigade võimalust juba eos nii tehissüsteemide loomisel kui ka hiljem nende kasutamisel. Elu on täis ohte, aga võrku ühendatud arvutid, mis juhivad ja kontrollivad tehismaailma, on täis veelgi suuremaid ohte: arvutirikete põhjustatud lennukatastroofid, õnnetused keemiatööstuses, tuumajaamades… Tehissüsteemide töökindlus, ohutus ja turvalisus on muutumas olulisemakski kui nende produktiivsus.

Mida rohkem intellektuaalseid funktsioone läheb inimeselt üle tehissüsteemidele ja arvutitele, seda sõltuvamaks muutub inimene süsteemide töökindlusest. Sõltuvus tehnoloogiast igapäevaelus teeb meid kergesti haavatavaks ja abituks hädaolukordades, kui tehnika tõrkuma hakkab. Harilikult märkame seda sõltuvust alles siis, kui saabub õnnetus.

Esimest arvutiviga maailmas dateeritakse aastaga 1945, kui koiliblikas sattus Harvardis arvuti Mark II kahe relee vahele.

1991. a Lahesõjas tabab Iraaki suunatud rakett USA enda raketibaasi, kuna ümardusvea tõttu arvutas kompuuter valesti raketi trajektoori. 1995. aastal plahvatab Ariane-5 juba 40 sekundit pärast starti tarkvaravea tõttu inertsiaalsüsteemis. 1996. aastal saadab Intel turule mikroprotsessori, mille jagamistehe töötab riistvara vea tõttu valesti. 1998. aastal oli USA kogukahjum arvutivigadest 11 miljardit dollarit. 43 protsenti firmadest, keda on tabanud andmekatastroof arvutisüsteemis, pankrotistub.

Möödunud sajandi keskel, eeskätt lennuki- ja raketitööstuse vajadusel, kujunes välja inseneriteadus, mida nimetatakse tehniliseks diagnostikaks. Eriti suure arenguhoo sai see teadus arvutite ilmumisel tehismaailma. Selle põhjuseks oli tehissüsteemide, st arvutite keerukuse kiire kasv. Paradoksaalne on, et keerukuse teooria loodi digitaalse tehismaailma jaoks, mis oma olemuselt on lõplik, aga mitte analoogmaailma jaoks, mille dimensiooniks on lõpmatus. Infotehnoloogias oleme lähedale jõudnud praeguste füüsikaliste piirideni, ent asume veel kaugel nendest piiridest ja võimalustest, mida võiks teha arvutitega. Takistuseks on siin inimese võimetus valitseda keerukust. Lahendada probleemi – tähendab teha keeruline lihtsaks. Arvutiteadus ongi teadus keerukusest. Programmeerida protseduuri – tähendab tõestada teoreemi, projekteerida digitaalsüsteemi – tähendab aga luua uut matemaatilist teooriat. Ent praktikas on programmeerimine enamasti katsete ja eksimuste kunst. Ka parim programmeerija ei suuda tagada programmi veatust. Tarkvara saab valmis mitte siis, kui kõik vead on parandatud, vaid alles siis, kui teda katsetades pole juba piisavalt kaua uusi vigu avastatud. Mida aga tähendab – “piisavalt kaua”?

Inimese tervisega tegeleb meditsiin, tehissüsteemide “tervist” uurivad ja “ravivad” rakendusteadused – tehniline diagnostika ning veakindel arvutamine. Üks tähendab süsteemide “meditsiinilisi uuringuid”, teine – “teraapiat”.


Transistorit valmistada on odavam kui teda testida

Submikron-tehnoloogia ning juba käivitunud investeeringud nanotehnoloogiasse elektroonikas võimaldavad inseneridel luua üha keerukamaid mikrokiipe – integraalskeeme. Arvutid ja arvutivõrgud ühesainsas kiibis on tänapäeval saanud tavapäraseks kõrgtehnoloogiliseks tooteks. Uus tungib sisse miniatuursemana, kiiremana, odavamana, see võimaldab realiseerida üha keerulisemaid funktsionaalseid võimalusi, mis eile olid veel mõeldamatud. Suureneva keerukusega aga käib kaasas üha lühenev projekteerimistsükkel, mis nõuab üha kiiremat ja paremat projekteerimistarkvara – disaini automatiseerimise vahendeid. See on tänase päeva väljakutse arvutiteadusele.

Ühe elektroonikakomponendi koostisesse kuulub täna miljoneid loogikaelemente. Nad kõik peavad tõrgeteta töötama, ehk teisiti, peab olema garantii, et rikked elementides või nende ühendustes puuduvad. Mida keerukam on süsteem, seda olulisemaks muutuvad süsteemi testimine, diagnostika ja veakindlus. Kulutused elektroonikasüsteemide testimisele ulatuvad sageli kuni 70 protsendini (!) kõikidest tootmiskuludest tööstuses. Transistorit valmistada on odavam kui teda testida. Kuidas projekteerida süsteeme nii, et nad oleksid kergemini (odavamalt) ja paremini testitavad – on uus inseneriprobleem süsteemitehnikas. Seetõttu nii süsteemide loomise tarkus kui ka testimine ja diagnostika moodustavad kompleksse valdkonna, mille tähtsus elukvaliteedi seisukohalt üha suureneb.

See on valdkond, kus suur raha liigub mitte niivõrd tootmissfääris (tootmine muutub hoopiski odavamaks), kuivõrd teenindus- ja konsultatsioonisfääris. Ekspertide teenused on siin äärmiselt kallid, ning arengutendentse silmas pidades läheb eksperte üha rohkem vaja. Osta kasvavaid konsultatsiooniteenuseid selles valdkonnas välismaalt tähendaks väga suurt koormust rahvuslikule majandusele, mistõttu riigi enda süsteemiekspertide väljaõpe konkurentsivõimelise majanduse tagamisel peaks olema riigi tähtsamaid strateegilisi ülesandeid. Niisuguse väljaõppe tagamise eelduseks on heal tasemel toimuv ülikooliõpe ning teaduslik uurimis- ja arendustöö.

Testimine ja risk

Elektroonikasüsteemide diagnostika eesmärgiks on testimise abil kindlaks teha, kas süsteem on töökorras ja kui ta pole töökorras, siis leida üles rike ning see kõrvaldada. Testimiseks kasutatakse väliseid testimisseadmeid, mis harilikult on väga kallid. Näiteks integraalskeemide testrid maksavad miljoneid dollareid. Väikesed elektroonikafirmad ei jaksagi selliseid süsteeme soetada. Niisugused hiigelinvesteeringud tasuvad ära vaid suurtootmise puhul. Samal ajal kuuluvad säärased testimissüsteemid sagedasele väljavahetamisele, sest elektroonika areneb nii kiiresti, et eilsel tehnoloogial põhinevad “aeglased” testrid pole võimelised adekvaatselt testima tänast “kiiremat” tehnoloogiat. Säärane võidujooks ja testimissüsteemide saatusest ettemääratud mahajäämus on põhjuseks, miks üha rohkem projekteeritakse elektroonikasüsteeme isetestivatena, kus testimise objekt ja subjekt on tehnoloogilises mõttes “võrdsed partnerid”.

Elektroonikaseadme testimiseks rakendatakse selle sisenditele signaalide jadasid ehk teste, mis on eelnevalt genereeritud testigeneraatorite poolt ja hoitakse testri mälus või mida genereeritakse jooksvalt (ehk on-line) spetsiaalsete süsteemi ehitatud vahendite poolt isetestimise käigus.

Testimine on kvaliteedi ja kulutuste ehk raha dilemma. Mida rohkem ja põhjalikumalt testida, seda kindlamalt saame tagada süsteemi kvaliteeti (usaldusväärsust). Aga testimine tähendab ka kulutusi. Mida rohkem testime, seda rohkem kulutame aega ja ressursse ehk kokkuvõttes raha. Samas, kui ei testiks üldse või testiks liiga vähe, siis riskiksime rikete avastamata jätmisega ja vigade avaldumisega süsteemi hilisemas töös, mis lõppkokkuvõttes tuleks trahvide ja kompensatsioonide näol kinni maksta. Hind on nii testimisel kui ka riskil, need kokku moodustavad kvaliteedi hinna. Kusagil on aga kompromiss optimaalse testi näol, nagu näitab joonisel kvaliteedi hinnakõver.


Testimise ja riski maksumuse vahekord

Kvaliteedi kõvera miinimum tähendab parimat kulutuste ja riski vahekorda. Probleem on vaid selles, et täpseid kõveraid ja parimat kompromissi kulutuste ja riski vahel on väga raske välja arvutada.

Digitaliseeruva ühiskonna sõltuvus infotehnoloogiast ning selle töökindlusest on muutnud digitaalsüsteemide disaini ja diagnostika strateegiliseks teadusvaldkonnaks igas kõrgelt arenenud riigis.

Tallinna Tehnikaülikoolis on juba pikaaegsed traditsioonid nii tudengite õpetamisel kui ka teaduslikus uurimistöös digitaalsüsteemide diagnostika valdkonnas. Töö tulemuslikkust selles uurimissuunas iseloomustavad viimase kümne aasta jooksul saadud 10 Euroopa projekti, 8 Teadusfondi granti, üle 200 publikatsiooni, üks monograafia, Eesti Vabariigi 1999. aasta teaduspreemia tehnikateaduste alal ning terve hulk teaduspreemiaid töös osalenud noorteadlastele.

Teadusuuringud TTÜ-s on olnud suunatud sellele, kuidas efektiivsemalt leida teste digitaalsüsteemidele, kuidas tagada nende usaldusväärsust ning kuidas muuta süsteeme isetestivaks ja veakindlaks.


Elevandi kaalumisest ja mikroskeemi testimisest

Tehnilise diagnostika filosoofiliseks põhiküsimuseks on: kui palju testida konkreetset süsteemi, olemaks kindel, et see on töökorras. Kuidas kindlaks teha, et test annab sajaprotsendilise garantii, et süsteem on korras? Üks võimalus oleks kasutada “terve mõistuse” loogikat: kui süsteem töötab, siis on ta ka korras. Aga kuidas kindlaks teha, et süsteem töötab?

Võtame näiteks 32-bitise summaatori. Esimeseks mõtteks summaatorit “täisgarantiiga” testida oleks läbi summeerida kõikvõimalikud liidetavate paarid, milliseid on aga kokku 2-astmes-64 = 18 446 700 000 000 000 000 ≈ 10-astmes-19. Niisuguse testi sooritamiseks kuluks ühe gigahertsise liitmissageduse juures kolm sajandit (!). Paradoksaalne on veel see, et summaatorist palju keerulisemat seadet – mikroprotsessorit testitakse praktikas tootmisprotsessi lõpufaasis vaid umbes 10 sekundit. Kuidas on võimalik nii palju lühendada testi, ilma et vigase toote turulesaatmise risk liiga suur ei oleks?

Eduka vallutaja juhtmotiiviks on ikka olnud: jaga ja valitse. Suure ja keerulise ülesande lõhuvad ka insenerid kõigepealt tükkideks ja vaatavad siis, mida tükkidega peale hakata. Kuidas kaaluda elevanti, kui kaalunäit juba 100 kilo puhul põhja läheb? Suur tükk ajab suu lõhki. Aga elevant aetakse paati, vaadatakse, kui sügavale paat vajub, siis laotakse samasse paati kive, kuni paat sama sügavale vajub kui koos elevandiga. Lõpuks kaalutakse kivid üksikult ära.

Summaatoriga on sama lugu. Kui 32bitise summaatori “sisse” vaadata, siis leiame, et see koosneb umbes paarisajast omavahel ühendatud loogikaelemendist. Ühe loogikaelemendi eraldi testimiseks läheb vaja ainult kolme elementaartesti (ehk testvektorit), seega 200 elemendi ehk kogu summaatori testimiseks on tegelikult vaja vaid 600 testvektorit (1019 asemel). Tehnikaülikoolis õpetatakse aga sedagi, kuidas 600 testvektori asemel saaks summaatori testimisega hakkama ka ainult kaheksat arvupaari liites.

Suvalistele elektroonikaskeemidele sünteesivad teste testigeneraatorid. Need on arvutiprogrammid, mis analüüsivad elektronskeemi (õigemini, tema matemaatilist mudelit), määravad kindlaks skeemis esineda võivad rikked – lühised ja katkestused – ning seejärel sünteesivad iga rikke jaoks signaalide jada, mille rakendamisel skeemi sisenditele nimetatud rike avastataks. Kui skeem koosneks mõnest tuhandest elemendist, siis sünteesiksid parimad generaatorid testi mõne minutiga. Mõnekümne tuhande elemendi puhul võib kuluda juba tunde, kuid edasi kasvava keerukuse puhul suureneks vajalik aeg juba eksponentsiaalselt. Reaalsed digitaalsüsteemid koosnevad aga miljonitest elementidest. Kuidas sel juhul genereerida teste, jäädes realistliku aja piiridesse?

Ikka samal põhimõttel: jaga ja valitse. Arvuteid ei pea käsitlema loogikaelementide tasemel. Arvutid koosnevad summaatoritest, registritest ja paljudest muudest suurematest plokkidest. Niisuguseid plokke üksikult võib vabalt taas vaadelda “madalamal” loogikaelementide tasandil, nagu seda tegime summaatori puhul. Niisugust lähenemist nimetatakse hierarhiliseks ja selline lähenemine aitab võidelda keerukuse probleemiga tänaste elektroonikasüsteemide testimisel.

Kohe tulevad aga uued probleemid. Selgub, et vaadeldud loogikaelementide tasand pole üldsegi piisavalt täpne käsitlemaks reaalseid füüsikalisi defekte transistorites submikroelektroonika ehk nanotehnoloogia kasutamisel. Aga asendades analüüsi eesmärgil loogikaskeemid detailsemate transistorskeemidega, sattuksime uuesti keerukuse umbteele. Eks siingi peaks põhimõtteliselt aitama hierarhiline mõtlemisviis, aga probleeme on nüüd juba rohkem.

Hierarhiline lähenemisviis tähendab seda, et osa süsteemi analüüsist viiakse läbi komponentide tasemel, mis on vähem keerukad, ning mis seetõttu võimaldavad töötada madalamatel ja detailsematel (isegi transistorite) tasanditel. Nii õnnestuks adekvaatselt käsitleda füüsikalisi defekte ja leida tingimusi, kuidas nende mõjusid ka kõrgematel tasanditel jälgida saaks. Defektidest tingitud veasignaalide analüüs saaks seejärel toimuda juba pealiskaudsemaid kõrgtasandi mudeleid kasutades.

Keerukate süsteemide diagnostikaprobleemide mõistmiseks ning nende lahendamiseks tuleb tunda süsteemide eri tasanditel töötavaid matemaatilisi teooriaid, mudeleid ja meetodeid.


Turbo-testri saamislugu

Infotehnoloogia tormiline areng tähendab ühelt poolt diagnostika probleemide keerukuse kasvu, aga teiselt poolt vajadust neid probleeme kiiremini ja pare-mini lahendada. See uurimisvaldkond, kus pidevalt otsitakse uusi meetodeid, algoritme ja tarkvara, mis oleksid kiiremad, täpsemad ja paremad, sarnaneb oma võistluslikkuse poolest paljuski spordiga, kus edukas kaasarääkimine nõuab suurt energiapanust ja peaaegu jäägitut pühendumist.

Digitaalskeemide diagnostika on huvitav ja eksootiline insenerivaldkond. Aastaid tagasi organiseerisime TTÜ arvutitehnika instituudi juures diagnostikaringi, kus nooremate kursuste programmeerimisest huvitatud tudengid hakkasid põnevate diagnostikaülesannete lahendamise automatiseerimiseks tarkvara looma. Asja tegi huvitavamaks see, et instituudi teadurid olid avastanud uudse matemaatilise meetodi testide sünteesi kiirendamiseks, mistõttu tudengite programme sai kasutada meetodi katsetamiseks ning publikatsioonide autorite rivvi astusid kõrvuti õppejõududega ka üliõpilased. Viimaste tööpanust sai premeeritud Eesti Teadusfondi grantide vahenditest. Probleemid, mida uuriti ja lahendati, olid komplekssed ja tuli luua terve hulk uusi programme ehk “tööriistu”, kuni ühel hetkel kvantiteedist sai kvaliteet. Teiste sõnadega – oli tekkinud uus terviklik diagnostika tarkvarasüsteem, millele tudengid ise ka nime välja mõtlesid – Turbo-Tester.

Turbo-Testriga saab automaatselt teste genereerida digitaalskeemidele, kus loogikaelementide arv võib ulatuda kümnetesse tuhandetesse. Me võrdlesime Turbo-Testrit ühe tööstusliku testigeneraatoriga, mille litsents maksab miljoneid kroone. Too generaator sünteesis testid ühele 40 000-st elemendist koosnevale skeemile 80 sekundiga. Lasime Turbo-Testril töötada sellesama skeemiga samuti 80 sekundit, mille jooksul ta suutis sünteesida testid 99,99 protsendile riketele. Tekkis küsimus, kas oleks ikka otstarbekas maksta nii palju miljoneid selle puudu jäänud sajandiku protsendi eest. Ühel elektroonika väikefirmal oleks ilmselt keeruline investeerida nii suurt summat, samal ajal kui tasuta on saadaval praktiliselt sama efektiivne vabatarkvara. Praegusel hetkel kasutatakse Interneti kaudu vabalt allalaetavat Turbo-Testrit rohkem kui 90 instituudis ja ülikoolis umbes 30 riigis üle maailma. Kord saabus näiteks elektronkiri Indoneesiast. Tuli välja, et keegi Hollandi professor õpetas indoneeslastele Turbo-Testri abil diagnostikat, aga tekkis üks ootamatu probleem, mille lahendamiseks palus ta Interneti teel abi Turbo-Testri autoritelt.

Turbo-Tester ei lahenda ära muidugi tervet probleemi – näiteks testprogrammide sünteesi ühele suurele digitaalsüsteemile – tervele arvutile. Küll aga saab teda hästi kasutada üksikutele plokkidele testide genereerimiseks. Teda saab näiteks kasutada ka isetestivate süsteemide testimiskvaliteedi kindlakstegemiseks. Praegu on Turbo-Testrist ja selle edasiarendamisest väga huvitatud fir-mad Ericsson AB ja SAAB Rootsis.

Niisugust tööstuslikku tarkvara, mis sünteesiks automaatselt testprogramme tervetele süsteemidele, näiteks arvutitele, tänapäeval veel ei eksisteeri. Samal ajal ülikoolide laborites sellelaadsete probleemidega tegeldakse ja saadud tulemustega võisteldakse teaduskonverentsidel. Ka tehnikaülikoolis on loodud üks teine süsteem – DECIDER, mis võimaldab testprogramme genereerida automaatselt juba keerulisematele süsteemidele.


Maailm on lapik

Maa võib olla ikka lapik küll. Kõik on ju mudeli ja mõtlemise mugavuse küsimus. Oleks ikka narr ka, kui peaks maakera kumerust näiteks maamõõtja töös arvestama. Ehkki, teisest küljest, “keerulisemad” arvutused võiksid selle ameti veelgi tulusamaks muuta. Nii et kellele on maa lapik ja kellele kera…

Münchenis peeti mõned aastad tagasi maailma ühte esinduslikumat elektroonika disaini konverentsi – Design Automation and Test in Europe. Märkimisväärse 14. koha maailma suurriikide seas (napilt Rootsi ja India järel) päris Eesti tervelt kahe ettekandega, mille mõlema autoriteks olid TTÜ tolleaegne doktorant Jaan Raik ja allakirjutanu. Kõigi teiste Ida-ja Kesk-Euroopa “arengumaade” peale kokku pääses sellele konverentsile vaid üksainus ettekanne. Imestada siin ei maksa, sest elektroonika on kõrgtehnoloogia, ja konkurentsivõimelist teadust saab siin üldjuhul teha vaid nendes maades, kus see tehnoloogia tööstuse näol olemas on. Vahel harva tuleb ette küll ka erandeid.

Sellele konverentsile valitakse harilikult vaid üks ettekanne viiest. Igat ettekannet analüüsib 7–8 retsensenti. Et niisuguse konkursiga foorumile pääseda, peab üldjuhul millegagi üllatama või ‰okeerima. Eestlased üllatasidki konverentsipublikut oma hierarhilise testide generaatoriga DECIDER, mis töötab kaks suurusjärku (!) kiiremini kui teised analoogilised generaatorid. Kuidas selline ime juhtuda sai?

Inseneritöös on kasutusel nii täpsed kui ka ligikaudsed meetodid. Täpsetel on harilikult kaks halba omadust – nad on keerukad ehk “aeglased” ja kallid. Kuid nad võluvad oma täpsusega. Makstes lõivu üldisusele, õnnestus eestlastel luua meetod, mis fantastilise kiiruse juures säilitab ka suure täpsuse. Lõivu maksmine seisnes selles, et meetod on täpne vaid teatud tingimustel, seega siis – mitte alati. Atraktiivseks aga tegi meetodi see, et need “teatud tingimused” vastavad küllaltki laiale praktilisele kasutusalale, mida õnnestus ka eksperimentidega tõestada.

Teisiti öeldes, ettekande autorid võtsid nõuks kuulutada, et maa on siiski lapik ehk joonlaud kõlbab küll kerale joonistatud ruutude pindala mõõtmiseks. Mida suurem on aga kera, seda parem muidugi…

Kommertsmaailmas puudub DECIDER-i taoline hierarhiline testigeneraator, mis suudaks automaatselt testprogramme genereerida keerulisematele digitaalsüsteemidele. Probleemiks on hierarhiliste testigeneraatorite kasutamise keerukus. Aga probleemid on ju lahendamiseks ja uurimisgrupi start oli edukas.


Koostöö sünergiast

Projektirahasid teadusuuringute jaoks taotledes nähakse enamasti peamise eesmärgina just raha, mitte aga koostööd. See torkab eriti silma Eesti Teadusfondi puhul, kus konkurentideks on reeglina “üksiküritajad” – üksikud laborid või uurimisrühmad, mitte aga suuremad, mitmest laborist või asutusest koosnevad konsortsiumid. Euroopa programmides seevastu finantseeritakse ainult ühisprojekte, ootuses, et eri partnerite kompetentsuste liitmisel saadav tulemus on suurem kui “liidetavate summa”.

Tänapäeva teadus areneb piirialadel. Üksikud laborid töötavad süvitsi. Kuid sügavused on enamasti juba läbi uuritud ja sealt enam palju välja ei ime. Seepärast ongi mõned filosoofid hakanud ennustama “teaduse lõppu”, väites, et näiteks füüsika on saavutanud taseme, kus uute teadmiste majanduslik efekt ei suuda enam katta nende teadmiste saamiseks vajaminevaid üha suurenevaid kulutusi. Niisuguse olukorraga polevat ühiskond enam nõus ja teadus tahetakse ilma jätta rahadest. Lahenduseks oleks minna sügavustest piirialadele ja minna koos, igaüks oma august välja. Väljapääs oleks koostöös. Tuleks isegi unustada hetkeline kasumiunelm ja investeerida lihtsalt koostöösse.

TTÜ arvutitehnika instituudil on palju rahvusvahelisi koostööpartnereid. Osa kontakte realiseerub n-ö ametlikult mõne ühisprojekti raames, osa uurimistööd toimub aga mitteformaalselt, isiklikul tasemel Interneti kaudu. Ühel konverentsil vestlesime Wieslawiga Poolast elektroonskeemide defektide füüsikalisest taustast. Ja äkki välgatas idee – jõud kokku panna. Osutus, et poolakad oskavad hästi analüüsida defektide toimet füüsikalisel tasandil. Nii tekkiski mõte teisendada poolakate füüsikaline teave defektidest loogika keelde loogikaelementide tasandile, ning “õpetada” Turbo-Testrit seda teavet kasutama testide sünteesiks. Tulemuseks saaksime palju täpsemad ja adekvaatsemad testid, kui Turbo-Tester ja kõik teised temasarnased loogika tasandi testigeneraatorid seda on seni suutnud pakkuda. Veelgi enam, selline reaalsetele defektidele põhinev testigeneraator puudub seni maailmas üldse. Põhjuseks on keerukus – potentsiaalsete defektide arv terves süsteemis on liiga suur. Meie idee seisnes aga selles, et viia defektide analüüs läbi mitte tervele skeemile, vaid ainult skeemis kasutatavate komponentide tüüpidele. Edasi teisendada saadud informatsioon loogikatasandile, kus mudeli keerukus on juba järsult kahanenud.

Töö ei võtnud siiski kohe vedu, ei leidunud tudengit, kes oleks härjal sarvist haaranud ja vastavat programmi asunud kirjutama. Kiire raha teenimise võimalus IT-turul ahvatles rohkem. Oli hea võimalus astuda läbi avatud ukse teadusse, aga polnud astujat... Siis aga, justkui saatuse juhituna ilmus meie laborisse magistritööd tegema Joachim Saksamaalt, kes just sellist uurimistemaatikat otsis. Huvi oli tal tekkinud Eesti professori külalisloengut kuulates. Poole aasta pärast oli generaator valmis, sellega katsetamine andis lausa hämmastavaid tulemusi. Traditsiooniliselt mõõdetakse testide kvaliteeti loogikarikete avastamise protsendina ja üldse mitte füüsikalisi defekte silmas pidades. Viimaseid on keerulisem loendada. Meil õnnestus näidata, et traditsiooniliste sajaprotsendiliste loogikatestide kvaliteet langes korrapealt 80 protsendile, kui kvaliteeti mõõta füüsikaliste defektide suhtes. Samas õnnestus aga uue tööriistaga kohe ka näidata, et pole hullu – suur osa defektidest on liiased ehk mitteolulised ja testide tegelik kvaliteet ka defektide suhtes on küllalt hea, antud juhul umbes 98 protsenti. Kogu puänt oli selles, et uue tööriistata poleks seda “head uudist” tulnud ja see 80 protsenti oleks painama jäänud. Uus tööriist võimaldas nüüd teste otse defektide arvestuses genereerida ja ka see õige 100 protsenti lõpuks kätte saada. Nimetatud tulemus kanti ette pool aastat tagasi Tallinnas korraldatud ülemaailmsel konverentsil. See tekitas kuulajate hulgas väga suurt huvi ja diskussiooni.

Innustatuna probleemist projekteerisime koos poolakatega spetsiaalse mitusadat defekti sisaldava mikrokiibi, et uurida defektide füüsikalist “käitumist” reaalses keskkonnas. Umbes 50 Euroopa ülikooli on tellinud seda kiipi, et kasutada tudengite õpetamisel laboratooriumides.


Kokkuvõtteks

Tallinna Tehnikaülikooli arvutitehnika instituudis käib täna väga intensiivne rahvusvaheline koostöö digitaalsüsteemide disaini ja diagnostika alal. Viimase kolme aasta jooksul on publitseeritud umbes 50 ühisartiklit 35 teadlasega 11-st riigist. Laboratoorium on rikkalikult varustatud eritarkvaraga, millest suur osa on uuringute käigus kraaditudengite endi loodud. Üliõpilasi juhendavad koos allakirjutanuga veel professor Peeter Ellervee, noored doktorid Jaan Raik, Artur Jutman, pärast edukat doktoritöö kaitsmist Rootsist koju tagasi saabunud Gert Jervan ja teised.

Kuumaks uurimisprobleemiks on praegu süsteemide isetestimine, kus püütakse maksimaalselt ära kasutada süsteemi enda põhifunktsioone, ja kus peamiseks probleemiks on projekteerida süsteemi nii, et isetestimine vajaliku kvaliteedi tagaks. Isetestivaid struktuure saab modelleerida korduvprogrammeeritavat loogikat kasutades, kus eesmärgiks on tarkvaralisi lahendusi realiseerida riistvaras. Senised eksperimendid on näidanud efektiivsuse kasvu tervelt mitu suurusjärku. See on väga põnev valdkond. Aktiivselt on töösse haaratud tudengid, nende kursusetöödeks on eksperimentaaluuringud, sellega on nad juba varakult kaasatud olulisse teaduslik-praktilisse tegevusse. Töö käigus õpivad nad süsteeme projekteerima ja selleks vastavat tööstuslikku eritarkvara kasutama. Seejärel õpivad tudengid omaenda loodud süsteeme testima ja diagnoosima. Niisuguste oskustega on iga diplomeeritud insener otsitud tööjõud suvalises elektroonikat projekteerivas firmas kogu maailmas. Parimad tudengitest jätkavad kraadiõppuritena, neil on võimalus käia praktikal meie välispartnerite juures ja osaleda rahvusvahelises uurimistöös.

Täna on nii, et doktorikraad on miinimumeeldus selleks, et taotleda töökohta mis tahes Lääne juhtivas elektroonikafirmas, mis tegeleb tehnoloogia arendusega. Eesti Teadusfondi tegevuses on olnud hea põhimõte stimuleerida grantide kaudu stipendiumidega doktorante, kes osalevad edukates grandiprojektides.


RAIMUND-JOHANNES UBAR (1941) on lõpetanud Tallinna Tehnikaülikooli automaatika erialal 1966. Tehnikakandidaat 1971, tehnikadoktor 1986. 1993. aastast Eesti Teaduste Akadeemia liige. Alates 1971 Tallinna Tehnikaülikooli assistent, vanemõpetaja, dotsent, professor (1987), arvutitehnika kateedri juhataja, elektroonika kompetentsuskeskuse asutaja ja juhataja. IEEE, ACM, SIGDA, IEEE Golden Core (USA-s), Saksamaa informaatikaseltsi, Euroopa Testitehnoloogia Komitee, EAEEIE Nõukogu liige. 1993–1996 Eesti Vabariigi Presidendi Akadeemilise Nõukogu ning Eesti Teadus- ja Arendusnõukogu liige. 1993–1996 Eesti Teadusfondi tehnikateaduste ekspertkomisjoni ja Teadusfondi nõukogu esimees. Saanud Eesti Vabariigi teaduspreemia tehnikateaduste alal 1999 ja Valgetähe III klassi teenetemärgi 2002.



Raimund-Johannes Ubar