SDC命令详解:使用write_script命令进行输出 📅 发布时间:2026/7/5 20:32:23 👁️ 浏览次数: 相关阅读SDC命令详解https://blog.csdn.net/weixin_45791458/category_12931432.html?spm1001.2014.3001.5482目录指定所有设计指定不包含反标延迟检查命令指定不包含反标延迟命令指定不包含时钟门控信息指定完整库名指定不换行指定包含被断开的组合环指定文件名Multicorner-Multimode支持注意事项简单使用write_script命令用于将设计中的部分属性设置命令相对于设计读取时输出为脚本文件其实它并不是一个SDC命令归为此类只是为了方便管理这包括所有的SDC命令实际上所有的SDC命令都会设置相应属性例如set_ideal_network命令设置了ideal_network_source属性但不包括用户自定义属性。对于那些不能直接用特定命令设置的属性将统一使用set_attribute命令设置。本文针对Design Compiler但该命令同样存在于PrimeTime、IC Compiler等工具中它们大致相同略有差别。write_script命令的BNF范式有关BNF范式可以参考以往文章为write_script [-hierarchy] [-no_annotated_check] [-no_annotated_delay] [-no_cg] [-full_path_lib_names] [-nosplit] [-include loop_breaking] [-output file_name] //注该命令的选项和参数顺序任意指定所有设计-hierarchy选项指定为所有设计生成属性设置命令如果不使用该选项只会为当前设计生成属性设置命令。指定不包含反标延迟检查命令-no_annotated_check选项指定脚本文件中不包含set_annotated_check命令。对于含有大量反标信息的设计使用此选项可以避免生成过大的脚本文件。指定不包含反标延迟命令-set_annotated_delay选项指定脚本文件中不包含set_annotated_delay命令。对于含有大量反标信息的设计使用此选项可以避免生成过大的脚本文件。指定不包含时钟门控信息-no_cg选项指定脚本文件中不包含Power Compiler中有关时钟门控的属性设置通过set_attribute命令设置这些属性有助于门控时钟单元的识别。指定完整库名-full_path_lib_names选项指定逻辑库名以基本名作为前缀的方式写出。指定不换行-nosplit选项指定当字段长度超出列宽时不进行换行适合用diff比较或后处理。指定包含被断开的组合环-include loop_breaking选项指定为那些被断开的组合环输出set_disable_timing命令。指定文件名-output选项指定脚本文件的名称如果不使用该选项则默认只输出至标准输出。Multicorner-Multimode支持该命令仅对当前场景生效换句话说只能在将当前场景中的属性设置命令输出为脚本文件。关于场景的更多介绍可以参考下面的博客。Design Compiler多工艺角和多工作模式(Multicorner-Multimode, MCMM)https://blog.csdn.net/weixin_45791458/article/details/149578771?ops_request_misc%257B%2522request%255Fid%2522%253A%2522e3267dcc7cc26380435f53994dc8b9b8%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257Drequest_ide3267dcc7cc26380435f53994dc8b9b8biz_id0utm_mediumdistribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-149578771-null-null.nonecaseutm_termMCMMspm1018.2226.3001.4450注意事项1、某些属性比如隐式size_only属性或隐式dont_touch属性不支持输出某些命令由于未设置属性也不支持输出例如set_clock_gating_style、set_min_library等。2、对于Design Compiler而言输出的设置命令可能与执行时不完全一样这是因为综合过程中Design Compiler可能对设计进行解组、唯一化、重命名等优化操作严格意义说此时的设置命令对应的是综合后设计的属性而不是综合前的并且设置命令应该是参数展开的形式。简单使用假设执行了以下脚本文件但不进行综合。create_clock -period 10 [get_ports clk] set_clock_latency -source 0.5 [get_clocks clk] set_dont_touch [get_nets clk] set_attribute [get_nets in1] dont_touch true set_load [expr 0.50.5] out // 输出时是以展开的形式 set_input_delay 0.5 -clock [get_clocks clk] [get_ports in*] // 输出时是以展开的形式使用write_script命令后输出的内容如下所示。dcnxt_shell write_script Warning: Design top_module has 1 unresolved references. For more detailed information, use the link command. (UID-341) ################################################################### # Created by write_script -format dctcl on Wed Jul 30 18:50:23 2025 ################################################################### # Set the current_design # current_design top_module remove_wire_load_model set_dont_touch [get_nets in1] // 尽管使用set_attribute命令设置但输出set_dont_touch命令 set_dont_touch [get_nets clk] set_load -pin_load 1 [get_ports out] create_clock [get_ports 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]
佳佳的笔记1 要理解四种补偿拓扑(SS、SP、PS、PP)的特点与优势,需从结构特性、电气性能、适用场景三个维度分析,核心区别源于“输入侧输出侧”的串联/并联组合: 1. SS拓扑(串-串:输入串联输出串联࿰… 2026/7/5 20:32:23
基于微信小程序的小型购物平台的设计与实现 摘 要 近年来,移动购物发展迅猛,基于微信小程序的小型购物平台在电商领域崭露头角。本研究致力于打造一个功能齐全、体验优质的小型购物平台,旨在帮助小型商家拓宽销售途径,同时满足用户便捷购物的需求。在搭建平台时࿰… 2026/7/5 20:30:23
Daily Review java volatile关键字 控制三个线程按顺序交替输出数字123123… 同数据源,方法 a、b、c具有事务性,方法 d依次调用 a, b, c如何处理事务性 自注入-同 Service 内 Service public class BusinessService {// 关键点:注入自身的代理对象&am… 2026/7/5 20:28:20
LibFuzzer实战指南:从覆盖引导模糊测试到CVE漏洞挖掘 1. 项目概述:从模糊测试到CVE挖掘的实战路径“libfuzzer-workshop实战:手把手教你发现CVE级漏洞”,这个标题对于从事软件安全、漏洞研究或者对自动化测试感兴趣的朋友来说,无疑充满了吸引力。它指向的不仅仅是一个工具的使用教程&… 2026/7/5 21:56:43
Auto-Wing:基于LLM与Agent的智能自动化工作流设计与实践 1. 项目概述:当AI遇见自动化,Auto-Wing如何重塑工作流最近和几个做自动化测试和运维的朋友聊天,大家普遍有个感觉:传统的自动化脚本和工具,越来越“笨”了。写一个Selenium脚本去抓取网页数据,页面结构一变… 2026/7/5 21:56:43
计算机视觉中的几何变换:仿射、透视与单应性对比 1. 几何变换基础概念解析在计算机视觉和图像处理领域,几何变换是最基础也是最重要的技术之一。简单来说,几何变换就是通过数学方法改变图像中像素的空间位置关系,从而实现对图像的变形、校正或配准。这种技术在文档扫描、医学影像、自动驾驶、… 2026/7/5 21:54:43
语义分割网络全解析:从FCN到Transformer的演进与应用 1. 语义分割经典网络全景解析 在计算机视觉领域,语义分割技术已经走过了近十年的发展历程。作为一名长期从事计算机视觉研发的工程师,我见证了从最初的FCN到如今Transformer架构的演进全过程。本文将基于实际项目经验,深入剖析10个最具里程碑… 2026/7/5 21:54:43
Python抖音机器人技术解析:基于ADB与AI视觉的自动化互动系统架构设计与实现 Python抖音机器人技术解析:基于ADB与AI视觉的自动化互动系统架构设计与实现 【免费下载链接】Douyin-Bot 😍 Python 抖音机器人,论如何在抖音上找到漂亮小姐姐? 项目地址: https://gitcode.com/gh_mirrors/do/Douyin-Bot … 2026/7/5 21:54:43
YOLOv13中的SKAttention机制:多尺度目标检测新突破 1. SKAttention模块深度解析:选择性核注意力机制的理论与实践在目标检测领域,YOLO系列算法一直以其高效和准确著称。最新发布的YOLOv13引入了一个关键创新——SKAttention(选择性核注意力)模块,这个设计灵感源自人类视… 2026/7/5 21:52:42
6个月转型AI工程师:实战路径与核心技能 1. 项目概述:6个月转型AI工程师的可行性路径在2023年大模型技术爆发的背景下,AI工程师岗位需求同比增长217%(LinkedIn数据)。不同于传统算法工程师需要3-5年培养周期,现代AI工程师更侧重工程化落地能力。我在硅谷科技公… 2026/7/5 0:01:32
TPAFE0808与PIC18F87K22的多通道信号采集方案 1. 项目背景与核心需求在工业自动化、医疗设备和科研仪器等领域,多通道信号采集与系统监测是基础且关键的技术需求。传统方案往往面临通道数量不足、信号调理复杂、系统集成度低等问题。TPAFE0808作为一款8通道模拟前端芯片,与PIC18F87K22微控制器的组合… 2026/7/5 0:01:32
STC3115与PIC18LF26K80构建高精度电池管理系统 1. STC3115与PIC18LF26K80在电池管理系统中的核心价值在现代电子设备中,电池管理系统(BMS)的重要性不亚于设备的核心处理器。STC3115作为一款高精度电池电量监测IC,与PIC18LF26K80微控制器的组合,构成了一个既能精确监控又能智能管理的完整解… 2026/7/5 0:05:36
6个月转型AI工程师:实战路径与核心技能 1. 项目概述:6个月转型AI工程师的可行性路径在2023年大模型技术爆发的背景下,AI工程师岗位需求同比增长217%(LinkedIn数据)。不同于传统算法工程师需要3-5年培养周期,现代AI工程师更侧重工程化落地能力。我在硅谷科技公… 2026/7/5 0:01:32
TPAFE0808与PIC18F87K22的多通道信号采集方案 1. 项目背景与核心需求在工业自动化、医疗设备和科研仪器等领域,多通道信号采集与系统监测是基础且关键的技术需求。传统方案往往面临通道数量不足、信号调理复杂、系统集成度低等问题。TPAFE0808作为一款8通道模拟前端芯片,与PIC18F87K22微控制器的组合… 2026/7/5 0:01:32
STC3115与PIC18LF26K80构建高精度电池管理系统 1. STC3115与PIC18LF26K80在电池管理系统中的核心价值在现代电子设备中,电池管理系统(BMS)的重要性不亚于设备的核心处理器。STC3115作为一款高精度电池电量监测IC,与PIC18LF26K80微控制器的组合,构成了一个既能精确监控又能智能管理的完整解… 2026/7/5 0:05:36