Formality:set_svf命令

相关阅读

Formalityhttps://blog.csdn.net/weixin_45791458/category_12841971.html?spm=1001.2014.3001.5482


svf文件的全称是Setup Verification for Formality,即Design Compiler提供给Formality的设置验证文件,它的作用是为Formality的指导模式(Guidance)和设置模式(Setup)提供信息,以帮助其更好地理解和处理设计流程中因使用Design Compiler而引起的设计变更的一种机制。

svf文件的详细介绍和生成命令在下面的博客中已经讨论,本文主要讨论Formality中的set_svf命令。

Design Compiler:set_svf命令以及svf文件简介文章浏览阅读1k次,点赞17次,收藏31次。svf文件的全称是Setup Verification for Formality,即Design Compiler提供给Formality的设置验证文件,它的作用是为Formality的指导模式(Guidance)和设置模式(Setup)提供信息,以帮助其更好地理解和处理设计流程中因使用Design Compiler而引起的设计变更的一种机制。对象名称更改(Object name changes)_svf 文件https://blog.csdn.net/weixin_45791458/article/details/144069207?spm=1001.2014.3001.5501 set_svf命令的BNF范式(有关BNF范式,可以参考以往文章)为:

复制代码
set_svf 
    [-append] 
    [-ordered] 
    [-extension name] 
    [filedirnames]

指定追加

-append表示将指定的svf文件或目录中搜索到的svf文件追加到已加载进Formality的svf信息后,如果不指定该选项,则会覆盖之前的svf信息。

例如,假设现在有两个svf文件,default.svf中含有两条guide类命令,而test.svf中含有三条guide类命令,现在分别使用两个set_svf命令先后加载这两个svf文件:当第二个set_svf命令不使用-append选项时,第二次加载的svf文件会覆盖第一次加载的svf文件;反之则会追加。具体情况如例1所示。

复制代码
// 例1
Formality (setup)> set_svf default.svf
SVF set to 'default.svf'.
1

Formality (setup)> report_guidance
**************************************************
Report         : guidance

Reference      : <None>
Implementation : <None>
Version        : O-2018.06-SP1
Date           : Wed Dec 11 22:51:11 2024
**************************************************
                                         Status
Command                 Accepted   Rejected  Unsupported  Unprocessed  Total
----------------------------------------------------------------------------
environment         :          1          0          0          1          2

Note: If verification succeeds you can safely ignore unaccepted guidance commands.

SVF files read:
      default.svf

SVF files produced:
  /home/zhangchen/Desktop/vv/formality_svf/
    svf.txt
1
Formality (setup)> set_svf test.svf
SVF set to 'test.svf'.
1

Formality (setup)> report_guidance
**************************************************
Report         : guidance

Reference      : <None>
Implementation : <None>
Version        : O-2018.06-SP1
Date           : Wed Dec 11 22:51:19 2024
**************************************************
                                         Status
Command                 Accepted   Rejected  Unsupported  Unprocessed  Total
----------------------------------------------------------------------------
environment         :          1          0          0          2          3

Note: If verification succeeds you can safely ignore unaccepted guidance commands.

SVF files read:
      test.svf

SVF files produced:
  /home/zhangchen/Desktop/vv/formality_svf/
    svf.txt
1

Formality (setup)> set_svf -append default.svf
SVF appended with 'default.svf'.
1

Formality (setup)> report_guidance
**************************************************
Report         : guidance

Reference      : <None>
Implementation : <None>
Version        : O-2018.06-SP1
Date           : Wed Dec 11 22:52:34 2024
**************************************************
                                         Status
Command                 Accepted   Rejected  Unsupported  Unprocessed  Total
----------------------------------------------------------------------------
environment         :          1          0          0          4          5

Note: If verification succeeds you can safely ignore unaccepted guidance commands.

SVF files read:
      test.svf
      default.svf

SVF files produced:
  /home/zhangchen/Desktop/vv/formality_svf/
    svf.txt
1

顺带一提,除了使用report_guidance命令查看加载的svf文件,也可以在Formality工作目录中的formality_svf子目录中找到svf.txt文件,它是已加载的svf文件的文本可读形式(但它们两者只能查看加载的svf文件中的guide类命令,而无法查看用户执行的guide类命令)。

指定顺序

-ordered选项用于指定了多于一个svf文件或者指定了搜索目录的set_svf命令,默认情况下,set_svf命令按照时间戳顺序加载这些svf文件。如果指定了-ordered选项,set_svf命令按照svf文件指定的顺序和搜索目录中的搜索顺序(按照文件名顺序)。

例如,假设现在有两个svf文件,default.svf(时间戳更早)中含有两条guide类命令,而test.svf中含有三条guide类命令,现在使用一个set_svf命令加载这两个svf文件:当不使用-ordered选项时,会按照按照时间戳顺序加载这两个svf文件;反之则会按照svf文件指定的顺序加载这两个svf文件。具体情况如例2所示。

复制代码
Formality (setup)> set_svf test.svf default.svf
SVF set to 'default.svf test.svf'.
1

Formality (setup)> report_guidance
**************************************************
Report         : guidance

