(数字逻辑笔记)用Verilog实现4位计数器。(时序逻辑)

这篇具有很好参考价值的文章主要介绍了(数字逻辑笔记)用Verilog实现4位计数器。(时序逻辑)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

实验描述:

输入:

Clock:如果计数器enable信号为1,那么在时钟上升沿,count加1

Enable:如果enable为1,那么在时钟上升沿,count加1;如果enable为0,count保持不变

Reset:重置信号,如果reset为0,count重置为0

输出:

Count[3:0]:4位计数信号,范围:4‘b0000 – 4’b1111

实现代码:

/********************
*     By VastCosmic
*     2021/12/27
********************/

module count4(count,reset,clk,enable);
    output[3:0] count; 
    input reset,clk; 
    input enable;
    reg[3:0] count; 
        always @(posedge clk) 
            begin 
                if (reset) 
                    count<=0; 
                else 
                    begin 
                        if(enable)
                            count<=count+1'b1;  
                    end
            end 
endmodule

TestBench:

/******************
*    By VastCosmic
*    2021/12/27
******************/

`timescale 1ns/1ns
module test;
    reg reset = 0; 
    reg enable = 1;
    
    initial 
        begin 
            #2 reset = 1; //reset 
            #5 reset = 0; //start count  
            #40 enable = 0; //stop count
            #41 enable = 1; //count
            #50 reset = 1; //reset 
            #50 reset = 0; //start count        
            #6000 $stop; 
        end 
      
    reg clk; 
    initial 
        clk = 0; 
        always #(clk)
        clk = ~clk; 
        
    wire[3:0] out; 
    count4 ctr(out,reset,clk,enable); 
            
endmodule

使用Vivado进行仿真,仿真结果如下:

1.首先进行reset,随后开始正常计数

2.当enable=0时,暂停计数,out保持不变

(数字逻辑笔记)用Verilog实现4位计数器。(时序逻辑)

3.enable=1,继续计数。

4.当reset信号再次发出时,将计数out重置为0。

(数字逻辑笔记)用Verilog实现4位计数器。(时序逻辑)

5.下图为正常计数状态:

(数字逻辑笔记)用Verilog实现4位计数器。(时序逻辑)文章来源地址https://www.toymoban.com/news/detail-502193.html

到了这里,关于(数字逻辑笔记)用Verilog实现4位计数器。(时序逻辑)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【FPGA】Verilog:计数器 | 异步计数器 | 同步计数器 | 2位二进制计数器的实现 | 4位十进制计数器的实现

    目录 Ⅰ. 实践说明 0x00 计数器(Counter) 0x01 异步计数器(Asynchronous Counter)

    2024年02月05日
    浏览(57)
  • FPGA学习笔记:Verilog利用计数器发生信号

    1.等占空比信号发生:计数器计时1ms,使LED灯每隔1ms状态翻转一次,实现LED灯闪烁,产生周期为2ms、占空比50%的方波信号; 2.非等占空比信号发生:计时器计时1.8ms,LED灯亮1ms,灭0.8ms,产生周期为1.8ms、非等占空比的方波信号; 3.序列型脉冲信号产生:生成1011010011的序列脉冲

    2024年02月22日
    浏览(40)
  • Verilog实现按键计数器

    一、简介 计数器我们都知道,这里我们旨在使用Verilog HDL 来实现按键计数器的操作,功能有: 1、按下一个键,计数加一(+1); 2、按下另一个键,计数减一(-1); 3、按下复位键,则计数清零。 4、最多计数60次。 二、 代码实现 我们使用了两个模块,第一个是按键消抖模

    2024年02月04日
    浏览(48)
  • 【FPGA】Verilog:升降计数器 | 波纹计数器 | 约翰逊计数器 | 实现 4-bit 升降计数器的 UP/DOWN

    目录 Ⅰ. 理论部分 0x00 升降计数器(UP DOWN Counter) 0x01 波纹计数器(Ripple Counter)

    2024年02月05日
    浏览(50)
  • Verilog基础之十、计数器实现

    目录 一、前言 二、工程设计 2.1 设计代码 2.2 综合结果 ​2.3 仿真结果     计数器是较为基础的逻辑,很多其他逻辑可依靠计数器实现,如控制器,分频。原理为通过统计时钟脉冲的个数来输出计数值。 工程设计以计数20的计数器为例 测试代码 综合后的网表可知,6位的计

    2024年02月09日
    浏览(48)
  • verilog手撕代码5——计数器(置位、加减、环形、扭环形、格雷码计数器实现)

    2023.5.12 编写一个十六进制计数器模块,计数器输出信号递增每次到达0,给出指示信号 zero ,当置位信号 set 有效时,将当前输出置为输入的数值 set_num 。 注意 :这里zero=1和num=0是同一拍输出的,按道理如果根据num=0,然后去输出zero=1应该延迟一拍。所以这里考虑将number延迟一

    2024年02月07日
    浏览(54)
  • Verilog语言实现FPGA上的计数器

    Verilog语言实现FPGA上的计数器 计数器是数字电路中经常使用的基本元素之一,它用于生成指定脉冲数量或者指定计数范围内的计数信号。在现代数字电路设计中,FPGA(Field Programmable Gate Array)作为一种可编程逻辑器件被广泛应用,可以通过Verilog语言来实现计数器模块。 在V

    2024年02月05日
    浏览(45)
  • verilog中几种实现计数器的方法

    module counter ( input clk, output reg [3:0] count ); always @(posedge clk) begin if (count == 4’hF) begin count = 4’h0; end else begin count = count + 4’b1; end end endmodule integer      i ; reg [3:0]    counter2 ; initial begin     counter2 = \\\'b0 ;     for (i=0; i=10; i=i+1) begin         #10 ;         counter2 = coun

    2024年02月03日
    浏览(45)
  • 通过verilog实现模可变计数器的设计

    实验要求:          (一) 实验目的 (1)掌握组合逻辑电路和时序电路的 FPGA实现方法; (2)熟悉EDA开发板和开发软件的使用方法; (3)学习静态数码管的使用和7段数码显示译码器设计; (4)掌握时钟在时序电路中的作用; (5)掌握分频电路的实现方法。 (二)

    2024年02月05日
    浏览(44)
  • 【FGPA】Verilog:移位寄存器 | 环形计数器 | 4bit移位寄存器的实现 | 4bit环形计数器的实现

      目录 Ⅰ. 理论部分 0x00 移位寄存器(Shift Register) 0x01 环形计数器(Ring Counter)

    2024年02月05日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包