使用ADS进行serdes仿真时,Tx_Diff中EQ的设置对发送端波形的影响。

news/2025/2/14 6:33:48/

研究并记录一下ADS仿真中Tx_Diff的EQ设置。原理图如下:

最上面是选择均衡方法Choose equalization method:Specify FIR taps,Specify de-emphasis和none。

当选择Specify de-emphasis选项时,下方可以输入去加重具体的dB值,同时再下方的Pre Cursor和Post Cursor选项被禁止。

当选择Specify FIR taps后,需要设置Pre Cursor和Post Cursor的具体值

先把所有的Cursor都删掉,看一下波形:

起始时间93.75ps,幅度为±0.8V,对应的x[1]=0.8V,x[2]=0.8V,x[3]=-0.8V……

现在,加一个pre Cursor,Post Cursor保持不变,观察一下波形:

起始时间不变,但是波形幅度变成了±0.8*0.3=±0.24V。

只加一个Post Cursor,观察波形:

起始时间不变,但是波形幅度变成了±0.8*0.6=±0.48V。

接下来把上面的两个Cursor都加上看一下效果:

 

我们来逐个分析前三位,首先列出公式:

y[n] = PostCursor[0]*x[n] + PostCursor[1]*x[n-Delta] + PostCursor[2]*x[n-2*Delta] + ...PreCursor[1]*x[n+Delta] + PreCursor[2]*x[n+2*Delta]

那么y[1]=PostCursor[0]*x[1]+PreCursor[1]*x[2]=0.6*0.8+0.3*0.8=0.72V,其中0.8就是电压幅度,在上图的M3这一个marker上电压就是0.72V。

y[2]=PostCursor[0]*x[2]+PreCursor[1]*x[3]=0.6*0.8+0.3*(-0.8)=0.24V,也就是下图marker4这个位置电压为0.24V

我们继续分析第三位:

y[3]=PostCursor[0]*x[3]+PreCursor[1]*x[4]=0.6*(-0.8)+0.3*0.8=-0.24V,也就是下图的marker4位置电压为-0.24V。

好了,目前为止,两个Cursor的原理我们已经分析明白了,接下来再加一个Cursor——PostCursor[1]。

波形如下:

我们再分析前三位,首先列公式:

y[n] = PostCursor[0]*x[n] + PostCursor[1]*x[n-Delta] + PostCursor[2]*x[n-2*Delta] + ...PreCursor[1]*x[n+Delta] + PreCursor[2]*x[n+2*Delta]

y[1]=PostCursor[0]*x[1]+PostCursor[1]*x[0]+PreCursor[1]*x[2],x[0]不存在

y[2]=PostCursor[0]*x[2]+PostCursor[1]*x[1]+PreCursor[1]*x[3]=0.6*0.8+0.1*0.8+0.3*(-0.8)=0.32V,也就是上图marker4对应的位置就是0.32V,

y[3]=PostCursor[0]*x[3]+PostCursor[1]*x[2]+PreCursor[1]*x[4]=0.6*(-0.8)+0.1*0.8+0.3*0.8=-0.16V,也就是下图中的marker4位置电压为-0.16V。


http://www.ppmy.cn/news/1225171.html

相关文章

Vite -静态资源处理 - SVG格式的图片

特点 Vite 对静态资源是开箱即用的。 无需做特殊的配置。项目案例 项目结构 study-vite| -- src| -- assets| -- bbb.svg # 静态的svg图片资源| -- index.html # 主页面| -- main.js # 引入静态资源| -- package.json # 脚本配置| -- vite.co…

多维时序 | MATLAB实现PSO-LSTM-Attention粒子群优化长短期记忆神经网络融合注意力机制的多变量时间序列预测

多维时序 | MATLAB实现PSO-LSTM-Attention粒子群优化长短期记忆神经网络融合注意力机制的多变量时间序列预测 目录 多维时序 | MATLAB实现PSO-LSTM-Attention粒子群优化长短期记忆神经网络融合注意力机制的多变量时间序列预测预测效果基本介绍模型描述程序设计参考资料 预测效果…

STM32/N32G455国民科技芯片驱动DS1302时钟---笔记

这次来分享一下DS1302时钟IC,之前听说过这个IC,但是一直没搞过,用了半天时间就明白了原理和驱动,说明还是很简单的。 注:首先来区分一下DS1302和RTC时钟有什么不同,为什么不直接用RTC呢? RTC不…

【Linux系统编程十九】:(进程通信)--匿名管道/模拟实现进程池

【Linux系统编程十九】:匿名管道原理/模拟实现进程池 一.进程通信理解二.通信实现原理三.系统接口四.五大特性与四种情况五.应用场景--进程池 一.进程通信理解 什么是通信? 通信其实就是一个进程想把数据给另一个进程,但因为进程具有独立性…

Python---函数的作用,定义,使用步骤(调用步骤)

Python实际开发中,使用函数的目的只有一个 “让我们的代码可以被重复使用” 函数的作用有两个: ① 模块化编程 ② 代码重用 在编程领域,编程可以分为两大类:① 模块化编程 ② 面向对象编程 函数就是一个 被命名的、独立的…

【SA8295P 源码分析】129 - GMSL2 协议分析 之 Video Frame 帧数据结构分析 PCLK 计算公式

【SA8295P 源码分析】129 - GMSL2 协议分析 之 Video Frame 帧数据结构分析 & PCLK 计算公式 一、GMSL2 Video Frame 数据分析1.1 视频帧数据结构组成1.2 PCLK 计算公式系列文章汇总见:《【SA8295P 源码分析】00 - 系列文章链接汇总》 本文链接:《【SA8295P 源码分析】12…

【Linux】常用系统工作命令

一、Linux文档目录结构 在Linux系统中,目录、字符设备、套接字、硬盘、光驱、打印机等都被抽象成文件形式,“Linux系统中一切都是文件”。Linux系统中的一切文件都是从"根"目录(/)开始的,并按照文件系统层次…

294_C++_报警状态bit与()上通道bit,然后检测置位的通道,得到对应置位通道的告警信息,适用于多通道告警,组成string字符串发送

1、全部大致解析: //第一层结构体 struct alarminfo_t {unsigned int alarmid;INTF_ALARM_INFO_S pAlarm; };//第二层结构体 typedef struct{INTF_ALARM_TYPE_E AlarmType;DateTime AlarmTime;union{INTF_GENERAL_ALARM_S GeneralAlarm