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

SDC命令详解:使用write_sdc命令进行输出

相关阅读

SDC命令详解https://blog.csdn.net/weixin_45791458/category_12931432.html?spm=1001.2014.3001.5482


        write_sdc命令用于将设计中的约束以Synopsys Design Constraints(SDC)格式输出为脚本文件(其实它并不是一个SDC命令,归为此类只是为了方便管理),在某些情况下,需要以文本形式导出一个设计的SDC约束(比如当Design Compiler配合非Synopsys的后端工具时)。

        本文针对Design Compiler,但该命令同样存在于PrimeTime、IC Compiler等工具中,它们大致相同,略有差别。write_sdc命令的BNF范式(有关BNF范式,可以参考以往文章)为:

write_sdcfile_name[-nosplit][-version sdc_version]//注:该命令的选项和参数顺序任意

指定文件名

        可以指定输出SDC文件的名称

指定不换行

        -nosplit选项指定不自动换行(字段不换行,适合用diff比较或后处理)。

指定SDC版本

        -version选项可以指定SDC版本,可以从1.2到目前最新的2.2(一条set sdc_version命令会被写入输出的文件中)。

注意事项

        1、该命令只能输出SDC命令,下面的博客给出了这些命令的集合,对于非SDC命令(例如set_dont_touch),不会包含在输出文件中。

SDC命令详解:SDC命令大全(持续更新)https://chenzhang.blog.csdn.net/article/details/134188262?spm=1001.2014.3001.5502       2、如果使用了新版本的SDC命令,但使用-version选项指定了老版本,则这些命令不会包含在输出文件中。

        3、对于Design Compiler而言,输出的SDC命令可能与执行时不完全一样,这是因为综合过程中Design Compiler可能对设计进行解组、唯一化、重命名等优化操作(严格意义说,此时的SDC命令指的是应用于综合后设计的约束,而不是综合前的),并且SDC命令应该是参数展开的形式。 

简单使用

        假设使用了以下SDC文件进行约束,但不进行综合。

create_clock -period 10 [get_ports clk]
set_clock_latency -source 0.5  [get_clocks clk]
set_dont_touch [get_ports clk] // 非SDC命令
set_load [expr 0.5+0.5] out1 // 输出时是以展开的形式
set_input_delay 0.5 -clock [get_clocks clk] [get_ports in*] // 输出时是以展开的形式

        使用write_sdc命令后,输出的SDC文件内容如下所示。

dc_shell> write_sdc
#################################################################### Created by write_sdc on Wed Jun 25 21:07:40 2025###################################################################
set sdc_version 2.1set_load -pin_load 1 [get_ports out1]
create_clock -name clk  -period 10  -waveform {0 5}
set_clock_latency -source 0.5  [get_clocks clk]
set_input_delay -clock clk  0.5  [get_ports in1]
set_input_delay -clock clk  0.5  [get_ports in2]
set_input_delay -clock clk  0.5  [get_ports in3]

相关文章:

  • 网站上的图分辨率做多少上海企业网站seo
  • 地推拉新app推广接单平台免费萌新seo
  • 西安mg动画制作网站建设互联网营销专业
  • 如何对网站的图片做cdn下载百度官方网站
  • 网站建设合同图片谷歌商店下载安装
  • 淮南做网站的公司百度总部电话
  • 高等数学》(同济大学·第7版)第七章 微分方程 第五节可降阶的高阶微分方程
  • Feign源码解析:动态代理与HTTP请求全流程
  • Azure虚拟机添加磁盘
  • 企业级RAG系统架构设计与实现指南(Java技术栈)
  • 深入学习入门--(一)前备知识
  • Java基础黑马进阶综合考试
  • 网络安全漏洞扫描是什么?如何识别目标进行扫描?
  • 理解epoll:水平触发与边沿触发
  • (C++)vector数组相关基础用法(C++教程)(STL库基础教程)
  • 《从0到1:C/C++音视频开发自学指南》
  • 多个 Job 并发运行时共享配置文件导致上下文污染,固化 Jenkins Job 上下文
  • 家用存储怎么选?NAS vS 硬盘柜,备份游戏素材与照片谁更合适?
  • vue2 使用el-form中el-form-item单独绑定rules不生效问题
  • 51c嵌入式~CAN~合集2
  • 学习日记-spring-day37-6.25
  • C++11原子操作:从入门到精通
  • 西游记12:观世音菩萨送袈裟和禅杖;菩萨现身,教导大乘佛法三藏;御弟圣僧;宁恋本乡一捻(niǎn)土,莫爱他乡万两金。
  • 基于Hp感染的慢性胃炎居家管理小程序的设计与实现(消息震动)
  • DuDuTalk | 武汉赛思云科技有限公司通过武汉市人工智能企业认定!
  • 掌握CIS基准合规性:通过自动化简化网络安全