FPGA面试:同步复位和异步复位有什么区别?为什么要异步置位、同步释放?

浏览量:2
时间: 2026-11-15 22:34:13

FY EDU / INTERVIEW SERIES / FPGA / RESET

FPGA面试:同步复位和异步复位有什么区别?为什么要异步置位、同步释放?

复位问题在仿真中可能很难暴露,但在硬件上电、时钟切换或多时钟域系统里容易出现。面试时把“复位有效”和“复位释放”分开讲,会更清楚。

面试官提问    

FPGA的复位信号可以随时拉低,为什么释放复位还要考虑时钟?

FPGA异步复位同步释放的双触发器复位同步器电路图  

参考回答

同步复位只有在时钟有效边沿到来时才生效;异步复位不依赖时钟边沿即可让寄存器进入复位状态。但异步复位如果在时钟边沿附近释放,可能违反恢复/移除时间要求,使不同寄存器在不同周期退出复位。常见做法是按时钟域使用复位同步器,实现异步断言、同步释放;具体实现仍需遵循器件原语和综合/时序工具的推荐方式。

01同步和异步各有什么特点

  • 同步复位需要时钟工作才能改变寄存器状态,便于统一按时钟分析,但某些时钟停止场景可能无法立即复位。

  • 异步复位可以在时钟停止时断言,适合部分安全或初始化需求;但其释放时序和分发网络更需要谨慎处理。

  • FPGA器件内部触发器、BRAM和DSP资源对复位方式的支持并不完全相同,不能假设所有寄存器结构都能无代价使用异步复位。

02异步断言、同步释放的思路

  • 外部复位拉到有效电平时,复位同步器中的寄存器立即被清零;复位解除后,复位信号在目标时钟域经过若干个时钟周期才释放。

  • 不同的时钟域一般应分别处理复位释放,避免某个域在时钟尚未稳定时就开始运行。

  • 对于MMCM/PLL输出时钟,还要考虑LOCKED信号、时钟稳定时间和复位时序。

03仿真与时序检查

  • 仿真覆盖上电复位、运行中复位、时钟暂停和恢复等场景;在Vivado中检查复位同步器识别与CDC/时序报告。

  • 避免对同一目标时钟域的同一个异步复位信号随意建立多条独立同步链,否则不同模块可能在不同周期释放。

容易失分的回答

认为异步复位只要拉低就安全,完全不关心释放时刻;或者直接把未经同步的外部复位送到多个时钟域。

面试官可能继续追问

如果FPGA有100MHz和200MHz两个时钟域,你会用同一条复位同步链给两个域释放复位吗?

常见追问 FAQ

所有FPGA设计都必须采用异步复位吗?

不是。是否需要复位、采用同步还是异步复位,要结合器件资源、时钟条件、系统安全和官方设计指南决定。

相关业务入口

电子设计岗位学习与实战课程


声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。仅供学习交流使用,不构成商业目的。版权归原作者所有,如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时删除。侵权投诉
相关推荐HOT
电源工程师面试:双路电源如何防反灌?二极管ORing与MOSFET理想二极管怎么选?

FANYI · ENGINEER INTERVIEW / 电源设计电源工程师面试:双输入冗余电源切换时为什么需要防反灌?比较肖特基二极管ORing、理想二极管M... 详情>>

2026-11-02 11:36:16
SRAM和DRAM的区别

DRAM比SRAM要慢, 但造价更低, 容量也比SRAM⼤得多, 在计算机中主要⽤来做内存, 物尽其⽤。理解 了结构, 就能理解性质, 然后就决定了⽤途。静态随... 详情>>

2024-03-15 17:12:29
PCB仿真面试:眼图到底怎么看?眼高、眼宽、抖动和噪声裕量分别说明什么

眼图把大量比特的波形按单位间隔叠加在一起,是高速链路评估里非常直观的工具。它不是“眼睛越大越好”一句话就结束,而是要把垂直裕量、水平裕量、抖动、噪声和测试/仿真... 详情>>

2026-10-20 21:55:18
Buck电源输入电容怎么选型和布局

分类:电源设计经验级别:1-3年难度:中级题型:计算+实践电源工程师测试Buck电路输入纹波,验证输入电容选型是否合理本文概述Buck变换器的输入电容是电源设计... 详情>>

2026-08-11 17:48:04
电源完整性PI仿真怎么做?PDN阻抗与去耦电容怎么设计?PCB仿真面试

一句话答案PI 设计目标是 PDN 阻抗低于目标阻抗 Ztarget:Ztarget = V×ripple% / Imax;去耦电容按频率分工:大电容低频、小电... 详情>>

2026-09-18 09:05:44
开班信息