• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 测试测量 > 技术文章 > 硬件电路时序计算方法与应用实例

硬件电路时序计算方法与应用实例

录入:edatop.com    点击:

  摘要:本文针对高速电路设计中经常面临的时序问题,提出了时序分析和计算方法,并结合SPI4.2接口给出了具体分析实例。

  1 满足接收端芯片的建立/保持时间的必要性

  在高速数字电路设计中,由于趋肤效应、临近干扰、电流高速变化等因素,设计者不能单纯地从数字电路的角度来审查自己的产品,而要把信号看作不稳定的模拟信号。采用频谱分析仪对信号分析,可以发现,信号的高频谱线主要来自于信号的变化沿而不是信号频率。例如一个1MHz的信号,虽然时钟周期为1微秒,但是如果其变化沿上升或下降时间为纳秒级,则在频谱仪上可以观察到频率高达数百兆赫兹的谱线。因此,电路设计者应该更加关注信号的边沿,因为边沿往往也就是信号频谱最高、最容易受到干扰的地方。

  在同步设计中,数据的读取需要基于时钟采样,根据以上分析,为了得到稳定的数据,时钟的采样点应该远离数据的变化沿。

  图1是利用时钟CLK的上升沿采样数据DATA的示例。DATA发生变化后,需要等待至少Setup时间(建立时间)才能被采样,而采样之后,至少Hold时间(保持时间)之内DATA不能发生变化。因此可以看出,器件的建立时间和保持时间的要求,正是为了保证时钟的采样点远离数据的变化沿。如果在芯片的输入端不能满足这些要求,那么芯片内部的逻辑将处于非稳态,功能出现异常。

  2 时序分析中的关键参数

  为了进行时序分析,需要从datasheet(芯片手册)中提取以下关键参数:

  ● Freq:时钟频率,该参数取决于对芯片工作速率的要求。

  ● Tcycle:时钟周期,根据时钟频率Freq的倒数求得。Tcycle=1/Freq。

  ● Tco:时钟到数据输出的延时。上文提到,输入数据需要采用时钟采样,而输出数据同样也需要参考时钟,不过一般而言,相比时钟,输出的数据需要在芯片内延迟一段时间,这个时间就称为Tco。该参数取决于芯片制造工艺。

  ● Tsetup(min):最小输入建立时间要求。

  ● Thold(min):最小输入保持时间要求。

  除以上五个参数外,时序分析中还需要如下经验参数:

  ● Vsig:信号传输速度。信号在电路上传输,传输速度约为6英寸/纳秒。

  时序计算的目标是得到以下两个参数之间的关系:

  ● Tflight-data:数据信号在电路板上的走线延时。

  ● Tflight-clk:时钟信号在电路板上的走线延时。

  以上参数是进行时序分析的关键参数,对于普通的时序分析已经足够。

  3 源同步系统的时序计算

  源同步系统指数据和时钟是由同一个器件驱动发出的情况,下图是常见的源同步系统拓扑结构:

  该系统的特点是,时钟和数据均由发送端器件发出,在接收端,利用接收到的时钟信号CLK采样输入数据信号DATA。

  源同步系统的时序计算公式为[1]

  TCO(max) + (Tflight-data - Tflight-clk)MAX + Tsetup(min) < Tcycle (式1)

  TCO(min) + (Tflight-data - T flight-clk)MIN > Thold(min) (式2)

  时序计算的最终目标是获得Tflight-data - T flight-clk的允许区间,再基于该区间,通过Vsig参数,推算出时钟信号和数据信号的走线长度关系。

  4 SPI4.2接口时序分析

  SPI4.2[2](System Packet Interface Level4, Phase 2)接口是国际组织OIF制定的针对OC192(10Gbps)速率的接口。目前广泛应用在高速芯片上,作为物理层芯片和链路层芯片之间的接口。SPI4.2的接口定义如下:

  SPI4.2接口信号按照收、发方向分为两组,如图3中,以T开头的发送信号组和以R开头的接收信号组。每组又分为两类,以发送信号组为例,有数据类和状态类,其中数据类包含TDCLK、TDAT[15:0],TCTL,状态类包含TSCLK,TSTAT[1:0]。

