近乎完美的DDS正弦波訊號音產生器

作者:現場應用工程師Patrick Butler


簡介

在測試和驗證解析度高於16位元的高精度快速類比數位轉換器(ADC)的交流性能時,需要用到近乎完美的正弦波產生器,該產生器至少支援0 kHz至20 kHz音訊頻寬。通常會使用價格高昂的實驗室儀器儀錶來進行這些評估和特性表徵,例如Audio Precision提供的音訊分析儀AP27xx或APx5xx系列。大多數情況下,24位元或更高解析度的現代高速SAR和寬頻Σ-Δ ADC都採用單電源和全差分輸入,因此要求用於DUT的訊號源具備準確的直流和交流性能,同時提供全差分輸出(180°錯相)。如此一來,這款交流產生器的雜訊和失真水準應該遠優於這些ADC的規格,根據大部分供應商提供的規格,其本底雜訊水準遠低於 –140 dBc,失真水準低於–120 dBc,輸入訊號音訊率為1 kHz或2 kHz,最高可達20 kHz。有關適合高解析度頻寬ADC的典型測試台的典型測試配置,請參考圖1。最關鍵的元件就是正弦波產生器(單訊號音或多訊號音),其中基於軟體的直接數位頻率合成器(DDS)可以提供完全的靈活性、極高的頻率解析度和時脈同步性能,利用資料擷取系統來執行相關取樣,以避免洩漏和FFT窗口濾波。

圖1.基於IEEE 1241標準的典型ADC(ac)測試設定的處理鏈。DDFS能夠讓整個測量系統完全實現數位化,具備多種優勢,包括完全的靈活性和相關取樣採集

因為成本只有音訊精密分析儀的幾分之一,所以能夠基於直接數位頻率合成(DDFS)原理設計非常精準的正弦波產生器,但需要透過軟體在SHARC®處理器等浮點DSP處理器上實現。一個相當快的浮點DSP將能滿足即時性要求,以及所有演算法和處理條件,以達到先進的SAR ADC所設置的失真和雜訊性能水準。透過利用SHARC內核架構的全字資料長度(32位元或64位元定點格式)來進行NCO相位累加,利用專有的40位元浮點擴展精度來執行正弦近似函數,以及利用數位濾波器來確定頻譜形狀,量化效應(回轉雜訊和截斷雜訊)得到大幅降低,與用於訊號重構的數位類比轉換器(DAC)缺點相比,這種效應可以忽略不計。

直接數位頻率合成

1970年4月,Joseph A. Webb1提出了數位訊號產生器頻率合成器的專利申請,其中描述了有關DDS生成包括正弦波等各種模擬波形的考慮因素,只需使用數個數位邏輯模組即可實現。之後,Tierney等人2在1971年初發表了論文(後來成為大家頻繁引用的參考文獻),闡述了透過深化DDS操作進行正交生成來實現直接數位頻率生成,以及採樣系統理論相關局限性(相位截斷和頻率規劃)問題。隨後出現的實際應用大部分依賴於分立式標準邏輯IC,例如TTL 74xx或ECL 10K系列。後來在不到10年的時間裡,Stanford Telecom、Qualcomm、Plessey和ADI等紛紛推出了完全整合式解決方案,例如ADI的AD9950和AD9955。這些邏輯IC旨在實現速度、功耗和成本之間的較佳平衡,其架構基於查閱資料表(LUT),以確保在有限相位、頻率和幅度解析度下實現相位-正弦幅度轉換。如今,ADI仍然是DDS獨立積體電路的最大供應商,可能也是最獨特的供應商,而當前的數控振盪器(NCO)往往都整合到AD9164AD9174之類RF DAC中。雖然這些元件在多GHz頻寬上具備出色的雜訊和線性度性能,但它們都不適合測試中等速度、高解析度ADC,例如LTC2378-20AD4020AD7768

