基于FPGA的高精度相位測量儀的設(shè)計_第1頁
基于FPGA的高精度相位測量儀的設(shè)計_第2頁
基于FPGA的高精度相位測量儀的設(shè)計_第3頁
基于FPGA的高精度相位測量儀的設(shè)計_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、基于FPGA的高精度相位測量儀的設(shè)計    關(guān)鍵字:FPGA 高精度 相位測量儀引言 隨著集成電路的發(fā)展,利用大規(guī)模集成電路來完成各種高速、高精度電子儀器的設(shè)計已經(jīng)成為一種行之有效的方法。采用這種技術(shù)制成的電子儀器電路結(jié)構(gòu)簡單、性能可靠、測量精確且易于調(diào)試。本文采用Altera CycloneII系列FPGA器件EP2C5,設(shè)計了高精度相位測量儀。測量相位差所需的信號源在FPGA內(nèi)部運用DDS原理生成,然后通過高速時鐘脈沖計算兩路正弦波過零點之間的距離,最后通過一定的運算電路得到最終相位值,測相精度為1°。 系統(tǒng)硬件設(shè)計 該基于FPG

2、A的相位測量儀,硬件組成包括FPGA、高速DAC以及電壓比較器等部分。其系統(tǒng)硬件結(jié)構(gòu)如圖1所示。                                          

3、                           圖1 相位測量儀硬件結(jié)構(gòu)圖  該測量儀由按鍵來預(yù)置正弦波的頻率及相位。通過FPGA內(nèi)部的控制模塊來計算并產(chǎn)生正弦波所需的頻率控制字和相位控制字,然后將控制字輸入DDS模塊以產(chǎn)生波形數(shù)據(jù)輸出,經(jīng)10位高速DAC THS5651輸出兩路正弦波。在測相

4、位差時,將圖1中移相正弦波輸出分為兩路,其中一路直接經(jīng)電壓比較器LM311整形后輸入測相模塊;另外一路先通過被測電路,然后再經(jīng)電壓比較器整形后輸入測相模塊,從而得到正弦波經(jīng)被測電路后產(chǎn)生的相移。 基于FPGA的硬件電路設(shè)計 DDS移相信號源設(shè)計 DDS的基本原理是利用采樣定理,通過查表法產(chǎn)生波形,本系統(tǒng)的移相信號發(fā)生模塊如圖2所示。                      &

5、#160;                                                  

6、     圖2 基于DDS的數(shù)字移相信號發(fā)生模塊框圖  圖2中,加法器與寄存器級聯(lián)構(gòu)成相位累加器。通過時鐘脈沖觸發(fā)相位累加器,從而將頻率控制字不斷累加。相位累加器產(chǎn)生一次溢出,就完成一次周期性的動作,這個周期就是DDS合成信號的一個頻率周期。 用相位累加器輸出的數(shù)據(jù)作為波形存儲器的相位取樣地址,把存儲在波形存儲器內(nèi)的波形抽樣值經(jīng)查找表查出,從而完成相位到幅值的轉(zhuǎn)換。然后將波形存儲器的輸出送到DAC,通過DAC將數(shù)字量形式的波形幅值轉(zhuǎn)換成合成頻率的模擬波形。 圖2中FWORD是10位頻率控制字;PWORD是10位相移控制字,用

7、來控制正弦信號輸出的相移量;SINROM用來存放正弦波數(shù)據(jù),有10位數(shù)據(jù)線和10位地址線。其中數(shù)據(jù)文件是MIF文件(數(shù)據(jù)深度1024,數(shù)據(jù)類型為10進(jìn)制數(shù)),可由Matlab生成,存放數(shù)據(jù)的單元采用定制ROM的方法生成;POUT和FOUT都為10位輸出,分別和兩個高速DAC THS5651相連。 控制模塊的生成 在產(chǎn)生波形的過程中,DDS模塊所需的頻率和相位控制字由在FPGA內(nèi)部編寫的控制模塊來給定??刂颇K的頂層原理框圖如圖3所示。             

8、60;                 圖3 控制模塊頂層原理框圖  圖3中,B1、C10、D100、P1K分別為頻率步進(jìn)輸入端;Re為復(fù)位端;PW1、PW10分別為1? 10?南轡徊澆?淙搿渲衒bcout為頻率控制字計算模塊,完成由頻率步進(jìn)值到二進(jìn)制頻率控制字的轉(zhuǎn)換。 cout360為相位輸入計算模塊,由相位輸入端的脈沖輸入計算出實際的移相值(0麀359 )。add_data_rom是

9、存放相位控制字的ROM,其數(shù)據(jù)文件是MIF文件,內(nèi)部360個地址值分別對應(yīng)0麀359?南轡 ,每個地址中的數(shù)據(jù)為每個相位值對應(yīng)的正弦波ROM的地址值。由于正弦波ROM將一個波形分成了1024個點,則0麀359?南轡恢刀雜薙INROM中的360個點??紤]到1024/360=2.84非整,為了減小移相誤差,提高移相精度,本設(shè)計中采用分段處理的方法,將360個地址分成60組。第15、30、45、60組的6個地址中點與點之間的距離都為3;其余各組前5點之間的點距為3,第5點與第6點之間的點距為2。 相位測量模塊設(shè)計原理 本系統(tǒng)的相位測量采用由高速時鐘脈沖測量兩路波形過零點之間距離的方法。相位

10、測量模塊原理框圖如圖4所示。                                                

11、60;   圖4 相位測量模塊原理框圖  圖4中,A、B為兩路方波輸入,CLK為50MHz時鐘輸入,dfd2塊為下降沿觸發(fā)的2分頻模塊。A、B經(jīng)2分頻的目的是使測相范圍由0麀180?蟮 0麀360?OR為異或門,其輸出信號的脈寬為(b-a)。clxw為一高速計數(shù)器,通過25MHz的高頻時鐘來計算(b-a)的長度。fb360模塊為倍乘模塊,主要完成(b-a)×360的運算。bpsc模塊為分頻模塊,將25MHz的時鐘信號進(jìn)行(b-a)×360倍的分頻,使其輸出信號脈寬為Tclk×(b-a)×360(

12、Tclk為25MHz的時鐘周期)。xwc為相位差計數(shù)模塊,通過A相輸入脈沖,計算Tclk×(b-a) ×360的長度,然后完成(b-a)×360/a的計算,進(jìn)而得出相位差值輸出,同時該模塊還將測得的相位差值送到數(shù)碼管顯示。 在對該模塊進(jìn)行仿真時,人為設(shè)定了頻率為10KHz,相位差為72。 系統(tǒng)驗證調(diào)試 在整個系統(tǒng)的驗證中,由外部按鍵通過控制模塊來設(shè)定波形的頻率和相位值,并通過將DDS模塊的輸出端FOUT和POUT外接10位DAC THS5651來產(chǎn)生波形。通過在示波器觀察兩路波形發(fā)現(xiàn),波形比較穩(wěn)定,頻率與設(shè)定值一致。此外,為了測量DDS模塊產(chǎn)生的移相是否正確,還人為的通過相位輸入端設(shè)定相移值,并將參考波形輸出端和移相輸出端輸出的波形經(jīng)整形后,用測相模塊測量兩路波形的相位差,通過硬件調(diào)試發(fā)現(xiàn)測得的相位差與設(shè)定的相位差完全一致,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論