可逆计数器vhdl

news/2024/11/23 23:04:21/

CLR是复位控制输入端;ENA是使能控制输入端;LOAD是预置控制输入端;D[3..0]是4位并行数据输入端;DIR是加减控制输入端,当DIR=0时,计数器作加法操作,DIR=1时,计数器作减法操作;COUT是进/借位输出端。

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity Rev_Counter is
    Port ( CLK : in STD_LOGIC;
           CLR : in STD_LOGIC;
           ENA : in STD_LOGIC;
           LOAD : in STD_LOGIC;
           D : in STD_LOGIC_VECTOR (3 downto 0);
           DIR : in STD_LOGIC;
           Q : out STD_LOGIC_VECTOR (3 downto 0);
           COUT : out STD_LOGIC);
end Rev_Counter;

architecture Behavioral of Rev_Counter is
    signal R : STD_LOGIC_VECTOR (3 downto 0);
begin
    process(CLK, CLR)
    begin
        if CLR = '1' then
            R <= "0000";
        elsif CLK'event and CLK = '1' then
            if ENA = '1' then
                if LOAD = '1' then
                    R <= D;
                else
                    if DIR = '0' then
                        if R = "1111" then
                            COUT <= '1';
                        else
                            COUT <= '0';
                        end if;
                        R <= R + 1;
                    else
                        if R = "0000" then
                            COUT <= '1';
                        else
                            COUT <= '0';
                        end if;
                        R <= R - 1;
                    end if;
                end if;
            end if;
        end if;
    end process;
    Q <= R;
end Behavioral;


http://www.ppmy.cn/news/82649.html

相关文章

边缘计算盒子功能介绍,为什么要用边缘计算盒子?

边缘计算盒子&#xff08;Edge Computing Box&#xff09;是一种用于边缘计算设备。边缘计算是一种分布式计算模型&#xff0c;它将计算和数据处理能力从传统的集中式云计算数据中心延伸到网络边缘的设备上&#xff0c;以便更快地响应实时数据处理需求和减少对云服务的依赖。 边…

ChatGPT工作提效之小鹅通二次开发批量API对接解决方案(学习记录同步、用户注册同步、权益订购同步、开发文档)

ChatGPT工作提效系列 ChatGPT工作提效之初探路径独孤九剑遇强则强ChatGPT工作提效之在程序开发中的巧劲和指令(创建MySQL语句、PHP语句、Javascript用法、python的交互)ChatGPT工作提效之生成开发需求和报价单并转为Excel格式 ChatGPT工作提效之小鹅通二次开发批量API对接解决…

做什么类型的抖音自媒体账号赚钱?

其实有两类账号&#xff0c;大周认为是比较赚钱的&#xff1a; 1、种草类账号 2、测评类账号 但并不是所有人都适合做这种账号赚钱&#xff0c;那还有哪些领域可以选择呢&#xff1f; 今天这期内容大周就来给粉丝们分享一波&#xff0c;抓紧点赞收藏 首先问自己几个问题&a…

使用Vue完成一个户籍管理系统

js <template> <div> <h2>学籍管理系统</h2> <div> 姓名&#xff1a; <input v-model"user.name" /> </div> <div> 年龄&#xff1a; <input v-model"user.age" /> </div> <div> 性别…

effective c++ 53-不要忽略编译器的警告

effective c 53-不要忽略编译器的警告 这一节所讲解的道理是很简单的&#xff0c;主要就是告诉大家要利用好编译器给出的warning信息&#xff0c;不要轻易忽视。但是在日常开发中&#xff0c;很多人都对warnging的警告不太重视。在编程方法中的很多优化方法都是将运行态的错误…

从传统 IT 容灾转向“全栈云容灾”|什么是更适合政企的云

凌晨 3 点&#xff0c;在某医院的自助缴费机前&#xff0c;一位医患家属正愁眉紧锁&#xff0c;手中的医保卡已经刷了无数遍&#xff0c;可次次都提示缴费失败&#xff0c;至亲的手术已经迫在眉睫… 早上 8 点&#xff0c;是上班族在通勤途中打开新闻 app 刷新闻的高峰&#x…

链式二叉树OJ题思路分享

⏩博主CSDN主页:杭电码农-NEO⏩   ⏩专栏分类:刷题分享⏪   ⏩代码仓库:NEO的学习日记⏩   &#x1f339;关注我&#x1faf5;带你刷更多C语言和数据结构的题!   &#x1f51d;&#x1f51d; 链式二叉树OJ题分享 1. 前言&#x1f6a9;2. 单值二叉树&#x1f6a9;2.1 审题…

【JavaSE】Java基础语法(八)

文章目录 &#x1f353;1. 类和对象&#x1f379;&#x1f379;1.1 类和对象的关系&#x1f379;&#x1f379;1.2 类的定义 &#x1f353;2. 对象内存图&#x1f379;&#x1f379;2.1 单个对象内存图&#x1f379;&#x1f379;2.2 多个对象内存图2.3 多个对象指向相同内存图…