采用FPGA的高速數據采集系統
隨著科學技術的發展,數據采集技術進入到越來越多的領域。目前,已廣泛應用于通信,圖像處理,軍事應用,消費電子,智能控制等方面。傳統的數據采集系統一般都是采用單片機作為處理器,控制A/D轉換器,存儲器及其他外圍電路的工作。這種方式的優點是系統的工作基本都是用單片機來完成,實現起來較為方便,只需對處理器進行編程即可。但隨著數據采集進入的領域越來越復雜,對數據采集的速度和深度都有了更高的要求。傳統的單片機由于時鐘頻率較低,外設速度慢等缺點已經大大的限制了數據采集的速度和性能。而FPGA與單片機相比,有著頻率高,內部延時小,內部存儲容量大等優點,比單片機更適應與高速數據采集的場合。因此,本文介紹了一種基于FPGA來實現高速數據采集的方法,A/D轉換器使用AD公司的AD9481,FPGA使用ALTERA公司的EP2C5Q208,存儲器使用HYNIX公司的HY57V641620。系統框圖如圖1所示。
l 高速A/D與FPGA接口的實現
本文采用的AD轉換器是ADI公司的AD9481,AD9481是一款典型的高速AD轉換器,其高達250MSPS的采樣率,適用于高速數據采集的場合。因為AD9481需要250M的基于PECL標準的差分時鐘才能工作在250MSPS,因此本設計采用摩托羅拉公司的MCl00LVEL16這一時鐘芯片來提供250M的差分時鐘,它只需要輸入單端CMOS電平的250M時鐘便可以輸出符合AD9481要求的250M差分時鐘。單端時鐘由FPGA的鎖相環對有源晶振輸入的時鐘進行倍頻輸出。但是這么高的時鐘在線路板中是一個潛在的威脅,它既容易干擾其他器件,又容易被其他器件干擾。AD9481的數字輸出屬于并行接口,2個250MSPS,8位數據輸出組合形成125MSPS,16位的數據流,如此高速的數據傳輸與存儲容易使數字系統中出現競爭冒險和亞穩態,因此首先在AD的數據輸出引腳和FPGA的輸入引腳之間串聯100歐姆的電阻,用來削弱高速數據線在O,1之間變換產生的毛刺和數據線之間的干擾。其次,在FPGA內部對AD的數據線和鎖存時鐘的使用應嚴格按照器件手冊上的建立時間和保持時間來設計,否則容易產生亞穩態。
該設計選用的FPGA是EP2C5Q208,它是ALTERA公司的CYCLONE2系列的一款低成本FPGA,適用于中小型設計。擁有多達4608的邏輯單元,119808 bit的內部RAM,支持ALTERA公司的SOPC,NIOSII,本設計通過EP2C5Q208的內部RAM來做AD高速數據傳輸的緩沖,AD過來的高速數據通過鎖存時鐘完成對FIF0的寫操作。如圖2所示,AD_DB[15..O]是AD的數據線,ADB_DCOB是AD的鎖存時鐘。
評論