0

我有一些奇怪的问题,我的设计中没有连接一些电线。

我正在尝试制作一个简单的寄存器文件(我正在使用 Xilinx ISE)。这个寄存器文件包含 32 个寄存器,每个都是 32 位大小。寄存器文件有两个用于读取选择的 MUX(2 个并行读取)和一个用于写入选择的解码器。当我尝试将来自每个寄存器的信号连接到 2 个 MUX 时,信号出现在仅连接到一个 MUX 的 RTL 中。例如,设信号reg2out为 的输出reg2。我连接reg2out到 的引脚I1mux1然后再次连接到的reg2out引脚I1mux2然后 RTL 显示第二个多路复用器连接正确,但第一个多路复用器显示没有输入,没有选择器,也没有连接到它的输出。下图显示了 RTL。 问题

注意:ISE 在合成时会生成以下警告

“警告:Xst:1348 - 单元多路复用器已合并(输出接口具有三态)”

我不明白。

主模块源“RegisterFile.vhd”可以在这里找到。我尝试了十几种修改来纠正,包括添加新信号,将寄存器输出存储在 D-FF 中,以及将寄存器输出存储在过程变量中;并且问题仍然存在。该设计包含另外两个文件:“dec.vhd”和“mux.vhd”。我相信这些模块的设计是正确的。

我该如何纠正这个问题?它是 ISE 中的错误吗?

4

1 回答 1

1

这是 ISE 12.1 中的错误。然而,这似乎只是 RTL 示意图可视化中的一个错误,因为综合报告正确地提到了使用的组件。使用 ISE 版本 12.2,该问题不再重现。

于 2013-04-01T06:07:16.483 回答