Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 5475|回復: 5
打印 上一主題 下一主題

[問題求助] 請教前輩們有關 Pipeline ADC 的問題

[複製鏈接]
跳轉到指定樓層
1#
發表於 2012-1-8 02:27:49 | 只看該作者 回帖獎勵 |正序瀏覽 |閱讀模式
想要請教前輩們有關 Pipeline ADC 的問題1 w6 ^8 \- J& o" q( Y7 Z9 B
ADC  每一級為 1.5 bit 的架構做 calibration
: I  A4 q/ Q$ P6 k5 y. R, A晶片下線回來量測,就結果來看
6 e" h3 d6 }6 p+ C2 W1 Q: `在某些特定的 stage 會有很大的 offset! `, @7 I0 I$ x% R) W* ^7 l$ Z
造成嚴重的 missing code' v/ }. S* q, T2 V& R) }1 `3 O
有的 chip 發生在第一級 有的 chip 發生在第三級
5 c" c  }: n5 W) x6 u想不透的是,因為有 1.5 bit 的補償) T2 }* X& m7 C% z# C
理論上應該可以抵抗約 +/- 150 mv 的 offset
0 v0 J  Q9 ?% b4 m. u1 E) i: v( C5 q一直找不到可能掛掉的地方; h) \$ v. G3 j( {2 F8 P
想請前輩們給一些方向及意見,感謝
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
6#
發表於 2012-2-22 11:06:12 | 只看該作者
似乎是OP 提早飽和掉了,可能是比較器offset太大或residue gain >2 造成. , r' X: H+ n6 d3 |5 {% a. J! s! u3 z
比較器的offset 是隨機的(random distribution) ,即使layout相同,但offset 不可能相同.2 {$ x! E  H  h
可以試著加入Voltage source 進入 ADC 的比較器input 端當offset 模擬看看.
5#
發表於 2012-1-11 12:17:48 | 只看該作者
剛剛手算一下,missing code會發生在輸入電壓為:
3 \+ q7 }) q) P% L( a
. i0 E- s" Q/ c2 J0.125~0.155
0 f9 ]- K- n* i: G- U0 e$ m5 \  v3 @* F" g- r( w# N* q! a3 W& ^' I# B
0.25~0.28
3 c# J; T2 q% u
( v# y+ T  |6 `# K# B0.375~0.405
" I; h" f9 y* b; m' m% U. A2 i/ \& M: u0 ~$ c' U& w& l
0.5~0.53: r" [$ C! w0 C: h) P4 A
9 k6 f0 V- _* Y- p& t# ]
0.625~0.655
$ l3 Q/ Q: \; r3 Q4 v) M
4 H2 N9 c( H- j3 Q' r& ?0.75~0.78
& Y: x% g2 Y- t% k
0 a$ m* G8 G- C' v- c0.875~0.905
9 d$ n9 Q2 X' [, P8 C: {% q* }- M2 n' J+ @$ }0 @9 S
你先往這方面去跑一下模擬~~~~
4 ]' |3 v8 [0 ^5 x* \, b" j0 D) Y% v; i( `7 c- ^# v) R
應該可以還原一些~~~~
4#
發表於 2012-1-11 12:08:20 | 只看該作者
你的Calibration有沒有bypass功能阿???看起來你的ADC是沒問題的~~~~
  y& S5 o( n4 G  }7 e. |+ v, Y- d! V
