視頻采集系統在工業領域應用廣泛,隨著多媒體技術的快速發展,對視頻采集、處理和傳輸性能的要求也不斷提高,如高采集速度、低功耗、抗干擾性、實時性及擴展性等。這里提出了以Virtex-5為核心,由ADV7188為視頻解碼器,PCIExpress為傳輸總線組成的集視頻采集、壓縮、傳輸于一體的多功能視頻處理系統。該系統能夠實現實時海量傳輸多路數字視頻。Virtex-6支持的PCI Express的×1通道的傳輸率已達3.2Gb/s。
由于該系統設計體積小、功耗低且滿足工況要求,可應用于公共場合、工廠和井下作業等需多點遠距離監控環境較惡劣場所。
1 PCI Express總線簡介
PCI Express是一種主流的串行標準,它是2002年問世的第三代I/O互聯技術,為從PCI到PCIX提供了一條升級路徑。PCI Express是PC產業的標準互聯技術,具有可升級能力,可擴展的功能集,很強的市場適應能力和低成本等特性。其高速串行標準能以每條通道2.5 Gb/s的線速進行雙向通信,分層數據包的架構有助于模塊化設計。通過更簡單的升級就能實現帶寬增強(高達80 GB)——1、2、4、8、16和32條通道。PCI Express的先進功能,比如可靠性、電源管理和熱插拔,借助虛擬通道、業務等級和服務質量(QoS)等特性支持下一代三維/多媒體業務。
2 系統硬件設計
該系統設計采用視頻解碼器+FPGA,其功能是接收PAL等制式模擬視頻信號,轉換為滿足ITU-R BU.656格式的數字信號,將多路視頻打包,經PCI Express總線傳輸到計算機。
這里采用ADV7188來采集PAL制式的視頻信號,Videx-5的I2C總線控制器通過I2C總線來對其進行配置和控制。選用Virtex-5系列中的XC5-VFX30T,此器件具有強大的處理能力和豐富的外部設備接口,能滿足各種不同應用環境的控制與圖像輸出需要。Virtex-5器件具有視頻處理IP核,可以按照使用要求配置,同時具有PCI Express、PPC440等IP核,PPC440在667MHz的時鐘主頻下,數字處理能力可達到1600DMI/s,內部具有256 KB的SRAM。Virtex-5具有2條I2C接口,多達8條(32 bit)具有主控器的外設總線接口,支持外部、內部和內存間的DMA方式,2條10/100/100 Mb/s半或全雙工以太網接口,圖1為該系統設計硬件原理框圖。
3 主要組成部分的原理實現
3.1 視頻采集處理電路
3.1.1 視頻解碼器選型
在選擇視頻解碼器時,主要考慮功能、性能、尺寸、性價比及低功耗等方面,故選擇了ADV7188型視頻解碼器件。該器件具有以下特性:
可以自動檢測到NTSC-M/J/4.43,PAL-M/N/B/G/H/I/D和SECAM制式信號的輸入;單一時鐘28.636 36 MHz;4路模擬視頻12位AD采集;5線自適應梳狀濾波;降低數字噪聲;集成有自適應白電平峰值的自動增益控制器;具有鎖定較弱的、噪聲和不穩定視頻源的設計;12路模擬輸入通道;輸入視頻信號幅度,為0.5~1.5 V;在沒有輸入視頻信號情況下可以自行產生行場同步信號;亮度帶寬邊緣增強是可編程的;色調、對比度、亮度、飽和度可編程;YCbCr以20/16/10/8位4:2:2形式輸出;支持工業標準的I2C接口;電源為+3.3 V,1.8 V;下電模式;采用80引腳,無鉛的LQFP封裝;工作溫度為-40~+85℃。
3.1.2 視頻采集電路工作原理
視頻采集電路是以為ADV7188為核心,采集多路的PAL、NTSC或SECAM制式模擬視頻信號,具有增強較弱的模擬視頻信號,可進行降噪處理和提高數字視頻信號質量的功能。AD7188的詳細電路可參見ADV7188的器件手冊。由于ADV7188對電源要求較高,該系統設計對電源進行隔離、去耦、低頻濾波等處理。為了廣泛應用,這里采用頻率為28.636 36 MHz的石英晶體諧振器,頻差為±20 ppm。圖2為視頻平裝的晶振電路。
根據PCB布線,Cstray通常為2~3pF,ADV7188器件管腳到電源地的電容值Cpg為4 pF,石英晶體諧振器的負載電容Cload為15 pF。由C1= C2=2(Cload-Cstray)-Cpg可計算出C1和C2的電容值為24 pF,按照E12系列的優選值,選取電容值為22pF。
設計中利用ADV7188的下電模式,當此片沒有模擬視頻輸入或不需工作時,將其下電,其功耗將由工作時的0.6 W降到1 mW左右,能極大地減少系統待機功耗。
3.1.3 視頻采集電路的配置
在FPGA內設計I2C總線控制器,配置為和視頻解碼器I2C接口時鐘一致的接口總線。通過FPGA上電配置,達到對FPGA內的FIFO初始化,初始化數據為視頻采集電路的配置數據,配置數據見表1。
表1 配置數據
3.2 FPGA
3.2.1 FPGA器件選型
FPGA型號的選擇主要基于以下方面考慮:具有PCIExpress總線;通道不低于x8;具有嵌入式微處理器;合適的I/O管腳數和資源,支持所需的電平標準;具有較低的功耗;合適的性價比。
因此,選擇Xilinx公司的Virtex-5系列的XC5VFX3-0T,封裝為FF665 PCI Express總線;具有PowerPC440嵌入微處理器。配置芯片選用容量為1 GB的CF卡。
3.2.2 FPGA的性能和資源
1)時鐘資源32條全局時鐘總線,對整個器件上的所有資源進行時鐘控制,且可以驅動邏輯信號;
2)時鐘管理技術 時鐘去歪斜、頻率合成、相移和動態重配置等功能;
3)鎖相環作為廣譜頻率的頻率合成器,并且與CMT的DCM配合作為外部或內部時鐘的抖動濾波器;
4)BLOCK RAM 2 448 Kb,可配置為RAM、雙口RAM和FIFO等,且其內容能夠初始化;
5)可配置邏輯塊 實現組合邏輯和時序邏輯的主要資源;
6)SelectIO資源 可支持種類繁多的標準接口。包括輸出強度和斜率的可編程控制以及實現數控阻抗的片上終端;
7)SelectIO邏輯資源 包括組合輸入/輸出、三態輸出控制、寄存輸入/輸出、寄存三態輸出控制、DDR輸入/輸出和DDR輸出三態控制;
8)高級SelectIO邏輯資源 輸入串并轉換和輸出并串轉換;
9)DSP邏輯片 64個550 MHz DSP48E slice,每個DP48E包括1個28x18的乘法器、1個加法器和1個累加器。利用XILINX ISE的FPGA Edit也可觀察FPGA的內部結構。
3.3 數據緩存
由于PCI Express的總線波特率為2.5 Gbps,遠大于1路采集后的數字視頻信號。當視頻數據經并行總線傳入FPGA內,通過配置為異步輸入輸出的FIFO進行數據緩存,提高總線使用效率。如果PCI Express總線為×1通道,PAL制式視頻轉換為常用的8位4:2:0的YUV格式數字視頻,按照PCIExpress總線傳輸有效數據1.62 Gb/s計算,理論上可以傳輸36路。
3.4 FCI Express接口實現
利用具有PCI Express的FPGA來設計,選用Xilinx公司的Virtex-5 LXT系列的FPGA,利用其內的PCI Express IP核進行設計,完成功能如下:用戶接口的本地鏈路成幀接口;64位數據總線寬度與3位提醒總線;包化接口,帶用于標記包的幀起始(SOF)和幀結束(EOF);傳輸和接收方向用戶接口的包中斷特性;幀錯誤檢測支持;多通道配置支持:×1、×2、×4和×8;這里通道配置為×1;每通道1.62 Gb/s或更高的吞吐量;利用集成端點模塊中的自動協商功能,可以在某些通道不能工作時使設計使用較低的帶寬;物理層中使用的8B/10B解碼和解碼。此方案雖開發難度大、周期長,但具有外電路圍簡單,硬件成本低,設計靈活、集成度高且易升級等特點。其接口電路如圖3所示。
3.5 時鐘
本設計需要4個時鐘信號,其中視頻解碼信號的時鐘要求最高,時鐘精度必須在±50 ppm以內,其次為PCI Express總線工作的時鐘頻率。在FPGA內對時鐘信號進行了DCM和PLL處理,完成了對時鐘信號的去歪斜、相移和頻率合成等功能。
3.6 Flash和DDRSDRAM
為使設計具有靈活性、擴展性和升級性,預留了Flash和SDRAM來存儲程序和運行程序,滿足智能性和易于以太網遠程控制等要求。
3.7 以太網接口電路
通過FPGA+PHY+變壓器組成以太網接口電路,可以用此接口加載程序,也可用此接口和互聯網連接。利用XILINX公司的FPGA開發軟件ISE,通過FPGA內IP核按照TriMode Ethemet MAC進行。
3.8 DMA傳輸
本設計采用DMA方式進行數據內部傳輸。數字視頻信號經并行總線傳入FPGA內,通過FIFO進行數據緩存,經DMA方式,通過PCI Express傳給計算機。[page]
3.9 FPGA配置方案
Virtex-5的配置方案采用System ACE(System Advandced Configuration Eviroment)中的System ACE CF(CompactFlash)。System ACE使用CF存儲卡保存數據,通過System ACE控制器把數據配置到FPGA中。System ACE CF使用容量為1 GB的CompaetFlash卡,System ACE CF是預制的配置方案,不需編寫任何程序,只需簡單的調試即可。此方案把舊的、用于調試的版本和新版本都裝入到同一塊CF卡中,縮短了研發周期,便于維修排故,同時把應用軟件、產品附帶的說明書等保存到此CF卡中,系統升級可更換CF卡、在系統編程和通過Intemet進行遠程升級。
3.10 電源的設計
板上需要電源有+3.3、+2.5、+1.8和+1.2 V共5種。其中+3.3 V電源為外部輸入,約20 W;+1.8 V提供給FPGA和ADV7188的二次電源,其他為提供給FPGA的二次電源。+3.3V電源為電源層,提供給FPGA的+2.5V、+1.8 V和+1.2V為電源層分割。提供給ADV7188的+1.8V電源電流按照0.5A設計,實際典型值為100 mA。去耦電容和對應的元器件同層放置,減少過孔的影響。
3.11 PCB設計
PCB布線遵循信號完整性的設計要求。PCB共10層,首先設計電源層和地層,其中電源層2層,地平面4層,對稱分布。除以太網變壓器外其他所有工作電源的地為一個地,保證地平面的完整性。
由于PCI Express總線為2.5Gb/s,對Virtex-5引腳分配時,使PCI Express的引腳在其內的布線盡可能的短。在PCB的布局時使Virtex-5靠近PCI Express總線接口的電連接器,差分線對的實際長度不大于30 mm。PCB布線時要嚴格控制差分線對的長度差,為了避免信號往返的延遲不超過其上升時間,導致過沖和振鈴發生,PCB布線根據PCI Express信號的特性,定義差分對長度差不超過1 mm,實際布線結果不超過0.2 mm。PCB上的差分阻抗為(100±10)Ω,符合PCIExpress規范單端阻抗為(50±10)Ω的要求。
3.12 操作系統
本設計中的FPGA具有PPC440核,采用實時多任務操作系統(Vxworks),根據實際使用要求,從Vxworks系統內核(wind)的任務管理、通信機制、系統配置、系統接口幾個方面進行設計,保證系統的安全性和可靠性。本設計已具備成熟的Vxworks操作系統。
3.13 FPGA的調試
FPGA的開發包括過程管理與設計輸入、仿真、綜合、約束、實現、布局布線與配置調試,其中FPGA的調試占用設計周期的80%左右。ISE附帶的高級組件,包括在線調試(ChipScope Pro)、平面布局規劃器(PlanAhead)、時序分析器(Timing Analyzer)、布局規劃器(FloorAhead)、底層編輯器(FPGA Editor)、和功耗分析器(Xpower),以及第三方軟件ModelSim,有效地使用相應工具,加速了設計進程,避免重新設計,有效提高設計生產力,并顯著提高設計性能,降低功耗后將降低系統的整體成本。
4 采集、傳輸和驗證
視頻信號發生器產生的一種模擬視頻信號如圖4所示。通過模擬視頻信號的采集、總線傳輸過程,計算機顯示器顯示的數字視頻如圖5所示,和監視器顯示的模擬視頻圖像相同,肉眼無法區分其差別,滿足使用要求。采集模擬視頻的多種標準檢測畫面,顯示正常無畸變,證實本設計的視頻采集和數據傳輸達到了期望的結果。
5 結束語
隨著多媒體在工業和商業等方面的廣泛使用,對視頻信號的采集、數據傳輸速度、集成度和可靠性等方面提出了更高的要求。本文設計的基于PCI Express的視頻采集系統,適用于采集較弱或受干擾的視頻信號,集成度高,適合海量視頻數據傳輸,解決了傳輸的瓶頸問題。
責任編輯:gt
-
監控
+關注
關注
6文章
2172瀏覽量
55096 -
多媒體
+關注
關注
0文章
495瀏覽量
36943 -
總線
+關注
關注
10文章
2867瀏覽量
87988
發布評論請先 登錄
相關推薦
評論