複製鏈接
請複製以下鏈接發送給好友

VPU

鎖定
VPU(Video Processing Unit,視頻處理單元)是一種全新的視頻處理平台核心引擎,具有硬解碼功能以及減少CPU負荷的能力。另外,VPU可以減少服務器負載和網絡帶寬的消耗。VPU由ATI提出,用於區別於傳統GPU(Graph Process Unit,圖形處理單元)。圖形處理單元又包括視頻處理單元、外視頻模塊和後處理模塊這三個主要模塊 [1] 
中文名
視頻處理單元
外文名
Video Processing Unit
別    名
視頻處理平台
作    用
視頻處理
歸    屬
GPU
所屬範圍
信息科學

VPUVPU簡介

VPUVPU的框架

VPU(以i.MX6 VPU為例)通過32位的AMBA3 APB總線來完成系統控制,通過64位的AMBA3 AXI來完成數據傳送。它充分利用片上存儲單元來實現高性能。VPU上的大多數視頻硬件模塊都為了針對不同的視頻標準間的共享進行了優化設計,能夠提供額外的低功耗和性能強大的低口數。它有一個16位的內部DSP內核稱為位處理器,它控制內部視頻編解碼的內部硬件模塊操作。為使主處理器簡單有效的控制,VPU提供一組被稱作主機接口的寄存器。主機處理器和VPU之間是通過主機接口寄存器進行通信。流數據和一些輸出的圖像數據由主機處理器和VPU直接訪問。為了更全面靈活的控制VPU,提供一姐包含所有所需操作的API接口函數,使得VPU對開發者完全是通明的 [2] 

VPUVPU的基礎特性

1、支持的視頻編解碼標準類別豐富,圖像高清 [2] 
2、支持多種抗誤碼工具、多解碼和全雙工多方通話同時進行 [2] 
3、提供了可編程性、柔初性,以及易於升級的解碼和編碼或主機接口,因為在編解碼處理和主接口都實現為可編程微處理中的固件 [2] 

VPUVPU的編程特性

VPU編程特性體現在有一個稱為BIT處理器的內部的DSP。該BIT處理器的操作是由稱為位固件的專用微代碼確定。擁有完整組位的固件代碼,以及一套完整的VPU控制功能稱為VPU的API。因此,應用程序開發人員並不需要管理的主機處理器的編解碼器的具體問題。VPU提供給開發人員的編程實現接口具有如下特性 [2] 
1、基於幀的處理。BIT處理器完成解碼操作在一幀一幀的基礎上,在VPU解碼器操作不負擔的主機處理器。發出圖象處理命令之後,主機應用程序執行它自己的操作,直到它已準備好為下一次圖像處理操作或直到它收到一個來自VPU的中斷通知完成主處理器圖像處理 [2] 
2、程序內存管理。它有自己的程序的內存來加載位固件用於支持應用程序特定的操作。為了使用這個內部存儲器效率地進行,BIT固件具有動態重新裝載計劃,使VPU具有小量的程序存儲器 [2] 
3、多實例。VPU支持多實例,這對於多聲道解碼器的應用程序十分有用。當創建一個新的時實例和啓動的圖像處理操作時,VPU創建和內自動更新一組上下文參數。這種內部上下文管理方案允許主機處理器上運行的不同解碼器的任務,以控制VPU獨立經營自己的實例編號。當創建一個新的實例,應用程序的任務接收到一個新的句柄指定一個實例。應用程序可以很容易地通過調用一個西數終止VPU單個任務關閉某個實例 [2] 

VPUVPU API

VPU提供了一組預先定義好的API接口,在實際的編程開發過程中,開發人員無需知道主機寄存器定義和使用的詳細信息,只需將要執行的命令和相應的參數,以及將必須的數據結構提供給函數即可。通過Freescale提供的API用户使用文檔,我們可以構建一些簡單的例子對開發板進行測試,確認開發板具有我們所需要的VPU硬解碼功能,熟悉開發流程 [2] 

VPUVPU發展趨勢

VPUVPU發展概述

