高速信号处理中芯片间信号传输的静态时间分析

2021-06-18 17:51 来源:电子说

超宽带非均匀采样系统中遇到的一些问题,虽然本文描述的方法并没有实际用于解决遇到的问题,但也给了很大的启发和借鉴,所以今天专门整理出来作为备忘录。

高速信号处理中的时间约束不仅包括片内时序约束,还包括片外静态时序分析。本文作为高速信号处理中信号输入输出的理论参考,由于某些具体参数由于高速信号处理无法实际计算,只能在理论参考的方向上不断尝试,所以被称为理论参考。

本文不会过多描述建立时间和保持时间,而是参考【FPGA】常见的几种时序问题的解决方案。可以说,数字高速信号处理中最基本的概念是建立时间和保持时间,我们需要做的是解决亚稳态和传输稳定性问题。

下面讨论IO端口时序约束分析的原理。首先,分析中要考虑的时序范围是信号的两端(FPGA等器件),信号传输路径,这三部分的信号传输路径可以包括逻辑器件,也可以包括简单的外部信号线。首先,根据触发器的定义定义FPGA的建立时间和保持时间:

(1) Tdin是FPGA的IO端口到FPGA内部寄存器输入端的延时;

(2) Tclk是FPGA的IO端口到FPGA内部寄存器时钟端的延时;

(3) Tus/Th是FPGA内部寄存器的建立时间和保持时间;

(4) Tco是FPGA内部寄存器的传输时间;

(5) Tout是FPGA寄存器输出到IO端口输出的延迟;

FPGA的建立时间和保持时间可以定义为:

(1) FPGA建立时间:ftsu=tdintsutclk;

(2) FPGA保持时间:fth=tht clk-tdin;

(3) FPGA数据传输时间:ftco=TCL k TCO tout

-输入的最大延迟和最小延迟。

有了上述重新定义的参数,就可以按照内部分析模式来分析FPGA与器件之间的时序分析。FPGA的IO端口上的输入最大和最小延迟约束是为了使FPGA设计工具尽可能优化输入端口到一级寄存器的路径延迟,以保证系统时钟能够可靠地采集外部芯片到FPGA的信号。

输入延迟是从外部设备向FPGA输入端口发送数据的延迟时间。它包括时钟源延迟到FPGA和外部设备延迟之间的差异,通过外部设备传输数据的Tco,以及PCB上的布线延迟。如图1.4所示,是外部设备和FPGA接口的时序。

750e15f6-cf77-11eb-9e57-12bb97331649.png

1、最大输入延迟

最大输入延迟max是当数据传输时钟沿通过最大外部器件时钟偏斜(Tclk1)、最大器件数据输出延迟(Tco)加上最大PCB布线延迟(Tpcb)和最小FPGA时钟偏移(FTsu)时,能够保证时序满足的延迟。这样可以保证FPGA建立时间,准确采集当前数据值,即建立松弛度必须为正,计算公式如下:

设置松弛=(Tclk Tclk2(最小值))(Tclk 1(最大值)Tco(最大值)Tpcb(最大值)FTsu)0

推导出以下公式:

Tclk1(最大)Tco(最大)Tpcb(最大)Tclk 2(最小) Tclk - FTsu

PS:上式中的max和min是保证传输质量的必要条件。如果不加入max和min,系统的某些条件可能不满足上述公式,导致信号传输出现误差。Tclk是同步时钟的周期。

可以得出结论,最大输入延迟的表达式是上述不等式的左半部分,其最大值是上述不等式的右半部分,即:

最大输入延迟最大值)=Tclk-FTsu

归根结底,输入信号各部分的时间延迟必须满足公式TCL k1(max)TCO(max)tpcb(max)TCL k2(min)tclk-ftsu。公式中,Tco(max)可以通过延迟片外器件手动调整,Tclk2(min)也可以通过FPGA内部的偏移量或DCM来移位。最大和最小输入延迟指的是数据的最大输入延迟,可以随时限制以确保正确的时序。

2.最小输入延迟

最小输入延迟min是指从数据传输时钟沿开始的最小外部器件时钟偏斜(Tclk1)、最小器件数据输出延迟(Tco)和最小PCB走线延迟(Tpcb),此时总时间延迟值必须大于最大时钟延迟和FPGA建立时间之和,以免破坏f。

PGA上一次数据的保持时间,即为hold slack必须为正,计算公式如下式所示:

Hold slack = (Tclk1(min) + Tco(min) + Tpcb(min))–(FTh + Tclk2(max))≥ 0

推出如下公式:

Tclk1(min) + Tco(min) + Tpcb(min) – Tclk2(max) ≥ FTh

可以得出最大输入时延表达式为上述不等式的左半部分而其最大值为上述不等式的右半部份,即:

最小输入延时(input delay min) = FTh

归根结底就是输入信号的各部分时延必须满足Tclk1(min) + Tco(min) + Tpcb(min) – Tclk2(max) ≥ FTh这个公式。但是式中Tco(max)可以通过对片外器件延时实现手动调节,Tclk2(min)也可以通过时许约束(offset)或者FPGA内部DCM实现相移等操作。外部器件输出数据通过PCB板到达FPGA端口的最大值和最小值Tpcb,PCB延时经验值为600mil/ns,1mm = 39.37mil。

-----------------------------------------------------------------------------------------------------

本文所述为高速信号处理时,片间信号传输的静态时许分析,中间的很多参数需要查看数据手册,另外对于FPGA输出的静态时许分析大家可以参考FPGA输入的静态时序分析进行对照分析,在此就不再赘述。

原文标题:【FPGA】高速信号处理中的片外信号输入输出静态时序分析

文章出处:【微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

延伸 · 阅读