马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
本帖最后由 jake 于 2021-1-15 17:36 编辑
合格的设计人员知道要避免clock path 上的毛刺,但 99% 却讲不清究竟为什么。 Clock path 上的毛刺对同步数字电路是致命的。 这和 flip flops 的一个隐蔽 timing 要求有关 -- min pulse width,最小时钟脉冲宽度。
下面是 .lib 某个 D flip flop 时钟 min_pulse_width 要求的例子。 时钟上升沿 280ps,时钟脉冲宽度不小于 0.65918ns,否则这个 D flip flop 就不能保证正常翻转。 后仿里 D flip flop 的输出变 X。 0.66ns 不是个小数字。 毛刺宽度可以轻易小于这个级别。
新工艺的 .lib 通常都有 min pulse width。 很多老工艺 .lib 没有这个数据,但不是说老工艺对时钟毛刺免疫。 有兴趣的朋友不妨跑一组 Spectre sim, 一目了然。
为啥时钟毛刺 min pulse width 违例会毁了这个电路? 同步数字电路通常有反馈。 简单的计数器就是一个有反馈的同步数字电路。 状态机也是。 带反馈的电路中有一个 flip flop 不能正常翻转,整个电路就乱了。
时钟上的毛刺通常是设计不周造成的,尤其是时钟切换电路设计的缺陷。 有空再聊这个话题。
|