ADALM2000實驗:類比數位轉換

作者:ADI 系統設計⁄架構工程師Andreea Pop、 Mark Thoren、 系統應用工程師Antoniu Miclaus及顧問研究員Doug Mercer


目標

本實驗活動目的在透過建構說明性示例來探討類比數位轉換的概念。

背景資訊

類比數位轉換器(ADC)將類比訊號——即溫度、壓力、電壓、電流、距離或光強度等實際訊號——轉換為該訊號的數位表示。然後系統可以處理、控制、計算、傳輸或儲存此數位表示。

Figure 1. Analog-to-digital conversion.
圖1.類比數位轉換

ADC以均勻的時間間隔對類比波形進行採樣,並將數位值分配給每個樣本。數位值以二進位編碼格式在轉換器的輸出端顯示。透過將採樣類比輸入電壓除以基準電壓,再乘以數位碼數得到此值。轉換器的解析度由輸出碼中的二進位位元數來設定。

Figure 2. Digital output code.
圖2.數位輸出碼

ADC執行兩個過程:採樣和量化。ADC將無限解析度的類比訊號表示為有限解析度的數位碼。ADC會產生2N個數字值,其中N表示二進位輸出位元數。由於轉換器的解析度有限,類比輸入訊號將落在量化位準之間,進而導致原先的不確定性或量化誤差。該誤差可確定轉換器的最大動態範圍。

Figure 3. The quantization process.
圖3.量化過程

採樣過程提供連續時域訊號,訊號值以離散、均勻的時間間隔測量。透過此過程,根據奈奎斯特準則可確定採樣訊號的最大頻寬。該理論認為,訊號頻率必須小於或等於一半採樣頻率以防混疊。混疊是指通過採樣過程,目標頻寬內出現所需訊號頻段之外的頻率訊號的情況。不過,在通訊系統設計中,可利用此混疊過程將高頻訊號向下轉換為低頻訊號。這就是欠採樣技術。欠採樣的標準就是ADC具有足夠的輸入頻寬和動態範圍來採集最高目標頻率訊號。

Figure 4. The sampling process.
圖4.採樣過程

採樣和量化都是重要的概念,因為其確定了理想ADC的性能極限。在一個理想ADC中,碼躍遷恰好相距1 LSB(最低有效位元)。因此,對於一個N位元ADC,共有2N個數位碼,且1 LSB = FS/2N,其中FS為滿量程類比輸入電壓。然而,實際ADC操作也受到非理想效應的影響,所產生的誤差超出了轉換器解析度和採樣速率所決定的誤差。與ADC相關的許多交流和直流性能規格中都會體現這些誤差。

Figure 5. Transfer function for an ideal ADC.
圖5.理想ADC的轉換函數在此範圍內,任何類比輸入會產生同樣的數位輸出碼。

材料

  • ADALM2000 主動學習模組
  • 無焊麵包板和跳接線套件
  • 一個 OP482 運算放大器
  • 兩個 AD654 電壓頻率轉換器
  • 三個1 kΩ電阻
  • 五個10 kΩ電阻
  • 一個1 nF電容
  • 一個SN74HC08 AND閘
  • 一個SN74HC32 OR閘
  • 一個SN74HC04逆變器
  • 一個1 μF電容
  • 一個 AD7920 12位元ADC

快閃記憶體ADC

背景資訊

Flash ADC,也稱為並列ADC,是將類比訊號轉換為數位訊號的最快方法之一。Flash ADC非常適合需要極寬頻寬的應用,但其功耗比其他ADC架構高且通常限制為8位元解析度。典型示例包括資料擷取、衛星通訊、雷達處理、採樣示波器和高密度硬碟驅動器。

Flash ADC由高速比較器串聯而成。對於一個N位元轉換器,電路採用2N -1個比較器,同時有2N個電阻提供基準電壓。當比較器的類比輸入電壓高於所施加的基準電壓時,其輸出1。否則,比較器輸出0。代碼從1變為0的點就是輸入訊號小於相應比較器基準電壓位準的點。

請看圖6所示的電路。

Figure 6. A flash ADC—analog side circuit.
圖6.Flash ADC—類比側電路

此電路表示2位元Flash ADC的類比側,其架構稱為溫度計代碼(一元碼)編碼。對於此類電路,需要使用額外的邏輯電路將一元碼解碼成適當的數位輸出碼。透過使用邏輯AND閘、OR閘和反閘,可建構專有編碼器。其輸出為原始數值的二進位表示,最高有效輸入位元從0開始。

Figure 7. A flash ADC—encoded output.
圖7.Flash ADC—編碼輸出
Figure 8. Flash ADC breadboard connections.
圖8.Flash ADC麵包板連接

如前所述,Flash ADC使用高速比較器建構而成,但為了方便起見,將使用OP482四通道運算放大器來介紹工作原理。或者,可以使用四個 AD8561 比較器來建構此電路。

