作者:Lluis Beltran Gil
摘要
本文介紹了基于SAR ADC的系統和基于sigma-delta (∑-Δ) ADC的分布式數據采集系統同步的傳統方法,且探討了這兩種架構之間的區別。我們還將討論同步多個Σ-Δ ADC時遇到的典型不便。最后,提出一種基于AD7770采樣速率轉換器(SRC)的創新同步方法,該方法顯示如何在不中斷數據流的情況下,在基于Σ-Δ ADC的系統上實現同步。
簡介
您是否曾經想象過,自己正坐在一輛打破音障的超音速飛機上?自從協和式超音速噴射客機退役后,這似乎已經成了一個不可能實現的夢想,除非您是一名軍機駕駛員或是一名宇航員。
身為一名電子工程師,我對一切事物的運作方式都非常著迷,比如對布谷鳥鐘,我很好奇它的每個獨立系統如何與其他系統和諧地保持同步。
我們生活的各方各面也是這樣。我們生活在一個相互聯系的世界,一切都是同步的——從銀行服務器到智能手機的警報。區別就在于各種特定情況下要解決的問題的大小或復雜性、不同系統的同步與所需的精度(或者容差),或者要同步的系統的大小。
分布式系統
在獨立設計中,使用的本地時鐘或振蕩器本身就會進行同步。但是,當獨立設計需要集成到更廣泛的系統(我們稱之為分布式系統)中時,問題的角度會發生改變,獨立系統也應該根據用例進行設計。
要計算一個系統中的電器的瞬時功耗,必須同時測量電流和電壓。
通過快速分析,您可以用三種不同的方法來解決問題:
- 使用兩個同步單通道ADC來測量電流和電壓。
- 使用一個多通道同步采樣ADC,它的每個通道都可能有一個ADC,或者每個通道有一個采樣保持電路。
- 使用一個多路復用ADC,并且插入測量值,以補償電壓和電流測量之間的時間平移。
至此,您可能已經獲得可以解決該問題的可靠解決方案,但是,如果我們擴展系統需求,從原來的單件電器輻射到整個應用,必須測量整個工廠中的每個交流電源插座的功率呢?現在,您原有的瞬時功耗設計必須分布應用于整個工廠,而且要保證其設計能夠同時測量和計算每個交流電源插座功耗。
您現在面對的是一個分布式系統,它由一組相互獨立但又緊密相關的子系統組成。每個子系統需要提供在同一時間點采樣的數據,以便計算工廠的瞬時總功耗。
最后,如果我們繼續擴展假設的應用示例,想象一下,如果要將您的原始設計集成到國家電網之中。現在,您檢測的是數百萬瓦功率,任何一個鏈路出現問題都會導致可怕后果,例如因為壓力導致的線路損壞,反過來,這又可能導致停電,造成可怕后果,例如火災,或者醫院停電。
因此,所有系統都必須準確同步,也就是說,在整個電網中捕獲的數據必須是在同一時刻捕獲,無論各數據所處的地理情況如何,具體如圖1所示。
圖1.電網同步。
在這些情況下,您可以將其視為一個關鍵的分布式系統,且必須從每個感知節點獲得連續的、完全同步的數據流。
與電網示例類似,這些要求也適用于航空航天或工業市場中的許多其他關鍵分布式系統示例。
奈奎斯特ADC和過采樣ADC
在開始解釋如何同步多個ADC的采樣時刻之前,最好先了解每個ADC拓撲如何決定何時采樣模擬輸入信號,以及每種架構的優缺點。
- 奈奎斯特或SAR ADC:該轉換器的最大輸入頻率由奈奎斯特或半采樣頻率決定。
- 過采樣或Σ-Δ ADC:最大輸入頻率一般與最大采樣頻率成比例,一般約為0.3。
一方面,SAR ADC的輸入信號采樣時刻通過施加于轉換開始引腳的外部脈沖進行控制。如圖2所示,將一個通用轉換開始信號應用到被同步系統中每個SAR ADC上,它們都會在轉換起始信號的邊緣同時觸發采樣。只要確保信號之間沒有明顯的延遲,即轉換開始脈沖在同一時刻及時到達每個SAR ADC,系統同步就很容易實現。注意,到達轉換開始引腳的脈沖與實際采樣時刻之間的傳播延遲不能因設備而不同,在采樣速度相對較慢的精密ADC中,這種延遲不顯著。
在應用轉換開始脈沖之后的某個時間(也稱為轉換時間),轉換結果將通過所有ADC的數字接口顯示。
圖2.同步基于SAR ADC的分布式系統。
另一方面,由于架構不同,Σ-Δ ADC操作也略有不同。在這種類型的轉換器中,內部核心(即調制器)對輸入信號采樣的頻率(調制器頻率,fMOD)比奈奎斯特規定的最小頻率高,因此它被稱為過采樣ADC。
通過按比嚴格需要的頻率更高的頻率采樣,能夠收集更多的樣本。然后采用平均濾波器對所有ADC數據進行后處理,原因有二:
- 每4個平均樣本,噪聲降低1位。
- 平均濾波器轉換函數是一個低通濾波器。當Σ-Δ架構將其量化噪聲推向高頻時,應該移除平均濾波器轉換函數,如圖3所示。所以,本次濾波由這個平均濾波器完成。
圖3.∑-?噪聲整形。
樣本的平均數量,即抽取率(N),會決定輸出數據速率(ODR),輸出數據速率是ADC提供轉換結果的速率,單位為樣本/秒,如公式1所示。抽取率通常是整數,帶有一組可在數字濾波器上離散編程的預定義值(即N = 32、64、128等)。因此,通過保持fMOD常量,ODR將根據預定義值集內的N值進行配置。
平均過程通常由一個sinc濾波器在內部實現,調制器的模擬轉換開始脈沖也在內部生成,因此不會從外部管控轉換過程觸發。這種類型的轉換器實際會連續采樣,跟蹤輸入信號,并處理獲得的數據。一旦該過程(采樣和平均)完成,轉換器就會生成一個數據就緒信號,告知控制器數據可以通過數字接口回讀。
如圖4所示,∑-?的工作流程可以概括為四個主要步驟:
- 調制器以fMOD頻率對信號采樣。
- 通過sinc數字濾波器對樣本進行平均。
- 對sinc濾波器提供的數據進行偏移和增益校正。
- 數據就緒引腳切換,表示轉換結果已就緒,可由控制器回讀。
圖4.Σ-Δ ADC工作流程圖。
由于沒有從外部控制何時觸發內部采樣,所以如果要對分布式系統中的多個Σ-Δ ADC進行同步,必須同時對所有數字濾波器實施復位,這是因為平均轉換啟動是由數字濾波器控制的。
圖5顯示在所有Σ-Δ ADC都采用相同的ODR和fMOD的情況下,對同步產生的影響。
圖5.∑-?系統復位同步。
與基于SAR ADC的系統一樣,必須確保復位濾波脈沖同時到達各個子系統。
但是,請注意,數字濾波器每次復位時,數據流都會被中斷,這是因為濾波器必須重新設置。在本例中,數據中斷的持續時間由數字濾波器的順序、fMOD和抽取率決定。在圖6顯示的示例中,濾波器的LPF特性將延遲時間,直到生成有效的輸出。
圖6.由于數字濾波器的建立時間導致的數據中斷。
對分布式系統同步采樣的啟示
在分布式系統中,全局同步信號(我們稱之為Global_SYNC)在所有模塊/子系統之間共享。此同步信號可以由主系統或第三方系統(例如GPS 1 pps)生成,如圖1所示。
接收到Global_SYNC信號后,每個模塊必須重新同步每個轉換器的瞬時采樣(很可能是其本地時鐘),以確保同時性。
在基于SAR ADC的分布式系統中,重新同步本質上很簡單,如前一節所述:本地時鐘(管理轉換開始信號)再次與Global_SYNC信號匹配,之后同步獲得信號。
這意味著要生成頻率雜散,因為在同步期間,會在不同時間和距離采集一個樣本,具體如圖7高亮藍色部分所示。在分布式應用中,這些雜散可能是可以接受的,而中斷數據流在某些應用中則確實至關重要,例如前面提到的電力線監視之類的應用。
圖7.調整SAR ADC轉換過程,使之與全局同步信號匹配。
在基于∑-?的分布式系統中,重新與Global_SYNC信號同步的過程會稍微復雜一些,這是因為調制器會持續對模擬輸入信號采樣,而轉換過程也不像SAR ADC一樣從外部控制。
要對多個基于∑-?的分布式系統實施同步,一個簡單的方法就是重置數字濾波器:丟棄收集和存儲的要在平均濾波器上使用的所有調制器示例,并且清空數字濾波器。這意味著:根據數字濾波器的順序,它需要一些時間才能再次確定其輸出,如圖5和圖6所示。
數字濾波器完成設置之后,會再次提供有效的轉換數據,但考慮到設置所花費的時間,在Σ-Δ ADC上重置數字濾波器可能導致的數據中斷是不可接受的。分布式系統需要重新同步的頻率越高,數據流中斷的次數就越多,而因為這種持續的數據流中斷,Σ-Δ ADC將無法應用于關鍵的分布式系統中。
傳統使用的最小化數據中斷的方法是使用可調諧時鐘,例如PLL,它可以降低全局同步頻率和fMOD頻率之間的誤差。
接收到Global_SYNC脈沖后,可以采用類似以下的流程,計算Σ-Δ ADC轉換開始和Global_SYNC脈沖之間的不確定性:
- 控制器計算采樣時刻(通過了解群延遲從數據就緒信號向后計算,如圖8所示)和Global_SYNC脈沖之間的時間差。群延遲是一份數據手冊規范,說明從對輸入采樣到數據就緒引腳開啟(表示樣本已經就緒,可以讀取)之間的時間間隔。
圖8.被采樣的模擬輸入和數據就緒切換之間的時間延遲。
- 如果采樣時刻和Global_SYNC之間存在時間差,那么本地控制器會量化這個時間差(tahead或tdelayed),如圖9所示。
圖9.量化每個ADC的采樣時刻(假設群延遲已知)和全局同步信號之間的時間差。
- 如果存在差異,可以重新設置∑-?濾波器,或者修改fMOD,以便在幾個采樣期間調整Σ-Δ采樣。無論哪種情況,都可能漏掉幾個樣本。注意,通過改變局部時鐘頻率(fMOD),Σ-Δ ADC會改變其輸出數據速率(ODR = fMOD/N),如此,ADC會減慢或加快對模擬輸入采樣的速度,以期和系統中余下的ADC和Global_SYNC同步。
- 如果fMOD被更新,那么在同步之后,主時鐘頻率會恢復到原來的頻率,以返回到之前的ODR,而子系統則從該時刻開始同步。
在一段時間內改變fMOD的過程如圖10所示。
圖10.同步方法,采用PLL來調諧調制器的頻率。
這種方法在某些情況下可能不適用,因為有幾個細節需要考慮:
- 將調制器頻率更改為非整數倍值可能是不實際的。
- 如果可以對頻率進行微調,那么改變的頻率步長必須很小,否則數字濾波器可能會超出限制,導致同步的實施時間變長。
- 如果所需的ODR改變足夠大,可以通過改變抽取率(N),而不是改變調制器頻率(fMOD)來解決,但是,這也意味著會丟失一些樣本。
- 使用PLL意味著在達到期望的調制器頻率之前,除了自身的建立時間之外,還會額外消耗功率。
一般來說,整個系統的復雜性和成本會隨著系統規模的增大而增加,特別是與SAR ADC相比,對于后者,只需要將轉換開始調整到與Global_SYNC信號匹配,即可輕松解決這個問題。此外,在許多情況下,因為存在上述系統限制,所以Σ-Δ ADC無法使用。
不中斷數據,輕松重新同步Σ-Δ ADC
AD7770系列產品(包括AD7770、AD7771和AD7779)具有內置SRC。隨著這種新架構推出,固定的抽取率(N)導致的限制將不復存在。
SRC允許您采用十進制數(而不僅僅是整數)作為抽取率(N),因此,您可以采用所需的任何輸出數據速率。在之前的同步方法中,由于N是固定的,所以必須更改外部時鐘來調節fMOD,之后才能實施同步。
使用AD7770系列產品之后,N會變成可靈活編程,以及可隨時編程的值,所以無需更改fMOD,也無需中斷數據,即可對ODR編程。
這種對基于Σ-Δ的子系統重新同步的新方法利用SRC來簡化重新同步過程,最大程度地簡化了前面章節提到的復雜性。
新方法如下:
- 接收到Global_SYNC信號之后,各子系統檢查采樣是否同步,以數據就緒信號為參考,利用群延遲查找實際采樣時刻。
- 如果采樣時刻和接收到Global_SYNC信號的時間之間存在時間差,那么本地控制器會量化這個時間差(tahead或tdelayed),如圖9所示。
- 這時,會對一個新的ODR編程,使其通過SRC更改抽取率(N),從而臨時生成更快或更慢的ODR。整個重新同步操作一般會用到4個樣本(如果在AD7771上啟用了sinc5濾波器,則需要6個),但是因為這些樣本仍然有效且完全設置,所以不會導致數據流中斷。
- 一旦接收到所需數量的DRDY,就會重新設置抽取因數,以返回所需的ODR,如此可以保證Σ-?6?2 ADC與其余子系統保持同步,如圖11所示,其不造成數據中斷。
圖11.采樣速率轉換器動態調整ODR,以便在所有設備上重新同步采樣。
結論
關鍵分布式系統需要所有子系統同步進行轉換,且具備持續的數據流。
SAR轉換器提供一種直觀的重新同步采樣方法:通過重新調整轉換開始信號,使其與Global_SYNC脈沖匹配。
在需要高動態范圍(DR)或信噪比(SNR)的應用中,SAR不可使用,但是傳統Σ-?6?2轉換器也變得難以使用,因為這些轉換器不具備靈活性,無法在不中斷數據流的情況下重新調節。
如示例所示,SRC提供了一個無縫同步例程,與其他解決方案相比,它的延遲更小、成本和復雜性更低。
SRC可以在許多應用中一展所長。與電力線監控示例一樣,任何線路頻率變化都可以通過立即動態改變抽取率來補償。如此,保證電力線的采樣頻率始終一致。按照本文所示,在關鍵分布式系統中,SRC也可用于高效重新同步系統,不會造成數據流中斷,也不需要采用額外的元器件,例如PLL。AD7770解決了對基于Σ-Δ ADC的分布式系統進行同步的傳統問題,不會丟失樣本,也不會像基于PLL的方法一樣,額外增加成本和復雜性。
作者簡介
Lluis Beltran Gil畢業于瓦倫西亞理工大學,于2009年獲電子工程學士學位,2012年獲工業工程學士學位。畢業后,Lluis于2013年加入ADI公司,擔任利默里克精密轉換器部的應用工程師,支持溫度傳感器開發。目前,Lluis就職于ADI精密轉換器部SAR ADC應用團隊,工作地點在西班牙瓦倫西亞。
評論
查看更多