利用FPGA平臺架構(gòu)提升信息娛樂系統(tǒng)設(shè)計靈活性
消費(fèi)者開始希望能像在家中或使用移動設(shè)備一樣使用汽車中的多媒體信息——包括個性化他們體驗(yàn)的能力。因此最近幾代汽車中的信息娛樂系統(tǒng)得到了快速發(fā)展,并以10年前無法想像的方式改變著汽車市場。
汽車制造商非常歡迎這種變化,因?yàn)樗峁┝水a(chǎn)品差異化的途徑,但這也給他們帶來更大挑戰(zhàn):必須緊跟快速變化的消費(fèi)產(chǎn)品周期。那些一級制造商正在逐漸采用靈活、可配置的FPGA器件來應(yīng)對挑戰(zhàn),滿足不同設(shè)計要求。
對于那些想要達(dá)到新的期望值的OEM來說,問題在于改變整個供應(yīng)鏈的基本行為,包括從如何建立信息娛樂系統(tǒng)架構(gòu)到為這些系統(tǒng)提供的產(chǎn)品和服務(wù)。
這種壓力又傳遞給了一級發(fā)動機(jī)控制單元(ECU)供應(yīng)商,因?yàn)樗麄兯?wù)的OEM堅持要迎合來自消費(fèi)市場的產(chǎn)品要求,諸如要能夠靈活地適應(yīng)市場變化、降低成本以及不斷縮短設(shè)計周期。在汽車市場中,這種變化的幅度是空前的,并且正在形成猛烈的風(fēng)暴襲擊一級供應(yīng)商。一級供應(yīng)商如果想在這一領(lǐng)域取得成功,就必須適應(yīng)這種變化。
解決這個問題的一個途徑是開發(fā)一種強(qiáng)大的、關(guān)注靈活性、可擴(kuò)展性和可適應(yīng)性的平臺方案,這說起來容易做起來難。我們需要考慮這種靈活平臺的兩個方面:其一,最終產(chǎn)品本身的靈活性,以適應(yīng)OEM用戶對現(xiàn)場可升級的要求;其二,基礎(chǔ)平臺的可適應(yīng)性,以便服務(wù)于大范圍的、需求各異的OEM客戶。
例如,OEM 1也許不關(guān)心所使用的底層硬件,只要硬件能夠滿足一系列功能要求即可;而OEM 2可能強(qiáng)制要求或至少強(qiáng)烈建議使用特定的芯片組。第2種情況是平臺方案最難對付的,因?yàn)樗锌赡芡耆穸ㄓ布乙患壷圃焐痰钠脚_所選擇的軟件也可能不同。
問題是:我們需要全盤否定硬件平臺嗎?抑或能復(fù)用硬件平臺元件?
構(gòu)建平臺架構(gòu)
建立硬件平臺架構(gòu)一般有三個基本步驟。首先是選擇最關(guān)鍵的組件,然后是圍繞內(nèi)部核心元件搭建外部“層“。一般來說,形成最終配置是一個反復(fù)實(shí)踐的過程。
第一步是選擇核心芯片組,主要考慮因素是成本、特性和性能,雖然設(shè)計人員在這個階段也需要考慮其它重要因素,如硬件/軟件復(fù)用以及公司戰(zhàn)略或OEM要求。
在沒有建立起所有層的架構(gòu)以反映系統(tǒng)真實(shí)成本之前,通常不可能最終確定芯片組的選型。而外層所涉及的成本很多時候相當(dāng)于甚至超過核心芯片組的成本。
第二步是解決所有遺漏的特性和功能。對硬件設(shè)計人員來說,一個理想的情況是,有現(xiàn)成的系統(tǒng)級芯片或芯片組包含了需要的所有特性和功能,并且價格合理,能夠滿足不同客戶的需求。
不過,即使上述情形是可能的,但公司將如何實(shí)現(xiàn)有別于其它一級電子產(chǎn)品制造商的功能呢?也許更重要的是,公司將如何規(guī)劃未知/潛在的特性?
這就引發(fā)了一個看似矛盾的問題——外圍電路是可以提供產(chǎn)品差異化的最好機(jī)會,并能滿足可擴(kuò)展性和可復(fù)用性;但人們又在盡量避免它,因?yàn)橥鈬娐返脑O(shè)計和選擇是一個反復(fù)的過程,類似于一個非常復(fù)雜的拼圖過程。
圍繞核心芯片組的外圍器件所執(zhí)行的功能非常廣泛,包括連接性(補(bǔ)充主芯片組遺漏的接口)、協(xié)處理/加速(從主芯片組卸載處理任務(wù))和接口轉(zhuǎn)換(彌補(bǔ)主芯片組上不合適的接口)。
設(shè)計人員試圖尋找能夠滿足特定功能并且價格可接受的合適器件,但他們經(jīng)常到處碰壁,因?yàn)榻鉀Q架構(gòu)中某個部分的問題會導(dǎo)致另一個部分出現(xiàn)問題。即使確定了可接受的器件,也還會遇到汽車認(rèn)證或長期可用性方面的問題。
尤其是對于信息娛樂系統(tǒng)架構(gòu),設(shè)計人員必須綜合考慮到很多方面,比如音視頻的源端和接收端、有線和無線、顯示器、消費(fèi)者端口連接和存儲,以及后端汽車網(wǎng)絡(luò)等。
上述內(nèi)容涉及到汽車頭部單元中的各種子系統(tǒng),而這些頭部單元正是信息娛樂系統(tǒng)的中心硬件組件。
今天,實(shí)現(xiàn)系統(tǒng)設(shè)計所要求的全部接口數(shù)量——尚不包括服務(wù)于每個接口所需的性能——正在呈爆炸式增長,因此對核心芯片組的特性和性能也提出更高要求。
FPGA解決方案
目前已經(jīng)有數(shù)代信息娛樂系統(tǒng)架構(gòu)平臺使用了FPGA器件,這些FPGA擔(dān)負(fù)著主處理器或芯片組的支撐(或補(bǔ)充)作用。在這種角色中,F(xiàn)PGA一般被稱為配套芯片。有經(jīng)驗(yàn)的用戶已經(jīng)認(rèn)識到,F(xiàn)PGA不僅可以用來彌補(bǔ)架構(gòu)中的漏洞,而且還能更多地被用作核心元件,為基礎(chǔ)架構(gòu)增加更多的靈活性和可擴(kuò)展性。
這樣做通常要求在架構(gòu)定義的早期階段就要引入FPGA,并將FPGA歸類為核心芯片組中的一個元件。這樣,設(shè)計人員就能在內(nèi)存子系統(tǒng)、系統(tǒng)啟動時序、通用系統(tǒng)性能和平臺總體成本等方面獲得各種系統(tǒng)級的益處。
一些芯片組具有內(nèi)置擴(kuò)展能力,例如帶有PCIe或其它專用串行/并行接口的芯片組。有些芯片組沒有專門的內(nèi)置擴(kuò)展功能,設(shè)計人員不得不使用替代性接口,如USB或SD端口。這意味著FPGA必須能夠通過其中一種解決方案支持一種接口,但代價是創(chuàng)建接口需要一定的時間和知識儲備。
賽靈思聯(lián)盟合作伙伴Xylon公司已經(jīng)開發(fā)出一種知識產(chǎn)權(quán)(IP)基礎(chǔ)包,可以實(shí)現(xiàn)連接不同接口所要求的“管道”,從而有效解決數(shù)據(jù)出入主系統(tǒng)的問題。由于無需了解一個特定主機(jī)接口的規(guī)范,因而設(shè)計人員可以從容地專注于設(shè)計的應(yīng)用方面。
既然快速改變主機(jī)接口是可能的,那什么時候適合做出改變呢?在許多情形下,調(diào)整平臺是有用的方法。將基礎(chǔ)平臺從低端產(chǎn)品調(diào)整到高端產(chǎn)品也許就是一個很好的例子。后者可能有要求高帶寬的應(yīng)用接口——例如視頻輸入——因此PCIe是必要的。
在同一系列的低端產(chǎn)品中,也許不要求視頻輸入,此時帶寬需求將顯著下降。這時最具成本效益的架構(gòu)是使用對主機(jī)接口要求較低的應(yīng)用接口,例如USB或SD。
FPGA的靈活性和可擴(kuò)展性是與生俱來的。在本例中,F(xiàn)PGA本身可以調(diào)整到采用相同封裝或不同封裝的更小器件。
由Xylon公司開發(fā)的配套芯片接口庫(CCI)提供了非??焖俚拇罱ā罢鎸?shí)”接口的方法,避免了對性能指標(biāo)的猜測,而在實(shí)際系統(tǒng)中性能指標(biāo)是高度可變的。該公司的信息娛樂配套芯片開發(fā)平臺提供了簡化設(shè)計過程的必要硬件和軟件,不僅具有靈活性和可擴(kuò)展性的優(yōu)勢,而且縮短了開發(fā)時間。
圖:硬件平臺架構(gòu)流程。
評論