目录
一、为什么要进行时序分析和时序约束
PCB通过导线将具有相关电气特性的信号相连接,这些电气信号在PCB上进行走线传输时会产生一定的传播延时。
而FPGA内部也有着非常丰富的可配置的布线资源,能够让位于不同位置的逻辑资源块、时钟处理单元、BLOCK RAM、DSP和接口模块等资源能够相互通信,完成所需功能。
FPGA的布线同PCB的走线一样,也会由于走线的长短不同而产生或大或小的传输延时(走线延时)。FPGA信号经过逻辑门电路进行各种运算也会产生延时(逻辑延时)。那么多个信号从FPGA的一端输入,经过一定的逻辑门电路处理后从FPGA的另一端输出,如何保证各个信号的延时一致呢?这个时候就需要进行时序分析,从而进行时序约束,从而保证FPGA的信号能够相互协同正常工作。
假设有一个信号输入FPGA中,在FPGA内部经过一些逻辑处理,最后进行输出,那么这些走线和处理都需要时间(走线延时和逻辑延时)。例如下图,输入信号到达逻辑处理A需要5ns,进行处理需要1ns,然后到逻辑处理C需要7ns,进行处理需要2ns,最后达到输出需要3ns,这条路径是所有路径中耗时最短的。但是FPGA不知道这条路径耗时最短,如果不对其进行时序约束,很可能会随便选一条路径进行布线,此时如果对系统的延时有要求,就可能出现信号错乱的情况。

二、什么是时序分析和时序约束
FPGA的时序分析与约束需要设计者根据实际的系统功能,通过时序约束的方式提出时序要求;FPGA编译工具根据设计者的时序要求,进行布局布线;编译完成后,FPGA编译工具还需要针对布局布线的结果,套用特定的时序模型,给出最终的时序分析和报告;设计者通过查看时序报告,确认布局布线后的时序结果是否满足设计要求。
因此时序分析就是遍历电路存在的所有时序路径,计算信号在这些路径上的传播延时,使用特定的时序模型,针对特定的电路进行分析系统时序是否满足要求。
时序约束就是对设计的电路提出时序上的要求,一般来说其可以细分为内部时钟约束 、IO口时序约束、偏移约束、静态路径约束和例外路径约束等。
三、时序约束的基本路径
从前面知道了时序分析是遍历电路存在的所有时序路径,那么就需要知道都有哪些路径
FPGA 时序约束所覆盖的时序路径主要有4种:
1.FPGA内部寄存器之间的时序路径,即reg2reg;
2.输人引脚到FPGA内部寄存器的时序路径,即pin2reg;
3.FPGA内部寄存器到输出引脚的时序路径,即reg2pin;
4.输入引脚到输出引脚之间的时序路径(不通过寄存器),即pin2pin。

其中reg2reg、pin2reg、reg2pin都和寄存器有关,需要进行时序约束,因为要确保数据信号在时钟锁存沿的建立时间和保持时间内稳定;但pin2pin本质就是纯组合逻辑电路,一般

本文详细解释了为何进行时序分析和约束,介绍了FPGA中的时序概念,包括走线延时、逻辑延时、建立时间和保持时间等,以及四种基本的时序路径。通过实例和公式阐述了数据需求时间和时间裕量的重要性,旨在帮助设计者有效管理FPGA的信号时序以确保系统协同工作。

2595

被折叠的 条评论
为什么被折叠?



