[問題] Hspice如何模擬fully differential OPA?
請問雙端輸入、雙端輸出的OP Amp該怎麼模擬呢?
找了書來看,上面都只有單端的例子 = =
現在跑fully differential感覺問題非常多 @@
先附上小弟寫的folded cascode netlist:
folded
.global vdd vss
.option acout=0 →這個指令是板上爬文和書上都有看到的,求雙端輸出db值時這樣寫
.option post=2
.option probe
.protect
.lib ./rf018.l tt
.unprotect
mp1 1 in1 7 vdd pch l=0.35u w=30u
mp2 2 in2 7 vdd pch l=0.35u w=30u
mp3 5 5 vdd vdd pch l=0.35u w=15u
mp4 6 5 vdd vdd pch l=0.35u w=15u
mp5 out2 out2 5 vdd pch l=0.35u w=20u
mp6 out1 out2 6 vdd pch l=0.35u w=20u
mp7 7 b1 vdd vdd pch l=0.35u w=50u
mn1 out2 b2 1 vss nch l=0.35u w=5u
mn2 out1 b2 2 vss nch l=0.35u w=5u
mn3 1 b3 vss vss nch l=0.35u w=25u
mn4 2 b3 vss vss nch l=0.35u w=25u
*輸入端的描述
vd 9 0 dc 0 ac 1
evd1 in1 8 9 0 0.5
evd2 in2 8 9 0 -0.5
vcm 8 0 dc 0
vdd vdd 0 dc 3.3v
vss vss 0 dc -3.3v
vb1 b1 0 2.4
vb2 b2 0 -1.2
vb3 b3 0 -2.4
.op
.ac dec 10 100 100g
*讀取輸出端的描述
.print ac v(out1) v(out2) v(out1,out2)
.probe ac v(out1) v(out2) v(out1,out2)
.print ac vdb(out1) vdb(out2) vdb(out1,out2)
.probe ac vdb(out1) vdb(out2) vdb(out1,out2)
.end
1.
首先,問題在於差動輸入端的描述
我是考慮VCM相同,然後再灌入差動小訊號
*輸入端的描述
vd 9 0 dc 0 ac 1
evd1 in1 8 9 0 0.5
evd2 in2 8 9 0 -0.5
vcm 8 0 dc 0
node9
in1 in2 |
| | |
| | vd
| | |
evd1 evd2 |
| | gnd
| |
───── →node8
|
|
VCM
|
|
gnd
這樣寫的話就是dc偏壓為0v,in1端 交流 0.5v,in2端 交流 -0.5v
不知道這樣來描述差動對的輸入端是否是正確的?
2.
再來是輸出端的問題
我要求雙端輸出的gain
*讀取輸出端的描述
.print ac v(out1) v(out2) v(out1,out2)
.probe ac v(out1) v(out2) v(out1,out2)
.print ac vdb(out1) vdb(out2) vdb(out1,out2)
.probe ac vdb(out1) vdb(out2) vdb(out1,out2)
我看書上求gain都直接看v(out),但是gain的定義不是 v(out)/v(in) 才對嗎?
真是非常困惑
還有我的電路明明是兩邊對稱的,但是out2端和out1端的電壓卻不是相同的值
這到底是為什麼阿?
(我去看執行.op後所得的小訊號參數,電路的兩端也是對稱的)
(如果電路兩邊是對稱的,依照電子學差動觀念,應該gain只是差負號而已吧)
ex.列出.lis中print出的一部份
freq voltage voltage voltage
out1 out2 out1
out2
100.00000 81.8800 865.3672m 82.7454
freq volt db volt db volt db
out1 out2 out1
out2
100.00000 38.2636 -1.2560 38.3549
↑ ↑
數據竟然相差如此之多 = =
再來就是想求CMRR,這應該先求得共模增益(Acm)吧?
這要怎麼求呢?
3.
再來就是想請問輸出阻抗要怎麼求?
單端的時候直接下 .tf v(out) vin
但是雙端該怎麼寫?
另外,如果我想看不同頻率下的輸出阻抗變化,又該怎麼下指令呢?
還有有辦法求得輸入電容嗎?(從input端看進來的等效電容)
因為我設計的是sensor readout電路
為了配合前一級,必須要讓輸入電容很小,才能讀得到sensor的值
4.
輸入共模範圍 與 輸出擺幅
這個問題在書上找不到
是不是要自己看.op所得到那些vgs,vgd,vt值
然後再按照電子學所說一層cascode用掉一個overdrive voltage,再去加加減減?
hspice有比較快的方法可以獲得這些資訊嗎?
5.
最後想請問一個寫netlist的小問題
在網路上看到一些例子,特別把mos寫成並聯好幾個
mp1 1 in1 7 vdd pch l=0.35u w=30u
mp1 1 in1 7 vdd pch l=0.35u w=10u m=3
這兩種寫法有什麼差別嗎?(模擬或layout上)
以上問題
請您不吝賜教 感激不盡 <(_ _)>
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.169.180
※ 編輯: Shiva 來自: 140.113.169.180 (08/26 21:18)
推
08/26 22:04, , 1F
08/26 22:04, 1F
推
08/26 22:55, , 2F
08/26 22:55, 2F
推
08/26 22:55, , 3F
08/26 22:55, 3F
推
08/27 02:37, , 4F
08/27 02:37, 4F
推
08/27 03:59, , 5F
08/27 03:59, 5F
推
08/27 10:03, , 6F
08/27 10:03, 6F
→
08/27 10:05, , 7F
08/27 10:05, 7F
→
08/27 17:42, , 8F
08/27 17:42, 8F
→
08/27 18:22, , 9F
08/27 18:22, 9F
→
08/27 18:23, , 10F
08/27 18:23, 10F
推
09/04 19:24, , 11F
09/04 19:24, 11F
→
11/11 15:22, , 12F
11/11 15:22, 12F
→
01/04 22:01,
7年前
, 13F
01/04 22:01, 13F
討論串 (同標題文章)
以下文章回應了本文 (最舊先):
完整討論串 (本文為第 1 之 3 篇):