RTL · RESET STRATEGY
这题既属于常见RTL语法题,也是非常实用的板级稳定性问题。
先给结论
同步复位在有效时钟边沿生效;异步复位可不依赖时钟立即使寄存器进入复位状态,但其释放若靠近时钟边沿,可能带来恢复/去除时间风险,常采用异步断言、同步释放策略。
① 面试官到底在考什么?
“异步复位快、同步复位慢”不是合格答案。面试官更想听你是否理解时钟缺失时的行为、复位释放跨域风险及器件复位资源的实际约束。

② 工程思路:按这个顺序展开
01 / 先从RTL行为说清
同步复位只在触发沿执行复位赋值;异步复位将复位信号写入时序块敏感列表,断言可直接作用于寄存器的异步控制端。
02 / 复位释放要满足时序
异步复位撤销时若靠近时钟边沿,不同寄存器可能在不同拍离开复位;对需要一致启动的逻辑,常对复位释放按目标时钟域同步处理。
03 / 落地到工程约束
查看FPGA厂商对异步控制、时钟和复位树的推荐做法。外部复位、PLL lock和多时钟域都应考虑,不能简单把一个复位直接扇出全芯片而不分析。
③ 常见失分点
把复位信号当普通数据线,完全不做跨时钟域分析
认为所有寄存器统一选异步复位就一定最安全
忘了RAM、DSP或某些专用IP对复位方式可能有限制
④ 面试时可以这样回答
“同步复位在时钟沿起作用,易于按时钟域分析;异步复位可在时钟没有运行时立即断言,但释放时要关注恢复/去除时间以及不同寄存器离开复位的一致性。我会按器件架构和时钟域设计复位,并对异步复位的释放进行同步处理。”
面试官可能继续追问
如果PLL尚未锁定,复位同步器和后级逻辑应该怎样启动?

扫码关注





























