Verifying & Preparing a Project for Simulation

要进行仿真的设计应先完成验证并做好充分准备,以便获得正确的仿真结果。Simulation Dashboard 面板中的相关区域将引导你完成设计验证与准备,确保设计满足仿真所需的要求。

控制仿真范围

首先,应使用 Simulation Dashboard 面板顶部的 Affect 设置来选择仿真范围。该设置用于定义电路仿真器要为活动工程的哪些原理图页生成电路列表:

  • Document – 仅针对当前打开的原理图页。
  • Project – 针对当前工程的所有原理图页。

定义要纳入仿真的原理图页。
定义要纳入仿真的原理图页。

  • Affect  设置可让你在调试局部问题时快速在不同模式间切换,从而将问题隔离到某一特定页面。该设置可与 Compile Mask 指令(见下文)以及从 Simulation Dashboard 添加源的功能配合使用,使你能够将当前页的原理图与其他原理图页分开考虑。
  • 另请注意,如果包含待分析电路的设计工程包含 设计变体,则分析将针对当前激活的变体执行。

在可仿真设计中使用 Compile Mask

由于被 Compile Mask 指令 覆盖的设计元素对设计编译器不可见,它们将从设计中被省略。当仿真作为设计流程的一部分时,此功能会非常有用。

电压源和电流源是运行电路仿真所必需的元素,但它们不应出现在最终完成的 PCB 上。只要对电路结构做少量规划,通常就可以将所有仅用于仿真的器件集中到设计的某个区域——然后用 Compile Mask 指令轻松将该区域覆盖起来。

当电路用于仿真时,禁用 Compile Mask 指令以显示这些仅用于仿真的器件。一旦电路验证完成并准备纳入设计,即可重新启用 Compile Mask 指令,从而将仿真专用器件从设计中排除。如果将来需要再次修改设计,只需在签核前禁用 Compile Mask 指令(再次显示仿真专用器件),即可快速再跑一轮仿真。

初始状态下,Compile Mask 指令处于禁用状态,使电路可直接用于仿真。

在上例中启用 Compile Mask 指令后,仿真源会从设计中隐藏。

 

为仿真验证设计

首先,用于仿真的原理图必须属于某个 PCB 工程(*.PrjPcb)。如果该原理图页是自由文档,则无法使用与仿真相关的控件:主菜单中的 Simulate » Run Simulation 命令将处于不可用状态,Simulation Dashboard 面板也同样不可用。面板顶部会显示一条警告。

不属于工程的原理图无法进行仿真。
不属于工程的原理图无法进行仿真。

当活动原理图文档属于 PCB 工程时,单击 Simulation Dashboard 面板 Verification 区域中的 Start Verification 按钮,即可根据所选的 仿真范围 启动工程验证。

单击 Start Verification 以验证你的电路是否可用于仿真。
单击 Start Verification 以验证你的电路是否可用于仿真。

系统将调用一系列自动化流程与检查,包括生成电路的 SPICE 网表(*.nsx)、若干与仿真相关的电气规则检查,以及仿真模型有效性检查。模型检查会检测缺失仿真模型的器件,以及存在解析或引脚映射错误的模型。

当未检测到任何违规项时,Simulation Dashboard 面板的 Verification 区域将显示绿色对勾图标。

未检测到违规项时的 Verification 区域
未检测到违规项时的 Verification 区域

如果检测到任何检查违规项,则会在 Simulation Dashboard 面板的 Verification 区域显示相应的警告与图标。可能的违规项如下所述。

首次验证运行后,当原理图发生轻微更改时会自动执行验证。对于可能耗时较长的重大更改,自动验证将停止,并在 Simulation Dashboard 面板顶部显示“验证已过期”的消息。单击 Update 控件以执行验证。

仿真电气规则检查(ERC)的违规项将列在 Electrical Rule Check 标题下。

与器件仿真模型检查相关的违规项将列在 Simulation Models 标题下。 

为仿真准备设计

添加并配置仿真源

要仿真电路,原理图设计中应至少包含一个电压源或电流源。如果没有源,仍然可以执行仿真,并且你会在 Simulation Dashboard 面板的 Preparation 区域中收到消息 Need to add source 的警告。可通过单击 Simulation Dashboard 面板的 Simulation Sources 区域中的 Add 控件,并从菜单中选择 VoltageCurrent 命令来在原理图中放置电压源或电流源;也可以通过 Simulate 主菜单或 Active Bar 中的仿真命令菜单使用 Place VoltagePlace Current 命令。

