找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

电巢直播8月计划
楼主: shark4685
打印 上一主题 下一主题

Hspice学习帖

    [复制链接]

1

主题

21

帖子

-8988

积分

未知游客(0)

积分
-8988
76#
发表于 2012-2-23 11:24 | 只看该作者
本帖最后由 shark4685 于 2012-2-23 13:26 编辑 / w6 L3 I6 c" Z, H- P( h

# t, l* f( n7 L0 T9 K楼主 想问个问题哈 还是之前那个毕业设计哈 。
6 B1 @- U; e' h! }2 S想问一下hspice里面 门逻辑 (与门 ,与非门 ,或门之类的)语法怎么用的。
  S3 g1 i# B7 A  S之前在hspice的manual里面找到个关于multi-input gate的语法:* j; _# V7 r. m
Exxx n+ n- <VCVS> gatetype(k) in1+ in1- ... inj+ inj-
9 I# x& D. h  L! F+ <DELTA=val> <TC1=val> <TC2=val> <SCALE=val>8 o* s0 x3 @. F, n7 ^
+ x1,y1 ... x100,y100 <IC=val>
2 m, e$ M  {2 ~4 p7 u* x" H, H. H7 \2 g
由于才疏学浅没看懂就随便写了几句,
, t2 `& n8 {  N! Z主体语句如下:
- n$ t- @- L! ~9 s5 w2 T* X3 @2 ]vi1 1 0 pulse 0 1 0 0 0 10u 20u
1 m: ]& y. y4 v$ B: ivi2 2 0 pulse 0 1 0 0 0 5u 10u
% y  }+ o/ j! h. J7 ?Eand(2) 3 0 1 0 2 0 ( a7 H! V4 m" r6 O- [
结果出来的图变成这样子了,完全很纠结啊,2 h. b- \" Q8 h

1

主题

21

帖子

-8988

积分

未知游客(0)

积分
-8988
77#
发表于 2012-2-23 11:38 | 只看该作者
我就是想请教一下 hspice 里面 这种门逻辑语法该怎么用哈 我想要的效果是输出为0 1 这样子的 最后怎么成了上面那幅图v(3)的样子。楼主能不能就这种门电路的语句给个例子,让我参考参考哈。  i2 s- f3 B# X, s; U% L
或者大神给点指导哈,hspice里面还有没有其他门逻辑的语句?(我最近在做一个ADC电路的行为级仿真,里面的电路模块都只是用理想的,很少涉及实际仿真的电路元件组成的电路,包括之前跟你提的乘法器,我直接用poly(2)语句代替了,以后再换其他的电路哈,o(╯□╰)o){:soso__8961432591078930798_3:}

1

主题

21

帖子

-8988

积分

未知游客(0)

积分
-8988
78#
发表于 2012-2-23 13:21 | 只看该作者
本帖最后由 雁过泪留痕 于 2012-2-23 13:22 编辑
) K9 t: O6 {% S8 j% v! v4 ~6 A1 Z7 s7 I+ K
76楼的图挂了 555555555  我再重发一张 不好意思; I% u, Z: j9 ^$ N

24

主题

978

帖子

7766

积分

六级会员(60)

Rank: 6Rank: 6

积分
7766
79#
 楼主| 发表于 2012-2-23 13:45 | 只看该作者
本帖最后由 shark4685 于 2012-2-23 13:48 编辑 ( g) I* n- ?" Q) t3 g
6 c5 d6 v& k8 w
你的语句选错了,试试下面的语法:* W6 _0 g* H+ p" ]% ]$ w1 e7 U
& X6 X: h# z/ W
Gxxx n+ n- <VCCS> gatetype(k) in1+ in1- ...  
0 U# I& L7 P) p+ ink+ ink- <DELTA=val> <TC1=val> <TC2=val> <SCALE=val>  
6 L4 G' F0 Z5 F. m+ <M=val> x1,y1 ... x100,y100<IC=val>
- A( S# e$ D+ ]0 s% Y
/ }* k9 H$ @- ~7 R- Z# JIn this syntax, gatetype(k) can be AND, NAND, OR, or NOR gates. For a description of the G-element parameters- l* d2 w8 T3 e! u: U" @
( u3 Y9 w, o; q" u( u1 l

1

主题

21

帖子

-8988

积分

未知游客(0)

积分
-8988
80#
发表于 2012-2-23 17:08 | 只看该作者
shark4685 发表于 2012-2-23 13:45 # |# r2 q6 W% e3 _
你的语句选错了,试试下面的语法:
' r  g, x' w! s+ `, ]; F& @
6 [. x" J) `* [Gxxx n+ n-  gatetype(k) in1+ in1- ...  

5 x7 @) M. J% C0 ?& Qshark楼主 你说的这个语句怎么用的,我按照我的理解写了个网表 v(1)还好,v(2) v(3)直接 都变成 直流 0电平了啊 。1 R- _9 R2 G8 Y4 {% N
我就只是想把两个方波进行逻辑与或之类的,怎么波形都这么奇怪。
4 G1 a+ F. S3 a. t) K' ~0 s 9 v3 j$ I% g  A; u) ^( T
语句就是直接换了个字母:) t! m1 b; m6 Y! T- Z4 s
vi1 1 0 pulse 0 1 0 0 0 10u 20u% S' J% _6 E' R/ D* N  Q7 R; t
vi2 2 0 pulse 0 1 0 0 0 5u 10u
" t* F9 P# P7 U  [, z& aGand(2) 3 0 1 0 2 0
% h. q/ Z, o' l5 i& P+ T/ X7 U1 I$ `# b# y4 [/ Y, A
这类门逻辑语句太让我纠结了 用起来好艰难。后面那啥x1,y1什么的,我看了几遍解释也没理解它想说什么,所以也没写。      o(╯□╰)o  

