1.CDC(clock domain crossing)

跨时钟域主要避免产生亚稳态。通常我们使用多级同步,异步FIFO,握手等同步设计来保证亚稳态信号不会在电路中无序的传播。

当然,直接通过RTL检查"跨时钟域的同步设计" 很难做到100%覆盖的检查。

(1)时钟偏斜(Clock Skew)

时钟偏斜指的是由于布线长度以及负载不同,同一个时钟信号到达两个不同寄存器之间的时间差值,skew的定义就是到达的最长路径与到达的最短路径差值。(Clock Skew)= Tc2d - Tc2s

(2)时钟抖动(Clock Jitter)

时钟抖动指的是两个时钟周期之间存在的差值,这个误差是在时钟发生器内部产生的,和晶振或者PLL内部电路有关系,布线对其没有影响。它是频率上的不确定。(Clock Jitter) = T2 - T1

时钟偏斜与时钟抖动的区别:

  • 时钟偏斜(Clock Skew)是由不同布线长度导致的不同路径的时钟上升沿到来的时延不同;它是相位上为不确定。
  • 时钟抖动(Clock Jitter)是在时钟发生器内部产生的,和晶振或者PLL内部电路有关,布线对其没有影响;它是频率上的不确定。

2.同步时钟、异步时钟

  • 同步时钟:当两个时钟间的相位是固定关系的,如同源时钟、分频时钟
  • 异步时钟:无法判定两个时钟间相位,两个来自不同晶振的时钟(不同源),一定是异步时钟
  • 同相位时钟:即相位相同,也就是说时钟的有效沿必须同步
  • 同时钟域时钟:既是同源时钟,还要求相位相同并且频率相同
  • 对于不同频率的时钟如50MHz,49MHz的两个时钟,不一定为异步时钟,即如果来自同一个源,那么即为同步时钟
  • 如果频率相同,没有固定的相位关系,不一定是同步时钟。如果相位不同,即使频率相同,仍然是异步时钟

3.建立时间与保持时间

建立时间(setup time):输入信号提前时钟上升沿 (假设上升沿有效)t时间到达芯片,这个t就是建立时间setup time

Setup time violation:建立时间在静态时序分析时必须满足

保持时间(hold time):指触发器的时钟信号上升沿到来以后,数据稳定不变的时间

建立时间或者保持时间不能满足,就会产生亚稳态,当发生亚稳态时,既无法预测该单元的输出电平,也无法预测何时才能稳定在某个正确的电平上。并且这种无用的输出电平可以沿信号通道上的各个触发器级联的方式传播下去。

4.亚稳态处理方式

  • 1.降低系统时钟(基于建立时间,适当降低系统频率来满足时序约束)
  • 2.用反应更快的FF
  • 3.引入同步机制,防止亚稳态传播
  • 4.改善时钟质量,用边沿变化快速的时钟信号

