一、 什么是核心板
核心板是將主控MCU及必要外圍器件集成到一個名片大小的電路板上,將MCU的通信接口,GPIO,存儲器接口等引到板外給用戶使用。同時,完成MCU的片上外設的驅(qū)動或嵌入式操作系統(tǒng)的移植,并提供相關(guān)接口給用戶調(diào)用。
嵌入式核心板又叫System-On-Module(SOM)板卡,是一種將CPU、內(nèi)存(DDR)、存儲(eMMC或FLASH)、電源管理(PMIC,負責CPU的上電時序及CPU需求各種不同電壓的輸出)等集成芯片封裝到一起的高集成度板卡,一般采用板對板連接器、郵票孔焊接、金手指、COM Express等形式與底板連接,并且核心板通常將CPU的所有功能引腳或大部分功能引腳引出,用戶在設計產(chǎn)品時只需進行功能接口的外圍電路設計,從而降低硬件開發(fā)難度,節(jié)省開發(fā)時間。
在軟件方面,嵌入式核心板(以下簡稱核心板)一般已完成Linux(Build Root)、Ubuntu、Android、WinCE等嵌入式操作系統(tǒng)的移植適配,在完善各個接口驅(qū)動的同時還會適配Uboot、文件系統(tǒng)以及QT圖形界面的移植開發(fā),這樣最終呈現(xiàn)給用戶的是一個帶圖形界面的完整操作系統(tǒng),最大程度方便了用戶進行二次開發(fā)。
核心板作為一種獨特的嵌入式板卡形式,與一體板相比優(yōu)勢明顯,不但可以降低產(chǎn)品設計難度,加快產(chǎn)品上市時間,同時還便于產(chǎn)品迭代升級,減少維護工作量,因此在嵌入式系統(tǒng)所涉及的產(chǎn)品領(lǐng)域得到廣泛應用。對于一些經(jīng)驗豐富的軟、硬件工程師來說,可能還不了解采用核心板的開發(fā)方式或者不信賴核心板的產(chǎn)品模式,所以每當遇到有新項目開發(fā)便重新開始設計一體板,軟件上還要重新移植Uboot、操作系統(tǒng)、QT等。如果時間充足、經(jīng)驗豐富這種方法是可行的,但有很多公司在硬件與底層驅(qū)動上基礎相對薄弱,一旦設計過程出現(xiàn)失誤,很可能導致整個項目擱置,影響產(chǎn)品上市。在人力不足的情況下,這樣的工作無疑是在“重復造輪子”,無形中消耗了大量的人力物力。
萬象奧科嵌入式的核心板經(jīng)過多年的技術(shù)發(fā)展與品質(zhì)沉淀,在集成度、穩(wěn)定性、專業(yè)性等方面已經(jīng)非常成熟。接下來,讓我們從產(chǎn)品開發(fā)角度來進一步了解。
二、為什么要做核心板?
? 幫用戶把復雜的電路都做掉,減小客戶的設計難度。
? 幫用戶把難貼的器件先貼上,減小客戶的加工難度。
? 給客戶一個相對好加工的封裝,加快客戶的設計速度。
? 幫客戶把硬件驅(qū)動都做好,加快客戶的軟件開發(fā)速度。
? 幫客戶把多種協(xié)議棧調(diào)試好,進一步加快客戶產(chǎn)品上市。
三、嵌入式ARM終端產(chǎn)品開發(fā)難點
嵌入式處理器應用已非常廣泛,但在進行終端產(chǎn)品開發(fā)時,硬件設計、軟件開發(fā)、和生產(chǎn)維護上卻有一些無法規(guī)避的痛點。
01、硬件設計痛點
▲ 設計難度大:隨著嵌入式技術(shù)的發(fā)展,嵌入式處理器的性能越來越高,與之相對的是開發(fā)難度也越來越大,已不是單片機工程師軟硬通吃的時代了。從SDRAM到LPDDR4,內(nèi)存速率越來越快,PCB層數(shù)也從早期4層就可以滿足到現(xiàn)在動輒8-12層,對高速走線與硬件的仿真都有了很大的要求,開發(fā)投入隱性成本高。
▲設計周期長:從熟悉CPU的啟動、內(nèi)存選配到電源架構(gòu)設計,動輒幾百根連線,一般需要半年以上的時間完成硬件設計與測試;后互聯(lián)網(wǎng)時代對產(chǎn)品上市效率的要求很高,可謂“時間就是金錢”,市場不會因為設計難度停下來等你。
▲ 穩(wěn)定性測試復雜:高低溫測試、壓力測試、信號完整性測試、電源帶載測試、長期運行穩(wěn)定性測試、頻繁斷電、上電開關(guān)機測試等都需要有完備的測試設備與經(jīng)驗方能完成。任何一個環(huán)節(jié)測試不通過都有可能讓設計重新來過,增加了工程師的壓力。
02、軟件設計的痛點
▲ 系統(tǒng)移植周期長:適配一個符合產(chǎn)品需求的操作系統(tǒng),需要很長的開發(fā)周期。文件系統(tǒng)裁剪、文檔解讀、適配硬件、BUG調(diào)試,種種工作無疑加大了開發(fā)難度,也延長了開發(fā)周期;
▲ 重復開發(fā):企業(yè)在有不同的產(chǎn)品研發(fā)項目時,會根據(jù)產(chǎn)品的特性選擇不同品牌或型號的嵌入式處理器,這些處理器的性能和價格不同。如果使用同一款處理器開發(fā)不同產(chǎn)品可能會發(fā)生性能過?;蛘咝阅懿蛔愕那闆r,但是如果每個項目都選擇不同型號的處理器開發(fā)又會出現(xiàn)重復開發(fā)和精力不足的問題。重要的是,終端產(chǎn)品企業(yè)的軟件研發(fā)精力更適合投入到應用程序的開發(fā),與硬件相關(guān)的kernel層需要隨著處理器的變化而更改;
03、生產(chǎn)與維護的痛點
▲ 生產(chǎn)良率的控制難:嵌入式處理器開發(fā)的產(chǎn)品PCB層數(shù)多,且多數(shù)是高速信號,對PCB材質(zhì)、物料品質(zhì)、焊接質(zhì)量要求很高,如果達不到生產(chǎn)的一致性會直接導致良品率的下降甚至會造成板卡在現(xiàn)場不穩(wěn)定的情況。
▲ 產(chǎn)品維護周期長:高速信號對PCB阻抗要求高,材質(zhì)的細微變化都很可能會導致內(nèi)存參數(shù)的調(diào)整。加之一些行業(yè)的產(chǎn)品生命周期很長,動輒十年以上,過程中任何一個芯片的停產(chǎn)或更新都需要軟硬件驅(qū)動的修改,雖然難度不大但始終都要有人維護,分散精力。