1 概述
FPGA 复位非常重要,但往往被设计者忽视。本文讨论不正确的复位造成的设计问题,以及如
何设计一个正确的复位逻辑。
2 参考文档
1、《 Advanced FPGA Design Architecture, Implementation, and Optimization》Steve Kilts。
2、《 Advanced Digital Design with the Verilog HDL》 Michael D. Ciletti。
3 同步和异步复位
3.1 异步复位
异步复位指的是异步复位线连接到触发器的异步复位引脚上,复位的作用和释放是在没有任何
时钟的背景下执行的。如下例所示。
/******************************************/
module resetff (
datain,
clk,
rst_n,
dataout);
/******************************************/
input datain;
input clk, rst_n;
output dataout;
reg dataout;
/******************************************/
always @(posedge clk or negedge rst_n)
if(!rst_n)
dataout <= 0;
else
dataout <= datain;
endmodule
/******************************************/
图 1 异步复位例子
上面触发器的代码比较常见。但如果模块的边界代表 FPGA 的边界时,情况将变的复杂。如图
评论0
最新资源