Kontrollerin tehonsäätö Sulautetut järjestelmät ovat monesti akku- tai paristokäyttöisiä ja tällöin myös mikro-ohjaimen virrankulutuksella on suuri merkitys laitteen käytettävyydelle. Virrankulutuksella on merkitystä myös laitteen eliniän takia (mitä vähemmän lämpenee, sen pitkäikäisempi yleensä). Piirien valmistustekniikoilla on voitu pienentää tehonkulutusta. Vanhemman TTL-tekniikan rinnalle on tullut pienemmällä käyttöjännitteellä toimivia mikropiirejä. Kellotaajuuden pienetäminen CMOS-komponenteilla pienentää tehonkulutusta. Käyttöjännitteen madaltamisella voidaan transistorien eristevälejä pienentää ja pakkaustiheyttä kasvattaa. Tehonkulutuksen minimoiseksi järjestelmän kellotaajuutta voidaan säätää tarpeen mukaan. Monista piireistä löytyy sekä normaali standardiversio että low voltage -malli, jolla alempi käyttöjännite.
Kontrollerin dynaamiset tehonhallintamenetelmät Piirin arkkitehtuurillisten ratkaisujen lisäksi tehonkulutukseen voidaan vaikuttaa dynaamisesti järjestelmän sisällä. Tehonhallinta voidaan ilmaista laitteen aktiivisuutta kuvaavina tasoina. Yleensä mikrokontrollereissa on mahdollisuus ohjata piiri välillä virransäästötilaan (idle, sleep, power down, halt, ). Tavallisia tiloja ovat aktiivinen tila, jolloin ohjelmaa suoritetaan (active) lepotila, ohjelman suoritus pysähdyksissä mutta oheislaitteet toimivat (idle) pysäytystila, syvässä unessa, toiminnat pysäytetty, tila säilyy (power down) Lisäksi voi olla myös muita virransäästötiloja, joissa kontrollerin sisäisiä toimintoja pysäytellään eri tavoin. Esimerkkinä ATMega128:n virransäästötilat Idle Mode Ohjataan sleep-käskyllä ja idle-tilassa CPU on pysäytetty, mutta SPI, USART, analoginen vertailu, ADC, TWI, ajastimet/laskurit, watchdog ja keskeytykset toimivat. Tilasta voidaan herätä sekä ukoisilla että sisäisillä keskeytyksillä (esim. timerit tai sarjaportin toiminta. ADC Noise Reduction Mode CPU pysäytetty, mutta ADC, ulkoiset keskeytykset, TWI, timer/counter0 ja watchdog jatkavat normaalia toimintaa. Tilassa A/D-muunnos voidaan tehdä tarkemmalla resoluutiolla kuin normaalitilassa. Power-down Mode Ulkoinen oskillaattori on pysäytetty ja periaatteessa kaikki synkronisointia vaativat toiminnot on pysäytetty. Ulkoiset keskeytykset, TWI ja watchdog kuitenkin jatkavat toimintaansa. CPU:n herättävien keskeytysten määrä on rajoitettu ja tasokeskeytykset toimivat normaalia hitaammin. Herääminen kestää jonkin aikaa, koska mm. kello täytyy käynnistää. Power-save Mode Muuten kuten Power-down mode, mutta timer/counter0 saadaan halutessa toimimaan. Näin voidaan saada tarvittaessa aikakeskeytys käyttämällä ulkoista kidettä. Standby Mode ja Extended Standby Mode Muuten sama kuin Power-down moodi, mutta oskillaattori jatkaa toimintaansa.
Esimerkkinä ATMega128:n virransäästötilat ATMega128:n virrankulutus
Esimerkkinä Hitachi H8S/2600 sarjan tehonhallinta H8S on mahdollista myös sammuttaa oheislaitteita tarpeen mukaan MSTPCR (Module Stop Control Register) avulla. Tällöin järjestelmälle tarpeettomat toiminnot voidaan jättää käynnistämättä. Ja oheislaitteita voidaan hallita dynaamisesti ohjelmoimalla rekisteriin halutut arvot. Oheislaitteet sammutetaan yleensä katkaisemalla niiden kellosignaali. Hitachi H8S/2600: MSTPCR
Hitachi H8S/2600: MSTPCR Systeemipiirit / järjestelmäpiirit SoC (System-on- Chip)
SoC Paristokäyttöisten laitteiden ominaisuuksien parantamiseksi, laitteen koon pienentämiseksi sekä käyttöajan ja suorituskyvyn kasvattamiseksi tehdään jatkuvaa kehitystyötä. Yleiskäyttöisten suorittimien lisäksi suunnitellaan myös monimutkaisia toimintoja ja järjestelmiä sisältäviä System-on-Chip-piirejä (SoC). Systeemipiirin interointiaste on korkea ja yhdellä piirillä voi olla lähes kaikki järjestelmän toimintaan tarvittavat komponentit. SoC-piirin voidaan ajatella korvaavan koko perinteisen laitteen piirilevylle kootut IC-piirit ja komponentit. Perinteisillä suunnittelumenetelmillä ja -työkaluilla SoCpiirien suunnittelu ja testaus ei pysy hallinnassa. Puolijohdetekniikan kehittyminen ja integrointitekniikan kehittäminen on mahdollistanut monipuoliset systeemipiirit. Piiri voi olla asiakaskohtainen ASIC-piiri tai se voi olla suunniteltu jotain tiettyä sovellusta varten. Kehitystyö on kallista ja hidasta, mutta mikäli sulautettua järjestelmää varmistetaan suuria määriä, räätälöity systeemipiiri voi olla edullisin ratkaisu. Muutokset toiminnallisuuteen ovat työläitä toteuttaa ja yhdenkin lohkon muuttaminen voi olla työläs ja kallis prosessi. SoC Esimerkkinä SoC-piireistä CC2430 Norjalaisen Chipconin kehittämä radiopiiri, jolle on integroitu IEEE 802.15.4:n lisäksi 8051-ydin ja paljon oheislaitteita. Piiri on markkinoiden ensimmäinen yhden piirin ZigBee-ratkaisu. CC2430 pohjautuu pari kolme vuotta markkinoilla olleeseen CC2420- radiopiiriin. SoC-piirillä on 2420-radio-osa, jonka rinnalle on tuotu 8051-mikro-ohjain. Piiri on valmistettu 0,18 mikronin CMOS-prosessilla ja koko paketti sopii 7x7-milliseen koteloon. Uudessa versiossa 8-bittisen ohjaimen rinnalle on integroitu 128 kilotavua flashmuistia ja 8 kilotavun RAM-lohko. Muisti riittää kaikenlaisten ZigBee-laitteiden toteutukseen, oli kyse sitten isäntälaitteesta, slave-laitteesta tai verkon PANkoordinaattorista. Langattomissa anturiverkkosovelluksissa ovat laitteiden halpuus ja pieni tehonkulutus äärimmäisen tärkeitä. Chipcon lupaa CC2430-piirin maksavan volyymeissä alle neljä dollaria kappale. Myös 0,18 mikronin CMOS-prosessilla toteutetun CC2430-piirin tehonkulutus on puristettu minimiin. Virrankulutus lähetyksen ja vastaanoton aikana on noin 27 ma eli todella pieni. Yhtä tärkeää on virransäästötilojen pieni virrankulutus.
SoC CC2430 :n ominaisuksia: 8051-ydin 2.4 GHz:n IEEE 802.15.4 radio (MAC+PHY) 32, 64 tai 128 KB ohjelmoitava Flash-muisti 8 KB RAM pienikokoinen piiri 7x7 mm DMA-toiminnot 0.3 µa:n virrankulutus virransäästötilassa Käyttölämpötila -40 +85 astetta Tarvitsee vain vähän ja edullisia ulkoisia komponentteja Laaja käyttöjännitealue (2.0V 3.6V) RSSI/LQI mittaus Reaaliaikakello Kaksi ohjelmoitavaa USART-rekisteriä SPI-väylän tai UART:in toimintaan AES-128 coprocessor ZigBee ja IEEE 802.15.4:n salaukseen Pariston jännitteen mittaus ja sisäänrakennettu lämpötila-anturi ADC kahdeksalle inputille ja konfiguroitava resoluutio Kaksi USART-liitäntää Watchdog IEEE 802.15.4 MAC-ajastin, yksi 16- bittinen ja kaksi 8-bittistä ajastinta Debuggaus mahdollista 21 yleiskäyttöistä I/O-pinniä, joista kahta voidaan kuormittaa 20mA. SoC CC2430 Datasheet ja muuta informaatiota löytyy osoitteesta www.chipcon.com
Lähteitä Jari Koskinen, Mikrotietokonetekniikka Sulautetut järjestelmät, Otava Craig Steiner, The 8051/8052 Microcontroller, Universal Publishers Muhammad Ali Mazidi, Janice Gillispie Mazidi, Rolin D. McKinlay, The 8051 Microcontroller and Embedded Systems, Prentice Hall Stuart R. Ball, Embedded Microprocessor Systems: Real World Design, Elsevier. Piirinvalmistajien sivustot