• 沒有找到結果。

第二章 回顧Δ-Σ ADC之內建自我測試方法

2.3 兩種使用CSWF演算法之內建自我測試架構

無論是使用何種方法測試待測 ADC,通常最重要的是要解決測試訊號與用來 計算的參考訊號精準度問題,測試訊號的產生有很多種,如數位頻率合成(Direct Digital Frequency Synthesis, DDFS) [5]或是無損式數位濾波積分器(Lossless Discrete Integrator Biquad Filter, LDI Biquad Filter) [6]。數位頻率合 成有著極高的精準度,不過其實現方式需要藉由查表來得到結果將會耗費龐大的 硬體面積。而無損式數位濾波積分器架構當中所須要的兩個並列乘法器

(parallel multiplier)也是硬體負擔的主要原因。以下將介紹兩個同樣都是依 據 CSWF 演算法,但利用不同訊號產生技巧所提出的內建自我測試電路架構:

一、 以直接數位頻率合成來實現 CSWF 演算法:

文獻[7]中提出了使用查表方式來實現訊號產生器的方法,由於在 CSWF 演算法最後一步計算PTHD+N時需要兩個訊號源:一個給予待測物的激 發測試訊號,另一個用來當作參照的基準訊號,如果使用查表的方式將會 需要兩個很大的記憶體區塊,因此在下篇文獻[8][9]中假設待測物為一個 應用在立體音具有左右兩個單元的 Δ-Σ ADC。如下圖 2.3.1,每一個Δ-Σ ADC 由 Δ-Σ 調變器與濾除高頻雜訊的降頻濾波器所組成,因此我們可以在測 試右聲道的 ADC 時利用左聲道閒置的降頻濾波器產生基準訊號,反之亦 然。如此一來可以大幅降低所需儲存記憶的面積。

圖 2.3.1 直接數位頻率合成實現 CSWF 演算法架構圖

此待測 ADC 最高頻寬為 22.05kHz,取樣頻率為 12.288MHz,在正常工 作模式下,二階的Δ-Σ調變器把輸入訊號轉換成 1-bit 的位元流,然後交給 四級的數位降頻濾波器把頻帶之外的雜訊濾除,產生最高 16 位元精準度的 輸出。而在測試模式時,一段存在位移暫存器中的單一位元流資料週期性 的重複輸出,來提供 19 位元精準度的測試輸入。而為了要讓待測 ADC(左 聲道或右聲道)能夠接受到類比的輸入,作者做了與本論文待測物近似的數 位可測性設計:利用大部分類比設計中常會有的電路-帶隙參考電壓源 (bandgap reference voltage),來把單一位元流資料轉換成類比的輸入給

待測 ADC。並且在同一時間把一樣的位元流資料輸入給另一聲道的降頻濾 波器,因此產生了具有 19 位元精準度的基準訊號。由於二階的待測 Δ-Σ ADC 其相位偏移是已知的兩個時脈週期,因此只需要簡單的運用兩個 1 位 元的暫存器便可以調整輸出響應訊號與基準訊號的相位差,省去 CSWF 演算 法中麻煩的相位偵測步驟。

而最重要的訊號產生過程,作者使用了 2252 個 1 位元的暫存器來保存 輸入測試訊號,使用暫存器的好處是可以先在外部運用軟體設計高階的 Δ-Σ 調變器得到非常高精準度的測試訊號之後再輸入電路內部。而測試輸 入訊號的頻率必須滿足同調性取樣(coherent sampling),可由下式 2.7 算出:

) ( 2252 5456

1 f Hz

f

stimulus

=

sampling

=

(2.7)

讓周期數越低可以等倍數的降低資料暫存器的使用,因此等於 1 是最好的 選擇。接下來的步驟,就遵循著(1)計算偏移誤差(2)計算增益誤差(3)計算 雜訊能量,等等步驟進行。

作者提出的架構雖然可以讓輸入訊號達到極高的準確程度,但是整個 架構卻具有一些未盡如人意的缺點。首先,此架構假設了待測物 ADC 在測 試模式運作時具有額外閒置的降頻濾波器,大多數實際應用中並不是非常 幸運的擁有此條件,因而對於許多普遍的 ADC 而言必須還要再把降頻濾波 器的額外成本考慮進去。第二,觀察 2.7 式可發現,要測試 ADC 對較高頻 輸入的性能表現只需使用較少個數的資料暫存器(例如 10912Hz 的測試訊 號僅需使用 1126 個暫存器),但是若要偵測 ADC 偏低頻(一般語音系統最重 視的頻帶約在 1~5kHz 之間)的表現便需實際地增加暫存器的個數。因此系 統硬體負擔會隨著測試頻帶最低頻的範圍增加而增加。第三,作者在計算 輸出響應振幅來產生密合後的基準訊號時,使用了下列兩式:

=

=

N

i

ref out

ref

i S i Amp S

Amp N

1

] [ ] 1 [

2 1

(2.8)

DC i

Amp S Amp

i

S

ref

ref fitted

ref

= ⋅ 1 ⋅ [ ] +

]

