如何為逐次逼近型ADC設(shè)計(jì)可靠的數(shù)字接口?
簡介
本文引用地址:http://www.ex-cimer.com/article/201710/366589.htm逐次逼近型模數(shù)轉(zhuǎn)換器(因其逐次逼近型寄存器而稱為SAR ADC)廣泛運(yùn)用于要求最高18位分辨率和最高5 MSPS速率的應(yīng)用中。其優(yōu)勢包括尺寸小、功耗低、無流水線延遲和易用。
主機(jī)處理器可以通過多種串行和并行接口(如SPI、I2C和LVDS)訪問或控制ADC。本文將討論打造可靠、完整數(shù)字接口的設(shè)計(jì)技術(shù),包括數(shù)字電源電平和序列、啟動(dòng)期間的I/O狀態(tài)、接口時(shí)序、信號質(zhì)量以及數(shù)字活動(dòng)導(dǎo)致的誤差。
數(shù)字I/O電源電平和序列
多數(shù)SAR ADC都提供獨(dú)立的數(shù)字I/O電源輸入(VIO或VDRIVE),后者決定接口的工作電壓和邏輯兼容性。此引腳應(yīng)與主機(jī)接口(MCU、DSP或FPGA)電源具有相同的電壓。數(shù)字輸入一般應(yīng)在DGND-0.3 V與VIO + 0.3 V之間,以避免違反絕對最大額定值。須在VIO引腳與DGND之間連接走線短的去耦電容。
采用多個(gè)電源的ADC可能擁有明確的上電序列。應(yīng)用筆記AN-932《電源序列》為這些ADC電源的設(shè)計(jì)提供了良好的參考。為了避免正向偏置ESD二極管,避免數(shù)字內(nèi)核加電時(shí)處于未知狀態(tài),要在接口電路前打開I/O電源。模擬電源通常在I/O電源之前加電,但并非所有ADC均是如此。請參閱并遵循數(shù)據(jù)手冊中的內(nèi)容,確保序列正確。
啟動(dòng)期間的數(shù)字I/O狀態(tài)
為了確保初始化正確無誤,有些SAR ADC要求處于某些邏輯狀態(tài)或序列,以實(shí)現(xiàn)復(fù)位、待機(jī)或關(guān)斷等數(shù)字功能。在所有電源都穩(wěn)定之后,應(yīng)施加指定脈沖或組合,以確保ADC啟動(dòng)時(shí)的狀態(tài)符合預(yù)期。例如,一個(gè)高脈沖在RESET上持續(xù)至少50 ns,這是配置AD7606以使其在上電后能正常運(yùn)行所必須具備的條件。
在所有電源均完全建立之前,不得切換數(shù)字引腳。對于SAR ADC,轉(zhuǎn)換開始引腳CNVST可能對噪聲敏感。在圖1所示示例中,當(dāng)AVCC、DVCC和VDRIVE仍在上升時(shí),主機(jī)cPLD拉高CNVST。這可能使AD7367進(jìn)入未知狀態(tài),因此,在電源完全建立之前,主機(jī)應(yīng)使CNVST保持低電平。
圖1. 在電源上升時(shí)拉高CNVST可能導(dǎo)致未知狀態(tài)
數(shù)字接口時(shí)序
轉(zhuǎn)換完成之后,主機(jī)可以通過串行或并行接口讀取數(shù)據(jù)。為了正確讀取數(shù)據(jù),須遵循特定的時(shí)序策略,比如,SPI總線需要采用哪種模式等。不得違反數(shù)字接口時(shí)序規(guī)范,尤其是ADC和主機(jī)的建立和保持時(shí)間。最大比特率取決于整個(gè)循環(huán),而不僅僅是最小額定時(shí)鐘周期。圖2和下列等式展示了如何計(jì)算建立和保持時(shí)間裕量。主機(jī)把時(shí)鐘發(fā)送至ADC并讀取ADC輸出的數(shù)據(jù)。
圖2. 建立和保持時(shí)序裕量
tCYCLE = tJITTER+ tSETUP + tPROP_DATA+ tPROP_CLK + tDRV + tMARGIN
tCYCLE: 時(shí)鐘周期 = 1/fCLOCK
tJITTER: 時(shí)鐘抖動(dòng)
tSETUP: 主機(jī)建立時(shí)間
tHOLD: 主機(jī)保持時(shí)間
tPROP_DATA: 從ADC到主機(jī)的傳輸線路的數(shù)據(jù)傳播延遲
tPROP_CLK: 從主機(jī)到ADC的傳輸線路的數(shù)據(jù)傳播延遲
tDRV: 時(shí)鐘上升/下降沿后的數(shù)據(jù)輸出有效時(shí)間
tMARGIN: 裕量時(shí)間大于等于0表示達(dá)到建立時(shí)間或保持時(shí)間要求,小于0表示未達(dá)到建立時(shí)間或保持時(shí)間要求。
主機(jī)建立時(shí)間裕量
tMARGIN_SETUP = tCYCLE, MIN – tJITTER – tSETUP – tPROP_DATA – tPROP_CLK – tDRV, MAX
建立時(shí)間等式以最大系統(tǒng)延遲項(xiàng)定義最小時(shí)鐘周期時(shí)間或最大頻率。要達(dá)到時(shí)序規(guī)格,必須大于等于0。提高周期(降低時(shí)鐘頻率)以解決系統(tǒng)延遲過大問題。對于緩沖器、電平轉(zhuǎn)換器、隔離器或總線上的其他額外元件,把額外延遲加入tPROP_CLK和tPROP_DATA。
類似地,主機(jī)的保持時(shí)間裕量為
tMARGIN_HOLD = tPROP_DATA + tPROP_CLK + tDRV – tJITTER – tHOLD
保持時(shí)間等式規(guī)定了最小系統(tǒng)延遲要求,以避免因違反保持時(shí)間要求而出現(xiàn)邏輯錯(cuò)誤。要達(dá)到時(shí)序規(guī)格,必須大于等于0。
ADI公司帶SPI接口的許多SAR ADC都是從CS或CNV的下降沿為MSB提供時(shí)鐘信號,剩余的數(shù)據(jù)位則跟隨SCLK的下降沿,如圖3所示。在讀取MSB數(shù)據(jù)時(shí),要使用等式中的tEN而非tDRV。
圖3. AD7980 3線CS模式下的SPI時(shí)序
因此,除了最大時(shí)鐘速率以外,數(shù)字接口的最大工作速率也取決于建立時(shí)間、保持時(shí)間、數(shù)據(jù)輸出有效時(shí)間、傳播延遲和時(shí)鐘抖動(dòng)。
在圖4中,DSP主機(jī)訪問AD7980處于3線CS模式下,其中,VIO = 3.3 V。DSP鎖存SCLK下降沿上的SDO信號。DSP的額定最小建立時(shí)間為5 ns,最小保持時(shí)間為2 ns。對于典型的FR-4PCB板,傳播延遲約為180 ps/in。緩沖器的傳播延遲為5 ns。CNV、SCLK和SDO的總傳播延遲為
tPROP = 180 ps/in × (9 in + 3 in) + 5 ns = 7 ns
tJITTER = 1 ns。主機(jī)SCLK的工作頻率為30 MHz,因此,tCYCLE= 33 ns
tSETUP_MARGIN= 33 ns –1 ns – 5 ns – 7 ns – 11 ns – 7 ns = 2 ns
tHOLD_MARGIN= 11 ns + 7 ns + 7 ns – 1 ns – 2 ns = 22 ns
建立時(shí)間和保持時(shí)間裕量均為正,因此,SPI SCLK可以在30 MHz下工作。
圖4. DSP和AD7980之間的數(shù)字接口
數(shù)字信號質(zhì)量
數(shù)字信號完整性(包括時(shí)序和信號質(zhì)量)確保:在額定電壓下接收信號;不相互干擾;不損壞其他器件;不污染電磁頻譜。信號質(zhì)量由多個(gè)項(xiàng)定義,如圖5所示。本部分將介紹過沖、振鈴、反射和串?dāng)_。
圖5. 常用信號質(zhì)量規(guī)格
反射是阻抗不匹配導(dǎo)致的結(jié)果。當(dāng)信號沿著走線傳播時(shí),每個(gè)接口處的瞬時(shí)阻抗都不相同。部分信號會反射回去,部分信號會繼續(xù)沿著線路傳播。反射可能在接收器端產(chǎn)生過沖、欠沖、振鈴和非單調(diào)性時(shí)鐘邊沿。
過沖和欠沖可能損壞輸入保護(hù)電路,或者縮短IC的使用壽命。圖6所示為AD7606的絕對最大額定值。數(shù)字輸入電壓應(yīng)在–0.3 V和VDRIVE + 0.3 V之間。另外,如果振鈴高于最大VIL或小于最小VIH可能導(dǎo)致邏輯誤差。
絕對最大額定值
除非另有說明,TA = 25℃
圖6. AD7606的絕對最大額定值
為了減少反射:
●盡量縮短走線的長度
●控制走線的特性阻抗
●消除分支
●使用適當(dāng)?shù)亩私臃桨?/p>
●用環(huán)路面積小的固體金屬作為返回電流參考平面
●使用較低的驅(qū)動(dòng)電流和壓擺率
針對走線特性阻抗的計(jì)算,目前有許多軟件工具或網(wǎng)站,比如Polar Instruments Si9000 PCB傳輸線路場求解器。借助這些工具,特性阻抗計(jì)算起來非常簡單,只需選擇傳輸線路型號并設(shè)置相應(yīng)的參數(shù)即可,比如電介質(zhì)類型和厚度以及走線寬度、厚度和隔離。
作為一種新興標(biāo)準(zhǔn),IBIS用于描述IC數(shù)字I/O的模擬行為。ADI提供針對SAR ADC的IBIS模型。預(yù)布局仿真可檢測時(shí)鐘分布、芯片封裝類型、電路板堆疊、網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)和端接策略。也可檢測串行接口時(shí)序限制以便為定位和布局提供指導(dǎo)。后仿真可驗(yàn)證設(shè)計(jì)是否符合所有指導(dǎo)方針和限制的要求,同時(shí)檢測是否存在反射、振鈴、串?dāng)_等違反要求的情況。
在圖7中,一個(gè)驅(qū)動(dòng)器通過一條12英寸的微帶線路連接SCLK1,另一個(gè)驅(qū)動(dòng)器通過一個(gè)與微帶串聯(lián)的43Ω電阻連接SCLK2。
圖7. 驅(qū)動(dòng)AD7606 SCLK
在圖8中,SCLK1上的大過沖違反了–0.3 V至+3.6 V的絕對最大額定值。串聯(lián)電阻可減小SCLK2上的壓擺率,使信號處于額定值之內(nèi)。
圖8. AD7606 IBIS過沖模型仿真
串?dāng)_是能量通過互電容(電場)或互感(磁場)在并行傳輸線路間耦合的情況。串?dāng)_量取決于信號的上升時(shí)間、并行線路的長度以及它們之間的間距。
控制串?dāng)_的一些常用方法為:
●增加線路間距
●減小并行布線
●使走線靠近參考金屬平面
●使用適當(dāng)?shù)亩私臃桨?/p>
●減小信號壓擺率
數(shù)字活動(dòng)導(dǎo)致的性能下降#e#
數(shù)字活動(dòng)導(dǎo)致的性能下降
數(shù)字活動(dòng)可能導(dǎo)致SAR ADC性能下降,使SNR因數(shù)字地或電源噪聲、采樣時(shí)鐘抖動(dòng)和數(shù)字信號干擾而減小。
孔徑或采樣時(shí)鐘抖動(dòng)設(shè)定SNR限值,尤其是對高頻輸入信號。系統(tǒng)抖動(dòng)有兩個(gè)來源: 來自片內(nèi)采樣保持電路的孔徑抖動(dòng)(內(nèi)部抖動(dòng)),以及采樣時(shí)鐘上的抖動(dòng)(外部抖動(dòng))??讖蕉秳?dòng)為轉(zhuǎn)換間的采樣時(shí)間變化,為ADC的函數(shù)。采樣時(shí)鐘抖動(dòng)通常為主要誤差源,但兩個(gè)源都會導(dǎo)致模擬輸入采樣時(shí)間變化,如圖9所示。它們的影響難以區(qū)分。
總抖動(dòng)會產(chǎn)生誤差電壓,ADC總SNR的限制因素為
總抖動(dòng) = tJ (rms)
總抖動(dòng) = √(ADC孔徑抖動(dòng))2+(采樣時(shí)鐘抖動(dòng))2
其中,f為模擬輸入頻率,tJ為總時(shí)鐘抖動(dòng)。
圖9. 采樣時(shí)鐘抖動(dòng)導(dǎo)致的誤差電壓
數(shù)字輸出開關(guān)導(dǎo)致的電源噪聲應(yīng)與敏感的模擬電源相隔離。分別去耦模擬和數(shù)字電源,密切注意地回流路徑。
高精度SAR ADC可能對數(shù)字接口上的活動(dòng)很敏感,即使電源適當(dāng)去耦和隔離時(shí)。突發(fā)時(shí)鐘往往優(yōu)于連續(xù)時(shí)鐘。數(shù)據(jù)手冊通常會列出接口不應(yīng)活動(dòng)的安靜時(shí)間。在較高吞吐速率條件下,可能難以減少這些時(shí)間內(nèi)的數(shù)字活動(dòng),通常為采樣時(shí)刻及出現(xiàn)關(guān)鍵位判斷點(diǎn)時(shí)。
結(jié)論
密切注意數(shù)字活動(dòng),確保SAR ADC轉(zhuǎn)換有效。數(shù)字活動(dòng)導(dǎo)致的誤差可能使SAR ADC進(jìn)入未知狀態(tài),導(dǎo)致故障,或者降低性能。希望本文能幫助設(shè)計(jì)師排查根本原因,同時(shí)還能提供解決方案。
參考文獻(xiàn)
Kester, Walt. “數(shù)據(jù)轉(zhuǎn)換器支持電路”《數(shù)據(jù)轉(zhuǎn)換手冊》,第7章,ADI公司,2004年
Brad Brannon, AN-756應(yīng)用筆記。 采樣系統(tǒng)以及時(shí)鐘相位噪聲和抖動(dòng)的影響,ADI公司,2004年
Ritchey, Lee W. 《一舉成功:高速PCB和系統(tǒng)實(shí)用設(shè)計(jì)手冊》,第1卷,Speeding Edge,2003年
Usach, Miguel. AN-1248應(yīng)用筆記。 SPI接口,ADI公司,2013年
Casamayor, Mercedes. AN-715應(yīng)用筆記:走近IBIS模型:什么是IBIS模型?它們是如何生成的? ADI公司,2004年
評論