Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2009-8-27 16:21:29 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問雙端輸入、雙端輸出的OP Amp該怎麼模擬呢?! y6 q& j, E( m' k. Z. y
找了書來看,上面都只有單端的例子 = =
, N5 `: |8 c- m9 V, ~( F現在跑fully differential感覺問題非常多 @@
' q6 K& [/ h: L0 S% w
5 N8 O) N0 t' B# K我是跑folded cascode(輸入端為PMOS)  netlist po在下一樓
" p9 s) s* o, S, t( \( m1 F) [- w, }! U4 H3 h/ d: @4 U. h
1.$ n8 c; |) o. }
首先,問題在於差動輸入端的描述% I; ~- w: a% u4 s" Z
我是考慮VCM相同,然後再灌入差動小訊號
. y& y4 f" i1 ?  F; L$ c
& H: e* T+ l. ^; x+ H# p*輸入端的描述( J6 W( |2 B* X+ u
vd 9 0 dc 0 ac 11 A. N$ K8 x4 y8 C4 C$ P
evd1 in1 8 9 0 0.5! o. I7 a2 `1 Y; ?
evd2 in2 8 9 0 -0.5' T7 u, J7 G7 L) E, V! \& q9 G
vcm 8 0 dc 0
3 B! J4 l5 l: {4 c/ x5 n' J4 }
: V# p" d) {& `! z$ h
  Q8 O4 x2 f7 N1 i: Y9 Q2 M0 t3 w. i
這樣寫的話就是dc偏壓為0v,in1端 交流 0.5v,in2端 交流 -0.5v) h% R$ x  |* Q/ x* [9 h
不知道這樣來描述差動對的輸入端是否是正確的?# ~* W! m' E# F' P  x: t

' v1 t9 e0 k( o& {/ i& D3 w$ d) q$ F- r% x6 S4 C4 l

% b7 l  B8 w4 `6 N" W+ p5 |/ w" M$ U% M
2.求雙端輸出的gain
: d, {. R. J0 C# M+ H: o8 s8 }
; q% _7 ]2 F  J1 _3 F8 U- s*讀取輸出端的描述
. S; [$ o3 `+ P$ D3 K3 {" q.print ac v(out1) v(out2) v(out1,out2)
* D2 O0 l0 d: I0 i3 L.probe ac v(out1) v(out2) v(out1,out2)
4 E4 S7 u" @% h' S4 Q.print ac vdb(out1) vdb(out2) vdb(out1,out2)5 S. c5 n5 n  `% v( \2 q0 y
.probe ac vdb(out1) vdb(out2) vdb(out1,out2)& e6 v/ X: K, o" w- V
' ~2 l. w4 g' v
我看書上求gain都直接看v(out),但是gain的定義不是 v(out)/v(in) 才對嗎?8 P' z$ K- B: H! P4 R5 X; U
真是非常困惑
9 O3 Z1 @$ \* u. W4 w* u& _$ W  O, X' S% c& M/ _6 O
還有我的電路明明是兩邊對稱的,但是out2端和out1端的電壓卻不是相同的值
( x  g- b5 r- E" \+ Z$ C這到底是為什麼阿?
: f/ o8 x  i( e9 y(我去看執行.op後所得的小訊號參數,電路的兩端也是對稱的)' v+ `+ ]  o: p% @
(如果電路兩邊是對稱的,依照電子學差動觀念,應該gain只是差負號而已吧)
# S& E/ G  n# Y4 Z
  ]# g6 }& e( S/ B2 L0 M6 i
5 O8 k5 Q$ z; ~" x* F再來就是想求CMRR,這應該先求得共模增益(Acm)吧?. n& H2 L6 k5 F/ B5 {" Q
這要怎麼求呢?
; N4 O, B2 g% K" j6 }& \( b, w; K! `7 \

; B( A' ?4 G1 Q' U- U6 r& Y
$ i; R1 m3 O/ m6 \/ u3.輸出阻抗輸入電容1 ~8 g6 X# ~5 d
請問輸出阻抗要怎麼求?
1 ~9 e8 L, _- C9 Q單端的時候直接下 .tf v(out) vin
/ ^& }/ H0 k6 _( `8 Q$ G" l但是雙端該怎麼寫?
+ {7 L4 ~( ]4 U7 ^8 s( x另外,如果我想看不同頻率下的輸出阻抗變化,又該怎麼下指令呢?8 U4 w5 U! m' }; ?3 R" D5 q7 z

' G; C+ E9 K* U. f0 K還有有辦法求得輸入電容嗎?(從input端看進來的等效電容)& o% O1 _1 j" X7 q- [
因為我設計的是sensor readout電路
8 \& B. [9 V3 [; Y/ q0 T9 h為了配合前一級,必須要讓輸入電容很小,才能讀得到sensor的值
9 v5 G: J; C) f+ |, v0 Z3 n. |: q  J2 n  q# v9 E+ v

, P% {3 ]/ a- l/ o2 p3 k
- t/ ~" |0 a- D# J- b, N3 G/ Q6 T' ^6 D/ M
4.輸入共模範圍輸出擺幅
) [7 l7 c# _* _& X
, |- o  S; F% }% Z這個問題在書上找不到5 T1 j6 S; y* F- h; V4 V9 w
是不是要自己看.op所得到那些vgs,vgd,vt值/ u4 ]; U, s0 N1 g) d
然後再按照電子學所說一層cascode用掉一個overdrive voltage,再去加加減減?0 c; N4 K' X/ P
hspice有比較快的方法可以獲得這些資訊嗎?
1 h- P8 [, h1 s+ w
7 B) g+ x' Y2 D' Y, K- L/ O$ P+ L) j( Z

6 t: f7 s+ Q% V7 P" P3 e' Z' o0 k
9 A7 E/ r/ B. l% w以上問題
  X, j+ c8 |/ w8 F( K/ s; I5 ~請您不吝賜教 感激不盡 <(_ _)>
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂169 踩 分享分享
2#
 樓主| 發表於 2009-8-27 16:23:04 | 只看該作者
5.
* C1 X# n( B9 v& `. X最後想請問一個寫netlist的小問題
4 T  I9 I% ]# L, `在網路上看到一些例子,特別把mos寫成並聯好幾個. u2 b! a" i! `: s  j
mp1 1 in1   7 vdd pch l=0.35u w=30u
/ ?; o0 F* D- Z$ ?" A# r  q# `8 Jmp1 1 in1   7 vdd pch l=0.35u w=10u m=3% A: ?2 \0 x' N
這兩種寫法有什麼差別嗎?(模擬或layout上)
# R8 J* |0 L+ _; L如果不用下面的寫法會有什麼缺點?3 b3 n6 ~: m+ f* N7 h

/ D! w0 a  E7 ?7 ?; A0 d% p  r2 g! M
$ L, H3 g. G( |, {, e0 u5 ]2 j7 ^
- W$ x1 c  R+ y: d# E* ~8 u
附上小弟寫的folded cascode(輸入為PMOS) netlist:
% r6 {. j( C; q, H! ^- g* r
8 o% k8 w! n& q. n6 G+ g6 Bfolded
1 M; Q1 @$ f6 P- P& ~.global vdd vss
# X9 I3 ~) c7 K, m6 A% Y# S5 `% G0 j( \; z
.option acout=0 # g# |- k/ c& f) h# M! O( Q
4 |' Q" [2 L6 a" y; R9 Q
.option post=2& u. B2 j) l6 K
.option probe. w& q2 w' y3 M$ g

, Q, {# ^! x6 s8 d.protect" Q, O4 p* p; \+ C. S
.lib ./rf018.l tt
. `* w# Q3 ~' J' x.unprotect, ~) G, y  o( ^9 _; {' b2 p
0 a3 B, x2 f9 @4 {4 d
mp1 1 in1   7 vdd pch l=0.35u w=30u- x: a2 s2 s0 K  L1 G2 p
mp2 2 in2   7 vdd pch l=0.35u w=30u
; G3 P3 L: w( b# Z. G* lmp3 5  5  vdd vdd pch l=0.35u w=15u* V6 Z3 u4 u' O; `
mp4 6  5  vdd vdd pch l=0.35u w=15u
- X3 T3 U0 z& t6 Z8 emp5 out2  out2  5 vdd pch l=0.35u w=20u: @2 D3 K0 R7 R" [- T
mp6 out1  out2  6 vdd pch l=0.35u w=20u
+ c* i5 U' S! P5 S, Bmp7 7 b1 vdd vdd pch l=0.35u w=50u
' n# s$ g2 D- \& ]9 r! emn1 out2 b2 1 vss nch l=0.35u w=5u4 z5 l3 y3 _9 w) ^
mn2 out1 b2 2 vss nch l=0.35u w=5u
: A' z4 ?, E5 C7 gmn3 1 b3 vss vss nch l=0.35u w=25u
% |/ P4 t$ b; ]( ymn4 2 b3 vss vss nch l=0.35u w=25u5 ]1 f  l1 L, z* e1 U! m: a; P6 a6 k

; e. P3 i- {. Z; H1 w* t*輸入端的描述
# d0 n2 q3 L) ^  nvd 9 0 dc 0 ac 1
$ V7 ?2 h$ ^4 a, Revd1 in1 8 9 0 0.53 L3 h0 i. ~; E8 Q
evd2 in2 8 9 0 -0.5
9 ]5 a  p4 Y  C1 R7 ^( ], u# i9 [vcm 8 0 dc 0

* {) v" J% e  ^1 Jvdd vdd 0 dc 3.3v' L3 @& E, `# Z: t6 L! K
vss vss 0 dc -3.3v8 [7 W; P! w9 [, B: ?& d

& Y8 \3 f7 G' y! ^! S& q6 x) Dvb1 b1 0 2.4$ j& `7 C7 u- P
vb2 b2 0 -1.2
  L+ o0 s& R0 @% q& J6 a8 u* dvb3 b3 0 -2.49 G, ^: C) ]' C# E; v
' u9 V5 _7 O8 m4 r0 V$ r% q
.op
* O1 W# _2 w* W' {3 `.ac dec 10 100 100g. d* a) \+ |; `* E

: u- U, R, p# R- p+ z) }*讀取輸出端的描述
3 s% d4 i9 c+ ?2 O6 k.print ac v(out1) v(out2) v(out1,out2)  h; F* k* E" l$ y% Y5 A3 p8 Z
.probe ac v(out1) v(out2) v(out1,out2)
. W3 G9 r3 g. W' s# f' \2 g0 x.print ac vdb(out1) vdb(out2) vdb(out1,out2)) r9 }/ }+ y# r7 ]
.probe ac vdb(out1) vdb(out2) vdb(out1,out2)4 J& t- X3 h6 R! Z4 h: l& |4 Q

9 E7 _# y& t, ?1 {8 K7 b! w.end
3#
發表於 2009-8-27 17:06:39 | 只看該作者
和单端输出的一样模拟!只是Gain是原来地一半而已
4#
發表於 2009-9-2 00:23:19 | 只看該作者
GAIN是原來的一半?
! ?- o8 C  k0 P可否請問一下這是什麼意思阿
5#
發表於 2009-9-2 17:25:03 | 只看該作者
Gain差兩倍
' S3 p7 ^0 `" o3 [# B2 e因為是你實際上Gain是看VOP-VON
+ ~! y2 F, S. V. }7 [; m差兩倍gain實際上也才差6dB左右% j$ r5 \' T/ j
所以都常都只看VOP/VIN大概是就是Gain大小
6#
發表於 2009-9-2 18:15:49 | 只看該作者
5.- ]& ~5 l% o4 [* K0 ^
最後想請問一個寫netlist的小問題( d  Q3 x0 o. a: I' j' N
在網路上看到一些例子,特別把mos寫成並聯好幾個
! B( g7 D% A) w# [2 v. ^& ^( jmp1 1 in1   7 vdd pch l=0.35u w=30u* i1 _$ m5 D" @) Q' k
mp1 1 in1   7 vdd pch l=0.35u w=10u m=3
# Q9 Z- [1 f4 Z這兩種寫法有什麼差別嗎?(模擬或layout上)
& q  ~* ?" N- M. B8 P======================================) ]7 F" y# t8 w7 l
我絕得啦!雖然width感覺都相同8 W8 J: C. T1 F: v- {1 E7 n. g
但是跑hspice時候可以看到他們應該在不同的pch裡
# L+ @6 b( c$ \2 i* a例如...pch.1   pch.2 所以裡面有些參數就不一樣
: ?$ J7 l2 n# T" r像是Vt~~或者mobility.....# _- b4 t6 N0 y' P
在layout上~~直觀來看 用第二種方式他在Gate上的寄生電阻比較小7 r+ n) n) I: `) Z

% g  `( }9 u& B7 L: Z以上是小弟的淺見...
7#
發表於 2009-11-27 11:42:23 | 只看該作者
謝謝大大的分享~知識因分享而壯大!
8#
發表於 2009-11-28 15:20:21 | 只看該作者
我也有類似的問題說,放到現在一直不知道為什麼?
' |, F- ?3 h( z希望能有高手大大來解答!!!
9#
發表於 2009-11-30 12:32:01 | 只看該作者
mp1 1 in1   7 vdd pch l=0.35u w=30u7 j  f5 o" o! E' Y! [5 i& x
mp1 1 in1   7 vdd pch l=0.35u w=10u m=32 N3 Z" B4 q  y7 r8 E
上面這兩個不同的地方是,MOS會操作在不同區域,在spice model可以看到,不同width和length,# u% D; h2 [/ S( Y5 v4 W3 \/ @
可以劃分出許多操作區域,他的物理參數會不同。
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算合理。
8 o4 @  Z) C3 t/ V3 ]: K0 x( p- c2.小訊號輸入大小為 ac=1  所以gain=V(vout)/V(Vin) , Vin是1 所以省了 直接秀圖就可以知道增益。$ a, d0 B& i$ w5 z
3.輸出電阻使用.tf 應該是直流訊號時的電阻。有沒有隨頻率變化這部分可能要看manual1 y& {) d: u/ o, {7 p- G- g
4.Allen的書應該有。
6 V) l4 a" H% K: R% n5.並聯與沒並聯影響到寄生電阻、寄生電容、layout時的mismatch,詳細可以看Razavi的書
17#
發表於 2011-4-12 16:54:52 | 只看該作者
收穫好大~~~
% S* }$ }9 ~5 c  E$ h" f謝謝分享XD~~
18#
發表於 2011-4-26 13:37:47 | 只看該作者
問題蠻細的,程度應該不錯,但回答的還是有些令人不解,感謝大大無私分享,3Q~
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2025-4-3 12:38 PM , Processed in 0.209012 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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