【发布时间】:2016-05-14 21:28:20
【问题描述】:
我正在做一个学校作业,我在输出一个值为 1 的数组时遇到了困难。我使用了这段代码,但模拟器不断用 X 填充信号条
integer index = 0;
initial
begin
for(index=0;index<=7;index = index+1)
begin
data_out[index]<=1;
end
end
endmodule
data_out 被声明为output reg [7:0]data_out
谁能给我建议?
【问题讨论】:
-
我以 reg [7:0] data_out_test 的方式连接了 data_out 输出并对其进行了初始化 .data_out(data_out_test);
-
您需要显示更多代码以帮助跟踪此问题。可能出错的地方太多了。创建一个MCVE 并编辑您的问题以包含它。如果您提供一个完整的示例,我可以将其复制到文本编辑器中并运行,我可以对其进行测试。
-
我建议你创建一个 MCVE 有两个原因:1)这样做时你经常会自己找出错误,2)错误可能是声明和你的分配不匹配'正在显示,模块是如何连接的,或者你是如何打印的。由于您只展示了这三个中的一个,因此我们无法帮助您找到它。
-
我明天会发布一个 MCVE,尽管我很难解释整个程序。我希望这是一个声明错误,并且可以轻松解决。
-
您为什么使用
initial而不是always块?这是用于测试平台的吗?
标签: arrays for-loop output verilog xilinx