对于高速信号完整性,一块聊聊啊(17)

2024-05-30 06:04

本文主要是介绍对于高速信号完整性,一块聊聊啊(17),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

再来对前仿和后仿的仿真内容回顾一下:

从概念上有个根本的理解

前仿真又可以分为布局前仿真和布局后仿真。前者是在设计的最初阶段,建立和验证详细的电气拓扑结构并以此制定出详细的约束规则。后者是在布局完成的状态下,在布线过程中遇到的具体设计问题需要仿真的过程,SI主要针对前者做仿真验证。
后仿真是在PCB布线完成以后,对已经完成的关键网络进行仿真验证的过程。可以检查实际的物理执行过程(布局布线)是否违背设计意图:或是已知的改动,通过仿真来验证这种改动给高速设计带来的影响。

后仿真主要用的软件有Allegro PCB SI、SIWave等。因为是做的后仿真工作,所以一般是导入已有的PCB文件也就是brd文件到软件中进行建模。

SIWave后仿真的流程步骤

Siwave是-个用于信号完整性仿真的强大工具。它帮助工程师分析和优化高速电子设计,确保信号完整性并尽量减少电磁干扰(EMI)。
概述Siwave信号完整性仿真的一般流程。
1.模型创建,第一步是创建要分析的系统或PCB布局的模型。这涉及将设计文件,包括原理图和布局,导入到Siwave中。您还可以定义模型中组件和互连的电气特性。
2.电路仿真,模型创建后,您可以进行电路仿真,以分析系统的电气行为。Siwave使用各种仿真技术,如暂态分析,频域分析和眼图分析,准确预测信号完整性性能。
3.电源完整性分析,对于高速设计来说,电源完整性至关重要,因为电压波动可能影响系统的性能。Siwave允许您分析电源分配网络(PDN),并识别潜在的问题,如电压下降,地弹跳和解电容器优化。
4.信号完整性分析,Siwave使工程师能够分析信号完整性问题,如反射,串扰和阻抗不匹配。您可以模拟高速信号并在时间和频率域中分析其行为。Siwave提供各种分析工具,如眼图,S参数和TDR图,以帮助识别和解决信号完整性问题。
5.电磁干扰分析,电磁干扰(EMI)可能会降低电子系统的性能。Siwave提供EMI分析功能,以识别潜在的EMII源并评估其对设计的影响。您可以进行近场和远场仿真,了解辐射图案,并评估EMI减轻技术的有效性。

6.优化和设计验证,在分析仿真结果后,您可以优化设计以改善信号完整性并尽量减少EMI。Siwave提供设计规则检查(DRC)和制造设计(DFH)功能,以确保设计符合行业标准和制造要求。您还可以执行假设情景以评估设计更改并验证最终设计。
总的来说,Siwave提供了一个全面的信号完整性仿真流程,从模型创建到设计优化。它使工程师能够识别和解决信号完整性和EMI问题,确保高速电子系统的可靠性能。

通常情况下对于SI和PI是划分不同部门的,SI不会去做PI的那部分工作,所以主要是还是对信号完整性做分析。

Allegro PCB SI 后仿真的基本流程

1、准备仿真模型和其他需求
1.1 、获取所使用元器件的仿真模型
( 1 ) 通过官网,供应商等渠道获取 IBIS 模型
( 2 ) IBIS 模型转化为 DML 模型
( 3 ) 通过 Allegro 建立简单 DML 模型以及模型分配
( 4 ) 通过 Allegro 建立复杂 DML 模型以及模型分配
1.2、了解 PCB 的布线规则以及原理图部分逻辑
2、仿真配置
2.1、使用 SI Design Setup 配置
2.2、选择需要配置的信号线
2.3、设置仿真库
2.4、设置电源和地网络
2.5、设置叠层
2.6、设置元器件类别
2.7、为元器件分配和创建模型
2.8、设置差分对
2.9、设置仿真参数
2.10、SI Design Audit 相关
2.11、提取拓扑
3、后仿真报告结果验证
3.1、信号波形
3.2、反射报告,延时报告以及同步噪声报告

这里面截几张图把涉及到的几个点说明一下:

A、导入brd文件

图1.Allegro通过通过File->Open打开brd文件

图2.SIWave通过通过File->import-打开allegro brd文件

B、打入brd后,设置叠层(每层的厚度、材料、Dk\Df、铜的粗糙度、微带线的形状等)、过孔、焊盘、差分对、电源、接地、元器件设置等这儿不展开说了。

C、仿真后的报告结构验证和文件导出

图3.眼图结果

图4.导出snp文件

以上种种是细节,本文不展开,就是让大家了解后仿真和前仿真的不同,从概念上说就是是在PCB布线完成以后,对已经完成的关键网络进行仿真验证的过程。可以检查实际的物理执行过程(布局布线)是否违背设计意图;或是已知的改动,通过仿真来验证这种改动给高速设计带来的影响。

