尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

Design Compiler:使用IC Compiler II Link

发布时间:2026/9/23 16:47:39

资讯中心
01
ARTICLE

Design Compiler:使用IC Compiler II Link

Design Compiler:使用IC Compiler II Link
相关阅读Design Compilerhttps://blog.csdn.net/weixin_45791458/category_12738116.html?spm1001.2014.3001.5482目录简介NDM与Milkyway模式NDM模式更建议使用NDM参考库Milkyway模式启用IC Compiler II工具特性使用IC Compiler II Link布局器使用IC Compiler II Link自动布图规划使用IC Compiler II Link进行拥塞报告和拥塞驱动的单元布局使用IC Compiler II Link自动时序控制(ATC)使用IC Compiler II Link缓冲感知布局(BAP)使用IC Compiler II Link增强型低功耗布局使用IC Compiler II Link拥塞驱动重构(CDR)简介拓扑模式的Design Compiler NXT在2019版本引入了IC Compiler II Link功能该功能允许在综合工具中调用IC Compiler II进行优化实际上Design Compiler NXT自带了IC Compiler II因此无需单独安装IC Compiler II可以在Milkyway和NDM两种模式下使用但建议在NDM模式下使用这更加便捷。NDM与Milkyway模式Design Compiler中使用关于库的命令将决定工具的工作模式。NDM模式更建议当使用create_lib命令创建NDM设计库或使用open_lib命令打开NDM设计库时Design Compiler将自动进入NDM模式并出现下面的信息。Information: Using the *** command has enabled NDM mode for the current Design Compiler NXT session. (DCT-294)需要注意的是只有Design Compiler NXT支持NDM模式而DC Ultra和Design Compiler Graphical不支持。当工具处于NDM模式时不能使用Milkyway模式特有的命令否则会出现以下错误。Error: Command create_mw_lib is disabled in Design Compiler NXT NDM mode. (DCT-290)要检查当前处于NDM模式还是Milkyway模式可以使用shell_is_in_ndm_mode命令返回1表示NDM模式0表示Milkyway模式。使用NDM参考库NDM参考库可以分为多种其中一种被称为Cell Library(CLIB)单元库中包含了物理信息和时序信息等而一种被称为Physical Library(Frame-only Library)物理库中只包含了物理信息。Design Compiler支持使用它们之一或组合作为NDM参考库创建NDM设计库IC Compiler II在2022版本后不支持直接使用物理库作为NDM参考库但需要注意的是即使使用单元库Design Compiler也只从中获取物理信息而依旧从target_library变量和link_library变量中获得时序信息。下面展示了用create_lib命令创建NDM设计库的过程。dcnxt_shell set_app_var target_library $TARGET_LIBRARY_FILES dcnxt_shell set_app_var link_library * $target_library $LINK_LIB_FILES dcnxt_shell create_lib $DESIGN_LIBRARY -technology $TECH_FILE -ref_libs $REFERENCE_LIBRARY ...在Design Compiler调用IC Compiler II时会将自己使用的NDM参考库、技术文件和link_library变量传递给IC Compiler II供其创建临时的NDM设计库使用。如果传递的NDM参考库中存在物理库则IC Compiler II首先会调用自带的Library Manager根据物理库创建对应的单元库随后再创建临时的NDM设计库如果传递的NDM参考库只有单元库则IC Compiler II可以直接根据单元库创建临时的NDM设计库。需要注意的是Design Compiler可以多次调用IC Compiler II但单元库只在首次需要时构建单元库保存的位置由应用选项lib.configuration.central_output_dir或lib.configuration.local_output_dir决定默认为当前工作目录下的CLIBs子目录一旦库创建完成即使后续多次调用IC Compiler II也不会重复创建这些库。关于IC Compiler II自动创建单元库的详细信息可以参考IC Compile II Data Model User Guide中的Configuring Cell Libraries一章。提前用Library Manager创建单元库供Design Compiler使用也是一种解决办法。Milkyway模式Design Compiler默认处于Milkyway模式即使用create_mw_lib命令创建Milkyway设计库或使用open_mw_lib命令打开Milkyway设计库。当工具处于Milkyway模式时不能使用NDM模式特有的命令否则会出现以下错误。Error: Command *** is disabled in Design Compiler NXT Milkyway mode. (DCT-292)由于IC Compiler II必须使用NDM库需要使用set_icc2_options命令至少设置NDM参考库和技术文件在NDM模式下该命令指定的NDM参考库和技术文件会被忽略如果NDM参考库中存在物理库处理方式与NDM模式下相同。启用IC Compiler II工具特性IC Compiler II Link由三个属性和四个变量控制其中IC Compiler II Link布局器是很多其他特性的基础需要注意的是综合时需要使用-spg选项。使用dcnxt_use_icc2_link命令可以对IC Compiler II Link布局器、IC Compiler II Link自动布图规划和IC Compiler II Link拥塞报告/布局三个属性进行设置如下所示。dcnxt_shell dcnxt_use_icc2_link -placement *** -auto_floorplan *** -congestion_use_global_route ***即使其中两个变量的默认值为true还是需要使用dcnxt_use_icc2_link命令激活如果不使用该命令而直接设置变量值虽然也可以启用IC Compiler II Link但会出现DCT-410警告不建议这样做。使用dcnxt_use_icc2_link命令时添加-report_only选项可以查看IC Compiler II Link相关属性、变量和应用选项通过set_app_options命令的设置情况如下所示。dcnxt_shell-topo set_app_options -name place.coarse.max_density -value 0.9 dcnxt_shell-topo dcnxt_use_icc2_link -report_only | Flow | DCNXT Graphical IC Compiler II Link Flow | | Features | Current Setting | Default Setting | | Placement | true | true | | Auto Floorplan | true | true | | Zroute-Based Congestion Reporting | true | true | | Option Name | Type | Current Setting | Default Setting | | Automatic Timing Control | App Variable | true | true | | Buffer Aware Placement | App Variable | true | true | | Enhanced Low Power Placement | App Variable | false | false | | Congestion Driven Restructuring | App Variable | false | false | | place.coarse.max_density | App Option | 0.9 | | 使用IC Compiler II Link布局器Design Compiler默认使用原生的IC Compiler布局器进行布局使用IC Compiler II Link则可以调用IC Compiler II布局器进行布局此时会提示使用ICC2 Link Placer。使用IC Compiler II Link自动布图规划Design Compiler默认使用原生的IC Compiler引擎进行自动布图规划使用IC Compiler II Link则可以调用IC Compiler II布局器进行布图规划此时会出现以下提示。Information: There are missing outline, sites, tracks, thus IC Compiler II based Auto floorplan will be triggered. (DCT-425)即使-auto_floorplan选项设置为false只要-placement选项设置为true当用户提供的物理约束中缺少core_area、site_rows或tracks信息或设计中存在未布局的宏单元/端口时Design Compiler会自动开启IC Compiler II Link进行布图规划并出现以下警告。Warning: Turning on ICC2Link based Auto-floorplan capabilities. (DCT-413)对于10 nm及以下工艺节点应使用基于IC Compiler II Link的布图规划而不是原生的自动布图规划。使用IC Compiler II Link进行拥塞报告和拥塞驱动的单元布局Design Compiler默认使用原生的IC Compiler引擎进行拥塞报告和拥塞驱动单元布局使用IC Compiler II Link则可以调用IC Compiler II进行拥塞报告和拥塞驱动单元布局。当工具处于NDM模式时拥塞驱动单元布局无法关闭即使将-congestion_use_global_route选项设置为false在使用综合时Design Compiler会自动开启IC Compiler II Link进行拥塞驱动单元布局并出现以下警告。Warning: Global Router cannot be disabled in NDM mode. The tool will use the global router engine in congestion driven placement and report_congestion command. (DCT-411)当工具处于Milkyway模式时只有将-placement选项设置为false并将-congestion_use_global_route选项设置为false才可以关闭拥塞驱动单元布局否则会出现以下警告。Warning: Global Router cannot be disabled in ICCII link placer. The tool will use the global router engine in congestion driven placement. (DCT-412)在过去曾经使用set_icc2_options命令的-congestion_use_global_route选项和placer_enable_enhanced_router变量开启该特性但它们已经过时使用时会出现以下警告更建议使用dcnxt_use_icc2_link命令。Warning: The option congestion_use_global_route will be deprecated in future releases. Use dcnxt_use_icc2_link command to turn on IC Compiler II link in report_congestion. (DCT-408) Warning: IC Compiler II link features are being turned on using app_vars. This behavior will be deprecated in future releases. Use the dcnxt_use_icc2_link command to turn on IC Compiler II link features. (DCT-410)使用IC Compiler II Link自动时序控制(ATC)Design Compiler默认在直接时序驱动布局(DTDP)阶段把优化重心放在最关键的时序路径上在降低WNS与降低TNS之间取得平衡指使用IC Compiler II Link布局器但不使用自动时序控制如果使用自动时序控制则更加有助于改善TNS该特性由2019版本引入的placer_auto_timing_control变量默认值为true控制并通过place.coarse.auto_timing_control应用选项不通过set_app_options命令设置传递给IC Compiler II。如果不使用IC Compiler II Link布局器Design Compiler默认针对WNS进行优化如果想优先降低TNS则需要设置2017版本引入的placer_tns_driven和placer_tns_driven_in_incremental_compile变量对于Design Compiler Graphical综合时提示TNS-driven-DTDP is turned ON对于Design Compiler NXT综合时提示Enhanced timing-DTDP is turned ON但是这两个变量在同时使用Design Compiler NXT和IC Compiler II Link布局器时失效实验结果表明尽管手册中似乎没有提到这一点或者设置2015版本引入的compile_timing_high_effort和2017版本引入的compile_timing_high_effort_tns变量综合时提示Warning: The compile_timing_high_effort variable is a hidden variable。需要注意的是在增量综合期间仅启用直接时序驱动布局若要同时进行拥塞驱动布局需要将spg_congestion_placement_in_incremental_compile变量设置为true默认值为false。该特性只在-placement选项设置为true时才起作用并出现以下提示。Information: Auto timing control is enabled in the placer. (SPG-130)使用IC Compiler II Link缓冲感知布局(BAP)缓冲感知布局用于在初始布局阶段重点考虑高扇出线网与长互连以更好地平衡时序与布线提升结果质量(QoR)开启后将使用近似时序模型评估对这些线网插入缓冲的影响不改动网表只影响布局如图1所示该特性由2019版本引入的placer_buffering_aware变量默认值为true控制。图1 缓冲感知布局需要注意的是该特性只在-placement选项设置为true时才起作用并出现以下提示。Information: Buffering aware placement is enabled. (SPG-129)使用IC Compiler II Link增强型低功耗布局增强型低功耗布局是IC Compiler II布局器的一个特性通过给高活跃度线网加权引导布局器缩短关键高活跃线网在功耗与时序之间取得更好平衡降低切换功耗与总功耗该特性由2020版本引入的placer_enhanced_low_power_effort变量默认值为low控制并通过place.coarse.enhanced_low_power_effort应用选项不通过set_app_options命令设置传递给IC Compiler II。需要注意的是该特性只在-placement选项设置为true且2019版本引入的compile_enable_total_power_optimization变量设置为true时才起作用默认值为false并出现以下提示。Information: Design Compiler NXT Total Power Optimization is enabled. (PWR-1101)使用IC Compiler II Link拥塞驱动重构(CDR)设计中的拥塞可能由满足交换律和结合律的逻辑树引起例如OR树、AND树、XOR树。借助拥塞驱动重构功能通过重新连线这些逻辑树的输入可以缓解拥塞如图2所示该特性由2019版本引入的placer_cong_restruct变量默认值为false控制并通过place.coarse.cong_restruct应用选项不通过set_app_options命令设置传递给IC Compiler II。图2 拥塞驱动重构需要注意的是该特性只在-placement选项设置为true时才起作用并出现以下提示。Information: Congestion driven restructuring placement is enabled. (SPG-131)
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。