_

[

(2.9)

其中 Amp、AmprefNSout[i]、Sref[i]、Sref_fitted[i]DC 分別為振 福、基準訊號振幅、取樣點數、ADC 輸出響應訊號、基準訊號、密合過的 基準訊號。可以得知在計算密合訊號的同時必須使用除法的架構,因此除 了本來就必須使用的並列乘法器之外又多了一個除法器,除法器的架構在 自我內建電路當中通常會佔有不少大小的晶片面積,因而極少採用。第四,

作者實際測試時使用了如下圖 2.3.2 的環境,在最後應用 CSWF 演算法時並 非使用真正的內建測試電路,而是把測試資料存起來之後使用 Matlab 數學 軟體來實現,此種測試方法會造成測試時間的拉長,雖然只需要使用便宜 的數位測試機台便可進行測試,但並且無法直接得到效能參數,仍然需要 對輸出資料作額外的分析,後段的操作與 FFT 演算法並無太大不同。

圖 2.3.2 直接數位頻率合成實現 CSWF 演算法實際測試環境

二、 以無損式數位濾波積分器來實現 CSWF 演算法:

由上篇論文可知,對待測 ADC 進行自我測試所遭遇到最大的問題幾乎 都來自於測試訊號源的產生,而本段所要介紹的另一種實現方法是本實驗 室學長根據原始 CSWF 作者提出之理論的研究成果[3][4]。其使用兩個簡單 的內建數位震盪器能在電路進行測試時同時提供輸入測試訊號與輸入基準 訊號,以更低且固定的電路面積成本,在理論上達成頻寬內任意頻率、振 幅的測試。無損式數位濾波積分器的電路架構類似於一個由放大器與電容 電感組成的震盪器,(圖 2.3.3,其振盪頻率為

LC

0 = 1

ω )主要由兩個轉

換方程式為

Register 2

Register 1

R2[n+1]

PDM 訊號,詳細的數位振盪器設計方式將在之後硬體實現的單元中做介紹。 Decision Maker

Amplitude 個合成閘數(gate count)來產生任意想要的測試頻率。雖然有著上述優良

的特性,但是由於該數位振盪器只使用了二階的Δ-Σ 調變器,頻寬內的雜 訊無法被濾除到足夠低的程度,使得迴路振盪的極點稍稍偏移了複數平面 的 Z 單位圓,此情形隨著頻率增加而更嚴重,最後能產生足夠精準的輸出 只能到達 6kHz 左右。在 6kHz 的範圍之內,量測誤差與輸出 FFT 相減之後 的誤差平均只有 0.86dB。

三、 比較與評估

下表 2-2 為總比較表,可以看出使用數位頻率合成將不會遭遇到測試 訊號頻寬不足或是精準度不夠的問題,但可能會額外使用的降頻濾波器與 低頻所需增加的暫存器面積將給硬體成本負擔帶來潛在的威脅。而使用內 建數位振盪器無論在面積、測試精準度、動態範圍都比第一種方法來的更 為優良,但使用數位振盪器帶來優點卻也造成了頻寬遠遠不足的限制。

表 2 - 2 兩種不同 CSWF 實現方法之比較表

數位頻率合成 內建數位振盪器

位元流長度 2252 218

量測頻帶 5.5~24kHz 1~6kHz

訊號產生器 2.35k/per

輸出響應分析器

11.5k

(estimated) 5.6k

測試誤差 <1dB <0.75dB 動態範圍 Up to -12dB Up to -6dB

測試時間 30ms 128ms

總系統面積 >11.5k 11.9k

備註 總系統面積為估計值

不包含降頻濾波器

量測頻寬與動態範圍 受限於訊號產生器

第三章 以 SME 為基礎之內建自我測試方

CSWF 演算法本身提供了良好的測試方式讓待測 ADC 藉由簡單的估算器便可以 得出雜訊能量的大小,但是測試訊號產生器是個始終存在的且最值得考慮的問 題,除此之外,使用 CSWF 演算法還有兩個需要注意的地方:(1)使用 CSWF 演算

相關文件