set_input_delay中-add_delay的作用简析

在设置input_delay时,我们经常会使用下面的方式:
set_input_delay -clock clk -min 2 [get_ports data_in]set_input_delay -clock clk -max 4 [get_ports data_in]  
但有时也会在后面增加一个-add_delay的参数:
set_input_delay -clock clk -max 2.1 [get_ports data_in]set_input_delay -clock clk -max 1.9 [get_ports data_in] -clock_fall -add_delayset_input_delay -clock clk -min 0.9 [get_ports data_in]set_input_delay -clock clk -min 1.1 [get_ports data_in] -clock_fall -add_delay  
在默认情况下,一个port只需要一个min和max的dealy值,如果我们设置两次,那么第二次设置的值会覆盖第一次的值:下面的第一行就无效了。
set_input_delay -clock clk -max 2.1 [get_ports data_in]set_input_delay -clock clk -max 2.5 [get_ports data_in]  
但如果是加了-add_delay参数,就可以多个约束同时存在:
set_input_delay -clock clk -max 2.1 [get_ports data_in]set_input_delay -clock clk -max 2.5 [get_ports data_in] -add_delay  
但其实,第一行也是无效的,因此2.5比2.1要大,如果满足2.5了,那一定满足2.1。
因此,-add_delay参数一般都是用于双沿采样的场景:
set_input_delay -clock clk -max 2.1 [get_ports data_in]set_input_delay -clock clk -max 1.9 [get_ports data_in] -clock_fall -add_delay  
如果不增加-add_delay参数,那么第二条会覆盖第一条约束,那么上升沿的约束就没有了。
在ug903中,也有下面的描述:
add delay input delay command optionthe -add_delay option must be used if:• a max (or min) input delay constraint exists, and• you want to specify a second max (or min) input delay constraint on the same port.this option is commonly used to constrain an input port relative to more than one clock edge, as, for example, ddr interface


华为鸿蒙系统支持机型 哪些机型能升级鸿蒙系统
谷歌发布12月Android安全补丁修复安全漏洞
PN8368 5V1.5A高精度低功耗电源芯片
936型恒温电烙铁电子电路设计图
关于商用智能手机在5G现网中的作用分析和介绍
set_input_delay中-add_delay的作用简析
华为p50E与p50的区别是什么
特斯拉持续大降价,打击的却是传统豪车企业
一加5、小米6、荣耀v9谁更强?一加5、小米6、华为荣耀v9性能区别对比评测
你想如何涨薪?那得先问问机器人
AMD RX 5600显卡搭载最新7nm RDNA架构,性能如何
基于模糊神经网络的机器人位置控制系统设计
中国通信网络行业重要发展动向、市场趋势与变革契机
人工智能专业难学吗
魅族也被高通拿下 MTK寻求更多机遇 芯片进军共享单车
上达电子柔性集成电路封装基板项目落户六安市
“5G连接新时代”的内涵和中国移动的重点布局
AI视觉成像芯片搅动千亿级新市场,SoC时代即将过去
刚刚!中国第二大晶圆厂A股上市!是最主要的国产传感器芯片代工厂!
浅析音频视频编码标准(AVS3)的块分割方法和编码单元树形状