一種基于FPGA的振動信號采集處理系統(tǒng)
4.2 數(shù)據(jù)流開關(guān)
本文引用地址:http://cafeforensic.com/article/262772.htm采樣數(shù)據(jù)處理的實(shí)時性是FPGA設(shè)計中首先要考慮的問題,振動信號采集過程中常會由于輸入數(shù)據(jù)量過大,導(dǎo)致后續(xù)處理電路處于飽和狀態(tài)以致數(shù)據(jù)丟失。為解決上述問題,FPGA通過開關(guān)切換的方式將數(shù)據(jù)分別送入不同的線程進(jìn)行處理。振動傳感器輸出數(shù)據(jù)格式如下:(A1B1C 1D1E1F1),(A2B2C2D2E2F2),……(AN BN CN DN EN FN),A、B、C、D、E、F分別代表不同方向的振動量值。采用單通道的數(shù)據(jù)處理方式時,程序首先需完成數(shù)據(jù)的區(qū)分工作,然后完成6次數(shù)據(jù)處理過程,當(dāng)一次需要處理數(shù)據(jù)量較大的情況下,系統(tǒng)會產(chǎn)生較大的延遲并導(dǎo)致后續(xù)數(shù)據(jù)的丟失。為降低數(shù)據(jù)處理電路的負(fù)擔(dān),采用數(shù)據(jù)流開關(guān)將振動傳感器輸出數(shù)據(jù)分別存儲在不同的通道中通過數(shù)據(jù)流控制開關(guān)后數(shù)據(jù)格式如下:
通道1:A1、A2……AN;
通道2:B1、B2……BN;
通道3:C1、C2……CN;
通道4:D1、D2……DN;
通道5:E1、E2……EN;
通道6:F1、F2……FN。
僅需處理N個數(shù)據(jù)就能滿足系統(tǒng)要求,系統(tǒng)對于處理能力的要求相應(yīng)降低。數(shù)據(jù)流控制仿真結(jié)果如圖3所示。圖中AD采樣數(shù)據(jù)為連續(xù)的單通道輸入數(shù)據(jù),經(jīng)過AD控制命令和通道開關(guān)的控制后被分別發(fā)送到6個數(shù)據(jù)處理通道進(jìn)行后續(xù)處理。
4.3 FIFO的控制
振動數(shù)據(jù)存儲在由XILINX提供的FIFO軟核中。FIFO核的存儲深度、數(shù)據(jù)寬度、標(biāo)志位設(shè)置、存儲類型和讀寫端口速率可以在FIFO生成時進(jìn)行設(shè)置,F(xiàn)IFO模塊生成時占用FPGA內(nèi)部的BLOCK RAM,即使存儲容量很小的FIFO也會占用整塊BLOCK RAM。FIFO端口包括輸入輸出端口、讀寫使能、讀寫時鐘及空滿標(biāo)志幾部分。其中,輸入輸出端口與數(shù)據(jù)總線連接用于數(shù)據(jù)傳輸;讀寫使能由控制邏輯驅(qū)動完成一次讀寫操作;讀寫時鐘信號完成讀域或者寫域所有信號的同步;滿標(biāo)志表明由于該FIFO處于滿狀態(tài),寫操作將被忽略,空標(biāo)志表明FIFO處于空狀態(tài),讀操作將不能獲得正確的數(shù)據(jù)。
FIFO控制邏輯進(jìn)行數(shù)據(jù)寫入操作時首先判斷FIFO是否處于滿狀態(tài),如果FIFO處于滿狀態(tài),先從FIFO中讀出一條數(shù)據(jù),然后將新數(shù)據(jù)寫入FIFO中。如果FIFO不處于滿狀態(tài)則直接進(jìn)行寫操作。FIFO讀操作的時機(jī)由DSP控制,DSP內(nèi)的程序首先讀取空狀態(tài)寄存器判斷FIFO中是否存有數(shù)據(jù),如果寄存器顯示FIFO為空則取消讀操作,否則就從FIFO中讀出需要的數(shù)據(jù)。IP核對使能信號的訪問時序有著嚴(yán)格地要求,使能信號必須于讀寫時鐘完全同步,而且控制邏輯將使能信號的長度控制在一個讀寫時鐘周期內(nèi)。
4.4 數(shù)據(jù)的存儲
振動采樣數(shù)據(jù)的數(shù)據(jù)量非常龐大,一旦出現(xiàn)錯位將無法完整復(fù)現(xiàn)信號的原始狀態(tài),因此在對數(shù)據(jù)進(jìn)行存儲的同時,對數(shù)據(jù)進(jìn)行時間標(biāo)記也是十分重要的。時間標(biāo)記在一個完整的記錄周期結(jié)束時進(jìn)行,調(diào)度模塊控制時標(biāo)開關(guān)在所有的FIFO中存入時標(biāo)信息,F(xiàn)IFO中存儲在時標(biāo)以前的數(shù)據(jù)均為本周期的數(shù)據(jù),存儲在時標(biāo)信息以后的數(shù)據(jù)均為下一周期的數(shù)據(jù),時標(biāo)及數(shù)據(jù)記錄格式如表1所示。表中D15,D14位是保留位用于功能擴(kuò)展,D13,D12是表明存儲數(shù)據(jù)是時標(biāo)信號(01、02),或者采樣數(shù)據(jù)(00)。
4.5 數(shù)據(jù)的訪問
DSP進(jìn)行數(shù)據(jù)還原時,訪問程序依據(jù)采集順序先從本周期起始通道開始依次讀出采樣數(shù)據(jù),當(dāng)訪問程序讀取到第一個時標(biāo)數(shù)據(jù)后本周期數(shù)據(jù)讀取完畢,訪問程序繼續(xù)讀取后續(xù)通道的時標(biāo)信息,直至獲得所有通道的時標(biāo)數(shù)據(jù)后表明本次數(shù)據(jù)訪問過程結(jié)束,如果訪問程序連續(xù)獲得了所有通道的時標(biāo)信息表明采樣數(shù)據(jù)為完整有效的數(shù)據(jù),否則說明在采樣過程中存在數(shù)據(jù)丟失的現(xiàn)象,數(shù)據(jù)不可信不能進(jìn)行后續(xù)處理,如果出現(xiàn)數(shù)據(jù)丟失現(xiàn)象則訪問程序?qū)⑺型ǖ罆r標(biāo)數(shù)據(jù)讀出后本次訪問結(jié)束。
5 結(jié)束語
文中設(shè)計了一種基于FPGA的振動信號采集處理系統(tǒng),通過數(shù)據(jù)流管理等手段實(shí)現(xiàn)振動信號的實(shí)時采集處理,本設(shè)計在真實(shí)環(huán)境中進(jìn)行了驗(yàn)證,系統(tǒng)運(yùn)行穩(wěn)定可靠,各項性能指標(biāo)滿足技術(shù)要求。
模擬信號相關(guān)文章:什么是模擬信號
fpga相關(guān)文章:fpga是什么
低通濾波器相關(guān)文章:低通濾波器原理
電荷放大器相關(guān)文章:電荷放大器原理 離子色譜儀相關(guān)文章:離子色譜儀原理
評論