hsi::get_cells - 2023.2 简体中文

Vitis 统一软件平台文档 嵌入式软件开发 (UG1400)

Document ID
UG1400
Release Date
2023-12-13
Version
2023.2 简体中文

描述

获取单元列表。

语法

get_cells [-regexp] [-filter <arg>] [-hierarchical] [-of_objects <args>] [-quiet] [-verbose] [<patterns>...] 

返回

单元对象。如果该命令失败,则不返回任何结果。

用法

名称 描述
[-regexp] 模式为正则表达式
[-filter] 使用表达式筛选列表
[-hierarchical] 从分层单元的所有层级中获取单元
[-of_objects] 获取下列类型的“cell”对象:“hw_design port bus_intf net intf_net”。
[-quiet] 忽略命令错误
[-verbose] 命令执行期间暂挂消息限制
[<patterns>] 根据模式匹配单元名称;默认设置:*

类别

硬件

描述

获取当前设计中与指定搜索模式相匹配的 IP 实例对象列表。默认命令会返回设计中的所有 IP 实例的列表。

注释: 为改善存储器和性能, 命令会返回单一类型的对象(例如,单元、信号线或端口)的容器列表。您可向该列表添加新对象(例如,使用 lappend),但只能添加与列表中当前对象相同类型的对象。不允许向该列表添加不同类型的对象或字符串,否则会导致 Tcl 错误。

实参

-regexp -(可选)指定以正则表达式方式编写搜索 <patterns>。使用该实参时,搜索 <patterns> 和 -filter 表达式都必须以正则表达式方式来编写。AMD 正则表达式 Tcl 命令始终锚定到搜索字符串开始位置。您可在搜索字符串开始或结束处添加 .* 来拓宽搜索范围,以包含子字符串。如需获取正则表达式语法相关帮助信息,请参阅该网页
注释: Tcl 内置命令 regexp 不予锚定,充当标准 Tcl 命令来使用。如需了解更多信息,请参阅该网页

-filter <args> -(可选)使用指定表达式来筛选结果列表。-filter 实参会根据对象的属性值来筛选返回的对象列表。您可使用 report_propertylist_property 命令来查找对象上的属性。

使用引号将筛选搜索模式括起,可以避免对信号线、管脚或单元名称中可能出现的特殊字符或者其他属性进行转义。字符串匹配区分大小写,并且始终锚定到搜索字符串的开始和结束位置。在搜索字符串的开始或结束位置,可以使用通配符字符 * 来拓宽搜索范围,以包含属性值的子字符串。
注释: 如果在对象上存在指定的属性,并且指定的模式与该对象上的属性值相匹配,那么筛选会返回该对象。对于 * 通配符字符,它与含已定义的值 "" 的属性相匹配。

为便于字符串比较,在筛选表达式中可使用下列特定运算符:equal (==)、not-equal (!=)、match (=~) 和 not-match (!~)。数字比较运算符 <><=>= 同样可供使用。通过 ANDOR&&||)即可将多个筛选表达式连接在一起。

对于单元对象,您可使用“IP_TYPE”和“IP_NAME”等属性来筛选结果。以下命令可获取 IP_TYPE 为“PROCESSOR”且名称包含“ps7”的单元:
get_cells * -filter {IP_TYPE == PROCESSOR && NAME !~ "*ps7*"}

-hierarchical -(可选)从分层单元的所有层级中获取单元。

-of_objects <arg> -(可选)获取连接到指定管脚、时序路径、信号线、BEL、时钟区域、站点 (site) 或 DRC 违例对象的单元。

-quiet -(可选)以静默方式执行命令,不返回来自该命令的任何消息。此命令还会返回 TCL_OK,忽略执行期间遇到的所有错误。
注释: 启动该命令时,会返回命令行上遇到的任何错误。仅捕获该命令内部发生的错误。
-verbose -(可选)暂时改写任何消息限制,并返回来自该命令的所有消息。
注释: 可使用 set_msg_config 命令定义消息限制。

<patterns> -(可选)将单元与指定模式相匹配。默认模式为通配符 `*`,用于获取工程内的所有单元的列表。您可指定多个模式,根据不同搜索条件来查找多个单元。

注释: 您必须使用括号 {} 或引号 "" 将多个搜索模式括起,表示此列表是单个元素。

示例

以下示例会返回处理器实例列表:

hsi::get_cells -filter { IP_TYPE == "PROCESSOR" }

此示例可获取已连接到 get_cells 所返回的列表的第二个对象的属性和属性值列表:

common::report_property [lindex [get_cells] 1]
注释: 如果未找到与该模式匹配的单元,则将显示警告。