嵌入式系統(tǒng)向來是軟件驅(qū)動的。幾十年來,工程師一直借助軟件來打造產(chǎn)品差異化、提升性能,并在固定硬件的基礎(chǔ)上擴(kuò)展更多功能。改變的不是想法本身,而是規(guī)模與復(fù)雜性。
如今,軟件提供的功能比以往任何時候都更加豐富。功能、性能調(diào)優(yōu)、連接性、安全行為以及生命周期管理,越來越多地通過軟件更新而非硬件重新設(shè)計(jì)來實(shí)現(xiàn)。這種趨勢通常被稱為“軟件定義一切”(Software-Defined Everything, SDx)。
軟件定義車輛(SDV)已廣為人知。但同樣的模式,如今在工業(yè)自動化、物聯(lián)網(wǎng)、能源系統(tǒng)以及醫(yī)療技術(shù)領(lǐng)域也日益顯現(xiàn)。
對于嵌入式團(tuán)隊(duì)而言,這并非與過去的徹底決裂。四十多年來,IAR一直助力企業(yè)開發(fā)嵌入式軟件,許多基本原則依然適用。真正改變的是:
系統(tǒng)之間更加緊密地互聯(lián)
在長生命周期內(nèi),更新需求急劇增加
安全性(Security)要求更高
軟件必須在部署后安全地(Safely)演進(jìn)
因此,軟件如今承擔(dān)著更多的責(zé)任與風(fēng)險。
盡管軟件的角色愈發(fā)重要,但嵌入式系統(tǒng)仍然是資源受限、實(shí)時,且往往是功能安全(Safety)或信息安全(Security)關(guān)鍵型的系統(tǒng)。這意味著僅有靈活性遠(yuǎn)遠(yuǎn)不夠??煽匦?、可預(yù)測性和長期穩(wěn)定性,比以往任何時候都更加關(guān)鍵。
正是在這樣的背景下,“軟件定義一切(SDx)”才真正與嵌入式系統(tǒng)產(chǎn)生關(guān)聯(lián)——它不是一個流行詞,而是一個必須審慎應(yīng)對的現(xiàn)實(shí)挑戰(zhàn)。
01SDx在嵌入式環(huán)境中的含義
在嵌入式系統(tǒng)中,SDx并不意味著將硬件從等式中移除。相反,它指的是將系統(tǒng)功能與具體硬件實(shí)現(xiàn)解耦,使產(chǎn)品在其生命周期內(nèi)主要通過軟件來演進(jìn)。
嵌入式系統(tǒng)中的SDx建立在幾個關(guān)鍵原則之上。
軟件層對系統(tǒng)功能和數(shù)據(jù)流進(jìn)行抽象,而不是直接暴露原始硬件資源(如特定外設(shè)或接口)。這種抽象使得應(yīng)用軟件能夠描述系統(tǒng)“應(yīng)該做什么”以及數(shù)據(jù)“應(yīng)該如何處理”,而不必與數(shù)據(jù)的獲取、傳輸或生成方式緊密耦合。因此,開發(fā)人員可以專注于應(yīng)用行為和系統(tǒng)意圖,而非底層實(shí)現(xiàn)細(xì)節(jié),同時仍能滿足嚴(yán)格的實(shí)時性、性能和可靠性要求。
應(yīng)用邏輯與實(shí)現(xiàn)細(xì)節(jié)之間的這種分離,也是長壽命系統(tǒng)在復(fù)雜性增加時仍能保持可管理性的原因。當(dāng)軟件圍繞穩(wěn)定的系統(tǒng)行為而非硬件細(xì)節(jié)來構(gòu)建時,演進(jìn)就變得可控,而非脆弱。
可移植性自然也源于這種方法。當(dāng)軟件的設(shè)計(jì)壽命超過一代處理器或設(shè)備時,團(tuán)隊(duì)就能抵御供應(yīng)鏈中斷,減少對特定供應(yīng)商的依賴。在實(shí)踐中,這意味著軟件架構(gòu)可以在處理器或平臺變更時繼續(xù)沿用,無需重寫,從而在硬件遷移過程中保留工程投入和經(jīng)過驗(yàn)證的系統(tǒng)行為。
02SDx如何改變嵌入式行業(yè)
1. 軟件定義汽車(SDV)
在汽車系統(tǒng)中,SDV已成為一個決定性概念。汽車的差異化越來越多地來自軟件:駕駛輔助、連接性、用戶體驗(yàn)以及售后功能激活。
同時,SDV依賴于深度嵌入的控制器,這些控制器必須在十多年里保持確定性、安全性和可預(yù)測性。在這里,軟件定義的創(chuàng)新只有在構(gòu)建和更新過程本身可控的前提下才能發(fā)揮作用。
IAR長期支持開發(fā)團(tuán)隊(duì)、芯片設(shè)備和軟件版本,這在車輛軟件不斷演進(jìn)、需要在長生命周期內(nèi)滿足安全與合規(guī)要求時尤為關(guān)鍵。
2. 工業(yè)和物聯(lián)網(wǎng)
在工業(yè)自動化和物聯(lián)網(wǎng)領(lǐng)域,采用SDx思維來構(gòu)建代碼庫,可以實(shí)現(xiàn)更順暢的維護(hù)、更輕松的重新配置,以及通過軟件更新持續(xù)增加新功能。這種方法使系統(tǒng)能夠以可控的方式隨時間演進(jìn),支持優(yōu)化和新用例,而不受原始硬件設(shè)計(jì)的嚴(yán)格限制。
然而,這些系統(tǒng)通常是連續(xù)運(yùn)行的,不能容忍隨時間出現(xiàn)的不穩(wěn)定性、性能下降或資源泄漏。隨著軟件定義功能的增加,故障不太可能以立即崩潰的形式出現(xiàn),而更可能表現(xiàn)為定時漂移、內(nèi)存碎片,或在長時間運(yùn)行中積累的任務(wù)間意外交互。
在這種情況下,調(diào)試和優(yōu)化必須超越試錯和對單個組件的孤立檢查。借助IAR工具,工程師可以在系統(tǒng)實(shí)際執(zhí)行過程中分析其行為,了解內(nèi)存如何使用、時序裕量如何演變,以及任務(wù)在實(shí)際負(fù)載下如何交互。這種系統(tǒng)級的可視性有助于定位復(fù)雜、長期運(yùn)行系統(tǒng)的根本原因,而不是在故障發(fā)生后被動應(yīng)對癥狀。
3. 醫(yī)療
在醫(yī)療技術(shù)領(lǐng)域,軟件定義的功能可以改善診斷、監(jiān)測和治療。然而,每一項(xiàng)軟件變更都必須可控、可追溯、可審計(jì)。
在這里,“認(rèn)證就緒”不是一個里程碑,而應(yīng)融入日常工作流程。軟件演進(jìn)必須在改進(jìn)的同時保留已驗(yàn)證的行為。
IAR通過使軟件行為在整個開發(fā)和維護(hù)過程中具備可觀察性、可重復(fù)性和可追溯性來實(shí)現(xiàn)這一點(diǎn)。借助可重現(xiàn)的構(gòu)建、一致的代碼分析以及文檔化的驗(yàn)證結(jié)果,團(tuán)隊(duì)可以證明軟件更新不會以非預(yù)期的方式改變已驗(yàn)證的行為。這使得設(shè)備功能能夠持續(xù)演進(jìn),同時保持監(jiān)管信心并保障患者安全。
03SDx背后的嵌入式現(xiàn)實(shí)
盡管SDx前景廣闊,但它并未消除嵌入式系統(tǒng)的固有約束。內(nèi)存依然有限,實(shí)時行為仍然是強(qiáng)制性要求,安全威脅也在不斷演變。變化在于我們?nèi)绾喂芾磉@些約束。
例如,安全問題不能再被當(dāng)作事后補(bǔ)救的事項(xiàng)。在隨時間持續(xù)演進(jìn)的軟件定義系統(tǒng)中,安全保護(hù)必須是一致的、可重復(fù)的。
借助IAR,安全性不再是附加項(xiàng),而是在軟件中定義、實(shí)施并驗(yàn)證——利用現(xiàn)代微控制器中已有的安全功能,并將其直接集成到構(gòu)建和部署流程中。
04IAR如何實(shí)現(xiàn)軟件定義的嵌入式系統(tǒng)
IAR不主導(dǎo)系統(tǒng)架構(gòu)或業(yè)務(wù)模式。相反,我們提供的開發(fā)基礎(chǔ)聚焦于控制力、可重復(fù)性和長期可維護(hù)性,這些對于嵌入式系統(tǒng)在長生命周期內(nèi)通過軟件演進(jìn)至關(guān)重要。

