FPGA设计中对输入信号的处理 chenmi1999 文章最先发在我的EDA专业blog上,现在搬到这来,希望对大家有用。不妥之处,请大家 指正,谢谢! 1.输入信号为什么要寄存 一般来说,在全同步设计中,各模块的输入不需要寄存。只要满足建立时间,保持时间 的约束,可以保证在时钟上升沿到来时,输入信号已经稳定,可以采样得到正确的值。 但是如果模块需要使用输入信号的跳变沿(比如帧同步信号),千万不要直接哦[pic]。 always @ (posedge inputs) begin ... end 因为这个信号的跳变沿可不像全局时钟那么理想,存在较长时间的亚稳态,可能造成电 路的误动作。 2.所有信号都需要寄存两拍吗 一般大家在网上都会看到为了正确采样输入信号的跳变沿,需要将其寄存两拍。但是真 的必须寄存两拍么?我的回答是不一定。有的情况必须寄存两拍,但是有的只需要寄存 一拍就OK拉! 如果这个输入信号来自FPGA芯片外部的输入,必须寄存两拍。我们只要举一个例子就可 以……