《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 業界動態 > 基于FPGA的直接數字頻率合成器的設計和實現

基于FPGA的直接數字頻率合成器的設計和實現

2008-10-30
作者:周俊峰 陳 濤

  摘? 要: 介紹了利用Altera的FPGA器件(ACEX EP1K50)實現直接數字頻率合成器的工作原理、設計思路、電路結構和改進優化方法。?

  關鍵詞: 直接數字頻率合成(DDS)? 現場可編程門陣列(FPGA)

?

  直接數字頻率合成(Direct Digital Frequency Synthesis,即DDFS,一般簡稱DDS)是從相位概念出發直接合成所需要波形的一種新的頻率合成技術。?

  目前各大芯片制造廠商都相繼推出采用先進CMOS工藝生產的高性能和多功能的DDS芯片(其中應用較為廣泛的是AD公司的AD985X系列),為電路設計者提供了多種選擇。然而在某些場合,專用的DDS芯片在控制方式、置頻速率等方面與系統的要求差距很大,這時如果用高性能的FPGA器件設計符合自己需要的DDS電路就是一個很好的解決方法。?

  ACEX 1K是Altera公司著眼于通信、音頻處理及類似場合的應用而推出的FPGA器件芯片系列,總的來看將會逐步取代FLEX 10K 系列,成為首選的中規模器件產品。它具有如下特點:?

  (1)ACEX 1K采用查找表(LUT)和EAB(嵌入式陣列塊)相結合的結構,特別適用于實現復雜邏輯功能和存儲器功能,例如通信中應用的數字信號處理、多通道數據處理、數據傳遞和微控制等。?

  (2)典型門數為1萬到10萬門,有多達49152位的RAM(每個EAB有4096位RAM)。?

  (3)器件內核采用2.5V電壓,功耗低,能夠提供高達250MHz的雙向I/O功能,完全支持33MHz和66MHz的PCI局部總線標準。?

  (4)具有快速連續式延時可預測的快速通道互連(Fast Track);具有實現快速加法器、計數器、乘法器和比較器等算術功能的專用進位鏈和實現高速多扇入邏輯功能的專用級連鏈。?

  ACEX EP1K50具有典型門數50000門,邏輯單元2880個,嵌入系統塊10個,完全符合單片實現DDS電路的要求。因此采用它設計DDS電路,設計工具為Altera的下一代設計工具Quartus軟件。?

1 DDS電路工作原理?

  圖1所示是一個基本的DDS電路的工作原理框圖。

?

?

  DDS的工作原理是以數控振蕩器的方式產生頻率、相位可控制的正弦波。電路一般包括基準時鐘、頻率累加器" title="累加器">累加器、相位累加器" title="相位累加器">相位累加器、幅度/相位轉換電路" title="轉換電路">轉換電路、D/A" title="D/A">D/A轉換器和低通濾波器(LPF)。頻率累加器對輸入信號進行累加運算,產生頻率控制數據X(frequency data或相位步進量)。相位累加器由N位全加器和N位累加寄存器級聯而成,對代表頻率的2進制碼進行累加運算,是典型的反饋電路,產生累加結果Y。幅度/相位轉換電路實質上是一個波形存儲器,以供查表使用。讀出的數據送入D/A轉換器和低通濾波器。?

  具體工作過程如下:?

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

  相位累加器在基準時鐘的作用下,進行線性相位累加,當相位累加器累加滿量時就會產生一次溢出,這樣就完成了一個周期,這個周期也就是DDS信號的一個頻率周期。?

  DDS輸出信號的頻率由下式給定:?

??? Fout=(X/Y)×Fclk???????????????????????????? ?? (1)?

  假定基準時鐘為70MHz,累加器為16位,則?

??? Y=216=65536?

??? Fclk=70MHz?

??? 再假定X=4096,則?

??? Fout=(4096/65536)×70=4.375MHz?

??? 可見,通過設定相位累加器位數、頻率控制字X和基準時鐘的值,就可以產生任一頻率的輸出。DDS的頻率分辨率定義為:?

  Fout=Fclk/Y???????????????????????????????????? (2)?

  由于基準時鐘一般固定,因此相位累加器的位數就決定了頻率分辨率。如上面的例子,相位累加器為16位,那么頻率分辨率就可以認為是16位。位數越多,分辨率越高。?

2 利用FPGA設計DDS電路?

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

  另一種提高速度的辦法是采用流水線技術" title="流水線技術">流水線技術,即把在一個時鐘內要完成的邏輯操作分成幾步較小的操作,并插入幾個時鐘周期來提高系統的數據吞吐率。但是流水線技術比較適合開環結構的電路,要用在累加器這樣的閉環反饋的電路中必須謹慎考慮,以保證設計的準確無誤。?

  綜合考慮后,相位累加器采用進位鏈和流水線技術相結合的辦法來實現,這樣既能保證較高的資源利用率,又能大幅提高系統的性能和速度。?

  相位/幅度轉換電路是DDS電路中的另一個關鍵部分,設計中面臨的主要問題就是資源的開銷。該電路通常采用ROM結構,相位累加器的輸出是一種數字式鋸齒波,通過取它的若干位作為ROM的地址輸入,而后通過查表和運算,ROM就能輸出所需波形的量化數據。?

  在FPGA(針對Altera公司的器件)中,ROM一般由EAB實現,并且ROM表的尺寸隨著地址位數或數據位數的增加成指數遞增關系,因此在滿足信號性能的前提條件下,如何減少資源的開銷就是一個重要的問題。在實際設計時我們充分利用了信號周期內的對稱性和算術關系來減少EAB的開銷。?

  在實際設計中,根據項目具體要求,還設計了一個系統控制電路。?

??? 綜合以上考慮,整個DDS電路的電路結構如圖2所示。?

