《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 解決方案 > 用于先進(jìn)視頻處理解決方案的現(xiàn)場可編程邏輯門陣列(FPGA)產(chǎn)品與技術(shù)

用于先進(jìn)視頻處理解決方案的現(xiàn)場可編程邏輯門陣列(FPGA)產(chǎn)品與技術(shù)

(白皮書編號:WP022)
2021-03-24
來源:Achronix

部署先進(jìn)的網(wǎng)絡(luò)基礎(chǔ)設(shè)施不僅可以解決數(shù)據(jù)傳輸量激增的問題,,而且還能在諸如邊緣,、核心和云端等網(wǎng)絡(luò)的不同部分進(jìn)行數(shù)據(jù)處理。不足為奇的是大部分?jǐn)?shù)據(jù)要么是視頻,,要么是圖像,,并且這些數(shù)據(jù)正以指數(shù)級速度增長,并將在未來幾年內(nèi)保持持續(xù)增長。因此,,需要更多的計算資源來應(yīng)對數(shù)據(jù)的大量增長(如圖1所示),。

由于應(yīng)用的類型多種多樣,因此在數(shù)據(jù)中心中存在著各種各樣的視頻或圖像處理工作負(fù)載,?;趯S眉呻娐罚ˋSIC)的解決方案通常可提供更高的性能,,但是無法進(jìn)行升級以支持未來的算法,;基于中央處理器(CPU)的解決方案要比其更加靈活,但其時鐘主頻已經(jīng)固定,,而且已不再可能大幅提升處理器性能;圖形處理器(GPU)是提供視頻/圖像處理解決方案的另一種候選方案,,但其功耗明顯高于基于現(xiàn)場可編程邏輯門陣列(FPGA)的解決方案,。FPGA在視頻處理和壓縮領(lǐng)域內(nèi),是一種具有吸引力的選擇,,因為它們提供了實現(xiàn)創(chuàng)新視頻處理算法所需的,、平衡的資源。此外,,F(xiàn)PGA提供了一種靈活的解決方案,,可以縮短產(chǎn)品上市時間,并能在解決方案的整個生命周期內(nèi)實現(xiàn)持續(xù)升級和部署新的功能,。

表1:互聯(lián)網(wǎng)用戶和數(shù)據(jù)流的增長

截圖20210324194010.png

來源:思科(Cisco)公司

圖片9.png

圖1:全球互聯(lián)網(wǎng)視頻數(shù)據(jù)流(來源:思科)

33% CAGR 2017-2022:2017-2022年間的復(fù)合年增長率33%

Exabytes per Month:每月的Exabytes數(shù)量

基于FPGA的視頻解決方案的示例

本白皮書將介紹三種典型的視頻應(yīng)用,,以展示基于FPGA的解決方案在廣播行業(yè)中的優(yōu)勢。這些優(yōu)勢包括縮短處理時間,、降低功耗,,以及為服務(wù)提供商和終端用戶節(jié)省成本。

本白皮書將介紹基于FPGA的解決方案在以下三種應(yīng)用中的優(yōu)勢:

· 視頻流

· 使用視頻編輯軟件來創(chuàng)作視頻內(nèi)容

· 人工智能(AI)和深度學(xué)習(xí)–圖像識別是該應(yīng)用的主要部分,,其需要高性能的計算資源

視頻流傳送

為了使媒體流變得快速和高效,,對視頻進(jìn)行轉(zhuǎn)碼的需求已急劇增加。目前大多數(shù)產(chǎn)品都采用了一種基于軟件的方法,,但該方法無法滿足高帶寬,、廣播級視頻流的處理要求。視頻流和/或云服務(wù)提供商面臨著由基于軟件的解決方案所帶來的低吞吐量,、高功耗,、長延遲和占用空間大等挑戰(zhàn)。根據(jù)思科的一份題為《思科可視網(wǎng)絡(luò)指數(shù):預(yù)測與趨勢——2017-2022年白皮書》的報告,,視頻流數(shù)據(jù)流量正在增加,,并且到2022年時將占據(jù)整個互聯(lián)網(wǎng)數(shù)據(jù)流的82%。在包括視頻點播、流媒體直播和視頻監(jiān)控等所有應(yīng)用中,,視頻數(shù)據(jù)流量將逐年穩(wěn)步增長,。

