delay 芯片时序output_时序约束命令

时钟的约束

关于时钟的约束命令:

create_clock-name clk-period 10.000[get_ports{clk}]

derive_pll_clocks//当约束了主时钟之后加上这句话就不用逐一约束pll时钟啦

derive_clock_uncertainty

create_generated_clock//当 FPGA 的引脚要向外部其他芯片提供时钟的时候

当出现警告: The following clock transfer have no clock uncertainty assignment. For more accurate results, apply clock uncertainty or use the derive_clock_uncertainty command.

只要加上   derive_clock_uncertainty 这条命令就可以解决。

output引脚约束命令

set_output_delay-clock{clk}-min 2.5 [get_ports{reg1}] //最大

set_output_delay-clock{clk}-max 2.5 [get_ports{reg1}] //最小

set_output_delay-clock{clk}- 2.5 [get_ports{reg1}] //当最大和最小的值相等时

因为 Timequest 只能约束 FPGA 的内部走线延时,但是无法知道 PCB 板上的走线延时或者外部寄存器芯片的延时, 所以这些不知道的延时都要算到 FPGA 的保持裕量和建立裕量。PCB 板的路径延时越大,建立裕量越小,保持裕量越大。反之路径延时越小,建立裕量越大,保持裕量越小。

建立裕量考虑的是最大值

Delay Value =  PCB最长走线的时间 + 外部芯片的建立时间 Tsu - clock skew

保持裕量考虑的是最小值

Delay Value =  PCB最短走线的时间 - 外部芯片的保持时间 Th - clock skew

input引脚约束命令

set_input_delay-clock{clk}-min 2.5 [get_ports{reg1}] //最大

set_input_delay-clock{clk}-max 2.5 [get_ports{reg1}] //最小

set_intput_delay-clock{clk}- 2.5 [get_ports{reg1}] //当最大和最小的值相等时

建立裕量考虑的是最大值

Delay Value =  PCB最长走线的时间 + 外部芯片的建立时间 Tco - clock skew

保持裕量考虑的是最小值

Delay Value =  PCB最短走线的时间 + 外部芯片的保持时间 Tco - clock skew

其余约束

set_clock_latency //将外部时钟信号的抖动信息告诉 TimeQuest

set_min_delay  //将有关路径延时告诉 TimeQuest

set_max_delay

原文:http://www.cnblogs.com/aslmer/p/6051814.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值