硬體設定

在無焊麵包板上建構圖7所示的電路。此為一個用於具有編碼輸出的2位元Flash ADC的電路。

程式步驟

向電路提供±5 V電源電壓。在Scopy中將訊號產生器的AWG1配置為具有5 V峰對峰值幅度、2.5 V偏移和100 Hz頻率的上升斜坡鋸齒波。將AWG2用於為ADC提供5 V恆定基準電壓。

配置邏輯分析儀,使得數位通道DIO0、DIO1和DIO2形成一個針對一元碼解碼的通道組,通道DIO6和DIO7形成一個針對並列輸出解碼的通道組。

輸出訊號波形如圖9所示。

Figure 9. Flash ADC—output code.
圖9.Flash ADC—輸出碼

一元組通道表示2位元Flash ADC的輸出溫度計代碼,透過在整個可用範圍(0 V至5 V)內改變輸入類比電壓來提供所有可能的輸出值。並列通道表示相當於ADC輸出狀態的二進位值。

電壓頻率轉換器用作ADC

背景資訊

在這個特殊應用中,AD654電壓頻率轉換器用於ADC。

Figure 10. A voltage-to-frequency converter as an ADC.
圖10.電壓頻率轉換器用作ADC

為了實現轉換,應將轉換器的輸出端連接到整合間隔計時器/事件計數器的微型電腦。

計數期間的訊號邊緣(上升或下降)總計數與輸入電壓成正比。在此特定設定下,1 V滿量程輸入電壓會產生100 kHz訊號。如果計數週期為100 ms,則總計數將為10,000。然後依據與該最大值的比例便可確定輸入電壓。因此,計數為5000時,相應的輸入電壓為0.5 V。

硬體設定

建構麵包板電路以將電壓頻率轉換器用於ADC,如圖11所示。

程式步驟

向電路提供5 V電源電壓。將訊號產生器的AWG1配置為1 V恆定電壓。

配置示波器,使通道1上顯示輸出訊號,並從通道1「測量」選項卡中啟用頻率測量。輸出訊號波形如圖12所示。

Figure 11. A voltage-to-frequency converter as an ADC—breadboard connections.
圖11.電壓頻率轉換器用於ADC—麵包板連接
Figure 12. A voltage-to-frequency converter as an ADC at full-scale input voltage.
圖12.滿量程輸入電壓下電壓頻率轉換器用於ADC

圖12中的曲線顯示了電壓頻率轉換器採用1 V滿量程輸入電壓時的輸出訊號波形。請注意,相應輸出頻率為100 kHz。

現在將輸入電壓設定為0.5 V。輸出訊號波形如圖13所示。

Figure 13. A voltage-to-frequency converter as an ADC at half-scale input voltage.
圖13.半量程輸入電壓下電壓頻率轉換器用於ADC

圖中顯示了電壓頻率轉換器採用0.5 V半量程輸入電壓時的輸出訊號波形。請注意,輸出頻率現在為50 kHz。

逐次漸近暫存器(SAR) ADC

背景資訊

逐次漸近暫存器(SAR) ADC在每次轉換時,針對所有可能的量化位準,透過二進位搜索將連續類比波形轉換為離散數位表示,最後彙聚為數位輸出。

通常,SAR ADC電路由四個子電路組成:

  • 用於採集輸入電壓(VIN)的採樣保持電路(S/H)。
  • 類比電壓比較器,其將VIN與內部DAC的輸出進行比較並將比較結果輸出至SAR。
  • SAR子電路,用於向內部DAC提供VIN的近似數位碼。
  • 內部基準DAC,向比較器提供相當於SAR數位碼輸出的類比電壓。
Figure 14. Typical architecture of a SAR ADC.
圖14.SAR ADC的典型架構

對SAR進行初始化,使最高有效位元(MSB)等於數字1。將此代碼輸入DAC,然後DAC將此數位碼的類比等效訊號(VREF/2)提供給比較器電路,以便與採樣輸入電壓進行比較。如果此類比電壓超過VIN,則比較器使SAR重置此位;否則,此位將保留為1。然後將下一位設定為1並進行相同的測試,持續執行此二進位搜索直到SAR中的每個位元都已經過測試。所得到的代碼是採樣輸入電壓的數位近似值,並最終由SAR在轉換結束(EOC)時輸出。

Figure 15. An example of a 4-bit SAR ADC.
圖15. 4位元SAR ADC示例

圖15顯示了4位元轉換的一個示例。y軸表示DAC輸出電壓。在此示例中,第一次比較顯示VIN > VDAC。因此,位元3設定為0。然後將DAC設定為0100並進行第二次比較。由於VIN > VDAC,位元2保持為1。然後將DAC設定為0110並進行第三次比較。將位元1設定為0,然後將DAC設定為0101進行最終比較。最後,由於VIN > VDAC,位元0保持為1。