?

?

  采用Verilog硬件描述語言實現整個電路,不僅利于設計文檔的管理,而且方便設計的修改和擴充,還可以在不同FPGA器件之間實現移植。?

  由圖2可以清楚地看出,整個系統只加入了一級流水線來提高速度。需要說明的是,在ROM和系統控制電路之間也可以加入流水線,但實際仿真表明效果不明顯,反而消耗了更多的資源,因此綜合考慮后只加入一級流水線。?

  為了進一步提高速度,在設計相位累加器模塊和加法器模塊時并沒有采用FPGA單元庫中的16~32位加法器,盡管它們可以很容易地實現高達32位的相位累加器,但當工作頻率較高時,它們較大的延時不能滿足速度要求,故不可取。因此,具體實現時我們分別用了4個和8個4位的累加器以流水線的方式實現16位和32位累加器和加法器。比較仿真結果表明采用流水線技術可以大大提高系統的工作速度。?

??? 由前面分析可知,相位/幅度變換電路是比較難實現的電路,不僅要解決速度的問題,還要考慮節省資源的問題。如何有效利用FPGA的有限資源,是實現相位/幅度變換電路的最關鍵的一點。?

  在實際運用中,我們將著眼點主要放在了節省資源上,相位/幅度轉換電路中的主要問題在于ROM的大小。由于設計的DDS電路主要用于數字視頻編碼中,只需要輸出余弦(正弦)波,故考慮了以下的優化方式:余弦波信號對于x=π直線成偶對稱,基于此可以將ROM表減至原來的1/2,再利用左半周期內,波形對于點(π/2,0)成奇對稱,進一步將ROM表減至最初的1/4, 因此通過一個正弦碼表的前1/4周期就可以變換得到正弦和余弦的整個周期碼表。這樣就節省了將近3/4的資源,非常可觀。?

  系統控制電路主要是根據是否需要相位調制(BPSK)及頻率調制(BFSK),系統時鐘是否需要分頻得到所需的基準時鐘,頻率碼的輸入方式是串行、并行還是微機接口方式,如何控制輸出等具體要求而設計的。這一電路可以靈活設計,凸現FPGA的優點所在。?

3 利用ACEX EP1K50 實現的DDS電路和專用DDS芯片的比較?

  (1)系統速度:用ACEX EP1K50實現DDS電路,16位精度(分辨率)的DDS電路最高頻率達到148MHz,32位精度(分辨率)的電路最高工作頻率為107MHz,可以看出這個頻率已經是比較高了;而采用專用DDS芯片,頻率可在數十至數百兆赫茲之間,如AD9850 為125MHz,AD9851為180MHz,比較新的AD9854已經達到300MHz。用FPGA實現的DDS電路能工作在如此之高的頻率主要依賴于ACEX EP1K50器件先進的結構特點,以及前面提出的多種優化措施。?

  (2)可控性:雖然有的專用DDS芯片的功能也比較多,但控制方式卻是固定的,因此不一定是我們所需要的。而利用ACEX EP1K50器件則可以根據需要方便地實現各種比較復雜的調頻、調相和調幅功能,具有良好的實用性。?

  (3)信號質量:專用DDS芯片由于采用特定的集成工藝,內部數字信號抖動很小,可以輸出高質量的模擬信號;利用ACEX EP1K50器件也能輸出較高質量的信號,雖然達不到專用DDS芯片的水平,但信號精度誤差在允許范圍之內。?

  (4)成本:專用DDS芯片價格較高,而將用FPGA器件設計的DDS電路嵌入到系統中并不會使成本增加多少。?

??? 利用Altera公司的ACEX EP1K50器件,通過各種優化措施,設計開發的DDS電路,達到了預期的目的,具有較高的性價比。?

參考文獻?

1 張厥盛,曹麗娜.鎖相與頻率合成技術.成都:電子科技大學出版社, 1995?

2 A Direct-Digital Synthesizer with Improved Spectral Performance,IEEE Tran. on? Communication,1991;39(7)?

3 徐立成. 直接數字合成技術的應用.艦用雷達和對抗,1991(2)?

4 Altera Inc.DATA BOOK.Altera Corporation,2001?

5 夏宇聞.復雜數字電路與系統的Verilog HDL設計技術.北京:北京航空航天大學出版社,1998?

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 免费无遮h在线网站大全 | 日韩视| 欧美日韩在线观看精品 | 久久久www成人免费精品 | 亚洲激情成人 | 香蕉视频你懂的 | 成人毛片免费视频 | 三级中文字幕永久在线视频 | 最近中文字幕无免费视频 | 在线看片亚洲 | 国产精品成人观看视频国产 | 久久国产午夜精品理论片34页 | 国产日韩欧美一区二区三区在线 | 最近最新中文字幕免费高清1 | 一一本大道香蕉大 | 免费黄色小视频网站 | 免费观看一区二区 | 不卡一级aaa全黄毛片 | 黄色免费视屏 | 亚洲黄色一级 | 亚洲激情小视频 | 精品欧美一区二区三区在线观看 | 日韩欧美亚洲国产高清在线 | 天天夜夜人人 | 日韩性freexxxx在线观看 | 成人免费a视频 | 91国内精品久久久久怡红院 | 欧美同性videos可免费 | 亚洲丁香网 | 国产亚洲欧美在在线人成 | 国产成人啪精品视频免费软件 | 免费观看又黄又刺激的视频网站 | 亚洲欧美v国产一区二区 | 成人网18免费网站在线 | 在线观看黄p免费 | 男女在线无遮挡毛片免费 | 香蕉官网 | 亚洲视频中文 | 日韩高清在线播放 | 中文有码中文字幕免费视频 | 在线国产一区 |