a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 基于Blackfin的智能IP Camera系統設計和優化

基于Blackfin的智能IP Camera系統設計和優化

作者:楊曄,ADI DSP | 嵌入式處理器高級技術應用工程師;張鐵虎,ADI視頻監控技術市場經理 時間:2008-09-01 來源:EDN China 收藏

  本文基于一套智能IP Camera監控系統的具體實現,討論了在新型高性能對軟件系統實現的挑戰和思路,軟件系統如何利用現有模塊做整合設計,保證靈活性和通用性,并討論了一系列系統優化手段,以達到系統性能的最優化。

本文引用地址:http://www.j9360.com/article/87576.htm

  項目背景及概述

  近年來,隨著應用越來越復雜,應用場合越來越多,特別是多媒體功能在各個領域的飛速發展,高性能計算變得無處不在,從消費電子,網絡通訊到工業控制和監控,大多數應用都需要更高的數字信號處理能力。出于成本和設計難度的考慮,人們傾向于使用單顆芯片完成所有的工作,傳統的和MCU開始以多種形式進行融合。

  1. 傳統的MCU+合作方案被集成到一顆芯片封裝內;或者進一步實現為真正的異構多核,可以共享部分甚至全部外部設備。

  2. 以SoC的形式為MCU加上基于固定硬件IP模塊的數據處理能力,如一些編解碼器,針對一些固定標準的應用。

  3. 隨著高端處理器頻率突破500MHz并正在挺進1GHz,MCU和平臺開始真正的融合, DSP處理器的外設接口數量和控制能力逐步提高,而MCU的帶寬和計算能力特別是軟件多媒體處理能力也越來越強,兩者之間不再有本質的區別。

  以上三種融合的形式,實際上互相之間都有借鑒和交叉,從這里開始的未來發展,DSP和MCU之間,多核處理器的核與核之間,都不再有真正的界限。對于任何應用,對應的處理器都是靈活的軟件計算能力、高效的硬件IP模塊和相應外設的結合體,即所謂的“Convergent Platform”(匯聚平臺)。

  這樣的處理器平臺,對于軟件開發者提出了更新更高的要求,高級語言編譯器要能夠最大程度地利用硬件細節來優化編譯性能,減少手工優化的工作量,保持軟件的通用性;DSP算法開發人員不僅僅要了解硬件平臺,也要考慮到軟件平臺的架構對算法實現和優化的影響,例如分離硬件相關部分和無關部分以適應操作系統的結構;而軟件平臺開發人員也要考慮處理器的細節以便進行系統優化,例如為多核或DMA通道的并行處理抽象出系統接口。硬件設計者、算法設計者、系統軟件設計者之間的界限也在消失,復合型的嵌入式系統開發者和團隊才能最適應底層硬件平臺的變化。

  在這個DSP/MCU/硬件IP模塊三者融合的大趨勢中,公司的Blackfin系列處理器就是一個代表產品。從最早的BF53x系列,到目前的增加了圖像處理單元的BF54x系列和低功耗BF52x系列,以及雙核的BF561,都是以同樣的內核配置多樣化的帶寬和外設,針對不同的應用和市場。在這樣的處理器上選擇和設計軟件,需要考慮的因素有很多。

  1. 如何保持對處理器DSP特性硬件細節的最大效率使用,以達到最優算法性能和并行性。

  2. 如何最大程度地保持軟件通用性,避免過多的硬件相關代碼和匯編代碼。

  3. 如何降低軟件平臺開發成本,是否適合采用開源操作系統或模塊。

  4. 系統是否需要實時性能,采用的軟件平臺是否提供這樣的實時性保證。

  這些因素有時候是互相矛盾的,需要考慮具體應用的特點和自身的資源做一個折衷的最優化設計。

  公司為Blackfin的軟件平臺做了很多的努力,提供多樣化的軟件生態環境。Blackfin支持mClinux,VDK,mC/OSII,Nucleus等多種OS/RTOS,基于VDSP開發工具提供多種免費的音視頻codec,硬件抽象函數庫及驅動。在這個基于BF53x的智能監控系統中,我們希望最大程度地發揮芯片處理能力,達到最好的編碼和智能算法能力,所以選擇了一種RTOS  mC/OSII及其網絡協議棧作為操作系統平臺。在小型的RTOS中,一般不區分用戶態和內核態,訪問系統硬件資源的開銷小,中斷和任務切換時間有實時保證,對內存的使用和分配也比較自由,這些特點決定了在RTOS下更容易發揮Blackfin作為DSP處理器的性能,并能直接使用提供的高性能H.264編碼庫;但缺點是對比Linux這樣開源資源比較豐富的操作系統,RTOS缺少某些現成的應用程序比如HTTP Server,需要更多的開發投入或第三方資源。

  Blackfin IP Camera 系統架構

  整個IP Camera系統主要包括音視頻采集,智能視頻分析或智能音頻分析,音/視頻編碼,流媒體打包傳輸,系統控制等模塊(如圖1所示)。

  基本系統為Blackfin的視頻接口PPI同數字視頻流輸入相連,用來接收視頻信號,而串行的SPORT接口可以連接音頻輸入,音視頻數據以專用DMA通道傳送到SDRAM;如果需要智能監控,可以根據需要插入不同的分析模塊;然后軟件編碼器負責對實時采集進來的音視頻進行壓縮,并打成TS(Transport Stream)流進行傳輸。整個系統是數據流驅動的,圖1中不同的輸入,分析和編碼模塊可以根據需要來選擇,每個模塊的輸入和輸出的是符合標準的數據流,可以靈活地插入系統數據流的不同位置進行處理。一般的Blackfin單核芯片只能同時使用其中的一部分模塊,但雙核芯片如BF561或雙片方案中,可以同時使用所有的模塊。

  視頻采集和編碼

  Blackfin 系列DSP專門針對高速并行數據特別是視頻數據集成了并行外圍接口(PPI),在傳統的數據總線的基礎上增加了一條專用數據吞吐通道。

  PPI接口不僅可以按照BT.601視頻流的“硬件同步”模式工作,還能自動解碼BT.656前同步碼,從而允許無縫連接到多種視頻源和圖像傳感器,與直接存儲器存?。―MA)控制器配合使用,PPI可以在完整的視頻幀信息中只讀入有效的視頻信息,或只有消隱區域。這樣當不需要完整的視頻幀時顯著節省了帶寬。另外,PPI可以忽略隔行的BT.656視頻流的所有第二場圖像信息,從而提供了一種很有效的方法用于快速抽取輸入信號。最后,因為PPI本身就可以解BT.656視頻流,所以它可以直接連接到流行的類似ADV7183A視頻解碼器。

  IP Camera適應主流的編碼標準如H.264,MPEG-4等,ADI公司都提供免費的編碼器軟件。本項目采用H.264視頻壓縮標準,ADI的H.264編碼器性能得到了最大的優化,充分利用了片內L1 內存,數據通過DMA搬移,與處理器的運算并行執行。主要的特點有:支持YUV420和UYVY422 (CCIR-656) 視頻輸入格式,輸出是以NAL為單位的基本視頻流;對于H.264編碼,支持Baseline Profile和一些Main profile的特性(Interlaced encoding, CABAC),BF53x能達到最大實時1/2 D1,BF561支持D1實時,支持I和P幀,自適應CBR碼率控制等。對于不同的應用,ADI H.264編碼器的比特率是可調整的,低比特率下甚至可以在CDMA1x這樣的低帶寬應用中實現實時傳輸。

  智能監控

  目前監控市場的發展越來越趨向于智能化,各種視頻或音頻的智能分析算法得到產業化應用,如運動目標檢測和跟蹤,入侵檢測,特殊聲音檢測和定位等等。Blackfin處理器從架構到指令集都對多媒體處理有很好的支持,有專用的視頻處理指令,因此特別適合于實現靈活的多媒體智能分析算法。ADI公司推出了“Image Tool Box”智能監控軟件包,針對智能監控算法中的一些常用和基本函數做了專門的優化,有很好的性能,可以加速上層算法的實現和優化。

  一般智能分析的實現是針對未編碼的媒體流進行分析,但也有利用編碼器輸出結果的算法。本項目因為直接使用ADI公司給定的編碼庫,因此使用前置的智能模塊直接分析輸入的媒體流,并輸出結果。音視頻的智能處理種類比較多,并在不斷地改進,所以一般都用高性能的DSP來實現。在Blackfin上目前有多種智能處理模塊,如魚眼矯正、運動物體檢測及基于運動檢測的上層算法如遺留物檢測、入侵檢測、槍聲檢測和定位等等。根據智能模塊的輸出結果,系統控制和編碼部分都可以做相應的智能處理,如勾勒運動物體邊框,調高編碼器分辨率,根據音源位置調整攝像頭方向,等等。這些模塊一般都有比較標準的輸入輸出接口,便于二次開發中的系統集成。

linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

上一頁 1 2 下一頁

關鍵詞: 嵌入式 處理器 DSP ADI

評論


相關推薦

技術專區

關閉