ADS Momentum学习笔记
ADS Momentum的简介
ADS Layout界面仿真采用的方法主要是Momentum(矩量法)。
Momentum的特点
Momentum是高级设计系统(ADS)的重要组成部分,它提供了设计现代通信系统的电磁仿真。它可以用来计算一般平面电路的S参数,包括微带线、槽线、共面波导和其他拓扑结构。ADS layout中提供了过孔和空气桥,它们用来连接层与层之间的拓扑结构,所以可以仿真多层RF/微波印刷电路板、混合多模块芯片和集成电路。Momentum为我们提供了整套的工具来预测高频电路板、天线和ICs的性能。
Momentum优化功能扩展了它的能力,使它成为一个真正的设计自动化工具。Momentum优化功能可以自动优化多个几何参数,它能帮助我们得到满足电路、器件的性能目标的最优结构。通过使用参数化的版图中的元器件,我们也能从原理图中执行Momentum优化功能。
Momentum可视化功能为用户提供三维视角的仿真结果,这使得我们能够查看道题或槽缝中的动态电流和远场的二维或三维方向图。
Momentum有很多非常强大且实用的功能,举例如下:
(1) 版图元器件和原理图元器件协同仿真(Co-Simulation)
版图元器件和原理图元器件协同仿真,打破了版图元器件和原理图元器件之间的藩篱。在电路仿真中,可以引入具有物理意义布局元器件来模拟;在ADS中只要按下某个键就可以将版图元器件引入。
实际应用时,如将PCB板的布局加入电路设计中去做电路协同仿真,或者将封装参数加入核心晶片设计(Core Chip Design)去做协同仿真,就可以将版图元器件的一些物理效应,如走线间的耦合和串扰纳入考虑。此外,PCB版图元器件的效应可以使用Momentum仿真的结果和实际测量的结果。
(2) 仿真真实物理世界的侧壁耦合(Side Wall Coupling)
Momentum可以计算开放空间及含有两个面或四个面侧壁的结构,这使得侧壁的寄生偶很、镜像电流,以及密闭腔的效应可以纳入考虑,这对实际线路设计的考量是很重要的。现在还可以导入EMpro软件模型,仿真屏蔽特性。
(3) 可产生SPICE模型,和其他仿真设计软件工具整合
Momentum仿真产生的S参数,可以用来产生SPICE相容的电路形式,所以利用Momentum的结果可以和SPICE共同仿真。
① Momentum的主要优点如下
当电路超过电路模型范围或者没有电路模型的情况下,依然能对电路进行仿真。
Momentum能确定组件之间的寄生耦合效应。
超越简单的分析和验证,Momentum使得电路设计自动化。
Momentum使得我们能形象地看到电流流动和三维显示远场辐射。
② Momentum的主要特点如下:
它是一个基于矩量法的2.5D电磁仿真器
通过自适应频率采样得到快速、精确的仿真结果
Momentum优化工具通过改变设计的几何尺寸从而实现性能指标。
提供了全面的数据显示工具
通过方程和表达式的输入,能对仿真数据进行运算、处理
充分融入了ADS电路仿真环境,允许电磁/电路联合仿真和联合优化。
Momentum的功能
1、 基板
基板描述了电路存在的煤质。如多层电路板的基板,它由多层金属印制线、绝缘介质、接地板、连接印制线的过孔、包围板子的空气组成。我们可以通过基板的定义来指定它们的特性,如基板上的层的数量、介质介电常数、电路每一层的高度。
基板是由介质基板层和金属层组成。基板的层定义了介质媒介、接地板、空气或者其他的层材料。金属层是介质基板层之间的导体层。
基板可以保存并且可以应用于其他的电路。ADS中包含了各种各样的预定义好的基板,可以直接调用,或者可以根据自己设计的需要改变基板。
(1) 定义一个基板的步骤如下
定义基板的介质层
将版图层映射到金属层
指定金属层的电导率
(2) 选择一个预定制基板
Momentum包含了许多的预定制的基板,基板文件以后缀.slm结束。
在基板设置窗口,执行菜单命令File----import
(3) 创建/修改层
可以从头开始自定义一个基板或者编辑一个已经存在的基板。一个基板必须至少有一个顶面层和一个底面层。
定义基板层
如果是新的定义,基板层区域将显示三个默认的层
AIR(顶面层):它被定义成一个开边界
Alumina(介质层):代表了有限厚度的介质层
Cover(底面层):定义了一个封闭的边界,通常设置为GND
编辑层
选择需要编辑的层,可以编辑,重新命名,增加层等。
(4) 定义开放边界
开放边界描述的是无限厚的层,如空气。通过编辑边界的相对导磁率和相对介电常数,开放边界可以用于定义其他气体或无限厚的媒质。
(5) 定义界面层
界面层有一定的厚度,其特性可以用相对介电常数和导磁率来描述。厚度可以是任意值,但需要考虑下列问题
Thin substrates是厚度小于1μm的基板,需要特殊的网格考虑。应该避免使用小于0.1μm的基板
Thick substrates厚度应小于1/2波长。
(6) 定义封闭的边界
封闭的边界表示一个平面,如地面。它是零厚度层。可以把它定义为良导体,或者指定电导率和板材的阻抗特性,把它定义为损耗导体。
(7) 删除、增加、以及移动层,添加过孔
Layout层包含的所有形状、元器件和过孔(它们是电路的组成部分)必须映射到基板金属层,如果没有映射,仿真时就不能被包括在内。
2、 端口
端口能够使能量流进和流出电路,能量作为仿真过程的一部分应用于电路。使用Momentum解算的电路至少有一个端口。
定义端口需要两步:端口加在已画好的电路上;在Momentum中指定端口的阻抗、校准方式,使之与电路相适应。
(1) 对电路加端口
可以从原理图窗口或版图窗口给电路加端口。当给使用Momentum仿真的电路加端口的时候,请注意以下几点:
① 端口连接的元器件或形状必须是版图中的层,这些层被映射到金属层,端口不能直接连接通孔。
② 确认端口在边缘处已经放好,端口的箭头在物体的外面,指向内部,并且与边缘成直角。
③ 确认端口和它连接的物体在同一个版图层上。
④ 端口必须应用在物体上,如果端口没有连接到物体,Momentum将自动地吸附端口到最近的物体上。
⑤ 在使用Momentum仿真的电路中不要使用地的端口元件Insert—Ground。地元件在版图中是不会被Momentum识别出的。
(2) 端口校准
在Momentum中,有两种不同的集总的源使用校准线对电路进行馈电:接地源和悬浮源。接地源对于低频来说,工作得很好。然而在高频的时候,当端口到地之间的距离变得很大的时候,这种源由于在校准过程中存在不希望的基板耦合,它所提供的结果是低精度的;悬浮源在高频时,工作得很好(不希望的基板耦合被减少了)。然而,它在低频时却工作不好,因为容性的内部阻抗阻断了低频电流的流动。Momentum默认在这两种源中自动切换,这依靠于仿真的频率范围。
(3) 决定使用端口的类型
Momentum有5种端口校准类型。端口的目的就是想电路注入能量,并且允许能量在电路里流进和流出。我们能够根据电路的类型及端口在电路中的功能为电路选择合适的端口。
3、 盒子和波导
设置电路的基板时,我们只设置了基板的垂直尺寸,而没有设置它的水平尺寸。因此,基板层在水平面上是无限延伸的。对于很多设计来说,这样设置并不影响仿真,但是有一些情况下,需要设定水平方向大小。对于这些情况,可以用盒子和波导来实现。
利用盒子和波导可以设置基板水平方向上的边界。可以利用盒子设置基板4个面的边界,也可以利用波导设置基板两边的边界。这些设置只在Momentum(微波)模式下有用,而对于Momentum RF模式没有影响。
更明确一些,可以利用盒子定义4个垂直正交的理想金属面作为基板水平方向上的边界。如果沿着Z轴俯视电路图,会看到这4个垂直面形成了一个矩形。盒子只能应用在基板定义的接地板和终止阻抗的地方。因此,4个垂直的金属壁加上顶层和底层的接地板构成了一个盒子。由此得名。壁是边面,顶层和底层的接地面是盒子的上表面和下表面。
尽管对于一个波导,只设置两个平行的面,但是情况也类似。因此,基板只限制在这两个平行面内,而与这两个面平行的水平方向上,基板仍然会无限延伸。顶层和底层的基板仍然需要定义成接地板。这两个边面和顶层、底层结合一起形成了一个波导。
(1) 添加盒子
盒子定义了电路基板4个面上的边界。在一个电路中,只能选择盒子和波导中的一种。盒子只能应用在基板的顶层和底层都定义在接地板或者终止阻抗的情况。盒子的壁是理想金属。接地板可以定义成理想金属,也可以定义为损耗金属。
给电路增加一个盒子可以分析包围电路的金属所带来的影响。盒子的谐振对以谐振频率为中心的一小块频带范围内的S参数有很大的影响。在仿真过程中,盒子侧壁上的所有电流都会被考虑在内。
给电路添加盒子
EM—BOX-Waveguide—Add Box
编辑盒子
一旦盒子被应用了,就不可以改变它的尺寸了,如果想改变它的大小,必须先删除这个盒子,然后新建一个。
删除盒子
EM—BOX-Waveguide—Delete Box
(2) 添加波导
过程和添加盒子类似,这里不再重复。
4、 网格
网格是一种类似于三角形和矩形网格的图形,每个三角形或矩形是一个单元。每个单元的形状基于电路的几何形状,也可以选择为用户定义的参数,所以每个电路都有独一无二的网格用于计算。网格应用到电路中是为了计算每个单元的电流和确定仿真中的单元间的耦合效应。
创建网格包含两方面的内容:定义网格参量;预计算网格。
没有必要先设定网格参数,通常使用默认参数。为了方便查看该网格,可以在仿真之前预算网格;否则,网格将作为仿真过程中的一部分而计算。
(1) 定义网格
单元数越多,仿真越精确,但是过多的单元会降低仿真的效率,而相应提高的精度却是有限的。所以,可以选择不创建网格参数,默认值会自动创建网格。
如果选择定义网格参数,可以把它们设定为如下几个方面
整个电路
Layout上的所有对象
单个对象
没有必要所有的对象都指定参数。例如,可以只在一个对象上设置网格参数,其他对象使用默认的网格参数。
(2) 定义整个电路的网格参数
全局网格参数变量影响整个电路
(3) 定义layout层的网格参数
网格参数只影响相应的layout层上的对象。如果已经有全局变量,那么在layout层上的局部变量有优先权。
5、 Momentum仿真
仿真过程结合格林函数及网格设置,用于求解电路中的电流。其中格林函数用于计算电路中的基板,网格设置用于计算电路。运用这些电流计算,可以算出电路的S参数。
运行仿真之前,必须满足以下标准。
必须指定正确的基板设置
必须至少有一个端口
必须定义网格
必须指定仿真频率范围
一次仿真可以设置多个扫频计划。每个范围中,要指明针对单个频率点或一个频率范围的求解。每个扫频计划都可以选择一种扫频类型,单个仿真过程可以运行多个扫频计划。
6、 ADS原理图和layout联合仿真
第一种方法是通过emModel,在Layout的Momentum窗口执行菜单命令component----creat/update进行设置,包括其在原理图中显示的大小(size)、基板(substrate)设置等。其中,需要注意的是,Momentum中只能绘制微带线、带状线之类能用于矩量法划分的元件,而对带封装的电阻、电容、电感等其他器件不能在layout中进行矩量法仿真。Layout中绘制的就像一块没有焊接任何元器件的电路板,需要通过emModel调进原理图,再在每个焊点连上各种元器件,进行仿真。其中,需要在layout的每个元器件的焊点都加上Port。通过emModel既可以对无源、有源电路进行仿真,还能考虑到连线、布局的分布参数效应。(仿真低噪声放大器时用到)
第二种方式是通过SNP。在data Item中的SNP控件可以导入layout仿真所得到的S参数模型,格式为xxx.ds。不过这个只适用于layout图中不能连接电阻、电容等元器件的情况。(仿真微带天线的时候用到过)
7、 Momentum优化
对于一个简单的平面结构的电磁模型,Momentum优化是一个很有用的工具。Momentum优化将自动的调整版图,通过设定的目标值来提高电路的性能,并且支持使用Momentum微波方式和Momentum射频模式。
8、 Momentum可视化
Momentum可视化让我们能观察和分析以下类型的仿真数据。
S参数
电流
天线远场及其他的天线参数
传输线数据
这些数据可以在二维及三维等多种图形格式来表示,一些类型的数据还可以用列表的形式显示。
(1) 启动Momentum可视化
单击三维图图标,当前的设计必须完整地仿真一次才能在Visualization中查看数据。
(2) Momentum可视化支持的画图类型
Momentum可视化支持的三种基本的画图类型
表面电流图----这种图表示出了导体表面的电流的密度。
箭头图----这种图用矢量代表了导体表面的电流的密度。
网格图----这种图可以显示Momentum网格,这些网格用来计算表面电流值。
(3) 解算设置图
解算设置用于为所需画的图形选择电流激励,通过简单地选择端口和频率,激励将改变且图形将自动更新。可以在Port setup下拉框中选择单端口激励和多端口激励的方式。
(4) 远场图
当打开Momentum可视化窗口的时候,在右边将显示出两个三维图。其中,一个是模型的三维图,另一个是远场三维图。窗口中画出的三维远场图默认是电场E的方向图。
Momentum的仿真流程
1、 选择模式
2、 建模
3、 定义基板
4、 端口
5、 扫频范围
6、 仿真电路
7、 查看结果
参考资料:
ADS2011射频电路设计与仿真实例
相关文章:
ADS Momentum学习笔记
ADS Momentum的简介 ADS Layout界面仿真采用的方法主要是Momentum(矩量法)。 Momentum的特点 Momentum是高级设计系统(ADS)的重要组成部分,它提供了设计现代通信系统的电磁仿真。它可以用来计算一般平面电路的S参数…...

