主要内容

并行转换器。固定资产

建模前馈均衡器

描述

并行转换器。固定资产系统对象™应用前馈均衡器(FFE)作为符号间隔有限脉冲响应(FIR)滤波器。将均衡器应用于逐样本输入信号或脉冲响应矢量输入信号,以减少由于信道损耗损害而造成的失真。

要使基带信号均衡:

  1. 创建并行转换器。固定资产对象并设置其属性。

  2. 调用带有参数的对象,就像调用函数一样。

要了解更多关于System对象如何工作的信息,请参见什么是系统对象?

创建

描述

固定资产=并行转换器。固定资产返回一个FFE对象,该对象根据对象中定义的有限脉冲响应(FIR)传递函数修改输入波形。

固定资产=并行转换器。固定资产(的名字价值使用一个或多个名值对设置属性。将每个属性名用引号括起来。未指定的属性有默认值。

例子:ffe = serdes.FFE('Mode',1)返回一个FFE对象,该对象将指定的轻拍权重应用到输入波形。

属性

全部展开

除非另有说明,属性为nontunable,这意味着在调用对象后不能更改它们的值。对象在调用时锁定,而释放函数解锁它们。

如果属性是可调,您可以随时更改其值。

有关更改属性值的更多信息,请参见在MATLAB中使用系统对象设计系统

主要

FFE运行模式,指定为01模式决定是否绕过FFE。

模式的价值 企业模式 固定资产操作
0 并行转换器。固定资产被绕过,输入波形保持不变。
1 固定 并行转换器。固定资产中指定的输入FFE抽头权重TapWeights,输入波形。

数据类型:

FFE抽头权重,指定为v中的行向量。向量的长度指定抽头的次数。每个向量元素的值指定在该位置的轻拍强度。大小最大的点是主点,因此定义了光标前后点的数量。

数据类型:

规范化抽头权重向量,指定为真正的.当设置为真正的,物体缩放TapWeights向量元素,使它们的绝对值之和为1。

数据类型:逻辑

先进的

单个符号持续时间的时间,指定为s的实标量。

数据类型:

波形的均匀时间步长,指定为s的实标量。

数据类型:

输入波形类型:

  • “样本”-一个逐样本的输入信号

  • “冲动”-脉冲响应输入信号

数据类型:字符

使用

语法

描述

y=固定资产(x

输入参数

全部展开

输入基带信号。如果WaveType设置为“样本”,输入信号是一个指定为标量的逐样本信号。如果WaveType设置为“冲动”,输入信号必须是脉冲响应向量信号。

输出参数

全部展开

经过过滤的通道输出。如果输入信号是指定为标量的逐样本信号,则输出也是标量。如果输入信号是一个脉冲响应向量信号,输出也是一个向量。

对象的功能

要使用对象函数,请将System对象指定为第一个输入参数。例如,释放名为obj,使用以下语法:

发行版(obj)

全部展开

一步 运行系统对象算法
释放 释放资源并允许更改系统对象属性值和输入特征
重置 的内部状态重置系统对象

例子

全部折叠

这个例子展示了如何处理信道的脉冲响应并行转换器。固定资产系统对象™。

使用100ps的符号时间和每个符号16个样本。信道损耗为16db。

SymbolTime = 100e-12;SamplesPerSymbol = 16;Dbloss = 16;

计算样本区间。

dt = SymbolTime/SamplesPerSymbol;

创建具有固定操作模式的FFE对象。

TapWeights = [0 0.7 -0.2 -0.10];FFEMode = 1;FFE1 = serdes。固定资产(“SymbolTime”SymbolTime,“SampleInterval”, dt,...“模式”FFEMode,“WaveType”“冲动”...“TapWeights”, TapWeights);

创建通道脉冲响应。

通道= serdes。ChannelLoss (“损失”dbloss,“dt”, dt,...“TargetFrequency”1 / SymbolTime / 2);impulse = channel.impulse;

用FFE处理脉冲响应。

impulseOut = FFE1(impulse sein);

将脉冲响应转换为脉冲、波形和眼图数据,以便在后面的步骤中可视化。初始化伪随机二进制序列。

Ord = 6;datappattern = prbs(ord,2^ord-1)-0.5;pulseIn = impulse2pulse(impulse,SamplesPerSymbol,dt);wavin = pulse2wave(pulseIn, datappattern,SamplesPerSymbol);eyeIn = shape(waveIn,SamplesPerSymbol,[]);pulseOut = impulse2pulse(impulseOut,SamplesPerSymbol,dt);wavout = pulse2wave(pulseOut, datappattern,SamplesPerSymbol);eyeOut =重塑(waveOut,SamplesPerSymbol,[]);

创建时间向量。

t = dt*(0:length(pulseOut)-1)/SymbolTime;teye = t(1:SamplesPerSymbol);t2 = dt*(0:length(waveOut)-1)/SymbolTime;

绘制脉冲响应比较、波形比较和输入输出眼图。

图图(t,pulseIn,t,pulseOut)图例(“输入”“输出”)标题(“脉冲响应比较”)包含(“SymbolTimes”), ylabel (“电压”网格)轴([47 60 -0.1 0.4])

图中包含一个axes对象。标题为Pulse Response Comparison的axis对象包含两个类型为line的对象。这些对象表示Input、Output。

图图(t2,waveIn,t2,waveOut)图例(“输入”“输出”)标题(的波形比较)包含(“SymbolTimes”) ylabel (“电压”网格)

图中包含一个axes对象。标题为“波形对比”的轴线对象包含两个类型为line的对象。这些对象表示Input、Output。

图次要情节(211),情节(teye eyeIn,“b”) ax =轴;包含(“SymbolTimes”) ylabel (“电压”网格)标题(“输入眼图”)次要情节(212)、情节(teye eyeOut,“b”轴(ax);包含(“SymbolTimes”) ylabel (“电压”网格)标题(“输出眼图”

图中包含2个轴对象。标题为Input Eye Diagram的axis对象1包含63个类型为line的对象。标题为Output Eye Diagram的axis对象2包含63个类型为line的对象。

这个例子展示了如何处理一个通道的脉冲响应一次一个样本使用并行转换器。固定资产系统对象™。

使用100ps的符号时间,每个符号使用16个样本。信道损耗为16db。

SymbolTime = 100e-12;SamplesPerSymbol = 16;Dbloss = 16;

计算样本区间。

dt = SymbolTime/SamplesPerSymbol;

创建固定模式的FFE对象。

FFEMode = 1;TapWeights = [0 0.7 -0.2 -0.1];FFE = serdes。固定资产(“SymbolTime”SymbolTime,“SampleInterval”, dt,...“模式”FFEMode,“WaveType”“样本”...“TapWeights”, TapWeights);

创建通道脉冲响应。

通道= serdes。ChannelLoss (“损失”dbloss,“dt”, dt,...“TargetFrequency”1 / SymbolTime / 2);

初始化12阶伪随机二进制序列(PRBS)代码生成器。

prbsOrder = 12;M = 500;要模拟的符号的%数目[dataBit, prbsSeed] = prbs (prbsOrder, 1);

每次循环通过一个符号。

inSymbol = 0 (SamplesPerSymbol,1);outave = 0 (SamplesPerSymbol*M,1);ii = 1:M%获取新符号[dataBit, prbsSeed] =伪随机位序列(prbsOrder 1 prbsSeed);inSymbol(1:SamplesPerSymbol) = dataBit-0.5;%卷积输入波形与通道y = channel(inSymbol);通过FFE一次处理一个样品= 1:SamplesPerSymbol向外扩展((ii-1)*SamplesPerSymbol+jj) = FFE(y(jj));结束结束

在截断前75个符号以允许均衡之后,在符号数组上使用函数重塑来创建眼睛图。

foldedEye = inflave (75*SamplesPerSymbol+1:M*SamplesPerSymbol),SamplesPerSymbol,[]);t = dt*(0:SamplesPerSymbol-1);人物,情节(t, foldedEye“b”);

图中包含一个axes对象。axis对象包含425个line类型的对象。

扩展功能

版本历史

在R2019a中引入

Baidu
map