verilog hdl里能不能使多个begin-end语句并行执行

verilog hdl里能不能使多个begin-end语句并行执行,要是可以的话怎么写
那我要在每个begin-end前面加上控制信号,格式该怎么写。比如说有4个begin-end,控制信号是00 01 10 11

第1个回答  推荐于2016-08-24
可以. verilog HDL与C最大的不同就是它可以并行执行而C不可以.

verilog HDL的module里一般由块语句组成,块语句既有并行块又有串行块,块与块之间是并行执行,顺序块内是串行执行,并行块内是并行执行.
你如果想要多个begin-end语句并行执行,那么就把它们分别放在每一个并行块内部,这些并行块放在module与endmodule内.具体结果如下:

module XXX(a,b,c);

input x ;
output x ;

always @(敏感语句)
begin

......

end

always @(敏感语句)
begin

......

end

always @(敏感语句)
begin

......

end

endmodule

不会可以再问.

比如

case({ina,inb,cin})

3'b000:
begin
sum=0;
cout=0;
end

3'b010:
begin
sum=1;
cout=0;
end

3'b100:
begin
sum=1;
cout=0;
end

endcase本回答被提问者采纳
第2个回答  2010-05-20
用状态机来描述
case({a,b})

2'b00:
begin
……
end

2'b01:
begin
……
end

2'b10:
begin
……
end

2'b11:
begin
……
end
第3个回答  2010-05-17
多个begin-end语句本来就是并行执行的。
相似回答