相关阅读SDC命令详解https://blog.csdn.net/weixin_45791458/category_12931432.html?spm1001.2014.3001.5482目录指定开始注释输出指定停止注释输出指定实时注释中是否包含性能数据指定显式注释内容指定静默简单使用annotate_trace命令与report_trace命令类似都是用于进行命令级性能剖析不同的是annotate_trace命令允许命令在执行过程中进行实时注释包括命令注释和性能数据注释。本文将详细介绍annotate_trace命令的使用方法其实它并不是一个SDC命令归为此类只是为了方便管理。该命令在2023版本引入。annotate_trace命令的BNF范式有关BNF范式可以参考以往文章为annotate_trace [-start | -stop] [-profile profile_annotation_type] [-log log_string] [-quiet] // 注该命令的选项和参数顺序任意指定开始注释输出-start选项指定开始在命令执行过程中进行实时注释命令执行的开始阶段会输出命令字符串并在行首添加前缀;##是否进行性能数据注释则取决于-profile选项。-start选项和-start选项互斥只能使用其中一个。指定停止注释输出-start选项指定停止在命令执行过程中进行实时注释需要注意的是与report_trace命令不同此命令的性能数据统计不依赖-start选项也不会随着实时注释的关闭而停止统计。-start选项和-start选项互斥只能使用其中一个。指定实时注释中是否包含性能数据-profile选项指定实时注释中是否输出性能数据以及输出的时机该选项需要与-start选项选项同时使用或之前已开始注释输出。set_trace_option命令可用于对实时注释进行定制化设置比如可以关闭某些命令的实时注释、设置性能数据种类CPU时间、内存消耗、wall clock时间设置性能数据注释的增量阈值CPU时间、内存消耗、wall clock时间的增量超过对应阈值才会输出。当-profile选项设置为on时命令执行的结束阶段会输出当前消耗的CPU时间、内存、wall clock时间的总量和增量以;###作为前缀当-profile选项设置为with_start时命令执行的开始阶段会输出当前消耗的CPU时间、内存、wall clock时间的总量不受阈值影响结束阶段会输出当前消耗的CPU时间、内存、wall clock时间的总量和增量当-profile选项设置为off时表示实时注释中不包含性能数据。如果不使用该选项相当于将该选项设置为off即只输出命令字符串。指定显式注释内容-log选项用于输出一段字符串并在行首添加前缀;##如果字符串包含换行符\n则会在每一行都添加前缀。指定静默-quiet选项用于指定静默输出例如重复指定开始注释输出此时不会报错或警告不过语法错误仍会报错。简单使用dcnxt_shell-topo set_trace_option -time_threshold 0 dcnxt_shell-topo set_trace_option -memory_threshold 0 dcnxt_shell-topo set_trace_option -cpu_threshold 0 dcnxt_shell-topo set_trace_option -profile all dcnxt_shell-topo annotate_trace -start -profile with_start dcnxt_shell-topo compile_ultra -spg ;## compile_ultra -spg ;### Start: MEM: 1934608 CPU: 00:00:13.98 TIME: Wed Jan 7 18:58:10 2026 ***** ***** ***** ***** ;### End compile_ultra: MEM: 2237480 (delta: 302872) CPU: 00:00:32.94 (delta: 00:00:18.96) TIME: Wed Jan 7 18:58:29 2026 (delta: 00:00:18.95) dcnxt_shell-topo annotate_trace -profile on ;## annotate_trace -profile on ;### Start: MEM: 2237480 CPU: 00:00:32.95 TIME: Wed Jan 7 18:59:59 2026 ;### End annotate_trace: MEM: 2237480 (delta: 0) CPU: 00:00:32.95 (delta: 00:00:00.00) TIME: Wed Jan 7 18:59:59 2026 (delta: 00:00:00.00) dcnxt_shell-topo report_timing ;## report_timing Information: Updating design information... (UID-85) **************************************** Report : timing -path full -delay max -max_paths 1 Design : MY_DESIGN Version: W-2024.09-SP2 Date : Wed Jan 7 19:00:14 2026 **************************************** * Some/all delay information is back-annotated. Operating Conditions: ss0p75v125c Library: saed32lvt_ss0p75v125c Wire Load Model Mode: Inactive. Startpoint: Cin2[0] (input port) Endpoint: Cout[4] (output port) Path Group: (none) Path Type: max Point Incr Path ----------------------------------------------------------- input external delay 0.00 0.00 r Cin2[0] (in) 0.00 0.00 r U73/Y (INVX1_HVT) 0.10 * 0.10 f U74/Y (NOR2X0_HVT) 0.74 * 0.84 r U82/Y (AO222X1_HVT) 2.63 * 3.47 r U88/Y (AO222X1_HVT) 3.21 * 6.67 r U90/Y (AO22X1_HVT) 2.07 * 8.74 r U91/S (FADDX1_HVT) 1.54 * 10.29 r U92/CO (FADDX1_HVT) 1.71 * 11.99 r U97/S (FADDX1_HVT) 2.57 * 14.56 f Cout[4] (out) 0.00 * 14.56 f data arrival time 14.56 ----------------------------------------------------------- (Path is unconstrained) ;### End report_timing: MEM: 2237548 (delta: 68) CPU: 00:00:32.98 (delta: 00:00:00.02) TIME: Wed Jan 7 19:00:18 2026 (delta: 00:00:04.15)关于命令字符串有一些与log_trace命令相同需要注意的点请参考下面博客的末尾。SDC命令详解使用log_trace命令进行调试https://chenzhang.blog.csdn.net/article/details/156659891
阅读完成 · 觉得有帮助?