諸如Netflix和YouTube等視頻流應(yīng)用的興起推動了對視頻轉(zhuǎn)碼的需求。傳統(tǒng)廣播和視頻流媒體之間最顯著的區(qū)別在于內(nèi)容量和頻道數(shù),。為了支持從電腦到智能手機(jī)等各種接收設(shè)備,,內(nèi)容必須被轉(zhuǎn)碼成不同的分辨率和壓縮格式。因此,,視頻流將消耗大量的計算資源,。

 

圖片10.png

圖2:視頻轉(zhuǎn)碼工作流程

Acquisition:獲取

content creator dramatically growing:內(nèi)容創(chuàng)作者的數(shù)量在急劇增加

Editing:編輯

Uploading:上傳

Streaming Company:流媒體公司

Cloud Service Provider:云服務(wù)提供商

Transcoding:轉(zhuǎn)碼

different compression:不同的壓縮率

different resolution:不同的分辨率

different bitrates:不同的比特率

Distribution:發(fā)布

iPhone:iPhone手機(jī)

Andriod:安卓手機(jī)

PC Browser:電腦瀏覽器

流媒體和云服務(wù)提供商需要一種解決方案來緩解對計算需求的壓力。Achronix Speedster?7t系列FPGA器件中搭載了IBEX這種最先進(jìn)的視頻處理半導(dǎo)體知識產(chǎn)權(quán)(IP)能夠解決這一重大問題,。這種基于FPGA的解決方案可以提供高吞吐量的,、低功耗的和占用空間小的系統(tǒng),而且無需犧牲靈活性,。盡管基于ASIC的解決方案功能強(qiáng)大,,但只能支持在設(shè)計時定義的功能集,而不能支持現(xiàn)場更新,。

視頻內(nèi)容創(chuàng)作

在過去,,高清分辨率(HD)格式在視頻內(nèi)容創(chuàng)作中占據(jù)主導(dǎo)地位。最近,,標(biāo)準(zhǔn)分辨率已被提升至4K,,甚至到8K,這使得視頻編碼或解碼面臨挑戰(zhàn),。用于這些較高分辨率的壓縮格式主要有Apple ProRes,、Avid DNx和SONY XAVC。由于這些壓縮格式是專有的,,因此ASIC或GPU并不能原生支持這些格式,,而且CPU提供的性能也不佳。因此,,在較高分辨率下創(chuàng)作視頻內(nèi)容時,,F(xiàn)PGA是最佳的解決方案。

 

圖片11.png

圖3:視頻編輯工作流程

Import:導(dǎo)入

Editing Software:編輯軟件

Import(Decode):導(dǎo)入(解碼)

Export(Encode):導(dǎo)出(編碼)

Remote Edit:遠(yuǎn)程編輯

Export:導(dǎo)出

在新的趨勢下,,遠(yuǎn)程后期制作的概念正變得越來越普遍,。然而,現(xiàn)有的電腦并沒有足夠的能力來實時處理高分辨率的內(nèi)容(例如8K),。因此,,編輯人員開始借助云基礎(chǔ)設(shè)施來獲得更好的計算性能。此外,,由于需要保持社交距離,,新冠肺炎疫情也加速了這一趨勢,。基于云和FPGA的解決方案為編輯人員提供了巨大的好處,。Achronix Speedster7t系列FPGA器件進(jìn)行架構(gòu)創(chuàng)新,,例如二維片上網(wǎng)絡(luò)(NoC),使其特別適合于加速編碼和解碼算法,。

人工智能與深度學(xué)習(xí)

