sdc中对tst_bypass端口不做时序检查,怎么写
时间: 2024-02-27 19:56:34 浏览: 20
在SDC中,可以使用`set_false_path`命令将某个路径标记为false path,从而告诉时序分析工具不对该路径进行时序分析。因此,如果不想对`tst_bypass`端口进行时序检查,可以在SDC中添加以下命令:
```
set_false_path -from [get_ports tst_bypass] -to [get_ports tst_bypass]
```
其中,`set_false_path`命令用于将一条路径标记为false path,`-from`选项表示false path的起始端口,`-to`选项表示false path的终止端口,这里都是`tst_bypass`端口。这样,时序分析工具就会忽略该路径的时序信息,不会对其进行时序检查。
相关问题
set low_list [list tst_scan_mode tst_rst_bypass tst_gclkenable] foreach low_port $low_list { if {[sizeof_collection [get_ports -quiet $low_port]] != 0 } { set_case_analysis 0 [get_ports $low_port] } },这段tcl翻译成sdc,给出结果
这段 Tcl 代码是用于在 Vivado 设计中设置时序约束的。它的作用是检查设计中是否存在名为 `tst_scan_mode`、`tst_rst_bypass` 和 `tst_gclkenable` 的端口,如果存在,则禁用时序分析。
以下是将此 Tcl 代码转换为 SDC 格式的过程:
```
# 创建一个时序分析组
create_clock -name sys_clk -period 10.0 [get_ports sys_clk]
# 定义一个时序分析组
set low_list [list tst_scan_mode tst_rst_bypass tst_gclkenable]
foreach low_port $low_list {
if {[sizeof_collection [get_ports -quiet $low_port]] != 0 } {
set_false_path -to [get_ports $low_port]
}
}
```
在 SDC 中,我们首先需要使用 `create_clock` 命令创建时钟,然后使用 `set_false_path` 命令禁用时序分析。这里我们假设时钟名为 `sys_clk`,时钟周期为 10ns。最终的结果是:对于 `tst_scan_mode`、`tst_rst_bypass` 和 `tst_gclkenable` 端口,它们的时序分析将被禁用,不会对时序分析结果产生影响。
sdc文件中get_pins的用法
在SDC文件中,get_pins命令用于获取所有指定单元的所有引脚。 该命令的语法如下:
```
get_pins [-hierarchical] [-filter <regex>] [-of_objects <object_list>] [-quiet] [-group <group_name>] [-exclude_group <group_name>] [-all] [-from <start_obj>] [-through <end_obj>] [-to <end_obj>] [-increment <step>] [-create_pseudo_cell] [-create_pseudo_port] [-create_pseudo_net] [-rename <new_name>]
```
其中,以下是一些常用选项和参数的解释:
- `-of_objects <object_list>`:指定要获取引脚的对象列表。
- `-filter <regex>`:使用正则表达式对对象进行筛选。
- `-all`:获取所有引脚。
- `-from <start_obj>`:指定获取引脚的起始对象。
- `-to <end_obj>`:指定获取引脚的结束对象。
- `-create_pseudo_cell`:如果指定对象不存在,则创建一个虚拟单元。
- `-create_pseudo_port`:如果指定引脚不存在,则创建一个虚拟端口。
- `-create_pseudo_net`:如果指定引脚不存在,则创建一个虚拟网络。
- `-rename <new_name>`:将结果重命名为新名称。
使用get_pins命令可以方便地获取SDC文件中指定单元的引脚信息,并进行后续的时序约束设置。