CDC问题的解决方案总结

2023-11-11

      CDC(不同时钟之间传数据)问题是ASIC/FPGA设计中最头疼的问题。CDC本身又分为同步时钟域和异步时钟域。这里要注意,同步时钟域是指时钟频率和相位具有一定关系的时钟域,并非一定只有频率和相位相同的时钟才是同步时钟域。异步时钟域的两个时钟则没有任何关系。这里假设数据由clk1传向clk2。

   单bit传输时,同步时钟域因为频率和相位关系都是已知的,可以推导的,所以不需要采用额外的硬件电路就可以解决CDC问题,只需要源数据在clk1端保持足够长时间即可。让其保持足够长时间有两个好处:即便出现亚稳态,也可以在两个clk2时钟周期后数据变得稳定下来,从而采到正确的结果。还可以防止低频采高频时,因为频率跟不上而导致数据丢失。

   单bit传输时,异步时钟域的传输就必须使用额外的电路模块(同步器)来保证数据正确的传输。最基本的同步器是双锁存结构的电平同步器,其余的同步器都是由其衍生而来。该同步器的基本原理,也是让数据至少在clk2的时钟下保存两个周期,消除亚稳态。当然同步器能解决异步时钟域的同步问题,自然也可以拿来解决同步时钟域的问题,毕竟同步时钟域更简单一些。

   实际的电路设计中,才不会管那么多细节,不管你是同步时钟域还是异步时钟域,只要是不同的时钟之间传数据,就加上同步器的结构,这当然是一种偷懒的解决办法。脉冲同步器就是这么一种万能的结构,对于单bit跨时钟域传输而言,使

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CDC问题的解决方案总结 的相关文章

  • (三)系统与架构级低功耗设计

    前面讲解了使用EDA工具 主要是power compiler 进行功耗分析的流程 这里我们将介绍在数字IC中进行低功耗设计的方法 同时也结合EDA工具 主要是Design Compiler 如何实现 我们的讲解的低功耗设计主要是自顶向下的设
  • Timing Arc

    Timing arc 时序弧 描述从一个pin到另一个pin之间的不可分割的路径时序信息 关键术语 source pin timing arc的起始点 以下图为例 CLK是a1和a8的source pin FF1 CK是a2的source
  • 【读书笔记】Principles and practices of interconnection networks 第一章笔记

    互联网络导论 互联网络的三个问题 数字系统的三个基本构件 数字系统由3个基本构件组成 逻辑 logic 内存 memory 通信 communication 本书关注点 通信 这本书所关注的是数字系统的通信 因为随着技术的进步 处理器与存储
  • 片上网络(1)概述

    前言 NoC On Chip Networks 片上网络 由于多核乃至众核时代的到来 用于连接它们的可扩展 低延迟 大带宽的通信结构变得至关重要 在核心较少时 总线Bus和矩阵 交叉开关Crossbar是主要的互联结构 总线可以提供较低的传
  • 浅谈时序:set_ouput_delay

    1 set output delay的本质 set output delay是对模块output信号在模块外部延迟的约束 本质上EDA工具会根据约束调整内部器件 UFF0 的类型 摆放位置以及组合逻辑 C1 以满足约束要求 即EDA工具保证
  • 低功耗技术(三)UPF的使用

    UPF是一个统一的 被广泛应用的低功耗实现标准 它用一些标准的语言描述用户的低功耗设计意图 一 UPF所需要的特殊单元库 1 Level Shifter和Isolation Cell 对于多电压设计 需要用Level shifter来实现不
  • 减少数据打拍翻转的低功耗设计方法

    在流水设计中 时常会遇到对某一路数据打多拍从而对齐另一路数据的场景 而除了最后一拍是真正需要的 中间的打拍从功耗上来看是有点浪费的 举个例子 对8bit in data打4拍 总共需要用到4个8bit寄存器 常规打拍方法传输4个数据 D0
  • 低功耗技术(一)动态功耗与静态功耗

    一 动态功耗 翻转功耗 Switching Power 翻转功耗是由充放电电容引起的动态功耗 其推导过程很简单 但是这个最终的结果却十分重要 1 switching power 和负载电容 电压 0到1变化事件的发生次数 时钟频率有关 2
  • 利用python摘取文本中所需信息,并保存为txt格式

    项目所需 IC设计中难免会处理大量文本信息 我就在项目中遇到了 对于一个几万行的解码模块 提取出其中的指令 如果不用脚本将会很麻烦 下面我将一个小小的例子分享给大家 刚学python 如果有更方便的实现方法清多多指教 目的 1 在几万行解码
  • A Simple RGB ISP

    设计一个最简单的RGB ISP需要多少个模块呢 答案可能是4个 分别是CFA CCM GAMMA和RGB2YUV 有了这4个模块 我们就可以将Sensor输出的RAW data转化为在显示器上可以观看的画面了 CFA Color Filte
  • (四)RTL级低功耗设计

    前面介绍了系统级的低功耗设计 换句话说就是在系统级降低功耗可以考虑的方面 系统级的低功耗设计 主要是由系统级设计 具有丰富经验的人员实现 虽然还轮不到我们设计 我们了解一下还是比较好的 我们前端设计人员的重点不在系统级设计上面 而是在RTL
  • 【IC设计】ZC706板卡点灯入门(含Verilog代码,xdc约束,实验截图)

    文章目录 假定已知的前置知识 需求 注意点 代码实现 顶层模块 led闪烁模块 xdc约束 这篇博客将针对AMD Zynq 7000 SoC ZC706 Evaluation Kit板卡 对应Vivado创建工程时FPGA型号 XC7Z04
  • 【CDC 系列】跨时钟域处理(一)同步器

    目录 同步器 两种同步场景 两级触发同步器 平均故障前时间 MTBF 三级触发同步器 同步来自发送时钟域的信号 将信号同步到接收时钟域 说明 同步器 在时钟域之间传递信号时 要问的一个重要问题是 我是否需要对从一个时钟域传递到另一个时钟域的
  • 关于“异步复位,同步复位,异步复位同步释放”的理解

    文章目录 1 异步复位 2 同步复位 3 异步复位同步释放 今天好好理一理异步复位 同步复位 以及亚稳态中的异步复位同步释放 1 异步复位 一般让复位信号低电平有效 复位信号不受时钟的控制 只要复位信号有效 那么电路就会复位 对应的写法为
  • PAD2Reg和Reg2PAD的时序分析

    PAD2Reg 1 Input delay约束从SOC PAD输入到第一级FF的data path 2 Input delay约束中的 clock指的是launch clock 它一般存在于Device中 对SOC来说是个虚拟时钟 如果发射
  • 集成电路模拟版图入门-版图基础学习笔记(六)

    今日接着给大家分享模拟版图入门学习笔 六 前几期的学习笔记如下 集成电路模拟版图入门 版图基础学习笔记 一 集成电路模拟版图入门 版图基础学习笔记 二 集成电路模拟版图入门 版图基础学习笔记 三 集成电路模拟版图入门 版图基础学习笔记 四
  • CDC问题的解决方案总结

    CDC 不同时钟之间传数据 问题是ASIC FPGA设计中最头疼的问题 CDC本身又分为同步时钟域和异步时钟域 这里要注意 同步时钟域是指时钟频率和相位具有一定关系的时钟域 并非一定只有频率和相位相同的时钟才是同步时钟域 异步时钟域的两个时
  • (一)低功耗设计目的与功耗的类型

    一 低功耗设计的目的 1 便携性设备等需求 电子产品在我们生活中扮演了极其重要的作用 便携性的电子设备便是其中一种 便携性设备需要电池供电 需要消耗电池的能量 在同等电能提供下 低功耗设计的产品就能够工作更长的时间 时间的就是生命 因此低功
  • verdi显示数据

    在波形数据上点右键 2 s complement 就是大家计算机课上学的 补码 1 s complement 是课上讲的 反码 signed magnitude 最高位是符号位 0 正数 1 负数 低位是绝对值 另外 ncverilog v
  • 集成电路模拟版图入门-版图基础学习笔记(一)

    IC模拟版图设计 了解版图 版图的定义 版图是在掩膜制造产品上实现 电路功能且满足电路功耗 性能等 从版图上减少工艺制造对电路的偏差 提高芯片的精准性 版图的意义 1 集成电路掩膜版图设计师实现集成电路制造所必不可少的设计环节 它不仅关系到

