SciTech-EECS-电设计- PCB设计-电路设计与仿真系统 + SPICE 仿真描述与模型

news/2024/11/13 22:08:42/文章来源:https://www.cnblogs.com/abaelhe/p/18307705

电路设计与仿真系统

  1. 用户可以通过 "仿真系统" 轻松的观察“电路行为”的“即时状态”。
    是因为“电子电路设计与仿真系统”集成了原理图编辑器,仿真引擎,波形显示等功能,

  2. "仿真系统" 通常也会涵盖“扩展模型”以及电子“元器件库”:

  • "扩展模型"主要包括IC(集成电路)专用的"晶体管模型", 如BSIM.
  • "元器件库"提供很多"通用元器件". 如电阻, 电容, 电感, 变压器 和 用户定义模型(如受控电流源,电压源).
  1. "仿真系统" 此外还提供了 Verilog-A 或 VHDL-AMS 的一些模型,
    "PCB设计"还要求"专用模型",如"线路走线的"传输线模型"和 "IBIS模型"。

  2. 本章通过AD软件对“电子电路设计与仿真”进行介绍。

    • AD 软件提供"混合信号电路"的仿真工具, 可在"原理图"中提供完善的"混合信号电路"仿真功能.
    • 在“电路原理图设计阶段”实现对混合(数字/模拟)信号电路的功能设计与仿真.
      配合简单易用的“参数配置”窗口,完成基于"时序、离散度、信噪比 等多种数据的分析.
    • AD软件的"电路仿真"是"混合模式仿真器",可用于对 模拟器件和数字器件的电路分析.
      "仿真器""采用由GTRI开发的增强版事件驱动型XSpice仿真模型,
      该模型是基于 Berkeley Spice3代码, 与 Spice3f5 完全兼容。
      • Spice3f5 的:
        • “模拟器件模型”包括: 传输线, 开关, 电阻, 电容, 电感, 电压源, 电流源;
        • “5种通用半导体器件模型”包括: Diodes, BJTs, JFET, MESFETs, MOSFETs.
      • XSpice 的
        • 模拟器件模型”是针对一些可能会影响到仿真效率的、冗长的,
          无需开发局部电路而设计的 "非线性器件"特性模型代码。
          包括特殊功能函数, 如"gain", "磁滞效应", "限电压及限电流", S域传输函数精确度等函数。
        • 数字器件模型”是用数字 SimCode语言 编写的.
          • SimCode语言是由"事件驱动型XSpice模型"扩展而来, 源于标准的XSpice代码模型。
            专用于"仿真数字器件"的特殊描述语言。是一种类C语言, 实现对数字器件的行为及特征的描述.
          • SimCode语言的"仿真文件"采用ASCII字符, 并保存成 .txt 文件, 编译后生成 *.scb 模型文件,
            可以将多个"数字器件模型"写在同一个SimCode文件.
        • 局部电路模型”是指"更复杂的器件", 如用“局部电路语法”描述的操作运放、时钟、晶体等,
          每个"局部电路"都保存在 *.ckt 文件,并在"模型名称"的前面加上大写的X。

