时序计算和Cadence 仿真结果的运用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

时序计算和Cadence仿真结果的运用

中兴通讯康讯研究所EDA设计部余昌盛刘忠亮

摘要:本文通过对源同步时序公式的推导,结合对SPECCTRAQuest时序仿真方法的分析,推导出了使用SPECCTRAQuest进行时序仿真时的计算公式,并对公式的使用进行了说明。

关键词:时序仿真源同步时序电路时序公式

一.前言

通常我们在时序仿真中,首先通过时序计算公式得到数据信号与时钟信号的理论关系,在Cadence仿真中,我们也获得了一系列的仿真结果,怎样把仿真结果正确的运用到公式中,仿真结果的具体含义是什么,是我们正确使用Cadence仿真工具的关键。下面对时序计算公式和仿真结果进行详细分析。

二.时序关系的计算

电路设计中的时序计算,就是根据信号驱动器件的输出信号与时钟的关系(Tco——时钟到数据输出有效时间)和信号与时钟在PCB上的传输时间(Tflytime)同时考虑信号驱动的负载效应、时钟的抖动(Tjitter)、共同时钟的相位偏移(Tskew)等,从而在接收端满足接收器件的建立时间(Tsetup)和保持时间(Thold)要求。通过这些参数,我们可以推导出满足建立时间和保持时间的计算公式。

时序电路根据时钟的同步方式的不同,通常分为源同步时序电路(Source-synchronous timing)和共同时钟同步电路(common-clock timing)。这两者在时序分析方法上是类似的,下面以源同步电路来说明。

源同步时序电路也就是同步时钟由发送数据或接收数据的芯片提供。图1中,时钟信号是由CPU驱动到SDRAM方向的单向时钟,数据线Data是双向的。

图1

图2是信号由CPU 向SDRAM 驱动时的时序图,也就是数据与时钟的传输方向相同时

的情况。

Tsetup ’

Thold ’ CPU CLK OUT

SDRAM CLK IN

CPU Signals OUT SDRAM Signals IN

Tco_min

Tco_max T ft_clk

T ft_data

T cycle

SDRAM ’S inputs Setup time SDRAM ’S inputs Hold time

图2

图中参数解释如下:

■ Tft_clk :时钟信号在PCB 板上的传输时间;

■ Tft_data :数据信号在PCB 板上的传输时间;

■ Tcycle :时钟周期

■ Tsetup’:数据到达接收缓冲器端口时实际的建立时间;

■ Thold’:数据到达接收缓冲器端口时实际的保持时间;

■ Tco_max/Tco_min :时钟到数据的输出有效时间。

由图2的时序图,我们可以推导出,为了满足接收芯片的Tsetup 和Thold 时序要求,即

Tsetup’>Tsetup 和Thold’>Thold ,所以Tft_clk 和Tft_data 应满足如下等式:

Tft_data_min > Thold – Tco_min + Tft_clk (公式1) Tft_data_max < Tcycle - Tsetup – Tco_max + Tft_clk (公式2)

当信号与时钟传输方向相反时,也就是图1中数据由SDRAM 向CPU 芯片驱动时,可

以推导出类似的公式:

Tft_data_min > Thold – Tco_min - Tft_clk (公式3) Tft_data_max < Tcycle - Tsetup – Tco_max - Tft_clk (公式4)

如果我们把时钟的传输延时Tft_clk 看成是一个带符号的数,当时钟的驱动方向与数据

驱动方向相同时,定义Tft_clk 为正数,当时钟驱动方向与数据驱动方向相反时,定义Tft_clk

为负数,则公式3和公式4可以统一到公式1和公式2中。

三.Cadence 的时序仿真

在上面推导出了时序的计算公式,

在公式中用到了器件手册中的Tco 参数,器件手册中Tco 参数的获得,实际上是在某一种测试条件下的测量值,而在实际使用上,驱动器的实际

负载并不是手册上给出的负载条件,因此,我们有必要使用一种工具仿真在实际负载条件下

的信号延时。Cadence 提供了这种工具,它通过仿真提供了实际负载条件下和测试负载条件

下的延时相对值。

我们先来回顾一下CADENCE 的仿真报告形式。仿真报告中涉及到三个参数:FTSmode 、

SwitchDelay 和SettleDelay 。其中Cadence 时序仿真的结果是通过SwitchDelay 和SettleDelay 两个参数反映出来的。

在解释FTSmode 、SwitchDelay 和SwitchDelay 前先解释一下BufferDelay 曲线的含义。BufferDelay 曲线是Cadence 仿真器断开实际负载,带上驱动芯片器件手册提供的测试负载条件下获得的一条曲线。测试负载是在IBIS 仿真模型库中设置的。Cadence 仿真报告中的延时测量是以BufferDelay 为基准曲线,以V Measure 为起始测量点获得的相对延时值。

FTSmode :定义了当前仿真驱动器的特性,分为Fast 、Type 和Slow 。该三种特性是在IBIS 模型中定义的,Fast 是驱动器沿最快的模式,Slow 是驱动器沿最慢的模式,从而定义了驱动器在正常工作条件下的两种极限特性。

SwitchDelay :定义为SwitchDelayFall 和SwitchDelayRise 两者的最小值。图3给出了SwitchDelayFall 和SwitchDelayRise 的图形解释。

SwitchDelayFall :是从BufferDelay 下降沿的Vmeasure 点开始到接收波形下降曲线第一次穿过高电平阈值时的延时值。

SwitchDelayRise :是从BufferDelay 上升沿的Vmeasure 点开始到接收波形上升曲线第一次穿过低电平阈值时的延时值。

SettleDelay :是SettleDelayFall 和SettleDelayRise 两者的最大值。图3给出了SettleDelayFall 和SettleDelayRise 的图形解释。

SettleDelayFall :是从BufferDelay 下降沿的Vmeasure 点开始到接收波形下降曲线最后一次穿过低电平阈值时的延时值。

SettleDelayRise :是从BufferDelay 上升沿的Vmeasure 点开始到接收波形上升曲线最后一次穿过高电平阈值时的延时值。

从SwitchDelay 和SettleDelay 的定义我们可以看出,SettleDelay 是一个与输入端的建立时间(Tsetup )有关的量,SwitchDelay 是一个与输入端保持时间有关的量(Thold )。

V ih min

V il max

Vmeasure

BufferDelay Driver Waveform

Receiver Waveform

SwitchDelayRise SwitchDelayFall

SettleDelayFall

SettleDelayRise 图3

公式1和公式2中的Tft_data 与Tft_clk 在Cadence 仿真工具中是通过仿真获得的数据,它与Cadence 仿真中fast 和slow 状态下的SwitchDelay 与SettleDelay 参数有关。

为了了解Cadence 仿真中的SwitchDelay 和SettleDelay 与时序公式中参数的关系,我们

相关文档
最新文档