基于DSP和FPGA的汽車防撞高速數據采集系統(tǒng)
在完成對EMIF的DSP配置后,接下來就是實現EMIF接口的FPGA配置工作,保證FPGA中的數據正常的讀入到DSP中。在FPGA中配置EMIF接口的連接圖如圖7所示。本文引用地址:http://www.ex-cimer.com/article/192881.htm
該模塊是DSP與FPGA進行通信的接口模塊。通過該模塊,DSP可以實現向FPGA傳輸控制信號,FPGA也可以通過該模塊將FIFO中的數據傳給DSP。CE、WE、RE、OE為DSP輸入的使能信號,CLK為FPGA提供內部時鐘,CLKOUT2是EMIF的輸出時鐘,為DSP與FPGA通信提供時鐘頻率,DSP_Addr(19:0)為DSP的輸入地址,DSP_DataBus(31:0)為DSP的數據總線。FPGA根據讀使能信號OE與片選信號CE的輸入邏輯來判斷EMIF是進行讀操作還是寫操作。當DSP通過EMIF讀取數據時,FPGA中的數據從dpram_data(31:0)輸入,由DSP_DataBus(31:0)管腳傳送給DSP;若寫數據,將DSP_DataBus(31:0)傳來的數據從dout(31:0)送入FPGA。
2.4 人機交互模塊
人機交互模塊分為按健電路和LCD顯示電路。限于篇幅,本文僅介紹LCD電路。
LCD顯示部分我們采用真空熒光顯示點陣式VFD屏,其優(yōu)點是能高亮度發(fā)光。由于我們選擇的屏是5 V供電,所以由DSP過來的3.3 V的信號線需要經過74LVCA245轉化為5 V,再與VFD屏的控制器接口相連,LCD控制器接口如圖8所示。
3 軟件設計
本系統(tǒng)軟件主要由DSP和FPGA組成。其中DSP由系統(tǒng)初始化部分;系統(tǒng)功能模塊的EMIF模塊,FLASH模塊和SDRAM模塊組成以及人機交互模塊組成。而FPGA設計則由FIFO模塊以及DCM模塊組成,軟件總體模塊框圖如圖9所示。
在整個系統(tǒng)中,DSP芯片負責DSP系統(tǒng)初始化部分和系統(tǒng)功能模塊兩個部分。其中DSP系統(tǒng)初始化部分包括DSP引導程序,DSP芯片中各硬件寄存器的設置,以及EDMA,定時中斷等寄存器的設置。而系統(tǒng)功能模塊中,包括FLASH模塊和SDRAM模塊,由于本系統(tǒng)中DSP需要處理的數據容量比較大,自身的存儲容量不夠,所以一些數據需要存儲于FLASH中,而在運行過程中,很多數據的處理也要在SDRAM中進行;而DSP EMIF模塊主要用來連接FPGA,FLASH和SDRAM。
FPGA邏輯設計部分包括了AD邏輯設計,DCM邏輯設計以及FIFO模塊的邏輯設計。這塊功能設計的主要目的是利用FPGA的硬件邏輯模塊,同時進行2路高速AD數據的采集,并將數據放至由ISE軟件的IPcore生成的FIFO中,最后由FIFO再通過由與EMIF相對應的邏輯接口將數據傳輸到DSP中。而整個邏輯設計過程中,其時鐘均由DCM模塊來產生,DCM模塊可以由ISE軟件的IPcore來生成,可以通過IP core生成系統(tǒng)需要的時鐘頻率,有延時少,抖動小等優(yōu)點。
最后人機交互程序主要是包括LCD模塊以及鍵盤模塊。其中LCD來對數據進行顯示,而鍵盤模塊來對系統(tǒng)的各個參數進行設定。
4 結束語
文中在對目前高速數據采集系統(tǒng)的發(fā)展狀況、FPGA可編程控制器件和DSP數字信號處理系統(tǒng)的深入研究的基礎上,采用了高速ADC+FPGA+ DSP的設計方案,設計了一款高速數據采集系統(tǒng),能夠用于高速行駛的汽車防撞報警設備中,實時檢測目標汽車與障礙物之間的距離,及時提醒駕駛員要提高警惕,注意安全駕駛。
評論