嵌入式視覺演算法開啟全新戰(zhàn)場
摘要: 為了滿足行動(dòng)手機(jī)、汽車和視訊產(chǎn)品的高性能和高功效成像需求,嵌入式視覺演算法正持續(xù)快速發(fā)展,并在數(shù)位訊號處理(DSP)核心IP公司之間開啟了全新的戰(zhàn)場。
關(guān)鍵字: 半導(dǎo)體,處理器,手機(jī),GPU
為了滿足行動(dòng)手機(jī)、汽車和視訊產(chǎn)品的高性能和高功效成像需求,嵌入式視覺演算法正持續(xù)快速發(fā)展,并在數(shù)位訊號處理(DSP)核心IP公司之間開啟了全新的戰(zhàn)場。
繼Ceva公司在一年前發(fā)布可程式的低功耗成像與視覺平臺(tái)MM3101之后,今年2月,Tensilica公司也推出了名為IVP的成像與視訊資料層處理器單元(DPU)。
Tensilica公司的IVP DPU是一種可授權(quán)的半導(dǎo)體IP核心,專門設(shè)計(jì)用于從主處理器卸載復(fù)雜的成像功能。據(jù)Tensilica公司創(chuàng)辦人兼CTO Chris Rowen透露,雖然目前IVP IP核心主要用于大眾市場,但已有兩家客戶將它運(yùn)用于其系統(tǒng)晶片中。
IVP DPU具有每秒每瓦執(zhí)行5,000億畫素作業(yè)的能力,采用臺(tái)積電(TSMC)的28nm制程技術(shù)制造。據(jù)Tensilica公司介紹,IVP DPU中每顆核心占用面積不到0.5平方毫米,因此非常適合低成本應(yīng)用。
推動(dòng)對于成像/視訊處理器核心的需求來自于各種新功能,例如行動(dòng)手機(jī)和數(shù)位相機(jī)中使用的高動(dòng)態(tài)范圍影像擷取、臉部辨識(shí)與追蹤;數(shù)位電視(DTV)中使用的手勢控制與視訊后處理;先進(jìn)駕駛輔助系統(tǒng)(ADAS)中的正面碰撞警示、車道偏離警告等。
這些復(fù)雜的成像/視覺演算法發(fā)展非常迅速,以致于行動(dòng)手機(jī)和汽車公司希望「在數(shù)周內(nèi)而不是幾個(gè)月內(nèi)」,就能將這些新功能整合于其產(chǎn)品系統(tǒng)中,Tensilica公司成像/視訊總監(jiān)Gary Brown表示。
多種方案選擇
對于系統(tǒng)供應(yīng)商來說,成像/視訊處理解決方案有多種方案備選,從在CPU中完成所有功能到卸載成像功能至GPU,或是增加專用于成像功能的硬線邏輯等各種選擇。
「舉例來說,光是在1.5GHz頻率的A8 四核心上進(jìn)行視訊處理,而不包括其它功能,也很容易就達(dá)到3瓦功耗?!筊owen表示。
對于行動(dòng)手機(jī)或數(shù)位相機(jī)而言,想要單獨(dú)在CPU上做到這一點(diǎn)尤其困難,特別是當(dāng)這種消費(fèi)系統(tǒng)需要在拍照的同時(shí)連續(xù)執(zhí)行高動(dòng)態(tài)范圍等演算法時(shí)。
IVP處理器核心架構(gòu)
透過使用硬線邏輯,可實(shí)現(xiàn)一些專用功能,如臉部檢測、視訊穩(wěn)定或物件追蹤等。但是,隨著越來越多的高階人機(jī)界面功能向下轉(zhuǎn)移到消費(fèi)設(shè)備上,從現(xiàn)在開始的兩個(gè)月內(nèi)就必須提供更多新的硬線模組。
Tensilica的IVP DPU平臺(tái)架構(gòu)
將成像功能卸載到GPU是另外一種選擇。值得注意的是,GPU的側(cè)重點(diǎn)在于浮點(diǎn)運(yùn)算和3D繪圖處理,Rowen認(rèn)為,這種修改可能會(huì)降低成像效率,并增加晶片占用面積。此外,GPU較難以進(jìn)行編程處理,他補(bǔ)充道。
Berkeley Design Technology公司總裁Jeff Bier解釋,處理即時(shí)影像或視訊資料一般需要「每秒數(shù)百億次作業(yè),」這是因?yàn)椤肝覀儗?fù)雜的演算法運(yùn)用于即時(shí)資料,并從畫素中擷取含義——這是嵌入式視覺的本質(zhì)——也是個(gè)困難的問題?!?/P>
另外,這個(gè)難題「從一般意義來看,事實(shí)上還未能解決,」Bier補(bǔ)充道。這意味著「演算法開發(fā)方法可能極具試驗(yàn)性和反覆性?!挂虼耍瑥牧硪环矫鎭砜?,所需要的成像/嵌入式視覺解決方案是可加以編程的,也較易于開發(fā),他指出。
基于高效處理器的架構(gòu)
Linley Group公司資深分析師J.Scott Gardner贊同Jeff Bier的看法?!赶噍^于視訊編解碼具有詳細(xì)定義的演算法,讓設(shè)計(jì)者可燒錄于硬體中;而嵌入式視覺所用的演算法實(shí)際上是無限制的,而且還一直在發(fā)展中?!顾硎?。
Gardner把嵌入式視覺稱為「完美的應(yīng)用」,因?yàn)樗堋赋浞掷醚菟惴ㄖ泄逃械馁Y料層平行機(jī)制」。然而,僅擁有大量畫素運(yùn)算單元是不夠的,他補(bǔ)充道,「記憶體系統(tǒng)和匯流排架構(gòu)必須設(shè)計(jì)成能夠以接近每秒10億畫素的速率高效率地提供畫素資料?!?/P>
[#page#]
那么在針對嵌入式視覺應(yīng)用實(shí)現(xiàn)最佳化處理器時(shí),設(shè)計(jì)者必須具備哪些特殊能力?Jeff Bier列舉:必須能應(yīng)用多種架構(gòu)化平行機(jī)制,充分利用畫素處理平行特色;支援更短與更長的資料類型(如8位元、16位元和32位元),這樣當(dāng)需要較低精度時(shí),就能平行執(zhí)行更多作業(yè)以及節(jié)省記憶體頻寬,而在需要較高精度時(shí)也能立即得到滿足;提供非常高的記憶體頻寬,以便能使所需的大量資料有效率地進(jìn)出處理器;提供專門的指令,以便有效率地建置這些演算法中所使用的關(guān)鍵作業(yè)。
事實(shí)上,Tensilica公司的IVP架構(gòu)就能滿足許多這種要求。IVP基于四路可變長度指令擴(kuò)展(FLIX)架構(gòu)。FLIX是Tensilica版本的VLIW架構(gòu),提供混合了緊密編碼指令的高度平行機(jī)制。IVP采用一套32路向量單指令多資料(SIMD)的資料集和一條平衡的9級管線。
這種架構(gòu)包含一個(gè)直接記憶體存取(DMA)傳送引擎,支援高達(dá)每秒10GB的吞吐量和每周期1,024位元(64x16位元畫素/周期)的局域記憶體吞吐量,可充分滿足解析度和畫面播放速率要求。IVP還采用了許多特殊成像作業(yè)指令,可加速8位元、16位元和32位元畫素資料類型和視訊作業(yè)模式,據(jù)Tensilica公司介紹。
Tensilica IVP vs CEVA架構(gòu)
當(dāng)然,Tensilica并不是第一家致力于開發(fā)成像和嵌入式視覺用處理器核心的公司。CEVA公司于2012年1月發(fā)布的MM3101與Tensilica的IVP有許多相似之處,也混合使用了VLIW和SIMD。
CEVA-MM3101平臺(tái)專用于滿足最先進(jìn)的成像增強(qiáng)和電腦視覺 應(yīng)用等極端計(jì)算需求
Gardner認(rèn)為,「隨著Tensilica進(jìn)入嵌入式視覺市場,CEVA將必須重新改善其MM3000平臺(tái)?!筟!--empirenews.page--]
相較于Tensilica的IVP,CEVA公司的MM3101提供較低的原生運(yùn)算性能和較小的記憶體頻寬。Tensilica支援32路SIMD(512位元向量),可能平行處理32個(gè)16位元畫素,相形之下,MM3101在使用兩個(gè)128位元的向量處理單元時(shí)僅支援每周期16個(gè)16位元畫素,Gardner解釋道。
此外,雖然CEVA的MM3101有一個(gè)獨(dú)立的256位元向量載入/儲(chǔ)存單元,但Tensilica的IVP支援每周期高達(dá)2個(gè)512位元的參考記憶體,可實(shí)現(xiàn)高達(dá)4倍的記憶體頻寬。