IC验证面试必考-跨时钟域相关推荐

  1. 数字 IC 笔试面试必考点(3)数字 IC 前端设计 + 后端实现

    前言         该资源是博主花了十多天自己整理的,IC 前端设计流程在文中给出,IC 后端设计流程除了在文中给出之外还附加了总共六十页的 PDF 详细流程文档,简直是满满的爱啊,完整展示了 IC ...

  2. 跨时钟域(CDC)优秀文章汇总-持续收集

    本文主要收集自己看过的一些优秀的CDC文章,进行分享会一直持续更新,其中序号2是我看过讲的比较全面的,其他各有不同的侧重 1 CDC与亚稳态问题_王见王见的博客-CSDN博客 2 cdc处理 个人觉得 ...

  3. 数字IC笔面常考,跨时钟域神器。——异步FIFO(简介及手撕代码)

    异步FIFO 写在前面的话 异步FIFO相关知识点 FIFO简介 FIFO结构 应用场景(来源小梅哥 <FPGA 系统设计与验证实战指南> 章节4.4) 相关参数 异步FIFO 内部组成 ...

  4. (79)FPGA如何处理跨时钟域问题-面试必问(三)(第16天)

    (79)FPGA如何处理跨时钟域问题-面试必问(三)(第16天) 1 文章目录 1)文章目录 2)FPGA初级课程介绍 3)FPGA初级课程架构 4)FPGA如何处理跨时钟域问题-面试必问(三)(第1 ...

  5. 异步fifo_数字IC校招基础知识点复习(五)——跨时钟域涉及part2(异步FIFO)

    1.跨时钟域设计(CDC)-part 2 在上一篇中我们主要关注的是单比特的控制信号,而对于多比特信号的跨时钟域传输则需要一些其他的手段. 首先需要明确的是,一般不采用对多比特信号中的每个比特单独使用 ...

  6. 数字IC设计——跨时钟域篇1(时钟域)

    数字IC设计--跨时钟域篇1 一.时钟域概要 1. CDC介绍 CDC(clock domain crossing)检查(跨时钟域的检查)是对电路设计中同步电路设计的检查.非同步时钟没有固定的相位关系 ...

  7. IC数字常见问题(五)跨时钟域的代码检查和跨时钟的综合处理

    跨时钟域的代码检查(spyglass) lint (在RTL阶段对代码的语法,可综合性,结构进行深入分析,并且对代码的错误提供完整.可调试的修改方案) SDC(帮助设计人员在设计的整个流程中生成,验证 ...

  8. 【数字IC基础】跨时钟域(CDC,Clock Domain Crossing)

    文章目录 一.什么是跨时钟域? 二.跨时钟域传输的问题? 2.1 亚稳态(单bit:两级D触发器(双DFF)) 2.2 数据收敛(多bit亚稳态)(格雷码编码.握手协议.异步FIFO.DMUX) 2. ...

  9. 数字IC笔试面试常考问题及答案

    来源:知乎 链接:https://zhuanlan.zhihu.com/p/261298869 基础知识 原理务必理解透彻. 锁存器的结构-DFF的结构-建立保持时间-亚稳态-STA-CDC. 亚稳态 ...

  10. FPGA之道(48)跨时钟域问题

    文章目录 前言 跨时钟域问题 什么是跨时钟域问题 解决跨时钟域问题的原理 两级采样法 为什么要对非本时钟域的信号用本时钟域的时钟进行采样呢? 为什么要采样两次呢? 握手法 对于时钟域A: 对于时钟域B ...

最新文章

  1. Linux的追逐,Windows的穷途恼指日可待
  2. 在床上玩手机,千万不能把手机放下!
  3. ZooKeeper編程02--多線程的分佈式鎖
  4. asp.net实现bt和pt—tracker request
  5. 南开大学滨海学院计算机科学系,【公示】南开大学滨海学院2019届“优秀毕业生”、“十佳毕业生” 评选结果公示...
  6. spark的三大数据结构
  7. flex中的架构,(举例UIComponent类的继承关系)
  8. java组合与继承始示例_Java示例中的组合
  9. java年龄不能超过120,systemd 代码行数超过 120 万,创始人贡献的 commits 最多
  10. C#基础知识之图解TCP IP》读书笔记
  11. 考研逻辑整理 - 性质判断及其变形推理
  12. 打开资源管理器显示该文件没有与之关联的程序来执行该操作......
  13. Collaborative Evolutionary Reinforcement Learning
  14. 机器学习实战(1)——概览
  15. 将 ChatGPT 引入你的飞书
  16. php判断是否节假日,php 排除周末与节假日程序实例代码
  17. WDK学习笔记_区块链项目实现_MAE
  18. 安徽工业大学计算机组成原理,安徽工业大学工商学院 计算机组成原理试卷12至13学年A卷...
  19. 使用wxPython开发带有GUI图形界面的Python程序简单实例
  20. Android之Notification的多种用法

热门文章

  1. 英文破折号(em dash)、连接号(en dash)与连字符(hyphen)的区别及各自用法是什么?...
  2. 下载安装Vue-CLI
  3. 关于 nor it's doXxx() equivalent is defined in action class 的问题解决办法
  4. 安智市场发展史:刷机产业链的”中间商”
  5. ACL访问控制(华为)
  6. 努比亚 Z5 mini刷机包 omni4.4.2修改V4.0 自用版 精简 MIUI特效
  7. 网络爬虫-爱给音效素材网js逆向思路
  8. css的盒子模型与定位机制解读随记
  9. 基于JAVA藏宝阁游戏交易系统计算机毕业设计源码+系统+lw文档+部署
  10. BZOJ 4399 魔法少女LJJ(线段树合并)