verilog 求助!

2019-07-16 01:26发布

本人初学verilog, 用ISE综合遇到点问题,特来寻求帮助!找了半天也没发现错误!module saler(clk,reset,half_yuan,one_yuan,out);
input clk,reset,half_yuan,one_yuan;
output reg  out;
reg [2:0] state;
parameter idle=0,half=1,one=2,one_half=3,two=4;
always@(posedge clk or posedge reset)
   if(reset)
                 begin
                                out<=0;
                                state<=idle;
                                end
        else  case(state)
                      idle:begin
                                     out<=0;
                                          if(half_yuan) state<=half;
                                          else if(one_yuan) state<=one;
                                          else state<=idle;
                                          end
                                half:begin
                                     out<=0;
                                          if(half_yuan) state<=one;
                                          else if(one_yuan) state<=one_half;
                                          else state<=half;
                                          end
                                one:begin
                                    out<=0;
                                         if(half_yuan)  state<=one_half;
                                         else if(one_yuan) state<=two;
                                         else state<=one;
                  one_half:begin
                           out<=0;
                                          if(half_yuan) state<=two;
                                          else if(one_yuan ) state<=two;
                                          else state<=one_half;
                                          end
                            two:begin
                                     out<=1;
                                          state<=idle;
                                          end
                        default:begin
                                out<=0;
                                          state<=idle;
                                          end
                        endcase
                  
               
       
endmodule



ERROR:HDLCompiler:31 - "E:MIPS2 ensaler.v" Line 50: <one_half> is already declared.
ERROR:HDLCompiler:31 - "E:MIPS2 ensaler.v" Line 56: <two> is already declared.
ERROR:HDLCompiler:806 - "E:MIPS2 ensaler.v" Line 60: Syntax error near "default".
ERROR:HDLCompiler:806 - "E:MIPS2 ensaler.v" Line 64: Syntax error near "endcase".



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。