這一基礎(chǔ)包括:
1. 可重復(fù)的構(gòu)建
借助IAR構(gòu)建工具,嵌入式團(tuán)隊(duì)可以將經(jīng)過認(rèn)證、值得信賴的工具鏈集成到現(xiàn)代化的自動化構(gòu)建基礎(chǔ)設(shè)施中。雖然確定性是整個構(gòu)建環(huán)境的屬性,而不僅僅是編譯器的屬性,但I(xiàn)AR工具在受控的構(gòu)建工作流中使用時,行為一致且可預(yù)測。
這樣,團(tuán)隊(duì)就能在開發(fā)人員、CI系統(tǒng)和長產(chǎn)品生命周期中,實(shí)現(xiàn)軟件構(gòu)建、測試和發(fā)布的標(biāo)準(zhǔn)化——在支持自動化的同時,保留嵌入式和規(guī)范環(huán)境所需的可追溯性與文檔記錄。
2. 每次構(gòu)建都內(nèi)置代碼質(zhì)量和漏洞檢查
在軟件定義系統(tǒng)中,軟件不斷演進(jìn),對其質(zhì)量的信心也必須隨之增強(qiáng)。
借助IAR代碼分析工具,代碼質(zhì)量不是一次性活動,而是開發(fā)生命周期的內(nèi)在組成部分。靜態(tài)和動態(tài)代碼分析可在每次構(gòu)建或發(fā)布時持續(xù)應(yīng)用,幫助團(tuán)隊(duì)及早發(fā)現(xiàn)缺陷、安全漏洞和規(guī)則違反。
這使團(tuán)隊(duì)能夠:
自動執(zhí)行編碼標(biāo)準(zhǔn)
在缺陷進(jìn)入集成或生產(chǎn)階段之前發(fā)現(xiàn)它們
根據(jù)已知漏洞模式檢查代碼
在軟件演進(jìn)過程中降低回歸風(fēng)險
通過將代碼質(zhì)量檢查直接集成到構(gòu)建和CI/CD工作流中,每一次構(gòu)建都能被分析、測試和驗(yàn)證,確保軟件定義的更新不會悄然引入新的風(fēng)險。
3. 軟件控制下的性能和內(nèi)存
軟件定義的系統(tǒng)仍在物理限制內(nèi)運(yùn)行。IAR工具提供了對性能和內(nèi)存使用的精確控制,使團(tuán)隊(duì)能夠隨著軟件的演進(jìn)優(yōu)化代碼大小、速度或功耗。
這有助于團(tuán)隊(duì)避免不必要的硬件升級,即使功能不斷增加,也能控制BOM成本。
4. 將安全和信任融入生命周期
借助IAR Embedded Trust,安全性成為軟件定義生命周期的一部分。隨著軟件演進(jìn),設(shè)備身份、簽名和保護(hù)將得到一致的處理,而不是后期添加或手動管理。
5. 無中斷的架構(gòu)可移植性
現(xiàn)代嵌入式產(chǎn)品必須經(jīng)受多代硬件的考驗(yàn)。IAR幫助團(tuán)隊(duì)確保軟件架構(gòu)的壽命超過任何單個處理器,從而降低硬件變更的成本和風(fēng)險,同時保留已有的軟件投資。
6. 嵌入式DevOps
嵌入式團(tuán)隊(duì)越來越多地采用自動化和CI/CD,但往往無法自由依賴公共云服務(wù)。
有了IAR,嵌入式的DevOps可根據(jù)您的條件而不是云的條件提供支持。團(tuán)隊(duì)可以在本地、內(nèi)部或受控環(huán)境中自動構(gòu)建和測試,而不會影響確定性、安全性或合規(guī)性。
05不失控制的SDx
SDx并不意味著不惜一切代價追求高速。在嵌入式系統(tǒng)中,它要求的是審慎、可預(yù)測且安全的演進(jìn)。
IAR通過將構(gòu)建、性能、安全性和合規(guī)性轉(zhuǎn)化為可控、可重復(fù)的軟件流程,實(shí)現(xiàn)了軟件定義嵌入式系統(tǒng),使團(tuán)隊(duì)能夠通過軟件進(jìn)行創(chuàng)新,而不會犧牲嵌入式系統(tǒng)所依賴的那些核心品質(zhì)。
06總結(jié)
從“軟件定義車輛”到“軟件定義醫(yī)療和工業(yè)系統(tǒng)”,嵌入式開發(fā)的未來正越來越多地由軟件決定。
真正的挑戰(zhàn)不在于系統(tǒng)是否成為軟件定義的系統(tǒng),而在于企業(yè)如何在軟件經(jīng)歷漫長的生命周期、跨越多代硬件、不斷變化的法規(guī)要求以及日益增長的系統(tǒng)復(fù)雜性時,始終保持控制力。
IAR嵌入式開發(fā)平臺通過提供集成到現(xiàn)代嵌入式開發(fā)工作流中的可信、經(jīng)過功能安全認(rèn)證的工具鏈,支持可控、可重復(fù)的軟件演進(jìn)。通過支持受控環(huán)境中的可重現(xiàn)構(gòu)建、代碼分析、性能與內(nèi)存的可視性,以及面向嵌入式的安全機(jī)制,IAR在不破壞可預(yù)測性或信任的前提下,實(shí)現(xiàn)了軟件定義的創(chuàng)新。
下一步?立即行動!
借助IAR,嵌入式團(tuán)隊(duì)可以擁抱SDx,同時保持值得信賴的嵌入式產(chǎn)品所需的確定性、安全性和長壽命。
-
嵌入式系統(tǒng)
+關(guān)注
關(guān)注
41文章
3836瀏覽量
133982 -
IAR
+關(guān)注
關(guān)注
5文章
418瀏覽量
38697 -
SDV
+關(guān)注
關(guān)注
0文章
105瀏覽量
7595
原文標(biāo)題:嵌入式系統(tǒng)中的“軟件定義一切”:在復(fù)雜性不斷增加的情況下保持可控性
文章出處:【微信號:IAR愛亞系統(tǒng),微信公眾號:IAR愛亞系統(tǒng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
什么是嵌入式應(yīng)用開發(fā)?
CW32嵌入式軟件開發(fā)的必備知識
嵌入式和FPGA的區(qū)別
嵌入式與單片機(jī)定義及區(qū)別
嵌入式系統(tǒng)的定義和應(yīng)用領(lǐng)域
嵌入式軟件測試與專業(yè)測試工具的必要性深度解析
RT-Thread 2025嵌入式軟件大賽重磅來襲
RT-Thread 2025嵌入式軟件大賽重磅來襲
新一代嵌入式開發(fā)平臺 AMD嵌入式軟件和工具2025.1版現(xiàn)已推出
AMD 2025.1版嵌入式軟件和工具的新增功能
Linux嵌入式和單片機(jī)嵌入式的區(qū)別?
運(yùn)行在嵌入式系統(tǒng)上的emApps
IAR如何實(shí)現(xiàn)軟件定義的嵌入式系統(tǒng)
評論