clk_a 周期为10ns

clk_b 周期为34ns

代码:

module pulse(input clk_a,input clk_b,input signal_a,output reg signal_b);reg [4:0] signal_a_widen_maker = 0;reg signal_a_widen;always @(posedge clk_a)if(signal_a)   signal_a_widen_maker  [0]<=   1;else beginsignal_a_widen_maker    = signal_a_widen_maker<<1;if(signal_a_widen_maker[4] == 1)signal_a_widen_maker<=0;end    always @(posedge clk_a)if((|signal_a_widen_maker)||signal_a)signal_a_widen  <=  1;else signal_a_widen <=   0;reg [1:0]   signal_b_reg;always @(posedge clk_b)   begin signal_b_reg[0]   <=  signal_a_widen;signal_b_reg[1]  <=  signal_b_reg[0];endalways @(posedge  clk_b)    if(signal_b_reg == 2'b01)signal_b    <=  1;else signal_b <=  0;endmodule 

testbench:

module pulse(input clk_a,input clk_b,input signal_a,output reg signal_b);reg [4:0] signal_a_widen_maker = 0;reg signal_a_widen;always @(posedge clk_a)if(signal_a)   signal_a_widen_maker  [0]<=   1;else beginsignal_a_widen_maker    = signal_a_widen_maker<<1;if(signal_a_widen_maker[4] == 1)signal_a_widen_maker<=0;end    always @(posedge clk_a)if((|signal_a_widen_maker)||signal_a)signal_a_widen  <=  1;else signal_a_widen <=   0;reg [1:0]   signal_b_reg;always @(posedge clk_b)   begin signal_b_reg[0]   <=  signal_a_widen;signal_b_reg[1]  <=  signal_b_reg[0];endalways @(posedge  clk_b)    if(signal_b_reg == 2'b01)signal_b    <=  1;else signal_b <=  0;endmodule 

[FPGA][基础模块]跨时钟域传播脉冲信号相关推荐

  1. 【数字IC基础】跨时钟域(CDC,Clock Domain Crossing)

    文章目录 一.什么是跨时钟域? 二.跨时钟域传输的问题? 2.1 亚稳态(单bit:两级D触发器(双DFF)) 2.2 数据收敛(多bit亚稳态)(格雷码编码.握手协议.异步FIFO.DMUX) 2. ...

  2. FPGA笔记2——跨时钟域同步信号方法

    亚稳态 触发器是FPGA设计中最常用的基本器件.触发器工作过程中存在数据的建立(setup)和保持(hold)时间.对于使用上升沿触发的触发器来说,建立时间就是在时钟上升沿到来之前,触发器数据端数据保 ...

  3. FPGA跨时钟域处理的三大方法

    跨时钟域处理是FPGA设计中经常遇到的问题,而如何处理好跨时钟域间的数据,可以说是每个FPGA初学者的必修课.如果是还在校的本科生,跨时钟域处理也是面试中经常常被问到的一个问题. 在本篇文章中,主要介 ...

  4. FPGA设计中,跨时钟域问题的处理

    FPGA设计中,跨时钟域问题的处理 今天和大侠简单聊一聊FPGA设计中跨时钟域问题的处理,话不多说,上货. 跨时钟域处理是FPGA设计中经常遇到的问题,而如何处理好跨时钟域间的数据,可以说是每个FPG ...

  5. 跨时钟域的数据同步,亚稳态,和相关电路设计方法

    目录 同步时钟: 亚稳态: 双锁存器同步电路 单bit信号跨时钟域传播 边沿检测同步电路(慢时钟到快时钟) 脉冲同步器电路(快时钟到慢时钟) 结绳法1 结绳法2 结绳法3 多bit信号跨时钟域传播 多 ...

  6. 单bit控制信号的跨时钟域传输快到慢-----结绳法

    本文对读到的两篇文章进行补充 文1:介绍了慢到快,快到慢的方法汇总FPGA--浅谈跨时钟域_three_yanlili的博客-CSDN博客_跨时钟域本篇文章仅用于个人学习,如有雷同,我抄他的.http ...

  7. 解决跨时钟域问题的三大方法

    跨时钟域处理是FPGA设计中经常遇到的问题,而如何处理好跨时钟域间的数据,可以说是每个FPGA初学者的必修课.如果是还是在校的学生,跨时钟域处理也是面试中经常常被问到的一个问题. 在本篇文章中,主要介 ...

  8. FPGA基础知识极简教程(7)详解亚稳态与跨时钟域传输

    博文目录 写在前面 正文 FPGA或ASIC中的传播延迟 建立和保持时间是什么? 建立和保持时间与传播延迟和时钟频率有何关系? 如果违反建立和保持时间会发生什么? FPGA中的亚稳定是什么? 亚稳态何 ...

  9. FPGA跨时钟域设计的一点总结

    1. 亚稳态的概念说明 是指触发器无法在某个规定时间段内达到一个可确认的状态.当一个触发器进入亚稳态引时,既无法预测该单元的输出电平,也无法预测何时输出才能稳定在某个正确的电平上.在这个稳定期间,触发 ...

最新文章

  1. ud分区删除工具_如何用DiskGenius对硬盘进行分区
  2. python文件中内容转换为字典
  3. java中迭代方式_JAVA中LIST迭代的方式汇总
  4. .net 怎么在控制器action中返回一个试图_一个view事件分发,面试官6连问直击灵魂,我被虐的体无完肤...
  5. TypeScript 里 object 和 Object 的区别
  6. sketch钢笔工具_Sketch和Figma,不同的工具等于不同的结果
  7. P2157 [SDOI2009]学校食堂
  8. 突然听到一只公鸡的局域网聊天软件
  9. eclispe中相关操作
  10. JAVA来读取大文本文件
  11. python转义字符表
  12. ITIL4实用指南 | ITSM的未来属于敏捷
  13. 批处理html转excel,批量Excel转TXT工具(Batch Excel to Text Converter)v2020.12.1118官方免费版...
  14. 基于STM32的智能电子药盒设计
  15. 业务侧-到底应该怎么做A/Btest
  16. Java:从1循环到150,在每行打印一个值,另外在每个3的倍数行上打印出foo“,在每个5的倍数行上打印“biz“,在每个7的倍数行上打印“baz“
  17. CSS---足球场的实现,纪念2022世界杯(:root的使用)
  18. 快来新宇宙:物联网与元宇宙融合发展
  19. 利用albert模型提取文本标签
  20. ubuntu下安装(二)印象笔记(中国版而不是国际版)

热门文章

  1. java 解析json字符串
  2. isis和ospf比较
  3. 如何将PDF转成PPT?为什么转换后不能编辑
  4. 阿里巴巴集团去IOE运动的思考与总结
  5. UE4 更改工程文件名字的方法
  6. 精准营销的神器:小蜜蜂获客系统助你成功
  7. python实现千牛客服自动回复语_千牛自动回复语大全
  8. 订单系统设计 —— 数据同步与监控
  9. 计算机程序员简历基本技能,应聘程序员的十大必备技能
  10. Asp.Net Mvc基于Fleck开发的多人网页版即时聊天室