《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 設(shè)計應(yīng)用 > 構(gòu)建基于FPGA的低成本IP監(jiān)視攝像機
構(gòu)建基于FPGA的低成本IP監(jiān)視攝像機
摘要: 目前的視頻監(jiān)視市場在發(fā)展過程中遇到了很多要解決的難題,包括從模擬到數(shù)字攝像機的過渡、轉(zhuǎn)換到高清(HD) 視頻、應(yīng)用寬動態(tài)范圍(WDR) 傳感器,以及實現(xiàn)進行數(shù)據(jù)傳輸和控制的互聯(lián)網(wǎng)協(xié)議(IP) 鏈接等。針對這些問題,本文介紹了如何采用FPGA構(gòu)建IP 監(jiān)視攝像機的參考設(shè)計,展示了怎樣采用低成本Altera Cyclone III FPGA 構(gòu)建完整的系統(tǒng)。
Abstract:
Key words :

 

  目前的視頻監(jiān)視市場在發(fā)展過程中遇到了很多要解決的難題,包括從模擬到數(shù)字攝像機的過渡、轉(zhuǎn)換到高清(HD) 視頻、應(yīng)用寬動態(tài)范圍(WDR) 傳感器,以及實現(xiàn)進行數(shù)據(jù)傳輸和控制的互聯(lián)網(wǎng)協(xié)議(IP) 鏈接等。針對這些問題,本文介紹了如何采用FPGA構(gòu)建IP 監(jiān)視攝像機的參考設(shè)計,展示了怎樣采用低成本Altera  Cyclone   III FPGA 構(gòu)建完整的系統(tǒng)。

  引    言

  在視頻監(jiān)視市場領(lǐng)域,對更高質(zhì)量視頻、高分辨率以及靈活性和功能的需求促進了從模擬到數(shù)字攝像機的過渡。在定義上,高清(HD) 視頻必須是數(shù)字的,因此,采用HD標準也就意味著過渡到數(shù)字傳感器。HD 視頻標準支持更高的幀速率和分辨率,需要H.264 等新壓縮方法,促使攝像機具有更強的處理能力。

  在各種照明條件( 強光和暗光、強對比度) 下都要求能夠提取出所有圖像內(nèi)容,因此,數(shù)字攝像機采用了新一類WDR 傳感器,攝像機也要求在數(shù)字域中實現(xiàn)動態(tài)范圍壓縮。攝像機中數(shù)字數(shù)據(jù)通路的另一優(yōu)點是可以在攝像機內(nèi)部進行“分析”處理。

  IP 監(jiān)視攝像機參考設(shè)計

        圖1 所示為IP 監(jiān)視攝像機參考設(shè)計的頂層結(jié)構(gòu)圖和硬件,它主要面向新一代HD (>1MP) WDR 傳感器。IP 監(jiān)視攝像機參考設(shè)計結(jié)合了Altera 以及多家合作伙伴的硬件和軟件知識產(chǎn)權(quán)。圖1.IP 監(jiān)視攝像機參考設(shè)計結(jié)構(gòu)圖

  圖2 顯示了參考設(shè)計的硬件平臺,基于Cyclone III EP3C120 開發(fā)板。Aptina WDR 傳感器像素數(shù)據(jù)被送入Apical 的圖像傳感器流水線(ISP)。輸出數(shù)據(jù)是YUV4:2:0 格式,寫入到外部DDR2 SDRAM 的幀緩沖中,它使用了Altera 視頻和圖像處理(VIP) 套裝提供的組件。然后,使用EyeLytics 提供的內(nèi)核,以H.264 格式對視頻數(shù)據(jù)進行編碼,支持( 在這一應(yīng)用中)3 級基線/ 主要類視頻流,通過以太網(wǎng)在遠程主機上觀看。散射收集直接存儲器訪問(SGDMA) 控制器支持Altera 三速以太網(wǎng)(TSE) MegaCore ?功能,將編碼后的視頻流通過以太網(wǎng)傳送到遠程客戶端。圖2.IP 監(jiān)視攝像機參考設(shè)計硬件

  寬動態(tài)范圍傳感器

      Aptina MT9M033 是0.33" 720p60 WDR CMOS 傳感器,主要用于監(jiān)視攝像機市場。傳感器和鏡頭組合安裝在“頂板”上,通過I/O 轉(zhuǎn)換板將其連接至Cyclone III EP3C120開發(fā)板。圖像傳感器流水線CMOS WDR 傳感器沒有片內(nèi)圖像流水線處理功能,以RAW/Bayer 格式輸出圖像數(shù)據(jù),每像素為20 比特??梢圆捎孟率絹碛嬎銈鞲衅鬏敵龅拇罅吭紨?shù)據(jù):20 比特/ 像素 x (1280 x 720) 像素/ 幀x 60 幀/s = >1 Gbit/s由于數(shù)據(jù)量過大,因此,很難將新一代WDR 傳感器連接至監(jiān)視解決方案中經(jīng)常使用的ASSP。因此,F(xiàn)PGA 是高效處理數(shù)據(jù)的理想選擇。Apical 的ISP ( 圖3) 包括以下功能:

   ■ 去除熱點像素,抑制噪聲( 提供空間和時域IP 內(nèi)核)。

   ■ 使用Apical 獲獎的專利Iridix IP 內(nèi)核實現(xiàn)單位像素高級色調(diào)映射功能

   ■ 高級去馬賽克和顏色校正

  與圖4 頂部未處理的圖像相比,圖4 底部顯示了Iridix 內(nèi)核怎樣從強對比度場景中盡可能多的提取出細節(jié)內(nèi)容。特別是,較暗的區(qū)域并沒有受到較亮區(qū)域過渡感光的影響。圖4.Apical ISP 強對比度場景效應(yīng)

  ISP 輸出可以作為參考設(shè)計的一個選項,通過Bitec DVI 輸出電路板連接至CycloneEP3C120 開發(fā)板的第二個HSMC 連接器( 顯示在圖2 的左側(cè)硬件中)。

  視頻和圖像處理套裝

  Altera  VIP 套裝匯集了MegaCore 功能,設(shè)計人員可以利用它方便的開發(fā)定制視頻和圖像處理設(shè)計。VIP 套裝含有MegaCore 功能,從顏色空間轉(zhuǎn)換等簡單的構(gòu)建模塊功能到可編程多相縮放等復(fù)雜的視頻縮放功能。這些功能適合用在多種圖像處理和顯示應(yīng)用中,例如視頻監(jiān)視、廣播、視頻會議、醫(yī)療和軍事成像等。

  在IP 監(jiān)視攝像機參考設(shè)計中,采用了多種VIP 內(nèi)核進行顏色空間轉(zhuǎn)換,采用色度重新采樣功能將ISP 的RGB 編碼視頻轉(zhuǎn)換為H.264 編碼器要求的YUV 4:2:0 編碼輸入。如圖5 所示,內(nèi)核連接至應(yīng)用了Avalon-ST 視頻協(xié)議的Avalon ?流(Avalon-ST) 接口。使用Avalon 存儲器映射(Avalon-MM) 接口,Y 和C 視頻分量被寫入外部DDR2 存儲器的幀緩沖。

  在H.264 編碼之前,跳過視頻間隔幀,在幀緩沖寫入器中,720p60 傳感器幀速率被轉(zhuǎn)換為720p30,而不是將其寫入幀緩沖中。

  視頻壓縮

      該設(shè)計中使用的H.264 編碼器( 圖6) 是EyeLytics 公司提供的IP 內(nèi)核,它針對監(jiān)視應(yīng)用進行了優(yōu)化。這一內(nèi)核具有很多監(jiān)視功能,包括多通道支持、恒定質(zhì)量速率控制、幀內(nèi)/ 幀間模式、QPEL、前后關(guān)系自適應(yīng)二進制算法編碼(CABAC)/ 前后關(guān)系自適應(yīng)長度可變編碼(CAVLC),并且使用了較少的邏輯門。內(nèi)核同時支持主要類和基線類。

  三速以太網(wǎng)MAC

  Altera TSE MegaCore 功能結(jié)合了10-/100-/1000-Mbps 以太網(wǎng)介質(zhì)訪問控制器(MAC)和1000BASE-X 物理編碼子層(PCS),以及可選物理介質(zhì)附加子層(PMA)。Cyclone IIIEP3C120 開發(fā)板包括10/100/1000 base-T 和自動協(xié)商以太網(wǎng)PHY,其簡化千兆位介質(zhì)無關(guān)接口(RGMII) 連接至TSE 功能。

  Avalon 總線架構(gòu)和DDR2 幀緩沖存儲器采用了一塊具有150 MHz 32 位數(shù)據(jù)總線的外部DDR2 SDRAM,由Altera DDR 和DDR2SDRAM 高性能II 控制器MegaCore 功能對其進行控制,它用于應(yīng)用程序代碼和數(shù)據(jù)存儲、輸入和輸出幀緩沖以及H.264 編碼器的中間幀緩沖。為達到時序和性能目標,Avalon-MM 總線架構(gòu)是75 MHz 128 位寬。Avalon 仲裁共享功能應(yīng)用于連接DDR2 存儲器控制器的每一Avalon-MM 總線主機,以保證不中斷的高效訪問H.264 編碼器的突發(fā)數(shù)據(jù)。 整個系統(tǒng)采用了時鐘交叉橋接、定時器和并行I/O 等多種標準Avalon 組件。為簡單起見,圖6 并沒有顯示這些組件。

  工具流

  使用Altera SOPC Builder 工具,以完整的芯片系統(tǒng)(SOC) 來實現(xiàn)IP 監(jiān)視攝像機參考設(shè)計。使用SOPC Builder,設(shè)計人員在GUI 中設(shè)定系統(tǒng)組件,由SOPC Builder 自動產(chǎn)生互聯(lián)邏輯。SOPC Builder 產(chǎn)生定義系統(tǒng)中所有組件的HDL 文件,然后,頂層HDL 文件將所有組件連接起來。在Verilog HDL 中生成IP 監(jiān)視攝像機參考設(shè)計,而SOPCBuilder 能夠同時生成Verilog HDL 和VHDL。

  ISP 和H.264 編碼器可以是具有Avalon-MM 接口的SOPC Builder 組件,易于集成到Altera 具有標準外設(shè)的系統(tǒng)中,以及第三方IP 和設(shè)計人員自己的組件構(gòu)成的系統(tǒng)中。SOPC Builder 含在Altera Quartus ? II 開發(fā)軟件中,提供了全面的多平臺設(shè)計環(huán)境,很容易滿足特殊的設(shè)計需求。Quartus II 軟件為FPGA 和CPLD 設(shè)計的所有階段提供解決方案:

   ■ 設(shè)計輸入

   ■ 綜合

   ■ 布局布線

   ■ 時序分析

   ■ 仿真

   ■ 編程和配置

  使用Altera Nios ? II 嵌入式設(shè)計套裝進行軟件開發(fā)?;赟OPC Builder 設(shè)計中的組件,生成電路板支持包(BSP),包括所有必須的器件驅(qū)動程序等。

  軟件應(yīng)用

  采用Nios II 嵌入式處理器來設(shè)置不同模塊中的各種寄存器,同時運行RTP 堆棧,傳送壓縮視頻。采用以太網(wǎng)MAC 模塊來控制ISP,嵌入式處理器運行Micrium 的uC/OSII實時內(nèi)核、InterNiche 技術(shù)公司的NicheStack 和RTP 堆棧,以及Altera 參考設(shè)計的視頻流應(yīng)用程序和網(wǎng)絡(luò)服務(wù)器應(yīng)用程序。處理器還處理ISP 的自動曝光和自動白平衡控制功能。

  視頻流應(yīng)用程序響應(yīng)H.264 編碼器的中斷,重新裝入各種緩沖指針。重新裝入功能使其能夠準備要編碼的下一視頻幀,將剛剛編碼后的幀通過以太網(wǎng)傳送至RTP 堆棧,以便繼續(xù)傳輸。通過網(wǎng)絡(luò)服務(wù)器應(yīng)用程序,支持ISP 進行簡單的控制,使傳感器在正常和WDR 模式之間切換,使能和禁止Iridix。這種控制功能具有實時顯示ISP 的優(yōu)勢。網(wǎng)絡(luò)服務(wù)器應(yīng)用程序還支持對編碼器進行配置,包括比特率和質(zhì)量等,在CABAC 和CAVLC 之間進行選擇。

  主機軟件

     運行VLC 媒體播放器( 或者類似的) 的主機PC 用于查看IP 監(jiān)視攝像機參考設(shè)計的流視頻輸出。如圖7 所示,主機和EP3C120 開發(fā)套件之間需要的唯一鏈接是以太網(wǎng)電纜。

  性  能

  IP 監(jiān)視攝像機參考設(shè)計的性能指標包括速度、延時、功耗和資源利用率。

  速 度
 
  在Cyclone III EP3C120I7 開發(fā)板上實現(xiàn)參考設(shè)計時,DDR 時鐘頻率為150 MHz,足以使用H.264 基線類或者主要類來壓縮720p30 視頻幀。Avalon-MM 總線架構(gòu)運行在75MHz,H.264 編碼器內(nèi)核運行在150 MHz。DDR2 存儲器控制器、Avalon-MM 總線架構(gòu)以及H.264 內(nèi)核通過同步半速率橋接進行連接,以減小時鐘域之間的延時。Nios II 處理器和TSE 的時鐘為125 MHz。采用了Nios II/F( 快速) 版的Nios II 處理器,具有8-Kbyte 指令高速緩存、8-Kbyte 數(shù)據(jù)高速緩存,并且支持浮點。

    延  時

  從傳感器輸入到ISP,直至H.264 編碼器輸出的延時小于兩幀,它主要來自圖像數(shù)據(jù)的雙緩沖。在對以前的幀進行編碼時總是將新輸入幀寫入存儲器。

    功   耗

  參考設(shè)計總功耗包括所有的輔助模塊和I/O 的功耗,達到2.7 W。表1 顯示了參考設(shè)計中使用的每一主要模塊的功耗。其余的700mW 來自Avalon 總線架構(gòu)、顏色空間轉(zhuǎn)換和參考設(shè)計的I/O 附件。

  資源利用率:在Cyclone EP3C120 中實現(xiàn)整個參考設(shè)計時,其資源利用率為:

  ■ 107K 邏輯單元(LE) (90% 器件利用率)■ 410 M9K 嵌入式存儲器(95% 器件利用率)■ 140 個嵌入式乘法器9 位單元(24% 器件利用率)

  表2 列出了某些模塊的資源利用率。

  表3 列出了使用的I/O。

  靈活性

  基于FPGA 的體系結(jié)構(gòu)非常靈活,可以進行定制,完全能夠在大家都了解的標準硬件平臺上實現(xiàn)。通過這種靈活性,可以增強和修改系統(tǒng)體系結(jié)構(gòu),以適應(yīng)不同的系統(tǒng)需求。由于采用了標準HDL 來實現(xiàn)設(shè)計,因此,很容易提高攝像機分辨率,增加定制視頻處理功能或者視頻分析引擎。而且,還可以通過以太網(wǎng)進行遠程更新。例如,把新的FPGA 編程文件發(fā)送至Nios II 嵌入式處理器,然后將文件寫入閃存,從而重新配置系統(tǒng)或者改變傳感器和ISP 設(shè)置。在單片F(xiàn)PGA 中集成整個IP 監(jiān)視攝像機參考設(shè)計減少了芯片數(shù)量,節(jié)省了PCB 空間。不需要與外部器件進行通信,從而減少了I/O 鏈接,降低了動態(tài)功耗,解決了散熱問題。針對個性化需求,使用不同的FPGA 圖像( 例如,分辨率、幀速率和壓縮選項),在一個系統(tǒng)設(shè)計中便能夠支持多種個性化攝像機。通過縱向移植,可以在同一封裝中使用不同邏輯密度的器件。而且,設(shè)計可以在任意FPGA 上實現(xiàn),采用開放設(shè)計方案使設(shè)計人員能夠針對最新的FPGA 進行設(shè)計,有了更新的FPGA 系列后,可以進一步提高性能,降低成本和功耗

   結(jié)  論

  Altera 的Cyclone III 和Cyclone IV 系列低成本FPGA 解決了目前最新IP 監(jiān)視系統(tǒng)設(shè)計人員所面臨的難題。通過IP 監(jiān)視攝像機參考設(shè)計,Altera 及其合作伙伴提供了從圖像采集到IP 包封的全面解決方案,使用集成在Altera SOPC Builder 工具中的系列MegaCore 功能來提供靈活的解決方案,促使產(chǎn)品及時面市。


 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。