《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 基于AD9883A與USB的VGA圖像采集與顯示系統(tǒng)
基于AD9883A與USB的VGA圖像采集與顯示系統(tǒng)
摘要: 圖像顯示接口由于采用不同的USB控制處理器件,主機需安裝各種專用驅動程序,且互不兼容,所以需要向USB接口的視頻設備提供統(tǒng)一的數(shù)據(jù)交換規(guī)范以方便快捷地與計算機通信。因此,這里給出了基于AD9883A與USB的VGA圖像采集與顯示系統(tǒng)的解決方案。
Abstract:
Key words :

  1 引言

  高速大容量圖像數(shù)據(jù)采集與顯示系統(tǒng)在雷達、氣象、地震預報、航空航天、通信等領域中有著廣泛的應用前景。這些領域的信號處理具有實時性強,數(shù)據(jù)率高,數(shù)據(jù)量大,處理復雜,運算量大等特點。這就要求圖像數(shù)據(jù)采集必須具有處理大量數(shù)據(jù)的能力;并對其體積,功耗和穩(wěn)定性要求嚴格。高轉換率低功耗的A/D轉換器與高效FPGA相結合可完成該功能要求。圖像顯示接口由于采用不同的USB控制處理器件,主機需安裝各種專用驅動程序,且互不兼容,所以需要向USB接口的視頻設備提供統(tǒng)一的數(shù)據(jù)交換規(guī)范以方便快捷地與計算機通信。因此,這里給出了基于AD9883A與USB的VGA圖像采集與顯示系統(tǒng)的解決方案。

  2 系統(tǒng)整體設計

  圖1為圖像采集顯示系統(tǒng)框圖。

圖像采集顯示系統(tǒng)框圖

  (1)VGA輸入模塊 將模擬信號RGB及行同步信號,場同步信號輸入給A/D轉換模塊。由于該模塊是由模擬電路組成,易產(chǎn)生噪聲,因此接口器件應盡量靠近A/D轉換器放置。

  (2)A/D轉換模塊 首先根據(jù)同步信號確定所采樣的行頻和場頻,接著由行頻和內部寄存器確定像素時鐘,A/D轉換器內部PLL產(chǎn)生像素時鐘。將VGA輸入的模擬信號轉換為8×3路的數(shù)字視頻信號,并通過一系列寄存器調整圖像的采樣效果。

  (3)FPGA控制模塊 一方面FPGA通過I2C總線向A/D轉換器寄存器寫入控制信息;另一方面輸出8×3路的數(shù)字信號。當FPGA接收8×3路信號時,由于其像素頻率為75 MHz,與FPGA內部時鐘頻率不一致,而且數(shù)據(jù)速率較大,因此,可利用兩個FIFO以pingpong的方式讀取。

  (4)USB輸出顯示模塊FIFO為異步接口,具有數(shù)據(jù)緩沖作用。通過USB控制器獲取存儲在FIFO的數(shù)據(jù),并通過USB接口傳送至計算機以顯示。

  3 系統(tǒng)硬件設計

  3.1 VGA接口

  VGA是一種D型接口,可傳輸VGA,SVGA,XGA,SXGA等圖像格式。VGA接口共有15針,分成3排,每排5個。VGA接口是顯卡應用最為廣泛的接口類型。

  系統(tǒng)VGA模擬信號輸入與A/D轉換器相連,A/D轉換器的RAIN,GAIN,BAIN分別與模擬接口的R,G,B相連。

  3.2 A/D轉換接口

  由于A/D轉換器的采樣率較高,相應的輸出數(shù)據(jù)速率也高。在系統(tǒng)最高要求下,像素點頻率為108 MHz,相應的數(shù)據(jù)速率為324 Mbit/s(R,G,B 3個分量,每個分量8 bit)。同時,由于采集圖像數(shù)據(jù),要求較高的行同步時。如果某一行圖像數(shù)據(jù)丟失一個或多個點數(shù)據(jù),整個圖像就會產(chǎn)生傾斜。因此需突發(fā)存儲每行數(shù)據(jù),保證數(shù)據(jù)不丟失。其突發(fā)長度為圖像的水平分辨率。

  該采集模塊的A/D轉換器采用AD9883A。該器件是專門針對采集模擬R,G,B信號,并將其數(shù)字化顯示或為其他應用而設計的。該器件具有采樣精度為8 bit的3路通道,最高采樣率為140 MS/s,300 MB的模擬帶寬,并且優(yōu)化了計算機及工作站的圖像接口,可采樣分辨率為1280×1024。刷新率為75 Hz的視頻信號?;贏D9883A的電路可為高清電視(HDTV)提供良好的計算機接口和高性能視頻設備的前端掃描轉換器。AD9883A內部結構如圖2所示。

