新芯计划(0)同步设计——亚稳态

embedded/2024/11/15 5:01:23/

系列文章目录


文章目录

  • 系列文章目录
  • 前言
  • 一、亚稳态是什么
  • 二、亚稳态概率


前言

马上成为新ICer,利用空闲时间展开对自己的首轮培训,取名为”新芯计划“哈哈哈
这个系列主要给自己做个基础知识的巩固,本节的内容围绕亚稳态展开,如若有内容有误,欢迎和感谢各位指正
参考文章:MTBF 是如何指导跨时钟域设计的


一、亚稳态是什么

亚稳态发生于 :

  • 输入数据不满足时钟的建立/保持时间
  • 复位信号不满足时钟的Recovery/Removal时间
    在这里插入图片描述
    以不满足建立时间为例:
    在这里插入图片描述

经过寄存器延时 T c o T_{co} Tco,经过 T m e t T_{met} Tmet的振荡时间,此时间段内信号不稳定,在0和1之间变化,即为亚稳态,当振荡结束回到稳定状态0或者1,这是随机的。亚稳态往后传播可能导致系统电路瘫痪,影响恶劣,因此跨时钟的同步设计是非常重要的一环,跨时钟域所做的一切努力,只是为了防止亚稳态造成电路功能失败。

二、亚稳态概率

亚稳态发生概率通常使用MTBF(Mean Time Between Failure)值来衡量:
M T B F = e t M E T / T a u T o ∗ f C L K ∗ f D A T A MTBF = \frac{e^{t_{MET}/T_{au}}}{T_{o}*f_{CLK}*f_{DATA}} MTBF=TofCLKfDATAetMET/Tau
MTBF表示亚稳态导致电路功能失败的平均时间,其值越大,表示失败发生所需要的时间越长,那么电路就越稳定

式中,

  1. T a u T_{au} Tau T o T_{o} To为常数,由芯片制造工艺和工作环境决定
  2. t M E T t_{MET} tMET为等待亚稳态稳定的可用时间,其值越大表示亚稳态在此时间内越可能恢复到稳定状态,电路越可靠
  3. f C L K f_{CLK} fCLK表示接收时钟域的时钟频率
  4. f D A T A f_{DATA} fDATA表示待接收信号所在时钟域的时钟频率

MTBF 影响了哪些跨时钟域的设计细节 ?
参考文章:MTBF 是如何指导跨时钟域设计的

  • 源时钟域异步信号要寄存器输出

寄存器输出可以避免毛刺,毛刺意味着什么,异步信号的跳变。也就是说寄存器输出可以减少异步信号的跳变,即减小 fdata 的值,使 MTBF 变大,电路则更不容易失败。

  • 时钟频率越高时,同步器级联的寄存器数目越多

时钟频率越高,fclk 越大,MTBF 越小,电路越容易因为亚稳态失效。因此为了增大 MTBF 的值,可以通过增加级联的寄存器,从而增加 tMET 的值

  • 布局约束时,同步器级联的寄存器越近越好,尤其是当时钟频率很高时

当 FF1 与 FF2 越近,FF1 与 FF2 的连线越可能短,FF2 的 timing slack 则越大,tMET 的值便越大,因而 MTBF 越大。

同步化不仅要考虑打拍级数(一般>300MHz,打拍级数>5),还要考虑后端约束:
Xilinx 有两个专门的约束:

 1. ASYNC_REG="TRUE" :约束同步寄存器尽可能靠近2. SHREG_EXTRACT="NO" :约束同步寄存器不被综合成移位寄存器

http://www.ppmy.cn/embedded/31190.html

相关文章

AJ-Report开源数据大屏 verification;swagger-ui RCE漏洞复现

0x01 产品简介 AJ-Report是一个完全开源的BI平台,酷炫大屏展示,能随时随地掌控业务动态,让每个决策都有数据支撑。多数据源支持,内置mysql、elasticsearch、kudu等多种驱动,支持自定义数据集省去数据接口开发,支持17+种大屏组件,不会开发,照着设计稿也可以制作大屏。三…

ollama-python-Python快速部署Llama 3等大型语言模型最简单方法

ollama介绍 在本地启动并运行大型语言模型。运行Llama 3、Phi 3、Mistral、Gemma和其他型号。 Llama 3 Meta Llama 3 是 Meta Inc. 开发的一系列最先进的模型,提供8B和70B参数大小(预训练或指令调整)。 Llama 3 指令调整模型针对对话/聊天用…

ASP.NET网络在线考试系统

摘 要 随着计算机技术的发展和互联网时代的到来,人们已经进入了信息时代,也有人称为数字化时代。数在数字化的网络环境下,学生希望得到个性化的满足,根据自己的情况进行学习,同时也希望能够得到科学的评价&#xff0c…

【bbs02补】注册功能form组件-前端-后端-总结、登录功能(前端、后端、生成验证码)

1 注册功能 1.1 注册功能form组件 1.2 注册功能前端 1.3 注册功能后端 1.4 forms组件和前后端总结 2 登录功能 2.1 登录前端 2.2 生成验证码 1 注册功能 1.1 注册功能form组件 # 注册页面-用户名-密码-确认密码-邮箱-手机号-头像# form组件 可以帮助我们1 快速生成前端页面2 数…

完美解决AttributeError: module ‘backend_interagg‘ has no attribute ‘FigureCanvas‘

遇到这种错误通常是因为matplotlib的后端配置问题。在某些环境中,尤其是在某些特定的IDE或Jupyter Notebook环境中,可能会因为后端配置不正确而导致错误。错误信息提示 module backend_interagg has no attribute FigureCanvas 意味着当前matplotlib的后…

每天学习一个Linux命令之ldd

每天学习一个Linux命令之ldd 介绍 在使用Linux操作系统时,我们经常会遇到需要查看库文件依赖关系的情况。ldd是一个非常有用的命令,可以用来显示一个可执行文件或共享对象所需要的共享库列表。本文将详细介绍ldd命令的使用方法以及它的各种选项。 语法…

浙江省建设工程专业职务任职资格评价条件

浙江省建设工程专业工程师和高级工程师职务任职资格评价条件评审文件链接浙江省人力资源和社会保障厅 浙江省住房和城乡建设厅关于印发《浙江省建设工程专业工程师和高级工程师职务任职资格评价条件》的通知评审工作的通知浙江省专业技术人才管理服务平台类别基本条件业绩成果备…

STM32——串口

技术笔记! 1、数据通信的基本概念(了解) 2、串口(RS-232)(熟悉) 3、USART(通用同步异步接发器) 3.5 设置波特率 波特率计算公式:baud"fck" /(16∗USARTDIV)…