基于FPGA的高速數據采集卡設計與實(shí)現
引言
數 據 采 集 系 統 是 信 號 與 信 息 處 理 系 統 的 重 要 組 成 部 分,隨著(zhù)信息技術(shù)和高速互聯(lián)技術(shù)的飛速發(fā)展,人們面臨的 信號處理任務(wù)越來(lái)越繁重,數字信號處理的速度和精度也越 來(lái)越高,高速數據采集卡的重要性日益凸顯。要解決高分辨 率、高精度等問(wèn)題,對存儲設備的讀寫(xiě)速度、高速ADC技 術(shù)指標的要求必然會(huì )提高。FPGA靈活的配置與驗證設計方 法、豐富的IP核資源,大大簡(jiǎn)化了DDR II SDRAM讀寫(xiě)和以 太網(wǎng)MAC協(xié)議層的設計,給設計帶來(lái)了便利。
1 高速數據采集卡總體方案
系統以FPGA器件為核心,DDR II SDRAM為存儲設備,14-bit高精度ADC為核心模數轉換芯片,使用以太網(wǎng)技術(shù)作 為數據傳輸協(xié)議,設計了高速數據采集卡解決方案。數據采集卡的核心控制芯片是Xilinx公司的Virtex-5系列 的FPGA,主要完成整個(gè)采集卡的配置、存儲設備以及以太網(wǎng)的接口,觸發(fā)邏輯和測頻邏輯設計。高速數據采集卡最高
圖1 系統整體結構圖
設計采樣率可達到212.5MSPS,采樣精度12-bit,具有高輸入范圍、512MB深存儲容量等特性,具有多種觸發(fā)模式、頻率 檢測等功能。
高速采集卡系統的面板上總共有6個(gè)接插件, 分別為 CH0、CH1、TRIG、CLK In、CLK Out、AUX I/O。CH0和 CH1是兩路模擬輸入接口,TRIG是外部觸發(fā)接口,CLK In 和CLK Out是外部輸入時(shí)鐘和輸出參考時(shí)鐘的接口,AUX用 于軟件測試階段配置信息傳輸。
系統大致分為如下幾個(gè)模塊:兩路模擬通道、觸發(fā)模 塊、時(shí)鐘模塊、電源模塊、數據獲取模塊、抽取模塊、板載 存儲模塊、以太網(wǎng)接口、信號輸入輸出模塊和板載存儲模塊 等。其中數據獲取模塊、抽取模塊、信號輸入輸出模塊、部 分存儲模塊和部分以太網(wǎng)接口等多個(gè)功能模塊在FPGA內部 通過(guò)可編程邏輯門(mén)陣列實(shí)現,系統結構如圖1所示。
系統硬件設計中各功能模塊的主要功能為:
1、兩路模擬通道 該模塊主要指從雙通道模擬信號的輸入到ADC模數轉
圖2 FPGA數字電路原理框圖
換器的部分,由于存在多種滿(mǎn)量程輸入范圍和垂直偏置,因 此輸入的模擬信號需要經(jīng)過(guò)模擬調制,調制過(guò)程包括輸入阻 抗的匹配、耦合方式、放大衰減、原始信號調零與垂直偏置 等。通過(guò)一系列的電路調制,最終在進(jìn)入ADC之前將多種 模擬滿(mǎn)量程基本統一到同一個(gè)電壓等級上。由于項目要求12-bit分辨率,并考慮設計余量,所選的ADC應大于12-bit分 辨率。
圖3 嵌入式邏輯分析儀抓取ADC通道1信號波形
圖4 DDR II SDRAM讀操作仿真圖
2、觸發(fā)模塊 觸發(fā)模塊實(shí)現外部觸發(fā)和通道觸發(fā),可通過(guò)編程實(shí)現
觸發(fā)源的切換。外部輸入的觸發(fā)信號可經(jīng)過(guò)DAC和比較器電 路經(jīng)過(guò)比較產(chǎn)生。通道觸發(fā)可通過(guò)模擬輸入經(jīng)過(guò)調制之后進(jìn) 入ADC之前的信號引入比較,產(chǎn)生觸發(fā)信號。
3、時(shí)鐘模塊
時(shí)鐘模塊主要需要設計板載時(shí)鐘電路和FPG A時(shí)鐘電 路, 選擇合適的VCXO作為時(shí)鐘源, 與外部輸入時(shí)鐘經(jīng)過(guò) PLL和時(shí)鐘分發(fā)產(chǎn)生合適的時(shí)鐘用于A(yíng)DC采樣和FPGA對數 字信號的獲取。
4、電源模塊 電源模塊分為模擬電源部分和數字電源部分,多數電源芯片供應商對FPGA及其外圍電路電源設計都有推薦電源 模塊及設計指導,模擬電源部分要考慮一顆電源芯片帶動(dòng)多 個(gè)芯片工作,驅動(dòng)電流和功耗都是設計中需要注意的問(wèn)題。
5、板載存儲模塊 設計要求單通道512MB的存儲深度,由存儲深度及數據流的傳輸速度,考慮使用雙倍數據率的SDRAM實(shí)現,兩
路模擬通道共需1GB的存儲量,至少需要1GB的存儲單元。
2 FPGA數字邏輯設計
FPGA的設計主要包括各芯片控制模塊、DDR II SDRAM 存儲接口設計、以太網(wǎng)數據傳輸接口設計、觸發(fā)控制設計和 測頻計數邏輯設計五部分。整個(gè)FPGA數字電路原理框圖如 圖2。A D C 是 系 統 采 樣 的 核 心 器 件 , 選 用 A D I 公 司 生 產(chǎn) 的
A D 9 6 4 3 , 它 是 一 款 雙 通 道 、 1 4 位 、 采 樣 速 率 最 高 達 2 5 0MSPS的模數轉換器,使用三線(xiàn)SPI協(xié)議來(lái)配置寄存器。每 行存儲器映射寄存器表有8-bit空間。存儲器映射分為三部 分:芯片配置寄存器(地址0x00~0x02)、通道索引和傳輸 寄存器(0x05、0xFF)、ADC功能寄存器,包括設置、控制 和 測 試 ( 地 址0x08~0x59)。 表 1 列 出 了 需 要 手 動(dòng) 修 改 的 非 默 認 值 寄 存 器 及 修 改值 。 其 他 寄 存器 都 保 持 默 認配置不變。
通過(guò)嵌入式邏輯分析儀Chipscope驗證ADC配置的正確 性,輸入的測試信號為600mVpp的周期性正弦模擬信號,頻 率為5MHz,經(jīng)過(guò)通道1調理到±1V電壓范圍后,進(jìn)入ADC 前加入-40mV的直流偏置。
使用嵌入式邏輯分析儀抓取信號如圖3。經(jīng)過(guò)計算可知 進(jìn)入ADC前的模擬信號為523mVpp,并加入了-40mV的直流 偏置。換算成14-bit數字量分別為4890和-370,而根據邏輯分 析儀抓取的信號Max=2045,Min=-2806計算可得對應的數字 量分別為4850和-380,誤差范圍達到了設計要求。
存儲器控制器狀態(tài)機使用的初始化順序遵循 DDR I I SDRAM 標準規范。接口需符合存儲器的電壓要求。因此在 經(jīng)過(guò)固定步驟的初始化后,控制器進(jìn)入空閑模式,等待讀寫(xiě) 操作。如圖4是DDR II SDRAM存儲設備控制器的讀操作的仿 真實(shí)現。
評論