我写了一个Verilog程序,但是好像运行不了,求大神帮我看看错在哪儿,并告诉我修改的方法 新手拜谢!

module computer (a,b,sel,clk,result);
input[7:0] a,b;
input[1:0] sel;
input clk;
output[8:0] result;
reg [8:0] result;
always @ (posedge clk)
reg [1:0] sel;
initial
case (sel)
2'b00:result=a+b;
2'b01:result=a-b;
2'b10:result=a|b;
default:result=a&b;
endcase
endmodule

a和b由于没有定义类型,所以默认是wire类型的。
wire类型可以做逻辑运算,不能做算术运算的,所以

2'b00:result=a+b;
2'b01:result=a-b;

有问题。
还有就是initial用法有问题,可以去掉。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-11-12
reg [1:0] sel;
initial
删了本回答被提问者采纳
相似回答