在現代通信和雷達領域中,寬帶、高增益、實時并行處理是現代接收機的重要標志。因而,這種具有高速并行處理能力和特有的大帶寬性能的聲光處理系統具有巨大的潛在優勢。以聲光器件為基礎的接收機除了具有寬帶、高增益、實時并行處理等特點外,還具有容量大,體積小,功耗低等優點。因而,采用聲光信號處理技術解決帶寬、高增益和實時并行處理問題具有重要意義,聲光信號的采集系統的設計是整個聲光系統關鍵之一。這里設計了一個基于FPGA和USB 2.0的高速CCD聲光信號采集系統,為聲光信號采集提供了硬件平臺。 1 系統概述 聲光信號采集系統框圖如圖1所示。系統主要由CCD聲光信號采集模塊、A/D轉換模塊、FPGA驅動和控制模塊及USB接口傳輸模塊四部分組成。 系統上電后,USB設備按照上位機的命令完成對。FPGA數據采集參數的初始化設置及采集控制。RL2048P在驅動時序的嚴格控制下工作,采集的模擬信號經專用CCD信號處理芯片AD9822的相關雙采樣及模/數轉換后,緩存在EP2C35內部配置的FIFO中,然后判斷當FIFO中的數據達到2 048 B時,向USB控制器CY7C68013A中異步寫數據,由于USB設置自動IN模式,可以直接把FIFO中數據傳輸到PC上位機硬盤文件中,因而可完成CCD聲光信號的采集、傳輸及存儲。 2 系統各模塊設計 系統各模塊設計為: FPGA驅動及控制模塊 系統采用Altera公司的CycloneⅡ系列。EP2C35F672C6芯片,具有高性價比及豐富的邏輯資源,可滿足系統的要求。有4個PLL,33 216個LE,48 KB存儲器資源,可以配置成各種模式的ROM,RAM及。FIFO,35個18×18的專用乘法器。FPGA的主要功能是產生RL2048P驅動時序,控制AD9822采樣及對其寄存器實現串行編程,內部配置FIFO緩存數據以及與USB接口通信,并傳輸數據到上位機中。 CCD聲光信號采集模塊 選用PerkinElmer公司的RL2048P線陣CCD。該芯片主要用于高速信號采集,2 048個有效像元,具有高靈敏度、大動態范圍、寬光譜范圍等特點,最高工作頻率為40 MHz,該系統設計為10 MHz。EP2C35的時序驅動輸出是3.3 V的LVTTL電平,不能直接驅動RL2048P(多電平要求)。因此,使用DG642和74FCT16244TV芯片完成電平轉換,增強驅動能力。圖2為RL2048P驅動時序圖;圖3為使用Verilog HDL編寫驅動時序的QuartusⅡ仿真。由比較可見,設計完全能滿足時序的嚴格要求。 A/D轉換模塊 AD9822是ADI公司的專用CCD信號處理芯片,內部集成CDS,PGA,14位ADC、暗電平自動校準、偏置電壓控制以及串行接口等功能,采樣速度高達15 MHz。ADCCLK的下降沿輸出數據的高8位,ADCCLK的上升沿輸出數據的低6位。AD9822采樣控制時序及寄存器編程都是由EP2C35實現,與RL2048P輸出信號同步,保證采集數據的正確性。采用相關雙采樣模式可以抑制CCD的復位噪聲,本系統設置其寄存器分別為0x0058,0x10C0,0x2000,0x50FF。 USB接口傳輸模塊 USB 2.0協議的傳輸速度高達480 Mb/s,且具有接口簡單及誤碼率低等優點,能夠滿足該系統高速傳輸的需要。選用Cypress公司的新一代低功耗CY7C68013A芯片,與之相應的開發包和開發文檔較齊全,縮短了開發周期,降低了開發難度。為了保證數據傳輸的速度,CY7C68013A工作于SlaveFIFO模式,不需要EZ-USB FX2LP的CPU干預,即可完成與FPGA的數據傳輸。EP2C35與CY7C68013A的通信采用了Slave FIFO模式下的異步方式,向大端點EP6寫數據,配置其為512 B四重緩沖區,批量AUTO IN傳輸模式,每次自動提交512 B數據。圖4為EP2C35與CY7C68013A的接口連接。 3 系統軟件設計 系統軟件設計包括: 固件程序(Firmware)設計 設備固件的主要功能是控制CY7C68013A接收并處理USB驅動程序的請求。如請求設備描述符,請求或設置設備狀態,請求或設置設備接口等USB 2.0標準請求;輔助硬件完成設備的重新枚舉、端點配置、控制和監測USB的活動,根據PC主機的命令與外圍電路進行數據交換等。Cy-press公司為用戶提供了一個固件程序框架,是通用性強的模塊化程序。在框架的基礎上,用戶只需要編寫Function.c文件即可完成USB功能開發。主要包括:Slave FIFO模式的初始化和用戶自定義請求。 驅動程序開發 系統包括兩個USB驅動程序:一個驅動專用于下載芯片的固件程序CCDloader.sys,另一個通用驅動程序ccdusb.sys用來實現USB設備與應用程序的通信和控制。芯片固件程序在主機上,當系統上電時,前者將其下載到芯片的RAM中,并由增強型8051微處理器執行。當固件下載完成后,模擬一次斷開重新連接,此時下載的固件響應USB枚舉,并加載USB設備通用驅動程序。USB的驅動程序是WDM類型,可以使用Windows DDK,WinDriver,DriverStudio開發。 應用程序開發 它的主要任務是與USB驅動程序通信,控制聲光信號采集過程。在此用Visual C++6.0進行程序設計。CyAPI控制函數類為FX2LP系列USB接口芯片提供了十分精細的控制接口,只需在應用程序中加頭文件CyAPI.h和庫文件CyAPI.lib即可調用相應的控制函數,打開USB設備讀取數據并存儲到主機硬盤中的CcdData.txt文件。 4 實驗數據分析 使用TEKTRONIX公司的示波器,對經過隔直處理后的RL2048P輸出信號在各種實驗條件下進行了測試和分析。如圖2所示,VOUT為像元輸出信號,每一個像元輸出信號的開始都有一個同步參考信號,后面部分才為有效信號輸出,由于CCD輸出信號為負極性信號,所以有效信號值相對于參考信號為負。 圖5為全暗條件RL2048P的輸出,由于光敏面上沒有光,只有暗電平信號輸出,所以像元的輸出有效信號幾乎為零。圖6為弱光條件RL2048P的輸出,有效信號幅值發生了變化。圖7為全亮條件RL2048P的輸出,有效信號到達了飽和值。RL2048P的實際輸出和理論分析一致,工作正常。聲光信號通過中間有孔的不透光遮擋板照在CCD上,使用應用軟件進行數據采集。從CCD Data.txt數據文件中連續提取8 192個像元點即四幀CCD數據,Matlab軟件分析如圖8所示。 有光照射的位置對應為高,實測數據和理論值吻合。在其他條件下也做相關實驗,結果與理論基本一致。由于篇幅所限,本文不做詳細介紹。實驗結果表明,系統功能完整,可以實現聲光信號的高速采集、傳輸及儲存。 5 結 語 系統采用現場FPGA作為硬件設計核心,使用Veritog語言。進行硬件描述,使系統更靈活,可在線編程,便于擴展和升級。這里的CCD驅動時序采用狀態機與分頻相結合的新方法,實際測試驅動波形穩定且沒有毛刺,CCD輸出信號質量高。USB應用于Slave FIFO高速傳輸模式,滿足了高速CCD聲光信號采集的要求,具有實時性、高速、穩定、可靠等特點。 |