Design Compiler:Concurrent Clock and Data Optimization(CCD)的使用
相关阅读Design Compilerhttps://blog.csdn.net/weixin_45791458/category_12738116.html?spm1001.2014.3001.5482目录并行时钟与数据优化的原理向IC Compiler II传递CCD信息旧版行为新版行为默认并行时钟与数据优化的原理物理实现工具如IC Compiler II中存在一种被称为并行时钟与数据优化(Concurrent Clock and Data Optimization, CCD)的技术在Innovus中被称为Clock Concurrent Optimization, CCopt这种技术通过利用时钟路径上的有用偏移(Useful Skew)改善时序QoR(WNS/TNS)如图1所示。拓扑模式的Design Compiler NXT在2019版本将该技术拓展到综合阶段在更早的阶段尝试靠近设计的性能、功耗和面积(PPA)目标。图1 有用偏移通过使用CCD优化一些时序违例可以通过时钟偏移轻松修复从而减少数据路径优化的工作量使数据路径功耗降低适用于时序或功耗敏感设计如图2所示。图2 数据路径和时钟路径的优化对比可以设置2019版本引入的compile_enable_ccd变量为true默认值为false允许在增量综合需要使用compile_ultra -spg -incr命令过程中启用CCD优化此时将会有以下信息提示。Information: CCD enabled, user provided latencies will be adjusted with useful skew. (OPT-1723)由于时钟树综合前都是理想时钟所有的时钟延迟都通过set_clock_lantency命令指定在找到可供使用的有用偏移后综合工具将自动更新SDC约束图3展示了一个使用report_timing命令进行报告的例子。图3 发射时钟和捕获时钟的延迟差异其中同一个时钟到达不同触发器的时钟延迟不同是通过在引脚上设置时钟延迟实现的如下两条SDC命令所示。# 假设用户没有设置全局时钟延迟 set_clock_latency -0.1 -clock [get_clocks clk] [get_pins FF1/CLK] set_clock_latency 0.1 -clock [get_clocks clk] [get_pins FF2/CLK]与IC Compiler II一样在Design Compiler NXT也可以通过一些变量控制CCD优化的行为如表1所示。表1 CCD优化控制变量变量功能ccd_skip_path_groups默认值为空禁止特定时序组的CCD优化ccd_optimize_boundary_timing默认值为true禁止边界触发器的CCD优化ccd_ignore_scan_reset_for_boundary_identification默认值为false边界触发器识别时排除复位和扫描端口ccd_ignore_ports_for_boundary_identification默认值为空边界触发器识别时排除特定端口ccd_max_postpone默认值为0限制时钟延迟被增大的幅度ccd_max_prepone默认值为0限制时钟延迟被减小的幅度ccd_respect_cts_fixed_balance_pins默认值为false阻止调整那些cts_fixed_balance_pin属性为true的时钟引脚的时钟延迟ccd_hold_control_effort默认值为high维持保持时间不退化的努力级别向IC Compiler II传递CCD信息Design Compiler NXT在2019版本引入了一个新的变量ccd_write_script_sdc_add_offset_to_latency用于控制由于CCD优化而更新的SDC约束在输出时的行为下面将分别讨论。旧版行为当ccd_write_script_sdc_add_offset_to_latency变量设置为true时默认值为false引脚上设置的时钟延迟将包含原时钟延迟当使用write_icc2_files命令时set_clock_latency命令将被写入icc2_files/design.MCMM/scenario_scenario.tcl文件如下所示而derive_clock_balance_points命令将被写入icc2_files/design.cbp.tcl文件该命令可以将时钟延迟约束转换为时钟平衡点约束从而引导IC Compiler II进行优化。# icc2_files/design.MCMM/scenario_scenario.tcl set_clock_latency 1.0 [get_clocks clk] # 假设用户设置了全局时钟延迟 set_clock_latency 0.9 -clock [get_clocks clk] [get_pins FF1/CLK] set_clock_latency 1.1 -clock [get_clocks clk] [get_pins FF2/CLK]使用write_sdc或write_script命令与使用write_icc2_files命令的输出类似但此时用户需要显式在IC Compiler II中使用derive_clock_balance_points命令。新版行为默认旧版行为中引脚上设置的时钟延迟将包含原时钟延迟但这样会导致难以理解时钟延迟是由用户设置的还是由CCD优化产生的从2021版本开始当ccd_write_script_sdc_add_offset_to_latency变量设置为false时CCD优化生成的时钟偏移将通过set_clock_latency -offset命令表示-offset是一个非标准的SDC命令选项仅限工具内部使用绝不能由用户指定使用write_icc2_files命令时icc2_files/design.MCMM/scenario_scenario.tcl文件的内容如下所示icc2_files/design.cbp.tcl文件依然包含derive_clock_balance_points命令。# icc2_files/design.MCMM/scenario_scenario.tcl set_clock_latency 1.0 [get_clocks clk] # 假设用户设置了全局时钟延迟 set_clock_latency -offset -0.1 -clock [get_clocks clk] [get_pins FF1/CLK] set_clock_latency -offset 0.1 -clock [get_clocks clk] [get_pins FF2/CLK]但是需要注意的是write_sdc命令此时无法写出CCD优化生成的时钟偏移非标准只有write_script命令支持用户需要显式在IC Compiler II中使用derive_clock_balance_points命令。当使用report_clock -skew命令报告时钟偏移时也会在括号中特别注明CCD优化生成的时钟偏移如下所示。dcnxt_shell report_clock -skew **************************************** Report : clock_skew Design : TOP Version: U-2022.12-SP1 Date : Mon Dec 8 01:03:45 2025 **************************************** Rise Fall Min Rise Min fall Uncertainty Object Delay Delay Delay Delay Plus Minus --------------------------------------------------------------------------- clk 1.00 1.00 1.00 1.00 - - FF1/CLK -0.10 -0.10 -0.10 -0.10 - - (offset) FF2/CLK 0.10 0.10 0.10 0.10 - - (offset)

