采用FPGA協(xié)處理器優(yōu)化汽車信息娛樂和信息通信系統(tǒng)
集成了數(shù)據(jù)通信,定位服務(wù)和視頻娛樂的高端汽車信息娛樂系統(tǒng)需要高性能的可編程處理技術(shù),其最佳實現(xiàn)方法是在主流汽車信息通信系統(tǒng)構(gòu)架中集成FPGA協(xié)處理器。本文講述汽車娛樂系統(tǒng)的需求,討論主流系統(tǒng)構(gòu)架,以及FPGA協(xié)處理器是如何集成到軟硬件體系中,以滿足高性能處理、靈活性和降低成本的要求。
娛樂電子消費已經(jīng)成為區(qū)分豪華轎車的標(biāo)志之一,推動了汽車性能的快速發(fā)展,設(shè)計者必須在性能,成本和靈活性上進行綜合考慮。高端應(yīng)用包括衛(wèi)星電話,后座娛樂,導(dǎo)航,各種音頻回放,語音合成、識別以及其他新的應(yīng)用。
帶動汽車娛樂系統(tǒng)發(fā)展的核心技術(shù)同先前的汽車應(yīng)用有顯著的不同。不同于其他領(lǐng)域的汽車電子消費,這些娛樂應(yīng)用要高度的可視化,并且需求變化很快。此外,過時的娛樂系統(tǒng)將是新車賣不動的主要原因,也是汽車轉(zhuǎn)售和租賃的主要障礙。
傳統(tǒng)的汽車電子消費主要滿足一般標(biāo)準,例如長的換代周期,低成本和長期的溫度要求。這些要求也是汽車娛樂系統(tǒng)所需的。在汽車設(shè)計上,設(shè)計者面臨長換代周期中經(jīng)歷系統(tǒng)性能快速發(fā)展的挑戰(zhàn),而不再是長換代周期中的小改進。新的需求使得系統(tǒng)結(jié)構(gòu)必須具有靈活性和很好的性能表現(xiàn),而這在基于專用標(biāo)準產(chǎn)品(ASSP)的傳統(tǒng)應(yīng)用系統(tǒng)結(jié)構(gòu)架中是無法實現(xiàn)的。
現(xiàn)在的基本車內(nèi)娛樂系統(tǒng)要求能夠支持具有圖形人性界面的平面顯示系統(tǒng),能夠顯示動態(tài)地圖和汽車信息。這種系統(tǒng)圍繞高度標(biāo)準化的微處理器實現(xiàn),周圍是各種標(biāo)準接口和支持低端圖形處理的簡單硬件加速設(shè)備。它雖然以非常低的成本滿足了中等汽車娛樂系統(tǒng)的市場需求,但是可以擴展到頂級豪華轎車的高端應(yīng)用上。頂級應(yīng)用包括視頻圖像和通信。各種支持這些應(yīng)用的標(biāo)準(視頻:MPEG2,MPEG4,H.264;通信:GSM/EDGE,WCDMA,1xEVDO,衛(wèi)星電話,衛(wèi)星電視,數(shù)字視頻廣播和WiFi)均基于多種信號處理算法。這些算法要求非常高的可編程處理能力?,F(xiàn)在有三種半導(dǎo)體技術(shù)可以實現(xiàn)這些非常復(fù)雜的算法。
這三種技術(shù)是可編程數(shù)字信號處理器(DSP),專用標(biāo)準產(chǎn)品(ASSP)和現(xiàn)場可編程門陣列(FPGA)。DSP為信號處理應(yīng)用提供了性能很高的可編程處理器。DSP處理器非常靈活,功耗低,成本效能高,但是缺乏硬件加速能力,無法為現(xiàn)在的尖端圖像處理和無線通信算法提供所需的計算功能。ASSP通常含有DSP處理器,為單個視頻或通信標(biāo)準提供較好的解決方案,但是不能法通過編程來實現(xiàn)不同的標(biāo)準要求。而FPGA同時具有很高的信號處理能力和可編程能力,能夠滿足很多標(biāo)準和應(yīng)用場合的要求。與其他兩種技術(shù)不同,高性能、靈活的FPGA技術(shù)可以實現(xiàn)各種可能的算法。
前面所講的信息通信系統(tǒng)需要額外的處理芯片以滿足高端應(yīng)用。這些芯片一般是在存儲器或視頻處理總線上集成了處理器的ASIC和ASSP,成為專用協(xié)處理器。FPGA應(yīng)用上的強大之處在于對這種專用硬件的替代。FPGA和處理器配合使用,一般稱為FPGA協(xié)處理器。以這種方式使用FPGA可以使新的專用加速器按需求下載到FPGA里,應(yīng)用于任何高性能場合中。在高級軍事多標(biāo)準無線電中,這種概念被廣泛采用,稱為軟件無線電(SDR)。SDR系統(tǒng)中,一個簡單的無線單元以“一鍵式”方式自動適應(yīng)不同的無線標(biāo)準,可以應(yīng)用于面向未來的裝備中。這種方式還減少了處理器的數(shù)量,這些處理器在系統(tǒng)執(zhí)行不同任務(wù)時,往往處于空閑的狀態(tài)。軟件無線電技術(shù)可以應(yīng)用于汽車市場的通信和視頻領(lǐng)域。
FPGA在視頻處理和無線連接上的靈活性同樣可以降低成本,提高系統(tǒng)價值?,F(xiàn)在的基本構(gòu)架需要為每個新的視頻編解碼器或者無線標(biāo)準附加ASSP。以一個FPGA代替多個ASSP可以減少系統(tǒng)必須配置的各種體系結(jié)構(gòu),延長汽車的使用壽命。在基本車內(nèi)娛樂系統(tǒng)構(gòu)架中擴展使用FPGA可以使單個高端平臺通過編程滿足寬視頻和無線標(biāo)準的要求。這同樣可以應(yīng)用于高級汽車娛樂系統(tǒng)系統(tǒng)中。[PE1]
一個前沿的汽車娛樂系統(tǒng)體系結(jié)構(gòu)實例已經(jīng)由Delphi Delco電子系統(tǒng)公司出版。該平臺利用標(biāo)準的SH-4微處理器和一個協(xié)同ASIC,日立的HD64404“Amanda”外設(shè)12,,滿足了80%的中等汽車市場的基本功能需求。該系統(tǒng)提供了一個具有標(biāo)準API層的通用控制處理器,將硬件外設(shè)和協(xié)處理器分離。協(xié)同ASIC提供了外設(shè)和集成圖形處理器的基本功能。圖形處理器支持圖形和比例函數(shù)的交互,但是不能實現(xiàn)視頻編解碼器功能或其他的DSP應(yīng)用。該系統(tǒng)為所有的娛樂應(yīng)用提供了基本功能,但仍需為視頻編解碼器和無線通信功能附加ASIC和ASSP。
Delphi體系中的Amanda協(xié)同芯片采用雙處理總線,Piexl總線用于視頻處理等高性能數(shù)據(jù)流,而Register總線進行控制應(yīng)用。這兩個總線都連在SH-4 MPX總線和一個外部存儲接口上。總線和存儲接口的結(jié)合使用為基于FPGA協(xié)處理器的無線通信平臺和靈活的視頻編解碼器提供了理想的接口。
協(xié)處理技術(shù)將FPGA和控制器或者DSP處理器緊密結(jié)合,使它們不再陷于主要的算法過程,而將標(biāo)準的程序接口駐留在控制處理器中。這種集成方式非常適用于主要數(shù)據(jù)流或者算法駐留在FPGA或相關(guān)存儲器的情況。算法由控制處理器產(chǎn)生的低速控制信號進行控制。
這種體系結(jié)構(gòu)可以應(yīng)用于無線通信,以單個FPGA支持GSM/EDGE,WCDMA,1xEVDO和各種802.11協(xié)議中的數(shù)字處理。否則,對每一個標(biāo)準都需要特定的硬件設(shè)計,從而增加了成本,限制了應(yīng)用范圍。
此外,F(xiàn)PGA協(xié)處理技術(shù),可應(yīng)用于圖象處理,能夠以單個FPGA支持包括MPEG2,MPEG4和H.264在內(nèi)的多路視頻編解碼器。實際上,可以同樣采用無線通信技術(shù)中使用的FPGA。
FPGA協(xié)處理器通過基于直接內(nèi)存讀寫(DMA)的接口,集成在處理器系統(tǒng)中。嵌入式處理器的軟件層對每一個協(xié)處理器都有應(yīng)用接口,通過適當(dāng)?shù)膽?yīng)用協(xié)處理器,將初始化程序?qū)懭氲紽PGA中。一旦初始化完成后,軟件調(diào)用協(xié)處理器控制參數(shù),時序和輸入、輸出數(shù)據(jù)流。根據(jù)采用的不同標(biāo)準,在FPGA協(xié)處理器和控制處理器之間可能需要高級的通信對話,也可能FPGA協(xié)處理器單獨進行工作,在這種情況下,控制處理器簡單的將算法加載后,便不再參與處理過程。
每個加載到FPGA上的程序都必須同周圍系統(tǒng)緊密結(jié)合。采用FPGA進行編程,需要一個定義好的系統(tǒng)接口,每個基于FPGA的加速器通過它進行通信。一般而言,F(xiàn)PGA需要多個接口連接到控制處理器,存儲器和別的外設(shè)或者連接器上。FPGA也可以同時有幾個協(xié)處理器,共享一個控制處理器接口。每個外設(shè)或者協(xié)處理器可以有附加總線,進行高性能的數(shù)據(jù)流處理。
視頻編解碼器具有相應(yīng)的輸入和輸出。Delphi體系結(jié)構(gòu)的視頻輸入接口是Amanda協(xié)同ASIC的一部分,對視頻流采用ITU-R BT.656接口標(biāo)準??梢赃M行后級處理,使用ASIC以適用于不同的顯示屏。FPGA可能需要連接到另外兩個總線上,即存儲器總線和主控制器的PCI/MPX總線,它們都與協(xié)同芯片相連。通過這三個連接,由存儲接口實現(xiàn)寬帶通信,PCI/MPX總線實現(xiàn)控制通信,這樣,F(xiàn)PGA可以支持視頻和通信應(yīng)用。
FPGA為協(xié)同主處理器工作的專用處理體系提供了一個可編程平臺。FPGA程序與標(biāo)準處理器體系的程序有根本不同。FPGA提供了可編程邏輯單元,布線,DSP處理模塊,存儲器和I/O的高性能硬件結(jié)構(gòu)。FPGA的體系結(jié)構(gòu)運行起來同標(biāo)準的ASSP非常相似,都是通過軟硬件開發(fā)工具設(shè)計實現(xiàn)系統(tǒng)的特定功能。這些開發(fā)工具輸出的二值圖樣裝入到FPGA中后,定義了所有可編程邏輯單元,布線,DSP處理模塊等的功能。二值圖樣在系統(tǒng)運行時,由主處理器加載。可以產(chǎn)生各種程序圖樣以支持MPEG2,MPEG4,H.264,GSM/EDGE,WCDMA,1xEVDO,GPS,3D圖形加速器或者任何其他可用于汽車信息通信系統(tǒng)的算法。根據(jù)娛樂系統(tǒng)中不同的用戶菜單選項,專用程序由主處理器下載到FPGA中,并處于主處理器的控制之下。[PE2]
由主處理器控制專用硬件加速器,一般通過寄存器和存儲接口實現(xiàn),每個寄存器控制部分硬件加速器的運行。這適用于Delphi系統(tǒng)的默認協(xié)同芯片,也適用于下載到協(xié)同F(xiàn)PGA中的協(xié)處理器體系。通過使用FPGA可以直接將寄存器和存儲器接口標(biāo)準化,以控制任何編程實現(xiàn)的協(xié)處理器。標(biāo)準化的接口可以定義怎樣讀取和寫入?yún)f(xié)處理器數(shù)據(jù),怎樣開始和停止這一過程,怎樣進行復(fù)位,并包括了一組寄存器實現(xiàn)控制專用操作。所有這些寄存器都是FPGA內(nèi)線性地址映射的一部分,這樣,軟件物理器件驅(qū)動器能夠很容易的讀取寄存器。
協(xié)處理器的軟件物理器件驅(qū)動器與硬件寄存器接口相比,具有更高級的抽象功能。軟件驅(qū)動器實現(xiàn)了系統(tǒng)算法參數(shù)到控制寄存器的映射,因此可以很容易的編寫和維護應(yīng)用軟件。底層的硬件改變時,高層的模型器件驅(qū)動器可以保持不變。Delphi系統(tǒng)中的軟件體系提出了幾個抽象層,將算法實現(xiàn)從其軟硬件物理實現(xiàn)中分離出來,為軟件或硬件協(xié)處理器算法提供了強有力的支持。FPGA協(xié)處理器非常適用于這種Delphi軟硬件體系。
FPGA可以設(shè)計應(yīng)用到許多基本體系和Delphi結(jié)構(gòu)相似的系統(tǒng)中去。這些系統(tǒng)包括一個或者多個控制器或DSP處理器,可以使用FPGA加速實現(xiàn)需要高性能處理的任務(wù)。實現(xiàn)FPGA協(xié)處理器的關(guān)鍵在于為FPGA設(shè)計不同的硬件加速器,外部控制處理器集成硬件加速器,產(chǎn)生進行硬件加速控制的軟件層。所需硬件加速器應(yīng)用包括視頻和通信的主流算法。這些應(yīng)用有廣闊的市場,已經(jīng)開始服務(wù)于那些致力于設(shè)計標(biāo)準專用知識產(chǎn)權(quán)(IP)硬件加速器的專業(yè)公司。這類公司提供通用算法,直接應(yīng)用到先進的低成本FPGA上??梢灾苯淤徺I商用MPEG2,MPEG4,H.264,WiFi的IP模塊,以及許多其他的視頻和通信標(biāo)準IP模塊。[PE3]圖2的例子是Amphion公司的MPEG4解碼器IP模塊,適用于ASIC或FPGA應(yīng)用場合。
下一步是在FPGA中集成硬件加速器,利用外部總線進行控制,數(shù)據(jù)輸入和輸出。設(shè)計者可以使用一種新的開發(fā)工具,很容易的實現(xiàn)這種集成。利用來自Altera的系統(tǒng)集成工具--SOPC Builder,設(shè)計者從可用的IP列表中選擇合適的IP模塊。進行選擇時,參數(shù)化菜單顯示不同結(jié)構(gòu)的選項,這些選項由使用者在執(zhí)行前進行設(shè)置。設(shè)置好參數(shù)后,模塊便被包含到別的外設(shè)列表中,處理器由工程師進行集成。每個獨立IP模塊被選擇并參數(shù)化后,他們將被集成到處理體系中去。
設(shè)計者使用SOPC Builder可以定義高性能的交換結(jié)構(gòu),將各種硬件加速器和外設(shè)連接到外部的主處理器上。這種交換結(jié)構(gòu)通過鼠標(biāo)點擊直觀的模塊連接矩陣來實現(xiàn)。體系結(jié)構(gòu)定義好之后,SOPC Builder自動將各種IP綜合到一起,產(chǎn)生HDL描述,自動綜合到最終的FPGA程序里。系統(tǒng)運行時,最終的程序下載到FPGA中,實現(xiàn)承載專用算法的協(xié)處理器功能。
硬件集成完成后,軟件物理器件驅(qū)動器將高級軟件控制從指定的寄存器和用于控制硬件加速器的內(nèi)存映射體系中分離??刂朴布铀倨鞯募拇嫫骱痛鎯ζ鞫际菂?shù)化IP模塊的標(biāo)準元件。多個外設(shè)和加速器的集成需要具有FPGA可編程特性的寄存器和內(nèi)存映射。SOPC Builder在將IP集成到用戶定義的交換體系中時,自動生成寄存器和內(nèi)存映射。
每個IP模塊包括一套定義好的軟件物理器件驅(qū)動器,用于外部的主處理器對IP模塊控制。SOPC Builder自動將各種軟件物理器件驅(qū)動器集成在一起,并使每個驅(qū)動器和進行IP模塊控制的寄存器及內(nèi)存映射相關(guān)聯(lián)。SOPC Builder以這種方式自動產(chǎn)生FPGA協(xié)處理器和控制處理器的軟硬件體系結(jié)構(gòu),并把它們集成到一起。SOPC Builder為滿足快速發(fā)展的FPGA技術(shù)而開發(fā),以實現(xiàn)各種復(fù)雜的系統(tǒng)。
可編程邏輯器件誕生20年以來,由最初低水平的膠合邏輯,快速發(fā)展到現(xiàn)在的低成本、高性能的可編程處理器件。兩個關(guān)鍵因素促進了FPGA性能和成本的進步:FPGA體系結(jié)構(gòu)的發(fā)展和FPGA半導(dǎo)體生產(chǎn)工藝的發(fā)展。FPGA體系結(jié)構(gòu)已經(jīng)發(fā)展到能夠?qū)⒖删幊踢壿媶卧涂删幊滩季€集成為陣列的形式。在早期的低密度FPGA中,僅將簡單的處理單元進行連接。隨著FPGA密度的增加,陣列結(jié)構(gòu)實現(xiàn)了大量的并行處理功能。FPGA體系結(jié)構(gòu)包括存儲模塊,DSP模塊和遍及整個處理陣列的可編程I/O?,F(xiàn)在的處理體系結(jié)構(gòu)很容易滿足汽車信息通信的性能要求。
另一個推動FPGA發(fā)展的關(guān)鍵因素是生產(chǎn)工藝技術(shù),以及它對性能和成本的影響。FPGA利用最新的生產(chǎn)技術(shù)來增加密度,提高性能并降低成本。同時,F(xiàn)PGA也促進了工藝技術(shù)的發(fā)展。FPGA在半導(dǎo)體工藝技術(shù)的發(fā)展中,具有重要的作用,這是因為在其早期的生產(chǎn)中,采用普通結(jié)構(gòu),生產(chǎn)了大量的產(chǎn)品。FPGA采用普通結(jié)構(gòu)可以對產(chǎn)品缺陷進行很好的統(tǒng)計測量,這對仔細調(diào)整生產(chǎn)工藝技術(shù)以獲得高產(chǎn)非常重要。FPGA和生產(chǎn)工藝技術(shù)的相互促進發(fā)展大大增加了FPGA的密度,同時降低了元件價格。因此,現(xiàn)在的低成本FPGA,例如Altera的Cyclone系列器件,可以和專用ASIC和ASSP在價格上相競爭。
汽車娛樂系統(tǒng)正在快速發(fā)展,技術(shù)不斷進步,成為區(qū)分汽車等級的標(biāo)志。前沿的系統(tǒng)體系結(jié)構(gòu)服務(wù)于主流汽車市場,附加ASSP和軟件可以支持高端市場。FPGA提供了性能互補的和靈活的協(xié)處理平臺,將許多協(xié)同ASSP加強到同一個可再編程平臺上。FPGA協(xié)處理器,例如前面提到的Delphi體系結(jié)構(gòu),非常適合于主流的汽車娛樂系統(tǒng)。汽車生產(chǎn)公司采用FPGA協(xié)處理器作為高端汽車娛樂系統(tǒng)的一部分,可以通過軟件編程提供許多高端視頻和通信功能,而這僅由ASSP是無法實現(xiàn)的。在高端靈活的汽車娛樂系統(tǒng)中使用FPGA可以在汽車上市以及汽車的整個生命周期里,實現(xiàn)向上促銷的銷售新模式。在汽車上市和以后的使用中,具有娛樂系統(tǒng)的汽車可以提升其自身的銷售價格。娛樂系統(tǒng)還是對以前出租過的汽車進行估價的重要衡量因素。
1 "HD65505 (Amanda) Hardware Manual", 1st Edition, September 2002, Renesas Technology
2 "HD65505 (Amanda) Users Manual", Version 0.9, August 2003, Renesas Technology
[PE1]Insert Slide 1 Here. "Delphi Mobile Multi Media (MMM) Open Computing Platform With FPGA-Coprocessor"
[PE2]Insert Graphic "Delphi MMM Platform Programmed For Satellite Television Reception"
[PE3]Insert "Block Diagram of Amphion MPEG-4 Decode Intellec
評論