应将仿真源添加到电路中。这可以直接在 Simulation Dashboard 面板中完成。
应将仿真源添加到电路中。这可以直接在 Simulation Dashboard 面板中完成。

放置源之后,可在 Properties 面板中更改其属性。关于配置源属性的说明:

  • Stimulus Name为信号的指定名称。你可以为原理图创建新信号或移除不必要的信号。使用“Stimulus Name”属性下拉菜单从可用列表中选择一个信号。你可以将相同的信号名称配置分配给电路中的多个信号源。

    当对多个源使用相同的激励时,请注意这些源将共享同一组激励参数。这意味着更改其中一个源的某个激励参数时,其他源也会同步反映相同的更改。为避免这种情况,你可以创建一个新的激励。
  • Stimulus Type 为源类型的选择,即信号随时间的依赖形式:
    • DC Source – 无时间依赖的恒定信号源。
    • Exponential – 具有指数形式时间依赖的指数信号源。
    • Piecewise Linear – 以分段线性函数形式随时间变化的信号源。更多信息请参阅 配置分段线性源
    • Pulse – 以矩形脉冲形式随时间变化的信号源。
    • Single Frequency FM – 以单频调制函数形式随时间变化的信号源。
    • Sinusoidal – 以正弦函数形式随时间变化的信号源。
    • File – 基于 CSV 文件的 PWL 源。更多信息请参阅 使用 CSV 文件作为源
  • 源的若干参数可在 Properties 面板的 Parameters 区域中设置。参数集合取决于所选的源类型。
  • 预览区域会基于指定参数显示一小段时间内的信号(对于周期波形信号,显示两个低频周期)。这使你能够跟踪所做的更改并验证其正确性。

已配置的正弦源属性示例
已配置的正弦源属性示例

原理图中放置的所有源都会列在 Simulation Dashboard 面板中。在此你可以移除已添加的源,并对其进行启用/停用。被停用的源不参与计算,并会在原理图上以淡化颜色显示。单击源名称可在原理图页中交叉定位到该源。

在 Simulation Dashboard 面板中浏览并管理仿真源
Simulation Dashboard 面板中浏览并管理仿真源

Simulation Generic Components 库还包含一组直流与交流电流/电压源、受控电流/电压源,以及多种类型的信号源。

配置分段线性源

当波形由用户指定时,通常需要创建复杂的分段线性信号。在这种情况下,可以使用插值型 VPWL 和 IPWL 电压源与电流源。当为所选源的 Stymulus Type 选择 Piecewise Linear 时,请使用 Properties 面板的 Parameters 区域中的 Time-Value Pairs 参数字段,以数值序列的形式指定坐标轴的坐标值,如下所示。

使用 Time-Value Pairs 参数来配置 Piecewise Linear 源
使用 Time-Value Pairs 参数来配置 Piecewise Linear 源

使用 CSV 文件作为源

电路仿真器也支持使用 CSV 文件为插值型 VPWL 和 IPWL 电压源与电流源指定时间-数值对。将 Stimulus Type 设置为 File,然后在 File 参数中指定路径+文件名(例如 C:\Designs\Circuit Simulation\Analog Amplifier\PWL_Source.csv),如下所示。你可以手动指定路径+文件名,或在 File 字段中双击,然后浏览并选择所需文件。

添加并配置探针

探针用于在电路的特定位置进行测量。可通过单击 Simulation Dashboard 面板的 Probes 区域中的 Add 控件,并从菜单中选择所需的探针类型来在原理图中放置探针;也可以使用 Simulate » Place Probe 菜单中的命令或 Active Bar 中的仿真命令菜单。可用的探针类型如下:

  • Voltage – 显示相对于电路基准节点(通常为 GND 节点)的电压。探针必须放置在导线上或元件引脚的电气热点上。
  • Current – 显示流入元件引脚的电流。电流为正表示电流流入元件引脚,电流为负表示电流从元件引脚流出。电流探针必须放置在元件引脚的电气热点上。
  • Power – 显示元件引脚上的瞬时功率值。功率为正表示该引脚作为功率消耗端工作,功率为负表示该引脚作为功率源工作。功率探针必须放置在元件引脚的电气热点上。
  • Voltage Difference – 显示所选节点之间的电压。一对探针——正端(VD+)与负端(VD-)——将依次放置在导线上或元件引脚的电气热点上。电压以负端探针为参考。

可直接在 Simulation Dashboard 面板中添加探针。
可直接在 Simulation Dashboard 面板中添加探针。

