20211109:DC综合的一些简单概念理解记录
DC综合的一些简单概念总结
- 问题描述
- 分析与解答
- 每日总结
首先写在最前面,关于我的个人博客只是一个学习记录,方便我在需要回顾时可以更快的找出这些知识点来回顾,而不是单纯的为了记录而记录。各位共勉!
问题描述
- 动态、静态的功能验证和时序验证明辨。
- 建立时间和保持时间的明确定义以及如何去修正这些violation。
- 跨时钟域后对亚稳态的处理方法。
分析与解答
- 四种验证或分析的辨析
动态功能验证 | 最为常见的验证,输入激励根据输出进行验证功能是否正确 |
---|---|
动态时序验证 | 加入综合后的sdc文件来进行验证,也就是所谓的后仿,一般只验证主要功能 |
静态功能验证 | 前提是做完动态验证,也就是形式验证。 |
静态时序验证 | 所谓的STA,根据foundry厂的工艺库进行setup和hold的仿真,能仿真全部路径,速度快。 |
- 建立时间与保持时间的理解
这个概念实际上比较基础,不能说简单,很多人对其的概念并不到位,会导致后续一系列的概念出问题,我找到比较合适的解释是在菜鸟教程,贴出网址:setup_hold_time
主要说一下建立时间和保持时间的修的方法,这里不是说在版图工程师那边根据布局布线进行的预留进行修,而是说单纯我们设计端的问题,总结就三种方法,常见的两种先说一下,第一种,加BUF,这个乍看不太理解,加buf岂不是增加延迟了,而实际上BUF的延迟在低于几个G的时钟下的延迟是非常小的,但由于BUF阻断,导致了将线延迟拆解开来,再根据单位长度的寄生电容和电阻的数量不变的特性,这样的打断下,隔断下的寄生电容和电阻是相乘之后再乘一个系数来计算延迟的。因此打断可以得到更小的延迟。这样就留出了时间给setup时间。第二种,使用驱动能力更强的cell,根据器件库来选择,这个事一般版图工程师也会采用这个办法来修。这两种办法均是属于面积换速度的方法。这个就突出一个鱼和熊掌不可兼得。第三种方法,useful skew,简单来讲就是将我们capture register上时钟路径后延,给本来不满足的setup腾时间。总体来讲设计端常见的就这三种方法,第三种一般用不到,第一种和第二种非常常见,务必熟练掌握。 - 跨时钟域后对亚稳态的处理方法。
三种方法,第一种,使用异步FIFO,并且用格雷码进行编码。第二种,根据数据的方向,如果是慢时钟往快时钟传,那么打两拍即可。第三种,快传慢,那么需要一个握手信号来确认,让握手信号保持一段时间,确保慢时钟正确收到数据信号。
每日总结
- 最近的时间给的比较紧张,总之就是又到了忙的不可开交的时候了,尽量保持每日锻炼,每日学习记录吧。
- 怕死,先睡了,晚安自己。
20211109:DC综合的一些简单概念理解记录相关推荐
- 20211110:DC综合的一些简单概念总结(2)
DC综合的一些简单概念总结(2) 问题描述 分析与解答 每日总结 这些概念皆为一些必须理解的基础,经济基础决定上层建筑,学习也是同理.务必深化这些简单但是很基础的东西.做到别人问起时你可以侃侃而谈的效 ...
- DC综合的一些基本概念
转载:https://www.cnblogs.com/leaftime/archive/2013/08/15/3259156.html 1.1 什么是DC? DC(Design Compiler)是S ...
- DC综合简单总结(2)
DC综合简单总结(2) 建立时间和保持时间和数据输出延时时间 一.概念 建立时间和保持时间都是针对触发器的特性说的. 建立时间(Tsu:set up time) 是指在触发器的时钟信号上升沿到来以前, ...
- 傅里叶变换与拉普拉斯变换的概念理解
傅里叶变换与拉普拉斯变换的概念理解 傅里叶变换在物理学.数论.组合数学.信号处理.概率论.统计学.密码学.声学.光学.海洋学.结构动力学等领域都有着广泛的应用(例如在信号处理中,傅里叶变换的典型用途是 ...
- 如何简单地理解Python中的if __name__ == '__main__'
如何简单地理解Python中的if __name__ == '__main__' 文章目录: 一.摘要 二. 程序入口 虽然已经知道这个具体的用法,但是这篇文章有很多细节写的还是很好,决定转载一下,日 ...
- 深度学习中IU、IoU(Intersection over Union)的概念理解以及python程序实现
from: 深度学习中IU.IoU(Intersection over Union)的概念理解以及python程序实现 IoU(Intersection over Union) Intersectio ...
- 高性能计算中并行的概念理解
高性能计算中并行的概念理解 分类: 并行计算高性能计算HPC - General2011-11-09 22:54 932人阅读 评论(0) 收藏 举报 编译器编程parallel优化formsvect ...
- muck数据的概念理解
muck数据的概念理解 所谓muck表示"模仿","假的":也可翻译为mock-test. 很多项目案例的讲解中,经常会提及muck数据.muck对象.muck ...
- 简单地理解 Python 的装饰器
关于decorator说的比较透彻,作者是一位很善于讲课的人. 本文系转载,作者:0xFEE1C001 原文链接 www.lightxue.com/understand-python-decorato ...
最新文章
- 温州大学《深度学习》课程课件(七、卷积神经网络基础)
- linux centos安装git,centos下两种方法安装git–转载
- 重新想象 Windows 8 Store Apps (4) - 控件之提示控件: ProgressRing; 范围控件: ProgressBar, Slider...
- 关于分布式计算的一些概念
- iscsi-分区类型
- 决战双十一,促销海报设计模板,学习起来
- VScode上修改字体样式
- 达梦DISQL执行脚本方法总结
- 开始报名丨CCF C³-13@奇安信:透视俄乌网络战 —— 网络空间基础设施面临的安全对抗与制裁博弈...
- BIOS、UEFI及系统安装
- 怎样在 Linux 命令行中切换用户
- matlab中poly2sym什么意思,[转载]sym2poly poly2sym
- web UI自动化 python+selenium 爬取网易云排行榜歌曲列表
- mathematica-基于过程编程
- 你所不了解的TypeScript 类型编程
- 医院oracle数据使用价格,基于Oracle数据库的医院门诊收费管理系统的构建研究
- Swift5+WkWebView实现APP嵌套H5页面
- 什么情况下企业需要外部审计
- 数字微反射镜DMD详解
- EaselJS 事件
热门文章
- 53 岁张亚勤官宣:正式加入清华!
- 防止开源的加拉帕戈斯综合症,系统软件和开源都是手段不是目的
- 苹果或推中国特色版 iPhone;小米回应萌拍抄袭苹果事件;微软停止审核发布 Windows Phone 8.x | 极客头条...
- “Oracle 不会放弃 Java!”
- Web 组件势必取代前端?
- @程序员,你真得了解每天打交道的字节吗?
- 6大理由告诉你为什么这次区块链大会必须参加
- javaweb实训第五天下午——SpringMVC基础
- tomcat原理及作用,MySQL数据中有很多换行符和回车符
- java中如何使用jdk_java – 如何在JDK7中使用目录globbing