[p]

  其中,状态类信号是单端LVTTL信号,接收端利用TSCLK的上升沿对TSTAT[1:0]采样,方向为从物理层芯片发往链路层芯片;数据类信号是差分LVDS信号,接收端利用TDCLK的上升沿与下降沿对TDAT[15:0]和TCTL采样,即一个时钟周期进行两次采样,方向为从链路层芯片发往物理层芯片。

  由于接收信号组与发送信号组的时序分析类似,因此本文仅对发送信号组进行时序分析。

  在本设计中,采用Vitesee公司的VSC9128作为链路层芯片,VSC7323作为物理层芯片,以下参数分别从这两个芯片的Datasheet中提取出来。

  ● 状态类信号的时序分析

  对状态类信号,信号的流向是从物理层芯片发送到链路层芯片。

  第一步,确定信号工作频率,对状态类信号,本设计设定其工作频率和时钟周期为:

  Freq=78.125MHz;

  Tcycle = 1/ Freq = 12.8ns;

  第二步,从发送端,即物理层芯片手册提取以下参数[3]

  -1ns < Tco < 2.5ns;

  第三步,从接收端,即链路层芯片手册提取建立时间和保持时间的要求[4]

  Tsetup(min) = 2ns;

  Thold(min) = 0.5ns;

  将以上数据代入式1和式2:

  2.5ns + (Tflight-data - T flight-clk)MAX + 2ns < 12.8ns

  -1ns + (Tflight-data - T flight-clk)MIN > 0.5ns 整理得到:

  1.5ns < (Tflight-data - T flight-clk) < 8.3ns

  基于以上结论,同时考虑到Vsig = 6inch/ns,可以得到如下结论,当数据信号和时钟信号走线长度关系满足以下关系时,状态类信号的时序要求将得到满足:TSTAT信号走线长度比TSCLK长9英寸,但最多不能超过49.8英寸。

  ● 数据类信号的时序分析

  对数据类信号,信号的流向是从链路层芯片发送到物理层芯片。

  第一步,确定信号工作频率,对数据类信号,本设计设定其工作频率为:

  Freq=414.72MHz;

  与状态类信号不同的是,数据类信号是双边沿采样,即,一个时钟周期对应两次采样,因此采样周期为时钟周期的一半。采样周期计算方法为:

  Tsample = ½*Tcycle = 1.2ns;

  第二步,从发送端,即链路层芯片手册提取以下参数[4]

  -0.28ns < Tco < 0.28ns;

  第三步,从接收端,即物理层芯片资料可以提取如下需求[3]

  Tsetup(min) = 0.17ns;

  Thold(min) = 0.21ns;

  将以上数据代入式1和式2,需特别注意的是,对数据类信号,由于是双边沿采样,应采用Tsample代替式1中的Tcycle:

  0.28ns + (Tflight-data - T flight-clk)MAX + 0.17ns < 1.2ns

  -0.28ns + (Tflight-data - T flight-clk)MIN > 0.21ns

  整理得到:

  0.49ns < (Tflight-data - T flight-clk) < 0.75ns

  基于以上结论,同时考虑到Vsig = 6inch/ns,可以得到如下结论,当数据信号和时钟信号走线长度关系满足以下关系时,数据类信号的时序要求将得到满足:TDAT、TCTL信号走线长度比TDCLK长2.94英寸,但最多不能超过4.5英寸。

  5 结论

  高速电路中的时序设计,虽然看似复杂,然而只要明晰其分析方法,问题可以迎刃而解。

  参考文献:
  [1] 王剑宇. 高速电路设计实践[M]. 电子工业出版社,2010:131
  [2] Optical Internetworking Forum. Implementation Agreement: OIF-SPI4-02.0[J]. OIF,2002:1-5
  [3] Vitesse. VSC7323 Datasheet[J]. Vitesse,2006: 306~312
  [4] Vitesse. VSC9125 and VSC9128 Datasheet[J]. Vitesse,2006:769-772

点击浏览:矢量网络分析仪、频谱仪、示波器,使用操作培训教程

上一篇:实现基于USB3.0技术的高清摄像头系统设计
下一篇:利用FPGA和分解器数字转换器简化角度测量

微波射频测量操作培训课程详情>>
射频和天线工程师培训课程详情>>

  网站地图