與基於PLL的傳統頻率合成器相比,NCO和DDS的顯著優勢包括:極高的頻率解析度、快速靈敏性,以及可輕鬆生成完美正交的正弦/餘弦波形。此外,還提供寬頻寬範圍和高直流精度。其工作原理基於數位訊號處理和採樣系統理論,數位特性支援對輸出訊號的相位、頻率和幅度實施全數位獨立控制。圖2所示的框圖顯示傳統DDS的架構,該DDS由三大功能模組組成:

  • N位相位累加器;
  • 相位-正弦幅度轉換器,由W位截取相位輸入字表徵特性;
  • D位DAC及其相關重構濾波器。

圖2.NCO的主要功能部分,以及與完整的直接數位頻率合成器的區別,其中包括重構DAC和其相關的AAF。NCO部分可用於測試或模擬DAC

相位累加器由簡單的N位加法器結合暫存器構成,暫存器的內容按照採樣時脈FCLK的速率,以輸入相位增量Δθ(通常也稱為頻率調諧字,FTW)更新。累加器會定期溢出,在採樣或參考時脈FCLK和DDS輸出頻率FOUT之間像小數分頻器一樣運行,或像齒輪箱一樣運行,分頻比為:

equation1

溢出速率為生成的波形提供輸出頻率,使得:

equation2

其中0 ≤ FTW ≤ 2N–1。因為分頻器的原因,NCO輸出端的參考或採樣fS時脈相位雜訊的影響會降低

equation3

相位累加器暫存器的輸出表示生成波形的電流相位。每個分立式累加器輸出相位值然後通過相位-正弦或相位-餘弦映射引擎,被轉換成幅度正弦或餘弦資料或樣本。此功能通常利用儲存在LUT(ROM)中的三角函數值完成,有時通過執行正弦近似演算法完成,或兩者組合方式完成。相位-正弦幅度轉換器的輸出供DAC使用,在濾波之前生成量化和採樣正弦訊號,使訊號平穩,並避免頻譜混疊。由DAC有限解析度導致的幅度量化設定了本底雜訊以及相應的頻率合成器訊噪比(SNR)的理論限值。此外,DAC作為混合訊號元件,由於其INL、DNL、壓擺率、毛刺和建立時間等特性,展現出一系列直流和交流非線性,這會產生雜散訊號音,縮小正弦波產生器的整個動態範圍。

基於圖2中架構實現的實際正弦波形產生器,主要是相位-幅度轉換模組不同,受數位無線電應用這一個市場導向影響,該模組通常針對速度和功耗,而不是高精度而優化。實施相位-正弦幅度轉換器最簡單的方法就是使用ROM,採用一對一映射的方式來儲存正弦值。遺憾的是,LUT的長度與相位累加器的寬度N呈指數成長(2N),並且與波表資料字精度W呈線性增長。而且,減小累加器的尺寸或截斷其輸出之間的權衡和取捨會導致頻率解析度降低,並且嚴重降低SFDR的性能。結果表示,相位或幅度量化導致的雜散會降低–6 dB/位元。實現精細的頻率調諧通常需要較大的N,已有幾種技術可用來限制ROM的尺寸,同時保持足夠的雜散性能。一般會使用簡單的壓縮方法,利用正弦或餘弦函數的四分之一波長對稱性將相位幅度範圍減小4倍。為了進一步縮小範圍,實際會使用截斷相位累加器輸出的方法,不過這會導致產生雜散諧波。儘管如此,這種方法也因精準的頻率解析度要求、記憶體尺寸和成本考量而得到了廣泛採用。建議採用多種角分解方法,以降低基於LUT的方法對記憶體的要求。與使用各種分段、線性或多項式內插法的幅度壓縮結合,在進行需要正弦和餘弦函數的I/Q合成時,準確估算正弦函數的第一象限,或按[0, π/4]間隔估算。同樣的,在沒有ROM LUT的情況下,只需要按照逐次逼近的方法調用位移和添加操作,即可使用基於角旋轉的方法有效產生複雜訊號。這種方法以流行的CORDIC為代表,當硬體乘法器不可用時,或者出於速度或成本考慮,應較大限度減少實施函數所需的閘級數量時(在FPGA或ASIC中),此方法通常比其他方法更快。相反的,當硬體乘法器可用時(在DSP微處理器中總是如此),採用插入方法和完整多項式計算(例如泰勒級數展開、切比雪夫多項式)的表查找要比CORDIC更快,尤其是要求高精度時。

