過采樣與位分辨率
數字信號處理中提升有效位分辨率的方法
位(比特)分辨率與采樣率是模數轉換器(ADC)最重要的兩個參數。高位分辨率的ADC可以有效地減少由采樣造成的量化噪聲,從而提高整個數字信號處理(DSP)的質量。大多數ADC擁有較為固定的位分辨率與采樣率。然而,某些依賴DSP的儀器,比如數字儲存示波器,可能需要用來接收不同頻段的輸入信號。因此,使用固定的采樣率與位分辨率進行采樣在這類應用很可能不是最優的解決方案。在這份應用指南中,我們將向您介紹如何通過 過采樣 的方式提高有效位分辨率。之后通過實驗向您展示Moku:Lab與Moku:Go是如果通過其強大的機載運算能力,在不同的使用場景下自動使用過采樣來提升測量結果。
簡介
在過去的幾十年中,半導體的制造工藝得到指數級的提升。單位面積下芯片半導體的數量也同樣得到了多個數量級的提升。許多信號處理的設備,比如音頻錄制與播放設備,都由模擬信號處理過渡到了信號數字處理。數字信號處理(DSP)通常有著更簡單的結構:模數轉換器(ADC)首先將模擬信號轉換成數字信號。之后,DSP芯片對信號進行實時處理,再通過數模轉換器(DAC)等設備輸出給其他裝置。許多儀器通過搭載特殊應用集成電路(ASIC)來實現信號的處理。然而,現場可編程邏輯門陣列(FPGA)的飛速發展給我們提供了更加便捷的選項。通過ADC-DSP-DAC的設計思路,FPGA的可編程性允許我們將不同的DSP算法部署到同一個硬件上。Liquid Instruments的Moku實驗平臺搭載了Xilinx的SoC/FPGA作為核心芯片,可將多達12種不同的測試測量儀器集成到一個硬件平臺上。通過簡單的操作,用戶可以在數秒內切換不同的儀器。Moku平臺的高集成度與快速切換儀器的特性,使其無論是在本科實驗室教學,科研院所,還是商業產品研發中都能提供平滑,無縫的用戶體驗。
模數轉換是高質量測量的重要環節。ADC通常對一個輸入電壓進行采樣,然后將這個電壓轉換成一個固定位數的二進制數。采樣的速度(采樣率)與輸出的位數是ADC最重要的兩個特征值。更高的位數通常可以使得模擬信號被更精確的轉換并表達。比如,如果我們有一個2 Vpp的輸入范圍,一個8位的ADC最小的量化步驟為 mV。如果我們使用一個12位的ADC,則最小量化步驟可以被減小到 mV。因此,更高的位數可以給我們提供更精確的測量結果。然而,更高的ADC位數會增大整個DSP的數據吞吐量。當我們的DSP擁有固定運算能力的時候,ADC最高的位數通常會被其最高采樣率所限制。但當輸入信號頻率較低時(不需要以最高的采樣率進行采樣時),一部分的運算能力又可能被浪費。為了提高DSP的運算效率,過采樣技術被運用到了Moku平臺中。通過過采樣,我們可以犧牲一部分的采樣率來換取更高的有效位數(ENOB),保證芯片的運算能力被最有效的利用。我們將向您介紹如何通過 過采樣 的方式提高有效位分辨率。之后通過實驗向您展示Moku:Lab與Moku:Go是如果通過其強大的機載運算能力,在不同的使用場景下自動使用過采樣來提升測量結果。
圖1:Liquid Instruments 搭載FPGA的Moku:Go(左)與Moku:Lab(右)的測試測量平臺。
過采樣的直觀認識
過采樣在時間軸上,對n個采樣點取平均數,之后再將這一個平均后的單一數據點發送給后續的數字信號處理流程中。這一過程會使有效采樣率下降n倍。要對過采樣有一個直觀的認識,首先我們來復習一下ADC的基本知識。
ADC在指定的頻率下測量一個模擬輸入(Analog Input)的電壓值,并將所測得的電壓值根據輸入電壓的大小轉換成一個二進制數。假設我們有一個2位的ADC,它的輸入范圍為0到1 V。圖2中,我們展示了一個簡化的ADC結構圖(左),以及根據輸入電壓(x軸)所產生的二進制數輸出(y軸)。
圖2: 一個簡化版的2位ADC(左),與其所對應的輸入輸出值(右)。
我們假設這個ADC,在 0 到 0.125 V, 0.125 到 0.375 V, 0.375 到 0.625 V,0.625 到 1 V 的輸入范圍內,分別對應產生[0, 0], [0, 1],[1 ,0], 與[1, 1]數字信號。如果我們的系統從這個ADC中得到了[1, 0]的輸出,我們估計輸入的信號為0.5 V。假設實際的輸入信號為0.4 V,那么在這個過程中,系統產生了0.1 V的量化誤差。這個量化誤差可以通過提高有效位寬得以減小。
現在,讓我們來看一下平均如何幫助我們提高分辨率的。在實際場景中,ADC的輸入電壓與讀取包含了一定輸入噪聲。在這個展示中,我們假設噪聲為高斯形狀的白噪聲,并且中心值為0.4 V。通過多次采樣,我們可以構建一個所得二進制數輸出的直方圖。
圖3:0.4 V為中心,高斯型狀噪聲的信號演示圖。藍色的直方圖展示了多次采樣后,一種可能的ADC輸出分布。
從圖中可以看出,盡管大多數采樣點都落在了[1, 0],然而依然有一些采樣點落在了其他區域中。如果我們取平均值,就可以得出實際電壓在0.25 V和0.5 V之間,并更趨近于0.5 V。因此,通過多次采樣(過采樣),我們可以對輸入電壓的實際值有更好的預估,打破原有的位數限制。
然而,在這個過程中我們做了以下假設:首先,輸入的信號或ADC本身所產生的噪聲為高斯白噪聲。而且,這個噪聲本身超出了相鄰的兩個數位的檢測界限。如果這些條件不能達成,則過采樣可能并不能有效提高分辨率。
過采樣對分辨率的影響可以通過下面的公式來表述,其中 是ADC原有的采樣率, 為過采樣之后的有效采樣率。
有關這個公式的具體推導,請參見下列書籍:
Li, Tan. Digital Signal Processing. Academic Press, 2008
過采樣在Moku當中的應用
過采樣在許多Moku的儀器中,會根據用戶的設置自動啟動。在這個應用指南中,我們將展示Moku:Go的數據記錄儀與PID控制器是如何通過過采樣來提高測量質量的。
Moku:Go數據記錄儀
Moku:Go本身搭載了12位的ADC,擁有10或者50 Vpp的輸入范圍。在10 Vpp的范圍下,理論最小量化步驟為10/212,大約為2.44 mV。通過選擇Precision(精準)模式,數據記錄儀會自動過采樣以提供更高的分辨率。我們將一個波形發生器的輸出連入Moku:Go,輸入一個0 V直流信號。然后,我們每10秒增加1 mV的電壓,并使用數據記錄儀在10 Sa/s的采樣率下記錄數據。
圖4: 通過Moku:Go數據記錄儀記錄1 mV階梯形狀信號。
所采集的數據被轉存為.csv格式發送到電腦中。所測得的電壓被繪制到了下圖中。我們可見,雖然ADC自身只有12位的分辨率,然后儀器依然可以解析1 mV的增長。
圖5:數據記錄儀準確記錄了1 mV的增長。
Moku:Go PID控制器
PID控制器是閉環控制中常用到的元件。Moku:Go所搭載的FPGA可使其擁有在20 kHz小于30°的輸入輸出延時,可用來控制一些高帶寬設備。由于輸入輸出延時,Moku的PID可以遠小于125 MSa/s的速率進行采樣。這樣可以提高大約2位的分辨率,使其可以分辨1 mV的信號。在這個實驗中,我們將演示Moku:Go的PID是如何自動應用過采樣的。我們關閉I與D控制器,并將P控制器調節到40 dB的增益。這樣,任何輸入信號都會被放大100倍。我們再次輸入圖5中所展示的1 mV階梯信號,并通過PID自帶的觀測點觀察輸出(圖6)。
圖6:Moku:Go PID自動過采樣輸入信號,并將信號再放大100倍后,以100 mV的增長輸出。
輸出的信號被展示在內置的示波器中。我們可以看到,盡管ADC的自身分辨率只有2.44 mV,PID依然可以解析1 mV的信號。
結論
過采樣是一種通過調節采樣率,有效提升DSP有效位分辨率的方法。Moku設備依托于其強大的FPGA信號處理能力,自動將這一個方法應用到諸多儀器中,有效的提高了測量的準確性和精度。
原文標題:【分享】數字信號處理中提升有效位分辨率的方法
文章出處:【微信公眾號:貝思科爾】歡迎添加關注!文章轉載請注明出處。
審核編輯:湯梓紅
-
芯片
+關注
關注
456文章
51170瀏覽量
427227 -
adc
+關注
關注
99文章
6533瀏覽量
545747 -
測量
+關注
關注
10文章
4938瀏覽量
111812
原文標題:【分享】數字信號處理中提升有效位分辨率的方法
文章出處:【微信號:BasiCAE,微信公眾號:貝思科爾】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論