FPGA
时序约束的
6
种方法
对自己的设计的实现方式越了解,对自己的设计的时序要求越了解,
对目标器件的资源分布和结构越了解,对
EDA
工具执行约束的效果越了解,
那么对设计的时序约束目标就会越清晰,相应地,设计的时序收敛过程就会更
可控。
下文总结了几种进行时序约束的方法。按照从易到难的顺序排列如下:
0.
核心频率约束
这是最基本的,所以标号为
0.
1.
核心频率约束
+
时序例外约束
时序例外约束包括
FalsePath
、
MulticyclePath
、
MaxDelay
、
MinDelay.
但
这还不是最完整的时序约束。如果仅有这些约束的话,说明设计者的思路还局
限在
FPGA
芯片内部。
2.
核心频率约束
+
时序例外约束
+I/O
约束
I/O
约束包括引脚分配位置、空闲引脚驱动方式、外部走线延时
(InputDelay
、
OutputDelay)
、上下拉电阻、驱动电流强度等。加入
I/O
约束后的
时序约束,才是完整的时序约束。
FPGA
作为
PCB
上的一个器件,是整个
PCB
系统时序收敛的一部分。
FPGA
作为
PCB
设计的一部分,是需要
PCB
设计工
程师像对待所有
COTS
器件一样,阅读并分析其
I/O Timing Diagram
的。
FPGA
不同于
COTS
器件之处在于,其
I/O
Timing
是可以在设计后期在一定范围内调
整的
;
虽然如此,最好还是在
PCB
设计前期给与充分的考虑并归入设计文档。
正因为
FPGA
的
I/O
Timing
会在设计期间发生变化,所以准确地对其进
行约束是保证设计稳定可控的重要因素。许多在
FPGA
重新编译后,
FPGA
对
外部器件的操作出现不稳定的问题都有可能是由此引起的。