解决Vue3 使用Element-Plus导航刷新active高亮消失
解决Vue3 使用Element-Plus导航刷新后active高亮消失的问题 启用路由模式会在激活导航时以 index 作为 path 进行路由跳转 使用 default-active 来设置加载时的激活项。 接下来打印一下选中项index和index路径, 刷新也是没有任何问题的,active不会消失…...

K8S系列文章之 一键部署K8S环境
部署的原理是基于自动化部署工具 Ansible 实现的,需要提前安装Ansible 并配置下主机节点环境 1. 安装 Ansible 首先ansible基于python2.X 环境,默认centos都已经安装好了python2环境 // 最好更新下库 // yum update yum install -y epel-release yum i…...

Spring Boot、Spring Cloud、Spring Alibaba 版本对照关系及稳定兼容版本
Spring Boot、Spring Cloud、Spring Alibaba 版本对照关系及稳定兼容版本 引言 在 Java 生态系统中,Spring Boot、Spring Cloud 和 Spring Alibaba 是非常流行的框架,它们提供了丰富的功能和优雅的解决方案。然而,随着不断的发展和更新&…...

虫情监测仪介绍—技术原理、功能优势是什么?
KH-CQPest虫情监测仪是做好虫情监测的重要设备,利用虫情监测仪能够对农业大田、智慧温室、林业等场景的害虫分布情况及害虫种类进行监测,协助人们制定合理的防治措施。 1.技术原理: KH-CQPest虫情监测仪采用光学诱虫原理,配合传感…...