相关新闻

n8n生产环境部署实战:Docker Compose+PostgreSQL+反向代理完整指南

n8n生产环境部署实战:Docker Compose+PostgreSQL+反向代理完整指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/24 15:21:37 阅读更多 →
PHPStan 错误标识解析:nullCoalesce.unnecessary——发现并清除冗余的 `?? null` 与 `??= null`

PHPStan 错误标识解析:nullCoalesce.unnecessary——发现并清除冗余的 `?? null` 与 `??= null`

PHPStan 错误标识解析:nullCoalesce.unnecessary——发现并清除冗余的 ?? null 与 ?? null 【免费下载链接】phpstan PHP Static Analysis Tool - discover bugs in your code without running it! 项目地址: https://gitcode.com/gh_mirrors/ph/phpstan …

2026/9/24 15:21:37 阅读更多 →
在 VoltAgent 中接入 Amazon Bedrock:从凭证配置到多模型路由的完整实战指南

在 VoltAgent 中接入 Amazon Bedrock:从凭证配置到多模型路由的完整实战指南

人工智能AI AgentAgent 框架后端多智能体RAG工具调用Agent 记忆 【免费下载链接】voltagent AI Agent Engineering Platform built on an Open Source TypeScript AI Agent Framework 项目地址: https://gitcode.com/gh_mirrors/vo/voltagent 点击查看 免费下载 本…

2026/9/24 15:20:37 阅读更多 →

最新新闻

【Coze】【视频】儿童古风诗词工作流

【Coze】【视频】儿童古风诗词工作流

今天给大家演示一个儿童古风诗词的 Coze 工作流,它能够将用户输入的主题或提示词自动生成诗意化的视频文案,并进一步配合语音合成、字幕生成和背景音乐搜索,最终形成一段完整的古风视频内容。这个工作流特别适合儿童诗词启蒙教育、古诗词短视频创作等场景,让传统文化通过现…

2026/9/24 15:58:07 阅读更多 →
Linux下安装JDK11

Linux下安装JDK11