放置探针后,可在 Properties 面板中更改其属性。默认情况下,它将以放置该探针的网络或元件命名。

  • 如果探针放置在不合适的位置,将为其分配 Empty Probe 名称。
  • 对于具有基于子电路的仿真模型的元件引脚,不支持电流探针和功率探针。在这种情况下,将为探针分配 Not Available 名称。

已放置探针的示例。请注意,电流探针放置在不合适的位置(未放在元件引脚上),因此为其分配了 Empty Probe 名称。
已放置探针的示例。请注意,电流探针放置在不合适的位置(未放在元件引脚上),因此为其分配了 Empty Probe 名称。

原理图中放置的所有探针都会列在 Simulation Dashboard 面板中。在此你可以移除已添加的探针,并对其进行启用/停用。被停用的探针不参与计算,并会在原理图上以淡化颜色显示。单击探针名称可在原理图页中交叉定位到该探针。

在 Simulation Dashboard 面板中浏览并管理探针
Simulation Dashboard 面板中浏览并管理探针

PropertiesSimulation Dashboard 面板中,你都可以更改源的颜色。所选颜色将决定仿真结果文档中对应曲线图的颜色。

此外,仿真过程中计算得到的最后一个数值将显示在 Properties 面板以及设计空间中(在探针旁边),并且对应曲线图的预览将显示在 Properties 面板中。

仿真结果会显示在设计空间中探针旁边以及 Properties 面板中。
仿真结果会显示在设计空间中探针旁边以及 Properties 面板中。

交互式探针模式

此功能处于 Open Beta 阶段,并且在 Advanced Settings dialog 中启用 Simulation.InteractiveProbes 选项时可用。

你可以通过在 Simulation Dashboard panel 的 Preparation 区域中启用 Interactive Mode 选项来启用交互式探针模式,从而在包含仿真结果的 .sdf document 中立即反映探针的任何更改(添加和移除探针、启用和禁用探针、将探针移动到不同网络、更改探针颜色)。

Simulation Dashboard panel 中的 Interactive Mode 选项
Simulation Dashboard panel 中的 Interactive Mode 选项

启用 Interactive Mode 选项后,需要重新运行仿真才能使该功能生效。
启用 Interactive Mode 选项可能会影响仿真性能以及 .sdf document 的大小。

向设计中添加仿真模型

要成功仿真一个设计,电路中的所有元件都必须具备仿真条件,也就是说,每个元件都必须为其定义并链接一个仿真模型。Altium Designer 的仿真器支持常见的 SPICE 模型格式,包括 PSpice 和 LTspice 格式。扩展名为 .mdl.ckt.lib 和 .cir 的模型文件都可以使用。

请注意,LTspice 模型中的 Special Functions(在其模型语法中使用 A 标识符定义)目前不受支持。

Altium Designer 默认自带一个 Simulation Generic Components 库,其中包含多种最常用器件的仿真模型。此外,你还可以使用 Altium Designer 的 Manufacturer Part Search panel 查找可直接用于仿真的元件。

现实世界中可供设计人员使用的元件数量极其庞大,因此经常会遇到需要在用户添加的库中创建电路所需元件的情况。除了定义元件的符号外,还需要为该元件获取仿真模型并进行链接,才能使其具备仿真条件。

仿真模型可以从多种不同来源获取。以下列出了一些可能的获取途径或方法(非穷尽)来获得你在设计中目标器件所需的模型:

  • Manufacturer – 一个常见的查找模型位置是你要使用的器件制造商网站。通常,在该具体器件的页面上会提供指向可用模型的链接。
  • Altium Designer's SPICE Model Wizard – 使用此向导为现有或新建的库元件创建并自动链接一个 SPICE3f5 器件模型。如果链接到新元件,该元件将由向导自动创建。支持的器件模型类型包括:Semiconductor Capacitor、Semiconductor Resistor、Current-Controlled Switch、Voltage-Controlled Switch、JFET、Lossy Transmission Line、Uniform Distributed RC Transmission Line、Diode 和 BJT。有关使用 Altium Designer 的 Spice Model Wizard 创建仿真模型的更多信息,请参阅 Creating a Simulation Model
  • Third-Party Modeling Tools – 各类仿真软件包通常都包含用于对器件建模的功能,一般以模型向导的形式提供。
  • Dedicated Modeling Companies – 你也可以从第三方公司获取所需模型,这些公司可根据给定规格创建仿真模型。
  • By Hand – 也可以自行从零开始创建所需模型。这通常需要对编写模型定义所用语言有较好的掌握,例如创建子电路时。创建简单的 MDL 文件时,你需要充分了解该器件可用且受支持的参数。

