Tidorum Oy kehittää ja toimittaa välineitä joilla
selvitetään sulautettujen ohjelmien ajan ja tilan tarvetta.
Yrityksen päätuote Bound-T soveltaa staattista ohjelma-analyysia konekooditasolla ja laskee ylärajan kohdeohjelman suoritusajalle (worst case execution time, WCET) ja pinomuistin tarpeelle. Nämä tiedot ovat arvokkaita, kun kohdeohjelman on sovittava annettuun suoritusaikaan (deadline) ja annetun kokoiseen muistiin. Tietojen avulla voi toisaalta valita sovellusta varten sopivan tehoisen suorittimen ja sopivan kokoisen muistin, mikä voi säästää sekä kustannuksia että tehonkulutusta.
Bound-T lisensoidaan suoritettavana ohjelmana (binääri) sovitettuna tietylle kohdesuorittimelle, esimerkiksi Intel-8051, ja tietylle työasemalle.
Bound-T analysoi kohdeohjelman seuraavalla tavalla. Bound-T lukee kohdeohjelman konekäskyt suoritustiedostosta (exe-tiedostosta), purkaa käskyjen koodauksen ja rakentaa kohdeohjelman vuokaaviot ja kutsukaaviot. Kullekin konekäskylle Bound-T mallintaa käskyn tarvitseman ajan suoritinjaksoissa, käskyn varaaman tai vapauttaman pinomuistin määrän, ja käskyn aritmeettisen vaikutuksen suorittimen rekisterien, tilalippujen ja muuttujien arvoihin. Aritmeettista mallia käyttäen Bound-T voi löytää kohdeohjelman silmukoiden laskurimuuttujat ja laskea rajat laskuria käyttävien silmukoiden toistomäärille. Pisimmän suorituspolun löytämiseksi Bound-T käyttää implisiittistä polkujen luettelointia (IPET) joka perustuu kokonaislukuohjelmointiin (ILP).
Suoritusajan malli ottaa huomioon liukuhihnojen (pipeline) vaikutukset. Välimuistien (cache) vaikutusta ei vielä mallinneta.
Bound-T on toteutettu Ada-ohjelmointikielellä. Välineen ydin on joukko yleisiä, kohdesuorittimesta riippumattomia moduleja (Ada-pakkauksia), jotka määrittelevät analysoitavan ohjelman mallin ja analyysialgoritmit. Mallin rakenne ja algoritmit ovat siis riippumattomia kohdesuorittimesta. Nämä ydinmodulit vuorovaikuttavat suoritinkohtaisten pakkausten kanssa, jotka käyttävät Ada-kielen voimakkaita tietotyyppejä mallintamaan tietyn kohdesuorittimen ominaisuuksia ja käskyjä. Suoritinkohtaiset pakkaukset määrittelevät ne perustyypit ja suoritinkohtaiset operaatiot, joita yleinen ohjelmamalli ja yleiset analyysialgoritmit käyttävät.
Tidorum osallistuu tällä hetkellä seuraaviin kansainvälisiin tutkimus- ja kehitysryhmiin:
Tidorum on liittymässä tähän eurooppalaiseen
COST-verkostoon (Cooperation in Science and Technology) joka yhdistää tutkimusryhmiä neljästätoista Euroopan maasta. |
Tidorum on tämän Marie-Curie IAPP projektin
(Industry-Academia Partnerships and Pathways) teollisuusjäsen. Projektia rahoittaa EU:n FP7-ohjelma. Akateeminen jäsen on Mälardalenin Yliopisto Ruotsista. Projektia johtaa prof. Björn Lisper, Mälardalen Real-Time Research Centre. |
Tidorum osallistui seuraaviin kansainvälisiin tutkimus- ja kehitysryhmiin, jotka ovat saaneet työnsä valmiiksi:
Tidorum työskenteli tämän verkoston
Timing-Analysis ryppäässä.
Ryvästä johti prof. Björn Lisper, Mälardalen Real-Time Research Centre. |
Tidorum työskenteli tämän verkoston Timing-Analysis ryppäässä. |
Tidorum Oy on vuonna 2003 perustettu yksityinen osakeyhtiö. Yritystä johtaa FT Niklas Holsti jolla on yli 25:n vuoden kokemus sulautettujen, reaaliaikaisten ohjelmien parissa, mm. satelliittien lento-ohjelmistojen alalta (katso CV).
Tidorum Oy | |
Puhelin | 040 563 9186 |
Fax | 042 563 9186 |
Sähköposti | info@tidorum.fi |
Posti |
Tiirasaarentie 32 FI-00200 Helsinki |
Käynti | Postiosoitteessa sopimuksen mukaan. |
Y-tunnus | 1868813-0 |
Pankki | Aktia Pankki Oyj Mannerheimintie 14, PL 207 00101 Helsinki puh. 010 247 5000, fax 010 247 6356 |
BIC/SWIFT | HELSFIHH |
IBAN | FI55 4055 1420 0592 91 |
TIDORUM OY/AB |