基于DSP+FPGA汽車防撞報警設備高速數據采集
2.1.2 前端差分電路
為了消除偶次諧波分量,抑制共模噪聲源,起到系統抗干擾的效果,本系統的AD轉換電路采用差分輸入的形式,而信號經過放大電路后得到的是單端信號,所以,必須要將前端的輸入單端信號轉化為差分信號。本設計選用了ADI公司生產的AD8620驅動芯片構成差分驅動電路,其具體電路設計如圖4所示。

2.2 AD轉化電路
在數據采集系統中AD是比較重要的環節,主要完成對激光回波信號的采集工作,而采樣時鐘信號可以由FPGA電路內部的時鐘模塊來提供。ADI公司的AD9481,可以采用差分輸入,采樣率達到250 MSPS,并且采用250 M的PECL標準的時鐘信號,為此在設計中為產生該差分時鐘信號,考慮選用MC100LEL16的時鐘芯片。AD9481的數字輸出屬于并行接口,有16位的數據流,對于這么高速的數據與存儲會出現競爭冒險,使系統不穩定,因此在設計時AD與FPGA的輸出端之間串接了一個100 Ω的電阻,可以消除出現在0~1之間的毛刺與高速數據線之間的干擾,具體的AD硬件原理如圖5所示。

2.3 數據處理部分硬件電路
本系統數據處理部分由FPGA和DSP兩個部分來完成。根據前一級AD電路的信號輸出時序進行VHDL編程,來實現同時對兩路AD輸出的數字信號的采集,將數據輸入到FIFO模塊中,然后通過EMIF總線將數據快速傳輸到DSP里進行相關算法的運算。
2.3.1 FPGA電路
FPGA采用硬件編程實現復雜的邏輯功能,不僅能夠對采集到的大批量數據流進行預處理,而且作為整個控制系統的核心部分,提供系統所需的時鐘信號,保證數據的有序采集,而且作為數據傳輸的紐帶,保證了AD與DSP進行數據傳輸。結合采樣存儲傳輸等功能FPGA的模塊主要分為4個部分:時鐘管理模塊、A/D控制模塊、FIFO緩存模塊、與DSP的EMIF接口模塊:
1)時鐘管理模塊,該部分主要是產生系統所需的各模塊的時鐘信號,本系統采用ISE軟件自帶的DCM模塊來實現。
2)A/D控制器:根據當前選擇的采樣模式為A/D提供相應的控制信號以使A/D正常工作;并通過AD電路的信號輸出時序將AD輸出的數字信號進行采集。
3)FIFO緩存模塊:主要實現將高速采集到的數據緩存到FIFO中。當緩存滿時,FIFO的滿標志(full)向DSP申請中斷,DSP相應中斷后采用DMA傳輸方式把采樣效據讀到內存中進行數據實時處理。
4)與DSP的EMIF接口模塊:DSP通過EMIF接口與FPGA內部的RAM連接,實現了將FPGA中緩存的數據與DSP進行高速傳輸的作用。
fpga相關文章:fpga是什么
評論