模型(或宏模型)可以在相应编辑器中定义元件时分配给元件,也可以在将元件的原理图符号放置到原理图页之后再分配。

  • 仿真器仅支持对模型文件使用 ANSI 编码。
  • 项目中使用的仿真模型会缓存在项目内,因此这类项目可以在不同机器上轻松运行仿真。

下面各节介绍了在 Altium Designer 中放置带仿真模型元件的可用选项。

从 Simulation Generic Components Library 放置元件

Simulation Generic Components library 默认随 Altium Designer 一起安装。该库中的元件可像普通元件一样放置到原理图中。可在 Components panel 中通过选择 Simulation Generic Components 条目访问该库,或在原理图编辑器的主菜单中选择 Simulate » Place Simulation Generic Component 命令。

从 Components panel 访问 Simulation Generic Components library
Components panel 访问 Simulation Generic Components library

  • 有关从该库放置的元件参数说明,请参阅 Simulation Generic Components 页面。
  • 请注意,尽管通用仿真元件可以直接放置到原理图上,但随着设计推进,需要将它们替换为物理元件(而非虚拟元件)。
  • 一些常用的通用仿真元件(电阻、电容、晶体管等)也可以通过 Simulation Generic Components library 在原理图中使用 Simulate » Place Models 子菜单的命令进行放置。

放置带已附加仿真模型的元件

如果你的 Workspace libraryavailable file-based or database library 中的某个元件已附加仿真模型,请从 Components panel 放置该元件。

如果你使用的库中既有带仿真模型的元件也有不带的元件,可在 Components panel 中启用 Simulation 列,以便轻松定位可用于仿真的元件。

在 Components panel 中显示 Simulation 列,以便一目了然地查看哪些元件带有仿真模型。
Components panel 中显示 Simulation 列,以便一目了然地查看哪些元件带有仿真模型。

如果某个元件带有仿真模型,当在该面板列表中选中该元件时,你可以在 Components panel 的 Component Details 区域中查看该模型。

从 Manufacturer Part Search Panel 获取可仿真元件

Manufacturing Part Search panel 可让你访问制造商器件,其中许多都带有仿真模型。你可以在面板的 Filters pane 中,为 Has Simulation 参数选择 Yes 选项,将器件筛选为仅列出带仿真模型的器件。带模型的器件条目旁会显示  图标。

在 Manufacturer Part Search panel 中,你可以筛选列表,仅显示带仿真模型的器件。
Manufacturer Part Search panel 中,你可以筛选列表,仅显示带仿真模型的器件。

Manufacturer Part Search panel 的列表中选中的器件可以保存到你的 Workspace(推荐)、下载为集成库,或直接放置到你的设计中。

当从 Manufacturer Part Search panel 直接将器件放置到原理图页时,Altium Designer 会在该器件的原理图符号与其仿真模型之间应用默认的 1 对 1 映射。如果生成的映射不正确,你可以通过启用一个选项来覆盖此行为,该选项会自动用通用元件符号替换现有元件符号。该通用元件符号是在放置过程中创建的简单矩形,其引脚会自动映射到正确的模型引脚。要使用此功能,请在 Preferences dialog 的 Simulation - General page 中启用 Always Generate Model Symbol for Manufacturer Part Search Panel Using Simulation Model Description 选项。

仅有仿真模型时放置元件

如果你只有一个仿真模型(以模型文件形式保存在硬盘上或已上传到已连接的 Workspace),你可以直接从 Components panel 放置该模型,而无需先将该仿真模型附加到元件上。

  • 要以这种方式使用硬盘上的模型文件,请先将其 make it available 为基于文件的库,然后在面板中选择该文件对应的条目。

    仿真模型文件可以作为基于文件的库提供。此处展示了一个已添加到已安装库列表中的模型文件示例。
    仿真模型文件可以作为基于文件的库提供。此处展示了一个已添加到已安装库列表中的模型文件示例。

  • 当在 Preferences 对话框的 Simulation – General page 中启用 Show in Components Panel 选项后,Components 面板中将提供 SPICE Libraries 类别。Preferences 对话框的 Simulation – General 页面上所指定的 Model Path 文件夹中包含的库,将会列在该类别下。该类别结构会反映所指定文件夹的结构。此字段默认指定的 SPICE Models 文件夹位于 Mixed Simulation 扩展的默认安装 Library 文件夹(\ProgramData\Altium\Altium Designer <GUID>\Extensions\Mixed Simulation\Library)中,并包含一个 Analog Devices 的 SPICE 模型文件夹。

  • 要以这种方式使用 Workspace simulation models,请在 Components 面板中从 按钮菜单选择 Models,然后在面板中你的 Workspace 库的 All 类别下选择 Simulations 。

    在 Components 面板中启用 Models 选项,即可从已连接的 Workspace 浏览仿真模型。
    Components 面板中启用 Models 选项,即可从已连接的 Workspace 浏览仿真模型。

