中南覆鸥人力资源有限公司

你的位置:首頁 > 電路保護 > 正文

如何為逐次逼近型ADC設(shè)計可靠的數(shù)字接口?

發(fā)布時間:2023-07-22 來源:亞德諾半導(dǎo)體 責(zé)任編輯:lina

【導(dǎo)讀】逐次逼近型模數(shù)轉(zhuǎn)換器(因其逐次逼近型寄存器而稱為SAR ADC)廣泛運用于要求最高18 位分辨率和最高5 MSPS 速率的應(yīng)用中。其優(yōu)勢包括尺寸小、功耗低、無流水線延遲和易用。


逐次逼近型模數(shù)轉(zhuǎn)換器(因其逐次逼近型寄存器而稱為SAR ADC)廣泛運用于要求最高18 位分辨率和最高5 MSPS 速率的應(yīng)用中。其優(yōu)勢包括尺寸小、功耗低、無流水線延遲和易用。


主機處理器可以通過多種串行和并行接口(如SPI、I2C 和LVDS)訪問或控制ADC。本文將討論打造可靠、完整數(shù)字接口的設(shè)計技術(shù),包括數(shù)字電源電平和序列、啟動期間的I/O 狀態(tài)、接口時序、信號質(zhì)量以及數(shù)字活動導(dǎo)致的誤差。


數(shù)字I/O 電源電平和序列

多數(shù)SAR ADC 都提供獨立的數(shù)字I/O 電源輸入(VIO 或 VDRIVEVDRIVE),后者決定接口的工作電壓和邏輯兼容性。此引腳應(yīng)與主機接口(MCU、DSP 或FPGA)電源具有相同的電壓。數(shù)字輸入一般應(yīng)在DGND ? 0.3 V與 VIO+ 0.3 V 之間,以避免違反絕對最大額定值。須在 VIO引腳與DGND 之間連接走線短的去耦電容。


采用多個電源的ADC 可能擁有明確的上電序列。應(yīng)用筆記AN-932 電源時序控制為這些ADC 電源的設(shè)計提供了良好的參考。為了避免正向偏置ESD 二極管,避免數(shù)字內(nèi)核加電時處于未知狀態(tài),要在接口電路前打開I/O 電源。模擬電源通常在I/O電源之前加電,但并非所有ADC 均是如此。請參閱并遵循數(shù)據(jù)手冊中的內(nèi)容,確保序列正確。


啟動期間的數(shù)字I/O 狀態(tài)

為了確保初始化正確無誤,有些SAR ADC 要求處于某些邏輯狀態(tài)或序列,以實現(xiàn)復(fù)位、待機或關(guān)斷等數(shù)字功能。在所有電源都穩(wěn)定之后,應(yīng)施加指定脈沖或組合,以確保ADC 啟動時的狀態(tài)符合預(yù)期。例如,一個高脈沖在RESET 上持續(xù)至少50 ns,這是配置AD7606 以使其在上電后能正常運行所必須具備的條件。


在所有電源均完全建立之前,不得切換數(shù)字引腳。對于SARADC,轉(zhuǎn)換開始引腳CNVST 可能對噪聲敏感。在圖1 所示示例中,當(dāng)AVCC、DVCC 和VDRIVE 仍在上升時,主機cPLD 拉高CNVST。這可能使 AD7367 進入未知狀態(tài),因此,在電源完全建立之前,主機應(yīng)使 CNVST 保持低電平。


如何為逐次逼近型ADC設(shè)計可靠的數(shù)字接口?

圖1. 在電源上升時拉高 CNVST 可能導(dǎo)致未知狀態(tài)。


數(shù)字接口時序

轉(zhuǎn)換完成之后,主機可以通過串行或并行接口讀取數(shù)據(jù)。為了正確讀取數(shù)據(jù),須遵循特定的時序策略,比如,SPI 總線需要采用哪種模式等。不得違反數(shù)字接口時序規(guī)范,尤其是ADC 和主機的建立和保持時間。最大比特率取決于整個循環(huán),而不僅僅是最小額定時鐘周期。圖2 和下列等式展示了如何計算建立和保持時間裕量。主機把時鐘發(fā)送至ADC 并讀取ADC 輸出的數(shù)據(jù)。


如何為逐次逼近型ADC設(shè)計可靠的數(shù)字接口?

圖2. 建立和保持時序裕量。


tCYCLE = tJITTER + tSETUP + tPROP_DATA + tPROP_CLK + tDRV + tMARGIN

tCYCLE : 時鐘周期 = 1/fCLOCK

tJITTER: 時鐘抖動

tSETUP: 主機建立時間

tHOLD: 主機保持時間

tPROP_DATA: 從ADC 到主機的傳輸線路的數(shù)據(jù)傳播延遲

tPROP_CLK: 從主機到ADC 的傳輸線路的數(shù)據(jù)傳播延遲