人工智能,、機(jī)器學(xué)習(xí)和深度學(xué)習(xí)是眾所周知的領(lǐng)域,它們在過去幾年中得到了迅速的發(fā)展,。除了這些領(lǐng)域,,圖像識別也逐漸成為一個全新的重要領(lǐng)域,這得益于人工智能/機(jī)器學(xué)習(xí)(AI / ML)的創(chuàng)新,。例如,,先進(jìn)駕駛員輔助系統(tǒng)(ADAS)使用深度學(xué)習(xí)算法來處理捕獲的圖像。安裝在車上的行車記錄儀使用H.264壓縮技術(shù)記錄視頻,,然后將視頻流轉(zhuǎn)碼為諸如JPEG或PNG等合適的圖像格式,,以用于深度學(xué)習(xí)圖像識別。根據(jù)應(yīng)用場景,,可以同時完成丟幀、更改分辨率或其他圖像處理任務(wù),。

在零售業(yè)的安全攝像頭或物流業(yè)的包裹分揀中也有類似的應(yīng)用案例,,其數(shù)據(jù)流與上述示例相同 —— 這些應(yīng)用中的攝像頭使用H.264或H.265等壓縮比相對較高的壓縮格式記錄視頻,然后將編碼的視頻流傳輸?shù)皆贫嘶驍?shù)據(jù)中心,。在云端,,視頻流由原始格式轉(zhuǎn)碼為適合深度學(xué)習(xí)的格式,將視頻文件轉(zhuǎn)換為圖像資料庫,。

 

圖片12.png

圖4:典型的深度學(xué)習(xí)圖像數(shù)據(jù)流

Transcoding:轉(zhuǎn)碼

Different compression:不同的壓縮率

Video=Image:視頻=圖像

AI:人工智能

Deep Learning:深度學(xué)習(xí)

Image Recognition:圖像識別

從歷史來看,,F(xiàn)PGA一直擅長將電影轉(zhuǎn)碼為圖像。此外,,使用FPGA中的深度學(xué)習(xí)算法對圖像預(yù)先進(jìn)行預(yù)處理,,不僅可以提高吞吐量,而且還能減少系統(tǒng)級的數(shù)據(jù)事務(wù)量,。Achronix Speedster7t的創(chuàng)新架構(gòu)及其帶有的專用機(jī)器學(xué)習(xí)處理器(MLP),,使之成為實現(xiàn)定制的和既定的深度學(xué)習(xí)算法的理想選擇。

FPGA代表性視頻用例的性能

我們分別使用FPGA和CPU來實現(xiàn)上述三個典型應(yīng)用案例,,并對一些關(guān)鍵指標(biāo)進(jìn)行對比,,如下表所示。

表2:FPGA與CPU的性能比較

截圖20210324194210.png

表注

↑ FPGA提供更佳的性能,。

? FPGA和CPU提供同等的性能,,但FPGA是卸載CPU負(fù)擔(dān)的首選解決方案,。

↓ FPGA和CPU提供同等的性能,但CPU是首選解決方案,。

視頻流傳輸

在視頻流傳輸應(yīng)用中,,常用的壓縮格式是H.264或H.265,因為終端(接收端)設(shè)備原生支持這些格式,。諸如位深或色度和分辨率等參數(shù)通常為8位,、4:2:0和1920×1080或1280×720。在解碼器方面,,基于FPGA的實現(xiàn)比基于CPU的系統(tǒng)提供更高的吞吐量,。在數(shù)據(jù)層面,F(xiàn)PGA效率更高,,因為如果將CPU用于純數(shù)據(jù)處理之外的其他任何與數(shù)據(jù)相關(guān)的任務(wù)時,,它通常都沒有得到充分的利用。然而在編碼器方面,,硬化的CPU編碼器內(nèi)核是專門針對這些典型參數(shù)而設(shè)計的,,并提供了足夠的性能。

為了獲得兩全其美的效果,,將FPGA和CPU解決方案相結(jié)合,,并由FPGA來處理繁重的工作負(fù)載是理想的解決方案。FPGA上的高效功能可以被移植到可重新配置的硬件上去運行,。例如,,運動估計算法是一種適合FPGA的工作負(fù)載。另一方面,,CPU更適合處理比特率控制算法,。

