Timing Analyzer 支持集合应用程序接口 (API),可轻松访问设计中的端口、引脚、单元或节点。可以将集合 API 与 Timing Analyzer 中指定的任何有效约束或工具命令语言 (Tcl) 命令配合使用。
表 1 介绍了 Timing Analyzer 支持的集合命令。
有关集合的更多信息,请参阅 "Timing Analyzer" 一章或《SDC 和 Timing Analyzer API 参考手册》(PDF)。
表 1.集合命令
命令 |
描述 |
---|---|
all_clocks |
返回设计中所有时钟的集合。 |
all_inputs |
返回设计中输入端口的集合。 |
all_outputs |
返回设计中所有寄存器的集合。 |
get_cells |
返回设计中单元的集合。集合中所有单元的名称与指定模式匹配。可以使用通配符同时选择多个单元。 |
get_clocks |
返回设计中时钟的集合。当时钟中的每个节点用作另一个命令的参数时,如 set_multicycle_path 中的 -from 或 -to,表示集合中的时钟计时的所有节点。默认使用特定节点(即使它是时钟)作为命令的目标。 |
get_keepers |
返回设计中保持器节点(非组合节点)的集合。 |
get_nets |
返回设计中网络的集合。集合中所有网络的名称与指定模式匹配。可以使用通配符同时选择多个网络。 |
get_nodes |
返回设计中节点的集合。 |
get_pins |
返回设计中引脚的集合。集合中所有引脚的名称与指定模式匹配。可以使用通配符同时选择多个引脚。 |
get_ports |
返回设计中端口(设计输入和输出)的集合。 |
get_registers |
返回设计中寄存器的集合。 |
以下示例展示了 create_clock 和 create_generated_clock 命令与集合命令的各种组合用法。
# 创建一个简单的占用比为 60% 的 10 ns 时钟 create_clock -period 10 -waveform {0 6} -name clk [get_ports clk] # 以下多周期适用于以 clk 计时的寄存器为终点的 # 所有路径 set_multicycle_path -to [get_clocks clk] 2