当前位置: 首页 > news >正文

数字逻辑电路基础-时序逻辑电路之移位寄存器

文章目录

    • 一、移位寄存器定义
    • 二、verilog源码
    • 三、仿真结果


一、移位寄存器定义

移位寄存器定义
A shift register is a type of digital circuit using a cascade of flip flops where the output of one flip-flop is connected to the input of the next.
移位寄存器是一种将一组D触发器进行级联输出而形成的一种时序逻辑电路。

在设计中经常会用到的一种基础时序电路,比如下面串转并电路,通过将串行输入的码流移位将其转换成并行数据输出。

串转并
本文设计一个简单的串并转换器,实现将串行输入数据转换成8位的并行数据进行输出,同时输出一个转换完成标志。


二、verilog源码

// implement a simple 8bit serial to paralle convertormodule s2p_demo (clk, rstn, din, dout, done);input clk;input rstn;input din;output [7:0] dout;output done;reg [2:0] cnt;reg done;reg done_dly;reg [7:0] dout;reg [7:0] dout_dly;always@(posedge clk or negedge rstn)beginif(!rstn) begindout_dly <= 8'bx; endelse begindout_dly[cnt] <= din; endendalways@(posedge clk or negedge rstn)beginif(!rstn) begindout <= 8'b0; endelse if(done_dly) begindout <= dout_dly;done <= done_dly; endelse begindout <= 8'b0;done <= done_dly; endendalways@(posedge clk or negedge rstn)beginif(!rstn) begincnt <= 3'b0;done_dly <= 1'b0; endelse if(cnt == 3'b111) begincnt <= 3'b0;done_dly <= 1'b1; endelse begincnt <= cnt + 1'b1;done_dly <= 1'b0;endend
endmodule

三、仿真结果

仿真输出结果


转载请注明出处!

相关文章:

  • 利用chart.js来完成动态网页显示拆线图的效果
  • ​LeetCode解法汇总1410. HTML 实体解析器
  • 文件属性和路径
  • isis基础大全学习案例
  • 【SpringCloud】微服务的扩展性及其与 SOA 的区别
  • 防火墙命令行基础配置实验(H3C模拟器)
  • 为什么网上大量程序员卡35岁年龄招聘,而从来不报道测试、技术支持、售前售后工程师呢?
  • echarts 几千条分钟级别在小时级别图标上展示
  • JavaScript中Object.prototype.toString.call()、instanceOf和Array.isArray()的区别
  • JavaScript 原型,原型链的特点
  • [PyTorch][chapter 64][强化学习-DQN]
  • 微软 Edge 浏览器目前无法支持 avif 格式
  • Labelme加载AI(Segment-Anything)模型进行图像标注
  • 解决DaemonSet没法调度到master节点的问题
  • 短视频获客系统成功分享,与其开发流程与涉及到的技术
  • (三)从jvm层面了解线程的启动和停止
  • 【399天】跃迁之路——程序员高效学习方法论探索系列(实验阶段156-2018.03.11)...
  • 77. Combinations
  • angular2 简述
  • Apache的80端口被占用以及访问时报错403
  • C++11: atomic 头文件
  • Redis字符串类型内部编码剖析
  • select2 取值 遍历 设置默认值
  • 从地狱到天堂,Node 回调向 async/await 转变
  • 对话:中国为什么有前途/ 写给中国的经济学
  • 多线程 start 和 run 方法到底有什么区别?
  • 官方新出的 Kotlin 扩展库 KTX,到底帮你干了什么?
  • 如何抓住下一波零售风口?看RPA玩转零售自动化
  • 系统认识JavaScript正则表达式
  • (ibm)Java 语言的 XPath API
  • (TOJ2804)Even? Odd?
  • (附源码)spring boot球鞋文化交流论坛 毕业设计 141436
  • (附源码)springboot家庭财务分析系统 毕业设计641323
  • (论文阅读22/100)Learning a Deep Compact Image Representation for Visual Tracking
  • (入门自用)--C++--抽象类--多态原理--虚表--1020
  • (五) 一起学 Unix 环境高级编程 (APUE) 之 进程环境
  • (原創) 是否该学PetShop将Model和BLL分开? (.NET) (N-Tier) (PetShop) (OO)
  • (转)mysql使用Navicat 导出和导入数据库
  • (转)程序员疫苗:代码注入
  • (转)真正的中国天气api接口xml,json(求加精) ...
  • (自适应手机端)响应式新闻博客知识类pbootcms网站模板 自媒体运营博客网站源码下载
  • .NET Core 控制台程序读 appsettings.json 、注依赖、配日志、设 IOptions
  • .NET Micro Framework初体验(二)
  • .net 程序 换成 java,NET程序员如何转行为J2EE之java基础上(9)
  • .NET简谈互操作(五:基础知识之Dynamic平台调用)
  • .Net下使用 Geb.Video.FFMPEG 操作视频文件
  • .NET学习教程二——.net基础定义+VS常用设置
  • .w文件怎么转成html文件,使用pandoc进行Word与Markdown文件转化
  • /ThinkPHP/Library/Think/Storage/Driver/File.class.php  LINE: 48
  • /var/spool/postfix/maildrop 下有大量文件
  • @Autowired多个相同类型bean装配问题
  • @hook扩展分析
  • @Not - Empty-Null-Blank
  • [ C++ ] STL---string类的使用指南
  • [ Linux Audio 篇 ] 音频开发入门基础知识