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

DC逻辑综合及优化

结构级优化

设计结构的选择

在DW中选择最合适的结构或算法实现电路功能

数据通路的优化

  • 选择CSA等算法优化数据通路设计
  • 共享共同的子表达式(算术电路)
  • 减少比较器数目

资源共享

算术运算资源共享的默认策略是约束驱动,可以使用DC的面积优化策略:

set hlo_resource_allocation area

set hlo_resource_allocation none(不使用资源共享)此时需要在RTL代码中写出相应代码

一般让工具自行综合进行资源共享

重新排序运算符号

HDL编译器从左到右解析表达式,括号的优先级更高

为了使电路的延迟减少,可以改变表达式的次序或用括号强制电路使用不同的拓扑结构

eg. 将 SUM <= A*B+C*D+E+F+G 改为 SUM <= E+F+G+C*D+A*BSUM <= A*B+(C*D+((E+F)+G))


逻辑级优化

结构优化 → 可用于速度和面积优化

结构优化是DC默认的逻辑级优化策略,在电路中加入中间变量和逻辑结构,寻找设计中的共用子表达式(门级电路)

与约束有关:可能改变时序路径延时

逻辑级结构优化不会改变设计层次,命令:

set_structure true

展平优化 → 主要用于速度优化,面积会很大

展平优化将组合逻辑路径减少为两级(减去中间结构),变为乘积之和(sum of products,SOP)的电路,即先与后或,命令:

set_flatten true -effort low|medium|high

与约束无关:拓扑不变只进行布尔化简


门级优化

延迟优化

映射组合功能与时序功能

组合功能映射:选择满足时间与面积要求的组合单元进行设计。

  • 对每个逻辑表达式进行多个变形,优化时选择一个能够达到要求的逻辑表达式。
  • 当器件有多个驱动,且驱动中有关键路径,那么DC就会把关键路径分割出来以达到时序要求(面积换速度)

时序功能映射:选择满足时间与面积要求的时序单元进行设计,为了提高速度和减少面积DC会选择较复杂的时序单元。

DFT:当设计中有DFT,插入扫描寄存器时为保证时序要求,编译时加上扫描寄存器选项看是否违规。

DRC修整(尝试在不影响面积和速度的情况下修整)

映射时DC检查电路是否满足设计规则的约束,若有违反DC会通过插入缓冲器(buffers)和修改单元的驱动能力(resizes cells)进行设计规则修整。

以时序为代价的DRC修整

面积优化(if加上了面积优化,在最后阶段会进行面积优化)

其他优化情况

  • 当一个寄存器驱动多个寄存器时,DC将驱动寄存器进行复用,同时将驱动进行分割。
  • 使用DC拓扑模式,加上-timing选项自动开启寄存器复制优化

模块多个例化名字唯一化

DC在为设计综合时,会自动的为每一个模块产生一个唯一的有名字的拷贝。

变量uniquify_naming_style可以用来控制多次例化子模块每个拷贝的命名方式:

man uniquify_naming_style

避免命名冲突,可以对不同实例分别优化。

时序优化

综合后查看报告,一般会出现时序问题,当时序违规在时钟周期的25%以上,需要重新修改RTL代码

时序违规在25%以下时,有以下时序优化方法:

使用compile_ultra命令

包括各种时间优化算法的开关选项

使用compile_ultra命令时使用以下变量实现DW层次的自动取消:

set compile_ultra_ungroup_dw true  #(默认值为true)

使用compile_ultra命令时使用以下变量,当设计中一些模块的规模小于或等于变量的值,模块层次被自动取消:

set compile_auto_ungroup_delay_num_cells 100  #(默认值=500)

为了设计结果最优化,建议将compile_ultra命令和DW library一起使用

边界优化

在综合时,DC会对传输常数、没有连接的引脚和补码信息进行优化。

compile_ultra命令中默认选项为-no_boundary_optimization,不作边界优化

BRT技术(behavioral re-timing)

通过对门级网表进行管道传递(或称为流水线),使设计的传输量(throughout)更快。BRT两个命令:

optimize_registers

适用于包含寄存器的门级网表(不是compile_ultra的开关选项,可单独使用,也可在compile_ultra命令中加上-retime选项)

set optimize_registers true -design Pipeline
  • 转移前后级寄存器的组合逻辑从而使路径时序满足约束,不会插入新寄存器
  • 该命令首先对时序作优化接着优化面积

compile_ultra命令的-retime选项

当有一个路径不满足,而相邻的路径满足要求时,DC会进行路径间的逻辑迁移,以同时满足两条路径的要求,也称为adaptive retiming

  • 重排时对寄存器重新命名且改变寄存器位置,此类信息存储在SVF文件中
  • 当不需要迁移某些器件(例如输出流水线寄存器)时使用以下命令:
set_dont_retime <xxx> true

pipeline_design

适用于纯组合电路的门级网表