( C# Y2 A$ M# U" U$ S( p& j9 q建議你先關掉Calibration功能,再看看有沒有missing code~~~3 G, q2 E3 q* d4 p

+ g$ z( C5 O" b: i* C你也可以用Digital code反推一下你的輸入電壓,
+ W  b/ o2 Y: u. A$ s2 d! }
3 ~. U& W6 E) h9 j3 y& [# H, I- R可以先算出輸入電壓是多少會發生,在我的想法我會想到! K! R3 {' B' ^" t3 i6 F, z7 I

6 [. ?9 k3 s' T4 a+ w- ^127===>0001111111$ l- p0 @8 J5 h: b3 N+ s
' m6 f0 U2 b" k6 c
255===>0011111111) w! ?: q) i) h: p# I
% ]8 H5 b, U" T
383===>0101111111
0 O! C1 L9 V3 M1 t: E8 {, N1 x6 m) P5 O8 I
......etc8 O6 g. {0 x5 x% z" J

3 p& O: x; I, @, Q$ w: A你是前四bit做Calibration嗎????建議你去看一下Calibration.....
' n" R8 O* `* y. {& j2 u% }" t! {0 L5 l3 W
另外你的pre-sim跟post-sim都有含Calibration去模擬嗎????' }5 q) e* M$ O5 f) ~

! ~5 V, E$ v* Z因為Calibration是屬於數位電路部份,3 j: x* J" M0 B

& Q; C( T' j: q所以你可以透過verilog sim來驗證一下你的數位部份,
( }3 Y+ p* p5 b3 o0 j. h( u% A
) m1 I+ ?0 P; ~1 {- e但是你要針對ADC部份寫behavior model來驗證會比較快~~~~
" ?* b: l3 B8 h& r) T. C. W
% v/ Z7 @6 m' i: `9 I+ Y5 }Good luck
3#
 樓主| 發表於 2012-1-10 23:16:46 | 只看該作者
Dear Ichuang 大大
# H: S# O' Z' d5 y2 `# w$ A! N: \不好意思,請問您指的 OP 是指 Reside 上的 OP 嗎?( v# i. G- Q7 {# p" J4 z$ q( t. A
積分器的 OP 我有 check 過 error 穩定時的 error 有小於 1/2 lsb
5 _; o4 K2 \- N所以我才會傾向懷疑是 comparator 的問題
: L4 N& G! a1 F+ l1 U. r7 S) N$ o) R4 x% [  Z' Q
當然,若第一級輸入的訊號有問題,後面的數值都沒有參考意義5 q( V' G; ]) W2 z- W5 P/ `9 D
因為不會貼圖,我用文字說明一下我目前的量測結果
- E# ^0 ?, ^3 k" X  {ADC 為 10BIT Swing 為 1v Common Voltage = 1.4v' S- y! }8 v2 R" D) c3 y. V- \
我輸入一個 ramp 得到的結果為5 U( D8 x/ G3 d2 {. y- i3 e
Ideal Code : 1,2,3,4,5.......126,127,128,129......158,159,160.......255,256,257....286,287..0 C; V7 l& Q# K& A7 f+ V1 L! D
實際輸出       : 1,2,3,4,5.......126,127,127,127......127,159,160.......255,255,255....255,287..
  E8 |9 v% S% h  _5 {0 w* R/ ^" Z此現象會重覆出現在 127, 255, 383,511,639,767,895 等 level& |" Z# `6 b+ \6 A; v# n
因此懷疑是第三級的比較器出問題
8 f5 c. U1 i. s4 f6 H! H不過每一級的比較器電路和 layout 都相同9 S: I; z! `& j! b/ C' R$ C- f
若單單發生在某一級又很令我困惑
1 f8 Q9 E3 x& V# H! P所以想請求大大們給予一些方向找答案,謝謝
2#
發表於 2012-1-10 16:23:49 | 只看該作者
==================================================
/ z$ [! }6 W: d/ f$ i' S9 ]  S: i/ T2 W$ K
有的 chip 發生在第一級 有的 chip 發生在第三級6 f4 t2 g2 v6 M+ a8 c: O& z: t& e

. O' c9 W: p: N# M想不透的是,因為有 1.5 bit 的補償* s* I0 O& r0 j" t! |% O
3 d4 B% W' s" o4 A7 `
理論上應該可以抵抗約 +/- 150 mv 的 offset! F( T' A3 [& E

  B% S* c: H) l) `5 L: w==================================================
! ?( T5 d  g" d" ]# H) f% @
' c! I+ `- ~( S& Z. T8 l以上部份原文我個人認為作者你可能搞錯了1.5 bit的offset抵消的觀念了,' i( ^) q% z5 W  S

! O7 C3 h0 J; B8 e; Q所謂的+/- 150mV指的是比較器的offset.....並不是你所謂的OP offset唷~~~~
) ]( Q4 D7 S- a8 a
, P6 F! e, J% K* L: F另外就是一般做Pipeline ADC都會著重在前四級(以12bit、+/-1V輸入電壓),
  ?) R: A7 @4 V$ ^( ]; F
+ f* H! S& a0 b0 i; V+ B; Y那麼第一級的OP所產生的error就需要壓在"0.25mV"以下才能達到................" e- W/ |  V6 d& i* h
" _. F) ]6 p# m  v8 L+ E+ j
所以你可以先提供一下你的ADC規格,大致才會知道這個ADC的關鍵在哪........# l' H, ?- Z" R, V6 m. H( J
" }9 U' r: l, [
至於你所謂的miss code會發生在第幾級......其實以pipeline來說,只要第一級毀掉....
; s! r% [( w' V9 B: J  r; \; a+ n* _
$ {& v% V8 f; y後面的幾級我想都不會好到哪裡去........' y) J$ G; Z, m) Q; }7 j) |, C0 K
6 _$ ^  T2 N2 L: {) E
所以pipeline的第一級OP是最重要的,你可以去檢查一下第一級的error(Pre-sim and Po-sim)~~~' @+ Q) J  x; z% w8 B" D

/ L" e$ r: m. YGood luck
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

首頁|手機版|Chip123 科技應用創新平台 |新契機國際商機整合股份有限公司

GMT+8, 2024-12-29 11:20 PM , Processed in 0.161010 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表