当你直接放置某个仿真模型时,Altium Designer 会分析该模型,并在 Simulation Generic Components 库中定位合适的符号。离散器件会使用适合该器件类型的符号,而由子电路建模的器件将使用一个简单的矩形符号。

下表列出了受支持的模型类型,以及放置的 Simulation Generic Components 库元件符号。

Component Model Text Symbol
(SIM Library Design Item ID)
电阻 .MODEL <model name> RES 电阻
电容 .MODEL <model name> CAP 电容
电感 .MODEL <model name> IND 电感
二极管 .MODEL <model name> D 二极管
双极型晶体管 .MODEL <model name> NPN BJT NPN 4 MGP
双极型晶体管 .MODEL <model name> PNP BJT PNP 4 MGP
结型 FET .MODEL <model name> NJF JFET N-ch Level2
结型 FET .MODEL <model name> PJF JFET P-ch Level2
MOSFET .MODEL <model name> NMOS MOSFET N-ch Level1
MOSFET .MODEL <model name> PMOS MOSFET P-ch Level1

仿真模型的自动分配

如果在 design verification 期间检测到一个或多个缺少仿真模型的元件,Simulation Dashboard 面板中将显示 Components without Models 警告,你可以在该面板中选择将仿真模型自动分配给这些元件。

对 PSpice 数字器件的支持

Altium Designer 还支持所有 PSpice 数字原语、数字激励(数字激励发生器与基于文件的激励)、数字输入器件和数字输出器件。

  • 对于所有 PSpice 数字门(DLYLINE 除外),已实现惯性延迟处理。
  • 在所有数字元件中,提供对零时间延迟的支持。当循环次数达到规定上限(上限设为 50 次迭代)时,将报告错误并终止仿真。
  • 同时也支持使用全局节点 $D_HI$D_LO$D_X 的数字模型。这些节点的行为等同于连接了数字信号源,其取值分别为 1、0 和 X。

对可变无源器件的支持

Altium Designer 支持可变电阻、电容和电感。无源器件的数值可以设置为变量。使用花括号中的表达式作为 Value 参数的值,以定义电阻的阻值、电容的电容量或电感的电感量。表达式中可使用以下内容:

使用以 'q =' 或 'flux =' 字符串开头、后接花括号表达式的形式作为 Value 参数的值,以定义电容的电荷或电感的磁通。

下面展示了无源器件取值中使用表达式的示例,以及相应电路的瞬态分析结果。

使用变量电阻的示例。R2 的阻值取决于 IN 网络的节点电压以及 time 变量。R4 的阻值取决于流经 R2 的电流(R2 是一个可变电阻)。

使用变量电容的示例,其电容量(C1)和电荷(C2)取决于其两端电压。电容量与电荷的表达式会得到相同的电容电流,因此得到的波形相同。

使用变量电感的示例,其电感量(L1)和磁通(L2)取决于流经它们的电流。电感量与磁通的表达式会得到相同的电感两端电压,因此得到的波形相同。

 
支持对可变无源器件的输出电压、功率和电流。

网络名称分配

电路仿真并不要求必须分配网络名称,但建议为了方便而进行分配。分配网络名称能让用于显示特性的点位选择更清晰,尤其是在处理复杂原理图时。在 Simulation Dashboard 中进行 Configuring & Running a Simulation 时,如果你已用 net label 标识了这些点位,那么对于某些类型的计算,就可以在 Output Expression 部分选择所需点位并在图表上显示特性。

AI-LocalizedAI 翻译
如您发现任何问题,请选中相关文本/图片,并按 Ctrl + Enter 键向我们提交反馈。
功能可用性

您可使用的功能取决于您所选择的 Altium 解决方案 —— Altium DevelopAltium Agile(Agile Teams 或 Agile Enterprise 版本),或仍在有效订阅期内的 Altium Designer。

如果您在软件中未找到文中提及的功能,请联系 Altium 销售团队了解更多信息。

旧版文档

Altium Designer 文档不再提供版本区分。如果您需要访问 Altium Designer 旧版本的文档,请前往其他安装程序页面的旧版文档部分。

Content