| module top(input clk,input[3:0] in, output [7:0] out); | |
| reg[2:0] state; | |
| always @(posedge clk) begin | |
| out<=0; | |
| case (state) | |
| 0: begin | |
| if(in == 0) begin | |
| state<=1; | |
| out<=0; | |
| end | |
| if(in == 1) begin | |
| state<=2; | |
| out<=1; | |
| end | |
| if(in == 2) begin | |
| state<=5; | |
| out<=2; | |
| end | |
| end | |
| 1: begin | |
| if(in == 0) begin | |
| state<=1; | |
| out<=3; | |
| end | |
| if(in == 1) begin | |
| state<=3; | |
| out<=4; | |
| end | |
| if(in == 2) begin | |
| state<=1; | |
| out<=5; | |
| end | |
| if(in == 3) begin | |
| state<=3; | |
| out<=6; | |
| end | |
| if(in == 4) begin | |
| state<=2; | |
| out<=7; | |
| end | |
| if(in == 5) begin | |
| state<=5; | |
| out<=8; | |
| end | |
| if(in == 6) begin | |
| state<=3; | |
| out<=9; | |
| end | |
| if(in == 7) begin | |
| state<=5; | |
| out<=10; | |
| end | |
| if(in == 8) begin | |
| state<=3; | |
| out<=11; | |
| end | |
| if(in == 9) begin | |
| state<=2; | |
| out<=12; | |
| end | |
| end | |
| 2: begin | |
| if(in == 0) begin | |
| state<=2; | |
| out<=13; | |
| end | |
| if(in == 1) begin | |
| state<=2; | |
| out<=14; | |
| end | |
| if(in == 2) begin | |
| state<=1; | |
| out<=15; | |
| end | |
| if(in == 3) begin | |
| state<=1; | |
| out<=16; | |
| end | |
| if(in == 4) begin | |
| state<=2; | |
| out<=17; | |
| end | |
| if(in == 5) begin | |
| state<=2; | |
| out<=18; | |
| end | |
| if(in == 6) begin | |
| state<=2; | |
| out<=19; | |
| end | |
| if(in == 7) begin | |
| state<=5; | |
| out<=20; | |
| end | |
| if(in == 8) begin | |
| state<=5; | |
| out<=21; | |
| end | |
| if(in == 9) begin | |
| state<=2; | |
| out<=22; | |
| end | |
| end | |
| 3: begin | |
| if(in == 0) begin | |
| state<=3; | |
| out<=23; | |
| end | |
| if(in == 1) begin | |
| state<=3; | |
| out<=24; | |
| end | |
| if(in == 2) begin | |
| state<=3; | |
| out<=25; | |
| end | |
| if(in == 3) begin | |
| state<=3; | |
| out<=26; | |
| end | |
| if(in == 4) begin | |
| state<=4; | |
| out<=27; | |
| end | |
| if(in == 5) begin | |
| state<=5; | |
| out<=28; | |
| end | |
| if(in == 6) begin | |
| state<=3; | |
| out<=29; | |
| end | |
| if(in == 7) begin | |
| state<=5; | |
| out<=30; | |
| end | |
| if(in == 8) begin | |
| state<=3; | |
| out<=31; | |
| end | |
| if(in == 9) begin | |
| state<=2; | |
| out<=32; | |
| end | |
| end | |
| 4: begin | |
| if(in == 0) begin | |
| state<=4; | |
| out<=33; | |
| end | |
| if(in == 1) begin | |
| state<=4; | |
| out<=34; | |
| end | |
| if(in == 2) begin | |
| state<=3; | |
| out<=35; | |
| end | |
| if(in == 3) begin | |
| state<=3; | |
| out<=36; | |
| end | |
| if(in == 4) begin | |
| state<=4; | |
| out<=37; | |
| end | |
| if(in == 5) begin | |
| state<=2; | |
| out<=38; | |
| end | |
| if(in == 6) begin | |
| state<=2; | |
| out<=39; | |
| end | |
| if(in == 7) begin | |
| state<=5; | |
| out<=40; | |
| end | |
| if(in == 8) begin | |
| state<=5; | |
| out<=41; | |
| end | |
| if(in == 9) begin | |
| state<=2; | |
| out<=42; | |
| end | |
| end | |
| 5: begin | |
| if(in == 0) begin | |
| state<=1; | |
| out<=43; | |
| end | |
| if(in == 1) begin | |
| state<=1; | |
| out<=44; | |
| end | |
| if(in == 2) begin | |
| state<=1; | |
| out<=45; | |
| end | |
| if(in == 3) begin | |
| state<=1; | |
| out<=46; | |
| end | |
| if(in == 4) begin | |
| state<=2; | |
| out<=47; | |
| end | |
| if(in == 5) begin | |
| state<=5; | |
| out<=48; | |
| end | |
| if(in == 6) begin | |
| state<=5; | |
| out<=49; | |
| end | |
| if(in == 7) begin | |
| state<=5; | |
| out<=50; | |
| end | |
| if(in == 8) begin | |
| state<=5; | |
| out<=51; | |
| end | |
| if(in == 9) begin | |
| state<=2; | |
| out<=52; | |
| end | |
| end | |
| endcase | |
| end | |
| endmodule |