1

主题

21

帖子

-8988

积分

未知游客(0)

积分
-8988
81#
发表于 2012-2-23 17:10 | 只看该作者
{:soso__8961432591078930798_3:}还请shark大神 指教12啊

24

主题

978

帖子

7766

积分

六级会员(60)

Rank: 6Rank: 6

积分
7766
82#
 楼主| 发表于 2012-2-24 09:46 | 只看该作者
GXXX --- 电压控制电流源% Z0 `# I$ M2 |
FXXX --- 电流控制电流源- u% o' y5 i9 d& _. v
EXXX --- 电压控制电压源
$ q) o  t0 P2 ]6 b3 yHXXX --- 电流控制电压源
& J1 X# N4 ~3 z; b6 w--------------------------------先搞清楚你是那种电源。: I9 f4 E/ C5 f! D% a, W' Q

% j6 b3 W; D3 Y* `  d% i: egatetype(k)  逻辑门的类型可以是AND,NAND,OR 或 NOR 中的一种,参数
( r! U* h' [( D: {7 `; l; S(k)代表逻辑门的输入端数目,”x”,”y”表示作为输入函数的输出分段线性变量。, e$ P" `4 y  U7 ^+ ?! h
9 t3 x, k1 f1 Q1 l
x1...  在 VCCS 中是:  通过节点 in+和 in-的控制电压,x值必须是递增次序排列。 7 {' ]6 ?6 K3 p6 d3 G3 \1 J" }
      在 CCCS 中是:  通过 vn1 源的控制电流,x 值必须是递增次序排列。  
) s( k% j, j. `* [; m2 X9 }( J      在 VCVS 中是:  通过节点 in+和 in-的控制电压,x值必须是递增次序排列。 ' A5 ]4 Y2 z% ^" `! k. k9 `
      在 CCVS 中是:  通过 vn1 源的控制电流,x 值必须是递增次序排列。  
/ p; k- X$ I# Iy1...  在 VCCS 中是:  与 x 相应的元件数值 ! y) ^" s  ]$ u' q+ T
      在 CCCS 中是:  与 x 相应的输出电流值
$ }& ^  _; R( a3 {      在 VCVS 中是:  与 x 相应的元件数值
( b8 n! \. A( g) D      在 CCVS 中是:  与 x 相应的输出电压值

1

主题

21

帖子

-8988

积分

未知游客(0)

积分
-8988
83#
发表于 2012-2-24 11:15 | 只看该作者
本帖最后由 雁过泪留痕 于 2012-2-29 16:38 编辑   l: M, Q- `( J8 k1 N0 h# f* f
shark4685 发表于 2012-2-24 09:46 4 C6 s9 k3 o- S! @, m: B
GXXX --- 电压控制电流源
* R' t& b; \+ p+ ~$ Y; I! b$ v7 VFXXX --- 电流控制电流源
1 C, @1 ~2 ]7 f/ R9 p1 gEXXX --- 电压控制电压源

6 i1 K% p6 _* `& E  Y" r* q, ]- b0 D, p+ J- L: l- l
我看了你说的,我又试试,感觉最初用的VCVS还是对的。不过我一直想不清一个问题哈。, Y, T8 O# V& f, I, W

; n( h( Z* k/ P+ s) u2 Q我的目标是 与的效果 ,也就是真值表那种:
. \' _% l1 H9 B& h* K- l$ I) g( ]1  1  1
3 L6 D* \; G/ W1  0  0
$ n! _# S- W+ V& X0  1  0
$ A  e! |( K) Z$ Q0  0  0# c5 j# i1 l0 I7 R+ ^
但是时间上V(3)的效果更像是一种编码:
) n' B/ ~  g4 H/ A& G1  1  3" M9 d$ }: V2 s
1  0  2
2 W: s( f2 Y: L  v4 f2 ~& M0  1  18 D4 k% V/ G$ }9 V# _0 V4 [
0  0  0
3 B9 L7 _3 T5 Z  `7 w2 J5 n
, g, e; M/ z5 [- ~; U难道我少设置了什么参数???) u# Q8 ~) d6 Z$ Z
4 u. k2 o/ D6 h8 p9 O5 e
全部网标内容如下:
! S8 W9 b0 l9 y# V" q! ^. ccircuit of test2( D; b' b$ w  V
.options post0 K$ C: T/ J# z' J, F, ?
" \7 \1 q. Z! n+ l6 r% e" D" G; D8 {
*main circuit
8 Y1 D& c+ j+ B8 w4 Dvi1 1 0 pulse 0 1 0 0 0 15u 30u
1 @) |, H3 R- ]2 ^" n5 Q. a. u/ [vi2 2 0 pulse 0 1 0 0 0 5u 10u
! _* O  O% C) p9 NEand(2) 3 0 1 0 2 0  % 这EXXX的语句肿么写的 纠结0 F5 }& {* \! ^2 T/ i

& k+ Q# k. D6 _( ^7 T4 g5 M.tran 2n 60u
1 B, H) P- X! ?* {.probe v(1) v(2) v(3)  p6 s' Z6 E3 l1 \* B9 z
.end
5 G4 F+ _, z0 O0 n4 P7 l9 |# B- K

1

主题

21

帖子

-8988

积分

未知游客(0)

积分
-8988
84#
发表于 2012-2-24 11:17 | 只看该作者
shark楼主每帖必回,悉心指导的精神太令小弟佩服了 。。。{:soso__16984349925490629196_1:}

1

主题

21

帖子

-8988

积分

未知游客(0)

积分
-8988
85#
发表于 2012-2-29 16:38 | 只看该作者
静静地等待着 大神们来给我点提示 以后要坚持每天来这个帖子签个到啊

1

主题

21

帖子

-8988

积分

未知游客(0)

积分
-8988
86#
发表于 2012-3-1 10:44 | 只看该作者
shark大神 在不在 问你个问题:1 v( O$ n- t+ i$ R7 u7 b2 |
怎样给一个子电路添加延时啊,* _- k# P" M  L3 n
比如说,我想应用某个子电路的时候,我希望这个子电路是存在延时的,怎么添加这个延时啊 !!!$ G, H4 X( o8 i  c. B# ^
求指导啊 !!!

1

主题

21

帖子

-8988

积分

未知游客(0)

积分
-8988
87#
发表于 2012-3-1 16:08 | 只看该作者
雁过泪留痕 发表于 2012-3-1 10:44
$ K+ H7 }: c( nshark大神 在不在 问你个问题:
$ Y$ ?7 S6 Q2 _  W( C6 j怎样给一个子电路添加延时啊,4 i" t, E- I/ s1 @' _# t
比如说,我想应用某个子电路的时候,我希望 ...

; |. Y+ W$ j7 W: T3 T/ F; Y, T, W用这类语句 * d- R( l. @( `: [* k* l. o
Exxx n+ n- <VCVS> DELAY in+ in- TD=val <SCALE=val> <TC1=val> <TC2=val>& \. S! H3 ^! K, G4 t; s) z
+ <NPDELAY=val>" H# l. A& h' b1 w& `7 A* F6 [# t
无意中看到了。。。。。。。。o(╯□╰)o2 x: V: u; W* O$ X' b
麻烦大家了。。。。。。。。。

点评

自学spice是需要极大的热情的!  发表于 2012-3-2 08:40

评分

参与人数 1贡献 +10 收起 理由
shark4685 + 10 鼓厉下!!!

查看全部评分

1

主题

21

帖子

-8988

积分

未知游客(0)

积分
-8988
88#
发表于 2012-3-2 09:50 | 只看该作者
本帖最后由 雁过泪留痕 于 2012-3-2 10:23 编辑
  Y  R- \$ T2 N! [: Z) V7 Q- ]2 x7 G9 C# X
之前遇到的Exxx(VCVS非独立源)中multi-input gate 语句的用法,我在其他论坛上找到了一些提示,在这里讲一下(纯个人理解,错了希望大家指点一下哈)。
% w& D$ G6 x5 O1 [首先参考网址列下:0 z8 G  v& A& j5 I0 r% u
http://www.edaboard.com/thread98195.html   (提到了一些关于三输入语句的用法)7 S1 N, [* p4 I! w7 v$ D) T, V
还有一个是逻辑门的spice语句:
: D4 f" f( Z: D; W7 I7 ~http://www.ecircuitcenter.com/circuits/logic_sw/logic_sw.htm
4 Y: n) e4 [9 W3 O& n
7 n9 c% k  a( w5 N. dmanual上原语句如下(VCVS下的多输入门):
; J$ |9 D7 `: g! t6 L多输入门* o8 r7 p9 q5 `6 h- ^
Exxx n+ n- <VCVS> gatetype(k) in1+ in1- ... ink+ ink- <DELTA=val> <TC1=val>1 o3 n) z! g0 X: h0 K
+ <TC2=val> <SCALE=val> x1y1 ... x100y100 <IC=val>
% n5 u7 B' z( V9 \# K3 d( [! j
$ j! D4 `) G+ M- ]0 a' P语句相关解释如下:* B1 @2 p' \5 w( j6 O. g
①Exxx          电压控的制元件名。此参数必须以一个“E”且后面紧跟最长至1023个数字字母顺序的字符开始。% W$ f7 ]: W' }. ]+ y0 T3 J
②gateype(k)  可以是AND,NAND,OR或NOR。(k)代表输入的门的数目。x’s和y’s,作为输入函数,代表输出的分段线性变量。在多输入门中,仅仅有一个输入决定输出的状态。以上的关键字字不应该用作节点名。% [. ~( q* A9 i% m# w4 ]" k' G
③n+/-          控制元件的正或负节点。! C9 c5 c! d, ?' U
④VCVS 电压控制的电压源的关键字。VCVS是一个保留的关键字且不应该用作节点名。
  T  Q8 b; t/ S5 b! n) t⑤x1…           通过in+和in-节点的控制电压,x的值必须是递增的顺序
. m# O, @: M% c2 Z* W# t⑥y1…           x的相应的输出电流值。
% `2 e" Y, n% X1 k/ f⑦in+/-         正或负控制节点。规定每维一对。7 R9 G, Y% i$ c# [) ]

1 T+ x  T$ K2 S% r8 l3 d& D其中我一直纠结的就是x1,y1的用法,参考国外论坛的大神们的指导,我理解为这里是规定门逻辑电路的真值表的。" r+ f: H& i8 `& i+ ]" m
我写了两个网表如下:- }$ V! B% f/ H$ L# Z& ~8 h
先来一个或非门的+ Z" D/ u" w& M* R2 k" O
circuit of test2
% ^0 P  R* G6 [# `: W' z.options post
9 h5 @) {  t- r, T9 q9 N8 l
0 E! @+ w9 I8 N1 f4 F; L& C4 U' V*main circuit
4 V$ q% J  k+ {# s& r0 ]# G5 Dvi1 1 0 pulse(0 1 0 0 0 50n 100n): _- ?/ K( r  v; Z
vi3 2 0 pulse(0 1 0 0 0 75n 150n): \5 N3 a- ~$ D$ L5 ?) {
e 3 0 nor(2) 1 0 2 0
% t+ K4 y% \) o  j* d6 e+0.0 1.0v
3 g1 I  X! K# z$ e+1.0 0.0v
1 T7 f1 t, m$ M+ L! M        . p7 @: J3 p% Q5 k1 ~4 _  R- a
.tran 2n 1u
* |0 i: j5 q1 \+ S! F8 l6 B$ w.probe v(1) v(2) v(3)
) X9 V  G  s  I7 g) f) m.end7 L* u+ A: h2 @& Y! Y# u- g" k
效果如下:
2 f- t! k4 v/ |
9 M/ e- V; v8 Q7 k. m+ _: t( s0 I0 i
1 ~8 y# N# @7 k# p% z  g+ G/ h( t% D再来一个与门的
: x, V0 L+ L) O) n4 D; k( `. hcircuit of test2
9 T' C' S6 P' P.options post
; i/ ^: @1 T3 }( T9 Q
: S( {& K' l/ u+ Z& P, u*main circuit0 i3 p5 K7 R, }' Q) r3 h2 w$ l
vi1 1 0 pulse(0 1 0 0 0 50n 100n)
1 h( G$ J' W. g) O* qvi3 2 0 pulse(0 1 0 0 0 75n 150n)
% D2 |# `; I1 p/ o2 b. W2 W: S, q, |e 3 0 and(2) 1 0 2 0
. Z- P8 r/ F4 f; Q, t( x+0.0 0.0v8 d: X" |8 l  a5 L% Z: v
+1.0 1.0v
' F7 H& d0 o$ T       
& z* o' ?# L3 ]& K& |. q.tran 2n 1u7 W# w6 v$ j) C1 T
.probe v(1) v(2) v(3)" d! e# ]8 r' N2 y6 [
.end& H3 o3 D& ?" t, b- {8 r
效果如下:0 R- E6 `! e% l3 y- z- N

/ v3 p$ `" z/ y1 `# j
! ]* [' \  u9 w6 E3 n9 g- T有什么错误希望大家指出来(有种不祥的预感) ,好学习一下!!!

1

主题

21

帖子

-8988

积分

未知游客(0)

积分
-8988
89#
发表于 2012-3-2 09:58 | 只看该作者
本帖最后由 雁过泪留痕 于 2012-3-2 10:04 编辑
" i& m+ x5 p4 l0 A0 c  _: z+ o$ o* K: I1 u% w# R
虽然可能这个问题就我反应迟钝,不过我补充一下:& W# p4 y3 S, h3 g. m$ I+ }8 G
在这个语句中,and/nand 是输入中较小的一个影响输出状态,而 or/nor是输入中较大的一个影响输出状态(和我们所理解的门电路逻辑一样)。这里的x可能就是对应着系统判断之后输入中较大的或者是较小的一个值,y就是对应着这种判断结果应该输出什么值,(不知道我是不是理解偏了)。所以,按照门电路的逻辑,我们只需要在,x1,y1,x2,y2,.........中注意设置x,y对应的逻辑关系。2 U! D# }; Z/ b( |
7 e1 U1 G5 y, e' T, r

- p7 d  }! L4 n' T5 U$ k3 S顺便在此 大力感谢一下shark楼主给我的指导,有不会的我会再回来的(这么说肯定会回来的,o(╯□╰)o),希望大家继续指导啊 !!!8 x, s; {' P! f% l: n4 h: E

* i5 Y) ^1 N# U& U" J" G6 w2 p" ^, O

1

主题

21

帖子

-8988

积分

未知游客(0)

积分
-8988
90#
发表于 2012-3-2 10:08 | 只看该作者
要翻页了么 好吧 90楼我要了
( U% r4 C+ j- a) c  k, T真心觉得89l的东西写得连我自己也看不懂啊 纠结
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

巢课

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2025-6-12 18:49 , Processed in 0.085325 second(s), 30 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表