encounter 发表于 2010-6-28 10:14:34

原帖由 LOONG 于 2006-10-19 12:56 发表<br>
<br>
呵呵,见笑见笑<br>
我一般知无不言,不知也言,好为人师。<br>
各位不要见怪^_^ 说得好!<br>
大家共同进步!

ngtim 发表于 2010-6-28 10:33:21

过程赋值不是包括initial语句和always语句吗?

tim 发表于 2010-6-28 11:00:15

initial是不可综合的吧

encounter 发表于 2010-6-28 11:43:51

你那个例子没有优先级,就2个信号,用assign 写直接些<br>
always多用于表达时序电路,表示组合逻辑的时候如果内部输入信号全部为敏感信号用always (*)比较好,如果不是全部为敏感信号,用always也比较好控制

CCIE 发表于 2010-6-28 12:53:33

不错啊 。。

usd 发表于 2010-6-28 14:30:20

module mux(out, a, b, select);
output out;
input a, b, select;
case(select)
1&rsquo;b0: out=a;
1&rsquo;b1: out=b;
我觉得的你的代码问题比较多啊。1、没有always语句,而且begin-and也没有。always @(a or b or select )这个的敏感表必须的列全,否则在综合的时候会出现错误。
我觉得应该改成这样:module mux(out, a, b, select);
output out;
input a, b, select;
reg out;//其中out还要定义成reg型,否则会出现错误。
always @(a or b or select )
begin
case(select)
1&rsquo;b0: out=a;
1&rsquo;b1: out=b;
endcase
end

encounter 发表于 2010-6-28 15:34:08

谢谢各位大侠指点

UFP 发表于 2010-6-28 17:26:50

out<br>
<br>
assign out=(select)?b:a;<br>
这样就可以了

CTT 发表于 2010-6-28 19:05:50

还要加个 reg out

UFP 发表于 2010-6-28 19:19:16

很受益.谢谢啦。
页: 1 [2] 3
查看完整版本: verilog问题,什麽是过程语句先导的过程块?怎摸改?