AD9883A內部結構

  輸入VGA圖像信號后,先箝位以調整其直流偏移分量,使輸入電平滿足A/D轉換模塊要求。AD9883A內部具有3個高帶寬、8 bit分辨率、110MS/s轉換速率的A/D轉換器,對箝位后的模擬視頻信號進行采樣、量化、編碼,得到數(shù)字視頻信號,通過寄存器調整采樣相位,獲得最佳轉換效果。

  采樣時鐘通過配置鎖相環(huán)(PLL)生成,可使用行同步信(HSYNC)作為參考時鐘,然后經(jīng)分頻,得到A/D轉換器所需的采樣時鐘。AD9883A內部集成一個超低抖動鎖相環(huán),在所有工作模式下時鐘抖動不到點時鐘的5%。AD9883A時鐘的穩(wěn)定性對于系統(tǒng)產(chǎn)生清晰穩(wěn)定的圖像十分重要。由于AD9883A具有一個寬范圍,可調的鎖相環(huán),能夠產(chǎn)生12~140 MHz的像素點頻率,因此AD9883A支持豐富的輸入圖像格式。

  AD9883A的同步信號產(chǎn)生模塊能識別多種同步信號輸入模式,同時也可根據(jù)需要靈活設定同步信號的輸出模式。通過I2C總線時序,方便實現(xiàn)器件初始化。

  A/D轉換模塊能采集多種VGA圖像格式,但不能自動檢測圖像格式,必須通過它提供的I2C接口進行設置,F(xiàn)PGA自動檢測圖像格式,并設置A/D轉換模塊。另外,不同格式的VGA圖像中場同步信號的有效脈沖電平不統(tǒng)一,A/D轉換模塊可自動檢測輸入的場同步信號極性并存儲到內部寄存器,通過讀取該寄存器判斷輸入VGA信號場同步的極性。A/D轉換模塊輸出的場同步信號實現(xiàn)輸入場同步信號的反相。FP-GA內部的同步邏輯只支持一種有效電平的場同步信號,因此在采集前需讀取A/D轉換器內部寄存器來判斷當前輸入同步信號的極性,以確定是否需要設置A/D轉換器對場同步信號進行反相處理。

 

  輸入的模擬視頻信號經(jīng)箝位處理、增益與偏置控制后,AD9883內部3個高精度高速A/D轉換器在鎖相環(huán)產(chǎn)生的采樣時鐘作用下,轉換為顯示所需的數(shù)字視頻信號。圖3為其數(shù)據(jù)輸出的時序,在輸出數(shù)據(jù)時鐘DATACK的下降沿,采樣及量化其對應的信號,量化后的數(shù)據(jù)在時鐘上升沿輸出:接口電路以DATACK的上升沿準確鎖存圖像數(shù)據(jù),實現(xiàn)數(shù)字化圖像的采集。考慮到像素時鐘和數(shù)據(jù)的相位延遲等問題,可用HSYNC消除邊沿定時的不確定性。要注意的是,AD9883A有一個數(shù)據(jù)輸出通道,在輸出數(shù)據(jù)有效之前必須清空通道,從而導致在輸出每行有效數(shù)據(jù)之前將輸出4組無效數(shù)據(jù),可通過對時鐘計數(shù)避免輸出這些無效數(shù)據(jù)。

數(shù)據(jù)輸出的時序

  3.3 FPGA控制器設計

  主控FPGA產(chǎn)生系統(tǒng)所需的控制信號,保證各個模塊協(xié)涮工作。該系統(tǒng)設計采用EP1C12Q240C8型FPGA。其內部模塊框圖如圖4所示。