HTML5 Canvas和Svg:哪个简单且好用?
HTML5 Canvas 和 SVG 都是基于标准的 HTML5 技术,可用于创建令人惊叹的图形和视觉体验。 首先,让我们花几句话介绍HTML5 Canvas和SVG。 什么是Canvas? Canvas(通过 标签使用)是一个 HTML 元素,用于在用户计算机屏幕…...
ChatGPT在社交媒体聊天和评论分析中的应用如何?
ChatGPT在社交媒体聊天和评论分析中具有广泛的应用前景,可以帮助企业、个人和社会从多个角度更好地理解用户观点、趋势和情感。以下是详细的讨论: **1. 舆情分析与趋势预测:** ChatGPT可以用于分析社交媒体上的评论、帖子和消息,…...

DoIP学习笔记系列:(四)用CAPL脚本读取DID的关键点
文章目录 1. 如何在CAPL中读取DID?1.1 避坑如何新建CAPL工程,在此不再赘述,本章主要分享一下如何在CAPL中调用DoIP接口、diag接口进行DoIP和诊断的测试。 1. 如何在CAPL中读取DID? 通常在实际项目中,会有很多DID,各种版本号、各种观测量,如果手动点,显然很麻烦,如果要…...
chrome插件开发实例06-定制自己的Chrome DevTools调试工具
目录 Chrome DevTools 调试工具 演示 编辑 源码 devtools.html devtools.js panel.html panel.js...

