Zybo Zynq-7000 clk in ucf?

时间:2014-05-24 13:49:34

标签: vhdl clock zynq

我最近给自己买了一台Zybo Zync-7000开发板,这样我就可以做一些功课了。在家里摆弄它,但是当我第一次从我的UCF中挑出我的时钟时,我遇到了这个。

## Clock signal
#NET "clk"        LOC=L16 | IOSTANDARD=LVCMOS33; #IO_L11P_T1_SRCC_35    
#NET "clk" TNM_NET = sys_clk_pin;
#TIMESPEC TS_sys_clk_pin = PERIOD sys_clk_pin 125 MHz HIGH 50%; 

我知道我可能只需要使用第一行来获取clk信号,但其余部分是什么?或者我错了,我是否需要全部?

我们在学校里有不同的硬件,而且在那里更简单。

提前致谢。

1 个答案:

答案 0 :(得分:1)

我假设您使用的是ISE,而不是新的Vivado,因为只有ISE使用UCF约束文件。

## Clock signal

此行是关于以下行所涉及内容的评论。

#NET "clk"        LOC=L16 | IOSTANDARD=LVCMOS33; #IO_L11P_T1_SRCC_35    

该行指定FPGA上哪个物理引脚(LOC = L16)的时钟输入(来自片外的输入网络名为" clk" VHDL顶层)连接到。它还规定信号使用低压CMOS 3.3v信号。

#NET "clk" TNM_NET = sys_clk_pin;

这只是为网络分配了一个时间名称。对于特定于时序的约束,将使用时序名称而不是(VHDL内部)网络名称。

#TIMESPEC TS_sys_clk_pin = PERIOD sys_clk_pin 125 MHz HIGH 50%; 

这指定" sys_clk_pin"的时间。 (解析为VHDL网络" clk")应具有125 MHz的频率和50%的占空比。该工具需要知道这一点,以确定如何在不违反触发器设置或保持时间的情况下路由信号。名称" TS_sys_clk_pin"只是这个特殊约束的标识符。

当您接近填充零件或想要以更高的时钟速度运行时,正确约束设计非常重要。您可以在针对ISE的Xilinx约束指南中找到大量信息:http://www.xilinx.com/itp/xilinx10/books/docs/cgd/cgd.pdf

如果您没有给出设计时序限制,那么这些工具通常会发出关于缺少约束的警告,它会告诉您最终可以多快地运行它而不会导致错误。时钟的时序约束是最重要的。您通常只需要对同步输入和跨时钟边界进行其他时序约束。

请注意,事实上,所有4行都已注释掉(前面带有#)。如果要使用3个功能行,则需要删除注释名称。