jxquer 发表于 2012-10-18 11:06:14

求解这段程序的错误

初学Verilog,编了一个四位比较器,程序综合时总出现这样的错误:HDLCompilers:26 - "comp4.v" line 30 expecting 'endmodule', found 'if'。如果把begin end加上去的话就成了这样HDLCompilers:26 - "comp4.v" line 29expecting 'endmodule', found 'begin'

module comp4(x,y,gt,it,eq);
       input x;
    input y;
    output gt,it,eq;
        reg gt, it, eq;
       
        always@(x or y);
        //begin
                if(x>y)
                        gt=2'b1;
                        eq=2'b0;
                        it=2'b0;               
                        else
                          if(x==y)       
                                        gt=2'b0;
                                        eq=2'b1;
                                        it=2'b0;               
                                        else
                                                        gt=2'b0;
                                                        eq=2'b0;
                                                        it=2'b1;
                                       
        //end               
       
endmodule

hhq520189 发表于 2012-10-18 17:23:21

要加beginend   ,if,else后面也要加

jxquer 发表于 2012-10-18 21:22:46

回复 2# hhq520189


    是说在每个if else 后面加上begin吗?我加过了,还是会出现同样的错误,很费解

@HDL现场 发表于 2012-10-19 13:23:23

把"       always@(x or y);"
给成
   "       always@(x or y) “
页: [1]
查看完整版本: 求解这段程序的错误