我是靠谱客的博主 眯眯眼金针菇,最近开发中收集的这篇文章主要介绍计数器的电路的描述,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

计数器的电路如下︰
module Div20x (rst, clk, cet, cep, count,tc);
//TITLE   'Divide-by-20 Counter with enables'
//enable CEP is a clock enable only
//enable CET is a clock enable and enables the TC output
// 使用 Verilog 语言描述的一个计数器

    parameter size = 5;
    parameter length = 20;

    input rst;  // 这些输出/输入表示这个模组的对外连线
    input clk;
    input cet;
    input cep;

    output [size-1:0] count;
    output tc;

    reg [size-1:0] count;  // 宣告硬件内的暂存器
    wire tc;               // 连接线
   
    // 下方的 always 叙述是属于平行执行的叙述,当任何时间 rst 或 clk 讯号
    // 有从 low 到 high 的转变时候就会被执行,即边沿触发
    always @ (posedge rst or posedge clk)
        begin                            
            if (rst)             // 这个模拟计数器的重设
                count <= 5'b0;
            else if (cet && cep) // 这个模拟两个 enable 讯号都为 true
            begin
                if (count == length-1)
                begin
                    count <= 5'b0;
                end
                else
                    count <= count + 5'b1;  // 5'b1 是 5 bits 宽度且等于 1 的数值
            end
        end

    // 后面运算式的值会持续不断地指定给 tc
    assign tc = (cet && (count == length-1));

endmodule

 

最后

以上就是眯眯眼金针菇为你收集整理的计数器的电路的描述的全部内容,希望文章能够帮你解决计数器的电路的描述所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部