在軟體中實現高精度NCO

如同著名的惠普分析儀,或者如同應用筆記AN-1323中描述的,構建與最出色的類比振盪器具備同等或更出色的失真性能的高精度交流訊號振盪器並不容易,即使是針對音頻頻譜(直流至20 kHz範圍)。然而,如前所述,利用嵌入式處理器具有的足夠運算精度來執行相位計算(ωt)和正弦函數(sin(ωt))近似計算,進而完整建置軟體,這顯然有助於較大限度減少量化的不利影響、雜訊和由此導致的雜散。這意味著圖2中的所有NCO功能模組都會轉換成代碼行(不是VHDL!),從而實現一個滿足即時約束的軟體版本,以確保實現最小的採樣速率和所需的頻率頻寬。

對於相位-正弦幅度轉換引擎,完整的LUT方案或任何變化都需要用到太多的儲存空間或太多的插值運算來實現完美的正弦一致性。相反,用於計算正弦近似值的多項式方法允許使用成本極低的通用DSP,在複雜性與精度之間達成了不錯的平衡。多項式級數展開也很有吸引力,因為它相對簡單,並且能夠採用選擇的冪級數類型提供充分的靈活性,並且調整演算法來實現給定精度。它不需要很大的儲存空間(可能不到100行SHARC DSP彙編代碼),只需要幾個RAM位置來儲存多項式係數和變數,因為正弦值只在採樣時刻計算。

首先,對於正弦近似值函數,顯然會選擇使用具有適當順序的泰勒/麥克勞林冪級數來滿足目標精度。但是,由於冪級數在端點處往往會失效,所以在執行任何多項式求值之前,必須將參數輸入範圍縮小到更小的區間。如果不縮小參數範圍,只能使用非常高階的多項式來支援在功能域(例如[–π, +π])中實現高精度。所以,需要對初等函數進行一些變換,以獲取所需的約化參數,例如sin(|x|) = sin(f + k × π/2)和sin(f) = sin(x – k × π/2),其中0 ≤f<π/2。因此,對於三角函數,要特別注意不要使用減法相消,以免嚴重降低精度,並導致災難性後果,特別是在運算精度極差的情況下。在我們的例子中,當相位輸入大於或接近π/2的整數倍數時,會發生這種情況。

除了週期性和modulo-2π重複之外,sin(x)函數的對稱性可用於進一步縮小近似值範圍。鑒於正弦函數在區間[0, 2π]內,關於點x = π不對稱,所以能夠使用以下關係式:

equation4

將範圍縮小到[0, π]。採用同樣的方式,sin(x)在區間[0, π]內,關於由x = π/2定義的線對稱,所以:

equation5

x在區間[0, π/2]以內,這會進一步縮小角輸入近似值的範圍。通過進一步縮小參數區間(例如[0, π/4])來提高精度並不是有效方法,因為這需要同時估算正弦和餘弦函數的值,如常用三角關係所示:sin(a+b) = sin(a) × cos(b) + cos(a) × sin(b),從生成正交訊號這一角度,這有其價值。

ADI的ADSP-21000系列應用手冊第1卷描述了一個近乎理想的(用於嵌入式系統)正弦近似值函數,該函數基於為第一個ADI DSP浮點處理器編寫的冪級數優化,即ADSP-21020,後者基本上屬於SHARC核心。這種sin(x)的實現方法依賴於Hart等人4發表、由Cody和Waite5 所完善、適用於浮點運算的極大極小逼近多項式,以減少捨入錯誤和避免出現前面提到的取消。極大極小方法依賴於切比雪夫多項式和雷米茲交換演算法來確定所需的最大相對誤差的係數。如圖3中的MATLAB®所示,與第七階泰勒多項式6相比,設置係數的微小變化可能會明顯提高極小極大值的精度。為了實現精度與速度的較佳平衡,這個正弦近似值函數的角輸入範圍應該縮小到[–π/2至+π/2]區間內,且軟體套裝程式含一個有效的範圍縮減濾波器,約佔總"正弦"副程式執行時間的30%。

圖3.不同於泰勒-麥克勞林方法圍繞0進行定義,極小極大正弦逼近方法在[–π/2至+π/2]區間內,會最小化和均衡最大相對誤差。

雖然所有計算都可以使用32位元定點演算法執行,但多年以來,最常見和最方便的數學計算格式是IEEE 754浮點標準,特別是在處理長數位時。作為一家DSP VLSI晶片製造商,ADI從一開始就率先採用了IEEE 754-1985標準。當時還沒有單晶片浮點DSP處理器,只有簡單的浮點乘法器和ALU計算IC,如ADSP-3212和ADSP-3222。這種格式取代了電腦產業的大多數專有格式,成為所有SHARC DSP處理器的本機格式,採用單精確度32位元、擴展精度40位元,以及最近出現的適用於 ADSP-SC589ADSP-SC573的雙重精度64位元。

具備32位尾數的SHARC 40位擴展單精確度浮點格式為這種正弦波生成應用提供了足夠的精度(u 2–32),且有助於保持均等,Cody和Waite表示第15階多項式的總體近似精度為32位,在[0至+π/2]輸入域內具有均勻分佈的誤差。為了較大限度減少運算次數並保持精度,最後的調整是對多項式計算執行霍納法則,這是一種快速求冪的方法,可以求取一個點的多項式值,所以:

equation6

R1至R7是多項式級數的Cody和Waite係數,只需要進行8次乘法和7次加法即可計算任何輸入參數ε[0, π/2]的正弦函數值。以彙編副程式的形式編寫的完整sin(x)近似代碼在SHARC處理器上大約執行22個核心週期。原有的彙編副程式在更改之後,在獲取40位多項式浮點係數時執行同步雙記憶體存取,以減少6個週期。

NCO 64位相位累加器本身在執行時,就用到了雙精度2的小數格式的SHARC 32位ALU。提供記憶體更新的整個相位累加器執行過程需要11個核心週期,因此,每個NCO輸出樣本都在約33個核心週期內產生。

圖4中的框圖顯示了基於軟體DSP的NCO的功能模組實現方案,每級都參考了運算格式精度。此外,進行訊號類比重構以及實現完整的DDFS還需要用到一個或兩個DAC及其類比抗混疊濾波器電路。處理鏈的關鍵元件包括:

  • 64位元相位累加器(SHARC ALU雙精度,帶溢出);
  • 64位元小數定點到40位元浮點轉換模組;
  • 範圍縮減模組[0至+ π/2]和象限選擇(Cody和Waite);
  • 正弦逼近演算法(Hart),用於相位-幅度轉換;
  • –1.0至+1.0範圍內的sin(x)重構和歸一化級;
  • LP FIR濾波器和sin(x)/x補償(如果必要);
  • 以及40位元浮點至D位元定點轉換和標度函數,以匹配DAC數位輸入。

圖4.軟體DDS簡化框圖給出了處理單元之間的各種量化步驟的資料運算格式和位置。

可以在NCO輸出端放置一個可選的數位低通濾波器,以去除可能進入目標頻段的雜散和雜訊。或者,該濾波器可以提供插值和/或逆sin(x)/x頻率回應補償,具體由選擇用於類比重構的DAC決定。這種低通FIR濾波器可以使用MATLAB Filter Designer工具設計。例如,假設採樣頻率為48 kSPS,頻寬為DC至20 kHz,帶內漣波為0.0001 dB,帶外衰減為-150 dB,則可以實施具有40位元浮點係數的高品質均衡紋波濾波器。它只有99個濾波係數,在單指令單數據(SISD)單計算單元模式下,總執行時間將消耗約120個SHARC核心週期。經過數位濾波後,使用其中一個DSP同步序列埠,由DMA將計算的樣本對發送至DAC。為了獲得更好的速度性能,連結DMA操作也可以使用大型乒乓記憶體緩衝區來支援塊處理操作。例如,塊資料大小可以等於FIR資料延遲線的長度。

為了實現最佳SFDR,在NCO上進行的最後調整

如前所述,NCO遭受雜散的主要原因是對相位累加器輸出的截斷,其次是針對透過計算或列表得出的正弦值的幅度量化。相位截斷引起的誤差通過相位調變(鋸齒形)在載波頻率附近產生雜散,而正弦幅度量化引起與諧波相關的雜散,不過長期以來一直被認為是隨機誤差和雜訊。如今,在Henry T. Nicholas和H. Samueli撰寫的技術論文7中,從數學角度深入闡述了相位累加器的操作。在深入分析的基礎上,提出了一種模型,將相位累加器視為分立式相位樣本排列產生器,並據此預測頻率雜散。無論相位累加器參數(M、N、W)是多少,相序的長度都等於

equation7

(其中GCD是最大公約數),如圖4所示,由頻率調諧字M最右邊的位元位置L決定。因此,L的值定義序列類別,這些類別彼此共用自己的相位分量集,但根據

equation8

比率重新排序。這些在時域內生成的截斷相位樣本序列被用來透過DFT確定頻率域內各雜散線各自的位置和大小。這些序列還表明,M (FTW)的奇數值顯示最低頻率雜散的幅度,並建議對相位累加器進行簡單的修改以滿足這些最低程度的條件(只需在FTW中添加1 LSB)。如此,相位累加器的輸出序列必須始終具有相同的2N個相位元素,無論相位累加器的M值和初始內容是什麼。之後,最差的雜散訊號音幅度等級降低3.922 dB,等於SFDR_min (dBc) = 6.02 × W。由Nicholas更改的相位累加器為NCO提供了多種優勢,首先,它消除了FTW最右邊的位元非常接近MSB(FMCW應用中的頻率掃描)的情況,其次,它讓雜散幅度與頻率調諧字M無關。這種修改可以通過按採樣速率fS切換ALU LSB來輕鬆實現,如果FTW LSB置位元至邏輯1,則可以模擬與相位累加器相同的行為。相位累加器大小N = 64位元時,對於所需頻率FOUT的精度,可以將½ LSB偏移視為可忽略的誤差。

圖5.FTW最右邊非零位的位置確定了理論上SFDR的最差水準。由Nicholas修改的相位累加器解決了採用任何N值的問題,並且使NCO的SFDR最大。

採用32位元輸出相位字W時,由相位截斷導致的最大雜散幅度會限制為–192 dBc!正弦採樣值的有限量化也會導致產生另一組頻率雜散,該雜散通常被認為是雜訊,可採用大家熟知的SNRq(dB) = 6.02 × D + 1.76公式進行估算。這必須添加到寄生參數中,因為相位-正弦幅度轉換演算法階段的近似誤差被認為是可以忽略的,但是,必須非常謹慎地選擇相位-正弦近似演算法和計算精度。

這些結果表明,從理論水準上,我們的軟體正弦NCO的線性和雜訊都遠遠超過了測試市場上大多數高精度ADC所需的閾值。它仍然需要找到訊號鏈中最後一個、也是最關鍵的元件:重構DAC及其互補類比抗混疊濾波器和相關的驅動電路,以滿足預期的性能水準要求。

重構DAC:關鍵之處!

首先可能會選擇具備出色的非線性誤差(INL和DNL)規格的高精度DAC,例如出色的20位高精度DAC AD5791。但是它的解析度只有20位元,而且其R-2R結構不支援實施訊號重構,特別是產生非常純的正弦曲線,這是因為在輸入代碼轉換期間,它存在很大毛刺。傳統的DAC架構基於二進位加權電流產生器或電阻網路構建,對數位直通和數位開關損傷(例如外部或內部時序擺動),以及數位輸入位元的其他開關不對稱非常敏感,特別是在會導致能量變化的重大轉變期間。這就產生了與代碼相關的瞬態,從而產生高幅度諧波雜散。

在20位元以上的解析度下,使用外部超線性快速採樣和保持放大器對DAC輸出去毛刺並無太大幫助,這是因為它在幾十LSB下會生成自己的瞬態,且會因為重採樣產生組延遲非線性。訊號重構主要存在於通訊應用,透過使用分段架構(混合適用於MSB的完全解碼部分和適用於最低有效位元的二進位加權元件)來解決毛刺問題。遺憾的是,目前還沒有超過16位元精度的商用DAC。與NCO完全可預測的行為不同,DAC誤差難以預測和準確模擬,尤其是當製造商的動態規格很小或者不存在時,但專用於音訊應用的DAC或ADC除外。插值過採樣和多位元∑-∆ DAC似乎是唯一的解決方案。這些先進的轉換器具有高達32位元的解析度、超低失真和高訊噪比,是在中低頻寬內實施訊號重構的較佳選擇。為了在音頻頻譜或稍寬的頻段(20 kHz或40 kHz頻寬)內實現出色的雜訊和失真性能,可以使用ADI產品系列中傑出的∑-∆ DAC產品,音訊身歷聲DACAD1955 , 雖然解析度最高為24位元,這款DAC仍然是市場上非常受歡迎的音訊DAC。

這款音訊DAC是於2004年推出,基於多位元Σ-Δ調製器和過採樣技術,配合各種技巧,用於緩解這種轉換本身固有的失真和其他問題。

即使目前,AD1955採用的插值LP FIR濾波器仍然是同類出色產品。它具有極高的阻帶衰減(≈–120 dB)和極低的帶內漣紋(≈±0.0001 dB)。它的兩個(左側和右側通道)DAC可以以最高200 kSPS速度運行,但在48 kSPS和96 kSPS時實現最佳交流性能,其動態範圍以及身歷聲模式下的SNR,都支援典型的EIAJ標準、A加權120 dB係數。在單聲道模式下,兩個通道同時異相組合,性能有望提高3 dB。但是,對於寬頻應用,這些規格不太實際,這是因為它們是合成的,頻寬範圍在20 Hz至20 kHz之間。帶外雜訊和雜散不會超過20 kHz,部分是因為EIAJ標準、A加權濾波器和音訊行業規格定義。這種滿足特定音訊測量要求的帶通濾波器類比人耳的頻率回應,與未濾波的測量值相比,性能提高3 dB。

DDFS硬體展示平台:採用AD1955實現正弦波重構

整套DDFS使用兩個評估板實現,一個支援DSP處理器,一個適用於採用AD1955 DAC進行類比訊號重構。選擇第2代SHARC ADSP-21161N 評估板的原因在於其可用性、易用性,以及適合任何音訊應用的精簡配置。目前仍在量產的ADSP-21161N於不久之前設計,支援工業高階消費性電子和專業音訊應用,提供高達110 Mips和660 MFlops,或220 MMACS/s容量。與最新一代的SHARC處理器相比,ADSP-21161N最大的不同在於它採用較短的3級指令管道、一個晶片內1 Mb三埠RAM,以及數量更少的周邊。精準訊號音產生器的最後和最關鍵的級基於AD1955評估板,該板必須從軟體NCO提供的樣本中,以完全還原的方式重構類比訊號。這個評估板帶有一個抗混疊濾波器(AAF),優化音訊頻寬來滿足Nyquist標準,除了常用的S/PDIF或AES-EBU接收器外,還配有兩個串列音訊介面,用於支援PCM/I2S和DSD數位流。PCM/I2S串列鏈路連接器用於將AD1955 DAC板連接到ADSP-21161N EVB的序列埠1和3連接器(J)。這兩個板都可以配置為採用I2S PCM或DSP模式,以48 kSPS、96 kSPS或192 kSPS採樣速率運行。DSP序列埠1生成左右通道資料、字選擇或左/右幀同步,以及雙頻DAC的數位輸入介面所需的SCK位元時脈訊號。序列埠3僅用於生成運行DAC內插濾波器和Σ-Δ調製器所需的DAC主時脈MCLK,調變器以比輸入採樣頻率(48 kSPS)快256倍(預設)的速度運行。由於所有DAC時脈訊號都由DSP生成,所以使用Crystek提供的超低雜訊振盪器CCHD-957替代了板原有的低成本愛普生時脈振盪器。其相位雜訊在1 kHz下可能低至–148 dB/Hz,適用於24.576 MHz輸出頻率。

