《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 業(yè)界動態(tài) > 使用系統(tǒng)優(yōu)化編譯器加速汽車電子產(chǎn)品設(shè)計 Giles Peckham 和 Adam Taylor

使用系統(tǒng)優(yōu)化編譯器加速汽車電子產(chǎn)品設(shè)計 Giles Peckham 和 Adam Taylor

2018-02-05

得益于摩爾定律,汽車電氣系統(tǒng)經(jīng)歷了快速的技術(shù)增長。現(xiàn)代化的汽車已獲得長足發(fā)展,,不再是耦合了 AM 無線電的簡單發(fā)動機(jī)電氣系統(tǒng),。如今現(xiàn)代化的汽車搭載了多種高級電子系統(tǒng),能夠執(zhí)行發(fā)動機(jī)控制,、高級駕駛員輔助系統(tǒng) (ADAS)、牽引力與穩(wěn)定性控制、信息娛樂等功能,,此外還針對某些尖端應(yīng)用提供了自主操作能力。
這種汽車內(nèi)電子系統(tǒng)部署的顯著增長也帶來了幾個必須由設(shè)計人員解決的挑戰(zhàn):

· 性能 – 需要實時,、低時延與高確定性的性能以實現(xiàn)例如 ADAS,、ECU、牽引力與穩(wěn)定性控制等多種車載功能,。

· 安全 – 汽車電子系統(tǒng)實現(xiàn)關(guān)鍵功能,,故障會導(dǎo)致受傷或死亡。因此,,系統(tǒng)必須實現(xiàn)信息安全保障與防篡改技術(shù),,以防止未授權(quán)的修改。

· 安全性 – 必須符合 ISO26262 規(guī)定的汽車安全完整性水平,。

· 接口 – 必須能夠連接多種傳感器,、驅(qū)動器與其他制動器。

· 功率效率 – 必須在有限的功耗預(yù)算內(nèi)高效運行,。

· 軟件定義 – 具備高靈活性以適應(yīng)多種市場中的不同標(biāo)準(zhǔn)與條件,。

為應(yīng)對這些挑戰(zhàn),汽車電子系統(tǒng)開發(fā)人員正在部署片上異構(gòu)系統(tǒng) (SoC) 器件,。異構(gòu)器件將一個處理單元(通常為多核)與一個或多個異構(gòu)協(xié)同處理器(例如 GPU,、DSP 或可編程邏輯)相結(jié)合。

將處理單元與可編程邏輯相結(jié)合可構(gòu)成緊密集成型系統(tǒng),,以便利用可編程邏輯的固有并行特性,。該特性支持使用可編程邏輯 (PL) 實現(xiàn)高性能算法和接口連接,同時由處理系統(tǒng)實現(xiàn)更高級的決策制定,、通信與系統(tǒng)管理功能,。完成結(jié)合后,便可使可編程邏輯分擔(dān)處理任務(wù),從而創(chuàng)建更具響應(yīng)性,、確定性并且能效更高的解決方案,。

就接口連接而言,異構(gòu) SoC 可支持多種業(yè)界標(biāo)準(zhǔn)接口,,這些接口可通過處理系統(tǒng)或可編程邏輯實現(xiàn),。得益于 IO 結(jié)構(gòu)的靈活性,可使用可編程邏輯實現(xiàn)關(guān)鍵的原有接口與定制接口,。然而,,這需要添加一個外部 PHY 來實現(xiàn)協(xié)議的物理層,從而提供任意連接,。

某些異構(gòu) SoC 面向多個器件級與系統(tǒng)級安全功能提供支持,,便于輕松實現(xiàn)。這些器件能夠?qū)雍团渲眠^程進(jìn)行加密與驗證,。如果處理器內(nèi)核是基于 ARM 處理器的,,那么可使用 Trustzone 保證軟件環(huán)境安全。有了 Trustzone,,開發(fā)團(tuán)隊便可創(chuàng)建正交環(huán)境,,通過使用程序管理器,對軟件訪問底層硬件進(jìn)行限制,。此外,,這里也提供幾個額外的設(shè)計選擇,,例如功能隔離,,可以在設(shè)計中實現(xiàn),以進(jìn)一步加強(qiáng)取決于需求的安全解決方案,。

傳統(tǒng)的異構(gòu) SoC 開發(fā)流程把設(shè)計劃分為處理器系統(tǒng)和可編程邏輯兩大部分,。這種方法在過去需要兩個獨立的開發(fā)團(tuán)隊,這會增加非重復(fù)性工程成本,、開發(fā)時間與技術(shù)風(fēng)險,。此外,該方法還將設(shè)計功能固定在處理器內(nèi)核或可編程邏輯中,,使后期優(yōu)化難以進(jìn)行,。

人們所需的開發(fā)工具應(yīng)該可實現(xiàn)整個器件的軟件定義開發(fā),并有能力根據(jù)需要將功能從處理器內(nèi)核轉(zhuǎn)移到可編程邏輯,,而且非 HDL 專家也能完成,。

