热度 11| |
一、异步复位释放时,与时钟不满足set up 和hold 同样会引发亚稳态问题:
带异步复位端的D触发器,电路有两级组成。前一级主要实现电路的保持,前一级的输出为沿变时捕获的值。后一级为数据的输出。
1. 异步复位信号有效时,直接驱动后一级的与非门,将输出信号置0或1,即异步复位。
2. 释放异步复位信号时,输出与前一级的内部输出有关,而异步复位信号又作为前一级某个与非门的输入,所以reset_n的值会影响到内部的中间保持值。
2.1 若clk_pos reset有效,中间值捕获reset值,保持复位状态;
2.2 若clk_pos reset无效,中间值捕获D输入值,正常工作;
2.3 若clk_pos reset亚稳态, 中间值亚稳态,电路输出亚稳态。
总: release reset 要满足寄存器的removal time 要求。
二、异步复位,同步解复位: 将输入的i_rst_n 打两拍输出,同步到i_clk时钟域。
三、带PLL的异步复位,同步解复位
利用PLL的locked信号,将i_rst_n&locked作为输入的复位信号,再做同步解复位处理。
PLL的复位信号或许也需要同步解复位,也应该再之前把i_rst_n打两拍送入PLL_RESET端吧。