【问题标题】:Verilog XST ignores hard coded input valuesVerilog XST 忽略硬编码的输入值
【发布时间】:2018-09-19 23:43:43
【问题描述】:

我在 Verilog 中遇到了一些端口问题。为了测试我的模块,我创建了一个只有电线作为输入的顶级模块,并将一些输入(向量)硬编码到核心模块。我没有得到的是 XST 将这些输入到核心(我用硬编码值驱动)显示为连接到地。图片如下。

在核心的其他地方,它会断开核心内部的一些块。我不知道第二个问题是如何与硬编码的输入相关联的。这是否意味着输入不能在顶部进行硬编码?还是我必须断开所有使用输入的子块并为每个子块手动提供相同的硬代码(我认为这是多余的)?

【问题讨论】:

  • 我只看到红线,没有看到任何接地连接。无论如何,这并不重要:向我们展示代码。请注意,逻辑优化可能会导致意外(与错误不同)的结果。顺便说一句,最好在问题中包含图片。

标签: verilog xilinx


【解决方案1】:

块的硬编码输入肯定会导致逻辑优化。在某些情况下,这可能会导致删除整个逻辑块,因为硬编码输入导致这些块的输出是固定值。在综合过程中,硬编码值在设计中传播,并且生成的逻辑被最小化。在最简单的示例中,对反相器的输入进行硬编码会导致反相被移除并替换为与硬编码输入具有相反值的硬编码输出。在您的示例中,将 CLK 硬编码为任何值,RSTn 为 0,START 为 0 可能会消除 CORE 的大部分内部逻辑,因为您将有效地禁用该块。同样,对某些向量进行硬编码可能会导致大部分逻辑被优化掉。

【讨论】:

  • 谢谢你,巴里。你的解释对我的困惑是公正的。无论如何问题已经解决了,但我真的很感谢你的努力。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-15
  • 1970-01-01
  • 1970-01-01
  • 2019-05-05
  • 1970-01-01
相关资源
最近更新 更多