ic基础|复位篇02:芯片中的“人生重来枪”!crg之复位系统

大家好,我是数字小熊饼干,一个练习时长两年半的ic打工人。我在两年前通过自学跨行社招加入了IC行业。现在我打算将这两年的工作经验和当初面试时最常问的一些问题进行总结,并通过汇总成文章的形式进行输出,相信无论你是在职的还是已经还准备入行,看过之后都会有有一些收获,如果看完后喜欢的话就请关注我吧~谢谢~

世界是混沌的,每一个人在出生之时都有着无数的未来可能性,并在环境,家人,朋友和自身等多种因素的影响之下会逐渐向着某种方向发展。而对于芯片来说,其中分布着相当多的触发器,当我们给芯片供电时,每个触发器中存储的是1还是0是不确定的,因此芯片的后续运行也有无数种可能,但是这显然不是我们想要的,芯片工程师并不是神,无法穷究每一种可能性下的发展方向,我们只需要芯片在上电初期有一个确定的初始状态,这样我们才能使得芯片按照我们设定的轨迹运行下去,这就可以通过芯片中的复位系统实现。

 在芯片设计中,复位系统是一个很重要的部分,我们随时可以通过复位来将数字电路中的触发器设置到一个确定的初始值上,从而使得状态机和其他的控制电路可以从一个已知的初始状态开始工作。

ic基础|复位篇∶关于同步复位和异步复位你不得不知道的二三事!

在我们前面的文章中(即上述蓝色连接的那篇文章)已经提过了复位可以分为同步复位和异步复位两种。在这两种复位中,由于同步复位会带来更多的资源消耗,以及挤占数据路径会导致更多的延时,从而对时序的满足造成负面影响等缺陷,我们的芯片中使用更多的还是异步复位。

在本期文章,我们将给出一个基础的时钟和复位产生模块中的复位系统,并会将其和时钟系统的配合进行简要描述。

一、复位系统

下图是一个简单的复位系统,下面我们将对其进行介绍:
在这里插入图片描述

1.1 复位的源头

对于芯片来说,其中的复位信号也有一个源头,那就是上电复位(POR)电路,POR的作用是在芯片上电时,由POR产生的复位信号始终有效,使得芯片内部的电路保持静态,当给芯片施加的电源电压达到了一个能保证芯片正常工作的电压之后,POR才会释放其内部复位信号,芯片内部才能够开始正常工作。

在上图中的por就是这个复位系统的上电复位模块,其中的rst_n_ext为外部输入的复位信号。外部的电路可以使用该信号对芯片的复位进行控制。

1.2 复位的同步

对于复位信号来说,其释放需要满足恢复时间(recovery time)和撤销时间(removal time),因此在我们的复位系统设计之中,需要对每个异步时钟区域独立地同步复位。如上图所示,其中对每个独立的时钟区域都使用了一个独立的复位同步器。

在这里我们还加入了两个信号rst_bypass_sel和rst_bypass_n,这两个信号是用于可测性设计(dft,design for test)的,由于芯片中的部分复位信号是受寄存器控制的,在scan shift过程中寄存器的值并不确定,因此可能导致复位错误触发,因此为了避免这种情况的发生,我们可以通过加入一个mux,通过rst_bypass_sel选择在scan shift过程中选择rst_bypass_n。

1.3 复位和时钟的配合

由于锁相环pll的输出稳定需要一定的时间,在pll没有锁定之前,应该保持复位信号始终有效,以避免由于时钟的不稳定导致芯片的运行出现问题,因此在上图中,我们首先将por释放的原始复位信号输入至pll,等待其稳定之后,即产生了pll的锁定信号pll_locked,后续逻辑部分的复位信号pll_rst_n才能被释放。

1.4 寄存器复位信号

和通过寄存器配置时钟使能信号类似,我们也可以通过寄存器配置模块的复位信号(如图中的reg_rst_n),以便需要的时候,我们能够通过软件控制的模块复位,将其变为一个确定的初始状态。

二、上电流程

下面结合一个实例来说明复位系统的使用:
在这里插入图片描述
先说明一下图上的各个信号:

  • VDDIO和VANA是上电管脚;
  • XSHUTDOWN是管脚输入的外部复位信号;
  • EXTCLK是管脚输入的外部参考钟;
    -SDA和SCL为I2C信号;

