CRG设计之复位

1. 前言

        CRG(Clock and Reset Generation,时钟复位生成模块) 模块扮演着关键角色。这个模块负责为整个系统提供稳定可靠的时钟信号,同时在系统上电或出现故障时生成复位信号,确保各个模块按预期运行。简而言之,CRG模块就像是SoC系统的心脏,提供着整个系统需要的时钟和复位信号。

        出于时钟复位结构规范设计和DFT可控的目的,一般会把相关电路放在一个集中的模块中管理,由专门的设计人员按需求进行设计与维护。对于时钟分频、MUX、切换、DFT测试结构埋入等等,均在模块内部实现。复位类似。

        涉及到的主要技术:自动解复位,复位顺序,复位切频,时钟门控,亚稳态的恢复,异步复位同步释放,毛刺清除的技术细节。不用公司,不同芯片,因为场景不同,对于CRG的要求也不尽相同,但是具体的技术原理大同小异。CRG中主要包含这些东西:

2. 复位基本概念

2.1 复位源

        复位的作用:使电路(主要是触发器)进入一个能稳定操作的确定状态,主要表现为:

  • 使电路从确定的初始状态下开始运行
  • 修复系统,实现故障自愈,使电路从错误状态回到可以控制的确定状态

        复位源:硬复位、上电复位、软复位、异常复位

        复位控制:系统、应用环境决定何时复位

2.2 复位结构

3. 复位类型

3.1 同步复位

        复位信号在时钟有效沿到来时生效。

优点:确保电路是同步的,触发器面积小,时钟可以滤除复位上的毛刺

缺点:依赖时钟,需要确保复位时钟必须有且保持足够时间,否则复位无法生效

3.2 异步复位

        不依赖时钟,立即生效。

异步复位撤离问题:

        recovery time:复位撤离时,复位信号从有效跳变为无效的(由1变为0)时刻与下一个时钟沿之间的时间,类似于同步电路中的setup time。

        remove time:复位撤离时,复位信号从有效跳变为无效时与上一个时钟沿之间的时间,类似于同步电路中的hold time。

        如图所示,rst_n为0表示复位,clk上升沿触发,rst_n从0到1的上升沿与时钟上升沿必须不小于recovery time才能保证寄存器恢复到正常状态。rst_n保持为0经过clk上升沿后仍需要保持一段时间,才能保证寄存器有效复位,防止亚稳态。

        解决办法:异步复位,同步释放

4. 异步复位同步撤离

4.1 为什么需要异步复位,同步撤离

        原因主要是:

  • 如果同步复位,同步释放,需要对复位信号进行同步,对于外部复位来讲容易形成锁死的问题。这是个鸡生蛋蛋生鸡的问题。复位信号用寄存器同步,然后用同步后的信号复位寄存器,我复位我自己?所以同步复位同步释放多用于软复位。
  • 如果异步复位,异步释放,异步的释放操作非常容易导致亚稳态。相当于没有复位
  • 如果同步复位,异步释放,emmm 感觉上一般没有人这么折腾自己。

        所以就剩下了一种办法,异步复位,同步释放。这个较为简单和典型。记住即可。硬复位信号都应该这么产生。

4.2 方案

4.3 毛刺问题

        当外部输入的异步信号产生毛刺时,任何满足触发器最小复位脉冲宽度的输入都有可能引起触发器复位

        解决办法:使用滤毛刺电路

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/357623.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

nginx无法启动,win10占用80端口 (注册表方式解决)

参考:https://blog.csdn.net/qq_39523111/article/details/128853509 改为4 重启后 不再占用 pid 不是4了 已经变为nginx了 改为0 没起作用

蓝桥杯2024/1/26笔记-----基于PCF8591的电压采集装置

功能实现要求: 每次建好工程文件夹,里边包含User(放工程文件,mian.c,可以在这里写如同我这个文章的文本文档)、Driver(存放底层文件如Led.c,Led.h等) 新建的工程先搭建框…

STM32——中断系统和外部中断EXTI

一、中断 1.1中断系统 中断系统是管理和执行中断的逻辑结构; 1.2中断 系统在执行主程序过程中,出现了特定的触发条件(触发源),系统停止执行当前程序,转而去执行中断程序,执行完毕后&#xf…

windows系统下启动redis命令

windows系统下启动redis命令 进入redis安装目录 cd redis 输入 redis-server.exe redis.windows.conf 启动redis命令,看是否成功 可能会启动失败,报[1696] 30 Jan 09:46:07.518 # Creating Server TCP listening socket 127.0.0.1:6379: bind: No erro…

云计算底层技术、磁盘技术揭秘虚拟化管理、公有云概述

查看本机是否具备虚拟化支持 硬件辅助虚拟化 处理器里打开 虚拟化Inter VT-x/EPT 或AMD-V 构建虚拟化平台工具软件包 yum 与 dnf Yum和DNF都是用于管理Linux系统中的软件包的工具,但它们在许多方面存在一些差异。以下是一些可能的区别: 依赖解…

