Blackrose's Blog Blackrose's Blog

芯片如何产生不同的时钟

in growth-logread (689) 文章转载请注明来源!

当初学2440开发板的时候,对时钟的认识不足。导致后来写裸机程序时,各种器件的时钟问题,出现很大的问题。那时@7hao也问过相同的问题,终究还是搁置了。最近调coldfire的板子,对时钟有些新的认识,顺便把这个问题解决下。

现在芯片工艺越来越高,使得芯片上的功能越来越丰富,支持的外围接口也越来越多。不同的接口,工作频率是不相同的。所以一个电路板中,对不同外围接口或电路模块,要提供不同时钟。当然,提高接口的工作频率会使器件工作更“快”,但“稳定性”才是最主要的。就像,CPU超频一样,频率越高,效率越高,但负作用就是功耗和稳定性的损失。

现在有个问题,芯片要正常工作,也需要一个时钟。所以,电路板上常有一个振荡器,一般会选用石英振荡器,因为输出的频率比较稳定。这样上电后,芯片就进入工作状态了,但其他的接口或模块还没有工作。这时候,芯片会做一件事,分频或倍频。完成这个操作的是PLL(Phase Locked Loop,锁相环)元件,这个是集成在芯片中的。这个元件本身是用来同步相位的,简单来看,就是“复制”振荡器的频率,后续的分频或倍频的操作都是在PLL的频率上进行。又因为,石英振荡器提供的频率一般不太大(我还没有见过板载100Mhz的振荡器),所以倍频是提高芯片工作能力的主要方法。

现在芯片通过PLL也有了“自己”的时钟,芯片的设计者在最初也考虑到这个问题,就规划了一个clock chart。把频率相近的接口或模块的时钟线放在一起,提供一个统一的时钟。这样,分频就不会太过于凌乱,而是呈现一定的比率。

这样看来,外部振荡器好像只工作了一会,其实不然。PLL可以复制时钟,但芯片会受到电磁的干扰,所以石英振荡器的稳定性就有很大的优势了。

参考文献:
PLL的原理,怎样用它倍频

文章二维码

扫描二维码,在手机上阅读!

发表新评论
已有 3 条评论
  1. 7hao
    7hao
    回复

    晕,我啥时候问过这个问题。。。。 不过你@我,还是满好的。 唉,没微博的人默默飘。。。

    1. Blackrose
      Blackrose本文作者
      回复

      @7hao 有的,当初的问题是“2440的芯片为什么就可以提升频率?”。微博不习惯么,觉得太混乱了

  2. 7hao
    7hao
    回复

    哎呀,记性真好。

博客已萌萌哒运行
© 2018 由 Typecho 强力驱动.Theme by Yodu
前篇 后篇
雷姆
拉姆