STMicroelectronicsin suositun STM32-ohjainperheen parissa työskentelyyn tarjotut uudet resurssit ovat mielenkiintoisia. Erityisen kiintoisa on mahdollisuus integroida Microsoftin reaaliaikainen Azure RTOS - käyttöjärjestelmä kirjastoineen STM32-kehitysalustaan.
Sulautettuihin järjestelmiin tarkoitettujen mikro-ohjainten parissa työskenteleville kehitys- resursseista ja kirjastoista on tullut selkeästi erittäin tärkeä osa itse ohjainpiirien tarjontaa. Monille kehittäjille nämä resurssit ovat yhtä tärkeitä kuin sovelluksissa käytettävien mikro-ohjainten ominaisuudet ja hinnat. Mikä on tilanne omalla kohdallasi?
Tämä pätee myös suosittuun STM32-mikro-ohjainperheeseen, joka tuli markkinoille vuonna 2007. STMicroelectronics halusi alusta lähtien tuoda yleiskäyttöisen ohjainperheen kehittäjien, bittinikkarien ja opiskelijoiden laajaan käyttöön. Tätä varten tarvitaan luonnollisesti myös edistyneitä ja vapaasti saatavilla olevia kehitystyökaluja (koodi- editori, C-kääntäjä, virheen- korjain) sekä kirjastoja, sovellusesimerkkejä ja kehityskortteja. Kaikki, jotka ovat käyneet läpi STM32-kehityksen alusta lähtien, tietävät, että näiden tuotteiden tarjonta ei alkuvaiheessa ollut yhtä monipuolista ja helposti käyttäjien saatavilla kuin nykyään.
Tästä huolimatta STMicroelectronics jatkaa edelleen investointejaan laajentaakseen tärkeää tarjontaa kehittäjille. Hyvä osoitus tästä on Microsoftin kanssa viime vuonna aloitettu yhteistyö, joka tuo tarjolle erittäin mielenkiintoisen joukon reaaliaikaisia käyttöjärjestelmiä (RTOS) ja kirjastoja Azure RTOS -paketin muodossa.
Yksinkertaisesti ilmaistuna Microsoft on tehnyt yhteistyötä STMicroelectronicsin kanssa varmistaakseen, että Azure RTOS hyödyntää tehokkaasti STM32- mikro-ohjaimia, minkä ansiosta suunnittelijat voivat nopeasti aloittaa projektiensa kehitystyön käyttämällä ThreadX RTOS - käyttöjärjestelmää ja lukuisia muita Azure RTOS -komponentteja (USBX, NEXT Duo, FileX, LevelX jne).
STM32 säilyy luonnollisesti edelleen avoimena alustana myös muille RTOS-käyttöjärjestelmille. Tämä tarkoittaa, että ne kehittäjät, jotka haluavat käyttää FreeRTOS-, Zephyr- tai mitä tahansa muuta RTOS-järjestelmää sulautetuissa sovelluksissaan, voivat edelleen tehdä niin. Yhteistyössä Microsoftin kanssa on kuitenkin mahdollista parantaa nykyisiä ratkaisuja ja tarjota kattava valikoima ohjelmistokomponentteja, joiden avulla voidaan nopeasti sisällyttää haluttuja ominaisuuksia järjestelmiin ja mikä tärkeintä, täyttää näin erilaisten sertifikaattien asettamat vaatimukset.
MITÄ AZURE RTOS TUO STM32-KEHITYKSEEN?
Azure RTOS on ainoa sulautetuille järjestelmille suunnattu ilmainen käyttöjärjestelmä, jolla on useita sertifikaatteja sekä turvallisuuden (IEC 61508 SIL 4, ISO 26262 ASIL D, IEC 62304 Medical Class C) että tietoturvan (EAL4+, FIPS 140-2) alueilta. Käyttäjät, jotka haluavat edetä esimerkiksi teollisuuden, autonvalmistuksen tai lääketieteen markkinoille tai muille uusille alueille, voivat kääntyä ST-kumppanuusohjelman jäseneksi liittyneen Micro- softin puoleen saadakseen nämä standardit käyttöön ja tarjotakseen asiakkailleen aiempaa laajemmat takuut.
STMicroelectronics jatkaa yhteistyötä Microsoftin kanssa varmistaakseen, että Azure RTOS hyödyntää parhaalla mahdollisella tavalla STM32-perheen mikro- ohjainten tärkeimpiä resursseja kuten laitepohjaista salausydintä.
Toinen huomioitava seikka on, että siirtyminen suunnittelukonseptista lopputuotteeseen voi olla hyvin monimutkainen tehtävä. Tästä syystä markkinoille tuomi- sen nopeuttamiseksi kaikki STM32-mikro-ohjaimet saavat Azure RTOSin vapaat käyttö- ja tuotantolisenssit.
STMicroelectronicsin ja Microsoftin välisen yhteistyön ansiosta kehittäjät voivat muokata Azure RTOS -pohjaista lähdekoodia ja jakaa sen uudelleen järjestelmiinsä. Tämän lisäksi STMicroelectronics päivittää ja julkaisee myös uusia integroituja ohjelmistopaketteja ja työkaluja STM32Cube-kehitysalustalle Azure RTOS -ympäristön hyödyntämiseksi.
MITÄ AZURE RTOS TUO STM32CUBEEN?
Azure RTOS:n ytimenä on ThreadX RTOS, joka erottuu muun muassa tehokkaiden ajoitusominaisuuksiensa ansi- osta. Microsoft esittää artikkelissa ’Preemption-Threshold Scheduling’, kuinka RTOS perinteisesti mahdollistaa minkä tahansa korkeamman prioriteetin säikeen ennakoinnin, mikä tarkoittaa tehtävän haltuunottoa käynnissä olevalta alemman prioriteetin säikeeltä.
ThreadX tarjoaa kuitenkin paljon enemmän hienojakoisuutta ja antaa kehittäjille mahdollisuuden asettaa kynnysarvoja, jotta voidaan välttää ennakointeja ja vähentää kontekstin vaihtamista, mikä optimoi merkittävästi järjestelmän suorituskykyä. Lisäksi se tarjoaa tapahtumien ketjutuksen, joka mahdollistaa määrätyn toiminnon suorituksen, kun tapahtuma ilmenee. Tämän ansiosta tapahtumaa odottavat säikeet voivat aloittaa käsittelyn automaattisesti, mikä helpottaa kehitystyötä ja vähentää tarvittavia resursseja.
Koska Azure RTOS on osa STM32Cubea, käyttäjät voivat helpommin hyödyntää Azure RTOS:n etuja samalla, kun voivat nauttia STMCube-kehitysalustan parhaasta mahdollisesta tarjonnasta. Azure RTOS:n mukana toimitetaan myös tiedosto- järjestelmä FileX, joka tarjoaa kehittyneitä NAND- ja NOR - flash-muistiominaisuuksia kuten vikasietoisuus ja kulumisen tasoitus (wear leveling).
NetX ja NetX Duo puolestaan ovat tiedonsiirtopinoja, jotka tarjoavat tuen TCP/IP-, IPv4- ja IPv6-protokollille ja lisäksi monille IoT-sovelluksissa käytettäville korkean tason protokollille (esim. MQTT tai COAP). Mukana on myös USBX, jonka avulla on helppo käyttää USB-liitäntöjä joko isäntänä tai laitteena täydellä tuella kaikille USB-versioille. Ensimmäinen tarjolle tuotu paketti on nyt saatavissa STM32H7-sarjaan: X-CUBE- AZRTOS-H7 [6]. Muut STM32- sarjat seuraavat tänä ja ensi vuonna.
MIKÄ SÄILYY ENNALLAAN?
STMicroelectronicsin tarjoama tekninen tuki säilyy ennallaan asiakkaille, jotka ovat STM32:n, STM32Cuben tai Azure RTOS:n käyttäjiä. Koska STMicroelectronics on jo pitkään tarjonnut korkealuokkaista TouchGFX- alustaa [7] GUI-käyttöliittymien toteuttamiseen, Azure RTOS:n GUIX-komponenttia ei tueta suoraan STM32Cubessa. Asiakkaat voivat olla varmoja, että STMicroelectronicsin investoinnit nykyisiin STM32- työkaluihin ja -ratkaisuihin jatkuvat. Samoin STMicroelectronics tukee, käyttää ja kehittää edelleen STM32CubeMonitor- valvontatyökalua, jota suositellaan Microsoftin TraceX-työkalun sijaan.
Tämä STMicroelectronicsin ja Microsoftin yhteinen hanke on varmasti erittäin hyödyllinen kaikille sulautettujen järjestelmien suunnittelijoille, kehittäjille ja sovellushankkeiden johtajille, jotka saavat enemmän vaihto- ehtoja tarvittavien ominaisuuksien toteuttamiseen menettämättä ennestään tuttuja työkaluja ja kehitysympäristöä.
Lue white paper ’Preemption-Threshold Scheduling’ täällä.
Artikkeli on luettavissa uudesta ETNdigi-lehdestä täällä.