tDRV: 時鐘上升/下降沿后的數(shù)據(jù)輸出有效時間

tMARGIN: 裕量時間大于等于0 表示達(dá)到建立時間或保持時間要求,小于0 表示未達(dá)到建立時間或保持時間要求。


主機建立時間裕量


tMARGIN_SETUP = tCYCLE, min – tJITTER – tSETUP – tPROP_DATA – tPROP_CLK – tDRV, MAX


建立時間等式以最大系統(tǒng)延遲項定義最小時鐘周期時間或最大頻率。要達(dá)到時序規(guī)格,必須大于等于0。提高周期(降低時鐘頻率)以解決系統(tǒng)延遲過大問題。對于緩沖器、電平轉(zhuǎn)換器、隔離器或總線上的其他額外元件,把額外延遲加入tPROP_CLK 和 tPROP_DATA.


類似地,主機的保持時間裕量為


tMARGIN_HOLD = tPROP_DATA + tPROP_CLK + tDRV – tJITTER – tHOLD


保持時間等式規(guī)定了最小系統(tǒng)延遲要求,以避免因違反保持時間要求而出現(xiàn)邏輯錯誤。要達(dá)到時序規(guī)格,必須大于等于0。


ADI 公司帶SPI 接口的許多SAR ADC 都是從 CS 或 CNV的下降沿為MSB 提供時鐘信號,剩余的數(shù)據(jù)位則跟隨SCLK 的下降沿,如圖3 所示。在讀取MSB 數(shù)據(jù)時,要使用等式中的tEN而非tDRV .


如何為逐次逼近型ADC設(shè)計可靠的數(shù)字接口?

圖3. AD7980 3 線 CS 模式下的SPI 時序。


因此,除了最大時鐘速率以外,數(shù)字接口的最大工作速率也取決于建立時間、保持時間、數(shù)據(jù)輸出有效時間、傳播延遲和時鐘抖動。


在圖4 中,DSP 主機訪問AD7980處于3 線CS模式下,其中,VIO = 3.3 V。DSP 鎖存SCLK 下降沿上的SDO 信號。DSP的額定最小建立時間為5 ns,最小保持時間為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. 主機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


建立時間和保持時間裕量均為正,因此,SPI SCLK 可以在30 MHz下工作。


如何為逐次逼近型ADC設(shè)計可靠的數(shù)字接口?

圖4. DSP 和AD7980 之間的數(shù)字接口。


數(shù)字信號質(zhì)量

數(shù)字信號完整性(包括時序和信號質(zhì)量)確保:在額定電壓下接收信號;不相互干擾;不損壞其他器件;不污染電磁頻譜。信號質(zhì)量由多個項定義,如圖5 所示。本部分將介紹過沖、振鈴、反射和串?dāng)_。


如何為逐次逼近型ADC設(shè)計可靠的數(shù)字接口?

圖5. 常用信號質(zhì)量規(guī)格。


反射是阻抗不匹配導(dǎo)致的結(jié)果。當(dāng)信號沿著走線傳播時,每個接口處的瞬時阻抗都不相同。部分信號會反射回去,部分信號會繼續(xù)沿著線路傳播。反射可能在接收器端產(chǎn)生過沖、欠沖、振鈴和非單調(diào)性時鐘邊沿。


過沖和欠沖可能損壞輸入保護電路,或者縮短IC 的使用壽命。圖6 所示為AD7606的絕對最大額定值。數(shù)字輸入電壓應(yīng)在–0.3 V 和VDRIVE+ 0.3 V 之間。另外,如果振鈴高于最大 VIL或小于最小VIH可能導(dǎo)致邏輯誤差。


如何為逐次逼近型ADC設(shè)計可靠的數(shù)字接口?

圖6. AD7606 的絕對最大額定值。


為了減少反射:

  • 盡量縮短走線的長度

  • 控制走線的特性阻抗

  • 消除分支

  • 使用適當(dāng)?shù)亩私臃桨?/p>

  • 用環(huán)路面積小的固體金屬作為返回電流參考平面

  • 使用較低的驅(qū)動電流和壓擺率


針對走線特性阻抗的計算,目前有許多軟件工具或網(wǎng)站,比如Polar Instruments Si9000 PCB 傳輸線路場求解器。借助這些工具,特性阻抗計算起來非常簡單,只需選擇傳輸線路型號并設(shè)置相應(yīng)的參數(shù)即可,比如電介質(zhì)類型和厚度以及走線寬度、厚度和隔離。


作為一種新興標(biāo)準(zhǔn),IBIS 用于描述IC 數(shù)字I/O 的模擬行為。ADI提供針對SAR ADC 的IBIS 模型。預(yù)布局仿真可檢測時鐘分布、芯片封裝類型、電路板堆疊、網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)和端接策略。也可檢測串行接口時序限制以便為定位和布局提供指導(dǎo)。后仿真可驗證設(shè)計是否符合所有指導(dǎo)方針和限制的要求,同時檢測是否存在反射、振鈴、串?dāng)_等違反要求的情況。


