基于DSP+FPGA的實(shí)時(shí)視頻采集系統(tǒng)設(shè)計(jì)
摘要: 本系統(tǒng)的設(shè)計(jì)思路是通過模擬的視頻攝像頭來獲取視頻信號(hào),,然后采用模數(shù)轉(zhuǎn)換芯片SAA71 11A將模擬的PAL制式視頻信號(hào)轉(zhuǎn)換為YUV4:2:2的數(shù)字視頻信號(hào)。設(shè)計(jì)使用FPGA芯片EP1C6Q240C8作為協(xié)處理器,來完成視頻信號(hào)的緩存和視頻幀的合成,,通過雙RAM的乒乓結(jié)構(gòu)來實(shí)現(xiàn)視頻幀的完整性,并在完成視頻數(shù)據(jù)的預(yù)處理后,將視頻數(shù)據(jù)傳入到DSP中,完成特定的視頻處理算法(如壓縮等),,最后對處理完的視頻數(shù)據(jù)進(jìn)行傳輸和存儲(chǔ)。同時(shí),,主處理器DSP還負(fù)責(zé)對視頻采集芯片進(jìn)行初始化配置,。其系統(tǒng)硬件結(jié)構(gòu)如圖2所示。
Abstract:
Key words :
圖像是自然生物或人造物理的觀測系統(tǒng)對世界的記錄,,是以物理為載體,,以介質(zhì)來記錄信息的一種形式。圖像信息是人類認(rèn)識(shí)世界的重要知識(shí)來源,。據(jù)學(xué)者統(tǒng)計(jì),,人類所得的信息有80%以上是來自眼睛攝取的圖像。而事實(shí)上,,這種靜態(tài)的圖像已無法滿足人們對視頻信息的要求,。隨著人們對視頻數(shù)據(jù)的要求越來越高,高清晰,、實(shí)時(shí)性視頻數(shù)據(jù)量越來越大,,視頻的實(shí)時(shí)處理難度也在逐漸增大。本文給出了一款基于DSP+title="FPGA" target="_blank">FPGA的嵌入式實(shí)時(shí)title="視頻采集">視頻采集系統(tǒng)的設(shè)計(jì)方法,,該系統(tǒng)可以廣泛應(yīng)用于關(guān)系公共安全的場所,,如銀行、機(jī)場,、車站,、商場等,。
1 實(shí)時(shí)視頻采集系統(tǒng)結(jié)構(gòu)
常見的視頻采集系統(tǒng)主要有兩種:一種是基于單處理器(單片機(jī)、ARM等)的視頻采集卡,,特點(diǎn)是結(jié)構(gòu)簡單,,易于實(shí)現(xiàn),,缺點(diǎn)是無法實(shí)時(shí)地對視頻數(shù)據(jù)完成處理,,需要使用外部處理器來完成特定的視頻處理算法,因而成本高,,升級維護(hù)難度大,;另一種是基于主從處理器(ARM+DSP,F(xiàn)PGA+DSP等)的嵌入式視頻采集卡,,特點(diǎn)是系統(tǒng)高度集成,,易于維護(hù)升級,可以滿足視頻采集的需求,,同時(shí)可以完成特定的視頻算法,,成本較低。因此,,本文給出了一種基于DSP+FPGA的嵌入式視頻采集系統(tǒng)設(shè)計(jì)方案,。其系統(tǒng)結(jié)構(gòu)框圖如圖1所示。

2 系統(tǒng)硬件設(shè)計(jì)
本系統(tǒng)的設(shè)計(jì)思路是通過模擬的視頻攝像頭來獲取視頻信號(hào),,然后采用模數(shù)轉(zhuǎn)換芯片SAA71 11A將模擬的PAL制式視頻信號(hào)轉(zhuǎn)換為YUV4:2:2的數(shù)字視頻信號(hào),。設(shè)計(jì)使用FPGA芯片EP1C6Q240C8作為協(xié)處理器,來完成視頻信號(hào)的緩存和視頻幀的合成,,通過雙RAM的乒乓結(jié)構(gòu)來實(shí)現(xiàn)視頻幀的完整性,,并在完成視頻數(shù)據(jù)的預(yù)處理后,將視頻數(shù)據(jù)傳入到DSP中,,完成特定的視頻處理算法(如壓縮等),,最后對處理完的視頻數(shù)據(jù)進(jìn)行傳輸和存儲(chǔ)。同時(shí),,主處理器DSP還負(fù)責(zé)對視頻采集芯片進(jìn)行初始化配置,。其系統(tǒng)硬件結(jié)構(gòu)如圖2所示。

