使用握手信号实现跨时钟域数据传输

题目描述
分别编写一个数据发送模块和一个数据接收模块,模块的时钟信号分别为clk_a,clk_b。两个时钟的频率不相同。数据发送模块循环发送0-7,在每个数据传输完成之后,间隔5个时钟,发送下一个数据。请在两个模块之间添加必要的握手信号,保证数据传输不丢失。

模块的接口信号图如下:

data_req和data_ack的作用说明:
data_req表示数据请求接受信号。当data_out发出时,该信号拉高,在确认数据被成功接收之前,保持为高,期间data应该保持不变,等待接收端接收数据。
当数据接收端检测到data_req为高,表示该时刻的信号data有效,保存数据,并拉高data_ack。
当数据发送端检测到data_ack,表示上一个发送的数据已经被接收。撤销data_req,然后可以改变数据data。等到下次发送时,再一次拉高data_req。

`timescale 1ns/1ns
module data_driver(input clk_a,input rst_n,input data_ack,output reg [3:0]data,output reg data_req);//异步

使用握手信号实现跨时钟域数据传输相关推荐

  1. 同步电路与跨时钟域电路设计1——单bit信号的跨时钟域传输(同步器)

    同步电路与全局异步电路 同步电路 同步电路的定义 即电路中的所有受时钟控制的单元(如触发器Flip Flop.寄存器Register),全部由一个统一的全局时钟控制. 例子: 两个触发器都受同一个时钟 ...

  2. 脉冲信号转电平信号(如何展宽一个信号,跨时钟域中快时域到慢时域)

    在跨时钟域处理单bit信号时,快时钟域的信号由于频率较快,信号的脉宽如果不足时,不能被慢时钟采样到,因此需要将快时钟产生的信号进行展宽,然后再进行打两拍来处理亚稳态. 设脉冲信号为pulse: 假设在 ...

  3. 跨时钟域信号传输(二)——数据信号篇

    一.使用握手信号进行跨时钟域的数据传输 下面叙述的意义相同:前级时钟=发送时钟: 后级时钟=采样时钟=接收时钟 使用握手信号传输数据不是我们的重点,重点是FIFO的设计.在使用握手信号进行数据传输之前 ...

  4. CDC:跨时钟域处理

    前言(还未整理好) CDC(clock domain crossing)检查(跨时钟域的检查)是对电路设计中同步电路设计的检查.非同步时钟没有固定的相位关系,这样Setup/Hold不满足而产生了亚稳 ...

  5. 基于FPGA的跨时钟域信号处理——专用握手信号

    转自:http://bbs.ednchina.com/BLOG_ARTICLE_253787.HTM 在逻辑设计领域,只涉及单个时钟域的设计并不多.尤其对于一些复杂的应用,FPGA往往需要和多个时钟域 ...

  6. 跨时钟域信号处理——专用握手信号

    下图是一个基本的握手通信方式.所谓握手,意即通信双方使用了专用控制信号进行状态指示.这个控制信号既有发送域给接收域的,也有接收域给发送域的,有别于前面的单向控制信号检测方式 使用握手协议方式处理跨时钟 ...

  7. 跨时钟域信号传输问题之握手同步

    所谓握手,即通信双方使用了专用控制信号进行状态指示,这个控制信号既有发送域给接受域的也有接收域给控制域的,有别于单向控制信号方式.        使用握手协议方式处理跨时钟域数据传输时,只需要对双方的 ...

  8. 亚稳态及信号跨时钟域处理

    文章目录 一.亚稳态简介 二.亚稳态窗口 三.平均无故障时间(MTBF) 四.亚稳态产生场景 五.解决亚稳态的技术 5.1 单比特信号跨时钟域 5.1.1 多级同步器 5.1.2 另一种多级同步器 5 ...

  9. 跨时钟域(CDC)设计方法之多bit信号篇(一)

    写在前面 本博客所有CDC相关的内容:跨时钟域(CDC)设计汇总 1.跨时钟域处理方法的分类 信号的跨时钟域传输可能会引入亚稳态问题,那么就需要想办法对其进行处理,从而降低亚稳态发生的概率(即提高MT ...

最新文章

  1. Android怎么隐藏前端,Android-Webview支持缩放并掩藏讨厌的缩放控制条
  2. 以一致的体验交付和管理云原生多集群应用
  3. sql server 2008学习1–系统数据库
  4. Java获取成员变量构造函数信息
  5. PCL中使用FLANN库(2)
  6. python实习生面试题_【实习】暑期实习之python笔试题(一)
  7. Spark Shuffle 中 JVM 内存使用及配置内幕详情
  8. windows10查看桌面壁纸路径
  9. 找工作时单位普遍要求 35 岁以下,35以上的都干嘛去了?
  10. 在PGConf.Asia-主论坛,纵览腾讯云PostgreSQL技术演进
  11. PhotoShop学习历程以及网站分享
  12. 深入浅出自然语义处理原理并构建自然语义处理(NLP)模型GPT2
  13. 出门在外如何保管毕业证原件_出门在外时如何控制HomeKit智能家居
  14. 8421码,5421码,2421码,余3码的区别
  15. 简单工厂(静态工厂)
  16. C#图片加载与内存释放
  17. Lexical Simplification with Pretrained Encoders 论文精读
  18. PageRank算法
  19. 搜狗浏览器或者360浏览器安装chrome 浏览器插件
  20. AR9344开发环境的搭建和编译固件

热门文章

  1. 韩顺平 Mysql数据库优化(一) 优化概述
  2. 关于keil编译cortex-m3纯汇编时为什么问题使用align地址问题
  3. 关于js获取radio和select的属性并控制
  4. jquery插件之thickbox
  5. html5 选择列表,Html5添加基于列表的选择美化插件教程
  6. 關於@Override
  7. oracle输出查询返回多行,ORA-01427:单行子查询返回多行
  8. 联发科mtk和骁龙730哪个好_不惧高通挑战!联发科G90芯片发布,强势干翻骁龙730...
  9. [蓝桥杯][算法训练VIP]方格取数(双线程dp)
  10. Bound Found POJ - 2566(尺取法)