修改 CIW 窗口标题栏的文本显示
默认情况下,CIW 标题栏的文本格式通常是这样的:

这种统一的标题在启动多个 Virtuoso 时,难以快速定位到特定项目的 CIW 窗口。要解决这个问题,我们可以通过修改标题栏的名称来进行区分。比如在标题中加入项目编号 “Project_01”,名称缩写 “01”,或是与项目相关的关键词等。
以下是三个修改 CIW 窗口标题的演示示例(从简单到复杂)。
➊ 设置一个固定的项目名称作为 CIW 窗口的标题
在 CIW 窗口中输入以下命令:
hiSetWindowName( hiGetCIWindow() "Project_01" )把以上引号中的内容替换成你的项目名称即可。
如果你有多个 CIW 窗口,需依次给每个窗口都执行一遍命令。
效果展示:

➋ 使用 Shell 文件中的变量作为 CIW 窗口的标题
假设在你的 Shell 配置文件(.bash 或 .cshrc)中,定义了一个名为 “Project01_NAME” 的变量来表示项目名称。你可以使用以下命令将其设为 CIW 窗口标题:
hiSetWindowName( hiGetCIWindow() getShellEnvVar("Project01_NAME") )把以上引号中的内容替换成实际的变量名。
➌ 自动获取当前项目路径中的项目名称作为 CIW 窗口的标题
上述两种方法都需要手动设置标题,如果你想让 CIW 窗口自动显示当前项目的名称,SKILL 脚本可以帮到你。
下面是一段代码示例截图,可以实现自动更新标题的功能:

这段代码实现的思路是:
假设我们的项目目录结构是统一的,它们都位于 “/project” 这个主目录下,其中包含各个项目的子文件夹。在这些项目目录下启动 Virtuoso 时,提取当前子文件夹的名称作为项目名,并将其设置为 CIW 窗口的标题。
下面是执行 SKILL 脚本的效果演示👇
调整电路&版图设计窗口标题栏的显示样式
和 CIW 窗口一样,电路和版图的标题栏也存在同样的问题,它们的默认显示是下面这样的,最小化窗口后所有打开的设计窗口看起来都是一样的,很难区分:

Virtuoso 提供了两个环境变量可以自定义它们的显示样式,包括图标名称和标题栏名称。
环境变量 “iconNameFormat” 可以用来控制图标名称,但它仅在 GNOME 桌面环境下的 RHEL 5 和 6 版本上有效,并不兼容 RHEL 7 或 KDE 桌面环境。大多数窗口管理器只支持使用 “windowNameFormat” 环境变量来控制标题栏名称,所以在这里仅介绍后者环境变量的使用方法。
命令格式
envSetVal( "designEditor.window" "windowNameFormat" 'string "winTitle" )其中,“winTitle” 可以由以下占位符组合而成:
| 占位符 | 含义 | 示例/取值 |
|---|---|---|
%a | 应用名称 | Virtuoso Layout Suite XL |
%m | 编辑状态 | reading: / editing: |
%l | 库名称 | libname |
%c | 单元名称 | cellname |
%v | 视图名称 | view |
%x | 配置信息 | configuration |
系统默认的占位符组合
envSetVal( "designEditor.window" "windowNameFormat" 'string "%a %m: %l %c %v %x" )默认格式,应用名称 %a 被排在显示顺序的首位。
自定义格式的配置示例
envSetVal("designEditor.window" "windowNameFormat" 'string "%v, Cell:%c Lib:%l - %a %m" )调整了占位符的顺序,把视图名称 %v 置于首位。以下是这种格式生成的标题样式:

Tips:
可以把上述命令放入 .cdsinit 文件中。这样,每次启动 Virtuoso 时,设计窗口的标题将自动按照你定义的顺序显示。
设置 Palette(LSW) 窗口面板样式
Virtuoso Layout 中的 Palette 面板也支持调整样式,它提供了以下三种显示模式:
-
Single Assistant(默认设置)
- 将三个子面板整合在一个 Palette 面板中显示;
- 适合喜欢简洁界面的用户,占用屏幕空间少;
-
Multiple Assistant
- 将三个子面板作为独立的面板,支持单独显示和隐藏;
- 这种设置允许用户同时查看所有子面板,适合需要频繁切换不同面板的用户;
-
Single Window
- 独立窗口模式,早期 IC5141 版本的显示方式;
- 这种模式适合使用多显示器的用户,因为可以自由移动 Palette 窗口到其他屏幕;
要设置 Palette 的默认显示模式,需要在你的 Shell 配置文件中添加相应的环境变量。
以下是三种显示模式的设置命令(选其一):
setenv CDS_PALETTE_TYPE SingleAssistantsetenv CDS_PALETTE_TYPE MultiAssistantsetenv CDS_PALETTE_TYPE SingleWindowLayer Set Manager 显示方式设置
如果你选择了 MultiAssistant 模式,还可以进一步设置 —— 把 Layer Set Manager(图层集管理器)也设成一个独立的面板。
在 .cdsinit 文件中添加以下命令实现:
envSetVal( "layout" "pteLSManagerAsAssistant" 'boolean t )效果展示:

另外,图层管理器在 Palette 面板中默认是不启用的。需要我们在 Palette 面板右键选择 Show Tools - Layer Set Manager 手动开启。
从 IC6.1.8 ISR24 版本开始,可以通过以下变量在 LSW 中默认启用图层集管理器:
envSetVal( "layout" "pteShowLSManager" 'boolean t )效果展示:

本篇完。
更多文章

版图设计初始化配置指南:新建项目必做的四件事
通过环境配置实现:新建库时自动选择 techLib,电路库自动配对版图库,定义工艺格点及固定 Pin 的生成参数,来提升设计效率。

让 Layout Status 状态工具栏更有用的几种配置方式
通过 statusToolbarFields 环境变量自定义 Layout 状态栏的显示字段、顺序和文字样式,让坐标、选中对象、CellView 尺寸和工具状态等信息更直观地展示在编辑窗口中。

Layout EAD 实时提取版图寄生参数(三):EMIR 检查
延续前两篇 EAD 参数提取流程,介绍如何结合 Spectre/APS 仿真数据完成 EMIR 检查,包括创建 Electrical Dataset、运行 EM 分析、查看 IR Drop 并将结果反标到电路中。
邮件列表
加入我们的社区
订阅邮件列表,及时获取最新消息和更新