基于DSP+FPGA多視頻通道的切換控制
圖3 軟件控制流程
2.1 FPGA模塊功舵買(mǎi)現
FPGA控制部分用于對視頻信號進(jìn)行預處理并且等待DSP發(fā)送切換命令。其基本思路為:當某一路視頻信號經(jīng)過(guò)AD9203之后,輸出的視頻量化信號被送進(jìn)FPGA做預處理,然后被送入DSP進(jìn)行算法處理,同時(shí)FPGA等待DSP根據場(chǎng)信號發(fā)送的視頻通道切換命令。
在實(shí)驗過(guò)程中發(fā)現,DSP對圖像的搜索是以行信號的上升沿(或者下降沿)為觸發(fā)的,因此需要行信號有一個(gè)穩定的上升沿(或者下降沿)。由于信號在分離傳輸的過(guò)程中可能會(huì )產(chǎn)生抖動(dòng),導致信號的上升沿(或者下降沿)不穩定,從而影響DSP對視頻信號的判斷。若仍然以這個(gè)不穩定的行信號(VIDEO_Hs)作為DSP搜索圖像的標志,則其接收的圖像將會(huì )在相鄰兩行出現錯位的現象,用肉眼看到的圖像漂移現象。圖4中(a)圖像是以VIDEO_Hs信號為標志接收的圖像。這就需要FPGA對行(VIDEO_Hs)信號做去抖動(dòng)處理,但是FPGA接收到的信號只有EL4583分離出來(lái)的行信號,無(wú)法分辨信號上升沿(或者下降沿)的具體位置。因此FPGA根據需要產(chǎn)生1個(gè)行標志信號(H_flag),來(lái)取代不穩定的行信號(VIDEO_Hs),然后將行標志信號(H_flag)和場(chǎng)信號(VIDEO_Vs)送給DSP,以便對視頻信號做出準確判斷。圖4中(b)圖像是以H_flag信號為標志接收的圖像。
圖4 以不同標志接收圖像的比較
2.2 PPI口的設置
FPGA和DSP之間的數據通信是通過(guò)PPI口實(shí)現的。PPI(并行外部接口)是半雙工形式,具有雙向端口,最大可進(jìn)行16位數據的輸入輸出。 PPI有5個(gè)存儲器來(lái)控制其操作。其中PPI控制寄存器(PPI_CONTROL)設置了PPI口的操作模式、控制信號極性以及端口的帶寬。在本設計中,設置PPI_CONTROL為0x00EC,將PPI的工作模式設置為ITU_656模式,端口的寬度設置為8位,并且僅僅為接收數據的模式。由于每個(gè)在DMA總線(xiàn)上的PPI_CLK_initiated事件(即輸入或輸出操作)都處理16為實(shí)體,也就是說(shuō)如果傳輸的數據不是16位,則把數據的高位補0湊成16為數據。這種情況下,更有效的辦法是把數據打包,即把2個(gè)FPGA傳輸的8位數據合成1個(gè)16位的數據,再進(jìn)行傳輸,這樣有效地利用了資源,提高了傳輸效率。
2.3 DSP控制功能實(shí)現
DSP控制功能的實(shí)現過(guò)程,首先設置DSP的PF此腳,以便判斷PF引腳上的中斷信號。定義FPGA與DSP的中斷信號的通信是通過(guò)PF6和PF7傳送的,然后對DMA(直接存儲器訪(fǎng)問(wèn))進(jìn)行設置,在對視頻信號進(jìn)行處理時(shí),分別處理奇偶場(chǎng)信號,也就是在某一時(shí)刻只處理信號的奇數場(chǎng)或者偶數場(chǎng),以便提高信號的處理速度。這就需要把視頻信號的奇偶場(chǎng)分別存儲,在設置DMA時(shí),將奇偶場(chǎng)信號數據存儲在不同的地址下面。
當DSP通過(guò)PF引腳接收到FPGA發(fā)送的信號時(shí)開(kāi)始實(shí)現其控制功能,具體控制切換的過(guò)程為:DSP在接收到PPI口傳輸的第一個(gè)VIDEO_Vs信號時(shí),通過(guò)場(chǎng)計數器(VsCount)開(kāi)始對視頻信號進(jìn)行計數,然后讀取VsCount的數值,當VsCount的計數達到切換要求時(shí),DSP將發(fā)送一個(gè)切換命令給FPGA,即在某一地址下面寫(xiě)一個(gè)數值,讓FPGA通過(guò)DSP_A和DSP_D讀取命令完成視頻通道的切換。由于在視頻通道切換的前后,兩個(gè)通道的場(chǎng)信號可能會(huì )出現不同步的現象,所以在通道切換后的第2場(chǎng)開(kāi)始搜索圖像,圖5分別是DSP從第1場(chǎng)和第2場(chǎng)開(kāi)始接收圖像的結果。
圖5從不同場(chǎng)開(kāi)始接收圖像的比較
3 系統測試結果
實(shí)驗對24路視頻信號進(jìn)行切換,并且設定每一路視頻信號的切換時(shí)間為6場(chǎng),也就是每經(jīng)過(guò)6場(chǎng)信號的時(shí)間就對視頻通道進(jìn)行一次切換。不同視頻通道之間切換時(shí)的穩定時(shí)間也不會(huì )超過(guò)一場(chǎng),也就是說(shuō),兩通道之間在切換之后在一場(chǎng)之內就可以穩定。實(shí)驗結果表明,該系統能夠穩定、可靠地實(shí)現多視頻通道之間的切換,可以在一套監控設備上添加多個(gè)攝像頭對不同的場(chǎng)景進(jìn)行實(shí)時(shí)監控,這樣不僅有效解決了傳統監控系統監視目標單一的缺點(diǎn),而且提高了監控效率,降低了監控成本。
4 結束語(yǔ)
首先簡(jiǎn)單介紹了整個(gè)系統硬件架構和芯片的性能,描述了整個(gè)系統的工作流程,然后著(zhù)重闡述了DSP和FPGA對多視頻通道的控制與選通。FPGA整個(gè)設計程序是在QuartusⅡ平臺上用Verilog硬件描述語(yǔ)言編寫(xiě),DSP程序在VisualDSP++編譯成功,二者都經(jīng)過(guò)多次調試驗證。該系統設計已成功應用于多場(chǎng)景監控告警系統中,準確、可靠地切換不同視頻通道。
評論