当前位置: 首页 > news >正文

write_sdc和write_script区别

文章目录

  • 一、set_disable_clock_gating_check
  • 二、write_sdc和write_script区别
    • 1. write_sdc
    • 2. write_script


一、set_disable_clock_gating_check

set_disable_clock_gating_check对指定的cell/pin/lib_cell/lib_pin设置是否进行clock gating的时序检查。
在这里插入图片描述

对于工具插入或者手动插入的ICG std cell,工具都会自动进行检查;
对于非ICG的std cell,例如与门,或门以及手动搭建的latch+与门的结构,可以通过该命令来禁止或者启动时钟的gate端的时序检查。

二、write_sdc和write_script区别

1. write_sdc

write_sdc命令所生成的sdc文件是一个工业标准文件,可以被第三方的软件工具所识别
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

代码如下(示例):

#希望写出的sdc中没有set_disable_clock_gating_check
write_sdc top.sdc
read_sdc top.sdc

2. write_script

write_script命令产生的是非标准sdc文件,对于set_disable_clock_gating_check等命令是Synopsys工具的命令,不属于标准sdc文件的范畴,建议使用write_script命令。因此write_script命令产生的非标准sdc文件只能用Synopsys公司的相关软件进行后端流程。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
由上可知,使用write_sdc命令时,set_disable_clock_gating_check等指令不会被成功写入sdc文件,如果要将它们写入sdc文件,可使用write_script替换write_sdc命令;同样的,在后端工具读取sdc文件时,如果含有set_disable_clock_gating_check等指令时使用read_sdc命令时可能会说没有这个指令,建议使用source命令。

代码如下(示例):

#希望写出的sdc中有set_disable_clock_gating_check
write_script -output sdc.tcl
source -echo -verbose sdc.tcl

需要注意的是,一般DC写出来sdc用的是write_sdc,因为不确定后端用的是不是synopsys的后端工具;而PT里面读sdc时一般会用source,保证design提供的手写的sdc里面的全部指令都能够生效。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【gcc】基于gpt和python的流程和延迟梯度分析
  • C语言典型例题31
  • EXPLAIN和ANALYZE
  • PostgreSQL JSON 字段操作指南
  • JavaWeb——CSS的使用
  • 【Python第三方库】Requests全面解析
  • C++ | Leetcode C++题解之第332题重新安排行程
  • 历史库,成本与性能如何兼得?| OceanBase应用实践
  • 【数据结构七夕专属版】单链表及单链表的实现【附源码和源码讲解】
  • 【SpringBoot系列】接口参数的默认值与必要性
  • 服务器HTTP响应头安全性优化与漏洞修复方案
  • Selenium + Python 自动化测试09(多窗口切换)
  • 白骑士的PyCharm教学实战项目篇 4.4 大数据处理与分析
  • CRC32 JAVA C#实现
  • 数据库国产化大趋势下,还需要学习Oracle吗?
  • Angular2开发踩坑系列-生产环境编译
  • Fabric架构演变之路
  • js学习笔记
  • magento 货币换算
  • PhantomJS 安装
  • 闭包--闭包之tab栏切换(四)
  • 大快搜索数据爬虫技术实例安装教学篇
  • 代理模式
  • 配置 PM2 实现代码自动发布
  • 前端面试之CSS3新特性
  • 融云开发漫谈:你是否了解Go语言并发编程的第一要义?
  • 使用API自动生成工具优化前端工作流
  • 思考 CSS 架构
  • puppet连载22:define用法
  • 机器人开始自主学习,是人类福祉,还是定时炸弹? ...
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • ​什么是bug?bug的源头在哪里?
  • ######## golang各章节终篇索引 ########
  • #{} 和 ${}区别
  • (1)bark-ml
  • (1/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (pytorch进阶之路)CLIP模型 实现图像多模态检索任务
  • (阿里巴巴 dubbo,有数据库,可执行 )dubbo zookeeper spring demo
  • (待修改)PyG安装步骤
  • (几何:六边形面积)编写程序,提示用户输入六边形的边长,然后显示它的面积。
  • (三)Kafka 监控之 Streams 监控(Streams Monitoring)和其他
  • (三)模仿学习-Action数据的模仿
  • (转)Sql Server 保留几位小数的两种做法
  • .ai域名是什么后缀?
  • .L0CK3D来袭:如何保护您的数据免受致命攻击
  • .NET “底层”异步编程模式——异步编程模型(Asynchronous Programming Model,APM)...
  • .NET/C# 获取一个正在运行的进程的命令行参数
  • .NET/C# 将一个命令行参数字符串转换为命令行参数数组 args
  • .netcore 如何获取系统中所有session_如何把百度推广中获取的线索(基木鱼,电话,百度商桥等)同步到企业微信或者企业CRM等企业营销系统中...
  • .net反编译的九款神器
  • [ C++ ] STL---stack与queue
  • [BZOJ1040][P2607][ZJOI2008]骑士[树形DP+基环树]
  • [C# WPF] DataGrid选中行或选中单元格的背景和字体颜色修改
  • [CISCN 2023 初赛]go_session
  • [C语言]——柔性数组