ModelSim® SE Command Reference Manual : find命令的用法
该命令按类型和名称定位对象。命令的参数按对象类型分组。
1、语法
find nets | signals <object_name> … [-internal] [-nofilter] {[-in] [-inout] [-out] | [-ports]}
[-recursive]find instances | blocks {<object_name> … | -bydu <design_unit> | -file <file_name>}
[-arch] [-protected] [-recursive] [-nodu]find virtuals <object_name> … [-kind <kind>] [-unsaved] [-recursive]find classes [<class_name>]find objects [-class <class_name>] [-isa <class_name>] [<object_name>]
2、描述
find命令使用以下规则来定位对象:
•如果名称不包括数据集名称,则使用当前数据集。
•如果名称不是以路径分隔符开头,则使用当前上下文。
•如果名称是路径分隔符,后跟不是顶级设计单元名称的名称,则使用设计中的第一个顶级设计单元。
•对于包含层次化路径的相对名称,如果在当前上下文中找不到第一个对象名称,则向上搜索到设计层次结构的顶部,以查找匹配的对象名称。
•如果在指定的上下文中找不到指定名称的对象,则执行向上搜索,以在任何可见的封闭范围内查找匹配的对象,直到实例边界。如果在给定上下文中找到至少一个匹配,则不执行(更多)向上搜索;因此,当使用通配符时,如果某些对象在较高的封闭范围内,则在给定上下文中可能可见的对象将不会被找到。
•通配符“*”和“?”可以在名称的任何级别上使用,但数据集名称和切片规范内部除外。也可以使用方括号([])通配符。
•通配符永远不会与路径分隔符匹配。例如,/dut/*将匹配/dut/siga和/dut/clk。然而,/dut*与这两个都不匹配。
•由于方括号是find命令中的通配符,因此只有括号(())可以用于索引或切片数组。
•在执行搜索时,find命令使用WildcardFilter Tcl首选项变量来排除指定类型的对象。
有关指定名称的详细信息,请参见Design Object Names 。
3、参数
命令的参数按对象类型分组。
3.1、nets and signals的参数
搜索网络和信号时,find命令返回与名称规范匹配的所有网络、信号、寄存器、变量和命名事件的完整路径名。
• <object_name>…
(必需)指定要搜索的网络或信号。允许多个网络和信号以及通配符。通配符不能在切片规范内使用。空格、方括号和扩展标识符需要特殊的语法;有关更多详细信息,请参阅下面的示例。
• -in
(可选)指定搜索范围包括模式IN的端口。
• -inout
(可选)指定搜索范围包括模式INOUT的端口。
• -internal
(可选)指定搜索的范围是包括内部(非端口)对象。
• -nofilter
(可选)指定在查找信号或网络时忽略WildcardFilter-Tcl首选项变量。
• -out
(可选)指定搜索范围包括模式OUT的端口。
• -ports
(可选)指定搜索范围包括所有端口。具有与同时指定-in、-out和-inout相同的效果。
-recursive(递归的)
(可选)指定搜索的范围是递归下降到子区域。如果省略,则搜索仅限于所选区域。
3.2、Arguments for instances and blocks(实例和块的参数)
搜索实例时,find命令返回主设计单元名称。
• -arch
仅与“instances”一起使用:列出相应的架构(architecture)名称以及find命令返回的任何VHDL设计单元名称的实体名称。
• -bydu
搜索设计单元。与-file和<object_name>互斥。
<design_unit>——要搜索的单个设计单元的名称。此参数仅与实例的主<design_unit>指定的模式匹配。不支持库和辅助名称。
• -file <file_name>
将设计中实例的完整列表写入文件。与-bydu和<object_name>互斥。
<file_name>-指定文件名的字符串。
• <object_name>…
指定要搜索的实例或块的名称。允许多个实例和通配符。与-file和-bydu互斥。
• -protected
过滤并仅将输出减少为那些受保护的实例,因为该实例位于受保护的区域中,或者因为该实例在具有某些保护区域的设计单元中,或者由于这两个原因都适用。换句话说,find instances-protected命令仅返回位于受保护区域中的那些实例(由<object_name>参数暗示),或者相应的设计单元在受保护区域内包含其部分代码的那些实例,或者两者都返回。
• -recursive
(可选)指定搜索的范围是递归下降到子区域。如果省略,则搜索仅限于所选区域。
• -nodu
(可选)从输出中的任何实例中删除设计单元名称。
3.3、Arguments for virtuals
搜索虚拟值时,必须在任何对象名称之前指定所有可选参数。
• <object_name>…
(必需)指定要搜索的虚拟对象。允许多个虚拟字符和通配符。
• -kind <kind>
(可选)指定要搜索的虚拟对象的类型。
<kind> —-以下类型之一的虚拟对象:
• designs
• explicits
• functions
• implicits
• signals
• -unsaved
指定ModelSim仅查找尚未保存到格式文件的虚拟体。
3.4、Arguments for classes
•<class_name>
(可选)指定要搜索的incrTcl类。允许使用通配符。class_name的选项包括nets, objects, signals和 virtuals。如果不指定类名,该命令将返回当前命名空间上下文中的所有类。有关详细信息,请参阅Tcl Man Pages (Help > Tcl Man Pages)中的incrTcl命令。
3.5、Arguments for objects
• -class <class_name>
(可选)将搜索限制为最特定的类为class_name的对象。
• -isa <class_name>
(可选)将搜索限制为在其传统中任何位置具有class_name的对象。
•<object_name>
(可选)指定要搜索的incrTcl对象。允许使用通配符。如果未指定对象名称,则该命令将返回当前命名空间上下文中的所有对象。请参阅Tcl Man Pages (Help > Tcl Man Pages)
了解更多信息。
4、示例
•在整个设计中查找所有信号。
find signals -r /*
•查找整个设计中的所有实例,并将列表保存在文件instancelist.txt中。
find instances -file instancelist.txt -r /*
•在区域/top查找以字母“xy”开头的所有输入信号。
find nets -in /top/xy*
•查找设计层次结构中名称以“cl”开头的区域<current_context>/u1/u2处或下方的所有信号。
find signals -r u1/u2/cl*
•查找名为s1的信号。请注意,由于方括号通配符,必须将对象括在大括号中。
find signals {s[1]}
•查找信号s1、s2或s3
find signals {s[123]}
•找到由值1索引的信号s的元素。请注意,find命令使用括号(()),而不是方括号([])来指定子元素索引。
find signals s(1)
•查找名为data的4位数组。注意,由于数组切片规范中的空格,必须使用大括号({})。
find signals {/top/data(3 downto 0)}
•请注意,当指定包含扩展标识符的对象作为名称的最后一部分时,在结束“\”之后和结束“}”之前必须有空格。
find signals {/top/\My extended id\ }
•如果/dut/core/pclk存在,则在transcript中打印消息“pclk does exist”。这通常在Tcl脚本中运行。
if {[find signals /dut/core/pclk] != ""} {
echo "pclk does exist"
•使用通配符根据实例的名称查找实例。将搜索结果发送到文本文件,该文件在单独的行上列出实例名称,包括层次结构路径。
# Search for all instances with u1 in path
set pattern_match "*u1*" ;
# Get the list of instance paths
set inst_list [find instances -r *] ;
# Initialize an empty list to strip off the architecture names
set ilist [list] ;
foreach inst $inst_list {set ipath [lindex $inst 0]if {[string match $pattern_match $ipath]} {lappend ilist $ipath}
}
# At this point, ilist contains the list of instances only--
# no architecture names
#
# Begin sorting list
set ilist [lsort -dictionary $ilist]
# Open a file to write out the list
set fhandle [open "instancelist.txt" w]
foreach inst $ilist {# Print instance path, one per lineputs $fhandle $inst
}
# Close the file, done.
close $fhandle ;
5、Additional search options
要在特定显示窗口中搜索HDL对象,请使用搜索命令或选择Edit > Find。
相关文章:

ModelSim® SE Command Reference Manual : find命令的用法
该命令按类型和名称定位对象。命令的参数按对象类型分组。 1、语法 find nets | signals <object_name> … [-internal] [-nofilter] {[-in] [-inout] [-out] | [-ports]} [-recursive]find instances | blocks {<object_name> … | -bydu <design_unit> |…...

PHPMailer发送的中文内容乱码如何解决
一: PHPMailer sdk 文件中有个设置默认编码的位置: vendor/phpmailer/phpmailer/src/PHPMailer.php 二: 实际业务代码中: require /sdk/PHPMailer/vendor/autoload.php;$mail new PHPMailer(true);try {//Server settings$mai…...

.npmrc配置文件
.npmrc配置文件 .npmrc 是一个用于配置 npm 行为的文件。这个文件可以位于多个地方,但最常见的是位于项目目录或者你的用户主目录。npmrc文件由一系列键值对组成,用于配置npm在执行命令时的行为和参数。 一个 .npmrc 文件的例子可能包含以下内容&#…...

无线桥接两个路由器 实现全屋网络全覆盖
由于房屋结构、面积等因素,单个路由器的信号很难覆盖整个家。这时,我们可以通过无线桥接的方式,将两个路由器连接成一个网络,实现家庭网络的全面覆盖。 一、准备工作 在进行无线桥接之前,我们需要准备以下设备&#…...

qt开发-14_QListwidget 仿qq好友列表制作
QListWidget 继承 QListView。QListWidget 类提供了一个基于项的列表小部件。QListWidg et 是一个便捷的类,它提供了一个类似于 QListView(下一小节将讲到)提供的列表视图,但 是提供了一个用于添加和删除项目的基于项目的经典接口…...

基于hutool的sm2非对称加密使用示例
前言 现在在网上已经有很多同学对hutool的sm2使用进行了详细的介绍。但是在使用过程中不是很符合我个人的使用情况。我在这儿自己整理了一版,一方面希望能对有需要的同学有些许帮助,另一方面做个笔记,方便后期直接cv。 引入依赖 <dependen…...

深入Scala的变量声明与类型推断:语法糖下的智能推导
Scala是一种静态类型语言,以其强大的类型推断系统而闻名。变量声明和类型推断是Scala编程中的基础概念,它们共同简化了代码的编写并提高了开发效率。本文将深入探讨Scala中变量声明的语法规则和类型推断的工作原理。 1. Scala静态类型的优越性 静态类型…...

ATA-4052C高压功率放大器在新能源汽车安全测试中的应用
新能源汽车的崛起已经改变了汽车行业的格局,为环境友好型交通方式提供了更多的选择。为了确保这些新型汽车的安全性和可靠性,进行全面的安全测试是至关重要的。高压功率放大器在新能源汽车的安全测试中发挥着重要的作用,本文将介绍其应用以及…...

liunx打开谷歌报错
liunx打开谷歌报错[48526:48526:0624/173553.311113:ERROR:zygote_host_impl_linux.cc(99)] Running as root without --no-sandbox is not supported. See https://crbug.com/638180. 这个错误信息表明你尝试以root用户身份运行Chrome浏览器,但是没有使用–no-san…...

ICMAN液位检测大盘点
ICMAN液位检测原理: 基于双通道比较原理,一个通道检测当前无水状态下的环境电容,另一个通道通过传感电极去检测容器内液体的变化情况,通过两个通道电容的差值与芯片内部设定阈值做比较,来判断容器壁内部液位的变化或者…...

2024软件设计师笔记之考点版(一考就过):1-10
软件设计师之一考就过:成绩版 考点1:CPU、指令 真题1:CPU 执行算术运算或逻辑运算时,常将源操作数和结果暂存在(累加器(AC))中。 真题2:在程序的执行过程中,Cache与主存的地址映射是由(硬件自动)完成的。 真题3:计算机执行程序时,内存分为静态数据区、代码区、…...

Java中的性能优化技巧
Java中的性能优化技巧 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 在Java开发中,性能优化是一项重要且经常需要面对的任务。尽管Java提供了许多…...

一位Java软件开发工程师繁忙的一天
早晨:迎接新的一天 7:00 AM - 起床 每天早晨七点准时起床。洗漱、早餐后,他查看手机上的邮件和待办事项,以便提前了解今天的工作内容。 8:00 AM - 前往公司 乘坐公交车前往公司。路上,他通过手机阅读一些技术博客或参加在线技术…...

容易上手的AI图片生成软件有哪些值得推荐?
随着人工智能技术的飞速发展,我们的生活也正在经历一场前所未有的变革。其中,AI图片生成软件的出现,为我们的创作提供了更多的可能性。那么接下来就来介绍几款容易上手、功能强大的AI图片生成软件。 首先是建e网AI,这是一个专为设…...

如何高效运营交友APP
如何高效运营交友APP?在当今的互联网时代,交友App已成为连接人与人之间情感纽带的桥梁。然而,面对激烈的市场竞争和不断变化的用户需求,如何高效运营一款交友App,确保用户黏性并提升安全体验,成为每个运营者关注的焦点…...

使用@Lazy注解解决循环依赖的问题
有这样一个场景: 订单服务与用户服务的循环依赖 假设在一个电商系统中,我们有两个服务类:OrderService 和 UserService。 OrderService 需要访问用户服务来获取或更新订单关联的用户信息。例如,当处理订单时,可能需要…...

manim边学边做--SingleStringMathTex
SingleStringMathTex是Mobjects分类中用来显示数学公式的class。 manim中有3个可以用来显示数学公式的class,还有两个是MathTex和Tex,后续再介绍。 从SingleStringMathTex的名称中也可以看出,它是用来显示只有一行的简单公式。 SingleStrin…...

4、双足机器人mpc基础概念
MPC全称是Model Predictive Control,即模型预测控制。主要思想是通过建立机器人动态模型,在运动过程中通过控制输入,来预测机器人未来的运动轨迹和状态。此处的机器人特指双足机器人。 坐标系1、W(orld)系:固定于地面上某点,用于定义机器人绝对位置的是世界坐标系。此处x=…...

论坛实现随机发帖的学习
1、badboy操作,录制发帖全过程,录制结果保存,生成为.jmx格式的文件 2、在Jmeter中打开该.jmx文件,重命名,便于了解步骤 3、生成结果树,查看所以步骤是否正确 4、实现随机发帖 断言:具有唯一表…...

麒麟系统设置jar开机自启动自定义服务
项目场景: 在信创项目中,麒麟操作系统(兆芯)客户端访问web端程序时,PC机器上需要安装读卡器读卡服务(自定义服务)才能读取身份证/卡片信息,并开机自启动。 解决方案: /usr/local/custom-server目…...

WebPages 全局
WebPages 全局 概述 WebPages 全局是一个综合性的概念,涉及网站设计、开发、优化和管理的各个方面。在当今数字化时代,拥有一个功能齐全、用户友好的网站对于个人和企业来说至关重要。本文将深入探讨 WebPages 全局的相关主题,包括网站设计…...

19 Shell编程之条件语句
目录 19.1 条件测试操作 19.1.1 文件测试 19.1.1 整数值比较 19.1.3 字符串比较 19.1.4 逻辑测试 19.2 if条件语句 19.2.1 if语句的结构 19.2.2 if语句应用示例 19.3 case分支语句 19.3.1 case语句的结构 19.3.2 case语句应用示例 19.1 条件测试操作 Shell环境根据命令执行后…...

生产看板管理系统内容有哪些?
相信很多做生产管理的朋友都会遇到如下问题,我就在想,是否能一个创建“透明的”的工作场所?让员工和管理者能够实时查询生产进度,及时发现生产中的问题。 生产进度难追踪 生产过程不透明 生产决策缺乏数据支持 ——能…...

玩转数据库索引
1、概述 通常我们要对数据库进行优化,主要可以通过以下五种方法。 计算机硬件调优应用程序调优数据库索引优化SQL语句优化事务处理调优 本篇文章将向大家介绍数据库中索引类型和使用场合,本文以SQL Server为例,对于其他技术平台的朋友也是有…...

公共云遣返的经济性
在过去的几年里,显而易见的是,尽管公有云具有所有优势,但它并不能大规模地节省成本。它在一定程度上提高了生产力,但不会降低您的成本。公有云的好处在于,它提供了一个非常强大的价值主张,即基础设施可以立…...

夏季河湖防溺水新举措:EasyCVR+AI视频智能监控系统保障水域安全
近日一则新闻引起大众关注,有网友发布视频称,假期在逛西湖时,发现水面上“平躺”漂浮着一名游客在等待救援。在事发3分钟内,沿湖救生员成功将落水游客救到了岸边。 随着夏季的到来,雨水增多,各危险水域水位…...

2024年最新【交安】公路水运安全员备考题库。
46.( )负责建筑施工企业安全生产许可证的颁发和管理,并接受国务院建设主管部门的指导和监督。 A.国务院建设主管部门 B.国务院安全生产监督管理部门 C.省、自治区、直辖市人民政府建设主管部门 D.省、自治区、直辖市人民政府安全生产监督管理部门 答案&…...

Excel 宏录制与VBA编程 —— 16、InputBox函数的使用方式
Input函数基本操作 InputBox函数的Type参数使用技巧(输入类型限制,若输入类型不符系统提示) 关注 笔者 - jxd...

【ai】tx2 nx : yolov4加入initLibNvInferPlugins构建
先说结果:make 成功 插件头文件 复制一份: /** Copyright 1993-2021 NVIDIA Corporation. All rights reserved.** NOTICE TO LICENSEE:** This source code and/or documentation ("Licensed Deliverables") are* subject to NVIDIA intellectual property right…...

【Proteus仿真】【Arduino单片机】基于物联网新能源电动车检测系统设计
文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用Proteus8仿真Arduino单片机控制器,使用LCD1602液晶显示模块、WIFI模块、蜂鸣器、LED按键、ADC、DS18B20温度传感器等。 主要功能: 系统运行后,LCD1602显示温…...