MCU應(yīng)用系統(tǒng)從16位升級為32位時的設(shè)計考慮
發(fā)布時間:2008/5/27 0:00:00 訪問次數(shù):622
    
    
    當(dāng)我們打算把一個16位的微控制器(mcu)升級到32位的時候,通常要考慮多方面的設(shè)計問題。本文以汽車引擎控制單元(ecu)為例,概要介紹了對這些問題的處理方法。
    
    在過去的二十年當(dāng)中,隨著交通工具復(fù)雜性的日益增加,工程師已將ecu從8位mcu升級為16位以上的器件。目前,這樣一個高度集成的32位risc mcu就是瑞薩公司的sh7058,它是一種具有1mb片上閃存和48kb ram組成的80mhz的mcu。由于存在多種系統(tǒng)需求,如控制擴(kuò)展級輸入/輸出(i/o)、借助于安全性高的通訊鏈接(如can和flexray)與其它的車載系統(tǒng)進(jìn)行通訊以及具有浮點精度的處理算法,當(dāng)今的ecu采用高速32位mcu就是必不可少的配置。
    
    除了帶來新的性能優(yōu)勢之外,最新的32位mcu減少了電路板設(shè)計的復(fù)雜性,節(jié)省了整體pcb空間,降低了系統(tǒng)的功耗要求,并且減少了電噪音和抵抗電磁干擾(emi)的能力。通常,每一個ecu的制造成本約70到100美元不等,以這一成本計算,一個mcu就占到了總成本的15%-20%。
    
    采用32位mcu 的系統(tǒng)通常非常復(fù)雜,并且一般需要花2到4年的時間才能完成一個ecu項目,設(shè)計團(tuán)隊通常由1-2個硬件工程師和4-5個軟件工程師組成。為取得理想進(jìn)度,所有的里程碑及需要的資源必須加以正確識別。此外,從概念定義到生產(chǎn)的設(shè)計流程必須與開始相一致。
    
    項目計劃應(yīng)確定設(shè)計環(huán)境,尤其是開發(fā)工具,并且要考慮測試和調(diào)試規(guī)劃。圖1以圖解形式說明了一個假想的ecu系統(tǒng)圖。
    
    系統(tǒng)劃分
    
    在項目開發(fā)早期階段,主要目標(biāo)是確定用硬件實現(xiàn)什么功能,而用軟件要實現(xiàn)什么功能。這一決定將受工程預(yù)算、元件成本、pcb空間和任務(wù)期限這些因素的影響,因而需要權(quán)衡決定。在ecu設(shè)計當(dāng)中,需要運用大量的算法建模和系統(tǒng)仿真以解決設(shè)計劃分的優(yōu)化問題。目前,有一些供應(yīng)商提供解決設(shè)計劃分問題的方案。
    
    
    
    圖1:采用了32位mcu-sh7058的引擎管理系統(tǒng)。
    
    軟件問題
    
    開發(fā)32位系統(tǒng)的時候,軟件工程師必須考慮采用什么辦法去許多問題。在ecu應(yīng)用中,如果從以前的設(shè)計中所得的經(jīng)驗證的代碼能夠被重新使用,就會節(jié)省時間,工作量也會減少。大部分的嵌入式設(shè)計要用用到c語言,因而代碼可重用的比例很高。
    
    但是,移接原有的代碼需要改變外圍驅(qū)動器和代碼區(qū)段,該區(qū)段顯示了與mcu設(shè)計之間具有特定關(guān)系的項目。我們推薦使用像iar's makeapp這樣能節(jié)省數(shù)小時設(shè)計時間的器件驅(qū)動程序代碼生成工具。
    
    與代碼開發(fā)工作項目相關(guān)的其它重要的問題也不可被忽視:
    
    * 實時操作系統(tǒng)選擇:已有很多論文和文章就如何選取擇實時操作系統(tǒng)給出了建議。對于ecu設(shè)計,osek已經(jīng)逐漸演變?yōu)樾袠I(yè)標(biāo)準(zhǔn)rtos,可從許多的供應(yīng)商那里買到這種具有確定性、魯棒性、高效率和穩(wěn)定的解決方案。
    
    * 調(diào)試模式:軟件工程師應(yīng)當(dāng)在項目進(jìn)入集成階段的時候,確信自身具備足夠的查錯及排障的能力,盡管代碼模擬器相當(dāng)可靠,但集成問題還是存在的。這時候要怎么辦?答案各有不同。以ecu設(shè)計為例,一個全速傳統(tǒng)的在線仿真器(ice)的價格昂貴(12,000美元),它不僅在引擎隔倉中應(yīng)用在線仿真的難度很大,而且不能用于解決棘手的時序問題。
    
    相比之下,片上調(diào)試(jtag型) 仿真器是經(jīng)濟(jì)的($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進(jìn)行存儲。
    
    硬件問題
    
   &nbs
    
    
    當(dāng)我們打算把一個16位的微控制器(mcu)升級到32位的時候,通常要考慮多方面的設(shè)計問題。本文以汽車引擎控制單元(ecu)為例,概要介紹了對這些問題的處理方法。
    
    在過去的二十年當(dāng)中,隨著交通工具復(fù)雜性的日益增加,工程師已將ecu從8位mcu升級為16位以上的器件。目前,這樣一個高度集成的32位risc mcu就是瑞薩公司的sh7058,它是一種具有1mb片上閃存和48kb ram組成的80mhz的mcu。由于存在多種系統(tǒng)需求,如控制擴(kuò)展級輸入/輸出(i/o)、借助于安全性高的通訊鏈接(如can和flexray)與其它的車載系統(tǒng)進(jìn)行通訊以及具有浮點精度的處理算法,當(dāng)今的ecu采用高速32位mcu就是必不可少的配置。
    
    除了帶來新的性能優(yōu)勢之外,最新的32位mcu減少了電路板設(shè)計的復(fù)雜性,節(jié)省了整體pcb空間,降低了系統(tǒng)的功耗要求,并且減少了電噪音和抵抗電磁干擾(emi)的能力。通常,每一個ecu的制造成本約70到100美元不等,以這一成本計算,一個mcu就占到了總成本的15%-20%。
    
    采用32位mcu 的系統(tǒng)通常非常復(fù)雜,并且一般需要花2到4年的時間才能完成一個ecu項目,設(shè)計團(tuán)隊通常由1-2個硬件工程師和4-5個軟件工程師組成。為取得理想進(jìn)度,所有的里程碑及需要的資源必須加以正確識別。此外,從概念定義到生產(chǎn)的設(shè)計流程必須與開始相一致。
    
    項目計劃應(yīng)確定設(shè)計環(huán)境,尤其是開發(fā)工具,并且要考慮測試和調(diào)試規(guī)劃。圖1以圖解形式說明了一個假想的ecu系統(tǒng)圖。
    
    系統(tǒng)劃分
    
    在項目開發(fā)早期階段,主要目標(biāo)是確定用硬件實現(xiàn)什么功能,而用軟件要實現(xiàn)什么功能。這一決定將受工程預(yù)算、元件成本、pcb空間和任務(wù)期限這些因素的影響,因而需要權(quán)衡決定。在ecu設(shè)計當(dāng)中,需要運用大量的算法建模和系統(tǒng)仿真以解決設(shè)計劃分的優(yōu)化問題。目前,有一些供應(yīng)商提供解決設(shè)計劃分問題的方案。
    
    
    
    圖1:采用了32位mcu-sh7058的引擎管理系統(tǒng)。
    
    軟件問題
    
    開發(fā)32位系統(tǒng)的時候,軟件工程師必須考慮采用什么辦法去許多問題。在ecu應(yīng)用中,如果從以前的設(shè)計中所得的經(jīng)驗證的代碼能夠被重新使用,就會節(jié)省時間,工作量也會減少。大部分的嵌入式設(shè)計要用用到c語言,因而代碼可重用的比例很高。
    
    但是,移接原有的代碼需要改變外圍驅(qū)動器和代碼區(qū)段,該區(qū)段顯示了與mcu設(shè)計之間具有特定關(guān)系的項目。我們推薦使用像iar's makeapp這樣能節(jié)省數(shù)小時設(shè)計時間的器件驅(qū)動程序代碼生成工具。
    
    與代碼開發(fā)工作項目相關(guān)的其它重要的問題也不可被忽視:
    
    * 實時操作系統(tǒng)選擇:已有很多論文和文章就如何選取擇實時操作系統(tǒng)給出了建議。對于ecu設(shè)計,osek已經(jīng)逐漸演變?yōu)樾袠I(yè)標(biāo)準(zhǔn)rtos,可從許多的供應(yīng)商那里買到這種具有確定性、魯棒性、高效率和穩(wěn)定的解決方案。
    
    * 調(diào)試模式:軟件工程師應(yīng)當(dāng)在項目進(jìn)入集成階段的時候,確信自身具備足夠的查錯及排障的能力,盡管代碼模擬器相當(dāng)可靠,但集成問題還是存在的。這時候要怎么辦?答案各有不同。以ecu設(shè)計為例,一個全速傳統(tǒng)的在線仿真器(ice)的價格昂貴(12,000美元),它不僅在引擎隔倉中應(yīng)用在線仿真的難度很大,而且不能用于解決棘手的時序問題。
    
    相比之下,片上調(diào)試(jtag型) 仿真器是經(jīng)濟(jì)的($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進(jìn)行存儲。
    
    硬件問題
    
   &nbs