关于多周期路径约束

一、什么是多周期路径约束?
不管是quartus中还是在vivado中,默认的建立时间和保持时间的检查都是单周期的,如图1所示,也就是说如果a时刻发送,b时刻捕获,这两者之间相差一个时钟周期,也就是很多文献所说的current launch和current latch,但是某些情况下,这两者之间并不一定只是一个时钟周期,比如加上一个捕获使能信号,或者跨时钟域的情况,两者时钟有相位差的情况,此时就需要设置多周期。
二、如何理解多周期路径约束?
首先要理解一个数据的发送流程,如图2所示:
这里的数据在发送以后,并不是理想状态下,瞬间达到下一个寄存器,二是包括tskew时钟偏斜,tdelay传输延迟,tco源寄存器的输出延迟,tsu和th寄存器需要的建立保持时间等时间延迟,slack就是时间余量,理想的情况自然是slack为0,但是这是不可能达到的,因此要使得slack>0,有以下式子:
setup slack = (current latch edge - current launch edge ) + tskew - (tdelay + tco + tsu) 
            = t + tskew - (tdelay + tco + tsu)  
hold  slack  = tdelay + tco - (th + previous latch edge - current launch edge)
             = tdelay + tco - th根据上式可以看出来,由于tskew、tco、tdelay、tsu、th都是固定的,也就是跟实际硬件代码书写布局布线等相关,一旦这些都确定了,就是无法改变的,所以当在工程时序检查建立时间和保持时间出现问题,这些数据是无法改变的,只能改变 latch和 launch的沿的位置,这就是多周期路径约束的本质。
那么为什么约束形式是这样的?set_multicycle_path -from [get_clocks clk1] -to [get_clocks clk2] -setup -end 3
这是由于改变了建立时间和保持时间检查的位置,实际上就改变了 latch和 launch的沿的位置,处于人机交互的便利和理解,采取了这种语言。
三、实例讲解
假设a时刻发送一个数据,那么默认情况下就是单周期路径,b就是捕获沿,也就是上文所提到的latch edge和 launch edge。红色箭头起点和重点也就是代表了current launch edge和current latch edge,此时,如果加入了一个使能信号,如果仍然在b时刻作为current latch edge,那么建立时间余量就会比较紧张(悲观),当然实际的不是在这里捕获的,只是时序分析工具默认是在这里的,那么往后移动一个时钟周期,current latch edge就在c时刻了,此时的检查时间就是比较充裕的。再看保持时间的检查,如果并不设置采取默认情况,那么应该是1线,b为previous latch edge时刻,也是next launch edge。
根据原则:
1)当前发起沿发送的数据不能被前一个捕捉沿捕捉。
2)下一发起沿发送的数据不能被当前捕捉沿捕捉。
显然,a时刻发送的数据也就是current launch edge时可能被b时刻捕获的,不满足第一个条件,于是需要往前调一个周期。如图4
同样的分析方法,此时的满足上述原则的。
四、总结
当时序检查报告中出现建立时间或者保持时间出现违规的情况,就需要考虑进行多周期路径约束。
精彩推荐至芯科技12年不忘初心、再度起航11月12日北京中心fpga工程师就业班开课、线上线下多维教学、欢迎咨询!fpga需要跑多快?影响fpga计算性能的几大因素
浅谈xillinx 和 altera的区别
扫码加微信邀请您加入fpga学习交流群
欢迎加入至芯科技fpga微信学习交流群,这里有一群优秀的fpga工程师、学生、老师、这里fpga技术交流学习氛围浓厚、相互分享、相互帮助、叫上小伙伴一起加入吧!
点个在看你最好看
原文标题:关于多周期路径约束
文章出处:【微信公众号:fpga设计论坛】欢迎添加关注!文章转载请注明出处。

华为的双系统功能你会不会使用
上市公司用机器人“先发制人” 运用智能制造保障复工复产
SIMATIC S7-1500 PLC SIMATIC计数器-加计数器
歌尔股份2020上半年毛利率逐步改善,盈利后劲够足
替换滚珠螺杆需要了解哪些参数?
关于多周期路径约束
PCBA加工厂在加工作业中如何控制品质
仪器设备——示波器应该这样用!
输入输出模块,4 路开关量信号采集
阿里达摩院首份科技趋势报告出炉:2019年十大科技趋势预测
机器人焊接常见的缺陷及应对措施
英飞凌受邀成为中德智能制造联盟副理事长单位,共同助力智能制造产业发展
iphone8plus64G多少钱?
智能家居的模式该怎样来迭代
Synopsys推出DesignWare® EV6x嵌入式视觉处理器
《纽约时报》推出360度黑白影片 让你和好莱坞巨星搭戏
TCL 100X6C巨幕私人影院诠释未来电视最终形态
如何彻底关闭win10中的Cortana小娜
NAND闪存加速度,推动Multi-Die验证新范式
万用表型号及分类大全