关于FPGA时序分析的总结

首先在整个时序分析里最重要的两个概念就是建立裕量与保持裕量.
简单的解释就是时钟上升沿来临之前数据建立稳定的时间长度以及上升沿来临之后数据保持稳定的时间长度。在整个时序约束中都是为了保证建立裕量与保持裕量大于零。建立与保持裕量的计算涉及到诸多公式,以建立裕量为例,建立裕量等于数据开始锁存时间减去数据初启动时间,也就是是等于第一个数据启动时间开始算,到数据在时钟上升沿的建立时间之前的这段时间也就是数据开始锁存的时间,这段时间为建立裕量。同理保持时间为第二个数据启动时间减去数据已经锁存完毕的时间,也就是在上升沿保持时间之后的时间。这段时间为保持裕量。

然后就是外部引脚的延时要加入公式进行计算。
外部延时又包括输入延时和输出延时。以输出延时为例,它是FPGA往外传输的数据与时钟的延时。往外的时钟又分为外部的最大延时以及最小延时,这个时候还要考虑PLL锁相环设置了时钟偏移没。具体的最大外部延时以及最小外部延时的计算,这里需要AD软件的帮助,得到走线长度以及外部芯片的参数。最后得到外部延时。然后将延时带入裕量计算公式。这里每个外部延时的计算方式不一样,以外部最大延时的建立裕量来说,其需要将整体数据启动时间往后移最大测延时时间。这样明显的建立裕量会变小。但是不能让它小于零。这就是时序分析的作用。如果小于零,那就必须改变程序或者修改约束等。这里说一句,应该先考虑是否修改程序代码,因为时序分析的目的就是发现代码是否设计合理,而不是一味的改变约束来解决警告的问题。

发布了7 篇原创文章 · 获赞 2 · 访问量 558

猜你喜欢

转载自blog.csdn.net/weixin_44167319/article/details/95510574