技術持續演進:嵌入式產業向前行!

作者 : Mark Patrick,貿澤電子EMEA技術行銷經理

本文針對嵌入式系統開發進程及其未來如何持續演變和適應進行廣泛而全面討論...

過去30年來,嵌入式開發過程發生了很大變化。用於編碼、編譯和除錯(debugging)的軟體工具不斷發展,日益複雜和高度整合的硬體功能和產業趨勢(例如低功耗、連接性和安全性)都要求整合新工具鏈功能,例如板級支援封裝、驅動器和程式庫等。

嵌入式開發之演進

不久前,大多數嵌入式系統都沒有任何連接性,安全性也不在考量之列。這些系統目的是控制設備,例如工業鍋爐控制器或家用洗衣機等。

許多嵌入式開發人員學會了使用裸金屬(bare-metal)機器程式碼技術對微控制器(MCU)進行程式設計。使用操作程式碼進行程式設計非常耗時,令人費解且乏味。值得慶幸的是,下一步使用的組合語言(assembly language)減輕了早期開發人員負擔,並為轉向採用C等進階語言鋪平道路。

C語言最初是與1980年代初期Unix作業系統同步開發,旨在提供對記憶體資源高效、低層級存取,並映射到底層處理器機器程式碼指令,進而成為嵌入式系統自然選擇。

為了鼓勵採用其MCU和微處理器(MPU),晶片供應商開始致力於投資開發整合開發環境(IDE)工具鏈。開放生態系統概念並不存在,導致大多數開發人員建構和維護自己的程式庫和函數集。此外,每個供應商的指令集架構都是獨一無二的,他們通常會出售驅動器、程式庫和其他專有IP以配合設備使用。

時代發生了哪些改變?

嵌入式開發:如何實現

當前開始其職業生涯的嵌入式開發人員正進入一個非同尋常世界。總的來說,嵌入式開發產業是開放的。在Arm基於授權的架構問世之際,許多晶片供應商發現自己在競爭日益激烈產業中背負著促進、推廣和支援其專有架構之高昂成本。

多年來,許多領先MCU和MPU供應商減少了基於自身專有架構的產品供應,並增加了基於Arm的產品陣列。借助於Arm核心方法,晶片供應商已從Arm架構的日益普及和Arm的研發投資中受益很多。這些供應商現在透過添加周邊連接區塊、無線收發器、電源管理和類比功能等方式,使其產品與其他Arm授權商實現差異化。

隨著獨立軟體公司建立,業界轉向Arm也標誌著從供應商專有IDE之轉變。但供應商專有IDE依然存在,在某些狀況下,他們透過收購IDE新創公司可迅速提升器產品功能。

開發人員面臨越來越複雜的硬體設備和大量功能,為了減輕這些負擔,供應商現在正在投資於提供全面電路板級支援套件和軟體資源,例如可將低層級硬體功能抽象為方便且直接的進階功能調用開源庫和韌體等。

Arduino和BeagleBone以及Raspberry Pi等類似單板電腦(SBC)的推出,啟動了開源開發時代。這些開發板建構了硬體和軟體公司生態系統社區,並向創新者和學生開放了MCU開發。Linux成為許多SBC上主導作業系統,並且伴隨FreeRTOS推出,即時作業系統的廣泛採用得到實質性飛躍。

當下,嵌入式開發產業包羅萬象。為了進一步加快原型設計並縮短時間受限的開發週期,供應商提供了全面評估模組、開發板、軟體開發套件和參考設計。伴隨工業物聯網(IIoT)等確立了低功耗、電池供電連接系統等優先應用趨勢,供應商已經為處理器核心和周邊模組提供了額外睡眠模式。在快速回應應用中斷同時,使處理器的待機和活動功耗特性實現最佳平衡已成為一項關鍵開發挑戰。

低程式碼、事件驅動的腳本、Node-red等語言以及CoAP和MQTT等羽量級通訊堆疊為嵌入式開發增添了令人興奮一面。這些方法非常適於採用資源受限超低功耗MCU開發IoT/IIoT應用。

平台部署和基於雲端IDE推動嵌入式產業向前行

嵌入式產業最近經歷了一波硬體和軟體解決方案整合的發展浪潮,其中之一是Zerynth。這些系統可提供完整硬體平台和基於雲端的基礎架構方法,能夠快速配置IoT/IIoT部署。例如,對於工業自動化設備供應商而言,開發客製嵌入式系統並託管安全可靠雲端運算基礎設施是一項艱巨任務。這需要大量時間,涉及相當高成本,並且需要獲得熟練專業知識。而使用商用硬體則允許IIoT應用提供商透過軟體功能使他們特性差異化,並可整合必要資料安全和加密功能。

伴隨TI Cloud Composer和Arm mbed等許多IDE越來越多地走向線上,協作式嵌入式開發現在已經成為可能。一些基於雲端IDE還支援共用私有和公共GitHub程式碼儲存庫,這是許多開源計劃重要方面。多平台和多架構嵌入式開發平台(例如PlatformIO)能夠提供一個可行「一站式」協作替代方案,可以透過單一線上環境中完整的IDE、儲存庫、除錯器和靜態程式碼分析工具來取代傳統工具鏈。與此同時,獨立IDE和MikroE和Segger等工具供應商正在改進他們的工具,以整合RTOS並支援RISC-V等新指令集架構。

未來發展?

在COVID-19大流行期間,由於許多團隊適應了遠端工作,線上開發和協作平台的使用顯著增多。早期跡象表明,這種趨勢在可預見未來仍將持續。伴隨嵌入式開發世界變得越來越虛擬,我們很可能會看到基於雲端IDE和開發協作工具在來年包含更多功能和創新。

2020年9月,嵌入式工具供應商MikroE推出了Planet Debug服務。基於該公司的Necto Studio IDE,他們不再需要開發人員桌面上的硬體目標設備。借助於嵌入式Planet Debug,開發人員可以隨時隨地遠端進行程式設計和除錯。MikroE的遠端MikroE開發平台可在Necto Studio中使用,並且視訊源會即時顯示電路板正在發生的事件。

業界對於虛擬硬體平台採用還處於早期階段,但創新則是嵌入式開發社區之核心理念。

願這種趨勢持續下去!

加入LINE@,最新消息一手掌握!

發表評論