新聞中心

EEPW首頁 > 電源與新能源 > 設(shè)計應(yīng)用 > 便攜式功率分析儀設(shè)計-----硬件設(shè)計(四)

便攜式功率分析儀設(shè)計-----硬件設(shè)計(四)

作者: 時間:2013-06-18 來源:網(wǎng)絡(luò) 收藏

本設(shè)計在FPGA中用AHDL語言編寫了對FIFO復(fù)位及讀寫總體程序,如下:

BEGIN

DEFAULTS

fifo_wclk=gnd;fifo_rclk=gnd;

trig_clr=vcc;fifo_/wen=vcc;

fifo_/ren=vcc;fifo_/reset=vcc; //器默認(rèn)狀態(tài),F(xiàn)IFO讀寫無效

END DEFAULTS;

IF workstate==0 THEN //通道采集關(guān)閉

fifo_/wen=vcc; //關(guān)閉FIFO寫使能

……//FIFO讀時鐘由ARM提供

ELSIF (workstate==1) THEN //通道采集開啟

fifo_/ren=gnd;

fifo_/wen=gnd; //FIFO讀寫使能同時有效

……

由程序可見,當(dāng)workstate=0時,可由程序對FIFO進(jìn)行復(fù)位,或者FIFO不復(fù)位,但是此時可對FIFO進(jìn)行讀操作。一般開始新一輪的采數(shù)之前要對FIFO進(jìn)行一次復(fù)位,以確保FIFO的狀態(tài)正常且為空。當(dāng)FIFO存滿后,也要用到此狀態(tài)將FIFO中的數(shù)據(jù)讀出。當(dāng)workstate=1時,F(xiàn)IFO讀寫均使能:一般在采數(shù)階段要用workstate=1狀態(tài)。本設(shè)計在FPGA中對FIFO復(fù)位及讀寫的觸發(fā)控制采用了兩種模式:

一種為自動觸發(fā)模式,即,當(dāng)調(diào)整數(shù)字觸發(fā)電路的觸發(fā)電平使其低于采樣信號最大值,且高于其最小值時(既數(shù)字觸發(fā)器觸發(fā)時),液晶屏顯示信號波形由觸發(fā)電平所在位置附近啟始,保持顯示信號的穩(wěn)定;當(dāng)不觸發(fā)時,則不對FIFO存儲數(shù)據(jù)加以限制。實現(xiàn)方法如上圖以及數(shù)字觸發(fā)電路原理圖所示,在FIFO清空控制端加入一個trig_fifo控制信號并將其與正常FIFO清空控制信號相或,trig_fifo信號由數(shù)字觸發(fā)電路產(chǎn)生,信號特點是在觸發(fā)出現(xiàn)時產(chǎn)生短暫的低電平,用于對FIFO清空數(shù)據(jù),使FIFO在觸發(fā)到來后,其內(nèi)部只保留觸發(fā)點之后的數(shù)據(jù)。

另一種為正常觸發(fā)方式,即,首先在觸發(fā)信號到來前FIFO存儲一段觸發(fā)前的數(shù)據(jù)并不斷刷新,等待觸發(fā)信號到來,這既是預(yù)觸發(fā)。觸發(fā)信號到來后FIFO停止刷新前端預(yù)觸發(fā)數(shù)據(jù),直接存儲采樣數(shù)據(jù);當(dāng)觸發(fā)信號沒到來是系統(tǒng)則一直等待觸發(fā)。如下:

if (clk'event and clk='1') then

if fifodepth >=0010000000 and trig ='0' then

cntrl='1';

elsif fifodepth >=0010000000 and trig ='1' then

cntrl='0';

else

cntrl='0';

end if;

……

程序中,cntrl信號是讀時鐘控制信號。當(dāng)cntrl=0時,控制關(guān)閉FIFO讀時鐘,當(dāng)cntrl=1時,F(xiàn)IFO的讀寫時鐘相同。由程序可以看出,F(xiàn)IFO首先直接寫入128個數(shù)據(jù)(暫定為FIFO深度的10%),此時FIFO讀時鐘關(guān)閉;當(dāng)FIFO寫入數(shù)據(jù)達(dá)到或超過128個時,打開讀時鐘,此時FIFO中存入一個數(shù)的同時也讀出一個數(shù),F(xiàn)IFO已存入的128個數(shù)據(jù)將不斷被刷新;若信號已經(jīng)觸發(fā)時,這時FIFO沒有讀時鐘,只有寫時鐘,也就是說FIFO處于只寫的狀態(tài),進(jìn)行數(shù)據(jù)存儲。這樣就實現(xiàn)了預(yù)觸發(fā)。

當(dāng)被采樣信號為連續(xù)波信號時,自動觸發(fā)模式能夠很好的穩(wěn)定顯示的波形,方便用戶觀察,但是由于自動觸發(fā)時FIFO里存儲的只能是觸發(fā)之后的數(shù)據(jù),加之各個模塊的延時導(dǎo)致不能顯示出觸發(fā)時刻以及觸發(fā)之前一段時間的數(shù)據(jù),當(dāng)被測信號是窄脈沖信號時將由于不能完整顯示脈沖信號,而使用戶不能了解被測信號的全部特征,而且當(dāng)脈沖信號寬度較窄時,可能因觸發(fā)到FIFO存儲控制信號的延時導(dǎo)致脈沖信號數(shù)據(jù)無法被FIFO存儲。所以在被測信號是窄脈沖信號的,應(yīng)使用正常觸發(fā)方式,利用預(yù)觸發(fā),保證觸發(fā)時刻的信號數(shù)據(jù)能夠顯示出來。

3.4.4時基電路的實現(xiàn)

時基電路是顯示示波部分的重要組成部分,它的作用主要是提供AD的采樣時鐘和FIFO的寫時鐘。

系統(tǒng)源時鐘是由外部晶振提供的標(biāo)準(zhǔn)20MHz頻率信號。由于250MHz時鐘直接分頻產(chǎn)生200MHz時鐘將較為繁瑣,所以我們利用ALTPLL鎖相環(huán)模塊,分別產(chǎn)生250MHz,200MHz頻率信號。將200MHz時鐘經(jīng)過由四個74390和兩個T觸發(fā)器構(gòu)成的二分頻、四分頻器組成的分頻網(wǎng)絡(luò)產(chǎn)生所需要的AD采樣頻率和FIFO寫時鐘。在分析儀的控制面板上有一個時基控制按鈕sec/div,不同的時基檔位下對應(yīng)著不同的采樣頻率。每選擇不同的時基檔位時,時鐘選擇信號clk_s0~clk_s3就會輸出不同的值以選擇與檔位相應(yīng)的采樣時鐘;當(dāng)時基控制設(shè)置在最高采樣率時選擇250MHz采樣時鐘。具體的時基檔位與采樣時鐘以及每個檔位下存儲深度的對應(yīng)關(guān)系如表3-1.

接地電阻相關(guān)文章:接地電阻測試方法



上一頁 1 2 下一頁

關(guān)鍵詞: 功率 測量 控制

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