FPGA约束设置

0.引言

在使用FPGA进行设计时,当电路频率较低(小于50Mhz)时,可以不用进行时序约束,而当频率较高时,不进行约束无法让时序满足要求。目前主流的FPGA厂家有Xilinx和Altera,不同厂家的FPGA使用的软件不一样,约束设置也不同,目前,altera的Quartus II软件已经能够支持Synposys的TCL语法格式的约束,其约束设置的命令与语法与ASIC几乎一致;Xilinx的ISE软件使用UCF(user constraint file)文件进行约束,下文的约束设置介绍以ISE为主。

1.约束介绍

和ASIC设计类似,Xilinx的UCF进行约束也包括时钟约束、输入延时、输出延时、多周期路径以及异步电路的虚假路径。

时钟约束:

NET “ClockName" TNM_NET = "TNM_NET_Name";
TIMESPEC "TS_name" = PERIOD "TNM_NET_Name" PeriodValue HIGH HighValue%
eg:
NET "Clkin" TNM_NET = "Clkin";
TIMESPEC "TS_Clkin" = PERIOD "Clkin" 5ns HIGH 50%;

输入输出延时:

输入输出延时使用OFFSET进行偏移命令设置,有OFFSET = IN 和OFFSET = OUT两种情况

多周期路径以及虚假路径需人工对设计电路进行判断并进行约束。

posted @ 2016-02-27 21:01  柯西不是我  阅读(627)  评论(0编辑  收藏  举报