Chip123 科技應用創新平台
標題:
Hspice如何模擬fully differential OPA
[打印本頁]
作者:
sereniva
時間:
2009-8-27 04:21 PM
標題:
Hspice如何模擬fully differential OPA
請問雙端輸入、雙端輸出的OP Amp該怎麼模擬呢?
+ y" |! B1 s7 Z: _7 }
找了書來看,上面都只有單端的例子 = =
! O/ ?9 D0 s& I# W
現在跑fully differential感覺問題非常多 @@
+ k) D* ^8 X, ~ ^
4 F7 Z$ ^( [) ?6 y" W+ X
我是跑folded cascode(輸入端為PMOS) netlist po在下一樓
/ I0 Z, [* p2 z4 S/ V6 Q
) w/ j6 e* `- `9 ]# ?9 [
1.
: B6 x- p5 Z* v/ y8 c) V
首先,問題在於
差動輸入端
的描述
) b/ w* [" L1 e. A* q
我是考慮VCM相同,然後再灌入差動小訊號
+ f: w8 j2 C' [5 X- ^
e. r7 v$ ?; ]$ O/ R) s1 |" d
*輸入端的描述
9 Z0 A/ h# p2 h( ]. S
vd 9 0 dc 0 ac 1
" U; T$ g9 x- |8 m4 y; b
evd1 in1 8 9 0 0.5
' X$ T; l1 f: o0 K( R7 r5 q4 D
evd2 in2 8 9 0 -0.5
+ Y( @" S; i$ E6 h
vcm 8 0 dc 0
* C$ @, L& _) y. B) T% z! Y' ~
; v4 p' q6 j$ D* g9 W
* m/ Q+ z7 h/ Z, O5 B! G: o
這樣寫的話就是dc偏壓為0v,in1端 交流 0.5v,in2端 交流 -0.5v
7 Z* G" I" A- z' p+ J
不知道這樣來描述差動對的輸入端是否是正確的?
0 j- L8 I0 O# c5 s; K8 y# G
( y- N, N! m" R3 h. [
9 {* ]' ]. ]8 D
5 s: w8 V* N2 v5 N7 h+ N
% Z2 M9 f5 A6 W* Z* L
2.求
雙端輸出的gain
; E1 E2 I& [1 ^& d9 f g
Y& R* Y6 l4 J* n# P8 \
*讀取輸出端的描述
" t& I/ `/ r8 S; j; i
.print ac v(out1) v(out2) v(out1,out2)
/ r' e3 P& {% u& }
.probe ac v(out1) v(out2) v(out1,out2)
: Z' T# A4 m! w4 L& P) T' g: d2 c
.print ac vdb(out1) vdb(out2) vdb(out1,out2)
+ D$ S" U! v1 l ?' C, }
.probe ac vdb(out1) vdb(out2) vdb(out1,out2)
2 ]2 ]' p. }7 }% C1 q' L4 C# t
8 b: e# g/ R. d& }6 H2 ~( e
我看書上求gain都直接看v(out),但是gain的定義不是 v(out)/v(in) 才對嗎?
5 U4 k" d* h( F, ?* f7 p
真是非常困惑
Q, ]0 x. O1 N5 v
7 u3 \7 L) z) Z. x: }+ y$ `2 p
還有我的電路明明是兩邊對稱的,但是out2端和out1端的電壓卻不是相同的值
1 ]0 l2 i$ Y# [6 G d7 q
這到底是為什麼阿?
: A1 H9 G9 g* M0 G& } w3 w8 {* S
(我去看執行.op後所得的小訊號參數,電路的兩端也是對稱的)
, s R1 ^7 R& _
(如果電路兩邊是對稱的,依照電子學差動觀念,應該gain只是差負號而已吧)
( D: t: c, ]) m. e H+ C
9 V6 ^5 R6 T8 ^
" n J2 [6 c( w+ V# U
再來就是想求
CMRR
,這應該先求得
共模增益(Acm)
吧?
; z: e6 U6 Z! a. M; ~5 v7 H
這要怎麼求呢?
/ ?( o. d9 i k4 W+ W' ]
9 v# P" J! G# e
/ A* W' U! ?; C/ R" |" ^& [
+ ?1 c ]& q1 n% ^ ^( S
3.
輸出阻抗
與
輸入電容
& X! k7 [! d. u. O
請問輸出阻抗要怎麼求?
! N: u# J. `( i0 W0 O9 \
單端的時候直接下 .tf v(out) vin
% \. ?2 Q$ s) y8 m4 a3 E3 K
但是雙端該怎麼寫?
I1 W& H& u8 R# Z2 a+ V
另外,如果我想看不同頻率下的輸出阻抗變化,又該怎麼下指令呢?
, Y/ Z5 [4 R% _* A( I7 e0 A
5 O2 ]8 T" G5 V; c& G- a% x* D
還有有辦法求得輸入電容嗎?(從input端看進來的等效電容)
. h$ x+ y# l; p+ s; V
因為我設計的是sensor readout電路
6 I7 w4 h- o7 M; ?9 J
為了配合前一級,必須要讓輸入電容很小,才能讀得到sensor的值
. D5 `; j. K8 k$ ?6 r* H
7 p% B* z" [, K9 B( X7 t
- E0 d) u/ D4 B; f5 P
! ~% G( W: a z' T/ Q
: u' ^# j+ P& n
4.
輸入共模範圍
與
輸出擺幅
. T5 q- `- v7 I
! @% Y! U1 Y0 \$ k
這個問題在書上找不到
9 U% v/ Q1 a. s" H7 P
是不是要自己看.op所得到那些vgs,vgd,vt值
) R z0 O; q: c% Z: x$ d3 l
然後再按照電子學所說一層cascode用掉一個overdrive voltage,再去加加減減?
6 G i" W5 m$ _+ i
hspice有比較快的方法可以獲得這些資訊嗎?
" ?8 W u: [. [8 Q4 S
! H; L+ @) u6 L+ ]3 T! t
$ {7 N5 ^5 f8 B. }8 g+ u, D, s
1 i n* d/ n! B# e
8 m' f5 [% t" @3 l T
以上問題
( G2 ~8 }5 |+ Q' y/ F- P
請您不吝賜教 感激不盡 <(_ _)>
作者:
sereniva
時間:
2009-8-27 04:23 PM
5.
8 F5 k& M" N, Y+ C, ~) p7 \
最後想請問一個寫netlist的小問題
# q" |# o. \! p5 W& z% w0 K) H
在網路上看到一些例子,特別把mos寫成並聯好幾個
0 x f3 X. e: U% K1 ? @! q5 T
mp1 1 in1 7 vdd pch l=0.35u w=30u
1 N; A6 f. R1 H( w d
mp1 1 in1 7 vdd pch l=0.35u w=10u
m=3
' s% G6 C* P8 Y$ O& W- Z% d6 x
這兩種寫法有什麼差別嗎?(模擬或layout上)
+ D* o9 J2 }4 D2 K! k' |, L
如果不用下面的寫法會有什麼缺點?
& R. N. o! Q+ g" D1 W% ?1 w
R1 F8 e- y) @, s, N X( D
5 ?2 s; N' t f8 {
/ K, Q! S4 h$ G$ s( z p
; u( L2 z( v5 N, [
附上小弟寫的folded cascode(輸入為PMOS) netlist:
( M( p* Z* n6 B6 A/ ?
) |" A+ Y7 v# O6 M4 b' c
folded
/ W$ E- r* X$ Y& @! |6 C
.global vdd vss
2 r( B) S0 n Z6 u
& g; e( Z: A2 R- o* }. Y
.option acout=0
r' Z0 F; U, a9 }$ H! c0 ^; t
: r1 w/ U9 z1 A0 N4 `
.option post=2
5 w6 m) c4 p9 A* E
.option probe
) a% }% T& h7 K: T- t4 h( Q
0 F8 t* D6 E8 j, M! `
.protect
' X0 {5 K1 e% h+ w1 X* Y) v
.lib ./rf018.l tt
1 ^' \2 {, \) m# c
.unprotect
+ W1 N h [7 j- r
) `: P0 g+ l& s& j
mp1 1 in1 7 vdd pch l=0.35u w=30u
- @9 v5 s" N, C8 A5 p# N4 j1 ]' e# X
mp2 2 in2 7 vdd pch l=0.35u w=30u
5 |) K/ R% n: x9 V8 F$ h7 ~
mp3 5 5 vdd vdd pch l=0.35u w=15u
# P3 I. Q6 D/ R: v5 V
mp4 6 5 vdd vdd pch l=0.35u w=15u
/ C0 _6 H4 T7 x
mp5 out2 out2 5 vdd pch l=0.35u w=20u
9 B2 `, j3 b& L
mp6 out1 out2 6 vdd pch l=0.35u w=20u
( S% Z$ P6 f: C" v# C
mp7 7 b1 vdd vdd pch l=0.35u w=50u
6 C* ?4 i1 u" l6 O
mn1 out2 b2 1 vss nch l=0.35u w=5u
' P1 L% R! Q& v# s
mn2 out1 b2 2 vss nch l=0.35u w=5u
" K9 M; }4 M' X# G: p
mn3 1 b3 vss vss nch l=0.35u w=25u
/ n5 J+ F% X5 Q1 ]% J% B, u
mn4 2 b3 vss vss nch l=0.35u w=25u
* X# ^2 v% D, p. D
" c8 Z: g O2 a6 ~ M
*輸入端的描述
" u( ?9 g: h# `6 P4 ^$ A. r( W
vd 9 0 dc 0 ac 1
5 X! m' }6 K9 Z% R
evd1 in1 8 9 0 0.5
5 } o9 [/ W# @* M9 F! E- g
evd2 in2 8 9 0 -0.5
8 I) ]4 M' ~" ~' P+ M& ]
vcm 8 0 dc 0
2 i) [& s' N4 p& p. t. D, I
vdd vdd 0 dc 3.3v
! w& Q1 `/ y9 h
vss vss 0 dc -3.3v
8 i) i9 H9 K8 q( z/ f
. {1 g& z" i5 i; V! X8 R3 d5 O
vb1 b1 0 2.4
2 Z: x' S. q9 i
vb2 b2 0 -1.2
, g$ T, s2 ~ h" v
vb3 b3 0 -2.4
' n0 X, `$ r7 l( l* B+ L
0 F U5 R# Y6 t, k; _: b/ Q
.op
/ R/ R4 o! d; e+ m) G! F! ], e: p
.ac dec 10 100 100g
6 \0 d+ t2 l* o" V( K9 G
1 E) n. Q `# k( R: }
*讀取輸出端的描述
# r! ~2 c# l" a- P9 ~
.print ac v(out1) v(out2) v(out1,out2)
( i- p L& k4 R, [2 \
.probe ac v(out1) v(out2) v(out1,out2)
; f- X2 R3 {; t" k$ f2 h# N3 i
.print ac vdb(out1) vdb(out2) vdb(out1,out2)
( ^6 {! m& a! o M
.probe ac vdb(out1) vdb(out2) vdb(out1,out2)
, h/ L" Z7 @- O8 T5 T) f& m
3 s3 m8 K3 @! v8 p2 t& w3 c
.end
作者:
semico_ljj
時間:
2009-8-27 05:06 PM
和单端输出的一样模拟!只是Gain是原来地一半而已
作者:
小美
時間:
2009-9-2 12:23 AM
GAIN是原來的一半?
/ J' z- a+ a/ L! V, k8 q0 y0 P
可否請問一下這是什麼意思阿
作者:
rice019
時間:
2009-9-2 05:25 PM
Gain差兩倍
& w7 q7 U3 F# I. P
因為是你實際上Gain是看VOP-VON
7 K, e2 q. ^) z2 Q3 O5 R+ _
差兩倍gain實際上也才差6dB左右
4 ?3 c. \7 L$ C% Y
所以都常都只看VOP/VIN大概是就是Gain大小
作者:
小緯仔
時間:
2009-9-2 06:15 PM
5.
8 X; J) Z' J5 P8 k$ X
最後想請問一個寫netlist的小問題
9 M6 H b/ g/ z" D* e4 O
在網路上看到一些例子,特別把mos寫成並聯好幾個
3 R* e e8 }0 l# E3 y
mp1 1 in1 7 vdd pch l=0.35u w=30u
7 n- Y# Z' z; Y3 p
mp1 1 in1 7 vdd pch l=0.35u w=10u m=3
% q- K8 R/ p& E3 [2 ]
這兩種寫法有什麼差別嗎?(模擬或layout上)
+ G* w0 f* a3 ^1 X, F6 p
======================================
: g/ m2 u! Q% s4 y: m3 Q
我絕得啦!雖然width感覺都相同
( }8 V2 Q& c. t' h
但是跑hspice時候可以看到他們應該在不同的pch裡
9 d& b+ E' u+ i
例如...pch.1 pch.2 所以裡面有些參數就不一樣
B/ m! D- I, j: `8 {
像是Vt~~或者mobility.....
) t4 p, E; x. O: Y% `9 a1 `
在layout上~~直觀來看 用第二種方式他在Gate上的寄生電阻比較小
- S! B8 e0 U1 O$ ~: B- P" c
; o3 v: V7 ?3 j! S: n6 }/ N2 S
以上是小弟的淺見...
作者:
deltachen
時間:
2009-11-27 11:42 AM
謝謝大大的分享~知識因分享而壯大!
作者:
arichpanda
時間:
2009-11-28 03:20 PM
我也有類似的問題說,放到現在一直不知道為什麼?
. \/ q8 N# S8 P8 j8 s% ^) ~; E
希望能有高手大大來解答!!!
作者:
tekoman
時間:
2009-11-30 12:32 PM
mp1 1 in1 7 vdd pch l=0.35u w=30u
& H7 O9 J9 R/ C1 y( ?" q
mp1 1 in1 7 vdd pch l=0.35u w=10u m=3
; |9 E0 E6 u/ P4 E7 ^7 Q
上面這兩個不同的地方是,MOS會操作在不同區域,在spice model可以看到,不同width和length,
# X+ T& G: K1 A, j# |- J1 D6 u
可以劃分出許多操作區域,他的物理參數會不同。
作者:
s33421
時間:
2009-11-30 04:06 PM
再爬文 還好有看到大大有提早先問 得到答案了 謝謝!!
作者:
anita66
時間:
2009-12-14 05:16 PM
看到大大們這麼踴躍的回覆, 蠻多收穫的, 3Q~
作者:
semico_ljj
時間:
2009-12-17 03:55 PM
仿真单边电路就可以了!
作者:
angelwin
時間:
2009-12-21 02:32 PM
multiplier 一方面是由於參數設置時的問題,但更多的時候是考慮到後續匹配、寄生電阻的問題
作者:
bruan43
時間:
2009-12-24 02:54 AM
謝謝各位大大的分享~正好在研究類似的問題 ~ 感謝踴躍分享 !
作者:
semico_ljj
時間:
2009-12-24 12:46 PM
只要拿单边电路仿真就可以了!简单方便
作者:
king6288tw
時間:
2009-12-31 04:51 PM
1. 這樣共模+差模輸入的寫法沒有錯誤,電路是雙電源,共模設在中間點0V算合理。
6 x+ ]; U. v0 `+ e2 b
2.小訊號輸入大小為 ac=1 所以gain=V(vout)/V(Vin) , Vin是1 所以省了 直接秀圖就可以知道增益。
6 }; a4 w9 [ K9 N4 Y6 W! p
3.輸出電阻使用.tf 應該是直流訊號時的電阻。有沒有隨頻率變化這部分可能要看manual
2 u1 ~4 q7 p1 [5 ~
4.Allen的書應該有。
1 {0 k4 E' C' K6 ~2 e+ m
5.並聯與沒並聯影響到寄生電阻、寄生電容、layout時的mismatch,詳細可以看Razavi的書
作者:
hungda50310
時間:
2011-4-12 04:54 PM
收穫好大~~~
$ r# |4 J: P) ?7 \/ A) B
謝謝分享XD~~
作者:
anita66
時間:
2011-4-26 01:37 PM
問題蠻細的,程度應該不錯,但回答的還是有些令人不解,感謝大大無私分享,3Q~
歡迎光臨 Chip123 科技應用創新平台 (http://free.vireal.world/chip123_website/innoingbbs/)
Powered by Discuz! X3.2