在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 9034|回复: 13

[求助] Quartus II如何约束小频率(大周期)时钟信号

[复制链接]
发表于 2011-10-11 09:22:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
大家好!我在使用quartus II(7.2)的TimeQuest Timing Analyzer进行时序约束的时候,提示如下警告:
Warning: The period, rise edge, or fall edge of clock: bck_div500 was found to be outside of the range of acceptable time values.  The minimum acceptable time value is -2147483.647 and the maximum acceptable time value is 2147483.647. This clock will be ignored.
bck_div500的周期为2500000ns,是超过了maximum acceptable time。请问对于该类时钟该如何添加时序约束呢?
发表于 2011-10-11 15:15:30 | 显示全部楼层
时钟约束是让布线尽量满足你的要求,如果怎么走线都可以满足就不必约束了。
 楼主| 发表于 2011-10-11 15:41:18 | 显示全部楼层
回复 2# A120
那如果我想要约束这种小频率的时钟,应该怎么写呢?
发表于 2011-10-11 22:17:30 | 显示全部楼层
回复 3# speedUp


能问一下楼主为什么要对小时钟进行约束吗?我想知道你是要达到什么目的...
添加约束是为了让布局布线满足时序要求,不知道你是有什么特殊要求
 楼主| 发表于 2011-10-12 09:25:16 | 显示全部楼层
回复 4# 挂在天边的鱼
您好!我的系统中有用到小频率的时钟信号,所以我对它们进行了时钟约束,接着软件就提示了警告。我知道即使没有对这些小信号进行约束,系统也能正常工作。我的问题是,抛开是否需要对小频率时钟信号进行约束的必要性,如果要添加约束的话,可以实现吗?我现在还没有找到方法。
发表于 2011-10-12 16:25:30 | 显示全部楼层
回复 5# speedUp


    可以,你可以把它当做一个比较高频的时钟进行约束,也就是约束文件里时钟频率提高...
 楼主| 发表于 2011-10-13 07:45:24 | 显示全部楼层
回复 6# 挂在天边的鱼
您好!您是指把所有时钟频率都提高,还是指只提高小频率时钟信号。如果都提高时钟频率,可能会有很多时序违例,而且如果要约束的小频率时钟非常小的话,恐怕不行。如果只提高小频率时钟信号,是否是直接将其频率提高?
发表于 2011-10-13 10:17:02 | 显示全部楼层
sdc贴上来看看
 楼主| 发表于 2011-10-13 14:15:08 | 显示全部楼层
回复 8# skytang007
create_clock -name mck -period 20 -waveform {0 10} [get_ports mck]
create_generated_clock -name bck  -divide_by 250 -duty_cycle 50 -source [get_ports mck] [get_keepers bckgen:u0|bck]
create_generated_clock -name bck_div5     -edges {1 7 11} -source [get_ports bck] [get_keepers touch:u2|ckgen:u0|ckgen_d5:u0|dff3]
create_generated_clock -name bck_div25    -edges {1 7 11} -source [get_keepers touch:u2|ckgen:u0|ckgen_d5:u0|dff3] [get_keepers touch:u2|ckgen:u0|ckgen_d5:u1|dff3]
create_generated_clock -name bck_div125   -edges {1 7 11} -source [get_keepers touch:u2|ckgen:u0|ckgen_d5:u1|dff3] [get_keepers touch:u2|ckgen:u0|ckgen_d5:u2|dff3]
create_generated_clock -name bck_div250   -edges {1 3 5}  -source [get_keepers touch:u2|ckgen:u0|ckgen_d5:u2|dff3] [get_keepers touch:u2|ckgen:u0|ck3]
create_generated_clock -name bck_div500   -edges {1 3 5}  -source [get_keepers touch:u2|ckgen:u0|ck3] [get_keepers touch:u2|ckgen:u0|ck4]
发表于 2011-10-13 23:51:04 | 显示全部楼层
FPGA约束一般是用来约束最高频率,你那个很小的时钟信号在综合时可以用快点的频率来约束,比如你用1M来约束,只要电路工作频率小于约束的频率1M,电路就能正常工作。

另外你那种频率这么小的信号不一定非要做成时钟,如果你的设计允许,做成时钟使能信号就可以了,还可以节省全局时钟资源
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-22 11:13 , Processed in 0.024180 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表