前言
對於確保車站、機場、銀行、賭場、賣場、甚至住家等場所的安全而言,視訊監視系統是其中重要的關鍵元件。隨著安全風險持續攀高,視訊監視與紀錄事件的使用模式已趨於多元化。上市時程的壓力和新編解碼標準的演進,加上高階物件偵測、動作偵測、物件追蹤以及各種追蹤對焦功能等多元化的需求,是新型視訊監視架構所面臨的主要挑戰。因此,不論是從低階到高階或從獨立式產品到PC擴充卡,新架構必須是具備擴充彈性且擁有成本效益的解決方案,以滿足日趨繁雜的視訊監視系統需求,FPGA應是各類視訊監視系統的理想解決方案。
視訊監視與數位錄影系統
FPGA搭配DSP
高階數位視訊壓縮技術,已被快速地為各類數位錄影機(DVR)所採用,並開始出現在視訊監視系統當中。隨著大多數DVR製造商從MPEG4轉移至H.264高畫質(HD)編解碼技術,市場對於壓縮速率更高的解決方案需求也日益迫切。
特殊應用標準產品(ASSP)適合支援各種量產型應用,但缺點是本身缺乏彈性、開發成本過高,開發時間也會跟著延長。另外,因為H.264 HD編碼作業比解碼更為複雜,大多數高階數位媒體處理器很少能執行H.264 HD解碼。FPGA搭配外部的DSP或數位訊號處理器,是滿足H.264 HD效能需求的最佳解決方案。
FPGA在視訊壓縮的功能
在一個視訊監視系統中,視訊訊號由多個攝影機產生。FPGA收到視訊解碼器傳來ITU-R BT656格式的數位視訊後,將處理過的視訊資料輸出至螢幕顯示,並傳送至數位媒體處理器或DSP進行壓縮後,儲存在硬碟機。
使用低成本的FPGA,廠商便可進一步進行動作偵測、視訊縮放、色域空間轉換、硬碟界面、DDR2記憶體界面等作業,為DSP處理器提供視訊加速功能,並將兩個分時多工(time-multiplex)的27 MHz ITU-R BT656資料流,匯整成一個54 MHz的資料流。將兩個ITU-R BT656資料流,匯整成一個ITU-R BT656資料流,僅需要單個通道視訊埠,就可獨立傳送整個雙通道的視訊資料,此項建置非常適合用來連結僅有一個ITU-R BT656視訊輸入埠的數位媒體處理器環境。(圖一)便顯示此種架構的區塊圖。
《圖一 運用FPGA搭配數位媒體處理器開發的視訊監視系統 》 |
|
例如,採用僅有一個ITU-R BT656視訊輸入埠的TI Da Vinci處理器,進行DVR設計時,更有效率的建置方法,便是運用分時多工技術,將兩個或更多ITU-R BT656資料流,匯整成單一VLYNQ資料流,然後再傳送至Da Vinci處理器。這種建置方法,能讓廠商使用體積較小的封裝元件、以及較少的I/O針腳來傳送視訊流,因此可降低整體系統成本。(圖二)則是顯示這種設計的區塊圖。
《圖二 運用FPGA與Da Vinci處理器的視訊監視系統》 |
|
PC擴充卡數位錄影系統
革新PCI傳輸效能
在過去10年,PCI匯流排為PC提供充裕的傳輸效能。但現今的PC擴充卡DVR系統,需要更高的傳輸頻寬,流量已超過PCI匯流排的上限。去除空白資料的未壓縮視訊,其資料流量約為165 Mbps。因此總頻寬僅1 Gbps的PCI匯流排,最多在一個PCI匯流排上,支援6個擷取未壓縮視訊或重播裝置。廠商也可以在擴充卡上,使用MPEG4編解碼晶片組,來降低對匯流排的頻寬需求。不過這種做法會增加成本,並會讓廠商受限於既有的MPEG4晶片組功能。
PCIe的優勢
PCI Express(PCIe)技術,讓傳輸流量大幅提升。PCI Express分成許多通道,每個通道在各個方向均設有一對差動訊號,而每對差動訊號的傳送速率為2 Gbps。主機板上每個PCIe插槽擁有自己的通道,不會和其他任何插槽共用資源。每個插槽的組態為16通道(亦稱為x16)、8通道(x8)、4通道(x4)、或1通道(x1)。PCIe讓每個界面卡可提供從x1的2 Gbps到x16的32 Gbps資料流量。利用PCIe提供的資料流量,廠商可擺脫每個PCI界面卡處理未壓縮視訊資料時所面臨的6個通道限制。
建置PC擴充卡DVR系統
運用(圖一)的設計,廠商可藉由PC取代數位媒體處理器,快速且輕易建置出一款PC擴充卡DVR系統,然後透過PCIe匯流排,把視訊資料流傳送至PC。視訊的類比轉數位轉換器,能產生4個獨立的數位ITU-R BT656資料流,每個資料流饋送到低成本的FPGA元件,進行前置處理。在FPGA中,視訊資料被分成空白與同步資料,並轉成適合在PCIe中傳輸的封包,然後送至PCIe核心。再由軟體處理輸入的視訊資料,然後顯示、處理、或儲存至磁碟。(圖三)是顯示PC擴充卡的視訊監視系統設計。
視訊與影像處理演算法
從多相視訊縮放、二維FIR濾波器、螢幕直接顯示、到包括透明圖層混色(alpha-blending)等重疊與簡單特效,甚至到格式與色域空間轉換,FPGA都是即時數位視訊、影像處理、以及過濾等領域的一個理想平台。(表一)顯示的是常見視訊IP區塊組的應用指南。
表一 視訊IP區塊組應用指南
功能 |
應用指南 |
多相視訊縮放器 |
XAPP929 |
色域空間轉換器RGB2YCrCb |
XAPP930 |
色域空間轉換器YCrCb2RGB |
XAPP931 |
Chroma Resampler |
XAPP932 |
2D FIR |
XAPP933 |
2D Rank Order Filter |
XAPP953 |
FPGA在DSP處理能力方面,可支援最高可達1080p品質的高解析度,並可降低大型DSP陣列的尺寸。FPGA是可重複編程的硬體元件,可讓設計業者輕易地實驗各種新型、高效能、以及硬體開發為基礎的視訊及影像演算法,藉以強化終端產品的功能特色。
立即可用的IP
IC設計業者要提供的是視訊IP區塊組,協助廠商在視訊監視系統中,快速設計、模擬、建置、以及驗證視訊與影像處理演算法,其中包含設計DVR所需的基本原型與高階演算法。
此外,IC設計業者與合作夥伴提供各種壓縮編碼、解碼、以及編解碼解決方案,包括可讓設計業者快速建置的立即可用型核心,到建置區塊參考設計方案與硬體平台,讓廠商在更低的位元率下,支援更高的品質,藉以突顯產品的特色。
運用FPGA支援某些編解碼區塊的超高密度處理演算,讓廠商能支援多通道的HD編碼作業,節省寶貴的系統處理器運算週期,藉由降低或省去DSP處理器陣列,以大幅減低成本。更重要的是,廠商能藉此能輕易地把各種界面、以及進一步的視訊處理等更多功能與特色,整合至系統當中。簡言之,FPGA提供一種可擴充的解決方案,讓同一系統能支援不同的規格描述、額外的通道、或新編解碼技術。
FPGA能進一步藉由匯整系統邏輯功能與建置新的週邊元件,來降低DVR系統成本。IC設計業者能與其合作夥伴提供各種系統界面,協助廠商快速開發視訊監視系統:包括高階記憶體界面、PCI Express、TI的VLYNQ與EMIF界面、硬碟機以及ITU-R BT656界面等等。
工具可簡化設計
工具可簡化設計例如System Generator for DSP套件,可讓設計業者運用視訊IP區塊組,以Simulink語言建立高效能DVR系統,並進行除錯作業。運用System Generator開發與建置視訊處理演算法,可讓業者能進行全盤的驗證,並能輕易執行設計內容。
IC設計業者正開發各種預先通過測試的新型視訊IP區塊組。廠商僅須拖曳System Generator內的區塊,就能快速建構自身所需的視訊/成像系統,不必再以HDL語言替這些關鍵建構區塊編寫程式,以此可省下寶貴時間。
為處理開發公板與PC之間極為可觀的視訊資料流,System Generator for DSP工具,推出另一種透過乙太網路界面的創新高速硬體協同模擬方法。這種界面支援低延遲的高流量傳輸,在System Generator環境中建構視訊/成像系統時,經實際運作證實應用功能良好。
另一種屬於AccelDSP合成工具的高階MATLAB語言設計工具,可用來為FPGA設計DSP區塊。這款工具能自動執行浮點至固定端點轉換,產生可合成的VHDL或Verilog程式,並可為後續的驗證工作產生測試方案。廠商可以運用MATLAB演算法,產生固定端點的C++ 模組或System Generator區塊。AccelDSP是DSP解決方案的關鍵元件,結合FPGA元件、設計工具、IP核心、以及第三方解決方案,並提供設計與教育訓練的服務。AccelChip與Xilinx System Generator的整合,結合了MATLAB演算法合成功能,其中包括系統工程師與硬體設計人員常用的圖形化設計流程。
結論
運用FPGA,設計業者可在支援各項標準的系統中,加入獨特的功能,超越其他競爭對手的產品,並讓應用達到最佳平衡點。運用IC設計業者的視訊IP區塊組,廠商可輕易建置具備彈性與高擴充性的DVR系統,因應各級市場的需求。藉由整合PCIe核心與視訊IP區塊組,廠商可開發出低成本的PC擴充卡視訊監視系統。運用FPGA的VLYNQ核心,廠商可藉由FPGA與TI的Da Vinci處理器,輕易地連結數部攝影機所產生的無數視訊資料流。
此外,AccelChip與Xilinx System Generator的整合方案,採用MATLAB語言以及相關的支援工具組,開發各種複雜DSP演算法的System Generator IP區塊。運用這些工具,設計團隊可利用方法,設計建置程序中所需的硬體模型,讓演算法設計人員完全融入FPGA的設計流程,更快速地完成更高品質的設計方案。(作者Hong-Swee Lim為Xilinx賽靈思亞太區DSP產品與解決方案部門資深經理;David Zhang為Xilinx 亞太區DSP專家)