2.1 視頻采集模塊
設(shè)計(jì)一個(gè)視頻采集系統(tǒng)的重要環(huán)節(jié),,通常是將外部的光信號(hào)轉(zhuǎn)換成電信號(hào),,然后通過專用的視頻轉(zhuǎn)換芯片,來將模擬的視頻信號(hào)轉(zhuǎn)換為數(shù)字視頻信號(hào),。本設(shè)計(jì)采用的是模擬CMOS攝像頭和Philips公司的高性能視頻模數(shù)轉(zhuǎn)換集成電路芯片SAA71 11A,。
SAA7111A是Philips公司的一款高性能視頻輸入處理芯片。它共有四路模擬視頻信號(hào)輸入端,,可以輸入4路CVBS或2路S視頻(Y/C)信號(hào),,也可以編程選擇四路視頻輸入中的一路或者兩路組成不同的工作模式;可實(shí)現(xiàn)行同步、場同步信號(hào)的自動(dòng)監(jiān)測,、分離,,或場頻50 Hz或60 Hz自動(dòng)檢測,并可在PAL制和INTSC制之間自動(dòng)切換,,同時(shí)能對不同輸入制式的亮度信號(hào),、色差信號(hào)進(jìn)行處理,實(shí)現(xiàn)亮度,、色度和飽和度的片內(nèi)實(shí)時(shí)控制,;SAA7111A中的I2C總線接口可以對片內(nèi)寄存器進(jìn)行設(shè)置。它有32個(gè)控制寄存器,,其中的22個(gè)可編程,;該器件的輸出為16位V.PO總線,輸出格式有12位YUV4:1:1,、16位YUV4:2:2,、8位CCIR-656、16位565RGB和24位的888RGB,;輸出信號(hào)可提供采樣時(shí)鐘,、行同步、場同步等多種同步信號(hào),。
SAA7111A可將PAL制式的模擬視信號(hào)頻轉(zhuǎn)化為YUV4:2:2的16位數(shù)字視頻數(shù)據(jù),,大小為625×720×16 bit,其中25行用作場回掃,,因此,,每幀的有效數(shù)據(jù)有576×720×16 bit。
2.2 視頻前端處理模塊
數(shù)字化后的視頻數(shù)據(jù)量一般都十分巨大,。為了保證視頻數(shù)據(jù)的完整性和實(shí)時(shí)性,,系統(tǒng)專門設(shè)計(jì)了視頻的前端處理模塊。其主要功能是完成視頻數(shù)據(jù)的緩存,,視頻幀的合成,,乒乓操作以及與DSP的通信。由于FPGA內(nèi)部能反復(fù)編程,,可以使系統(tǒng)簡化,,減小板卡面積,易于維護(hù),,升級方便,,因此,本文采用了ALTERA的EP1C6Q240C8來完成視頻前端處理功能,。
由于該視頻轉(zhuǎn)換芯片沒有提供地址信號(hào),,所以需要在FPGA內(nèi)部設(shè)計(jì)一個(gè)地址產(chǎn)生器,,以使數(shù)據(jù)可以對應(yīng)的存儲(chǔ)起來。SAA7111A提供有4個(gè)重要信號(hào):LLC(參考時(shí)鐘信號(hào)),、HREF(水平參考信號(hào)),、VREF(垂直參考信號(hào))、RTSO(奇偶場信號(hào)),。
由于PAL制式具有隔行掃描特性,,因此,采集的視頻數(shù)據(jù)可被分為奇偶場,。因?yàn)橐曨l圖像處理是針對完整的視頻幀,,所以需要將奇偶場的視頻數(shù)據(jù)進(jìn)行合成,。其實(shí)現(xiàn)方法是奇偶兩部分合成一幀數(shù)據(jù),,即:偶場地址=基地址O+偏移地址;奇場地址=基地址E+偏移地址,。幀合成操作示意圖如圖3所示,。

為了保證視頻采集系統(tǒng)的實(shí)時(shí)性,該系統(tǒng)使用雙RAM的乒乓機(jī)構(gòu),。乒乓操作在FPGA時(shí)序設(shè)計(jì)中的使用十分廣泛,,是一種典型的以面積換速度的設(shè)計(jì)思想。這種結(jié)構(gòu)是將輸入數(shù)據(jù)流通過輸入數(shù)據(jù)選擇單元等時(shí)地將數(shù)據(jù)流分配到兩個(gè)數(shù)據(jù)緩沖區(qū),。在第1個(gè)緩沖周期,,將輸入的數(shù)據(jù)流緩存到數(shù)據(jù)緩沖模塊1上;在第2個(gè)緩沖周期,,則通過輸入數(shù)據(jù)選擇單元的切換來將輸入的數(shù)據(jù)流緩存到數(shù)據(jù)緩沖模塊2,,同時(shí)將數(shù)據(jù)緩沖模塊1緩存的第1個(gè)周期的數(shù)據(jù)通過輸出數(shù)據(jù)選擇單元的選擇后,送到運(yùn)算處理單元進(jìn)行處理,;此后在第3個(gè)緩沖周期,,再次切換數(shù)據(jù)的輸入與輸出緩沖模塊。如此循環(huán),,周而復(fù)始,。其具體狀態(tài)機(jī)如圖4所示。