硬體設定

為了利用ADALM2000重點說明SAR ADC的工作原理,對於DAC元件將使用在下次實驗中探討的電路,但此設定中將使用4位元DAC(而不是8位元)。DAC的輸出端將連接到比較器,同時透過腳本對SAR進行模擬,該腳本基於比較器的輸出執行二進位搜索並產生正確的二進位值。

Figure 16. SAR ADC schematic.
圖16.SAR ADC原理圖

構建SAR ADC的麵包板電路,如圖17所示。

Figure 17. SAR ADC breadboard connections.
圖17.SAR ADC麵包板連接

將OP484積體電路中的兩個精密軌到軌運算放大器用於該SAR ADC,一個用於R-2R梯形DAC,另一個作為DAC輸出和輸入電壓之間的比較器。

程式步驟

向電路提供±5 V電源電壓。配置示波器,使通道1上顯示比較器輸出訊號,通道2上顯示DAC輸出訊號。

將邏輯分析儀中的前4個數位通道分組,並將解碼器設定為並行。

下載 SAR ADC腳本 ,並使用Scopy介面運行腳本。

使用逐次逼近法,根據從比較器輸出端收到的回饋更新數位碼。

利用示波器在時域內實現DAC輸出的逼近行為視覺化。產生的波形如圖18所示。

Figure 18. SAR ADC approximation plot.
圖18.SAR ADC逐次逼近波形

經過幾個逼近步驟後,輸出值接近輸入值(設置為2 V)。

AD7920 12位元ADC

背景資訊

AD7920是一款12位元高速、低功耗SAR ADC。其可採用單電源供電,電源電壓範圍為2.35 V至5.25 V。此ADC支援序列介面。串列時脈提供轉換時脈,並在轉換期間控制來自AD7920的資訊傳輸。轉換過程和資料擷取過程透過/CS和串列時脈進行控制,從而為器件與微處理器或DSP介面創造了條件。輸入訊號在/CS的下降沿進行採樣,而轉換同時在此處啟動。圖19顯示了ADC採樣階段和轉換階段的簡化原理示意圖。

在採樣階段,SW2閉合且SW1置於A。在此設定下,比較器保持在平衡狀態,採樣電容採集VIN的訊號。為使ADC啟動轉換,SW2斷開,而SW1移至位置B,使比較器變得不平衡。控制邏輯和電荷再分配DAC可以加上和減去採樣電容中的固定電荷數量,使得比較器恢復到平衡狀態,進而轉換完成。

硬體設定

圖21提供了AD7920的典型連接設定。VREF取自內部VDD,因此其應充分解耦。這將提供0 V到VDD的類比輸入範圍。轉換結果以16位元文字輸出,前4位元為0,後12位元或10位元MSB為結果。

Figure 19. AD7920 acquisition and conversion phase.
圖19.AD7920採樣和轉換階段
Figure 20. AD7920 breadboard connections.
圖20.AD7920麵包板連接
Figure 21. AD7920 typical connections
圖21.AD7920典型連接

程式步驟

打開Scopy,致能正電源為3 V。配置訊號產生器的通道1為0 V到3 V之間的某一恆定值,例如該域的中間值1.5 V。可以在示波器上監視這些電壓的實際值。

Figure 22. V<sub>IN</sub> (Channel 1) and V<sub>REF</sub> (Channel 2) voltages.
圖22.VIN(通道1)和VREF(通道2)電壓

在邏輯分析儀中,將DIO0、DIO1和DIO2配置為一個組通道。將該組通道設置為SPI,各通道設定為對應的SPI訊號——DIO0為CS#,DIO1為CLK,DIO2為MISO。當CS#下降緣啟動資料傳輸時,應將DIO0觸發器設定為下降緣。將DIO1觸發器設定為低位準,並從觸發器設定中將「觸發器邏輯」設定為AND。DIO2是ADC的輸出訊號,不需要觸發器設定。致能邏輯分析儀,其應在等待觸發訊號。

在模式產生器中配置時脈訊號。使能DIO1通道,將其「模式」設定為5 MHz頻率的時脈,然後按一下Run(運行)。可以從數位IO工具控制CS#。當切換配置為輸出接腳的DIO0接腳時,轉換機會開始。如果CS#的下降緣和CLK的低位準狀態同時發生,轉換將啟動,應能在邏輯分析儀中看到輸出訊號和MISO十六進位資料,如圖23所示。

Figure 23. SPI interface of the AD7920.
圖23.AD7920的SPI接口

圖23.AD7920的SPI接口 可使用ADC轉換函數的公式檢查結果,其中MISO資料為數位輸出碼,示波器通道1上讀取的電壓為類比輸入,示波器通道2上讀取的電壓為基準輸入,N為AD7920的位數。

