Chip123 科技應用創新平台

標題: 請教前輩們有關 Pipeline ADC 的問題 [打印本頁]

作者: naliga    時間: 2012-1-8 02:27 AM
標題: 請教前輩們有關 Pipeline ADC 的問題
想要請教前輩們有關 Pipeline ADC 的問題1 m. p) i* n: @# `
ADC  每一級為 1.5 bit 的架構做 calibration
+ `7 |( P, ~. E$ s0 Z2 V6 o晶片下線回來量測,就結果來看5 ?: \3 E6 x/ C) R5 j& D
在某些特定的 stage 會有很大的 offset" ^3 X/ O1 l9 h+ T- T3 p
造成嚴重的 missing code
) D( D9 E5 Q0 e# z* K; K有的 chip 發生在第一級 有的 chip 發生在第三級1 y/ E0 `8 @+ l
想不透的是,因為有 1.5 bit 的補償
* L) j2 r$ y" P理論上應該可以抵抗約 +/- 150 mv 的 offset6 P- Z0 L/ ?" X7 h( E) V
一直找不到可能掛掉的地方
0 t8 {7 Y$ g/ X想請前輩們給一些方向及意見,感謝
作者: lchuang    時間: 2012-1-10 04:23 PM
==================================================
1 A$ L& V. \# ^4 M  l8 S; x  O, b: K
有的 chip 發生在第一級 有的 chip 發生在第三級
+ p; q" L$ E3 b& F. P& D6 i/ |7 n1 q3 h% D; [& r5 Z9 J" P0 b
想不透的是,因為有 1.5 bit 的補償
- |* y5 C9 W2 t; w. l: u6 q& c* f5 s& C+ @( C: ]) f
理論上應該可以抵抗約 +/- 150 mv 的 offset2 ~' T- F7 S' _! P( D
, ~- b) \6 ]& c) o
==================================================  M; V) }, [8 G# Q3 G
: n7 z3 `. _. [' n; b2 W+ W0 R
以上部份原文我個人認為作者你可能搞錯了1.5 bit的offset抵消的觀念了,8 d" V$ x( o: ^6 \% E1 \% w+ n8 b5 v; ~
4 y5 r5 q$ _. j3 }% c
所謂的+/- 150mV指的是比較器的offset.....並不是你所謂的OP offset唷~~~~
' V. \' K- c. n$ a# @9 s6 x1 w5 e( o% W, m: _
另外就是一般做Pipeline ADC都會著重在前四級(以12bit、+/-1V輸入電壓),
3 x) \* p1 K2 R2 I5 V7 u$ D/ h" v4 s" A9 ]/ V; b
那麼第一級的OP所產生的error就需要壓在"0.25mV"以下才能達到................$ t# F* a5 v: M, F7 r
6 B- w) f# e& F! u7 |4 ~
所以你可以先提供一下你的ADC規格,大致才會知道這個ADC的關鍵在哪........! A% ^* E) Z- |' Q
6 P8 H# ?/ H3 g. _4 l' h% Y
至於你所謂的miss code會發生在第幾級......其實以pipeline來說,只要第一級毀掉....
: m6 B2 l% s( v- K& l
, h+ g3 v4 C9 ~後面的幾級我想都不會好到哪裡去........) D) {+ y/ r2 }1 j3 n% Z% O' a
3 n2 E/ k* V1 `( Y6 ?, e. h
所以pipeline的第一級OP是最重要的,你可以去檢查一下第一級的error(Pre-sim and Po-sim)~~~
' j9 Q) Y" q  `: \$ t8 T; m! u' J1 l  n; Z9 L
Good luck
作者: naliga    時間: 2012-1-10 11:16 PM
Dear Ichuang 大大% [* ^9 o- z/ q8 W9 E) [+ q
不好意思,請問您指的 OP 是指 Reside 上的 OP 嗎?- \* V( A$ o: {8 i* b) l( x
積分器的 OP 我有 check 過 error 穩定時的 error 有小於 1/2 lsb6 r+ Y! }; M6 o3 H, K4 I" O+ Q
所以我才會傾向懷疑是 comparator 的問題
4 j. S0 X( [8 |0 ?( Z  q6 f1 P6 H4 A, |3 }
當然,若第一級輸入的訊號有問題,後面的數值都沒有參考意義" J0 q" \1 c, m; i2 G/ U
因為不會貼圖,我用文字說明一下我目前的量測結果1 U& |- _( D9 ^) G  A4 y
ADC 為 10BIT Swing 為 1v Common Voltage = 1.4v
) X% Z- C! J* R我輸入一個 ramp 得到的結果為
$ r- g. f* I9 M/ f# I' l1 eIdeal Code : 1,2,3,4,5.......126,127,128,129......158,159,160.......255,256,257....286,287..
6 l' x0 T& I2 z  R6 W, t) N# ~( n實際輸出       : 1,2,3,4,5.......126,127,127,127......127,159,160.......255,255,255....255,287..
( ~- E0 ~# y2 O# ?3 |* v此現象會重覆出現在 127, 255, 383,511,639,767,895 等 level0 r( N- Z% Y* s
因此懷疑是第三級的比較器出問題
3 C, G- \. v1 H1 W+ ^& A  k不過每一級的比較器電路和 layout 都相同. l( d* I* s/ G: z0 a, l3 B
若單單發生在某一級又很令我困惑
  C& n1 U3 ?; s7 T( f* H+ Y所以想請求大大們給予一些方向找答案,謝謝
作者: lchuang    時間: 2012-1-11 12:08 PM
你的Calibration有沒有bypass功能阿???看起來你的ADC是沒問題的~~~~
7 d" E. p0 p- `6 e! b7 j: z3 u- x! s, s# n
建議你先關掉Calibration功能,再看看有沒有missing code~~~
; S* `$ Z1 j) K% I/ G8 g3 s' E2 ]3 J* T% X5 k  ]7 i1 X3 [
你也可以用Digital code反推一下你的輸入電壓,
  d% `* W& M3 R" \8 |' Q1 D  q2 v  w5 @- z' G
可以先算出輸入電壓是多少會發生,在我的想法我會想到5 Q1 w1 N& l" U: A- X1 T
/ A0 {3 f( u% V0 i: n, \
127===>0001111111; e! \( E! `8 d" @, P9 `! D6 A* x

* m3 o# F5 d6 _6 i% h: H# u255===>00111111115 W: T, {  g( ~& A
3 u  @$ Y3 |9 z0 i
383===>0101111111
4 l# C  [. E2 r' i2 n5 v5 V7 i  Z  w2 d& E
......etc# \* A2 w3 j# N8 v+ @4 V

9 w* P- D" F& P. c7 G你是前四bit做Calibration嗎????建議你去看一下Calibration.....7 M/ r; b+ _2 ^9 a2 l5 V

! G1 x- ~6 G+ }/ r另外你的pre-sim跟post-sim都有含Calibration去模擬嗎????
# X0 v7 p- q0 `6 T5 Y6 q. L: [9 Z: U
因為Calibration是屬於數位電路部份,
9 ~' A! M, p  d8 {& N  P
1 |- b6 P2 f( B" g  ]2 C" M. k所以你可以透過verilog sim來驗證一下你的數位部份,
3 Y9 V- b9 v9 j; H: |* ~" m. i4 b. X9 S/ b) U8 I$ J8 n2 u! J2 q( E' s
但是你要針對ADC部份寫behavior model來驗證會比較快~~~~" ^+ A" }+ m: x% r& }7 {
/ E! t5 y' I  L
Good luck
作者: lchuang    時間: 2012-1-11 12:17 PM
剛剛手算一下,missing code會發生在輸入電壓為:+ n1 `, b$ J1 i
- w2 h- h% k8 a' f  [. y) c
0.125~0.155
8 Q8 N& ]& q7 t6 Y& V; o4 U
2 W: J! v" `3 z' x* M0.25~0.289 A3 Y" B. a& p" |

$ ?9 G4 H( D: ?0 b0.375~0.405
; z: m8 L% t$ V1 J, e3 I/ C1 D5 J: S/ a2 f$ I
0.5~0.53
1 G( D/ b5 |# ~
/ e, m; @! a- H! T& Q3 W0.625~0.6556 j. z$ R1 V5 S) r8 K! v$ }

( x4 q5 p3 h, W1 x5 \0.75~0.78
  f' ?. b) G7 x, t. J. ^2 b1 |! b3 D- d6 ~9 G, X; l; J  |
0.875~0.905
* I9 X( g1 N# X5 w: \& {: T6 M! D0 y* D) Z$ a
你先往這方面去跑一下模擬~~~~+ P1 x; c' e% t8 t$ e6 n3 u

$ k) s3 M( h9 X4 W- c5 U應該可以還原一些~~~~
作者: billtc1234    時間: 2012-2-22 11:06 AM
似乎是OP 提早飽和掉了,可能是比較器offset太大或residue gain >2 造成. 3 d0 h  J" ]: @$ ]' t& [
比較器的offset 是隨機的(random distribution) ,即使layout相同,但offset 不可能相同.% @+ C6 l! ?- x3 M2 u
可以試著加入Voltage source 進入 ADC 的比較器input 端當offset 模擬看看.




歡迎光臨 Chip123 科技應用創新平台 (http://chip123.com/) Powered by Discuz! X3.2