新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 利用FPGA協(xié)處理器優(yōu)化汽車信息娛樂和信息通信系統(tǒng)

利用FPGA協(xié)處理器優(yōu)化汽車信息娛樂和信息通信系統(tǒng)

作者: 時間:2011-10-24 來源:網(wǎng)絡(luò) 收藏
集成了數(shù)據(jù)通信、本地服務(wù)和視頻娛樂功能的高端汽車信息娛樂系統(tǒng)需要高性能的可編程處理技術(shù)支持,將FPGA協(xié)處理器整合進(jìn)主流汽車信息通訊系統(tǒng)架構(gòu)是最理想的解決方案。本文提出了汽車娛樂系統(tǒng)的要求,討論了主流系統(tǒng)架構(gòu),并介紹如何將FPGA協(xié)處理器整合進(jìn)硬件和軟件架構(gòu)以滿足高性能處理要求、靈活性要求及降低成本的目標(biāo)。

娛樂電子正成為豪華汽車之間差異化的主要方面,因而推動了其性能和功能的快速發(fā)展。如何折衷考慮性能、成本和靈活性要求是設(shè)計工程師面臨的挑戰(zhàn)。高端應(yīng)用包括衛(wèi)星收音機(jī)、后座娛樂、導(dǎo)航、各種類型的音頻回放、語音合成和識別,以及其它新的應(yīng)用。

汽車娛樂系統(tǒng)用的核心技術(shù)與傳統(tǒng)的汽車應(yīng)用有本質(zhì)的區(qū)別。與汽車電子的其它領(lǐng)域不同,這些娛樂應(yīng)用是天天要用的,需求也不斷在發(fā)生變化。另外,過時的娛樂系統(tǒng)將成為新車銷售的主要障礙,并且會影響汽車轉(zhuǎn)售價格和出租價格。

車載娛樂系統(tǒng)的技術(shù)要求

傳統(tǒng)的汽車電子為具有較長產(chǎn)品壽命、更寬溫度范圍和低成本要求的全面標(biāo)準(zhǔn)化推動,車載娛樂系統(tǒng)基本上也要滿足這些要求。設(shè)計工程師不但需要設(shè)計長壽命的系統(tǒng),并且要能適應(yīng)系統(tǒng)功能的快速發(fā)展。這些要求需要很強(qiáng)的靈活性和性能,這是以傳統(tǒng)的特定應(yīng)用標(biāo)準(zhǔn)產(chǎn)品(ASSP)為基礎(chǔ)的系統(tǒng)架構(gòu)所不能提供的。

現(xiàn)在設(shè)計的車載娛樂系統(tǒng)的基本架構(gòu)能夠支持平板顯示器,通過圖形化的人機(jī)界面可以顯示動態(tài)地圖和汽車信息。這些架構(gòu)周邊有高度標(biāo)準(zhǔn)化的微控制器、各種標(biāo)準(zhǔn)接口以及支持低端圖形處理的簡單硬件加速器。這種架構(gòu)能夠以非常低的成本滿足汽車市場的中等級娛樂系統(tǒng)要求,也能擴(kuò)展到高端應(yīng)用以適合頂級豪華汽車市場要求,視頻圖像處理和通信是典型的頂級應(yīng)用例子。支持這些應(yīng)用的各種標(biāo)準(zhǔn)包括視頻的MPEG2、MPEG4和H.264,以及通信的GSM/EDGE、WCDMA、1XEVDO、衛(wèi)星收音機(jī)、衛(wèi)星電視、數(shù)字視頻廣播和WiFi,這些標(biāo)準(zhǔn)都依賴于不斷發(fā)展的多種信號處理算法,這些算法需要特別高的可編程處理性能。

目前有三種半導(dǎo)體技術(shù)可用于實(shí)現(xiàn)這些高度復(fù)雜的算法,這三種技術(shù)分別是可編程數(shù)字信號處理器(DSP)、ASSP和現(xiàn)場可編程門陣列(FPGA)。DSP是一種高性能可編程處理器,專門設(shè)計用于信號處理,DSP處理器靈活性高、功耗低、性價比也較高,但沒有硬件加速功能,不能提供當(dāng)今高級圖像處理和無線通信算法所需的計算能力;通常內(nèi)含DSP處理器的ASSP能夠為簡單視頻或通信標(biāo)準(zhǔn)提供優(yōu)化解決方案,但不能被編程以適應(yīng)不同的標(biāo)準(zhǔn);而FPGA不僅具有很高的處理性能,而且可編程,因此可以滿足多種應(yīng)用和標(biāo)準(zhǔn)要求。與其它二種技術(shù)不同,F(xiàn)PGA的靈活性和性能可以滿足所有潛在算法的要求。

