当前位置: 首页 > news >正文

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发送的中文内容乱码如何解决

一&#xff1a; PHPMailer sdk 文件中有个设置默认编码的位置&#xff1a; vendor/phpmailer/phpmailer/src/PHPMailer.php 二&#xff1a; 实际业务代码中&#xff1a; require /sdk/PHPMailer/vendor/autoload.php;$mail new PHPMailer(true);try {//Server settings$mai…...

.npmrc配置文件

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

无线桥接两个路由器 实现全屋网络全覆盖

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

qt开发-14_QListwidget 仿qq好友列表制作

QListWidget 继承 QListView。QListWidget 类提供了一个基于项的列表小部件。QListWidg et 是一个便捷的类&#xff0c;它提供了一个类似于 QListView&#xff08;下一小节将讲到&#xff09;提供的列表视图&#xff0c;但 是提供了一个用于添加和删除项目的基于项目的经典接口…...

基于hutool的sm2非对称加密使用示例

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

深入Scala的变量声明与类型推断:语法糖下的智能推导

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

ATA-4052C高压功率放大器在新能源汽车安全测试中的应用

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

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浏览器&#xff0c;但是没有使用–no-san…...

ICMAN液位检测大盘点

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

2024软件设计师笔记之考点版(一考就过):1-10

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

Java中的性能优化技巧

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

一位Java软件开发工程师繁忙的一天

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

容易上手的AI图片生成软件有哪些值得推荐?

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

如何高效运营交友APP

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

使用@Lazy注解解决循环依赖的问题

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

manim边学边做--SingleStringMathTex

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

4、双足机器人mpc基础概念

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

论坛实现随机发帖的学习

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

麒麟系统设置jar开机自启动自定义服务

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

曾经我和大模型交流业务实现记录

第一次&#xff1a; 我有一组子组件11个&#xff0c;通过子组件的不同组合&#xff0c;可以组成表单&#xff0c;这些表单让不同的用户使用&#xff0c;表单组成公共的内容&#xff0c;让大部分用户使用&#xff0c;当然用户可以在这些表单的基础上修改一些默认值&#xff0c;变…...

FastAPI 2.0 + LLM流式输出全栈方案,含OpenAI兼容层、前端SSE重连策略、服务端背压控制(仅限内部技术白皮书级实录)

第一章&#xff1a;FastAPI 2.0 异步 AI 流式响应教程概览FastAPI 2.0 原生强化了对异步流式响应&#xff08;StreamingResponse&#xff09;的支持&#xff0c;为构建低延迟、高吞吐的 AI 接口&#xff08;如大语言模型推理、语音合成、实时图像生成&#xff09;提供了坚实基础…...

城通网盘限速破解终极指南:ctfileGet工具让你免费享受10倍下载速度

城通网盘限速破解终极指南&#xff1a;ctfileGet工具让你免费享受10倍下载速度 【免费下载链接】ctfileGet 获取城通网盘一次性直连地址 项目地址: https://gitcode.com/gh_mirrors/ct/ctfileGet 你是否曾经被城通网盘的限速下载折磨得痛不欲生&#xff1f;面对几十KB/s…...

Vue 组态化管道流动效果:从零构建现代化流体模拟系统

1. 为什么需要管道流动模拟系统 在工业自动化和教学演示领域&#xff0c;可视化管道系统是一个常见需求。想象一下化工厂的液体输送管道、城市供水系统或者实验室的流体实验装置&#xff0c;这些场景都需要直观展示流体在管道中的流动状态。传统做法是使用静态图片或简单动画&a…...

N_m3u8DL-CLI-SimpleG:快速下载M3U8视频的终极指南

N_m3u8DL-CLI-SimpleG&#xff1a;快速下载M3U8视频的终极指南 【免费下载链接】N_m3u8DL-CLI-SimpleG N_m3u8DL-CLIs simple GUI 项目地址: https://gitcode.com/gh_mirrors/nm3/N_m3u8DL-CLI-SimpleG N_m3u8DL-CLI-SimpleG是一个专门用于下载M3U8流媒体视频的开源工具…...

基于西门子PLC的空压机组储气风冷机组自动控制系统:“手动自动切换、多机控制及实时监测报警系统

基于西门子plc的空压机组储气风冷机组自动控制系统 可以实现手动自动切换 三组空压机分别自动控制&#xff0c;自动检测三路压力 风冷机运行实时检测 报警查寻&#xff0c;参数设置等上周刚把车间那套跑了快十年的空压机组控制系统给换了&#xff0c;用的是西门子S7-1200&#…...

Qwen-Edit-2509多角度切换技术:如何用单张图片生成全视角内容?

Qwen-Edit-2509多角度切换技术&#xff1a;如何用单张图片生成全视角内容&#xff1f; 【免费下载链接】Qwen-Edit-2509-Multiple-angles 项目地址: https://ai.gitcode.com/hf_mirrors/dx8152/Qwen-Edit-2509-Multiple-angles 在视觉创作领域&#xff0c;你是否曾为拍…...

效率提升秘籍:利用快马AI生成自动化脚本高效管理50台云桌面

效率提升秘籍&#xff1a;利用快马AI生成自动化脚本高效管理50台云桌面 手动配置和管理大量云桌面效率低下&#xff0c;尤其是当需要同时管理50台甚至更多云桌面时&#xff0c;重复性的操作不仅耗时耗力&#xff0c;还容易出错。最近我在InsCode(快马)平台上尝试了一个自动化运…...

如何突破Office功能限制?本地化激活方案全解析

如何突破Office功能限制&#xff1f;本地化激活方案全解析 【免费下载链接】ohook An universal Office "activation" hook with main focus of enabling full functionality of subscription editions 项目地址: https://gitcode.com/gh_mirrors/oh/ohook 当…...

微型LORA数传模块:科技赋能,传统楼宇智能蜕变

微型LoRa数传模块凭借小体积、低功耗、远距离、强穿透、易部署的核心优势&#xff0c;是智慧楼宇实现无线化、低成本、广覆盖物联网感知与控制的理想选择&#xff0c;尤其适合老旧楼宇改造与新建楼宇的轻量化智能化升级。一、核心优势(适配智慧楼宇场景)小体积易安装&#xff1…...