開(kāi)發(fā)STM32 MPU 不要低估軟硬件,不要放棄MCU的起源
關(guān)注、星標(biāo)公眾號(hào),不錯(cuò)過(guò)精彩內(nèi)容
來(lái)源:STM32
今年,ST發(fā)布的旗艦型STM32MP1主頻為800MHz,與2019年推出的主頻為 650MHz STM32MP1 入門(mén)級(jí)系列全引腳兼容,持續(xù)擴(kuò)展MPU產(chǎn)品系列。
MP1上市已經(jīng)一周年了,ST將這一年的經(jīng)驗(yàn)歸納為十條準(zhǔn)則,與開(kāi)發(fā)者分享,在項(xiàng)目立項(xiàng)或開(kāi)始之時(shí),應(yīng)多考量前四條準(zhǔn)則,而要想成功交付項(xiàng)目,就需要遵循后六項(xiàng)準(zhǔn)則。這十條準(zhǔn)則將幫助MCU開(kāi)發(fā)者或者團(tuán)隊(duì)向MPU轉(zhuǎn)型;而對(duì)于傳統(tǒng) MPU 用戶(hù),我們可以通過(guò)提供垂直應(yīng)用解決方案為他們獨(dú)辟蹊徑。
1
不要低估軟件的重要性
▲ 從STM32MP1 探索板開(kāi)始學(xué)習(xí)MPU
2
不能忘記你的軟件
在采用 MPU 開(kāi)發(fā)產(chǎn)品時(shí),軟件起著至關(guān)重要的作用。代碼庫(kù)不僅僅是開(kāi)發(fā)團(tuán)隊(duì)的成熟經(jīng)驗(yàn)積累,代碼庫(kù)的移植復(fù)用會(huì)為團(tuán)隊(duì)帶來(lái)很高的經(jīng)濟(jì)效益。例如,對(duì)于采用STM32MP1進(jìn)行開(kāi)發(fā)設(shè)計(jì)的公司來(lái)說(shuō),在優(yōu)化軟件的同時(shí),還能夠通過(guò)軟件移植快速推出產(chǎn)品。采用 MPU進(jìn)行開(kāi)發(fā)的公司可以通過(guò)軟件快速更新其產(chǎn)品應(yīng)用程序,也就是說(shuō),開(kāi)發(fā)團(tuán)隊(duì)先行推出產(chǎn)品驗(yàn)證市場(chǎng),然后快速優(yōu)化,從而更快地降低成本、更迅速地改善用戶(hù)體驗(yàn)。因此,工程師在項(xiàng)目之初,必須認(rèn)真規(guī)劃產(chǎn)品快速更新的路線圖。
3
不應(yīng)低估您的PCB設(shè)計(jì)
基于MCU的PCB設(shè)計(jì),我們通常需要處理二到六層,雖然這樣的定制設(shè)計(jì)并不簡(jiǎn)單,但至少是可行的;而MPU的PCB設(shè)計(jì)則要復(fù)雜得多。開(kāi)發(fā)團(tuán)隊(duì)往往需要處理八層或更多層,還要應(yīng)付那極為復(fù)雜的電源管理IC,處理難度頗高的高速外部RAM。實(shí)際上,對(duì) DDR 模塊進(jìn)行采樣,同時(shí)并行處理多達(dá) 32 路信號(hào),以及由此帶來(lái)的開(kāi)發(fā)難度,即使是最資深的老炮兒工程師,也要面臨非常大的挑戰(zhàn)。
ST最新提供DDR工具可以自動(dòng)輸出特定的配置參數(shù),這個(gè)自動(dòng)配置功能是我們?yōu)楸M力降低MPU開(kāi)發(fā)難度而設(shè)計(jì)的。與此同時(shí),我們與系統(tǒng)級(jí)模塊(SoM)供應(yīng)商和系統(tǒng)級(jí)封裝(SiP)合作伙伴通力合作,確保工程師獲得有效幫助來(lái)解決這一難題。來(lái)自MCU世界的工程師必須明白MPUPCB設(shè)計(jì)是一個(gè)完全不同的怪獸。STM32MP1 有助于降低 PCB 成本,同時(shí)由于其0.5 mm / 0.8 mm 間距,通過(guò)避免過(guò)孔來(lái)減少 PCB 層數(shù)。
4
了解工程師做好開(kāi)發(fā)的前提
5
不能忽視您的SoM和SiP合作伙伴
STM32MP1 有許多非常獨(dú)特的優(yōu)勢(shì),其中之一就是系統(tǒng)級(jí)模塊(SoM)廠商和系統(tǒng)級(jí)封裝(SiP)合作伙伴支持MP1模組的生產(chǎn)制造,可提供出色的開(kāi)發(fā)解決方案。來(lái)自 MCU 領(lǐng)域的許多公司和團(tuán)隊(duì),有時(shí)會(huì)過(guò)快地取消這些服務(wù),認(rèn)為如果內(nèi)部處理設(shè)計(jì)操作,可以節(jié)省資金。然而,設(shè)計(jì)一個(gè)類(lèi)似SOM的產(chǎn)品,由于需要DDR調(diào)諧并適配板級(jí)支持包,這樣復(fù)雜的PCB設(shè)計(jì)周期可能需要4-6名工程師至少4至6個(gè)月的時(shí)間。即使不計(jì)算相關(guān)驗(yàn)證和生產(chǎn)費(fèi)用,這樣的運(yùn)營(yíng)方式將大幅推高成本。
某些團(tuán)隊(duì)可能不愿意與SoM或SiP供應(yīng)商合作,僅僅因?yàn)橛X(jué)得會(huì)產(chǎn)生高額的初始成本。但是在大多數(shù)情況下,通過(guò)雇傭一家公司來(lái)處理解決MPU固有的硬件復(fù)雜性,比從零開(kāi)始設(shè)計(jì)制作PCB和開(kāi)發(fā)板級(jí)支持包有更大的回報(bào),我們要相信精細(xì)化分工。選擇"系統(tǒng)級(jí)模塊"的開(kāi)發(fā)者,將獲得更多的技術(shù)靈活性,以及本地支持,因?yàn)檫@樣的設(shè)計(jì)經(jīng)過(guò)了批量驗(yàn)證。選擇"系統(tǒng)級(jí)封裝"的開(kāi)發(fā)者,通常原因是產(chǎn)品需要適合空間受限的應(yīng)用環(huán)境。兩種情況,最直觀的受益是降低PCB設(shè)計(jì)生產(chǎn)成本,并允許進(jìn)行四層板設(shè)計(jì)。因此,與SiP或SoM合作伙伴合作,團(tuán)隊(duì)得以專(zhuān)注于軟件和獨(dú)特功能的開(kāi)發(fā),這是項(xiàng)目規(guī)劃實(shí)施的重中之重。
6
不要延遲產(chǎn)品發(fā)布
公司可能的最大陷阱之一是沒(méi)完沒(méi)了地推遲產(chǎn)品發(fā)布。延遲發(fā)布的影響通常比人們預(yù)期的更具災(zāi)難性。慣常情況下,產(chǎn)品延遲發(fā)布,要么是因?yàn)殚_(kāi)發(fā)團(tuán)隊(duì)沒(méi)有避開(kāi)以前開(kāi)發(fā)過(guò)程中踩過(guò)的坑,要么是沒(méi)有正確地分配項(xiàng)目投入。采用 MPU開(kāi)發(fā)的初始成本有時(shí)高于集成MCU 的成本,但在策略方面,首次在市場(chǎng)上為客戶(hù)提供新解決方案更為重要。再者,MPU開(kāi)發(fā)的軟件復(fù)用會(huì)容易得多,即使調(diào)整了硬件平臺(tái),構(gòu)建用戶(hù)群持續(xù)更新設(shè)計(jì)也相對(duì)簡(jiǎn)單;MPU項(xiàng)目通常在初始啟動(dòng)后,能夠更快地獲得投資回報(bào),硬件和軟件的迭代更新也非常顯著。盡管開(kāi)發(fā)周期有挑戰(zhàn),任務(wù)艱巨,但回報(bào)更為直接。
7
不應(yīng)忽視Linux社區(qū)
很多時(shí)候,公司在進(jìn)行 MPU 項(xiàng)目開(kāi)發(fā)時(shí),會(huì)誤判 Linux 版本的重要性。實(shí)際開(kāi)發(fā)中,操作系統(tǒng)至關(guān)重要,而我們提供的OpenSTLinux版本可以滿(mǎn)足大量的開(kāi)發(fā)和工程需求,該版本中針對(duì)各種例程的三個(gè)軟件包,為開(kāi)發(fā)者帶來(lái)極大的便利。Linux經(jīng)過(guò)近三十年的發(fā)展,它的靈魂就是開(kāi)源,也因此吸引了極為廣泛的開(kāi)發(fā)群體,名目多樣的開(kāi)源社區(qū)不僅可供開(kāi)發(fā)者討論交流技術(shù)問(wèn)題,其中的開(kāi)源代碼也可以幫助開(kāi)發(fā)者實(shí)現(xiàn)快速移植。2019年,我們還發(fā)布了STM32MPUAndroid版本,讓開(kāi)發(fā)者能夠快速開(kāi)發(fā)基于Android移動(dòng)操作系統(tǒng)的三方應(yīng)用程序,熟悉Android的開(kāi)發(fā)者將因此節(jié)省大量開(kāi)發(fā)時(shí)間。
我們?yōu)?Linux 開(kāi)源社區(qū)貢獻(xiàn)了大量代碼,也因此脫穎而出,我們還將保證廣泛的內(nèi)核支持。Linux 社區(qū)驗(yàn)證了STM32MPU的所有驅(qū)動(dòng)程序,我們支持類(lèi)似 Yocto的項(xiàng)目,這類(lèi)項(xiàng)目對(duì)在嵌入式系統(tǒng)上使用 Linux非常有幫助。另外,我們同時(shí)支持兩個(gè) Linux 內(nèi)核。雖然當(dāng)前的長(zhǎng)期支持版本仍在修復(fù)和修補(bǔ)程序過(guò)程中,我們?nèi)詴?huì)通過(guò)升級(jí)和修復(fù)支持下一個(gè) LTS 版本。這意味著每個(gè)LTS內(nèi)核至少獲得兩年的支持,這樣公司就可以毫無(wú)后顧之憂地更新其操作系統(tǒng)內(nèi)核,而不必?fù)?dān)心報(bào)錯(cuò)時(shí)的安全缺陷或缺乏支持。
8
不要放棄你的技術(shù)社區(qū)意識(shí)
MPU 的成功是因?yàn)殚_(kāi)源的靈魂、團(tuán)隊(duì)協(xié)作的智慧,而提高效率的一個(gè)最佳方式就是與專(zhuān)家協(xié)作。因此,一個(gè)好的MPU開(kāi)發(fā)商必須有很多合作伙伴來(lái)幫助工程師完成各種任務(wù)。2019 年,意法半導(dǎo)體的授權(quán)合作伙伴從 8 個(gè)增加到 27 個(gè),在ST 合作伙伴計(jì)劃中,也有大量團(tuán)隊(duì)協(xié)助設(shè)計(jì)人員使用 STM32MP1。例如,我們的一些合作伙伴提供模塊來(lái)加速硬件開(kāi)發(fā)階段,而另一些合作伙伴在圖形用戶(hù)界面做了很多工作,極大地簡(jiǎn)化了在STM32MPU上創(chuàng)建圖形界面的門(mén)檻,還有些合作伙伴為用戶(hù)提供工程服務(wù)和培訓(xùn)。項(xiàng)目經(jīng)理在評(píng)估MPU或者選型時(shí),都應(yīng)該考量這款產(chǎn)品聚合的社區(qū)生態(tài)及質(zhì)量,而我們?nèi)找纨嫶蟮纳鐓^(qū)用戶(hù)和越來(lái)越多的合作伙伴將堅(jiān)定你選用STM32MPU的信心。
9
不要只埋頭設(shè)計(jì),更要理解市場(chǎng)
當(dāng)我們展望新技術(shù)的未來(lái)時(shí),會(huì)發(fā)現(xiàn)屏幕越來(lái)越普及,蓬勃增長(zhǎng)的屏幕數(shù)量和種類(lèi)正在改變這個(gè)行業(yè)。即使是最簡(jiǎn)單的白色家電或工業(yè)系統(tǒng)也開(kāi)始有一個(gè)酷炫的顯示器,并需要一個(gè)可以媲美手機(jī)流暢度的觸摸界面。嵌入式系統(tǒng)中的 GUI 應(yīng)用也呼之欲出,比以往任何時(shí)候都更加常見(jiàn),逐漸成為電子產(chǎn)品的標(biāo)配。而伴隨著機(jī)器學(xué)習(xí)在邊緣端應(yīng)用的興起,用戶(hù)對(duì)聯(lián)網(wǎng)產(chǎn)品有了更多期待。微處理器應(yīng)用在小型系統(tǒng)上并不是新鮮事,但既要滿(mǎn)足更強(qiáng)大的圖形功能和更多的AI應(yīng)用,同時(shí)仍保持低功耗,開(kāi)發(fā)者必須考慮采用 MPU來(lái)實(shí)現(xiàn)。
▲ 觸摸處處有屏的新世界
STM32MP1 最為出色的特點(diǎn)之一便是其 3D 圖形 IP,可為人機(jī)界面(HMI)應(yīng)用程序創(chuàng)建流暢、復(fù)雜的高品質(zhì)圖形環(huán)境系統(tǒng)。采用我們的面向用戶(hù)界面設(shè)計(jì)開(kāi)發(fā)的合作伙伴方案,可以令開(kāi)發(fā)過(guò)程簡(jiǎn)單明了、工程師獲得有價(jià)值的回報(bào),同時(shí)也滿(mǎn)足了最終用戶(hù)的需求。
10
不要放棄MCU的起源
有一些公司開(kāi)發(fā)微控制器解決方案已經(jīng)很多年,對(duì)于向MPU應(yīng)用遷移有很多顧慮,會(huì)覺(jué)得自己是外行,這樣的轉(zhuǎn)型會(huì)失去以往在MCU方面的經(jīng)驗(yàn)和技術(shù)積累。STM32MP1可以化解這類(lèi)用戶(hù)的焦慮,MP1并不要求開(kāi)發(fā)者放棄 MCU。得益于STM32MP1的獨(dú)創(chuàng)異構(gòu)系統(tǒng)架構(gòu),除了兩個(gè)A7內(nèi)核,還有一個(gè)Cortex-M4內(nèi)核,它可以運(yùn)行RTOS,開(kāi)發(fā)團(tuán)隊(duì)可以復(fù)用電機(jī)控制等應(yīng)用程序,只需將已在其他MCU上運(yùn)行的電機(jī)策略和算法快速移植過(guò)來(lái)即可。而MPU帶來(lái)的高計(jì)算吞吐量、大DDR 內(nèi)存以及Linux 開(kāi)發(fā)環(huán)境,與慣用的 MCU 應(yīng)用程序同時(shí)呈現(xiàn),開(kāi)發(fā)者可以更為順暢地適應(yīng)這種轉(zhuǎn)型。
長(zhǎng)按前往圖中包含的公眾號(hào)關(guān)注
免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場(chǎng),如有問(wèn)題,請(qǐng)聯(lián)系我們,謝謝!