【问题标题】:Parameter override when a Verilog module is instantiated inside a VHDL module在 VHDL 模块中实例化 Verilog 模块时的参数覆盖
【发布时间】:2023-03-08 21:36:01
【问题描述】:

我们的模拟器允许混合使用 VHDL / Verilog,并且我们的设计使用以 VHDL 编写的 IP(否则,我们的设计主要使用 Systemverilog)。 由于参数覆盖无法正常工作,我们遇到了问题,我们从 Simulator 的文档中找到了以下语句:

“默认情况下,当 Verilog 模块在 VHDL 设计单元中实例化并完成默认绑定时,VHDL 泛型使用位置映射映射到 Verilog 参数。”

这是说 VHDL 泛型到 Verilog 参数的映射是使用位置映射完成的,而不是命名映射。模拟器提供了一个特殊选项,可以将绑定规则更改为“命名映射”,从而解决了我们的问题。

我的问题是,当涉及到 VHDL 中的 Verilog(或 Verilog 中的 VHDL)时,哪个标准指定了绑定规则? 或者,这是模拟器供应商做出的任意选择吗?

【问题讨论】:

  • 名称和类型具有不同语法和语义的语言之间的互操作性意味着接口,是模拟器的功能,而不是语言本身的功能。这是一个刚刚达到专利到期浪潮并有资格进行标准化的领域。

标签: vhdl verilog system-verilog


【解决方案1】:

不幸的事实是标准之间的互操作性没有标准。为什么会出现这种情况可能是高度自以为是的。但我可以说,如果更多的人将这个问题提交给他们的供应商,它更有可能得到解决。

【讨论】:

  • 您好 Dave 和 user1155120,感谢您的反馈。我现在明白,指定语言之间的互操作性超出了语言标准,目前还没有很好地标准化。我认为有一个标准,因为供应商在不知道行为应该如何的情况下无法开发工具。无论如何,这种模糊性可能会产生神秘的错误。希望业界同意那些被排除在外的人。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多