module - systemverilog 模块命名空间

标签 module namespaces system-verilog

我将两种设计组合成一个单芯片设计。 RTL 代码是用 SystemVerilog 编写的,用于综合。不幸的是,这两种设计包含许多名称相同但逻辑略有不同的模块。

SystemVerilog 中是否有 namespace 或库功能允许我指定具有相同名称的不同模块?换句话说,我可以使用 lib1::module1, lib2::module1 语法来指定我想要的模块吗?如何最好地处理这种模块命名空间污染?

谢谢

最佳答案

调查configlibrary .见 IEEE Std 1800-2017 § 33. 配置设计的内容
library将根据文件路径将此文件映射到目标库(IEEE Std 1800-2017 § 33.3. 库)config将映射用于瘫痪模块(全局、实例、子范围)的库(IEEE Std 1800-2017 § 33.4. 配置)

第 33.8 节中提供了示例。
注意:有些模拟器需要 -libmap <configfile>在命令行中。请参阅您的模拟器手册。

关于module - systemverilog 模块命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57828979/

相关文章:

Node.js - 构造函数与 require 位于同一行

javascript - 是否有一种干净的方法来访问命名空间内的私有(private)变量

.net - 为什么我需要 global::here?

verilog - 在 VCS 中获取系统时间

c - 未定义的函数在内核linux中插入新模块

python - 如何在编辑后让 vscode 检测/自动重新加载模块?

Javascript 模块模式未捕获引用错误

c++ - 组织不良做法的子命名空间?

regex - 在使用 get_field_by_name 搜索字段时使用正则表达式

inheritance - 为什么在 systemverilog 中继承常量变量不起作用