以differential 的情況來看
從原Po舉的例子來說明的話
+Vref = Vrefp-Vrefn = 16-0 = 16(V)
-Vref = Vrefn-Vrefp = 0-16 = (-16V)
+16V ~ -16V 就是differential輸入訊號的操作範圍
以2b/stage的例子來定義decision level的話
differential輸入在-16V ~ -8V之間 輸出code = 00
differential輸入在 -8V ~ 0V 之間 輸出code = 01
differential輸入在 0V ~ 8V 之間 輸出code = 10
differential輸入在 8V ~ 16V之間 輸出code = 11
differential值 -8V 0V 8V 就是decision level
如果單純從Vip的角度來看的話 其實就跟單端操作是一樣的
Vip在 0V ~ 4V之間 輸出code = 00
Vip在 4V ~ 8V之間 輸出code = 01
Vip在 8V ~ 12V之間 輸出code = 10
Vip在 12V ~ 16V之間 輸出code = 11
如果單純從Vin的角度來看的話 跟Vip恰好相反
Vin在 0V ~ 4V之間 輸出code = 11
Vin在 4V ~ 8V之間 輸出code = 10
Vin在 8V ~ 12V之間 輸出code = 01
Vin在 12V ~ 16V之間 輸出code = 00
但是既然在研究differential電路的話 建議還是要習慣用differential值來思考
因為在為電路debug時 如果common mode電壓漂移的話 看單端訊號就不準了
但是如果只是common mode電壓飄移 differential電壓是不會受影響的
By 今天剛被指導教授狂電上來發文發洩的研究生
※ 引述《ceaserman (神采飛揚)》之銘言:
: 各位先進,小弟在學習 ADC 時遇到了一個問題,讓我百思不得其解。
: 單端的 two stage pipelined ADC,2 bit /stage ,
: 假設 input 是從 0 到 VDD,VDD = 16V 的 ADC 演算法:
: ----- 16V
: |
: |
: ----- 12V
: |--------------> input = 10.5 V
: |
: ----- 8V = VDD/2
: |
: |
: ----- 4V
: |
: |
: ----- 0V
: 我到目前的理解是:
: input 在 stage 1 解出來的 digital code 是 10
: 然後經過 residue amp stage 後,輸入到第二級的電壓是 4* (10.5 - 8) = 10
: 這時 stage 解出來的 digital code 是 10
: 所以類比訊號輸入 10.5V ,經過整個 two stage pipelined adc 之後,輸出的數位碼
: 是 1010
: 在這樣的 case ,Vref = 16V 。
: ===============================================================================
: 若 stage 1 為 2bit ,stage 2 為 3bit ,讓 residue amp stage 乘上 2 的 (2-1)次方
: 那麼會變成:
: stage 1 輸出為 10
: residue amp stage 的 輸出為: 2 * (10.5 - 8) = 5
: stage 2 的輸出為 010
: 經由以下程序可以得到 4 bit 的輸出 code 為 1010
: 10
: + 010
: ---------
: 1010
: 這樣可以得到一個正確的 4bit code ,且 residue stage 的倍數只需要 2,而不是4。
: ===============================================================================
: 我現在百思不得其解的是:
: 要怎樣把前面的想法從單端轉換成雙端的。
: 我卡住的地方是 residue amp stage 的部分。
: 上面兩個方法都是單端的想法, residue amp 的 input 是 input 與小於 input 的
: 那個刻度電壓的差值
: 但是雙端的 case ,那個刻度電壓的值是什麼,我一直思考不出來。
: 我的問題是:fully differential adc 的運作是怎麼樣呢?
: 一個 fully differential adc , Vip = 0 -> 16V , Vin = 16V -> 0
: 那麼 Vin 的 common mode voltage 是 8V ,
: 以一個 fully differential two stage pipelined adc 來做
: 若輸入的 Vip = 10.5 V , Vin = 5.5V
: ----- 16V
: |
: |
: ----- 12V
: |--------------> Vip = 10.5 V
: |
: ----- 8V = VDD/2
: |
: |--------------> Vin = 5.5 V
: ----- 4V
: |
: |
: ----- 0V
: 這樣的 case 我就轉不過來了.....
: 光看 Vip 的值,其輸出碼也是 10 ,看 Vin 的話輸出碼是 01
: 讓我腦筋打結的是 residue 的部分,輸出到第二級的訊號值是怎麼樣的呢?
: fully differential 的 Vref 似乎不是 16 了....
: 請各位先進指導我, fully differential 的運作我真的有點混亂。
: 上述是我理解的 ADC 的演算法,請問哪裡有錯誤的嗎? 懇請指出。
: 萬分拜託,非常感謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.121.197.101
※ 編輯: opq77114 來自: 122.121.197.101 (07/17 22:04)