基于賽靈思Spartan-3A DSP的安全視頻分析
表1: 典型事件檢測應用中支持的視頻分析功能本文引用地址:http://www.j9360.com/article/186410.htm
此外,通過賽靈思FPGA和ISE® 設計套件工具,視頻分析設計小組可以為終端客戶定制解決方案方面提供更大靈活性。通過快速建立標準分辨率和高分辨率視頻處理原型,我們可以快速定制視頻分析引擎和片上系統(SoC)解決方案。這樣我們就可以根據客戶需求更高效地利用Spartan-3A DSP 3400A或成本更低的Spartan-3A DSP 1800A FPGA器件中的可用資源。
FPGA解決方案另一個好處是可以利用同一硬件平臺創建多種不同的衍生產品。由于我們已經使用VHDL設計了多種分析加速器引擎,因此可以將這些專用內核集成到C-MVA協處理器中。這種方法允許工程師重新利用雙MicroBlaze嵌入式系統來創建不同的FPGA編程文件,這樣就構成了高度可擴展的解決方案,可以輕松調節適應范圍廣泛的視頻分析應用。
從DaVinci移植到賽靈思FPGA
我們先前一代的視頻分析產品基于TI DaVinci數字媒體SoC芯片TMS320DM6446。該芯片包括ARM9x處理器和C64x+ DSP協處理器。在設計中,我們使用ARM9x做通信和控制,用C64x+做分析算法的DSP處理。然而,兩者組合起來構成的系統仍然無法滿足我們第二代產品所需要的高性能處理要求。因此,我們轉向了Spartan-3A DSP FPGA系列。
通過創建擁有兩個獨立運行MicroBlaze v7軟內核處理器的賽靈思嵌入式系統,我們簡化了設計移植任務。這種架構使我們可以分別移植ARM和DSP處理器代碼,從而大大簡化了設計移植過程。圖2給出了Eutecus硬件系統的框圖,以及基于MVE的參考SoC設計。
圖 2. Dual-MicroBlaze® System-on-Chip (SoC)架構MVE引擎協處理器框圖
我們的MVE引擎包括運行在MicroBlaze (MB0)上的InstantVision嵌入式軟件,運行在MicroBlaze (MB1)上的系統控制和通信部分以及C-MVA協處理器。C-MVA協處理器是運行在FPGA構造上的硬件加速器IP內核模塊鏈。
利用ISE設計套件和MicroBlaze軟核,我們的ARM和DSP代碼移植工作相當簡單。一個突出優點就是,InstantVision跨平臺環境是采用高級標準C/C++語言編寫的,只需要很少的修改。
一旦完成代碼移植,我們驗證其功能的正確性并且識別出性能瓶頸。事實表明,優化和加速對原TI處理器開發的C/C++代碼是一項重要挑戰,因為當初在開發這一平臺的過程中,我們在匯編級優化時使用了幾個DaVinci C64x+協處理加速模塊。在轉換過程中,我們遵循以下一系列步驟:首先利用高級C函數來重寫這些模塊。最后,用運行在FPGA構造上的同等功能加速器模塊來代替這些模塊的大部分功能。
評論