运行VUE提示找不到模块validate-engines.js...

原来好好的,突然提示找不到模块validate-engines.js,CMD命令行输入npm -v不是内部或外部命令,node -v可以查看到版本号。 解决: 1. 卸载nodejs,重新下载安装文件:下载nodejs 2. 到目录:C:\Us…

成功解决AttributeError: ‘str‘ object has no attribute ‘decode‘

成功解决AttributeError: ‘str’ object has no attribute ‘decode’. 🌵文章目录🌵 🌳引言🌳🌳报错分析及解决方案🌳🌳参考文章🌳🌳结尾🌳 🌳引…

Chiplet,汽车“芯”风向

异构集成、高速互联、算力灵活可扩展正在成为新一轮汽车芯片竞争的焦点。尤其是随着以ChatGPT为代表的大数据、大模型产品在车端的落地,对于芯片的要求还在持续提升。 本周,12家日本汽车制造商(包括丰田、日产、本田等)、零部件制…

Redis 面试题 | 20.精选Redis高频面试题

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

三、防御保护---防火墙安全策略篇

三、防御保护---防火墙安全策略篇 一、什么是安全策略二、安全策略的组成1.匹配条件2.动作3.策略标识 三、防火墙的状态检测和会话表1.会话表2.状态检测技术 四、ASPF--隐形通道五、用户认证1.用户认证的分类2.认证方式3.认证策略4.认证域 一、什么是安全策略 传统的包过滤防火…

ORBSLAM3 运行流程 以rgbd_tum.cc函数为例进行分析

一、运行 使用的是D435i相机自己录制的数据。 运行命令: ./Examples/RGB-D/rgbd_tum /opt/vslam/ORB_SLAM3_detailed_comments-dense_map_new/Vocabulary/ORBvoc.txt /opt/vslam/ORB_SLAM3_detailed_comments-dense_map_new/Examples/RGB-D/TUM1.yaml /opt/vsl…

医美诊疗前后要注意的八大诀窍

【记者许家源/综合报导】 随着年龄的增长,许多人都想保持年轻美丽,因此寻求医美诊疗的帮助。然而,进入医美诊所后,你可能会发现,想要打肉毒、除毛等,实际花费和广告中的金额相差甚远。为了避免上当受骗&am…

C# 使用WMI监听进程的启动和关闭

写在前面 Windows Management Instrumentation(WMI)是用于管理基于 Windows 操作系统的数据和操作的基础结构。具体的API可以查看 WMI编程手册。 WMIC 是WMI的命令行管理工具,使用 WMIC,不但可以管理本地计算机,还可…

Layui + Echarts 5.0

Layui 怎么整合最新版本的 Echarts 5.0,Echarts 4 升级到 5后,有了很大改变,新的配置项4是无法兼容的,所以想要使用新的功能,都需要升级! 新建一个echarts.js文件 layui.define(function (exports) {// 这…

【教程】iOS如何抓取HTTP和HTTPS数据包经验分享

📱 在日常的App开发和研发调研中,对各类App进行深入的研究分析时,我们需要借助专业的抓包应用来协助工作。本文将介绍如何使用iOS手机抓包工具来获取HTTP和HTTPS数据包,并推荐一款实用的抓包应用——克魔助手,希望能够…

Spring: 实体类转换工具总结

文章目录 一、MapStruct1、介绍2、原理3、使用4、问题处理(1)IDEA编译报错:NullPointerException 一、MapStruct 1、介绍 MapStruct是一个实体类属性映射工具,通过注解的方式实现将一个实体类的属性值映射到另外一个实体类中。在…

前缀和入门(c++语言)

在讲算法之前,我们先来思考一个问题:小明有n个编号为1~n的篮子,每个篮子里装有ai个苹果,求从 x至y 的篮子里的苹果数量之和。 如果没学过前缀和的同学,可能会打出这样的代码: 这种算法要得出一个区间之和&…

隐马尔可夫模型系列——(六)总结与展望

一、总结: 隐马尔可夫模型(Hidden Markov Model,HMM)是一种用于建模序列数据的统计模型,在语音识别、自然语言处理、金融领域等多个领域都有广泛的应用。其优势包括可以处理动态序列数据、具有一定的鲁棒性、可以灵活…

阿里云服务器2024年最新优惠价格表,轻量应用服务器61元起,云服务器99元起

阿里云服务器2024年最新优惠价格是多少?不同时期阿里云服务器的租用价格不同,进入2024年,阿里云服务器的优惠价格也有所变动,共享型云服务器2核2G最低还是只要99元1年,独享型云服务器2核4G只要199元1年,而轻…

复杂SQL治理实践 | 京东物流技术团队

一、前言 软件在持续的开发和维护过程中,会不断添加新功能和修复旧的缺陷,这往往伴随着代码的快速增长和复杂性的提升。若代码库没有得到良好的管理和重构,就可能积累大量的技术债务,包括不一致的设计、冗余代码、过时的库和框架…