全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 可编程逻辑 >

异步复位同步释放有多个时钟域时如何处理 异步

时间:2023-07-20 09:04

人气:

作者:admin

标签: FPGA  异步复位  触发器  PLL电 

导读:对于从FPGA外部进来的信号,我们通常采用“异步复位同步释放的策略”,具体电路如下图所示。...

对于从FPGA外部进来的信号,我们通常采用“异步复位同步释放的策略”,具体电路如下图所示。图中src_arst是输入异步复位信号,dest_arst是同步释放的异步复位信号,其后负载为需要异步复位的触发器。

02cb3c08-2691-11ee-962d-dac502259ad0.png

从时序关系的角度来看,结合如下仿真波形,异步复位信号在蓝色标记的时钟上升沿被释放,所有触发器将在红色边沿开始输出D端口数据。

问题是如果后续触发器公众在不同的时钟频率下,这种方式是否仍能确保所有触发器的异步复位信号在同一个时钟上升沿被释放?为便于说明,我们假定设计中有两个时钟,分别为100MHz和200MHz,均有同一个MMCM/PLL生成,即二者是同步时钟(同相不同频)。

03030c50-2691-11ee-962d-dac502259ad0.png

第一种情况:同步器工作在100MHz时钟的上升沿

在这种情况下,假定异步复位在标记(1)被释放,那么200M时钟域下的触发器将在标记(3)开始输出D端数据,而100M时钟域下的触发器则要在标记(5)开始输出D端数据,显然,两者并没有在同一个时钟沿下开始工作。

03187d38-2691-11ee-962d-dac502259ad0.png

第二种情况:同步器工作在200MHz时钟的上升沿

在这种情况下,如果异步复位是在标记(3)释放,那么100M时钟域下的触发器和200M时钟域下的触发器都将在标记(5)结束复位,开始输出D端口数据。

0349a30e-2691-11ee-962d-dac502259ad0.png

但是,如果复位是在标记(1)释放,如下图所示,100M时钟域下的触发器将在标记(5)输出D端口数据,而200M时钟域下的触发器将在标记(3)输出D端口数据。

035c3af0-2691-11ee-962d-dac502259ad0.png

第三种情况:同步器工作在100MHz时钟的下降沿

在这种情况下,同步器工作在100MHz时钟的下降沿,但后续触发器仍工作在时钟的上升沿。如下图所示。异步复位在标记(3)释放,那么100M时钟域下的触发器将在标记(5)开始输出D端口数据,200M时钟域下的触发器也在此刻输出D端口数据,故两者可以在同一个时刻开始释放复位正常工作。

038909f4-2691-11ee-962d-dac502259ad0.png

如果两个时钟是异步时钟,都要使用外部提供的同一个复位信号,这时无法做到这两个时钟域下的触发器实现复位信号同步释放。这是因为这两个时钟之间没有明确的相位关系,这就造成同步器引发的延迟差是不确定的。这种情况下,我们需要对每个时钟域添加同步器,生成各自时钟域下的复位信号,如下图所示。

03a6f2d4-2691-11ee-962d-dac502259ad0.png








审核编辑:刘清

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信