主要内容

并行转换器。CDR

执行时钟数据恢复功能

描述

并行转换器。CDRSystem object™提供时钟采样时间,并使用一阶相位跟踪CDR模型估计接收机上的数据符号。有关更多信息,请参见SerDes系统中的时钟和数据恢复

提供时钟数据位置:

  1. 创建并行转换器。CDR对象,并设置其属性。

  2. 使用参数调用对象,就像调用函数一样。

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

创建

描述

cdr=并行转换器。CDR返回一个CDR对象,该对象确定时钟采样时间并根据Bang-Bang CDR算法估计数据符号。它不返回或修改传入的波形。

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

例子:cdr = serdes.CDR(“计数”,8)返回一个CDR对象,早期或晚期CDR计数阈值为8。

属性

全部展开

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

如果一个属性是可调,您可以随时更改它的值。

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

主要

触发相位更新的早期或晚期CDR计数阈值,指定为≥4的无单位实正整数。增加…的价值以收敛速度为代价提供更稳定的输出时钟相位。因为比特决定是在时钟相位输出时做出的,一个更稳定的时钟相位具有更好的比特误码率(BER)。

还控制CDR的带宽,CDR的带宽近似用公式计算:

带宽 1 符号时间 · 早/晚阈值计数 · 一步

数据类型:

时钟相位分辨率,指定为符号时间分数中的实标量。一步是CDR相位调整数的倒数。

数据类型:

时钟相位偏移,指定为在符号时间的分数范围内[-0.5,0.5]的实标量。PhaseOffset用于手动移位时钟概率分布函数(PDF),以获得更好的误码率(BER)。

数据类型:

参考时钟偏差损害,指定为≤300ppm (ppm)的实标量。ReferenceOffset为发射机振荡器频率与接收机振荡器频率之间的偏差。

数据类型:

采样锁存器亚稳定电压,指定为单位为伏特的实标量。如果数据样本电压位于(+/-)区域内灵敏度),则有50%的机率发生位错。

数据类型:

先进的

单个符号持续的时间,用s表示实标量。

数据类型:

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

数据类型:

调制方案,指定为23.4

调制的价值 调制方案
2 不归零(NRZ)
3. 三电平脉冲幅度调制(PAM3)
4 四电平脉冲振幅调制(PAM4)

请注意

IBIS不支持PAM3调制方金宝app式。因此,如果调制方案是PAM3,则不能导出到IBIS-AMI模型。

数据类型:

输入波形形式:

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

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

数据类型:字符

使用

语法

描述

y= cdr (x

输入参数

全部展开

输入基带信号。CDR的输入必须一次作为一个样本应用,而不是作为矢量。

输出参数

全部展开

相对恢复的时钟相位,在[0,1]范围内以SymbolTime为单位返回。

AMI时钟总线,作为结构返回,包括:

  • ClockTime -采样数据信号的时间。

  • clockValidOnRising -信号上升沿上的有效时钟时间值

包含额外的内部CDR信号的总线,作为结构返回,由以下组成:

  • clockPhase -相对时钟相位,以SymbolTime为单位,在[0,1]范围内。

  • symbolRecovered -在ClockTime从数据信号中恢复的符号。

  • voltagsample -在ClockTime从数据信号中观察到的电压。

  • PAM4Threshold -在PAM4阈值处估计的上眼。

  • CDRedgeVoltage -从ClockTime - SymbolTime/2的数据信号中观察到的电压。

  • CDRCounter -砰砰的CDR内部计数器,用于触发样本。

  • cdrearlylateccounter -砰砰的CDR累积(或过滤)信号,用来触发更新到CDR相位。

  • pam4symbolmiddlevvoltage -估计的内眼外包膜PAM4符号电压,以估计PAM4阈值。

  • PAM4OuterVoltage -估计的PAM4外包络电压,以估计PAM4阈值。

  • eyehightabsave -估计眼睛高度。

对象的功能

要使用对象函数,请指定System对象作为第一个输入参数。例如,释放名为system的对象的系统资源obj,使用下面的语法:

发行版(obj)

全部展开

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

例子

全部折叠

这个例子展示了如何使用并行转换器。CDR系统对象™。

使用符号表示时间One hundred.ps和16样品每个符号。的频道5dB的损失。

SymbolTime = 100 e-12;SamplesPerSymbol = 16;dt = SymbolTime / SamplesPerSymbol;损失= 5;陈=并行转换器。ChannelLoss (“损失”损失,“dt”, dt,...“TargetFrequency”1 / SymbolTime / 2的上升时间SamplesPerSymbol / 4 * dt);

使用10阶伪随机二进制序列创建一个随机数据模式。

奥德= 10;%伪随机位序列顺序nrz =伪随机位序列(奥德2 ^ ord-1);nrzPattern = nrz(:)' - 0.5;% [0, 1] - > [-0.5, 0.5];ChannelPulseResponse = impulse2pulse(陈。冲动,SamplesPerSymbol, dt);waveprbs = pulse2wave (ChannelPulseResponse (: 1), nrzPattern, SamplesPerSymbol);wave2 = [waveprbs;waveprbs];

创建使用NRZ调制方式的话单对象。

CDR1 =并行转换器。CDR (“调制”2,“数”8“步骤”, 1/64,...“SymbolTime”SymbolTime,“SampleInterval”, dt);

初始化输出。

阶段= 0(1、长度(wave2));CDRearlyLateCount = 0(1、长度(wave2));

通过CDR对象一次给波形一个样本。

ii = 1:length(wave2) [phase(ii), ~, optional] = CDR1(wave2(ii));CDRearlyLateCount (ii) = optional.CDRearlyLateCount;结束

用恢复的时钟分布、时钟相位与时间、早/晚计数阈值与时间绘制眼图。

t =(0:长度(wave2) 1) / SamplesPerSymbol;teye = (0: SamplesPerSymbol-1) / SamplesPerSymbol;眼=重塑(wave2 SamplesPerSymbol, []);图,次要情节(2,2,[1,3]),yyaxis情节(teye,眼“- b”)、标题(“恢复时钟分布的眼图”)包含(“象征时间”), ylabel (“电压”) yyaxis正确的直方图(阶段,SamplesPerSymbol / 2)组(gca),“YTick”,[]) subplot(2,2,2), plot(t,phase) xlabel(“符号的数量”), ylabel (“象征时间”);标题(“时钟相位与时间”) subplot(224), plot(t,CDRearlyLateCount) xlabel(“符号的数量”), ylabel (“数”)标题(“早/晚计数阈值与时间”

图中包含3个轴对象。具有标题的轴对象1具有恢复时钟分布的眼图包含一个直方图类型的对象。标题为时钟相位与时间的轴对象2包含一个类型为line的对象。带有标题的axis对象3 Early/Late Count Threshold vs. Time包含一个类型为line的对象。

扩展功能

介绍了R2019a