寄存器,移位寄存器的电路原理以及verilog代码实现「建议收藏」

寄存器,移位寄存器的电路原理以及verilog代码实现「建议收藏」寄存器:用以存放二进制代码的电路,下图为由维特阻塞D触发器组成的4位数码寄存器:逻辑功能分析:1.异步端CR置0时,输出置0;2.同步并行置数:D0~D3为4个输入代码,当CP上升沿到达时,D0

大家好,又见面了,我是你们的朋友全栈君。

寄存器:用以存放二进制代码的电路,下图为由维特阻塞D触发器组成的4位数码寄存器:

image

逻辑功能分析:

1.异步端CR置0时,输出置0;

2.同步并行置数:D0~D3为4个输入代码,当CP上升沿到达时,D0~D3被同时并行置入。

3.在置数端为1,CP端为0时,保持不变。

2.移位寄存器:具有存放数码和使数码逐位右移或左移的电路称为移位寄存器。

image

移位寄存器按照不同的分类方法可以分为不同的类型。 如果按照移位寄存器的移位方向来进行分类, 可以分为左移移位寄存器、移位寄存器和双向移位寄存器等;如果按照工作方式来分类,可以分为串入/串出移位寄存器、串入/并出移位寄存器和并入/串出移位寄存器等。

以下为异步清零的4位并入串出移位寄存器(输入为并行数据,输出为串行数据)

module reg_bc(clk,clr,din,dout);
input clk,clr; // 输入时钟端,清零端(高电平有效)
input[3:0] din; // 数据输入端
output dout; // 数据输出端
reg[1:0] cnt; 
reg[3:0] q;
reg dout;
always@(posedge clk)  // 时钟上升沿触发
begin
cnt<=cnt+1;  //cnt  自加 1
if(clr)  // 判断清零信号是否有效
begin
q<=4'b0000; //q 置 置 0
end
else
begin
if(cnt>0) // 判断 cnt  是否大于 0
begin
q[3:1]<=q[2:0];  //q  中的值向左移 1  位
end
else if(cnt==2'b00) // 判断 cnt  是否为 0
begin
q<=din; //把 把 din  的值赋予 q
end
dout<=q[3];  //把 把 q  的最高位输出
end
end

image

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/154700.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月1日 下午1:00
下一篇 2022年7月1日 下午1:16


相关推荐

  • 刀塔2显示连接服务器调解中,大师调解正在连接至dota2网络 【操作方案】 的具体步骤_…

    刀塔2显示连接服务器调解中,大师调解正在连接至dota2网络 【操作方案】 的具体步骤_…近日有小伙伴发现电脑出现问题了,在突然遇到正在连接至dota2网络时不知所措了,对于正在连接至dota2网络带来的问题,其实很好解决正在连接至dota2网络带来的问题,下面小编跟大家介绍正在连接至dota2网络解决方法:一直卡在正在连接至dota2网络什么情况答:您好,若您运行DOTA2时遇到无法连接到DOTA2网络或一直显示正在连接到DOTA2网络,请您完全关闭DOTA2国服客户端,再重新启…

    2022年5月17日
    60
  • vim命令大全(最全)

    此文为转载学习链接:vim命令大全http://blog.csdn.net/scaleqiao/article/details/45153379vim命令小技巧http://www.codeceo.com/article/useful-vim-command.html1.关于Vimvim是我最喜欢的编辑器,也是linux下第二强大的编辑器。虽然emacs是公认的世界第一,我认为使…

    2022年4月10日
    54
  • API 与 SDK 之间的区别

    API 与 SDK 之间的区别很多人在软件开发中经常会分不清 SDK 与 API 今天就来浅谈一下两者之间的区别 直白地说 SDK 包含了 API 是一套完整的 能完成更多功能的工具包 无论你想获取什么样的信息 SDK 里总能找到实现的办法 用通俗的话来举个例子 有一杯密封饮料 它的名字叫做 SDK 饮料上插着吸管 吸管的名字叫 API 把你叫做 XX 系统 如果你想喝到 SDK 里的饮料 让系统拥有 SDK 中的功能 你必须通过 API 这根吸管来实现 通过 API 连接你的系统和

    2026年3月17日
    2
  • 舆情监测分析系统_舆情监测系统

    舆情监测分析系统_舆情监测系统一、引言1.1目的  编写此文档的目的是确认舆情分析系统的需求及系统边界,指导系统的设计。1.2项目信息项目名称:舆情分析系统项目提出者:指导教师开发者:东北大学软件学院大数据班T09实训项目组(lzf、lcx)用户:舆情分析员、系统管理员1.3缩写说明1.4术语定义1.5参考资料新浪舆情通:https://yqt.mdata.net/二、舆情分析系统概述2.1舆情分析系统介绍  我们的舆情分析系统主要包括舆情总缆分析、舆情搜索、文章分析、文章评论分析、事件

    2025年11月21日
    3
  • pip更新问题的解决:’python -m pip install –upgrade pip’ 报错问题

    pip更新问题的解决:’python -m pip install –upgrade pip’ 报错问题在安装某个包的时候出现如下错误然后按照提示运行 python mpipinstallu 并更新 pip 后再次运行 pipinstallDN 依旧报错如上 此时需要根据自己下载的 python 路径按照如下图所示找到后删除箭头所指 接下来再次运行 python mpipinstallu 后 大功告成 如下图所示

    2026年3月16日
    2
  • windows11修改用户名_win10家庭中文版怎么更改用户名

    windows11修改用户名_win10家庭中文版怎么更改用户名按:新买的电脑一般预装Windows11系统(家庭与学生版),新电脑初次开机使用微软邮箱账号登录,则系统将用户名自动设置成邮箱前几位。我的用户名便是一串数字【231xx】(qq邮箱前5位),看着很不舒服,查了很多方法并最终修改成功!!记录一下修改过程,希望能帮到同样想改用户名的人。首先,强调一点,修改失败可能导致很严重的问题,电脑如有重要资料,务必请提前备份!!!一什么情况需要修改用户名最主要的情况就是初次使用设置了中文用户名。很多软件不支持路径包含中文字……………..

    2022年10月14日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号