Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

[問題求助] Hspice如何模擬fully differential OPA

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2009-8-27 16:21:29 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問雙端輸入、雙端輸出的OP Amp該怎麼模擬呢?2 G) V" I: B8 J/ r
找了書來看,上面都只有單端的例子 = =- m% f2 @/ [. d( P# Q1 H& `
現在跑fully differential感覺問題非常多 @@
" e; k0 R7 k9 z) g( n( ?
1 r: J7 q' F- ]% y+ _$ `我是跑folded cascode(輸入端為PMOS)  netlist po在下一樓! z8 O/ R+ r* s* E8 n; u5 R
% q. ~  I2 Z, u
1.0 T/ w) N9 V1 w2 t2 O0 m
首先,問題在於差動輸入端的描述
# s* A: H3 t, i/ k! \" w我是考慮VCM相同,然後再灌入差動小訊號3 p9 f# k: J8 p  t
/ W- B- v; b5 c
*輸入端的描述# j4 Q6 A  i5 P& l
vd 9 0 dc 0 ac 10 g- u. E8 ^- Z! K  M1 r0 a7 Q! u6 Z+ r
evd1 in1 8 9 0 0.5
9 ~% {3 S" a* sevd2 in2 8 9 0 -0.56 J5 n8 n8 K7 x& {1 l
vcm 8 0 dc 0; N& ~+ y- @, y. f$ x7 P6 g- i
( z% e9 Z% y, j
9 ~" ~4 {2 h2 E- r! g
這樣寫的話就是dc偏壓為0v,in1端 交流 0.5v,in2端 交流 -0.5v
' u; _. t$ j  o8 v/ w7 K  W7 b不知道這樣來描述差動對的輸入端是否是正確的?3 W3 _1 \6 d( ^$ A" m- _& D
7 g( w1 {' I4 z0 [6 ^! @

+ c0 S- w' n) Y& v9 l: n- x: D. x$ @" Z$ ?
# H7 [* z! T% l6 @" B  g, L% y
2.求雙端輸出的gain
2 S: f# {7 G+ R+ x& |) }9 `% j; _
$ F* v: k5 {9 V/ Q9 d) s3 L*讀取輸出端的描述
2 Q* Y5 u( O- B3 x% F( y' k0 \: U.print ac v(out1) v(out2) v(out1,out2)
1 T2 g! f2 L  u' X.probe ac v(out1) v(out2) v(out1,out2)
+ ]5 _0 ?: v5 n.print ac vdb(out1) vdb(out2) vdb(out1,out2)+ i: \  X: m+ Q; ]* ?; w4 q: y6 t7 h9 i
.probe ac vdb(out1) vdb(out2) vdb(out1,out2)
  S' J7 H6 v" `6 m6 V
; W: L: }$ [' c2 {# p! Z* u* i! v7 O
我看書上求gain都直接看v(out),但是gain的定義不是 v(out)/v(in) 才對嗎?" `+ ^* m# K7 U+ K" q
真是非常困惑
% q2 p7 [+ p4 S& o2 f6 `, N! E
& t8 I# n; Q* m  [# O還有我的電路明明是兩邊對稱的,但是out2端和out1端的電壓卻不是相同的值, `4 u% ^- P* z+ T& Q* U' \
這到底是為什麼阿?3 n3 X9 l7 u, m: L- K2 E
(我去看執行.op後所得的小訊號參數,電路的兩端也是對稱的)
. E1 Q. I6 C) X2 U(如果電路兩邊是對稱的,依照電子學差動觀念,應該gain只是差負號而已吧)
3 {+ J0 `. @+ [: g
$ h( G; e! a# E1 E% D$ E
7 w7 ?6 R$ B# W% K  U再來就是想求CMRR,這應該先求得共模增益(Acm)吧?
; i! j9 r1 r8 k+ Z* B( k這要怎麼求呢?; I7 o( k7 ]1 g& y

" t, W& e0 l+ [* p: ~  P
+ j/ C% [2 F+ q2 [$ Q; @8 i
, H8 ^+ Q0 p/ f: [3.輸出阻抗輸入電容
( s4 B/ Q6 n' a# ]* C3 R請問輸出阻抗要怎麼求?$ j& l& P8 \& `! C
單端的時候直接下 .tf v(out) vin
2 ^9 Y5 N8 C3 y# m1 ^; k) P但是雙端該怎麼寫?1 b8 h$ |! ], {& l! h6 }
另外,如果我想看不同頻率下的輸出阻抗變化,又該怎麼下指令呢?5 ~5 P/ T0 e4 m% k+ z" d7 g
3 d0 L: {  d) H* c
還有有辦法求得輸入電容嗎?(從input端看進來的等效電容)
5 A$ a+ x# c( V5 q; I因為我設計的是sensor readout電路
  J% w3 X; N! c/ E* e為了配合前一級,必須要讓輸入電容很小,才能讀得到sensor的值
1 }! C( ~- V7 q8 Q
) p! G0 k" Z1 |9 c
$ \* x+ `  ]) m) V( T: t0 H8 [  T: f  z' ^& a& Q

' j4 V. h& q  Q5 O- A9 o6 g4.輸入共模範圍輸出擺幅" A: q: h3 K" O# m

2 y! U5 T2 v% \這個問題在書上找不到
! I5 S; }" _" \5 }3 r0 Q是不是要自己看.op所得到那些vgs,vgd,vt值
( d7 `, G& W) G" _然後再按照電子學所說一層cascode用掉一個overdrive voltage,再去加加減減?
8 w1 s9 u: J( y4 V$ @! rhspice有比較快的方法可以獲得這些資訊嗎?
1 S( I& a3 `3 G2 k- `9 N) o3 G5 Z2 L( o# }

0 T4 X2 d# p/ P6 w2 p( q7 o. [2 v0 q, y( W+ e2 y( d0 k

$ y  k# U5 g  ^3 w8 M5 W以上問題3 t% q" l1 O/ T- w7 p
請您不吝賜教 感激不盡 <(_ _)>
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂35 踩 分享分享
2#
 樓主| 發表於 2009-8-27 16:23:04 | 只看該作者
5.0 C. }: }+ d7 r. `1 g- _, Y
最後想請問一個寫netlist的小問題* C2 l- r; w- s
在網路上看到一些例子,特別把mos寫成並聯好幾個3 t$ ]9 ^8 q8 }: ~
mp1 1 in1   7 vdd pch l=0.35u w=30u/ q/ H" C' X9 a) d/ N7 P& g5 H
mp1 1 in1   7 vdd pch l=0.35u w=10u m=3
7 c9 M7 V$ Q) M5 ], ?2 u這兩種寫法有什麼差別嗎?(模擬或layout上)1 k& I  [% k: A+ V9 X; b; n- C0 t
如果不用下面的寫法會有什麼缺點?
- T6 O- f& k% D  W$ b0 c
1 i( ]" _- E: v. O' j
7 w; `* |9 t7 b) N  B* `! n; e
5 s; _8 Y+ Z3 G0 N3 l, H
附上小弟寫的folded cascode(輸入為PMOS) netlist:
- e& e3 L% q, I! O% H1 R: z( r) Z% Q8 z: D
folded5 g" K5 Q7 _* R8 _3 p/ K/ Z$ e. \
.global vdd vss
, C2 G0 n9 E0 o( p# M$ N6 a/ d* x/ T" O- t+ w
.option acout=0 # X+ z1 Q6 B$ t
3 Z# d* V1 F) v% r* R
.option post=25 b! A, v8 L6 r5 Y
.option probe! i9 V2 r6 z1 f, p- r
( L+ X3 |# h; l8 t9 Y: Z# n
.protect" m! B0 h( i0 D1 }4 c
.lib ./rf018.l tt, V, u+ [* u. q) N/ F% ]" D0 d6 d
.unprotect% M, A- R- ^/ a" F% A/ s" h

$ Z  |8 G! u3 i# ymp1 1 in1   7 vdd pch l=0.35u w=30u' P1 p# j6 ?8 D7 G: A1 x+ k2 O
mp2 2 in2   7 vdd pch l=0.35u w=30u2 S" p) \' [- G2 I$ u- F
mp3 5  5  vdd vdd pch l=0.35u w=15u
, r0 m5 J$ Y/ y6 L. C# Hmp4 6  5  vdd vdd pch l=0.35u w=15u+ W8 l& ]: \" i3 v& w9 z+ |
mp5 out2  out2  5 vdd pch l=0.35u w=20u$ A: X; {- U2 ?) Z) R' \0 ^2 Y5 @
mp6 out1  out2  6 vdd pch l=0.35u w=20u) O; N  @" E, z
mp7 7 b1 vdd vdd pch l=0.35u w=50u
; F4 A# F8 d% }* e" J1 Vmn1 out2 b2 1 vss nch l=0.35u w=5u
  ^* a, [' B, k' \2 G2 ~mn2 out1 b2 2 vss nch l=0.35u w=5u3 r* W8 V" d) z! ~; Q
mn3 1 b3 vss vss nch l=0.35u w=25u
, x0 Q3 `" ]* R3 zmn4 2 b3 vss vss nch l=0.35u w=25u5 q# Y" Y# H. X5 y! d) R
. o2 p' a/ k5 n  i6 M
*輸入端的描述) U  M  \9 o% y9 x2 I, O4 l$ L% h3 X
vd 9 0 dc 0 ac 1
4 p) \& H$ t7 M- g! eevd1 in1 8 9 0 0.5" q& d+ d9 p- O* S; k
evd2 in2 8 9 0 -0.5
. u: o, T3 v9 D) Y: [vcm 8 0 dc 0
/ K0 l* K, ?* M/ o+ ~
vdd vdd 0 dc 3.3v6 T. f# b; E% q. j" U/ J0 F
vss vss 0 dc -3.3v+ x( b5 B; e7 U7 y( N

. m( A. _" H) ~; m! ?/ Rvb1 b1 0 2.45 O; Z; _) g7 q( E4 l' }+ u
vb2 b2 0 -1.2
3 @9 N! n% G) e7 w: ]vb3 b3 0 -2.4
3 |+ ]5 g3 t$ H9 |' Z
2 j, o7 }' S$ w% V.op
4 X; _/ L2 U% j+ B.ac dec 10 100 100g9 d; Z, u  @, G2 Q, j7 v) K
9 C3 m) G! R; e
*讀取輸出端的描述+ A+ v# d  V. Z: |% f2 W
.print ac v(out1) v(out2) v(out1,out2), {6 l6 f2 h1 Z7 W0 I, f
.probe ac v(out1) v(out2) v(out1,out2)2 \' @( J6 q$ Z9 |2 `
.print ac vdb(out1) vdb(out2) vdb(out1,out2)
9 A" J' I+ p$ u! r& j' P2 w.probe ac vdb(out1) vdb(out2) vdb(out1,out2)
7 E  W; L) P% l3 A$ r( o

1 N6 f3 n8 e$ {, O.end
3#
發表於 2009-8-27 17:06:39 | 只看該作者
和单端输出的一样模拟!只是Gain是原来地一半而已
4#
發表於 2009-9-2 00:23:19 | 只看該作者
GAIN是原來的一半?
5 H+ v6 B7 g6 j! w$ g可否請問一下這是什麼意思阿
5#
發表於 2009-9-2 17:25:03 | 只看該作者
Gain差兩倍
9 g( H0 g! t6 v3 K3 [6 M因為是你實際上Gain是看VOP-VON+ P) C- G$ h2 p0 ^& e) H2 w
差兩倍gain實際上也才差6dB左右1 X1 M, _% J* r( x
所以都常都只看VOP/VIN大概是就是Gain大小
6#
發表於 2009-9-2 18:15:49 | 只看該作者
5.3 ~) `( m+ Z' ]4 C$ r2 I
最後想請問一個寫netlist的小問題6 ?1 p/ _4 X# A: x/ l
在網路上看到一些例子,特別把mos寫成並聯好幾個
. F. H8 \7 E! z6 H; ~mp1 1 in1   7 vdd pch l=0.35u w=30u' J" h, N+ R* s# c/ W0 [
mp1 1 in1   7 vdd pch l=0.35u w=10u m=3
3 }' d4 X8 u. K. L4 x這兩種寫法有什麼差別嗎?(模擬或layout上)
8 g0 f, W1 l( I/ ]( `; e6 I; }, Y======================================
: \( r2 A. R6 g8 g( y我絕得啦!雖然width感覺都相同
, D& x; k$ R1 G4 e3 P5 u, r$ o但是跑hspice時候可以看到他們應該在不同的pch裡1 h. v4 s/ C* z' J9 K9 L3 n
例如...pch.1   pch.2 所以裡面有些參數就不一樣5 T. y% k$ f$ Z7 ]
像是Vt~~或者mobility.....
2 x) j3 D" p, |1 d. s在layout上~~直觀來看 用第二種方式他在Gate上的寄生電阻比較小5 R" n  r; h& h  v6 J/ c8 R
$ A9 G$ U$ H5 F2 y7 K
以上是小弟的淺見...
7#
發表於 2009-11-27 11:42:23 | 只看該作者
謝謝大大的分享~知識因分享而壯大!
8#
發表於 2009-11-28 15:20:21 | 只看該作者
我也有類似的問題說,放到現在一直不知道為什麼?2 ~+ P; B* L* a# _
希望能有高手大大來解答!!!
9#
發表於 2009-11-30 12:32:01 | 只看該作者
mp1 1 in1   7 vdd pch l=0.35u w=30u9 o2 T3 O; z* B1 c
mp1 1 in1   7 vdd pch l=0.35u w=10u m=3+ u* Z' C0 I; U# T, |- ]! k
上面這兩個不同的地方是,MOS會操作在不同區域,在spice model可以看到,不同width和length,( T6 J" L0 f. b9 O* E3 f6 V) v
可以劃分出許多操作區域,他的物理參數會不同。
10#
發表於 2009-11-30 16:06:44 | 只看該作者
再爬文 還好有看到大大有提早先問 得到答案了 謝謝!!
11#
發表於 2009-12-14 17:16:01 | 只看該作者
看到大大們這麼踴躍的回覆, 蠻多收穫的, 3Q~
12#
發表於 2009-12-17 15:55:21 | 只看該作者
仿真单边电路就可以了!
13#
發表於 2009-12-21 14:32:03 | 只看該作者
multiplier 一方面是由於參數設置時的問題,但更多的時候是考慮到後續匹配、寄生電阻的問題
14#
發表於 2009-12-24 02:54:55 | 只看該作者
謝謝各位大大的分享~正好在研究類似的問題 ~ 感謝踴躍分享 !
15#
發表於 2009-12-24 12:46:28 | 只看該作者
只要拿单边电路仿真就可以了!简单方便
16#
發表於 2009-12-31 16:51:14 | 只看該作者
1. 這樣共模+差模輸入的寫法沒有錯誤,電路是雙電源,共模設在中間點0V算合理。, O2 a1 m$ S4 Y+ d) h. P$ Y
2.小訊號輸入大小為 ac=1  所以gain=V(vout)/V(Vin) , Vin是1 所以省了 直接秀圖就可以知道增益。
+ Y3 s* F0 ~# p" v$ D+ k3.輸出電阻使用.tf 應該是直流訊號時的電阻。有沒有隨頻率變化這部分可能要看manual/ B, X5 j# {  g3 g6 ^
4.Allen的書應該有。
  U  K" r7 i8 A; z" U5.並聯與沒並聯影響到寄生電阻、寄生電容、layout時的mismatch,詳細可以看Razavi的書
17#
發表於 2011-4-12 16:54:52 | 只看該作者
收穫好大~~~$ b1 r# S* j8 d4 g: s7 q! h9 H
謝謝分享XD~~
18#
發表於 2011-4-26 13:37:47 | 只看該作者
問題蠻細的,程度應該不錯,但回答的還是有些令人不解,感謝大大無私分享,3Q~
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-2 09:51 AM , Processed in 0.131017 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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