用32位MCU設計應用系統(tǒng)時的軟硬件考慮
與代碼開發(fā)工作項目相關的其它重要的問題也不可被忽視:
* 實時操作系統(tǒng)選擇:已有很多論文和文章就如何選取擇實時操作系統(tǒng)給出了建議。對于ECU設計,OSEK已經(jīng)逐漸演變?yōu)樾袠I(yè)標準RTOS,可從許多的供應商那里買到這種具有確定性、魯棒性、高效率和穩(wěn)定的解決方案。
* 調(diào)試模式:軟件工程師應當在項目進入集成階段的時候,確信自身具備足夠的查錯及排障的能力,盡管代碼模擬器相當可靠,但集成問題還是存在的。這時候要怎么辦?答案各有不同。以ECU設計為例,一個全速傳統(tǒng)的在線仿真器(ICE)的價格昂貴(12,000美元),它不僅在引擎隔倉中應用在線仿真的難度很大,而且不能用于解決棘手的時序問題。
相比之下,片上調(diào)試(JTAG型) 仿真器是經(jīng)濟的($1,000) ,并且較易于連接到系統(tǒng)上。舉個例子,Renesas' E10A是一種JTAG-兼容硬件調(diào)試器,該種調(diào)試器可使工程師詢問并控制寄存器集以及某個超高整處理器的RAM存儲器。此外,要提高ECU代碼的精度,軟件工程師要能利用某種AUD(高級用戶調(diào)試) 的特性,該AUD會形成超高速CPU管線的特別的線跡。Renesas SH7058 MCU系列中,MCU上的AUD界面是雙向作用的,并且無須暫停CPU,也可使RAM進行存儲。
硬件問題
32位系統(tǒng)的開發(fā)過程中會遇到很多硬件問題,以下幾點值得特別注意:
* 電源供應濾波:絕大部分32位MCU比16位MCU的運行速度要快很多,此外,32位MCU的CPU內(nèi)核要求獨立的低壓供電系統(tǒng),因此其噪聲容限要比I/O電路嚴格得多。因此,在PUB周圍,尤其MCU的附近要安放足夠的低頻和高頻的去耦電容,實踐表明去耦電容能夠有效地降低噪聲。
* 片上閃存:在過去,用于ECU 系統(tǒng)中的許多MCU 不具備足夠的內(nèi)存作為一個單芯片控制器進行運行,并且部分MCU 就根本沒有程序內(nèi)存,結果是程序內(nèi)存被設置在芯片之外,由于需要大量高速尋址和數(shù)據(jù)總線,因而常常會導致EMI問題的出現(xiàn)。
目前,像SH7058這樣的32位ECU具有1 MB閃存,具有真正意義的單片解決方案特征。在大多數(shù)情況下,由于具有大量的片上程序內(nèi)存,所以不再需要片外內(nèi)存。在采用SH7058的ECU設計中,片上閃存可通過兩種方式進行固化,一種是在主板制造前,對器件進行固化,另一種是主板的設計完成后在系統(tǒng)內(nèi)進行固化,這樣,軟件工程師在升級代碼時就有了很大的靈活性,工程師甚至能在ECU被安裝在車輛內(nèi)部以后,也能借助車載總線(CAN)進行升級操作。
本文小結
從16位到32位MCU的跨躍是一個質(zhì)的飛躍,這種趨勢是不可避免的。32位實現(xiàn)方案極大地提升系統(tǒng)的運算能力及操作性能,進行成功轉(zhuǎn)換的關鍵是要有充分的準備、訓練和周密的開發(fā)工具選擇策略,此外,像瑞薩這樣的32位MCU供應商的持續(xù)支持也是至關重要的。
評論