【導(dǎo)讀】物聯(lián)網(wǎng)應(yīng)用的潛在增長為供應(yīng)商及其設(shè)計團(tuán)隊提供了新的機(jī)遇,但也進(jìn)一步增大了軟硬件工程方面的挑戰(zhàn)。本文介紹了旨在最大程度降低物聯(lián)網(wǎng)跨平臺設(shè)計復(fù)雜性的十大策略。
每個工程項目在開發(fā)實施的過程中都可能會受到諸多因素的制約,其中最主要的三大因素是性能、功耗和價格,人們通常需要對這些因素做出權(quán)衡和折衷。以這三個因素為頂點(diǎn)構(gòu)成三角形,每個項目都有其“側(cè)重點(diǎn)”,但根據(jù)產(chǎn)品、市場和時間會有不同的相對權(quán)重。
物聯(lián)網(wǎng)(IoT)相關(guān)應(yīng)用的潛在增長為供應(yīng)商及其設(shè)計團(tuán)隊提供了新的機(jī)遇,但也進(jìn)一步增大了軟硬件工程方面的挑戰(zhàn)。硬件和軟件密切相關(guān), 共同組成了平臺,需要采取多種策略來最大程度地降低跨平臺設(shè)計的復(fù)雜性。這些策略包括:
限制傳感器和換能器輸入/輸出
首先決定輸入/輸出需求是否采用固定或有限的數(shù)量和類型,或者是否需要擴(kuò)展數(shù)量和提高類型的靈活性。這一決定會影響到MCU和外部設(shè)備的選擇。如果輸入/輸出不僅包含簡單的低壓數(shù)字點(diǎn),還包括溫度傳感器、電機(jī)甚至串行和并行格式的通信線路, 這一點(diǎn)就尤為關(guān)鍵。
使用外部認(rèn)證射頻模塊
很多情況下,獨(dú)立于核心應(yīng)用處理器的模塊都具有重要意義。雖然高度集成的單片解決方案在電路板空間、功率和成本方面頗具吸引力,但倘若無線協(xié)議、要求范圍甚至監(jiān)管要求有任何變化或擴(kuò)展,都需要對設(shè)計進(jìn)行重大改變,或者需要采用新的MCU和射頻鏈路相關(guān)固件。即便編碼部分很簡單(可能性不大),但MCU可能無法滿足新的要求而需要進(jìn)行升級,因此增加了開發(fā)時間和風(fēng)險。
以功率換取性能
弄清所選的MCU在功率與性能矩陣中的正確位置。沿著所需性能的曲線上移,會遇到閾值點(diǎn),此時不得不使用體積和功耗更大的MCU。沿著曲線下移時,所需資源減少,可考慮使用體積小、功率低、價格便宜的MCU。
請確保所選的特定MCU支持各種復(fù)雜的速度、功能和功率模式,這樣才能優(yōu)化操作順序,最大程度降低總能耗,應(yīng)對需要大功耗的操作。
簡化安全性
一些處理器具有專用的硬件嵌入特性,提供自動安全功能,并且不依賴于任何應(yīng)用軟件甚至所選RTOS。這種方式可能會簡化所面對的安全挑戰(zhàn)。如果選擇的所有MCU都具有相同的嵌入式安全功能就更好了,因為無論使用哪一種處理器,都可以跳過物聯(lián)網(wǎng)挑戰(zhàn)中的這個重要部分。
系統(tǒng)標(biāo)準(zhǔn)化
隨著對大小/性能要求的變化,需要對低功耗8/16位MCU進(jìn)行標(biāo)準(zhǔn)化,然后采用不同的內(nèi)存大小(片上或外部內(nèi)存);也可采用一個較大的32位MCU,雖然在低端應(yīng)用時會浪費(fèi)一些容量, 但它具有代碼和驅(qū)動器一致的優(yōu)勢, 同時還能簡化BOM和測試過程。
操作系統(tǒng)選擇
在某些情況下,一臺簡單、低成本的單線程操作系統(tǒng)(OS)便已足夠, 但也有很多項目需要實時操作系統(tǒng)(RTOS)。無論哪一種操作系統(tǒng),都需要對小型、中型和大型OS版本的可擴(kuò)展性和可用性做出評估。必須了解清楚最小版本的大小及相應(yīng)的功能——您肯定不希望當(dāng)項目完成80% 時,在OS能力上“遭遇瓶頸”。
硬件升級VS軟件升級
在軟件資源曲線上的一些關(guān)鍵點(diǎn)需要完成一些額外任務(wù)(開發(fā)時間,處理器資源),此時必須做出以下選擇,要么增加外圍IC幫助滿負(fù)荷運(yùn)行的MCU進(jìn)行分流,要么選擇一臺運(yùn)行速度更快的MCU。決策時,要分析何時需要一臺功能更強(qiáng)大的MCU將硬件任務(wù)交回軟件,從而減少組件成本、電路板尺寸和功耗( 原則上), 但為此可能要延長開發(fā)和調(diào)試時間。
謹(jǐn)慎選擇連接協(xié)議
使用“較輕的”物聯(lián)網(wǎng)優(yōu)化協(xié)議,不要選擇基于客戶端/服務(wù)器HTTP的互聯(lián)網(wǎng)瀏覽器模型,這樣可以將堆棧和處理要求減少二倍或以上,便于應(yīng)對多臺物聯(lián)網(wǎng)設(shè)備及其外圍設(shè)備。隨著市場要求日趨嚴(yán)苛,還需考慮當(dāng)連接要求( 協(xié)議、速度和完整性) 提高時會發(fā)生什么情況。
在設(shè)計階段盡早制定測試計劃 這一點(diǎn)非常重要而且復(fù)雜,特別是當(dāng)設(shè)計中包含無線應(yīng)用時。使用何種方法非正式然后正式地驗證最終產(chǎn)品是否符合市場、技術(shù)、行業(yè)標(biāo)準(zhǔn)和監(jiān)管要求,會影響“修復(fù)”周期和上市時間。如果在產(chǎn)品中增加針對不同應(yīng)用的功能,就需對原型測試程序或生產(chǎn)測試設(shè)置做出改變,這會加大工作量,同時增加不確定性和風(fēng)險。采用經(jīng)過許可的預(yù)認(rèn)證軟硬件模塊,可確保最終設(shè)計在許多方面( 但不是全部) 的一致性和順應(yīng)性。如果有任何關(guān)于設(shè)計和驗證的高級監(jiān)管準(zhǔn)則(如關(guān)于醫(yī)療產(chǎn)品可靠性的準(zhǔn)則)影響到軟件, 都應(yīng)該明了于心。如果這些準(zhǔn)則不適用于所有產(chǎn)品,要弄清它們適用于哪些產(chǎn)品。
安全問題是重中之重
所采用的軟件技術(shù)和策略應(yīng)能跨產(chǎn)品,滿足應(yīng)用要求,并與物聯(lián)網(wǎng)用戶接口(如果有的話)匹配,例如防火墻、身份驗證和密碼。從分級列表中找出所需的安全資源,包括安全啟動、身份驗證、安全通信、防火墻、篡改檢測、事件報告、遠(yuǎn)程命令審查和策略管理,根據(jù)現(xiàn)有的軟件資源,確保每一項的實際執(zhí)行正確且可行。評估要提高各種產(chǎn)品的安全性是否必須采用更大或更快的MCU,制定計劃驗證實施的安全步驟是否可靠。
結(jié)論
隨著新產(chǎn)品的開發(fā),“重心”無疑也需要相應(yīng)地進(jìn)行改變,以滿足不斷變化的要求。設(shè)計人員應(yīng)縱觀當(dāng)前及未來的產(chǎn)品,選擇適合的平臺,盡量減少返工并提高重復(fù)利用率,確保上述變化不會對成本、進(jìn)度或工作負(fù)荷造成不必要的影響。
作者:Stefan Ingenhaag,瑞薩電子歐洲公司
本文來源于電子技術(shù)設(shè)計。