在類比輸出端,主動I/V轉換器必須用於在恒共模電壓下(通常為2.8 V)保持AD1955電流差分輸出,以較大限度減少失真。像 AD797 這樣的超低失真和超低雜訊的高精度運算放大器能夠滿足此需求,還可用於處理類比訊號重構。 由於兩個差分輸出由DSP分別處理,因此選擇了具有AAF拓撲結構的身歷聲輸出配置,而不是單聲道模式。這個AAF使用LTspice® XVII進行模擬,結果如圖6所示。由於濾波器的最後一部分是被動的,所以應該如同最近推出的 ADA4945增加一個主動差分緩衝級。這種具備低雜訊、超低失真、快速建立時間特性的全差分放大器,可近乎完美的驅動任何高解析度SAR和Σ-Δ ADC的DAC配件。ADA4945具有相對較大的共模輸出電壓範圍和出色的直流特性,可以提供出色的輸出平衡,有助於抑制偶數階諧波失真產品。

圖6.LTspice模擬AD1955 EVB三階抗混疊濾波器(身歷聲配置)的頻率回應。

EVB三階濾波器的–3 dB截止頻率為76 kHz,在500 kHz下僅衰減–31 db。這款低通濾波器具備出色的帶內平坦性,但帶外衰減必須大幅改善,即使是限於純粹的重構音訊應用。要抑制DAC成型雜訊和調變器時脈頻率MCLK,就必須滿足這一點。根據軟體DDS的具體使用,用於單訊號音產生器或任意波形產生器(生成複雜波形時為AWG),必須優化AAF,以解決帶外衰減或群延遲失真。以大家熟悉的SRS DS360超低失真函數產生器為例進行比較,採用7階Cauer AAF可達到類似的採樣速率。訊號重構由AD1862完成,後者是一款串列輸入20位元分段R-2R DAC,適用於數位音訊應用。AD1862在高達768 kHz (×16 fS)頻率下可以保持20位元字採樣速率,且具備出色的雜訊和線性度。它支援單端電流輸出,所以能夠使用最出色的放大器來實施外部I-V轉換。

AD1955和SHARC DSP組合針對多種高解析度SAR ADC實施測試,例如 AD4020 ,其中未設置外部可選被動濾波器。預設情況下,基礎AD4020評估板除了板載 ADA4807 驅動器之外,並無其他選項可用。用於在V_REF/2共模電壓下偏置ADC輸入的簡單電路提供相當低的300 Ω輸入阻抗,需要使用訊號隔離、交流耦合,或使用外部差分放大器模組,例如EVAL-ADA4945-1。電路筆記 CN-0513 中描述的AD4020參考設計板就是一項不錯的選擇。它包含一個分立式可程式設計增益儀錶放大器(PGIA),提供高輸入阻抗,支援±5 V差分輸入訊號(G = 1)。雖然這些AD4020板和它們的SDP-H1控制器不支援相關採樣採集,但它們具備出色的樣本波形捕捉長度,最高可達1M。因此,可以實現具備可選視窗的FFT,提供出色的頻率解析度和低本底雜訊。例如,對於7項Blackman-Harris視窗,圖7中所示的1 Mpts FFT圖描述了AD1955在生成的990.059 Hz正弦波下的失真水準。二次諧波是350 kHz頻寬內–111.8 dBc下的最大失真分量和最大雜散。但是,在考慮整個806 kHz ADC Nyquist頻寬時,SFDR受∑-∆ DAC調製器、內插濾波器頻率和其二次諧波(384 kHz和768 kHz)限制。

圖7.從1 M點FFT分析中可以看出,在低於–111 dBc下具備不錯的失真性能,在1 kHz輸入頻率下,10 kHz至200 kHz頻段內出現最大雜散。本底雜訊約為–146 dBFS。

在相同條件下,對傳統的AD1862進行測試,結果顯示頻率行為略微不同。在差分配置下,兩個20位元DAC的時脈速度約為500 kSPS,在1.130566 kHz下,本底雜訊為–151 dBFS,正弦輸出水準為12 V p-p時的THD為–104.5 dB。在AD4020 Nyquist頻寬(806 kHz)下,SFDR接近106 dB,受三階諧波限制。DAC重構濾波器基於兩個AD743 低雜訊FET放大器,與AD1955評估板中的濾波器一樣,屬於三階濾波器,但是-3 dB時的截止頻率為35 kHz。