pipeline_design -period 10 -stage 3
  • 会新增流水线寄存器帮助时序收敛
  • 注意! 使用此命令时需要在RTL设计中将寄存器预置好对组合逻辑进行分割,工具可以知道哪些逻辑可以合法切分,此命令会在组合逻辑中再插入寄存器以进行优化。

使用compile -scan -inc命令

进行支持可测性设计的增量编译,编译时DC只做门级编译

加入-map high选项,将会迫使DC尽最大努力使用更多算法去达到设计目标。

使用自定义路径组合关键范围

自定义路径组:综合时工具只对一个路径组的最差路径作独立的优化,但并不阻碍另外自定义路径组的路径优化。产生自定义路径组可以帮助综合器在做时序分析时采用各自击破(divide-and-conquer)的策略。

  • 设置不同路径组优化权重,进行着重优化

关键范围:DC默认只对一个路径组内的关键路径进行时序优化,可以设置关键范围,使DC在关键路径的延时下面某个延时值之内的路径进行优化

set_critical_range命令后,优化时使关键路径时序变差,DC将不改进次关键路径时序。建议关键范围的值不要超过关键路径总值的10%。

重新划分模块

对于一般设计,好的模块划分应该做到模块的输出边界是寄存器的输出端,从而使每个模块除时钟端口外的所有输入端口的延时是相同的,等于寄存器的时钟引脚CLK到输出引脚Q的延时。

  • 在顶层集成中避免使用胶合逻辑

使用DC修改划分

自动修改划分

compile -auto_ungroup area|delay  #(面积和延时之中选一个)

手动修改

group -design_name NEW -cell_name U12 {U1 U2}
ungroup -all -flatten
http://www.jsqmd.com/news/439302/

相关文章:

  • [Linux]基于PVE + Ubuntu 24.04 server 搭建Nextcloud网盘
  • 2026年3月法兰盘厂家推荐:聚焦企业综合实力与核心竞争力 - 品牌鉴赏师
  • C#篇1 输入输出流, 值类型, 值类型转换
  • Ubuntu24安装ClaudeCode
  • 2026学历提升、成人自考机构TOP5排行榜:硬核测评+避坑指南,职场人升本不踩雷 - 深度智识库
  • 别再浪费!支付宝立减金用不上?正规渠道这样处理更省心 - 可可收
  • 针对 WSL 环境的特殊处理(如果你用的是 Windows 子系统)
  • 2026京津冀卡座床头软包新选择,免费上门服务公司一览,专业沙发翻新/卡座床头软包,卡座床头软包品牌有哪些 - 品牌推荐师
  • 微信立减金回收陷阱频发!教你3步避坑,认准合规渠道更安心 - 可可收
  • 盘点河南性价比高的短视频推广公司,企业抖音代运营哪家强 - 工业推荐榜
  • 如何审计域控制器登录活动?
  • 2026年3月冬阴功调味粉供应商权威推荐,技术实力与市场口碑深度解析 - 品牌鉴赏师
  • 手动安装GPU版本PyTorch
  • 2026年3月,扬州考研生如何甄选高性价比辅导机构? - 2026年企业推荐榜
  • 2026年3月四川西嘉助听器公司权威推荐,高性能与可靠性兼具优质品牌 - 品牌鉴赏师
  • 基本子串结构
  • 2026年3月管道离心泵厂家推荐,专业制造与品牌保障口碑之选 - 品牌鉴赏师
  • 2026年扬州考公培训选择指南:性价比机构深度解析 - 2026年企业推荐榜
  • 破局本科文献综述:Paperzz 如何用三步法搞定 5000 字规范写作
  • 香港中文大学(深圳)MicroVerse:微观生物过程可视化技术突破
  • 2026年浙江振动盘定制厂家排名,哪家价格更合理 - 工业品牌热点
  • 携程任我行礼品卡能换现金吗?盘点那些靠谱变现渠道! - 团团收购物卡回收
  • 鸿蒙应用开发UI基础第十七节:基于 PixelMap 实现图片合成、GIF生成与内存优化 - 鸿蒙
  • Meta推出代码推理新技术:让AI不运行程序也能分析代码漏洞
  • 2026年四川防腐木木屋厂家哪家好?靠谱耐用实力出众 适配多场景需求 - 深度智识库
  • 银泰百货卡哪里回收方便,专业平台揭秘回收途径 - 淘淘收小程序
  • 2026年扬州公考笔试培训口碑盘点:5家可靠机构深度解析 - 2026年企业推荐榜
  • 2026年彩色复印机出租怎么收费,京津冀权威商家排名情况如何 - 工业品网
  • 如何快速进行携程任我行礼品卡回收变现?全面攻略大揭秘! - 团团收购物卡回收
  • 2026年3月菌汤火锅底料供应商最新推荐,鲜香浓郁营养健康 - 品牌鉴赏师