在两个IC之间共享一个振荡器


11

我在同一块板上有一个微控制器和一个FPGA。如果它们都将以相同的时钟速度运行,我是否可以仅使用一个振荡器为它们两个时钟?似乎有些事情我应该提防,但是如果我只留下简短的痕迹,我不会马上想到它的任何问题。有人做过吗?这样做会有哪些常见的陷阱?

Answers:


15

是的,很可能很好。您必须确保每个芯片都已设置好以期望时钟就绪,而不是驱动晶体本身。当然,您必须查看数据表,但是很可能可以通过这种方式设置设备。

但是,可能有一种较便宜的方法。至少有一个(可能是两个)芯片很可能可以直接驱动晶体。您可以让其中一个这样做,并可能使用它来驱动另一个芯片。这可能会有些棘手,因为晶体驱动器输出线更多的是模拟信号而不是数字信号,如果直接使用,则可能无法解释为另一芯片的意图。普通数字门也可能无法将其解释为是,因此将其缓冲到靠近晶体的位置,然后将该数字信号发送到另一个芯片也可能无法工作。在这里,您必须非常仔细地查阅数据表并进行一些试验。

一种完全可靠的方法是让一个芯片驱动晶体,对该信号进行内部缓冲,然后在另一个引脚上将其驱动为真正有保证的数字信号。这很可能与FPGA驱动晶体一起工作,因为您应该能够将时钟信号输出到引脚。微控制器有时具有时钟输出引脚,但是至少对于PIC(我最熟悉),这通常是振荡器/ 4频率,而不是直接振荡器频率。您可能不希望运行FPGA和微型时钟频率的1/4。


6

一些微控制器可以配置为以其振荡器电路的时钟频率驱动输出引脚。几乎是时钟信号的缓冲区。我相信我已经在ATtiny45的数据表中阅读了它。这样,只有一个芯片在驱动晶体,但是其他芯片仍可以使用其时钟。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.