电路系统的 Spice 描述

  1. Spice软件主要用于电子电路系统的设计、分析和仿真,
    例 IC(集成电路)、模拟电路、数字电路、混合(数字和模拟)电路、电源电路等.
    Spice于1957年推出正式实用化版本,并在1988年被定为美国国家工业标准。
    Spice采用完全开放的政策, 用户可以按自己的需要进行修改,实用性好,
    所以迅速得到推广,已被移植到多个操作系统平台。

  2. Spice的“netlist(网表)格式”成为了通常“模拟电路和晶体管集电路”描述的标准
    Spice 软件创建“半导体器件模型”时,用户只需选定“模型级别”并给出“合适的参数”即可。
    Spice的输入一般有两种形式:
    一种是netlist(网表,文本),另一种是“电路原理图”形式。
    “电路原理图”形式更简单、直观。既可生成新的“电路原理图”文件,
    又可以打开已有的“电路原理图”文件.

  3. Spice Model(模型)由两部分组成: Model Equations(模型方程式) 和 Model Parameters(模型参数).
    Model Equations的提供, 可以把Spice Model(模型)与 仿真器的算法 非常紧密的连接起来,
    能够获得更好的分析效率和分析结果。

  4. Spice模型已广泛应用于电子电路设计, 可对电路进行:

    • 非线性直流分析,
    • 非线性瞬态分析,
    • 和线性交流分析.

    被分析电路的元器件, 可包括:
    传输线, 电阻, 电容, 电感, 互感, 独立电压源, 独立电流源,
    各种线性受控源, 以及有源半导体器件.

  5. Spice软件为模拟“电路系统”,必须先建立"元器件"的"数学模拟模型".

    • 为其所支持的各种“元器件”先增加对应的“数学模型”来描述他们.
      也就是用 "计算机运算(模拟)" 的 "计算公式" 来表示 "元器件的静态与动态"
    • 理想"元器件模型"应既能正确反映"其电学特性", 又适合"在计算机上数值求解"。
      一般, 器件模型精度越高, 模型本身越复杂, 要求的模型参数个数越多,
      这时,计算所占内存量也越大, 计算时间也会增加.
    • 因此“元器件模型”的“复杂程度”要根据实际需要决定.
      是因为,集成电路往往包含数量巨大的元器件,
      元器件模型“复杂度”的少许增加就会使计算时间成倍增长。
      反之,模型过于粗糙,会导致分析结果不可靠。
    • 如果需要对元器件进行物理模型研究或进行单管设计,
      一般采用精度和复杂度较高的模型,
      甚至采用以求解半导体器件基本方程为手段的器件模拟方法.
      “二维准静态数值模拟”是这种方法的代表,
      通过求解"泊松方程"、"电流连续性方程"等基本方程,结合精确的边界条件和几何、工艺参数,
      可以非常准确的给出元器件的“电学特性”。
    • 一般的电路分析,应尽可能采用能满足一定精度要求的简单模型。
    • 电路模拟的精度, 除取决于元器件模型外, 还直接依赖于所给定的“模型参数数值的精度”.
      因此希望“元器件模型”的“各种参数”有明确的物理意义,与其“工艺设计参数”有直接联系,
      或用某种测试手段能测试出来。

Spice 的设计流程

Spice 描述一个完整的电路结构

下图是示例的“单个晶体管放大电路”的“完整结构”(用AD软件绘制)。

观察上图的“单个晶体管放大电路”原理图可以看出:

  1. 一个电路的完整结构, 应该包含“电子元器件” 和 “电路结构(用于连接电子元器件)”
  2. Vin、Vout、Vdc、Vb、Vc 和 Ve, 这些标号在“电子设计的角度”被称为 network(网络)
    network(网络)用来标识电子线路“原理级”的“每个元器件的位置”
    这种 “network(网络)表示方法”是 EDA(电子设计自动化)软件 标识"原理"电路结构的常用方法.
  3. 综上, 只要给定"电子元器件"、"电源"、激励源", 并且标记了每个电子元器件的"原理位置"
    就能“实现(或还原)”一个“完整”的“电路结构”
    在AD软件打开 “Simulate -> Generate NetList”菜单,为上图“单个晶体管放大电路”原理图生成如下图所示的Spice NetList(网表)文件:

下面对上图的NetList(网表)文件进行分析:

  1. 标题行、注释行和结束行

    • 标题行
      该行必须是输入文件的第一行( 而且开头不能有空格与注释符号) ,如

      Spice_exp1

    • 注释行
      注释行以 "" 号开始,可以有多行,每行都必须以 "" 号开始 例如:

      • SPICE NetList generated by Advanced Sim server on 2023/1/11 11:17:18
      • Schematic NetList:
    • 结束行

      .END
      用于标识输入文件的结束,它必须是输入文件的最后一行(其后最好没有"空白字符")

  2. 元器件模型描述

  1. 分电路描述
    • “分电路描述”可以定义由 Spice元器件 构成的“分电路”, 通过类似于“调用”器件模型的方法进行“引用”。
    • 由输入文件“独立的行”定义由“一组元器件”构成的“分电路”, 然后Spice程序自动在“引用”分电路的地方插入该“组元器件”。
    • 对“分电路”的“大小和复杂度”没有限制,并且“分电路”还可以“层层嵌套”包含其他的“分电路”。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

调试——条件断点

