高速ADC時鐘jitter對信噪比和有效位數的影響
高速ADC的時鐘jitter會影響高速ADC的信噪比SNR,而信噪比決定了模擬前端輸入的有效範圍。所以需要先確定模擬前端的有效輸入範圍,然後確定應該滿足的SNR,然後推匯出時鐘jitter。
一、模擬前端動態輸入範圍和有效位ENOB的關係
假設ADC的最大輸入幅度是Vpp(單位V),解析度位數N位,有效位數ENOB位。
有效位數ENOB是ADC的N位解析度中實際有用的位數。N位ADC理論最小解析度滿足.
然而如果ADC的噪聲訊號大於1LSB,則ADC取樣訊號的N位表示中並不是每一位都能表示取樣訊號,所以實際的解析度位數會小於N,實際的解析度位數我們稱為有效位數ENOB。因此對於ADC來說,更加有效的引數是ENOB,而不是N,ADC實際的最小解析度應該為:
ADC的模擬輸入動態範圍為(VppMin,VppMax),VppMin和VppMax使用下面公式計算:
模擬輸入的幅度寬度:
VppMax-VppMin=6.02*ENOB
二、有效位ENOB、信噪比SNR、信納比SINAD,總諧波失真THD之間的關係
2.1 SNR
SNR的定義是訊號幅度均方根與噪聲幅度均方根的比值。假設訊號幅度均方根是S,噪聲均方根是N,則
2.2 SINAD
SINAD是訊號幅度均方根與所有其它頻譜成分(包括諧波但不含直流)的和方根的平均值之比。
假設訊號諧波幅度均方根是N,則
2.3 THD
THD指的是基波訊號的均方根值與其諧波(一般僅前5次諧波比較重要)的和方根的平均值之比。假設2次、3次、4次以上的和諧波失真分別為HD2,HD3,HDn,總諧波失真是D,則THD可以用下面公式求解:
有些ADC的datasheet提供裡THD的值,但是也有一些沒有直接提供THD值得,沒有提供THD值得可以使用HD2,HD3,HDn計算。
2.4 ENOB、SNR、SINAD、THD之間的關係
信納比和有效位數之間滿足一個確定的關係:
因此我們可以根據所需要的ENOB來推匯出ADC需要滿足的SINAD的值。 由SINAD、THD和SNR的定義可以推匯出如下公式:
THD是ADC可以通過ADC的datasheet直接查詢到或者間接求出來,所以對於滿足需求的SINAD,我們能夠推匯出來SNR應該滿足的條件。
三、SNR求解
ADC的SNR主要由三部分引起:量化噪聲,熱噪聲,抖動噪聲。
3.1、量化噪聲
ADC對取樣訊號量化的時候,一定會產生一定的誤差,從量化上來講實際訊號和量化後的訊號之間的誤差最大為0.5LSB。量化誤差如下圖所示:
量化誤差引起的信噪比計算公式:
3.2、熱噪聲
熱噪聲是晶片固有的一個噪聲,由取樣快取器噪聲,取樣切換阻抗等引起的,是一個定值,一般ADC都會給出熱噪聲的信噪比。如果沒有給出可以使用下面公式計算:
NSD:noise spectral density or noise floordensity
3.3、抖動噪聲 抖動噪聲主要是由於時鐘抖動和孔徑抖動造成的。
上面兩個圖分別描述了時鐘抖動和孔徑抖動對取樣點的影響,這兩個抖動都會造成取樣點的偏移,然而最後對資料處理的時候,會預設這些點都在理想位置取樣的,在頻域上會造成訊號頻率的彌散;另外一個理解方法是每一個取樣點的實際取樣值和理想取樣值都有一定的偏差,相當於對每一個點都疊加了一個噪聲。 時鐘抖動引起的噪聲的信噪比使用下面公式計算:
從上面兩個公式可以得出信噪比與取樣時鐘jitter成反比,與輸入訊號頻率成反比,因此對於輸入訊號的頻率越高,對時鐘訊號的jitter要求越嚴格。
3.4、總噪聲
ADC總噪聲是量化噪聲,抖動噪聲之和。量化噪聲很多時候並不考慮,因為很多時候熱噪聲會遠遠大於量化噪聲。當訊號頻率較低的時候,主要考慮熱噪聲,當訊號頻率較高的時候,才會考慮抖動噪聲。
ADC總信噪比用下面公式計算:
四、jitter求解例項
4.1、AD9680時鐘jitter求解
AD9680:14位解析度位數,孔徑抖動55fs,取樣頻率1GHz,THD值80dBFS,熱噪聲67dBFS,計算出來的jitter、SNR_jitter、SNR_ADC、fin、ENOB如下圖:
第一幅圖是jitter、fin、SNR之間的關係,紅色代表SNR_jitter,綠色代表SNR_ADC,從上往下是不同fin對應的SNR,頻率是從上依次1MHz,到501MHZ,步長50MHz。
第二幅圖是jitter、fin、ENOB之間的關係,從上往下是不同fin對應的SNR,頻率是從上依次1MHz,到501MHZ,步長50MHz。
從圖中可以看出:fin越高,信噪比越大,ENOB越小,jitter越大,信噪比越大,ENOB越小。為了保證AD9680比較好的轉換效能,最好使時鐘jitter低於150fs,能夠保證10位以上的有效位數。
5.2、ADS54j54時鐘jitter求解
ADS54j54:14位解析度位數,孔徑抖動98fs,取樣頻率500GHz,THD值80dBFS,熱噪聲66dBFS,計算出來的jitter、SNR_jitter、SNR_ADC、fin、ENOB如下圖:
第一幅圖是jitter、fin、SNR之間的關係,紅色代表SNR_jitter,綠色代表SNR_ADC,從上往下是不同fin對應的SNR,頻率是從上依次1MHz,到251MHZ,步長50MHz。
第二幅圖是jitter、fin、ENOB之間的關係,從上往下是不同fin對應的SNR,頻率是從上依次1MHz,到251MHZ,步長50MHz。
4.3、ADS6445時鐘jitter與AD9680時鐘jitter比較
從兩款晶片的jitter求解結果中能夠發現,取樣頻率越高,訊號頻率越高的ADC對時鐘jitter要求越嚴格。AD9680為了保證比較好的效能,需要小於150fs的jitter;AD54J54為了滿足較好效能,需要小於300fs的jitter。
在翻閱不同ADC的datasheet,發現一個引數的規律,越是取樣速度高的ADC,孔徑抖動越小。這個引數是ADC本身固有的,是與晶片設計相關的。孔徑抖動和時鐘抖動同樣的原理影響著ADC效能。為了更高的取樣頻率,晶片開發商會設計更小的孔徑抖動,通過這個引數,我們也可以快速估算時鐘抖動的大小。當時鍾抖動小於孔徑抖動的時候,能得到非常好的ADC效能,當兩者相仿的時候,依然能保持很好的效能,當時鍾抖動是孔徑抖動的兩三倍的時候,效能還比較好,當這個比例更大的時候,就需要參考取樣訊號的頻率來具體分析。因此在設計ADC時鐘的時候,可以將抖動粗略設為孔徑抖動的兩倍以內。