微控制器(MCU)廣泛應(yīng)用在各行各業(yè),如各式家電、工業(yè)自動(dòng)化,實(shí)時(shí)控制、資料采集等領(lǐng)域,為因應(yīng)工控所需的實(shí)時(shí)(Realtime)控制、快速回應(yīng)等需求,因此MCU大多搭載RTOS(實(shí)時(shí)操作系統(tǒng))運(yùn)行。隨著物聯(lián)網(wǎng)的興起,軟件業(yè)也為RTOS加入物聯(lián)網(wǎng)的成分,以提早卡位物聯(lián)網(wǎng)的核心軟件市場(chǎng)…
各種處理器專用之OS
在一般功能(General-purpose)的處理器市場(chǎng)分類中,若以功能與執(zhí)行速度來(lái)說(shuō),大致分為CPU > MPU > MCU。CPU的功能最強(qiáng),主要應(yīng)用在計(jì)算機(jī)產(chǎn)品;MPU功能次之,其應(yīng)用多元,主要應(yīng)用在嵌入式系統(tǒng)與精簡(jiǎn)型計(jì)算機(jī)等多種;而MCU則是以單一應(yīng)用為主,應(yīng)用在各式家電、電子產(chǎn)品、嵌入式產(chǎn)品、穿戴式裝置、物聯(lián)網(wǎng)(IoT)應(yīng)用產(chǎn)品等控制應(yīng)用。
MCU內(nèi)部集成了KHz~MHz級(jí)的CPU、KB~MB級(jí)的存儲(chǔ)器單元(RAM與ROM/EEPROM/Flash)、時(shí)脈產(chǎn)生器(Oscillator;Clock Generator)、與I/O擴(kuò)充單元等,可視為一種速度較慢的系統(tǒng)單芯片(SoC)。
由于內(nèi)部存儲(chǔ)器容量小,因此大型操作系統(tǒng)如Windows、Linux等是不可能塞入MCU去執(zhí)行的,且MCU大多被應(yīng)用在實(shí)時(shí)控制的環(huán)境,因此許多容量小的RTOS(Real-Time Operating System;實(shí)時(shí)操作系統(tǒng)),便成為開(kāi)發(fā)MCU軟件的主要平臺(tái)。
主打嵌入式應(yīng)用的中高階RTOS
RTOS 的種類繁多,主要設(shè)計(jì)給基于MPU或MCU的嵌入式系統(tǒng)所使用。例如MPU等級(jí)專用的有Integrity、QNX、VxWorks等功能強(qiáng)大之 RTOS;至于體積較小巧,主要支持MCU等級(jí)為主的RTOS,則有Nucleus、ThreadX、Unison OS、ucOS II/III等等。
以Green Hills Software推出的Integrity OS為例,就是一種支持MPU (甚至CPU等級(jí))為主的RTOS。其強(qiáng)項(xiàng)在于Integrity-178版本已通過(guò)EAL 6+?(信息安全)認(rèn)證與DO-178B(飛安環(huán)境) A級(jí)認(rèn)證,被應(yīng)用在極度重視安全和可靠性的市場(chǎng),例如戰(zhàn)斗機(jī)(如B-2、F-16、F-22、F-35)與民航機(jī)(如Airbus A380)等領(lǐng)域。該RTOS支持ARM、XScale、Blackfin、Freescale (已并入NXP) ColdFire、MIPS、PowerPC、AMD x86(嵌入式APU)等CPU/MPU平臺(tái)。
另一個(gè)知名的QNX RTOS,采用微核心架構(gòu),是唯一成功打入商用市場(chǎng)的OS,其強(qiáng)項(xiàng)是多媒體的實(shí)時(shí)處理能力,適用于車(機(jī))上娛樂(lè)裝置與手機(jī)等嵌入式市場(chǎng)。QNX于 2010年被BlackBerry購(gòu)并,并開(kāi)發(fā)出BB 10操作系統(tǒng)。QNX支持IA32、MIPS、PowerPC、SH-4、ARM、StrongARM、XScale等CPU/MPU平臺(tái)。
至于象是IntervalZero的RTX、RTX64,則是設(shè)計(jì)來(lái)與微軟Windows共存共容的RTOS,搭配EtherCAT協(xié)定來(lái)做為工廠自動(dòng)化的應(yīng)用。其中,Windows主要負(fù)責(zé)GUI、儲(chǔ)存、運(yùn)算,RTX則負(fù)責(zé)實(shí)時(shí)工控與資料采集,讓工控軟件開(kāi)發(fā)更容易。以上的RTOS都是MB至GB等級(jí)的 MPU等級(jí)OS,不適用于MCU的環(huán)境。
主打MCU應(yīng)用的商用RTOS
中低階 RTOS部分,主要是把軟件功能極盡精簡(jiǎn)到MB甚至KB等級(jí),使整個(gè)OS與主要應(yīng)用程序,均可以塞入MCU里的ROM/EEPROM/Flash。由于 MCU應(yīng)用的領(lǐng)域更加廣泛,其軟件必須力求更加精簡(jiǎn),因此MCU專用的RTOS大多具備非常高度模塊化的架構(gòu),從核心、驅(qū)動(dòng)程序、檔案系統(tǒng)、外圍I/O、網(wǎng)絡(luò)支持等,都可以量身訂作,以利產(chǎn)品快速上市。
商用的RTOS有些會(huì)提供原始碼給授權(quán)客戶,而開(kāi)源的RTOS則更能自由使用,讓開(kāi)發(fā)人員可以編譯出程序碼最小、最佳化的執(zhí)行環(huán)境。
由于各芯片廠所推出的MCU產(chǎn)品/開(kāi)發(fā)板,都會(huì)有其對(duì)應(yīng)的OS與IDE(集成軟件開(kāi)發(fā)環(huán)境),但這些OS與軟件開(kāi)發(fā)環(huán)境可能只適用于該廠的MCU產(chǎn)品,因此第三方軟件廠商,就開(kāi)發(fā)出跨芯片/跨硬件平臺(tái)的OS與IDE,讓開(kāi)發(fā)人員不須因?yàn)閾Q了硬件平臺(tái),軟件就必須全部改寫。
目前MCU OS/IDE市場(chǎng)占有率最高的,大多是軟件公司所推出商用RTOS(搭配各廠商的MCU產(chǎn)品),然隨著ARM推出Cortex-M、Cortex-R等指令集架構(gòu),進(jìn)軍穿戴式與物聯(lián)網(wǎng)應(yīng)用市場(chǎng),使得ARM架構(gòu)(采開(kāi)源碼)的RTOS開(kāi)始有提升的趨勢(shì)。
Mentor Graphics旗下Accelerated Technology公司所推出的Nucleus,采Microkernel設(shè)計(jì),號(hào)稱有30億個(gè)裝置導(dǎo)入,優(yōu)勢(shì)是核心長(zhǎng)度可以小至2KB,且開(kāi)發(fā)人員不需要撰寫嵌入式裝置專用BSP(開(kāi)發(fā)板支持軟件包),因此被廣泛應(yīng)用到消費(fèi)性電子、行動(dòng)裝置、車用電子、智能能源、醫(yī)療儀器、工業(yè)/工控等領(lǐng)域。
早期采用聯(lián)發(fā)科MT6217芯片的大陸山寨、白牌、雙卡2G手機(jī),就是執(zhí)行Nucleus RTOS。該RTOS支持ARM、MicroBlaze、MIPS、Nios II、Power、SuperH、XScale等嵌入式MCU架構(gòu)。
Express Logic推出的ThreadX,則是一套免收權(quán)利金的RTOS,其優(yōu)點(diǎn)是具備超快速的開(kāi)機(jī)時(shí)間、反應(yīng)時(shí)間,其Picokernel核心長(zhǎng)度低于2KB,并通過(guò)安全規(guī)范,號(hào)稱有21億個(gè)裝置導(dǎo)入使用。例如HP的旗下打印機(jī)和事務(wù)機(jī)便采用該RTOS。可廣泛支持各式32位元MCU,包含ARM、Atmel、 BlackFin、CoreFire/68K、EFM32、Freescale (NXP)、FM3、H8、XMC、M-Core、MicroBlaze、MIPS、Nios II、Power、STM32、StrongARM、Synopsys ARC、TI、Win32、x86/x386、XScale等等。
Wind River公司所推出的VxWorks,主要針對(duì)嵌入式系統(tǒng)設(shè)計(jì),采Monolithic (單體式)核心,優(yōu)勢(shì)是具備先占式多工處理核心、循環(huán)執(zhí)行、岔斷快速反應(yīng)等特性,原生支持64位元處理器架構(gòu)(x64)、可進(jìn)行平行(SMP)/非平行 (AMP)處理,累積至今有超過(guò)15億個(gè)裝置導(dǎo)入。
新版VxWorks 7則瞄準(zhǔn)IoT所需要的可擴(kuò)充性、安全性、連結(jié)性、繪圖能力、虛擬化等做強(qiáng)化,而全功能的VxWorks微核心長(zhǎng)度只要20KB。
VxWorks廣受科技業(yè)界的采用,登陸火星的Curiosity(好奇號(hào))便采用VxWorks。該RTOS支持Intel x86(包含Quark SoC與x86-64)、MIPS、PowerPC、SH-4、ARM等CPU/MPU架構(gòu)。
RoweBots公司的Unison OS,則是一款完全兼容于POSIX(可移植操作系統(tǒng)接口)的RTOS,適用于MCU、DSC、DSP、SoC、FPGA等32位元的硬件開(kāi)發(fā)環(huán)境,其好處是特別針對(duì)物聯(lián)網(wǎng)的應(yīng)用,提升其系統(tǒng)安全性,且核心程序碼在某些應(yīng)用架構(gòu)可以低到僅1KB。支持Microchip PIC32、Renesas R32C/SH2A、STSTM32、TI ARM Cortex-M3等32位元MCU。
Micrium的μc/OS-II (microcontroller OS version 2),主打可攜、能在ROM執(zhí)行、彈性、先占式多工的RTOS核心,可管理高達(dá)250個(gè)應(yīng)用任務(wù)。μc/OS-III則主打無(wú)限應(yīng)用任務(wù)、幾近于零的岔斷,并可提供原始碼給客戶。
其優(yōu)勢(shì)在于該系統(tǒng)原始碼開(kāi)放、整潔一致、注釋詳盡,亦通過(guò)FAA認(rèn)證與DO-178B認(rèn)證,適合各種嵌入式與物聯(lián)網(wǎng)的系統(tǒng)開(kāi)發(fā),核心大小從5或 6KB~24KB。至于μc/OS-III HW-RTOS,則是針對(duì)ARM Cortex-M為主的MCU做硬件加速。該RTOS可支持超過(guò)100種DSP、MPU、MCU。
ARM MCU促使開(kāi)源RTOS興起
近年來(lái)由于ARM架構(gòu)的處理器橫掃全球智能行動(dòng)裝置(手機(jī)/平板)市場(chǎng),除了搭配各MCU/MPU硬件平臺(tái)所推出的商用RTOS/IDE之外,為進(jìn)軍物聯(lián)網(wǎng)與穿戴式的MCU級(jí)應(yīng)用,ARM推出Cortex-M與Cortex-R的指令集架構(gòu),搭配開(kāi)源的OS/IDE來(lái)?yè)屨糓CU的應(yīng)用市場(chǎng)。
例如ARM推出的mbed OS與相關(guān)開(kāi)發(fā)環(huán)境,便著重于嵌入式裝置與IoT的應(yīng)用,具備連接性、高效率、安全性、生產(chǎn)力的OS,搭配其mbed-rtos函式庫(kù),亦可做為RTOS的應(yīng)用。該mbed開(kāi)發(fā)環(huán)境,可開(kāi)發(fā)出智能家庭、智慧城市、穿戴式等應(yīng)用產(chǎn)品。
此外,坊間針對(duì)ARM平臺(tái)所推出的開(kāi)源RTOS/IDE很多,例如FreeRTOS、uKOS-II、Atomthreads、BeRTOS社群版、 ChibiOS/RT、CoActionOS、eCos、Embox、Erika Enterprise/RT-Druid、Keil (ARM) RTX、Lepton、nOS、Nut/OS、NuttX、RIOT、RT-Thread、TI-RTOS-KERNEL(SYS/BIOS)、TNeo 等等,讓開(kāi)發(fā)人員有更多的選擇。
其它專用MCU的非實(shí)時(shí)OS概述
此外,也有許多針對(duì)MCU設(shè)計(jì)的開(kāi)源OS (非RTOS),但同樣具有體積小的特性,有些是針對(duì)IoT的WSN(無(wú)線感測(cè)網(wǎng)絡(luò))應(yīng)用,例如Contiki OS、TinyOS。而有些則具備一般桌上型圖形化使用接口(GUI),例如SymbOS、Wheels OS等。
Contiki OS是一套開(kāi)源的微型OS,可應(yīng)用在Atmel ARM/AVR、LPC、PIC32、TI MSP430/CC2430/2538/2630/2650、STM32W等MCU做IoT應(yīng)用,也可在博物館級(jí)的8位元計(jì)算機(jī)(Apple II、Atari、Commodore等)做上網(wǎng)聯(lián)機(jī)、甚至在骨灰級(jí)游樂(lè)器(Atari Jaguar、Game Boy/Advance、GP32、任天堂紅白機(jī)、PC Engine等)上執(zhí)行。
至于SymbOS,則是一套能在8位元Z80 CPU (如MSX、Amstrad)的古董計(jì)算機(jī)上執(zhí)行之免費(fèi)多媒體圖形操作系統(tǒng),賦予如Windows 95般的操作畫面,讓舊計(jì)算機(jī)回春。
-
微控制器
+關(guān)注
關(guān)注
48文章
7542瀏覽量
151316 -
處理器
+關(guān)注
關(guān)注
68文章
19259瀏覽量
229652 -
RTOS
+關(guān)注
關(guān)注
22文章
811瀏覽量
119595
原文標(biāo)題:麻雀雖小 五臟俱全:MCU專用RTOS簡(jiǎn)述
文章出處:【微信號(hào):weixin21ic,微信公眾號(hào):21ic電子網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論