系統(tǒng)中的通信模塊主要是在DSP處理完數(shù)據(jù)后給FPGA發(fā)送一個(gè)信號(hào),,以通知DSP處于空閑狀態(tài),,當(dāng)FPGA內(nèi)部模塊收到后,再將數(shù)據(jù)傳輸?shù)紻SP上,。
2.3 視頻后端處理模塊
本系統(tǒng)采用的是,,TI公司的高性能、低功耗定點(diǎn)DSP芯片TMS320VC5509A,,它內(nèi)部的主時(shí)鐘工作頻率最高可達(dá)200 MHz,,處理速度最高400MIPS,;該DSP的片上RAM較大,包括32 K×16位DARAM和96 K×16位SARAM,,共128 K×16位的片上存儲(chǔ)空間,;其片上外設(shè)豐富,包括實(shí)時(shí)時(shí)鐘RTC,、10位ADC,、MCBSP接口、USB高速接口(速率為12Mb/s),,還有MMC/SD(多媒體卡)接口,、I2H接口等;該DSP處理器為低電壓供電,,采用1.6 V的內(nèi)核電壓,。3.3 V的I/O電壓,功耗低達(dá)0.2 mW/MIPS,。
DSP作為視頻采集系統(tǒng)的主處理器,,主要完成各類接口和外設(shè)的配置以及視頻的實(shí)時(shí)處理。包括時(shí)鐘發(fā)生器(PLL),、I2C總線接口,、EMIF模塊、USB接口等,。
各類接口只有協(xié)調(diào)工作,,才可保證系統(tǒng)的正常運(yùn)行。其中時(shí)鐘發(fā)生器負(fù)責(zé)將外部24 MHz的晶振時(shí)鐘倍頻為200 MHz的系統(tǒng)工作時(shí)鐘:I2C總線負(fù)責(zé)對視頻采集芯片SAA711 1A進(jìn)行初始化配置:USB接口負(fù)責(zé)與上位機(jī)通信,,以實(shí)現(xiàn)數(shù)據(jù)的傳輸,。
考慮到視頻數(shù)據(jù)的龐大和DSP片上ROM的局限性,本系統(tǒng)在DSP外部擴(kuò)展了一塊4 M×16 bit的SDRAM和一塊256 K×16 bit的FLASH,。其中SDRAM映射在DSP的CE2,、CE3空間,F(xiàn)LASH映射在CE1空間,。由于外設(shè)接口配置一般都較為復(fù)雜,,因此使用了TI公司的片上支持庫函數(shù)(CSL),以簡化用戶接口的配置,。
視頻數(shù)據(jù)中一般都會(huì)存在很多冗余信息(時(shí)間冗余度,、空間冗余度等),因此具有壓縮的必要性,。視頻編碼的主要目的就是在保證重構(gòu)質(zhì)量的前提下,,以盡量少的比特?cái)?shù)來表征視頻信息,盡量去除視頻圖像數(shù)據(jù)本身具有的多種冗余特性,,如空間冗余,、時(shí)間冗余,、心理視覺冗余和熵編碼冗余等。常見的壓縮標(biāo)準(zhǔn)有JPEG,、MPEG-1,、MPEG-2、H.261以及H.263等,。這些算法一般都較為復(fù)雜,,處理的數(shù)據(jù)量也十分巨大。而采用哈佛總線和流水線操作等內(nèi)部結(jié)構(gòu)DSP在視頻處理算法的實(shí)現(xiàn)上具有巨大優(yōu)勢,。視頻算法的編程和調(diào)試可在CCS(code composer studio)2.0環(huán)境下完成,,可使用C語言實(shí)現(xiàn),這樣有利于跨平臺(tái)的移植,、優(yōu)化和升級,。
3 結(jié)束語
本文所設(shè)計(jì)的基于DSP+FPGA的實(shí)時(shí)視頻采集系統(tǒng),采用雙RAM的乒乓結(jié)構(gòu)來實(shí)現(xiàn)對視頻的實(shí)時(shí)采集,,利用DSP主處理器來實(shí)現(xiàn)JPEG壓縮算法,,同時(shí)使用在線編程技術(shù)并利用JTAG對系統(tǒng)進(jìn)行在線調(diào)試。因此,,該系統(tǒng)具有體積小、成本低,、功耗低,、速度快、適應(yīng)性強(qiáng),、便于維護(hù)等特點(diǎn),,因此,在圖像的實(shí)時(shí)處理方面具有良好的應(yīng)用前景,。
此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。