這正是系統(tǒng)優(yōu)化編譯器的用武之地。系統(tǒng)優(yōu)化編譯器能利用 C,、C++ 或 OpenCL? 等高級語言以軟件方式定義整個系統(tǒng)行為,。然后,使用系統(tǒng)優(yōu)化編譯器執(zhí)行處理器系統(tǒng)與可編程邏輯之前的功能分區(qū),該編譯器能夠使功能無縫移動,,以便選擇是在處理器系統(tǒng)中運行還是在可編程邏輯中實現(xiàn),。

 Image1.jpg

圖 1 - 使用系統(tǒng)優(yōu)化編譯器選擇要加速的功能。

 

通過使用處理系統(tǒng)內(nèi)部的內(nèi)置定時器來為功能執(zhí)行時間計時,,可找出造成瓶頸的功能,,從而創(chuàng)建瓶頸功能列表。這些瓶頸功能便成為候選,,以備通過使用系統(tǒng)優(yōu)化編譯器在可編程邏輯中實現(xiàn)加速,。

處理系統(tǒng)與可編程邏輯之間的移動是通過系統(tǒng)優(yōu)化編譯器的高層次綜合(可將 C、C++,、OpenCL 程序轉(zhuǎn)換為 Verilog 或 VHDL 描述的工具)與軟件定義連接框架之間的結(jié)合來實現(xiàn)的,。軟件定義連接框架能夠無縫地將 HLS 結(jié)果連接至軟件應(yīng)用,設(shè)計團(tuán)隊使用這種方法,,一鍵點擊就能在處理器和可編程邏輯間移動功能,。當(dāng)然在用戶把功能移動到可編程邏輯時,他們也得到了明顯的性能提升,,自然這是使用可編程邏輯的結(jié)果,。與 CPU/GPU 解決方案相比,在 PL 中進(jìn)行加速還能提高確定性并降低時延,,這對諸如 ECU 和 ADAS 的應(yīng)用來說是至關(guān)重要的,。

 Image2.jpg

圖 2 - 使用系統(tǒng)優(yōu)化編譯器對資源與性能進(jìn)行估算。

 

庫支持

很多汽車應(yīng)用都是使用業(yè)界標(biāo)準(zhǔn)開源庫進(jìn)行開發(fā),,例如在 ADAS 系統(tǒng)中使用 OpenCV 或 Caffe,,或在 ECU 中使用標(biāo)準(zhǔn)數(shù)學(xué)庫。為加快這些應(yīng)用的開發(fā),,系統(tǒng)優(yōu)化編譯器需要能夠支持多個 HLS 庫,,以便開發(fā)人員在其應(yīng)用中使用。系統(tǒng)優(yōu)化編譯器應(yīng)支持多個關(guān)鍵庫,,其中包括:

· OpenCV – 能夠加速計算機(jī)視覺功能

· Caffe – 能夠加速機(jī)器學(xué)習(xí)推理引擎 

· 數(shù)學(xué)庫 – 提供標(biāo)準(zhǔn)數(shù)學(xué)庫的可綜合實現(xiàn),。

· IP 庫 – 為實現(xiàn) FFT、FIR 和移位寄存器 LUT 功能提供 IP 庫,。

· 線性代數(shù)庫 – 提供通用線性代數(shù)功能庫,。

· 任意精度數(shù)據(jù)類型庫 – 使用有符號和無符號整數(shù)支持非2次冪的任意長度數(shù)據(jù)。該庫允許開發(fā)人員更高效地使用 FPGA 資源,。

這些庫的提供為開發(fā)團(tuán)隊提供相當(dāng)大的支持,,讓開發(fā)團(tuán)隊不必開發(fā)類似的功能。

真實實例

很多汽車應(yīng)用的關(guān)鍵元素是保護(hù)數(shù)據(jù)以防止未授權(quán)修改,,避免導(dǎo)致不安全操作,。用來保護(hù)存儲數(shù)據(jù)與傳輸數(shù)據(jù)安全的一種常用算法是高級加密標(biāo)準(zhǔn) (AES),。AES 是在高級層面描述的,但最適合在可編程邏輯架構(gòu)中實現(xiàn)的算法的范例,。為了演示使用系統(tǒng)優(yōu)化編譯器的優(yōu)勢,,已開發(fā)一款面向三種常用操作系統(tǒng)的簡單 AES 256 應(yīng)用。該實例最初只在處理器系統(tǒng)中執(zhí)行,,然后在可編程邏輯中實現(xiàn)功能的加速,。Image3.jpg 

圖 3 - 當(dāng)使用系統(tǒng)優(yōu)化編譯器時,不同操作系統(tǒng)的 AES 加速結(jié)果,。

結(jié)論 

異構(gòu) SoC 能夠解決汽車電子系統(tǒng)設(shè)計人員面臨的挑戰(zhàn),。通過使用高級語言,系統(tǒng)優(yōu)化編譯器能夠?qū)@些器件進(jìn)行開發(fā),,一旦使用處理器完成對應(yīng)用功能的開發(fā)與原型設(shè)計后,,處理器系統(tǒng)與可編程邏輯之間的功能分區(qū)即可得到優(yōu)化,從而縮短開發(fā)時間,,實現(xiàn)更安全,、響應(yīng)性更強(qiáng)、能效更高的解決方案,。

 


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點,。轉(zhuǎn)載的所有的文章,、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容、版權(quán)和其它問題,,請及時通過電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失,。聯(lián)系電話:010-82306118;郵箱:[email protected],。