CN105574279B - 基于二阶多边沿响应法的快速时域分析方法 - Google Patents
基于二阶多边沿响应法的快速时域分析方法 Download PDFInfo
- Publication number
- CN105574279B CN105574279B CN201510980049.2A CN201510980049A CN105574279B CN 105574279 B CN105574279 B CN 105574279B CN 201510980049 A CN201510980049 A CN 201510980049A CN 105574279 B CN105574279 B CN 105574279B
- Authority
- CN
- China
- Prior art keywords
- data
- value
- response
- state
- pattern
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Dc Digital Transmission (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开一种基于二阶多边沿响应法的快速时域分析实现方法,用于有效的解决在最大失真分析时存在的一系列由于非线性系统引发的问题。其实现步骤是:(1)读取波形响应;(2)处理波形响应;(3)求向量,将读取的波形响应处理为待求解向量;(4)解向量,将上一步所得数据处理为所需数据,此为本方法的核心内容;(5)去除主光标,重新计算;(6)得到所需数据;(7)得到眼图,用来评价系统性能。本发明能较精确的计算出信号传输过程中的情况,避免了现有方法存在的问题,更好的帮助解决实际应用中信号完整性的问题。本方法可以推广至更高阶的多边沿响应法,使多边沿响应法可以系统的应用于工程实践中。
Description
技术领域
本方法属于信号完整性领域,更进一步涉及高速电路基于二阶多边沿响应法的快速时域分析方法。本方法可应用于高速电路中信号完整性的设计分析。
背景技术
随着半导体工艺向高速度、高密度发展,作为核心竞争力的高速电路与系统设计技术已成为必备的利器。对无源通道的分析及建模,现在是并且未来仍将是信号完整性工程师的首要任务,因此,能够快速计算出通道中信号传输的最大失真就显得至关重要了。一般是,在时域中读取波形数据,从而计算出信号传输的最大失真,以此来完善设计,在此过程中,最关键的问题就是利用一定的方法快速精确的计算出结果。
B.K.Casper,M.Haycock,R.Mooney发表的“An accurate and efficientanalysis method for multi-Gb/s chip-to-chip signaling schemes”(IEEE Symposiumon VLSI Circuit Gigest of Technical Papers,2002)论文中,提出了一种求解通道中信号传输的最大失真的方法,单位脉冲响应法。其假设系统是线性的,由此任何数据模板的响应就是经不同位移后单位脉冲响应的线性求和。单位脉冲响应法的本质其实就是对单位脉冲响应进行移位叠加,而我们知道叠加法的最重要的基本假设就是系统可以准确地近似为线性时不变系统,也就是说其缺陷在于,单位脉冲响应法是无法处理非线性系统的。其次,假设系统产生的脉冲的上升边和下降边不对称,根据线性系统的叠加性,结果是:在连续的位之间会出现杂散的毛刺。因此,基于单位脉冲响应法的快速时域法求解信号的最大失真就会出现较大的误差。
D.Oh,F.Lambrecht,S.Chang,Q.Lin,J.Ren,J.Zerbe,C.Yuan,C.Madden,V.Stojanovic发表的“Accurate method for analyzing highspeed I/O systemperformance”(DesignCon2007)论文中,提出了另一种求解通道中信号传输的最大失真的方法,双边沿响应法。其将构成数据的脉冲分解为上升边和下降边,通过上升边和下降边向量合理组合,得到通道中信号传输的最大失真。然而,其缺陷在于,在一些情况下是无法得到通道中信号传输的最大失真的,也就是说,对于最大失真的1,我们发现如果存在某一向量的两个值连续为负值且后面的值小于前面的值,双边沿响应法就可能失灵。在这里,向量指的是将通道中的信号波形进行采样及量化后,将其移至原点得到的数据。同样,对于最大失真的0,如果存在某一向量的两个值连续为正且后面的值大于前面的值,双边沿响应法也可能失灵。
综上所述,对非线性驱动器进行建模时,单位脉冲响应法和双边沿响应法都有局限性。当面对上升边和下降边不对称的情况时,虽然对非线性驱动器采用双边沿响应法求解将比单位脉冲响应法的精度高,但是双边沿响应法也无法捕获器件的非线性特性,因为在当前位范围外的驱动器的开关活动没有被考虑到。
发明内容
本方法的目的在于克服上述现有技术的不足,提出一种基于二阶多边沿响应法的快速时域分析方法,以求在驱动器为非线性的情况以及上升边与下降边不对称的情况下,也能计算出通道中信号传输的最大失真。考虑到信号传输时,带有不同前导位的上升边与下降边也是不同的,由此,将信号分解为上升边与下降边的同时,将上升边与下降边根据不同的前导位再次划分,最终得到信号传输的眼图,这样可以就直观的得到通道中信号传输的情况。
为实现上述目的,本方法的具体步骤包括:
(1)读取波形响应
1a)用户构建相应的波形响应:用户构建的波形响应分别为驱动器发送码型为110时,010时,001时,101时的波形响应分别为F110,F010,R001,R101,发送上升边和下降边时的波形响应分别为R01,F10,用户所构建每一响应都应为电压与时间的函数,所述波形响应表现为一行固定时间间隔的电压值,所构建的每一响应时间长度相同;
1b)读取用户构建的波形响应:
(2)处理波形响应
2a)根据步骤1b)读取的波形响应的数据确定光标起始点:
2a1)对R01和F10进行处理,将F10左边添加UI个0,其中UI为发送一位码元所占的时间间隔,将R01右边添加UI个0,将新得到的R01和F10对位相加,得到一个脉冲响应;
2a2)找到步骤2a1)所得的脉冲响应电压的最大值,在这个最大值左边与右边各取一值,这两个值所在时间点相距UI的长度,在这些取出的点中,找到电压值最为相近的两点,左边取出的点的位置是光标左起始点,右边取出的点的位置是光标右起始点,取出的两点之间的数据为主光标数据;
2a3)用步骤2a2)所得的光标左起始点与光标右起始点,截取步骤1b)所得R01与F10的波形响应数据,得到R01与F10主光标数据;
2b)根据步骤1b)读取的数据确定稳定值,对于用户构建的波形响应,数据的稳定值为对应波形数据的最后一个值,共有六个稳定值,对应步骤1b)所读取的六个响应;
2c)使用读取的数据构建待处理边沿响应:
2c1)将R001及F110向左平移一个UI,即在这两行电压值右边分别添加UI个对应的稳定值,并将这两行电压值的第一个数据到第UI个数据删除,然后将整行数据减去其对应的稳定值;
2c3)用对位相减的方法分别将F010减去上述R001修改后的数据,得到新的下降边响应,将R101减去上述F110修改后的数据得到新的上升边响应,将新的下降边响应赋值给F010,将新的上升边响应赋值给R101;
构建新下降边和新上升边的方法如下:
构建新下降边计算式如下:
f11(t)=y110(t)
f01(t)=y010(t)-y001(t+T)+Vhigh
其中,f11(t)、f01(t)是当前面有两位码元时,时间0处的下降边响应;
构建上升边计算式如下:
r00(t)=y001(t)
r10(t)=y101(t)-y110(t+T)+Vlow
其中,r00(t)、r10(t)是当前面有两位码元时,时间0处的上升边响应;
是对码型b-2b-1b0的响应;
T表示位时宽;
Vhigh是对数据流1响应而得到的稳态直流电平;
Vlow是对数据流0响应而得到的稳态直流电平。
(3)求向量
3a)将步骤2c2)所得的F010与R101的波形响应数据以及步骤1b)所得的F110,R001,R01,F10的波形响应数据,减去相应的稳定值,得到波形响应数据的拖尾部分对主光标的影响值,所述拖尾部分指的是数据中主光标以后的数据,拖尾部分围绕0值上下波动,其中,正值将主光标值拉高,负值将主光标值拉低;
3b)根据步骤2a)所求得的光标左起始点,截取步骤3a)所得波形响应数据,波形长度为光标左起始点至末尾,将F110,F010,R001,R101波形响应数据左边删除两个UI的点,并在F110,F010,R001,R101波形响应数据后添加UI个相应的稳定值;
3c)将步骤3b)所得到的数据进行补零操作,在步骤3b)所得到的六组数据的末尾分别添加数个0,使得响应波形数据的个数为UI的整数倍;
3d)将步骤3c)所得到的数据每隔UI个点数取一个数据,每组响应得到UI组数据,将得到的每组数据首尾对换,得到六组待处理向量F110,F010,R001,R101,R01,F10;
3e)将步骤3d)所得待处理向量重新划分组,每组的第一组数据为一组,每组的第二组数据为一组,依次进行,将数据划分为UI组,每组中有六组数据即每UI组都包括F110,F010,R001,R101,R01,F10的部分数据;
(4)解向量
将步骤3e)所得的每UI组向量分别进行以下操作:
4a)初始化数据,初始状态有两种特定的状态S01=0和S02=1,发送的码元1或者码元0对最终的电压影响值为0,对于状态S01和状态S02,电压初始值均为0,其中,状态指的是当前发送的码型;
4b)计算第一时刻数据:
若初始状态S01=0的下一时刻没有边沿的变化,则第一时刻的状态为S11=00,且电压值不受影响;
若初始状态S01=0的下一时刻有边沿的变化,则只能出现上升边,第一时刻的状态为S12=01,电压值为初始化电压数据叠加步骤3e)所得数据中的R01的第一个值;
若初始状态S02=1的下一时刻没有边沿的变化,则第一时刻的状态为S13=11,且电压值不受影响;
若初始状态S02=1的下一时刻有边沿的变化,则只能出现下降边,第一时刻的状态为S14=10,电压值为初始化电压数据叠加步骤3e)所得数据的F10的第一个值;
4c)计算第二时刻数据:
若第一时刻的下一时刻,驱动器发送的码元与第一时刻发送码元相同,则第二时刻没有边沿跳变,且电压值不受影响;
若第一时刻的下一时刻,驱动器发送的码元与第一时刻发送码元不同,则第二时刻会出现一个上升边或一个下降边,电压值为第一时刻电压数据叠加步骤3e)所得相应波形响应数据的第一个值,这个相应波形响应取决于第一时刻码型;第二时刻共得到八种状态:S21=000,S22=001,S23=011,S24=010,S25=111,S26=110,S27=100,S28=101;
4d)计算第三时刻数据:
若第二时刻的下一时刻,驱动器发送的码元与第二时刻发送码元相同,则该时刻没有边沿跳变,且电压值不受影响;若第二时刻的下一时刻,驱动器发送的码元与第二时刻发送码元不同,则会出现一个上升边或一个下降边;由第二时刻每种状态得到两种第三时刻状态,共得到十六种状态,因为二阶多边沿响应法只受当前位之前两位的影响,将第三时刻状态中的码型序列的后三位码型相同的合并为同一状态,其中每两组码型是相同的,共有八种状态,包括:
状态S31=000,电压值不受影响;
状态S32=001,电压值为前一时刻电压数据叠加步骤3e)所得数据中的R001的第二个值;
状态S33=011,电压值不受影响;
状态S34=010,电压值为前一时刻电压数据叠加步骤3e)所得数据中的F010的第二个值;
状态S35=111,电压值不受影响;
状态S36=110,电压值为前一时刻电压数据叠加步骤3e)所得数据中的F110的第二个值;
状态S37=100,电压值不受影响;
状态S38=101,电压值为前一时刻电压数据叠加步骤3e)所得数据中的R101的第二个值;
合并后,第三时刻状态与第二时刻状态相同,电压值每次取对应波形响应数据的下一个数据,依次循环,直到计算到最后一个数据;
4e)每组数据按上述方法求解,共得到UI组数据;
(5)将数据去除主光标,即将步骤3e)所得到的每组数据删除最后一个值,再按步骤(4)所述方法计算一次;
(6)求得最坏上升边,最坏下降边,最好上升边,最好下降边,最好码型1,最好码型0:
6a)从步骤4e)及步骤(5)所得的最终数据中分别提取出每组的最大值和最小值,共2*UI个最大值,2*UI个最小值;
6b)求得眼图所需的各部分数据:
最坏上升边:步骤4e)中得到的码型1的最小值;
最好上升边:步骤2a3)所得R01的主光标叠加步骤(5)得到的码型0得最大值及R01对应的稳定值;
最坏下降边:步骤4e)中得到的码型0的最大值;
最好下降边:步骤2a3)所得F10的主光标叠加步骤(5)得到的码型1得最小值及F10对应的稳定值;
最好码型1:步骤4e)中得到的码型1的最大值及步骤(5)得到的码型1得最大值合并,叠加R01对应的稳定值;
最好码型0:步骤4e)中得到的码型0的最小值及步骤(5)得到的码型0得最小值合并,叠加F10对应的稳定值;
(7)得到眼图:
将步骤5b)所得的最坏上升边,最坏下降边,最好上升边,最好下降边,最好码型1,最好码型0绘制在同一幅图中形成眼图,所得的眼图常用来评价系统性能。
所得到的眼图为信号传输的最大失真及最好情况,眼图由六部分构成,将眼图从中间分开,左边两条线为最坏上升边,最坏下降边,右边两条线为最好上升边,最好下降边,上边的一条线为最好码型1,下边的一条线为最好码型0,将求得的六条边组合起来即为信号传输的的眼图,所述最坏上升边,最坏下降边,最好上升边,最好下降边构成信号传输的最大失真,所述最好码型1,最好码型0构成信号传输的最好情况,所述眼图能直观的看出信号传输的最大失真与最好情况,驱动器发送的码型响应的波动在最大失真与最好情况之间。
本发明与现有技术相比具有如下优点:
第一,由于本发明基于波形的上升边与下降边计算眼图,因此避免了由于上升边与下降边不对称时出现毛刺由此出现的计算不准确的情况,得到的结果更加准确,能给信号完整性设计提供更多的帮助。
第二,由于本发明考虑了当前单位间隔范围外的驱动器开关活动情况,因此,此方法同样适用于非线性情况,同时,该方法使用带有前导位的上升边与下降边响应,使得得到的结果更加精确,更加趋于实际。
附图说明
图1是本发明流程图;
图2是本发明具体构建波形的示意图;
图3是本发明对于数据各部分名称说明图;
图4是本发明处理读取的数据后产生的波形示意图;
图5是本发明对于数据分组的示意图;
图6是本发明对于数据重划分的示意图;
图7是本发明原理图;
图8是本发明对于最终结果求解的眼图各部分说明图;
图9是本发明实施例所产生的仿真结果图;
图10是单位脉冲响应法仿真结果图;
图11是双边沿响应法仿真结果图;
图12是伪随机码法仿真结果图;
具体实施方式
下面结合附图对本发明进行详细描述。
参照附图1,本发明的实施步骤如下:
(1)读取波形响应
1a)用户构建相应的波形响应:用户构建的波形响应分别为驱动器发送码型为110时,010时,001时,101时的波形响应分别为F110,F010,R001,R101,发送上升边和下降边时的波形响应分别为R01,F10,所构建波形响应如图2所示。用户所构建每一响应都应为电压与时间的函数,所述波形响应表现为一行固定时间间隔的电压值,所构建的每一响应时间长度相同;
1b)读取用户构建的波形响应:
(2)处理波形响应
2a)根据步骤1b)读取的波形响应的数据确定光标起始点:
2a1)对R01和F10进行处理,将F10左边添加UI个0,其中UI为发送一位码元所占的时间间隔,将R01右边添加UI个0,将新得到的R01和F10对位相加,得到一个脉冲响应;
2a2)找到步骤2a1)所得的脉冲响应电压的最大值,在这个最大值左边与右边各取一值,这两个值所在时间点相距UI的长度,在这些取出的点中,找到电压值最为相近的两点,左边取出的点的位置是光标左起始点,右边取出的点的位置是光标右起始点,取出的两点之间的数据为主光标数据,如图3所示;
2a3)根据步骤2a2)所得的光标左起始点与光标右起始点,截取步骤1b)所得R01与F10的波形响应数据,得到的R01与F10主光标数据;
2b)根据步骤1b)读取的数据确定稳定值,对于用户构建的波形响应,数据的稳定值为对应波形数据的最后一个值,共有六个稳定值,对应步骤1b)所读取的六个响应;
2c)使用读取的数据构建待处理边沿响应:
2c1)将R001及F110向左平移一个UI,即在这两行电压值右边分别添加UI个对应的稳定值,并将这两行电压值的第一个数据到第UI个数据删除,然后将整行数据减去其对应的稳定值;
2c3)用对位相减的方法分别将F010减去上述R001修改后的数据,得到新的下降边响应,将R101减去上述F110修改后的数据得到新的上升边响应,将新的下降边响应赋值给F010,将新的上升边响应赋值给R101;
构建新下降边计算式如下:
f11(t)=y110(t)
f01(t)=y010(t)-y001(t+T)+Vhigh
其中,f11(t)、f01(t)是当前面有两位码元时,时间0处的下降边响应;
构建上升边计算式如下:
r00(t)=y001(t)
r10(t)=y101(t)-y110(t+T)+Vlow
其中,r00(t)、r10(t)是当前面有两位码元时,时间0处的上升边响应;
是对码型b-2b-1b0的响应;
T表示位时宽;
Vhigh是对数据流1响应而得到的稳态直流电平;
Vlow是对数据流0响应而得到的稳态直流电平。
(3)求向量
3a)将步骤2c2)所得的F010与R101的波形响应数据以及步骤1b)所得的F110,R001,R01,F10的波形响应数据,减去相应的稳定值,得到波形响应数据的拖尾部分对主光标的影响值,所述拖尾部分指的是数据中主光标以后的数据,拖尾部分围绕0值上下波动,其中,正值将主光标值拉高,负值将主光标值拉低,此时得到的六组波形响应数据如图4所示;
3b)根据步骤2a)所求得的光标左起始点,将步骤3a)所得波形响应数据截取为波形为光标左起始点至末尾,将F110,F010,R001,R101形响应数据左边删除两个UI的点,并在F110,F010,R001,R101形响应数据后添加UI个相应的稳定值;
3c)将步骤3b)所得到的数据进行补零操作,在步骤3b)所得到的六组数据的末尾分别添加数个0,使得响应波形数据的个数为UI的整数倍;
3d)将步骤3c)所得到的数据每隔UI个点数取一个数据,每组响应得到UI组数据,如图5所示,将得到的每组数据首尾对换,得到六组待处理向量F110,F010,R001,R101,R01,F10;
3e)将步骤3d)所得待处理向量重新划分组,每组的第一组数据为一组,每组的第二组数据为一组,依次进行,将数据划分为UI组,每组中有六组数据,即每UI组都包括F110,F010,R001,R101,R01,F10的部分数据,方法如图6所示;
(4)解向量
参照图7,将步骤3e)所得的每UI组向量分别进行以下操作:
4a)初始化数据,初始状态,即图中第一列j=0时,初始状态有两种特定的状态S01=0和S02=1,该时刻发送的码元1或者0对最终的影响值为0,对于状态S01和状态S02,电压初始值均为0,其中,状态指的是当前发送的码型;
4b)计算第一时刻数据,第一时刻,即图6中第二列j=1时:
若初始状态S01=0的下一时刻没有边沿的变化,则第一时刻的状态为S11=00,且电压值不受影响;
若初始状态S01=0的下一时刻有边沿的变化,则只能出现上升边,第一时刻的状态为S12=01,电压值为初始化电压数据叠加步骤3e)所得数据中的R01的第一个值;
若初始状态S02=1的下一时刻没有边沿的变化,则第一时刻的状态为S13=11,且电压值不受影响;
若初始状态S02=1的下一时刻有边沿的变化,则只能出现下降边,第一时刻的状态为S14=10,电压值为初始化电压数据叠加步骤3e)所得数据的F10的第一个值;
4c)计算第二时刻数据,第二时刻,即图6中第三列j=2时:
若第一时刻状态S11=00的下一时刻没有边沿的变化,则第二时刻的状态为S21=000,且电压值不受影响;
若第一时刻状态S11=00的下一时刻有边沿的变化,则只能出现上升边,第二时刻的状态为S22=001,电压值为前一时刻电压数据叠加步骤3e)所得数据中的R001的第一个值;
若第一时刻状态S12=01的下一时刻没有边沿的变化,则第二时刻的状态为S23=011,且电压值不受影响;
若第一时刻状态S12=01的下一时刻有边沿的变化,则只能出现下降边,第二时刻的状态为S24=010,电压值为前一时刻电压数据叠加步骤3e)所得数据的F010的第一个值;
若第一时刻状态S13=11的下一时刻没有边沿的变化,则第二时刻的状态为S25=111,且电压值不受影响;
若第一时刻状态S13=11的下一时刻有边沿的变化,则只能出现下降边,第二时刻的状态为S26=110,电压值为前一时刻电压数据叠加步骤3e)所得数据中的F110的第一个值;
若第一时刻状态S14=10的下一时刻没有边沿的变化,则第二时刻的状态为S27=100,且电压值不受影响;
若第一时刻状态S14=10的下一时刻有边沿的变化,则只能出现上升边,第二时刻的状态为S28=101,电压值为前一时刻电压数据叠加步骤3e)所得数据的R101的第一个值;
4d)计算第三时刻数据。第三时刻,即图6中第四列j’=3时。
若第二时刻状态S21=000的下一时刻没有边沿的变化,则第三时刻的状态为S'31=0000;
若第二时刻状态S21=000的下一时刻有边沿的变化,则只能出现上升边,这样第三时刻的状态为S'32=0001;
若第二时刻状态S22=001的下一时刻没有边沿的变化,则第三时刻的状态为S'33=0011;
若第二时刻状态S22=001的下一时刻有边沿的变化,则只能出现下降边,这样第三时刻的状态为S'34=0010;
若第二时刻状态S23=011的下一时刻没有边沿的变化,则第三时刻的状态为S'35=0111;
若第二时刻状态S23=011的下一时刻有边沿的变化,则只能出现下降边,这样第三时刻的状态为S'36=0110;
若第二时刻状态S24=010的下一时刻没有边沿的变化,则第三时刻的状态为S'37=0100;
若第二时刻状态S24=010的下一时刻有边沿的变化,则只能出现上升边,这样第三时刻的状态为S'38=0101;
若第二时刻状态S25=111的下一时刻没有边沿的变化,则第三时刻的状态为S'39=1111;
若第二时刻状态S25=111的下一时刻有边沿的变化,则只能出现下降边,这样第三时刻的状态为S'310=1110;
若第二时刻状态S26=110的下一时刻没有边沿的变化,则第三时刻的状态为S'311=1100;
若第二时刻状态S26=110的下一时刻有边沿的变化,则只能出现上升边,这样第三时刻的状态为S'312=1101;
若第二时刻状态S27=100的下一时刻没有边沿的变化,则第三时刻的状态为S'313=1000;
若第二时刻状态S27=100的下一时刻有边沿的变化,则只能出现上升边,这样第三时刻的状态为S'314=1001;
若第二时刻状态S28=101的下一时刻没有边沿的变化,则第三时刻的状态为S'315=1011;
若第二时刻状态S28=101的下一时刻有边沿的变化,则只能出现下降边,这样第三时刻的状态为S'316=1010;
因为二阶多边沿响应法只受当前位之前两位的影响,所以可以根据第三时刻状态中的码型序列的后三位进行合并,合并的原则是16种状态中的后三位码型相同的合并为同一状态,其中每两组码型是相同的,共有8种状态。即图中第五列j=3时。其中:
S'31与S'313合并为新状态S31=000,电压值不受影响;
S'32与S'314合并为新状态S32=001,电压值为前一时刻数据叠加步骤3e)所得数据中的R001的第二个值;
S'33与S'315合并为新状态S33=011,电压值不受影响;
S'34与S'316合并为新状态S34=010,电压值为前一时刻数据叠加步骤3e)所得数据中的F010的第二个值;
S'35与S'39合并为新状态S35=111,电压值不受影响;
S'36与S'310合并为新状态S36=110,电压值为前一时刻数据叠加步骤3e)所得数据中的F110的第二个值;
S'37与S'311合并为新状态S37=100,电压值不受影响;
S'38与S'312合并为新状态S38=101,电压值为前一时刻数据叠加步骤3e)所得数据中的R101的第二个值;
在合并后,第三时刻状态与第二时刻相同,从图6中可以看出,j=3时与j=2时码型相同,每次计算时,电压值取上升边或下降边的下一个数据,依次循环,直到计算到最后一个数据;
4e)每组数据按上述方法求解,共得到UI组数据;
(5)将数据去除主光标,即将步骤3e)所得到的每组数据删除最后一个值,再按步骤(4)所述方法计算一次;
(6)求得最坏上升边,最坏下降边,最好上升边,最好下降边,最好码型1,最好码型0:
6a)从步骤4e)及步骤(5)所得的最终数据中分别提取出每组的最大值和最小值,共2*UI个最大值,2*UI个最小值;
6b)求得眼图所需的各部分数据:
最坏上升边:步骤4e)中得到的码型1的最小值;
最好上升边:步骤2a3)所得R01的主光标叠加步骤(5)得到的码型0得最大值及R01对应的稳定值;
最坏下降边:步骤4e)中得到的码型0的最大值;
最好下降边:步骤2a3)所得F10的主光标叠加步骤(5)得到的码型1得最小值及F10对应的稳定值;
最好码型1:步骤4e)中得到的码型1的最大值及步骤(5)得到的码型1得最大值合并,叠加R01对应的稳定值;
最好码型0:步骤4e)中得到的码型0的最小值及步骤(5)得到的码型0得最小值合并,叠加F10对应的稳定值;
(7)得到眼图:
将步骤5b)所得的最坏上升边,最坏下降边,最好上升边,最好下降边,最好码型1,最好码型0绘制在同一幅图中形成眼图,所得的眼图常用来评价系统性能,如图8所示;
所得到的眼图为信号传输的最大失真及最好情况,眼图由六部分构成,将眼图从中间分开,左边两条线为最坏上升边,最坏下降边,右边两条线为最好上升边,最好下降边,上边的一条线为最好码型1,下边的一条线为最好码型0,将求得的六条边组合起来即为信号传输的的眼图,所述最坏上升边,最坏下降边,最好上升边,最好下降边构成信号传输的最大失真,所述最好码型1,最好码型0构成信号传输的最好情况,所述眼图能直观的看出信号传输的最大失真与最好情况,驱动器发送的码型响应的波动在最大失真与最好情况之间。
本发明的效果可通过以下仿真进一步说明。
仿真实施例:
本仿真首先编写网表文件,该网表文件描述电路的连接关系,建立一个电路模型,该模型调用S参数及HFSS的仿真结果,对一部分复杂电路进行描述,该仿真的结果与实际基本相同。网表文件中设置该电路参数如下:数据传输率为1333Mbit/s;UI长度为375;系统为非线性系统;且上升边为50ps;下降边为20ps。
使用HSPICE2013工具仿真该网表文件,得到所需的六组数据,如图1所示。将这六组数据导入MATLAB中。
基于以上仿真所得数据,利用本方法的实现步骤,通过MATLAB软件对提取出的数据进行仿真,仿真结果如图9所示,横坐标代表UI,纵坐标代表电压,曲线为得到的最终结果,即为眼图。
对于相同模型,用现有技术即单位脉冲响应法及双边沿响应法进行仿真,这两种方法得到的结果为眼图。单位脉冲响应法仿真结果如图10。双边沿响应法仿真结果如图11。
同时,对于相同模型,使用传统的伪随机码的方法进行仿真,由于码型较长,可认为覆盖所有情况,在波形查看器中可以得到仿真结果的眼图。结果如图12所示。传统的伪随机码法可作为标准,用来对比本发明与现有技术仿真的结果。
本发明与现有技术的仿真结果如表1所示。
从表1参数可以看出,本发明的眼高数据为654.2,与伪随机码的结果最为接近,而单位脉冲响应法与双边沿响应法的眼高数据分别为666.6,676.2,与伪随机码法得到的数据相差较多。说明本发明的方法更加接近于实际情况。
表1
具体方法 | 眼高(mV) |
二阶多边沿响应法(本发明) | 654.2 |
单位脉冲响应法(现有技术) | 666.6 |
双边沿响应法(现有技术) | 676.2 |
伪随机码法 | 655.0 |
从表1参数可以看出,本发明的眼高数据为654.2,与伪随机码的结果最为接近,而单位脉冲响应法与双边沿响应法的眼高数据分别为666.6,676.2,与伪随机码法得到的数据相差较多。说明本发明的方法更加接近于实际情况。
用本发明的仿真结果图9对比单位脉冲响应法的仿真结果图10,可以看出,由单位脉冲响应法产生的毛刺,使用本发明已经消除。
对于非线性系统,本发明产生的结果更加精确,说明对比双边沿响应法,使用本发明能更精确的描述非线性系统中信号传输的情况。
Claims (3)
1.一种基于二阶多边沿响应法的快速时域分析方法,其特征在于,包括如下步骤:
(1)读取波形响应
1a)用户构建相应的波形响应:用户构建的波形响应分别为驱动器发送码型为110时,010时,001时,101时的波形响应,分别为F110,F010,R001,R101,发送上升边和下降边时的波形响应,分别为R01,F10,用户所构建每一响应都应为电压与时间的函数,所述波形响应表现为一行固定时间间隔的电压值,所构建的每一响应时间长度相同;
所述用户构建波形响应的方法如下:
驱动器发送码型110,取此时的通道内的响应作为驱动器发送码型110时的波形响应;
驱动器发送码型010,取此时的通道内的响应作为驱动器发送码型010时的波形响应;
驱动器发送码型001,取此时的通道内的响应作为驱动器发送码型001时的波形响应;
驱动器发送码型101,取此时的通道内的响应作为驱动器发送码型101时的波形响应;
驱动器发送上升边时,即发送码型01,取此时的通道内的响应作为驱动器发送上升边时的响应;
驱动器发送下降边时,即发送码型10,取此时的通道内的响应作为驱动器发送下降边时的响应;
1b)读取用户构建的波形响应:
(2)处理波形响应
2a)根据步骤1b)读取的波形响应的数据确定光标起始点:
2a1)对R01和F10进行处理,将F10左边添加UI个0,其中UI为发送一位码元所占的时间间隔,将R01右边添加UI个0,将新得到的R01和F10对位相加,得到一个脉冲响应;
2a2)找到步骤2a1)所得的脉冲响应电压的最大值,在这个最大值左边与右边各取一值,这两个值所在时间点相距UI的长度,在这些取出的点中,找到电压值最为相近的两点,左边取出的点的位置是光标左起始点,右边取出的点的位置是光标右起始点,取出的两点之间的数据为主光标数据;
2a3)用步骤2a2)所得的光标左起始点与光标右起始点,截取步骤1b)所得R01与F10的波形响应数据,得到的R01与F10主光标数据;
2b)根据步骤1b)读取的数据确定稳定值,对于用户构建的波形响应,数据的稳定值为对应波形数据的最后一个值,共有六个稳定值,对应步骤1b)所读取的六个响应;
2c)使用读取的数据构建待处理边沿响应:
2c1)将R001及F110向左平移一个UI,即在这两行电压值右边分别添加UI个对应的稳定值,并将这两行电压值的第一个数据到第UI个数据删除,然后将整行数据减去其对应的稳定值;
2c2)用对位相减的方法分别将F010减去上述R001修改后的数据,得到新的下降边响应,将R101减去上述F110修改后的数据得到新的上升边响应,将新的下降边响应赋值给F010,将新的上升边响应赋值给R101;
(3)求向量
3a)将步骤2c2)所得的F010与R101的波形响应数据以及步骤1b)所得的F110,R001,R01,F10的波形响应数据,减去相应的稳定值,得到波形响应数据的拖尾部分对主光标的影响值,所述拖尾部分指的是数据中主光标以后的数据,拖尾部分围绕0值上下波动,其中,正值将主光标值拉高,负值将主光标值拉低;
3b)根据步骤2a)所求得的光标左起始点,截取步骤3a)所得波形响应数据,波形长度为光标左起始点至末尾,将F110,F010,R001,R101波形响应数据左边删除两个UI的点,并在F110,F010,R001,R101波形响应数据后添加UI个相应的稳定值;
3c)将步骤3b)所得到的数据进行补零操作,在步骤3b)所得到的六组数据的末尾分别添加数个0,使得响应波形数据的个数为UI的整数倍;
3d)将步骤3c)所得到的数据每隔UI个点数取一个数据,每组响应得到UI组数据,将得到的每组数据首尾对换,得到六组待处理向量F110,F010,R001,R101,R01,F10;
3e)将步骤3d)所得待处理向量重新划分组,每组的第一组数据为一组,每组的第二组数据为一组,依次进行,将数据划分为UI组,每组中有六组数据即每UI组都包括F110,F010,R001,R101,R01,F10的部分数据;
(4)解向量
将步骤3e)所得的每UI组向量分别进行以下操作:
4a)初始化数据,初始状态有两种特定的状态S01=0和S02=1,发送的码元1或者码元0对最终的电压影响值为0,对于状态S01和状态S02,电压初始值均为0,其中,状态指的是当前发送的码型;
4b)计算第一时刻数据:
若初始状态S01=0的下一时刻没有边沿的变化,则第一时刻的状态为S11=00,且电压值不受影响;
若初始状态S01=0的下一时刻有边沿的变化,则只能出现上升边,第一时刻的状态为S12=01,电压值为初始化电压数据叠加步骤3e)所得数据中的R01的第一个值;
若初始状态S02=1的下一时刻没有边沿的变化,则第一时刻的状态为S13=11,且电压值不受影响;
若初始状态S02=1的下一时刻有边沿的变化,则只能出现下降边,第一时刻的状态为S14=10,电压值为初始化电压数据叠加步骤3e)所得数据的F10的第一个值;
4c)计算第二时刻数据:
若第一时刻的下一时刻,驱动器发送的码元与第一时刻发送码元相同,则第二时刻没有边沿跳变,且电压值不受影响;
若第一时刻的下一时刻,驱动器发送的码元与第一时刻发送码元不同,则第二时刻会出现一个上升边或一个下降边,电压值为第一时刻电压数据叠加步骤3e)所得相应波形响应数据的第一个值,这个相应波形响应取决于第一时刻码型;第二时刻共得到八种状态:S21=000,S22=001,S23=011,S24=010,S25=111,S26=110,S27=100,S28=101;
4d)计算第三时刻数据:
若第二时刻的下一时刻,驱动器发送的码元与第二时刻发送码元相同,则该时刻没有边沿跳变,且电压值不受影响;若第二时刻的下一时刻,驱动器发送的码元与第二时刻发送码元不同,则会出现一个上升边或一个下降边;由第二时刻每种状态得到两种第三时刻状态,共得到十六种状态,因为二阶多边沿响应法只受当前位之前两位的影响,将第三时刻状态中的码型序列的后三位码型相同的合并为同一状态,其中每两组码型是相同的,共有八种状态,包括:
状态S31=000,电压值不受影响;
状态S32=001,电压值为前一时刻电压数据叠加步骤3e)所得数据中的R001的第二个值;
状态S33=011,电压值不受影响;
状态S34=010,电压值为前一时刻电压数据叠加步骤3e)所得数据中的F010的第二个值;
状态S35=111,电压值不受影响;
状态S36=110,电压值为前一时刻电压数据叠加步骤3e)所得数据中的F110的第二个值;
状态S37=100,电压值不受影响;
状态S38=101,电压值为前一时刻电压数据叠加步骤3e)所得数据中的R101的第二个值;
合并后,第三时刻状态与第二时刻状态相同,电压值每次取对应波形响应数据的下一个数据,依次循环,直到计算到最后一个数据;
4e)每组数据按上述方法求解,共得到UI组数据;
(5)将数据去除主光标,即将步骤3e)所得到的每组数据删除最后一个值,再按步骤(4)所述方法计算一次;
(6)求得最坏上升边,最坏下降边,最好上升边,最好下降边,最好码型1,最好码型0:
6a)从步骤4e)及步骤(5)所得的最终数据中分别提取出每组的最大值和最小值,共2*UI个最大值,2*UI个最小值;
6b)求得眼图所需的各部分数据:
最坏上升边:步骤4e)中得到的码型1的最小值;
最好上升边:步骤2a3)所得R01的主光标叠加步骤(5)得到的码型0得最大值及R01对应的稳定值;
最坏下降边:步骤4e)中得到的码型0的最大值;
最好下降边:步骤2a3)所得F10的主光标叠加步骤(5)得到的码型1得最小值及F10对应的稳定值;
最好码型1:步骤4e)中得到的码型1的最大值及步骤(5)得到的码型1得最大值合并,叠加R01对应的稳定值;
最好码型0:步骤4e)中得到的码型0的最小值及步骤(5)得到的码型0得最小值合并,叠加F10对应的稳定值;
(7)得到眼图:
将步骤5b)所得的最坏上升边,最坏下降边,最好上升边,最好下降边,最好码型1,最好码型0绘制在同一幅图中形成眼图,所得的眼图常用来评价系统性能。
2.根据权利要求1所述的基于二阶多边沿响应法的快速时域分析方法,其特征在于,步骤2c)所述的构建新下降边和新上升边的方法如下:
构建新下降边计算式如下:
f11(t)=y110(t)
f01(t)=y010(t)-y001(t+T)+Vhigh
其中,f11(t)、f01(t)是当前面有两位码元时,时间0处的下降边响应;
构建上升边计算式如下:
r00(t)=y001(t)
r10(t)=y101(t)-y110(t+T)+Vlow
其中,r00(t)、r10(t)是当前面有两位码元时,时间0处的上升边响应;
是对码型b-2b-1b0的响应;
T表示位时宽;
Vhigh是对数据流1响应而得到的稳态直流电平;
Vlow是对数据流0响应而得到的稳态直流电平。
3.根据权利要求1所述的基于二阶多边沿响应法的快速时域分析方法,其特征在于,所述步骤(7)所得到的眼图为信号传输的最大失真及最好情况,眼图由六部分构成,将眼图从中间分开,左边两条线为最坏上升边,最坏下降边,右边两条线为最好上升边,最好下降边,上边的一条线为最好码型1,下边的一条线为最好码型0,将求得的六条边组合起来即为信号传输的眼图,所述最坏上升边,最坏下降边,最好上升边,最好下降边构成信号传输的最大失真,所述最好码型1,最好码型0构成信号传输的最好情况,所述眼图能直观的看出信号传输的最大失真与最好情况,驱动器发送的码型响应的波动在最大失真与最好情况之间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510980049.2A CN105574279B (zh) | 2015-12-23 | 2015-12-23 | 基于二阶多边沿响应法的快速时域分析方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510980049.2A CN105574279B (zh) | 2015-12-23 | 2015-12-23 | 基于二阶多边沿响应法的快速时域分析方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105574279A CN105574279A (zh) | 2016-05-11 |
CN105574279B true CN105574279B (zh) | 2019-03-26 |
Family
ID=55884409
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510980049.2A Active CN105574279B (zh) | 2015-12-23 | 2015-12-23 | 基于二阶多边沿响应法的快速时域分析方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105574279B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107330221B (zh) * | 2017-07-21 | 2020-06-16 | 西安电子科技大学 | 基于pdn与通道协同模型的最坏眼图实现方法 |
CN113449264B (zh) * | 2020-03-27 | 2023-08-15 | 中国移动通信集团设计院有限公司 | 波形边缘的监测方法及装置 |
CN115964906B (zh) * | 2023-03-17 | 2023-06-02 | 巨霖科技(上海)有限公司 | 基于多边沿响应的pam3差分端口统计眼图仿真方法和装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101145170A (zh) * | 2007-10-10 | 2008-03-19 | 中兴通讯股份有限公司 | 一种高速互连系统中进行眼图仿真的方法 |
CN104143024A (zh) * | 2014-07-29 | 2014-11-12 | 西安电子科技大学 | 一种并行高速链路系统的快速时域仿真方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7555039B2 (en) * | 2005-12-29 | 2009-06-30 | Lsi Corporation | Simultaneous display of eye diagram and jitter profile during device characterization |
-
2015
- 2015-12-23 CN CN201510980049.2A patent/CN105574279B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101145170A (zh) * | 2007-10-10 | 2008-03-19 | 中兴通讯股份有限公司 | 一种高速互连系统中进行眼图仿真的方法 |
CN104143024A (zh) * | 2014-07-29 | 2014-11-12 | 西安电子科技大学 | 一种并行高速链路系统的快速时域仿真方法 |
Non-Patent Citations (1)
Title |
---|
《DDR3最坏眼图技术研究》;林永嘉;《中国优秀硕士学位论文全文数据库 信息科技辑》;20141115(第11期);全文 |
Also Published As
Publication number | Publication date |
---|---|
CN105574279A (zh) | 2016-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105574279B (zh) | 基于二阶多边沿响应法的快速时域分析方法 | |
US20180083721A1 (en) | Wireless analysis apparatus and wireless analysis method | |
US9619758B2 (en) | Method and apparatus for labeling training samples | |
CN104424165B (zh) | 一种文本文档乱码检测方法及系统 | |
CN111428474A (zh) | 基于语言模型的纠错方法、装置、设备及存储介质 | |
CN107943874A (zh) | 知识图谱处理方法、装置、计算机设备及存储介质 | |
CN104143024B (zh) | 一种并行高速链路系统的快速时域仿真方法 | |
CN105912514A (zh) | 基于指纹特征的文本复制检测系统及方法 | |
CN105187408A (zh) | 网络攻击检测方法和设备 | |
CN109284503A (zh) | 翻译语句结束判断方法与系统 | |
CN106202824B (zh) | 一种pcie链路中走线阻抗的确定方法 | |
CN104517100A (zh) | 手势预判方法和系统 | |
CN106294333A (zh) | 一种微博突发话题检测方法及装置 | |
WO2024140593A1 (zh) | 信息处理方法、信号定位方法、装置、设备和介质 | |
WO2023141011A3 (en) | Blockchain search engine | |
CN104090865A (zh) | 文本相似度计算方法及装置 | |
CN107330221A (zh) | 基于pdn与通道协同模型的最坏眼图实现方法 | |
CN113420527A (zh) | 一种计算绕差分线等长的方法、装置、系统及存储介质 | |
CN103744609B (zh) | 一种数据提取方法及装置 | |
CN112818693A (zh) | 一种电子元器件型号词的自动提取方法及系统 | |
CN106484920A (zh) | 一种评审文档指标的抽取方法 | |
Liu et al. | A lightweight anomaly mining algorithm in the Internet of Things | |
Xu et al. | A method for online signature verification based on neural network | |
WO2020098099A1 (zh) | 基于语义解析的文本准确率计算方法、装置、计算机设备 | |
CN106201822B (zh) | 一种基于稳态过程的多重分形Web日志的逼真生成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |