作者:Ray Upton,Connected MCU 副總裁兼總經(jīng)理,以及德州儀器軟件開(kāi)發(fā)總經(jīng)理 Zoran Mladenovic
強(qiáng)大的軟件/硬件基礎(chǔ)平臺(tái)可以通過(guò)促進(jìn)長(zhǎng)期產(chǎn)品戰(zhàn)略來(lái)提高新產(chǎn)品的投資回報(bào)率 (ROI)。將新產(chǎn)品快速推向市場(chǎng)當(dāng)然是必不可少的,但作為強(qiáng)大軟件/硬件平臺(tái)一部分的微控制器 (MCU) 將為新產(chǎn)品提供持久力,從而在更長(zhǎng)的時(shí)間內(nèi)有效地維持健康的投資回報(bào)。
考慮開(kāi)發(fā)一種支持物聯(lián)網(wǎng)的新產(chǎn)品,例如智能安全控制面板。通過(guò)選擇不僅滿足當(dāng)前設(shè)計(jì)的性能要求,而且是共享強(qiáng)大軟件平臺(tái)的設(shè)備系列的一部分的 MCU,開(kāi)發(fā)人員將得到廣泛的準(zhǔn)備部署軟件的支持,包括低級(jí)設(shè)備驅(qū)動(dòng)程序、中間件模塊、操作系統(tǒng)內(nèi)核等(圖 1)。第二個(gè)項(xiàng)目團(tuán)隊(duì)不必開(kāi)發(fā)和集成部分或全部這些基礎(chǔ)軟件模塊,而是可以花更多時(shí)間開(kāi)發(fā)令人興奮的特性和功能,從而在競(jìng)爭(zhēng)中脫穎而出。他們還可以使用產(chǎn)品組合中的其他設(shè)備在未來(lái)的產(chǎn)品上重復(fù)使用他們的初始代碼投資。

