基于FPGA的高速實時數據采集系統(tǒng)設計
2.2.3 UART模塊
UART即為通用異步收發(fā)器,在發(fā)送時,將并行數據轉換成為串行數據;而在接收端,是將串行數據轉換為并行數據。其傳送數據主要是以幀的形式進行傳輸的,一個基本的幀包含有一個起始位、7位或8位數據、奇偶校驗位和停止位組成,UART的結構示意圖如圖9所示。本文引用地址:http://m.butianyuan.cn/article/190326.htm
起始位按照習慣,線路閑置時的邏輯值一般都是1,起始標志的邏輯值為0。對于奇偶校驗位的值是所有數據位的異或結果,并且隨著數據會一起傳輸的,如果采用偶校驗,當數據中有奇數個1時,那么奇偶校驗位就設置為1;如果有偶數個1時,那么奇偶校驗位就設置為0。采用奇校驗,其結果恰恰相反。對于停止位的邏輯值,一般都是設置為0。
發(fā)送模塊中引腳功能為:din(7:0):8位并行數據的輸入端;sdo:并行數據轉串行數據輸出端;rst:復位信號輸入端,低電平有效;wrn:寫控制信號,高電平有效,高電平時寫入數據;tsre:并串轉換過程標志信號,低電平有效,轉換過程中始終保持為0;clk16x:時鐘信號輸入端波特率發(fā)生器產生;tbre:整個工作過程標志信號。
UART模塊發(fā)送模塊在Modelsim中的仿真圖如圖10所示。
從Modelsim仿真圖可以看出,在并串轉換過程標志信號(tsre信號)有效時,即為低電平時,則8位并行數據就實現(xiàn)了并串轉換,然后通過USB接口傳輸給上位機顯示。
接收模塊中引腳功能:rxd:串行數據輸入端口;dout[7:0]:并行數據輸出端;rdn:寫控制端口,高電平有效,此時數據輸出;data_ ready:數據是否準備好的標志端口;parity_error:校驗位是否出錯的標志端口;framing_error:幀是否出錯的標志端口。UART模塊的接收模塊在Modelsim中的仿真圖如圖11所示。
從Modelsim仿真圖可以看出,當UART寫控制信號(rdn信號)為高電平,即有效時,則串行數據就實現(xiàn)了并串轉換,將上位機的反饋信號傳輸給系統(tǒng)。
3 結語
本文基于FPGA的高速實時數據采集系統(tǒng)的設計,能夠實現(xiàn)數據的高速、實時地采集。系統(tǒng)能夠實現(xiàn)6通道同步采集,并通過FIFO解決了A/D轉換速率和DSP處理數據的速率不匹配的問題,使系統(tǒng)具有高效、快速的特點。在仿真中驗證了所設計功能的正確性,因而在高速實時數據采集方面有著廣泛的應用空間。
評論