【HSPICE仿真】实战练习(1)基础仿真分析

文章详细介绍了使用HSPICE进行反相器的直流仿真,包括输入文件处理、执行命令、仿真输出控制,以及如何通过.sweep进行参数扫描。此外,还对比了PulseSource、PatternSource和PWLSource三种不同输入源的特点。
摘要由CSDN通过智能技术生成

1. 反相器直流仿真

1.1 输入文件

仿真所用电路图:

在这里插入图片描述

输入网表文件:

Inverter Circuit
.OPTION POST
.DC VIN 0 5 0.1
.PRINT DC V(IN) V(OUT)
M1 OUT IN VCC VCC PCH L=1U W=20U
M2 OUT IN 0 0 NCH L=1U W=20U
VCC VCC 0 5
VIN IN 0 0 PULSE .2 4.8 2N 1N 1N 5N 20N
CLOAD OUT 0 .75P
.MODEL PCH PMOS LEVEL=1
.MODEL NCH NMOS LEVEL=1
.END

2.2 执行仿真

执行仿真的命令有很多,第一种仿真执行命令如下:

hspice -i quick.sp -o quick.lis &

执行该命令的时候,终端不会输出内容,仿真结束之后,会有如下提示:

在这里插入图片描述
如果是使用如下命令启动仿真:

hspice quickDC.sp

这个时候,不会产生 .lis 文件,但是,终端会显示内容,显示的就是 .lis文件中的内容。

下面这个命令就是在加了一个重定向命令,此时,终端不会输出任何内容,但是可以得到 .list 文件。 (重定向算是Linux系统的功能吧。)

hspice quickDC.sp > quickDC.lis &

3.3 仿真输出控制

可以看到,仿真结束后,生成了如下三个文件:
在这里插入图片描述

其中 .st0是输出状态文件,和仿真结果无关,.sw0就是使用option post得到的仿真波形结果。(波形文件的后缀名是和仿真类型相关联的。)

.lis 文件内容

一开始是一些基本信息:
在这里插入图片描述

然后是器件参数信息

在这里插入图片描述
在这里插入图片描述

和执行仿真相关的信息:

在这里插入图片描述

使用.print语句输出到该文件中的数据:

(x是数据起始位置,y是数据结束位置。)

在这里插入图片描述
在这里插入图片描述

最后是一些统计分析的信息

在这里插入图片描述

在这里插入图片描述

波形文件

波形文件quickDC.sw0option post命令生成的,使用WaveView打开之后如下所示:

在这里插入图片描述

这里我们可以选择电路中所有的节点进行观察,也就是说HSPICE工具保存了所有的仿真数据。

3.4 修改输出配置

对输入网表文件的输出控制部分增加一些内容,如下所示:

.option POST NODE LIST PROBE

此时,输出文件的变化

① 输出波形文件

可以看到,这里只能选择 .print 语句中描述的语句,这是.option probe在发挥作用。
在这里插入图片描述

② 输出列表文件中,增加了如下内容。

所有的元件(elements)信息,这是.option list在发挥作用。

在这里插入图片描述
在这里插入图片描述

所有节点的连接信息,这是.option node在发挥作用。

在这里插入图片描述

2. 反相器瞬态分析

输入网表文件:

在这里插入图片描述

直流工作点计算结果(.ic0文件):

在这里插入图片描述

仿真得到的波形文件(.tr0):

在这里插入图片描述

这个时候我们发现,反相器的上升延时和下降延时差距很大,这是因为我们把 PMOS 和 NMOS 的宽长比设置的一样了。

为了分析不同的宽长比对电路产生的影响,我们可以对该参数进行扫描分析。

使用不同宽长比进行仿真

第一个思路是.alter语句,如下:

在这里插入图片描述

这个时候会执行三次仿真,得到三个直流工作点计算结果和三个输出文件:

在这里插入图片描述

当然啊,我们可以使用WaveView打开这三个文件,然后把他们放在一起进行比较,得到的波形如下:

在这里插入图片描述

第二个思路是使用sweep,如下所示:

在这里插入图片描述

这个时候我们只得到一个输出波形文件,打开之后如下所示:

在这里插入图片描述

显然第二种方法更方便一些。

3. 几种不同输入源的比较

这里就主要考虑脉冲源、向量源和 PWL 源,主要是和数字电路相关的输入波形确定。

Pulse Source

定义文件:

在这里插入图片描述

波形文件:

在这里插入图片描述

在脉冲波形的定义中,是可以有关于周期的定义的,波形长度会随着仿真时间的增加而增加。

Pattern Source

输入激励定义如下:

在这里插入图片描述

得到的输入波形如下:
在这里插入图片描述

这里的问题是,输入激励定义了多久就是多久,不会随着仿真时间的增加,自动的进行周期性的重复。

仿真时间超过定义的输入激励事件的部分,输入激励会保持为定义的最后一个值,上例中就保持为1。

PWL Source

激励定义文件:

在这里插入图片描述

波形文件:

在这里插入图片描述

三个波形依次是 v1,v3,v2。

① 如果没有给出 r 关键字,波形是不会重复的,指定了 r 之后,波形就会随仿真施加周期性的重复。

② 如果没有定义 0 时刻的值,那么就是默认为定义的第一个值

③ 分段线性的意思就是,t1时刻的值到 t2 时刻的值是线性变化的,如图中黄线(V3)所示。

4. 瞬态分析中的sweep

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值