关于FPGA同一个工程中如何进行同步异步复位

同步复位:需要时钟的产生,在时钟的进行下进行复位;

异步复位:无需时钟,即可进行复位。

问题:

有些信号,异步复位,在时钟来之前就已经复位了,而同步复位有可能在时钟来时,复位信号已经无效了。

解决:

我们在需要在进行异步复位的时候就对同步复位,做好触发准备。

为了解决在同一个工程不同复位并存的问题,特做以下总结:

具体代码如下:

module  rst_syn(

input wire clk,

input wire i_rst_n,//异步复位信号输入

output wire O_rst_n//同步复位信号输出

);

reg rst_ff1;

reg rst_ff2;

reg rst_ff3;

always @(posedge clk or posedge i_rst_n)

begin

if(i_rst_n)

begin

rst_ff1 <= 1'b0;

rst_ff1 <= 1'b0;

rst_ff1 <= 1'b0;

end

else

begin

rst_ff1 <= 1'b1;

rst_ff2 <= rst_ff1;

rst_ff3 <= rst_ff2;

end

end

always @(posedge clk or posedge i_rst_n)

begin

if(i_rst_n)

O_rst_n <= 0;

Else

O_rst_n <= rst_ff3;

end

代码的主要内容:就在异步复位的时钟时,将o_rst_n <= 1;作为条件,在clk来时进行同步复位。

仿真结构图:

见附件

上图所示,实现了异步复位和同步复位并存。

备注:时钟是由PLL生成的,所以复位后几个时钟后方可产生时钟,产生时钟时同步复位信号已经无效,所以需要上述处理办法。

建议:一般在同一个工程里使用一个复位,如果时间不一致容易出问题。

转载于:https://blog.51cto.com/10937461/1873782

FPGA之异步时钟、同步时钟并存同步问题相关推荐

  1. 结绳法:文章详细解读(异步时钟设计的同步策略)(五)

    一.典型方法(双锁存器法)

  2. FPGA异步时钟设计中的同步策略

    1 引言    基于FPGA的数字系统设计中大都推荐采用同步时序的设计,也就是单时钟系统.但是实际的工程中,纯粹单时钟系统设计的情况很少,特别是设计模块与外围芯片的通信中,跨时钟域的情况经常不可避免. ...

  3. FPGA跨时钟域异步时钟设计的几种同步策略

    1 引言 基于FPGA的数字系统设计中大都推荐采用同步时序的设计,也就是单时钟系统.但是实际的工程中,纯粹单时钟系统设计的情况很少,特别是设计模块与外围芯片的通信中,跨时钟域的情况经常不可避免.如果对 ...

  4. FPGA学习笔记(八)同步/异步信号的打拍分析处理及亚稳态分析

    系列文章目录 一.FPGA学习笔记(一)入门背景.软件及时钟约束 二.FPGA学习笔记(二)Verilog语法初步学习(语法篇1) 三.FPGA学习笔记(三) 流水灯入门FPGA设计流程 四.FPGA ...

  5. STM32如何计算RTC时钟异步预分频和同步预分频

    实时时钟 (RTC) 是一个独立的 BCD 定时器/计数器,提供具有可编程闹钟中断功能的日历时钟/日历,可用于管理所有低功耗模式的自动唤醒单元.在配置RTC时钟时预分频器是关键指标,通过配置预分频器可 ...

  6. 相位同步、频率同步、同相位时钟、同源时钟、同时钟域时钟和异步时钟区别。

    相位同步.频率同步.同相位时钟.同源时钟.同时钟域时钟和异步时钟区别. 相位同步.频率同步 相位同步 频率同步 时间同步和频率同步区别: 参考链接 同相位时钟.同源时钟.同时钟域时钟和异步时钟 同相位 ...

  7. 关于FPGA异步时钟采样--结绳法的点点滴滴

    见过的最常见的异步时钟域处理方式,链接在此,大家好好学习! http://hujianjust.blog.163.com/blog/static/72455072201181635239760/ 转载 ...

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

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

  9. 第八章 对立统一——异步时钟同步化

    一.什么是对立统一 什么是CEO,就是首席执行官,是在一个企业中负责日常经营管理的最高级管理人员,又称作行政总裁,或最高执行长或大班. 那么,在FPGA系统,需不需要一个最高级别的执行官,来管理所有进 ...

最新文章

  1. 告诉你一种精简、优化代码的方式
  2. AI+视频分析:实时监测无处不在的安全风险
  3. 枚举Enum与注解Aunotation大杂烩
  4. protobuf 数据解析的2种方法
  5. 台达伺服驱动器说明书_干货:伺服调机实例讲解
  6. python字典合并_Python中如何实现两个字典合并
  7. Linux基本服务命令
  8. 通过CDN引入jQuery的几种方式
  9. 一分钟教会你怎么批量压缩图片大小,快进来学习
  10. 阿里巴巴国际站—产品运营工作台操作指南
  11. iOS11新特性,如何适配iOS11
  12. 转帖:CCIE一年后的心语
  13. 俞敏洪致青春三“想”:理想、梦想和思想(转载)
  14. JAVA集合05_Collection.toMap()应用、三个重载方法、解决重复key问题
  15. 计算机的中mb b单位的关系,计算机中容量单位B、KB、MB、GB和TB的关系.doc
  16. Hive——hive安装
  17. sqlserver:发送电子邮件(使用网易邮箱服务)
  18. 2018,这些重大科技值得期待
  19. dtoj#4224. 小L的占卜
  20. Python之12306余票查询

热门文章

  1. j2recover----最强大的jfs2文件恢复工具
  2. Learun FrameWork 强大工作流引擎,让OA更智能
  3. 大数据,人工智能网易百度这些公司都走在前列
  4. 聊聊jump consistent hash
  5. Android应用程序键盘(Keyboard)消息处理机制分析(20)
  6. POJ 2186 Tarjan
  7. Java中的Cookie(1)——基本操作
  8. Windows Azure AppFabric概述
  9. Windows性能分析器概述(一)
  10. 关于rabbitmq详细介绍