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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 6746|回复: 16

[求助] 输出信号对齐

[复制链接]
发表于 2013-5-9 11:43:13 | 显示全部楼层 |阅读模式

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

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

x
做一个数模混合系统,希望几个输出端对齐,比如延迟都在1ns~2ns之间,而这些输出端所带的负载电容大小都不一样。不知道在DC中应该怎样进行约束?查到的解决方法说
“如果有输出时钟的话?在那个输出时钟端口定义一个generated_clock?其它信号的output_delay都相对于这个generated_clock而定。只要有max和min?就可以把所有信号卡在一个范围之内      
如果没有输出时钟的话?用set_output_delay -reference_pin”
但是set_output_delay不是定义外部逻辑需要的时间吗?那么设了max和min对输出信号的对齐好像没什么帮助吧?
刚学着用DC,还请大家多多指教!谢谢!
发表于 2013-5-9 13:26:28 | 显示全部楼层
输出加上可配置延时单元
发表于 2013-5-9 15:58:35 | 显示全部楼层
可以试试 set_data_check
 楼主| 发表于 2013-5-10 14:43:24 | 显示全部楼层
回复 3# chrisyl


    能详细说说吗?刚开始学DC,很多都不懂...
 楼主| 发表于 2013-5-10 14:45:35 | 显示全部楼层
难道没有人这么做过吗?大家多多指导啊!
发表于 2013-5-10 15:09:34 | 显示全部楼层
回复 4# cyydx
比如说有三个输出端口D[0],D[1],D[2],在没有相关时钟约束的情况下,为了使它们对齐,可以用下面的约束。

set_data_check -from [get_ports D[0]] -to [get_ports D[1]] -setup 0.0
set_data_check -from [get_ports D[0]] -to [get_ports D[2]] -setup 0.0


上面的约束就是要求D[1]/D[2]尽量向D[0]靠齐。


更仔细的用法还是去看帮助吧。
 楼主| 发表于 2013-5-10 15:14:52 | 显示全部楼层
回复 6# chrisyl


    我看了Synthesis Commands里对set_data_check的解释,没太看明白...
    这几个输出都是寄存器的输出,由同一个时钟沿打出,也能用set_data_check吗?
发表于 2013-5-10 15:22:17 | 显示全部楼层
可以的,如果需要限定是由哪个时钟沿打出的,还可以加上选项-clock.
你把这个约束加上后,用report_timing -to [get_ports D[1]] 就可以看到效果了。
 楼主| 发表于 2013-5-10 16:19:03 | 显示全部楼层
回复 8# chrisyl


    麻烦您能再详细些说明一下set_data_check中-setup和-hold这两个option是什么意思?谢谢!
发表于 2013-5-10 16:38:27 | 显示全部楼层
以我上面的的例子来说,可以将D[0]理解为CLK PIN, 将D[1]/D[2] 理解为DATA PIN。set_data_check 中的setup/hold 就相当于库文件中对DFF定义的setup/hold值。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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

GMT+8, 2024-11-5 17:32 , Processed in 0.022364 second(s), 8 queries , Gzip On, Redis On.

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