理解ADC積分非線(xiàn)性(INL)誤差
了解積分非線(xiàn)性(INL)規范及其與模數轉換器(ADC)誤差的關(guān)系。
本文引用地址:http://dyxdggzs.com/article/202409/462860.htm三個(gè)參數,即偏移誤差、增益誤差和INL,決定了ADC的精度。偏移和增益誤差可以校準出來(lái),這讓我們把INL作為主要的誤差因素。INL規范描述了實(shí)際傳遞函數的轉變點(diǎn)與理想值的偏差。
什么是積分非線(xiàn)性(INL)?
理想的ADC具有均勻的階梯式輸入輸出特性,這意味著(zhù)每次轉換都發(fā)生在距離前一個(gè)轉換1 LSB(最低有效位)處。然而,對于真實(shí)世界的ADC,步驟并不一致。例如,考慮圖1所示的傳遞曲線(xiàn)。
ADC的傳輸曲線(xiàn)示例。
圖1。ADC的傳輸曲線(xiàn)示例。
步長(cháng)與理想值的偏差由微分非線(xiàn)性(DNL)規范表征。然而,DNL誤差不能完全描述傳遞函數與理想響應的偏差,因為我們獲得的響應取決于正負DNL誤差在不同代碼中的傳播方式。INL規范允許我們描述代碼轉換與其理想值的偏差。為了計算代碼k的INL,我們可以使用以下方程式:
其中Ta(k)和Tidal(k)分別表示從代碼k-1到k的實(shí)際和理想過(guò)渡;“理想步長(cháng)”是ADC的LSB。對于上述示例,從代碼1(001)到代碼2(010)的實(shí)際轉換發(fā)生在理想轉換之上0.125 LSB處。因此,代碼2的INL是INL(2)=+0.125 LSB。
從這里,我們可能會(huì )問(wèn),下一個(gè)轉換(從代碼2到3)是什么?注意到從代碼1到2的轉換發(fā)生在理想值以上0.125 LSB處,并考慮到代碼2的寬度誤差(或DNL)為+0.25 LSB,我們可以推斷出從代碼2到3的轉換應該發(fā)生在理想值以上0.375 LSB處。因此,我們得到INL(3)=+0.375 LSB。如您所見(jiàn),代碼3的INL等于代碼1和2的DNL之和:
將上述分析擴展到其他代碼,很容易通過(guò)應用以下方程來(lái)驗證第m個(gè)代碼的INL:
INL代表DNL誤差的累積效應。在計算DNL和INL值時(shí),我們假設ADC的偏移和增益誤差已經(jīng)校準。結果,第一個(gè)代碼(代碼1)和最后一個(gè)代碼的INL為零。對于代碼0,未定義INL。
表示ADC INL信息
就像DNL一樣,我們可以將INL信息表示為INL與代碼值的關(guān)系圖。對于上述示例,我們得到如圖2所示的下圖。
顯示INL與代碼值的示例圖。
圖2:顯示INL與代碼值的示例圖。
INL通常也表示為所有代碼的最小值和最大值。我們假設的ADC的INL在-0.71 LSB和+0.5 LSB之間。INL圖不僅表示ADC的線(xiàn)性性能,還揭示了ADC內部架構的一些信息。例如,子范圍ADC具有三角形INL圖(圖3(a)),而閃存ADC通常具有隨機模式(圖3)。
子范圍ADC三角形INL圖(a)和閃存ADC隨機模式圖(b)的示例。
圖3。子范圍ADC三角形INL圖(a)和閃存ADC隨機模式圖(b)的示例。圖片由M.Pelgrom提供
INL:ADC量化誤差之外的誤差
值得注意的是,INL除了指定ADC的量化誤差外,還指定了一個(gè)誤差。由于A(yíng)DC將連續的模擬輸入范圍轉換為幾個(gè)離散的輸出碼,即使是理想的ADC也會(huì )在系統中固有地引入一些誤差,稱(chēng)為量化誤差。如果我們將斜率為1的斜坡輸入應用于A(yíng)DC,我們可以從輸入中減去輸出代碼的模擬等效值,以找到量化誤差。如圖4所示。
顯示量化誤差的示例圖。
圖4。顯示量化誤差的示例圖。
在圖4中,綠色曲線(xiàn)顯示了斜坡輸入,藍色臺階表示理想ADC產(chǎn)生的代碼的模擬等效值。然而,圖4中的下圖顯示了鋸齒形的量化誤差。讓我們看看非線(xiàn)性如何影響誤差項。如果我們將斜坡輸入應用于圖1中的非理想特征曲線(xiàn),我們會(huì )得到以下誤差波形(圖5)。
顯示誤差波形的示例圖。
圖5。示例圖顯示了ADC輸出代碼和理想變換(a)和誤差波形(b)的模擬等效值。
圖5(a)中的紫色步驟顯示了ADC輸出代碼的模擬等效值,藍點(diǎn)描繪了均勻階梯響應的理想過(guò)渡點(diǎn)。例如,考慮從代碼1到代碼2的轉換。如果這種轉換發(fā)生在理想點(diǎn)(點(diǎn)A),則代碼1的最大負誤差將為-0.5 LSB。由于INL(2)=+0.125 LSB,從代碼1到代碼2的實(shí)際轉換發(fā)生在理想值以上+0.125 LSB處。由于這種延遲的轉變,在轉變點(diǎn)(點(diǎn)B),綠色曲線(xiàn)和ADC輸出之間的差變得大于0.5LSB。通過(guò)檢查該圖,您可以確認B點(diǎn)的誤差由下式給出:
請注意,雖然這種非理想效果將代碼1的誤差擴展到-0.625 LSB,但它將下一個(gè)代碼(代碼2)的誤差上限降低到0.5 LSB-0.125 LSB=+0.375 LSB。您可以在D點(diǎn)看到由INL(3)=+0.375 LSB引起的誤差波形的類(lèi)似變化。
讓我們檢查代碼6,看看負INL如何影響錯誤(INL(6)=-0.71 LSB)。在這種情況下,(點(diǎn)F)處的實(shí)際轉變發(fā)生在理想值(點(diǎn)E)以下0.71 LSB處。由于A(yíng)DC輸出的增量早于預期值,因此會(huì )產(chǎn)生較大的正誤差。如錯誤圖所示,代碼6的錯誤可能高達:
對于理想的ADC,量化過(guò)程會(huì )產(chǎn)生±0.5 LSB的誤差。然而,對于實(shí)際的ADC,量化過(guò)程和INL都會(huì )導致系統的整體誤差。換句話(huà)說(shuō),INL是超出量化誤差的誤差。
到目前為止,我們考慮的INL定義可能是本規范中最有用和最常見(jiàn)的定義。然而,應該指出的是,ADC制造商的教科書(shū)和技術(shù)文件中有時(shí)會(huì )提到一些其他定義。為了避免任何混淆,我們將在本文的其余部分了解INL的其他常見(jiàn)定義。
重新定義INL代碼:不同但相同的定義
在我們繼續其他定義之前,值得一提的是,人們可以用稍微不同的方式查看圖1中使用的定義。與其將INL定義為代碼轉換與其理想值的偏差,不如將其定義為代碼過(guò)渡與穿過(guò)第一個(gè)和最后一個(gè)代碼轉換的直線(xiàn)的偏差。如圖6所示。
顯示實(shí)際響應和理想響應之間代碼偏差的圖。
圖6。顯示實(shí)際響應和理想響應之間代碼偏差的圖。
在圖6中,點(diǎn)A和B是第一個(gè)和最后一個(gè)過(guò)渡點(diǎn)。由于我們假設在INL計算之前偏移和增益誤差為零,因此點(diǎn)A和B對應于理想和實(shí)際的傳遞函數。如您所見(jiàn),穿過(guò)點(diǎn)A和B的線(xiàn)也穿過(guò)理想特性的所有其他過(guò)渡點(diǎn)(圖中的藍色曲線(xiàn))。因此,實(shí)際過(guò)渡點(diǎn)與其相應理想過(guò)渡的偏差等于實(shí)際過(guò)渡點(diǎn)與穿過(guò)點(diǎn)A和B的直線(xiàn)的偏差。一些參考文獻,如《高速模數轉換》一書(shū),使用這條直線(xiàn)來(lái)定義ADC INL。此外,請注意,此參考線(xiàn)與前幾篇文章中介紹的ADC的線(xiàn)性模型(圖中的綠線(xiàn))不同。
定義INL——代碼中心線(xiàn)定義
對于這種類(lèi)型的定義,ADC傳輸特性是基于穿過(guò)ADC碼中心的直線(xiàn)來(lái)定義的。圖7顯示了如何使用代碼中心線(xiàn)定義INL。
使用代碼中心線(xiàn)定義INL。
圖7。使用代碼中心線(xiàn)定義INL。圖片由R.Plassche提供
在上述示例中,對角線(xiàn)是穿過(guò)理想ADC步長(cháng)中點(diǎn)的線(xiàn)(在本系列文章中,我們將其稱(chēng)為ADC的線(xiàn)性模型)。如圖所示,實(shí)際步長(cháng)中點(diǎn)與直線(xiàn)的偏差被視為該代碼的INL誤差。
這個(gè)例子顯示了這個(gè)定義的一個(gè)缺點(diǎn)。如您所見(jiàn),代碼1101的相鄰轉換偏離了理想值。然而,由于1101的測量碼中心與理想值一致,因此該碼的INL為零。根據圖1中使用的定義,代碼1101的INL將為非零。
作為旁注,上圖取自魯迪·范·德·普拉舍的書(shū)。魯迪是世界著(zhù)名的模擬設計師和許多電路和電路思想的發(fā)明者,如斬波器和穩定放大器,這些電路和思想在今天被廣泛使用。
另一個(gè)基于代碼中心的定義如圖8所示。
顯示線(xiàn)中心代碼定義的示例圖。
圖8。顯示代碼中心線(xiàn)定義的示例圖。圖片由M.Demler提供
在這種情況下,用于計算INL誤差的參考線(xiàn)是穿過(guò)實(shí)際傳遞函數第一步和最后一步中點(diǎn)的線(xiàn)。對于三位ADC,這是穿過(guò)代碼001和110中點(diǎn)的線(xiàn)。實(shí)際步長(cháng)中點(diǎn)與這條直線(xiàn)的偏差被認為是該代碼的INL誤差。
在這個(gè)特定的例子中,ADC傳遞函數具有交替的寬碼和窄碼,使得從第一個(gè)和最后一個(gè)碼獲得的參考線(xiàn)與所有碼的中點(diǎn)相交。因此,所有代碼的INL錯誤均為零。這再次突顯了基于代碼中心的定義的缺點(diǎn),即在某些情況下無(wú)法描述傳遞函數的非線(xiàn)性。
本文中討論的INL定義被歸類(lèi)為基于端點(diǎn)的定義,因為它們只使用第一個(gè)和最后一個(gè)代碼來(lái)推導參考線(xiàn)。定義INL誤差的另一種方法是最佳擬合方法。在這種情況下,使用穿過(guò)所有代碼的直線(xiàn)擬合作為參考線(xiàn)。本系列的下一篇文章將詳細研究最佳擬合方法。
評論