數字頻率合成器的FPGA實現
摘要:介紹了DDFS的原理和Altera公司的FPGA器件ACEX 1K的主要特點,給出了用ACEX 1K系列器件EP1K10TC144-1實現數字頻率合成器的工作原理、設計思路、電路結構和仿真結果。1 概述
1971年,美國學者J.Tierncy,C.M.Rader和B.Gold提出了以全數字技術,從相位概念出發直接合成所需波形的一種新的頻率合成方法。限于當時的技術和器件水平,它的性能指標尚不能與已有技術相比,故未受到重視。近30年間,隨著集成電路技術和器件水平的提高,一種新的頻率合成技術——直接數字頻率合成(DDFS)得到了飛速的發展,它以有別于其它頻率合成方法的優越性能和特點成為現代頻率合成技術中的佼佼者。
隨著微電子技術的發展?現場可編程門陣列?FPGA?器件得到了飛速發展。由于該器件具有工作速度快,集成度高和現場可編程等優點,因而在數字信號處理中得到了廣泛應用,越來越受到硬件電路設計工程師們的青睞。直接數字頻率合成(DDFS)技術以其具有頻率分辨率高,頻率變換速度快,相位可連續線性變化等特點,而在數字通信系統中被廣泛采用。本文基于DDFS的基本原理,給出了利用AL-TERA公司的FPGA芯片(ACEX 1K系列EP1K10TC144-1器件)完成DDFS系統設計的具體方法。
ACEX 1K系列器件是Altera公司著眼于通信(如Xdsl?路由器等)、音頻處理及類似場合的應用而推出的新型芯片系列。ACEX 1K系列器件具有以下特性:
(1)采用查找表(LUT)和EAB相結合的結構模式,可提供高效低功耗的優良性能。因為LUT結構適用于實現高效的數據通道、增強型寄存器、數學運算及數字信號處理設計,而EAB結構可實現復雜的邏輯功能和存儲器功能。
(2) 密度高,典型門數為1萬到10萬門,有多達49152位的RAM(每個EAB有4096個RAM)。
(3)系統內核采用2.5V電壓,I/O腳可支持2.5V/3.5V/5.0V多電壓標準;器件功耗低;具有高達250MHz的雙向I/O功能;完全支持33MHz的PCI總線標準;內置JTAG邊界掃描電路;不需測試矢量和掃描鏈即可對所有器件進行100%的功能測試。
?4?具有快速連續式延時可預測的快速通道互連(FAST TRACK);能實現快速加法器、計數器和比較器等算術運算功能;具有專用鏈和實現高速多扇入邏輯功能的專用級鏈;具有能實現內部三態總線的三態仿真;具有多達6個全局時鐘信號和4個全局清除信號。
(5)每個引腳都有獨特的三態輸出使能控制;可編程輸出的壓擺率控制可以減少電平轉換產生的噪聲;引腳與引腳間具有用戶可選的鉗位電路;支持熱插拔操作。
2 DDFS基本原理
DDFS技術是一種可把一系列數字量形式信號通過DAC轉換成模擬量形式信號的合成技術。目前使用最廣泛的一種DDFS方式是利用高速存儲器作查尋表,然后通過高速DAC產生已用數字形式存入的正弦波。圖1是DDFS的基本原理圖。
2.1 相位累加器
相位累加器由N位加法器與N位累加寄存器級聯構成。時鐘脈沖每觸發一次,加法器便將頻率控制數據與累加寄存器輸出的累加相位數據相加,然后把相加后的結果送至累加寄存器的數據輸入端。累加寄存器將加法器在上一個時鐘作用后所產生的新相位數據反饋到加法器的輸入端,以使加法器在下一個時鐘的作用下繼續與頻率控制數據相加。這樣,相位累加器在參考時鐘的作用下將進行線性相位累加,相位累加器累加滿量時,就會產生一次溢出,以完成一個周期性的動作,這個周期就是DDFS合成信號的一個頻率周期,累加器的溢出頻率就是DDFS輸出的信號頻率。
2.2 相位-幅值轉換
用相位累加器輸出的數據作為取樣地址來對正弦波波形存儲器進行相位-幅值轉換,即可在給定的時間上確定輸出的波形幅值。
2.3 數模轉換
通過DAC可將數字量形式的波形幅值轉換成所要求的合成頻率模擬量形式信號,低通濾波器用于衰減和濾除不需要的取樣分量,以便輸出頻譜純凈的正弦波信號。
對于計數容量為2N的相位累加器和具有M個相位取樣的正弦波波形存儲器,若頻率控制字為K,則DDS系統輸出信號的頻率為:fo=fc×K/2N,而頻率分辨率則為:Δf=fomin=fc/2N。3 基于FPGA的DDFS結構設計
圖2是利用DDFS原理設計的一個信號源發生器的結構框圖。圖中,FPGA用來控制輸出波形的頻率、相位和波形的選擇。波形數據的存放有兩種形式,一種是將固定波形數據存放在EEPROM里,主要有正弦波,三角波,鋸齒波?包括半正弦波,半三角波,半鋸齒波?數據。而對于特殊的波形,則通過上位機下載到RAM里,然后從RAM里讀取數據。
該系統在工作時,首先由上位機把控制命令和數據參數通過USB接口用AT96總線傳給FPGA。如果是固定波形,就從EEPROM中讀取數據,否則就從RAM中讀取數據。數據傳送給FPGA后即可等待觸發信號,觸發信號由時基卡或軟件給出。觸發信號到來之后,就開始讀取數據并輸出波形。同時由FPGA給上位機一個狀態位,該狀態位可用于表示發送波形是正在發送,還是已經發送結束了。
信號源的輸出頻率范圍分為如下幾檔:0.001Hz~1Hz? 1Hz~10Hz? 10Hz~100Hz;100Hz~200Hz,步進為1/1000。之所以分檔控制,是為了保證輸出波形頻率具有更高的精度,在輸出波形頻率較低時可對數據不抽點,頻率較高時應進行抽點。要達到較高的頻率精度,必須利用數字頻率合成器(DDFS)來實現對輸出波形頻率的控制?并按頻率要求對相位增量進行累加,然后以累加相位值作為地
【數字頻率合成器的FPGA實現】相關文章:
實現直接數字頻率合成器的三種技術方案03-19
新型數字化可編程頻率合成器03-19
數字下變頻技術的研究及其FPGA實現03-07
基于FPGA的IPV6數字包配置實現03-07
WCDMA主同步的FPGA實現03-07
基于Delta-Sigma調制的分數頻率合成器的研究03-07
基于FPGA的HDLC通信模塊的實現05-14