Verilog 定义的顺序会影响合成的结果吗?

Verilog 定义的顺序会影响合成的结果吗?,verilog,computer-architecture,Verilog,Computer Architecture,当然,这是不可能的,因为定义的顺序会影响合成的结果。但是我遇到了这个错误。当我在Modelsim中测试MIPS ISA的“MTC0”指令时 这些不同的定义顺序具有不同的波形。左边的那个是错的(开头全错了),右边的那个是对的 除了这些,我没有改变任何代码 我是一个新人,所以我的声誉太低,无法上传更多的图片,这可能会让你感到困惑。很抱歉,我没有任何想法 完整代码发布在。“wishbone”文件夹对此问题毫无用处,请忽略它。InstInvalid在定义文件的两个定义之间具有不同的值 1'b0 on

当然,这是不可能的,因为定义的顺序会影响合成的结果。但是我遇到了这个错误。当我在Modelsim中测试MIPS ISA的“MTC0”指令时

这些不同的定义顺序具有不同的波形。左边的那个是错的(开头全错了),右边的那个是对的

除了这些,我没有改变任何代码

我是一个新人,所以我的声誉太低,无法上传更多的图片,这可能会让你感到困惑。很抱歉,我没有任何想法


完整代码发布在。“wishbone”文件夹对此问题毫无用处,请忽略它。

InstInvalid
在定义文件的两个定义之间具有不同的值

1'b0 on the left (incorrect waveform)
1'b1 on the right (correct waveform)

将不正确的(左版本)更改为1'b1值并重新运行,这是否纠正了运行时问题

对。这就是问题所在。但是,你能解释一下吗?我不知道为什么这会导致不同的波形。这似乎是id.v输出的静态信号。这是的一部分。没问题,用新的眼光看一只虫子通常会有帮助。对不起,我不知道,我只是在问问题前几分钟注册的。下次我会做的。谢谢你的回答和建议。