0

如何处理来自同一源的时钟的多时钟设计信号?例如,一个时钟域是 25Mhz,另一个是 100Mhz 如何处理从 25Mhz 到 100Mhz 以及从 100Mhz 到 25Hhz 的数据总线?

不想使用 AFIFO 以及任何其他简单的 CDC 方式来处理它?

4

3 回答 3

2

情况 1:如果源确保时钟的边沿对齐,则无需在设计中执行任何操作。单比特和多比特数据没有区别。

情况 2:如果边沿未对齐,但相位关系已知,则时钟仍是同步的。综合/STA/P&R 工具可以计算时序(例如建立/保持)检查的最坏情况。如果没有违规,则无需再次执行任何操作。这里最重要的部分是正确定义时序约束。

情况 3:如果时钟是异步的,一种解决方案是在总线上携带一个使能信号。使能信号由一对触发器同步。然后根据同步使能信号的值屏蔽或传递数据位。此处解释了此解决方案以及许多其他解决方案和案例。

于 2017-06-10T12:19:13.930 回答
0

取决于两个时钟是同步的还是异步的。您可以使用 2 位/n 位同步器来消除 CDC 中的元稳定性问题。其他方法是基于多路复用器的握手机制、格雷码计数器。

于 2017-08-17T10:02:26.367 回答
0

如果您将数据从较慢的时钟域发送到较快的时钟域,则快速时钟应该是慢速时钟的 1.5 倍。对于较快的时钟到较慢的时钟域,Fast clock 的 Data 应该是较慢时钟的 1.5 倍。

于 2017-09-15T12:07:22.847 回答