一、ADC介紹及性能指標
①ADC簡單介紹
ADC是模擬數字轉換器的縮寫,全稱為Analog-to-Digital Converter。它的功能是將連續的模擬信號轉換為離散的數字信號,以便數字系統進行處理和分析。單片機中采用的是SAR(successive approximation register)ADC,逐次逼近型模數轉換模塊。
ADC 轉換包括采樣、保持、量化、編碼四個步驟。
采樣階段,需要在規定的采樣時間內將外部信號的電壓完整無誤的采樣到 ADC 的采樣電容上,即在采樣開關 SW 關閉的過程中,外部輸入信號通過外部的輸入電阻 RAIN 和以及 ADC 采樣電阻 RADC 對采樣電容 CADC 充電。每次采樣過程可以簡化為外部信號通過輸入阻抗以及采樣電阻對采樣電容的充電(即采樣電容零狀態的單位階躍響應)。如下:
當采樣時間結束后,采樣誤差表示為采樣電容上的電壓與信號源上的電壓差值。在一次理想的采樣過程中,這個電壓差值應該保持在 0.5LSB 以內(LSB 為 SAR ADC 的最小的電壓分辨率,0.5LSB 為 SAR ADC 的量化誤差)。
量化階段,將采樣開關 SW 打開,然后由 ADC 時鐘驅動,基于切換電容技術,將 ADC 采樣電容上的電壓逐次與不同權重的參考電壓做比較,逐位確定 N 位數據每一位上的值(N 為 ADC的采樣位數),然后編碼輸出數字碼值。在量化過程中,參考電壓 VREF+需要對切換電容網絡進行充電。VREF+基準需要在量化過程中保持穩定。
②ADC的性能指標
?分辨率(Resolution):分辨率表示ADC能夠將模擬信號離散化為多少個離散級別。一般以位數(bits)來表示,例如8位、10位、12位等。分辨率越高,表示ADC可以更準確地量化模擬信號。
采樣率(Sampling Rate):采樣率是指ADC每秒鐘進行模擬信號采樣的次數。采樣率越高,可以更準確地還原原始模擬信號。
????信噪比(Signal-to-Noise Ratio, SNR):信噪比代表了頻譜中信號的有效值和噪聲的有效值之間的比值。然后取對數,再乘以 20,從而得到 dB 形式的 SNR 的值。即表示ADC輸出的數字信號與輸入模擬信號之間的信噪比,即有效信號與噪聲之間的比例。信噪比越高,表示ADC輸出的數字信號質量越好。
SNDR(信納比):信納比代表了頻譜中信號功率的有效值比上噪聲加上所有諧波分量的功率之和。因此從定義上看,信納比是必然會小于信噪比的。
?有效位數(Effective Number of Bits, ENOB):在許多應用場合,使用有效位數來描述 ADC 的性能。ENOB 通常使用信納比來計算。有效位數是指ADC輸出數字信號中具有有效信息的位數。它反映了ADC的精度水平,一般小于等于分辨率。
??器件精度(Device Accuracy):器件精度是指ADC輸出數字信號與輸入模擬信號之間的誤差。它可以通過最大的非線性誤差、增益誤差和偏移誤差等來表示。
?? THD(總諧波系數):總諧波系數表述基波信號的有效值與所有諧波的有效值之和的比值。
???偏置誤差(Offset error) :ADC 的偏置誤差定義為第一個碼字轉換(從 0x00 到 0x01)所對應的實際電壓偏離理想電壓位置的差值。
??增益誤差(Gain Error):ADC 的增益誤差是指最后一次碼字轉換中實際轉換與理想轉換點電壓之間(對于 12bit ADC來說,即從 0xFFE 到 0xFFF)的差值。
微分非線性誤差(DNL):微分非線性誤差定義為實際量化臺階寬度與對應于 1LSB 的理想電壓值之間的差異。指每一個碼字寬度偏離理想的 1LSB 的程度。計算方法為每個碼字模擬量的寬度減去一個 LSB 的值,當碼字寬度大于一個 LSB 寬度時,DNL 為正值,反之,DNL 為負值。
?積分非線性誤差(INL):積分非線性誤差是指一個碼字的實際輸入點與傳輸函數線上理想輸入之間的偏移。傳輸函數線可以定義為第一次實際轉換與最后一次實際轉換所連接的線,即 ADC 的偏置和增益誤差點之間的一條直線。
在精密信號鏈系統中,對于 ADC 來說,往往關注的主要是 ADC 的靜態特性參數。然而對于采樣率達到 MSPS 的 SAR ADC 而言,有時也會用于采樣頻率較快的交流信號,因此對于交流輸入信號的真實復現也尤為重要,在這種場景中,我們更關注信號中的頻域特性。一些動態特性參數也需關注,通常需要借助對采樣信號的 FFT 變換來分析頻域特性。
這些性能指標對于不同應用場景的ADC來說可能有所不同,選擇合適的ADC需要根據具體的應用需求進行權衡。
ADC 的精度不僅受自身設計與工藝因素的影響,也會受到多種外部因素的影響,想要在實際應用中達到標稱的精度,需要在軟件配置端與外圍電路的設計上給予足夠的重視。
二、ADC提高采樣精度的方法和電路設計? ??
單片機中,有將 VREF+引腳單獨引出的,也有 VREF+引腳未單獨引出,而是在芯片內部與 VDDA 連接在一起。在內部有一個精準的內部參考源(典型電壓 2.5V),可以用作 ADC 工作時的參考電壓,該內部參考電壓可以連接到 VREF 引腳上,但需要留意的是,該內部參考源帶載能力不強,謹慎選擇所帶負載大小。
由于在量化編碼的過程中,VREF+需要對轉化電容網絡充電,在量化過程中,也會有對基準源抽取電荷的動作,因此,如果沒有其他的去耦措施,一個穩健且干凈的 VREF+基準會顯著影響 ADC量化的精度,我們建議對于這兩個電源采用紋波噪聲系數更小的 LDO 來供電。對于 VREF+基準源,我們建議靠近引腳并聯一個 uF 級以及一個 nF 級的去耦電容,一方面可以濾除來自外部低頻與高頻的電源噪聲,另一方面,也可使ADC 在量化編碼過程的基準源更加穩定。在 layout 過程中,相關電源線的走線上,我們推薦加寬電源跡線,以減小跡線的 ESR,在量化階段,減小轉化電容網絡瞬間充電對輸入基準源的影響。
相同的情況,在一些場景中,VDD 與 VREF+來自同一顆 LDO,然后在 LDO 與 VREF+之間串聯一顆磁珠,以屏蔽外部電源對于 VREF+的影響。這里需要注意選擇磁珠時,需要關注磁珠的 RDC(直流電阻)參數,應當優先選取 RDC 小的型號,以減小在磁珠上造成的直流壓降。直流電阻小,通常磁珠的高頻處的阻抗也會小,因此這也是一個抗干擾與采樣精度的權衡過程。另外,通常不建議在此處將磁珠換成電感,由于 VREF+在量化編碼過程中,會存在高頻的脈沖電流,如果靠近 VREF+引腳的去耦電容設置不合適,則比較容易引起 VREF+電壓的震蕩,影響 ADC 的精度。
②引腳電容設置
系統的硬件解耦對于采樣精度提高尤為重要,在 MCU 端,對于模擬電源引腳,建議就近放置一個 1uF 與一個 10nF 的陶瓷電容(ESR 較低)。對于其他的數字電源 VDD 引腳,就近放置一個 100nF 的陶瓷電容。對于MCU 接地引腳,建議將模擬地與數字地采用 0 歐姆電阻或者磁珠連接,以屏蔽數字地對于模擬地的干擾。
③ADC 參考電壓設置的影響
ADC 輸入信號幅值范圍為 VSSA 到 VREF+,對于部分小封裝 MCU,VREF+與 VDDA 在芯片內部連接在一起。VREF+電壓的設置需嚴格參考 datasheet 手冊中的規定范圍,采樣信號的幅值不應超出 VREF+的幅值,對于無 VREF+引腳的 MCU,采樣信號的幅值不應超出 VDDA 的幅值,否則可能會導致模擬電源漏電,嚴重影響 ADC 性能。此外,我們可以思考下如何根據 ADC 輸入信號幅值范圍設置合理的 VREF+,或者根據配置完畢的 VREF+設置合理的 ADC 信號輸入范圍。
④I/O?口引入超范圍電壓的影響
任何模擬引腳(或相鄰的數字輸入引腳)上如果存在小于 GND 的負電壓時(不大于-200 mV的負電壓可以被認為是安全的),會引入從該 IO 口流出的負電流。這種情況下會顯著影響 ADC的采樣結果,為了更精確的采樣結果,需要確保相關 IO 口上在 ADC 工作期間不要有負電壓的存在。
ADC 采樣的 IO 口在非采樣時間也不要引入高于 VDDA 的電壓,可能會造成對 ADC 內核的漏電,引起采樣精度的變差。
⑤信號源輸入電阻的影響
SAR ADC 采樣對于信號的輸入電阻是有明確要求的,對于一個具體的ADC,其采樣電阻 RADC 與采樣電容 CADC 已經不可更改,當 ADC 的采樣時鐘,采樣周期等可配置參數配置完畢時,則外部信號的輸入阻抗則是有一個最大值的要求,如下:
配置的不同的采樣周期所對應的最大輸入電阻,在對應 MCU 型號 datasheet 中會給出,用戶也可根據公式與實際情況自行計算。
采取的思路如下:
建議添加一個運放跟隨電路,實現阻抗匹配;
如果對于采樣率沒有要求的情況下,我們可以降低 ADC 的采樣時鐘,變相提高采樣時間來使得采樣電容充電到正確電位;
對于 SAR ADC 在采樣時間內,采樣電容上的電壓必須被充分充放電,其被充電的電壓值與外部輸入電壓之間的差值不應超過 0.5LSB,否則無論后級 ADC 性能如何卓越,都無法真實反映信號的幅值。對于極大輸入阻抗,我們添加了一顆電容來限制單次采樣時的電壓跌落或上升毛刺的幅值,但是此種情形下,需要在每兩次采樣之間添加足夠的時延給內部采樣電容充電,以保證采樣開關關閉時,采樣電容上的電壓與外部信號的電壓差在量化誤差范圍一列。
特別的,當 ADC 工作在連續采樣或者掃描采樣時,如果由于輸入阻抗過大,且未被及時修正時,輸入阻抗過大通道的采樣結果會受前一個采樣通道信號的影響,通過增大采樣時間以滿足輸入阻抗的影響會顯著改善這個現象。
⑥I/O 引腳串擾的影響
由于引腳甚至包括芯片內部 bonding 線之間的電容耦合,I/O 之間的串擾會對 ADC 的采樣精度產生顯著影響,尤其是 ADC 當前的模擬采樣通道鄰近有持續數字 I/O 的電平翻轉動作(典型情況如 PWM 輸出)。
ADC 的采樣通道緊鄰在 PWM 輸出時的信號波形情況,在 PWM 發生電平翻轉的瞬間,在相鄰的采樣通道上會造成信號的波動,如果此時 ADC 完成了一次采樣,則可能會造成采樣結果出現較大的誤差。
有幾種實踐方法可以嘗試來減弱 IO 之間串擾對 ADC 采樣的影響,首先,在引腳規劃上,就需要提前規劃將那些需要持續翻轉的數字 I/O 在物理位置上遠離 ADC 采樣通道;如果由于資源限制,頻繁翻轉的數字 I/O 無法遠離模擬采樣口,我們可以在后期 layout 上采取一些措施來弱影響,比如我們可以通過在數字 I/O 與模擬通道之間加上一定面積的 GND 來隔離。當然,由于包地屏蔽無法覆蓋芯片內部,bonding 線之間的串擾仍會繼續存在。此外,減慢數字信號的邊沿也會減弱串擾的影響,如對數字信號添加電容值適當的電容,減慢 MCU 數字 IO 口的驅動速度,也能顯著減慢這個數字信號邊沿。軟件層面,我們同樣有一些嘗試,比如在數字 I/O 口不翻轉的時候進行一次 ADC 轉換,當然前提是應用允許這么做。
⑦軟件提高 ADC 的采樣精度
如果MCU 中具有 ADC 的片上硬件過采樣功能,硬件過采樣單元執行數據預處理以減輕 CPU 負擔。它能夠處理多個轉換,并將多個轉換的結果取平均,借此以提高 ADC 采樣結果的精度。它是以降低數據輸出率為代價,換取較高的數據分辨率。
對于不具備片上硬件過采樣單元的 MCU,軟件算法上亦可采用常用的一些濾波算法來降低輸入信號采樣值的波動。例如最常見的平均算法,濾波過程中需要占用CPU的算力與一定的RAM空間。這種平均算法適用于輸入信號變化慢,偶有脈沖型干擾的情形。如果信號變化頻率已經大于這個平均濾波算法的執行頻率,則會丟失信號變化的細節,平均后的采樣結果不能重現信號的所有信息
?
評論
查看更多