一些服務(wù)提供商要求在軟件解決方案中實現(xiàn)與x264相同的視頻質(zhì)量和流媒體格式。FPGA和CPU的組合解決方案可以有效地滿足這些要求,。使用這種方法,,每種功能都被合理地分配,較繁重的處理負(fù)載被轉(zhuǎn)移到FPGA,,與純軟件解決方案相比,,這種方法能提供類似或更好的視頻質(zhì)量和流媒體格式,而且編碼時間顯著減少,。

下表列出了使用這種方法的x264評測結(jié)果,,第一行顯示了在FPGA上的運動估計函數(shù)(x264_8_me_search_erf)的結(jié)果。運動估計是CPU最繁重的工作負(fù)載之一,,占據(jù)總處理時間的21.2278%,。

表3:x264評測結(jié)果(通過評測軟件獲得)

截圖20210324194222.png

視頻內(nèi)容創(chuàng)作

用于內(nèi)容創(chuàng)作的視頻編輯軟件支持多種壓縮格式,其中包括Apple ProRes,、Avid DNx,、Sony XAVC和Panasonic AVC-Intra,,這些格式都帶有基于內(nèi)幀結(jié)構(gòu)的專有壓縮方案。此外,,還有一些支持RAW模式的格式,,諸如Apple ProRes RAW、RED RAW,、ARRI RAW和Blackmagic RAW,,這些格式都得到了攝像機(jī)制造商的支持。由于這些格式(以及新型的和不斷出現(xiàn)的格式)具有不斷變化的特性,,因此基于ASIC的解決方案并不實用,,而需要基于FPGA的解決方案。

在過去,,主要的分辨率為HD/2K,,CPU具有足夠的速度來處理這些視頻流。但是,,隨著4K或8K分辨率變得越來越普遍,,僅靠CPU加軟件的解決方案不能夠提供實時處理。另一方面,,基于FPGA的解決方案可以輕松地實時處理4K和8k分辨率視頻,。

內(nèi)部基準(zhǔn)測試表明,即使與中級FPGA芯片相比,,基于FPGA解決方案的處理速度也比最新的CPU加軟件解決方案快五倍,。雖然GPU可以提供與FPGA類似的性能,但其功耗更高,、解決方案占用空間更大。

 

圖片13.png

圖5:僅使用CPU(無FPGA卸載)的處理方案性能

FPGA解決方案的好處不僅僅在于加速,,而且還能降低CPU的繁忙程度,。在只有CPU的解決方案中,所有CPU周期都被4K或8K內(nèi)容的編碼所消耗,,而使用FPGA來卸載編碼任務(wù)可以釋放CPU周期,。因此,F(xiàn)PGA加速器為該應(yīng)用提供了最佳的解決方案,,通過減少4K和8K視頻制作所需的處理時間,,來提高視頻編輯人員的創(chuàng)作效率。

 

圖片14.png

圖6:使用FPGA卸載的CPU利用率

人工智能與深度學(xué)習(xí)

如前所述,,在處理H.264/H.265解碼方面,,F(xiàn)PGA提供了與CPU相當(dāng)或更高的性能。如果解碼器和內(nèi)幀編碼器(例如JPEG或PNG)都位于同一FPGA中,,那么基于FPGA的解決方案將提供比CPU更佳的性能,。此外,,在深度學(xué)習(xí)應(yīng)用中,在將圖像數(shù)據(jù)發(fā)送到深度學(xué)習(xí)處理之前,,通常會進(jìn)行一些圖像預(yù)處理,。在同一個FPGA上可以執(zhí)行所有的處理,包括解碼,、圖像處理和編碼等(如圖7所示),,并且與CPU相比,F(xiàn)PGA可以提供高吞吐量,、低延遲和更少的數(shù)據(jù)事務(wù),。深度學(xué)習(xí)技術(shù)在現(xiàn)在和未來都將被廣泛應(yīng)用于各個行業(yè)或領(lǐng)域,而基于FPGA的解決方案將助力這一發(fā)展,。

 

圖片15.png

圖7:使用深度學(xué)習(xí)進(jìn)行視頻和圖像處理的典型數(shù)據(jù)流

Decoding:解碼

Image Processing:圖像處理

Encoding:編碼

針對性能而優(yōu)化的Speedster7t架構(gòu)

Speedster7t FPGA是專為滿足最高性能的數(shù)據(jù)加速應(yīng)用而設(shè)計的,,該架構(gòu)非常適合解決本白皮書中提到的所有應(yīng)用挑戰(zhàn)。具體而言,,Achronix開發(fā)了一種全新的創(chuàng)新型二維片上網(wǎng)絡(luò),,它力助在I/O帶寬、外部存儲帶寬和片上性能之間提供一種平衡架構(gòu),,以確??傮w最高的吞吐量。在傳統(tǒng)的FPGA架構(gòu)中,,用戶需要設(shè)計電路來連接加速器,,從而導(dǎo)致并不理想的布局和布線。現(xiàn)在更新的FPGA架構(gòu)使用一種網(wǎng)絡(luò),,在邏輯陣列內(nèi)的處理單元與各種片上高速接口和存儲器端口之間傳輸數(shù)據(jù)流(如圖8所示),。

 

圖片16.png

圖8:在傳統(tǒng)的FPGA架構(gòu)中連接加速器

Status Control:狀態(tài)控制

Parameters:參數(shù)

Address decode and routing:地址解碼和布線

Back pressure:背壓

Request arbitration:請求仲裁

Response arbitration:響應(yīng)仲裁

Response back pressure:響應(yīng)背壓

Response routing:響應(yīng)布線

Accelerator:加速器

 

圖片17.png

圖9:先進(jìn)的FPGA減少了所需的電路數(shù)量

硬連線架構(gòu)極大地改善了處理的延遲和能效,但是缺乏應(yīng)對需求變化的靈活性,。Speedster7t系列FPGA器件中的第一款芯片AC7t1500提供了一系列高速接口,,包括可分配的(fracturable)以太網(wǎng)控制器(支持高達(dá)400G的速率)、PCI Gen 5端口和多達(dá)32個SerDes通道,,速率高達(dá)112 Gbps,。AC7t1500器件是首款部署多通道GDDR6存儲器接口的FPGA,它滿足了需要高速緩存海量數(shù)據(jù)的編碼器的需求,。除了在可編程邏輯陣列中采用的面向位的布線結(jié)構(gòu)外,,這些外圍設(shè)備還通過一個智能二維片上網(wǎng)絡(luò)進(jìn)行互連。因此,,Speedster7t FPGA是第一款能夠?qū)崿F(xiàn)上述視頻處理用例的器件,,該FPGA器件利用一種平衡架構(gòu),在計算密度和數(shù)據(jù)傳輸能力方面帶來重大改進(jìn),。

Speedster7t架構(gòu)通過提供總帶寬超過20 Tbps的多級片上網(wǎng)絡(luò)(NoC)層級化結(jié)構(gòu),,消除了由于需要將高速I/O通道直接連接到以較低時鐘速率運行的可編程邏輯所造成的瓶頸,。與采用FPGA邏輯陣列實現(xiàn)互連方式相比,NoC不僅在速率上有了大幅的提升,,而且NoC還能在不消耗任何FPGA可編程資源的情況下傳輸大量數(shù)據(jù),。內(nèi)部NoC不僅提供了更高的帶寬,而且Speedster7t FPGA中的智能連接機(jī)制也簡化了將數(shù)據(jù)從NoC端口傳輸?shù)竭壿嬯嚵兄械娜蝿?wù),。

這種架構(gòu)可支持進(jìn)一步的設(shè)計創(chuàng)新,,例如支持上述機(jī)器學(xué)習(xí)用例的面向矩陣的算術(shù)單元。通過使用諸如深度學(xué)習(xí)或較為簡單的統(tǒng)計方法等技術(shù),,設(shè)備可以分析數(shù)據(jù)流的模式,,以觀察和增強(qiáng)數(shù)據(jù)包在網(wǎng)絡(luò)中的傳輸,并對不斷變化的情況做出快速反應(yīng),。概括而言,,以下三項Speedster7t的架構(gòu)創(chuàng)新為上述用例提供了更好的FPGA設(shè)計:

高速存儲接口

