题解 | #简易秒表#

简易秒表

http://www.nowcoder.com/practice/6493ca8c7b67499f918e1fa33b4cdeda

module count_module( //秒表计数器 input clk, input rst_n, output reg [5:0]second, output reg [5:0]minute );

reg flag1 = 0;

always@(posedge clk or negedge rst_n)begin
   if(rst_n == 1'b0)begin
       second <= 6'd0;
   end
   else begin
       if(second >= 6'd60)begin
           second <= 6'd1;
           flag1 <= 1'b1;
       end
       else begin
               second <= second + 1'b1;
               flag1 <= 1'b0;
       end
   end
end

always@(posedge flag1 or negedge rst_n)begin
   if(rst_n == 1'b0)
       minute <= 6'd0;
   else begin
       if(minute >= 6'd59)begin
           minute <= 6'd60;
       end
       else begin
           minute <= minute + 1;
       end
   end
   
end

endmodule

全部评论
这位老哥给出的是异步计数器的写法,将低位计数器的输出作为高位计数器的时钟信号。由于采用了级联的方式,所以运行速度比同步计数器慢。在功能性上,其仿真波形则是与同步计数器完全一致的。
3 回复 分享
发布于 2022-04-01 13:00

相关推荐

躺尸修仙中:因为很多92的也去卷中小厂,反正投递简历不要钱,面试不要钱,时间冲突就推,不冲突就面试积累经验
点赞 评论 收藏
分享
10-05 11:11
海南大学 Java
投票
理想江南137:感觉挺真诚的 感觉可以试一试
点赞 评论 收藏
分享
评论
4
收藏
分享
牛客网
牛客企业服务