在圖7 中,一個驅(qū)動器通過一條12 英寸的微帶線路連接SCLK1,另一個驅(qū)動器通過一個與微帶串聯(lián)的43 Ω 電阻連接SCLK2。


如何為逐次逼近型ADC設(shè)計可靠的數(shù)字接口?

圖7. 驅(qū)動AD7606 SCLK。


在圖8 中,SCLK1 上的大過沖違反了–0.3 V 至+3.6 V 的絕對最大額定值。串聯(lián)電阻可減小SCLK2 上的壓擺率,使信號處于額定值之內(nèi)。


如何為逐次逼近型ADC設(shè)計可靠的數(shù)字接口?

圖8. AD7606 IBIS 過沖模型仿真。


串?dāng)_是能量通過互電容(電場)或互感(磁場)在并行傳輸線路間耦合的情況。串?dāng)_量取決于信號的上升時間、并行線路的長度以及它們之間的間距。


控制串?dāng)_的一些常用方法為:

  • 增加線路間距

  • 減小并行布線

  • 使走線靠近參考金屬平面

  • 使用適當(dāng)?shù)亩私臃桨?/p>

  • 減小信號壓擺率


數(shù)字活動導(dǎo)致的性能下降

數(shù)字活動可能導(dǎo)致SAR ADC 性能下降,使SNR 因數(shù)字地或電源噪聲、采樣時鐘抖動和數(shù)字信號干擾而減小。


孔徑或采樣時鐘抖動設(shè)定SNR 限值,尤其是對高頻輸入信號。系統(tǒng)抖動有兩個來源:來自片內(nèi)采樣保持電路的孔徑抖動(內(nèi)部抖動),以及采樣時鐘上的抖動(外部抖動)??讖蕉秳訛檗D(zhuǎn)換間的采樣時間變化,為ADC 的函數(shù)。采樣時鐘抖動通常為主要誤差源,但兩個源都會導(dǎo)致模擬輸入采樣時間變化,如圖9所示。它們的影響難以區(qū)分。


總抖動會產(chǎn)生誤差電壓,ADC 總SNR 的限制因素為


如何為逐次逼近型ADC設(shè)計可靠的數(shù)字接口?


其中,f 為模擬輸入頻率,tJ為總時鐘抖動。


例如,當(dāng)模擬輸入為10 kHz,總抖動為1 ns 時,SNR 限值為84 dB。


如何為逐次逼近型ADC設(shè)計可靠的數(shù)字接口?

圖9. 采樣時鐘抖動導(dǎo)致的誤差電壓。


數(shù)字輸出開關(guān)導(dǎo)致的電源噪聲應(yīng)與敏感的模擬電源相隔離。分別去耦模擬和數(shù)字電源,密切注意地回流路徑。


高精度SAR ADC 可能對數(shù)字接口上的活動很敏感,即使電源適當(dāng)去耦和隔離時。突發(fā)時鐘往往優(yōu)于連續(xù)時鐘。數(shù)據(jù)手冊通常會列出接口不應(yīng)活動的安靜時間。在較高吞吐速率條件下,可能難以減少這些時間內(nèi)的數(shù)字活動,通常為采樣時刻及出現(xiàn)關(guān)鍵位判斷點時。


結(jié)論

密切注意數(shù)字活動,確保SAR ADC 轉(zhuǎn)換有效。數(shù)字活動導(dǎo)致的誤差可能使SAR ADC 進入未知狀態(tài),導(dǎo)致故障,或者降低性能。希望本文能幫助設(shè)計師排查根本原因,同時還能提供解決方案。


免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請聯(lián)系小編進行處理。


推薦閱讀:

低功耗傳感對于物聯(lián)網(wǎng)的重要性

使用高壓電池的電動汽車安全性如何?

宇陽科技董事長周春華:篤行不怠,雖遠(yuǎn)必至,專注國產(chǎn)MLCC高端化

i.MX 91系列應(yīng)用處理器介紹



特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索
?

關(guān)閉

?

關(guān)閉

卢氏县| 新余市| 朔州市| 宁乡县| 炉霍县| 隆子县| 饶河县| 南汇区| 高阳县| 蒙自县| 铜陵市| 错那县| 南通市| 老河口市| 长春市| 沙坪坝区| 盱眙县| 鲁甸县| 绿春县| 页游| 宜兴市| 宣恩县| 增城市| 扶绥县| 德格县| 揭西县| 鄂温| 赤水市| 潮州市| 黄山市| 秀山| 荔浦县| 建瓯市| 曲靖市| 泰和县| 德格县| 漠河县| 措勤县| 文安县| 房山区| 哈尔滨市|