fpga 中 clock skew

来源:互联网 发布:自动统计百度贴吧数据 编辑:程序博客网 时间:2024/05/18 01:04


http://blog.chinaunix.net/uid-24203478-id-3025710.html

  看了一篇论文才搞清楚clock skew的问题,详细内容见论文,以下写点要点:


1、什么是clock skew?


由于时钟线长度及负载不同,会导致时钟信号到达相邻两个时序单元的时间不同,于是产生所谓的CL OCK SKEW (时钟偏移)。


2、考虑到触发器要求的建立时间和保持时间,clock skew需满足两个基本条件:


1)T(skew)<= T(时钟周期)- T(触发器延时)- T(组合逻辑延时)- T(建立时间)


2)T(skew)  >= T(保持时间)- T(触发器延时)- T(组合逻辑延时)


从以上两式可以看出,当发生了setup violation时可以通过延长时钟周期,即降低系统频率来解决;而当发生了hold violation时,电路一定无法正确工作,即使增加时钟周期也无法改善。因此hold violation是一定要避免的。


3、 插入时钟树时设法使时钟信号同时到达芯片上所有触发器(或CI OCK SKEW 基本等于0),虽然可以保证整个电路正确工作,但却不一定使电路工作在最优性能下。合理的安排关键路径中相邻触发器的CI OCK SKEW ,可以大幅度提高整个电路的最高工作频率,从而优化电路的性能。


1、什么是clock skew?


由于时钟线长度及负载不同,会导致时钟信号到达相邻两个时序单元的时间不同,于是产生所谓的CL OCK SKEW (时钟偏移)。


2、考虑到触发器要求的建立时间和保持时间,clock skew需满足两个基本条件:


1)T(skew)<= T(时钟周期)- T(触发器延时)- T(组合逻辑延时)- T(建立时间)


2)T(skew)  >= T(保持时间)- T(触发器延时)- T(组合逻辑延时)


从以上两式可以看出,当发生了setup violation时可以通过延长时钟周期,即降低系统频率来解决;而当发生了hold violation时,电路一定无法正确工作,即使增加时钟周期也无法改善。因此hold violation是一定要避免的。


3、 插入时钟树时设法使时钟信号同时到达芯片上所有触发器(或CI OCK SKEW 基本等于0),虽然可以保证整个电路正确工作,但却不一定使电路工作在最优性能下。合理的安排关键路径中相邻触发器的CI OCK SKEW ,可以大幅度提高整个电路的最高工作频率,从而优化电路的性能。

0 0
原创粉丝点击