随机推荐

  • egg.js 路径别名配置 module-alias

    安装依赖 moudle alias npm install module alias save 配置package json文件 注 这里 root就是别名 后面引号内的内容就是原路径 moduleAliases root app app
  • N-Gram语言模型工具kenlm的详细安装教程

    本配置过程基于Linux系统 下载源代码 wget O https kheafield com code kenlm tar gz tar xz 编译 makdir kenlm build cd kenlm build cmake make
  • python 文件解压缩

    文章目录 python 文件解压缩 1 zip 解压 2 zip 压缩 3 tar 解压 4 tar 压缩 5 gz 解压 6 gz 压缩 7 tar gz tgz 解压 8 tar gz tgz 压缩 9 rar 压缩 10 rar 解压
  • JSON parse error: Invalid UTF-8 解决办法系列

    今天将旧工作空间的项目拷贝至新工作空间目录提示如下错误信息 Request exception org springframework http converter HttpMessageNotReadableException messa
  • vscode:如何在保存less文件时,自动生成对应的css文件,并指定css文件的保存路径

    一 下载安装Easy LESS 首先利用vscode的插件功能搜索并下载安装Easy LESS 点击Install 安装自动生成css文件的插件Easy LESS 二 指定css文件保存路径 点击设置 扩展设置 点击在setting jso
  • centOS7启用(运行)NetworkManager管理网络

    启用 NetworkManager 服务 在命令行下运行以下语句 chkconfig NetworkManager on 设置不用重新开机便可以应用它 service NetworkManager start 运行完语句便可在界面右上角看到
  • 小甲鱼python课后作业及答案001讲_小甲魚"用 Python 设计第一个游戏"课后作业(2019)...

    001 用 Python 设计第一个游戏 问答题 0 IDLE 的交互模式和编辑器模式有什么区别 答 交互模式是你问一个问题它回答一个答案 而编辑模式是一次可以问有很多个问题而且可以解释问题等 1 在课堂上敲过的代码中 除了 print 和
  • ModuleNotFoundError: No module named ‘termios‘

    问题描述 下面的图片出现ModuleNotFoundError No module named termios 等报错 解决方案 使用Unix系统 如果使用Windows系统该包是不支持的 该结论在官方文档上即有说明 https docs
  • ERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: NO)的解决办法

    ERROR 1045 28000 Access denied for user ODBC localhost using password NO CMD登录MySQL客户机的命令行程序时报异常 一般情况下 是因为直接输入命令mysql导致的
  • python科学计算库Sympy指南

    SymPy是Python的数学符号计算库 用它可以进行数学公式的符号推导 安装不介绍了 官方文档 这里还是建议使用anaconda from sympy import init printing use unicode True x y s
  • A Survey on Evaluation of Large Language Models

    这是LLM相关的系列文章 针对 A Survey on Evaluation of Large Language Models 的翻译 大型语言模型评价综述 摘要 1 引言 2 背景 2 1 大语言模型 2 2 AI模型评估 3 评估什么
  • 哈希表结构

    1 哈希值 1 概念 是一个十进制的整数 由系统随机给出 就是对象的地址值 但这是一个逻辑地址 是模拟出来的 不是数据实际存储的物理地址 2 获取哈希值 可通过Object类的 hasCode 方法获取哈希值 hasCode 源码如下 pu
  • End-to-End Object Detection with Transformers(论文解析)

    End to End Object Detection with Transformers 摘要 介绍 相关工作 2 1 集合预测 2 2 transformer和并行解码 2 3 目标检测 3 DETR模型 3 1 目标检测集设置预测损失
  • 水库大坝安全监测的主要项目

    由于大坝失事原因是多方面的 其表现形式和可能发生的部位因各坝具体条件而异 因此 在大坝安全监测系统的设计中 应根据坝型 坝体结构和地质条件等 选定观测项目 布设观测仪器 提出设计说明书和设计图纸 设计中考虑埋设或安装仪器的范围包括坝体 坝基
  • 建站之星网站 和服务器,建站之星服务器

    建站之星服务器 内容精选 换一换 云速建站企业版有独立的IP 其他版本没有 其他版本的数据分布在多台服务器上 登录云速建站控制台 在待查看帐号和密码的站点所在行 选择 更多 gt 多用户管理 弹出 多用户管理 对话框 云速建站控制台在 主账
  • 全志F1C100s使用记录:u-boot & linux & rootfs 编译与烧录测试(基于SD卡)

    文章目录 目的 基础准备 硬件准备 开发环境 制作toolchain和rootfs 设置编译工具链 u boot linux编译 u boot boot scr linux 测试程序 文件烧录 分区设置 分块烧录 上电测试 系统镜像 制作镜
  • constexpr的使用

    l 含义 1 常量表达式 指值不会改变并且在编译过程就能得到计算结果的表达式 如 const int max files 20 max files是常量表达式 const int limit max files 1 limit是常量表达式
  • el-table滚动加载、懒加载(自定义指令)

    我们在实际工作中会遇到这样的问题 应客户要求 某一个列表不允许分页 但是不分页的话 如果遇到大量的数据加载 不但后端响应速度变慢 前端的渲染效率也会降低 页面出现明显的卡顿 那如何解决这个问题呢 我们可以用模拟分页 当滚动条滚动到底部时再次
  • 04 C/C++ math库详解

    本文转载链接 https blog csdn net AnthongDai article details 78696573 04 math库的详解 1 cos 函数 cos example include
  • CDC问题的解决方案总结

    CDC 不同时钟之间传数据 问题是ASIC FPGA设计中最头疼的问题 CDC本身又分为同步时钟域和异步时钟域 这里要注意 同步时钟域是指时钟频率和相位具有一定关系的时钟域 并非一定只有频率和相位相同的时钟才是同步时钟域 异步时钟域的两个时