验证并准备项目以进行仿真
要进行仿真的设计应先完成验证并做好充分准备,以便获得正确的仿真结果。Simulation Dashboard 面板中的相关区域将引导你完成设计验证与准备,确保设计满足仿真所需的要求。
控制仿真范围
首先,应使用 Simulation Dashboard 面板顶部的 Affect 设置来选择仿真范围。该设置用于定义电路仿真器要为活动工程的哪些原理图页生成电路列表:
- Document – 仅针对当前打开的原理图页。
- Project – 针对当前工程的所有原理图页。

定义要纳入仿真的原理图页。
在可仿真设计中使用 Compile Mask
由于被 Compile Mask 指令 覆盖的设计元素对设计编译器不可见,它们将从设计中被省略。当仿真作为设计流程的一部分时,此功能会非常有用。
电压源和电流源是运行电路仿真所必需的元素,但它们不应出现在最终完成的 PCB 上。只要对电路结构做少量规划,通常就可以将所有仅用于仿真的器件集中到设计的某个区域——然后用 Compile Mask 指令轻松将该区域覆盖起来。
当电路用于仿真时,禁用 Compile Mask 指令以显示这些仅用于仿真的器件。一旦电路验证完成并准备纳入设计,即可重新启用 Compile Mask 指令,从而将仿真专用器件从设计中排除。如果将来需要再次修改设计,只需在签核前禁用 Compile Mask 指令(再次显示仿真专用器件),即可快速再跑一轮仿真。
为仿真验证设计
首先,用于仿真的原理图必须属于某个 PCB 工程(*.PrjPcb)。如果该原理图页是自由文档,则无法使用与仿真相关的控件:主菜单中的 Simulate » Run Simulation 命令将处于不可用状态,Simulation Dashboard 面板也同样不可用。面板顶部会显示一条警告。

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

单击 Start Verification 以验证你的电路是否可用于仿真。
系统将调用一系列自动化流程与检查,包括生成电路的 SPICE 网表(*.nsx)、若干与仿真相关的电气规则检查,以及仿真模型有效性检查。模型检查会检测缺失仿真模型的器件,以及存在解析或引脚映射错误的模型。
当未检测到任何违规项时,Simulation Dashboard 面板的 Verification 区域将显示绿色对勾图标。

未检测到违规项时的 Verification 区域
如果检测到任何检查违规项,则会在 Simulation Dashboard 面板的 Verification 区域显示相应的警告与图标。可能的违规项如下所述。
仿真电气规则检查(ERC)的违规项将列在 Electrical Rule Check 标题下。
Empty circuit for simulation
原理图必须至少包含一个带有仿真模型的器件。否则无法运行仿真,并会显示 Empty circuit for simulation 警告。单击 Details 链接将打开 Messages 面板并显示错误信息。

Empty circuit for simulation 警告
No reference node
原理图必须包含一个网络,仿真器可将其用作参考节点。必须将一个网络对象(通常是 电源端口)至少连接到一个器件。否则无法运行仿真,并会显示 No reference node 警告。单击 Details 链接将打开 Messages 面板并显示错误信息。

No reference node 警告
Duplicate designators
每个器件必须具有唯一的标号(Designator)。如果检测到重复标号,将显示 Duplicate Designators 警告。单击 Details 链接将打开 Messages 面板并显示错误信息。

Duplicate designators 警告
Voltage source/Inductor loop found
电压源与电感器件的引脚不得短接,即电压源或电感的引脚不得连接到同一网络。否则将显示 Voltage source/Inductor loop found 警告。单击 Details 链接将打开 Messages 面板并显示错误信息。

Voltage source/Inductor loop found 警告
Net name errors
电路中使用的网络名称不得包含与 SPICE 不兼容的字符,例如空格和逗号。否则将显示 Net name errors 警告。单击 Details 链接将打开 Messages 面板并显示错误信息。

Net name errors 警告
Global parameter errors
电路中使用的全局参数取值必须正确。否则将显示 Global parameter errors 警告。单击 Details 链接将打开 Messages 面板并显示错误信息。

Global parameter errors 警告
与器件仿真模型检查相关的违规项将列在 Simulation Models 标题下。
Components without Models
每个器件都必须具有仿真模型。如果某个器件缺少模型,将显示 Components without Models 警告。