最近在用Unity做一款消除类的游戏,在选择两个相同的麻将时,会进行匹配消除,在选择第二个麻将的时候,代码逻辑是遍历麻将种类,然后进行对比匹配,一样则消除,但是第二个麻将被选择之后,触发的逻辑可能出现了问题,之前Debug的时候就一筹莫展了,因为两次点击,都会从touc…

Loki的部署模式

Loki部署模式 Loki程序基于微服务架构,由多个组件构成,不同部署模式下用户的组件亦有所不同“all”表示单体模式 “individual”表示微服务模式 “simple scalable deployment”模式下则存在三个逻辑组“read”、“write”和“backend” 系统架构写路径Distributor负责接收并…

利用FastAPI和OpenAI-Whisper打造高效的语音转录服务

最近好久没有写博客了,浅浅记录下如何将OpenAI-Whisper做成Web服务吧🤣 介绍 在这篇指导性博客中,我们将探讨如何在Python中结合使用FastAPI和OpenAI-Whisper。OpenAI-Whisper是一个前沿的语音识别模型,而FastAPI是一个高性能的现代Web框架,专门用于构建API。这两种技术的…

各种图(流程图,思维导图,UML,拓扑图,ER图)简介

原文链接:https://blog.51cto.com/jiqing9006/3284733 流程图 1.定义:流程图是对过程、算法、流程的一种图像表示,在技术设计、交流及商业简报等领域有广泛的应用。 2.案例3.计算机语言只是一种工具。光学习语言的规则还不够,最重要的是学会针对各种类型的问题,拟定出有效…

使用C#/.NET解析Wiki百科数据实现获取历史上的今天

创建一个webapi项目做测试使用。 创建新控制器,搭建一个基础框架,包括获取当天日期、wiki的请求地址等创建一个Http请求帮助类以及方法,用于获取指定URL的信息 使用http请求访问指定url,先运行一下,看看返回的内容。内容如图右边所示,实际上是一个Json数据。我们主要解…

嘿!通义灵码周边「超大鼠标垫」上线啦,更多玩法等待解锁

嘿!通义灵码周边「超大鼠标垫」上线啦,更多玩法等待解锁【领鼠标垫】简单3步体验通义灵码,即可领取灵码限量版超大鼠标垫! 体验通义灵码升级模型和新功能,贏灵码限量周边和大奖! 两种活动玩法,丰富好礼送不停,快来参与吧! 【玩法一】完成安装、学习、体验通义灵码简单…

OceanBase 金融项目优化案例(union all 改写)

在工单系统上看到有一条sql问题还没解决,工单描述看到压测场景被cpu资源被这条sql打爆,目前影响到项目进度,比较紧急。 直接联系这位同学看看是否需要帮忙。 慢SQL:SELECT task.*,sc01.aab300 …

【Linux网络】Linux网络协议栈问题汇集

Linux本机与本机socket通信会走网卡吗? 1.127.0.0.1本机网络IO需要经过网卡吗? 不需要经过网卡,即使把网卡拔了本机网络还是可以正常使用的。 本机网络IO的内核执行流程:跨机网络IO的流程:2.数据包在内核中是什么走向,和外网发送相比流程上有什么区别? 本机网络 IO 和跨…

laravel11: 给接口增加签名验证

一,添加controller/中间件/路由 1,添加中间件 liuhongdi@lhdpc:/data/site/gsapi$ php artisan make:middleware ApiSignINFO Middleware [app/Http/Middleware/ApiSign.php] created successfully. 2,添加路由: 在routes/api.php文件中 Route::controller(VirtualControlle…

Slimes

这个看官方题解就好了,解释一下官方题解 首先一个很大的前提(也比较显然),就是为了达到最优的情况,我们只会让一个史莱姆一直吃,而不会让两个史莱姆都吃,最后再让其中一个史莱姆将另一个史莱姆吃掉这一个区间指的是,只有这个区间的史莱姆进行互相吃,相当于忽略了区间外…

大屏可视化看板变形问题和分辨率问题的解决办法

关于大屏可视化,好看的画面总是千篇一律,但是遇到的问题,可谓是五花八门,就比如画面变形问题,模糊问题。做一个可视化画面,电脑上显示好好的↓ 实际投出来↓ 画面拉长了压扁了扭曲变形…… 回到电脑上一顿调,没啥用,还是变形…… 那种无力感,经历过画面工程师懂的都…