關鍵詞:直接數字頻率合成;可編程片上系統;NIOSⅡ
Arbitrary Waveform Generator Based on SOPC
Abstract:This paper describes an arbitrary waveform generator (AWG) based on SOPC, which can not only synthesize sine waveforms, cosine waveforms, square waveforms, triangle waveforms, sawtooth waveforms and other common waveforms, but also generate arbitrary waveforms with data edited and downloaded by PC software. It has advantages of easy control, stable output frequency, high quality waveform and wide bandwidth.
Keywords:DDS;SOPC;NIOSⅡ
1、引言
本設計采用直接數字頻率合成(DDS)技術,通過基于NIOSⅡ的SOPC系統實現一個任意波形發生器。DDS技術是一種新穎的頻率合成技術,具有易于程控,相位連續,輸出頻率穩定度高,頻率轉換速度快和分辨率高等優點。隨著現代電子技術和大規模集成電路的發展,DDS技術得到了飛速的發展,已成為重要的頻率合成技術。SOPC(system on a programmable chip)可編程片上系統[1-2]是一種靈活、高效的SOC解決方案。它具有雙重含義:首先它是片上系統(SOC),由單個芯片完成整個系統的主要邏輯功能;其次它是可編程系統,具有靈活的設計方式,可裁減,可擴充,可升級,并具有軟硬件在系統可編程的功能。本設計通過Altera公司的NiosⅡ嵌入式系統實現SOPC。
2、采用DDS的任意波形發生器
采用DDS技術的任意波形發生器用高速存儲器作為查找表,通過高速D/A轉換器來合成出存儲在存儲器內的波形。所以它不僅能產生各種常見波形,而且還可以利用各種編輯手段,產生傳統函數發生器所不能產生的任意波形。DDS的基本原理如圖1所示[3]。

圖1 DDS的基本原理框圖
圖中的參考時鐘源是一個穩定的晶體振蕩器,用它來同步合成器的各組成部分。相位累加器類似于一個簡單的計數器,它由加法器和寄存器組成。在每一個參考時鐘脈沖輸入的時候,它的輸出就增加一個步長的相位增量值(二進制編碼)。這樣累加器把頻率控制字FSW(Frequency Setting Word)的數據變換成相位抽樣來確定輸出合成頻率的大小。相位增量的大小隨外指令的變化而變化,一旦給定了相位增量,輸出頻率也就確定了。當用這樣的數據尋址時,正弦查找表就把存儲在相位累加器中的抽樣數字值轉換成近似正弦波幅度的數字量函數,然后D/A變換器把數字量變成模擬量。低通濾波器進一步平滑近似正弦波的鋸齒階梯,并衰減不需要的抽樣分量和其他雜散信號。DDS系統除了D/A轉換和濾波器之外全都是數字集成電路,因此系統容易實現集成化和小型化。
DDS輸出頻率和其他一些參數之間的關系如下:
fs:系統時鐘頻率,對應系統時鐘周期為Ts;
fo:輸出波形頻率,對應輸出信號周期為To;
FSW:頻率控制字,其值用Pfsw表示。
設相位累加器的長度是N位,控制波形存儲器產生一整周正弦波輸出是W位(N位中的W位,W<N)。顯然,2w相當于360o(2π rad),因此W位中的MSB〔位有效位)相當于180o (π rad); W位中的LSB(有效位)相當于360o(2π /2W rad)。同樣,N位中的LSB相當于2π /2N rad。這個2π /2N rad就是小的相位增量。于是, Pfsw對應的相位增量就是Pfsw