Equation 1
Equation 2
Equation 3
Equation 4
Equation 5

以上計算得出的結果是ADC輸入電壓為1.5 V,在示波器通道1上讀出的也是該值。

額外活動:雙斜率ADC

雙斜率ADC(或變體)是許多高精度數位電壓表的核心元件。此架構具有幾個有用的特性:由於大多數誤差源都會抵消,因此只需要幾個精密元件,還可以透過配置來抑制特定雜訊頻率,如50 Hz或60 Hz線路雜訊,並且對高頻雜訊不敏感。

Figure 24. Dual-slope ADC structure.
圖24.雙斜率ADC結構

轉換器的工作原理如下:在固定時間內對積分器施加未知輸入電壓(稱為上坡(runup)),然後對積分器施加與輸入極性相反的已知基準電壓(稱為下坡(rundown))。因此,輸入電壓可以根據基準電壓和下坡-上坡時間比計算得到:

Equation 6
Figure 25. Dual-slope ADC integrator output waveforms.
圖25.雙斜率ADC積分器輸出波形

可以看出,雙斜率轉換器的精度不受大多數元件容差的影響:

  • 積分器的電阻和電容容差會影響輸出斜率,但同時也會影響上坡和下坡。
  • 用於設定上坡時間和測量下坡時間的時基誤差對兩個時間的影響是相同的。

基準電壓必須準確,因為其會直接影響測量結果。另一個誤差源是積分器電容中的電介質吸收,因此聚丙烯或聚苯乙烯是理想選擇,而鋁電解不太合適。

Figure 26. Dual-slope ADC integrator output waveforms.
圖26.雙斜率ADC積分器輸出波形

圖26所示為雙斜率ADC的頻率回應。在固定時間間隔(上坡)內對輸入採樣,上坡開始時電壓對結果的影響與上坡結束時電壓對結果的影響一樣。有時也將此稱為箱式平均值,其能夠抑制在1/T、2/T、3/T等頻率下發生的干擾(雜訊)。200 ms積分時間對應於10個週期的50 Hz雜訊和12個週期的60 Hz雜訊;由於其能夠抑制線路雜訊,因此通常將其作為上坡時間。

模擬

請開啟此處所提供的LTspice®DualSlope.asc

Figure 27. Dual-slope ADC integrator schematic.
圖27.雙斜率ADC積分器原理圖

運行模擬,探測Vintegrate節點。

Figure 28. Dual-slope ADC integrator Simulation 1.
圖28.雙斜率ADC積分器模擬1

該模擬將60 Hz線路雜訊增加到直流輸入電壓中。透過.step指令運行幾種情況——1 V、2 V、3 V、4 V 5 V輸入電壓以及60 Hz線路雜訊的幾個不同相位。由於200 ms上坡時間是60 Hz線路週期的整數,所以雜訊在頻率回應中為零,並且無論相位如何,下坡時間都不受影響。將頻率更改為62.5 Hz,使其處於頻率回應的峰值。

Figure 29. Dual-slope ADC integrator Simulation 2.
圖29.雙斜率ADC積分器模擬2

硬體設定

為雙斜率ADC建構麵包板電路,如圖30所示,並按照圖示對M2K進行連接。

Figure 30. Dual-slope ADC integrator breadboard circuit.
圖30.雙斜率ADC積分器麵包板電路

程式步驟

打開Scopy。核心Scopy初始設定檔案 Dual_slope_scopy_setup.ini以協助設定。

電源:致能追蹤,設定為±5 V。

數位IO:DIO2設定為OUT,設定為1。

模式產生器:組DIO0、DIO1,模式:導入(載入檔dual_slope_pattern.csv)。頻率設定為5 Hz。

訊號產生器:通道1初始設定為恆定2.5 V。

示波器:200 ms時基,通道1設定為400 mV/刻度。降緣觸發器,200 mV(將在積分器重置間隔開始時觸發M2K)。

Figure 31. Dual-slope ADC integrator waveform.
圖31.雙斜率ADC積分器波形

當基準電壓源連接到-5 V電源並將輸入電壓設定為2.5 V時,請注意下坡為2格(400 ms),而上坡為1格(200 ms)。因此:

VIN = 5 V × (200 ms / 400 ms) = 2.5 V

透過改變輸入電壓,可以看到上坡時間發生變化。波形如圖32所示。

Figure 32. Dual-slope ADC integrator waveform for different input voltages.
圖32.不同輸入電壓的雙斜率ADC積分器波形

實際實現雙斜率轉換器時,將使用一個微控制器來控制積分器並設定上坡/測量下坡時間。大多數微控制器都提供計數器周邊,因而很容易實現。

問題:

您能否說出ADC的若干實際應用?

答案可以在 學子專區 部落格上找到。