基于FPGA的高精度相位測量儀的設計方案
引言
本文引用地址:http://cafeforensic.com/article/151092.htm隨著集成電路的發(fā)展,利用大規(guī)模集成電路來完成各種高速、高精度電子儀器的設計已經成為一種行之有效的方法。采用這種技術制成的電子儀器電路結構簡單、性能可靠、測量精確且易于調試。本文采用AlteraCycloneII系列FPGA器件EP2C5,設計了高精度相位測量儀。測量相位差所需的信號源在FPGA內部運用DDS原理生成,然后通過高速時鐘脈沖計算兩路正弦波過零點之間的距離,最后通過一定的運算電路得到最終相位值,測相精度為1°。
系統(tǒng)硬件設計
該基于FPGA的相位測量儀,硬件組成包括FPGA、高速DAC以及電壓比較器等部分。其系統(tǒng)硬件結構如圖1所示。
圖1相位測量儀硬件結構圖
該測量儀由按鍵來預置正弦波的頻率及相位。通過FPGA內部的控制模塊來計算并產生正弦波所需的頻率控制字和相位控制字,然后將控制字輸入DDS模塊以產生波形數據輸出,經10位高速DACTHS5651輸出兩路正弦波。在測相位差時,將圖1中移相正弦波輸出分為兩路,其中一路直接經電壓比較器LM311整形后輸入測相模塊;另外一路先通過被測電路,然后再經電壓比較器整形后輸入測相模塊,從而得到正弦波經被測電路后產生的相移。
基于FPGA的硬件電路設計
DDS移相信號源設計
DDS的基本原理是利用采樣定理,通過查表法產生波形,本系統(tǒng)的移相信號發(fā)生模塊如圖2所示。
圖2基于DDS的數字移相信號發(fā)生模塊框圖
圖2中,加法器與寄存器級聯構成相位累加器。通過時鐘脈沖觸發(fā)相位累加器,從而將頻率控制字不斷累加。相位累加器產生一次溢出,就完成一次周期性的動作,這個周期就是DDS合成信號的一個頻率周期。
用相位累加器輸出的數據作為波形存儲器的相位取樣地址,把存儲在波形存儲器內的波形抽樣值經查找表查出,從而完成相位到幅值的轉換。然后將波形存儲器的輸出送到DAC,通過DAC將數字量形式的波形幅值轉換成合成頻率的模擬波形。
圖2中FWORD是10位頻率控制字;PWORD是10位相移控制字,用來控制正弦信號輸出的相移量;SINROM用來存放正弦波數據,有10位數據線和10位地址線。其中數據文件是MIF文件(數據深度1024,數據類型為10進制數),可由Matlab生成,存放數據的單元采用定制ROM的方法生成;POUT和FOUT都為10位輸出,分別和兩個高速DACTHS5651相連。
控制模塊的生成
在產生波形的過程中,DDS模塊所需的頻率和相位控制字由在FPGA內部編寫的控制模塊來給定。控制模塊的頂層原理框圖如圖3所示。
圖3控制模塊頂層原理框圖
評論