[X]关闭

在使用MiS603开发板的千兆位RGMII测试程序时,对时序的疑惑

文档创建者:Alexander0108
浏览次数:7007
最后更新:2015-12-25
本人才开始学FPGA,由于项目需要,买了一套MiS603开发板进行快速开发,由于使用的FPGA芯片不一样,使用的是VIVADO软件,将MiS603开发板的千兆位RGMII测试程序移植到项目中综合提供了,但是提示时序有问题,在此,不明白自带的MiS603开发板的千兆位RGMII测试程序里面的时序是如何设置的,如下,只对rgmii_rxclk_i和CLK_50MHZ_i两个时钟进行时序定义了吗?这个看不出来有什么时序上的参数定义,还有其他时钟怎么没有进行时序定义,没有看懂,求指教,谢谢各位了!
NET "rgmii_rxclk_i" TNM_NET = "rgmii_rxclk_i";
TIMESPEC "TS_rgmii_rxclk_i" = PERIOD "rgmii_rxclk_i" 125MHz HIGH 50%;

NET "CLK_50MHZ_i" TNM_NET = "CLK_50MHZ_i";
TIMESPEC "TS_CLK_50MHZ_i" = PERIOD "CLK_50MHZ_i" 50MHz HIGH 50%;

PIN "DCM_CLK_UDP/clkout4_buf.O" CLOCK_DEDICATED_ROUTE = FALSE;

发表评论已发布 2

uisrc

发表于 2015-12-24 21:00:24 | 显示全部楼层

软件使用上应该是稍微有些差异,但是要实现的目的是一样的。
NET "rgmii_rxclk_i" TNM_NET = "rgmii_rxclk_i";
TIMESPEC "TS_rgmii_rxclk_i" = PERIOD "rgmii_rxclk_i" 125MHz HIGH 50%;

NET "CLK_50MHZ_i" TNM_NET = "CLK_50MHZ_i";
TIMESPEC "TS_CLK_50MHZ_i" = PERIOD "CLK_50MHZ_i" 50MHz HIGH 50%;
这部分就是时序约束了,你在使用的时候vivado和 必须要实现相同表达此功能的描述方式

PIN "DCM_CLK_UDP/clkout4_buf.O" CLOCK_DEDICATED_ROUTE = FALSE 这句是为了屏蔽ISE软件编译时候的报错,因为ISE会认为这违反了时序约束,但是实际上,我们在输出的时候只要心中有数完全可以忽略ISE的警告。实事上也是如此,我们这里忽略了ISE的报错,因为我们知道这是正确的方式,不会有问题.

那么哪位vivado的高手可以做一下时序约束设计呢?
越努力越幸运!加油!

RZJM

发表于 2015-12-25 14:12:57 | 显示全部楼层

vivado 下
# timing constraints
create_clock -period 10.000 -name clk_100 [get_ports clk_100]

set_false_path -from [get_clocks zed_audio_clk_48M] -to [get_clocks clk_100]
set_false_path -from [get_clocks clk_100] -to [get_clocks zed_audio_clk_48M]


参考下吧 不知道是不是和你的问题相关
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则