登录站点

用户名

密码

同步电路设计中clock

已有 354 次阅读  2009-09-27 11:28   标签clock  同步电路  设计 

《同步电路设计中clock skew的分析》

一.同步电路的组成
1.组合逻辑电路:用来实现各种逻辑计算
2.时序逻辑电路:用来存储由时序电路计算得到的逻辑值
3.时钟分布网络:向整个电路中的时序逻辑提供正确的时钟信号
二.clock skew问题的提出
1.clock skew的产生
延时与时钟线的长度及被时钟线驱动的时序单元的负载电容、个数有关
由于时钟线长度及负载不同,导致时钟信号到达相邻两个时序单元的时间不同
于是产生所谓的clock skew
2.有关的概念
Setup Time(Ts):建立时间
即要求数据端信号在时钟信号触发沿到来之前到达的最小时间
Hold Time(Th): 保持时间
即要求在时钟信号触发沿到来之后,数据端信号仍然维持的最小时间
Dcq: 时钟端到触发器输出端Q的延时
三.对同步电路中clock skew的分析
设 Dp: 组合逻辑电路部分的延时
Tcp:时钟周期
TC1:时钟信号沿时钟树到达寄存器R1的延迟时间
TC2:时钟信号沿时钟树到达寄存器R2的延迟时间
(1) 第K个时钟周期的时钟信号到达R1的时间为KTcp+TC1
第K+1个时钟周期的时钟信号到达R2的时间为(K+1)*Tcp+Tc2
第K个时钟周期数据信号经R1锁存后到达R2数据端的时间为K*Tcp+Tc1+Dcq+Dp
考虑到建立时间(Ts)的要求
这个时间应比第K+1个时钟周期的时钟信号到达R2的时间提前Ts
所以有下式:K*Tcp+Tc1+Dcq+Dp<=(K+1)*Tcp+Tc2-Ts
整理得:Tskew<=Tcp-Dcp-Dp-Ts (1)
(2) 考虑到保持时间(Th)的要求
第K个时钟周期数据信号经R1锁存后到达R2数据端的时间
应比第K个时钟信号到达R2的时间晚Th
有下式:K*Tcp+Tc1+Dcp+Dp>=K*Tcp+Tc2+Ts
整理得:Tskew>=Th-Dcp-Dp (2)
要使电路正常运行,相邻两个触发器之间的CLOCK SKEW必须满足(1)(2)两式
当式(1)不满足时,称发生了setup violation
当式(2)不满足时,称发生了hold violation
当发生了setup violation时可以通过延长时钟周期,即降低系统频率来解决
而当发生了hold violation时,电路一定无法正确工作
因此hold violation是一定要避免的

四.对clock skew的优化方法
插入时钟树时设法使时钟信号同时到达芯片上所有触发器,
虽然可以保证整个电路正确工作,但却不一定使电路工作在最优性能下
针对具体的路径延时,特别是关键路径的延时
合理地调整时钟信号到达各个触发器(或锁存器)的时序
也就是合理调整CLOCK SKEW
可以大幅度提高电路的工作频率

上一篇: 用VHDL/VerilogHD语言开发PLD/FPGA的完整流程 下一篇: “单比特信号同步”

分享 举报