← 2022 · MPS芯源 笔试

推荐答案 测试一下

How do you synchronize an asynchronousinput?

问答题 中等 经典问答问答题

参考答案

异步信号同步的核心目标是避免亚稳态传播,确保跨时钟域信号稳定采样。常用方法如下: 1. **单比特同步:两级触发器同步器** 对单比特慢速变化信号(如按键、中断),使用两个串联的触发器,第一级采样异步信号,第二级输出同步信号。两级可有效降低亚稳态概率(MTBF足够大),但输入信号必须保持至少两个目标时钟周期宽度,否则可能漏采。电路结构:两级D触发器,同源时钟。 2. **多比特同步:处理多位宽异步数据** - **握手协议**:请求-应答方式,发送方使请求信号有效,接收方采样后拉高应答,发送方撤销请求,接收方再撤销应答。包含四相或两相握手,适用于较慢数据传输,但延迟较大。 - **异步FIFO**:通过双端口RAM、读写指针、格雷码指针同步,实现跨时钟域批量数据传输。格雷码保证单次仅跳变一位,同步后无多位同时变化风险。注意空满标志产生需跨时钟域比较,使用同步后的指针。 - **寄存器组打拍同步**:将多位信号通过连续两个(或更多)触发器同步,但要求多位信号变化间隔远大于同步时钟周期,且允许短暂错误(如配置寄存器)。易错点:多位信号同时变化时,不同位可能因布线延迟不同而在不同时钟沿被采样,产生错误组合值。因此不推荐直接对多位信号打拍,除非能保证变化间隔足够大或使用格雷码。 3. **特殊场景** - **非常慢变信号**:可用边缘检测同步器,但需确保脉冲宽度足够。 - **快时钟到慢时钟**:输入信号需展宽到慢时钟两个周期以上,或使用握手/脉冲同步器(如单脉冲同步器:将快时钟域的脉冲转换为电平,再同步后恢复为脉冲)。 **易错点**: - 不能仅用一级触发器同步,会直接采样亚稳态。 - 多位宽信号(如数据总线)不能简单用两级同步器,必须使用握手或FIFO。 - 同步器输入信号必须满足建立时间和保持时间,否则即使两级也会失效(概率极低但存在)。 - 复位信号异步复位同步释放是常见同步方法。 **考点**:亚稳态概念、MTBF、两级触发器原理、格雷码跨时钟域、异步FIFO结构。

涉及知识点

  • 亚稳态与MTBF
  • 双级触发器同步器
  • 格雷码编码与多比特同步
  • 握手协议(四相/两相)
  • 异步FIFO结构
  • 脉冲同步器与边沿检测
← 上一题
登录后反馈错题
下一题 →