Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- module control(
- input [3:0] ten, one,
- input clk,
- input resetn,
- output reg out_x, out_y;
- );
- reg [7:0] x_coordinate1, y_coordinate1, x_coordinate2, y_coordinate2;
- x_coordinate1 <= 8'd50;
- y_coordinate1 <= 8'd50;
- x_coordinate2 <= 8'd54;
- y_coordinate2 <= 8'd50;
- reg [7:0] current_state, next_state;
- localparam S_WAIT1 = 8'd0,
- S_DRAW1_0 = 8'd1,
- S_DRAW1_0_CYCLE_0 = 8'd2,
- S_DRAW1_0_CYCLE_1 = 8'd3,
- S_DRAW1_0_CYCLE_2 = 8'd4,
- S_DRAW1_0_CYCLE_3 = 8'd5,
- S_DRAW1_0_CYCLE_4 = 8'd6,
- S_DRAW1_0_CYCLE_5 = 8'd7,
- S_DRAW1_0_CYCLE_6 = 8'd8,
- S_DRAW1_0_CYCLE_7 = 8'd9,
- S_DRAW1_0_CYCLE_8 = 8'd10,
- S_DRAW1_0_CYCLE_9 = 8'd11,
- S_DRAW1_0_CYCLE_10 = 8'd12,
- S_DRAW1_0_CYCLE_11 = 8'd13,
- S_DRAW1_1 = 8'd14,
- S_DRAW1_1_CYCLE_0 = 8'd15,
- S_DRAW1_1_CYCLE_1 = 8'd16,
- S_DRAW1_1_CYCLE_2 = 8'd17,
- S_DRAW1_1_CYCLE_3 = 8'd18,
- S_DRAW1_1_CYCLE_4 = 8'd19,
- S_DRAW1_1_CYCLE_5 = 8'd20,
- S_DRAW1_1_CYCLE_6 = 8'd21,
- S_DRAW1_1_CYCLE_7 = 8'd22,
- S_DRAW1_2 = 8'd23,
- S_DRAW1_2_CYCLE_0 = 8'd24,
- S_DRAW1_2_CYCLE_1 = 8'd25,
- S_DRAW1_2_CYCLE_2 = 8'd26,
- S_DRAW1_2_CYCLE_3 = 8'd27,
- S_DRAW1_2_CYCLE_4 = 8'd28,
- S_DRAW1_2_CYCLE_5 = 8'd29,
- S_DRAW1_2_CYCLE_6 = 8'd30,
- S_DRAW1_2_CYCLE_7 = 8'd31,
- S_DRAW1_2_CYCLE_8 = 8'd32,
- S_DRAW1_2_CYCLE_9 = 8'd33,
- S_DRAW1_2_CYCLE_10 = 8'd34,
- S_DRAW1_3 = 8'd35,
- S_DRAW1_3_CYCLE_0 = 8'd36,
- S_DRAW1_3_CYCLE_1 = 8'd37,
- S_DRAW1_3_CYCLE_2 = 8'd38,
- S_DRAW1_3_CYCLE_3 = 8'd39,
- S_DRAW1_3_CYCLE_4 = 8'd40,
- S_DRAW1_3_CYCLE_5 = 8'd41,
- S_DRAW1_3_CYCLE_6 = 8'd42,
- S_DRAW1_3_CYCLE_7 = 8'd43,
- S_DRAW1_3_CYCLE_8 = 8'd44,
- S_DRAW1_3_CYCLE_9 = 8'd45,
- S_DRAW1_3_CYCLE_10 = 8'd46,
- S_DRAW1_4 = 8'd47,
- S_DRAW1_4_CYCLE_0 = 8'd48,
- S_DRAW1_4_CYCLE_1 = 8'd49,
- S_DRAW1_4_CYCLE_2 = 8'd50,
- S_DRAW1_4_CYCLE_3 = 8'd51,
- S_DRAW1_4_CYCLE_4 = 8'd52,
- S_DRAW1_4_CYCLE_5 = 8'd53,
- S_DRAW1_4_CYCLE_6 = 8'd54,
- S_DRAW1_4_CYCLE_7 = 8'd55,
- S_DRAW1_4_CYCLE_8 = 8'd56,
- S_DRAW1_5 = 8'd57,
- S_DRAW1_5_CYCLE_0 = 8'd58,
- S_DRAW1_5_CYCLE_1 = 8'd59,
- S_DRAW1_5_CYCLE_2 = 8'd60,
- S_DRAW1_5_CYCLE_3 = 8'd61,
- S_DRAW1_5_CYCLE_4 = 8'd62,
- S_DRAW1_5_CYCLE_5 = 8'd63,
- S_DRAW1_5_CYCLE_6 = 8'd64,
- S_DRAW1_5_CYCLE_7 = 8'd65,
- S_DRAW1_5_CYCLE_8 = 8'd66,
- S_DRAW1_5_CYCLE_9 = 8'd67,
- S_DRAW1_5_CYCLE_10 = 8'd68,
- S_DRAW1_6 = 8'd69,
- S_DRAW1_6_CYCLE_0 = 8'd70,
- S_DRAW1_6_CYCLE_1 = 8'd71,
- S_DRAW1_6_CYCLE_2 = 8'd72,
- S_DRAW1_6_CYCLE_3 = 8'd73,
- S_DRAW1_6_CYCLE_4 = 8'd74,
- S_DRAW1_6_CYCLE_5 = 8'd75,
- S_DRAW1_6_CYCLE_6 = 8'd76,
- S_DRAW1_6_CYCLE_7 = 8'd77,
- S_DRAW1_6_CYCLE_8 = 8'd78,
- S_DRAW1_6_CYCLE_9 = 8'd79,
- S_DRAW1_6_CYCLE_10 = 8'd80,
- S_DRAW1_6_CYCLE_11 = 8'd81,
- S_DRAW1_7 = 8'd82,
- S_DRAW1_7_CYCLE_0 = 8'd83,
- S_DRAW1_7_CYCLE_1 = 8'd84,
- S_DRAW1_7_CYCLE_2 = 8'd85,
- S_DRAW1_7_CYCLE_3 = 8'd86,
- S_DRAW1_7_CYCLE_4 = 8'd87,
- S_DRAW1_7_CYCLE_5 = 8'd88,
- S_DRAW1_7_CYCLE_6 = 8'd89,
- S_DRAW1_8 = 8'd90,
- S_DRAW1_8_CYCLE_0 = 8'd91,
- S_DRAW1_8_CYCLE_1 = 8'd92,
- S_DRAW1_8_CYCLE_2 = 8'd93,
- S_DRAW1_8_CYCLE_3 = 8'd94,
- S_DRAW1_8_CYCLE_4 = 8'd95,
- S_DRAW1_8_CYCLE_5 = 8'd96,
- S_DRAW1_8_CYCLE_6 = 8'd97,
- S_DRAW1_8_CYCLE_7 = 8'd98,
- S_DRAW1_8_CYCLE_8 = 8'd99,
- S_DRAW1_8_CYCLE_9 = 8'd100,
- S_DRAW1_8_CYCLE_10 = 8'd101,
- S_DRAW1_8_CYCLE_11 = 8'd102,
- S_DRAW1_8_CYCLE_12 = 8'd103,
- S_DRAW1_9 = 8'd104,
- S_DRAW1_9_CYCLE_0 = 8'd105,
- S_DRAW1_9_CYCLE_1 = 8'd106,
- S_DRAW1_9_CYCLE_2 = 8'd107,
- S_DRAW1_9_CYCLE_3 = 8'd108,
- S_DRAW1_9_CYCLE_4 = 8'd109,
- S_DRAW1_9_CYCLE_5 = 8'd110,
- S_DRAW1_9_CYCLE_6 = 8'd111,
- S_DRAW1_9_CYCLE_7 = 8'd112,
- S_DRAW1_9_CYCLE_8 = 8'd113,
- S_DRAW1_9_CYCLE_9 = 8'd114,
- S_WAIT2 = 8'd115,
- S_DRAW2_0 = 8'd116,
- S_DRAW2_0_CYCLE_0 = 8'd117,
- S_DRAW2_0_CYCLE_1 = 8'd118,
- S_DRAW2_0_CYCLE_2 = 8'd119,
- S_DRAW2_0_CYCLE_3 = 8'd120,
- S_DRAW2_0_CYCLE_4 = 8'd121,
- S_DRAW2_0_CYCLE_5 = 8'd122,
- S_DRAW2_0_CYCLE_6 = 8'd123,
- S_DRAW2_0_CYCLE_7 = 8'd124,
- S_DRAW2_0_CYCLE_8 = 8'd125,
- S_DRAW2_0_CYCLE_9 = 8'd126,
- S_DRAW2_0_CYCLE_10 = 8'd127,
- S_DRAW2_0_CYCLE_11 = 8'd128,
- S_DRAW2_1 = 8'd129,
- S_DRAW2_1_CYCLE_0 = 8'd130,
- S_DRAW2_1_CYCLE_1 = 8'd131,
- S_DRAW2_1_CYCLE_2 = 8'd132,
- S_DRAW2_1_CYCLE_3 = 8'd133,
- S_DRAW2_1_CYCLE_4 = 8'd134,
- S_DRAW2_1_CYCLE_5 = 8'd135,
- S_DRAW2_1_CYCLE_6 = 8'd136,
- S_DRAW2_1_CYCLE_7 = 8'd137,
- S_DRAW2_2 = 8'd138,
- S_DRAW2_2_CYCLE_0 = 8'd139,
- S_DRAW2_2_CYCLE_1 = 8'd140,
- S_DRAW2_2_CYCLE_2 = 8'd141,
- S_DRAW2_2_CYCLE_3 = 8'd142,
- S_DRAW2_2_CYCLE_4 = 8'd143,
- S_DRAW2_2_CYCLE_5 = 8'd144,
- S_DRAW2_2_CYCLE_6 = 8'd145,
- S_DRAW2_2_CYCLE_7 = 8'd146,
- S_DRAW2_2_CYCLE_8 = 8'd147,
- S_DRAW2_2_CYCLE_9 = 8'd148,
- S_DRAW2_2_CYCLE_10 = 8'd149,
- S_DRAW2_3 = 8'd150,
- S_DRAW2_3_CYCLE_0 = 8'd151,
- S_DRAW2_3_CYCLE_1 = 8'd152,
- S_DRAW2_3_CYCLE_2 = 8'd153,
- S_DRAW2_3_CYCLE_3 = 8'd154,
- S_DRAW2_3_CYCLE_4 = 8'd155,
- S_DRAW2_3_CYCLE_5 = 8'd156,
- S_DRAW2_3_CYCLE_6 = 8'd157,
- S_DRAW2_3_CYCLE_7 = 8'd158,
- S_DRAW2_3_CYCLE_8 = 8'd159,
- S_DRAW2_3_CYCLE_9 = 8'd160,
- S_DRAW2_3_CYCLE_10 = 8'd161,
- S_DRAW2_4 = 8'd162,
- S_DRAW2_4_CYCLE_0 = 8'd163,
- S_DRAW2_4_CYCLE_1 = 8'd164,
- S_DRAW2_4_CYCLE_2 = 8'd165,
- S_DRAW2_4_CYCLE_3 = 8'd166,
- S_DRAW2_4_CYCLE_4 = 8'd167,
- S_DRAW2_4_CYCLE_5 = 8'd168,
- S_DRAW2_4_CYCLE_6 = 8'd169,
- S_DRAW2_4_CYCLE_7 = 8'd170,
- S_DRAW2_4_CYCLE_8 = 8'd171,
- S_DRAW2_5 = 8'd172,
- S_DRAW2_5_CYCLE_0 = 8'd173,
- S_DRAW2_5_CYCLE_1 = 8'd174,
- S_DRAW2_5_CYCLE_2 = 8'd175,
- S_DRAW2_5_CYCLE_3 = 8'd176,
- S_DRAW2_5_CYCLE_4 = 8'd177,
- S_DRAW2_5_CYCLE_5 = 8'd178,
- S_DRAW2_5_CYCLE_6 = 8'd179,
- S_DRAW2_5_CYCLE_7 = 8'd180,
- S_DRAW2_5_CYCLE_8 = 8'd181,
- S_DRAW2_5_CYCLE_9 = 8'd182,
- S_DRAW2_5_CYCLE_10 = 8'd183,
- S_DRAW2_6 = 8'd184,
- S_DRAW2_6_CYCLE_0 = 8'd185,
- S_DRAW2_6_CYCLE_1 = 8'd186,
- S_DRAW2_6_CYCLE_2 = 8'd187,
- S_DRAW2_6_CYCLE_3 = 8'd188,
- S_DRAW2_6_CYCLE_4 = 8'd189,
- S_DRAW2_6_CYCLE_5 = 8'd190,
- S_DRAW2_6_CYCLE_6 = 8'd191,
- S_DRAW2_6_CYCLE_7 = 8'd192,
- S_DRAW2_6_CYCLE_8 = 8'd193,
- S_DRAW2_6_CYCLE_9 = 8'd194,
- S_DRAW2_6_CYCLE_10 = 8'd195,
- S_DRAW2_6_CYCLE_11 = 8'd196,
- S_DRAW2_7 = 8'd197,
- S_DRAW2_7_CYCLE_0 = 8'd198,
- S_DRAW2_7_CYCLE_1 = 8'd199,
- S_DRAW2_7_CYCLE_2 = 8'd200,
- S_DRAW2_7_CYCLE_3 = 8'd201,
- S_DRAW2_7_CYCLE_4 = 8'd202,
- S_DRAW2_7_CYCLE_5 = 8'd203,
- S_DRAW2_7_CYCLE_6 = 8'd204,
- S_DRAW2_8 = 8'd205,
- S_DRAW2_8_CYCLE_0 = 8'd206,
- S_DRAW2_8_CYCLE_1 = 8'd207,
- S_DRAW2_8_CYCLE_2 = 8'd208,
- S_DRAW2_8_CYCLE_3 = 8'd209,
- S_DRAW2_8_CYCLE_4 = 8'd210,
- S_DRAW2_8_CYCLE_5 = 8'd211,
- S_DRAW2_8_CYCLE_6 = 8'd212,
- S_DRAW2_8_CYCLE_7 = 8'd213,
- S_DRAW2_8_CYCLE_8 = 8'd214,
- S_DRAW2_8_CYCLE_9 = 8'd215,
- S_DRAW2_8_CYCLE_10 = 8'd216,
- S_DRAW2_8_CYCLE_11 = 8'd217,
- S_DRAW2_8_CYCLE_12 = 8'd218,
- S_DRAW2_9 = 8'd219,
- S_DRAW2_9_CYCLE_0 = 8'd220,
- S_DRAW2_9_CYCLE_1 = 8'd221,
- S_DRAW2_9_CYCLE_2 = 8'd222,
- S_DRAW2_9_CYCLE_3 = 8'd223,
- S_DRAW2_9_CYCLE_4 = 8'd224,
- S_DRAW2_9_CYCLE_5 = 8'd225,
- S_DRAW2_9_CYCLE_6 = 8'd226,
- S_DRAW2_9_CYCLE_7 = 8'd227,
- S_DRAW2_9_CYCLE_8 = 8'd228,
- S_DRAW2_9_CYCLE_9 = 8'd229;
- // Next state logic aka our state table
- always@(*)
- begin: state_table
- case (current_state)
- S_WAIT1: begin
- if (ten == 4'd0) next_state = S_DRAW1_0;
- else if (ten == 4'd1) next_state = S_DRAW1_1;
- else if (ten == 4'd2) next_state = S_DRAW1_2;
- else if (ten == 4'd3) next_state = S_DRAW1_3;
- else if (ten == 4'd4) next_state = S_DRAW1_4;
- else if (ten == 4'd5) next_state = S_DRAW1_5;
- else if (ten == 4'd6) next_state = S_DRAW1_6;
- else if (ten == 4'd7) next_state = S_DRAW1_7;
- else if (ten == 4'd8) next_state = S_DRAW1_8;
- else if (ten == 4'd9) next_state = S_DRAW1_9;
- end
- S_DRAW1_0: next_state = S_DRAW1_0_CYCLE_0;
- S_DRAW1_0_CYCLE_0: next_state = S_DRAW1_0_CYCLE_1;
- S_DRAW1_0_CYCLE_1: next_state = S_DRAW1_0_CYCLE_2;
- S_DRAW1_0_CYCLE_2: next_state = S_DRAW1_0_CYCLE_3;
- S_DRAW1_0_CYCLE_3: next_state = S_DRAW1_0_CYCLE_4;
- S_DRAW1_0_CYCLE_4: next_state = S_DRAW1_0_CYCLE_5;
- S_DRAW1_0_CYCLE_5: next_state = S_DRAW1_0_CYCLE_6;
- S_DRAW1_0_CYCLE_6: next_state = S_DRAW1_0_CYCLE_7;
- S_DRAW1_0_CYCLE_7: next_state = S_DRAW1_0_CYCLE_8;
- S_DRAW1_0_CYCLE_8: next_state = S_DRAW1_0_CYCLE_9;
- S_DRAW1_0_CYCLE_9: next_state = S_DRAW1_0_CYCLE_10;
- S_DRAW1_0_CYCLE_10: next_state = S_DRAW1_0_CYCLE_11;
- S_DRAW1_0_CYCLE_11: next_state = S_WAIT2;
- S_DRAW1_1: next_state = S_DRAW1_1_CYCLE_0;
- S_DRAW1_1_CYCLE_0: next_state = S_DRAW1_1_CYCLE_1;
- S_DRAW1_1_CYCLE_1: next_state = S_DRAW1_1_CYCLE_2;
- S_DRAW1_1_CYCLE_2: next_state = S_DRAW1_1_CYCLE_3;
- S_DRAW1_1_CYCLE_3: next_state = S_DRAW1_1_CYCLE_4;
- S_DRAW1_1_CYCLE_4: next_state = S_DRAW1_1_CYCLE_5;
- S_DRAW1_1_CYCLE_5: next_state = S_DRAW1_1_CYCLE_6;
- S_DRAW1_1_CYCLE_6: next_state = S_DRAW1_1_CYCLE_7;
- S_DRAW1_1_CYCLE_7: next_state = S_WAIT2;
- S_DRAW1_2: next_state = S_DRAW1_2_CYCLE_0;
- S_DRAW1_2_CYCLE_0: next_state = S_DRAW1_2_CYCLE_1;
- S_DRAW1_2_CYCLE_1: next_state = S_DRAW1_2_CYCLE_2;
- S_DRAW1_2_CYCLE_2: next_state = S_DRAW1_2_CYCLE_3;
- S_DRAW1_2_CYCLE_3: next_state = S_DRAW1_2_CYCLE_4;
- S_DRAW1_2_CYCLE_4: next_state = S_DRAW1_2_CYCLE_5;
- S_DRAW1_2_CYCLE_5: next_state = S_DRAW1_2_CYCLE_6;
- S_DRAW1_2_CYCLE_6: next_state = S_DRAW1_2_CYCLE_7;
- S_DRAW1_2_CYCLE_7: next_state = S_DRAW1_2_CYCLE_8;
- S_DRAW1_2_CYCLE_8: next_state = S_DRAW1_2_CYCLE_9;
- S_DRAW1_2_CYCLE_9: next_state = S_DRAW1_2_CYCLE_10;
- S_DRAW1_2_CYCLE_10: next_state = S_WAIT2;
- S_DRAW1_3: next_state = S_DRAW1_3_CYCLE_0;
- S_DRAW1_3_CYCLE_0: next_state = S_DRAW1_3_CYCLE_1;
- S_DRAW1_3_CYCLE_1: next_state = S_DRAW1_3_CYCLE_2;
- S_DRAW1_3_CYCLE_2: next_state = S_DRAW1_3_CYCLE_3;
- S_DRAW1_3_CYCLE_3: next_state = S_DRAW1_3_CYCLE_4;
- S_DRAW1_3_CYCLE_4: next_state = S_DRAW1_3_CYCLE_5;
- S_DRAW1_3_CYCLE_5: next_state = S_DRAW1_3_CYCLE_6;
- S_DRAW1_3_CYCLE_6: next_state = S_DRAW1_3_CYCLE_7;
- S_DRAW1_3_CYCLE_7: next_state = S_DRAW1_3_CYCLE_8;
- S_DRAW1_3_CYCLE_8: next_state = S_DRAW1_3_CYCLE_9;
- S_DRAW1_3_CYCLE_9: next_state = S_DRAW1_3_CYCLE_10;
- S_DRAW1_3_CYCLE_10: next_state = S_WAIT2;
- S_DRAW1_4: next_state = S_DRAW1_4_CYCLE_0;
- S_DRAW1_4_CYCLE_0: next_state = S_DRAW1_4_CYCLE_1;
- S_DRAW1_4_CYCLE_1: next_state = S_DRAW1_4_CYCLE_2;
- S_DRAW1_4_CYCLE_2: next_state = S_DRAW1_4_CYCLE_3;
- S_DRAW1_4_CYCLE_3: next_state = S_DRAW1_4_CYCLE_4;
- S_DRAW1_4_CYCLE_4: next_state = S_DRAW1_4_CYCLE_5;
- S_DRAW1_4_CYCLE_5: next_state = S_DRAW1_4_CYCLE_6;
- S_DRAW1_4_CYCLE_6: next_state = S_DRAW1_4_CYCLE_7;
- S_DRAW1_4_CYCLE_7: next_state = S_DRAW1_4_CYCLE_8;
- S_DRAW1_4_CYCLE_8: next_state = S_WAIT2;
- S_DRAW1_5: next_state = S_DRAW1_5_CYCLE_0;
- S_DRAW1_5_CYCLE_0: next_state = S_DRAW1_5_CYCLE_1;
- S_DRAW1_5_CYCLE_1: next_state = S_DRAW1_5_CYCLE_2;
- S_DRAW1_5_CYCLE_2: next_state = S_DRAW1_5_CYCLE_3;
- S_DRAW1_5_CYCLE_3: next_state = S_DRAW1_5_CYCLE_4;
- S_DRAW1_5_CYCLE_4: next_state = S_DRAW1_5_CYCLE_5;
- S_DRAW1_5_CYCLE_5: next_state = S_DRAW1_5_CYCLE_6;
- S_DRAW1_5_CYCLE_6: next_state = S_DRAW1_5_CYCLE_7;
- S_DRAW1_5_CYCLE_7: next_state = S_DRAW1_5_CYCLE_8;
- S_DRAW1_5_CYCLE_8: next_state = S_DRAW1_5_CYCLE_9;
- S_DRAW1_5_CYCLE_9: next_state = S_DRAW1_5_CYCLE_10;
- S_DRAW1_5_CYCLE_10: next_state = S_WAIT2;
- S_DRAW1_6: next_state = S_DRAW1_6_CYCLE_0;
- S_DRAW1_6_CYCLE_0: next_state = S_DRAW1_6_CYCLE_1;
- S_DRAW1_6_CYCLE_1: next_state = S_DRAW1_6_CYCLE_2;
- S_DRAW1_6_CYCLE_2: next_state = S_DRAW1_6_CYCLE_3;
- S_DRAW1_6_CYCLE_3: next_state = S_DRAW1_6_CYCLE_4;
- S_DRAW1_6_CYCLE_4: next_state = S_DRAW1_6_CYCLE_5;
- S_DRAW1_6_CYCLE_5: next_state = S_DRAW1_6_CYCLE_6;
- S_DRAW1_6_CYCLE_6: next_state = S_DRAW1_6_CYCLE_7;
- S_DRAW1_6_CYCLE_7: next_state = S_DRAW1_6_CYCLE_8;
- S_DRAW1_6_CYCLE_8: next_state = S_DRAW1_6_CYCLE_9;
- S_DRAW1_6_CYCLE_9: next_state = S_DRAW1_6_CYCLE_10;
- S_DRAW1_6_CYCLE_10: next_state = S_DRAW1_6_CYCLE_11;
- S_DRAW1_6_CYCLE_11: next_state = S_WAIT2;
- S_DRAW1_7: next_state = S_DRAW1_7_CYCLE_0;
- S_DRAW1_7_CYCLE_0: next_state = S_DRAW1_7_CYCLE_1;
- S_DRAW1_7_CYCLE_1: next_state = S_DRAW1_7_CYCLE_2;
- S_DRAW1_7_CYCLE_2: next_state = S_DRAW1_7_CYCLE_3;
- S_DRAW1_7_CYCLE_3: next_state = S_DRAW1_7_CYCLE_4;
- S_DRAW1_7_CYCLE_4: next_state = S_DRAW1_7_CYCLE_5;
- S_DRAW1_7_CYCLE_5: next_state = S_DRAW1_7_CYCLE_6;
- S_DRAW1_7_CYCLE_6: next_state = S_WAIT2;
- S_DRAW1_8: next_state = S_DRAW1_8_CYCLE_0;
- S_DRAW1_8_CYCLE_0: next_state = S_DRAW1_8_CYCLE_1;
- S_DRAW1_8_CYCLE_1: next_state = S_DRAW1_8_CYCLE_2;
- S_DRAW1_8_CYCLE_2: next_state = S_DRAW1_8_CYCLE_3;
- S_DRAW1_8_CYCLE_3: next_state = S_DRAW1_8_CYCLE_4;
- S_DRAW1_8_CYCLE_4: next_state = S_DRAW1_8_CYCLE_5;
- S_DRAW1_8_CYCLE_5: next_state = S_DRAW1_8_CYCLE_6;
- S_DRAW1_8_CYCLE_6: next_state = S_DRAW1_8_CYCLE_7;
- S_DRAW1_8_CYCLE_7: next_state = S_DRAW1_8_CYCLE_8;
- S_DRAW1_8_CYCLE_8: next_state = S_DRAW1_8_CYCLE_9;
- S_DRAW1_8_CYCLE_9: next_state = S_DRAW1_8_CYCLE_10;
- S_DRAW1_8_CYCLE_10: next_state = S_DRAW1_8_CYCLE_11;
- S_DRAW1_8_CYCLE_11: next_state = S_DRAW1_8_CYCLE_12;
- S_DRAW1_8_CYCLE_12: next_state = S_WAIT2;
- S_DRAW1_9: next_state = S_DRAW1_9_CYCLE_0;
- S_DRAW1_9_CYCLE_0: next_state = S_DRAW1_9_CYCLE_1;
- S_DRAW1_9_CYCLE_1: next_state = S_DRAW1_9_CYCLE_2;
- S_DRAW1_9_CYCLE_2: next_state = S_DRAW1_9_CYCLE_3;
- S_DRAW1_9_CYCLE_3: next_state = S_DRAW1_9_CYCLE_4;
- S_DRAW1_9_CYCLE_4: next_state = S_DRAW1_9_CYCLE_5;
- S_DRAW1_9_CYCLE_5: next_state = S_DRAW1_9_CYCLE_6;
- S_DRAW1_9_CYCLE_6: next_state = S_DRAW1_9_CYCLE_7;
- S_DRAW1_9_CYCLE_7: next_state = S_DRAW1_9_CYCLE_8;
- S_DRAW1_9_CYCLE_8: next_state = S_DRAW1_9_CYCLE_9;
- S_DRAW1_9_CYCLE_9: next_state = S_WAIT2;
- S_WAIT2: begin
- if (one == 4'd0) next_state = S_DRAW2_0;
- else if (one == 4'd1) next_state = S_DRAW2_1;
- else if (one == 4'd2) next_state = S_DRAW2_2;
- else if (one == 4'd3) next_state = S_DRAW2_3;
- else if (one == 4'd4) next_state = S_DRAW2_4;
- else if (one == 4'd5) next_state = S_DRAW2_5;
- else if (one == 4'd6) next_state = S_DRAW2_6;
- else if (one == 4'd7) next_state = S_DRAW2_7;
- else if (one == 4'd8) next_state = S_DRAW2_8;
- else if (one == 4'd9) next_state = S_DRAW2_9;
- end
- S_DRAW2_0: next_state = S_DRAW2_0_CYCLE_0;
- S_DRAW2_0_CYCLE_0: next_state = S_DRAW2_0_CYCLE_1;
- S_DRAW2_0_CYCLE_1: next_state = S_DRAW2_0_CYCLE_2;
- S_DRAW2_0_CYCLE_2: next_state = S_DRAW2_0_CYCLE_3;
- S_DRAW2_0_CYCLE_3: next_state = S_DRAW2_0_CYCLE_4;
- S_DRAW2_0_CYCLE_4: next_state = S_DRAW2_0_CYCLE_5;
- S_DRAW2_0_CYCLE_5: next_state = S_DRAW2_0_CYCLE_6;
- S_DRAW2_0_CYCLE_6: next_state = S_DRAW2_0_CYCLE_7;
- S_DRAW2_0_CYCLE_7: next_state = S_DRAW2_0_CYCLE_8;
- S_DRAW2_0_CYCLE_8: next_state = S_DRAW2_0_CYCLE_9;
- S_DRAW2_0_CYCLE_9: next_state = S_DRAW2_0_CYCLE_10;
- S_DRAW2_0_CYCLE_10: next_state = S_DRAW2_0_CYCLE_11;
- S_DRAW2_0_CYCLE_11: next_state = S_WAIT2;
- S_DRAW2_1: next_state = S_DRAW2_1_CYCLE_0;
- S_DRAW2_1_CYCLE_0: next_state = S_DRAW2_1_CYCLE_1;
- S_DRAW2_1_CYCLE_1: next_state = S_DRAW2_1_CYCLE_2;
- S_DRAW2_1_CYCLE_2: next_state = S_DRAW2_1_CYCLE_3;
- S_DRAW2_1_CYCLE_3: next_state = S_DRAW2_1_CYCLE_4;
- S_DRAW2_1_CYCLE_4: next_state = S_DRAW2_1_CYCLE_5;
- S_DRAW2_1_CYCLE_5: next_state = S_DRAW2_1_CYCLE_6;
- S_DRAW2_1_CYCLE_6: next_state = S_DRAW2_1_CYCLE_7;
- S_DRAW2_1_CYCLE_7: next_state = S_WAIT2;
- S_DRAW2_2: next_state = S_DRAW2_2_CYCLE_0;
- S_DRAW2_2_CYCLE_0: next_state = S_DRAW2_2_CYCLE_1;
- S_DRAW2_2_CYCLE_1: next_state = S_DRAW2_2_CYCLE_2;
- S_DRAW2_2_CYCLE_2: next_state = S_DRAW2_2_CYCLE_3;
- S_DRAW2_2_CYCLE_3: next_state = S_DRAW2_2_CYCLE_4;
- S_DRAW2_2_CYCLE_4: next_state = S_DRAW2_2_CYCLE_5;
- S_DRAW2_2_CYCLE_5: next_state = S_DRAW2_2_CYCLE_6;
- S_DRAW2_2_CYCLE_6: next_state = S_DRAW2_2_CYCLE_7;
- S_DRAW2_2_CYCLE_7: next_state = S_DRAW2_2_CYCLE_8;
- S_DRAW2_2_CYCLE_8: next_state = S_DRAW2_2_CYCLE_9;
- S_DRAW2_2_CYCLE_9: next_state = S_DRAW2_2_CYCLE_10;
- S_DRAW2_2_CYCLE_10: next_state = S_WAIT2;
- S_DRAW2_3: next_state = S_DRAW2_3_CYCLE_0;
- S_DRAW2_3_CYCLE_0: next_state = S_DRAW2_3_CYCLE_1;
- S_DRAW2_3_CYCLE_1: next_state = S_DRAW2_3_CYCLE_2;
- S_DRAW2_3_CYCLE_2: next_state = S_DRAW2_3_CYCLE_3;
- S_DRAW2_3_CYCLE_3: next_state = S_DRAW2_3_CYCLE_4;
- S_DRAW2_3_CYCLE_4: next_state = S_DRAW2_3_CYCLE_5;
- S_DRAW2_3_CYCLE_5: next_state = S_DRAW2_3_CYCLE_6;
- S_DRAW2_3_CYCLE_6: next_state = S_DRAW2_3_CYCLE_7;
- S_DRAW2_3_CYCLE_7: next_state = S_DRAW2_3_CYCLE_8;
- S_DRAW2_3_CYCLE_8: next_state = S_DRAW2_3_CYCLE_9;
- S_DRAW2_3_CYCLE_9: next_state = S_DRAW2_3_CYCLE_10;
- S_DRAW2_3_CYCLE_10: next_state = S_WAIT2;
- S_DRAW2_4: next_state = S_DRAW2_4_CYCLE_0;
- S_DRAW2_4_CYCLE_0: next_state = S_DRAW2_4_CYCLE_1;
- S_DRAW2_4_CYCLE_1: next_state = S_DRAW2_4_CYCLE_2;
- S_DRAW2_4_CYCLE_2: next_state = S_DRAW2_4_CYCLE_3;
- S_DRAW2_4_CYCLE_3: next_state = S_DRAW2_4_CYCLE_4;
- S_DRAW2_4_CYCLE_4: next_state = S_DRAW2_4_CYCLE_5;
- S_DRAW2_4_CYCLE_5: next_state = S_DRAW2_4_CYCLE_6;
- S_DRAW2_4_CYCLE_6: next_state = S_DRAW2_4_CYCLE_7;
- S_DRAW2_4_CYCLE_7: next_state = S_DRAW2_4_CYCLE_8;
- S_DRAW2_4_CYCLE_8: next_state = S_WAIT2;
- S_DRAW2_5: next_state = S_DRAW2_5_CYCLE_0;
- S_DRAW2_5_CYCLE_0: next_state = S_DRAW2_5_CYCLE_1;
- S_DRAW2_5_CYCLE_1: next_state = S_DRAW2_5_CYCLE_2;
- S_DRAW2_5_CYCLE_2: next_state = S_DRAW2_5_CYCLE_3;
- S_DRAW2_5_CYCLE_3: next_state = S_DRAW2_5_CYCLE_4;
- S_DRAW2_5_CYCLE_4: next_state = S_DRAW2_5_CYCLE_5;
- S_DRAW2_5_CYCLE_5: next_state = S_DRAW2_5_CYCLE_6;
- S_DRAW2_5_CYCLE_6: next_state = S_DRAW2_5_CYCLE_7;
- S_DRAW2_5_CYCLE_7: next_state = S_DRAW2_5_CYCLE_8;
- S_DRAW2_5_CYCLE_8: next_state = S_DRAW2_5_CYCLE_9;
- S_DRAW2_5_CYCLE_9: next_state = S_DRAW2_5_CYCLE_10;
- S_DRAW2_5_CYCLE_10: next_state = S_WAIT2;
- S_DRAW2_6: next_state = S_DRAW2_6_CYCLE_0;
- S_DRAW2_6_CYCLE_0: next_state = S_DRAW2_6_CYCLE_1;
- S_DRAW2_6_CYCLE_1: next_state = S_DRAW2_6_CYCLE_2;
- S_DRAW2_6_CYCLE_2: next_state = S_DRAW2_6_CYCLE_3;
- S_DRAW2_6_CYCLE_3: next_state = S_DRAW2_6_CYCLE_4;
- S_DRAW2_6_CYCLE_4: next_state = S_DRAW2_6_CYCLE_5;
- S_DRAW2_6_CYCLE_5: next_state = S_DRAW2_6_CYCLE_6;
- S_DRAW2_6_CYCLE_6: next_state = S_DRAW2_6_CYCLE_7;
- S_DRAW2_6_CYCLE_7: next_state = S_DRAW2_6_CYCLE_8;
- S_DRAW2_6_CYCLE_8: next_state = S_DRAW2_6_CYCLE_9;
- S_DRAW2_6_CYCLE_9: next_state = S_DRAW2_6_CYCLE_10;
- S_DRAW2_6_CYCLE_10: next_state = S_DRAW2_6_CYCLE_11;
- S_DRAW2_6_CYCLE_11: next_state = S_WAIT2;
- S_DRAW2_7: next_state = S_DRAW2_7_CYCLE_0;
- S_DRAW2_7_CYCLE_0: next_state = S_DRAW2_7_CYCLE_1;
- S_DRAW2_7_CYCLE_1: next_state = S_DRAW2_7_CYCLE_2;
- S_DRAW2_7_CYCLE_2: next_state = S_DRAW2_7_CYCLE_3;
- S_DRAW2_7_CYCLE_3: next_state = S_DRAW2_7_CYCLE_4;
- S_DRAW2_7_CYCLE_4: next_state = S_DRAW2_7_CYCLE_5;
- S_DRAW2_7_CYCLE_5: next_state = S_DRAW2_7_CYCLE_6;
- S_DRAW2_7_CYCLE_6: next_state = S_WAIT2;
- S_DRAW2_8: next_state = S_DRAW2_8_CYCLE_0;
- S_DRAW2_8_CYCLE_0: next_state = S_DRAW2_8_CYCLE_1;
- S_DRAW2_8_CYCLE_1: next_state = S_DRAW2_8_CYCLE_2;
- S_DRAW2_8_CYCLE_2: next_state = S_DRAW2_8_CYCLE_3;
- S_DRAW2_8_CYCLE_3: next_state = S_DRAW2_8_CYCLE_4;
- S_DRAW2_8_CYCLE_4: next_state = S_DRAW2_8_CYCLE_5;
- S_DRAW2_8_CYCLE_5: next_state = S_DRAW2_8_CYCLE_6;
- S_DRAW2_8_CYCLE_6: next_state = S_DRAW2_8_CYCLE_7;
- S_DRAW2_8_CYCLE_7: next_state = S_DRAW2_8_CYCLE_8;
- S_DRAW2_8_CYCLE_8: next_state = S_DRAW2_8_CYCLE_9;
- S_DRAW2_8_CYCLE_9: next_state = S_DRAW2_8_CYCLE_10;
- S_DRAW2_8_CYCLE_10: next_state = S_DRAW2_8_CYCLE_11;
- S_DRAW2_8_CYCLE_11: next_state = S_DRAW2_8_CYCLE_12;
- S_DRAW2_8_CYCLE_12: next_state = S_WAIT2;
- S_DRAW2_9: next_state = S_DRAW2_9_CYCLE_0;
- S_DRAW2_9_CYCLE_0: next_state = S_DRAW2_9_CYCLE_1;
- S_DRAW2_9_CYCLE_1: next_state = S_DRAW2_9_CYCLE_2;
- S_DRAW2_9_CYCLE_2: next_state = S_DRAW2_9_CYCLE_3;
- S_DRAW2_9_CYCLE_3: next_state = S_DRAW2_9_CYCLE_4;
- S_DRAW2_9_CYCLE_4: next_state = S_DRAW2_9_CYCLE_5;
- S_DRAW2_9_CYCLE_5: next_state = S_DRAW2_9_CYCLE_6;
- S_DRAW2_9_CYCLE_6: next_state = S_DRAW2_9_CYCLE_7;
- S_DRAW2_9_CYCLE_7: next_state = S_DRAW2_9_CYCLE_8;
- S_DRAW2_9_CYCLE_8: next_state = S_DRAW2_9_CYCLE_9;
- S_DRAW2_9_CYCLE_9: next_state = S_WAIT2;
- default: next_state = S_WAIT1;
- endcase
- end // state_table
- // Output logic aka all of our datapath control signals
- always @(*)
- begin: enable_signals
- // By default make all our signals 0
- NIGGER;
- case (current_state)
- S_DRAW1_0_CYCLE_0: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1;
- end
- S_DRAW1_0_CYCLE_1: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1;
- end
- S_DRAW1_0_CYCLE_2: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1;
- end
- S_DRAW1_0_CYCLE_3: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd1;
- end
- S_DRAW1_0_CYCLE_4: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_0_CYCLE_5: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd3;
- end
- S_DRAW1_0_CYCLE_6: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd1;
- end
- S_DRAW1_0_CYCLE_7: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_0_CYCLE_8: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd3;
- end
- S_DRAW1_0_CYCLE_9: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_0_CYCLE_10: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_0_CYCLE_11: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_1_CYCLE_0: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1;
- end
- S_DRAW1_1_CYCLE_1: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1;
- end
- S_DRAW1_1_CYCLE_2: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1;
- end
- S_DRAW1_1_CYCLE_3: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd1;
- end
- S_DRAW1_1_CYCLE_4: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_1_CYCLE_5: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd3;
- end
- S_DRAW1_1_CYCLE_6: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_1_CYCLE_7: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_2_CYCLE_0: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1;
- end
- S_DRAW1_2_CYCLE_1: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd1;
- end
- S_DRAW1_2_CYCLE_2: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_2_CYCLE_3: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1;
- end
- S_DRAW1_2_CYCLE_4: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1;
- end
- S_DRAW1_2_CYCLE_5: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_2_CYCLE_6: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_2_CYCLE_7: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd3;
- end
- S_DRAW1_2_CYCLE_8: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_2_CYCLE_9: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_2_CYCLE_10: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_3_CYCLE_0: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1;
- end
- S_DRAW1_3_CYCLE_1: begin
- out_x <= x_coordinate1 + 8'b1;
- out_y <= y_coordinate1;
- end
- S_DRAW1_3_CYCLE_2: begin
- out_x <= x_coordinate1 + 8'b2;
- out_y <= y_coordinate1;
- end
- S_DRAW1_3_CYCLE_3: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd1;
- end
- S_DRAW1_3_CYCLE_4: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_3_CYCLE_5: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd3;
- end
- S_DRAW1_3_CYCLE_6: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_3_CYCLE_7: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_3_CYCLE_8: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_3_CYCLE_9: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_4_CYCLE_0: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1;
- end
- S_DRAW1_4_CYCLE_0: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd1;
- end
- S_DRAW1_4_CYCLE_0: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_4_CYCLE_0: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd3;
- end
- S_DRAW1_4_CYCLE_0: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_4_CYCLE_0: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_4_CYCLE_0: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_4_CYCLE_0: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd3;
- end
- S_DRAW1_4_CYCLE_0: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_5_CYCLE_0: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1;
- end
- S_DRAW1_5_CYCLE_1: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1;
- end
- S_DRAW1_5_CYCLE_2: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1;
- end
- S_DRAW1_5_CYCLE_3: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd1;
- end
- S_DRAW1_5_CYCLE_4: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_5_CYCLE_5: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_5_CYCLE_6: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_5_CYCLE_7: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd3;
- end
- S_DRAW1_5_CYCLE_8: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_5_CYCLE_9: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_5_CYCLE_10: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_6_CYCLE_0: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1;
- end
- S_DRAW1_6_CYCLE_1: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1;
- end
- S_DRAW1_6_CYCLE_2: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1;
- end
- S_DRAW1_6_CYCLE_3: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd1;
- end
- S_DRAW1_6_CYCLE_4: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_6_CYCLE_5: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_6_CYCLE_6: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_6_CYCLE_7: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd3;
- end
- S_DRAW1_6_CYCLE_8: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_6_CYCLE_9: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_6_CYCLE_10: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_6_CYCLE_11: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd1;
- end
- S_DRAW1_7_CYCLE_0: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1;
- end
- S_DRAW1_7_CYCLE_1: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd1;
- end
- S_DRAW1_7_CYCLE_2: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_7_CYCLE_3: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd3;
- end
- S_DRAW1_7_CYCLE_4: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_7_CYCLE_5: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_7_CYCLE_6: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_8_CYCLE_0: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1;
- end
- S_DRAW1_8_CYCLE_1: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1;
- end
- S_DRAW1_8_CYCLE_2: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1;
- end
- S_DRAW1_8_CYCLE_3: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd1;
- end
- S_DRAW1_8_CYCLE_4: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_8_CYCLE_5: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd3;
- end
- S_DRAW1_8_CYCLE_6: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd1;
- end
- S_DRAW1_8_CYCLE_7: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_8_CYCLE_8: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd3;
- end
- S_DRAW1_8_CYCLE_9: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_8_CYCLE_10: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_8_CYCLE_11: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_8_CYCLE_12: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_9_CYCLE_0: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1;
- end
- S_DRAW1_9_CYCLE_1: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd1;
- end
- S_DRAW1_9_CYCLE_2: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_9_CYCLE_3: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd3;
- end
- S_DRAW1_9_CYCLE_4: begin
- out_x <= x_coordinate1 + 8'd2;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_9_CYCLE_5: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_9_CYCLE_6: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd4;
- end
- S_DRAW1_9_CYCLE_7: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd3;
- end
- S_DRAW1_9_CYCLE_8: begin
- out_x <= x_coordinate1;
- out_y <= y_coordinate1 + 8'd2;
- end
- S_DRAW1_9_CYCLE_9: begin
- out_x <= x_coordinate1 + 8'd1;
- out_y <= y_coordinate1 + 8'd2;
- end
- // default: // don't need default since we already made sure all of our outputs were assigned a value at the start of the always block
- endcase
- end // enable_signals
- // current_state registers
- always@(posedge clk)
- begin: state_FFs
- if(!resetn)
- current_state <= S_LOAD_X;
- else
- current_state <= next_state;
- end // state_FFS
- endmodule
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement