modelsim总是编译不成功,出现错误near "module": syntax error。求解答... 30
moduleMux_1(clk,reset,x,y,mux_1_en,mux_1_output);inputclk;inputreset;input[31:0]x;inp...
module Mux_1 (
clk,
reset,
x,
y,
mux_1_en,
mux_1_output
);
input clk;
input reset;
input [31:0] x;
input [31:0] y;
input mux_1_en;
output [7:0] mux_1_output;
reg [7:0] ex;
reg [7:0] ey;
initial begin
//clk = 0;
//reset = 0;
reg [7:0] ex <= [30:23] x;
reg [7:0] ey <= [30:23] y;
end
always @ (posedge clk)
//if(mux_1_en)begin
if(ex <= ey)
mux_1_output <= ey;
else
mux_1_output <= ex;
//end
endmodule
总是编译时不成功,第一行有错误 展开
clk,
reset,
x,
y,
mux_1_en,
mux_1_output
);
input clk;
input reset;
input [31:0] x;
input [31:0] y;
input mux_1_en;
output [7:0] mux_1_output;
reg [7:0] ex;
reg [7:0] ey;
initial begin
//clk = 0;
//reset = 0;
reg [7:0] ex <= [30:23] x;
reg [7:0] ey <= [30:23] y;
end
always @ (posedge clk)
//if(mux_1_en)begin
if(ex <= ey)
mux_1_output <= ey;
else
mux_1_output <= ex;
//end
endmodule
总是编译时不成功,第一行有错误 展开
5个回答
展开全部
reg [7:0] ex <= [30:23] x;
reg [7:0] ey <= [30:23] y;
没有这种写法。要吵陵枝遵守硬件的coding style,不能升敏像写C语言汪旦一样打懒算盘。
reg [7:0] ey <= [30:23] y;
没有这种写法。要吵陵枝遵守硬件的coding style,不能升敏像写C语言汪旦一样打懒算盘。
追问
改了也不行。但是reg类型的变量不是应该设置一个短暂的延迟么。
是不是缺什么东西...
追答
你把模块与测试平台写到了一起,搞得纠缠不清,你应该分开写。不是说写到一起不行,是因为你本来就是初学者,水平还没上去,何必为难自己呢。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我也遇到了一样的问题,修改成为verilog文件后编译通过了
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
文件名与模块名是否一致呢?或者换个名字看看
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
initial 是仿真语句,一般在激励块中,而激励块没有参数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
initial 是仿真语句,一般在激励块中,而激励块没有参数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询