新聞中心

EEPW首頁(yè) > 消費(fèi)電子 > 設(shè)計(jì)應(yīng)用 > 基于MCU和FPGA靈活設(shè)計(jì)車載信息娛樂(lè)系統(tǒng)

基于MCU和FPGA靈活設(shè)計(jì)車載信息娛樂(lè)系統(tǒng)

作者: 時(shí)間:2007-08-24 來(lái)源:網(wǎng)絡(luò) 收藏
汽車工業(yè)蓬勃發(fā)展,已經(jīng)不再是豪華轎車的獨(dú)有設(shè)施,越來(lái)越多的中低端轎車開(kāi)始擁有自己的

  然而,是一個(gè)高度集成的復(fù)雜系統(tǒng),其中可以包括導(dǎo)航系統(tǒng)、影音系統(tǒng)、電話系統(tǒng)、空調(diào)通風(fēng)系統(tǒng),以及其他車內(nèi)外舒適設(shè)備的控制系統(tǒng)等,這些系統(tǒng)涉及的通訊網(wǎng)絡(luò)可以包括LINK_KEYWORD0、MOST、LIN、藍(lán)牙和其他無(wú)線網(wǎng)絡(luò)協(xié)議等。這樣一個(gè)復(fù)雜系統(tǒng),不但要考慮系統(tǒng)的性能和成本,更要考慮性,以保持產(chǎn)品在快速變化的市場(chǎng)中的競(jìng)爭(zhēng)力。

  汽車電子系統(tǒng)要求溫度適應(yīng)范圍大、有利于生產(chǎn)標(biāo)準(zhǔn)化和很長(zhǎng)的壽命。信息娛樂(lè)系統(tǒng)是一個(gè)快速發(fā)展和適應(yīng)各種用戶的系統(tǒng),如果既要保持一個(gè)設(shè)計(jì)具有長(zhǎng)的壽命又要有高度的性,那么這種設(shè)計(jì)在軟硬件,特別是在硬件方面要有很強(qiáng)的可擴(kuò)展性。

  一般來(lái)說(shuō),車載信息娛樂(lè)系統(tǒng)具有復(fù)雜的人機(jī)界面(按鍵和旋鈕),帶一個(gè)可以顯示地圖、影像和汽車信息的液晶顯示器,有時(shí)還會(huì)是觸摸屏。這種系統(tǒng)一般以一個(gè)高性能為中心,加上各種標(biāo)準(zhǔn)接口以及一個(gè)視頻加速器件。

  DSP、ASSP和都可以用來(lái)實(shí)現(xiàn)多種接口和視頻處理。D

SP專為信號(hào)處理而設(shè)計(jì),具有度高和功耗低的特點(diǎn)。然而,目前DSP的運(yùn)算能力尚不能同時(shí)滿足更高的圖像處理和無(wú)線通訊的要求。ASSP通常為某個(gè)標(biāo)準(zhǔn)的圖像處理和無(wú)線通訊而設(shè)計(jì),換言之,它不具有適應(yīng)多種標(biāo)準(zhǔn)的可編程性。同時(shí)具有高的運(yùn)算能力和內(nèi)部邏輯的現(xiàn)場(chǎng)可編程性,它能夠適應(yīng)車載信息娛樂(lè)系統(tǒng)的靈活性。另外,的現(xiàn)場(chǎng)可編程性使之能夠代替很多原來(lái)要ASIC來(lái)實(shí)現(xiàn)的功能單元,這樣就給硬件設(shè)計(jì)帶來(lái)很大自由度。

  應(yīng)用+FPGA的設(shè)計(jì),軟件和外設(shè)硬件都可以在FPGA中變化,整個(gè)系統(tǒng)相當(dāng)于一個(gè)很容易進(jìn)行升級(jí)的軟件,改變硬件就像改變軟件一樣簡(jiǎn)單。這樣的系統(tǒng)可以滿足從低端到中高端汽車電子產(chǎn)品的設(shè)計(jì)、測(cè)試和生產(chǎn)的要求。所以,+FPGA的設(shè)計(jì)給車載信息娛樂(lè)系統(tǒng)帶來(lái)了很大的靈活性。

  在確立了基本硬件框架之后,接著就要考慮這種框架的芯片的選擇。對(duì)于車載娛樂(lè)信息系統(tǒng)這樣一個(gè)復(fù)雜的人機(jī)交互系統(tǒng),高性能和高安全的嵌入式實(shí)時(shí)操作系統(tǒng)是首選的軟件基礎(chǔ)。而該操作系統(tǒng)支持的芯片組將是MCU的主要候選者。目前,在汽車工業(yè)界普遍接受的組合是SH4(MCU)加上QNX(操作系統(tǒng))。

  FPGA的選擇要相對(duì)容易一些,至少有Xilinx、Altera、Lattice、Actel和Quicklogic等五家公司的產(chǎn)品可以考慮。Xilinx和Altera是FPGA的行業(yè)領(lǐng)袖,他們的產(chǎn)品應(yīng)用廣泛,有大量的標(biāo)準(zhǔn)庫(kù)可以采用。圖1的框圖是一個(gè)硬件的基本構(gòu)成示意圖。

  考慮了硬件之后,軟件的架構(gòu)就變得明晰了。由于QNX支持POSIX規(guī)范,所以它編寫的模塊化的應(yīng)用程序和應(yīng)用開(kāi)發(fā)庫(kù)具有良好的可移植性,這對(duì)支持同類軟件架構(gòu)的其他平臺(tái)的開(kāi)發(fā)無(wú)疑是一件節(jié)約成本的好事。