这篇关于对于高速信号完整性,一块聊聊啊(17)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1015760

相关文章

列举你能想到的UNIX信号,并说明信号用途

信号是一种软中断,是一种处理异步事件的方法。一般来说,操作系统都支持许多信号。尤其是UNIX,比较重要应用程序一般都会处理信号。 UNIX定义了许多信号,比如SIGINT表示中断字符信号,也就是Ctrl+C的信号,SIGBUS表示硬件故障的信号;SIGCHLD表示子进程状态改变信号;SIGKILL表示终止程序运行的信号,等等。信号量编程是UNIX下非常重要的一种技术。 Unix信号量也可以

17 通过ref代替DOM用来获取元素和组件的引用

重点 ref :官网给出的解释是: ref: 用于注册对元素或子组件的引用。引用将在父组件的$refs 对象下注册。如果在普通DOM元素上使用,则引用将是该元素;如果在子组件上使用,则引用将是组件实例: <!-- vm.$refs.p will be the DOM node --><p ref="p">hello</p><!-- vm.$refs.child will be the c

react笔记 8-17 属性绑定 class绑定 引入图片 循环遍历

1、绑定属性 constructor(){super()this.state={name:"张三",title:'我是一个title'}}render() {return (<div><div>aaaaaaa{this.state.name}<div title={this.state.title}>我是一个title</div></div></div>)} 绑定属性直接使用花括号{}   注

聊聊说话的习惯

1 在日常生活中,每个人都有固定的说话习惯。心理学研究表明,通过一个人的说话习惯,也可以分析出他的性格特点。对于每一个人来讲,说话习惯已经融为他们生活中的一部分。在社交活动中,一些不良的说话习惯很可能会给他们带来麻烦。因此,了解说话习惯对心理活动的影响是十分有必要的。 2 具有顺畅的说话习惯的人,大多思路清晰、语速适中、用词准确并且声声人耳,是典型的顺畅型说话方式这种类型的人要么不说话,要么

Linux中如何屏蔽信号

本篇文章主要学习Linux的信号处理机制,着重学习屏蔽信号部分。屏蔽信号处理的两种方式类似于信号的捕获,一种方式是直接对其设置,另一种方式是先获得描述符的掩码,然后对其设置操作。 本文主要参考自《嵌入式linux系统使用开发》,作者何永琪,Thanks. 在linux系统中,如何处理某个进程发送的一个特定信号呢?一般来说有三种方式: 1) 忽略信号 2) 屏蔽信号 3) 为该信号添

【全网最全】2024年数学建模国赛A题30页完整建模文档+17页成品论文+保奖matla代码+可视化图表等(后续会更新)

您的点赞收藏是我继续更新的最大动力! 一定要点击如下的卡片,那是获取资料的入口! 【全网最全】2024年数学建模国赛A题30页完整建模文档+17页成品论文+保奖matla代码+可视化图表等(后续会更新)「首先来看看目前已有的资料,还会不断更新哦~一次购买,后续不会再被收费哦,保证是全网最全资源,随着后续内容更新,价格会上涨,越早购买,价格越低,让大家再也不需要到处买断片资料啦~💰💸👋」�

聊聊分布式,再讨论分布式解决方案

前言 最近很久没有写博客了,一方面是因为公司事情最近比较忙,另外一方面是因为在进行 CAP 的下一阶段的开发工作,不过目前已经告一段落了。 接下来还是开始我们今天的话题,说说分布式事务,或者说是我眼中的分布式事务,因为每个人可能对其的理解都不一样。 分布式事务是企业集成中的一个技术难点,也是每一个分布式系统架构中都会涉及到的一个东西,特别是在微服务架构中,几乎可以说是无法避免,本文就分布式事

算法练习题17——leetcode54螺旋矩阵

题目描述 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。  代码 import java.util.*;class Solution {public List<Integer> spiralOrder(int[][] matrix) {// 用于存储螺旋顺序遍历的结果List<Integer> result = new ArrayList

标准库标头 <filesystem> (C++17)学习

此头文件是文件系统支持库的一部分。本篇介绍filesystem命名空间的一些函数。 函数 在命名空间 std::filesystem 定义 absolute (C++17) 组成一个绝对路径 (函数) canonicalweakly_canonical (C++17) 组成一个规范路径 (函数) relativeproximate (C++17) 组成一个相对路径 (函数) copy (C

C++基础:折叠表达式(C++17)

C++基础:折叠表达式(C++17) 简介语法展开 示例 简介 C++17 引入了一种新的语法特性,叫做折叠表达式,它允许编译器在模板参数包展开时进行元编程操作。折叠表达式的引入极大地简化了元编程代码,使其变得更为直观和简介。 语法 折叠表达式,简单来说,就是以二元运算符对形参包进行折叠,总共有以下四种类型: 一元右折叠一元左折叠二元右折叠二元左折叠 其对应的语法如下: