我将两种设计组合成一个单芯片设计。 RTL 代码是用 SystemVerilog 编写的,用于综合。不幸的是,这两种设计包含许多名称相同但逻辑略有不同的模块。
SystemVerilog 中是否有 namespace 或库功能允许我指定具有相同名称的不同模块?换句话说,我可以使用 lib1::module1, lib2::module1 语法来指定我想要的模块吗?如何最好地处理这种模块命名空间污染?
谢谢
最佳答案
调查config
和 library
.见 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/