為了變得有效,基於DDS的產生器需要採用不錯的濾波器,支持在約250 kHz下實現大於100 dB衰減,以生成達到25 kHz CW訊號頻率範圍的直流。這可以使用六階切比雪夫濾波器實現,甚至使用用於顯示出色帶內平坦度的六階巴特沃茲低通濾波器實現。濾波器階將被最小化,以限制類比級的數量和問題點,例如雜訊和失真。

結論

在標準評估板上實施的初級和開箱即用測試顯示,用於傳統正弦波CW所生成基於處理器的DDS技術,要實現高性能是指日可待的。透過精心設計重構濾波器和類比輸出緩衝級,可以實現–120 dBc諧波失真係數。基於DSP的NCO/DDS不只受到單訊號音正弦波生成限制。透過使用具備合適的截止頻率,且無其他硬體變更的優化AAF(貝塞爾或巴特沃茲),同樣的DSP和DAC組合可用作高性能AWG來生成任何類型的波形,例如,完全合成可設定參數的多訊號音正弦波(可以完全控制每個分量的相位和幅度)來進行IMD測試。

由於浮點演算法對於要求高精度和/或高動態範圍的應用相當重要,如今,低成本 ADSP-21571 或 SoC ADSP-SC571 (ARM®和SHARC)等SHARC+ DSP處理器實際上是業界的即時處理標準,支援最高10 MSPS的合計採樣速率。雙SHARC核心和其硬體加速度計採用500 MHz時脈頻率,可以提供高於5 Gflops的計算性能和數十個內部專用SRAM,後者是生成各種波形,以及實施複雜的分析處理需要的基本組成部分。此類應用表明,在進行精準的數位訊號處理時,並非一定要系統性地使用硬體可程式設計解決方案。得益於ADI公司的CCES、VDSP++ C和C++編譯器,以及全套模擬器和即時調試器,浮點處理器及其整個開發環境可以快速輕鬆地從模擬器(例如MATLAB)移植代碼,以及快速實施調試。

參考文獻

1 Joseph A. Webb。美國專利US3654450,1970年4月。

2 Joseph Tierney, Charles M. Rader, and Bernard Gold. "數位頻率合成器." IEEE 音訊和電聲學論文集,第19卷第1期,1971年3月。

3 Jim Williams and Guy Hoover. AN-132:用於驗證純度的A→D 轉換器保真度測試。ADI公司,2011年2月。

4 John F. Hart. 電腦逼近演算法。Krieger出版公司,1978年。

5  William J. Cody and William Waite. 初等函數 軟體手冊。 Prentice-Hall, Inc,1980年。

6 Robin Green. "更快的數學函數,第2部分介紹." Sony Computer Entertainment America,2016年5月。

7 Henry T. Nicholas and Henry Samueli. "存在相位累加器截斷時的直接數位頻率合成器的輸出頻譜分析。"IEEE,1987年5月。

8 Robert Adams, Khiem Nguyen, and Karl Sweetland. "支持分段雜訊擾碼的113 dB SNR過採樣DAC。" IEEE,1998年2月。

ADSP-21000系列應用手冊,第1卷。ADI公司,1994年5月。

數位訊號合成技術教程。ADI公司,2001年3月。

Butler, Oscar。"2017年夏季實習報告:高精度過採樣20位元超低功率採集系統。"(ADI公司,2017年)

Crawford, James A. 進階鎖相應用:頻率合成。AMI, LLC,2011年5月。

Goldberg, Bar-Giora。頻率合成數位技術。McGraw-Hill,1995年8月。

Ds360型超低失真函數產生器。Stanford Research Systems,1999年。

Symons, Pete. 數位波形生成。劍橋大學出版社,2013年11月。

1241-2010 - 類比數位轉換器術語和測試方法的IEEE標準。IEEE,2011年1月。