在了解了各个信号的内容后,我们进一步对该芯片的上电时序进行说明:

  1. 第一步先在VDDIO和VANA处给电,两个管脚给电顺序可变,只需要满足一定的时间要求即可;
  2. 在VDDIO和VANA两个管脚给电时,根据XSHUTDOWN的电平有以下两种情况:
    -电源VDDA和VDDIO接通时,如果XSHUTDOWN为低电平或关闭,则该芯片进入硬件待机模式(此时不能通过软件配置寄存器)。
    -如果电源接通(超过电压电平的90%, 即达到电压阈值)后将XSHUTDOWN变为高电平,则该芯片进入软件待机模式(即可通过软件配置寄存器)。
    -在这两种情况下,通过POR在合适的时机释放其内部复位信号,确保寄存器值正确初始化为其默认值。
  3. 在释放外部复位后,给入参考钟;
  4. 还需要等待一段时间(即图中的t4),以确保pll稳定,并进行一系列初始化操作等等;
  5. 等待了t4后,此时可以响应i2c命令,对芯片进行配置,例如释放各个模块的软件复位,进行正常工作下的初始化配置等等;
  6. 芯片进入正常工作模式。

三、总结

以上就是我们本篇文章的全部内容了,希望大家看了能有所收获吧~

最后,还提一个关于复位的小知识,由于带有复位引脚的触发器所占用的芯片面积比没有复位引脚的触发器略微大一些,因此,如果用于保存数据信号的触发器的初始值无关紧要(即该数据信号不会用于做控制逻辑驱动后续的电路,且在后续工作过程中会有正确的数据对其进行覆盖),那么,我们可以使用不带复位引脚的触发器,以降低芯片的面积。

如果你喜欢这篇文章的话,请关注我的公众号-熊熊的ic车间,里面还有ic设计和ic验证的学习资料和书籍等着你呢~欢迎您的关注!

在这里插入图片描述

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

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

相关文章

一篇文章带你搞懂C++引用(建议收藏)

引用 6.1 引用概念 引用不是新定义一个变量,而是给已存在变量取了一个别名,编译器不会为引用变量开辟内存空间,它和它引用的变量共用同一块内存空间。 比如:李逵,在家称为"铁牛",江湖上人称&quo…

查询SQL02:寻找用户推荐人

问题描述 找出那些 没有被 id 2 的客户 推荐 的客户的姓名。 以 任意顺序 返回结果表。 结果格式如下所示。 题目分析: 这题主要是要看这null值会不会用,如果说Java玩多了,你去写SQL时就会有问题。在SQL中判断是不是null值用的是is null或…

一文读懂AI时代GPU的内存新宠-HBM

一文读懂GPU最强辅助:HBM HBM,即高带宽内存,是一项领先的3D堆叠DRAM技术,专为高性能计算和图形处理单元(GPU)设计,满足其对内存带宽和容量的极致需求。该技术由AMD与海力士携手研发,…

聊聊二叉堆、红黑树、时间轮在定时任务中的应用

定时任务作为常用的一种调度方式,在各大系统得到了广泛的应用。 笔者也曾写过两篇关于定时任务框架介绍的文章: 《介绍一下,spring cloud下的另一种定时任务解决方案》《四叉堆在GO中的应用-定时任务timer》 之前都是以如何使用为主,这次从…

【UML用户指南】-10-对高级结构建模-高级类

目录 1、类目 2、高级类 3、可见性 4、实例范围和静态范围 5、抽象元素、叶子元素和多态性元素 6、多重性 7、属性 8、操作 9、模板类 10、标准元素 1、类目 类目 (classifier)是描述结构特征和行为特征的机制。类目包括类、关联、接口、数据类…

【YOLOv10改进[CONV]】使用DualConv二次创新C2f模块实现轻量化 + 含全部代码和详细修改方式 + 手撕结构图 + 全网首发

本文将使用DualConv二次创新C2f模块实现轻量化,助力YOLOv10目标检测效果的实践,文中含全部代码、详细修改方式以及手撕结构图。助您轻松理解改进的方法。 改进前和改进后的参数对比: 目录 一 DualConv 1 结合33卷积和11卷积核 2 DualConv 3 可视化 二 C2f_DualConv助…

Python 知识图谱补全,Knowledge Graph Completion,基于大模型的知识图谱补全,基于LLMs的KGC任务

今天讲一篇文章《Exploring Large Language Models for Knowledge Graph Completion》 ,这篇文章主题:基于大模型做知识图谱补全 1.文章主要思想: 本章描述知识图谱补全中的三个任务:三元组分类、关系预测和实体(链接)预测&…

2024Dragon Knight CTF复现web