项目开发选择JDK版本生产环境只选 LTS(长期支持版);稳定梯队排序(企业落地成熟度,从最高到新):**JDK8 > JDK17 > JDK21 > JDK11 > JDK25**。对于免费社区维护早已结束的需要升级规避…

2026/9/24 15:58:07 阅读更多 →
Salt 官方 dsc_resource 执行模块实战:绕过 LCM 直接调用 PowerShell DSC 资源

Salt 官方 dsc_resource 执行模块实战:绕过 LCM 直接调用 PowerShell DSC 资源

运维配置管理后端 【免费下载链接】salt Software to automate the management and configuration of infrastructure and applications at scale. 项目地址: https://gitcode.com/gh_mirrors/sa/salt 点击查看 免费下载 导读 dsc_resource 是 Salt 在 3008.1 版本…

2026/9/24 15:58:07 阅读更多 →
Instant Vue 沙箱应用实战:基于 @instantdb/vue 的本地后端开发与实时功能全解析

Instant Vue 沙箱应用实战:基于 @instantdb/vue 的本地后端开发与实时功能全解析

Instant Vue 沙箱应用实战:基于 instantdb/vue 的本地后端开发与实时功能全解析 【免费下载链接】instant Instant is the best backend for AI-coded apps. You get auth, permissions, storage, presence, and streams — everything you need to ship apps your …

2026/9/24 15:58:07 阅读更多 →
RestSharp 认证机制完全指南:从 Basic、OAuth1 到 JWT 与自定义 Authenticator

RestSharp 认证机制完全指南:从 Basic、OAuth1 到 JWT 与自定义 Authenticator

后端API设计 【免费下载链接】RestSharp Simple REST and HTTP API Client for .NET 项目地址: https://gitcode.com/gh_mirrors/re/RestSharp 点击查看 免费下载 RestSharp 内置了一套分层清晰的认证体系,覆盖 HTTP Basic、OAuth1(含 xAuth…

2026/9/24 15:58:07 阅读更多 →
基于图像识别的跨平台 UI 自动化框架:Airtest 安装、Python API 与 CLI 实战指南

基于图像识别的跨平台 UI 自动化框架:Airtest 安装、Python API 与 CLI 实战指南

测试质量保障计算机视觉 【免费下载链接】Airtest UI Automation Framework for Games and Apps 项目地址: https://gitcode.com/gh_mirrors/ai/Airtest 点击查看 免费下载 Airtest 是网易开源的跨平台 UI 自动化框架,专为游戏和 App 设计,核…

2026/9/24 15:57:07 阅读更多 →

日新闻

基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程

基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程

简介:这是一套面向计算机、人工智能、自动化等专业学生与教师的毕业设计级项目资源,围绕YOLOv8实现渔船作业监控系统,可用于毕设、课程设计、大作业或项目立项演示。压缩包共97个文件,约24.21MB,以70个Python源码文件为…

2026/9/24 0:00:19 阅读更多 →
单细胞注释实战:基于Scanpy的标记基因与参考映射流程解析

单细胞注释实战:基于Scanpy的标记基因与参考映射流程解析

简介:一份基于单细胞RNA测序数据的细胞类型注释算法研究Python毕业设计源码,针对计算机相关专业正在做毕设或需要项目实战的学习者,可用于课程设计与期末大作业。项目代码完整、经导师指导评审通过,可直接运行,覆盖数据…

2026/9/24 0:00:19 阅读更多 →
C#源生成器实战:用增量生成器替代反射,告别AOT崩溃

C#源生成器实战:用增量生成器替代反射,告别AOT崩溃

第一次在项目里被反射卡住,是在一个老旧的WinForms模块里:几十个类依赖PropertyChanged通知,运行时反射读属性、发通知,每次启动慢半拍不说,一上.NET Native/AOT裁剪模式几乎全面崩盘。后来我把这段逻辑全部改成C#源生…

2026/9/24 0:00:19 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/24 14:34:13 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/24 9:10:42 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/24 14:33:56 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/24 12:50:34 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/24 14:33:48 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/24 12:49:17 阅读更多 →