Components without Models 警告
单击特定器件旁的 Add Model 控件,可打开 Sim Model dialog 并为该器件手动选择仿真模型。
单击 Assign Automatically 控件可自动添加缺失的模型。系统将按顺序在以下来源中搜索可用模型:
- Local – 本地存储的模型,位于 Preferences 对话框的 Simulation – General page 中 Model Path 字段所定义的路径下。
- Libraries – 在 Available File-based Libraries dialog 的 Installed 选项卡中列出的已安装库。
- Server – 来自已连接 Workspace 的仿真模型。
- Octopart – 云端库中提供的仿真模型。
找到的模型将被分配给元件,并在元件与仿真模型之间自动完成引脚映射。自动分配的结果会显示在 Simulation Dashboard 面板中。单击某个自动分配模型的 Edit Model 链接时,相关消息(状态、模型候选项)将显示在 Messages 面板中(同时还会打开 Sim Model 对话框)。
Model syntax errors
每个元件都必须有一个仿真模型。如果模型存在语法错误,将显示 Model syntax errors 警告。单击 Edit Model 控件以访问 Sim Model 对话框来检查模型。发现的错误将显示在对话框的右下角。
为仿真准备设计
添加并配置仿真源
要仿真电路,原理图设计中应至少包含一个电压源或电流源。如果没有源,仍然可以执行仿真,并且你会在 Simulation Dashboard 面板的 Preparation 区域中收到消息 Need to add source 的警告。可通过单击 Simulation Dashboard 面板的 Simulation Sources 区域中的 Add 控件,并从菜单中选择 Voltage 或 Current 命令来在原理图中放置电压源或电流源;也可以通过 Simulate 主菜单或 Active Bar 中的仿真命令菜单使用 Place Voltage 或 Place Current 命令。

应将仿真源添加到电路中。这可以直接在 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 面板中浏览并管理仿真源
配置分段线性源
当波形由用户指定时,通常需要创建复杂的分段线性信号。在这种情况下,可以使用插值型 VPWL 和 IPWL 电压源与电流源。当为所选源的 Stymulus Type 选择 Piecewise Linear 时,请使用 Properties 面板的 Parameters 区域中的 Time-Value Pairs 参数字段,以数值序列的形式指定坐标轴的坐标值,如下所示。

使用 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 面板中添加探针。
放置探针后,可在 Properties 面板中更改其属性。默认情况下,它将以放置该探针的网络或元件命名。

已放置探针的示例。请注意,电流探针放置在不合适的位置(未放在元件引脚上),因此为其分配了 Empty Probe 名称。
原理图中放置的所有探针都会列在 Simulation Dashboard 面板中。在此你可以移除已添加的探针,并对其进行启用/停用。被停用的探针不参与计算,并会在原理图上以淡化颜色显示。单击探针名称可在原理图页中交叉定位到该探针。

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

Simulation Dashboard panel 中的 Interactive Mode 选项
向设计中添加仿真模型
要成功仿真一个设计,电路中的所有元件都必须具备仿真条件,也就是说,每个元件都必须为其定义并链接一个仿真模型。Altium Designer 的仿真器支持常见的 SPICE 模型格式,包括 PSpice 和 LTspice 格式。扩展名为 .mdl、.ckt、.lib 和 .cir 的模型文件都可以使用。
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 文件时,你需要充分了解该器件可用且受支持的参数。
模型(或宏模型)可以在相应编辑器中定义元件时分配给元件,也可以在将元件的原理图符号放置到原理图页之后再分配。
下面各节介绍了在 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
放置带已附加仿真模型的元件
如果你的 Workspace library 或 available file-based or database library 中的某个元件已附加仿真模型,请从 Components panel 放置该元件。
从 Manufacturer Part Search Panel 获取可仿真元件
Manufacturing Part Search panel 可让你访问制造商器件,其中许多都带有仿真模型。你可以在面板的 Filters pane 中,为 Has Simulation 参数选择 Yes 选项,将器件筛选为仅列出带仿真模型的器件。带模型的器件条目旁会显示
图标。

在 Manufacturer Part Search panel 中,你可以筛选列表,仅显示带仿真模型的器件。
在 Manufacturer Part Search panel 的列表中选中的器件可以保存到你的 Workspace(推荐)、下载为集成库,或直接放置到你的设计中。
仅有仿真模型时放置元件
如果你只有一个仿真模型(以模型文件形式保存在硬盘上或已上传到已连接的 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 浏览仿真模型。
当你直接放置某个仿真模型时,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 数字原语、数字激励(数字激励发生器与基于文件的激励)、数字输入器件和数字输出器件。
对可变无源器件的支持
Altium Designer 支持可变电阻、电容和电感。无源器件的数值可以设置为变量。使用花括号中的表达式作为 Value 参数的值,以定义电阻的阻值、电容的电容量或电感的电感量。表达式中可使用以下内容:
- 内置常量(
pi、e等) - 用户定义的 global parameters
-
x -
temp用于电容两端电压或电感中电流 -
time用于分析温度 transient analysis -
hertz中的 AC sweep analysis - 节点电压
- 电压源电流
- 电感电流
- 可变无源器件电流
使用以 'q =' 或 'flux =' 字符串开头、后接花括号表达式的形式作为 Value 参数的值,以定义电容的电荷或电感的磁通。
下面展示了无源器件取值中使用表达式的示例,以及相应电路的瞬态分析结果。
网络名称分配
电路仿真并不要求必须分配网络名称,但建议为了方便而进行分配。分配网络名称能让用于显示特性的点位选择更清晰,尤其是在处理复杂原理图时。在 Simulation Dashboard 中进行 Configuring & Running a Simulation 时,如果你已用 net label 标识了这些点位,那么对于某些类型的计算,就可以在 Output Expression 部分选择所需点位并在图表上显示特性。

