看板 Electronics 關於我們 聯絡資訊
以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)