圖一

FPGA協(xié)處理器的應(yīng)用

上文提到的信息通訊基本架構(gòu)需要額外的處理芯片來處理高端應(yīng)用,這些芯片一般是ASIC和ASSP,它們通過存儲器或視頻處理總線與處理器集成,從而成為特定應(yīng)用協(xié)處理器。用FPGA替換這種特定應(yīng)用硬件是一種非常好的方法,將FPGA和處理器集成在一起的應(yīng)用稱為FPGA協(xié)處理。FPGA的這種使用方式能夠根據(jù)要求將新的特定應(yīng)用加速器下載到FPGA中,從而協(xié)助完成任何高性能應(yīng)用。這一概念被廣泛應(yīng)用于高級軍事多標(biāo)準(zhǔn)無線電設(shè)備,通常稱為軟件無線電(SDR)技術(shù)。采用SDR技術(shù),通過簡單的按鍵就可以使一個無線電設(shè)備自動適應(yīng)不同的無線電標(biāo)準(zhǔn),這不僅有助于設(shè)備適應(yīng)于未來的應(yīng)用,也能減少執(zhí)行不同任務(wù)時空閑的定制處理器的數(shù)量。這種軟件無線電技術(shù)也可以用于車載通信和視頻應(yīng)用。

FPGA在視頻處理和無線連接方面的靈活性還能節(jié)約設(shè)備成本,增加系統(tǒng)的價值。目前的基本架構(gòu)需要ASSP才能支持每個新的視頻編解碼或無線標(biāo)準(zhǔn)。用一個FPGA替代多個ASSP可以減少汽車使用壽命期間必須配置和維護(hù)的次數(shù)。擴(kuò)展車載娛樂系統(tǒng)的基本架構(gòu),使其包含F(xiàn)PGA就可以提供可編程的單一高端平臺,從而涵蓋更寬范圍的視頻和無線標(biāo)準(zhǔn)和性能。這種方法同樣適合高級汽車娛樂系統(tǒng)架構(gòu)使用。

Delphi Delco電子系統(tǒng)公司發(fā)布了先進(jìn)的汽車娛樂系統(tǒng)架構(gòu)范例。該平臺采用了一個標(biāo)準(zhǔn)的SH-4微處理器和一個日立的HD64404“Amanda”ASIC器件,提供了80%中級汽車市場所需的基本功能。該系統(tǒng)提供了一個帶標(biāo)準(zhǔn)API層的通用控制處理器,可以對硬件外設(shè)和協(xié)處理器進(jìn)行抽象。ASIC提供基本的外圍器件功能和一體化的圖形處理器,這種圖形處理器可以支持交互圖形和擴(kuò)展功能,但不能提供視頻編解碼或其它DSP功能。該系統(tǒng)提供了所有娛樂設(shè)備所需的基本功能,但仍需要額外的ASIC或ASSP才能完成視頻編解碼和無線通信。

圖二

Delphi架構(gòu)中的Amanda芯片(見圖1,2 )使用了兩條處理總線,即用于視頻處理等高性能數(shù)據(jù)流的Pixel總線以及控制用的寄存器總線,這兩條總線都相連于SH-4 MPX總線和外部存儲器接口??偩€和存儲器接口的這種完美組合可以很好地支持基于FPGA協(xié)處理器的靈活視頻編解碼和無線通信平臺。

FPGA協(xié)處理可使FPGA與控制或DSP處理器緊密整合在一起,因此可以分擔(dān)大部分算法處理任務(wù),同時保留標(biāo)準(zhǔn)編程接口于控制處理器上。當(dāng)算法的主要數(shù)據(jù)流駐留于FPGA或相關(guān)存儲器上時,這種整合的運(yùn)行效果最佳。算法是由來自于控制處理器的緩慢控制信號控制。

該類型架構(gòu)可以應(yīng)用于無線通信,它能通過單個FPGA支持GSM/EDGE、WCDMA、1xEVD0中的數(shù)字處理以及各種802.11標(biāo)準(zhǔn)。其它方案只能是針對每個標(biāo)準(zhǔn)做專門的硬件設(shè)計,但這樣做會成倍增加成本和電路板面積。

另外,在圖像處理中應(yīng)用FPGA協(xié)處理后可以由單個FPGA完成包含MPEG2、MPEG4和H.264在內(nèi)的多標(biāo)準(zhǔn)視頻編解碼。事實(shí)上,這里可以使用與無線通信應(yīng)用中相同的FPGA。

FPGA協(xié)處理器通過直接存儲器訪問(DMA)接口與基于處理器的系統(tǒng)整合在一起。運(yùn)行于嵌入式處理器上的軟件層為每個協(xié)處理器提供一個應(yīng)用接口,每個協(xié)處理器都有一個初始化例程,可以通過正確的應(yīng)用協(xié)處理器加載FPGA。在應(yīng)用程序初始化后,軟件就調(diào)用協(xié)處理器控制參數(shù)、時序和數(shù)據(jù)流進(jìn)出協(xié)處理器。根據(jù)具體的實(shí)現(xiàn)標(biāo)準(zhǔn)不同,在FPGA協(xié)處理器和控制處理器之間可能會有高等級的交互,也可能FPGA協(xié)處理器完全獨(dú)立工作。在這種情況下,控制處理器只是簡單地加載算法,然后就處于獨(dú)立運(yùn)行狀態(tài)。

加載進(jìn)FPGA的每個程序映像(program image)需要整合進(jìn)周邊系統(tǒng)中。FPGA的可編程功能需要一個定義完善的系統(tǒng)接口才能實(shí)現(xiàn),因為每個基于FPGA的加速器都要依賴于它才能完成通信。通常FPGA會有多個接口連接控制器、存儲器及其它外圍器件或連接器。FPGA可能同時包含多個協(xié)處理器,這些協(xié)處理器共享一個連接控制處理器的接口。每個外圍器件或協(xié)處理器可以擁有額外的總線用于高性能數(shù)據(jù)流處理。

在視頻編解碼器中,一般有一個輸入源和一個輸出目標(biāo)。Delphi系統(tǒng)架構(gòu)中的視頻輸入接口是Amanda ASIC的一部分,并采用ITU-R BT.656接口用于視頻流。這個接口以后可以通過ASIC進(jìn)行擴(kuò)展和管理,以適合不同種類的顯示屏。FPGA可能需要連接到其它2條總線,即ASIC芯片上的存儲器總線和主控制處理器的PCI/MPX總線。通過這三個連接,F(xiàn)PGA就能支持高帶寬的視頻和通信應(yīng)用。

FPGA可以為特定應(yīng)用處理架構(gòu)提供可再編程的平臺,從而彌補(bǔ)主處理器的不足。然而,F(xiàn)PGA程序與標(biāo)準(zhǔn)處理器架構(gòu)的程序具有本質(zhì)的區(qū)別。FPGA可以提供帶可編程邏輯單元、布線資源、DSP處理模塊、存儲器和I/O的高性能硬件結(jié)構(gòu)。FPGA的系統(tǒng)架構(gòu)執(zhí)行方式與標(biāo)準(zhǔn)ASSP基本相同,即系統(tǒng)的一些專用功能是通過硬件和軟件開發(fā)工具設(shè)計和實(shí)現(xiàn)的。這些工具的輸出是一種二進(jìn)制映像文件,這些映像文件加載到FPGA中后將能確定所有可編程邏輯單元、布線資源、DSP處理模塊等的功能。主處理器可以在系統(tǒng)運(yùn)行期間將這些二進(jìn)制映像文件加載進(jìn)FPGA??梢詣?chuàng)建各種不同的程序映像來支持汽車信息通信系統(tǒng)中可能會用到的MPEG2、MPEG4、H.264、GSM/EDGE、WCDMA、1xEVDO、GPS、3D圖形加速器或其它算法。根據(jù)用戶在娛樂系統(tǒng)中的菜單選擇,特定應(yīng)用程序可以由主處理器下載到FPGA中,然后接受主處理器的控制。

FPGA用于可編程功能要求良好定義的系統(tǒng)接口

主處理器對特定硬件加速器的控制一般是通過寄存器和存儲器接口完成,每個寄存器控制硬件加速器工作的某些方面。Delphi系統(tǒng)中默認(rèn)的協(xié)同芯片就是這樣的,對于加載到FPGA的每個協(xié)處理器架構(gòu)來說也將是這樣。采用FPGA,對于處理像標(biāo)準(zhǔn)化寄存器和存儲器接口以控制編程到器件中的協(xié)處理器這樣的任務(wù)來說是很容易的。這個標(biāo)準(zhǔn)接口可以定義如何向協(xié)處理器讀寫數(shù)據(jù)、如何開始和停止讀寫、如何復(fù)位,并包含一套控制特定應(yīng)用操作的寄存器。所有這些寄存器都是FPGA內(nèi)部線性地址映射中的一部分,因此軟件物理器件驅(qū)動器很容易訪問這些寄存器。

用于協(xié)處理器的軟件物理器件驅(qū)動器的抽象級別要比用硬件實(shí)現(xiàn)的寄存器接口高。軟件驅(qū)動器提供了從系統(tǒng)的算法參數(shù)到控制寄存器的映射,因此應(yīng)用軟件非常容易編寫和維護(hù)。更高層模型器件驅(qū)動器在底層硬件實(shí)現(xiàn)變化過程中仍保持相當(dāng)?shù)目梢浦残?。Delphi系統(tǒng)中的軟件架構(gòu)可以支持軟件或硬件協(xié)處理器來實(shí)現(xiàn)算法,它提供了幾個抽象層,這些抽象層將在軟件或硬件中的算法實(shí)現(xiàn)與物理實(shí)現(xiàn)分離開來。FPGA協(xié)處理器非常適合Delphi的軟件和硬件架構(gòu)。

FPGA被設(shè)計用于基本架構(gòu)與Delphi系統(tǒng)架構(gòu)類似的許多系統(tǒng)中。這些系統(tǒng)內(nèi)含一個以上的控制或DSP處理器,并利用FPGA來加速那些需要高性能處理的任務(wù)。實(shí)現(xiàn)FPGA協(xié)處理器的關(guān)鍵挑戰(zhàn)在于以下幾個方面:設(shè)計用于FPGA的不同的硬件加速器;硬件加速器與外部控制處理器整合;創(chuàng)建控制硬件加速器的軟件層。所有要求的硬件加速器包括用于視頻和通信應(yīng)用的主流算法。這樣的應(yīng)用今后會有廣闊的市場,而且這種市場發(fā)展后會培養(yǎng)更多的特殊標(biāo)準(zhǔn)知識產(chǎn)權(quán)(IP)硬件加速器專業(yè)設(shè)計公司,這些公司能夠提供可以直接用在先進(jìn)的低成本FPGA中的現(xiàn)成算法。另外,也可以購買針對MPEG2、MPEG4、H.264、WiFi和其它視頻與通信標(biāo)準(zhǔn)設(shè)計的商用IP模塊。圖3就是Amphion公司推出的MPEG4解碼器IP模塊框圖,可用于ASIC或FPGA中。

圖3

SOPC Builder的應(yīng)用

下一步是將FPGA中的硬件加速器與用于控制、數(shù)據(jù)輸入和輸出的外部總線整合起來。設(shè)計工程師可以利用新型開發(fā)工具輕松地實(shí)現(xiàn)這一步。設(shè)計工程師可以使用Altera公司提供的系統(tǒng)集成工具SOPC Builder從可用的IP列表中選擇合適的IP模塊。在選擇時工具會提供一份參數(shù)化菜單,用戶可以在實(shí)現(xiàn)以前控制不同的架構(gòu)選項。一旦參數(shù)設(shè)定后,模塊就會包含在工程師準(zhǔn)備集成的其它外圍器件和處理器列表中。當(dāng)每個IP模塊都選好并設(shè)定參數(shù)后,還需要將其集成進(jìn)處理架構(gòu)中。

SOPC Builder使設(shè)計工程師可以定義高性能的交換架構(gòu)(switch architecture),并通過交換架構(gòu)將各種硬件加速器和周邊器件與外部主處理器連接起來。在模塊互連的直觀矩陣圖上通過點(diǎn)擊鼠標(biāo)就可以完成這種開關(guān)架構(gòu)的定義。在定義好之后,SOPC Builder就能自動組合各個IP,然后生成硬件描述語言的描述,并自動綜合成最終的FPGA程序。在運(yùn)行期間將最終程序下載到FPGA,從而實(shí)現(xiàn)特定算法的協(xié)處理器。

硬件整合完成后,需要用軟件物理器件將高層軟件控制與用于控制硬件加速器的具體寄存器和存儲器映射架構(gòu)分隔開。用于控制硬件加速器的寄存器和存儲器是參數(shù)化IP模塊的標(biāo)準(zhǔn)組件。然而,多個外圍器件與加速器的整合需要一份在FPGA上實(shí)現(xiàn)所有可編程特性的寄存器和存儲器映射。SOPC Builder在將IP組裝進(jìn)用戶定義的交換架構(gòu)時能夠自動創(chuàng)建這樣的寄存器和存儲器映射。

每個IP模塊都包含一套預(yù)先定義好的軟件物理器件驅(qū)動器,這些驅(qū)動器主要用于外部主處理器對IP模塊的控制。SOPC Builder能夠自動組裝各個軟件物理器件驅(qū)動器,并自動將每個驅(qū)動器與被它控制的IP模塊相關(guān)的寄存器和存儲器映射關(guān)聯(lián)起來。因此SOPC Builder能夠通過這種方式自動創(chuàng)建并整合FPGA協(xié)處理器和控制處理器的硬件與軟件架構(gòu)。SOPC Builder可以滿足FPGA快速發(fā)展的性能要求,并適應(yīng)FPGA不斷增強(qiáng)在復(fù)雜系統(tǒng)實(shí)現(xiàn)中應(yīng)用的能力。

推動FPGA技術(shù)快速發(fā)展的因素

可編程邏輯器件自從20年前推出以來得到了迅猛發(fā)展,已經(jīng)從低水平的膠合邏輯發(fā)展成目前具有最低成本、最高可編程處理性能的器件。驅(qū)動FPGA性能和成本的二大關(guān)鍵要素是:FPGA架構(gòu)的發(fā)展以及FPGA使用半導(dǎo)體技術(shù)的方式。FPGA架構(gòu)提供的可編程邏輯單元陣列是與可編程布線資源組合在一起的。在早期的低密度FPGA中,這種架構(gòu)能完成簡單處理單元的互連。隨著FPGA密度的提高,陣列架構(gòu)可以提供高度并行處理的能力。目前FPGA架構(gòu)的整個處理陣列內(nèi)包含有存儲器模塊、DSP模塊和可編程I/O,因此能夠輕松滿足汽車信息處理系統(tǒng)的性能要求。

FPGA發(fā)展的另外一個重要驅(qū)動源是工藝技術(shù)及其對性能和成本的影響。采用最新一代工藝技術(shù)可以提高FPGA的密度和性能,降低FPGA的成本。同時,F(xiàn)PGA的廣泛應(yīng)用反過來也促進(jìn)工藝技術(shù)的發(fā)展。FPGA對半導(dǎo)體工藝技術(shù)的發(fā)展極具價值,因為它們使用的規(guī)則結(jié)構(gòu)能夠在其生命周期的早期就投入批量生產(chǎn)。FPGA的規(guī)則結(jié)構(gòu)非常方便產(chǎn)品缺陷測試中統(tǒng)計數(shù)據(jù)的收集,這對精確調(diào)整工藝技術(shù)以達(dá)到更高制造良品率是非常重要的。FPGA和工藝技術(shù)之間的共生關(guān)系不斷地提高著FPGA的密度,并降低器件的成本。因此相對專用ASIC和ASSP來說,目前Altera的Cyclone系列低成本FPGA在價格方面極具競爭性。

本文小結(jié)

汽車娛樂系統(tǒng)的技術(shù)和差異化在不斷快速發(fā)展。先進(jìn)的系統(tǒng)架構(gòu)服務(wù)于大部分主流汽車市場,并通過附加ASSP和軟件的支持實(shí)現(xiàn)高端產(chǎn)品的差異化。FPGA提供了高性能和靈活的協(xié)處理平臺,并將許多ASSP的功能整合進(jìn)一個可再編程平臺。FPGA協(xié)處理器非常適合Delphi架構(gòu)這樣的主流汽車娛樂架構(gòu)。將FPGA協(xié)處理器用作高端汽車娛樂系統(tǒng)架構(gòu)的一部分后,汽車公司就可以通過軟件編程提供ASSP無法單獨(dú)提供的多種高端視頻和通信性能。靈活的高端汽車娛樂架構(gòu)利用FPGA可以在汽車銷售甚至整個汽車生命期內(nèi)不斷實(shí)現(xiàn)新的功能。在銷售和售后階段增強(qiáng)汽車娛樂系統(tǒng)功能的能力可以提升汽車售中和售后的價值,而以前被租汽車的轉(zhuǎn)售價值仍是汽車制造商贏利的主要來源。



關(guān)鍵詞: 多媒體 SoPC

評論


相關(guān)推薦

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

關(guān)閉