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

「Verilog学习笔记」多bit MUX同步器

专栏前言

本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网

输入数据暂存在data_reg中,使能信号data_en用打两拍的方式跨时钟域传输到时钟域B,最后data_out根据使能信号更新数据。data_en信号在A时钟域用一个D触发器暂存,然后打两拍传输到B时钟域。根据同步到B时钟域的使能信号data_en_b1,更新输出。

`timescale 1ns/1nsmodule mux(input 				clk_a	, input 				clk_b	,   input 				arstn	,input				brstn   ,input		[3:0]	data_in	,input               data_en ,output reg  [3:0] 	dataout
);reg [3:0] data_reg ; reg		  data_en_a, data_en_b0, data_en_b1 ; always @ (posedge clk_a or negedge arstn) begin if (~arstn) data_reg <= 0 ; else data_reg <= data_in ; endalways @ (posedge clk_a or negedge arstn) begin if (~arstn) data_en_a <= 0 ; else data_en_a <= data_en ; endalways @ (posedge clk_b or negedge brstn) begin if (~brstn) begin data_en_b0 <= 0 ; data_en_b1 <= 0 ; endelse begin data_en_b0 <= data_en_a ;data_en_b1 <= data_en_b0 ; endendalways @ (posedge clk_b or negedge brstn) begin if (~brstn) dataout <= 0 ; else dataout <= data_en_b1 ? data_reg : dataout ; endendmodule

相关文章:

  • Java 中的抽象类与接口:深入理解与应用
  • 配置端口安全示例
  • 探索无监督域自适应,释放语言模型的力量:基于检索增强的情境学习实现知识迁移...
  • MAC下加载动态库
  • VueUse工具库
  • linux命令积累
  • pytorch中的归一化:BatchNorm、LayerNorm 和 GroupNorm
  • Java毕业设计—vue+SpringBoot图书借阅管理系统
  • 【小沐学Python】Python实现TTS文本转语音(speech、pyttsx3、百度AI)
  • elasticsearch|大数据|elasticsearch的api部分实战操作以及用户和密码的管理
  • 道可云元宇宙每日资讯|青岛市元宇宙领域新产品推介暨产学研对接会举行
  • 我有才打造知识付费小程序
  • Bypass open_basedir
  • 力扣面试150题 | 搜索插入位置
  • 机器人集群控制算法概述
  • “大数据应用场景”之隔壁老王(连载四)
  • 【跃迁之路】【463天】刻意练习系列222(2018.05.14)
  • css布局,左右固定中间自适应实现
  • ERLANG 网工修炼笔记 ---- UDP
  • extract-text-webpack-plugin用法
  • Vue2 SSR 的优化之旅
  • WinRAR存在严重的安全漏洞影响5亿用户
  • 从0实现一个tiny react(三)生命周期
  • 给新手的新浪微博 SDK 集成教程【一】
  • 关键词挖掘技术哪家强(一)基于node.js技术开发一个关键字查询工具
  • 基于HAProxy的高性能缓存服务器nuster
  • 开源SQL-on-Hadoop系统一览
  • 码农张的Bug人生 - 初来乍到
  • 限制Java线程池运行线程以及等待线程数量的策略
  • 用mpvue开发微信小程序
  • 在weex里面使用chart图表
  • 中文输入法与React文本输入框的问题与解决方案
  • 深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署
  • 关于Kubernetes Dashboard漏洞CVE-2018-18264的修复公告
  • 进程与线程(三)——进程/线程间通信
  • 资深实践篇 | 基于Kubernetes 1.61的Kubernetes Scheduler 调度详解 ...
  • ​sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块​
  • # 利刃出鞘_Tomcat 核心原理解析(七)
  • #数学建模# 线性规划问题的Matlab求解
  • (06)Hive——正则表达式
  • (C语言版)链表(三)——实现双向链表创建、删除、插入、释放内存等简单操作...
  • (分类)KNN算法- 参数调优
  • (分享)自己整理的一些简单awk实用语句
  • (附源码)spring boot基于Java的电影院售票与管理系统毕业设计 011449
  • (强烈推荐)移动端音视频从零到上手(下)
  • (实测可用)(3)Git的使用——RT Thread Stdio添加的软件包,github与gitee冲突造成无法上传文件到gitee
  • (转)http-server应用
  • .apk文件,IIS不支持下载解决
  • .babyk勒索病毒解析:恶意更新如何威胁您的数据安全
  • .bat批处理出现中文乱码的情况
  • .FileZilla的使用和主动模式被动模式介绍
  • .gitignore不生效的解决方案
  • .JPG图片,各种压缩率下的文件尺寸
  • .NET “底层”异步编程模式——异步编程模型(Asynchronous Programming Model,APM)...
  • .NET BackgroundWorker