主要内容

serdes.FFE

模型一个前馈均衡器

描述

serdes.FFE系统对象™应用前馈均衡器(FFE)作为symbol-spaced有限脉冲响应(杉木)滤波器。应用连续取样的均衡器输入信号或脉冲响应向量输入信号减少扭曲由于通道减值损失。

平衡基带信号:

  1. 创建serdes.FFE对象并设置其属性。

  2. 调用对象的参数,就好像它是一个函数。

了解更多关于系统对象是如何工作的,看到的系统对象是什么?

创建

描述

固定资产= serdes.FFE返回一个FFE对象修改输入波形根据有限脉冲响应(杉木)传递函数中定义的对象。

固定资产= serdes.FFE (的名字,价值)设置使用一个或多个属性名称-值对。在报价附上每个属性的名字。未指定的属性有默认值。

例子:固定资产= serdes.FFE(“模式”,1)返回一个FFE对象,利用权重指定适用于输入波形。

属性

全部展开

属性,除非另有注明nontunable后,这意味着你不能改变它们的值调用对象。对象锁当你叫他们,释放函数打开它们。

如果一个属性可调在任何时候,你可以改变它的值。

改变属性值的更多信息,请参阅系统设计在MATLAB使用系统对象

主要

企业运营模式,指定为01模式确定固定资产是否绕过。

模式的价值 企业模式 固定资产操作
0 serdes.FFE绕过,输入波形保持不变。
1 固定 serdes.FFE适用于输入固定资产利用权重,在指定的TapWeights输入波形。

数据类型:

FFE利用权重,指定为一个行向量v .向量的长度指定阀门的数量。每个向量元素的值指定了水龙头的力量在那个位置。水龙头的最大大小是主要的龙头,因此定义了预处理和post-cursor水龙头的数量。

数据类型:

规范化利用权重向量,指定为真正的。当设置为真正的,对象尺度TapWeights向量元素,这样他们的绝对值的总和是1。

数据类型:逻辑

先进的

一个符号持续时间,指定为一个真正的标量的年代。

数据类型:

统一的波形的时间步,指定为一个真正的标量。

数据类型:

输入波形类型:

  • “样本”——连续取样输入信号

  • “冲动”——一个脉冲响应输入信号

数据类型:字符

使用

描述

y=固定资产(x)

输入参数

全部展开

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

输出参数

全部展开

过滤通道输出。如果输入信号是连续取样信号指定为一个标量,输出也是标量。如果输入信号是脉冲响应矢量信号,输出也是一个向量。

对象的功能

使用一个目标函数,指定系统对象作为第一个输入参数。例如,释放系统资源的系统对象命名obj使用这个语法:

发行版(obj)

全部展开

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

例子

全部折叠

这个例子展示了如何处理通道使用的脉冲响应serdes.FFE系统对象™。

使用一个符号时间为100 ps和16个样品每个符号。通道有16个dB的损失。

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

计算取样间隔。

dt = SymbolTime / SamplesPerSymbol;

创建企业对象与固定的操作模式。

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

创建通道脉冲响应。

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

固定资产的脉冲响应过程。

impulseOut = FFE1 (impulseIn);

脉冲响应转换为脉冲波形和眼图的数据可视化在以后的步骤。初始化伪随机二进制序列(PRBS)。

奥德= 6;dataPattern =伪随机位序列(奥德2 ^ ord-1) -0.5;pulseIn = impulse2pulse (impulseIn SamplesPerSymbol, dt);waveIn = pulse2wave (pulseIn dataPattern SamplesPerSymbol);eyeIn =重塑(waveIn SamplesPerSymbol, []);pulseOut = impulse2pulse (impulseOut SamplesPerSymbol, dt);waveOut = pulse2wave (pulseOut dataPattern SamplesPerSymbol);eyeOut =重塑(waveOut SamplesPerSymbol, []);

创建时间向量。

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

情节的脉冲响应比较,波形比较,和输入和输出眼图。

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

图包含一个坐标轴对象。坐标轴对象脉冲响应比较包含标题2线类型的对象。这些对象代表输入、输出。

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

图包含一个坐标轴对象。坐标轴对象与标题波形比较包含2线类型的对象。这些对象代表输入、输出。

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

图包含2轴对象。坐标轴对象1标题输入眼图包含63行类型的对象。坐标轴对象与标题2输出眼图包含63行类型的对象。

这个例子展示了如何处理通道脉冲响应的一个示例使用serdes.FFE系统对象™。

使用时间为100 ps象征16个样品每个符号。通道有16个dB的损失。

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

计算取样间隔。

dt = SymbolTime / SamplesPerSymbol;

创建固定资产对象与固定模式。

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

创建通道脉冲响应。

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

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

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

一次遍历一个符号。

内部符号= 0 (SamplesPerSymbol, 1);outWave = 0 (SamplesPerSymbol * M, 1);2 = 1:M%获得新的符号[dataBit, prbsSeed] =伪随机位序列(prbsOrder 1 prbsSeed);内部符号(1:SamplesPerSymbol) = databit - 0.5;%卷积与通道输入波形y =通道(内部符号);%通过固定资产过程一个样本jj = 1: SamplesPerSymbol outWave ((ii-1) * SamplesPerSymbol + jj) =固定资产(y (jj));结束结束

删除前75个符号允许均衡后,使用数组功能重塑的符号来创建眼图。

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

图包含一个坐标轴对象。坐标轴对象包含425行类型的对象。

扩展功能

介绍了R2019a