基于多內(nèi)核處理器的高性能視頻系統(tǒng)理論分析與設計
時鐘頻率的提高帶來的高功耗、深亞微米半導體制造工藝漏電流產(chǎn)生的高功耗以及更多的設計挑戰(zhàn)促使處理器設計制造商開始將思路轉向到多內(nèi)核集成的解決方案上來。多核處理器技術是提高處理器性能的有效方法,因為處理器的實際性能是處理器在每個時鐘周期內(nèi)所能處理指令數(shù)的總量,因此增加一個內(nèi)核,處理器每個時鐘周期內(nèi)可執(zhí)行的單元數(shù)將增加一倍。上世紀末期,雙內(nèi)核處理器開始進入高端服務器產(chǎn)品。隨著Intel和AMD公司先后推出雙內(nèi)核CPU以來,多內(nèi)核CPU在個人電腦中的應用已經(jīng)成為無可逆轉的趨勢,多內(nèi)核架構在處理器性能、低功耗、縮小系統(tǒng)電路面積等方面都表現(xiàn)出了顯著的優(yōu)勢。
從某些方面來說,嵌入式應用對處理器的需求更為苛刻,特別是低功耗、低成本方面。為滿足當前嵌入式設備應用越來越高的性能需求,并盡可能地降低功耗,在高端嵌入式處理器領域的一個明顯變化是從頻率越來越高向多內(nèi)核架構轉變。多內(nèi)核處理器的需求在很多產(chǎn)品領域顯著增加。為加強產(chǎn)品競爭優(yōu)勢,嵌入式處理器提供商在多內(nèi)核的競爭中紛紛祭出高招。
高性能視頻系統(tǒng)需要多核處理器
對于嵌入式系統(tǒng)設計工程師來說,多內(nèi)核絕不是一種時髦或產(chǎn)品營銷時的噱頭,而是基于產(chǎn)品性能需求、功耗、集成度、成本等多方面的取舍結果。特別是消費電子產(chǎn)品應用中,單內(nèi)核處理器依然是絕對的主流。但在部分需要更高處理、控制能力的應用中,雙內(nèi)核處理器早已不是陽春白雪,而這類應用中多媒體類產(chǎn)品占很大的比重,例如視頻監(jiān)控(特別是具有智能分析功能的監(jiān)控設備)、視頻會議系統(tǒng)、數(shù)字攝像系統(tǒng)、汽車可視化系統(tǒng)等等。
以視頻監(jiān)控應用系統(tǒng)為例,隨著視頻監(jiān)控應用的規(guī)?;途W(wǎng)絡化,智能化將是視頻監(jiān)控系統(tǒng)發(fā)展的另外一個必然趨勢。具有智能分析功能的新一代監(jiān)控系統(tǒng)大大地擴展了視頻監(jiān)控的應用領域,除了傳統(tǒng)的安防應用外,人體行為識別和智能交通也將開辟大量的新興應用市場。
智能視頻分析算法的實現(xiàn)形式絕大部分是軟件實現(xiàn),對于嵌入式軟件實現(xiàn)來說,最終產(chǎn)品表現(xiàn)的性能優(yōu)劣與硬件平臺的關系很大。畢竟嵌入式平臺的資源是有限的,相對普通的計算機平臺而言,嵌入式平臺計算能力相對低很多,核心芯片緩存相對小,內(nèi)存容量相對小等等。這些都會給智能視頻分析算法嵌入式實現(xiàn)帶來困難,所以智能視頻分析算法在嵌入式實現(xiàn)時都會進行一定的優(yōu)化。硬件平臺不同會導致優(yōu)化的策略和程度上有所差異,如果選擇的處理器越高,在底層操作上開放的指令和操作越多,優(yōu)化工具越齊全,則系統(tǒng)整體優(yōu)化的性能會越好。
智能視頻監(jiān)控設備大部分都是嵌入式設備。智能視頻監(jiān)控屬于傳統(tǒng)視頻監(jiān)控的擴展與延伸,所以傳統(tǒng)的視頻監(jiān)控對硬件平臺的要求,智能視頻監(jiān)控也都必須具備。但智能視頻監(jiān)控與傳統(tǒng)的視頻監(jiān)控相比,用戶的需求更加多樣化,例如:作為地鐵系統(tǒng)用戶,他們需要的功能是檢測是否跨越候車的黃線,人群密度是否過大,是否有可疑的遺留物體等;對于銀行系統(tǒng)用戶來說,他們所需要的是ATM機的智能監(jiān)控分析包括是否有安裝假鍵盤、安裝吞卡器,在ATM機是否有暴力行為,是否出現(xiàn)犯罪分子的人臉等。因此,一方面,用戶需求的多樣化可以使算法隨著用戶的需求調(diào)整。另一方面,智能視頻處理要求芯片具有強大的處理能力,有許多算法實現(xiàn)時必須采用并行處理。因此,傳統(tǒng)的基于單內(nèi)核微控制器的解決方案面臨很大挑戰(zhàn),融合MCU及DSP的異構雙處理器或多處理器解決方案,以及具有強大運算能力的多內(nèi)核處理器是智能視頻監(jiān)控嵌入式平臺的可選方案。
雙內(nèi)核匯聚式處理器——BF561
ADSP BF561處理器是Blackfin產(chǎn)品家族中的一個具有高性能成員,它包括兩個獨立的ADI處理器核,每個處理器核包含一個雙乘法累加器信號處理機,一個類RISC指令集,每個內(nèi)核均采用完全的SIMD架構,包含用于視頻加速處理和圖像處理的指令。匯聚式處理器的特點是減少或避免了采用單獨的數(shù)字信號和控制處理器的需求,從而減少了物料成本,同時極大地簡化了軟硬件開發(fā)任務。Blackfin處理器同時提供了全面的電源管理方案,獨特的低功耗和低電壓設計(Blackfin可以由低于2V的外部電壓供電),減少了整體的功耗,這對于全天候運行的視頻監(jiān)控來說具有非常重要的意義。
雙內(nèi)核BF561具有兩倍于BF533處理器的處理性能,兩倍的片上存儲器,大大增強了數(shù)據(jù)帶寬,并保持與BF533處理器完全的代碼兼容。BF561處理器自帶328KB片上存儲器提供兩個并行數(shù)據(jù)端口,可以直接連接并行AD和DA轉換器或其他通用外設。BF561處理器還內(nèi)置了多個獨立DMA控制器,支持數(shù)據(jù)自動傳輸,從而使處理器內(nèi)核的負擔最小化。此外,BF561延續(xù)了Blackfin處理器具有豐富接口的特點,為設計帶來極大的便利,例如兩個雙通道全雙工同步串行口、兩個支持ITU-R 656視頻數(shù)據(jù)格式的并行外設接口、SPI端口等。
一直以來,大部分多內(nèi)核處理器是集成多個DSP和CPU內(nèi)核的異構多核處理器,分別將DSP和CPU針對信號處理任務和控制任務,適合于任務劃分簡單的手機等通信應用。而BF561的雙內(nèi)核DSP是一個例外,每個內(nèi)核都可以同時單獨處理信號處理和控制處理任務,因此無須將這兩類任務分別在多個內(nèi)核之間的分配,設計工程師可以隨意地進行任務分配以平衡內(nèi)核之間的任務處理量。BF561的雙核處理器相互獨立,工程師可以根據(jù)應用分配兩個處理器內(nèi)核的任務,兩個內(nèi)核在執(zhí)行指令上是相同的。兩個處理器內(nèi)核可以分別用于運行嵌入式操作系統(tǒng)(OS)和信號處理;對于信號處理任務量大的嵌入式系統(tǒng)可以將兩個內(nèi)核同時用于信號處理,單獨采用具有相同內(nèi)核的BF533(或BF536處理器)運行嵌入式操作系統(tǒng)。
圖1:匯聚式處理器與異構協(xié)處理器的優(yōu)勢特性對比。
圖2:基于BF561的視頻監(jiān)控系統(tǒng)功能框圖。
評論