verilog小程序——上电自动复位
时间:2019-01-11 13:13:38
收藏:0
阅读:369
最近整理了一个自动复位小程序,可以作为模板今后使用,此程序也可以精简,如在对复位时间精度要求不高的情况下,可以以cnt的某一高位最为判定条件,当其为1时,复位结束,具体请看代码,若有更好的建议或问题,欢迎留言。
module rst( input wire clk, input wire rst_in, output wire rst_n ); wire buf_rst_n; reg [26:0] cnt = 27‘d0; localparam CNT =20‘d550_000; ///11ms if need a long time please set assign buf_rst_n = (cnt == CNT - 1‘b1) ? 1‘b1 : 1‘b0; assign rst_n = buf_rst_n || rst_in; always @ (posedge clk)begin if (cnt < CNT - 1‘b1) cnt <= cnt + 1‘b1; else cnt <= cnt; end endmodule
评论(0)