此示例显示了如何配置规格范围GPZ矩阵
一个cth的Serdes Designer.应用程序使用零,杆和收益输出ZPK.
功能,给定杆和残留物输出合理的
功能。您可以通过重新格式化零,杆和收益ZPK.
用作a的功能GPZ矩阵
在一个ctle块。
导入包含传输函数的.csv文件使用readmatrix.
功能。
ctle_transfunc = readmatrix('ctle_transfer_function.csv'那'范围'那'A7:E775');rawfreq = ctle_transfunc(:,1);ri = cth_transfunc(:,4:结束);
作为一种选项,可以将从拟合使用的传输函数截断数据集。例如,您可以选择13 GHz的截止频率。
Fcutoff = 13E9;ndx = rawfreq
作为一种选择,我可以保存原始数据集我的稍后比较符合拟合输出合理的
功能。
Rawdata =复杂(RI(:,1),RI(:,2));
准备数据以供使用合理的
功能,将Real Number转换为使用传输函数到复杂的数字复杂的
功能。
数据=复杂(RI(NDX,1),RI(NDX,2));freq = rawfreq(ndx);
你可以使用合理的
功能要找到最适合传递函数。这合理的
函数执行迭代以识别具有最低错误的拟合。设置参数很重要招舒罗
至真的
为了添加杆,使得拟合趋于零作为无穷大。这满足了比GPZ矩阵中的零数更长的要求。
Fit = Rational(频率,数据,'宽容',-40,'迎斯州的',真的,'maxpoles',8,'展示'那'上');
不可减少。init:np = 0 errdbaaa = 0 errdb = 0(np = 0)np = 0 errdbaaa = -3.33309 errdb = 0(np = 0)np = 2 errdbaaa = -49.9298 errdb = -50.1853(np = 2)实现了特定的公差。最终:NP = 2 errdb = -50.1853
这合理的
函数返回极点和残留物,但您需要使用功能ZPK将这些转换为零,杆和CTLE块的增益。
[z,p,〜,dcgain] = zpk(适合);
通过ZPK输出的零,杆和增益需要格式化为GPZ矩阵以用于CTLE块。可以配置cled以使用规格范围GPZ矩阵
其中增益,杆和零的单位分别是DB,Hz和Hz。Function ZPK的输出必须为这些单位重新格式化,以便使用GPZ矩阵。
注意:初始化是良好的做法GPZ矩阵
如果输入数据集在一个分析到另一个分析之间改变。
GPZ =零(1,长度(P)* 2);GPZ(1,1)= 20 * log10(abs(dcgain));GPZ(1,2:2:长度(P)* 2)= P /(2 * PI);GPZ(1,3:2:长度(z)* 2 + 1)= z /(2 * pi);
这serdes.ctle.
块可用于生成与输入数据集相比的置于拟合结果的覆盖图。
myctle = serdes.ctle('GPZ',GPZ,'符号时间',40e-12,'规格'那'GPZ矩阵');[f,h] = plot(myctle);图(3),半径(F * 1E-9,DB(H),RAWFREQ * 1E-9,DB(RAWDATA))网格上Xlabel('ghz'),Ylabel('D b') 传奇('合身'那'数据')
启动Serdes Designer应用程序。在接收器的模拟模型后放置一个CTLE块。选择CLY和来自块参数窗格,设置规格参数到GPZ矩阵
。(可选)您可以以键入的名称GPZ矩阵
变量(在此示例中,“GPZ“)
,或复制来自的值GPZ矩阵
细胞图并将其粘贴到增益杆零矩阵范围。
在Serdes Designer App中,绘制CLY传递函数和脉冲响应添加图画按钮。您可以通过单击并拖动Serdes Designer窗口中的每个窗格来移动窗格以显示两个绘图。
然后点击导出>为Serdes系统制作IBIS AMI模型按钮。可以将IBIS-AMI模型加载到适当的EDA工具中,以绘制来自模型的脉冲响应。对于相关目的,您可以比较来自Serdes Designer App和EDA工具的脉冲响应的图。
c|Serdes Designer.|serdes.ctle.
|合理的
(rf工具箱)