跨域協(xié)同,軟硬融合|MathWorks驅(qū)動軟件定義產(chǎn)品全流程
軟件定義產(chǎn)品是指一個產(chǎn)品系統(tǒng)的核心功能和行為主要由軟件來控制和定義,而不是完全依賴硬件。在傳統(tǒng)的產(chǎn)品系統(tǒng)中需要靠固定的硬件設(shè)計(jì)來實(shí)現(xiàn)功能,而在軟件定義系統(tǒng)中,硬件更像是一個“通用平臺”,真正的“聰明”部分由軟件來實(shí)現(xiàn),這樣整個系統(tǒng)更靈活,而且能夠隨軟件功能的更新不斷提升設(shè)備的自我價值。
想象我們小時候用的一臺老式收音機(jī),它的頻道和音量是通過物理旋鈕固定的,功能很有限?,F(xiàn)在我們家中換成一臺智能音箱(比如小愛音箱或小度小度),硬件是麥克風(fēng)和揚(yáng)聲器等,但它的功能(播放音樂、查天氣、控制家電)是通過軟件來實(shí)現(xiàn)的。你可以通過更新軟件增加新功能,比如讓它學(xué)會講笑話、唱歌,而不需要換硬件。這就是“軟件定義系統(tǒng)”。
所以“軟件定義產(chǎn)品”并不是一個新的概念,而是由來已久。尤其是從功能手機(jī)到智能手機(jī)的成功轉(zhuǎn)型,讓人們看到軟件定義系統(tǒng)的潛力,但過去受限于技術(shù),軟件定義的概念主要局限在手機(jī)、電腦這樣的消費(fèi)電子領(lǐng)域。而現(xiàn)在,隨著端側(cè)計(jì)算能力、通信能力和AI基礎(chǔ)設(shè)施的技術(shù)進(jìn)步,讓這個概念可以擴(kuò)展到更多復(fù)雜的系統(tǒng),比如汽車、工廠、甚至城市基礎(chǔ)設(shè)施等。
尤其是汽車行業(yè)正在經(jīng)歷從“機(jī)械驅(qū)動”到“軟件驅(qū)動”的巨大轉(zhuǎn)變,這讓“軟件定義產(chǎn)品”這個概念被推到聚光燈下。而軟件定義產(chǎn)品,即存在著機(jī)遇,也向傳統(tǒng)設(shè)備開發(fā)者們提出了新的挑戰(zhàn)。如何應(yīng)對這一挑戰(zhàn)?在近日MathWorks在北京舉辦的2025 MATLAB EXPO上,MathWorks全球行業(yè)總監(jiān) Arun Mulpur發(fā)表了題為“從嵌入式到賦能:軟件定義產(chǎn)品的崛起”的主題演講,并且接受了21ic在內(nèi)的多家媒體采訪。
MathWorks全球行業(yè)總監(jiān) Arun Mulpur
軟件定義產(chǎn)品的本質(zhì)和復(fù)雜性
軟件定義產(chǎn)品正在成為我們?nèi)粘I詈凸I(yè)應(yīng)用的核心驅(qū)動力。從智能手機(jī)到家用電器,再到汽車和醫(yī)療設(shè)備,軟件在產(chǎn)品功能和用戶體驗(yàn)中的作用日益顯著。與傳統(tǒng)的嵌入式系統(tǒng)相比,軟件定義產(chǎn)品通過軟件賦予系統(tǒng)靈活性、可擴(kuò)展性和持續(xù)優(yōu)化的能力。尤其是在汽車領(lǐng)域,軟件定義汽車(Software-Defined Vehicle,SDV)通過軟件實(shí)現(xiàn)自動駕駛、個性化體驗(yàn)和性能優(yōu)化。這種從“嵌入式”到“賦能”的轉(zhuǎn)變,標(biāo)志著產(chǎn)品不再是靜態(tài)的硬件實(shí)體,而是可以通過軟件持續(xù)進(jìn)化的動態(tài)系統(tǒng)。
那么產(chǎn)品是如何為軟件定義的呢?這里面包含了三大核心。即“現(xiàn)代軟件實(shí)踐”、“數(shù)據(jù)驅(qū)動的功能”、“利用云”,這三大核心由軟件進(jìn)行定義,從而構(gòu)建具備可靠性、符合功能安全目標(biāo)、且包含全部物理組件的系統(tǒng)。
首先在“現(xiàn)代軟件實(shí)踐”中,可以通過自動化工具(如CI/CD流水線)實(shí)現(xiàn)快速開發(fā)和頻繁更新,縮短開發(fā)周期。其次,在“數(shù)據(jù)驅(qū)動”部分,開發(fā)者需要利用實(shí)時數(shù)據(jù)和云集成提供洞察力,支持持續(xù)優(yōu)化。例如,軟件定義汽車通過傳感器數(shù)據(jù)實(shí)時調(diào)整駕駛模式或電池管理策略。最后在“云端支持”部分,需要通過云端實(shí)現(xiàn)OTA更新和大規(guī)模數(shù)據(jù)處理,使系統(tǒng)能夠在運(yùn)行時持續(xù)改進(jìn)。這三大軟件定義的開發(fā)流程層層遞進(jìn),使得軟件定義產(chǎn)品能夠快速響應(yīng)市場需求,提供個性化和可持續(xù)的功能。例如,汽車制造商可以通過訂閱服務(wù)提供新的駕駛模式或娛樂功能,創(chuàng)造新的收入來源,同時提升用戶體驗(yàn)。
軟件定義產(chǎn)品需要將系統(tǒng)工程(SystemEngineering)和軟件工程(Software Engineering)緊密結(jié)合。然而,這種融合面臨重大挑戰(zhàn),因?yàn)閮烧呱婕安煌乃季S方式、工具鏈和工作流程。Arun強(qiáng)調(diào),MathWorks的工具(如MATLAB和Simulink)通過基于模型設(shè)計(jì)(Model-Based Design,MBD)提供了一個“數(shù)字線程”(Digital Thread),連接需求、架構(gòu)、功能、實(shí)現(xiàn)和測試,實(shí)現(xiàn)了無縫的開發(fā)工作流程。
例如,在汽車開發(fā)中,Simulink和Stateflow可用于建模整個系統(tǒng)的行為,SimscapeBattery則專門用于電池驅(qū)動設(shè)備的建模。MathWorks一直持續(xù)致力于拓展這一領(lǐng)域的關(guān)鍵能力,提供了包括SimscapeElectrical、Motor Control Blockset和SimscapeBattery在內(nèi)的一系列模型,這些模型不僅支持仿真和驗(yàn)證,還能自動生成優(yōu)化的代碼,部署到嵌入式目標(biāo)上。這種集成能力使開發(fā)團(tuán)隊(duì)能夠高效應(yīng)對復(fù)雜系統(tǒng)開發(fā)的挑戰(zhàn)。
此外,為了支持軟件定義系統(tǒng)的開發(fā),MathWorks提供了開放的API和與行業(yè)標(biāo)準(zhǔn)的集成,如AUTOSAR(汽車開放系統(tǒng)架構(gòu))和ROS(機(jī)器人操作系統(tǒng))。這些工具允許開發(fā)者將MATLAB和Simulink與現(xiàn)有工作流程無縫結(jié)合,提高可擴(kuò)展性和可靠性。例如,與恩智浦(NXP)、英飛凌(Infineon)、高通(Qualcomm)等合作伙伴的協(xié)作,使得開發(fā)者可以在硬件電路尚未就緒時就開發(fā)軟件,縮短迭代周期。
接下來,讓我們從“現(xiàn)代軟件實(shí)踐”、“數(shù)據(jù)驅(qū)動的功能”、“利用云”的三大核心出發(fā),看看MathWorks如何行業(yè)客戶應(yīng)對軟件定義產(chǎn)品的挑戰(zhàn)。
1-從仿真到虛擬化,將軟件開發(fā)與系統(tǒng)設(shè)計(jì)進(jìn)行融合
在軟件定義產(chǎn)品的生命周期中,軟件被快速開發(fā)、頻繁發(fā)布、自動化的部署到了產(chǎn)品系統(tǒng)中。但隨著產(chǎn)品和系統(tǒng)中軟件內(nèi)容的增加,這也將會影響到整個系統(tǒng)開發(fā)的工作。系統(tǒng)和軟件的結(jié)合是一個巨大的機(jī)會,因?yàn)橥ㄟ^對齊思維方式和方法、工具和工作流程,軟件工程和系統(tǒng)工程之間的協(xié)作可以解鎖新的優(yōu)化水平。
但是這必須確保系統(tǒng)工程師們和軟件開發(fā)團(tuán)隊(duì)都處在同一個虛擬環(huán)境中。在傳統(tǒng)開發(fā)流程中,系統(tǒng)工程師對于完整系統(tǒng)、組件和場景有著更高的仿真細(xì)節(jié)要求;而當(dāng)進(jìn)入到了軟件定義產(chǎn)品的開發(fā)中,軟件開發(fā)團(tuán)隊(duì)并不特別需要如此高級別的模型復(fù)雜性。軟件開發(fā)者只需要一個虛擬環(huán)境,提供足夠的保真度來開發(fā)和測試他們的軟件。
Arun強(qiáng)調(diào),這是一個微妙但重要的整合——將虛擬化與仿真結(jié)合,融入DevOps和CI/CD流水線,以提供非常完整的驗(yàn)證和驗(yàn)證平臺,以便工程團(tuán)隊(duì)能夠測試和驗(yàn)證,甚至在開發(fā)早期就進(jìn)行測試。
“MathWorks提供的功能,能夠幫助結(jié)構(gòu)工程師、電氣工程師、電子工程師,在做他的設(shè)計(jì)的時候,可以充分考慮軟件這部分影響,來幫助他做更好的設(shè)計(jì)。因?yàn)槲覀兲峁┫到y(tǒng)建模的能力,能夠幫助他在系統(tǒng)的環(huán)境下確定這部分設(shè)計(jì)的任務(wù)是不是合理,是不是合適,能夠做更好的優(yōu)化?!盇run解釋道。
2-引入AI,支持設(shè)計(jì)到多硬件平臺無縫部署
在“數(shù)據(jù)驅(qū)動的功能”的部分,Arun特別分享了MathWorks在AI領(lǐng)域的投入。MathWorks的AI工具涵蓋深度學(xué)習(xí)、強(qiáng)化學(xué)習(xí)、機(jī)器學(xué)習(xí)等多個領(lǐng)域,支持從設(shè)計(jì)到部署的無縫集成、自動化代碼生成以及對CPU、GPU和FPGA等多樣化硬件平臺的支持。
在多硬件平臺無縫部署方面,MathWorks提供代碼生成工具,能夠支持將模型和算法生成針對特定硬件的C、HDL、CUDA程序等,幫助開發(fā)者實(shí)現(xiàn)自動適配和部署。當(dāng)前也有越來越多的芯片廠商,和MathWorks建立了合作,提供了相應(yīng)的專有庫。那么開發(fā)者即使在MathWorks提供的平臺上,也可以享受到和原廠的開發(fā)環(huán)境中更一致的開發(fā)和部署體驗(yàn),能夠獲得來自原廠的優(yōu)化過的庫的支持。這即保證了開發(fā)方式上更適用于當(dāng)前這種復(fù)雜系統(tǒng)定義帶來的問題;也讓MathWorks提供的這套開發(fā)流程也能夠滿足開發(fā)者對于嵌入式邊緣算力的高性能使用。
在開發(fā)框架方面,PyTorch和TensorFlow等開源框架在用戶中的廣泛采用。這一趨勢引發(fā)了關(guān)于AI模型治理和可追溯性的關(guān)鍵問題,MathWorks旨在解決這些挑戰(zhàn)。早前,MathWorks已支持與外部AI框架的協(xié)同執(zhí)行;自2025年起,一項(xiàng)重大進(jìn)步允許將PyTorch模型直接導(dǎo)入Simulink,從而實(shí)現(xiàn)宏操作,并通過其深度學(xué)習(xí)組合部署經(jīng)過認(rèn)證的AI模型。這些模型保持不變,以確保治理和可追溯性,同時被整合進(jìn)系統(tǒng)設(shè)計(jì)和部署。
此外,MathWorks正在彌合AI、數(shù)據(jù)科學(xué)與需要穩(wěn)健系統(tǒng)設(shè)計(jì)的工程團(tuán)隊(duì)之間的差距。通過簡化PyTorch和MATLAB代碼的協(xié)同執(zhí)行實(shí)現(xiàn),這大大促進(jìn)了數(shù)據(jù)科學(xué)家、工程師和IT部門之間的協(xié)作,提升了工作負(fù)載共享和整合效率。
值得注意的是,MATLAB還與Visual Studio Code的集成,而VS Code已被證實(shí)是廣受歡迎的AI驅(qū)動開發(fā)環(huán)境,這一協(xié)同作用使用戶能夠在熟悉的環(huán)境中利用AI代理生成MATLAB代碼,從而簡化產(chǎn)品開發(fā)。
3-云上完整環(huán)境:仿真、部署和發(fā)布一站式
假設(shè)一輛軟件定義的汽車,需要引入一種新駕駛模式——“運(yùn)動模式”,在不影響電池性能或續(xù)航里程的前提下提升加速性能。如何直接通過云端部署新功能,給所有的車輛實(shí)現(xiàn)OTA,而無需更改硬件?這就需要一個完整的云上開發(fā)環(huán)境,該環(huán)境中集合了仿真、開發(fā)、部署和發(fā)布等功能,而MathWorks正在就此與汽車行業(yè)的關(guān)鍵合作伙伴展開合作,例如提供生產(chǎn)ECU和車外網(wǎng)絡(luò)的廠商、提供虛擬處理器模型和仿真環(huán)境的Synopsys,以及提供云端擴(kuò)展性和集成的AWS等,多方共同致力于解決這一挑戰(zhàn)。
具體而言,MATLAB支持功能開發(fā)、仿真、CI/CD操作及模型檢查,覆蓋從代碼生成到交互式或基于CI的嵌入式部署的全流程。通過清晰的整合,用戶甚至可以在獲取ECU之前完成開發(fā)與部署,實(shí)現(xiàn)了驗(yàn)證與確認(rèn)的無縫銜接,例如與Android Automotive的整合,為客戶提供極致體驗(yàn)。本質(zhì)上,這種方式構(gòu)建了一個云端完整生產(chǎn)環(huán)境,大幅降低了開發(fā)過程中的風(fēng)險。
這種云端設(shè)計(jì)仿真的方式無需本地工作站即可實(shí)現(xiàn)高度可擴(kuò)展性,支持一次性完成數(shù)千次仿真,并通過自動化測試集成CI/CD,為無縫部署鋪平道路。這種“左移”開發(fā)模式能夠在運(yùn)行前檢測問題,顯著提升效率。而在運(yùn)行時,MathWorks通過Simulink直接連接軟件堆棧,支持目標(biāo)代碼執(zhí)行。例如,利用某公司的SUM-ID汽車消息協(xié)議,Simulink模型可實(shí)時發(fā)送和接收消息,并通過UnrealEngine實(shí)現(xiàn)可視化,展示系統(tǒng)運(yùn)行狀態(tài)。
此外,Arun又著重強(qiáng)調(diào)了對齊團(tuán)隊(duì)協(xié)作的重要性,系統(tǒng)工程師、平臺工程師和結(jié)構(gòu)工程師三大角色通過集成環(huán)境實(shí)現(xiàn)高效連接。平臺工程師常用的工具與MATLAB和Simulink的兼容性成為關(guān)注焦點(diǎn)。為此,MathWorks推出了一個中央存儲庫,匯集示例、代碼和文檔,方便用戶查找和應(yīng)用這些整合資源。同時,針對云端MATLAB冷啟動耗時12分鐘的問題,MathWorks通過優(yōu)化預(yù)熱技術(shù)將首次啟動時間縮短至1分鐘,后續(xù)啟動僅需25秒,顯著提升開發(fā)效率和協(xié)作流暢性。
結(jié)語
MathWorks正在全面賦能軟件定義產(chǎn)品的開發(fā)與部署。從將虛擬化與仿真結(jié)合以融入DevOps和CI/CD流水線,到通過AI工具和多硬件平臺支持實(shí)現(xiàn)無縫部署,再到構(gòu)建一站式云端開發(fā)環(huán)境,MathWorks為汽車等行業(yè)的復(fù)雜系統(tǒng)開發(fā)提供了高效解決方案。同時,其對團(tuán)隊(duì)協(xié)作和開發(fā)效率的優(yōu)化,如與Visual Studio Code的集成及云端冷啟動時間的顯著縮短,進(jìn)一步推動了系統(tǒng)工程與軟件工程的深度融合。隨著軟件定義產(chǎn)品趨勢的持續(xù)深化,MathWorks的創(chuàng)新工具鏈和開放生態(tài)無疑將助力更多行業(yè)實(shí)現(xiàn)智能化、靈活性和可持續(xù)發(fā)展目標(biāo)。