【芯片前端】关于set_input_delay/set_output_delay慢信号约束到快时钟的思考
前言
继续学习sdc的配置知识,这次思考的缘由是在写上一篇 【芯片前端】sdc学习日常——端口delay的正向设置与反向设置 中,写了这样一句话“还有一种方式,是把约束更恶劣的设置放在下面写,这样即使sigx被约束了两次,也会按更恶劣的配置进去。我理解更恶劣的应该是慢时钟的设置”。
但事实上写这句话时,我是非常困惑的,因为这和我之前工作里项目里的经验不一样的。我记得很清楚,之前的要求是把快时钟port的约束放在后面,这样当一个信号误被约束在两个port中时,令其约束在快时钟域的set_input_delay/set_output_delay中。在之前的实操中也一直是这样做的,当然我同时设置了-add并且进行细致的port review来保证没有错约和漏约的问题。
错约的后果
因此这次想讨论的问题就是,如果有错误约束,那么将慢信号约到快时钟域和快信号约到慢时钟域,哪一种会造成问题。
以set_input_delay示例,书中对其有明确的解释:
那么很明确的,input_delay = clk2Q + C1 + C2的时间,换句话说留给C1的时间就是clk_period - input_delay。通过dc timing report也可以印证此事:
从report的计算里也可以很明确的看出,计算时序时是通过endpoint的时钟clk_period - input_delay来计算的时序违规。
在实际的sdc约束中,一般会以对应port的clk_period * ratio来设置delay。那么如果将快信号约束到慢时钟,clk_period * ratio会偏大,等效于输入信号的时序预期更加恶劣;将慢信号约束到快时钟,clk_period * ratio会偏小,等效于输入信号的时序预期更加乐观。而在更加恶劣的预期下match了时序要求,在真实情况下也必然是match的。而在乐观预期下match时序了,在真实情况delay更大的场景下,就有可能出现时序问题。
所以是不是说,应该将慢时钟域的set_delay语句放在下面写才是合理的?
【芯片前端】关于set_input_delay/set_output_delay慢信号约束到快时钟的思考相关推荐
- set_input_delay/set_output_delay
input delay和output delay是在SDC中经常会遇到的问题,看似简单其实还有很多模棱两可的问题的.特别是为什要设置input delay和output delay?常用的30%和70 ...
- 2021年秋招面经分享·ZEKU / OPPO【芯片前端设计工程师】
前言 如果想参考本人背景情况的可见这篇概述 ============================ 正文开始 ============================== [时间线] 7.23 ze ...
- 【芯片前端】四年经验|芯片前端|IP设计岗|面试问题|总结分享
面试基本落下帷幕,对聊到的问题和知识点做一下总结.很多问题回答的不好,结束后也进一步的思考了很多又有了一些新的拓展,也一并总结在这里. 异步FIFO相关 1.异步FIFO的实现原理. 把关键知识点说清 ...
- 芯片前端设计面经笔经总结
芯片前端设计面经总结 总体来说,面试问的主要是项目+基础,不同公司侧重需求可能不同,基础主要靠看书总结,项目就老老实实把教研室项目吃透,是没有什么问题的. 前期准备 侧重学习了跨时钟域.低功耗的方法( ...
- 2020年数字设计/芯片前端面试经验-格科微+盛科科技+瑞晟+长江存储+兆芯
// 格科微电子 介绍项目,对笔试题提问,只支持线下,只在学校三方下来后发带薪酬的OFFER // 笔试题见 点|墨 // 盛科科技 只支持线下,苏州做交换机的企业,强制一周三天加班到20.30 盛科 ...
- XDC约束技巧之时钟篇
Xilinx©的新一代设计套件 Vivado 中引入了全新的约束文件 XDC,在很多规则和技巧上都跟上一代产品 ISE 中支持的 UCF 大不相同,给使用者带来许多额外挑战.Xilinx 工具专家告诉 ...
- 【Vivado使用误区与进阶】XDC约束技巧之时钟篇
[Vivado使用误区与进阶]XDC约束技巧之时钟篇 Xilinx 的新一代设计套件Vivado中引入了全新的约束文件XDC,在很多规则和技巧上都跟上一代产品ISE中支持的UCF大不相同,给使用者带来 ...
- 【芯片前端】关于门控电路和逻辑做在D端还是EN端的思考
最近在看<硬件架构的艺术--数字电路的设计方法与技术>,学习细化了很多之前模棱两可的知识点,偶尔来总结输出一下,今天就是这个主题--门控电路: 门控结构 相传在很多年前,时序逻辑里是没有门 ...
- 【芯片前端】Filelist -f/-F的文件解析方式探究
前言 测试所用的文件目录(列举关键文件): /home/xiaotu/my_work/uvm_demo -cfg/ -ctl/ -rtl/ -sim/-Makefile -tc/ -th/ -ver/ ...
最新文章
- 独家 | 手把手教你用Python构建你的第一个多标签图像分类模型(附案例)
- 转换营销阵地 特步的世界杯身影
- 洛谷 2680 (NOIp2015) 运输计划
- c语言 子进程,子Shell和子进程
- Introduction to the Optimizer --cbo
- python银行系统模拟演练_python多线程实现代码(模拟银行服务操作流程)
- 前端根据设计图精确开发 (攻具)
- “我的开源项目被大厂‘盗用’了!”
- python内置函数下划线_python(内置函数)
- oracle 数据库学习笔记
- php后台登录验证(含验证码)
- How to Become a Straight-A student
- 九宫格切图器(每天一个python小项目)
- CSSposition定位(relative、absolute、fixed、sticky)
- 使用KCP 加速游戏消息,让全球玩家流畅联网
- Win10应用程序无法正常启动 提示0xc0000142怎么解决?
- Python Day22
- Freemarker模板生成排版缩进问题
- wms仓储管理绩效评价指标的制定
- 将DAT格式视频文件转换成ASF和WMV格式视频文件
热门文章
- ! [rejected] master - master (fetch first) error: failed to push some refs to 'https://gith
- Istio - ingressgateway同时代理转发HTTP和TCP
- 行内元素与块级元素之间的区别及转化
- JAVA中Switch中使用Enum枚举类
- eclipse error pages红叉解决办法
- Git(Gitee)之 SSH环境部署,并使用 SSH 地址下载代码
- 2020-1-18学习总结
- Flutter获取设备信息(Android/IOS)
- Vagrant安装centos/7虚拟机
- 一题多解——求数组中每个元素出现的次数