關(guān) 閉

新聞中心

EEPW首頁 > 工控自動化 > 設(shè)計應(yīng)用 > 基于FPGA的直接數(shù)字頻率合成器的設(shè)計實(shí)現(xiàn)

基于FPGA的直接數(shù)字頻率合成器的設(shè)計實(shí)現(xiàn)

作者: 時間:2008-11-26 來源:網(wǎng)絡(luò) 收藏

  具體工作過程如下:

  每來一個時鐘脈沖,N位加法器將頻率控制數(shù)據(jù)X與累加寄存器輸出的累加相位數(shù)據(jù)相加,把相加后的結(jié)果 送至累加寄存器的輸入端。累加寄存器一方面將在上一時鐘周期作用后所產(chǎn)生的新的相位數(shù)據(jù)反饋到加法器的輸入端,以使加法器在下一時鐘的作用下繼續(xù)與頻率控制數(shù)據(jù)X相加;另一方面將這個值作為取樣地址值送入幅度/相位轉(zhuǎn)換電路(即圖1中的波形存儲器),幅度/相位轉(zhuǎn)換電路根據(jù)這個地址值輸出相應(yīng)的波形數(shù)據(jù)。最后經(jīng)數(shù)/模轉(zhuǎn)換和將波形數(shù)據(jù)轉(zhuǎn)換成所需要的模擬波形。

  相位在基準(zhǔn)時鐘的作用下,進(jìn)行累加,當(dāng)相位累加滿量時就會產(chǎn)生一次溢出,這樣就完成了一個周期,這個周期也就是合成信號的一個頻率周期。

  輸出信號的頻率由式(1)給定:

  =(X/Y)× (1)

  例如,我們假定基準(zhǔn)時鐘為70 MHz,為16位,則:

  Y=216= 65,536

  =70MHz

  再假定X=4096,則:

  =4096/65,536×70

  =4.375MHz

  可見,理論上通過設(shè)定相位累加器位數(shù)頻率控制字X和基準(zhǔn)時鐘的值,就可以產(chǎn)生任一頻率的輸出。而DDS的頻率分辨率定義為:

  / Y (2)

  由于基準(zhǔn)時鐘一般固定,因此相位累加器的位數(shù)就決定了頻率分辨率。比如上面的例子中,相位累加器為16位,那么頻率分辨率就可以認(rèn)為是16位。位數(shù)越多,分辨率越高。

  利用 FPGA(ACEX EP1K50)

  設(shè)計DDS

  在用FPGA設(shè)計DDS電路的時候,相位累加器是決定DDS性能的一個關(guān)鍵部分。小的累加器可以利用ACEX器件的進(jìn)位鏈得到快速、高效的電路結(jié)構(gòu)。然而由于進(jìn)位鏈必須位于臨近的LAB(邏輯陣列塊)和LE(邏輯單元)內(nèi),因此長的進(jìn)位鏈勢必會減少其它邏輯使用的布線資源,同時過長的進(jìn)位鏈也會制約整個系統(tǒng)速度的提高。

  另一種提高速度的辦法就是采用流水線技術(shù),即把在一個時鐘內(nèi)要完成的邏輯操作分成幾步較小的操作,并插入幾個時鐘周期來提高系統(tǒng)的數(shù)據(jù)吞吐率。但是流水線技術(shù)比較適合開環(huán)結(jié)構(gòu)(open-loop)的電路,要用在累加器這樣的閉環(huán)反饋(close-loop feedback)的電路中必須謹(jǐn)慎考慮,以保證設(shè)計的準(zhǔn)確無誤。

  綜合考慮后,這一部分決定采用進(jìn)位鏈和流水線技術(shù)相結(jié)合的辦法,這樣既能保證較高的資源利用率,又能大幅提高系統(tǒng)的性能和速度。



評論


相關(guān)推薦

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

關(guān)閉