Speedster7t架構(gòu)師對存儲接口的選擇反映出了以太網(wǎng)和NoC連接可提供的巨大帶寬。一種可能的方法是在一系列產(chǎn)品設(shè)計中采用即將推出的HBM2接口,。盡管這樣的接口可以提供所需的性能等級,,但HBM2是一種價格昂貴的選擇,這將迫使客戶去等待必要的組件和集成技術(shù)進(jìn)入市場,。

與此不同,,Speedster7t系列則采用了GDDR6標(biāo)準(zhǔn),該標(biāo)準(zhǔn)為當(dāng)今片外存儲器提供了最高的性能,。Speedster7t FPGA是市場上首款支持該接口的器件,,每個片上GDDR6存儲控制器可維持512 Gbps的帶寬。在單個AC7t1500器件中最多可帶有八個GDDR6控制器,,因此一個Speedster7t FPGA器件可提供高達(dá)4 Tbps的總存儲帶寬,。

對PCIe Gen 5的支持

除了以太網(wǎng)和存儲控制器,Speedster7t FPGA上提供的對PCIe Gen 5的支持還能夠與主機(jī)處理器緊密集成,,以支持高性能加速器應(yīng)用,。PCI Gen 5控制器使其能夠讀取和寫入存儲在FPGA存儲層級結(jié)構(gòu)中的數(shù)據(jù),包括許多位于邏輯陣列內(nèi)的塊RAM,,以及連接到FPGA存儲控制器的外部GDDR6和DDR4 SRAM。在FPGA邏輯陣列中實例化的數(shù)據(jù)傳輸控制器(例如DMA引擎),,可以類似地通過PCIe Gen 5總線訪問與主機(jī)處理器共享的內(nèi)存,。無需消耗FPGA邏輯陣列內(nèi)的任何資源即可實現(xiàn)這種高帶寬連接,并且設(shè)計時間幾乎為零,。用戶只需啟用PCIe和GDDR6接口,,即可通過NoC發(fā)送事務(wù)數(shù)據(jù)。

PCIe子系統(tǒng)與任何GDDR6或DDR4存儲接口之間的直接連接如下圖10所示,。 

圖片18.png

圖10:無需消耗FPGA邏輯陣列即可實現(xiàn)PCIe和GDDR6之間的數(shù)據(jù)傳輸

機(jī)器學(xué)習(xí)處理器(MLP)

對于計算密集型任務(wù),,在Speedster7t FPGA上部署的Speedster7t機(jī)器學(xué)習(xí)處理器(MLP)是靈活的且可分配的算術(shù)單元,。機(jī)器學(xué)習(xí)處理器是高密度乘法器陣列,帶有支持多種數(shù)字格式的浮點和整數(shù)MAC模塊,。機(jī)器學(xué)習(xí)處理器帶有集成的存儲模塊,,可以在不使用任何FPGA資源的情況下執(zhí)行操作數(shù)和存儲級聯(lián)功能。機(jī)器學(xué)習(xí)處理器適用于一系列矩陣數(shù)學(xué)運算,,從5G無線電控制器的波束成形計算到加速深度學(xué)習(xí)應(yīng)用,,如視頻處理系統(tǒng)所需的數(shù)據(jù)流模式和數(shù)據(jù)包內(nèi)容分析。

 

圖片19.png

圖11:機(jī)器學(xué)習(xí)處理器原理框圖

結(jié)論

雖然ASIC的性能通常很高,,但它只支持設(shè)計時設(shè)想的功能集,,不能進(jìn)行現(xiàn)場升級;CPU是最靈活且最易于設(shè)計的,,但是其時鐘頻率已經(jīng)難以提升,,其性能大幅提升的時代已經(jīng)結(jié)束;隨著工作負(fù)載逐年增加,,CPU已無法滿足需求,。FPGA在性能和靈活性之間提供了良好的平衡。由于需要大量的并行處理,,因此視頻編碼,、解碼和圖像處理算法都更適合于用FPGA來實現(xiàn)??傊?,基于FPGA的解決方案可以縮短上市時間,具有高度的可定制性,,并且可以有效地用于實現(xiàn)不斷發(fā)展的算法,。


本站內(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]