硬件的基本構(gòu)成示意圖

點(diǎn)擊看原圖

圖1:硬件的基本構(gòu)成示意圖。

  軟件架構(gòu)的概念設(shè)計(jì)實(shí)際上可以在操作系統(tǒng)明確之前就開(kāi)始。軟件設(shè)計(jì)不一定非要遵從POSIX規(guī)范,而是要滿足系統(tǒng)的高性能、設(shè)計(jì)的模塊化、應(yīng)用的可伸縮性和代碼的可重用性及可移植性。

  通常一個(gè)基于MCU的復(fù)雜軟件系統(tǒng)應(yīng)該定義以下的軟件層:

  BSP:處理和MCU初始化相關(guān)的事務(wù),如IPL(Initial Program Loader)和Startup Program等;

  設(shè)備驅(qū)動(dòng):所有和硬件相關(guān)的程序,如FLASH driver、CAN driver和圖形圖像驅(qū)動(dòng)等;

  OS:核心操作系統(tǒng),負(fù)責(zé)提供資源管理和安全任務(wù)調(diào)度等服務(wù),它甚至也可以包含一些高層次的驅(qū)動(dòng)設(shè)備,如標(biāo)準(zhǔn)輸入輸出設(shè)備驅(qū)動(dòng)等;

  中間件:介于操作系統(tǒng)和應(yīng)用程序之間的程序,如各種API和FPGA Loader等;

  應(yīng)用程序:具有高度可重用性的、完成特定功能的程序模塊,如媒體播放器和導(dǎo)航軟件。

  在MCU+FPGA的架構(gòu)之下,每個(gè)和FPGA相關(guān)的應(yīng)用程序都自帶一個(gè)初始化例程。該初始化例程在需要啟動(dòng)該應(yīng)用程序之前將該應(yīng)用程序映射到FPGA,然后該應(yīng)用程序在FPGA上運(yùn)行。根據(jù)應(yīng)用程序的要求,MCU可以在完成映射之后,保持和FPGA強(qiáng)的或弱的通訊聯(lián)系。這種結(jié)構(gòu)部分解放了MCU,使之能夠有效地進(jìn)行任務(wù)調(diào)度和資源管理,而FPGA也能夠在特定環(huán)境下高效運(yùn)行。這種系統(tǒng)的另外一個(gè)好處就是非常穩(wěn)定且容易維護(hù)。運(yùn)行在FPGA中的應(yīng)用程序的不良動(dòng)作或崩潰通常不會(huì)影響到運(yùn)行在MCU中的操作系統(tǒng)。在發(fā)現(xiàn)某個(gè)應(yīng)用程序失效之后,操作系統(tǒng)可以從容地重新開(kāi)始該應(yīng)用程序的新例程,而不必重啟整個(gè)系統(tǒng)。

  運(yùn)行在FPGA中的應(yīng)用程序,雖然看起來(lái)和普通運(yùn)行在ASIC或ASSP中的系統(tǒng)并無(wú)區(qū)別,但是這些應(yīng)用程序的結(jié)構(gòu)實(shí)際上有很大的區(qū)別。運(yùn)行在ASIC或ASSP中的系統(tǒng)是根據(jù)已經(jīng)確定的具有特定功能硬件環(huán)境設(shè)計(jì)的,而運(yùn)行在FPGA中的應(yīng)用程序是根據(jù)將要完成的功能,自己調(diào)整FPGA的邏輯單元,使之能夠適應(yīng)環(huán)境。正是FPGA這種現(xiàn)場(chǎng)可編程性,使我們能夠在適當(dāng)?shù)臅r(shí)候啟動(dòng)適當(dāng)?shù)膽?yīng)用程序,這大大增加了設(shè)計(jì)的靈活性。



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