安卓读取,添加,更新,删除联系人,读取短信
目录 读取联系人 添加联系人 更新联系人 删除联系人 读取短信 读取联系人 安卓可以通过contentResolver来读取联系人表,联系人表的Uri信息是:content://com.android.contacts/data/phones 从而输出联系人信息, 需要相关权限:…...
Practices6|69. x 的平方根、(哈希表)205. 同构字符串、(哈希表)1002. 查找共用字符
69. x 的平方根 1.题目: 给你一个非负整数 x ,计算并返回 x 的 算术平方根 。 由于返回类型是整数,结果只保留 整数部分 ,小数部分将被 舍去 。 注意:不允许使用任何内置指数函数和算符,例如 pow(x, 0.…...

Qt扫盲-Model/View入门
Model/View 编程入门 一、概述二、介绍1. 标准部件2. Model/View 控件3. Model/View控件概述4. 在表格单和 model 之间使用适配器 Adapters 三、 简单的 model / view 应用程序示例1. 一个只读表2. 使用role扩展只读示例3. 表格单元中的时钟4. 为列和行设置标题5. 最小编辑示例…...

关于win11 debian wsl 子系统安装启动docker一直starting,无法启动
首先我先说明,我的步骤都是按照官网步骤来的 通过官网的操作步骤 通过测试命令 sudo docker run hello-world得到下面的命令,我们通过启动命令 sudo service docker start 执行结果如下图 也就是说无法启动,一直显示在启动中 遇到这种情况…...

Nginx反向代理配置+负载均衡集群部署
文章目录 负载均衡反向代理基础环境部署:什么是代理实验环境图流量过程 环境部署准备两台Web服务器安装Nginx准备页面内容添加主机名 代理服务器配置 修改windos hosts文件测试:终端浏览器 负载均衡反向代理基础环境部署: 什么是代理 正向代…...

设计模式行为型——迭代器模式
什么是迭代器模式 迭代器模式(Iterator Pattern)属于行为型模式,其提供一种方法顺序访问一个聚合对象中的各种元素,而又不暴露该对象的内部表示,即不需要知道集合对象的底层表示。编程环境中非常常用的设计模式。 迭代…...

K8s持久化存储(nfs网络存储)
数据卷 emptydir,是本地存储,pod重启,数据就不存在了,需要对数据持久化存储 1.nfs,网络存储 ,pod重启,数据还存在的...

常规VUE项目优化实践,跟着做就对了!
总结: 主要优化方式: imagemin优化打包大小(96M->50M),但是以打包速度为代价,通过在构建过程中压缩图片来实现,可根据需求开启。字体压缩:目前项目内引用为思源字体,…...

PLL 的 verilog 实现
锁相环(PLL)是一种常用的频率、相位追踪算法,在信号解调、交流并网等领域有着广泛的应用。本文对全数字锁相环的原理进行介绍,随后给出 verilog 实现及仿真。 PLL 锁相原理 锁相环结构如下图所示,主要由鉴相器、环路滤…...

【Hystrix技术指南】(1)基本使用和配置说明
这世间许多事物皆因相信而存在,所以人们亲手捏出了泥菩萨,却选择坚定的去信仰它。 分布式系统的规模和复杂度不断增加,随着而来的是对分布式系统可用性的要求越来越高。在各种高可用设计模式中,【熔断、隔离、降级、限流】是经常被…...
Oracle EBS OM客制化调用API创建销售订单非常慢(FND_FLEX_HASH死锁)
业务场景 由于Oracle EBS标准功的公司间关联交易操作涉及业务节点环节多,需要多个业务部门参考操作完成,浪费人力和花费时间。随着国内集团公司通过业务整合优化,大幅度减少间中很多环节的人为操作,如国内公司间贸易通过类似于客制化出货单申请方式,跨国公司间贸易通过类似…...
KubeSphere 容器平台高可用:环境搭建与可视化操作指南
Linux_k8s篇 欢迎来到Linux的世界,看笔记好好学多敲多打,每个人都是大神! 题目:KubeSphere 容器平台高可用:环境搭建与可视化操作指南 版本号: 1.0,0 作者: 老王要学习 日期: 2025.06.05 适用环境: Ubuntu22 文档说…...
HTML 语义化
目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案: 语义化标签: <header>:页头<nav>:导航<main>:主要内容<article>&#x…...

C++实现分布式网络通信框架RPC(3)--rpc调用端
目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中,我们已经大致实现了rpc服务端的各项功能代…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互
物理引擎(Physics Engine) 物理引擎 是一种通过计算机模拟物理规律(如力学、碰撞、重力、流体动力学等)的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互,广泛应用于 游戏开发、动画制作、虚…...

关于nvm与node.js
1 安装nvm 安装过程中手动修改 nvm的安装路径, 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解,但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后,通常在该文件中会出现以下配置&…...

376. Wiggle Subsequence
376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...
镜像里切换为普通用户
如果你登录远程虚拟机默认就是 root 用户,但你不希望用 root 权限运行 ns-3(这是对的,ns3 工具会拒绝 root),你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案:创建非 roo…...
工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配
AI3D视觉的工业赋能者 迁移科技成立于2017年,作为行业领先的3D工业相机及视觉系统供应商,累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成,通过稳定、易用、高回报的AI3D视觉系统,为汽车、新能源、金属制造等行…...
关于 WASM:1. WASM 基础原理
一、WASM 简介 1.1 WebAssembly 是什么? WebAssembly(WASM) 是一种能在现代浏览器中高效运行的二进制指令格式,它不是传统的编程语言,而是一种 低级字节码格式,可由高级语言(如 C、C、Rust&am…...
代理篇12|深入理解 Vite中的Proxy接口代理配置
在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...