隨着多種高速高性能處理器技術的發展,視覺處理有了更多的可選平台。可編程邏輯陣列(FPGA)基於硬件可編程方式進行處理;嵌入式應用處理器(AP)可集成多種專用協處理器輔助處理;具有專用IP的單片系統(SoC)則可以直接將硬件處理單元植入系統平台。相比之下,通用DSP平台的針對性有所侷限,需要通過多核集成,或多片陣列來提高性能。然而,在視覺處理新的市場環境下,對性能、功耗、價格和尺寸的更高需求對處理器提出了更加嚴格的要求,因此,視頻處理平台VPU成為一種全新的核心引擎。由於VPU中集成了多種專門進行視覺處理的硬件結構,因此在處理上可以有很大的超越,其綜合性能可大幅度提升到每瓦性能超過600G FLOPS(浮點運算單位),是其它處理器的二至三倍,而價格僅為幾分之一 [3] 

VPUVPU特色及應用

VPU針對視覺處理應用而設計,在性能、功耗和功能性方面都有特別的強化,使之更貼近於實際的應用需求,其設計兼顧到多種用途,專門為視覺處理進行硬件系統的優化。其實VPU也是一個SoC,內部集成有多個主控RISC的CPU、許多硬件加速器單元和矢量處理器陣列,專門為視覺海量像素設計的高性能影像信號處理器(ISP),以及豐富的高速外圍接口。在保證強大性能和功能的前提下,VPU採用更先進的集成電路工藝,大大縮小了芯片的尺寸,並結合有效的技術手段,降低各個運算單元的功耗 [3] 
當前行業內處於領先地位的VPU平台是Movidius公司推出的小型化、低功耗架構。Myriad系列VPU是一款可以用於3D感知及掃描建模的芯片,可以支持室內導航、360度全景視頻處理等機器視覺應用,其視覺處理性能超出其它處理器平台十倍,功耗則低一個數量級,而尺寸和價格都僅為五分之一。這款VPU的出現,無疑向新興的智能相機市場注入了活力。Myriad的第二代VPU採用全新的體系架構,提升性能達到二十倍,增強視覺處理能力使之成為新的VPU標杆,同時支持六個60幀全高清視頻信號輸入,而功耗在1.2瓦以內,芯片採用28納米工藝製造。新平台的突出表現在於實現虛擬現實、室內定位和物體識別的應用,是機器人視覺應用的理想選擇。通過該芯片超小型的尺寸,可以應用到智能工業相機中和各種智能終端,也可用在紐扣式智能相機上,或在可穿戴智能相機上擴展使用 [3] 
VPU為視覺應用提供了一個強大的平台,但更多的開發工作是在軟件上,基於VPU的視覺應用系統開發可以充分利用片上的硬件單元及相關的軟件資源。包含工具、支持庫及框架的完整VPU軟件開發套件(SDK),以往視頻處理器中涉及視覺處理的單元得到了增強,如核心視覺處理單元、線性代數運算矩陣,還有前端影像處理單元,不僅包含ISP處理,還有ISP仿真,並支持相機調試工具。圖形處理能力的提升表現在支持圖形檢測API,為便於多核異構芯片開發而支持OpenCL。由於在視覺應用中,與高敏感度和超高像素的傳感器的接駁尤為重要,因此專門有傳感器支持接口單元。另外VPU所特有的工具單元也提供視覺調試的全面支持。VPU中的主控制器、BSP、HDK等通用單元以開放為主,便於客户進行更多應用開發 [3] 

VPUVPU市場前景

作為一個行業的平台領先者需要有足夠的積累和不懈的進取,當然還要有強大的財力和物力的支持,VPU平台的創建和發展也絕不輕鬆。Movidius最早的成立地竟然是愛爾蘭的都柏林,而後又在羅馬尼亞,再到美國的硅谷建立研發團隊。公司創始人都堪稱半導體和處理器行業的元老,公司並設立技術指導委員會,確立公司的技術路線和VPU平台發展總體規劃。在Movidius核心管理層中,我聽到了不少熟悉的名字,其中就有TI及其他知名公司資深的高管和專家。公司員工雖未過百人,但研發人員就佔了九成,其中五分之一負責VPU芯片硬件設計,而其餘從事VPU上軟件構建,由此可見VPU應用在很大程度上依賴於軟件 [3] 
參考資料