穿梭隐藏的密钥 知识点:fuzz技术、ssrf、本地绕过、data伪协议、md4弱比较、数组绕过 首先看看页面的源代码,但是发现f12和鼠标右键都被禁用了 用ctrlu查看,发现一个可疑页面 访问看看,发现还是只有一张图,查看源代…

短视频的景别:成都鼎茂宏升文化传媒公司

短视频的景别:探索视觉艺术的魅力 在短视频的浩瀚海洋中,每一个画面都承载着独特的情感和信息。这些画面,通过不同的景别展现,构成了短视频的叙事基础和视觉美感。成都鼎茂宏升文化传媒公司旨在探讨短视频中景别的运用&#xff0…

揭露:抖音外卖区域代理骗局真相,绝不可错过!

自2023年11月23日抖音发布清退服务商的公告后,由官方认证的抖音外卖平台全国代理正式成为历史,而后,抖音外卖平台区域代理接棒,帮助抖音开拓本地生活市场。在此背景下,抖音外卖平台区域代理的申请人数与日俱增&#xf…

AIConnect赋能加持丨AI+DEPIN 共同推动AI发展的技术与运用峰会圆满落幕

6月6日,由AIConnect主办,JuCoin协办的「AIDePIN 共同推动AI发展的技术与应用」峰会在胡志明市圆满落幕!此次活动不仅是AIConnect生态在市场推广和技术应用方面的重要一步,也标志着JuCoin在推动AI与DePIN技术融合中的又一里程碑。 …

算法金 | 这次终于能把张量(Tensor)搞清楚了!

大侠幸会,在下全网同名[算法金] 0 基础转 AI 上岸,多个算法赛 Top [日更万日,让更多人享受智能乐趣] 1. 张量(Tensor)基础概念 1.1 张量的定义与重要性 张量是深度学习中用于表示数据的核心结构,它可以视…

K8s存储对象的使用

背景和概念 容器中的文件在磁盘上是临时存放的,这给在容器中运行较重要的应用带来一些问题: 当容器崩溃或停止时,此时容器状态未保存, 因此在容器生命周期内创建或修改的所有文件都将丢失。另外 在崩溃期间,kubelet 会…

javaWeb4 Maven

Maven-管理和构建java项目的工具 基于POM的概念 1.依赖管理:管理项目依赖的jar包 ,避免版本冲突 2.统一项目结构:比如统一eclipse IDEA等开发工具 3.项目构建:标准跨平台的自动化项目构建方式。有标准构建流程,能快速…

VS2019创建c++动态链接库dll与调用方法

VS2019创建c动态链接库dll与调用方法 1.点击文件-》新建-》项目,输入dll,选择具有导出项的(DLL)动态链接库 2.输入一个文件名:dll2 头文件.h 3.添加加减法函数: // 下列 ifdef 块是创建使从 DLL 导出更简单的 // 宏的标准方法。此 DLL 中的…

【高频】什么是索引的下推和覆盖

面试回答: 索引的下推是指数据库引擎在执行查询时,将过滤条件尽可能地应用到索引上,以减少需要检索的数据量,从而提高查询性能。这样可以减少数据库引擎从磁盘加载的数据量,提高查询效率。覆盖索引是指一个索引包含了…

C++青少年简明教程:C++函数

C青少年简明教程:C函数 C函数是一段可重复使用的代码,用于执行特定的任务,可以提高代码的可读性和可维护性。函数可以接受参数(输入)并返回一个值(输出),也可以没有参数和返回值。 …

范闲获取到庆帝与神庙的往来信件,用AES进行破解

关注微信公众号 数据分析螺丝钉 免费领取价值万元的python/java/商业分析/数据结构与算法学习资料 在《庆余年2》中,范闲与庆帝和神庙之间的权谋斗争愈演愈烈。一次偶然的机会,范闲从庆帝的密室中获取到几封与神庙往来的密信。然而,这封信件…

算法-分治策略

概念 分治算法(Divide and Conquer)是一种解决问题的策略,它将一个问题分解成若干个规模较小的相同问题,然后递归地解决这些子问题,最后合并子问题的解得到原问题的解。分治算法的基本思想是将复杂问题分解成若干个较…

电源变压器的作用和性能

电源变压器的主要作用是改变输入电压的大小,通常用于降低电压或升高电压,以便适应不同设备的需求。它们还可以提供隔离,使得输出电路与输入电路之间电气隔离,从而提高安全性。性能方面,电源变压器需要具有高效率、低温…