| |
在一个FPGA设计中,一般都是有多个时钟域的。如何对两个时钟域之间的异步路径进行约束,才能即保证设计的正确性和可靠性,又保证不会因为过约束而导致设计难以实现呢? 在ISE中,对于从同一个时钟管理模块(DCM、MMCM)输出的多个时钟 ,只要对时钟管理模块的输入时钟进行时序约束,那么这个约束会自动的传递到每个输出时钟,并且会产生各个输出时钟之间的时序约束。然而,这些由ISE软件自动生成的跨时钟域约束并非每个都是需要的。简单举例,对于两个频率相同相位相差180°的时钟,如果设计中有用到其中一个时钟去采样另一个时钟域的数据,那么它们之间的跨时钟域路径是必须加以约束的。而对于两个频率和相位都无关的时钟,它们之间的异步路径如果按照ISE自动产生的时序约束来执行,显然是过约束。既然不能采用ISE自动生成的时钟约束,那又该如果对同一时钟管理模块输出的多个时钟进行时序约束呢?另外,对于两个不相干的时钟,它们之间的异步路径真的不需要约束吗?如果需要,这些路径的时序约束标准又是什么呢?
点击阅读详细内容:跨时钟域时序约束
http://blog.163.com/fpga_ip/