异步电路设计就是要解决亚稳态的问题。异步电路设计一般有几个方法:
⚫ 单 bit 信号:直接多级寄存器同步法,一般采用 2-3 级寄存器进行同步处理,这个 2-3 级寄存器也
称作同步器,在 ASIC 设计中,一般都有提供专用的同步器库,因为同步器要求多级寄存器位置靠
的越近越好,靠的越近,亚稳态消失的概率就越大。 FPGA 设计中,直接使用 2-3 级寄存器进行同
步处理即可。
⚫ 多 bit 信号:异步 FIFO 或者使用多次握手同步方法。 在握手协议中,异步的 REQ/ACK 也需要使
用单 bit 同步技术进行同步处理,异步 FIFO 也是如此。
针对单 bit 信号,可以再细分为慢时钟信号同步到快时钟和快时钟信号同步到慢时钟两个情况。 信号在
慢时钟到快时钟域传递,且两个时钟相差比较大时,慢时钟的脉冲可以被快时钟当做电平,使用多级寄存器
同步后,在采用边沿检测电路即可得到相应的脉冲信号。 信号在快时钟到慢时钟域传递,即使使用同步器同
步,也很可能采样不到快时钟信号,所以此时需要先对快时钟信号进行展宽处理(就是同一个信号先在快时
钟进行多次寄存,然后将多个打拍延迟不同的信号或起来) ,然后再进行慢时钟同步。
多 bit 信号最常用的就是异步 FIFO,
异步电路设计(单bit和多bit)
最新推荐文章于 2023-06-05 11:19:11 发布