圖 1:硬件和軟件 MCU 平臺(tái)示例。
最近對(duì)設(shè)計(jì)工程師的一項(xiàng)調(diào)查?證實(shí)了這一點(diǎn)。當(dāng)被問(wèn)及選擇處理器時(shí)最重要的因素時(shí),70% 的工程師表示軟件開(kāi)發(fā)工具是他們的第一標(biāo)準(zhǔn)。當(dāng)這些工具功能強(qiáng)大、使用直觀且全面時(shí),它們會(huì)大大簡(jiǎn)化代碼生成和調(diào)試任務(wù)。該平臺(tái)方法包括一整套直觀且強(qiáng)大的工具,可幫助開(kāi)發(fā)的每個(gè)階段。處理器性能在調(diào)查中遙遙領(lǐng)先,只有 38% 的參與工程師將其列為第一。
同一項(xiàng)調(diào)查還發(fā)現(xiàn),工程師明年面臨的最大挑戰(zhàn)將是“管理代碼大小和復(fù)雜性的增加”。此外,87% 的工程師表示他們?cè)诋?dāng)前項(xiàng)目中重用了以前項(xiàng)目中的軟件。顯然,軟件是開(kāi)發(fā)工程師的主要關(guān)注點(diǎn)。他們知道他們需要有效的工具和方法來(lái)有效地管理從初始開(kāi)發(fā)開(kāi)始的代碼流,以及從一代系統(tǒng)到下一代系統(tǒng)以及從一種產(chǎn)品到互補(bǔ)或相關(guān)產(chǎn)品的代碼流。
測(cè)試直到硬化
當(dāng)然,必須考慮基礎(chǔ)平臺(tái)的許多其他方面。構(gòu)成平臺(tái)的代碼不僅必須經(jīng)過(guò)詳盡的測(cè)試以確保其按預(yù)期執(zhí)行,而且還必須經(jīng)過(guò)強(qiáng)化。這意味著要讓它承受盡可能多的壓力突發(fā)事件,以確保它能夠正常運(yùn)行。此類測(cè)試應(yīng)包括靜態(tài)分析、眾多行業(yè)標(biāo)準(zhǔn)測(cè)試套件以及適當(dāng)?shù)南到y(tǒng)和互操作性測(cè)試。
從現(xiàn)場(chǎng)用戶系統(tǒng)收集的用戶反饋和操作數(shù)據(jù)以及正在進(jìn)行的系統(tǒng)測(cè)試也可能觸發(fā)平臺(tái)軟件的升級(jí)和改進(jìn),從而導(dǎo)致現(xiàn)場(chǎng)更新。這導(dǎo)致了如何以及何時(shí)分發(fā)代碼更新的問(wèn)題。
一些技術(shù)提供商可能會(huì)持續(xù)數(shù)月甚至數(shù)年而不發(fā)布軟件更新,然后突然向客戶推出更新,幾乎沒(méi)有或根本沒(méi)有警告。通常,產(chǎn)品制造商會(huì)發(fā)現(xiàn)這種不可預(yù)測(cè)性具有破壞性。更有效的方法是制定維護(hù)更新計(jì)劃,以便制造商知道何時(shí)可以期待下一次更新。然后制造商可以相應(yīng)地計(jì)劃以確保有足夠的資源來(lái)實(shí)施更新。
供應(yīng)商提供的軟件可能具有破壞性的另一個(gè)方面涉及該軟件的來(lái)源以及是否已獲得適當(dāng)?shù)脑S可安排。軟件代碼庫(kù)的片段或部分可能起源于開(kāi)源代碼。這引發(fā)了該代碼是否獲得適當(dāng)許可的權(quán)杖。如果不是這樣,則部署代碼的系統(tǒng)供應(yīng)商可能處于法律危險(xiǎn)之中。適當(dāng)?shù)脑S可是衡量軟件平臺(tái)穩(wěn)健性的另一個(gè)指標(biāo)。
軟件更新和修復(fù)的發(fā)布節(jié)奏是另一個(gè)可能導(dǎo)致生產(chǎn)中斷的主要問(wèn)題。如果供應(yīng)商不承諾定期發(fā)布軟件,開(kāi)發(fā)人員就很難繼續(xù)創(chuàng)新和支持已經(jīng)部署的產(chǎn)品。平臺(tái)的供應(yīng)商必須能夠并且愿意支持并負(fù)責(zé)平臺(tái)中的所有代碼。
代碼和知識(shí)可移植性
正如為產(chǎn)品開(kāi)發(fā)軟件被認(rèn)為是一種投資一樣,學(xué)習(xí)支持某種處理技術(shù)的編程和集成工具所花費(fèi)的時(shí)間和精力也是一種投資。雖然代碼重用可以幫助從原始產(chǎn)品軟件中獲得更好的投資回報(bào),但知識(shí)可移植性也可以降低開(kāi)發(fā)成本,因?yàn)槿绻こ處熌軌蚴冀K如一地重用他們已經(jīng)使用過(guò)的工具,他們就不會(huì)被迫不斷學(xué)習(xí)新的工具和開(kāi)發(fā)方法學(xué)到了。
例如,開(kāi)發(fā)團(tuán)隊(duì)可能認(rèn)為其產(chǎn)品需要某種技術(shù)能力才能更好地在市場(chǎng)上競(jìng)爭(zhēng)。產(chǎn)品目前基于的MCU不具備此能力,因此團(tuán)隊(duì)決定更換供應(yīng)商。下一個(gè)要跨越的障礙將是學(xué)習(xí)新的工具庫(kù)和開(kāi)發(fā)新代碼。
另一個(gè)例子是一個(gè)產(chǎn)品供應(yīng)商,它有多個(gè)相關(guān)的產(chǎn)品線,但每個(gè)產(chǎn)品線都基于不同的 MCU,并且每個(gè) MCU 都有其與其他產(chǎn)品不兼容的代碼庫(kù)。每個(gè) MCU 也可能有自己的工具集。跨產(chǎn)品線轉(zhuǎn)移開(kāi)發(fā)資源充其量是很麻煩的,而且肯定是低效的,因?yàn)樾枰ㄙM(fèi)大量時(shí)間來(lái)了解支持每個(gè)產(chǎn)品線的不同工具。
在這兩種情況下,所有 MCU 都缺乏代碼兼容的基礎(chǔ)平臺(tái),這阻礙了開(kāi)發(fā)人員之間的知識(shí)可移植性。開(kāi)發(fā)人員經(jīng)常面臨重新學(xué)習(xí)工具或重新發(fā)明基本系統(tǒng)架構(gòu)的問(wèn)題,因?yàn)樗麄儺?dāng)前的 MCU 不適合其下一代產(chǎn)品。
借助提供廣泛技術(shù)功能的凝聚力平臺(tái),開(kāi)發(fā)人員可以輕松選擇另一個(gè) MCU,而無(wú)需花費(fèi)時(shí)間和金錢重新學(xué)習(xí)產(chǎn)品的基礎(chǔ)知識(shí)。當(dāng) MCU 和相關(guān)設(shè)備系列等技術(shù)共享一個(gè)一致的平臺(tái)時(shí),效率會(huì)更高。確保代碼重用和移動(dòng)性以及知識(shí)可移植性。
工程師和產(chǎn)品開(kāi)發(fā)人員每天都感受到面臨創(chuàng)造下一個(gè)偉大創(chuàng)新的艱巨挑戰(zhàn)的壓力。當(dāng)然,僅僅讓開(kāi)發(fā)人員跟上競(jìng)爭(zhēng)是不夠的。他們必須走在潮流的前面,時(shí)刻注意即將發(fā)生的事情。這需要更智能的開(kāi)發(fā)方法、工具、插件、資源庫(kù)以及強(qiáng)大的、代碼兼容的基礎(chǔ)技術(shù)平臺(tái)的所有方面,向他們展示高效創(chuàng)新的方式,利用他們的初始軟件投資來(lái)創(chuàng)建全面的產(chǎn)品組合使投資回報(bào)最大化。
第 1 部分:平臺(tái)方法為產(chǎn)品和系統(tǒng)工程師帶來(lái)回報(bào)?——?硬件和軟件平臺(tái)加速設(shè)計(jì)創(chuàng)新
第 3 部分:設(shè)計(jì)的平臺(tái)方法可加快互聯(lián)事物的產(chǎn)品開(kāi)發(fā)——設(shè)計(jì)人員可以通過(guò)使用相同的 MCU 平臺(tái)來(lái)加速開(kāi)發(fā)并增強(qiáng)他們的互聯(lián)事物組合
審核編輯 黃昊宇
電子發(fā)燒友App
















































評(píng)論