內部模塊框圖

  FPGA內部由主控制、A/D轉換接口、FIFO,以及USB等模塊組成。主控制模塊負責協(xié)調各模塊之間的工作。A/D轉換接口模塊接收A/D轉換模塊輸出的數(shù)據(jù)和同步信號并保證圖像數(shù)據(jù)的行、場同步,F(xiàn)IFO模塊采用pingpong的方式讀取A/D轉換傳輸?shù)?×3路數(shù)字信號,然后USB輸出接口模塊輸出高速數(shù)據(jù)。

  3.4 輸出顯示設計

  USB接口模塊為應用程序和功能性設備提供可靠接口,USB體系可分為USB主機和USB設備兩部分,其模塊結構圖如圖5所示。

模塊結構圖

  USB接口器件選用Cypress公司的EZ-USB FX2器件CY7C68013A。該器件內部集成USB 2.0收發(fā)器智能串行引擎SIE,增強型8051控制器,通用可編程接口(GPIF),8.5 KB的RAM和4 KB的FIFO存儲器,F(xiàn)X2系列的獨創(chuàng)性設計可滿足USB2.0的總線帶寬。

  該系統(tǒng)以傳輸控制信息和視頻數(shù)據(jù)為主,可將器件置于Slave FIFO模式,USB串行接口引擎(SIE)直接與Slave FIFO傳輸數(shù)據(jù),Slave FIFO再與外部設備(FPGA)通信,從而實現(xiàn)PC機與FPGA的通信,并顯示視頻數(shù)據(jù)。

  3.5 USB設備驅動開發(fā)

  USB設備驅動程序嘲是連接USB外設、操作系統(tǒng)以及用戶應用程序的橋梁,是USB設備連接到計算機系統(tǒng)的軟件接口。EZ-USB FX2器件CY7C68013A的設備驅動程序有兩種:一種用來在設備接入時從主機下載的固件存儲RAM中,稱為同件下載驅動程序(wdgtldr.sys);另一種是在設備重新列舉后加載的通用設備驅動程序(ezusb.sys),應用軟件通過該設備驅動程序與FX2通信。編寫上位機程序的一個類USB Video Class,它對應于硬件CY7C68013A的一個同件,Video Class協(xié)議的目的是給USB接口的視頻設備提供統(tǒng)一的數(shù)據(jù)交換規(guī)范,這樣CY7C68013A接入PC后就無需ezusb.sys,而是使用PC自帶的Video驅動將其識別為Video設備。

  固件的程序代碼既可通過外部E2PROM下載,也可通過主機下載,這里選用從主機下載。其中,USB Video Class協(xié)議是主機端通過向設備端獲取描述符(Descriptor)來得到視頻設備端的結構及其所支持的功能。而控制這些功能模塊,配置數(shù)據(jù)源和數(shù)據(jù)流,則需通過Request(包括所有USB設備都需要支持的Standard Device Requests和Class與相關的Class Specific Requests)完成。

  操作系統(tǒng)通過驅動程序實現(xiàn)對Video Class的支持。Video Class驅動的整體框架分為兩部分:一部分是負責處理模塊的初始化,處理USB總線上的Descriptor和Requests的交互,包括USB總線上的控制和查詢包的接收、解釋、分配和應答:另一部分是在初始化中啟動的一個獨立的內核線程。負責執(zhí)行具體的控制指令,獲取和傳輸圖像數(shù)據(jù)。

  表1給出了USB Video Class程序中Uncompressed Video Format Descriptor(未壓縮的視頻格式描述符)的相關定義和實例。這個描述符定義了一種特殊的視頻流的特性,用于定義未縮視頻的信息,包括所有的YUV類型。一個視頻終端包含屬于相關通道的USB端點IN或OUT,可支持一個或多個格式定義。為了選擇一種特定的格式,因此主機需發(fā)送控制請求給相關的通道。

USB Video Class程序中Uncompressed Video Format Descriptor

  4 結語

  實現(xiàn)基于AD9883A和USB的8×3 bit,高速圖像數(shù)據(jù)采樣和顯示系統(tǒng)設計。該系統(tǒng)最高采樣速率可達110 Ms/s,采用高速率低功耗的AD9883A對1024×768,70Hz的圖像進行采樣,通過FPGA控制電路,CY7C68013A作為USB2.0的專用接口器件實現(xiàn)PC機與PFGA的通信,采用USB Video Class類,而不用加載額外的通用設備驅動程序。利用高速A/D轉換器,F(xiàn)PGA和USB共同實現(xiàn)電路的高速化與集成化。該系統(tǒng)可廣泛應用于雷達、氣象預報、航空航天、通信等領域的圖像數(shù)據(jù)實時記錄。

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