Reference      : <None>
Implementation : <None>
Version        : O-2018.06-SP1
Date           : Wed Dec 11 23:23:36 2024
**************************************************
                                         Status
Command                 Accepted   Rejected  Unsupported  Unprocessed  Total
----------------------------------------------------------------------------
environment         :          1          0          0          4          5

Note: If verification succeeds you can safely ignore unaccepted guidance commands.

SVF files read:
      default.svf
      test.svf

SVF files produced:
  /home/zhangchen/Desktop/vv/formality_svf/
    svf.txt
1

Formality (setup)> set_svf -ordered test.svf default.svf
SVF set to 'test.svf default.svf'.
1

Formality (setup)> report_guidance
**************************************************
Report         : guidance

Reference      : <None>
Implementation : <None>
Version        : O-2018.06-SP1
Date           : Wed Dec 11 23:24:03 2024
**************************************************
                                         Status
Command                 Accepted   Rejected  Unsupported  Unprocessed  Total
----------------------------------------------------------------------------
environment         :          1          0          0          4          5

Note: If verification succeeds you can safely ignore unaccepted guidance commands.

SVF files read:
      test.svf
      default.svf

SVF files produced:
  /home/zhangchen/Desktop/vv/formality_svf/
    svf.txt
1

Formality (setup)> set_svf ./
SVF set to './default.svf ./test.svf'.
1

Formality (setup)> report_guidance
**************************************************
Report         : guidance

Reference      : <None>
Implementation : <None>
Version        : O-2018.06-SP1
Date           : Wed Dec 11 23:28:38 2024
**************************************************
                                         Status
Command                 Accepted   Rejected  Unsupported  Unprocessed  Total
----------------------------------------------------------------------------
environment         :          1          0          0          4          5

Note: If verification succeeds you can safely ignore unaccepted guidance commands.

SVF files read:
      ./default.svf
      ./test.svf

SVF files produced:
  /home/zhangchen/Desktop/vv/formality_svf/
    svf.txt
1

Formality (setup)> set_svf -ordered ./
SVF set to './default.svf ./test.svf'.
1

Formality (setup)> report_guidance
**************************************************
Report         : guidance

Reference      : <None>
Implementation : <None>
Version        : O-2018.06-SP1
Date           : Wed Dec 11 23:28:50 2024
**************************************************
                                         Status
Command                 Accepted   Rejected  Unsupported  Unprocessed  Total
----------------------------------------------------------------------------
environment         :          1          0          0          4          5

Note: If verification succeeds you can safely ignore unaccepted guidance commands.

SVF files read:
      ./default.svf
      ./test.svf

SVF files produced:
  /home/zhangchen/Desktop/vv/formality_svf/
    svf.txt
1

可以注意到,例2中利用了不使用-append选项会导致后续set_svf命令覆盖的特性。

指定拓展名

-extension选项用于指定搜索目录时的文件拓展名,默认为svf。

指定svf文件和搜索目录

可以指定多个svf文件或搜索目录作为参数,这两者的组合也是可以接受的。

删除已加载的svf信息

当使用set_svf命令不指定svf文件和搜索目录时,可以删除已加载的svf信息(不包括用户执行的guide类命令)。但是,最好使用 remove_guidance命令删除已加载的svf信息。

注意事项

只有在读取除工艺库外的设计文件之前才能使用set_svf命令,否则需要使用remove_container命令将设计文件全部移除。

相关推荐
弄曲幽篁4 小时前
精密全波整流电路(四)
嵌入式硬件·硬件工程
日晨难再2 天前
Power Compiler:漏电功耗、内部功耗、切换功耗及其计算方式(NLPM)
硬件工程·数字ic
九鼎创展科技4 天前
九鼎X8390 开发板 & 联发科 MT8390 / MT8370 芯片平台
android·arm开发·嵌入式硬件·硬件工程
仰望天空—永强4 天前
LabVIEW 2025安装包| 免费免激活版下载| 附图文详细安装教程
python·嵌入式硬件·硬件工程·软件工程·labview
KAXA_5 天前
光伏电站工业通信网络解决方案:高可靠工业通信架构与设备选型
硬件工程·工业通信·工业交换机·光伏监控·智慧光伏
XINVRY-FPGA6 天前
XC7A35T‑2FGG484I Xilinx FPGA Artix‑7 AMD
嵌入式硬件·fpga开发·云计算·硬件架构·硬件工程·fpga·pcb工艺
情意绵绵6747 天前
VAS5081电动工具专用3-8节串联电池监控芯片奇力科技
驱动开发·汽车·硬件架构·硬件工程·pcb工艺
mo鱼就摸大鲨鱼7 天前
MPPT电路设计
嵌入式硬件·硬件工程·mppt
帅次9 天前
系统分析师-计算机系统-指令系统&多处理机系统
驱动开发·硬件架构·硬件工程·射频工程·基带工程·材料工程·精益工程
逼子格12 天前
共射级放大电路的频率响应Multisim电路仿真——硬件工程师笔记
单片机·嵌入式硬件·硬件工程·硬件工程师·硬件工程师真题·multisim电路仿真·共射级放大电路